Function at 0x140025740
Capabilities:
Delete directory

Disassembly:
push rbp
lea rbp, [rsp - 0x1500]
mov eax, 0x1600
call fcn.14024c240
sub rsp, rax
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov qword [rsp + 0x1618], rbx
mov qword [rsp + 0x1620], rsi
mov qword [rsp + 0x1628], rdi
mov rax, qword [0x140398250]
xor rax, rsp
mov qword [rbp + 0x14f0], rax
mov rbx, rcx
call fcn.140106b20
cmp dword [rbx + 0x1d8], 0
jne 0x1400257bb
mov rcx, qword [rbx + 0x1d0]
test rcx, rcx
je 0x1400257bb
mov r9d, dword [0x1403b95bc]
xor r8d, r8d
mov edx, 0x401
call qword [sym.imp.USER32.dll_PostMessageW]
cmp qword [rbx + 0x160], 0
je 0x14002587b
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x238]
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x48]
mov r9, qword [rax]
lea r8, [rbp + 0xcf0]
lea rdx, str.SILENTREBOOT
mov rcx, rax
call qword [r9 + 0x18]
mov r11, qword [rbx]
mov rcx, rbx
call qword [r11 + 0x268]
test eax, eax
je 0x14002584c
lea rdx, [0x1402e2d70]
lea rcx, [rbp + 0xcf0]
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
je 0x14002584c
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x238]
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x48]
mov r9, qword [rax]
lea r8, [0x1402e2d90]
lea rdx, str.RebootYesNo
mov rcx, rax
call qword [r9 + 0x20]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x238]
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x48]
mov r9, qword [rax]
lea r8, [rbp + 0x4f0]
lea rdx, str.RebootYesNo
mov rcx, rax
call qword [r9 + 0x18]
jmp 0x14002588f
lea rdx, [0x1402e3828]
lea rcx, [rbp + 0x4f0]
call qword [sym.imp.KERNEL32.dll_lstrcpyW]
mov rax, qword [rbx]
xor edx, edx
mov rcx, rbx
call qword [rax + 0x2f8]
xor edi, edi
cmp qword [rbx + 0x170], rdi
je 0x1400258e1
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x248]
cmp qword [rax + 0x78], rdi
je 0x1400258e1
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x248]
mov rcx, qword [rax + 0x78]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov r11, qword [rbx]
mov rcx, rbx
call qword [r11 + 0x248]
mov qword [rax + 0x78], rdi
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x228]
movzx eax, word [0x1403b95bc]
cmp eax, 8
je 0x14002590a
cmp eax, 0x64
je 0x14002590a
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x308]
lea rsi, vtable.CBaseInfoOSEnv.0
mov qword [rsp + 0x30], rsi
mov qword [rbp + 0xb8], 7
mov qword [rbp + 0xb0], rdi
mov word [rbp + 0xa0], di
mov qword [rsp + 0x38], rdi
mov dword [rsp + 0x44], edi
xor r8d, r8d
lea rdx, [0x1402dc4e0]
lea rcx, [rbp + 0xa0]
call fcn.140001f40
nop
lea rax, vtable.CPDLInfoOSEnv.0
mov qword [rsp + 0x30], rax
mov word [rbp + 0xd0], di
xor edx, edx
mov r8d, 0x206
lea rcx, [rbp + 0xd2]
call fcn.14024b970
mov word [rbp + 0x2e0], di
xor edx, edx
mov r8d, 0x206
lea rcx, [rbp + 0x2e2]
call fcn.14024b970
lea r8, [rbp + 0xd0]
mov edx, 0x26
lea rcx, [rsp + 0x30]
call qword [method.CBaseInfoOSEnv.virtual_216]
lea rcx, [rbp + 0xd0]
call qword [sym.imp.SHLWAPI.dll_PathAddBackslashW]
lea rdx, str.Canon_
lea rcx, [rbp + 0xd0]
call qword [sym.imp.KERNEL32.dll_lstrcatW]
lea rdx, [rbp + 0xd0]
lea rcx, [rbp + 0x2e0]
call qword [sym.imp.KERNEL32.dll_lstrcpyW]
lea rdx, str.PrnUninstall_
lea rcx, [rbp + 0x2e0]
call qword [sym.imp.KERNEL32.dll_lstrcatW]
lea rcx, [rbp + 0x2e0]
call qword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
lea rcx, [rbp + 0xd0]
call qword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
lea rdx, [0x1402e2d90]
lea rcx, [rbp + 0x4f0]
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x140025a30
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x290]
nop
mov qword [rsp + 0x30], rsi
cmp qword [rbp + 0xb8], 8
jb 0x140025a4b
mov rcx, qword [rbp + 0xa0]
call fcn.1401026ec
mov eax, 1
mov rcx, qword [rbp + 0x14f0]
xor rcx, rsp
call fcn.140245660
lea r11, [rsp + 0x1600]
mov rbx, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rdi, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret