Function at 0x140001dc0
Capabilities:
Acquire debug privileges
Enumerate processes

Disassembly:
push rbx
sub rsp, 0x2b0
xor edx, edx
mov dword [rsp + 0x70], 0x238
lea ecx, [rdx + 2]
call qword [sym.imp.KERNEL32.dll_CreateToolhelp32Snapshot]
mov rcx, rax
lea rdx, [rsp + 0x70]
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_Process32FirstW]
cmp eax, 1
jne 0x140001e3c
lea rdx, [rsp + 0x70]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_Process32NextW]
cmp eax, 1
jne 0x140001e3c
nop word [rax + rax]
lea rdx, str.cs2.exe
lea rcx, [rsp + 0x9c]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsicmp]
mov rcx, rbx
test eax, eax
je 0x140001e68
lea rdx, [rsp + 0x70]
call qword [sym.imp.KERNEL32.dll_Process32NextW]
cmp eax, 1
je 0x140001e10
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor r9d, r9d
lea rdx, [0x140003780]
xor r8d, r8d
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxA]
mov eax, 0xffffffff
add rsp, 0x2b0
pop rbx
ret
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov ebx, dword [rsp + 0x78]
test ebx, ebx
je 0x140001e45
xorps xmm0, xmm0
mov qword [rsp + 0x2c0], rsi
xor esi, esi
mov qword [rsp + 0x58], rsi
movups xmmword [rsp + 0x60], xmm0
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov rcx, rax
lea r8, [rsp + 0x58]
lea edx, [rsi + 0x28]
call qword [sym.imp.ADVAPI32.dll_OpenProcessToken]
test eax, eax
je 0x140001efa
lea r8, [rsp + 0x64]
mov dword [rsp + 0x60], 1
lea rdx, str.SeDebugPrivilege
mov dword [rsp + 0x6c], 2
xor ecx, ecx
call qword [sym.imp.ADVAPI32.dll_LookupPrivilegeValueW]
test eax, eax
je 0x140001eef
mov rcx, qword [rsp + 0x58]
lea r8, [rsp + 0x60]
mov qword [rsp + 0x28], rsi
xor r9d, r9d
xor edx, edx
mov qword [rsp + 0x20], rsi
call qword [sym.imp.ADVAPI32.dll_AdjustTokenPrivileges]
mov rcx, qword [rsp + 0x58]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov r8d, ebx
xor edx, edx
mov ecx, 0x1fffff
call qword [sym.imp.KERNEL32.dll_OpenProcess]
mov rbx, rax
test rax, rax
jne 0x140001f41
call qword [sym.imp.KERNEL32.dll_GetLastError]
xor r9d, r9d
lea rdx, [0x1400037b8]
xor r8d, r8d
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxA]
mov rsi, qword [rsp + 0x2c0]
lea eax, [rbx - 2]
add rsp, 0x2b0
pop rbx
ret
lea rdx, [rsp + 0x50]
mov dword [rsp + 0x50], esi
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_IsWow64Process]
test eax, eax
je 0x140002074
mov dword [rsp + 0x2d8], esi
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov rcx, rax
lea rdx, [rsp + 0x2d8]
call qword [sym.imp.KERNEL32.dll_IsWow64Process]
mov eax, dword [rsp + 0x2d8]
cmp dword [rsp + 0x50], eax
jne 0x140002074
mov ecx, 0x445150
mov qword [rsp + 0x2c8], rdi
call fcn.1400020b0
mov r8d, 0x445150
lea rdx, [0x140005040]
mov rcx, rax
mov rdi, rax
call sub.VCRUNTIME140.dll_memcpy
mov r9d, esi
mov rdx, rdi
nop word [rax + rax]
mov ecx, dword [rdx]
test ecx, ecx
je 0x140001fce
xor ecx, 0x8a7b6c5d
mov dword [rdx], ecx
add r9d, 4
add rdx, 4
cmp r9d, 0x445150
jb 0x140001fc0
mov ecx, 0x1388
call qword [sym.imp.KERNEL32.dll_Sleep]
mov qword [rsp + 0x40], rsi
mov r9b, 1
mov dword [rsp + 0x38], 1
mov r8d, 0x445150
mov byte [rsp + 0x30], 1
mov rdx, rdi
mov byte [rsp + 0x28], 1
mov rcx, rbx
mov byte [rsp + 0x20], 1
call fcn.140001070
mov rcx, rdi
test al, al
jne 0x140002062
call fcn.1400020a8
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor r9d, r9d
lea rdx, [0x1400037f8]
xor r8d, r8d
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxA]
mov eax, 0xfffffff8
mov rdi, qword [rsp + 0x2c8]
mov rsi, qword [rsp + 0x2c0]
add rsp, 0x2b0
pop rbx
ret
call fcn.1400020a8
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor eax, eax
jmp 0x140002049
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor r9d, r9d
lea rdx, [0x1400037d8]
xor r8d, r8d
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxA]
mov rsi, qword [rsp + 0x2c0]
mov eax, 0xfffffffd
add rsp, 0x2b0
pop rbx
ret