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

Disassembly:
push ebp
mov ebp, esp
push ebx
sub esp, 0x34
mov eax, dword [0x58128c]
test eax, eax
jne 0x482bbf
mov eax, dword [0x691b4c]
test eax, eax
je 0x4822e3
mov dword [esp], 0x106
call fcn.0045d5ec
jmp 0x482bc0
mov eax, dword [0x6b1448]
mov dword [0xa41198], eax
mov eax, dword [0xa41198]
test eax, eax
je 0x48231f
mov dword [0x535570], 0
mov dword [esp], 0
mov eax, dword [sym.imp.KERNEL32.dll_Sleep]
call eax
sub esp, 4
mov eax, dword [0x6b1448]
test eax, eax
setne al
test al, al
jne 0x482300
mov dword [0xa4119c], 0
mov eax, dword [0x691c54]
test eax, eax
je 0x482345
mov eax, dword [0x5352dc]
test eax, eax
je 0x482345
mov dword [0xa4119c], 1
mov eax, dword [0xa411a0]
test eax, eax
jne 0x482367
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.0045ed06
mov dword [0xa411a0], eax
mov eax, dword [0xa411a4]
test eax, eax
jne 0x482389
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.0045ed06
mov dword [0xa411a4], eax
mov eax, dword [0xa411a8]
test eax, eax
jne 0x4823ab
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.0045ed06
mov dword [0xa411a8], eax
mov eax, dword [0xa411ac]
test eax, eax
jne 0x4823cd
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.0045ed06
mov dword [0xa411ac], eax
mov eax, dword [0xa411b0]
test eax, eax
jne 0x4823ef
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.0045ed06
mov dword [0xa411b0], eax
cmp dword [ebp + 0xc], 0
je 0x482406
mov eax, dword [ebp + 8]
mov eax, dword [eax + 4]
test eax, eax
jne 0x482406
mov dword [ebp + 0xc], 0
cmp dword [ebp + 0xc], 0
je 0x482b12
mov eax, dword [0xa4119c]
test eax, eax
je 0x482477
mov dword [esp + 4], 1
mov dword [esp], 0x551587
call fcn.0045eb83
mov dword [esp + 4], eax
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.0045f631
mov edx, eax
mov eax, dword [0xa411a0]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0045ee6d
mov dword [0xa2c750], 1
mov eax, dword [0xa411a0]
mov eax, dword [eax]
mov dword [esp], eax
call sub.msvcrt.dll_system
mov dword [0xa2c750], 0
jmp 0x482b8b
call fcn.004805a9
test eax, eax
setne al
test al, al
je 0x4829ab
mov eax, dword [0xa411a4]
mov edx, dword [ebp + 8]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0045ee6d
mov dword [esp], 0x54a206
call fcn.0045eaf2
mov edx, eax
mov eax, dword [0xa411ac]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0045ee6d
mov eax, dword [0xa411a4]
mov eax, dword [eax + 4]
test eax, eax
je 0x482b7e
mov eax, dword [0xa411a4]
mov dword [esp], eax
call fcn.004806bc
test eax, eax
sete al
test al, al
je 0x4825cf
mov dword [esp + 4], 1
mov dword [esp], 0x551587
call fcn.0045eb83
mov edx, eax
mov eax, dword [0xa411a4]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0045f631
mov edx, eax
mov eax, dword [0xa411a8]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0045ee6d
mov dword [esp + 8], 0x3c
mov dword [esp + 4], 0
mov dword [esp], 0xa411c0
call sub.msvcrt.dll_memset
mov dword [0xa411c0], 0x3c
mov eax, dword [0xa411a8]
mov eax, dword [eax]
mov dword [0xa411d0], eax
mov dword [0xa411d4], 0
mov dword [0xa411c4], 0x440
mov dword [0xa411dc], 5
mov dword [esp], 0xa411c0
mov eax, dword [sym.imp.SHELL32.DLL_ShellExecuteExA]
call eax
sub esp, 4
test eax, eax
setne al
test al, al
je 0x4825cf
mov dword [0xa2c750], 1
mov eax, dword [0xa411f8]
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 [0xa411f8]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.dll_CloseHandle]
call eax
sub esp, 4
mov dword [0xa2c750], 0
jmp 0x482b8b
mov dword [0xa411fc], 0
mov dword [0xa41200], 0
jmp 0x4826ad
mov eax, dword [0xa411a4]
mov edx, dword [eax]
mov eax, dword [0xa411fc]
add eax, edx
movzx eax, byte [eax]
cmp al, 0x22
jne 0x48261c
mov eax, dword [0xa41200]
test eax, eax
jne 0x482612
mov dword [0xa41200], 1
jmp 0x48261c
mov dword [0xa41200], 0
mov eax, dword [0xa411a4]
mov edx, dword [eax]
mov eax, dword [0xa411fc]
add eax, edx
movzx eax, byte [eax]
cmp al, 0x20
jne 0x4826a0
mov eax, dword [0xa41200]
test eax, eax
jne 0x4826a0
mov eax, dword [0xa411a4]
mov edx, dword [eax + 4]
mov eax, dword [0xa411fc]
mov ecx, edx
sub ecx, eax
mov eax, ecx
lea edx, [eax - 1]
mov eax, dword [0xa411a4]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0045fa7b
mov edx, eax
mov eax, dword [0xa411ac]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0045ee6d
mov edx, dword [0xa411fc]
mov eax, dword [0xa411a4]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0045f9b3
mov edx, eax
mov eax, dword [0xa411a4]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0045ee6d
jmp 0x4826c7
mov eax, dword [0xa411fc]
add eax, 1
mov dword [0xa411fc], eax
mov eax, dword [0xa411a4]
mov edx, dword [eax + 4]
mov eax, dword [0xa411fc]
cmp edx, eax
setg al
test al, al
jne 0x4825e8
mov eax, dword [0xa411a4]
mov eax, dword [eax + 4]
test eax, eax
je 0x482b81
mov eax, dword [0xa411ac]
mov eax, dword [eax + 4]
test eax, eax
je 0x482826
mov eax, dword [0xa411a4]
mov dword [esp], eax
call fcn.004806bc
test eax, eax
sete al
test al, al
je 0x482826
mov dword [esp + 4], 1
mov dword [esp], 0x551587
call fcn.0045eb83
mov edx, eax
mov eax, dword [0xa411a4]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0045f631
mov edx, eax
mov eax, dword [0xa411a8]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0045ee6d
mov dword [esp + 4], 1
mov dword [esp], 0x551587
call fcn.0045eb83
mov edx, eax
mov eax, dword [0xa411ac]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0045f631
mov edx, eax
mov eax, dword [0xa411b0]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0045ee6d
mov dword [esp + 8], 0x3c
mov dword [esp + 4], 0
mov dword [esp], 0xa411c0
call sub.msvcrt.dll_memset
mov dword [0xa411c0], 0x3c
mov eax, dword [0xa411a8]
mov eax, dword [eax]
mov dword [0xa411d0], eax
mov eax, dword [0xa411b0]
mov eax, dword [eax]
mov dword [0xa411d4], eax
mov dword [0xa411c4], 0x440
mov dword [0xa411dc], 5
mov dword [esp], 0xa411c0
mov eax, dword [sym.imp.SHELL32.DLL_ShellExecuteExA]
call eax
sub esp, 4
test eax, eax
setne al
test al, al
je 0x482826
mov dword [0xa2c750], 1
mov eax, dword [0xa411f8]
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 [0xa411f8]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.dll_CloseHandle]
call eax
sub esp, 4
mov dword [0xa2c750], 0
jmp 0x482b8b
mov eax, dword [0xa411ac]
mov eax, dword [eax + 4]
test eax, eax
je 0x482863
mov ebx, dword [0xa411ac]
mov dword [esp], 0x5515fa
call fcn.0045eaf2
mov dword [esp + 4], ebx
mov dword [esp], eax
call fcn.0045f631
mov edx, eax
mov eax, dword [0xa411ac]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0045ee6d
mov edx, dword [0xa411ac]
mov eax, dword [0xa411a4]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0045f631
mov edx, eax
mov eax, dword [0xa411a0]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0045ee6d
mov ebx, dword [0xa411a0]
mov dword [esp], str.__c
call fcn.0045eaf2
mov dword [esp + 4], ebx
mov dword [esp], eax
call fcn.0045f631
mov edx, eax
mov eax, dword [0xa411a0]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0045ee6d
mov dword [esp + 4], 1
mov dword [esp], 0x551587
call fcn.0045eb83
mov edx, eax
mov eax, dword [0xa411a0]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0045f631
mov edx, eax
mov eax, dword [0xa411a0]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0045ee6d
mov dword [esp + 8], 0x3c
mov dword [esp + 4], 0
mov dword [esp], 0xa411c0
call sub.msvcrt.dll_memset
mov dword [0xa411c0], 0x3c
mov dword [0xa411d0], 0x535936
mov eax, dword [0xa411a0]
mov eax, dword [eax]
mov dword [0xa411d4], eax
mov dword [0xa411c4], 0x440
mov dword [0xa411dc], 5
mov dword [esp], 0xa411c0
mov eax, dword [sym.imp.SHELL32.DLL_ShellExecuteExA]
call eax
sub esp, 4
test eax, eax
setne al
test al, al
je 0x482b84
mov dword [0xa2c750], 1
mov eax, dword [0xa411f8]
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 [0xa411f8]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.dll_CloseHandle]
call eax
sub esp, 4
mov dword [0xa2c750], 0
jmp 0x482b8b
mov dword [esp], str.command.com__c
call fcn.0045eaf2
mov edx, dword [ebp + 8]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0045f631
mov edx, eax
mov eax, dword [0xa411a0]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0045ee6d
mov dword [esp + 4], 1
mov dword [esp], 0x551587
call fcn.0045eb83
mov edx, eax
mov eax, dword [0xa411a0]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0045f631
mov edx, eax
mov eax, dword [0xa411a0]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0045ee6d
mov dword [esp + 8], 0x44
mov dword [esp + 4], 0
mov dword [esp], 0xa41220
call sub.msvcrt.dll_memset
mov dword [0xa41220], 0x44
mov dword [esp + 8], 0x10
mov dword [esp + 4], 0
mov dword [esp], 0xa41264
call sub.msvcrt.dll_memset
mov eax, dword [0xa411a0]
mov eax, dword [eax]
mov dword [esp + 0x24], 0xa41264
mov dword [esp + 0x20], 0xa41220
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 0x482b87
mov dword [0xa2c750], 1
mov eax, dword [0xa41264]
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 [0xa41264]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.dll_CloseHandle]
call eax
sub esp, 4
mov eax, dword [0xa41268]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.dll_CloseHandle]
call eax
sub esp, 4
mov dword [0xa2c750], 0
jmp 0x482b8b
mov eax, dword [0xa4119c]
test eax, eax
jne 0x482b22
mov eax, dword [sym.imp.KERNEL32.dll_AllocConsole]
call eax
mov dword [esp + 4], 4
mov dword [esp], 0x55194c
call fcn.0045eb83
mov edx, eax
mov eax, dword [0xa411a0]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0045ee6d
mov dword [0xa2c750], 1
mov eax, dword [0xa411a0]
mov eax, dword [eax]
mov dword [esp], eax
call sub.msvcrt.dll_system
mov dword [0xa2c750], 0
mov eax, dword [0xa4119c]
test eax, eax
jne 0x482b8a
mov eax, dword [sym.imp.KERNEL32.dll_FreeConsole]
call eax
jmp 0x482b8a
nop
jmp 0x482b8b
nop
jmp 0x482b8b
nop
jmp 0x482b8b
nop
jmp 0x482b8b
nop
mov eax, dword [0xa41198]
test eax, eax
je 0x482bc0
mov eax, dword [0xa41198]
mov dword [0x535570], eax
mov dword [esp], 0
mov eax, dword [sym.imp.KERNEL32.dll_Sleep]
call eax
sub esp, 4
mov eax, dword [0x6b1448]
test eax, eax
sete al
test al, al
jne 0x482b9e
jmp 0x482bc0
nop
mov ebx, dword [ebp - 4]
leave
ret