Function at 0x414fb0
Capabilities:
Create process on windows
Hide graphical window

Disassembly:
sub esp, 0x64c
mov eax, dword [0x458e40]
push ebp
push esi
mov ecx, 0x461230
mov dword [esp + 0x650], eax
call fcn.00411e60
mov esi, eax
movzx eax, word [esp + 0x658]
add eax, 0xffff63bf
cmp eax, 0x3c
mov ebp, 1
mov dword [esp + 8], 0x30
mov dword [esp + 0xc], ebp
ja case.0x414ffe.40003
movzx eax, byte [eax + 0x4154ec]
jmp dword [eax*4 + 0x415478]
mov ecx, 0x461230
call fcn.00412000
test eax, eax
mov ecx, 0x461230
je 0x415022
call fcn.00412060
jmp case.0x414ffe.40003
call fcn.00411fe0
jmp case.0x414ffe.40003
mov ecx, 0x461230
call fcn.00412070
jmp case.0x414ffe.40003
mov ecx, 0x461230
call fcn.004120e0
jmp case.0x414ffe.40003
mov ecx, dword [0x461224]
push 0
push ecx
call dword [sym.imp.USER32.dll_ShowWindow]
mov ecx, 0x461230
call fcn.004120a0
jmp case.0x414ffe.40003
mov ecx, 0x461230
call fcn.00412090
jmp case.0x414ffe.40003
mov ecx, 0x461230
call fcn.00412110
jmp case.0x414ffe.40003
mov dword [esi + 8], ebp
jmp 0x415450
mov dword [esi + 8], 2
jmp 0x415450
mov dword [esi + 8], 3
jmp 0x415450
mov dword [esi + 8], 4
jmp 0x415450
mov dword [esi + 8], 5
jmp 0x415450
mov ecx, 0x461230
call fcn.00412080
jmp case.0x414ffe.40003
mov edx, dword [0x461228]
push 0
push 0
push 0x10
push edx
call dword [sym.imp.USER32.dll_PostMessageA]
jmp case.0x414ffe.40003
mov ecx, dword [esi + 0x42c]
xor eax, eax
test ecx, ecx
sete al
mov dword [esi + 0x42c], eax
jmp 0x415450
mov edx, dword [0x46110c]
lea ecx, [esp + 8]
push ecx
push 0
push 0x9c72
push edx
call dword [sym.imp.USER32.dll_GetMenuItemInfoA]
mov eax, dword [esi + 0x428]
test eax, eax
je 0x415134
mov dword [esi + 0x428], 0
mov dword [esp + 0x14], 0
jmp 0x415142
mov dword [esi + 0x428], ebp
mov dword [esp + 0x14], 8
mov ecx, dword [0x46110c]
lea eax, [esp + 8]
push eax
push 0
push 0x9c72
push ecx
call dword [sym.imp.USER32.dll_SetMenuItemInfoA]
jmp 0x415450
mov dword [esi + 4], ebp
jmp 0x415450
mov dword [esi + 4], 2
jmp 0x415450
mov dword [esi + 4], 3
jmp 0x415450
mov dword [esi + 4], 4
jmp 0x415450
mov eax, dword [0x46110c]
lea edx, [esp + 8]
push edx
push 0
push 0x9c6a
push eax
call dword [sym.imp.USER32.dll_GetMenuItemInfoA]
mov eax, dword [esi + 0x430]
test eax, eax
je 0x4151c2
mov dword [esi + 0x430], 0
mov dword [esp + 0x14], 0
jmp 0x4151d0
mov dword [esi + 0x430], ebp
mov dword [esp + 0x14], 8
mov edx, dword [0x46110c]
lea ecx, [esp + 8]
push ecx
push 0
push 0x9c6a
push edx
call dword [sym.imp.USER32.dll_SetMenuItemInfoA]
jmp 0x415450
mov ecx, dword [0x46110c]
lea eax, [esp + 8]
push eax
push 0
push 0x9c7c
push ecx
call dword [sym.imp.USER32.dll_GetMenuItemInfoA]
mov eax, dword [esi + 0x24]
test eax, eax
je 0x41521f
mov dword [esi + 0x24], 0
mov dword [esp + 0x14], 0
jmp 0x41522a
mov dword [esi + 0x24], ebp
mov dword [esp + 0x14], 8
mov eax, dword [0x46110c]
lea edx, [esp + 8]
push edx
push 0
push 0x9c7c
push eax
call dword [sym.imp.USER32.dll_SetMenuItemInfoA]
jmp 0x415450
mov edx, dword [0x46110c]
lea ecx, [esp + 8]
push ecx
push 0
push 0x9c7d
push edx
call dword [sym.imp.USER32.dll_GetMenuItemInfoA]
mov eax, dword [esi + 0x28]
test eax, eax
je 0x415278
mov dword [esi + 0x28], 0
mov dword [esp + 0x14], 0
jmp 0x415283
mov dword [esi + 0x28], ebp
mov dword [esp + 0x14], 8
mov ecx, dword [0x46110c]
lea eax, [esp + 8]
push eax
push 0
push 0x9c7d
push ecx
call dword [sym.imp.USER32.dll_SetMenuItemInfoA]
jmp 0x415450
mov edx, dword [0x461228]
mov eax, dword [0x461174]
push esi
push 0x4145a0
push edx
push 0x6a
push eax
call dword [sym.imp.USER32.dll_DialogBoxParamA]
jmp case.0x414ffe.40003
call fcn.00414f50
mov ecx, dword [0x461228]
push ebp
push ecx
call fcn.00414a60
mov edx, dword [0x461224]
add esp, 8
push 0
push edx
call dword [sym.imp.USER32.dll_ShowWindow]
mov ecx, 0x461230
call fcn.00411e60
mov dword [eax + 0x424], ebp
push eax
jmp 0x415451
mov eax, dword [0x461228]
push 0
push eax
call fcn.00414a60
add esp, 8
call fcn.00414d80
mov ecx, 0x461230
call fcn.00411e60
mov dword [eax + 0x424], 0
push eax
jmp 0x415451
push 0x104
lea ecx, [esp + 0x348]
push ecx
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea edx, [esp + 0x448]
push edx
lea eax, [esp + 0x550]
push eax
lea ecx, [esp + 0x248]
push ecx
lea edx, [esp + 0x148]
push edx
lea eax, [esp + 0x354]
push eax
call fcn.00433184
add esp, 0x14
xor eax, eax
mov cl, byte [esp + eax + 0x13c]
mov byte [esp + eax + 0x38], cl
inc eax
test cl, cl
jne 0x415371
lea eax, [esp + 0x240]
mov edx, eax
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x415390
push edi
lea edi, [esp + 0x3c]
sub eax, edx
dec edi
nop
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x4153a0
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [esp + 0x3c]
dec edi
lea ecx, [ecx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4153c0
mov ecx, dword [str.readme.txt]
mov edx, dword [0x441c94]
mov ax, word [0x441c98]
push ebp
mov dword [edi], ecx
mov cl, byte [0x441c9a]
push 0
mov dword [edi + 4], edx
push 0
lea edx, [esp + 0x48]
push edx
mov word [edi + 8], ax
mov eax, dword [0x461228]
push str.open
push eax
mov byte [edi + 0xa], cl
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
pop edi
jmp case.0x414ffe.40003
mov ecx, dword [0x461228]
mov edx, dword [0x461174]
push 0
push 0x414760
push ecx
push 0x68
push edx
call dword [sym.imp.USER32.dll_DialogBoxParamA]
jmp case.0x414ffe.40003
mov ecx, 0x461230
call fcn.00411e60
mov ecx, dword [0x461174]
mov esi, eax
mov eax, dword [0x461228]
push esi
push 0x414160
push eax
push 0x66
push ecx
call dword [sym.imp.USER32.dll_DialogBoxParamA]
push esi
mov ecx, 0x461230
call fcn.00411e70
call fcn.004138c0
mov ecx, dword [esp + 0x650]
pop esi
pop ebp
call fcn.004332fd
add esp, 0x64c
ret