Function at 0x140062690
Capabilities:
Check if file exists

Disassembly:
mov rax, rsp
push rbp
push rdi
push r14
lea rbp, [rax - 0x68]
sub rsp, 0x150
mov qword [rsp + 0x50], 0xfffffffffffffffe
mov qword [rax + 0x18], rbx
mov qword [rax + 0x20], rsi
mov rax, qword [section..data]
xor rax, rsp
mov qword [rbp + 0x40], rax
mov rsi, rdx
mov rdi, rcx
cmp qword [rcx + 0x10], 0
je 0x1400627c6
cmp qword [rcx + 0x18], 8
jb 0x1400626dc
mov rcx, qword [rcx]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
xor ebx, ebx
test eax, eax
je 0x14006281d
mov qword [rbp - 0x70], rbx
mov qword [rbp - 0x68], rbx
mov qword [rbp - 0x68], 7
mov qword [rbp - 0x70], rbx
mov word [rbp - 0x80], bx
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x78], rbx
mov qword [rsp + 0x78], 7
mov qword [rsp + 0x70], rbx
mov word [rsp + 0x60], bx
lea r8, [rsp + 0x60]
mov dl, 1
mov rcx, rdi
call fcn.140061210
shr rax, 0x27
not eax
test al, 1
jne 0x1400627cd
lea r8, [rbp - 0x80]
mov dl, 1
mov rcx, rsi
call fcn.140061210
shr rax, 0x27
not eax
test al, 1
jne 0x1400627cd
lea rdx, [rsp + 0x60]
cmp qword [rsp + 0x78], 8
cmovae rdx, qword [rsp + 0x60]
lea rcx, [rbp - 0x80]
cmp qword [rbp - 0x68], 8
cmovae rcx, qword [rbp - 0x80]
call qword [sym.imp.MSVCR120.dll__wcsicmp]
test eax, eax
jne 0x1400627cd
cmp qword [rsp + 0x78], 8
jb 0x140062792
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.MSVCR120.dll_void___cdecl_operator_delete_void____ptr64_]
mov qword [rsp + 0x78], 7
mov qword [rsp + 0x70], rbx
mov word [rsp + 0x60], bx
cmp qword [rbp - 0x68], 8
jb 0x1400627b6
mov rcx, qword [rbp - 0x80]
call qword [sym.imp.MSVCR120.dll_void___cdecl_operator_delete_void____ptr64_]
mov qword [rbp - 0x68], 7
mov qword [rbp - 0x70], rbx
mov word [rbp - 0x80], bx
xor al, al
jmp 0x140062f30
mov rcx, rdi
call fcn.140062330
nop
cmp qword [rsp + 0x78], 8
jb 0x1400627e9
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.MSVCR120.dll_void___cdecl_operator_delete_void____ptr64_]
mov qword [rsp + 0x78], 7
mov qword [rsp + 0x70], rbx
mov word [rsp + 0x60], bx
cmp qword [rbp - 0x68], 8
jb 0x14006280d
mov rcx, qword [rbp - 0x80]
call qword [sym.imp.MSVCR120.dll_void___cdecl_operator_delete_void____ptr64_]
mov qword [rbp - 0x68], 7
mov qword [rbp - 0x70], rbx
mov word [rbp - 0x80], bx
mov rcx, rdi
call fcn.14000f280
mov r14, rax
mov rcx, rax
shr rcx, 0x27
not ecx
test cl, 1
je 0x140062b85
cmp qword [rsi + 0x18], 8
jb 0x140062844
mov rsi, qword [rsi]
mov qword [rsp + 0x48], rsi
cmp qword [rdi + 0x18], 8
jb 0x140062853
mov rdi, qword [rdi]
mov qword [rsp + 0x40], rdi
mov qword [rbp - 0x30], rbx
mov qword [rbp - 0x28], rbx
mov qword [rbp - 0x28], 7
mov qword [rbp - 0x30], rbx
mov word [rbp - 0x40], bx
mov r8d, 0x42
lea rdx, str.Failed_to_publish_package_link__1__with_target__2_._Error:__3_
lea rcx, [rbp - 0x40]
call fcn.140007d00
nop
mov qword [rbp - 0x50], rbx
mov qword [rbp - 0x48], rbx
mov qword [rbp - 0x48], 7
mov qword [rbp - 0x50], rbx
mov word [rbp - 0x60], bx
movzx eax, word [0x14015e140]
neg ax
sbb r8, r8
and r8d, 0xb
lea rdx, [0x14015e140]
lea rcx, [rbp - 0x60]
call fcn.140007d00
nop
call fcn.140033ad0
lea r8, [rbp - 0x40]
lea rdx, [rbp + 8]
call fcn.14008e6f0
mov rsi, rax
mov qword [rbp - 0x10], rbx
mov qword [rbp - 8], rbx
mov qword [rbp - 8], 0xf
mov qword [rbp - 0x10], rbx
mov byte [rbp - 0x20], 0
mov r8d, MsiGetFeatureCostA
lea rdx, str.AppV::Integration::PublishPackageLink::Create
lea rcx, [rbp - 0x20]
call fcn.1400083b0
nop
mov dword [rbp], 0x98
mov qword [rsp + 0x30], r14
mov r8d, dword [rsi + 8]
lea eax, [r8 + 1]
mov dword [rsi + 8], eax
lea rdx, [rsp + 0x38]
mov rcx, rsi
call fcn.14008df30
nop
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x140062959
mov qword [rbp - 0x80], rsi
lea rax, [rsp + 0x40]
mov qword [rbp - 0x78], rax
movaps xmm0, xmmword [rbp - 0x80]
movdqa xmmword [rsp + 0x60], xmm0
lea r8, [rsp + 0x60]
mov rdx, rbx
call fcn.14003b4a0
nop
mov rcx, qword [rsp + 0x38]
mov qword [rsp + 0x38], rbx
test rcx, rcx
je 0x140062981
nop dword [rax + rax]
mov rdi, qword [rcx]
call qword [sym.imp.MSVCR120.dll_void___cdecl_operator_delete_void____ptr64_]
mov rcx, rdi
test rdi, rdi
jne 0x140062970
mov r8d, dword [rsi + 8]
lea eax, [r8 + 1]
mov dword [rsi + 8], eax
lea rdx, [rbp - 0x80]
mov rcx, rsi
call fcn.14008df30
nop
mov rcx, qword [rbp - 0x80]
test rcx, rcx
je 0x1400629ca
mov qword [rsp + 0x60], rsi
lea rax, [rsp + 0x48]
mov qword [rsp + 0x68], rax
movaps xmm0, xmmword [rsp + 0x60]
movdqa xmmword [rsp + 0x60], xmm0
lea r8, [rsp + 0x60]
mov rdx, rbx
call fcn.14003b4a0
nop
mov rcx, qword [rbp - 0x80]
mov qword [rbp - 0x80], rbx
test rcx, rcx
je 0x1400629e8
mov rdi, qword [rcx]
call qword [sym.imp.MSVCR120.dll_void___cdecl_operator_delete_void____ptr64_]
mov rcx, rdi
test rdi, rdi
jne 0x1400629d7
lea rdx, [rsp + 0x30]
mov rcx, rsi
call fcn.14008db00
lea rdx, [rsp + 0x60]
mov rcx, rax
call fcn.14008ded0
nop
mov r9, rax
lea r8, [rbp - 0x60]
mov edx, 1
lea rcx, [rbp - 0x20]
call fcn.14008e7d0
nop
cmp qword [rsp + 0x78], 8
jb 0x140062a2c
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.MSVCR120.dll_void___cdecl_operator_delete_void____ptr64_]
mov qword [rsp + 0x78], 7
mov qword [rsp + 0x70], rbx
mov word [rsp + 0x60], bx
cmp qword [rbp - 8], 0x10
jb 0x140062a50
mov rcx, qword [rbp - 0x20]
call qword [sym.imp.MSVCR120.dll_void___cdecl_operator_delete_void____ptr64_]
mov qword [rbp - 8], 0xf
mov qword [rbp - 0x10], rbx
mov byte [rbp - 0x20], 0
lea rax, vtable.AppV::LogFormatter.0
mov qword [rbp + 8], rax
cmp qword [rbp + 0x30], 8
jb 0x140062a7c
mov rcx, qword [rbp + 0x18]
call qword [sym.imp.MSVCR120.dll_void___cdecl_operator_delete_void____ptr64_]
mov qword [rbp + 0x30], 7
mov qword [rbp + 0x28], rbx
mov word [rbp + 0x18], bx
cmp qword [rbp - 0x48], 8
jb 0x140062a9d
mov rcx, qword [rbp - 0x60]
call qword [sym.imp.MSVCR120.dll_void___cdecl_operator_delete_void____ptr64_]
mov qword [rbp - 0x48], 7
mov qword [rbp - 0x50], rbx
mov word [rbp - 0x60], bx
cmp qword [rbp - 0x28], 8
jb 0x140062abe
mov rcx, qword [rbp - 0x40]
call qword [sym.imp.MSVCR120.dll_void___cdecl_operator_delete_void____ptr64_]
mov qword [rbp - 0x28], 7
mov qword [rbp - 0x30], rbx
mov word [rbp - 0x40], bx
lea rax, [0x140160748]
mov qword [rsp + 0x30], rax
xor r8d, r8d
lea rdx, [rsp + 0x30]
lea rcx, [rbp + 8]
call qword [sym.imp.MSVCR120.dll_public:_void___cdecl_std::exception::constructor_char_const__const___ptr64_const____ptr64__int____ptr64]
nop
lea rax, vtable.SwException.0
mov qword [rbp + 8], rax
mov qword [rbp + 0x20], r14
mov qword [rbp + 0x28], rbx
mov dword [rbp + 0x30], ebx
mov qword [rbp + 0x38], rbx
cmp byte [0x1402088b9], 0
je 0x140062b5b
mov rdx, qword [0x1402088a8]
mov rax, rdx
xor rax, r14
movabs rcx, 0x8000000000
test rcx, rax
jne 0x140062b5b
mov rax, rdx
xor rax, r14
movabs rcx, 0x2000000000
test rcx, rax
jne 0x140062b5b
mov rcx, rdx
shr rcx, 0x20
mov rax, r14
shr rax, 0x20
xor cl, al
test cl, 0x1f
jne 0x140062b5b
cmp r14d, edx
je 0x140062b6d
cmp byte [0x1402088b8], 0
je 0x140062b74
cmp r14d, dword [0x1402088c0]
jne 0x140062b74
call qword [sym.imp.KERNEL32.dll_DebugBreak]
nop
lea rdx, [0x1401f8420]
lea rcx, [rbp + 8]
call sub.MSVCR120.dll__CxxThrowException
int3
mov rdx, rsi
mov rcx, rdi
call fcn.140060df0
mov r14d, eax
test eax, eax
je 0x140062f2e
mov edx, MsiPreviewDialogW
lea rcx, str...integration_commands.cpp
call qword [sym.imp.MSVCR120.dll_strrchr]
test rax, rax
je 0x140062bb7
inc rax
jmp 0x140062bbe
lea rax, str...integration_commands.cpp
mov rdx, rax
lea rcx, [0x140209428]
call fcn.140005ff0
shl rax, 0x34
or r14, rax
movabs rax, 0x142100000000
or r14, rax
cmp qword [rsi + 0x18], 8
jb 0x140062beb
mov rsi, qword [rsi]
mov qword [rsp + 0x48], rsi
cmp qword [rdi + 0x18], 8
jb 0x140062bfa
mov rdi, qword [rdi]
mov qword [rsp + 0x30], rdi
mov qword [rbp - 0x50], rbx
mov qword [rbp - 0x48], rbx
mov qword [rbp - 0x48], 7
mov qword [rbp - 0x50], rbx
mov word [rbp - 0x60], bx
mov r8d, 0x42
lea rdx, str.Failed_to_publish_package_link__1__with_target__2_._Error:__3_
lea rcx, [rbp - 0x60]
call fcn.140007d00
nop
mov qword [rbp - 0x30], rbx
mov qword [rbp - 0x28], rbx
mov qword [rbp - 0x28], 7
mov qword [rbp - 0x30], rbx
mov word [rbp - 0x40], bx
movzx eax, word [0x14015e140]
neg ax
sbb r8, r8
and r8d, 0xb
lea rdx, [0x14015e140]
lea rcx, [rbp - 0x40]
call fcn.140007d00
nop
call fcn.140033ad0
lea r8, [rbp - 0x60]
lea rdx, [rbp + 8]
call fcn.14008e6f0
mov rsi, rax
mov qword [rbp - 0x10], rbx
mov qword [rbp - 8], rbx
mov qword [rbp - 8], 0xf
mov qword [rbp - 0x10], rbx
mov byte [rbp - 0x20], 0
mov r8d, MsiGetFeatureCostA
lea rdx, str.AppV::Integration::PublishPackageLink::Create
lea rcx, [rbp - 0x20]
call fcn.1400083b0
nop
mov dword [rbp], SHCreateDirectory
mov qword [rsp + 0x40], r14
mov r8d, dword [rsi + 8]
lea eax, [r8 + 1]
mov dword [rsi + 8], eax
lea rdx, [rbp - 0x80]
mov rcx, rsi
call fcn.14008df30
nop
mov rcx, qword [rbp - 0x80]
test rcx, rcx
je 0x140062d01
mov qword [rsp + 0x60], rsi
lea rax, [rsp + 0x30]
mov qword [rsp + 0x68], rax
movaps xmm0, xmmword [rsp + 0x60]
movdqa xmmword [rsp + 0x60], xmm0
lea r8, [rsp + 0x60]
mov rdx, rbx
call fcn.14003b4a0
nop
mov rcx, qword [rbp - 0x80]
mov qword [rbp - 0x80], rbx
test rcx, rcx
je 0x140062d21
nop
mov rdi, qword [rcx]
call qword [sym.imp.MSVCR120.dll_void___cdecl_operator_delete_void____ptr64_]
mov rcx, rdi
test rdi, rdi
jne 0x140062d10
mov r8d, dword [rsi + 8]
lea eax, [r8 + 1]
mov dword [rsi + 8], eax
lea rdx, [rsp + 0x38]
mov rcx, rsi
call fcn.14008df30
nop
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x140062d6c
mov qword [rsp + 0x60], rsi
lea rax, [rsp + 0x48]
mov qword [rsp + 0x68], rax
movaps xmm0, xmmword [rsp + 0x60]
movdqa xmmword [rsp + 0x60], xmm0
lea r8, [rsp + 0x60]
mov rdx, rbx
call fcn.14003b4a0
nop
mov rcx, qword [rsp + 0x38]
mov qword [rsp + 0x38], rbx
test rcx, rcx
je 0x140062d91
nop dword [rax + rax]
mov rdi, qword [rcx]
call qword [sym.imp.MSVCR120.dll_void___cdecl_operator_delete_void____ptr64_]
mov rcx, rdi
test rdi, rdi
jne 0x140062d80
lea rdx, [rsp + 0x40]
mov rcx, rsi
call fcn.14008db00
lea rdx, [rsp + 0x60]
mov rcx, rax
call fcn.14008ded0
nop
mov r9, rax
lea r8, [rbp - 0x40]
mov edx, 1
lea rcx, [rbp - 0x20]
call fcn.14008e7d0
nop
cmp qword [rsp + 0x78], 8
jb 0x140062dd5
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.MSVCR120.dll_void___cdecl_operator_delete_void____ptr64_]
mov qword [rsp + 0x78], 7
mov qword [rsp + 0x70], rbx
mov word [rsp + 0x60], bx
cmp qword [rbp - 8], 0x10
jb 0x140062df9
mov rcx, qword [rbp - 0x20]
call qword [sym.imp.MSVCR120.dll_void___cdecl_operator_delete_void____ptr64_]
mov qword [rbp - 8], 0xf
mov qword [rbp - 0x10], rbx
mov byte [rbp - 0x20], 0
lea rax, vtable.AppV::LogFormatter.0
mov qword [rbp + 8], rax
cmp qword [rbp + 0x30], 8
jb 0x140062e25
mov rcx, qword [rbp + 0x18]
call qword [sym.imp.MSVCR120.dll_void___cdecl_operator_delete_void____ptr64_]
mov qword [rbp + 0x30], 7
mov qword [rbp + 0x28], rbx
mov word [rbp + 0x18], bx
cmp qword [rbp - 0x28], 8
jb 0x140062e46
mov rcx, qword [rbp - 0x40]
call qword [sym.imp.MSVCR120.dll_void___cdecl_operator_delete_void____ptr64_]
mov qword [rbp - 0x28], 7
mov qword [rbp - 0x30], rbx
mov word [rbp - 0x40], bx
cmp qword [rbp - 0x48], 8
jb 0x140062e67
mov rcx, qword [rbp - 0x60]
call qword [sym.imp.MSVCR120.dll_void___cdecl_operator_delete_void____ptr64_]
mov qword [rbp - 0x48], 7
mov qword [rbp - 0x50], rbx
mov word [rbp - 0x60], bx
lea rax, [0x140160748]
mov qword [rsp + 0x30], rax
xor r8d, r8d
lea rdx, [rsp + 0x30]
lea rcx, [rbp + 8]
call qword [sym.imp.MSVCR120.dll_public:_void___cdecl_std::exception::constructor_char_const__const___ptr64_const____ptr64__int____ptr64]
nop
lea rax, vtable.SwException.0
mov qword [rbp + 8], rax
mov qword [rbp + 0x20], r14
mov qword [rbp + 0x28], rbx
mov dword [rbp + 0x30], ebx
mov qword [rbp + 0x38], rbx
cmp byte [0x1402088b9], 0
je 0x140062f04
mov rdx, qword [0x1402088a8]
mov rax, rdx
xor rax, r14
movabs rcx, 0x8000000000
test rcx, rax
jne 0x140062f04
mov rax, rdx
xor rax, r14
movabs rcx, 0x2000000000
test rcx, rax
jne 0x140062f04
mov rcx, rdx
shr rcx, 0x20
mov rax, r14
shr rax, 0x20
xor cl, al
test cl, 0x1f
jne 0x140062f04
cmp r14d, edx
je 0x140062f16
cmp byte [0x1402088b8], 0
je 0x140062f1d
cmp r14d, dword [0x1402088c0]
jne 0x140062f1d
call qword [sym.imp.KERNEL32.dll_DebugBreak]
nop
lea rdx, [0x1401f8420]
lea rcx, [rbp + 8]
call sub.MSVCR120.dll__CxxThrowException
int3
mov al, 1
mov rcx, qword [rbp + 0x40]
xor rcx, rsp
call fcn.140107280
lea r11, [rsp + 0x150]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret