Function at 0x140010960
Capabilities:
Suspend thread

Disassembly:
mov r11, rsp
push rbp
push rsi
push r12
push r13
push r14
push r15
sub rsp, 0x98
mov rax, qword [0x1402c0040]
xor rax, rsp
mov qword [rsp + 0x80], rax
mov r14, rdx
xor r12b, r12b
xor edx, edx
mov r13d, r8d
mov rsi, rcx
mov bpl, 1
mov r15d, edx
test r8d, r8d
je 0x140010d9f
mov qword [r11 + 0x18], rbx
mov qword [r11 - 0x38], rdi
mov rax, qword ds:[r14]
lea r9, [rsp + 0x38]
mov edi, dword [0x1402ced08]
lea r8, [rsp + 0x48]
mov qword [rsp + 0x38], rdx
xorps xmm0, xmm0
mov qword [rsp + 0x50], rdx
mov rcx, qword [rax]
mov qword [rsp + 0x40], rcx
lea rcx, [rsp + 0x78]
mov dword [rsp + 0x60], edx
mov qword [rsp + 0x58], rdx
mov edx, 2
mov dword [rsp + 0x48], 0x30
movdqu xmmword [rsp + 0x68], xmm0
call qword [sym.imp.ntdll.dll_NtOpenThread]
mov ebx, eax
cmp eax, 0xc0000022
jne 0x140010a2a
cmp edi, 5
jne 0x140010a2a
lea r8, [rsp + 0x38]
mov edx, 2
lea rcx, [rsp + 0x78]
call fcn.1401788e0
mov ebx, eax
test ebx, ebx
js 0x140010a50
mov rcx, qword [rsp + 0x78]
xor edx, edx
call qword [sym.imp.ntdll.dll_NtSuspendThread]
mov rcx, qword [rsp + 0x78]
mov ebx, eax
call qword [sym.imp.ntdll.dll_NtClose]
test ebx, ebx
jns 0x140010d4c
xor bpl, bpl
test r12b, r12b
jne 0x140010c17
lfence
mov rax, qword [r14]
lea rcx, str.Unable_to_suspend_thread__lu
mov edx, dword [rax]
call fcn.140001a60
lea r9, ds:[rsp + 0x30]
mov r8d, ebx
mov rcx, rsi
mov rdx, qword [rax + 8]
call fcn.140001ae0
test al, al
je 0x140010c17
cmp byte [rsp + 0x30], bpl
je 0x140010c0f
mov rcx, qword [r14]
xor r8d, r8d
mov edx, 2
mov rcx, qword [rcx]
call fcn.1400a5160
mov ebx, eax
test eax, eax
js 0x140010abe
mov bpl, 1
call sym.SystemInformer.exe_PhUiDisconnectFromPhSvc
jmp 0x140010d4c
mov rax, qword [r14]
lea rdx, str.suspend
lea rcx, str.Unable_to__s_thread__lu
mov r8d, dword [rax]
call fcn.140001a60
mov rdi, qword ds:[rax + 8]
cmp ebx, 0xc0000022
je 0x140010b15
cmp ebx, 0xc0000005
je 0x140010b15
mov eax, ebx
and eax, 0xfff0000
cmp eax, 0x70000
jne 0x140010b03
movzx eax, bx
jmp 0x140010b26
mov eax, ebx
and eax, 0xfff0000
cmp eax, 0xb0000
jne 0x140010b2a
mov eax, ebx
jmp 0x140010b26
lfence
mov ecx, ebx
call qword [sym.imp.ntdll.dll_RtlNtStatusToDosErrorNoTeb]
test eax, eax
jne 0x140010b36
lfence
mov ecx, ebx
call sym.SystemInformer.exe_PhGetNtMessage
jmp 0x140010b45
lfence
mov ecx, eax
call sym.SystemInformer.exe_PhGetWin32Message
mov rbx, rax
mov rcx, rsi
mov r8d, 0xfffe
test rdi, rdi
je 0x140010b73
test rax, rax
je 0x140010b62
mov edx, 0x21
jmp 0x140010b84
mov qword [rsp + 0x28], rdi
lea r9, [0x140239898]
jmp 0x140010bea
test rbx, rbx
je 0x140010bd7
mov edx, 9
lea rdi, [0x140239898]
mov r10d, 8
lea r9, [0x14023b2dc]
mov rax, rbx
lfence
mov rax, qword [r10 + rbx]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r9
mov r9, rdi
call sym.SystemInformer.exe_PhShowMessage2
lfence
lea rcx, [rbx - 0x10]
mov eax, 0xffffffff
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140010c05
lfence
call fcn.140142200
call sym.SystemInformer.exe_PhUiDisconnectFromPhSvc
jmp 0x140010d4c
lea rax, [0x140239898]
mov qword [rsp + 0x28], rax
lea r9, str.Unable_to_perform_the_operation.
lea rax, [0x14023b2dc]
mov edx, 9
mov qword [rsp + 0x20], rax
call sym.SystemInformer.exe_PhShowMessage2
call sym.SystemInformer.exe_PhUiDisconnectFromPhSvc
jmp 0x140010d4c
mov r12b, 1
jmp 0x140010d4c
mov rax, qword [r14]
lea rdx, str.suspend
lea rcx, str.Unable_to__s_thread__lu
mov r8d, dword [rax]
call fcn.140001a60
mov rdi, qword [rax + 8]
cmp ebx, 0xc0000022
je 0x140010c6d
nop dword [rax]
cmp ebx, 0xc0000005
je 0x140010c6d
mov eax, ebx
and eax, 0xfff0000
cmp eax, 0x70000
jne 0x140010c5b
movzx eax, bx
jmp 0x140010c78
mov eax, ebx
and eax, 0xfff0000
cmp eax, 0xb0000
jne 0x140010c7c
mov eax, ebx
jmp 0x140010c78
lfence
mov ecx, ebx
call qword [sym.imp.ntdll.dll_RtlNtStatusToDosErrorNoTeb]
test eax, eax
jne 0x140010c88
lfence
mov ecx, ebx
call sym.SystemInformer.exe_PhGetNtMessage
jmp 0x140010c92
lfence
mov ecx, eax
call sym.SystemInformer.exe_PhGetWin32Message
mov rbx, rax
mov rcx, rsi
mov r8d, 0xfffe
test rdi, rdi
je 0x140010cbf
test rax, rax
je 0x140010cb1
mov edx, 0x21
jmp 0x140010cd1
mov qword [rsp + 0x28], rdi
lea r9, [0x140239898]
jmp 0x140010d2f
nop
test rbx, rbx
je 0x140010d1c
mov edx, 9
lea rdi, [0x140239898]
mov r10d, 8
lea r9, [0x14023b2dc]
mov rax, rbx
lfence
mov rax, qword [r10 + rbx]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r9
mov r9, rdi
call sym.SystemInformer.exe_PhShowMessage2
mov edi, eax
lfence
lea rcx, [rbx - 0x10]
mov eax, 0xffffffff
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140010d47
lfence
call fcn.140142200
jmp 0x140010d47
lea rax, [0x140239898]
mov qword [rsp + 0x28], rax
lea r9, str.Unable_to_perform_the_operation.
lea rax, [0x14023b2dc]
mov edx, 9
mov qword [rsp + 0x20], rax
call sym.SystemInformer.exe_PhShowMessage2
mov edi, eax
cmp edi, 1
jne 0x140010d69
inc r15d
add r14, 8
mov edx, 0
cmp r15d, r13d
jb 0x1400109b1
mov rbx, qword [rsp + 0xe0]
movzx eax, bpl
mov rdi, qword [rsp + 0x90]
mov rcx, qword [rsp + 0x80]
xor rcx, rsp
call fcn.1401e5e20
add rsp, 0x98
pop r15
pop r14
pop r13
pop r12
pop rsi
pop rbp
ret
movzx eax, bpl
jmp 0x140010d7d