Function at 0x140002930
Capabilities:
Allocate or change rwx memory
Execute shellcode via indirect call

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xd0
mov rax, qword [0x14000a010]
xor rax, rsp
mov qword [rbp + 0x27], rax
mov rdi, rdx
mov r14, rcx
lea rcx, str.kernel32.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, [0x140007608]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r15, rax
test rax, rax
jne 0x1400029a8
lea rcx, str.Could_note_get_real_address_of_LoadLibraryA_from_kernel32.dll__n
call fcn.140001070
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.LastError_:_0X_x_n
call fcn.140001070
xor al, al
jmp 0x140002dfc
mov rdx, r15
lea rcx, str.LoadLibraryA_is_located_at_real_address:_0X_p_n
call fcn.140001070
mov rbx, 0xffffffffffffffff
mov r8, rbx
inc r8
cmp byte [rdi + r8], 0
jne 0x1400029c1
mov dword [rsp + 0x20], 0x40
xor edx, edx
mov r9d, 0x3000
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_VirtualAllocEx]
mov rsi, rax
test rax, rax
jne 0x140002a13
lea rcx, str.Could_not_allocate_Memory_in_target_process_n
call fcn.140001070
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.LastError_:_0X_x_n
call fcn.140001070
xor al, al
jmp 0x140002dfc
mov rdx, rsi
lea rcx, str.Dll_path_memory_allocated_at:_0X_p_n
call fcn.140001070
inc rbx
cmp byte [rdi + rbx], 0
jne 0x140002a22
mov r9, rbx
xor ebx, ebx
mov qword [rsp + 0x20], rbx
mov r8, rdi
mov rdx, rsi
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
test eax, eax
jne 0x140002a6f
lea rcx, str.Could_not_write_into_the_allocated_memory_n
call fcn.140001070
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.LastError_:_0X_x_n
call fcn.140001070
xor al, al
jmp 0x140002dfc
mov rdx, rsi
lea rcx, str.Dll_path_memory_was_written_at_address_:_0x_p_n
call fcn.140001070
lea rcx, str.ntdll.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
jne 0x140002ab7
lea rcx, str.Failed_to_get_module_handle_for_ntdll.dll_n
call fcn.140001070
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.LastError_:_0X_x_n
call fcn.140001070
xor al, al
jmp 0x140002dfc
lea rdx, str.RtlCreateUserThread
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
jne 0x140002af3
lea rcx, str.Failed_to_get_RtlCreateThreadEx_function_address_from_ntdll.dll_n
call fcn.140001070
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.LastError:_0X_x_n
call fcn.140001070
xor al, al
jmp 0x140002dfc
mov qword [rbp - 0x19], rbx
mov qword [rsp + 0x48], rbx
lea rcx, [rbp - 0x19]
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rbx
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, r14
call rax
cmp qword [rbp - 0x19], rbx
jne 0x140002b83
lea rcx, str._nRtlCreateUserThreadEx_failed_n
call fcn.140001070
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.LastError:_0X_x_n
call fcn.140001070
mov r9d, 0x8000
xor r8d, r8d
mov rdx, rsi
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_VirtualFreeEx]
test eax, eax
je 0x140002b7c
lea rcx, str.Memory_was_freed_in_target_process_n
call fcn.140001070
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
xor al, al
jmp 0x140002dfc
lea rcx, str.Thread_started_with_RtlCreateUserThread_n
call fcn.140001070
mov edx, 0xffffffff
mov rcx, qword [rbp - 0x19]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov r9d, 0x8000
xor r8d, r8d
mov rdx, rsi
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_VirtualFreeEx]
test eax, eax
je 0x140002bc3
lea rcx, str.Memory_was_freed_in_target_process_n
call fcn.140001070
lea rcx, str.Finished_Injection__Waiting_For_Good_news__n
call fcn.140001070
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x11], xmm0
mov qword [rbp - 1], rax
mov rdx, rdi
lea rcx, [rbp + 7]
call fcn.1400048b0
nop
lea rax, [rbp + 7]
mov qword [rbp - 0x29], rax
lea rax, [rbp + 0x27]
mov qword [rbp - 0x21], rax
lea rdx, [rbp - 0x29]
lea rcx, [rbp - 0x11]
call fcn.140004710
nop
lea r9, [fcn.140004850]
mov edx, 0x20
lea r8d, [rdx - 0x1f]
lea rcx, [rbp + 7]
call fcn.140005b8c
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x49], xmm0
mov qword [rbp - 0x39], rbx
mov rdi, qword [rbp - 9]
sub rdi, qword [rbp - 0x11]
sar rdi, 5
test rdi, rdi
je 0x140002d0b
movabs rax, 0x7ffffffffffffff
cmp rdi, rax
ja 0x140002e25
shl rdi, 5
cmp rdi, 0x1000
jb 0x140002c8a
lea rcx, [rdi + 0x27]
cmp rcx, rdi
jbe 0x140002e1f
call fcn.140005b50
test rax, rax
je 0x140002d73
lea rbx, [rax + 0x27]
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x140002c9a
test rdi, rdi
je 0x140002c9a
mov rcx, rdi
call fcn.140005b50
mov rbx, rax
mov qword [rbp - 0x49], rbx
mov qword [rbp - 0x41], rbx
lea rax, [rdi + rbx]
mov qword [rbp - 0x39], rax
lea rax, [rbp - 0x49]
mov qword [rbp - 0x29], rax
mov rdi, qword [rbp - 0x11]
mov rsi, qword [rbp - 9]
xorps xmm0, xmm0
movups xmmword [rbp + 7], xmm0
mov qword [rbp + 7], rbx
mov qword [rbp + 0xf], rbx
lea rax, [rbp - 0x49]
mov qword [rbp + 0x17], rax
cmp rdi, rsi
je 0x140002cfc
nop word [rax + rax]
mov rdx, rdi
mov rcx, rbx
call fcn.1400049d0
add rbx, 0x20
mov qword [rbp + 0xf], rbx
add rdi, 0x20
cmp rdi, rsi
jne 0x140002ce0
mov rdx, rbx
mov rcx, rbx
call fcn.140005040
mov qword [rbp - 0x41], rbx
lea rax, [rbp - 0x49]
mov qword [rbp - 0x29], rax
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_GetProcessId]
nop
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp - 0x49]
mov ecx, eax
call fcn.140001ca0
movzx ebx, al
mov rcx, qword [rbp - 0x49]
test rcx, rcx
je 0x140002d7f
mov rdx, qword [rbp - 0x41]
call fcn.140005040
mov rdx, qword [rbp - 0x39]
mov rcx, qword [rbp - 0x49]
sub rdx, rcx
and rdx, 0xffffffffffffffe0
mov rax, rcx
cmp rdx, 0x1000
jb 0x140002d7a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140002d7a
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140005eb4
lea rax, str.Injection_Failed__n_n
lea rcx, str.Injection_Successful__n_n
test bl, bl
cmove rcx, rax
call fcn.140001070
mov rcx, qword [rbp - 0x19]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
mov rcx, qword [rbp - 0x11]
test rcx, rcx
je 0x140002dfa
mov rdx, qword [rbp - 9]
call fcn.140005040
mov rdx, qword [rbp - 1]
mov rcx, qword [rbp - 0x11]
sub rdx, rcx
and rdx, 0xffffffffffffffe0
mov rax, rcx
cmp rdx, 0x1000
jb 0x140002df5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140002df5
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140005eb4
mov al, 1
mov rcx, qword [rbp + 0x27]
xor rcx, rsp
call fcn.140005b30
mov rbx, qword [rsp + 0x110]
add rsp, 0xd0
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret
call fcn.1400011d0
nop
call fcn.140005550
int3