Function at 0x40132f
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
mov eax, dword [0x4063f0]
mov ecx, dword [ebp + 0xc]
push ebx
xor ebx, ebx
push esi
cmp eax, ebx
push edi
mov edx, 0x121
je 0x4013a2
cmp ecx, 0x2b
je 0x401387
cmp ecx, 0x2c
je 0x401387
cmp ecx, 0x117
je 0x401387
cmp ecx, edx
jne 0x4013a4
mov eax, dword [0x406cbc]
cmp eax, ebx
je 0x402106
push 5
push eax
push 0x800d
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_PostMessageA]
mov dword [0x406cbc], ebx
jmp 0x402106
push dword [ebp + 0x14]
mov edx, dword [eax]
push dword [ebp + 0x10]
push ecx
push eax
call dword [edx + 0x18]
mov eax, dword [ebp + 0xc]
shr eax, 5
and eax, 1
jmp 0x401650
cmp ecx, edx
ja 0x401b06
je 0x401950
mov eax, 0xff
cmp ecx, eax
ja 0x401657
je 0x401630
push 2
mov eax, ecx
pop edi
sub eax, edi
je 0x4015f6
sub eax, 0xf
je 0x4015d8
sub eax, 0x1a
je 0x40146b
dec eax
jne case.default.0x401b1b
mov esi, dword [ebp + 0x14]
mov edi, 0x406514
push 0x7f
push edi
push dword [esi + 0x14]
call dword [sym.imp.USER32.dll_GetWindowTextA]
cmp eax, ebx
jne 0x40140d
push 0x7f
push edi
push dword [esi + 0x14]
call dword [sym.imp.USER32.dll_GetClassNameA]
movsx edx, byte [0x406514]
cmp edx, 0x61
mov dword [ebp + 0xc], edx
jb 0x401427
cmp edx, 0x7a
ja 0x401427
xor edx, 0x20
mov dword [ebp + 0xc], edx
mov ecx, dword [esi + 8]
lea ecx, [ecx + ecx*2]
mov byte [ecx*4 + 0x406699], dl
lea ecx, [ebp + 0xc]
push ecx
push eax
push edi
push dword [0x4069b4]
call dword [sym.imp.GDI32.dll_GetTextExtentPoint32A]
test eax, eax
mov eax, 0xc8
je 0x401452
mov eax, dword [ebp + 0xc]
add eax, 0xc
mov dword [esi + 0xc], eax
mov eax, dword [0x4069bc]
add eax, 4
mov dword [esi + 0x10], eax
push 1
pop eax
jmp 0x401650
mov eax, dword [0x4069a4]
mov esi, dword [ebp + 0x14]
cmp eax, ebx
jle 0x401484
cmp dword [esi + 8], eax
je 0x401484
cmp dword [0x406c88], edi
je 0x401463
mov edi, 0x406514
push 0x7f
push edi
push dword [esi + 0x2c]
call dword [sym.imp.USER32.dll_GetWindowTextA]
test eax, eax
jne 0x4014a5
push 0x7f
push edi
push dword [esi + 0x2c]
call dword [sym.imp.USER32.dll_GetClassNameA]
push 0xfffffffffffffff0
push dword [esi + 0x2c]
call dword [sym.imp.USER32.dll_GetWindowLongA]
mov dword [ebp + 0xc], eax
mov eax, dword [esi + 0x10]
and eax, 1
mov dword [ebp + 0x10], eax
je 0x40151c
push 0xd
call dword [sym.imp.USER32.dll_GetSysColor]
push eax
push dword [esi + 0x18]
call dword [sym.imp.GDI32.dll_SetBkColor]
push 0xe
call dword [sym.imp.USER32.dll_GetSysColor]
push eax
push dword [esi + 0x18]
call dword [sym.imp.GDI32.dll_SetTextColor]
mov eax, dword [esi + 8]
cmp eax, 1
mov dword [0x4069a4], eax
jne 0x401514
test byte [0x4069a1], 0x20
je 0x401514
cmp dword [0x4069b0], ebx
jne 0x401514
test byte [ebp + 0xf], 0x21
jne 0x401514
push dword [0x40699c]
call dword [sym.imp.USER32.dll_SetCursor]
jmp 0x401522
push dword [0x406998]
jmp 0x40150c
mov dword [0x4069a4], ebx
cmp dword [0x4069b0], ebx
jl 0x40154b
mov eax, dword [ebp + 0xc]
and eax, 0x20080000
cmp eax, 0x80000
jne 0x40154b
push ebx
push dword [ebp + 0x10]
push 0x86
push dword [esi + 0x2c]
call dword [sym.imp.USER32.dll_PostMessageA]
mov eax, dword [ebp + 0x10]
lea ecx, [esi + 0x1c]
lea eax, [eax + eax*8 + 5]
push eax
push ecx
push dword [esi + 0x18]
call dword [sym.imp.USER32.dll_FillRect]
mov eax, dword [esi + 8]
lea eax, [eax + eax*2]
shl eax, 2
cmp byte [eax + 0x406698], bl
jne 0x401597
mov ecx, dword [0x4069bc]
push 3
push ebx
push ebx
push ecx
push ecx
push dword [eax + 0x406694]
mov eax, dword [esi + 0x20]
inc eax
inc eax
push eax
mov eax, dword [esi + 0x1c]
inc eax
push eax
push dword [esi + 0x18]
call dword [sym.imp.USER32.dll_DrawIconEx]
mov eax, dword [ebp + 0xc]
mov ecx, dword [0x4069bc]
xor eax, 0x10000000
and eax, 0x30000000
or eax, 0x1000000
shr eax, 0x18
mov dword [ebp + 0xc], eax
push eax
mov eax, dword [esi + 0x20]
push ebx
inc eax
push ebx
inc eax
push eax
mov eax, dword [esi + 0x1c]
lea eax, [eax + ecx + 5]
push eax
push ebx
push edi
push ebx
push ebx
push dword [esi + 0x18]
call dword [sym.imp.USER32.dll_DrawStateA]
jmp 0x401463
mov eax, dword [0x406c90]
cmp eax, ebx
je 0x4015eb
push 0x20
push eax
call fcn.00402ff2
pop ecx
pop ecx
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_DestroyWindow]
jmp 0x401650
push edi
push 0x406a58
call fcn.00402b6a
pop ecx
pop ecx
push dword [0x406cc4]
call dword [sym.imp.KERNEL32.dll_GlobalFree]
test byte [0x406c98], 1
je 0x401624
push section..data
push edi
call dword [sym.imp.SHELL32.dll_Shell_NotifyIconA]
push ebx
call dword [sym.imp.USER32.dll_PostQuitMessage]
jmp 0x402106
push dword [ebp + 0x14]
push dword [ebp + 8]
call fcn.0040212d
pop ecx
pop ecx
mov ecx, dword [ebp + 0xc]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push ecx
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_DefWindowProcA]
pop edi
pop esi
pop ebx
pop ebp
ret 0x10
mov eax, ecx
sub eax, 0x113
je 0x40183e
sub eax, 4
je 0x401746
sub eax, 8
je 0x4016f0
dec eax
jne case.default.0x401b1b
mov eax, dword [ebp + 0x14]
cmp dword [0x406cd4], eax
jne 0x4016d0
movzx ecx, byte [ebp + 0x10]
cmp ecx, 0x61
jb 0x401691
cmp ecx, 0x7a
ja 0x401691
xor ecx, 0x20
cmp ecx, 0x20
jne 0x40169e
test byte [0x4069a1], cl
jne 0x4016c2
mov eax, dword [0x4069ac]
cmp eax, ebx
jbe 0x4016b9
lea edx, [eax + eax*2]
movzx edx, byte [edx*4 + 0x406699]
cmp ecx, edx
je 0x4016c9
dec eax
jne 0x4016a7
cmp ecx, 0x20
jne 0x402106
mov eax, 0x20000
jmp 0x401650
add eax, 0x1ffff
jmp 0x401650
cmp dword [0x406cd0], eax
jne case.default.0x401b1b
cmp byte [ebp + 0x10], 0x20
jne case.default.0x401b1b
mov eax, 0x20010
jmp 0x401650
cmp dword [ebp + 0x10], 0xffff0000
jae 0x40173d
cmp dword [0x4069a0], ebx
jg 0x402106
movzx eax, word [ebp + 0x10]
cmp eax, 0x10
mov dword [0x406ca8], eax
jne 0x40171b
push ebx
push 2
jmp 0x40192e
cmp eax, 0x801f
jne 0x40172a
push ebx
push 8
jmp 0x40192e
cmp eax, 0x8021
jne 0x402106
push ebx
push 9
jmp 0x40192e
push 0xffffffffffffffc0
push 8
jmp 0x401bad
mov esi, dword [ebp + 0x10]
or dword [0x406c88], 4
cmp esi, dword [0x406ccc]
jne 0x401806
mov eax, dword [0x406c9c]
mov esi, 0x8040
push ebx
lea edi, [eax + 0x803f]
movsx eax, byte [0x406c9a]
add eax, esi
push eax
push edi
push esi
push dword [ebp + 0x10]
call dword [sym.imp.USER32.dll_CheckMenuRadioItem]
mov eax, dword [0x406c9c]
lea ecx, [eax - 1]
mov ax, word [0x406c9a]
movsx edx, al
cmp edx, ecx
je 0x4017b0
mov eax, dword [0x406cac]
and eax, 8
push eax
push edi
push dword [ebp + 0x10]
call dword [sym.imp.USER32.dll_CheckMenuItem]
mov ax, word [0x406c9a]
cmp al, ah
je 0x4017e3
mov ecx, dword [0x406c98]
and cx, 0xc0
cmp cl, 0xc0
je 0x4017d2
cmp dword [ebp + 8], ebx
je 0x4017d2
test byte [0x406cac], 0x20
je 0x4017e3
movsx eax, ah
add eax, esi
push 8
push eax
push dword [ebp + 0x10]
call dword [sym.imp.USER32.dll_CheckMenuItem]
mov eax, dword [0x406cc0]
cmp eax, ebx
je 0x402106
cmp dword [ebp + 8], ebx
je 0x402106
push 7
push eax
push 0x800d
jmp 0x401d70
cmp esi, dword [0x406cd0]
jne 0x402106
push 1
mov ecx, ebx
pop eax
shl eax, cl
and eax, dword [0x406c98]
shr eax, cl
shl eax, 3
push eax
lea eax, [ebx + 0x8024]
push eax
push esi
call dword [sym.imp.USER32.dll_CheckMenuItem]
inc ebx
cmp ebx, 0xe
jle 0x401812
jmp 0x402106
cmp dword [ebp + 0x10], 3
jne 0x401878
push ebx
push 0x7ffffffe
push 3
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_SetTimer]
mov eax, dword [0x406b60]
cmp eax, ebx
je 0x402106
push eax
push dword [ebp + 8]
call fcn.0040212d
pop ecx
mov dword [0x406b60], ebx
pop ecx
jmp 0x402106
jbe 0x4018a3
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x402106
push 0x97
push ebx
push ebx
push ebx
push ebx
push ebx
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_SetWindowPos]
jmp 0x402106
mov eax, dword [0x406990]
cmp eax, ebx
jl 0x402106
inc eax
cmp eax, 2
mov dword [0x406990], eax
jne 0x4018fa
call dword [sym.imp.USER32.dll_GetForegroundWindow]
cmp eax, ebx
mov dword [0x406cc0], eax
jne 0x402106
call dword [sym.imp.USER32.dll_GetMessagePos]
mov dword [ebp + 0xc], eax
push 2
movsx ecx, word [ebp + 0xe]
movsx eax, ax
push ecx
push eax
call dword [sym.imp.USER32.dll_WindowFromPoint]
push eax
call dword [sym.imp.USER32.dll_GetAncestor]
mov dword [0x406cc0], eax
push eax
jmp 0x401d93
cmp eax, 0xc
jne 0x401909
mov eax, dword [0x406994]
or al, 1
push eax
jmp 0x401943
cmp eax, 0xd
je 0x40191a
cmp eax, 0x31
jne 0x401926
xor dword [0x406994], 2
mov eax, dword [0x406994]
push ebx
and eax, 6
push eax
jmp 0x40192e
cmp eax, 0x55
jne 0x401938
push ebx
push 5
call fcn.00404c25
jmp 0x402104
cmp eax, 0x79
jle 0x402106
push 5
push dword [ebp + 8]
call fcn.0040212d
jmp 0x402104
cmp dword [0x4069a0], ebx
jle 0x402106
cmp dword [0x406c88], 1
jne 0x4019c3
mov eax, dword [0x4069a4]
cmp eax, ebx
mov dword [0x4069b0], eax
je 0x402106
movsx ecx, byte [0x4066a6]
cmp eax, ecx
je 0x402106
mov ecx, dword [0x4069ac]
cmp ecx, 1
jle 0x4019a9
lea edx, [ecx + ecx*2]
dec ecx
lea esi, [edx*4 + 0x40669a]
mov dl, byte [esi - 0xc]
lea edi, [esi - 0xc]
mov byte [esi], dl
dec ecx
mov esi, edi
jne 0x40199c
lea ecx, [eax + eax*2]
mov byte [0x4066a6], al
cmp byte [ecx*4 + 0x406698], bl
jne 0x401a61
jmp 0x402106
mov esi, dword [sym.imp.USER32.dll_GetAsyncKeyState]
push 0x2e
mov dword [0x4069b0], ebx
call esi
test ax, ax
jl 0x401a03
push 2
pop edi
cmp dword [0x406c88], edi
jne 0x401aba
mov eax, dword [0x4069a8]
cmp eax, ebx
jne 0x401a39
mov dword [0x4069a8], 1
push 0x10
call esi
test ax, ax
jge 0x401a5c
mov eax, dword [0x4069a4]
lea eax, [eax + eax*2]
shl eax, 2
cmp byte [eax + 0x406698], bl
jne 0x401aa0
push ebx
push dword [eax + 0x406690]
call dword [sym.imp.USER32.dll_ShowWindowAsync]
mov eax, dword [0x4069a4]
lea eax, [eax + eax*2]
mov byte [eax*4 + 0x406698], 1
jmp 0x401aa0
cmp eax, edi
je 0x402106
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [0x4069a8]
cmp eax, 0x12c
jae 0x4019fa
mov dword [0x4069a8], edi
jmp 0x401a03
mov eax, dword [0x4069a4]
lea eax, [eax + eax*2]
push 0xfffffffffffffff0
push dword [eax*4 + 0x406690]
call dword [sym.imp.USER32.dll_GetWindowLongA]
test eax, 0x20000
je 0x401aa0
mov eax, dword [0x4069a4]
push 7
lea eax, [eax + eax*2]
push dword [eax*4 + 0x406690]
call dword [sym.imp.USER32.dll_ShowWindowAsync]
mov eax, dword [0x4069a4]
lea eax, [eax + eax*2]
mov byte [eax*4 + 0x406698], bl
push ebx
push ebx
push ebx
push str.32768
call dword [sym.imp.USER32.dll_FindWindowA]
push eax
call dword [sym.imp.USER32.dll_InvalidateRgn]
jmp 0x402106
push 0x11
call esi
test ax, ax
jge 0x401ae2
call dword [sym.imp.USER32.dll_EndMenu]
test byte [0x4069a1], 0x20
je 0x402106
push edi
push dword [0x40669c]
jmp 0x4017fc
cmp dword [0x4069a8], 1
jne 0x401afb
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x4069a8], eax
jmp 0x402106
mov dword [0x4069a8], ebx
jmp 0x402106
lea eax, [ecx - 0x800c]
cmp eax, 7
ja case.default.0x401b1b
mov edi, dword [sym.imp.USER32.dll_PostMessageA]
jmp dword [eax*4 + 0x40210d]
mov eax, dword [ebp + 0x10]
cmp eax, ebx
je 0x401b2c
mov dword [ebp + 8], eax
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_GetLastActivePopup]
mov ecx, eax
cmp dword [ebp + 8], ecx
mov dword [ebp + 0xc], ecx
je 0x402106
mov eax, dword [ebp + 0x14]
cmp eax, ebx
jne 0x401b6c
push dword [0x406014]
push 1
push 0x80
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
call dword [sym.imp.USER32.dll_GetMessagePos]
sub eax, 0x60007f
mov dword [ebp + 0x14], eax
movsx ecx, word [ebp + 0x16]
push 5
push ebx
movsx eax, ax
push ebx
push ecx
push eax
push ebx
push dword [ebp + 0xc]
jmp 0x401898
mov edi, dword [ebp + 0x14]
cmp edi, ebx
jge 0x401bee
inc edi
jns 0x401bb7
mov esi, dword [ebp + 0x10]
cmp esi, 0x5a
ja 0x401bb7
push esi
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jl 0x401ba3
inc esi
jmp 0x401b8f
push 0x1a
call dword [sym.imp.KERNEL32.dll_Sleep]
push edi
push esi
push 0x800e
jmp 0x401d70
cmp dword [0x406ca8], 0x8040
jge 0x401be3
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x401be3
push 0x97
push ebx
push ebx
push ebx
push ebx
push ebx
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_SetWindowPos]
mov dword [0x406ca8], ebx
jmp 0x402106
cmp edi, 6
jg 0x401c10
push 0x1a
call dword [sym.imp.KERNEL32.dll_Sleep]
cmp edi, 6
jge 0x401c10
push ebx
push str.32768
call dword [sym.imp.USER32.dll_FindWindowA]
test eax, eax
jmp 0x401c25
push dword [0x4063fc]
push dword [0x4063f8]
call dword [sym.imp.USER32.dll_WindowFromPoint]
cmp dword [ebp + 0x10], eax
jne 0x402106
mov esi, dword [sym.imp.USER32.dll_mouse_event]
push ebx
push ebx
push ebx
push ebx
push 2
call esi
push ebx
push ebx
push ebx
push ebx
push 4
call esi
jmp 0x402106
cmp dword [ebp + 0x14], ebx
jne 0x401c70
call dword [sym.imp.USER32.dll_GetMessagePos]
push eax
push dword [ebp + 0x10]
push 0x406410
push dword [ebp + 8]
call fcn.00403fbc
add esp, 0x10
mov dword [0x4063f0], ebx
jmp 0x402106
push ebx
push str.32768
call dword [sym.imp.USER32.dll_FindWindowA]
test eax, eax
jne 0x402106
push ebx
push dword [ebp + 0x10]
call dword [sym.imp.USER32.dll_GetSystemMenu]
cmp eax, ebx
mov dword [ebp + 0xc], eax
je 0x402106
push ebx
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.USER32.dll_mouse_event]
push ebx
push 2
push ebx
push ebx
call dword [sym.imp.USER32.dll_keybd_event]
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_SetForegroundWindow]
movsx eax, word [ebp + 0x16]
push ebx
push dword [ebp + 8]
push ebx
push eax
movsx eax, word [ebp + 0x14]
push eax
push 0x102
push dword [ebp + 0xc]
call dword [sym.imp.USER32.dll_TrackPopupMenu]
cmp eax, ebx
je 0x402106
push ebx
push eax
push 0x112
push dword [ebp + 0x10]
jmp 0x401d73
cmp dword [0x4069a0], ebx
je 0x401cff
call dword [sym.imp.USER32.dll_EndMenu]
jmp 0x402106
mov eax, dword [ebp + 0x14]
push eax
mov dword [0x4069a0], eax
push dword [ebp + 0x10]
push dword [ebp + 8]
call fcn.00404565
add esp, 0xc
mov dword [0x4069a0], ebx
jmp 0x402106
mov edi, dword [ebp + 0x14]
mov esi, dword [sym.imp.USER32.dll_PostMessageA]
cmp edi, 1
jle 0x401d51
push 0xd
call dword [sym.imp.KERNEL32.dll_Sleep]
dec edi
dec edi
push edi
push dword [ebp + 0x10]
push 0x800d
push dword [ebp + 8]
call esi
and edi, 1
jne 0x401da7
jmp 0x402106
cmp dword [ebp + 0x10], ebx
jne 0x401d7e
mov eax, dword [0x406cac]
cmp eax, 0x7f
jle 0x402106
push dword [0x406c8c]
push eax
push 0x8011
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_PostMessageA]
jmp 0x402106
cmp edi, ebx
jne 0x401da7
call dword [sym.imp.USER32.dll_GetForegroundWindow]
cmp eax, dword [ebp + 8]
mov dword [ebp + 0xc], eax
jne 0x401d9e
push dword [ebp + 0x10]
call dword [sym.imp.USER32.dll_SetForegroundWindow]
jmp 0x402106
cmp eax, dword [ebp + 0x10]
je 0x402106
push ebx
push edi
push 0x86
push dword [ebp + 0x10]
call esi
jmp 0x402106
mov eax, dword [0x406cac]
cmp eax, ebx
jg 0x402106
mov eax, dword [ebp + 0x14]
jne 0x401dfe
cmp eax, 0x200
jne 0x401dfe
call dword [sym.imp.USER32.dll_GetForegroundWindow]
cmp eax, ebx
je 0x402106
cmp eax, dword [ebp + 8]
je 0x402106
cmp eax, dword [0x406ca4]
je 0x402106
mov dword [0x406cc0], eax
jmp 0x402106
cmp eax, 0x205
jg 0x402106
cmp eax, 0x201
je 0x401e27
cmp eax, 0x204
je 0x401e27
and eax, 6
je 0x402106
or al, 1
mov dword [ebp + 0x14], eax
jmp 0x401e6f
or dword [0x406cac], 0xffffffff
jmp 0x402106
cmp dword [ebp + 0x10], 0xd
jae 0x401e67
call dword [sym.imp.USER32.dll_GetMessagePos]
mov dword [0x406b64], eax
mov eax, dword [ebp + 0x14]
mov ecx, eax
sar eax, 4
and eax, 1
and ecx, 7
or ecx, 8
movsx eax, byte [eax + 0x406c9a]
push ecx
add eax, 0x8040
jmp 0x401d6a
mov eax, dword [ebp + 0x14]
add eax, eax
or dword [ebp + 0x14], eax
push ebx
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.USER32.dll_mouse_event]
push ebx
push 2
push ebx
push ebx
call dword [sym.imp.USER32.dll_keybd_event]
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_SetForegroundWindow]
mov esi, dword [sym.imp.USER32.dll_GetAsyncKeyState]
push 0x1d
call esi
mov ecx, dword [ebp + 0x14]
movzx eax, ax
not ecx
or ah, 0x40
and ecx, 1
shr eax, 0xa
shl ecx, 3
or eax, ecx
mov dword [0x406cac], eax
call dword [sym.imp.USER32.dll_GetMessagePos]
push ebx
mov dword [0x406b64], eax
push dword [ebp + 8]
movsx ecx, word [0x406b66]
movsx eax, ax
push ebx
push ecx
push eax
mov eax, dword [ebp + 0x14]
sar eax, 2
and eax, 1
push 0x116
push dword [eax*4 + 0x406ccc]
call dword [sym.imp.USER32.dll_TrackPopupMenu]
cmp eax, ebx
mov dword [ebp + 0x10], eax
je 0x401f2f
push 0x10
call esi
movzx ecx, ax
mov eax, dword [0x406cac]
shr ecx, 0xf
cmp eax, 0xf
mov dword [ebp + 0xc], ecx
jae 0x401f22
push 8
cdq
pop esi
idiv esi
lea edx, [ecx + ecx]
or eax, edx
mov edx, dword [ebp + 0x14]
and edx, 0xfffffffc
or eax, edx
or al, 0x10
mov dword [ebp + 0x14], eax
jmp case.0x401b1b.32785
mov edx, dword [ebp + 0x14]
lea eax, [ecx + ecx*2]
and edx, 0xfffffffe
xor eax, edx
jmp 0x401f1b
push 2
push dword [0x406cc0]
push 0x800d
push dword [ebp + 8]
call edi
mov ecx, dword [ebp + 0xc]
mov eax, dword [ebp + 0x10]
mov dword [0x406cac], ebx
cmp eax, 0x8040
jb 0x401fb2
mov edx, dword [0x406c9c]
add edx, 0x8040
cmp eax, edx
jae 0x401fb2
cmp ecx, 2
ja 0x401f7c
push dword [ebp + 0x14]
push eax
push 0x8011
push dword [ebp + 8]
call edi
jmp 0x4020d2
mov esi, dword [ebp + 0x14]
add eax, eax
and esi, 1
push ebx
or eax, esi
push eax
call fcn.00404c25
mov eax, dword [ebp + 0x14]
and eax, 0x1f
push eax
mov eax, dword [ebp + 0x10]
lea eax, [esi + eax*2 - 0x10080]
push dword [eax*4 + 0x406b68]
call fcn.00402ff2
add esp, 0x10
jmp 0x402106
cmp eax, 0x8025
jb 0x401fd6
cmp eax, 0x8032
ja 0x401fd6
push 2
lea ecx, [eax - 0x8025]
pop eax
shl eax, cl
xor dword [0x406c98], eax
jmp 0x4020d2
sub eax, 0x801f
je 0x402088
dec eax
dec eax
je 0x402055
dec eax
je 0x402047
dec eax
je 0x40200e
dec eax
jne 0x4020d2
mov esi, dword [0x406c98]
push section..data
and esi, 1
lea eax, [esi + esi]
push eax
call dword [sym.imp.SHELL32.dll_Shell_NotifyIconA]
or eax, esi
jmp 0x401fcb
test byte [ebp + 0x14], 1
je 0x40201c
push ebx
push 0x406a58
jmp 0x402074
push 2
push 0x406a58
call fcn.00402b6a
push ebx
mov dword [0x406a50], 0x2e6e706f
mov dword [0x406a54], 0x9747874
push 0x406a50
jmp 0x401fa5
push ebx
push ebx
push 0x10
push dword [ebp + 8]
call edi
jmp 0x402106
mov esi, dword [ebp + 0x14]
and esi, 1
push esi
push dword [ebp + 8]
call fcn.00403e3d
pop ecx
test eax, eax
pop ecx
je 0x4020d2
cmp esi, ebx
push ebx
push 0x406410
jne 0x40207b
call fcn.00402b6a
jmp 0x4020d0
push 0x406a58
call dword [sym.imp.KERNEL32.dll_CopyFileA]
jmp 0x4020d2
test byte [ebp + 0x14], 1
jne 0x402097
test byte [0x406c88], 2
je 0x4020c5
mov esi, 0x40658c
push 0x104
push esi
push ebx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
add eax, esi
push ebx
push esi
mov dword [eax - 3], 0x747874
mov dword [eax], 0xa00
call fcn.00402ff2
pop ecx
test eax, eax
pop ecx
jne 0x4020d2
push ebx
push 0x4060a0
call fcn.00402ff2
pop ecx
pop ecx
mov esi, dword [sym.imp.USER32.dll_FindWindowA]
push ebx
push str.Progman
call esi
push ebx
push str.Shell_TrayWnd
mov dword [0x406ca0], eax
call esi
cmp dword [ebp + 0x14], 0x10000
mov dword [0x406ca4], eax
jbe 0x402106
push ebx
push dword [ebp + 0x14]
call fcn.00402ff2
pop ecx
pop ecx
xor eax, eax
jmp 0x401650