Function at 0x409ec0
Capabilities:
Create process on windows

Disassembly:
push 0xffffffffffffffff
push 0x56429f
mov eax, dword fs:[0]
push eax
sub esp, 0xa94
mov eax, dword [0x5d72e0]
xor eax, esp
mov dword [esp + 0xa90], eax
push ebx
push esi
push edi
mov eax, dword [0x5d72e0]
xor eax, esp
push eax
lea eax, [esp + 0xaa4]
mov dword fs:[0], eax
mov eax, dword [esp + 0xab4]
add eax, 0xfffff818
cmp eax, 6
mov esi, ecx
ja case.default.0x409f11
jmp dword [eax*4 + 0x40a40c]
push 0
lea ecx, [esi + 0xeac8]
call fcn.00516d44
push 0
lea ecx, [esi + 0x12bf0]
call fcn.00516d44
push 5
lea ecx, [esi + 0xfce0]
call fcn.00516d44
push 0
lea ecx, [esi + 0x9c840]
call fcn.00516d44
push 5
lea ecx, [esi + 0x24d4]
call fcn.00516d44
push 5
lea ecx, [esi + 0x4388]
call fcn.00516d44
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push str.Title.VideoMonitor
call fcn.004019c0
lea eax, [esp + 0x24]
push eax
mov dword [esp + 0xab4], 0
call fcn.004ea360
mov ecx, eax
mov dword [esp + 0xab4], 0xffffffff
call fcn.004ea820
push eax
push 1
lea ecx, [esi + 0x226c]
mov dword [esp + 0xab4], 1
call fcn.00478d50
lea ecx, [esp + 0x20]
call fcn.004015d0
jmp case.default.0x409f11
push 5
lea ecx, [esi + 0xeac8]
call fcn.00516d44
push 0
lea ecx, [esi + 0xfce0]
call fcn.00516d44
push 0
lea ecx, [esi + 0x12bf0]
call fcn.00516d44
push 0
lea ecx, [esi + 0x9c840]
call fcn.00516d44
push 5
lea ecx, [esi + 0x24d4]
call fcn.00516d44
push 5
lea ecx, [esi + 0x4388]
jmp 0x40a3dd
mov ecx, dword [esi + 0xeae8]
mov edi, dword [sym.imp.USER32.dll_IsWindowVisible]
push ecx
call edi
test eax, eax
jne 0x409fdf
mov edx, dword [esi + 0xfd00]
push edx
call edi
test eax, eax
jne 0x409fdf
push 5
jmp 0x409fd4
push 0
lea ecx, [esi + 0xeac8]
call fcn.00516d44
push 0
lea ecx, [esi + 0xfce0]
call fcn.00516d44
push 5
lea ecx, [esi + 0x12bf0]
call fcn.00516d44
lea ecx, [esi + 0x9c840]
jmp 0x40a3db
call fcn.0041fc60
test eax, eax
je 0x40a125
push 0
push 0xffffffffffffffff
push 0
push 1
mov ecx, eax
call fcn.0041c450
test eax, eax
jg 0x40a125
push 0
lea ecx, [esp + 0xc4]
call fcn.004907e0
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
mov ebx, 2
push str.Error.NoPower
mov dword [esp + 0xab4], ebx
call fcn.004019c0
lea eax, [esp + 0x2c]
push eax
mov byte [esp + 0xab4], 3
call fcn.004ea360
mov ecx, eax
mov byte [esp + 0xab4], bl
call fcn.004ea820
push eax
lea ecx, [esp + 0x138]
mov byte [esp + 0xab0], 4
call fcn.00402060
lea ecx, [esp + 0x28]
mov byte [esp + 0xaac], bl
call fcn.004015d0
lea ecx, [esp + 0xc0]
call fcn.005104b7
lea ecx, [esp + 0xc0]
mov dword [esp + 0xaac], 0xffffffff
call fcn.00490590
jmp case.default.0x409f11
push 5
lea ecx, [esi + 0x7cb04]
jmp 0x40a3dd
push 0
lea ecx, [esp + 0x3c]
call fcn.004907e0
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push str.Desktop.SureToClose
mov dword [esp + 0xab4], 5
mov dword [esp + 0xb8], 1
call fcn.004019c0
lea ecx, [esp + 0x28]
push ecx
mov byte [esp + 0xab4], 6
call fcn.004ea360
mov ecx, eax
mov byte [esp + 0xab4], 5
call fcn.004ea820
push eax
lea ecx, [esp + 0xb0]
mov byte [esp + 0xab0], 7
call fcn.00402060
lea ecx, [esp + 0x24]
mov byte [esp + 0xaac], 5
call fcn.004015d0
push 0
lea ecx, [esp + 0x14c]
call fcn.0040bfe0
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
mov ebx, 8
push str.Desktop.SureToClose
mov byte [esp + 0xab4], bl
call fcn.004019c0
lea edx, [esp + 0x20]
push edx
mov byte [esp + 0xab4], 9
call fcn.004ea360
mov ecx, eax
mov byte [esp + 0xab4], bl
call fcn.004ea820
push eax
lea ecx, [esp + 0x14c]
mov byte [esp + 0xab0], 0xa
call fcn.0040c100
lea ecx, [esp + 0x1c]
mov byte [esp + 0xaac], bl
call fcn.004015d0
lea ecx, [esp + 0x2c]
call fcn.0049aaa0
lea ecx, [esp + 0x2c]
mov byte [esp + 0xaac], 0xb
call fcn.0049a770
test al, al
lea ecx, [esp + 0x148]
jne 0x40a244
lea ecx, [esp + 0x38]
mov eax, dword [ecx]
mov edx, dword [eax + 0x144]
call edx
cmp eax, 1
jne 0x40a374
push 0x2b0
mov byte [esi + 0x20e4], al
lea eax, [esp + 0x7f4]
push 0
push eax
call fcn.00530d30
lea ecx, [esp + 0x804]
push ecx
mov dword [esp + 0x800], 1
mov dword [esp + 0x804], ebx
mov dword [esp + 0x820], 0
call fcn.004eb810
add esp, 0x10
push 0
call fcn.0041fc60
mov ecx, eax
add ecx, 0x7e8
call fcn.00401740
mov esi, eax
mov ecx, 0x10
lea edi, [esp + 0x854]
rep movsd dword es:[edi], dword [esi]
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push str.Log.CloseCMS
call fcn.004019c0
lea edx, [esp + 0x1c]
push edx
mov byte [esp + 0xab4], 0xc
call fcn.004ea360
mov ecx, eax
mov byte [esp + 0xab4], 0xb
call fcn.004ea820
mov eax, dword [eax]
push eax
lea eax, [esp + 0x8a4]
push eax
call fcn.00530c72
add esp, 8
lea ecx, [esp + 0x18]
call fcn.004015d0
lea ecx, [esp + 0x7f0]
push ecx
call fcn.004836c0
mov ecx, eax
call fcn.004837f0
mov ecx, 0x5d94e8
call fcn.004059f0
mov edx, dword [0x5d9538]
push edx
call fcn.00406b70
add eax, 4
push eax
lea eax, [esp + 0x1c]
push eax
call fcn.00402100
mov ecx, dword [esp + 0x20]
add esp, 0xc
push 1
push 0
push 0
push ecx
push str.open
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
push 0
call dword [sym.imp.USER32.dll_PostQuitMessage]
lea ecx, [esp + 0x14]
call fcn.004015d0
lea ecx, [esp + 0x2c]
mov byte [esp + 0xaac], bl
call fcn.0049a910
lea ecx, [esp + 0x148]
mov byte [esp + 0xaac], 5
call fcn.0040beb0
lea ecx, [esp + 0x38]
mov dword [esp + 0xaac], 0xffffffff
call fcn.00490590
jmp case.default.0x409f11
push 0
lea ecx, [esi + 0xfce0]
call fcn.00516d44
push 5
lea ecx, [esi + 0x9c840]
call fcn.00516d44
push 0
lea ecx, [esi + 0xeac8]
call fcn.00516d44
lea ecx, [esi + 0x12bf0]
push 0
call fcn.00516d44
mov ecx, dword [esp + 0xaa4]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0xa90]
xor ecx, esp
call fcn.0053042b
add esp, 0xaa0
ret 4