Function at 0x140003a00
Capabilities:
Shutdown system

Disassembly:
mov dword ss:[rsp + 0x10], edx
push rbp
push rbx
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x38]
sub rsp, 0x138
mov r14, rcx
mov qword [rsp + 0x48], 0x1c
lea rax, str.EnableWarnings
mov r15d, edx
lea rcx, [rsp + 0x48]
mov qword [rsp + 0x50], rax
mov esi, 0xc0000001
call sym.SystemInformer.exe_PhGetIntegerStringRefSetting
test eax, eax
je 0x140003d37
lea r15, str.restart
mov qword [rsp + 0x170], r12
mov rbx, r15
mov qword [rsp + 0x130], r13
and rbx, 0xfffffffffffffff1
mov rcx, r15
xorps xmm1, xmm1
and ecx, 0xf
je 0x140003a9a
movdqu xmm0, xmmword [rbx]
pcmpeqw xmm0, xmm1
pmovmskb eax, xmm0
shr eax, cl
bsf ecx, eax
mov dword [rbp + 0x80], ecx
je 0x140003a96
mov ebx, ecx
shr rbx, 1
jmp 0x140003adb
add rbx, 0x10
movdqu xmm0, xmmword [rbx]
pcmpeqw xmm0, xmm1
pmovmskb eax, xmm0
bsf ecx, eax
mov dword [rbp + 0x80], ecx
jne 0x140003acd
movdqu xmm0, xmmword [rbx + 0x10]
add rbx, 0x10
pcmpeqw xmm0, xmm1
pmovmskb eax, xmm0
bsf ecx, eax
mov dword [rbp + 0x80], ecx
je 0x140003ab1
sub rbx, r15
mov eax, ecx
sar rbx, 1
shr rax, 1
add rbx, rax
mov rdx, qword [0x1402bfcf8]
add rbx, rbx
lea rcx, [rbx + 0x12]
call sym.SystemInformer.exe_PhCreateObject
mov rdi, rax
mov r8, rbx
mov rdx, r15
lea rcx, [rax + 0x10]
mov qword [rax], rbx
mov qword [rax + 8], rcx
xor eax, eax
mov word [rbx + rcx], ax
mov rcx, qword [rdi + 8]
call fcn.1401e3aa0
mov rcx, rdi
call sym.SystemInformer.exe_PhAutoDereferenceObject
mov rdx, qword [0x1402bfcf8]
mov r13, qword [rax]
mov r12, qword [rax + 8]
lea rcx, [r13 + 0x12]
call sym.SystemInformer.exe_PhCreateObject
mov r15, rax
lea rcx, [rax + 0x10]
mov qword [rax], r13
mov qword [rax + 8], rcx
xor eax, eax
mov word [rcx + r13], ax
test r12, r12
je 0x140003b72
mov rdi, r13
mov ebx, eax
shr rdi, 1
je 0x140003b6f
movzx ecx, word [r12 + rbx*2]
call qword [sym.imp.ntdll.dll_RtlDowncaseUnicodeChar]
mov rcx, qword [r15 + 8]
mov word [rcx + rbx*2], ax
inc rbx
cmp rbx, rdi
jb 0x140003b54
mov qword [r15], r13
mov rcx, r15
call sym.SystemInformer.exe_PhAutoDereferenceObject
mov rdx, qword [0x1402bfcf8]
mov r15, rax
mov rdi, qword [rax]
mov r12, qword [rax + 8]
lea rcx, [rdi + 0x12]
call sym.SystemInformer.exe_PhCreateObject
mov r13, qword [rsp + 0x130]
mov rbx, rax
lea rcx, [rax + 0x10]
mov qword [rax], rdi
mov qword [rax + 8], rcx
xor eax, eax
mov word [rdi + rcx], ax
test r12, r12
je 0x140003bc5
mov rcx, qword ds:[rbx + 8]
mov r8, rdi
mov rdx, r12
call fcn.1401e3aa0
mov rcx, rbx
call sym.SystemInformer.exe_PhAutoDereferenceObject
mov r12, qword [rsp + 0x170]
cmp qword [rax], 0
lea rbx, [rax + 8]
jbe 0x140003bf1
mov rax, qword [rbx]
movzx ecx, word [rax]
call qword [sym.imp.ntdll.dll_RtlUpcaseUnicodeChar]
mov rcx, qword [rbx]
mov word [rcx], ax
mov rdx, qword [r15 + 8]
lea r9, str.the_computer
lea r8, [0x14023646c]
mov ecx, 3
call fcn.140001780
xor edx, edx
lea rcx, [rbp - 0x70]
mov r8d, 0xa0
mov rdi, rax
call fcn.1401dff50
mov rcx, qword [0x1402bfd08]
mov qword ds:[rbp - 0x64], rcx
mov dword [rbp - 0x70], 0xa0
mov qword [rbp - 0x6c], r14
test r14, r14
je 0x140003c64
mov rcx, r14
call qword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x140003c64
mov rcx, r14
call qword [sym.imp.USER32.dll_IsIconic]
test eax, eax
mov eax, 0x1008
je 0x140003c69
mov eax, 8
mov r8, qword [rdi + 8]
lea r9, [0x14026e7d0]
mov dword [rbp - 0x5c], eax
lea rdx, str.Do_you_want_to
mov rax, qword [0x1402bfd10]
mov ecx, 3
mov qword [rbp - 0x54], rax
mov qword [rbp - 0x4c], 0xfffd
call fcn.140001780
xor r9d, r9d
lea rdx, [rbp + 0x88]
xor r8d, r8d
mov rcx, qword [rax + 8]
mov rax, qword [rbx]
mov qword [rsp + 0x34], rax
lea rax, [0x1402661e8]
mov qword [rsp + 0x40], rax
lea rax, [rsp + 0x30]
mov qword [rbp - 0x44], rcx
lea rcx, [rbp - 0x70]
mov qword [rbp - 0x30], rax
mov dword [rsp + 0x30], 6
mov dword [rsp + 0x3c], 7
mov dword [rbp - 0x34], 2
mov dword [rbp - 0x28], 6
mov dword [rbp + 0x2c], 0xc8
call qword [sym.imp.COMCTL32.dll_Ordinal_345]
nop dword [rax]
test eax, eax
js 0x140003d0d
cmp dword [rbp + 0x88], 6
jmp 0x140003d28
mov r9, qword [rdi + 8]
lea r8, str.Are_you_sure_you_want_to__s_
mov edx, 0x134
mov rcx, r14
call sym.SystemInformer.exe_PhShowMessage
cmp eax, 6
sete al
test al, al
je 0x140003f32
mov r15d, dword [rbp + 0x78]
lea rax, str.EnableBootObjectsEnumerate
mov qword [rsp + 0x58], 0x34
lea rcx, [rsp + 0x58]
mov qword [rsp + 0x60], rax
call sym.SystemInformer.exe_PhGetIntegerStringRefSetting
test eax, eax
mov qword [rsp + 0x68], 0x48
lea rax, str.EnableUpdateDefaultFirmwareBootEntry
lea rcx, [rsp + 0x68]
mov qword [rsp + 0x70], rax
setne bl
call sym.SystemInformer.exe_PhGetIntegerStringRefSetting
test eax, eax
movzx ecx, bl
setne dil
call fcn.140167360
mov rbx, rax
test rax, rax
je 0x140003e7d
cmp r15d, dword [rax]
jae 0x140003dbe
lfence
mov rcx, qword [rax + 8]
movzx edx, dil
mov r8d, r15d
mov r9, qword [rcx + r8*8]
lea rcx, [rbp - 0x80]
movups xmm0, xmmword [r9]
movaps xmmword [rbp - 0x80], xmm0
call fcn.140166aa0
mov esi, eax
mov rcx, rbx
call fcn.140167540
test esi, esi
js 0x140003e5e
mov r9d, 5
mov dword [rsp + 0x20], 0x80000000
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.ADVAPI32.dll_InitiateShutdownW]
test eax, eax
je 0x140003f32
mov ecx, eax
call sym.SystemInformer.exe_PhGetWin32Message
lea r8, [0x140232c58]
mov rbx, rax
lea r9, str.Unable_to_configure_the_boot_application.
test rax, rax
je 0x140003f25
mov rcx, qword [rax + 8]
mov edx, 0x20
mov qword [rsp + 0x28], rcx
mov rcx, r14
mov qword [rsp + 0x20], r8
mov r8d, 0xfffe
call sym.SystemInformer.exe_PhShowMessage2
lea rcx, [rbx - 0x10]
mov eax, 0xffffffff
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140003f32
add rsp, 0x138
pop r15
pop r14
pop rdi
pop rsi
pop rbx
pop rbp
jmp fcn.14013d2a0
nop
cmp esi, 0xc0000022
je 0x140003e70
cmp esi, 0xc0000005
jne 0x140003e7d
lfence
mov ecx, esi
call qword [sym.imp.ntdll.dll_RtlNtStatusToDosErrorNoTeb]
jmp 0x140003ea0
mov eax, esi
and eax, 0xfff0000
cmp eax, 0x70000
jne 0x140003e90
movzx eax, si
jmp 0x140003ea0
mov eax, esi
and eax, 0xfff0000
cmp eax, 0xb0000
jne 0x140003eb0
mov eax, esi
test eax, eax
je 0x140003eb0
lfence
mov ecx, eax
call sym.SystemInformer.exe_PhGetWin32Message
jmp 0x140003eba
lfence
mov ecx, esi
call sym.SystemInformer.exe_PhGetNtMessage
lea r8, [0x140232c58]
mov rbx, rax
lea r9, str.Unable_to_configure_the_boot_application.
test rax, rax
je 0x140003f25
lfence
lfence
mov rax, qword [rax + 8]
mov edx, 0x20
mov qword [rsp + 0x28], rax
mov rcx, r14
mov qword [rsp + 0x20], r8
mov r8d, 0xfffe
call sym.SystemInformer.exe_PhShowMessage2
lea rcx, [rbx - 0x10]
mov eax, 0xffffffff
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140003f32
lfence
add rsp, 0x138
pop r15
pop r14
pop rdi
pop rsi
pop rbx
pop rbp
jmp fcn.14013d2a0
mov edx, 0x10
mov rcx, r14
call sym.SystemInformer.exe_PhShowMessage
add rsp, 0x138
pop r15
pop r14
pop rdi
pop rsi
pop rbx
pop rbp
ret