Function at 0x4ad03efe
Capabilities:
Create process on windows

Disassembly:
push 0x174
push 0x4ad041a8
call fcn.4ad01509
mov eax, dword [ebp + 8]
mov dword [ebp - 0x7c], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x74], eax
mov esi, dword [ebp + 0x18]
mov dword [ebp - 0x68], esi
xor ebx, ebx
mov dword [ebp - 0x84], ebx
mov dword [ebp - 0x9c], ebx
mov dword [ebp - 0x6c], ebx
mov dword [ebp - 0x78], 0x20
lea eax, [ebp - 0x78]
push eax
push ebx
xor edi, edi
inc edi
push edi
lea eax, [ebp - 0x140]
push eax
call dword [sym.imp.KERNEL32.dll_InitializeProcThreadAttributeList]
cmp eax, ebx
je 0x4ad15702
mov dword [ebp - 0x80], edi
push ebx
push ebx
push 4
lea eax, [ebp - 0x80]
push eax
push 0x60001
push ebx
lea eax, [ebp - 0x140]
push eax
call dword [sym.imp.KERNEL32.dll_UpdateProcThreadAttribute]
cmp eax, ebx
je 0x4ad1571a
push 0x48
pop esi
push esi
push ebx
lea eax, [ebp - 0xe4]
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
lea eax, [ebp - 0x140]
mov dword [ebp - 0xa0], eax
mov dword [ebp - 0xe4], esi
mov eax, dword [ebp + 0x1c]
mov dword [ebp - 0xd8], eax
mov dword [ebp - 0xd4], ebx
mov dword [ebp - 0xd0], edi
push 0x64
pop eax
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0xc8], eax
mov dword [ebp - 0xb8], ebx
mov eax, edi
mov word [ebp - 0xb4], ax
mov dword [ebp - 0x184], 0x44
lea eax, [ebp - 0x184]
push eax
call dword [sym.imp.KERNEL32.dll_GetStartupInfoW]
mov eax, dword [ebp - 0x17c]
mov dword [ebp - 0xdc], eax
mov dword [ebp - 4], ebx
mov esi, 0x4ad03154
push esi
call fcn.4ad0308d
cmp eax, ebx
jne 0x4ad0400e
mov eax, 0x4ad03c0c
push eax
call fcn.4ad01b82
mov dword [ebp - 0x6c], eax
cmp eax, ebx
je 0x4ad1573a
cmp dword [0x4ad240d8], ebx
jne 0x4ad04033
cmp dword [0x4ad240dc], ebx
je 0x4ad0ca68
push 0x5c
push dword [ebp - 0x68]
call fcn.4ad01b5c
cmp eax, ebx
je 0x4ad04055
push 0x4ad0418c
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpW]
test eax, eax
je 0x4ad1574f
mov eax, dword [0x4ad240b4]
cmp eax, ebx
je 0x4ad04067
cmp dword [eax + 0x30], ebx
jne 0x4ad1575f
lea eax, [ebp - 0x98]
push eax
lea eax, [ebp - 0xe4]
push eax
mov esi, 0x4ad25220
push esi
push ebx
push 0x80000
push edi
push ebx
push ebx
push dword [ebp - 0x74]
push dword [ebp - 0x68]
call dword [sym.imp.KERNEL32.dll_CreateProcessW]
mov dword [ebp - 0x64], eax
cmp eax, ebx
je 0x4ad15790
mov eax, dword [ebp - 0x98]
mov dword [ebp - 0x60], eax
push dword [ebp - 0x94]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push dword [ebp - 0x6c]
push 0x4ad03154
call fcn.4ad01730
cmp dword [ebp - 0x64], ebx
je 0x4ad157a3
mov ecx, dword [ebp - 0x60]
mov esi, ecx
and esi, edi
mov eax, ecx
shr eax, 1
and eax, edi
cmp ecx, ebx
je 0x4ad0ca7a
cmp byte [0x4ad24081], bl
je 0x4ad040ff
cmp dword [0x4ad240b4], ebx
jne 0x4ad040ff
cmp dword [0x4ad240d8], ebx
jne 0x4ad040ff
cmp dword [0x4ad240dc], ebx
je 0x4ad158d3
mov dword [ebp - 0x70], ebx
mov dword [0x4ad241b4], edi
cmp dword [ebp + 0xc], ebx
jne 0x4ad0ca49
push ecx
call fcn.4ad03d1e
mov dword [0x4ad24180], eax
mov dword [ebp - 0x60], ebx
mov edi, eax
mov dword [ebp - 0x70], edi
push edi
push 0x4ad04180
push 0x14
lea eax, [ebp - 0x5c]
push eax
call fcn.4ad01799
add esp, 0x10
lea eax, [ebp - 0x5c]
push eax
push str.ExitCode
call fcn.4ad01730
lea eax, [edi - 0x20]
cmp eax, 0x5e
jbe 0x4ad158fe
push 0x4ad03c18
push str.ExitCodeAscii
call fcn.4ad01730
cmp esi, ebx
jne 0x4ad1591b
mov dword [ebp - 4], 0xfffffffe
call fcn.4ad041d5
mov eax, dword [ebp - 0x70]
call fcn.4ad013be
ret 0x18
cmp dword [ebp + 0xc], 4
je 0x4ad15925
cmp dword [ebp + 0xc], 2
jne 0x4ad04169
mov dword [0x4ad24178], ecx
jmp 0x4ad04169
mov eax, dword [0x4ad240b4]
cmp eax, ebx
jne 0x4ad04033
jmp 0x4ad04067
mov dword [ebp + 0xc], 4
jmp 0x4ad040ff
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [0x4ad24120], eax
push esi
call fcn.4ad13a1b
mov eax, edi
jmp 0x4ad04178
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [0x4ad24120], eax
push esi
call fcn.4ad13a1b
lea eax, [ebp - 0x140]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteProcThreadAttributeList]
jmp 0x4ad15713
push 0xfffffffffffffffe
lea eax, [ebp - 0x10]
push eax
push 0x4ad240ac
call sub.msvcrt.dll__local_unwind4
add esp, 0xc
jmp 0x4ad15713
push 0x4ad0a130
push esi
call fcn.4ad1c961
jmp 0x4ad04055
lea ecx, [ebp - 0x98]
push ecx
lea ecx, [ebp - 0xe4]
push ecx
mov esi, 0x4ad25220
push esi
push ebx
push 0x80000
push edi
push ebx
push ebx
push dword [ebp - 0x74]
push dword [ebp - 0x68]
push dword [eax + 0x30]
call dword [sym.imp.ADVAPI32.dll_CreateProcessAsUserW]
jmp 0x4ad04090
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x70], eax
mov dword [0x4ad24120], eax
jmp 0x4ad040b0
cmp byte [0x4ad24081], bl
je 0x4ad157b7
cmp dword [0x4ad24120], 0xc1
je 0x4ad157c7
cmp dword [0x4ad24120], 0x2e4
jne 0x4ad15897
push 0x3c
pop edi
push edi
push ebx
lea eax, [ebp - 0x120]
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
mov dword [ebp - 0x120], edi
mov dword [ebp - 0x11c], 0x8140
call dword [sym.imp.KERNEL32.dll_GetConsoleWindow]
mov dword [ebp - 0x118], eax
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x110], eax
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax + 0x3c]
mov dword [ebp - 0x10c], eax
mov dword [ebp - 0x108], esi
movzx eax, word [ebp - 0xb4]
mov dword [ebp - 0x104], eax
mov dword [ebp - 4], 1
lea eax, [ebp - 0x120]
push eax
call dword [sym.imp.SHELL32.dll_ShellExecuteExW]
mov dword [ebp - 0x64], eax
cmp eax, ebx
je 0x4ad15845
mov eax, dword [ebp - 0xe8]
mov dword [ebp - 0x60], eax
jmp 0x4ad15891
mov eax, dword [ebp - 0x100]
cmp eax, ebx
jne 0x4ad1585b
mov dword [0x4ad24120], 8
jmp 0x4ad15891
cmp eax, 0x20
jne 0x4ad1586c
mov dword [0x4ad24120], 2
jmp 0x4ad15891
mov dword [0x4ad24120], eax
jmp 0x4ad15891
mov dword [ebp - 4], ebx
xor edi, edi
inc edi
cmp dword [ebp - 0x64], ebx
jne 0x4ad040c6
push 0x208
call fcn.4ad018b8
mov esi, eax
cmp esi, ebx
je 0x4ad1573a
push dword [ebp - 0x68]
push 0x104
push esi
call fcn.4ad017fb
push esi
call fcn.4ad13a1b
push esi
call fcn.4ad013cf
jmp 0x4ad1573a
cmp dword [ebp + 0xc], ebx
jne 0x4ad040ff
cmp eax, ebx
jne 0x4ad0ca7a
push ecx
call fcn.4ad1d3b1
push 2
pop ecx
cmp cx, ax
mov ecx, dword [ebp - 0x60]
je 0x4ad0ca7a
jmp 0x4ad040ff
push edi
push 0x4ad1593c
push 0xc
lea eax, [ebp - 0x34]
push eax
call fcn.4ad01799
add esp, 0x10
lea eax, [ebp - 0x34]
push eax
jmp 0x4ad04157
call fcn.4ad1cb35
jmp 0x4ad04169
cmp ecx, ebx
je 0x4ad04169
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x60], ebx
jmp 0x4ad04169