Function at 0x18002b0e8
Capabilities:
Terminate thread

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x50
mov r13b, r9b
mov r14, r8
mov rsi, rdx
mov ebx, ecx
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
cmp ebx, eax
mov r12d, eax
je 0x18002b11c
test ebx, ebx
je 0x18002b11c
xor edi, edi
jmp 0x18002b121
mov edi, 0x80070057
test ebx, ebx
je 0x18002b131
mov ecx, ebx
call fcn.1800292e8
mov rbp, rax
jmp 0x18002b133
xor ebp, ebp
xor r15d, r15d
test edi, edi
js 0x18002b14f
mov ecx, ebx
call fcn.18002a8e0
mov r15, rax
mov eax, 0x80070578
test r15, r15
cmove edi, eax
and dword [rsp + 0x90], 0
test edi, edi
js 0x18002b298
test rsi, rsi
je 0x18002b17b
cmp word [rsi], 0
je 0x18002b17b
mov rcx, rsi
call fcn.180029308
mov dword [rsp + 0x90], eax
jmp 0x18002b180
mov edi, 0x80070057
test edi, edi
js 0x18002b298
test r13b, r13b
jne 0x18002b298
xor edx, edx
mov r8d, ebx
lea ecx, [rdx + 0x40]
call qword [sym.imp.KERNEL32.dll_OpenProcess]
xor r13d, r13d
cmp rax, r13
mov rsi, rax
jne 0x18002b1c4
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx edi, ax
or edi, 0x80070000
cmp eax, r13d
cmovle edi, eax
jmp 0x18002b29b
cmp r14, r13
je 0x18002b224
mov qword [rsp + 0xa0], r13
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [rsp + 0x30], 2
lea r9, [rsp + 0xa0]
mov r8, rsi
mov rdx, r14
mov rcx, rax
mov dword [rsp + 0x28], r13d
mov dword [rsp + 0x20], r13d
call qword [sym.imp.KERNEL32.dll_DuplicateHandle]
cmp eax, r13d
jne 0x18002b21c
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx edi, ax
or edi, 0x80070000
cmp eax, r13d
cmovle edi, eax
jmp 0x18002b224
mov r14, qword [rsp + 0xa0]
cmp edi, r13d
jl 0x18002b28d
mov qword [rsp + 0xa0], r13
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [rsp + 0x30], r13d
lea r9, [rsp + 0xa0]
mov r8, rsi
mov rdx, rbx
mov rcx, rax
mov dword [rsp + 0x28], r13d
mov dword [rsp + 0x20], reloc.OLEAUT32.dll_VarI4FromDisp
call qword [sym.imp.KERNEL32.dll_DuplicateHandle]
cmp eax, r13d
jne 0x18002b285
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx edi, ax
or edi, 0x80070000
cmp eax, r13d
cmovle edi, eax
jmp 0x18002b28d
mov r12, qword [rsp + 0xa0]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x18002b29b
xor r13d, r13d
cmp edi, r13d
mov rbx, r13
mov esi, 1
jl 0x18002b417
mov edx, dword [rsp + 0x90]
mov eax, 0x2710
mov qword [rsp + 0xa0], r13
mov r13d, dword [rsp + 0xb0]
lea rcx, [rsp + 0xa0]
mov r9, r12
mov qword [rsp + 0x30], rcx
cmp r13d, eax
mov r8, r14
cmovb eax, r13d
mov rcx, r15
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], esi
call qword [sym.imp.USER32.dll_SendMessageTimeoutW]
test rax, rax
je 0x18002b3a1
mov rsi, qword [rsp + 0xa0]
test rsi, rsi
je 0x18002b336
cmp rsi, 0xffffffffffffffff
jne 0x18002b313
xor ebx, ebx
jmp 0x18002b336
and dword [rsp + 0x90], 0
lea rdx, [rsp + 0x90]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_GetHandleInformation]
neg eax
sbb rbx, rbx
and rbx, rsi
jne 0x18002b33b
mov edi, 0x80070006
mov esi, 1
test rbp, rbp
je 0x18002b350
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor ebp, ebp
test edi, edi
js 0x18002b417
mov rax, qword [rsp + 0xb8]
mov ecx, 2
lea rdx, [rsp + 0x40]
test rax, rax
mov r9d, r13d
mov qword [rsp + 0x40], rbx
cmove ecx, esi
xor r8d, r8d
mov qword [rsp + 0x48], rax
call qword [sym.imp.KERNEL32.dll_WaitForMultipleObjects]
test eax, eax
je 0x18002b3dd
cmp eax, esi
je 0x18002b3d6
cmp eax, 0x102
je 0x18002b3b7
cmp eax, 0xffffffff
je 0x18002b403
mov edi, 0x8000ffff
jmp 0x18002b417
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx edi, ax
or edi, 0x80070000
test eax, eax
cmovle edi, eax
jmp 0x18002b340
cmp byte [rsp + 0xc0], 0
je 0x18002b3cf
mov edx, 0x80070102
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_TerminateThread]
mov edi, 0x80070102
jmp 0x18002b417
mov edi, 0x80004004
jmp 0x18002b417
or dword [rsp + 0x90], 0xffffffff
lea rdx, [rsp + 0x90]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetExitCodeThread]
test eax, eax
je 0x18002b403
mov edi, dword [rsp + 0x90]
jmp 0x18002b417
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx edi, ax
or edi, 0x80070000
test eax, eax
cmovle edi, eax
xor sil, sil
test rbp, rbp
je 0x18002b441
xor edx, edx
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
movzx esi, sil
mov rcx, rbp
test eax, eax
mov eax, 1
cmove esi, eax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test rbx, rbx
je 0x18002b451
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x18002b45c
mov eax, 0x80080008
test sil, sil
cmovne edi, eax
mov eax, edi
mov rbx, qword [rsp + 0x98]
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret