Function at 0x140071cd0
Capabilities:
Enumerate processes

Disassembly:
mov qword [rsp + 0x20], rdi
push r12
push r14
push r15
sub rsp, 0x260
movzx r15d, r8b
movzx r12d, dl
mov r14, rcx
mov rdi, rcx
movzx eax, word [rdi]
cmp ax, 0x20
je 0x140071cff
cmp ax, 9
jne 0x140071d05
add rdi, 2
jmp 0x140071cf0
mov qword [rsp + 0x280], rbx
mov qword [rsp + 0x288], rbp
mov qword [rsp + 0x290], rsi
test ax, ax
je 0x140071df6
xor esi, esi
cmp ax, 0x2d
je 0x140071e78
cmp ax, 0x2b
jne 0x140071d42
lea rax, [rdi + 2]
mov rdi, rax
movzx eax, word [rax]
cmp ax, 0x30
jne 0x140071d72
movzx eax, word [rdi + 2]
mov ecx, 0xffdf
sub ax, 0x58
test cx, ax
jne 0x140071d72
movzx ecx, word [rdi + 4]
lea rbx, [rdi + 4]
call fcn.1400ceeb0
test eax, eax
je 0x140071d72
mov ebp, 1
jmp 0x140071d78
mov ebp, esi
lea rbx, [rdi + 4]
test ebp, ebp
mov ecx, esi
cmove rbx, rdi
movzx eax, word [rbx]
cmp eax, 0x20
je 0x140071dd0
cmp eax, 9
je 0x140071dd0
test eax, eax
je 0x140071dee
cmp eax, 0x2e
je 0x140071e78
test ebp, ebp
je 0x140071db0
movzx ecx, ax
call fcn.1400d670c
test eax, eax
je 0x140071e78
jmp 0x140071dbc
add eax, 0xffffffd0
cmp eax, 9
ja 0x140071e78
movzx eax, word [rbx + 2]
add rbx, 2
mov ecx, 1
cmp eax, 0x20
jne 0x140071d88
nop
movzx eax, word [rbx]
cmp ax, 0x20
je 0x140071ddf
cmp ax, 9
jne 0x140071de5
add rbx, 2
jmp 0x140071dd0
test ax, ax
jne 0x140071e78
test ecx, ecx
je 0x140071e78
mov rcx, r14
call fcn.1400a6500
mov rsi, rax
test eax, eax
je 0x140071e78
test r12b, r12b
jne 0x140071e78
mov r8d, esi
xor edx, edx
mov ecx, 0x101000
call qword [sym.imp.KERNEL32.dll_OpenProcess]
mov rbx, rax
test rax, rax
je 0x140071e5e
mov rcx, rax
mov edi, 0xffffffff
call qword [sym.imp.KERNEL32.dll_GetProcessId]
cmp eax, esi
jne 0x140071e41
xor edx, edx
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov edi, eax
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test edi, edi
je 0x140071f03
cmp edi, 0x102
je 0x140071f44
test r15b, r15b
jne 0x140071e78
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x57
je 0x140071e78
test sil, 3
je 0x140071f44
xor edx, edx
mov dword [rsp + 0x20], 0x238
lea ecx, [rdx + 2]
call qword [sym.imp.KERNEL32.dll_CreateToolhelp32Snapshot]
mov rcx, rax
lea rdx, [rsp + 0x20]
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_Process32FirstW]
lea rdx, [rsp + 0x20]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_Process32NextW]
test eax, eax
je 0x140071efa
nop
test esi, esi
je 0x140071eba
cmp esi, dword [rsp + 0x28]
je 0x140071f33
mov edx, 0x5c
lea rcx, [rsp + 0x4c]
call fcn.1400c4ff4
test rax, rax
je 0x140071ed4
add rax, 2
jmp 0x140071ed9
lea rax, [rsp + 0x4c]
mov rdx, r14
mov rcx, rax
call fcn.1400ca01c
mov rcx, rbx
test eax, eax
je 0x140071f48
lea rdx, [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_Process32NextW]
test eax, eax
jne 0x140071eb0
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor eax, eax
mov rsi, qword [rsp + 0x290]
mov rbp, qword [rsp + 0x288]
mov rbx, qword [rsp + 0x280]
mov rdi, qword [rsp + 0x298]
add rsp, 0x260
pop r15
pop r14
pop r12
ret
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test r12b, r12b
cmovne esi, dword [rsp + 0x40]
mov eax, esi
jmp 0x140071f05
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [rsp + 0x28]
test r12b, r12b
cmovne eax, dword [rsp + 0x40]
jmp 0x140071f05