Function at 0x40966e
Capabilities:
Create process on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x22c
mov eax, dword [0x4484a0]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, dword [ebp + 0x10]
lea ecx, [ebp - 0x214]
push ebx
mov byte [0x4497c8], 1
call fcn.0040200d
push str.Helper_started__Command_Line:
lea ecx, [ebp - 0x21c]
call fcn.0040200d
push 0
lea eax, [ebp - 0x214]
push eax
lea eax, [ebp - 0x21c]
push eax
push 1
call fcn.00402a61
mov ecx, dword [ebp - 0x21c]
add esp, 0x10
lea ecx, [ecx - 0x10]
call fcn.00401a18
mov ecx, dword [ebp - 0x214]
lea ecx, [ecx - 0x10]
call fcn.00401a18
test ebx, ebx
jne 0x4096ea
push 4
pop eax
jmp 0x409bef
push edi
lea ecx, [ebp - 0x224]
call fcn.00409bfe
push ebx
lea ecx, [ebp - 0x214]
call fcn.0040200d
lea eax, [ebp - 0x214]
push eax
lea ecx, [ebp - 0x220]
call fcn.00402129
mov ecx, dword [ebp - 0x214]
lea ecx, [ecx - 0x10]
call fcn.00401a18
lea ecx, [ebp - 0x224]
call fcn.00406f51
test eax, eax
je 0x409781
push str._ArmCleanup
lea ecx, [ebp - 0x21c]
call fcn.0040200d
push 0x436f68
lea ecx, [ebp - 0x214]
call fcn.0040200d
lea eax, [ebp - 0x21c]
push eax
lea eax, [ebp - 0x214]
push eax
call fcn.004076fd
pop ecx
pop ecx
mov ecx, dword [ebp - 0x214]
mov edi, eax
lea ecx, [ecx - 0x10]
call fcn.00401a18
mov ecx, dword [ebp - 0x21c]
jmp 0x409bd9
lea ecx, [ebp - 0x224]
call fcn.00406f1e
test eax, eax
jne 0x409bb8
call fcn.00407007
test al, al
jne 0x409bb8
lea ecx, [ebp - 0x224]
call fcn.00406fb9
test eax, eax
je 0x4097be
push ebx
call fcn.00408335
pop ecx
mov edi, eax
jmp 0x409be1
push esi
lea ecx, [ebp - 0x210]
call fcn.00401359
lea ecx, [ebp - 0x224]
call fcn.00406f85
mov esi, eax
mov dword [ebp - 0x214], esi
call fcn.0040be29
push eax
lea ecx, [ebp - 0x228]
call fcn.00401320
lea eax, [ebp - 0x228]
push eax
call fcn.004055d3
pop ecx
test eax, eax
jne 0x409838
push str.Helper_finished__get_adobearm.exe_path_failed
lea ecx, [ebp - 0x214]
call fcn.0040200d
push 0
lea eax, [ebp - 0x214]
push eax
push 1
call fcn.004031a3
mov ecx, dword [ebp - 0x214]
add esp, 0xc
lea ecx, [ecx - 0x10]
call fcn.00401a18
push 6
pop edi
jmp 0x409b9c
lea ecx, [ebp - 0x224]
call fcn.00406fed
test eax, eax
jne 0x40985a
lea ecx, [ebp - 0x224]
call fcn.00406f9f
test eax, eax
jne 0x40985a
xor ecx, ecx
jmp 0x40985d
xor ecx, ecx
inc ecx
test ecx, ecx
mov edx, 0x1388
mov eax, 0x15f90
cmovne eax, edx
push eax
lea eax, [ebp - 0x228]
push eax
call fcn.004092bc
mov edi, eax
pop ecx
pop ecx
test edi, edi
je 0x40992e
push str.IDS_ERROR_CATCHALL_MANUAL_DESCRIPTION
lea ecx, [ebp - 0x214]
call fcn.0040200d
push 0x4497f8
lea eax, [ebp - 0x214]
push eax
push ebx
call fcn.00404f81
mov ecx, dword [ebp - 0x214]
add esp, 0xc
lea ecx, [ecx - 0x10]
call fcn.00401a18
push str.Helper_finished__wait_for_adobearm.exe_to_exit_failed
lea ecx, [ebp - 0x214]
call fcn.0040200d
xor ebx, ebx
lea eax, [ebp - 0x214]
push ebx
push eax
push 1
call fcn.004031a3
mov ecx, dword [ebp - 0x214]
add esp, 0xc
lea ecx, [ecx - 0x10]
call fcn.00401a18
lea eax, [ebp - 0x215]
lea ecx, [ebp - 0x210]
push eax
test esi, esi
je 0x40990e
push ebx
push 0x437f64
mov byte [ebp - 0x215], bl
push 0x437f68
jmp 0x409924
push 0x437d74
push str.WaitAdobeArmExeExitError
mov byte [ebp - 0x215], 1
push str.PingFilesList
call fcn.00401a3e
jmp 0x409b9c
mov eax, dword [ebp - 0x220]
add eax, 0xfffffff0
push eax
call fcn.00402378
pop ecx
lea ecx, [ebp - 0x224]
lea esi, [eax + 0x10]
mov dword [ebp - 0x21c], esi
call fcn.00406fd3
test eax, eax
je 0x409a27
lea eax, [ebp - 0x21c]
push eax
call fcn.00408751
cmp dword [ebp - 0x214], 0
mov esi, eax
pop ecx
je 0x409a21
push str.Finished_ARM_self_update_for_RUM
lea ecx, [ebp - 0x214]
call fcn.0040200d
push 0
lea eax, [ebp - 0x214]
push eax
push 1
call fcn.004031a3
mov ecx, dword [ebp - 0x214]
add esp, 0xc
lea ecx, [ecx - 0x10]
call fcn.00401a18
lea eax, [ebp - 0x215]
mov byte [ebp - 0x215], 0
push eax
push 0
push 0x437f64
push 0x437f68
lea ecx, [ebp - 0x210]
call fcn.00401a3e
mov edi, str._ProcessSelfUpdateResult
push edi
call fcn.0041fcde
pop ecx
push eax
push edi
lea ecx, [ebp - 0x21c]
call fcn.0040353e
test esi, esi
je 0x4099f6
cmp esi, 0xbc2
mov esi, str.ERROR
jne 0x4099fb
mov esi, str.SUCCESS
push esi
call fcn.0041fcde
pop ecx
push eax
push esi
lea ecx, [ebp - 0x21c]
call fcn.00402296
lea eax, [ebp - 0x21c]
push eax
lea ecx, [ebp - 0x220]
call fcn.00402129
mov esi, dword [ebp - 0x21c]
call fcn.0040be29
push eax
lea ecx, [ebp - 0x22c]
call fcn.00401320
lea eax, [ebp - 0x22c]
push eax
lea ecx, [ebp - 0x224]
call fcn.00409f20
lea eax, [ebp - 0x22c]
push 0x449824
push eax
call fcn.00403f81
mov edi, str._BackFromArmUpdate
pop ecx
pop ecx
test al, al
jne 0x409b55
push edi
push esi
call fcn.0041fc9e
pop ecx
pop ecx
test eax, eax
je 0x409b55
push 5
push 0
push esi
push dword [ebp - 0x228]
push 0
call dword [sym.imp.USER32.dll_GetForegroundWindow]
push eax
call dword [sym.imp.SHELL32.dll_ShellExecuteW]
lea ecx, [ebp - 0x214]
cmp eax, 0x21
jl 0x409acf
push str.Re_launch_succeeded
call fcn.0040200d
push 0
lea eax, [ebp - 0x214]
push eax
push 2
call fcn.004031a3
mov ecx, dword [ebp - 0x214]
add esp, 0xc
lea ecx, [ecx - 0x10]
call fcn.00401a18
xor edi, edi
jmp 0x409b30
push str.Re_launch_failed
call fcn.0040200d
push 0
lea eax, [ebp - 0x214]
push eax
push 1
call fcn.004031a3
mov ecx, dword [ebp - 0x214]
add esp, 0xc
lea ecx, [ecx - 0x10]
call fcn.00401a18
push str.IDS_ERROR_CATCHALL_MANUAL_DESCRIPTION
lea ecx, [ebp - 0x214]
call fcn.0040200d
push 0x4497f8
lea eax, [ebp - 0x214]
push eax
push ebx
call fcn.00404f81
mov ecx, dword [ebp - 0x214]
add esp, 0xc
lea ecx, [ecx - 0x10]
call fcn.00401a18
push 2
pop edi
push str.Helper_finished
lea ecx, [ebp - 0x214]
call fcn.0040200d
push 0
lea eax, [ebp - 0x214]
push eax
push 1
call fcn.004031a3
add esp, 0xc
jmp 0x409b78
push edi
lea ecx, [ebp - 0x214]
call fcn.0040200d
lea eax, [ebp - 0x214]
push eax
lea eax, [ebp - 0x228]
push eax
call fcn.004076fd
pop ecx
pop ecx
mov edi, eax
mov ecx, dword [ebp - 0x214]
lea ecx, [ecx - 0x10]
call fcn.00401a18
mov ecx, dword [ebp - 0x22c]
lea ecx, [ecx - 0x10]
call fcn.00401a18
lea ecx, [esi - 0x10]
call fcn.00401a18
mov ecx, dword [ebp - 0x228]
lea ecx, [ecx - 0x10]
call fcn.00401a18
lea ecx, [ebp - 0x210]
call fcn.004014b0
pop esi
jmp 0x409be1
push ebx
lea ecx, [ebp - 0x214]
call fcn.0040200d
lea eax, [ebp - 0x214]
push eax
call fcn.00407bdd
pop ecx
mov ecx, dword [ebp - 0x214]
mov edi, eax
lea ecx, [ecx - 0x10]
call fcn.00401a18
lea ecx, [ebp - 0x224]
call fcn.00409c21
mov eax, edi
pop edi
mov ecx, dword [ebp - 4]
xor ecx, ebp
pop ebx
call fcn.0041aaa4
leave
ret 0x10