Function at 0x140014930
Capabilities:
Check if file exists
Get file attributes

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x80
mov rbx, r9
mov r13, r8
mov r15, rdx
mov rdi, rcx
mov dword [rbp - 0x60], 0
call fcn.1401159a0
lea rdx, [rax + 0x10]
mov r8, r13
lea rcx, [rbp - 0x18]
call fcn.1401157f0
xor edx, edx
lea rcx, [rbp - 0x18]
call fcn.14012fcd0
mov rcx, qword [rax]
mov qword [rbp - 0x48], rcx
lea r14, [rcx - 0x10]
lea rax, [0x140592ec8]
cmp r14, rax
je 0x1400149a0
lock inc dword [r14]
lea rcx, [rbp - 0x18]
call fcn.140003220
mov rcx, qword [rbp - 0x18]
call fcn.1400d4bdc
nop
lea r12, [rdi + 8]
mov rbx, qword [rbx]
lea rcx, [rbx - 0x10]
mov rsi, 0xffffffffffffffff
mov rax, qword [rbp - 0x48]
cmp byte [rax], 0
je 0x140014ad8
mov qword [rbp - 0x50], rbx
lea rdi, [0x140592ec8]
cmp rcx, rdi
je 0x1400149e5
lock inc dword [rcx]
lea rax, [rbp - 0x50]
mov qword [rbp - 0x40], rax
lea r8, [0x1405046dd]
lea rdx, [0x1405046dc]
lea rcx, [rbp - 0x50]
call fcn.140135520
mov rax, qword [rbp - 0x50]
mov qword [rbp + 0x30], rax
lea rcx, [rax - 0x10]
cmp rcx, rdi
je 0x140014a1c
lock inc dword [rcx]
mov rax, qword [rbp - 0x50]
lea rcx, [rax - 0x10]
cmp rcx, rdi
je 0x140014a37
mov eax, esi
lock xadd dword [rcx], eax
dec eax
cmp eax, 0xffffffff
jne 0x140014a37
call fcn.1400c9d7c
lea rax, [rbp + 0x30]
mov qword [rbp - 0x40], rax
mov rax, qword [rbp + 0x30]
cmp byte [rax], 0
jne 0x140014a76
cmp r14, rdi
je 0x140014a51
lock inc dword [r14]
mov rcx, qword [rbp - 0x48]
xchg qword [rbp + 0x30], rcx
add rcx, 0xfffffffffffffff0
cmp rcx, rdi
je 0x140014a9a
mov eax, esi
lock xadd dword [rcx], eax
dec eax
cmp eax, 0xffffffff
jne 0x140014a9a
call fcn.1400c9d7c
jmp 0x140014a9a
mov rax, qword [rbp - 0x48]
mov r8, rsi
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140014a80
mov rdx, qword [rbp - 0x48]
add r8, rdx
lea rcx, [rbp + 0x30]
call fcn.140135520
mov rax, qword [rbp + 0x30]
mov qword [rbp - 0x30], rax
mov rbx, rax
lea rcx, [rax - 0x10]
cmp rcx, rdi
je 0x140014ab5
lock inc dword [rcx]
mov rax, qword [rbp + 0x30]
lea rcx, [rax - 0x10]
cmp rcx, rdi
je 0x140014ad1
mov eax, esi
lock xadd dword [rcx], eax
dec eax
cmp eax, 0xffffffff
jne 0x140014ad1
call fcn.1400c9d7c
nop
mov edi, 0x1e1
jmp 0x140014af0
mov qword [rbp - 0x38], rbx
lea rax, [0x140592ec8]
cmp rcx, rax
je 0x140014aeb
lock inc dword [rcx]
mov edi, 0x62
mov dword [rbp - 0x60], edi
mov r8, rbx
lea rdx, [rbp - 0x58]
mov rcx, r12
call fcn.1401446f0
nop
lea r12, [0x140592ec8]
test dil, 2
je 0x140014b38
and edi, 0xfffffffd
mov dword [rbp - 0x60], edi
mov rcx, qword [rbp - 0x38]
add rcx, 0xfffffffffffffff0
cmp rcx, r12
je 0x140014b38
mov eax, esi
lock xadd dword [rcx], eax
dec eax
cmp eax, 0xffffffff
jne 0x140014b35
call fcn.1400c9d7c
mov edi, dword [rbp - 0x60]
test dil, 1
je 0x140014b66
and edi, 0xfffffffe
mov dword [rbp - 0x60], edi
mov rcx, qword [rbp - 0x30]
add rcx, 0xfffffffffffffff0
cmp rcx, r12
je 0x140014b66
mov eax, esi
lock xadd dword [rcx], eax
dec eax
cmp eax, 0xffffffff
jne 0x140014b63
call fcn.1400c9d7c
mov edi, dword [rbp - 0x60]
mov rax, qword [rbp - 0x58]
cmp byte [rax], 0
je 0x140014b8b
lea rdx, [rbp - 0x58]
lea rcx, [rbp - 8]
call fcn.140016140
mov rcx, qword [rax]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
nop
cmp eax, 0xffffffff
jne 0x140014bcd
lea rdx, str.vnd.android.document_directory
mov rcx, qword [r13]
call fcn.140019fc0
lea rcx, [rbp - 0x58]
test eax, eax
jne 0x140014bb2
lea rdx, [rbp - 0x20]
call fcn.1401440e0
nop
or edi, 4
jmp 0x140014bbe
lea rdx, [rbp - 0x28]
call fcn.140144310
or edi, 8
mov dword [rbp - 0x60], edi
mov rax, qword [rax]
cmp byte [rax], 0
jne 0x140014bcd
mov bl, 1
jmp 0x140014bcf
xor bl, bl
test dil, 8
je 0x140014bfd
and edi, 0xfffffff7
mov dword [rbp - 0x60], edi
mov rcx, qword [rbp - 0x28]
add rcx, 0xfffffffffffffff0
cmp rcx, r12
je 0x140014bfd
mov eax, esi
lock xadd dword [rcx], eax
dec eax
cmp eax, 0xffffffff
jne 0x140014bfa
call fcn.1400c9d7c
mov edi, dword [rbp - 0x60]
test dil, 4
je 0x140014c22
mov rcx, qword [rbp - 0x20]
add rcx, 0xfffffffffffffff0
cmp rcx, r12
je 0x140014c22
mov eax, esi
lock xadd dword [rcx], eax
dec eax
cmp eax, 0xffffffff
jne 0x140014c22
call fcn.1400c9d7c
test bl, bl
je 0x140014c57
mov ecx, reloc.OLEAUT32.dll_SafeArrayGetElement
call fcn.1400c9d40
mov qword [rbp - 0x40], rax
lea rcx, vtable.juce::AndroidDocument::Utils::AndroidDocumentPimplFile.0
mov qword [rax], rcx
mov rcx, qword [rbp - 0x58]
mov qword [rax + 8], rcx
add rcx, 0xfffffffffffffff0
cmp rcx, r12
je 0x140014c52
lock inc dword [rcx]
mov qword [r15], rax
jmp 0x140014c5e
mov qword [r15], 0
mov rcx, qword [rbp - 0x58]
add rcx, 0xfffffffffffffff0
cmp rcx, r12
je 0x140014c7e
mov eax, esi
lock xadd dword [rcx], eax
dec eax
cmp eax, 0xffffffff
jne 0x140014c7e
call fcn.1400c9d7c
nop
cmp r14, r12
je 0x140014c97
lock xadd dword [r14], esi
dec esi
cmp esi, 0xffffffff
jne 0x140014c97
mov rcx, r14
call fcn.1400c9d7c
mov rax, r15
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret