Function at 0x402190
Capabilities:
Create process on windows

Disassembly:
mov eax, dword [esp + 8]
push esi
add eax, 0xffff63b8
push edi
cmp eax, 0x10
ja case.0x4021a4.40010
jmp dword [eax*4 + 0x402440]
mov ecx, dword [esp + 0xc]
push 0
push 0
push 0x10
push ecx
call dword [sym.imp.USER32.dll_PostMessageA]
jmp case.0x4021a4.40010
mov edx, dword [0x410fb8]
mov esi, dword [sym.imp.USER32.dll_GetMenu]
push 8
push 0x9c4d
push edx
mov byte [0x410cf8], 1
call esi
mov edi, dword [sym.imp.USER32.dll_CheckMenuItem]
push eax
call edi
mov eax, dword [0x410fb8]
push 0
push 0x9c4e
push eax
call esi
push eax
call edi
jmp case.0x4021a4.40010
mov ecx, dword [0x410fb8]
mov esi, dword [sym.imp.USER32.dll_GetMenu]
push 8
push 0x9c4e
push ecx
mov byte [0x410cf8], 0
call esi
mov edi, dword [sym.imp.USER32.dll_CheckMenuItem]
push eax
call edi
mov edx, dword [0x410fb8]
push 0
push 0x9c4d
push edx
call esi
push eax
call edi
jmp case.0x4021a4.40010
mov eax, dword [0x410fb8]
mov esi, dword [sym.imp.USER32.dll_GetMenu]
push 8
push 0x9c4f
push eax
mov dword [0x410d00], 2
call esi
mov edi, dword [sym.imp.USER32.dll_CheckMenuItem]
push eax
call edi
push 0
jmp 0x402292
mov eax, dword [0x410fb8]
mov esi, dword [sym.imp.USER32.dll_GetMenu]
push 0
push 0x9c4f
push eax
mov dword [0x410d00], 3
call esi
mov edi, dword [sym.imp.USER32.dll_CheckMenuItem]
push eax
call edi
push 8
mov ecx, dword [0x410fb8]
push 0x9c50
push ecx
call esi
push eax
call edi
push 0
push 0x9c51
jmp 0x402399
mov eax, dword [0x410fb8]
mov esi, dword [sym.imp.USER32.dll_GetMenu]
push 0
push 0x9c4f
push eax
mov dword [0x410d00], 4
call esi
mov edi, dword [sym.imp.USER32.dll_CheckMenuItem]
push eax
call edi
mov ecx, dword [0x410fb8]
push 0
push 0x9c50
push ecx
call esi
push eax
call edi
push 8
push 0x9c51
jmp 0x402399
mov eax, dword [0x410fb8]
mov esi, dword [sym.imp.USER32.dll_GetMenu]
push 8
push 0x9c52
push eax
mov byte [0x410fc0], 1
call esi
mov edi, dword [sym.imp.USER32.dll_CheckMenuItem]
push eax
call edi
push 0
push 0x9c53
jmp 0x4023db
mov edx, dword [0x410fb8]
mov esi, dword [sym.imp.USER32.dll_GetMenu]
push 8
push 0x9c53
push edx
mov byte [0x410fc0], 0
call esi
mov edi, dword [sym.imp.USER32.dll_CheckMenuItem]
push eax
call edi
mov eax, dword [0x410fb8]
push 0
push 0x9c52
push eax
call esi
push eax
call edi
call fcn.00401c50
jmp case.0x4021a4.40010
mov ecx, dword [0x410fb8]
mov esi, dword [sym.imp.USER32.dll_GetMenu]
push 8
push 0x9c57
push ecx
mov dword [0x410df4], 0
call esi
mov edi, dword [sym.imp.USER32.dll_CheckMenuItem]
push eax
call edi
push 0
push 0x9c58
mov edx, dword [0x410fb8]
push edx
call esi
push eax
call edi
call fcn.00401c50
jmp case.0x4021a4.40010
mov eax, dword [0x410fb8]
mov esi, dword [sym.imp.USER32.dll_GetMenu]
push 0
push 0x9c57
push eax
mov dword [0x410df4], 1
call esi
mov edi, dword [sym.imp.USER32.dll_CheckMenuItem]
push eax
call edi
push 8
push 0x9c58
mov ecx, dword [0x410fb8]
push ecx
call esi
push eax
call edi
call fcn.00401c50
jmp case.0x4021a4.40010
mov edx, dword [esp + 0xc]
push edx
call fcn.004043a0
add esp, 4
jmp case.0x4021a4.40010
mov eax, dword [esp + 0xc]
push eax
call fcn.004045e0
add esp, 4
jmp case.0x4021a4.40010
mov ecx, dword [esp + 0xc]
push 1
push 0
push 0
push str.Uno.hlp
push str.open
push ecx
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
mov edx, dword [0x410fb8]
push edx
call fcn.00403870
add esp, 4
mov eax, 1
pop edi
pop esi
ret