Function at 0x1400124d0
Capabilities:
Enumerate processes

Disassembly:
push rsi
push rdi
sub rsp, 0x4e8
mov rax, qword [0x140027040]
xor rax, rsp
mov qword [rsp + 0x4d0], rax
movups xmm0, xmmword [0x1400205b8]
xor esi, esi
xor eax, eax
movups xmm1, xmmword [0x1400205c8]
lea rdi, [rsp + 0x60]
mov qword [rsp + 0x50], rsi
mov ecx, 0x238
xor edx, edx
rep stosb byte [rdi], al
lea ecx, [rsi + 2]
movups xmmword [rsp + 0x2a0], xmm0
movups xmmword [rsp + 0x2b0], xmm1
call qword [sym.imp.KERNEL32.dll_CreateToolhelp32Snapshot]
mov rdi, rax
cmp rax, 0xffffffffffffffff
jne 0x140012546
lea rcx, [0x140021ce0]
call fcn.140012df0
xor eax, eax
jmp 0x1400128ed
lea rdx, [rsp + 0x60]
mov dword [rsp + 0x60], 0x238
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_Process32FirstW]
test eax, eax
jne 0x14001257c
lea rcx, str.Process32First
call fcn.140012df0
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor eax, eax
jmp 0x1400128ed
lea rdx, str.notepad.exe
lea rcx, [rsp + 0x8c]
call qword [sym.imp.SHLWAPI.dll_StrCmpIW]
test eax, eax
je 0x1400125eb
lea rdx, [rsp + 0x60]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_Process32NextW]
test eax, eax
je 0x1400125db
nop word [rax + rax]
lea rdx, str.notepad.exe
lea rcx, [rsp + 0x8c]
call qword [sym.imp.SHLWAPI.dll_StrCmpIW]
test eax, eax
je 0x1400125eb
lea rdx, [rsp + 0x60]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_Process32NextW]
test eax, eax
jne 0x1400125b0
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor eax, eax
jmp 0x1400128ed
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov edi, dword [rsp + 0x68]
test edi, edi
jne 0x140012603
xor eax, eax
jmp 0x1400128ed
mov edx, edi
mov qword [rsp + 0x500], rbx
lea rcx, str._t___Getting_proc_id:__u_n
call fcn.140008ce0
mov r8d, edi
xor edx, edx
mov ecx, 0x1fffff
call qword [sym.imp.KERNEL32.dll_OpenProcess]
mov rbx, rax
test rax, rax
jne 0x140012644
lea rcx, [0x140020678]
call fcn.140012df0
xor eax, eax
jmp 0x1400128e5
lea rcx, [0x14001c108]
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov rdi, rax
test rax, rax
jne 0x14001266a
lea rcx, str.GetModuleHandle
call fcn.140012df0
jmp 0x1400128da
mov qword [rsp + 0x508], rbp
lea rdx, str.RtlNtStatusToDosError
mov rcx, rdi
mov qword [rsp + 0x4e0], r15
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [0x14001c0e8]
mov r15, rax
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov rbp, rax
test rax, rax
jne 0x1400126b3
lea rcx, str.GetModuleHandle
call fcn.140012df0
jmp 0x1400128ca
lea rcx, str._t___Looking_for_RtlCreateUserThread_in_ntdll_n
mov qword [rsp + 0x518], r14
call fcn.140008ce0
lea rdx, [0x140020ac0]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r14, rax
test rax, rax
jne 0x1400126f0
lea rcx, [0x1400206f8]
call fcn.140012df0
jmp 0x1400128c2
mov rdx, r14
mov qword [rsp + 0x510], r12
lea rcx, str._t___Found_at_0x_p_n
call fcn.140008ce0
lea rcx, str._t___Looking_for_LoadLibrary_in_kernel32_n
call fcn.140008ce0
lea rdx, [0x1400206e8]
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r12, rax
test rax, rax
jne 0x14001273c
lea rcx, [0x1400206f8]
call fcn.140012df0
jmp 0x1400128ba
mov rdx, r12
lea rcx, str._t___Found_at_0x_p_n
call fcn.140008ce0
xor r9d, r9d
lea r8, [rsp + 0x2c0]
mov edx, 0x104
lea rcx, [rsp + 0x2a0]
call qword [sym.imp.KERNEL32.dll_GetFullPathNameW]
lea rdx, [rsp + 0x2c0]
lea rcx, str._t___Full_DLL_Path:__s_n
call fcn.140008ce0
lea rax, [rsp + 0x2c0]
mov rdi, 0xffffffffffffffff
nop dword [rax]
inc rdi
cmp word [rax + rdi*2], si
jne 0x140012790
lea rcx, str._t___Allocating_space_for_the_path_of_the_DLL_n
add rdi, rdi
call fcn.140008ce0
mov r9d, 0x3000
mov dword [rsp + 0x20], 4
mov r8, rdi
xor edx, edx
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_VirtualAllocEx]
mov rbp, rax
test rax, rax
jne 0x1400127dd
lea rcx, [0x1400207d0]
call fcn.140012df0
jmp 0x1400128ba
mov rdx, rbp
lea rcx, str._t___Writing_into_the_current_process_space_at_0x_p_n
call fcn.140008c70
mov r9, rdi
mov qword [rsp + 0x20], rsi
lea r8, [rsp + 0x2c0]
mov rdx, rbp
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
test eax, eax
jne 0x14001281d
lea rcx, [0x140020828]
call fcn.140012df0
jmp 0x1400128a5
mov qword [rsp + 0x48], rsi
lea rax, [rsp + 0x50]
mov qword [rsp + 0x40], rax
xor r9d, r9d
mov qword [rsp + 0x38], rbp
xor r8d, r8d
mov qword [rsp + 0x30], r12
xor edx, edx
mov qword [rsp + 0x28], rsi
mov rcx, rbx
mov qword [rsp + 0x20], rsi
call r14
test eax, eax
jns 0x140012879
test r15, r15
je 0x140012860
mov ecx, eax
call r15
mov ecx, eax
jmp 0x140012865
mov ecx, 0x54f
call qword [sym.imp.KERNEL32.dll_SetLastError]
lea rcx, str.RtlCreateUserThread
call fcn.140012df0
jmp 0x1400128a5
lea rcx, str.Remote_thread_has_been_created_successfully_..._n
call fcn.140008ce0
mov rcx, qword [rsp + 0x50]
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [rsp + 0x50]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov esi, 1
mov r9d, 0x8000
xor r8d, r8d
mov rdx, rbp
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_VirtualFreeEx]
mov r12, qword [rsp + 0x510]
mov r14, qword [rsp + 0x518]
mov rbp, qword [rsp + 0x508]
mov r15, qword [rsp + 0x4e0]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, esi
mov rbx, qword [rsp + 0x500]
mov rcx, qword [rsp + 0x4d0]
xor rcx, rsp
call fcn.140015e30
add rsp, 0x4e8
pop rdi
pop rsi
ret