Function at 0x40e1c6
Capabilities:
Create process on windows

Disassembly:
mov eax, 0x4732f6
call fcn.0045357c
sub esp, 0x58
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 4], 1
push str.SOFTWAREMicrosoftWindowsCurrentVersionApp_Paths_
lea ecx, [ebp - 0x14]
call fcn.0041518e
mov byte [ebp - 4], 2
mov eax, dword [ebp + 0xc]
mov eax, dword [eax - 0xc]
xor ebx, ebx
cmp eax, ebx
jne 0x40e233
push ecx
mov ecx, esp
mov dword [ebp - 0x18], esp
lea eax, [ebp + 8]
push eax
call fcn.0040181b
mov byte [ebp - 4], 3
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x1c]
call fcn.0040ccf0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x14]
call fcn.00401436
mov byte [ebp - 4], bl
jmp 0x40e3fc
push 0x47c2e8
lea eax, [ebp + 0xc]
push eax
call fcn.00414b01
pop ecx
pop ecx
test al, al
je 0x40e24e
push str.chrome.exe
jmp 0x40e2b8
push 0x47c2cc
lea eax, [ebp + 0xc]
push eax
call fcn.00414b01
pop ecx
pop ecx
test al, al
je 0x40e269
push str.iexplore.exe
jmp 0x40e2b8
push 0x47c2ac
lea eax, [ebp + 0xc]
push eax
call fcn.00414b01
pop ecx
pop ecx
test al, al
je 0x40e284
push str.firefox.exe
jmp 0x40e2b8
push 0x47c290
lea eax, [ebp + 0xc]
push eax
call fcn.00414b01
pop ecx
pop ecx
test al, al
je 0x40e29f
push str.opera.exe
jmp 0x40e2b8
push 0x47c278
lea eax, [ebp + 0xc]
push eax
call fcn.00414b01
pop ecx
pop ecx
test al, al
je 0x40e2c0
push str.safari.exe
lea ecx, [ebp - 0x14]
call fcn.004147dd
mov byte [ebp - 4], 4
push ecx
mov ecx, esp
mov dword [ebp - 0x20], esp
push 0x47a98b
call fcn.0040b9c2
mov byte [ebp - 4], 5
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
lea eax, [ebp - 0x14]
push eax
call fcn.0040181b
mov byte [ebp - 4], 6
push ecx
mov ecx, esp
mov dword [ebp - 0x28], esp
push str.HKEY_LOCAL_MACHINE
call fcn.0040b9c2
mov byte [ebp - 4], 7
mov byte [ebp - 4], 6
mov esi, 0x49fabc
mov ecx, esi
call fcn.0042bf3c
push eax
lea eax, [ebp - 0x18]
push eax
mov byte [ebp - 4], 4
mov ecx, esi
call fcn.0042c8ad
mov byte [ebp - 4], 8
mov eax, dword [ebp - 0x18]
cmp dword [eax - 0xc], ebx
jne 0x40e35b
push ecx
mov ecx, esp
mov dword [ebp - 0x28], esp
lea eax, [ebp + 8]
push eax
call fcn.0040181b
mov byte [ebp - 4], 9
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x1c]
call fcn.0040ccf0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x18]
call fcn.00401436
jmp 0x40e21f
push 0x3c
pop esi
push esi
push ebx
lea eax, [ebp - 0x64]
push eax
call fcn.00454e40
add esp, 0xc
mov dword [ebp - 0x64], esi
mov byte [ebp - 4], 0xa
call fcn.00447763
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x20]
mov eax, dword [eax + 0x20]
mov dword [ebp - 0x5c], eax
mov dword [ebp - 4], 8
mov dword [ebp - 0x60], 0x40
mov eax, dword [ebp + 8]
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x48], 1
mov dword [ebp - 0x58], str.open
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x54], eax
lea eax, [ebp - 0x64]
push eax
call dword [sym.imp.SHELL32.dll_ShellExecuteExW]
test eax, eax
jne 0x40e3d9
push ecx
mov ecx, esp
mov dword [ebp - 0x28], esp
lea eax, [ebp + 8]
push eax
call fcn.0040181b
mov byte [ebp - 4], 0xc
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x1c]
call fcn.0040ccf0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x18]
call fcn.00401436
mov dword [ebp - 4], 2
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x14]
call fcn.00401436
mov byte [ebp - 4], 0
lea ecx, [ebp + 8]
call fcn.00401436
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0xc]
call fcn.00401436
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
leave
ret 8