Function at 0x487830
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
push ecx
mov ecx, 6
push 0
push 0
dec ecx
jne 0x487839
push ecx
xchg dword [ebp - 4], ecx
push ebx
push esi
push edi
mov dword [ebp - 8], ecx
mov byte [ebp - 2], dl
mov byte [ebp - 1], al
mov eax, dword [ebp - 8]
call fcn.00403fd4
xor eax, eax
push ebp
push 0x487e05
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.00408754
mov edx, dword [ebp - 0x14]
mov eax, 0x487e1c
call fcn.0040410c
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0
jle 0x48789b
lea eax, [ebp - 0x14]
mov ecx, 0x2800
mov edx, dword [ebp - 0x18]
call fcn.00404068
mov eax, dword [ebp - 0x14]
call fcn.00408d78
test al, al
je 0x4879b0
lea edx, [ebp - 0x20]
mov eax, dword [ebp - 0x14]
call fcn.0040905c
mov eax, dword [ebp - 0x20]
mov edx, 0x487e28
call fcn.00403f30
je 0x4878e3
mov eax, dword [ebp - 0x20]
mov edx, 0x487e38
call fcn.00403f30
je 0x4878e3
mov eax, dword [ebp - 0x20]
mov edx, 0x487e48
call fcn.00403f30
jne 0x48792a
xor eax, eax
push ebp
push 0x48791b
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x4c6c9c]
mov eax, dword [eax + 0x2dc]
mov eax, dword [eax + 0x128]
mov edx, dword [ebp - 0x14]
call fcn.0041bd20
mov byte [ebp - 0x19], 1
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x487a19
mov eax, dword [ebp - 0x20]
mov edx, 0x487e58
call fcn.00403f30
je 0x48796a
mov eax, dword [ebp - 0x20]
mov edx, 0x487e68
call fcn.00403f30
je 0x48796a
mov eax, dword [ebp - 0x20]
mov edx, 0x487e78
call fcn.00403f30
je 0x48796a
mov eax, dword [ebp - 0x20]
mov edx, 0x487e88
call fcn.00403f30
jne 0x487a19
xor eax, eax
push ebp
push 0x4879a4
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 0x24]
mov edx, dword [ebp - 0x14]
call fcn.00404314
mov edx, dword [ebp - 0x24]
mov eax, dword [0x4c6c9c]
mov eax, dword [eax + 0x2e0]
call fcn.004843d8
mov byte [ebp - 0x19], 0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x487a19
lea eax, [ebp - 0x28]
push eax
mov ecx, 5
mov edx, 1
mov eax, dword [ebp - 0x14]
call fcn.00404028
mov eax, dword [ebp - 0x28]
mov edx, 0x487e98
call fcn.00403f30
jne 0x487a19
xor eax, eax
push ebp
push 0x487a0f
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x14]
call fcn.00404314
mov edx, dword [ebp - 0x2c]
mov eax, dword [0x4c6c9c]
mov eax, dword [eax + 0x2e0]
call fcn.004843d8
mov byte [ebp - 0x19], 0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x487a19
cmp byte [ebp - 1], 0
je 0x487a2f
mov al, byte [ebp - 2]
or al, byte [0x4bc3e4]
mov byte [0x4bc3e4], al
jmp 0x487a3f
mov al, byte [ebp - 2]
not eax
and al, byte [0x4bc3e4]
mov byte [0x4bc3e4], al
mov al, byte [0x487ea0]
cmp al, byte [0x4bc3e4]
setne byte [ebp - 1]
mov dl, byte [ebp - 1]
mov eax, dword [0x4c6c9c]
call fcn.0042b1ac
push 0
push 0x487ea4
call sub.user32.dll_FindWindowA
mov dword [ebp - 0x10], eax
cmp byte [ebp - 1], 0
je 0x487c96
test byte [0x4bc3e4], 8
je 0x487adf
mov eax, dword [0x4c6c9c]
mov eax, dword [eax + 0x2e4]
mov dl, 1
call fcn.0043e58c
mov eax, dword [0x4c6c9c]
mov eax, dword [eax + 0x2dc]
xor edx, edx
call fcn.0043e58c
mov eax, dword [0x4c6c9c]
mov eax, dword [eax + 0x2d0]
xor edx, edx
call fcn.0043e58c
mov eax, dword [0x4c6c9c]
mov eax, dword [eax + 0x2e0]
xor edx, edx
call fcn.0043dc8c
mov eax, dword [0x4c6c9c]
mov eax, dword [eax + 0x2e0]
mov edx, 0xfffff448
call fcn.0043de94
jmp 0x487c54
cmp byte [ebp - 0x19], 1
jne 0x487b47
mov eax, dword [0x4c6c9c]
mov eax, dword [eax + 0x2dc]
mov dl, 1
call fcn.0043e58c
mov eax, dword [0x4c6c9c]
mov eax, dword [eax + 0x2d0]
xor edx, edx
call fcn.0043e58c
mov eax, dword [0x4c6c9c]
mov eax, dword [eax + 0x2e0]
xor edx, edx
call fcn.0043dc8c
mov eax, dword [0x4c6c9c]
mov eax, dword [eax + 0x2e0]
mov edx, 0xfffff448
call fcn.0043de94
mov eax, dword [0x4c6c9c]
mov eax, dword [eax + 0x2e4]
xor edx, edx
call fcn.0043e58c
jmp 0x487c54
cmp byte [ebp - 0x19], 0
jne 0x487b9a
mov eax, dword [0x4c6c9c]
mov eax, dword [eax + 0x2dc]
xor edx, edx
call fcn.0043e58c
mov eax, dword [0x4c6c9c]
mov eax, dword [eax + 0x2d0]
xor edx, edx
call fcn.0043e58c
mov eax, dword [0x4c6c9c]
mov eax, dword [eax + 0x2e0]
mov dl, 5
call fcn.0043dc8c
mov eax, dword [0x4c6c9c]
mov eax, dword [eax + 0x2e4]
xor edx, edx
call fcn.0043e58c
jmp 0x487c54
mov eax, dword [0x4c6c9c]
mov eax, dword [eax + 0x2dc]
xor edx, edx
call fcn.0043e58c
mov eax, dword [0x4c6c9c]
mov eax, dword [eax + 0x2d0]
mov dl, 1
call fcn.0043e58c
cmp dword [ebp - 8], 0
je 0x487bf5
mov al, byte [0x487eb4]
push eax
lea eax, [ebp - 0x30]
push eax
mov ecx, 0x487ec0
mov edx, 0x487ecc
mov eax, dword [ebp - 8]
call fcn.0040c4b8
mov edx, dword [ebp - 0x30]
mov eax, dword [0x4c6c9c]
mov eax, dword [eax + 0x2d0]
call fcn.0043e6a4
jmp 0x487c1b
lea eax, [ebp - 0x34]
mov edx, dword [0x4bc734]
mov edx, dword [edx]
mov edx, dword [edx + 0x3c]
call fcn.00403d58
mov edx, dword [ebp - 0x34]
mov eax, dword [0x4c6c9c]
mov eax, dword [eax + 0x2d0]
call fcn.0043e6a4
mov eax, dword [0x4c6c9c]
mov eax, dword [eax + 0x2e0]
xor edx, edx
call fcn.0043dc8c
mov eax, dword [0x4c6c9c]
mov eax, dword [eax + 0x2e0]
mov edx, 0xfffff448
call fcn.0043de94
mov eax, dword [0x4c6c9c]
mov eax, dword [eax + 0x2e4]
xor edx, edx
call fcn.0043e58c
push 0x40
mov eax, dword [0x4bcc38]
mov eax, dword [eax]
call fcn.0042f168
push eax
mov eax, dword [0x4bcc38]
mov eax, dword [eax]
call fcn.0042f174
push eax
push 0
push 0
push 0xffffffffffffffff
mov eax, dword [0x4c6c9c]
call fcn.00444784
push eax
call sub.user32.dll_SetWindowPos
push 0
mov eax, dword [ebp - 0x10]
push eax
call sub.user32.dll_ShowWindow
jmp 0x487d9f
lea ecx, [ebp - 0x38]
mov eax, dword [0x4c6c9c]
mov eax, dword [eax + 0x2e0]
mov edx, 0xd3
call fcn.00481924
mov eax, dword [ebp - 0x38]
mov edx, 0x487ed4
call fcn.00404388
je 0x487d12
mov dword [ebp - 0x18], 3
xor eax, eax
push ebp
push 0x487cf9
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x4c6c9c]
mov eax, dword [eax + 0x2e0]
mov edx, 0x487ed4
call fcn.004843d8
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x487d12
mov eax, dword [0x4c6c9c]
mov eax, dword [eax + 0x2d4]
xor edx, edx
call fcn.0043e58c
mov eax, dword [0x4c6c9c]
mov eax, dword [eax + 0x2d8]
xor edx, edx
call fcn.0043e58c
mov eax, dword [0x4c6c9c]
call fcn.0043e8b8
push 0x83
mov eax, dword [0x4bcc38]
mov eax, dword [eax]
call fcn.0042f168
push eax
mov eax, dword [0x4bcc38]
mov eax, dword [eax]
call fcn.0042f174
push eax
push 0
push 0
push 0xffffffffffffffff
mov eax, dword [0x4c6c9c]
call fcn.00444784
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.0045504c
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 0x487e0c
lea eax, [ebp - 0x38]
call fcn.004041d0
lea eax, [ebp - 0x34]
mov edx, 2
call fcn.00403bc4
lea eax, [ebp - 0x2c]
call fcn.004041d0
lea eax, [ebp - 0x28]
call fcn.00403ba0
lea eax, [ebp - 0x24]
call fcn.004041d0
lea eax, [ebp - 0x20]
call fcn.00403ba0
lea eax, [ebp - 0x14]
call fcn.00403ba0
lea eax, [ebp - 8]
call fcn.00403ba0
ret