Function at 0x1402c8f40
Capabilities:
Delete directory

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x188
mov rsi, rcx
mov rax, qword [0x140430040]
xor rax, rsp
mov qword [rsp + 0x180], rax
movsx rax, byte [rcx + 0x2f]
test rax, rax
jns 0x1402c8f76
mov rax, qword [rsi + 0x20]
test rax, rax
je 0x1402c9085
lea rbx, [rsi + 0x18]
movabs rax, 0xaaaaaaaaaaaaaaaa
lea rdi, [rsp + 0x160]
mov qword [rdi + 0x10], rax
movaps xmm0, xmmword [0x1403d4b30]
movaps xmmword [rdi], xmm0
mov rcx, rbx
mov rdx, rdi
call fcn.14021c730
mov rcx, rbx
call fcn.1401030f0
test al, al
jne 0x1402c9047
mov ecx, 1
call fcn.14021c050
test al, al
je 0x1402c902b
lea rdx, str.....chromeinstallerutil_self_cleaning_temp_dir.cc
lea r14, [rsp + 0x28]
mov rcx, r14
mov r8d, 0x54
mov r9d, 1
call fcn.14010dcd0
lea rcx, [rsp + 0x38]
lea rdx, str.Failed_to_delete_temporary_directory
mov r8d, Ordinal_41
call fcn.1401f8290
mov rcx, rax
mov rdx, rbx
call fcn.14010a6f0
lea rdx, str.._Scheduling_for_deletion_at_reboot.
mov r8d, Ordinal_41
mov rcx, rax
call fcn.1401f8290
mov rcx, r14
call fcn.14010e2d0
mov rcx, rbx
call fcn.1402c6b20
mov bpl, 1
test al, al
jne 0x1402c9049
xor esi, esi
jmp 0x1402c911e
mov rcx, qword [rsi + 8]
jmp 0x1402c9056
xor ebp, ebp
movsx rax, byte [rsi + 0x17]
test rax, rax
js 0x1402c9041
mov rcx, rax
test rcx, rcx
je 0x1402c90fe
lea r14, [rsp + 0x28]
mov r13, qword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
mov rbx, qword [sym.imp.KERNEL32.dll_GetLastError]
lea r15, str.....chromeinstallerutil_self_cleaning_temp_dir.cc
lea r12, str.Error_removing_directory
jmp 0x1402c91ac
mov ecx, 2
call fcn.14021c050
test al, al
je 0x1402c90d2
lea rdx, str.....chromeinstallerutil_self_cleaning_temp_dir.cc
lea rsi, [rsp + 0x28]
mov rcx, rsi
mov r8d, Ordinal_73
mov r9d, 2
call fcn.14010dcd0
lea rcx, [rsp + 0x38]
lea rdx, str.Attempting_to_Delete_an_uninitialized_SelfCleaningTempDir.
mov r8d, 0x3a
call fcn.1401f8290
mov rcx, rsi
call fcn.14010e2d0
xor esi, esi
jmp 0x1402c912b
mov rax, qword [rsi + 0x18]
mov word [rax], 0
mov qword [rsi + 0x20], 0
jmp 0x1402c911b
mov rax, qword [rsi]
mov word [rax], 0
mov qword [rsi + 8], 0
jmp 0x1402c910b
mov al, byte [rsi + 0x17]
test al, al
js 0x1402c90e9
mov word [rsi], 0
mov byte [rsi + 0x17], 0
cmp byte [rsi + 0x2f], 0
js 0x1402c90d6
mov word [rsi + 0x18], 0
mov byte [rsi + 0x2f], 0
mov sil, 1
lea rcx, [rsp + 0x160]
call fcn.14021c6c0
mov rcx, qword [rsp + 0x180]
xor rcx, rsp
cmp rcx, qword [0x140430040]
je 0x1402c9145
call fcn.140278ca0
int3
mov eax, esi
add rsp, 0x188
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rdx, qword [rsp + 0x160]
mov rcx, rax
call fcn.1402f4050
mov rcx, r14
call fcn.1402f63a0
mov rcx, rdi
call fcn.1402c6930
mov rcx, rdi
mov rdx, rsi
call fcn.14010ff90
test al, al
jne 0x1402c90fb
mov rcx, rdi
mov rdx, r14
call fcn.14021c730
mov rcx, rdi
mov rdx, r14
call fcn.14010ff50
mov rcx, r14
call fcn.14021c6c0
test bpl, 1
jne 0x1402c9173
cmp byte [rsp + 0x177], 0
mov rcx, rdi
jns 0x1402c91c7
mov rcx, qword [rsp + 0x160]
call r13
test eax, eax
jne 0x1402c917b
mov ecx, 1
call fcn.14021c050
mov bpl, 1
test al, al
je 0x1402c9173
call rbx
cmp eax, 0x91
je 0x1402c9173
call sub.KERNEL32.dll_GetLastError
mov dword [rsp + 0x20], eax
mov rcx, r14
mov rdx, r15
mov r8d, 0x61
mov r9d, 1
call fcn.1402f6330
mov r8d, Ordinal_27
lea rcx, [rsp + 0x38]
mov rdx, r12
call fcn.1401f8290
cmp byte [rsp + 0x177], 0
mov rdx, rdi
jns 0x1402c9163
jmp 0x1402c915b