Function at 0x1400f9c80
Capabilities:
Delete file

Disassembly:
push rbp
push rsi
push rdi
push r15
lea rbp, [rsp - 0x3f]
sub rsp, 0xd8
mov rax, qword [0x14039bc30]
xor rax, rsp
mov qword [rbp + 0x2f], rax
cmp qword [rdx + 0x18], 8
movzx r15d, r9b
mov rsi, r8
mov rdi, rdx
mov rcx, rdx
jb 0x1400f9cb7
mov rcx, qword [rdx]
call fcn.1400f74d0
test al, al
jne 0x1400f9cff
cmp qword [rdi + 0x18], 8
jb 0x1400f9cca
mov rdi, qword [rdi]
mov r9d, 0x5c
mov qword [rsp + 0x28], rdi
lea rax, str.Unable_to_verify_signature_for_file:__s
lea r8, str.XMLUpdater::v2::CExtractCabLocalCommand::ExecuteExtractCabLocalCommand
mov qword [rsp + 0x20], rax
lea rdx, str.E:BT71e4c9fa_1978_4386_a3da_49ea31fa22b7WebAdvisor_XmlUpdater_srcXmlUpdaterExtractCabLocalCommand.cpp
lea ecx, [r9 - 0x5b]
call fcn.1400da630
xor al, al
jmp 0x1400f9fcc
mov qword [rsp + 0x118], r12
mov rcx, rsi
xor r12d, r12d
cmp qword [rsi + 0x18], 8
mov dword [rbp - 0x69], r12d
jb 0x1400f9d1b
mov rcx, qword [rsi]
mov dl, 1
call fcn.1400dd620
cmp qword [rsi + 0x18], 8
mov rcx, rsi
jb 0x1400f9d2f
mov rcx, qword [rsi]
lea rdx, [rbp - 0x69]
call fcn.1400bd2f0
test al, al
jne 0x1400f9d73
mov eax, dword [rbp - 0x69]
lea r8, str.XMLUpdater::v2::CExtractCabLocalCommand::ExecuteExtractCabLocalCommand
mov dword [rsp + 0x28], eax
lea rdx, str.E:BT71e4c9fa_1978_4386_a3da_49ea31fa22b7WebAdvisor_XmlUpdater_srcXmlUpdaterExtractCabLocalCommand.cpp
mov r9d, 0x64
lea rax, str.Unable_to_create_destination_directory___d_
mov qword [rsp + 0x20], rax
lea ecx, [r9 - 0x63]
call fcn.1400da630
xor al, al
jmp 0x1400f9fc4
xorps xmm0, xmm0
mov qword [rsp + 0xd0], r14
mov r14, qword [rsi + 0x10]
xor eax, eax
cmp qword [rsi + 0x18], 8
movups xmmword [rbp - 0x59], xmm0
mov qword [rbp + 7], rax
lea rax, vtable.XMLUpdater::v2::CCabParser.0
movups xmmword [rbp - 0x49], xmm0
mov qword [rbp - 0x59], rax
movups xmmword [rbp - 0x39], xmm0
mov qword [rbp - 0x51], r12
movups xmmword [rbp - 0x29], xmm0
mov qword [rbp - 0x41], r12
movups xmmword [rbp - 0x19], xmm0
mov qword [rbp - 0x39], r12
movups xmmword [rbp - 9], xmm0
jb 0x1400f9dc1
mov rsi, qword [rsi]
mov qword [rsp + 0x100], rbx
cmp r14, 8
jae 0x1400f9de0
movups xmm0, xmmword [rsi]
mov qword [rbp - 0x39], 7
movups xmmword [rbp - 0x51], xmm0
jmp 0x1400f9e20
movabs rax, 0x7ffffffffffffffe
lea rcx, [rbp - 0x51]
mov rbx, r14
or rbx, 7
cmp rbx, rax
cmova rbx, rax
lea rdx, [rbx + 1]
call fcn.140033890
lea r8, [r14*2 + 2]
mov qword [rbp - 0x51], rax
mov rdx, rsi
mov rcx, rax
call fcn.14013d0f0
mov qword [rbp - 0x39], rbx
cmp qword [rdi + 0x18], 8
xorps xmm0, xmm0
mov qword [rbp - 0x41], r14
mov rcx, rdi
mov r14, qword [rsp + 0xd0]
movdqa xmmword [rbp - 0x29], xmm0
mov qword [rbp - 0x31], r12
mov qword [rbp - 0x11], r12
mov qword [rbp + 7], 0xffffffffffffffff
jb 0x1400f9e51
mov rcx, qword [rdi]
lea rax, vtable.XMLUpdater::v2::NCab::CParserCallbackImplT_class_XMLUpdater::v2::CCabParser_.0
mov dword [rbp + 0x27], r12d
mov qword [rbp + 0x17], rax
lea rdx, [rbp + 0x17]
lea rax, [rbp - 0x59]
mov qword [rbp + 0x1f], rax
call fcn.1401042e0
mov rcx, qword [rbp - 0x21]
mov ebx, r12d
test al, al
jne 0x1400f9f15
test rcx, rcx
je 0x1400f9e9a
call qword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
test eax, eax
jne 0x1400f9e96
call fcn.1400f9880
mov ebx, eax
mov qword [rbp - 0x21], r12
mov rcx, qword [rbp - 0x11]
test rcx, rcx
je 0x1400f9eba
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test eax, eax
jne 0x1400f9eb6
test ebx, ebx
js 0x1400f9eb6
call fcn.1400f9880
mov qword [rbp - 0x11], r12
mov rcx, qword [rbp - 0x31]
test rcx, rcx
je 0x1400f9ecd
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rbp - 0x31], r12
lea rcx, [rbp - 0x51]
call fcn.140033a90
cmp qword [rdi + 0x18], 8
jb 0x1400f9ee0
mov rdi, qword [rdi]
mov r9d, 0x6c
mov qword [rsp + 0x28], rdi
lea rax, str.Failed_to_extract_cab___s_
lea r8, str.XMLUpdater::v2::CExtractCabLocalCommand::ExecuteExtractCabLocalCommand
mov qword [rsp + 0x20], rax
lea rdx, str.E:BT71e4c9fa_1978_4386_a3da_49ea31fa22b7WebAdvisor_XmlUpdater_srcXmlUpdaterExtractCabLocalCommand.cpp
lea ecx, [r9 - 0x6b]
call fcn.1400da630
xor al, al
jmp 0x1400f9fbc
test rcx, rcx
je 0x1400f9f2f
call qword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
test eax, eax
jne 0x1400f9f2b
call fcn.1400f9880
mov ebx, eax
mov qword [rbp - 0x21], r12
mov rcx, qword [rbp - 0x11]
test rcx, rcx
je 0x1400f9f4f
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test eax, eax
jne 0x1400f9f4b
test ebx, ebx
js 0x1400f9f4b
call fcn.1400f9880
mov qword [rbp - 0x11], r12
mov rcx, qword [rbp - 0x31]
test rcx, rcx
je 0x1400f9f62
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rbp - 0x31], r12
lea rcx, [rbp - 0x51]
call fcn.140033a90
test r15b, r15b
je 0x1400f9fba
cmp qword [rdi + 0x18], 8
jb 0x1400f9f7a
mov rdi, qword [rdi]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
test eax, eax
jne 0x1400f9fba
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x28], eax
mov r9d, 0x74
lea r8, str.XMLUpdater::v2::CExtractCabLocalCommand::ExecuteExtractCabLocalCommand
lea rax, str.Failed_to_delete_src_cab___d_
lea rdx, str.E:BT71e4c9fa_1978_4386_a3da_49ea31fa22b7WebAdvisor_XmlUpdater_srcXmlUpdaterExtractCabLocalCommand.cpp
mov qword [rsp + 0x20], rax
lea ecx, [r9 - 0x73]
call fcn.1400da630
mov al, 1
mov rbx, qword [rsp + 0x100]
mov r12, qword [rsp + 0x118]
mov rcx, qword [rbp + 0x2f]
xor rcx, rsp
call fcn.14013af80
add rsp, 0xd8
pop r15
pop rdi
pop rsi
pop rbp
ret