Function at 0x1800bf710
Capabilities:
Get file attributes

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x510
lea rbp, [rsp + 0x20]
mov qword [rbp + 0x58], 0xfffffffffffffffe
mov qword [rbp + 0x548], rbx
mov rax, qword [0x1801dc960]
xor rax, rbp
mov qword [rbp + 0x4e0], rax
mov r13d, r8d
mov rsi, rdx
mov rbx, rcx
lea rdx, [sym.vrvhook64.dll_MyCopyFileW]
lea rcx, [0x18028d500]
call fcn.18000dae0
test rax, rax
je 0x1800bfe96
mov rcx, rax
call fcn.18000d7e0
mov r12, rax
cmp dword [0x18025caa4], 0
jne 0x1800bf792
mov r8d, r13d
mov rdx, rsi
mov rcx, rbx
call r12
jmp 0x1800bfe96
test rbx, rbx
je 0x1800bfe8a
test rsi, rsi
je 0x1800bfe8a
mov edx, 0x5c
mov rcx, rbx
call fcn.1800fb920
test rax, rax
je 0x1800bfe7c
mov edx, 0x5c
mov rcx, rsi
call fcn.1800fb920
test rax, rax
je 0x1800bfe7c
lea rdx, str._OUTLOOK.EXE_
lea rcx, [0x18025c000]
call fcn.18010b680
test eax, eax
je 0x1800bf7f8
mov r8d, r13d
mov rdx, rsi
mov rcx, rbx
call r12
jmp 0x1800bfe96
xor r15d, r15d
mov word [rbp + 0x2d0], r15w
xor edx, edx
mov r8d, 0x206
lea rcx, [rbp + 0x2d2]
call fcn.1800f4fb0
mov word [rbp + 0xc0], r15w
xor edx, edx
mov r8d, 0x206
lea rcx, [rbp + 0xc2]
call fcn.1800f4fb0
mov rdx, rbx
lea rcx, [rbp + 0x2d0]
sub rcx, rbx
movzx eax, word [rdx]
mov word [rcx + rdx], ax
add rdx, 2
test ax, ax
jne 0x1800bf840
mov edx, 0x5c
lea rcx, [rbp + 0x2d0]
call fcn.1800fb920
mov word [rax], r15w
mov rcx, rsi
lea rdx, [rbp + 0xc0]
sub rdx, rsi
nop word [rax + rax]
movzx eax, word [rcx]
mov word [rdx + rcx], ax
add rcx, 2
test ax, ax
jne 0x1800bf880
mov edx, 0x5c
lea rcx, [rbp + 0xc0]
call fcn.1800fb920
mov word [rax], r15w
lea rdx, [rbp + 0xc0]
lea rcx, [rbp + 0x2d0]
call fcn.1800fe0a4
test eax, eax
jne 0x1800bf8cd
mov r8d, r13d
mov rdx, rsi
mov rcx, rbx
call r12
jmp 0x1800bfe96
movabs rdi, 0xffffffffffffff0
cmp dword [0x1801e5290], r15d
je 0x1800bfaeb
lea r14, [0x1801b12b0]
mov rdi, r14
cmp qword [0x1801b12c8], 0x10
cmovae rdi, qword [0x1801b12b0]
xor eax, eax
or rcx, 0xffffffffffffffff
repne scasb al, byte [rdi]
not rcx
cmp rcx, 1
jne 0x1800bf985
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_lstrlenW]
inc eax
cmp eax, 0x3fffffff
jle 0x1800bf926
mov rdx, r15
jmp 0x1800bf967
lea r8d, [rax + rax]
cdqe
add rax, rax
lea rcx, [rax + 0xf]
cmp rcx, rax
ja 0x1800bf942
movabs rcx, 0xffffffffffffff0
and rcx, 0xfffffffffffffff0
mov rax, rcx
call fcn.180124410
sub rsp, rcx
lea rcx, [rsp + 0x20]
mov r9d, 3
mov rdx, rbx
call fcn.180015500
mov rdx, rax
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rdx
repne scasb al, byte [rdi]
not rcx
lea r8, [rcx - 1]
lea rcx, [0x1801b12a8]
call fcn.180003700
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_lstrlenW]
inc eax
cmp eax, 0x3fffffff
jle 0x1800bf99c
mov rax, r15
jmp 0x1800bf9da
lea r8d, [rax + rax]
cdqe
add rax, rax
lea rcx, [rax + 0xf]
cmp rcx, rax
ja 0x1800bf9b8
movabs rcx, 0xffffffffffffff0
and rcx, 0xfffffffffffffff0
mov rax, rcx
call fcn.180124410
sub rsp, rcx
lea rcx, [rsp + 0x20]
mov r9d, 3
mov rdx, rbx
call fcn.180015500
cmp qword [0x1801b12c8], 0x10
cmovae r14, qword [0x1801b12b0]
mov rdx, rax
mov rcx, r14
call fcn.1800f4d08
test rax, rax
jne 0x1800bfae1
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_lstrlenW]
inc eax
cmp eax, 0x3fffffff
jle 0x1800bfa15
mov rdi, r15
jmp 0x1800bfa56
lea r8d, [rax + rax]
cdqe
add rax, rax
lea rcx, [rax + 0xf]
cmp rcx, rax
ja 0x1800bfa31
movabs rcx, 0xffffffffffffff0
and rcx, 0xfffffffffffffff0
mov rax, rcx
call fcn.180124410
sub rsp, rcx
lea rcx, [rsp + 0x20]
mov r9d, 3
mov rdx, rbx
call fcn.180015500
mov rdi, rax
lea r8, [0x18015284c]
lea rdx, [0x1801b12a8]
lea rcx, [rbp + 0x28]
call fcn.1800185f0
nop
mov r8, rdi
mov rdx, rax
lea rcx, [rbp]
call fcn.1800185f0
nop
or r9, 0xffffffffffffffff
xor r8d, r8d
mov rdx, rax
lea rcx, [0x1801b12a8]
call fcn.1800035e0
nop
cmp qword [rbp + 0x20], 0x10
jb 0x1800bfaa5
mov rcx, qword [rbp + 8]
call fcn.1800f4b9c
mov qword [rbp + 0x20], 0xf
mov qword [rbp + 0x18], r15
mov byte [rbp + 8], 0
cmp qword [rbp + 0x48], 0x10
jb 0x1800bfac5
mov rcx, qword [rbp + 0x30]
call fcn.1800f4b9c
mov qword [rbp + 0x48], 0xf
mov qword [rbp + 0x40], r15
mov byte [rbp + 0x30], 0
movabs rdi, 0xffffffffffffff0
jmp 0x1800bfaeb
movabs rdi, 0xffffffffffffff0
cmp dword [0x180250e70], 0
jne 0x1800bfb05
mov r8d, r13d
mov rdx, rsi
mov rcx, rbx
call r12
jmp 0x1800bfe96
call fcn.1800a79a0
mov rcx, qword [0x1801e1b60]
test rcx, rcx
je 0x1800bfb1b
mov rax, qword [rcx]
call qword [rax]
mov qword [rbp + 0x88], 0xf
mov qword [rbp + 0x80], r15
mov byte [rbp + 0x70], 0
mov r8d, 0x17
lea rdx, str.MSGTYPERPT_r_nMSGSTRING
lea rcx, [rbp + 0x68]
call fcn.180003700
nop
mov qword [rbp + 0xb0], 0xf
mov qword [rbp + 0xa8], r15
mov byte [rbp + 0x98], 0
mov r8d, 0x17
lea rdx, str.MSGTYPERPT_r_nMSGSTRING
lea rcx, [rbp + 0x90]
call fcn.180003700
nop
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
test al, 0x10
je 0x1800bfc54
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_lstrlenW]
inc eax
cmp eax, 0x3fffffff
jle 0x1800bfba3
mov rax, r15
jmp 0x1800bfbda
lea r8d, [rax + rax]
cdqe
add rax, rax
lea rcx, [rax + 0xf]
cmp rcx, rax
ja 0x1800bfbb8
mov rcx, rdi
and rcx, 0xfffffffffffffff0
mov rax, rcx
call fcn.180124410
sub rsp, rcx
lea rcx, [rsp + 0x20]
mov r9d, 3
mov rdx, rbx
call fcn.180015500
mov r8, rax
lea rdx, [rbp + 0x90]
lea rcx, [rbp + 0x68]
call fcn.1800b1560
test eax, eax
jne 0x1800bfd1b
cmp qword [rbp + 0xb0], 0x10
jb 0x1800bfc0b
mov rcx, qword [rbp + 0x98]
call fcn.1800f4b9c
mov qword [rbp + 0xb0], 0xf
mov qword [rbp + 0xa8], r15
mov byte [rbp + 0x98], 0
cmp qword [rbp + 0x88], 0x10
jb 0x1800bfc37
mov rcx, qword [rbp + 0x70]
call fcn.1800f4b9c
mov qword [rbp + 0x88], 0xf
mov qword [rbp + 0x80], r15
mov byte [rbp + 0x70], 0
xor eax, eax
jmp 0x1800bfe96
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_lstrlenW]
inc eax
cmp eax, 0x3fffffff
jle 0x1800bfc6b
mov rax, r15
jmp 0x1800bfca2
lea r8d, [rax + rax]
cdqe
add rax, rax
lea rcx, [rax + 0xf]
cmp rcx, rax
ja 0x1800bfc80
mov rcx, rdi
and rcx, 0xfffffffffffffff0
mov rax, rcx
call fcn.180124410
sub rsp, rcx
lea rcx, [rsp + 0x20]
mov r9d, 3
mov rdx, rbx
call fcn.180015500
xor r9d, r9d
mov r8, rax
lea rdx, [rbp + 0x90]
lea rcx, [rbp + 0x68]
call fcn.18009b1e0
test eax, eax
jne 0x1800bfd1b
cmp qword [rbp + 0xb0], 0x10
jb 0x1800bfcd2
mov rcx, qword [rbp + 0x98]
call fcn.1800f4b9c
mov qword [rbp + 0xb0], 0xf
mov qword [rbp + 0xa8], r15
mov byte [rbp + 0x98], 0
cmp qword [rbp + 0x88], 0x10
jb 0x1800bfcfe
mov rcx, qword [rbp + 0x70]
call fcn.1800f4b9c
mov qword [rbp + 0x88], 0xf
mov qword [rbp + 0x80], r15
mov byte [rbp + 0x70], 0
xor eax, eax
jmp 0x1800bfe96
mov rcx, qword [0x1801e1b60]
test rcx, rcx
je 0x1800bfd2d
mov rax, qword [rcx]
call qword [rax + 8]
cmp qword [rbp + 0x80], 0x17
ja 0x1800bfd45
cmp qword [rbp + 0xa8], 0x17
jbe 0x1800bfe12
lea rax, [rbp + 0x28]
mov qword [rbp + 0x60], rax
lea rax, [rbp]
mov qword [rbp + 0x50], rax
mov qword [rbp + 0x48], 0xf
mov qword [rbp + 0x40], r15
mov byte [rbp + 0x30], 0
or r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rbp + 0x90]
lea rcx, [rbp + 0x28]
call fcn.1800035e0
nop
mov qword [rbp + 0x20], 0xf
mov qword [rbp + 0x18], r15
mov byte [rbp + 8], 0
or r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rbp + 0x68]
lea rcx, [rbp]
call fcn.1800035e0
nop
lea rdx, [rbp + 0x28]
lea rcx, [rbp]
call fcn.18007bdb0
test eax, eax
jne 0x1800bfe12
cmp qword [rbp + 0xb0], 0x10
jb 0x1800bfdc9
mov rcx, qword [rbp + 0x98]
call fcn.1800f4b9c
mov qword [rbp + 0xb0], 0xf
mov qword [rbp + 0xa8], r15
mov byte [rbp + 0x98], 0
cmp qword [rbp + 0x88], 0x10
jb 0x1800bfdf5
mov rcx, qword [rbp + 0x70]
call fcn.1800f4b9c
mov qword [rbp + 0x88], 0xf
mov qword [rbp + 0x80], r15
mov byte [rbp + 0x70], 0
xor eax, eax
jmp 0x1800bfe96
mov r8d, r13d
mov rdx, rsi
mov rcx, rbx
call r12
mov edi, eax
cmp qword [rbp + 0xb0], 0x10
jb 0x1800bfe36
mov rcx, qword [rbp + 0x98]
call fcn.1800f4b9c
mov qword [rbp + 0xb0], 0xf
mov qword [rbp + 0xa8], r15
mov byte [rbp + 0x98], 0
cmp qword [rbp + 0x88], 0x10
jb 0x1800bfe62
mov rcx, qword [rbp + 0x70]
call fcn.1800f4b9c
mov qword [rbp + 0x88], 0xf
mov qword [rbp + 0x80], r15
mov byte [rbp + 0x70], 0
mov eax, edi
jmp 0x1800bfe96
mov r8d, r13d
mov rdx, rsi
mov rcx, rbx
call r12
jmp 0x1800bfe96
mov r8d, r13d
mov rdx, rsi
mov rcx, rbx
call r12
mov rcx, qword [rbp + 0x4e0]
xor rcx, rbp
call fcn.1800f4f80
mov rbx, qword [rbp + 0x548]
lea rsp, [rbp + 0x4f0]
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret