Function at 0x487b8c
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
push ecx
mov ecx, 6
push 0
push 0
dec ecx
jne 0x487b95
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 0x488161
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.00408818
mov edx, dword [ebp - 0x14]
mov eax, 0x488178
call fcn.0040410c
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0
jle 0x487bf7
lea eax, [ebp - 0x14]
mov ecx, 0x2800
mov edx, dword [ebp - 0x18]
call fcn.00404068
mov eax, dword [ebp - 0x14]
call fcn.00408e3c
test al, al
je 0x487d0c
lea edx, [ebp - 0x20]
mov eax, dword [ebp - 0x14]
call fcn.00409120
mov eax, dword [ebp - 0x20]
mov edx, 0x488184
call fcn.00403f30
je 0x487c3f
mov eax, dword [ebp - 0x20]
mov edx, 0x488194
call fcn.00403f30
je 0x487c3f
mov eax, dword [ebp - 0x20]
mov edx, 0x4881a4
call fcn.00403f30
jne 0x487c86
xor eax, eax
push ebp
push 0x487c77
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x4c7c98]
mov eax, dword [eax + 0x2dc]
mov eax, dword [eax + 0x128]
mov edx, dword [ebp - 0x14]
call fcn.0041bdec
mov byte [ebp - 0x19], 1
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x487d75
mov eax, dword [ebp - 0x20]
mov edx, 0x4881b4
call fcn.00403f30
je 0x487cc6
mov eax, dword [ebp - 0x20]
mov edx, 0x4881c4
call fcn.00403f30
je 0x487cc6
mov eax, dword [ebp - 0x20]
mov edx, 0x4881d4
call fcn.00403f30
je 0x487cc6
mov eax, dword [ebp - 0x20]
mov edx, 0x4881e4
call fcn.00403f30
jne 0x487d75
xor eax, eax
push ebp
push 0x487d00
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 [0x4c7c98]
mov eax, dword [eax + 0x2e0]
call fcn.00484270
mov byte [ebp - 0x19], 0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x487d75
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, 0x4881f4
call fcn.00403f30
jne 0x487d75
xor eax, eax
push ebp
push 0x487d6b
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 [0x4c7c98]
mov eax, dword [eax + 0x2e0]
call fcn.00484270
mov byte [ebp - 0x19], 0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x487d75
cmp byte [ebp - 1], 0
je 0x487d8b
mov al, byte [ebp - 2]
or al, byte [0x4bd3dc]
mov byte [0x4bd3dc], al
jmp 0x487d9b
mov al, byte [ebp - 2]
not eax
and al, byte [0x4bd3dc]
mov byte [0x4bd3dc], al
mov al, byte [0x4881fc]
cmp al, byte [0x4bd3dc]
setne byte [ebp - 1]
mov dl, byte [ebp - 1]
mov eax, dword [0x4c7c98]
call fcn.0042b278
push 0
push 0x488200
call sub.user32.dll_FindWindowA
mov dword [ebp - 0x10], eax
cmp byte [ebp - 1], 0
je 0x487ff2
test byte [0x4bd3dc], 8
je 0x487e3b
mov eax, dword [0x4c7c98]
mov eax, dword [eax + 0x2e4]
mov dl, 1
call fcn.0043e668
mov eax, dword [0x4c7c98]
mov eax, dword [eax + 0x2dc]
xor edx, edx
call fcn.0043e668
mov eax, dword [0x4c7c98]
mov eax, dword [eax + 0x2d0]
xor edx, edx
call fcn.0043e668
mov eax, dword [0x4c7c98]
mov eax, dword [eax + 0x2e0]
xor edx, edx
call fcn.0043dd68
mov eax, dword [0x4c7c98]
mov eax, dword [eax + 0x2e0]
mov edx, 0xfffff448
call fcn.0043df70
jmp 0x487fb0
cmp byte [ebp - 0x19], 1
jne 0x487ea3
mov eax, dword [0x4c7c98]
mov eax, dword [eax + 0x2dc]
mov dl, 1
call fcn.0043e668
mov eax, dword [0x4c7c98]
mov eax, dword [eax + 0x2d0]
xor edx, edx
call fcn.0043e668
mov eax, dword [0x4c7c98]
mov eax, dword [eax + 0x2e0]
xor edx, edx
call fcn.0043dd68
mov eax, dword [0x4c7c98]
mov eax, dword [eax + 0x2e0]
mov edx, 0xfffff448
call fcn.0043df70
mov eax, dword [0x4c7c98]
mov eax, dword [eax + 0x2e4]
xor edx, edx
call fcn.0043e668
jmp 0x487fb0
cmp byte [ebp - 0x19], 0
jne 0x487ef6
mov eax, dword [0x4c7c98]
mov eax, dword [eax + 0x2dc]
xor edx, edx
call fcn.0043e668
mov eax, dword [0x4c7c98]
mov eax, dword [eax + 0x2d0]
xor edx, edx
call fcn.0043e668
mov eax, dword [0x4c7c98]
mov eax, dword [eax + 0x2e0]
mov dl, 5
call fcn.0043dd68
mov eax, dword [0x4c7c98]
mov eax, dword [eax + 0x2e4]
xor edx, edx
call fcn.0043e668
jmp 0x487fb0
mov eax, dword [0x4c7c98]
mov eax, dword [eax + 0x2dc]
xor edx, edx
call fcn.0043e668
mov eax, dword [0x4c7c98]
mov eax, dword [eax + 0x2d0]
mov dl, 1
call fcn.0043e668
cmp dword [ebp - 8], 0
je 0x487f51
mov al, byte [0x488210]
push eax
lea eax, [ebp - 0x30]
push eax
mov ecx, 0x48821c
mov edx, 0x488228
mov eax, dword [ebp - 8]
call fcn.0040c57c
mov edx, dword [ebp - 0x30]
mov eax, dword [0x4c7c98]
mov eax, dword [eax + 0x2d0]
call fcn.0043e780
jmp 0x487f77
lea eax, [ebp - 0x34]
mov edx, dword [0x4bd798]
mov edx, dword [edx]
mov edx, dword [edx + 0x3c]
call fcn.00403d58
mov edx, dword [ebp - 0x34]
mov eax, dword [0x4c7c98]
mov eax, dword [eax + 0x2d0]
call fcn.0043e780
mov eax, dword [0x4c7c98]
mov eax, dword [eax + 0x2e0]
xor edx, edx
call fcn.0043dd68
mov eax, dword [0x4c7c98]
mov eax, dword [eax + 0x2e0]
mov edx, 0xfffff448
call fcn.0043df70
mov eax, dword [0x4c7c98]
mov eax, dword [eax + 0x2e4]
xor edx, edx
call fcn.0043e668
push 0x40
mov eax, dword [0x4bdcb8]
mov eax, dword [eax]
call fcn.0042f234
push eax
mov eax, dword [0x4bdcb8]
mov eax, dword [eax]
call fcn.0042f240
push eax
push 0
push 0
push 0xffffffffffffffff
mov eax, dword [0x4c7c98]
call fcn.00444860
push eax
call sub.user32.dll_SetWindowPos
push 0
mov eax, dword [ebp - 0x10]
push eax
call sub.user32.dll_ShowWindow
jmp 0x4880fb
lea ecx, [ebp - 0x38]
mov eax, dword [0x4c7c98]
mov eax, dword [eax + 0x2e0]
mov edx, 0xd3
call fcn.004817bc
mov eax, dword [ebp - 0x38]
mov edx, 0x488230
call fcn.00404388
je 0x48806e
mov dword [ebp - 0x18], 3
xor eax, eax
push ebp
push 0x488055
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x4c7c98]
mov eax, dword [eax + 0x2e0]
mov edx, 0x488230
call fcn.00484270
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x48806e
mov eax, dword [0x4c7c98]
mov eax, dword [eax + 0x2d4]
xor edx, edx
call fcn.0043e668
mov eax, dword [0x4c7c98]
mov eax, dword [eax + 0x2d8]
xor edx, edx
call fcn.0043e668
mov eax, dword [0x4c7c98]
call fcn.0043e994
push 0x83
mov eax, dword [0x4bdcb8]
mov eax, dword [eax]
call fcn.0042f234
push eax
mov eax, dword [0x4bdcb8]
mov eax, dword [eax]
call fcn.0042f240
push eax
push 0
push 0
push 0xffffffffffffffff
mov eax, dword [0x4c7c98]
call fcn.00444860
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.00454ea4
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 0x488168
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