Function at 0x46e03d
Capabilities:
Create process on windows
Execute command

Disassembly:
push ebp
mov ebp, esp
push ebx
sub esp, 0x34
mov eax, dword [0x56d28c]
test eax, eax
jne 0x46e947
mov eax, dword [0x67db4c]
test eax, eax
je 0x46e06b
mov dword [esp], 0x106
call fcn.00449374
jmp 0x46e948
mov eax, dword [0x69cea8]
mov dword [0xa2cbf8], eax
mov eax, dword [0xa2cbf8]
test eax, eax
je 0x46e0a7
mov dword [0x521570], 0
mov dword [esp], 0
mov eax, dword [sym.imp.KERNEL32.dll_Sleep]
call eax
sub esp, 4
mov eax, dword [0x69cea8]
test eax, eax
setne al
test al, al
jne 0x46e088
mov dword [0xa2cbfc], 0
mov eax, dword [0x67dbdc]
test eax, eax
je 0x46e0cd
mov eax, dword [0x5212dc]
test eax, eax
je 0x46e0cd
mov dword [0xa2cbfc], 1
mov eax, dword [0xa2cc00]
test eax, eax
jne 0x46e0ef
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.0044aa8e
mov dword [0xa2cc00], eax
mov eax, dword [0xa2cc04]
test eax, eax
jne 0x46e111
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.0044aa8e
mov dword [0xa2cc04], eax
mov eax, dword [0xa2cc08]
test eax, eax
jne 0x46e133
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.0044aa8e
mov dword [0xa2cc08], eax
mov eax, dword [0xa2cc0c]
test eax, eax
jne 0x46e155
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.0044aa8e
mov dword [0xa2cc0c], eax
mov eax, dword [0xa2cc10]
test eax, eax
jne 0x46e177
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.0044aa8e
mov dword [0xa2cc10], eax
cmp dword [ebp + 0xc], 0
je 0x46e18e
mov eax, dword [ebp + 8]
mov eax, dword [eax + 4]
test eax, eax
jne 0x46e18e
mov dword [ebp + 0xc], 0
cmp dword [ebp + 0xc], 0
je 0x46e89a
mov eax, dword [0xa2cbfc]
test eax, eax
je 0x46e1ff
mov dword [esp + 4], 1
mov dword [esp], 0x53d7c7
call fcn.0044a90b
mov dword [esp + 4], eax
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.0044b3b9
mov edx, eax
mov eax, dword [0xa2cc00]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0044abf5
mov dword [0xa181b0], 1
mov eax, dword [0xa2cc00]
mov eax, dword [eax]
mov dword [esp], eax
call sub.msvcrt.dll_system
mov dword [0xa181b0], 0
jmp 0x46e913
call fcn.0046c331
test eax, eax
setne al
test al, al
je 0x46e733
mov eax, dword [0xa2cc04]
mov edx, dword [ebp + 8]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0044abf5
mov dword [esp], 0x536446
call fcn.0044a87a
mov edx, eax
mov eax, dword [0xa2cc0c]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0044abf5
mov eax, dword [0xa2cc04]
mov eax, dword [eax + 4]
test eax, eax
je 0x46e906
mov eax, dword [0xa2cc04]
mov dword [esp], eax
call fcn.0046c444
test eax, eax
sete al
test al, al
je 0x46e357
mov dword [esp + 4], 1
mov dword [esp], 0x53d7c7
call fcn.0044a90b
mov edx, eax
mov eax, dword [0xa2cc04]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0044b3b9
mov edx, eax
mov eax, dword [0xa2cc08]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0044abf5
mov dword [esp + 8], 0x3c
mov dword [esp + 4], 0
mov dword [esp], 0xa2cc20
call sub.msvcrt.dll_memset
mov dword [0xa2cc20], 0x3c
mov eax, dword [0xa2cc08]
mov eax, dword [eax]
mov dword [0xa2cc30], eax
mov dword [0xa2cc34], 0
mov dword [0xa2cc24], 0x440
mov dword [0xa2cc3c], 5
mov dword [esp], 0xa2cc20
mov eax, dword [sym.imp.SHELL32.DLL_ShellExecuteExA]
call eax
sub esp, 4
test eax, eax
setne al
test al, al
je 0x46e357
mov dword [0xa181b0], 1
mov eax, dword [0xa2cc58]
mov dword [esp + 4], 0xffffffff
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
call eax
sub esp, 8
mov eax, dword [0xa2cc58]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.dll_CloseHandle]
call eax
sub esp, 4
mov dword [0xa181b0], 0
jmp 0x46e913
mov dword [0xa2cc5c], 0
mov dword [0xa2cc60], 0
jmp 0x46e435
mov eax, dword [0xa2cc04]
mov edx, dword [eax]
mov eax, dword [0xa2cc5c]
add eax, edx
movzx eax, byte [eax]
cmp al, 0x22
jne 0x46e3a4
mov eax, dword [0xa2cc60]
test eax, eax
jne 0x46e39a
mov dword [0xa2cc60], 1
jmp 0x46e3a4
mov dword [0xa2cc60], 0
mov eax, dword [0xa2cc04]
mov edx, dword [eax]
mov eax, dword [0xa2cc5c]
add eax, edx
movzx eax, byte [eax]
cmp al, 0x20
jne 0x46e428
mov eax, dword [0xa2cc60]
test eax, eax
jne 0x46e428
mov eax, dword [0xa2cc04]
mov edx, dword [eax + 4]
mov eax, dword [0xa2cc5c]
mov ecx, edx
sub ecx, eax
mov eax, ecx
lea edx, [eax - 1]
mov eax, dword [0xa2cc04]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0044b803
mov edx, eax
mov eax, dword [0xa2cc0c]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0044abf5
mov edx, dword [0xa2cc5c]
mov eax, dword [0xa2cc04]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0044b73b
mov edx, eax
mov eax, dword [0xa2cc04]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0044abf5
jmp 0x46e44f
mov eax, dword [0xa2cc5c]
add eax, 1
mov dword [0xa2cc5c], eax
mov eax, dword [0xa2cc04]
mov edx, dword [eax + 4]
mov eax, dword [0xa2cc5c]
cmp edx, eax
setg al
test al, al
jne 0x46e370
mov eax, dword [0xa2cc04]
mov eax, dword [eax + 4]
test eax, eax
je 0x46e909
mov eax, dword [0xa2cc0c]
mov eax, dword [eax + 4]
test eax, eax
je 0x46e5ae
mov eax, dword [0xa2cc04]
mov dword [esp], eax
call fcn.0046c444
test eax, eax
sete al
test al, al
je 0x46e5ae
mov dword [esp + 4], 1
mov dword [esp], 0x53d7c7
call fcn.0044a90b
mov edx, eax
mov eax, dword [0xa2cc04]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0044b3b9
mov edx, eax
mov eax, dword [0xa2cc08]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0044abf5
mov dword [esp + 4], 1
mov dword [esp], 0x53d7c7
call fcn.0044a90b
mov edx, eax
mov eax, dword [0xa2cc0c]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0044b3b9
mov edx, eax
mov eax, dword [0xa2cc10]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0044abf5
mov dword [esp + 8], 0x3c
mov dword [esp + 4], 0
mov dword [esp], 0xa2cc20
call sub.msvcrt.dll_memset
mov dword [0xa2cc20], 0x3c
mov eax, dword [0xa2cc08]
mov eax, dword [eax]
mov dword [0xa2cc30], eax
mov eax, dword [0xa2cc10]
mov eax, dword [eax]
mov dword [0xa2cc34], eax
mov dword [0xa2cc24], 0x440
mov dword [0xa2cc3c], 5
mov dword [esp], 0xa2cc20
mov eax, dword [sym.imp.SHELL32.DLL_ShellExecuteExA]
call eax
sub esp, 4
test eax, eax
setne al
test al, al
je 0x46e5ae
mov dword [0xa181b0], 1
mov eax, dword [0xa2cc58]
mov dword [esp + 4], 0xffffffff
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
call eax
sub esp, 8
mov eax, dword [0xa2cc58]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.dll_CloseHandle]
call eax
sub esp, 4
mov dword [0xa181b0], 0
jmp 0x46e913
mov eax, dword [0xa2cc0c]
mov eax, dword [eax + 4]
test eax, eax
je 0x46e5eb
mov ebx, dword [0xa2cc0c]
mov dword [esp], 0x53d83a
call fcn.0044a87a
mov dword [esp + 4], ebx
mov dword [esp], eax
call fcn.0044b3b9
mov edx, eax
mov eax, dword [0xa2cc0c]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0044abf5
mov edx, dword [0xa2cc0c]
mov eax, dword [0xa2cc04]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0044b3b9
mov edx, eax
mov eax, dword [0xa2cc00]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0044abf5
mov ebx, dword [0xa2cc00]
mov dword [esp], str.__c
call fcn.0044a87a
mov dword [esp + 4], ebx
mov dword [esp], eax
call fcn.0044b3b9
mov edx, eax
mov eax, dword [0xa2cc00]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0044abf5
mov dword [esp + 4], 1
mov dword [esp], 0x53d7c7
call fcn.0044a90b
mov edx, eax
mov eax, dword [0xa2cc00]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0044b3b9
mov edx, eax
mov eax, dword [0xa2cc00]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0044abf5
mov dword [esp + 8], 0x3c
mov dword [esp + 4], 0
mov dword [esp], 0xa2cc20
call sub.msvcrt.dll_memset
mov dword [0xa2cc20], 0x3c
mov dword [0xa2cc30], 0x521936
mov eax, dword [0xa2cc00]
mov eax, dword [eax]
mov dword [0xa2cc34], eax
mov dword [0xa2cc24], 0x440
mov dword [0xa2cc3c], 5
mov dword [esp], 0xa2cc20
mov eax, dword [sym.imp.SHELL32.DLL_ShellExecuteExA]
call eax
sub esp, 4
test eax, eax
setne al
test al, al
je 0x46e90c
mov dword [0xa181b0], 1
mov eax, dword [0xa2cc58]
mov dword [esp + 4], 0xffffffff
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
call eax
sub esp, 8
mov eax, dword [0xa2cc58]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.dll_CloseHandle]
call eax
sub esp, 4
mov dword [0xa181b0], 0
jmp 0x46e913
mov dword [esp], str.command.com__c
call fcn.0044a87a
mov edx, dword [ebp + 8]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0044b3b9
mov edx, eax
mov eax, dword [0xa2cc00]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0044abf5
mov dword [esp + 4], 1
mov dword [esp], 0x53d7c7
call fcn.0044a90b
mov edx, eax
mov eax, dword [0xa2cc00]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0044b3b9
mov edx, eax
mov eax, dword [0xa2cc00]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0044abf5
mov dword [esp + 8], 0x44
mov dword [esp + 4], 0
mov dword [esp], 0xa2cc80
call sub.msvcrt.dll_memset
mov dword [0xa2cc80], 0x44
mov dword [esp + 8], 0x10
mov dword [esp + 4], 0
mov dword [esp], 0xa2ccc4
call sub.msvcrt.dll_memset
mov eax, dword [0xa2cc00]
mov eax, dword [eax]
mov dword [esp + 0x24], 0xa2ccc4
mov dword [esp + 0x20], 0xa2cc80
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0x10
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov dword [esp], 0
mov eax, dword [sym.imp.KERNEL32.dll_CreateProcessA]
call eax
sub esp, 0x28
test eax, eax
setne al
test al, al
je 0x46e90f
mov dword [0xa181b0], 1
mov eax, dword [0xa2ccc4]
mov dword [esp + 4], 0xffffffff
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
call eax
sub esp, 8
mov eax, dword [0xa2ccc4]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.dll_CloseHandle]
call eax
sub esp, 4
mov eax, dword [0xa2ccc8]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.dll_CloseHandle]
call eax
sub esp, 4
mov dword [0xa181b0], 0
jmp 0x46e913
mov eax, dword [0xa2cbfc]
test eax, eax
jne 0x46e8aa
mov eax, dword [sym.imp.KERNEL32.dll_AllocConsole]
call eax
mov dword [esp + 4], 4
mov dword [esp], 0x53db8c
call fcn.0044a90b
mov edx, eax
mov eax, dword [0xa2cc00]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0044abf5
mov dword [0xa181b0], 1
mov eax, dword [0xa2cc00]
mov eax, dword [eax]
mov dword [esp], eax
call sub.msvcrt.dll_system
mov dword [0xa181b0], 0
mov eax, dword [0xa2cbfc]
test eax, eax
jne 0x46e912
mov eax, dword [sym.imp.KERNEL32.dll_FreeConsole]
call eax
jmp 0x46e912
nop
jmp 0x46e913
nop
jmp 0x46e913
nop
jmp 0x46e913
nop
jmp 0x46e913
nop
mov eax, dword [0xa2cbf8]
test eax, eax
je 0x46e948
mov eax, dword [0xa2cbf8]
mov dword [0x521570], eax
mov dword [esp], 0
mov eax, dword [sym.imp.KERNEL32.dll_Sleep]
call eax
sub esp, 4
mov eax, dword [0x69cea8]
test eax, eax
sete al
test al, al
jne 0x46e926
jmp 0x46e948
nop
mov ebx, dword [ebp - 4]
leave
ret