Function at 0x4019f0
Capabilities:
Enumerate pe sections
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, 0x2430
call fcn.004b8370
push ebx
push ebp
push esi
push edi
mov ebp, edx
mov dword [esp + 0xa8], ebp
mov esi, ecx
mov dword [esp + 0x14], esi
mov byte [esp + 0x35], 0
cmp ebp, 2
jne 0x401a3e
cmp byte [0x4e68a7], 0
mov ebp, 1
mov dword [esp + 0xa8], ebp
jne 0x401a3e
mov byte [0x4e68a7], 1
mov byte [esp + 0x35], 1
cmp dword [0x4e96f0], 0
je 0x401a80
cmp dword [0x4e96e0], 0
je 0x401a66
push dword [0x4e96d8]
call dword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov dword [0x4e96e0], 0
call dword [sym.imp.USER32.dll_CloseClipboard]
mov dword [0x4e96f0], 0
mov dword [0x4e96d8], 0
mov eax, dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [esp + 0x10], eax
cmp esi, 0x8000012f
jne 0x401aac
mov esi, 0xa
mov byte [esp + 0x22], 1
mov dword [esp + 0x14], esi
mov dword [esp + 0x94], 0
jmp 0x401acc
cmp esi, 5
setle byte [esp + 0x22]
jg 0x401ac3
mov dword [esp + 0x94], 0
jmp 0x401acc
call eax
mov dword [esp + 0x94], eax
cmp dword [0x4e7548], 0
je 0x401ada
call fcn.00404270
xor bl, bl
mov edi, 1
cmp dword [0x4e963c], 0
mov dword [esp + 0x74], ebx
je 0x401aff
call fcn.004040a0
test al, al
movzx ebx, bl
cmovne ebx, edi
mov dword [esp + 0x74], ebx
test esi, esi
jle 0x401b39
cmp ebp, 1
jne 0x401b39
inc dword [0x4e69ec]
cmp byte [0x4e68a6], 0
mov byte [esp + 0x36], 1
jne 0x401b3e
push 0
push 0xa
push 9
push dword [0x4e69e8]
call dword [sym.imp.USER32.dll_SetTimer]
test eax, eax
setne byte [0x4e68a6]
jmp 0x401b3e
mov byte [esp + 0x36], 0
mov eax, dword [sym.imp.USER32.dll_GetMessageW]
xorps xmm0, xmm0
mov dword [esp + 0x17c], eax
mov eax, dword [sym.imp.USER32.dll_GetForegroundWindow]
mov dword [esp + 0xcc], eax
mov eax, dword [sym.imp.USER32.dll_GetWindowThreadProcessId]
mov dword [esp + 0xd0], eax
mov eax, dword [sym.imp.USER32.dll_GetClassNameW]
mov dword [esp + 0xac], eax
mov eax, dword [sym.imp.USER32.dll_GetFocus]
mov dword [esp + 0xdc], eax
mov eax, dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsicmp]
mov dword [esp + 0x180], eax
mov eax, dword [sym.imp.KERNEL32.dll_Sleep]
mov dword [esp + 0x98], eax
mov eax, dword [sym.imp.USER32.dll_TranslateAcceleratorW]
mov dword [esp + 0xd8], eax
mov eax, dword [sym.imp.USER32.dll_GetKeyState]
mov dword [esp + 0x9c], eax
mov eax, dword [sym.imp.USER32.dll_GetWindowLongW]
mov dword [esp + 0x88], eax
mov eax, dword [sym.imp.USER32.dll_IsWindowEnabled]
mov dword [esp + 0x184], eax
mov eax, dword [sym.imp.USER32.dll_SendMessageW]
mov dword [esp + 0x38], eax
mov eax, dword [sym.imp.USER32.dll_WindowFromPoint]
mov dword [esp + 0x150], eax
mov eax, dword [sym.imp.USER32.dll_GetParent]
mov dword [esp + 0x154], eax
mov eax, dword [sym.imp.USER32.dll_IsDialogMessageW]
mov dword [esp + 0xd4], eax
mov eax, dword [sym.imp.SHELL32.dll_DragQueryFileW]
mov dword [esp + 0x15c], eax
mov eax, dword [sym.imp.SHELL32.dll_DragFinish]
mov dword [esp + 0x84], eax
mov eax, dword [sym.imp.USER32.dll_ScreenToClient]
mov dword [esp + 0x164], eax
mov eax, dword [sym.imp.USER32.dll_SetWindowLongW]
mov dword [esp + 0xc4], eax
mov eax, dword [sym.imp.USER32.dll_CountClipboardFormats]
mov dword [esp + 0x16c], eax
mov eax, dword [sym.imp.USER32.dll_IsClipboardFormatAvailable]
mov dword [esp + 0xc8], eax
mov eax, dword [sym.imp.USER32.dll_ShowWindow]
mov dword [esp + 0x158], eax
mov eax, dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
mov dword [esp + 0x174], eax
mov eax, dword [sym.imp.USER32.dll_TranslateMessage]
mov ebp, dword [sym.imp.USER32.dll_PeekMessageW]
mov dword [esp + 0x178], eax
mov eax, dword [sym.imp.USER32.dll_DispatchMessageW]
mov dword [esp + 0x58], eax
mov eax, dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncpy]
mov esi, dword [esp + 0x58]
mov ecx, dword [esp + 0x58]
mov dword [esp + 0xe4], eax
mov eax, dword [sym.imp.USER32.dll_GetWindowRect]
mov dword [esp + 0x7c], eax
mov eax, dword [sym.imp.USER32.dll_MapWindowPoints]
mov dword [esp + 0x160], eax
mov eax, dword [sym.imp.USER32.dll_PostMessageW]
mov dword [esp + 0x170], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x58]
mov byte [esp + 0x37], 0
mov byte [esp + 0x34], 0
mov dword [esp + 0x78], 0
mov dword [esp + 0x18], ebp
movsd qword [esp + 0x1e0], xmm0
mov dword [esp + 0x24], esi
mov dword [esp + 0x30], eax
mov dword [esp + 0x80], ecx
mov al, byte [esp + 0x37]
mov esi, dword [esp + 0x14]
mov byte [esp + 0x23], al
mov eax, dword [esp + 0x58]
mov dword [esp + 0xe0], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 0xa4], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 0x90], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 0x8c], eax
mov edi, dword [esp + 0x10]
jmp 0x401d67
mov esi, dword [esp + 0x14]
jmp 0x401d67
call fcn.00489500
mov esi, dword [esp + 0x14]
mov edi, dword [esp + 0x10]
mov ebp, dword [esp + 0x18]
call edi
mov ebx, eax
test esi, esi
jle 0x401dc1
cmp byte [esp + 0x34], 0
jne 0x401dc1
cmp byte [0x4e68a7], 0
jne 0x401dce
call fcn.00404930
neg eax
sbb eax, eax
and eax, 0xfffffcef
add eax, 0x311
push eax
push 0
push 0
lea eax, [esp + 0x48]
push eax
call dword [esp + 0x18c]
cmp eax, 0xffffffff
je 0x401d67
call edi
mov ecx, eax
sub ecx, ebx
cmp ecx, 3
jbe 0x402059
mov dword [0x4e9690], eax
jmp 0x402059
cmp byte [0x4e68a7], 0
je 0x401f49
call dword [esp + 0xcc]
mov esi, eax
test esi, esi
je 0x401f49
push 0
push esi
call dword [esp + 0xd8]
cmp eax, dword [0x4e82ec]
jne 0x401f49
cmp dword [0x4e69e4], 0
je 0x401e51
push 0x20
lea eax, [esp + 0x24c]
push eax
push esi
mov esi, dword [esp + 0xb8]
call esi
mov ecx, str.32770
lea eax, [esp + 0x248]
nop
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x401e46
test dx, dx
je 0x401e42
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x401e46
add eax, 4
add ecx, 4
test dx, dx
jne 0x401e20
xor eax, eax
jmp 0x401e4b
sbb eax, eax
or eax, 1
test eax, eax
je 0x401eab
jmp 0x401e58
mov esi, dword [esp + 0xac]
call dword [esp + 0xdc]
test eax, eax
je 0x401f49
push 0x20
lea ecx, [esp + 0x24c]
push ecx
push eax
call esi
mov esi, dword [esp + 0x180]
lea eax, [esp + 0x248]
push str.SysTreeView32
push eax
call esi
add esp, 8
test eax, eax
je 0x401eab
lea eax, [esp + 0x248]
push str.SysListView32
push eax
call esi
add esp, 8
test eax, eax
jne 0x401f49
call fcn.00404930
push 0
push 0x1ff
neg eax
push 0
sbb esi, esi
lea eax, [esp + 0x48]
push 0
and esi, 0xfffffcee
push eax
add esi, 0x311
call ebp
test eax, eax
lea eax, [esp + 0x3c]
jne 0x401ee7
push 1
push esi
push 0x20e
jmp 0x401fb8
mov edi, dword [esp + 0x4c]
push 0
push esi
push 0x20e
push 0
push eax
call ebp
push 1
test eax, eax
jne 0x401f15
push 0x1ff
push eax
push eax
lea eax, [esp + 0x4c]
push eax
call ebp
mov edi, dword [esp + 0x10]
jmp 0x401fbd
mov eax, dword [esp + 0x50]
sub eax, edi
test eax, eax
lea eax, [esp + 0x40]
jle 0x401f38
push 0x1ff
push 0
push 0
push eax
call ebp
mov edi, dword [esp + 0x10]
jmp 0x401fbd
push esi
push 0x20e
push 0
push eax
call ebp
mov edi, dword [esp + 0x10]
jmp 0x401fbd
cmp dword [0x4e40ec], 0
je 0x401fa2
cmp dword [0x4e69b8], 0
jne 0x401fa2
mov ecx, dword [0x4e40f4]
cmp byte [ecx + 0xec], 0
jne 0x401f99
cmp byte [ecx + 0xee], 0
jne 0x401f99
cmp dword [ecx + 0xe0], 0xffffffff
jle 0x401f99
call edi
mov ecx, dword [0x4e40f4]
sub eax, dword [ecx + 0xdc]
cmp eax, dword [ecx + 0xe0]
jb 0x401f99
mov byte [ecx + 0xec], 1
movzx ecx, byte [ecx + 0xec]
jmp 0x401fa4
xor ecx, ecx
xor edx, edx
mov eax, 0x311
test ecx, ecx
push 1
cmovne eax, edx
push eax
push edx
lea eax, [esp + 0x48]
push 0
push eax
call ebp
test eax, eax
jne 0x402055
call edi
mov edx, dword [0x4e9690]
mov ecx, eax
mov esi, dword [esp + 0x14]
sub ecx, ebx
cmp ecx, 3
cmova edx, eax
mov dword [0x4e9690], edx
test esi, esi
jne 0x401ffe
cmp byte [esp + 0x37], 0
jne 0x401ffe
push esi
call dword [esp + 0x9c]
mov byte [esp + 0x37], 1
jmp 0x401d67
cmp dword [esp + 0x78], 0
jne 0x402026
cmp byte [esp + 0x22], 0
je 0x402026
test esi, esi
jle 0x402019
push 5
call dword [esp + 0x9c]
mov dword [esp + 0x78], 1
jmp 0x401d67
call edi
cmp byte [esp + 0x22], 0
jne 0x403ee5
mov ecx, dword [esp + 0x94]
sub ecx, eax
add ecx, esi
cmp ecx, 5
jle 0x403ee5
push 5
call dword [esp + 0x9c]
jmp 0x401d67
mov esi, dword [esp + 0x14]
inc dword [esp + 0x78]
cmp dword [0x4e8b70], 0
je 0x402093
mov edx, dword [esp + 0x40]
lea eax, [esp + 0x1dc]
mov ecx, dword [esp + 0x3c]
push eax
lea eax, [esp + 0x40]
push eax
push dword [esp + 0x50]
push dword [esp + 0x50]
call fcn.00404340
add esp, 0x10
test al, al
jne 0x401d67
mov esi, dword [0x4e69e0]
mov ebp, dword [esp + 0x3c]
mov ebx, dword [esp + 0x40]
test esi, esi
je 0x4025a7
test ebp, ebp
je 0x4025a7
cmp ebp, dword [0x4e69e8]
je 0x4025a7
cmp ebx, 0x414
je 0x4025a7
cmp ebx, 0x402
je 0x4025a7
lea eax, [ebx - 0x100]
cmp eax, 9
ja 0x4023c3
call dword [esp + 0xdc]
mov ebp, eax
test ebp, ebp
je 0x4023b9
mov ecx, ebp
call fcn.004a37a0
mov esi, eax
test esi, esi
je 0x4023b9
mov ecx, ebp
call fcn.00479c50
mov dword [esp + 0x24], eax
test eax, eax
je 0x4023b9
mov ecx, dword [eax + 0x74]
test ecx, ecx
je 0x40213e
lea eax, [esp + 0x3c]
push eax
push ecx
push esi
call dword [esp + 0xe4]
mov esi, dword [esp + 0x14]
test eax, eax
jne 0x401d63
mov eax, dword [esp + 0x24]
mov ebx, dword [esp + 0x40]
mov edi, dword [esp + 0x44]
cmp ebx, 0x100
jne 0x40236c
cmp byte [eax + 0xc0], 0
je 0x4022c4
cmp edi, 0x22
je 0x40217c
cmp edi, 0x21
je 0x40217c
cmp edi, 9
je 0x40217c
cmp edi, 0x25
je 0x40217c
cmp edi, 0x27
jne 0x4022c4
push ebp
mov ecx, eax
call fcn.00401860
mov ebx, eax
mov dword [esp + 0x5c], ebx
test ebx, ebx
je 0x4022b0
mov cl, byte [ebx + 4]
cmp cl, 0xf
je 0x4022b0
mov edi, dword [esp + 0x44]
xor esi, esi
cmp cl, 0x13
jne 0x4021cd
mov esi, ebx
cmp edi, 0x25
je 0x4021b5
cmp edi, 0x27
jne 0x4021cd
mov ecx, dword [esp + 0x24]
cmp edi, 0x27
push 0
sete al
push 0
movzx eax, al
push eax
push ebx
jmp 0x401d56
cmp edi, 0x25
je 0x4022b4
cmp edi, 0x27
je 0x4022b4
push 0x11
call dword [esp + 0xa0]
mov ecx, 0x8000
test cx, ax
je 0x4022b0
mov edi, dword [esp + 0x44]
cmp edi, 9
jne 0x40221c
cmp byte [ebx + 4], 0xc
jne 0x40221c
push 0xfffffffffffffff0
push dword [ebx]
call dword [esp + 0x90]
test al, 4
jne 0x4022b0
mov edi, dword [esp + 0x44]
test esi, esi
jne 0x402260
movzx eax, byte [ebx + 6]
mov ebx, dword [esp + 0x24]
mov ecx, ebx
push eax
call fcn.00489240
mov esi, eax
test esi, esi
jne 0x402264
mov edx, dword [ebx + 0x10]
xor al, al
xor ecx, ecx
test edx, edx
je 0x4022b4
mov esi, dword [ebx + 0x18]
cmp byte [esi + 4], 0x13
jne 0x402250
test al, al
je 0x40225a
add al, 1
inc ecx
add esi, 0x40
cmp ecx, edx
jb 0x402244
jmp 0x4022b4
test esi, esi
je 0x4022b4
jmp 0x402264
mov ebx, dword [esp + 0x24]
push dword [esi]
call dword [esp + 0x188]
test eax, eax
je 0x4022b0
mov eax, dword [esp + 0x44]
cmp eax, 0x22
je 0x4022a1
cmp eax, 9
jne 0x402292
push 0x10
call dword [esp + 0xa0]
mov ecx, 0x8000
test cx, ax
je 0x4022a1
push 1
push 1
xor al, al
mov ecx, ebx
push eax
push esi
jmp 0x401d56
push 1
push 1
mov al, 1
mov ecx, ebx
push eax
push esi
jmp 0x401d56
mov edi, dword [esp + 0x44]
mov ebx, dword [esp + 0x40]
cmp ebx, 0x100
jne 0x40236c
cmp edi, 0x1b
je 0x4022f8
cmp edi, 9
je 0x4022f8
cmp edi, 0x41
jne 0x40236c
mov ebx, dword [esp + 0x9c]
push 0x11
call ebx
mov esi, 0x8000
test si, ax
je 0x402364
push 0xa5
call ebx
test si, ax
jne 0x402364
push ebp
mov ebp, dword [esp + 0x28]
mov ecx, ebp
call fcn.00401860
mov esi, eax
mov dword [esp + 0x5c], esi
test esi, esi
je 0x402364
cmp byte [esi + 4], 0xc
jne 0x402364
mov edi, dword [esp + 0x44]
cmp edi, 0x1b
je 0x402358
mov al, byte [esi + 5]
cmp edi, 0x41
je 0x402340
test al, al
jns 0x402368
push 0x4baca4
push 1
push 0xc2
push dword [esi]
call dword [esp + 0x48]
jmp 0x401d5b
test al, 2
jne 0x402368
push 0xffffffffffffffff
push 0
push 0xb1
push dword [esi]
call dword [esp + 0x48]
jmp 0x401d5b
mov ecx, ebp
call fcn.00484840
jmp 0x401d5b
mov edi, dword [esp + 0x44]
mov ebx, dword [esp + 0x40]
mov eax, dword [0x4e82b8]
test eax, eax
je 0x402527
cmp ebx, 0x100
jne 0x402527
cmp edi, 0xd
jne 0x40239d
push 0
push 0
push 0x1116
push eax
call dword [esp + 0x48]
jmp 0x401d5b
cmp edi, 0x1b
jne 0x402527
push 0
push 1
push 0x1116
push eax
call dword [esp + 0x48]
jmp 0x401d5b
mov ebx, dword [esp + 0x40]
mov esi, dword [0x4e69e0]
cmp ebx, 0x20a
je 0x4023dc
cmp ebx, 0x20e
je 0x4023dc
mov edi, dword [esp + 0x44]
jmp 0x40252d
push dword [esp + 0x54]
push dword [esp + 0x54]
call dword [esp + 0x158]
mov ebp, dword [esp + 0x88]
mov esi, eax
push 0xfffffffffffffff0
push esi
call ebp
mov ebx, dword [esp + 0x154]
mov edi, eax
push esi
call ebx
mov ecx, eax
call fcn.00479c20
test eax, eax
je 0x402462
cmp esi, dword [esp + 0x3c]
jne 0x402435
push dword [esp + 0x44]
mov edx, dword [esp + 0x44]
mov ecx, esi
push edi
call fcn.00401920
add esp, 8
test eax, eax
jne 0x402462
mov eax, dword [esp + 0x3c]
cmp esi, eax
je 0x402466
push dword [esp + 0x44]
mov edx, dword [esp + 0x44]
mov ecx, esi
push edi
call fcn.00401920
add esp, 8
test eax, eax
je 0x402462
push dword [esp + 0x48]
push dword [esp + 0x48]
push dword [esp + 0x48]
push esi
call dword [esp + 0x48]
jmp 0x401d5b
mov eax, dword [esp + 0x3c]
push dword [esp + 0x44]
push 0xfffffffffffffff0
push eax
call ebp
mov edx, dword [esp + 0x44]
mov ecx, dword [esp + 0x40]
push eax
call fcn.00401920
add esp, 8
test eax, eax
jne 0x40251f
push dword [esp + 0x3c]
call ebx
mov ecx, eax
call fcn.00479c20
mov ebp, eax
mov dword [esp + 0x24], ebp
test ebp, ebp
je 0x40251f
push dword [esp + 0x44]
mov edx, dword [esp + 0x44]
push dword [ebp + 0x3c]
mov ecx, dword [ebp + 4]
call fcn.00401920
add esp, 8
test eax, eax
jne 0x402507
push dword [ebp + 4]
call ebx
mov esi, dword [0x4e69e0]
xor edx, edx
test esi, esi
jle 0x4024e7
nop
mov ecx, dword [0x4e69dc]
mov ebp, dword [ecx + edx*4]
mov dword [esp + 0x24], ebp
cmp dword [ebp + 4], eax
je 0x4024f9
inc edx
cmp edx, esi
jl 0x4024d0
mov edi, dword [esp + 0x44]
mov ebx, dword [esp + 0x40]
mov dword [esp + 0x24], 0
jmp 0x40252d
test ebp, ebp
jne 0x4024a3
mov edi, dword [esp + 0x44]
mov ebx, dword [esp + 0x40]
jmp 0x40252d
push dword [esp + 0x48]
push dword [esp + 0x48]
push dword [esp + 0x48]
push dword [ebp + 4]
call dword [esp + 0x48]
jmp 0x401d5b
mov ebx, dword [esp + 0x40]
mov edi, dword [esp + 0x44]
mov esi, dword [0x4e69e0]
xor ebp, ebp
test esi, esi
jle 0x4025eb
nop word [eax + eax]
mov edx, dword [0x4e69dc]
mov eax, dword [edx + ebp*4]
cmp dword [eax + 0x10], 0
jne 0x402557
cmp ebx, 0x106
je 0x40259e
mov ecx, dword [0x4e40f4]
mov byte [ecx + 0xe8], 1
mov eax, dword [esp + 0x40]
mov dword [ecx + 0xe4], eax
lea eax, [esp + 0x3c]
push eax
mov eax, dword [edx + ebp*4]
push dword [eax + 4]
call dword [esp + 0xdc]
test eax, eax
jne 0x403e52
mov eax, dword [0x4e40f4]
mov esi, dword [0x4e69e0]
mov byte [eax + 0xe8], 0
mov ebx, dword [esp + 0x40]
inc ebp
cmp ebp, esi
jl 0x402540
mov ebp, dword [esp + 0x3c]
mov edi, dword [esp + 0x44]
cmp ebx, 0x401
ja 0x4027c9
cmp ebx, 0x400
jae case.0x4027df.1045
cmp ebx, 0x100
ja 0x402625
je 0x402604
cmp ebx, 0x12
je 0x4025f1
cmp ebx, 0x4b
jne case.0x4027df.1027
mov dword [0x4e69c8], 0
mov byte [esp + 0x34], 1
jmp 0x401d5b
mov ebp, dword [esp + 0x3c]
jmp 0x4025ab
push 0
push 4
mov ecx, 0x4e8b78
call fcn.0042cf00
jmp 0x401d5b
cmp ebp, dword [0x4e69c4]
jne case.0x4027df.1027
cmp edi, 0x1b
jne case.0x4027df.1027
push 0
push dword [0x4e69e8]
call dword [esp + 0x160]
jmp 0x401d5b
cmp ebx, 0x113
je 0x4026b3
cmp ebx, 0x312
je case.0x4027df.1026
call dword [esp + 0xcc]
mov esi, eax
test esi, esi
je 0x403e72
push 0
push esi
call dword [esp + 0xd8]
cmp eax, dword [0x4e82ec]
jne 0x403e72
push 0x20
lea eax, [esp + 0x24c]
push eax
push esi
call dword [esp + 0xb8]
mov ecx, str.32770
lea eax, [esp + 0x248]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x403dfb
test dx, dx
je 0x4026ac
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x403dfb
add eax, 4
add ecx, 4
test dx, dx
jne 0x402682
xor eax, eax
jmp 0x403e00
cmp dword [esp + 0x48], 0
jne case.0x4027df.1027
cmp ebp, dword [0x4e69e8]
jne case.0x4027df.1027
cmp dword [0x4e7548], 0
je 0x4026d4
call fcn.00404270
cmp dword [0x4e963c], 0
je 0x4026f9
call fcn.004040a0
mov edx, dword [esp + 0x74]
test al, al
movzx ebx, dl
mov eax, 1
cmovne ebx, eax
mov dword [esp + 0x74], ebx
jmp 0x4026fd
mov ebx, dword [esp + 0x74]
cmp dword [esp + 0xa8], 0
mov esi, dword [esp + 0x14]
mov edi, dword [esp + 0x10]
mov ebp, dword [esp + 0x18]
je 0x401d67
cmp esi, 1
jl 0x401d67
call edi
cmp byte [esp + 0x22], 0
jne 0x40273d
mov ecx, dword [esp + 0x94]
sub ecx, eax
add ecx, esi
cmp ecx, 5
jg 0x401d67
cmp esi, 0xffffffff
jle 0x402752
xorps xmm0, xmm0
mov dword [0x4e9690], eax
movlpd qword [0x4e9680], xmm0
xor ecx, ecx
mov dword [0x4e9694], eax
cmp byte [esp + 0x35], cl
movzx eax, byte [0x4e68a7]
cmovne eax, ecx
mov byte [0x4e68a7], al
cmp byte [esp + 0x36], cl
je 0x4027bf
mov eax, dword [0x4e69ec]
dec eax
mov dword [0x4e69ec], eax
test esi, esi
jle 0x4027bf
test eax, eax
jne 0x4027bf
cmp dword [0x4e963c], ecx
jne 0x4027bf
cmp dword [0x4e7548], ecx
jne 0x4027bf
cmp byte [0x4e68a6], cl
je 0x4027bf
push 9
push dword [0x4e69e8]
call dword [sym.imp.USER32.dll_KillTimer]
movzx ecx, byte [0x4e68a6]
xor edx, edx
test eax, eax
cmovne ecx, edx
mov byte [0x4e68a6], cl
mov al, bl
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
lea eax, [ebx - 0x402]
cmp eax, 0x1c
ja case.0x4027df.1027
movzx eax, byte [eax + 0x403f84]
jmp dword [eax*4 + 0x403f78]
test ebp, ebp
je case.0x4027df.1026
cmp ebp, dword [0x4e69e8]
jne case.0x4027df.1027
lea eax, [ebx - 0x401]
mov dword [esp + 0x70], 0
cmp eax, 0x1d
ja case.0x402814.1027
movzx eax, byte [eax + 0x403fc0]
jmp dword [eax*4 + 0x403fa4]
mov ecx, ebp
call fcn.00479c20
mov esi, eax
mov dword [esp + 0x24], esi
test esi, esi
je case.0x4027df.1027
movzx edx, di
mov ecx, 0x2af8
shr edi, 0x10
cmp edx, 8
mov eax, edi
mov dword [esp + 0x60], edx
cmovne edi, dword [esp + 0x48]
cmove eax, ecx
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x48]
cmovne eax, dword [esp + 0x30]
mov dword [esp + 0x30], eax
mov ebp, eax
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x28], 0
cmp eax, dword [esi + 0x10]
jae 0x402882
shl eax, 6
add eax, dword [esi + 0x18]
mov dword [esp + 0x5c], eax
jmp 0x40288a
mov dword [esp + 0x5c], 0
lea eax, [edx - 5]
mov dword [esp + 0x80], 0
mov byte [esp + 0x23], 0
cmp eax, 4
ja case.default.0x4028a6
jmp dword [eax*4 + 0x403fe0]
mov esi, dword [esi + 0x2c]
mov dword [esp + 0x2c], esi
mov dword [esp + 0x1c], edi
test esi, esi
je 0x401d5b
mov eax, 0x3a
jmp 0x402909
mov esi, dword [esi + 0x24]
mov eax, dword [esp + 0x30]
mov dword [esp + 0x2c], esi
mov dword [esp + 0x1c], edi
mov dword [esp + 0x30], eax
test esi, esi
je 0x401d5b
mov eax, 0x38
jmp 0x402909
mov esi, dword [esi + 0x28]
mov eax, dword [esp + 0x30]
mov dword [esp + 0x2c], esi
mov dword [esp + 0x1c], edi
mov dword [esp + 0x30], eax
test esi, esi
je 0x401d5b
mov eax, 0x39
add eax, dword [esp + 0x24]
mov dword [esp + 0x1c], edi
mov dword [esp + 0x80], eax
je 0x402a31
cmp byte [eax], 0
mov dword [esp + 0x1c], edi
mov edi, dword [esp + 0x10]
mov dword [esp + 0x30], ebp
mov dword [esp + 0x80], eax
jne 0x402d92
xor edi, edi
mov dword [esp + 0x30], ebp
jmp 0x402dcb
mov esi, dword [esi + 0x34]
mov eax, dword [esp + 0x30]
mov dword [esp + 0x2c], esi
mov dword [esp + 0x1c], edi
mov dword [esp + 0x30], eax
test esi, esi
je 0x401d5b
mov dword [esp + 0x1c], edi
xor edi, edi
mov dword [esp + 0x30], ebp
jmp 0x402dcb
mov ebx, dword [esi + 0x68]
mov esi, dword [esi + 0x30]
mov dword [esp + 0x70], ebx
mov dword [esp + 0x2c], esi
mov dword [esp + 0x1c], edi
test esi, esi
je 0x4029b4
mov dword [esp + 0x1c], edi
test ebx, ebx
je 0x4029cb
push 0
push 0
push 0xffffffffffffffff
push ebx
call dword [esp + 0x16c]
mov ecx, eax
mov dword [esp + 0x1c], ecx
test ecx, ecx
je 0x4029b4
mov ebx, dword [esp + 0x40]
xor edi, edi
mov dword [esp + 0x30], ebp
jmp 0x402dcb
test ebx, ebx
je 0x4029cb
push ebx
call dword [esp + 0x88]
mov ecx, dword [esp + 0x24]
mov dword [ecx + 0x68], 0
mov dword [esp + 0x30], ebp
jmp 0x401d5b
mov esi, dword [esp + 0x5c]
mov eax, dword [esp + 0x30]
mov dword [esp + 0x1c], edi
mov dword [esp + 0x30], eax
test esi, esi
je 0x401d5b
mov eax, dword [esp + 0x5c]
mov esi, dword [esi + 0xc]
mov dword [esp + 0x2c], esi
mov al, byte [eax + 5]
test esi, esi
jne 0x402a18
test al, 1
je 0x402a0b
mov ecx, dword [esp + 0x24]
call fcn.004847e0
mov dword [esp + 0x1c], edi
mov dword [esp + 0x30], ebp
jmp 0x401d5b
mov dword [esp + 0x1c], edi
mov dword [esp + 0x30], ebp
test al, 4
jne 0x401d5b
mov byte [esp + 0x23], 1
mov dword [esp + 0x1c], edi
xor edi, edi
mov dword [esp + 0x30], ebp
jmp 0x402dcb
test edi, edi
je 0x402a63
mov ecx, edi
call fcn.00479c20
mov esi, eax
mov dword [esp + 0x24], esi
test esi, esi
jne 0x402a6b
test ebp, ebp
je 0x402a6b
cmp ebp, dword [0x4e69e8]
jne case.0x4027df.1027
jmp 0x402a6b
mov dword [esp + 0x24], 0
push dword [esp + 0x48]
mov ecx, 0x4e8b78
call fcn.004018f0
mov esi, dword [esp + 0x14]
mov edi, dword [esp + 0x10]
mov ebp, dword [esp + 0x18]
mov dword [esp + 0xe0], eax
test eax, eax
je 0x401d67
mov esi, dword [eax + 8]
test esi, esi
je 0x401d50
mov edi, dword [eax + 0x18]
jmp 0x402dc7
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
cmp edi, dword [0x4e7544]
jae 0x401d47
mov eax, dword [0x4e7540]
mov ebx, dword [eax + edi*4]
mov dword [esp + 0xa4], ebx
mov ecx, dword [ebx + 0x10]
test ecx, ecx
je 0x402b02
mov edx, dword [ebx + 4]
call fcn.00413740
mov edi, dword [esp + 0x10]
mov ebp, eax
mov dword [esp + 0x64], ebp
test ebp, ebp
mov dword [esp + 0x68], ebp
mov ebp, dword [esp + 0x18]
je 0x401d67
mov ecx, dword [ebx + 0x10]
mov cl, byte [ecx]
cmp cl, 1
je 0x402b0c
cmp cl, 3
je 0x402b0c
xor ebp, ebp
mov dword [esp + 0x68], ebp
mov dword [esp + 0x64], ebp
push dword [esp + 0x48]
mov ecx, ebx
call fcn.00416200
cmp dword [ebx + 0xc], 0
mov esi, dword [esp + 0x14]
mov edi, dword [esp + 0x10]
mov ebp, dword [esp + 0x18]
jne 0x401d67
cmp byte [ebx + 0x2a], 0
je 0x402b4c
mov ax, word [esp + 0x48]
mov word [0x4e9654], ax
mov esi, dword [ebx]
mov edi, dword [ebx + 0x14]
mov ebx, dword [esp + 0x40]
jmp 0x402dc7
xor eax, eax
mov word [0x4e9654], ax
mov esi, dword [ebx]
mov edi, dword [ebx + 0x14]
mov ebx, dword [esp + 0x40]
jmp 0x402dc7
cmp byte [0x4e9628], 0
mov esi, dword [esp + 0x14]
mov edi, dword [esp + 0x10]
mov ebp, dword [esp + 0x18]
jne 0x401d67
mov esi, dword [0x4e961c]
test esi, esi
cmove esi, dword [0x4e91c8]
xor edi, edi
jmp 0x402dc7
mov ecx, edi
call fcn.0044dd30
mov esi, dword [esp + 0x14]
mov ebp, eax
mov edi, dword [esp + 0x10]
mov dword [esp + 0x6c], ebp
test ebp, ebp
je 0x401d63
mov esi, dword [ebp + 8]
xor edi, edi
mov ebx, dword [esp + 0x40]
mov esi, dword [esi + 0x35c]
jmp 0x402dc7
mov ebp, dword [0x4e69d8]
mov esi, dword [esp + 0x14]
mov dword [esp + 0x6c], ebp
test ebp, ebp
je 0x401d5f
cmp ebp, edi
je 0x402bec
mov ebp, dword [ebp + 4]
mov dword [esp + 0x6c], ebp
test ebp, ebp
jne 0x402bd8
jmp 0x401d5b
mov esi, dword [esp + 0x14]
mov edi, dword [esp + 0x10]
test ebp, ebp
je 0x401d63
mov esi, dword [ebp + 8]
cmp ebx, 0x41c
jne 0x402c0f
mov esi, dword [esi + 0x360]
jmp 0x402c25
cmp ebx, 0x41e
jne 0x402c1f
mov esi, dword [esi + 0x368]
jmp 0x402c25
mov esi, dword [esi + 0x364]
mov ebp, dword [esp + 0x18]
mov dword [esp + 0x2c], esi
test esi, esi
je 0x401d50
xor edi, edi
jmp 0x402dcb
mov esi, dword [esp + 0x14]
mov eax, edi
mov ebp, dword [esp + 0x18]
and eax, 0x7fff
cmp ax, word [0x4e755c]
jae 0x401d47
mov ecx, eax
shr edi, 0x10
mov eax, dword [0x4e754c]
mov edx, dword [eax + ecx*4]
mov dword [esp + 0x90], edx
test di, di
je 0x402ca9
mov ebp, dword [edx + 0x20]
add edi, 0xffff
mov dword [esp + 0x8c], ebp
test di, di
je 0x402ca5
nop word [eax + eax]
mov ebp, dword [ebp + 8]
add edi, 0xffff
test di, di
jne 0x402c90
mov dword [esp + 0x8c], ebp
test ebp, ebp
jne 0x402cf8
cmp ebx, 0x400
jne 0x402cc1
mov eax, dword [esp + 0x48]
mov ecx, 0xffc3d44d
shr eax, 0x10
sub ecx, eax
jmp 0x402cc3
xor ecx, ecx
push 0
push ecx
lea eax, [esp + 0x70]
mov ecx, edx
push eax
call fcn.00414180
mov ebp, eax
mov dword [esp + 0x8c], ebp
test ebp, ebp
jne 0x402cec
mov ebp, dword [esp + 0x68]
mov dword [esp + 0x64], ebp
jmp 0x401d5b
mov eax, dword [esp + 0x68]
mov ebx, dword [esp + 0x40]
mov dword [esp + 0x64], eax
mov eax, dword [0x4eb09c]
mov edx, dword [ebp]
test al, 1
jne 0x402d1d
or dword [0x4eb09c], 1
mov ecx, 0x4eb0a0
push 0
push 0
call fcn.0042b420
mov ebx, dword [esp + 0x40]
mov eax, dword [0x4e91c8]
mov ecx, dword [edx]
cmp ecx, dword [eax]
jne 0x402d2c
xor eax, eax
jmp 0x402d38
xor eax, eax
cmp ecx, dword [0x4eb0a0]
setne al
inc eax
sub eax, 0
je 0x402d42
sub eax, 1
jne 0x402d4d
mov eax, dword [edx + 8]
test eax, eax
je 0x402d4d
mov cl, byte [eax]
jmp 0x402d4f
xor cl, cl
mov al, byte [ebp + 0x16]
cmp al, byte [ebp + 0x17]
jb 0x402d9b
cmp cl, 0xe2
je 0x402d9b
cmp cl, 0xce
je 0x402d9b
cmp cl, 0xdc
je 0x402d9b
cmp cl, 0xdd
je 0x402d9b
cmp cl, 0xd8
je 0x402d9b
cmp cl, 0xd9
je 0x402d9b
cmp cl, 0xda
je 0x402d9b
cmp cl, 0xdb
je 0x402d9b
cmp byte [ebp + 0x1a], 0
je 0x402d89
mov byte [ebp + 0x1b], 1
mov edi, dword [esp + 0x10]
call edi
mov dword [ebp + 0xc], eax
mov esi, dword [esp + 0x14]
jmp 0x401d63
mov eax, dword [ebp + 4]
test eax, eax
je 0x402db7
mov al, byte [eax]
cmp al, 2
je 0x402db7
cmp al, 4
je 0x402db7
cmp al, 5
jb 0x402dc1
mov eax, dword [0x4e69d4]
jmp 0x402db9
xor eax, eax
mov dword [esp + 0x68], eax
mov dword [esp + 0x64], eax
mov esi, dword [ebp]
mov edi, dword [ebp + 0x10]
mov dword [esp + 0x2c], esi
mov eax, dword [0x4eb09c]
mov ebp, dword [esp + 0x1c]
test al, 1
jne 0x402df1
or dword [0x4eb09c], 1
mov ecx, 0x4eb0a0
push 0
push 0
call fcn.0042b420
mov ebx, dword [esp + 0x40]
mov eax, dword [0x4e91c8]
mov ecx, dword [esi]
cmp ecx, dword [eax]
jne 0x402e00
xor eax, eax
jmp 0x402e0c
xor eax, eax
cmp ecx, dword [0x4eb0a0]
setne al
inc eax
sub eax, 0
je 0x402e16
sub eax, 1
jne 0x402e21
mov eax, dword [esi + 8]
test eax, eax
je 0x402e21
mov cl, byte [eax]
jmp 0x402e23
xor cl, cl
mov edx, dword [0x4e69d0]
mov eax, dword [0x4e40f0]
mov byte [esp + 0xc0], cl
cmp edx, eax
jl 0x402eb1
add eax, 2
cmp edx, eax
jge 0x402e68
cmp cl, 0xe2
je 0x402eb1
cmp cl, 0xce
je 0x402eb1
cmp cl, 0xdc
je 0x402eb1
cmp cl, 0xdd
je 0x402eb1
cmp cl, 0xd8
je 0x402eb1
cmp cl, 0xd9
je 0x402eb1
cmp cl, 0xda
je 0x402eb1
cmp cl, 0xdb
je 0x402eb1
mov eax, dword [esp + 0x70]
test eax, eax
je 0x402e87
push eax
call dword [esp + 0x88]
mov esi, dword [esp + 0x24]
mov dword [esi + 0x68], 0
mov ebx, dword [esp + 0x40]
mov esi, dword [esp + 0x14]
mov edi, dword [esp + 0x10]
mov ebp, dword [esp + 0x18]
cmp ebx, 0x41b
jne 0x401d67
mov ebp, dword [esp + 0x6c]
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
jmp 0x401d63
mov eax, dword [0x4e40f4]
cmp edi, dword [eax + 0x2c]
jl 0x402e68
lea eax, [ebx - 0x402]
mov byte [esp + 0x74], 1
cmp eax, 0x1c
ja case.0x402ed2.1027
movzx eax, byte [eax + 0x404000]
jmp dword [eax*4 + 0x403ff4]
mov ebx, dword [esp + 0xe0]
mov esi, dword [esp + 0xe4]
push 0x104
push dword [ebx]
push 0x4e91d0
call esi
xor eax, eax
add esp, 0xc
mov word [0x4e93d8], ax
mov eax, dword [ebx + 0x10]
push 0x104
push dword [eax]
push 0x4e93da
call esi
add esp, 0xc
mov dword [0x4e91cc], ebx
xor eax, eax
mov word [0x4e95e2], ax
jmp case.0x402ed2.1044
mov eax, dword [0x4e95e4]
mov dword [0x4e95e8], eax
mov eax, dword [0x4e964c]
mov dword [0x4e9650], eax
cmp ebx, 0x401
jne 0x402f4c
mov eax, dword [esp + 0xa4]
mov eax, dword [eax + 4]
jmp 0x402f56
mov eax, dword [esp + 0x90]
mov eax, dword [eax + 0x1c]
mov dword [0x4e95e4], eax
call dword [esp + 0x10]
mov dword [0x4e964c], eax
mov esi, dword [0x4e69cc]
cmp byte [esi + 0x17], 0
jne 0x402f73
mov esi, dword [esi + 0xc]
test byte [esi + 0x15], 8
je 0x402f80
mov ecx, esi
call fcn.00401560
mov al, byte [esi + 0x17]
cmp al, 1
jne 0x402f98
test byte [esi + 0x15], 4
je 0x402f93
push esi
call fcn.00449270
mov ecx, dword [esi + 8]
jmp 0x402fe9
cmp al, 2
jne 0x402fe4
mov ecx, dword [0x4e96e4]
test ecx, ecx
jne 0x402fe9
mov ebx, dword [esp + 0xc8]
push 0xd
call ebx
test eax, eax
jne 0x402fca
push 0xf
call ebx
test eax, eax
mov ecx, 0x4bac24
mov eax, 0x4bac30
cmove ecx, eax
jmp 0x402fe9
push 0
call fcn.00405f50
mov edx, 0x4bac30
cmp eax, 0xffffffff
mov ecx, edx
cmovne ecx, dword [0x4e96e0]
jmp 0x402fe9
mov ecx, 0x4e82d8
push 0x7f
push ecx
lea eax, [esp + 0x290]
push eax
call dword [esp + 0xf0]
add esp, 0xc
xor eax, eax
xor dl, dl
mov word [esp + 0x386], ax
mov ecx, edi
push dword [esp + 0xc0]
push 1
call fcn.00404740
mov ebx, dword [0x4e40f4]
add esp, 8
mov esi, dword [esp + 0x10]
call esi
mov dword [0x4e9694], eax
mov dword [0x4e9690], eax
mov eax, dword [esp + 0x40]
add eax, 0xfffffbff
cmp eax, 0x1d
ja case.0x40304c.1027
movzx eax, byte [eax + 0x404040]
jmp dword [eax*4 + 0x404020]
mov esi, dword [esp + 0x5c]
xor eax, eax
mov word [esp + 0x1bc], ax
cmp byte [esp + 0x23], al
je 0x40306b
mov ecx, dword [esi]
jmp 0x403072
mov eax, dword [esp + 0x24]
mov ecx, dword [eax + 4]
mov edi, dword [esp + 0x28]
mov eax, edi
mov edx, dword [esp + 0x60]
add eax, eax
inc edi
mov dword [esp + 0x28], edi
mov dword [esp + eax*8 + 0xf8], 1
mov dword [esp + eax*8 + 0xf0], ecx
mov dword [esp + eax*8 + 0xf4], 0
lea eax, [edx - 5]
cmp eax, 4
ja case.default.0x4030ac
jmp dword [eax*4 + 0x404060]
xor ecx, ecx
cmp dword [esp + 0x1c], ecx
sete cl
xor edi, edi
mov dword [esp + 0x1c], edi
lea ecx, [ecx*2 + 1]
mov dword [ebx + 0x34], ecx
mov eax, dword [esp + 0x50]
mov dword [ebx + 0x3c], eax
mov eax, dword [esp + 0x54]
mov dword [ebx + 0x40], eax
test esi, esi
je 0x4032a5
test ebp, ebp
je 0x403216
movzx eax, byte [esi + 4]
add eax, 0xfffffff7
mov dword [esp + 0xb0], SysReAllocString
cmp eax, 8
ja case.0x403105.12
jmp dword [eax*4 + 0x404074]
mov ebp, dword [esp + 0x38]
push 0
push 0
push 0x19f
push dword [esi]
call ebp
cmp eax, 0xffffffff
je case.0x403105.12
lea ecx, [esp + 0xb0]
push ecx
push eax
push 0x198
push dword [esi]
call ebp
jmp case.0x403105.12
mov ebp, dword [esp + 0x38]
push 1
push 0xffffffffffffffff
push 0x100c
push dword [esi]
call ebp
cmp eax, 0xffffffff
je case.0x403105.12
lea ecx, [esp + 0xb0]
mov dword [esp + 0xb0], 2
push ecx
push eax
push 0x100e
push dword [esi]
call ebp
jmp case.0x403105.12
mov ebp, dword [esp + 0x38]
push 0
push 9
push 0x110a
push dword [esi]
call ebp
test eax, eax
je case.0x403105.12
mov dword [esp + 0xb0], eax
lea eax, [esp + 0xb0]
push eax
push 1
push 0x1104
push dword [esi]
call ebp
jmp case.0x403105.12
lea eax, [esp + 0xb0]
push eax
push 0
push 0x419
push dword [esi]
call dword [esp + 0x48]
cmp dword [esp + 0xb0], 0x80000000
lea ecx, [esp + 0xb0]
mov eax, dword [esi]
jne 0x4031d9
push ecx
push eax
call dword [esp + 0x84]
jmp 0x4031e6
push 2
push ecx
push 0
push eax
call dword [esp + 0x170]
mov eax, dword [esp + 0xb0]
mov ecx, dword [esp + 0xb4]
mov dword [ebx + 0x3c], eax
mov eax, dword [esp + 0xbc]
sub eax, ecx
mov eax, eax
test eax, eax
jns 0x403209
add eax, 1
sar eax, 1
add ecx, 2
add eax, ecx
mov dword [ebx + 0x40], eax
mov ecx, dword [ebx + 0x34]
movzx eax, byte [esi + 4]
sub eax, 9
je 0x40328f
sub eax, 1
je 0x403284
sub eax, 1
jne 0x4032a5
cmp ecx, 1
jne 0x403244
push eax
push 9
push 0x110a
push dword [esi]
call dword [esp + 0x48]
mov edi, eax
jmp 0x4032a1
mov eax, dword [esp + 0x50]
mov dword [esp + 0x1e8], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0x1ec], eax
lea eax, [esp + 0x1e8]
push eax
push dword [esi]
call dword [esp + 0x16c]
lea eax, [esp + 0x1e8]
push eax
push 0
push 0x1111
push dword [esi]
call dword [esp + 0x48]
mov edi, eax
jmp 0x4032a1
push 1
push 0xffffffffffffffff
push 0x100c
jmp 0x403298
push 0
push 0
push 0x19f
push dword [esi]
call dword [esp + 0x48]
lea edi, [eax + 1]
mov dword [esp + 0x1c], edi
mov ebp, dword [esp + 0x24]
lea eax, [esp + 0x208]
push eax
push dword [ebp + 4]
call dword [esp + 0x84]
mov eax, dword [esp + 0x208]
sub dword [ebx + 0x3c], eax
mov edx, dword [esp + 0x28]
mov ecx, edx
mov eax, dword [esp + 0x20c]
add ecx, ecx
sub dword [ebx + 0x40], eax
test esi, esi
je 0x4032f6
mov eax, dword [esi]
mov dword [esp + ecx*8 + 0xf0], eax
mov eax, 1
mov dword [esp + ecx*8 + 0xf4], 0
jmp 0x403303
mov dword [esp + ecx*8 + 0xf0], 0x4bac30
xor eax, eax
mov dword [esp + ecx*8 + 0xf8], eax
lea esi, [edx + 4]
mov dword [esp + ecx*8 + 0x100], edi
lea edi, [edx + 2]
mov dword [esp + ecx*8 + 0x108], 1
add edi, edi
mov dword [esp + ecx*8 + 0x104], 0
xor ecx, ecx
mov eax, dword [ebx + 0x34]
cmp eax, 3
mov dword [esp + edi*8 + 0xf8], 1
sete cl
mov dword [esp + edi*8 + 0xf0], ecx
mov ecx, esi
mov dword [esp + edi*8 + 0xf4], 0
add ecx, ecx
mov eax, dword [ebx + 0x3c]
cdq
mov dword [esp + edi*8 + 0x100], eax
lea eax, [esi + 1]
mov dword [esp + edi*8 + 0x104], edx
mov dword [esp + edi*8 + 0x108], 1
mov dword [esp + 0x28], eax
mov eax, dword [ebx + 0x40]
cdq
mov dword [esp + ecx*8 + 0xf4], edx
mov edx, dword [esp + 0x60]
mov dword [esp + ecx*8 + 0xf8], 1
mov dword [esp + ecx*8 + 0xf0], eax
mov eax, dword [esp + 0x28]
mov edi, dword [esp + 0x70]
mov ecx, dword [esp + 0x1c]
cmp byte [esp + 0x23], 0
je 0x403767
mov esi, dword [esp + 0x5c]
cmp byte [esi + 4], 0x17
jne 0x403767
push 0x10b0
lea eax, [esp + 0x394]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
mov eax, dword [esp + 0x28]
add esp, 0xc
dec eax
mov dword [esp + 0x388], 0xd
mov dword [esp + 0x38c], eax
lea eax, [esp + 0x388]
push eax
push 0
push 0x703
push dword [esi]
call dword [esp + 0x48]
test eax, eax
je 0x4037c6
cmp word [esp + 0x3f8], 0
lea ecx, [esp + 0x398]
push 1
push 0
lea eax, [esp + 0x400]
cmove eax, ecx
mov ecx, dword [0x4e69cc]
push 0xffffffffffffffff
push eax
call fcn.004a1950
mov eax, dword [esp + 0x28]
mov esi, eax
mov ecx, dword [0x4e69cc]
inc eax
push 0
push 1
add esi, esi
mov dword [esp + 0x30], eax
call fcn.00401640
mov dword [esp + esi*8 + 0xf8], 0
mov dword [esp + esi*8 + 0xf0], eax
jmp 0x4037c6
mov ebp, dword [esp + 0x24]
mov dword [ebx + 0x34], edx
mov eax, dword [esp + 0x50]
mov dword [ebx + 0x3c], eax
mov eax, dword [esp + 0x54]
mov dword [ebx + 0x40], eax
lea eax, [esp + 0x218]
push eax
push dword [ebp + 4]
call dword [esp + 0x84]
mov eax, dword [esp + 0x218]
sub dword [ebx + 0x3c], eax
mov eax, dword [esp + 0x21c]
sub dword [ebx + 0x40], eax
push 0xffffffffffffffec
push dword [ebp + 4]
call dword [esp + 0x90]
and eax, 0xffffffef
push eax
push 0xffffffffffffffec
push dword [ebp + 4]
call dword [esp + 0xd0]
mov esi, edi
mov edi, dword [esp + 0x70]
mov ecx, edi
add esi, esi
call fcn.0047c0c0
mov dword [esp + esi*8 + 0xf0], eax
mov eax, dword [esp + 0x5c]
mov dword [esp + esi*8 + 0xf8], 6
test eax, eax
je 0x40350a
mov eax, dword [eax]
mov dword [esp + esi*8 + 0x100], eax
mov eax, 1
mov dword [esp + esi*8 + 0x104], 0
jmp 0x403517
mov dword [esp + esi*8 + 0x100], 0x4bac30
xor eax, eax
mov dword [esp + esi*8 + 0x108], eax
mov ecx, ebp
mov esi, dword [esp + 0x28]
push dword [ebx + 0x3c]
add esi, 2
add esi, esi
call fcn.004018c0
cdq
mov ecx, ebp
mov dword [esp + esi*8 + 0xf8], 1
mov dword [esp + esi*8 + 0xf0], eax
mov dword [esp + esi*8 + 0xf4], edx
push dword [ebx + 0x40]
call fcn.004018c0
cdq
mov dword [esp + esi*8 + 0x100], eax
mov eax, dword [esp + 0x28]
add eax, 4
mov dword [esp + esi*8 + 0x104], edx
mov edx, dword [esp + 0x60]
mov dword [esp + esi*8 + 0x108], 1
mov dword [esp + 0x28], eax
jmp 0x4033a8
mov ebp, dword [esp + 0x24]
mov dword [ebx + 0x34], 1
cmp edx, 8
jne 0x4033a0
mov esi, dword [esp + 0x28]
mov ecx, ebp
mov edi, dword [esp + 0x30]
add esi, esi
mov eax, dword [esp + 0x1c]
mov dword [ebx + 0x3c], edi
mov dword [esp + esi*8 + 0xf0], eax
movzx eax, di
push eax
mov dword [esp + esi*8 + 0xfc], 1
mov dword [esp + esi*8 + 0xf8], 0
call fcn.004018c0
cdq
mov ecx, ebp
mov dword [esp + esi*8 + 0x100], eax
mov eax, edi
mov dword [esp + esi*8 + 0x108], 1
mov dword [esp + esi*8 + 0x104], edx
mov esi, dword [esp + 0x28]
shr eax, 0x10
add esi, esi
push eax
call fcn.004018c0
cdq
mov dword [esp + esi*8 + 0x110], eax
mov eax, dword [esp + 0x28]
add eax, 3
mov dword [esp + esi*8 + 0x114], edx
mov edx, dword [esp + 0x60]
mov dword [esp + esi*8 + 0x118], 1
mov dword [esp + 0x28], eax
jmp 0x4033a4
mov al, byte [esi + 4]
cmp al, 0xa
je 0x40367b
mov ebp, dword [esp + 0x24]
cmp al, 0x19
jne 0x40370c
mov eax, dword [esp + 0x50]
mov dword [ebx + 0x3c], eax
mov eax, dword [esp + 0x54]
mov dword [ebx + 0x40], eax
lea eax, [esp + 0x228]
push eax
push dword [ebp + 4]
call dword [esp + 0x84]
mov eax, dword [esp + 0x228]
sub dword [ebx + 0x3c], eax
mov eax, dword [esp + 0x22c]
sub dword [ebx + 0x40], eax
mov edx, dword [esp + 0x60]
jmp 0x40370c
cmp dl, 0x49
jne 0x403708
lea eax, [esp + 0x1bc]
test edx, 0x100
je 0x40369a
mov eax, 0x53
jmp 0x4036a7
test edx, 0x200
je 0x4036b6
mov eax, 0x73
mov word [esp + 0x1bc], ax
lea eax, [esp + 0x1be]
test edx, 0x400
je 0x4036c5
mov ecx, 0x46
jmp 0x4036d2
test edx, 0x800
je 0x4036d8
mov ecx, 0x66
mov word [eax], cx
add eax, 2
test edx, 0x1000
je 0x4036e7
mov ecx, 0x43
jmp 0x4036f4
test edx, 0x2000
je 0x4036fa
mov ecx, 0x63
mov word [eax], cx
add eax, 2
xor ecx, ecx
mov edx, 0x49
mov word [eax], cx
mov dword [esp + 0x60], edx
mov ebp, dword [esp + 0x24]
mov ecx, dword [esp + 0x60]
mov dword [ebx + 0x34], edx
mov edx, edi
add edx, edx
mov dword [esp + edx*8 + 0xf8], 0
call fcn.0047c0a0
mov ecx, dword [esp + 0x1c]
add edi, 2
mov dword [esp + edx*8 + 0xf0], eax
mov dword [esp + 0x28], edi
mov edi, dword [esp + 0x70]
mov eax, dword [esp + 0x28]
mov dword [esp + edx*8 + 0x108], 1
mov dword [esp + edx*8 + 0x100], ecx
mov dword [esp + edx*8 + 0x104], 0
mov edx, dword [esp + 0x60]
jmp 0x4033ac
cmp word [esp + 0x1bc], 0
je 0x403791
add eax, eax
lea esi, [esp + 0x1bc]
inc dword [esp + 0x28]
mov dword [esp + eax*8 + 0xf8], 0
mov dword [esp + eax*8 + 0xf0], esi
cmp edx, 8
je 0x4037b6
cmp edx, 5
je 0x4037b6
mov ecx, dword [0x4e69cc]
lea eax, [esp + 0x1bc]
push 1
push 0
push 0xffffffffffffffff
push eax
call fcn.004a1950
jmp 0x4037c6
push 0x18
push 0
push ecx
mov ecx, dword [0x4e69cc]
call fcn.004014e0
mov eax, dword [ebp + 4]
mov esi, dword [esp + 0x80]
mov dword [ebx + 0xc4], eax
add dword [ebp + 0x20], 2
mov eax, dword [esp + 0xa0]
mov dword [ebx + 0x50], eax
mov eax, dword [esp + 0x1c]
mov dword [ebx + 0x48], ebp
mov dword [ebx + 0x44], ebp
mov dword [ebx + 0x38], eax
test esi, esi
je 0x403858
mov byte [esi], 1
mov ebx, dword [esp + 0x5c]
lea eax, [esp + 0x168]
push eax
push dword [esp + 0x2c]
lea eax, [esp + 0xf8]
push eax
push 0x4bac40
lea ecx, [esp + 0x3c]
call fcn.00490090
cmp dword [ebp + 4], 0
je 0x4038b1
mov eax, dword [esp + 0x60]
test esi, esi
je 0x403869
mov byte [esi], 0
cmp eax, 6
jne 0x403874
cmp dword [esp + 0x168], 0
jne 0x4038b1
lea ecx, [esp + 0x2c]
call fcn.00401790
test eax, eax
jne 0x4038b1
mov ecx, ebp
call fcn.004847e0
jmp 0x4038b1
cmp byte [esp + 0x23], 0
je 0x4037f8
mov ebx, dword [esp + 0x5c]
or byte [ebx + 5], 4
jmp 0x4037fc
cmp byte [esp + 0x23], 0
je 0x403874
and byte [ebx + 5], 0xfb
cmp eax, 5
jne 0x4038b1
mov eax, dword [esp + 0x100]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
push edi
call dword [esp + 0x88]
push 0xffffffffffffffec
push dword [ebp + 4]
mov dword [ebp + 0x68], 0
call dword [esp + 0x90]
or eax, 0x10
push eax
push 0xffffffffffffffec
push dword [ebp + 4]
call dword [esp + 0xd0]
mov ecx, ebp
call fcn.0047beb0
mov edi, dword [esp + 0x10]
lea ecx, [esp + 0x288]
call fcn.00404850
cmp dword [esp + 0xa8], 0
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
je 0x401d67
call edi
cmp byte [esp + 0x22], 0
jne 0x4038fb
mov ecx, dword [esp + 0x94]
sub ecx, eax
add ecx, esi
cmp ecx, 5
jg 0x401d67
cmp esi, 0xffffffff
jle 0x403910
xorps xmm0, xmm0
mov dword [0x4e9690], eax
movlpd qword [0x4e9680], xmm0
mov dword [0x4e9694], eax
mov byte [esp + 0x34], 1
mov byte [esp + 0x22], 1
jmp 0x401d63
mov ebp, dword [esp + 0x24]
test ebp, ebp
je 0x403946
mov eax, dword [ebp + 4]
mov dword [ebx + 0xc4], eax
mov dword [ebx + 0x34], 1
add dword [ebp + 0x20], 2
mov dword [ebx + 0x48], ebp
mov dword [ebx + 0x44], ebp
mov ecx, 0x4e8b78
mov dword [esp + 0x190], 0
mov dword [esp + 0x188], 0x4e91d0
call fcn.0045f560
inc eax
mov dword [esp + 0x1a0], 1
push 0
mov dword [esp + 0x19c], eax
lea ecx, [esp + 0x30]
push 3
lea eax, [esp + 0x190]
mov dword [esp + 0x1a4], 0
push eax
push str.Menu
mov dword [esp + 0x1c0], 0
mov dword [esp + 0x1b8], 0x4e93da
call fcn.00490090
test ebp, ebp
je 0x4039bf
mov ecx, ebp
call fcn.0047beb0
mov edi, esi
jmp 0x4038bc
mov esi, dword [esp + 0xa4]
mov eax, dword [esp + 0x64]
mov dword [ebx + 0xc4], eax
mov al, byte [esi + 0x21]
mov byte [ebx + 0xf6], al
mov eax, dword [0x4eb09c]
mov edx, dword [esi]
test al, 1
jne 0x403a01
push 0
or eax, 1
mov ecx, 0x4eb0a0
push 0
mov dword [0x4eb09c], eax
call fcn.0042b420
mov eax, dword [0x4e91c8]
mov ecx, dword [edx]
cmp ecx, dword [eax]
jne 0x403a10
xor eax, eax
jmp 0x403a1c
xor eax, eax
cmp ecx, dword [0x4eb0a0]
setne al
inc eax
sub eax, 0
je 0x403a26
sub eax, 1
jne 0x403a31
mov eax, dword [edx + 8]
test eax, eax
je 0x403a31
mov cl, byte [eax]
jmp 0x403a33
xor cl, cl
mov al, byte [esi + 0x24]
cmp al, byte [esi + 0x25]
jb 0x403a67
cmp cl, 0xe2
je 0x403a67
cmp cl, 0xce
je 0x403a67
cmp cl, 0xdc
je 0x403a67
cmp cl, 0xdd
je 0x403a67
cmp cl, 0xd8
je 0x403a67
cmp cl, 0xd9
je 0x403a67
cmp cl, 0xda
je 0x403a67
cmp cl, 0xdb
jne 0x4038b8
push 0
push 0
mov byte [0x4e9656], 0
mov ecx, esi
inc byte [esi + 0x24]
push 0
push dword [0x4e95e4]
call fcn.00490090
dec byte [esi + 0x24]
jmp 0x4038b8
call dword [esp + 0x16c]
test eax, eax
je 0x403abc
mov ebp, dword [esp + 0xc8]
push 0xd
call ebp
test eax, eax
jne 0x403ab5
push 0xf
call ebp
test eax, eax
jne 0x403ab5
mov eax, 2
jmp 0x403abe
mov eax, 1
jmp 0x403abe
xor eax, eax
mov ecx, dword [0x4e69cc]
push 0x18
push 0
push eax
mov dword [ebx + 0x38], eax
call fcn.004014e0
mov eax, dword [ebx + 0x38]
push 0x4baca8
mov dword [esp + 0x204], 1
mov dword [esp + 0x1fc], eax
mov dword [esp + 0x200], 0
mov byte [0x4e9628], 1
call fcn.0040c090
mov ecx, dword [0x4e961c]
test ecx, ecx
je 0x403b17
call fcn.00401700
mov ecx, dword [0x4e961c]
cmp dword [esp + 0x44], 0
jne 0x403b3a
xor eax, eax
test ecx, ecx
mov ecx, 0x4e95fc
sete al
push eax
push 1
lea eax, [esp + 0x200]
push eax
call fcn.00490210
sub dword [0x4e5aec], 0xc
mov edi, esi
mov byte [0x4e9628], 0
jmp 0x4038bc
mov ebp, dword [esp + 0x6c]
lea ecx, [esp + 0x2c]
push 0
push 1
mov dword [esp + 0x248], 6
mov eax, dword [ebp + 8]
mov dword [esp + 0x240], eax
lea eax, [esp + 0x240]
push eax
push str.InputHook
call fcn.00490090
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov edi, esi
jmp 0x4038bc
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x48]
push 0
mov dword [esp + 0x1a4], 1
mov eax, dword [eax + 8]
mov dword [esp + 0x18c], eax
movzx eax, cl
cdq
mov dword [esp + 0x19c], eax
sar ecx, 0x10
movzx eax, cx
mov dword [esp + 0x1a0], edx
cdq
mov dword [esp + 0x1ac], eax
lea eax, [esp + 0x18c]
mov dword [esp + 0x1b4], 1
mov dword [esp + 0x1b0], edx
push 3
push eax
push str.InputHook
lea ecx, [esp + 0x3c]
mov dword [esp + 0x1a0], 6
call fcn.00490090
mov edi, esi
jmp 0x4038bc
mov eax, dword [esp + 0x48]
mov word [esp + 0xe8], ax
sar eax, 0x10
mov word [esp + 0xea], ax
xor eax, eax
mov word [esp + 0xec], ax
mov eax, dword [esp + 0x6c]
push 0
mov dword [esp + 0x1a4], 0
push 2
mov eax, dword [eax + 8]
mov dword [esp + 0x190], eax
lea eax, [esp + 0xf0]
mov dword [esp + 0x1a0], eax
lea eax, [esp + 0x190]
jmp 0x403bec
mov eax, dword [esp + 0x90]
mov al, byte [eax + 0x10]
add al, 0x64
cmp al, 3
ja 0x403c79
mov eax, dword [esp + 0x48]
mov dword [ebx + 0x38], eax
cmp byte [0x4eaaf4], 0
mov ebp, dword [esp + 0x8c]
mov eax, dword [esp + 0x64]
mov dword [ebx + 0xc4], eax
mov al, byte [ebp + 0x18]
mov byte [ebx + 0xf6], al
jne 0x4039bf
cmp dword [0x4e7564], 0
jne 0x403cb0
call esi
mov dword [0x4e7564], eax
inc dword [0x4eaaf0]
call esi
mov edi, dword [0x4eaaf0]
mov ecx, eax
sub ecx, dword [0x4e7564]
mov edx, dword [0x4e5350]
mov dword [0x4e7560], eax
cmp edi, dword [0x4e5354]
jbe 0x403ce4
cmp ecx, edx
jae 0x403ce4
mov esi, 1
jmp 0x403ce6
xor esi, esi
test esi, esi
je 0x403d6c
push ecx
push edi
push str._u_hotkeys_have_been_received_in_the_last__ums._n_nDo_you_want_to_continue__n_see_MaxHotkeysPerInterval_in_the_help_file_
lea eax, [esp + 0x144c]
push 0x800
push eax
call fcn.0049d580
add esp, 0x14
call fcn.0040cf10
movsd xmm3, qword [esp + 0x1e0]
lea ecx, [esp + 0x1440]
push 0
push 0
mov edx, 4
mov byte [0x4eaaf4], 1
mov dword [0x4e40ec], 0
call fcn.004a3500
add esp, 8
cmp eax, 7
jne 0x403d54
push 0
push 4
mov ecx, 0x4e8b78
call fcn.0042cf00
mov eax, dword [0x4e7560]
mov dword [0x4e40ec], 1
mov byte [0x4eaaf4], 0
jmp 0x403d70
cmp ecx, edx
jbe 0x403d87
mov dword [0x4eaaf0], 0
mov dword [0x4e7564], eax
test esi, esi
jne 0x4038b8
mov ebx, dword [esp + 0x90]
mov ecx, ebp
push 0
push 0
push 0
mov al, byte [ebx + 0xf]
mov byte [0x4e9656], al
inc byte [ebp + 0x16]
push dword [0x4e95e4]
call fcn.00490090
dec byte [ebp + 0x16]
test eax, eax
jne 0x403dbb
mov byte [ebp + 0x1b], al
jmp 0x4038b8
cmp byte [ebp + 0x1b], 0
je 0x4038b8
mov edi, dword [esp + 0x10]
mov byte [ebp + 0x1b], 0
call edi
sub eax, dword [ebp + 0xc]
cmp eax, 0x3e8
ja 0x4038bc
movzx eax, word [ebx + 4]
push 0
push eax
push 0x312
push dword [0x4e69e8]
call dword [esp + 0x180]
jmp 0x4038bc
sbb eax, eax
or eax, 1
test eax, eax
jne 0x403e72
mov ecx, dword [0x4e40f4]
mov byte [ecx + 0xe8], 1
mov eax, dword [esp + 0x40]
mov dword [ecx + 0xe4], eax
lea eax, [esp + 0x3c]
push eax
push esi
call dword [esp + 0xdc]
test eax, eax
je 0x403e63
cmp dword [0x4e69e4], 0
je 0x403e52
mov eax, dword [0x4e5b50]
mov ecx, 0x4bac30
test eax, eax
je 0x403e4a
mov eax, dword [eax]
test eax, eax
cmovne ecx, eax
push ecx
call dword [esp + 0x178]
mov eax, dword [0x4e40f4]
mov byte [eax + 0xe8], 0
jmp 0x401d5b
mov ecx, dword [0x4e40f4]
mov byte [ecx + 0xe8], 0
jmp 0x403e78
mov ecx, dword [0x4e40f4]
mov eax, dword [0x4e69c0]
test eax, eax
je 0x403eae
lea ecx, [esp + 0x3c]
push ecx
push eax
push dword [0x4e69e8]
call dword [esp + 0xe4]
mov esi, dword [esp + 0x14]
mov edi, dword [esp + 0x10]
mov ebp, dword [esp + 0x18]
test eax, eax
jne 0x401d67
mov ecx, dword [0x4e40f4]
mov byte [ecx + 0xe8], 1
mov eax, dword [esp + 0x40]
mov dword [ecx + 0xe4], eax
lea eax, [esp + 0x3c]
push eax
call dword [esp + 0x17c]
lea eax, [esp + 0x3c]
push eax
call dword [esp + 0x5c]
mov eax, dword [0x4e40f4]
mov byte [eax + 0xe8], 0
jmp 0x401d5b
cmp esi, 0xffffffff
jle 0x403efa
xorps xmm0, xmm0
mov dword [0x4e9690], eax
movlpd qword [0x4e9680], xmm0
xor ecx, ecx
mov dword [0x4e9694], eax
cmp byte [esp + 0x35], cl
movzx eax, byte [0x4e68a7]
cmovne eax, ecx
mov byte [0x4e68a7], al
cmp byte [esp + 0x36], cl
je 0x403f67
mov eax, dword [0x4e69ec]
dec eax
mov dword [0x4e69ec], eax
test esi, esi
jle 0x403f67
test eax, eax
jne 0x403f67
cmp dword [0x4e963c], ecx
jne 0x403f67
cmp dword [0x4e7548], ecx
jne 0x403f67
cmp byte [0x4e68a6], cl
je 0x403f67
push 9
push dword [0x4e69e8]
call dword [sym.imp.USER32.dll_KillTimer]
movzx ecx, byte [0x4e68a6]
xor edx, edx
test eax, eax
cmovne ecx, edx
mov byte [0x4e68a6], cl
mov edx, dword [esp + 0x74]
mov al, dl
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret