Function at 0x401000
Capabilities:
Find taskbar
Hide graphical window
Hide the windows taskbar

Disassembly:
sub esp, 0x4e0
push ebx
push ebp
push esi
mov esi, dword [sym.imp.MSVCR80.dll_wcstok]
or eax, 0xffffffff
push edi
xor edi, edi
mov dword [esp + 0x20], eax
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x4fc]
push 0x402144
push eax
mov dword [esp + 0x34], edi
mov dword [esp + 0x30], edi
mov dword [esp + 0x1c], edi
mov dword [esp + 0x24], edi
mov dword [esp + 0x18], 1
xor ebx, ebx
call esi
add esp, 8
cmp eax, edi
je 0x401066
lea ecx, [ecx]
push 0x402144
mov dword [esp + ebx*4 + 0x44], eax
push edi
add ebx, 1
call esi
add esp, 8
cmp eax, edi
jne 0x401050
mov ebp, dword [sym.imp.USER32.dll_FindWindowW]
xor edi, edi
test ebx, ebx
jle 0x4012ce
jmp 0x401080
mov esi, dword [esp + edi*4 + 0x40]
test esi, esi
je 0x4012b8
mov ecx, 0x402148
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4010b9
test dx, dx
je 0x4010b5
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4010b9
add eax, 4
add ecx, 4
test dx, dx
jne 0x401093
xor eax, eax
jmp 0x4010be
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4013bd
mov ecx, str._hidetaskbar
mov eax, esi
lea ecx, [ecx]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4010f6
test dx, dx
je 0x4010f2
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4010f6
add eax, 4
add ecx, 4
test dx, dx
jne 0x4010d0
xor eax, eax
jmp 0x4010fb
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4013e0
mov ecx, str._showtaskbar
mov eax, esi
lea ebx, [ebx]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x401136
test dx, dx
je 0x401132
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x401136
add eax, 4
add ecx, 4
test dx, dx
jne 0x401110
xor eax, eax
jmp 0x40113b
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x401158
push 0x402124
push str.Shell_TrayWnd
call ebp
test eax, eax
je 0x401158
push 8
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
mov ecx, str._nostartmenu
mov eax, esi
nop
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x401186
test dx, dx
je 0x401182
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x401186
add eax, 4
add ecx, 4
test dx, dx
jne 0x401160
xor eax, eax
jmp 0x40118b
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x401193
mov dword [esp + 0x10], eax
cmp dword [esp + 0x1c], 0
jne 0x401239
mov ecx, str._mouse
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4011cb
test dx, dx
je 0x4011c7
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4011cb
add eax, 4
add ecx, 4
test dx, dx
jne 0x4011a5
xor eax, eax
jmp 0x4011d0
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x401239
add edi, 1
cmp edi, ebx
mov dword [esp + 0x14], 1
jge 0x401207
mov eax, dword [esp + edi*4 + 0x40]
test eax, eax
je 0x401207
cmp word [eax], 0x2f
jne 0x4011f9
sub edi, 1
jmp 0x4012b8
push eax
call dword [sym.imp.MSVCR80.dll__wtoi]
add esp, 4
mov dword [esp + 0x2c], eax
add edi, 1
cmp edi, ebx
jge 0x4012b8
mov eax, dword [esp + edi*4 + 0x40]
test eax, eax
je 0x4012b8
cmp word [eax], 0x2f
jne 0x40122c
sub edi, 1
jmp 0x4012b8
push eax
call dword [sym.imp.MSVCR80.dll__wtoi]
mov dword [esp + 0x2c], eax
jmp 0x4012b5
cmp dword [esp + 0x14], 0
jne 0x4012b8
mov ecx, str._screen
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x40126d
test dx, dx
je 0x401269
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x40126d
add eax, 4
add ecx, 4
test dx, dx
jne 0x401247
xor eax, eax
jmp 0x401272
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4012b8
add edi, 1
cmp edi, ebx
mov dword [esp + 0x1c], 1
jge 0x40129b
mov eax, dword [esp + edi*4 + 0x40]
test eax, eax
je 0x40129b
push eax
call dword [sym.imp.MSVCR80.dll__wtoi]
add esp, 4
mov dword [esp + 0x20], eax
add edi, 1
cmp edi, ebx
jge 0x4012b8
mov eax, dword [esp + edi*4 + 0x40]
test eax, eax
je 0x4012b8
push eax
call dword [sym.imp.MSVCR80.dll__wtoi]
mov dword [esp + 0x1c], eax
add esp, 4
add edi, 1
cmp edi, ebx
jl 0x401080
cmp dword [esp + 0x10], 0
je 0x401464
push 0
push str.Shell_TrayWnd
call ebp
test eax, eax
je 0x401464
push 0
push 0xf130
push 0x112
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
push 0
push str.DV2ControlHost
call ebp
mov edi, dword [sym.imp.USER32.dll_IsWindow]
mov ebx, eax
push ebx
xor esi, esi
call edi
test eax, eax
je 0x401336
mov ebp, dword [sym.imp.KERNEL32.dll_Sleep]
push ebx
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
jne 0x401330
cmp esi, 0x32
jge 0x401330
push 0xa
call ebp
push ebx
add esi, 1
call edi
test eax, eax
jne 0x401312
mov ebp, dword [sym.imp.USER32.dll_FindWindowW]
test ebx, ebx
je 0x401464
cmp dword [esp + 0x14], 0
je 0x401418
lea ecx, [esp + 0x20]
push ecx
call dword [sym.imp.USER32.dll_GetCursorPos]
lea edx, [esp + 0x30]
push edx
push ebx
call dword [sym.imp.USER32.dll_GetWindowRect]
mov edi, dword [esp + 0x38]
mov esi, dword [esp + 0x3c]
mov ebp, dword [sym.imp.USER32.dll_GetSystemMetrics]
sub edi, dword [esp + 0x30]
sub esi, dword [esp + 0x34]
push 1
call ebp
push 0
mov dword [esp + 0x14], eax
call ebp
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
sub ecx, esi
add ecx, edx
jns 0x401395
mov ecx, 5
mov edx, dword [esp + 0x10]
lea ebp, [ecx + esi]
cmp ebp, edx
jle 0x4013a4
sub edx, esi
mov ecx, edx
mov edx, dword [esp + 0x20]
mov esi, dword [esp + 0x2c]
lea ebp, [edx + edi]
add ebp, esi
cmp ebp, eax
jle 0x401408
sub esi, edi
lea edx, [edx + esi - 0xa]
jmp 0x40140a
push 0
push str.Usage
push str.OpenStartmenu.exe__mouse_______open_at_mouse_location_nOpenStartmenu.exe__mouse___x____y_______open_at_mouse_location__or___x_y_value_nOpenStartmenu.exe__screen_x_y_____open_at_x_y_location__upper_left_corner_
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x4e0
ret 0x10
push 0x402124
push str.Shell_TrayWnd
call ebp
test eax, eax
je 0x401464
push 0
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x4e0
ret 0x10
add edx, esi
mov ebp, dword [sym.imp.USER32.dll_FindWindowW]
mov dword [esp + 0x20], edx
mov dword [esp + 0x18], ecx
push 0
push str.Desktop_User_Picture
call ebp
test eax, eax
je 0x40142e
push 0
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
cmp dword [esp + 0x14], 0
jne 0x40144b
cmp dword [esp + 0x1c], 0
je 0x401464
or eax, 0xffffffff
cmp dword [esp + 0x20], eax
jne 0x40144b
cmp dword [esp + 0x18], eax
je 0x401464
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x20]
push 5
push 0
push 0
push eax
push ecx
push 0
push ebx
call dword [sym.imp.USER32.dll_SetWindowPos]
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x4e0
ret 0x10