Function at 0x462ddc
Capabilities:
Create process on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x6c
push ebx
push esi
mov dword [ebp - 0x10], ecx
push edi
lea ecx, [ebp - 0x30]
call fcn.0040e959
xor ecx, ecx
push 0x3c
push ecx
lea eax, [ebp - 0x6c]
push eax
mov dword [ebp - 4], ecx
mov dword [ebp - 8], ecx
mov dword [ebp - 0xc], 1
call fcn.00422460
mov ebx, dword [ebp + 0x10]
mov edi, dword [ebp + 0xc]
add esp, 0xc
cmp ebx, 2
jb 0x462e4c
mov eax, dword [edi + 4]
mov esi, dword [eax + 4]
mov ecx, esi
call fcn.0040957a
mov eax, dword [esi + 8]
xor ecx, ecx
mov eax, dword [eax]
cmp word [eax], cx
je 0x462e4c
mov eax, dword [edi + 4]
mov esi, dword [eax + 4]
mov ecx, esi
call fcn.0040957a
mov eax, dword [esi + 8]
mov ecx, dword [eax]
call fcn.00403ab8
mov dword [ebp - 4], eax
cmp ebx, 3
jb 0x462e6b
mov ecx, dword [edi + 4]
mov esi, dword [ecx + 8]
mov ecx, esi
call fcn.0040957a
mov eax, dword [esi + 8]
mov ecx, dword [eax]
call fcn.00403ab8
mov dword [ebp - 8], eax
cmp ebx, 4
jb 0x462eae
mov ecx, dword [edi + 4]
mov esi, dword [ecx + 0xc]
mov ecx, esi
call fcn.0040957a
mov eax, dword [esi + 8]
xor esi, esi
mov eax, dword [eax]
cmp word [eax], si
je 0x462eb0
mov eax, dword [edi + 4]
push 0x29
mov esi, dword [eax + 0xc]
mov ecx, esi
call fcn.0040283e
test al, al
jne 0x462eae
mov ecx, esi
call fcn.0040957a
push dword [esi + 8]
lea ecx, [ebp - 0x30]
call fcn.0040daca
xor esi, esi
cmp ebx, 5
jb 0x462ec6
mov eax, dword [edi + 4]
mov ecx, dword [eax + 0x10]
call fcn.0040df58
movzx eax, ax
mov dword [ebp - 0xc], eax
push 0x3c
pop ebx
push ebx
lea eax, [ebp - 0x6c]
push esi
push eax
call fcn.00422460
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x60], eax
mov eax, dword [edi + 4]
mov dword [ebp - 0x6c], ebx
mov dword [ebp - 0x68], pe_nt_image_headers32
mov dword [ebp - 0x64], esi
mov esi, dword [eax]
add esp, 0xc
mov ecx, esi
call fcn.0040957a
mov eax, dword [esi + 8]
mov esi, dword [ebp - 4]
mov eax, dword [eax]
mov ebx, dword [ebp - 8]
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x50], eax
lea eax, [ebp - 0x6c]
push eax
mov dword [ebp - 0x58], esi
mov dword [ebp - 0x54], ebx
call dword [sym.imp.SHELL32.DLL_ShellExecuteExW]
mov edi, eax
test esi, esi
je 0x462f27
push esi
call fcn.00420c6e
pop ecx
test ebx, ebx
je 0x462f32
push ebx
call fcn.00420c6e
pop ecx
test edi, edi
jne 0x462f5e
mov edx, dword [ebp - 0x10]
xor ebx, ebx
mov eax, dword [edx]
push ebx
mov ecx, dword [eax + 4]
inc edi
push edi
add ecx, edx
call fcn.0044e3d6
mov esi, dword [ebp + 0x14]
mov ecx, esi
call fcn.00413740
mov dword [esi + 0xc], edi
mov dword [esi], ebx
jmp 0x462ff7
cmp byte [ebp + 8], 0
je 0x462f75
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x34]
mov dword [edx + 0x470], eax
jmp 0x462ff7
mov esi, dword [ebp + 0x14]
mov ecx, esi
call fcn.00413740
or dword [esi], 0xffffffff
xor edi, edi
inc edi
cmp dword [ebp - 0x34], 0
mov dword [esi + 0xc], edi
je 0x462ff7
xor eax, eax
lea ecx, [ebp - 0x20]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x18], eax
call fcn.00462d9f
test al, al
je 0x462fdf
push dword [ebp - 0x34]
lea ecx, [ebp - 0x20]
call fcn.004603c8
call eax
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
mov ecx, esi
addsd xmm0, qword [eax*8 + 0x4b7560]
movsd qword [ebp - 0x14], xmm0
call fcn.00413740
movsd xmm0, qword [ebp - 0x14]
mov dword [esi + 0xc], 3
movsd qword [esi], xmm0
push dword [ebp - 0x34]
call dword [sym.imp.KERNEL32.DLL_CloseHandle]
cmp dword [ebp - 0x20], 0
je 0x462ff7
push dword [ebp - 0x20]
call dword [sym.imp.KERNEL32.DLL_FreeLibrary]
lea ecx, [ebp - 0x30]
call fcn.00406ea2
pop edi
pop esi
xor eax, eax
pop ebx
leave
ret 0x10