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

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0xe0
mov rax, qword [0x14049f3c0]
xor rax, rsp
mov qword [rbp + 0x17], rax
movzx r15d, r9b
mov rsi, rdx
mov rdi, rcx
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x19], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 9], xmm1
movdqu xmmword [rbp + 7], xmm0
movups xmmword [rbp - 0x59], xmm0
movdqa xmm1, xmmword [0x140445990]
movdqu xmmword [rbp - 0x49], xmm1
xor r12d, r12d
mov word [rbp - 0x59], r12w
movups xmmword [rbp - 0x79], xmm0
mov qword [rbp - 0x69], r12
mov qword [rbp - 0x61], 7
mov word [rbp - 0x79], r12w
test r8b, r8b
je 0x1400b9bb7
cmp qword [rcx + 0x18], 7
jbe 0x1400b9b91
mov rcx, qword [rcx]
mov qword [rsp + 0x20], 4
lea r9, [0x140432710]
xor r8d, r8d
mov rdx, qword [rdi + 0x10]
call fcn.1400a4b50
cmp rax, 0xffffffffffffffff
jne 0x1400b9c6b
cmp qword [rdi + 0x10], 0
je 0x1400b9c6b
mov rdx, rdi
lea rcx, [rbp - 0x39]
call fcn.1400c0c30
cmp qword [rax + 0x18], 7
jbe 0x1400b9bd8
mov rax, qword [rax]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov ebx, eax
lea rcx, [rbp - 0x39]
call fcn.1400166f0
cmp ebx, 0xffffffff
je 0x1400b9c23
mov rcx, rdi
call fcn.1400c0fb0
test al, al
je 0x1400b9c04
mov eax, 2
jmp 0x1400b9c1a
bt ebx, 0xa
jae 0x1400b9c11
mov eax, 3
jmp 0x1400b9c1a
movzx eax, bl
shr eax, 4
and eax, 1
test eax, eax
je 0x1400b9c39
cmp eax, 4
jmp 0x1400b9c37
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 5
je 0x1400b9c39
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x20
jne 0x1400b9c6b
mov rax, qword [rsi + 8]
cmp rax, qword [rsi + 0x10]
je 0x1400b9c58
mov rdx, rdi
mov rcx, rax
call fcn.140031cb0
add qword [rsi + 8], 0x20
jmp 0x1400b9f6e
mov r8, rdi
mov rdx, rax
mov rcx, rsi
call fcn.140059120
jmp 0x1400b9f6e
mov rcx, qword [rdi + 0x10]
mov rdx, rdi
cmp qword [rdi + 0x18], 7
jbe 0x1400b9c7c
mov rdx, qword [rdi]
test rcx, rcx
je 0x1400b9f6e
dec rcx
mov rax, 0xffffffffffffffff
cmp rcx, rax
cmovb rax, rcx
lea rbx, [rdx + rax*2]
cmp word [rbx], 0x5c
je 0x1400b9cb3
cmp rbx, rdx
je 0x1400b9f6e
sub rbx, 2
cmp word [rbx], 0x5c
jne 0x1400b9ca0
sub rbx, rdx
sar rbx, 1
cmp rbx, 0xffffffffffffffff
je 0x1400b9f6e
mov r9, rbx
xor r8d, r8d
lea rdx, [rbp - 0x39]
mov rcx, rdi
call fcn.140047e80
mov r14, rax
lea rax, [rbp - 0x59]
cmp rax, r14
je 0x1400b9d54
mov rdx, qword [rbp - 0x41]
cmp rdx, 7
jbe 0x1400b9d21
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x59]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400b9d1c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400b9fb8
call fcn.1402ba9fc
movdqa xmm0, xmmword [0x140445990]
movdqu xmmword [rbp - 0x49], xmm0
mov word [rbp - 0x59], r12w
movups xmm0, xmmword [r14]
movups xmmword [rbp - 0x59], xmm0
movups xmm1, xmmword [r14 + 0x10]
movups xmmword [rbp - 0x49], xmm1
mov qword [r14 + 0x10], r12
mov qword [r14 + 0x18], 7
mov word [r14], r12w
lea rcx, [rbp - 0x39]
call fcn.1400166f0
lea r8, [rbx + 1]
mov r9, qword [rdi + 0x10]
lea rdx, [rbp - 0x39]
mov rcx, rdi
call fcn.140047e80
mov rbx, rax
lea rax, [rbp - 0x79]
cmp rax, rbx
je 0x1400b9ded
mov rdx, qword [rbp - 0x61]
cmp rdx, 7
jbe 0x1400b9dbd
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x79]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400b9db8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400b9fb2
call fcn.1402ba9fc
mov qword [rbp - 0x69], r12
mov qword [rbp - 0x61], 7
mov word [rbp - 0x79], r12w
movups xmm0, xmmword [rbx]
movups xmmword [rbp - 0x79], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp - 0x69], xmm1
mov qword [rbx + 0x10], r12
mov qword [rbx + 0x18], 7
mov word [rbx], r12w
lea rcx, [rbp - 0x39]
call fcn.1400166f0
lea r14, [rbp - 0x79]
mov r8, qword [rbp - 0x79]
cmp qword [rbp - 0x61], 7
cmova r14, r8
lea rcx, [rbp - 0x79]
cmova rcx, r8
mov rax, qword [rbp - 0x69]
lea rbx, [rcx + rax*2]
lea rdi, [rbp - 0x79]
cmova rdi, r8
cmp rdi, rbx
je 0x1400b9e3d
sub r14, rdi
movzx ecx, word [rdi]
call fcn.1402da054
mov word [rdi + r14], ax
add rdi, 2
cmp rdi, rbx
jne 0x1400b9e27
movzx r8d, r15b
lea rdx, [rbp - 0x19]
lea rcx, [rbp - 0x59]
call fcn.1400b8ee0
mov rbx, qword [rbp - 0x19]
mov rdi, qword [rbp - 0x11]
cmp rbx, rdi
je 0x1400b9f6e
nop
mov rcx, qword [rbx + 0x10]
mov rdx, rbx
cmp qword [rbx + 0x18], 7
jbe 0x1400b9e71
mov rdx, qword [rbx]
test rcx, rcx
je 0x1400b9ea8
dec rcx
mov rax, 0xffffffffffffffff
cmp rcx, rax
cmovb rax, rcx
lea rax, [rdx + rax*2]
cmp word [rax], 0x5c
je 0x1400b9ea0
cmp rax, rdx
je 0x1400b9ea8
sub rax, 2
cmp word [rax], 0x5c
jne 0x1400b9e91
sub rax, rdx
sar rax, 1
jmp 0x1400b9eaf
mov rax, 0xffffffffffffffff
lea r8, [rax + 1]
mov r9, qword [rbx + 0x10]
sub r9, r8
lea rdx, [rbp - 0x39]
mov rcx, rbx
call fcn.140047e80
nop
lea r8, [rbp - 0x79]
cmp qword [rbp - 0x61], 7
cmova r8, qword [rbp - 0x79]
lea rcx, [rbp - 0x39]
cmp qword [rbp - 0x21], 7
cmova rcx, qword [rbp - 0x39]
test r8, r8
je 0x1400b9efd
mov r9, 0xffffffffffffffff
nop
inc r9
cmp word [r8 + r9*2], 0
jne 0x1400b9ef0
jmp 0x1400b9f00
mov r9, r12
test rcx, rcx
je 0x1400b9f1c
mov rdx, 0xffffffffffffffff
nop dword [rax]
inc rdx
cmp word [rcx + rdx*2], 0
jne 0x1400b9f10
jmp 0x1400b9f1f
mov rdx, r12
mov byte [rsp + 0x28], 1
call fcn.1400a3f10
test al, al
je 0x1400b9f58
mov rax, qword [rsi + 8]
cmp rax, qword [rsi + 0x10]
je 0x1400b9f49
mov rdx, rbx
mov rcx, rax
call fcn.140031cb0
add qword [rsi + 8], 0x20
jmp 0x1400b9f58
mov r8, rbx
mov rdx, rax
mov rcx, rsi
call fcn.140059120
nop
lea rcx, [rbp - 0x39]
call fcn.1400166f0
add rbx, 0x20
cmp rbx, rdi
jne 0x1400b9e60
lea rcx, [rbp - 0x79]
call fcn.1400166f0
nop
lea rcx, [rbp - 0x59]
call fcn.1400166f0
nop
lea rcx, [rbp - 1]
call fcn.140031a00
lea rcx, [rbp - 0x19]
call fcn.140031a00
mov rcx, qword [rbp + 0x17]
xor rcx, rsp
call fcn.1402ba9b0
add rsp, 0xe0
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.1402caabc
nop
call fcn.1402caabc
int3
movzx eax, r9b
mov r10, r8
movzx r9d, byte [rsp + 0x28]
mov rcx, rdx
movzx r8d, al
mov rdx, r10
jmp 0x1400b9b10