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

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbx
sub rsp, 0x78
cmp byte [rdx], 0
je 0x14009bb6f
mov r15, rdx
mov r14, rcx
xorps xmm0, xmm0
movaps xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x60], 0
lea rcx, [rsp + 0x50]
mov edx, 0x1000
call fcn.1400c6d00
mov rbx, qword [rsp + 0x60]
cmp rbx, 0xfff
ja 0x14009b71c
cmp qword [rsp + 0x58], 0xfff
ja 0x14009b66d
lea rcx, [rsp + 0x50]
mov edx, 0x1000
call fcn.1400c6d00
mov rbx, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x50]
lea rcx, [rdi + rbx]
mov edx, 0x1000
sub rdx, rbx
mov eax, edx
or eax, ecx
test al, 0xf
je 0x14009b6ef
cmp rbx, 0x1000
je 0x14009b71c
mov edi, edx
and edi, 7
add rbx, 0xfffffffffffff007
cmp rbx, 7
jb 0x14009b6d9
and rdx, 0xfffffffffffffff8
nop dword [rax]
mov byte [rcx], 0
mov byte [rcx + 1], 0
mov byte [rcx + 2], 0
mov byte [rcx + 3], 0
mov byte [rcx + 4], 0
mov byte [rcx + 5], 0
mov byte [rcx + 6], 0
mov byte [rcx + 7], 0
add rcx, 8
add rdx, 0xfffffffffffffff8
jne 0x14009b6b0
test rdi, rdi
je 0x14009b71c
xor eax, eax
mov byte [rcx + rax], 0
add rax, 1
cmp rdi, rax
jne 0x14009b6e0
jmp 0x14009b71c
and rdx, 0xfffffffffffffff8
add rdx, rcx
cmp rdx, rcx
jbe 0x14009b71c
lea r8, [rbx + rdi]
add r8, 0x10
cmp rdx, r8
cmova r8, rdx
sub r8, rcx
add r8, 0xf
and r8, 0xfffffffffffffff0
xor edx, edx
call sub.msvcrt.dll_memset
mov qword [rsp + 0x60], 0x1000
mov r12, qword [rsp + 0x50]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
je 0x14009b740
mov r12, r15
jmp 0x14009bb03
movsx eax, byte [r15]
lea ecx, [rax - 0x41]
shl eax, 0x18
lea edx, [rax + 0x20000000]
cmp ecx, 0x1a
cmovae edx, eax
add edx, 0x9fffffff
cmp edx, 0x1afffffe
ja 0x14009b777
cmp byte [r15 + 1], 0x3a
jne 0x14009b777
mov al, byte [r15 + 2]
cmp al, 0x2f
je 0x14009b738
cmp al, 0x5c
je 0x14009b738
xorps xmm0, xmm0
movaps xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], 0
lea rcx, [rsp + 0x30]
mov edx, 0x1000
call fcn.1400c6d00
mov rdi, qword [rsp + 0x40]
cmp rdi, 0xfff
ja 0x14009b87c
cmp qword [rsp + 0x38], 0xfff
ja 0x14009b7c8
lea rcx, [rsp + 0x30]
mov edx, 0x1000
call fcn.1400c6d00
mov rdi, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x30]
lea rcx, [rbx + rdi]
mov edx, 0x1000
sub rdx, rdi
mov eax, edx
or eax, ecx
test al, 0xf
je 0x14009b84f
cmp rdi, 0x1000
je 0x14009b87c
mov ebx, edx
and ebx, 7
add rdi, 0xfffffffffffff007
cmp rdi, 7
jb 0x14009b839
and rdx, 0xfffffffffffffff8
nop word cs:[rax + rax]
nop
mov byte [rcx], 0
mov byte [rcx + 1], 0
mov byte [rcx + 2], 0
mov byte [rcx + 3], 0
mov byte [rcx + 4], 0
mov byte [rcx + 5], 0
mov byte [rcx + 6], 0
mov byte [rcx + 7], 0
add rcx, 8
add rdx, 0xfffffffffffffff8
jne 0x14009b810
test rbx, rbx
je 0x14009b87c
xor eax, eax
mov byte [rcx + rax], 0
add rax, 1
cmp rbx, rax
jne 0x14009b840
jmp 0x14009b87c
and rdx, 0xfffffffffffffff8
add rdx, rcx
cmp rdx, rcx
jbe 0x14009b87c
lea r8, [rdi + rbx]
add r8, 0x10
cmp rdx, r8
cmova r8, rdx
sub r8, rcx
add r8, 0xf
and r8, 0xfffffffffffffff0
xor edx, edx
call sub.msvcrt.dll_memset
mov qword [rsp + 0x40], 0x1000
mov rsi, qword [rsp + 0x30]
call fcn.14008ae20
mov rdx, 0xffffffffffffffff
lea rax, [0x140c5df10]
nop dword [rax]
cmp byte [rdx + rax + 1], 0
lea rdx, [rdx + 1]
jne 0x14009b8a0
cmp rdx, 0xfff
mov r8d, 0xfff
cmovb r8, rdx
test r8, r8
je 0x14009b9c4
cmp r8, 8
jb 0x14009b8e5
lea rcx, [rax + r8]
cmp rsi, rcx
jae 0x14009b9e2
lea rcx, [rsi + r8]
cmp rcx, rax
jbe 0x14009b9e2
xor ecx, ecx
mov r9, rcx
not r9
add r9, r8
test r8b, 3
je 0x14009b921
cmp rdx, 0xfff
mov edi, 0xfff
cmovb rdi, rdx
and edi, 3
nop dword [rax]
movzx ebx, byte [rcx + rax]
mov byte [rsi + rcx], bl
add rcx, 1
add rdi, 0xffffffffffffffff
jne 0x14009b910
cmp r9, 3
jb 0x14009b96b
cmp rdx, 0xfff
mov ebx, 0xfff
cmovb rbx, rdx
nop word [rax + rax]
movzx edx, byte [rcx + rax]
mov byte [rsi + rcx], dl
movzx edx, byte [rcx + rax + 1]
mov byte [rsi + rcx + 1], dl
movzx edx, byte [rcx + rax + 2]
mov byte [rsi + rcx + 2], dl
movzx edx, byte [rcx + rax + 3]
mov byte [rsi + rcx + 3], dl
add rcx, 4
cmp rbx, rcx
jne 0x14009b940
mov byte [rsi + r8], 0
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14009b9de
mov al, byte [rcx]
xor r9d, r9d
mov rsi, rcx
test al, al
je 0x14009ba15
nop word [rax + rax]
mov r8, rsi
mov rdi, rsi
mov edx, eax
xor esi, esi
nop word [rax + rax]
cmp dl, 0x5c
cmove rsi, rdi
movzx edx, byte [rdi + 1]
add rdi, 1
test dl, dl
jne 0x14009b9a0
test rsi, rsi
je 0x14009b9f3
add rsi, 1
mov al, byte [rsi]
test al, al
jne 0x14009b990
jmp 0x14009ba15
mov byte [rsi], 0
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x38]
call fcn.1400883e0
mov r12, r15
jmp 0x14009bb03
xor edx, edx
jmp 0x14009ba20
cmp r8, 0x20
jae 0x14009bb7e
xor ecx, ecx
jmp 0x14009bca0
xor r9d, r9d
mov rbx, r8
nop dword [rax]
cmp al, 0x2f
cmove r9, rbx
movzx eax, byte [rbx + 1]
add rbx, 1
test al, al
jne 0x14009ba00
mov rsi, r8
lea rdx, [r9 + 1]
test r9, r9
cmove rdx, rsi
mov rax, r12
nop word cs:[rax + rax]
nop dword [rax]
cmp byte [rax], 0
lea rax, [rax + 1]
jne 0x14009ba30
sub rdx, rcx
cmp rdx, 0xfff
mov edi, 0xfff
cmovb rdi, rdx
xor edx, edx
test rdi, rdi
je 0x14009ba78
nop word cs:[rax + rax]
nop dword [rax]
movzx ebx, byte [rcx + rdx]
test bl, bl
je 0x14009ba78
mov byte [rax + rdx - 1], bl
add rdx, 1
cmp rdi, rdx
jne 0x14009ba60
mov rdx, rdi
mov byte [rdx + rax - 1], 0
mov rdx, 0xfffffffffffff000
nop word cs:[rax + rax]
nop
cmp byte [r12 + rdx + 0x1000], 0
lea rdx, [rdx + 1]
jne 0x14009ba90
mov rax, r12
nop word cs:[rax + rax]
nop dword [rax]
cmp byte [rax], 0
lea rax, [rax + 1]
jne 0x14009bab0
test rdx, rdx
je 0x14009baf2
mov rdi, rdx
neg rdi
xor ebx, ebx
nop word cs:[rax + rax]
movzx r8d, byte [r15 + rbx]
test r8b, r8b
je 0x14009baf4
mov byte [rax + rbx - 1], r8b
lea rsi, [rdx + rbx]
add rbx, 1
cmp rsi, 0xffffffffffffffff
jne 0x14009bad0
mov rbx, rdi
jmp 0x14009baf4
xor ebx, ebx
mov byte [rbx + rax - 1], 0
mov rdx, qword [rsp + 0x38]
call fcn.1400883e0
cmp dword [0x140c5ced4], 0
je 0x14009bb22
mov rdx, qword [str.SanitizerTool]
lea rcx, str._s:_reading_suppressions_file_at__s_n
mov r8, r12
call fcn.1400866c0
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0x10000000
lea rdx, [rsp + 0x30]
lea r8, [rsp + 0x70]
lea r9, [rsp + 0x68]
mov rcx, r12
call fcn.1400a57e0
test al, al
je 0x14009bcef
mov rdx, qword [rsp + 0x30]
mov rcx, r14
call fcn.1400a5c60
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x58]
call fcn.1400883e0
nop
add rsp, 0x78
pop rbx
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret
mov ecx, r8d
and ecx, 0xfe0
lea rbx, [rcx - 0x20]
mov r9, rbx
shr r9, 5
add r9, 1
cmp rbx, 0x60
jae 0x14009bba3
xor ebx, ebx
jmp 0x14009bc28
cmp rdx, 0xfff
mov edi, 0xfff
cmovb rdi, rdx
and edi, 0xfe0
add rdi, 0xffffffffffffffe0
shr rdi, 5
add rdi, 1
and rdi, 0xfffffffffffffffc
xor ebx, ebx
nop dword [rax + rax]
movaps xmm0, xmmword [rbx + rax]
movaps xmm1, xmmword [rbx + rax + 0x10]
movups xmmword [rsi + rbx], xmm0
movups xmmword [rsi + rbx + 0x10], xmm1
movaps xmm0, xmmword [rbx + rax + 0x20]
movaps xmm1, xmmword [rbx + rax + 0x30]
movups xmmword [rsi + rbx + 0x20], xmm0
movups xmmword [rsi + rbx + 0x30], xmm1
movaps xmm0, xmmword [rbx + rax + 0x40]
movaps xmm1, xmmword [rbx + rax + 0x50]
movups xmmword [rsi + rbx + 0x40], xmm0
movups xmmword [rsi + rbx + 0x50], xmm1
movaps xmm0, xmmword [rbx + rax + 0x60]
movaps xmm1, xmmword [rbx + rax + 0x70]
movups xmmword [rsi + rbx + 0x60], xmm0
movups xmmword [rsi + rbx + 0x70], xmm1
sub rbx, 0xffffffffffffff80
add rdi, 0xfffffffffffffffc
jne 0x14009bbd0
test r9b, 3
je 0x14009bc8d
lea r10, [rsi + rbx]
add r10, 0x10
add rbx, rax
add rbx, 0x10
cmp rdx, 0xfff
mov edi, 0xfff
cmovb rdi, rdx
and dil, 0x60
add dil, 0xe0
shr dil, 5
add dil, 1
movzx r9d, dil
and r9d, 3
shl r9, 5
xor edi, edi
nop dword [rax + rax]
movaps xmm0, xmmword [rbx + rdi - 0x10]
movaps xmm1, xmmword [rbx + rdi]
movups xmmword [r10 + rdi - 0x10], xmm0
movups xmmword [r10 + rdi], xmm1
add rdi, 0x20
cmp r9, rdi
jne 0x14009bc70
cmp r8, rcx
je 0x14009b96b
test r8b, 0x18
je 0x14009b8e7
mov rbx, rcx
mov ecx, r8d
and ecx, 0xff8
cmp rdx, 0xfff
mov r9d, 0xfff
cmovb r9, rdx
and r9d, 0xff8
nop word cs:[rax + rax]
nop
mov rdi, qword [rbx + rax]
mov qword [rsi + rbx], rdi
add rbx, 8
cmp r9, rbx
jne 0x14009bcd0
cmp r8, rcx
je 0x14009b96b
jmp 0x14009b8e7
mov rdx, qword [str.SanitizerTool]
lea rcx, str._s:_failed_to_read_suppressions_file__s_n
mov r8, r12
call fcn.1400866c0
call fcn.1400866f0
int3