Function at 0x140001380
Capabilities:
Create thread
Enumerate processes
Inject dll
Inject thread

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x230]
sub rsp, 0x330
mov rax, qword [0x140006040]
xor rax, rsp
mov qword [rbp + 0x228], rax
xor r14d, r14d
lea rdx, [0x140006768]
lea rcx, [rbp + 0x1e8]
call fcn.140001fe0
nop
lea rdx, [rbp + 0x1e8]
cmp qword [rbp + 0x200], 0xf
cmova rdx, qword [rbp + 0x1e8]
mov r8, qword [rbp + 0x1f8]
add r8, rdx
lea rdx, [rbp + 0x1e8]
cmp qword [rbp + 0x200], 0xf
cmova rdx, qword [rbp + 0x1e8]
lea rcx, [rbp + 0x1c8]
call fcn.140001c00
nop
lea rdx, [rbp + 0x1c8]
cmp qword [rbp + 0x1e0], 7
cmova rdx, qword [rbp + 0x1c8]
mov rax, qword [rbp + 0x1d8]
lea rsi, [rdx + rax*2]
lea rbx, [rbp + 0x1c8]
cmova rbx, qword [rbp + 0x1c8]
xorps xmm0, xmm0
movups xmmword [rbp + 0x188], xmm0
mov qword [rbp + 0x198], r14
cmp rbx, rsi
jne 0x140001473
mov eax, 0xf
mov qword [rbp + 0x1a0], rax
mov byte [rbp + 0x188], r14b
jmp 0x140001596
sub rsi, rbx
sar rsi, 1
mov qword [rbp + 0x1a0], 0xf
movabs rax, 0x7fffffffffffffff
cmp rsi, rax
ja 0x140001b00
mov edi, 0xf
cmp rsi, rdi
jbe 0x140001547
mov rdi, rsi
or rdi, 0xf
cmp rdi, rax
jbe 0x1400014f2
mov rdi, rax
movabs rax, 0x8000000000000000
add rax, 0x27
mov rcx, rax
call fcn.140002230
mov rcx, rax
test rax, rax
je 0x140001a04
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
mov qword [rbp + 0x188], rax
mov qword [rbp + 0x1a0], rdi
jmp 0x14000154e
mov eax, 0x16
cmp rdi, rax
cmovb rdi, rax
lea rcx, [rdi + 1]
test rcx, rcx
jne 0x14000151a
mov rax, r14
mov qword [rbp + 0x188], rax
mov qword [rbp + 0x1a0], rdi
jmp 0x14000154e
cmp rcx, 0x1000
jb 0x140001532
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140001b06
jmp 0x1400014c2
call fcn.140002230
mov qword [rbp + 0x188], rax
mov qword [rbp + 0x1a0], rdi
jmp 0x14000154e
mov rax, qword [rbp + 0x188]
lea r8, [rbp + 0x188]
cmp rdi, 0xf
cmova r8, rax
mov rcx, r8
mov rdx, rsi
test rsi, rsi
je 0x140001583
nop dword [rax + rax]
movzx eax, byte [rbx]
mov byte [rcx], al
lea rcx, [rcx + 1]
lea rbx, [rbx + 2]
sub rdx, 1
jne 0x140001570
mov qword [rbp + 0x198], rsi
mov byte [r8 + rsi], 0
mov rax, qword [rbp + 0x1a0]
lea rdi, [rbp + 0x188]
cmp rax, 0xf
cmova rdi, qword [rbp + 0x188]
lea rdx, [0x140006750]
lea rcx, [rbp + 0x1a8]
call fcn.140001fe0
nop
lea rdx, [rbp + 0x1a8]
cmp qword [rbp + 0x1c0], 0xf
cmova rdx, qword [rbp + 0x1a8]
mov r8, qword [rbp + 0x1b8]
add r8, rdx
lea rdx, [rbp + 0x1a8]
cmp qword [rbp + 0x1c0], 0xf
cmova rdx, qword [rbp + 0x1a8]
lea rcx, [rbp + 0x208]
call fcn.140001c00
nop
lea r13, [rbp + 0x208]
mov r12, qword [rbp + 0x208]
cmp qword [rbp + 0x220], 7
cmova r13, r12
xor edx, edx
mov ecx, 2
call qword [sym.imp.KERNEL32.dll_CreateToolhelp32Snapshot]
mov r15, rax
cmp rax, 0xffffffffffffffff
jne 0x14000165f
lea rdx, str.Failed_to_create_process_snapshot.
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
call fcn.140001d50
lea rdx, [0x140001f30]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov ebx, 1
jmp 0x14000192a
xor edx, edx
mov r8d, 0x234
lea rcx, [rsp + 0x44]
call sub.VCRUNTIME140.dll_memset
mov dword [rsp + 0x40], 0x238
lea rdx, [rsp + 0x40]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_Process32FirstW]
test eax, eax
jne 0x1400016c1
lea rdx, str.Failed_to_get_first_process.
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
call fcn.140001d50
lea rdx, [0x140001f30]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov ebx, 1
jmp 0x14000192a
lea rax, [rsp + 0x6c]
mov r8, r13
sub r8, rax
nop dword [rax]
movzx edx, word [rax]
movzx ecx, word [rax + r8]
sub edx, ecx
jne 0x1400016e4
add rax, 2
test ecx, ecx
jne 0x1400016d0
test edx, edx
jne 0x140001891
mov r8d, dword [rsp + 0x48]
mov ecx, 0x1fffff
call qword [sym.imp.KERNEL32.dll_OpenProcess]
mov rbx, rax
test rax, rax
jne 0x14000172c
lea rdx, str.Failed_to_open_process.
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
call fcn.140001d50
lea rdx, [0x140001f30]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
jmp 0x140001891
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rdi + r8], 0
jne 0x140001733
inc r8
mov dword [rsp + 0x20], 4
xor edx, edx
mov r9d, 0x1000
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_VirtualAllocEx]
mov rsi, rax
test rax, rax
jne 0x140001792
lea rdx, str.Failed_to_allocate_memory_in_target_process.
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
call fcn.140001d50
lea rdx, [0x140001f30]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x140001891
mov r9, 0xffffffffffffffff
nop dword [rax]
inc r9
cmp byte [rdi + r9], 0
jne 0x1400017a0
inc r9
mov qword [rsp + 0x20], r14
mov r8, rdi
mov rdx, rsi
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
test eax, eax
jne 0x14000180b
lea rdx, str.Failed_to_write_to_target_process_memory.
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
call fcn.140001d50
lea rdx, [0x140001f30]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov r9d, 0x8000
xor r8d, r8d
mov rdx, rsi
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_VirtualFreeEx]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x140001891
lea rcx, str.kernel32.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
lea rdx, str.LoadLibraryA
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r9, rax
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], r14d
mov qword [rsp + 0x20], rsi
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CreateRemoteThread]
mov r14, rax
test rax, rax
jne 0x1400018a9
lea rdx, str.Failed_to_create_remote_thread.
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
call fcn.140001d50
lea rdx, [0x140001f30]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov r9d, 0x8000
xor r8d, r8d
mov rdx, rsi
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_VirtualFreeEx]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rdx, [rsp + 0x40]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_Process32NextW]
test eax, eax
jne 0x1400016c1
jmp 0x14000191e
mov edx, 0xffffffff
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov dword [rbp + 0x180], 0
lea rdx, [rbp + 0x180]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_GetExitCodeThread]
mov r9d, 0x8000
xor r8d, r8d
mov rdx, rsi
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_VirtualFreeEx]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rdx, str.DLL_injected_successfully.
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140001d50
lea rdx, [0x140001f30]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
xor r14d, r14d
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov ebx, r14d
mov rax, qword [rbp + 0x220]
cmp rax, 7
jbe 0x140001971
lea rdx, [rax*2 + 2]
mov rax, r12
cmp rdx, 0x1000
jb 0x140001968
add rdx, 0x27
mov r12, qword [r12 - 8]
sub rax, r12
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140001968
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, r12
call fcn.1400024b4
nop
mov rdx, qword [rbp + 0x1c0]
cmp rdx, 0xf
jbe 0x1400019b5
inc rdx
mov rcx, qword [rbp + 0x1a8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400019b0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400019b0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400024b4
movdqa xmm0, xmmword [0x140004580]
movdqu xmmword [rbp + 0x1b8], xmm0
mov byte [rbp + 0x1a8], 0
mov rdx, qword [rbp + 0x1a0]
cmp rdx, 0xf
jbe 0x140001a10
inc rdx
mov rcx, qword [rbp + 0x188]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140001a0b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140001a0b
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400024b4
mov qword [rbp + 0x198], r14
mov qword [rbp + 0x1a0], 0xf
mov byte [rbp + 0x188], 0
mov rdx, qword [rbp + 0x1e0]
cmp rdx, 7
jbe 0x140001a72
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x1c8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140001a6d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140001a6d
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400024b4
movdqa xmm0, xmmword [0x140004570]
movdqu xmmword [rbp + 0x1d8], xmm0
mov word [rbp + 0x1c8], r14w
mov rdx, qword [rbp + 0x200]
cmp rdx, 0xf
jbe 0x140001ace
inc rdx
mov rcx, qword [rbp + 0x1e8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140001ac9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140001ac9
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400024b4
mov eax, ebx
mov rcx, qword [rbp + 0x228]
xor rcx, rsp
call fcn.140002210
lea r11, [rsp + 0x330]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.140001280
nop
call fcn.1400011e0
int3