Function at 0x14001dd40
Capabilities:
Check if file exists

Disassembly:
mov rax, rsp
push rbp
push r14
push r15
lea rbp, [rax - 0x68]
sub rsp, 0x150
mov qword [rbp - 0x10], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
mov rax, qword [0x1400e9088]
xor rax, rsp
mov qword [rbp + 0x40], rax
mov r14, rcx
mov qword [rbp - 8], rcx
xor r15d, r15d
mov dword [rsp + 0x60], r15d
lea rcx, [rbp + 0x20]
call fcn.14001d8a0
nop
mov qword [r14], r15
mov dword [rsp + 0x60], 1
mov qword [rsp + 0x20], r14
lea r9, [0x1400bf798]
xor edx, edx
lea r8d, [r15 + 1]
lea rcx, [0x1400bf758]
call qword [sym.imp.ole32.dll_CoCreateInstance]
mov ebx, eax
test eax, eax
jns 0x14001de23
mov qword [r14], r15
mov qword [rsp + 0x50], r15
mov qword [rsp + 0x58], r15
mov qword [rsp + 0x58], 7
mov qword [rsp + 0x50], r15
mov word [rsp + 0x40], r15w
lea r8d, [r15 + 0x37]
lea rdx, str.Failed_to_create_an_instance_of_COM_DOMDocument30_class
lea rcx, [rsp + 0x40]
call fcn.140011700
nop
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x70]
call fcn.140019f50
nop
lea rax, vtable.HP::Pdsmq::Common::ComException.0
mov qword [rbp - 0x70], rax
mov dword [rbp - 0x38], ebx
lea rdx, [0x1400e72c8]
lea rcx, [rbp - 0x70]
call fcn.140075a20
nop
lea rcx, [rbp + 0x20]
cmp qword [rbp + 0x38], 8
cmovae rcx, qword [rbp + 0x20]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x14001e2e7
lea rbx, [rbp + 0x20]
cmp qword [rbp + 0x38], 8
cmovae rbx, qword [rbp + 0x20]
mov eax, 8
mov word [rsp + 0x68], ax
mov rcx, rbx
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov qword [rsp + 0x70], rax
test rax, rax
jne 0x14001de7a
test rbx, rbx
je 0x14001de7a
mov ecx, 0x8007000e
call fcn.140057480
nop
mov rbx, qword [r14]
test rbx, rbx
jne 0x14001de8d
mov ecx, 0x80004003
call fcn.140057480
int3
mov word [rbp], r15w
movups xmm0, xmmword [rsp + 0x68]
movaps xmmword [rsp + 0x40], xmm0
movsd xmm1, qword [rsp + 0x78]
movsd qword [rsp + 0x50], xmm1
mov rax, qword [rbx]
lea r8, [rbp]
lea rdx, [rsp + 0x40]
mov rcx, rbx
call qword [rax + 0x1d0]
test eax, eax
jns 0x14001ded2
lea r8, [0x1400bf798]
mov rdx, rbx
mov ecx, eax
call fcn.1400574b0
cmp word [rbp], 0
sete bl
lea rcx, [rsp + 0x68]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
test bl, bl
je 0x14001df7c
mov qword [rsp + 0x50], r15
mov qword [rsp + 0x58], r15
mov qword [rsp + 0x58], 7
mov qword [rsp + 0x50], r15
mov word [rsp + 0x40], r15w
mov r8d, 0x21
lea rdx, str.Error_parsing_local_settings_file
lea rcx, [rsp + 0x40]
call fcn.140011700
nop
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x70]
call fcn.140019f50
nop
lea rax, vtable.HP::Pdsmq::Common::FileFormatException.0
mov qword [rbp - 0x70], rax
mov qword [rbp - 0x28], r15
mov qword [rbp - 0x20], r15
mov qword [rbp - 0x20], 7
mov qword [rbp - 0x28], r15
mov word [rbp - 0x38], r15w
or r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rbp + 0x20]
lea rcx, [rbp - 0x38]
call fcn.140011850
nop
lea rdx, [0x1400e72a8]
lea rcx, [rbp - 0x70]
call fcn.140075a20
nop
xor eax, eax
mov qword [rbp + 8], rax
mov rcx, qword [r14]
test rcx, rcx
jne 0x14001df95
mov ecx, 0x80004003
call fcn.140057480
int3
lea rdx, [rbp + 8]
call fcn.14001aff0
nop
mov rcx, qword [rbp + 8]
test rcx, rcx
jne 0x14001dfb3
mov ecx, 0x80004003
call fcn.140057480
int3
lea rdx, [rbp + 0x10]
call fcn.14001ada0
nop
mov r8, qword [rax]
test r8, r8
je 0x14001dfca
mov r8, qword [r8]
jmp 0x14001dfcd
mov r8, r15
cmp word [r8], 0
jne 0x14001dfd9
mov r9, r15
jmp 0x14001dfeb
or r9, 0xffffffffffffffff
nop dword [rax]
inc r9
cmp word [r8 + r9*2], 0
jne 0x14001dfe0
lea rcx, [0x1400ef198]
cmp qword [0x1400ef1b0], 8
cmovae rcx, qword [0x1400ef198]
mov rdx, qword [0x1400ef1a8]
call fcn.140011140
test eax, eax
sete bl
lea rcx, [rbp + 0x10]
call fcn.14001a6a0
test bl, bl
je 0x14001e2de
xor eax, eax
mov qword [rbp + 0x18], rax
lea rax, [rbp - 0x80]
mov qword [rsp + 0x30], rax
lea rdx, [0x1400ef178]
cmp qword [0x1400ef190], 8
cmovae rdx, qword [0x1400ef178]
lea rcx, [rbp - 0x80]
call fcn.14001a5f0
nop
mov rcx, qword [r14]
test rcx, rcx
jne 0x14001e067
mov ecx, 0x80004003
call fcn.140057480
nop
mov r8, rax
lea rdx, [rbp + 0x18]
call fcn.14001b080
nop
mov rbx, qword [rbp + 8]
test rbx, rbx
je 0x14001e2d3
mov word [rbp], r15w
mov rax, qword [rbx]
lea rdx, [rbp]
mov rcx, rbx
call qword [rax + 0xb0]
test eax, eax
jns 0x14001e0ab
lea r8, [0x1400bf7c8]
mov rdx, rbx
mov ecx, eax
call fcn.1400574b0
mov rcx, qword [rbp + 8]
cmp word [rbp], 0
je 0x14001e125
test rcx, rcx
je 0x14001e11a
lea rdx, [rsp + 0x30]
call fcn.14001a960
nop
mov rcx, qword [rbp + 0x18]
test rcx, rcx
je 0x14001e10f
mov r8, qword [rax]
lea rdx, [rsp + 0x38]
call fcn.14001ab10
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x14001e0ed
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14001e0fd
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rbx, qword [rbp + 8]
test rbx, rbx
jne 0x14001e081
jmp 0x14001e2d3
mov ecx, 0x80004003
call fcn.140057480
nop
mov ecx, 0x80004003
call fcn.140057480
int3
xor eax, eax
mov qword [rbp + 0x10], rax
test rcx, rcx
jne 0x14001e13b
mov ecx, 0x80004003
call fcn.140057480
int3
lea rdx, [rbp + 0x10]
call fcn.14001a9f0
nop
mov ebx, r15d
mov rdi, qword [rbp + 0x10]
test rdi, rdi
jne 0x14001e15c
mov ecx, 0x80004003
call fcn.140057480
int3
mov dword [rbp], r15d
mov rax, qword [rdi]
lea rdx, [rbp]
mov rcx, rdi
call qword [rax + 0x58]
test eax, eax
jns 0x14001e182
lea r8, [0x1400bf7b8]
mov rdx, rdi
mov ecx, eax
call fcn.1400574b0
mov edi, dword [rbp]
test edi, edi
jle 0x14001e24c
nop dword [rax]
xor eax, eax
mov qword [rbp], rax
mov rcx, qword [rbp + 0x10]
test rcx, rcx
je 0x14001e241
mov r8d, ebx
lea rdx, [rbp]
call fcn.14001ad10
nop
lea rax, [rsp + 0x30]
mov qword [rsp + 0x38], rax
mov rcx, qword [rbp]
test rcx, rcx
je 0x14001e236
lea rdx, [rsp + 0x40]
call fcn.14001a800
mov rsi, rax
mov rcx, qword [rbp]
test rcx, rcx
je 0x14001e22b
lea rdx, [rsp + 0x30]
call fcn.14001a730
nop
mov rcx, qword [rbp + 0x18]
test rcx, rcx
je 0x14001e220
mov r8, rsi
mov rdx, rax
call fcn.14001af60
nop
lea rcx, [rsp + 0x40]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
nop
mov rcx, qword [rbp]
test rcx, rcx
je 0x14001e214
mov rax, qword [rcx]
call qword [rax + 0x10]
inc ebx
cmp ebx, edi
jl 0x14001e190
jmp 0x14001e24c
mov ecx, 0x80004003
call fcn.140057480
nop
mov ecx, 0x80004003
call fcn.140057480
nop
mov ecx, 0x80004003
call fcn.140057480
nop
mov ecx, 0x80004003
call fcn.140057480
int3
mov rcx, qword [rbp + 8]
test rcx, rcx
jne 0x14001e260
mov ecx, 0x80004003
call fcn.140057480
int3
lea rdx, [rsp + 0x38]
call fcn.14001a8d0
nop
mov rcx, qword [rax]
test rcx, rcx
jne 0x14001e27e
mov ecx, 0x80004003
call fcn.140057480
int3
mov r9, qword [rbp + 8]
mov r8, qword [rbp + 0x18]
lea rdx, [rsp + 0x30]
call fcn.14001aa80
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14001e2a1
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x14001e2b2
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rbp + 0x10]
test rcx, rcx
je 0x14001e2c2
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rbp + 0x18]
test rcx, rcx
je 0x14001e2de
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x14001e2de
mov ecx, 0x80004003
call fcn.140057480
nop
mov rcx, qword [rbp + 8]
jmp 0x14001e50e
xor eax, eax
mov qword [rbp + 0x18], rax
lea rax, [rbp + 8]
mov qword [rsp + 0x30], rax
lea rdi, [0x1400ef178]
cmp qword [0x1400ef190], 8
cmovae rdi, qword [0x1400ef178]
mov ecx, SafeArrayPutElement
call fcn.1400560ac
mov rbx, rax
mov qword [rsp + 0x38], rax
test rax, rax
je 0x14001e359
xor eax, eax
mov qword [rbx], rax
mov qword [rbx + 0x10], rax
mov qword [rbx + 8], r15
mov dword [rbx + 0x10], 1
mov rcx, rdi
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov qword [rbx], rax
test rax, rax
jne 0x14001e35c
test rdi, rdi
je 0x14001e35c
mov ecx, 0x8007000e
call fcn.140057480
int3
mov rbx, r15
mov qword [rbp + 8], rbx
test rbx, rbx
jne 0x14001e370
mov ecx, 0x8007000e
call fcn.140057480
nop
mov rcx, qword [r14]
test rcx, rcx
jne 0x14001e383
mov ecx, 0x80004003
call fcn.140057480
nop
lea r8, [rbp + 8]
lea rdx, [rbp + 0x18]
call fcn.14001b080
nop
lea rbx, [0x1400ef118]
cmp qword [0x1400ef130], 8
cmovae rbx, qword [0x1400ef118]
mov eax, 8
mov word [rsp + 0x68], ax
mov rcx, rbx
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov qword [rsp + 0x70], rax
test rax, rax
jne 0x14001e3d5
test rbx, rbx
je 0x14001e3d5
mov ecx, 0x8007000e
call fcn.140057480
nop
lea rax, [rbp + 0x10]
mov qword [rsp + 0x30], rax
lea rdi, [0x1400ef1b8]
cmp qword [0x1400ef1d0], 8
cmovae rdi, qword [0x1400ef1b8]
mov ecx, SafeArrayPutElement
call fcn.1400560ac
mov rbx, rax
mov qword [rsp + 0x38], rax
test rax, rax
je 0x14001e441
xor eax, eax
mov qword [rbx], rax
mov qword [rbx + 0x10], rax
mov qword [rbx + 8], r15
mov dword [rbx + 0x10], 1
mov rcx, rdi
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov qword [rbx], rax
test rax, rax
jne 0x14001e444
test rdi, rdi
je 0x14001e444
mov ecx, 0x8007000e
call fcn.140057480
int3
mov rbx, r15
mov qword [rbp + 0x10], rbx
test rbx, rbx
jne 0x14001e458
mov ecx, 0x8007000e
call fcn.140057480
int3
lea rax, [rbp + 0x10]
mov qword [rsp + 0x38], rax
mov rbx, qword [rbp + 0x18]
test rbx, rbx
jne 0x14001e475
mov ecx, 0x80004003
call fcn.140057480
nop
movups xmm0, xmmword [rsp + 0x68]
movaps xmmword [rsp + 0x40], xmm0
movsd xmm1, qword [rsp + 0x78]
movsd qword [rsp + 0x50], xmm1
mov rax, qword [rbp + 0x10]
test rax, rax
je 0x14001e499
mov rdx, qword [rax]
jmp 0x14001e49c
mov rdx, r15
mov rax, qword [rbx]
lea r8, [rsp + 0x40]
mov rcx, rbx
call qword [rax + 0x168]
test eax, eax
jns 0x14001e4c3
lea r8, [0x1400bf7a8]
mov rdx, rbx
mov ecx, eax
call fcn.1400574b0
nop
lea rcx, [rbp + 0x10]
call fcn.14001a6a0
nop
lea rcx, [rsp + 0x68]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
mov rcx, qword [r14]
test rcx, rcx
jne 0x14001e4eb
mov ecx, 0x80004003
call fcn.140057480
int3
mov r8, qword [rbp + 0x18]
lea rdx, [rsp + 0x30]
call fcn.14001ab10
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14001e50a
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rbp + 0x18]
test rcx, rcx
je 0x14001e51a
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov r8, qword [rbp + 0x38]
cmp r8, 8
jb 0x14001e534
inc r8
mov rdx, qword [rbp + 0x20]
lea rcx, [rbp + 0x20]
call fcn.140012760
mov qword [rbp + 0x38], 7
mov qword [rbp + 0x30], r15
mov word [rbp + 0x20], r15w
mov rax, r14
mov rcx, qword [rbp + 0x40]
xor rcx, rsp
call fcn.140056080
lea r11, [rsp + 0x150]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rdi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret