Function at 0x4053e0
Capabilities:
Find taskbar

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x3b0
mov esi, esp
mov dword [esi + 0x398], ebp
mov ebx, dword [ebp + 0xc]
mov dword [esi + 0x39c], esp
mov dword [esi + 0x3a8], 0xffffffff
lea eax, [esi + 0x3a0]
mov dword [esi + 0x3a4], 0x408390
mov ecx, dword fs:[0]
mov dword [esi + 0x3a0], ecx
mov dword fs:[0], eax
push 0
call fcn.0040dcf1
add esp, 4
push eax
call fcn.0040dded
add esp, 4
call fcn.0040ddff
call fcn.00401160
push 0
call fcn.0040dcf1
add esp, 4
push eax
call fcn.0040dded
add esp, 4
call fcn.0040ddff
call fcn.00401d50
lea edi, [esi + 0x27c]
push 0x63
push edi
call fcn.004013c0
add esp, 8
mov ecx, edi
call fcn.00406460
lea edi, [esi + 0x264]
push 0x57
push edi
call fcn.004013c0
add esp, 8
mov ecx, edi
call fcn.00406460
lea edi, [esi + 0x24c]
push 0x4b
push edi
call fcn.004013c0
add esp, 8
mov ecx, edi
call fcn.00406460
mov eax, dword [ebx + 4]
test eax, eax
je 0x4054d0
push 0x41fab4
push eax
call fcn.0040dbe1
add esp, 8
xor ebx, ebx
test eax, eax
sete bl
mov dword [esi + 8], ebx
jmp 0x4054d9
xor ebx, ebx
mov dword [esi + 8], 0
push 0
call fcn.0040dcf1
add esp, 4
push eax
call fcn.0040dded
add esp, 4
call fcn.0040ddff
mov dword [esi + 0xc], esp
sub esp, 0x20
mov edi, esp
mov eax, edi
add eax, 8
test bl, bl
je 0x405517
push 1
push 1
push eax
call fcn.00402470
add esp, 0xc
mov dword [edi], 0x7c
jmp 0x40552a
push 0
push 5
push eax
call fcn.00402470
add esp, 0xc
mov dword [edi], 0x86
mov dword [edi + 4], 0x41fc14
call fcn.00405dd0
add esp, 0x20
mov esp, dword [esi + 0xc]
push 0
call fcn.0040dcf1
add esp, 4
push eax
call fcn.0040dded
add esp, 4
call fcn.0040ddff
mov dword [esi + 0xc], esp
sub esp, 0x20
mov ebx, esp
lea eax, [ebx + 8]
mov edi, dword [esi + 8]
push edi
mov dword [esi + 8], edi
push 2
push eax
call fcn.00402470
add esp, 0xc
mov dword [ebx], 0x76
mov dword [ebx + 4], 0x41fc14
call fcn.00405dd0
add esp, 0x20
mov esp, dword [esi + 0xc]
push eax
sub esp, 0x1c
mov ebx, esp
lea eax, [ebx + 8]
push edi
push 4
push eax
call fcn.00402470
add esp, 0xc
mov dword [ebx], 0x73
mov dword [ebx + 4], 0x41fc14
call fcn.00405dd0
add esp, 0x20
mov esp, dword [esi + 0xc]
mov edi, esp
push eax
sub esp, 0x1c
mov ebx, esp
lea eax, [ebx + 8]
push 1
push 0xffffffffffffffff
push eax
call fcn.00402470
add esp, 0xc
mov dword [ebx], 0x7b
mov dword [ebx + 4], 0x41fc14
call fcn.00405dd0
add esp, 0x20
mov esp, edi
movsd xmm0, qword [0x41c05c]
movsd qword [esi + 0x60], xmm0
movups xmm0, xmmword [0x41c04c]
movaps xmmword [esi + 0x50], xmm0
push 0
call fcn.0040dcf1
add esp, 4
push eax
call fcn.0040dded
add esp, 4
call fcn.00401740
push 0
call fcn.0040dcf1
add esp, 4
push eax
call fcn.0040dded
add esp, 4
call fcn.0040ddff
call fcn.00401290
call fcn.00401160
call fcn.00401160
lea edi, [esi + 0x234]
push 0x55
push edi
call fcn.004013c0
add esp, 8
mov ecx, edi
call fcn.00406460
lea edi, [esi + 0x21c]
push 0x40
push edi
call fcn.004013c0
add esp, 8
mov ecx, edi
call fcn.00406460
lea edi, [esi + 0x204]
push 0x25
push edi
call fcn.004013c0
add esp, 8
mov ecx, edi
call fcn.00406460
call fcn.00401740
call fcn.00401d50
push 0
call dword [sym.imp.ole32.dll_CoInitialize]
call fcn.00401290
push 0
call fcn.0040dcf1
add esp, 4
push eax
call fcn.0040dded
add esp, 4
call fcn.0040ddff
lea eax, [esi + 0x294]
push dword [esi + 8]
push eax
call fcn.00401a20
add esp, 8
call fcn.00401740
lea eax, [esi + 0x38]
push 1
push eax
call fcn.004013c0
add esp, 8
mov eax, dword [esi + 0x48]
add eax, 1
mov dword [esi + 0x3a8], 0
push eax
call fcn.00408426
add esp, 4
mov edi, eax
lea eax, [esi + 0x38]
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0x10]
mov dword [esi + 0x20], eax
cmp dword [esi + 0x4c], 0xf
mov ecx, 0xc706ac1
mov eax, 0x30343b2c
cmova eax, ecx
mov edx, 0xd04c4db5
nop word cs:[eax + eax]
nop
cmp edx, 0x30343b2c
je 0x40574b
cmp edx, 0xc706ac1
je 0x40573f
cmp edx, 0xd04c4db5
jne 0x405720
mov ecx, dword [esi + 0x20]
mov edx, eax
jmp 0x405720
mov ecx, dword [esi + 0x10]
mov ecx, dword [ecx]
mov edx, 0x30343b2c
jmp 0x405720
push ecx
push edi
call fcn.0040de20
add esp, 8
push 0
call fcn.0040dcf1
add esp, 4
push eax
call fcn.0040dded
add esp, 4
call fcn.0040ddff
push edi
push 0x41faba
call fcn.004063f0
add esp, 8
movzx eax, byte [edi]
mov dword [esi + 0xc], eax
push eax
push 0x41fb96
call fcn.004063f0
add esp, 8
call fcn.00401740
call fcn.00401290
mov dword [esi + 0x3a8], 0
lea eax, [esi + 0x1ec]
push 0x1c
push eax
call fcn.004013c0
add esp, 8
lea ecx, [esi + 0x1ec]
call fcn.00406460
lea eax, [esi + 0x1d4]
push 0x5c
push eax
call fcn.004013c0
add esp, 8
lea ecx, [esi + 0x1d4]
call fcn.00406460
lea eax, [esi + 0x1bc]
push 0x49
push eax
call fcn.004013c0
add esp, 8
lea ecx, [esi + 0x1bc]
call fcn.00406460
call fcn.00401160
mov dword [esi + 0x14], 0
mov dword [esi + 0x10], 0x5dc
lea eax, [esi + 0x10]
lea edi, [esi + 0x20]
push eax
push edi
call fcn.00407f20
add esp, 8
push edi
call fcn.00407ce0
add esp, 4
lea eax, [esi + 0x1a4]
push 0x3d
push eax
call fcn.004013c0
add esp, 8
lea ecx, [esi + 0x1a4]
call fcn.00406460
lea eax, [esi + 0x18c]
push 0x2d
push eax
call fcn.004013c0
add esp, 8
lea ecx, [esi + 0x18c]
call fcn.00406460
lea eax, [esi + 0x174]
push 0x22
push eax
call fcn.004013c0
add esp, 8
lea ecx, [esi + 0x174]
call fcn.00406460
lea eax, [esi + 0x50]
push 6
push eax
call section..text
add esp, 8
push 0
call fcn.0040dcf1
add esp, 4
push eax
call fcn.0040dded
add esp, 4
call fcn.0040ddff
push dword [esi + 8]
push 4
lea eax, [esi + 0x20]
push eax
call fcn.00402470
add esp, 0xc
lea eax, [esi + 0x20]
mov dword [esi + 0x1c], eax
mov eax, dword [esi + 0x1c]
mov dword [esi + 0x10], eax
cmp dword [esi + 0x34], 0xf
mov eax, 0xc706ac1
mov ecx, 0x30343b2c
cmova ecx, eax
mov edx, 0xd04c4db5
cmp edx, 0x30343b2c
je 0x4058fb
cmp edx, 0xc706ac1
je 0x4058ef
cmp edx, 0xd04c4db5
jne 0x4058d0
mov eax, dword [esi + 0x10]
mov edx, ecx
jmp 0x4058d0
mov eax, dword [esi + 0x1c]
mov eax, dword [eax]
mov edx, 0x30343b2c
jmp 0x4058d0
movzx ecx, word [esi + 0xc]
or ecx, 0x500
mov dword [esi + 0x3a8], 1
push 7
push str.System_configuration
push ecx
push 0
push str.Print_Management.lnk
lea ecx, [esi + 0x294]
push ecx
push eax
call fcn.00401e80
add esp, 0x1c
mov edi, eax
lea ecx, [esi + 0x20]
call fcn.00406460
test edi, edi
je 0x405a92
xor ecx, ecx
mov eax, 0xdfbbee1e
xor edx, edx
jmp 0x40595c
mov ecx, dword [esi + 0x10]
add ecx, 1
mov edx, dword [esi + 0x20]
add edx, 1
mov edi, 0x366b8e5d
nop word cs:[eax + eax]
nop dword [eax + eax]
cmp edi, 0xdfbbee1e
je 0x405950
cmp edi, 0x67297015
je 0x40599e
cmp edi, 0x366b8e5d
jne 0x405970
mov dword [esi + 0x10], ecx
mov dword [esi + 0x20], edx
mov edi, dword [esi + 0x20]
cmp edi, 6
mov edi, 0x67297015
cmovl edi, eax
jmp 0x405970
push 0
call fcn.0040dcf1
add esp, 4
push eax
call fcn.0040dded
add esp, 4
call fcn.0040ddff
call fcn.00401290
mov dword [esi + 0x3a8], 0
lea eax, [esi + 0x15c]
push 0x10
push eax
call fcn.004013c0
add esp, 8
lea ecx, [esi + 0x15c]
call fcn.00406460
lea eax, [esi + 0x144]
push 0x23
push eax
call fcn.004013c0
add esp, 8
lea ecx, [esi + 0x144]
call fcn.00406460
lea eax, [esi + 0x12c]
push 0x52
push eax
call fcn.004013c0
add esp, 8
lea ecx, [esi + 0x12c]
call fcn.00406460
push str._quote_done._n
call fcn.004063f0
add esp, 4
lea eax, [esi + 0x114]
push 0xf
push eax
call fcn.004013c0
add esp, 8
lea ecx, [esi + 0x114]
call fcn.00406460
push 0
call fcn.0040dcf1
add esp, 4
push eax
call fcn.0040dded
add esp, 4
call fcn.0040ddff
lea eax, [esi + 0xfc]
push 0x62
push eax
call fcn.004013c0
add esp, 8
lea ecx, [esi + 0xfc]
call fcn.00406460
lea eax, [esi + 0xe4]
push 0x1e
push eax
call fcn.004013c0
add esp, 8
lea ecx, [esi + 0xe4]
call fcn.00406460
call fcn.00401290
call dword [sym.imp.ole32.dll_CoUninitialize]
call fcn.00401740
push 0
call fcn.0040dcf1
add esp, 4
push eax
call fcn.0040dded
add esp, 4
call fcn.0040ddff
mov dword [esi + 0x3a8], 0
lea eax, [esi + 0xcc]
push 0x23
push eax
call fcn.004013c0
add esp, 8
lea ecx, [esi + 0xcc]
call fcn.00406460
lea eax, [esi + 0xb4]
push 0x4d
push eax
call fcn.004013c0
add esp, 8
lea ecx, [esi + 0xb4]
call fcn.00406460
call fcn.00401160
call fcn.00401d50
push 0x41fc25
push str.Shell_TrayWnd
call dword [sym.imp.USER32.dll_FindWindowA]
mov dword [esi + 8], eax
call fcn.00401290
call fcn.00401160
call fcn.00401290
push 0
call fcn.0040dcf1
add esp, 4
push eax
call fcn.0040dded
add esp, 4
call fcn.0040ddff
call fcn.00401740
call fcn.00401290
call fcn.00401160
call fcn.00401d50
call fcn.00401740
lea eax, [esi + 0x9c]
push 0x30
push eax
call fcn.004013c0
add esp, 8
lea ecx, [esi + 0x9c]
call fcn.00406460
lea eax, [esi + 0x84]
push 0x11
push eax
call fcn.004013c0
add esp, 8
lea ecx, [esi + 0x84]
call fcn.00406460
lea eax, [esi + 0x6c]
push 0x13
push eax
call fcn.004013c0
add esp, 8
lea ecx, [esi + 0x6c]
call fcn.00406460
call fcn.00401290
call fcn.00401160
push 0
call fcn.0040dcf1
add esp, 4
push eax
call fcn.0040dded
add esp, 4
call fcn.0040ddff
push 0
push 1
push 0x312
mov edi, dword [esi + 8]
push edi
call dword [sym.imp.USER32.dll_ChangeWindowMessageFilterEx]
push 0
push 1
push 0x312
push edi
call dword [sym.imp.USER32.dll_PostMessageA]
mov ebx, dword [sym.imp.USER32.dll_SendMessageA]
push 0
push 1
push 0x312
push edi
call ebx
push 0
push 1
push 0x312
push edi
call dword [sym.imp.USER32.dll_PostMessageA]
push 0
push 1
push 0x312
push edi
call ebx
push 0
push 1
push 0x312
push edi
mov ebx, dword [sym.imp.USER32.dll_PostMessageA]
call ebx
push 0
push 1
push 0x312
push edi
mov ebx, dword [sym.imp.USER32.dll_SendMessageA]
call ebx
push 0
push 1
push 0x312
push edi
call dword [sym.imp.USER32.dll_PostMessageA]
push 0
push 1
push 0x312
push edi
call ebx
push 0
push 1
push 0x312
push edi
mov ebx, dword [sym.imp.USER32.dll_PostMessageA]
call ebx
push 0
push 1
push 0x312
push edi
call dword [sym.imp.USER32.dll_SendMessageA]
push 0
push 1
push 0x312
push edi
call ebx
push 0
push 1
push 0x312
push edi
call dword [sym.imp.USER32.dll_SendMessageA]
mov ebx, dword [sym.imp.USER32.dll_SendMessageA]
push 0
push 1
push 0x312
push edi
call dword [sym.imp.USER32.dll_PostMessageA]
push 0
push 1
push 0x312
push edi
call ebx
push 0
push 1
push 0x312
push edi
mov ebx, dword [sym.imp.USER32.dll_PostMessageA]
call ebx
push 0
push 1
push 0x312
push edi
mov ebx, dword [sym.imp.USER32.dll_SendMessageA]
call ebx
push 0
push 1
push 0x312
push edi
call dword [sym.imp.USER32.dll_PostMessageA]
push 0
push 1
push 0x312
push edi
call ebx
push 0
push 1
push 0x312
push edi
mov ebx, dword [sym.imp.USER32.dll_PostMessageA]
call ebx
push 0
push 1
push 0x312
push edi
call dword [sym.imp.USER32.dll_SendMessageA]
push 0
push 1
push 0x312
push edi
call ebx
push 0
push 1
push 0x312
push edi
call dword [sym.imp.USER32.dll_SendMessageA]
push 0
push 1
push 0x312
push edi
call ebx
push 0
push 1
push 0x312
push edi
call dword [sym.imp.USER32.dll_SendMessageA]
call fcn.00401290
push 0
call fcn.0040dcf1
add esp, 4
push eax
call fcn.0040dded
add esp, 4
call fcn.0040ddff
lea ecx, [esi + 0x38]
call fcn.00406460
mov eax, dword [esi + 0x3a0]
mov dword fs:[0], eax
xor eax, eax
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret