Function at 0x1400022d0
Capabilities:
Enumerate processes
Terminate process

Disassembly:
push r15
push r14
push rsi
push rdi
push rbx
sub rsp, 0x280
mov rdi, rcx
mov dword [rsp + 0x48], 0x238
mov ecx, 2
xor edx, edx
call sym.CreateToolhelp32Snapshot
cmp rax, 0xffffffffffffffff
je 0x1400023cb
mov rsi, rax
lea rdx, [rsp + 0x48]
mov rcx, rax
call sym.Process32FirstW
test eax, eax
je 0x14000241f
lea rbx, [rsp + 0x74]
mov r15, qword [sym.imp.KERNEL32.dll_lstrcmpiW]
lea r14, [rsp + 0x48]
nop dword [rax + rax]
mov rcx, rdi
mov rdx, rbx
call r15
test eax, eax
je 0x140002350
mov rcx, rsi
mov rdx, r14
call sym.Process32NextW
test eax, eax
jne 0x140002330
xor ebx, ebx
jmp 0x1400023b1
mov r8d, dword [rsp + 0x50]
mov ecx, 0x401
xor edx, edx
call qword [sym.imp.KERNEL32.dll_OpenProcess]
test rax, rax
je 0x14000247c
mov rdi, rax
lea rdx, [rsp + 0x44]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetExitCodeProcess]
test eax, eax
je 0x1400024d9
xor ebx, ebx
cmp dword [rsp + 0x44], 0x103
jne 0x1400023a8
mov rcx, rdi
xor edx, edx
call qword [sym.imp.KERNEL32.dll_TerminateProcess]
mov ebx, 1
test eax, eax
je 0x14000253b
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, ebx
add rsp, 0x280
pop rbx
pop rdi
pop rsi
pop r14
pop r15
ret
mov ecx, 0x10
call sym.__cxa_allocate_exception
mov rdi, rax
lea rdx, str.Failed_to_create_snapshot_of_processes.
lea rcx, [rsp + 0x28]
call sym._ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2B8ue170006ILi0EEEPKc
mov bl, 1
lea rdx, [rsp + 0x28]
mov rcx, rdi
call method.std::runtime_error.runtime_error_std::__1::basic_string_char__std::__1::char_traits_char___std::__1::allocator_char____const_
lea rax, method.std::runtime_error.runtime_error__
mov qword [rdi], rax
xor ebx, ebx
lea rdx, [0x140083d98]
lea r8, [method.std::runtime_error.runtime_error__]
mov rcx, rdi
call sym.__cxa_throw
jmp 0x14000259b
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, 0x10
call sym.__cxa_allocate_exception
mov rdi, rax
lea rdx, str.Failed_to_retrieve_information_about_the_first_process.
lea rcx, [rsp + 0x28]
call sym._ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2B8ue170006ILi0EEEPKc
mov bl, 1
lea rdx, [rsp + 0x28]
mov rcx, rdi
call method.std::runtime_error.runtime_error_std::__1::basic_string_char__std::__1::char_traits_char___std::__1::allocator_char____const_
lea rax, method.std::runtime_error.runtime_error__
mov qword [rdi], rax
xor ebx, ebx
lea rdx, [0x140083d98]
lea r8, [method.std::runtime_error.runtime_error__]
mov rcx, rdi
call sym.__cxa_throw
jmp 0x14000259b
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, 0x10
call sym.__cxa_allocate_exception
mov rdi, rax
lea rdx, str.Failed_to_open_the_process_for_termination.
lea rcx, [rsp + 0x28]
call sym._ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2B8ue170006ILi0EEEPKc
mov bl, 1
lea rdx, [rsp + 0x28]
mov rcx, rdi
call method.std::runtime_error.runtime_error_std::__1::basic_string_char__std::__1::char_traits_char___std::__1::allocator_char____const_
lea rax, method.std::runtime_error.runtime_error__
mov qword [rdi], rax
xor ebx, ebx
lea rdx, [0x140083d98]
lea r8, [method.std::runtime_error.runtime_error__]
mov rcx, rdi
call sym.__cxa_throw
jmp 0x14000259b
mov rbx, qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, rdi
call rbx
mov rcx, rsi
call rbx
mov ecx, 0x10
call sym.__cxa_allocate_exception
mov rdi, rax
lea rdx, str.Failed_to_get_the_process_exit_code.
lea rcx, [rsp + 0x28]
call sym._ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2B8ue170006ILi0EEEPKc
mov bl, 1
lea rdx, [rsp + 0x28]
mov rcx, rdi
call method.std::runtime_error.runtime_error_std::__1::basic_string_char__std::__1::char_traits_char___std::__1::allocator_char____const_
lea rax, method.std::runtime_error.runtime_error__
mov qword [rdi], rax
xor ebx, ebx
lea rdx, [0x140083d98]
lea r8, [method.std::runtime_error.runtime_error__]
mov rcx, rdi
call sym.__cxa_throw
jmp 0x14000259b
mov rbx, qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, rdi
call rbx
mov rcx, rsi
call rbx
mov ecx, 0x10
call sym.__cxa_allocate_exception
mov rdi, rax
lea rdx, str.Failed_to_terminate_the_process.
lea rcx, [rsp + 0x28]
call sym._ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2B8ue170006ILi0EEEPKc
mov bl, 1
lea rdx, [rsp + 0x28]
mov rcx, rdi
call method.std::runtime_error.runtime_error_std::__1::basic_string_char__std::__1::char_traits_char___std::__1::allocator_char____const_
lea rax, method.std::runtime_error.runtime_error__
mov qword [rdi], rax
xor ebx, ebx
lea rdx, [0x140083d98]
lea r8, [method.std::runtime_error.runtime_error__]
mov rcx, rdi
call sym.__cxa_throw
jmp 0x1400025bc
mov rsi, rax
test byte [rsp + 0x28], 1
jne 0x1400025cc
test bl, bl
jne 0x1400025e5
jmp 0x1400025da
mov rcx, qword [rsp + 0x38]
call sym..weak._ZdlPv.default.__clang_call_terminate
test bl, bl
jne 0x1400025e5
mov rcx, rsi
call sym._Unwind_Resume
mov rsi, rax
mov rcx, rdi
call sym.__cxa_free_exception
mov rcx, rsi
call sym._Unwind_Resume
int3