Function at 0x180011764
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 0x180011798
test ebx, ebx
je 0x180011798
xor edi, edi
jmp 0x18001179d
mov edi, 0x80070057
test ebx, ebx
je 0x1800117ad
mov ecx, ebx
call fcn.180010910
mov rbp, rax
jmp 0x1800117af
xor ebp, ebp
xor r15d, r15d
test edi, edi
js 0x1800117cb
mov ecx, ebx
call fcn.1800110cc
mov r15, rax
mov eax, 0x80070578
test r15, r15
cmove edi, eax
and dword [rsp + 0x90], 0
test edi, edi
js 0x180011914
test rsi, rsi
je 0x1800117f7
cmp word [rsi], 0
je 0x1800117f7
mov rcx, rsi
call fcn.180010930
mov dword [rsp + 0x90], eax
jmp 0x1800117fc
mov edi, 0x80070057
test edi, edi
js 0x180011914
test r13b, r13b
jne 0x180011914
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 0x180011840
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx edi, ax
or edi, 0x80070000
cmp eax, r13d
cmovle edi, eax
jmp 0x180011917
cmp r14, r13
je 0x1800118a0
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 0x180011898
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx edi, ax
or edi, 0x80070000
cmp eax, r13d
cmovle edi, eax
jmp 0x1800118a0
mov r14, qword [rsp + 0xa0]
cmp edi, r13d
jl 0x180011909
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], 0x40
call qword [sym.imp.KERNEL32.dll_DuplicateHandle]
cmp eax, r13d
jne 0x180011901
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx edi, ax
or edi, 0x80070000
cmp eax, r13d
cmovle edi, eax
jmp 0x180011909
mov r12, qword [rsp + 0xa0]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x180011917
xor r13d, r13d
cmp edi, r13d
mov rbx, r13
mov esi, 1
jl 0x180011a93
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 0x180011a1d
mov rsi, qword [rsp + 0xa0]
test rsi, rsi
je 0x1800119b2
cmp rsi, 0xffffffffffffffff
jne 0x18001198f
xor ebx, ebx
jmp 0x1800119b2
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 0x1800119b7
mov edi, 0x80070006
mov esi, 1
test rbp, rbp
je 0x1800119cc
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor ebp, ebp
test edi, edi
js 0x180011a93
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 0x180011a59
cmp eax, esi
je 0x180011a52
cmp eax, 0x102
je 0x180011a33
cmp eax, 0xffffffff
je 0x180011a7f
mov edi, 0x8000ffff
jmp 0x180011a93
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx edi, ax
or edi, 0x80070000
test eax, eax
cmovle edi, eax
jmp 0x1800119bc
cmp byte [rsp + 0xc0], 0
je 0x180011a4b
mov edx, 0x80070102
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_TerminateThread]
mov edi, 0x80070102
jmp 0x180011a93
mov edi, 0x80004004
jmp 0x180011a93
or dword [rsp + 0x90], 0xffffffff
lea rdx, [rsp + 0x90]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetExitCodeThread]
test eax, eax
je 0x180011a7f
mov edi, dword [rsp + 0x90]
jmp 0x180011a93
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 0x180011abd
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 0x180011acd
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x180011ad8
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