Function at 0x1400ec4e0
Capabilities:
Check if file exists

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x50]
sub rsp, 0x150
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov qword [rsp + 0x1a0], rbx
mov rax, qword [0x1402a6808]
xor rax, rsp
mov qword [rbp + 0x48], rax
mov rdi, rdx
mov r15, rcx
mov rsi, qword [rdx + 0x10]
test rsi, rsi
jne 0x1400ec52d
xor al, al
jmp 0x1400ecf8b
xorps xmm0, xmm0
movdqu xmmword [rbp - 8], xmm0
mov r14, rdi
cmp qword [rdx + 0x18], 8
jb 0x1400ec542
mov r14, qword [rdx]
movabs r13, 0x7ffffffffffffffe
cmp rsi, 8
jae 0x1400ec564
movups xmm0, xmmword [r14]
movups xmmword [rbp - 0x18], xmm0
mov qword [rbp], 7
jmp 0x1400ec59a
mov rbx, rsi
or rbx, 7
cmp rbx, r13
cmova rbx, r13
lea rdx, [rbx + 1]
lea rcx, [rbp - 0x18]
call fcn.140006990
mov qword [rbp - 0x18], rax
lea r8, [rsi*2 + 2]
mov rdx, r14
mov rcx, rax
call fcn.14019dbf0
mov qword [rbp], rbx
mov qword [rbp - 8], rsi
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x38], xmm0
movdqa xmm1, xmmword [0x1401e3030]
movdqu xmmword [rsp + 0x38], xmm1
xor r12d, r12d
mov word [rsp + 0x28], r12w
lea r8d, [r12 + 0xa]
lea rdx, str.config.xml
lea rcx, [rsp + 0x28]
call fcn.140006d60
nop
lea r8, [rsp + 0x28]
lea rdx, [rbp - 0x18]
lea rcx, [rsp + 0x48]
call fcn.140027aa0
mov rdx, qword [rsp + 0x60]
cmp rdx, 8
jb 0x1400ec62a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400ec625
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400ecfb8
call fcn.14017f5e4
movdqa xmm0, xmmword [0x1401e3030]
movdqu xmmword [rsp + 0x58], xmm0
mov word [rsp + 0x48], r12w
mov rdx, qword [rsp + 0x40]
cmp rdx, 8
jb 0x1400ec680
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400ec67b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400ecfbe
call fcn.14017f5e4
movdqa xmm0, xmmword [0x1401e3030]
movdqu xmmword [rsp + 0x38], xmm0
mov word [rsp + 0x28], r12w
lea rcx, [rbp - 0x18]
cmp qword [rbp], 8
cmovae rcx, qword [rbp - 0x18]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x1400ec6d3
mov rcx, qword [r15 + 0x20]
test rcx, rcx
je 0x1400ec6d3
lea rdx, [rbp - 0x18]
cmp qword [rbp], 8
cmovae rdx, qword [rbp - 0x18]
call fcn.1401301c0
test al, al
jne 0x1400ec6d3
xor bl, bl
jmp 0x1400ecf7f
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x28], xmm0
mov rsi, qword [rdi + 0x10]
mov r14, rdi
cmp qword [rdi + 0x18], 8
jb 0x1400ec6ec
mov r14, qword [rdi]
cmp rsi, 8
jae 0x1400ec704
movups xmm0, xmmword [r14]
movups xmmword [rbp - 0x38], xmm0
mov qword [rbp - 0x20], 7
jmp 0x1400ec73a
mov rbx, rsi
or rbx, 7
cmp rbx, r13
cmova rbx, r13
lea rdx, [rbx + 1]
lea rcx, [rbp - 0x38]
call fcn.140006990
mov qword [rbp - 0x38], rax
lea r8, [rsi*2 + 2]
mov rdx, r14
mov rcx, rax
call fcn.14019dbf0
mov qword [rbp - 0x20], rbx
mov qword [rbp - 0x28], rsi
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x38], xmm0
movdqa xmm1, xmmword [0x1401e3030]
movdqu xmmword [rsp + 0x38], xmm1
mov word [rsp + 0x28], r12w
mov r8d, 0xb
lea rdx, str.stylers.xml
lea rcx, [rsp + 0x28]
call fcn.140006d60
nop
lea r8, [rsp + 0x28]
lea rdx, [rbp - 0x38]
lea rcx, [rsp + 0x48]
call fcn.140027aa0
mov rdx, qword [rsp + 0x60]
cmp rdx, 8
jb 0x1400ec7c8
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400ec7c3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400ecfc4
call fcn.14017f5e4
movdqa xmm0, xmmword [0x1401e3030]
movdqu xmmword [rsp + 0x58], xmm0
mov word [rsp + 0x48], r12w
mov rdx, qword [rsp + 0x40]
cmp rdx, 8
jb 0x1400ec81e
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400ec819
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400ecfca
call fcn.14017f5e4
movdqa xmm0, xmmword [0x1401e3030]
movdqu xmmword [rsp + 0x38], xmm0
mov word [rsp + 0x28], r12w
lea rcx, [rbp - 0x38]
cmp qword [rbp - 0x20], 8
cmovae rcx, qword [rbp - 0x38]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x1400ec871
mov rcx, qword [r15 + 0x28]
test rcx, rcx
je 0x1400ec871
lea rdx, [rbp - 0x38]
cmp qword [rbp - 0x20], 8
cmovae rdx, qword [rbp - 0x38]
call fcn.1401301c0
test al, al
jne 0x1400ec871
xor bl, bl
jmp 0x1400ecf75
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x48], xmm0
mov rsi, qword [rdi + 0x10]
mov r14, rdi
cmp qword [rdi + 0x18], 8
jb 0x1400ec88a
mov r14, qword [rdi]
cmp rsi, 8
jae 0x1400ec8a2
movups xmm0, xmmword [r14]
movups xmmword [rbp - 0x58], xmm0
mov qword [rbp - 0x40], 7
jmp 0x1400ec8d8
mov rbx, rsi
or rbx, 7
cmp rbx, r13
cmova rbx, r13
lea rdx, [rbx + 1]
lea rcx, [rbp - 0x58]
call fcn.140006990
mov qword [rbp - 0x58], rax
lea r8, [rsi*2 + 2]
mov rdx, r14
mov rcx, rax
call fcn.14019dbf0
mov qword [rbp - 0x40], rbx
mov qword [rbp - 0x48], rsi
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x38], xmm0
movdqa xmm1, xmmword [0x1401e3030]
movdqu xmmword [rsp + 0x38], xmm1
mov word [rsp + 0x28], r12w
mov r8d, 9
lea rdx, str.langs.xml
lea rcx, [rsp + 0x28]
call fcn.140006d60
nop
lea r8, [rsp + 0x28]
lea rdx, [rbp - 0x58]
lea rcx, [rsp + 0x48]
call fcn.140027aa0
mov rdx, qword [rsp + 0x60]
cmp rdx, 8
jb 0x1400ec966
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400ec961
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400ecfd0
call fcn.14017f5e4
movdqa xmm0, xmmword [0x1401e3030]
movdqu xmmword [rsp + 0x58], xmm0
mov word [rsp + 0x48], r12w
mov rdx, qword [rsp + 0x40]
cmp rdx, 8
jb 0x1400ec9bc
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400ec9b7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400ecfd6
call fcn.14017f5e4
movdqa xmm0, xmmword [0x1401e3030]
movdqu xmmword [rsp + 0x38], xmm0
mov word [rsp + 0x28], r12w
lea rcx, [rbp - 0x58]
cmp qword [rbp - 0x40], 8
cmovae rcx, qword [rbp - 0x58]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x1400eca11
cmp qword [r15 + 0x20], 0
je 0x1400eca11
lea rdx, [rbp - 0x58]
cmp qword [rbp - 0x40], 8
cmovae rdx, qword [rbp - 0x58]
mov rcx, qword [r15 + 0x18]
call fcn.1401301c0
test al, al
jne 0x1400eca11
xor bl, bl
jmp 0x1400ecf6b
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x68], xmm0
mov rsi, qword [rdi + 0x10]
mov r14, rdi
cmp qword [rdi + 0x18], 8
jb 0x1400eca2a
mov r14, qword [rdi]
cmp rsi, 8
jae 0x1400eca42
movups xmm0, xmmword [r14]
movups xmmword [rbp - 0x78], xmm0
mov qword [rbp - 0x60], 7
jmp 0x1400eca78
mov rbx, rsi
or rbx, 7
cmp rbx, r13
cmova rbx, r13
lea rdx, [rbx + 1]
lea rcx, [rbp - 0x78]
call fcn.140006990
mov qword [rbp - 0x78], rax
lea r8, [rsi*2 + 2]
mov rdx, r14
mov rcx, rax
call fcn.14019dbf0
mov qword [rbp - 0x60], rbx
mov qword [rbp - 0x68], rsi
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x38], xmm0
movdqa xmm1, xmmword [0x1401e3030]
movdqu xmmword [rsp + 0x38], xmm1
mov word [rsp + 0x28], r12w
mov r8d, 0x12
lea rdx, str.userDefineLang.xml
lea rcx, [rsp + 0x28]
call fcn.140006d60
nop
lea r8, [rsp + 0x28]
lea rdx, [rbp - 0x78]
lea rcx, [rsp + 0x48]
call fcn.140027aa0
mov rdx, qword [rsp + 0x60]
cmp rdx, 8
jb 0x1400ecb06
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400ecb01
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400ecfdc
call fcn.14017f5e4
movdqa xmm0, xmmword [0x1401e3030]
movdqu xmmword [rsp + 0x58], xmm0
mov word [rsp + 0x48], r12w
mov rdx, qword [rsp + 0x40]
cmp rdx, 8
jb 0x1400ecb5c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400ecb57
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400ecfe2
call fcn.14017f5e4
movdqa xmm0, xmmword [0x1401e3030]
movdqu xmmword [rsp + 0x38], xmm0
mov word [rsp + 0x28], r12w
lea rcx, [rbp - 0x78]
cmp qword [rbp - 0x60], 8
cmovae rcx, qword [rbp - 0x78]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x1400ecbaf
mov rcx, qword [r15 + 0x30]
test rcx, rcx
je 0x1400ecbaf
lea rdx, [rbp - 0x78]
cmp qword [rbp - 0x60], 8
cmovae rdx, qword [rbp - 0x78]
call fcn.1401301c0
test al, al
jne 0x1400ecbaf
xor bl, bl
jmp 0x1400ecf61
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x78], xmm0
mov rsi, qword [rdi + 0x10]
mov r14, rdi
cmp qword [rdi + 0x18], 8
jb 0x1400ecbc9
mov r14, qword [rdi]
cmp rsi, 8
jae 0x1400ecbe2
movups xmm0, xmmword [r14]
movups xmmword [rsp + 0x68], xmm0
mov qword [rbp - 0x80], 7
jmp 0x1400ecc1a
mov rbx, rsi
or rbx, 7
cmp rbx, r13
cmova rbx, r13
lea rdx, [rbx + 1]
lea rcx, [rsp + 0x68]
call fcn.140006990
mov qword [rsp + 0x68], rax
lea r8, [rsi*2 + 2]
mov rdx, r14
mov rcx, rax
call fcn.14019dbf0
mov qword [rbp - 0x80], rbx
mov qword [rsp + 0x78], rsi
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x38], xmm0
movdqa xmm1, xmmword [0x1401e3030]
movdqu xmmword [rsp + 0x38], xmm1
mov word [rsp + 0x28], r12w
mov r8d, InitCommonControls
lea rdx, str.shortcuts.xml
lea rcx, [rsp + 0x28]
call fcn.140006d60
nop
lea r8, [rsp + 0x28]
lea rdx, [rsp + 0x68]
lea rcx, [rsp + 0x48]
call fcn.140027aa0
mov rdx, qword [rsp + 0x60]
cmp rdx, 8
jb 0x1400eccaa
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400ecca5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400ecfe8
call fcn.14017f5e4
movdqa xmm0, xmmword [0x1401e3030]
movdqu xmmword [rsp + 0x58], xmm0
mov word [rsp + 0x48], r12w
mov rdx, qword [rsp + 0x40]
cmp rdx, 8
jb 0x1400ecd00
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400eccfb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400ecfb2
call fcn.14017f5e4
movdqa xmm0, xmmword [0x1401e3030]
movdqu xmmword [rsp + 0x38], xmm0
mov word [rsp + 0x28], r12w
lea rcx, [rsp + 0x68]
cmp qword [rbp - 0x80], 8
cmovae rcx, qword [rsp + 0x68]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x1400ecd57
mov rcx, qword [r15 + 0x58]
test rcx, rcx
je 0x1400ecd57
lea rdx, [rsp + 0x68]
cmp qword [rbp - 0x80], 8
cmovae rdx, qword [rsp + 0x68]
call fcn.1401301c0
test al, al
jne 0x1400ecd57
xor bl, bl
jmp 0x1400ecf56
mov rdx, rdi
lea rcx, [rbp + 0x28]
call fcn.140002f40
nop
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x38], xmm0
movdqa xmm1, xmmword [0x1401e3030]
movdqu xmmword [rsp + 0x38], xmm1
mov word [rsp + 0x28], r12w
mov r8d, InitCommonControls
lea rdx, str.contextMenu.xml
lea rcx, [rsp + 0x28]
call fcn.140006d60
nop
lea r8, [rsp + 0x28]
lea rdx, [rbp + 0x28]
lea rcx, [rsp + 0x48]
call fcn.140027aa0
mov r8, qword [rsp + 0x60]
cmp r8, 8
jb 0x1400ecdc9
inc r8
mov rdx, qword [rsp + 0x48]
lea rcx, [rsp + 0x48]
call fcn.140007270
movdqa xmm0, xmmword [0x1401e3030]
movdqu xmmword [rsp + 0x58], xmm0
mov word [rsp + 0x48], r12w
mov r8, qword [rsp + 0x40]
cmp r8, 8
jb 0x1400ecdfa
inc r8
mov rdx, qword [rsp + 0x28]
lea rcx, [rsp + 0x28]
call fcn.140007270
movdqa xmm0, xmmword [0x1401e3030]
movdqu xmmword [rsp + 0x38], xmm0
mov word [rsp + 0x28], r12w
lea rcx, [rbp + 0x28]
cmp qword [rbp + 0x40], 8
cmovae rcx, qword [rbp + 0x28]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x1400ece4d
mov rcx, qword [r15 + 0x70]
test rcx, rcx
je 0x1400ece4d
lea rdx, [rbp + 0x28]
cmp qword [rbp + 0x40], 8
cmovae rdx, qword [rbp + 0x28]
call fcn.1401301c0
test al, al
jne 0x1400ece4d
xor bl, bl
jmp 0x1400ecf4c
mov rdx, rdi
lea rcx, [rbp + 8]
call fcn.140002f40
nop
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x38], xmm0
movdqa xmm1, xmmword [0x1401e3030]
movdqu xmmword [rsp + 0x38], xmm1
mov word [rsp + 0x28], r12w
mov r8d, InitCommonControls
lea rdx, str.nativeLang.xml
lea rcx, [rsp + 0x28]
call fcn.140006d60
nop
lea r8, [rsp + 0x28]
lea rdx, [rbp + 8]
lea rcx, [rsp + 0x48]
call fcn.140027aa0
mov r8, qword [rsp + 0x60]
cmp r8, 8
jb 0x1400ecebf
inc r8
mov rdx, qword [rsp + 0x48]
lea rcx, [rsp + 0x48]
call fcn.140007270
movdqa xmm0, xmmword [0x1401e3030]
movdqu xmmword [rsp + 0x58], xmm0
mov word [rsp + 0x48], r12w
mov r8, qword [rsp + 0x40]
cmp r8, 8
jb 0x1400ecef0
inc r8
mov rdx, qword [rsp + 0x28]
lea rcx, [rsp + 0x28]
call fcn.140007270
movdqa xmm0, xmmword [0x1401e3030]
movdqu xmmword [rsp + 0x38], xmm0
mov word [rsp + 0x28], r12w
lea rcx, [rbp + 8]
cmp qword [rbp + 0x20], 8
cmovae rcx, qword [rbp + 8]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x1400ecf40
mov rcx, qword [r15 + 0x68]
test rcx, rcx
je 0x1400ecf40
lea rdx, [rbp + 8]
cmp qword [rbp + 0x20], 8
cmovae rdx, qword [rbp + 8]
call fcn.1401301c0
test al, al
jne 0x1400ecf40
xor bl, bl
jmp 0x1400ecf42
mov bl, 1
lea rcx, [rbp + 8]
call fcn.1400068c0
nop
lea rcx, [rbp + 0x28]
call fcn.1400068c0
nop
lea rcx, [rsp + 0x68]
call fcn.1400068c0
nop
lea rcx, [rbp - 0x78]
call fcn.1400068c0
nop
lea rcx, [rbp - 0x58]
call fcn.1400068c0
nop
lea rcx, [rbp - 0x38]
call fcn.1400068c0
nop
lea rcx, [rbp - 0x18]
call fcn.1400068c0
movzx eax, bl
mov rcx, qword [rbp + 0x48]
xor rcx, rsp
call fcn.14017f700
mov rbx, qword [rsp + 0x1a0]
add rsp, 0x150
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.1401a10ac
nop
call fcn.1401a10ac
nop
call fcn.1401a10ac
nop
call fcn.1401a10ac
nop
call fcn.1401a10ac
nop
call fcn.1401a10ac
nop
call fcn.1401a10ac
nop
call fcn.1401a10ac
nop
call fcn.1401a10ac
nop
call fcn.1401a10ac
int3