Function at 0x140105100
Capabilities:
Check if file exists

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x70
mov qword [rsp + 0x30], 0xfffffffffffffffe
mov qword [rsp + 0xc0], rbx
mov rax, qword [0x1402a6808]
xor rax, rsp
mov qword [rsp + 0x60], rax
mov rbp, rdx
mov r14, rcx
xor r13d, r13d
lea rsi, [r13 - 1]
test r8b, r8b
jne 0x14010528d
cmp qword [rcx + 0x158], r13
jbe 0x14010528d
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x50], xmm0
movdqa xmm1, xmmword [0x1401e3030]
movdqu xmmword [rsp + 0x50], xmm1
mov word [rsp + 0x40], r13w
mov r8, rsi
inc r8
cmp word [rdx + r8*2], r13w
jne 0x140105173
lea rcx, [rsp + 0x40]
call fcn.140006d60
nop
lea rax, [r14 + 0x148]
mov rcx, rax
cmp qword [rax + 0x18], 8
jb 0x14010519c
mov rcx, qword [rax]
lea r8, [rsp + 0x40]
mov rbx, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x58]
cmp rdi, 8
cmovae r8, rbx
mov rdx, qword [rsp + 0x50]
cmp rdx, qword [rax + 0x10]
jne 0x1401051dc
test rdx, rdx
je 0x1401051e8
sub r8, rcx
movzx eax, word [rcx]
cmp word [r8 + rcx], ax
jne 0x1401051dc
add rcx, 2
sub rdx, 1
jne 0x1401051c6
jmp 0x1401051e8
mov rcx, r14
call fcn.140107090
test al, al
jne 0x14010523e
cmp rdi, 8
jb 0x140105223
lea rdx, [rdi*2 + 2]
mov rax, rbx
cmp rdx, 0x1000
jb 0x14010521b
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140105453
mov rcx, rbx
call fcn.14017f5e4
movdqa xmm0, xmmword [0x1401e3030]
movdqu xmmword [rsp + 0x50], xmm0
mov word [rsp + 0x40], r13w
mov al, 1
jmp 0x140105428
cmp rdi, 8
jb 0x140105279
lea rdx, [rdi*2 + 2]
mov rax, rbx
cmp rdx, 0x1000
jb 0x140105271
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14010544d
mov rcx, rbx
call fcn.14017f5e4
movdqa xmm0, xmmword [0x1401e3030]
movdqu xmmword [rsp + 0x50], xmm0
mov word [rsp + 0x40], r13w
mov ecx, 0xa0
call fcn.14017f5a8
mov qword [rsp + 0x38], rax
test rax, rax
je 0x1401052b1
mov rdx, rbp
mov rcx, rax
call fcn.14012d8b0
mov rbx, rax
jmp 0x1401052b4
mov rbx, r13
mov rcx, rbx
call fcn.14012ef70
movzx r12d, al
test al, al
jne 0x1401052dd
test rbx, rbx
je 0x1401052d6
mov rax, qword [rbx]
mov edx, 1
mov rcx, rbx
call qword [rax]
xor al, al
jmp 0x140105428
lea rdx, [0x1401e43b8]
mov rcx, rbx
call fcn.14012e990
test rax, rax
je 0x1401052c4
lea rdx, [0x140228490]
mov rcx, rax
call fcn.14012ebd0
mov rdi, rax
test rax, rax
je 0x1401052c4
mov rcx, rbp
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x1401052c4
lea rcx, [r14 + 0x88]
call fcn.1401261f0
inc rsi
cmp word [rbp + rsi*2], 0
jne 0x140105321
mov r8, rsi
lea rcx, [r14 + 0x148]
mov rdx, rbp
call fcn.140006d60
mov rcx, rbp
call qword [sym.imp.SHLWAPI.dll_PathFindFileNameW]
mov qword [rsp + 0x20], r13
xor r9d, r9d
mov r8, 0xffffffffffff0000
mov rdx, rax
lea rcx, [r14 + 0x88]
call fcn.140125590
mov rsi, rax
test rdi, rdi
je 0x140105376
cmp dword [rdi + 0x18], 1
mov rcx, rdi
je 0x140105379
mov rcx, r13
lea rdx, str.name
call fcn.14012dff0
mov rdx, rax
mov qword [rsp + 0x20], r13
mov r9d, 2
mov r8, rsi
lea rcx, [r14 + 0x88]
call fcn.140125590
mov r8, rax
mov rdx, rdi
mov rcx, r14
call fcn.140102cd0
lea rdx, [0x140228490]
mov rcx, rdi
call fcn.14012f020
mov rdi, rax
test rax, rax
jne 0x140105368
mov byte [r14 + 0x188], al
xor r9d, r9d
xor r8d, r8d
mov edx, 0x110a
mov rcx, qword [r14 + 0xa0]
call qword [sym.imp.USER32.dll_SendMessageW]
mov rdx, rax
xor r9d, r9d
xor r8d, r8d
lea rcx, [r14 + 0x88]
call fcn.140126c70
mov r9, rsi
mov edx, 0x1102
lea r8d, [rdi + 2]
mov rcx, qword [r14 + 0xa0]
call qword [sym.imp.USER32.dll_SendMessageW]
test rbx, rbx
je 0x140105424
mov rax, qword [rbx]
lea edx, [rdi + 1]
mov rcx, rbx
call qword [rax]
movzx eax, r12b
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.14017f700
mov rbx, qword [rsp + 0xc0]
add rsp, 0x70
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.1401a10ac
int3
call fcn.1401a10ac
int3