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

Disassembly:
push ebp
mov ebp, esp
push ecx
mov ecx, 6
push 0
push 0
dec ecx
jne 0x491879
push ecx
xchg dword [ebp - 4], ecx
push ebx
push esi
push edi
mov dword [ebp - 8], ecx
mov word [ebp - 3], dx
mov byte [ebp - 1], al
mov eax, dword [ebp - 8]
call fcn.00403ff8
xor eax, eax
push ebp
push 0x491e4e
push dword fs:[eax]
mov dword fs:[eax], esp
mov byte [ebp - 0x19], 2
lea edx, [ebp - 0x14]
mov eax, dword [ebp - 8]
call fcn.00408954
mov edx, dword [ebp - 0x14]
mov eax, 0x491e64
call fcn.00404130
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0
jle 0x4918dc
lea eax, [ebp - 0x14]
mov ecx, 0x2800
mov edx, dword [ebp - 0x18]
call fcn.0040408c
mov eax, dword [ebp - 0x14]
call fcn.00408f78
test al, al
je 0x4919f1
lea edx, [ebp - 0x20]
mov eax, dword [ebp - 0x14]
call fcn.004092f0
mov eax, dword [ebp - 0x20]
mov edx, 0x491e70
call fcn.00403f54
je 0x491924
mov eax, dword [ebp - 0x20]
mov edx, 0x491e80
call fcn.00403f54
je 0x491924
mov eax, dword [ebp - 0x20]
mov edx, 0x491e90
call fcn.00403f54
jne 0x49196b
xor eax, eax
push ebp
push 0x49195c
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x4c6ff0]
mov eax, dword [eax + 0x2dc]
mov eax, dword [eax + 0x128]
mov edx, dword [ebp - 0x14]
call fcn.0041c97c
mov byte [ebp - 0x19], 1
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x491a5a
mov eax, dword [ebp - 0x20]
mov edx, 0x491ea0
call fcn.00403f54
je 0x4919ab
mov eax, dword [ebp - 0x20]
mov edx, 0x491eb0
call fcn.00403f54
je 0x4919ab
mov eax, dword [ebp - 0x20]
mov edx, 0x491ec0
call fcn.00403f54
je 0x4919ab
mov eax, dword [ebp - 0x20]
mov edx, 0x491ed0
call fcn.00403f54
jne 0x491a5a
xor eax, eax
push ebp
push 0x4919e5
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 0x24]
mov edx, dword [ebp - 0x14]
call fcn.00404350
mov edx, dword [ebp - 0x24]
mov eax, dword [0x4c6ff0]
mov eax, dword [eax + 0x2e0]
call fcn.00487cac
mov byte [ebp - 0x19], 0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x491a5a
lea eax, [ebp - 0x28]
push eax
mov ecx, 5
mov edx, 1
mov eax, dword [ebp - 0x14]
call fcn.0040404c
mov eax, dword [ebp - 0x28]
mov edx, 0x491ee0
call fcn.00403f54
jne 0x491a5a
xor eax, eax
push ebp
push 0x491a50
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x14]
call fcn.00404350
mov edx, dword [ebp - 0x2c]
mov eax, dword [0x4c6ff0]
mov eax, dword [eax + 0x2e0]
call fcn.00487cac
mov byte [ebp - 0x19], 0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x491a5a
cmp byte [ebp - 1], 0
je 0x491a73
mov ax, word [ebp - 3]
or ax, word [0x4bc154]
mov word [0x4bc154], ax
jmp 0x491a86
mov ax, word [ebp - 3]
not eax
and ax, word [0x4bc154]
mov word [0x4bc154], ax
mov ax, word [0x491ee8]
cmp ax, word [0x4bc154]
setne byte [ebp - 1]
mov dl, byte [ebp - 1]
mov eax, dword [0x4c6ff0]
call fcn.0042bea4
push 0
push 0x491eec
call sub.user32.dll_FindWindowA
mov dword [ebp - 0x10], eax
cmp byte [ebp - 1], 0
je 0x491cdf
test byte [0x4bc154], 8
je 0x491b28
mov eax, dword [0x4c6ff0]
mov eax, dword [eax + 0x2e4]
mov dl, 1
call fcn.0043f284
mov eax, dword [0x4c6ff0]
mov eax, dword [eax + 0x2dc]
xor edx, edx
call fcn.0043f284
mov eax, dword [0x4c6ff0]
mov eax, dword [eax + 0x2d0]
xor edx, edx
call fcn.0043f284
mov eax, dword [0x4c6ff0]
mov eax, dword [eax + 0x2e0]
xor edx, edx
call fcn.0043e984
mov eax, dword [0x4c6ff0]
mov eax, dword [eax + 0x2e0]
mov edx, 0xfffff448
call fcn.0043eb8c
jmp 0x491c9d
cmp byte [ebp - 0x19], 1
jne 0x491b90
mov eax, dword [0x4c6ff0]
mov eax, dword [eax + 0x2dc]
mov dl, 1
call fcn.0043f284
mov eax, dword [0x4c6ff0]
mov eax, dword [eax + 0x2d0]
xor edx, edx
call fcn.0043f284
mov eax, dword [0x4c6ff0]
mov eax, dword [eax + 0x2e0]
xor edx, edx
call fcn.0043e984
mov eax, dword [0x4c6ff0]
mov eax, dword [eax + 0x2e0]
mov edx, 0xfffff448
call fcn.0043eb8c
mov eax, dword [0x4c6ff0]
mov eax, dword [eax + 0x2e4]
xor edx, edx
call fcn.0043f284
jmp 0x491c9d
cmp byte [ebp - 0x19], 0
jne 0x491be3
mov eax, dword [0x4c6ff0]
mov eax, dword [eax + 0x2dc]
xor edx, edx
call fcn.0043f284
mov eax, dword [0x4c6ff0]
mov eax, dword [eax + 0x2d0]
xor edx, edx
call fcn.0043f284
mov eax, dword [0x4c6ff0]
mov eax, dword [eax + 0x2e0]
mov dl, 5
call fcn.0043e984
mov eax, dword [0x4c6ff0]
mov eax, dword [eax + 0x2e4]
xor edx, edx
call fcn.0043f284
jmp 0x491c9d
mov eax, dword [0x4c6ff0]
mov eax, dword [eax + 0x2dc]
xor edx, edx
call fcn.0043f284
mov eax, dword [0x4c6ff0]
mov eax, dword [eax + 0x2d0]
mov dl, 1
call fcn.0043f284
cmp dword [ebp - 8], 0
je 0x491c3e
mov al, byte [0x491efc]
push eax
lea eax, [ebp - 0x30]
push eax
mov ecx, 0x491f08
mov edx, 0x491f14
mov eax, dword [ebp - 8]
call fcn.0040c800
mov edx, dword [ebp - 0x30]
mov eax, dword [0x4c6ff0]
mov eax, dword [eax + 0x2d0]
call fcn.0043f39c
jmp 0x491c64
lea eax, [ebp - 0x34]
mov edx, dword [0x4bc754]
mov edx, dword [edx]
mov edx, dword [edx + 0x3c]
call fcn.00403d7c
mov edx, dword [ebp - 0x34]
mov eax, dword [0x4c6ff0]
mov eax, dword [eax + 0x2d0]
call fcn.0043f39c
mov eax, dword [0x4c6ff0]
mov eax, dword [eax + 0x2e0]
xor edx, edx
call fcn.0043e984
mov eax, dword [0x4c6ff0]
mov eax, dword [eax + 0x2e0]
mov edx, 0xfffff448
call fcn.0043eb8c
mov eax, dword [0x4c6ff0]
mov eax, dword [eax + 0x2e4]
xor edx, edx
call fcn.0043f284
push 0x40
mov eax, dword [0x4bce38]
mov eax, dword [eax]
call fcn.0042fe60
push eax
mov eax, dword [0x4bce38]
mov eax, dword [eax]
call fcn.0042fe6c
push eax
push 0
push 0
push 0xffffffffffffffff
mov eax, dword [0x4c6ff0]
call fcn.004455d0
push eax
call sub.user32.dll_SetWindowPos
push 0
mov eax, dword [ebp - 0x10]
push eax
call sub.user32.dll_ShowWindow
jmp 0x491de8
lea ecx, [ebp - 0x38]
mov eax, dword [0x4c6ff0]
mov eax, dword [eax + 0x2e0]
mov edx, 0xd3
call fcn.004851f8
mov eax, dword [ebp - 0x38]
mov edx, 0x491f1c
call fcn.004043c4
je 0x491d5b
mov dword [ebp - 0x18], 3
xor eax, eax
push ebp
push 0x491d42
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x4c6ff0]
mov eax, dword [eax + 0x2e0]
mov edx, 0x491f1c
call fcn.00487cac
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x491d5b
mov eax, dword [0x4c6ff0]
mov eax, dword [eax + 0x2d4]
xor edx, edx
call fcn.0043f284
mov eax, dword [0x4c6ff0]
mov eax, dword [eax + 0x2d8]
xor edx, edx
call fcn.0043f284
mov eax, dword [0x4c6ff0]
call fcn.0043f5b0
push 0x83
mov eax, dword [0x4bce38]
mov eax, dword [eax]
call fcn.0042fe60
push eax
mov eax, dword [0x4bce38]
mov eax, dword [eax]
call fcn.0042fe6c
push eax
push 0
push 0
push 0xffffffffffffffff
mov eax, dword [0x4c6ff0]
call fcn.004455d0
push eax
call sub.user32.dll_SetWindowPos
push 0x47
push 0
push 0
push 0
push 0
push 0xffffffffffffffff
mov eax, dword [ebp - 0x10]
push eax
call sub.user32.dll_SetWindowPos
mov eax, 0xc8
call fcn.004572d8
push 0xffffffffffffffff
push 0
push 0
call sub.user32.dll_InvalidateRect
push 0
lea eax, [ebp - 0xc]
push eax
xor eax, eax
mov al, byte [ebp - 1]
push eax
push 0x61
call sub.user32.dll_SystemParametersInfoA
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x491e55
lea eax, [ebp - 0x38]
call fcn.004041f4
lea eax, [ebp - 0x34]
mov edx, 2
call fcn.00403be8
lea eax, [ebp - 0x2c]
call fcn.004041f4
lea eax, [ebp - 0x28]
call fcn.00403bc4
lea eax, [ebp - 0x24]
call fcn.004041f4
lea eax, [ebp - 0x20]
call fcn.00403bc4
lea eax, [ebp - 0x14]
call fcn.00403bc4
lea eax, [ebp - 8]
call fcn.00403bc4
ret