Function at 0x140001170
Capabilities:
Find process by pid
Print debug messages

Disassembly:
mov dword [rsp + 8], ecx
sub rsp, 0x88
mov byte [rsp + 0x38], 0
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x40], 0
movsxd rax, dword [rsp + 0x90]
lea rdx, [rsp + 0x30]
mov rcx, rax
call qword [sym.imp.ntoskrnl.exe_PsLookupProcessByProcessId]
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0
je 0x1400011e9
cmp dword [rsp + 0x24], 0xc000000d
jne 0x1400011c9
lea rcx, [0x140001b50]
call sub.ntoskrnl.exe_DbgPrint
cmp dword [rsp + 0x24], 0xc000000b
jne 0x1400011df
lea rcx, [0x140001b70]
call sub.ntoskrnl.exe_DbgPrint
mov eax, 0xffffffff
jmp 0x140001412
lea rdx, [rsp + 0x40]
mov ecx, 4
call qword [sym.imp.ntoskrnl.exe_PsLookupProcessByProcessId]
cmp dword [rsp + 0x24], 0
je 0x140001241
cmp dword [rsp + 0x24], 0xc000000d
jne 0x140001216
lea rcx, [0x140001ba0]
call sub.ntoskrnl.exe_DbgPrint
cmp dword [rsp + 0x24], 0xc000000b
jne 0x14000122c
lea rcx, [0x140001bd0]
call sub.ntoskrnl.exe_DbgPrint
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.ntoskrnl.exe_ObfDereferenceObject]
mov eax, 0xffffffff
jmp 0x140001412
mov rcx, qword [rsp + 0x30]
call sub.ntoskrnl.exe_PsGetProcessImageFileName
mov qword [rsp + 0x50], rax
mov rdx, qword [rsp + 0x50]
lea rcx, [0x140001bf0]
call sub.ntoskrnl.exe_DbgPrint
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.ntoskrnl.exe_PsReferencePrimaryToken]
mov qword [rsp + 0x58], rax
cmp qword [rsp + 0x58], 0
jne 0x140001299
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.ntoskrnl.exe_ObfDereferenceObject]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.ntoskrnl.exe_ObfDereferenceObject]
mov eax, 0xffffffff
jmp 0x140001412
mov r8, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x50]
lea rcx, [0x140001c20]
call sub.ntoskrnl.exe_DbgPrint
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.ntoskrnl.exe_PsReferencePrimaryToken]
mov qword [rsp + 0x68], rax
cmp qword [rsp + 0x68], 0
jne 0x1400012f2
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.ntoskrnl.exe_ObfDereferenceObject]
mov rcx, qword [rsp + 0x58]
call qword [sym.imp.ntoskrnl.exe_ObfDereferenceObject]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.ntoskrnl.exe_ObfDereferenceObject]
mov eax, 0xffffffff
jmp 0x140001412
mov rdx, qword [rsp + 0x68]
lea rcx, [0x140001c30]
call sub.ntoskrnl.exe_DbgPrint
mov rax, qword [rsp + 0x30]
add rax, 0x4b8
mov qword [rsp + 0x48], rax
mov r8, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x50]
lea rcx, [0x140001c50]
call sub.ntoskrnl.exe_DbgPrint
mov rax, qword [rsp + 0x48]
mov rax, qword [rax]
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x40]
add rax, 0x4b8
mov qword [rsp + 0x60], rax
mov rdx, qword [rsp + 0x60]
lea rcx, [0x140001c70]
call sub.ntoskrnl.exe_DbgPrint
mov rax, qword [rsp + 0x60]
mov rax, qword [rax]
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x60]
mov rcx, qword [rcx]
mov qword [rax], rcx
mov rax, qword [rsp + 0x48]
mov r8, qword [rax]
mov rdx, qword [rsp + 0x50]
lea rcx, [0x140001c90]
call sub.ntoskrnl.exe_DbgPrint
mov dword [rsp + 0x28], 1
jmp 0x1400013a1
mov eax, dword [rsp + 0x28]
inc eax
mov dword [rsp + 0x28], eax
cmp dword [rsp + 0x28], 8
jge 0x1400013cf
movsxd rax, dword [rsp + 0x28]
mov rcx, qword [rsp + 0x48]
movzx eax, byte [rcx + rax]
mov byte [rsp + 0x20], al
movzx eax, byte [rsp + 0x20]
mov edx, eax
lea rcx, [0x140001cc0]
call sub.ntoskrnl.exe_DbgPrint
jmp 0x140001397
lea rcx, [0x140001cd0]
call sub.ntoskrnl.exe_DbgPrint
jmp 0x1400013e4
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.ntoskrnl.exe_ObfDereferenceObject]
mov rcx, qword [rsp + 0x58]
call qword [sym.imp.ntoskrnl.exe_ObfDereferenceObject]
mov rcx, qword [rsp + 0x68]
call qword [sym.imp.ntoskrnl.exe_ObfDereferenceObject]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.ntoskrnl.exe_ObfDereferenceObject]
xor eax, eax
add rsp, 0x88
ret