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

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x58
mov qword [rsp + 0x48], 0
mov rbx, rcx
mov rdi, r8
mov ebp, r9d
test byte [rcx + 0x58], 4
jne 0x1400abff0
mov qword [rcx + 0xe8], rdx
mov rcx, r8
call fcn.1400a68a0
mov qword [rbx + 0x60], rax
test rax, rax
je 0x1400abfb5
mov eax, dword [rbx + 0x58]
test al, 4
je 0x1400abd08
mov r9d, 0xffffffff
mov r8, rdi
xor edx, edx
mov ecx, 0xfde9
mov dword [rsp + 0x28], 0
mov r13, qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov qword [rsp + 0x20], 0
call r13
lea esi, [rax + rax]
movsxd rsi, esi
mov rcx, rsi
call fcn.1400a6950
mov r12, rax
test rax, rax
je 0x1400abfb5
shr rsi, 1
xor edx, edx
mov qword [rsp + 0x20], rax
mov r9d, 0xffffffff
mov dword [rsp + 0x28], esi
mov r8, rdi
mov ecx, 0xfde9
call r13
test eax, eax
je 0x1400abde0
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x1400abf80
shr eax, 4
xor r8d, r8d
xor edx, edx
mov rcx, r12
and eax, 1
mov esi, eax
je 0x1400abd28
mov r14, qword [sym.imp.KERNEL32.dll_GetLongPathNameW]
mov r13, r12
call r14
mov edi, eax
test eax, eax
jne 0x1400abf30
mov rcx, r12
xor r9d, r9d
mov r8d, 7
xor r14d, r14d
mov qword [rsp + 0x30], 0
mov edx, 1
mov dword [rsp + 0x28], 0x42000000
mov dword [rsp + 0x20], 3
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov qword [rbx + 0xd8], rax
mov rcx, rax
cmp rcx, 0xffffffffffffffff
je 0x1400abf70
mov rax, qword [rbx + 8]
xor r9d, r9d
mov r8, rbx
mov rdx, qword [rax + 0x38]
call qword [sym.imp.KERNEL32.dll_CreateIoCompletionPort]
test rax, rax
je 0x1400abf70
mov rdx, qword [rbx + 0x108]
test rdx, rdx
je 0x1400abf98
mov r9d, ebp
lea rax, [rbx + 0xa8]
mov qword [rbx + 0xa8], 0
mov rcx, qword [rbx + 0xd8]
shr r9d, 2
mov qword [rsp + 0x30], rax
mov r8d, 0x1000
and r9d, 1
mov qword [rbx + 0xb0], 0
mov qword [rbx + 0xb8], 0
mov qword [rbx + 0xc0], 0
mov qword [rsp + 0x38], 0
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0x17f
call qword [sym.imp.KERNEL32.dll_ReadDirectoryChangesW]
test eax, eax
je 0x1400abf70
test esi, esi
jne 0x1400abe00
test r13, r13
je 0x1400abce1
mov r8d, 0x14a
lea rdx, str.src_win_fs_event.c
lea rcx, str.is_path_dir___pathw___NULL_:_pathw__NULL
call qword [sym.imp.msvcrt.dll__assert]
mov qword [rbx + 0x100], r13
xor eax, eax
mov dword [rbx + 0xe0], 1
add rsp, 0x58
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov edx, eax
or edx, 4
mov dword [rbx + 0x58], edx
test al, 8
je 0x1400abb23
mov rax, qword [rbx + 8]
add dword [rax + 8], 1
jmp 0x1400abb23
mov r13, qword [sym.imp.KERNEL32.dll_GetShortPathNameW]
lea r15, [rbx + 0xf0]
call r13
mov edi, eax
test eax, eax
jne 0x1400abe10
lea rdx, [rsp + 0x48]
mov r8, r15
mov rcx, r12
xor r14d, r14d
call fcn.1400ab8e0
test eax, eax
jne 0x1400abe67
mov qword [rbx + 0xf8], 0
xor r14d, r14d
mov r13, qword [rsp + 0x48]
mov rcx, r12
call fcn.1400a6970
mov dword [rsp + 0x28], 0x42000000
xor r9d, r9d
mov r8d, 7
mov rcx, r13
mov dword [rsp + 0x20], 3
mov edx, 1
mov qword [rsp + 0x30], 0
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov qword [rbx + 0xd8], rax
mov rcx, rax
test r13, r13
je 0x1400abc0b
mov rcx, r13
xor r13d, r13d
call fcn.1400a6970
mov rcx, qword [rbx + 0xd8]
mov qword [rsp + 0x48], 0
jmp 0x1400abc0b
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, eax
add rsp, 0x58
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp fcn.1400ab4e0
test r13, r13
jne 0x1400abce1
jmp 0x1400abcc7
mov ecx, eax
add rcx, rcx
call fcn.1400a6950
mov r14, rax
test rax, rax
je 0x1400abd43
mov r8d, edi
mov rdx, rax
mov rcx, r12
call r13
test eax, eax
je 0x1400abfe0
lea rdx, [rsp + 0x48]
mov r8, r15
mov rcx, r12
call fcn.1400ab8e0
test eax, eax
jne 0x1400abe67
xor edx, edx
lea r8, [rbx + 0xf8]
mov rcx, r14
call fcn.1400ab8e0
test eax, eax
je 0x1400abd6c
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r13, r12
mov r15d, eax
mov rcx, qword [rbx + 0x60]
test rcx, rcx
je 0x1400abe89
call fcn.1400a6970
mov qword [rbx + 0x60], 0
mov rcx, qword [rbx + 0xf0]
test rcx, rcx
je 0x1400abea5
call fcn.1400a6970
mov qword [rbx + 0xf0], 0
mov rcx, qword [rbx + 0xf8]
test rcx, rcx
je 0x1400abec1
call fcn.1400a6970
mov qword [rbx + 0xf8], 0
mov rcx, r13
call fcn.1400a6970
mov rcx, qword [rbx + 0xd8]
cmp rcx, 0xffffffffffffffff
je 0x1400abee7
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rbx + 0xd8], 0xffffffffffffffff
mov rcx, qword [rbx + 0x108]
test rcx, rcx
je 0x1400abf03
call fcn.1400a6970
mov qword [rbx + 0x108], 0
mov eax, dword [rbx + 0x58]
test al, 4
je 0x1400abf1e
mov edx, eax
and edx, 0xfffffffb
mov dword [rbx + 0x58], edx
test al, 8
je 0x1400abf1e
mov rax, qword [rbx + 8]
sub dword [rax + 8], 1
mov rcx, r14
call fcn.1400a6970
mov ecx, r15d
jmp 0x1400abde8
movsxd rcx, eax
add rcx, rcx
call fcn.1400a6950
mov r13, rax
test rax, rax
je 0x1400abfb5
mov r8d, edi
mov rdx, rax
mov rcx, r12
call r14
test eax, eax
je 0x1400abfd0
cdqe
xor edx, edx
mov rcx, r12
mov r12, r13
mov word [r13 + rax*2], dx
call fcn.1400a6970
jmp 0x1400abbce
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r15d, eax
jmp 0x1400abe73
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r13, r12
xor r14d, r14d
mov r15d, eax
jmp 0x1400abe73
mov ecx, 0x1000
call fcn.1400a6950
mov qword [rbx + 0x108], rax
mov rdx, rax
test rax, rax
jne 0x1400abc42
lea rdx, [0x14029c720]
mov ecx, 0xe
call fcn.1400ab420
nop word cs:[rax + rax]
mov rcx, r13
mov r13, r12
call fcn.1400a6970
jmp 0x1400abbce
mov rcx, r14
call fcn.1400a6970
jmp 0x1400abd43
mov eax, 0xfffff019
jmp 0x1400abcf4