Function at 0x406320
Capabilities:
Find taskbar

Disassembly:
sub esp, 0x28
lea eax, [esp]
push eax
call dword [sym.imp.USER32.dll_GetCursorPos]
push 0x40c020
push str.Shell_TrayWnd
call dword [sym.imp.USER32.dll_FindWindowA]
test eax, eax
je 0x4066d5
push ebx
push ebp
mov ebp, dword [sym.imp.USER32.dll_GetWindowRect]
push esi
lea ecx, [esp + 0x14]
push edi
push ecx
push eax
call ebp
mov ecx, dword [esp + 0x18]
mov edi, dword [sym.imp.USER32.dll_SetCursorPos]
mov esi, dword [sym.imp.USER32.dll_mouse_event]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
cmp ecx, 0xa
jge 0x40643a
cmp eax, 0x64
jle 0x40643a
cmp ebx, 0x12c
jle 0x40643a
cmp edx, 0x64
jle 0x40643a
push eax
mov eax, ebx
sub eax, ecx
cdq
sub eax, edx
sar eax, 1
push eax
call edi
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x20]
push 0
push 0
push edx
mov edx, dword [esp + 0x24]
sub eax, edx
cdq
sub eax, edx
sar eax, 1
push eax
push 8
call esi
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x18]
push 0
push 0
push eax
mov eax, dword [esp + 0x2c]
sub eax, ecx
cdq
sub eax, edx
sar eax, 1
push eax
push 0x10
call esi
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
sub eax, ecx
mov ecx, dword [esp + 0x24]
cdq
sub eax, edx
add ecx, 0xfffffff6
sar eax, 1
add eax, 5
push ecx
push eax
call dword [sym.imp.USER32.dll_WindowFromPoint]
lea edx, [esp + 0x28]
push edx
push eax
call ebp
mov ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x28]
lea ebp, [ecx + 6]
lea ebx, [eax + 6]
push ebp
push ebx
call edi
push 0
push 0
push ebp
push ebx
push 2
call esi
push 0
push 0
push ebp
push ebx
jmp 0x406691
cmp ecx, 0xc8
jle 0x406500
cmp edx, 0xa
jge 0x406500
sub eax, edx
cdq
sub eax, edx
sar eax, 1
push eax
push ebx
call edi
mov eax, dword [esp + 0x24]
mov ebp, dword [esp + 0x1c]
sub eax, ebp
push 0
cdq
sub eax, edx
mov edx, dword [esp + 0x24]
sar eax, 1
push 0
push eax
push edx
push 8
call esi
mov eax, dword [esp + 0x24]
mov ebp, dword [esp + 0x1c]
sub eax, ebp
push 0
cdq
sub eax, edx
push 0
sar eax, 1
push eax
mov eax, dword [esp + 0x2c]
push eax
push 0x10
call esi
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x1c]
sub eax, ecx
mov ecx, dword [esp + 0x20]
cdq
sub eax, edx
add ecx, 0xffffffd8
sar eax, 1
add eax, 0xa
push eax
push ecx
call edi
mov eax, dword [esp + 0x24]
mov edx, dword [esp + 0x1c]
sub eax, edx
push 0
cdq
sub eax, edx
mov edx, dword [esp + 0x24]
sar eax, 1
add eax, 0xa
push 0
add edx, 0xffffffd8
push eax
push edx
push 2
call esi
mov eax, dword [esp + 0x24]
mov edx, dword [esp + 0x1c]
sub eax, edx
push 0
cdq
sub eax, edx
push 0
sar eax, 1
add eax, 0xa
push eax
mov eax, dword [esp + 0x2c]
add eax, 0xffffffd8
push eax
jmp 0x406691
cmp ecx, 0xa
jge 0x4065d0
cmp edx, 0xa
jge 0x4065d0
cmp eax, 0x12c
jge 0x4065d0
mov eax, ebx
push edx
sub eax, ecx
cdq
sub eax, edx
sar eax, 1
push eax
call edi
mov eax, dword [esp + 0x20]
mov ebp, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
sub eax, ebp
cdq
sub eax, edx
push 0
push 0
push ecx
sar eax, 1
push eax
push 8
call esi
mov eax, dword [esp + 0x20]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
push 0
push 0
sub eax, ebp
push edx
cdq
sub eax, edx
sar eax, 1
push eax
push 0x10
call esi
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
add eax, 0xc
push eax
mov eax, dword [esp + 0x24]
sub eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, 0xa
push eax
call edi
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
sub eax, edx
cdq
sub eax, edx
push 0
sar eax, 1
add ecx, 0xc
push 0
add eax, 0xa
push ecx
push eax
push 2
call esi
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
push 0
add edx, 0xc
push 0
sub eax, ecx
push edx
cdq
sub eax, edx
sar eax, 1
add eax, 0xa
push eax
jmp 0x406691
cmp ebx, 0x12c
jge 0x40669d
cmp edx, 0xa
jge 0x40669d
sub eax, edx
cdq
sub eax, edx
sar eax, 1
push eax
push ecx
call edi
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x1c]
sub eax, ecx
push 0
cdq
sub eax, edx
push 0
sar eax, 1
push eax
mov eax, dword [esp + 0x24]
push eax
push 8
call esi
mov eax, dword [esp + 0x24]
mov edx, dword [esp + 0x1c]
sub eax, edx
mov ecx, dword [esp + 0x18]
cdq
sub eax, edx
push 0
sar eax, 1
push 0
push eax
push ecx
push 0x10
call esi
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esp + 0x24]
mov ebp, dword [esp + 0x1c]
sub eax, ebp
cdq
sub eax, edx
mov edx, dword [esp + 0x18]
sar eax, 1
add eax, 6
add edx, 0xa
push eax
push edx
call edi
mov eax, dword [esp + 0x24]
mov ebp, dword [esp + 0x1c]
sub eax, ebp
push 0
cdq
sub eax, edx
push 0
sar eax, 1
add eax, 6
push eax
mov eax, dword [esp + 0x24]
add eax, 0xa
push eax
push 2
call esi
mov eax, dword [esp + 0x24]
mov ebp, dword [esp + 0x1c]
sub eax, ebp
mov ecx, dword [esp + 0x18]
cdq
sub eax, edx
push 0
sar eax, 1
add eax, 6
push 0
add ecx, 0xa
push eax
push ecx
push 4
call esi
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x18]
push eax
push ecx
call edi
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x18]
push 0
push 0
push edx
push eax
push 2
call esi
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x18]
push 0
push 0
push ecx
push edx
push 4
call esi
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
push eax
push ecx
call edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x28
ret