Function at 0x1400edd20
Capabilities:
Delete file

Disassembly:
push rbp
push rsi
push rdi
push r15
lea rbp, [rsp - 0x3f]
sub rsp, 0xd8
mov rax, qword [0x14035dc30]
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 0x1400edd57
mov rcx, qword [rdx]
call fcn.1400ec0c0
test al, al
jne 0x1400edd9f
cmp qword [rdi + 0x18], 8
jb 0x1400edd6a
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:BT42dac55d_4355_4669_9ab8_31cc00ddc957WebAdvisor_XmlUpdater_srcXmlUpdaterExtractCabLocalCommand.cpp
lea ecx, [r9 - 0x5b]
call fcn.1400bfe30
xor al, al
jmp 0x1400ee06c
mov qword [rsp + 0x118], r12
mov rcx, rsi
xor r12d, r12d
cmp qword [rsi + 0x18], 8
mov dword [rbp - 0x69], r12d
jb 0x1400eddbb
mov rcx, qword [rsi]
mov dl, 1
call fcn.1400c91f0
cmp qword [rsi + 0x18], 8
mov rcx, rsi
jb 0x1400eddcf
mov rcx, qword [rsi]
lea rdx, [rbp - 0x69]
call fcn.1400a8000
test al, al
jne 0x1400ede13
mov eax, dword [rbp - 0x69]
lea r8, str.XMLUpdater::v2::CExtractCabLocalCommand::ExecuteExtractCabLocalCommand
mov dword [rsp + 0x28], eax
lea rdx, str.E:BT42dac55d_4355_4669_9ab8_31cc00ddc957WebAdvisor_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.1400bfe30
xor al, al
jmp 0x1400ee064
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 0x1400ede61
mov rsi, qword [rsi]
mov qword [rsp + 0x100], rbx
cmp r14, 8
jae 0x1400ede80
movups xmm0, xmmword [rsi]
mov qword [rbp - 0x39], 7
movups xmmword [rbp - 0x51], xmm0
jmp 0x1400edec0
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.140026230
lea r8, [r14*2 + 2]
mov qword [rbp - 0x51], rax
mov rdx, rsi
mov rcx, rax
call fcn.14026bb50
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 0x1400edef1
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.140114490
mov rcx, qword [rbp - 0x21]
mov ebx, r12d
test al, al
jne 0x1400edfb5
test rcx, rcx
je 0x1400edf3a
call qword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
test eax, eax
jne 0x1400edf36
call fcn.1400ed920
mov ebx, eax
mov qword [rbp - 0x21], r12
mov rcx, qword [rbp - 0x11]
test rcx, rcx
je 0x1400edf5a
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test eax, eax
jne 0x1400edf56
test ebx, ebx
js 0x1400edf56
call fcn.1400ed920
mov qword [rbp - 0x11], r12
mov rcx, qword [rbp - 0x31]
test rcx, rcx
je 0x1400edf6d
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rbp - 0x31], r12
lea rcx, [rbp - 0x51]
call fcn.140025de0
cmp qword [rdi + 0x18], 8
jb 0x1400edf80
mov rdi, qword [rdi]
mov r9d, WSAGetLastError
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:BT42dac55d_4355_4669_9ab8_31cc00ddc957WebAdvisor_XmlUpdater_srcXmlUpdaterExtractCabLocalCommand.cpp
lea ecx, [r9 - 0x6b]
call fcn.1400bfe30
xor al, al
jmp 0x1400ee05c
test rcx, rcx
je 0x1400edfcf
call qword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
test eax, eax
jne 0x1400edfcb
call fcn.1400ed920
mov ebx, eax
mov qword [rbp - 0x21], r12
mov rcx, qword [rbp - 0x11]
test rcx, rcx
je 0x1400edfef
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test eax, eax
jne 0x1400edfeb
test ebx, ebx
js 0x1400edfeb
call fcn.1400ed920
mov qword [rbp - 0x11], r12
mov rcx, qword [rbp - 0x31]
test rcx, rcx
je 0x1400ee002
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rbp - 0x31], r12
lea rcx, [rbp - 0x51]
call fcn.140025de0
test r15b, r15b
je 0x1400ee05a
cmp qword [rdi + 0x18], 8
jb 0x1400ee01a
mov rdi, qword [rdi]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
test eax, eax
jne 0x1400ee05a
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x28], eax
mov r9d, reloc.WS2_32.dll_WSACleanup
lea r8, str.XMLUpdater::v2::CExtractCabLocalCommand::ExecuteExtractCabLocalCommand
lea rax, str.Failed_to_delete_src_cab___d_
lea rdx, str.E:BT42dac55d_4355_4669_9ab8_31cc00ddc957WebAdvisor_XmlUpdater_srcXmlUpdaterExtractCabLocalCommand.cpp
mov qword [rsp + 0x20], rax
lea ecx, [r9 - 0x73]
call fcn.1400bfe30
mov al, 1
mov rbx, qword [rsp + 0x100]
mov r12, qword [rsp + 0x118]
mov rcx, qword [rbp + 0x2f]
xor rcx, rsp
call fcn.140269300
add rsp, 0xd8
pop r15
pop rdi
pop rsi
pop rbp
ret