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

Disassembly:
mov rax, rsp
movsd qword [rax + 0x20], xmm3
mov dword [rax + 0x18], r8d
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbx
push rsi
push rdi
sub rsp, 0x270
mov qword [rsp + 0x210], 0xfffffffffffffffe
movaps xmmword [rax - 0x28], xmm6
movaps xmmword [rax - 0x38], xmm7
mov rsi, rdx
cmp qword [rdx + 0x18], 8
jb 0x1400dc251
mov r8, qword [rdx]
jmp 0x1400dc254
mov r8, rsi
lea rax, [0x140120bc0]
mov qword [rsp + 0x148], rax
mov dword [rsp + 0x150], 0x33f
mov dword [rsp + 0x154], 1
lea rdx, str.Path:___s_
lea rcx, [rsp + 0x148]
call fcn.14000b5d0
xor eax, eax
mov qword [rsp + 0x1d0], rax
mov qword [rsp + 0x1d8], rax
lea r9, [rsp + 0x1d0]
xor r8d, r8d
lea edx, [rax + 3]
mov rbx, qword [rsp + 0x290]
mov rcx, qword [rbx + 0x68]
call fcn.1400c7cc0
test al, al
sete al
test al, al
je 0x1400dc307
lea rax, [0x140120be0]
mov qword [rsp + 0x120], rax
mov dword [rsp + 0x128], 0x342
mov dword [rsp + 0x12c], 1
lea rdx, [0x140120c00]
lea rcx, [rsp + 0x120]
call fcn.14000b5d0
xor al, al
jmp 0x1400dccbd
movsd xmm6, qword [rsp + reloc.SHELL32.dll_IsUserAnAdmin]
lea rax, [rsp + 0x58]
mov qword [rsp + 0xb0], rax
lea rcx, section..data
mov rax, qword [section..data]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x58], rax
lea rdx, [0x140119164]
test rdx, 0xffffffffffff0000
jne 0x1400dc368
movzx ebx, dx
mov ecx, ebx
call fcn.14001df50
test rax, rax
je 0x1400dc377
mov r8d, ebx
mov rdx, rax
lea rcx, [rsp + 0x58]
call fcn.14001e130
jmp 0x1400dc377
xor r8d, r8d
lea rcx, [rsp + 0x58]
call fcn.14001e490
jmp 0x1400dc37f
mov rbx, qword [rsp + 0x290]
cmp qword [rsi + 0x18], 8
jb 0x1400dc38b
mov rax, qword [rsi]
jmp 0x1400dc38e
mov rax, rsi
lea rcx, [rsp + 0x58]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rax
movapd xmm3, xmm6
mov edx, 3
lea r8d, [rdx - 1]
lea rcx, [rsp + 0x220]
call fcn.140031bc0
nop
mov rdx, rax
mov rcx, qword [rbx + 0x68]
call fcn.140022750
nop
mov rdx, qword [rsp + 0x248]
add rdx, 0xffffffffffffffe8
or edi, 0xffffffff
mov eax, edi
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x1400dc3ea
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
mov rdx, qword [rsp + 0x240]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x1400dc40c
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
cmp qword [rsi + 0x18], 8
jb 0x1400dc418
mov rcx, qword [rsi]
jmp 0x1400dc41b
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
jne 0x1400dc488
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jle 0x1400dc438
movzx eax, ax
or eax, 0x80070000
cmp qword [rsi + 0x18], 8
jb 0x1400dc444
mov r8, qword [rsi]
jmp 0x1400dc447
mov r8, rsi
lea rcx, [0x140120c18]
mov qword [rsp + 0x138], rcx
mov dword [rsp + 0x140], 0x350
mov dword [rsp + 0x144], 1
mov r9d, eax
lea rdx, str.GetFileAttributes___s___failed_with_error_code_0x_08x.
lea rcx, [rsp + 0x138]
call fcn.14000b5d0
jmp 0x1400dcae1
bt eax, 0xa
jae 0x1400dc4e5
cmp byte [rsp + 0x2c0], 0
je 0x1400dc4e5
cmp qword [rsi + 0x18], 8
jb 0x1400dc4a4
mov r8, qword [rsi]
jmp 0x1400dc4a7
mov r8, rsi
lea rax, [0x140120cd0]
mov qword [rsp + 0x158], rax
mov dword [rsp + 0x160], 0x35c
mov dword [rsp + 0x164], 1
lea rdx, str.File___s__is_a_reparse_point.
lea rcx, [rsp + 0x158]
call fcn.14000b5d0
jmp 0x1400dcae1
cmp dword [rsp + 0x2a0], 0
jle 0x1400dcae1
test al, 0x10
je 0x1400dcae1
xor ebx, ebx
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x50], rbx
mov rdx, rsi
lea rcx, [rsp + 0xb8]
call fcn.14003f320
nop
mov qword [rsp + 0x1a0], rbx
mov qword [rsp + 0x1a8], rbx
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x180], rax
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0x188], rax
test rax, rax
je 0x1400dc551
lock inc dword [rax + 8]
lea rdx, [rsp + 0x1a0]
lea rcx, [rsp + 0x180]
call fcn.14003e190
mov rbx, rax
mov qword [rsp + 0x168], rax
movsd xmm6, qword [rsp + 0x2b0]
movapd xmm0, xmm6
movsd xmm2, qword [rsp + reloc.SHELL32.dll_IsUserAnAdmin]
subsd xmm0, xmm2
lea rcx, [rax + 1]
pxor xmm1, xmm1
cvtsi2sd xmm1, rcx
movsd xmm7, qword [0x140135628]
test rcx, rcx
jns 0x1400dc5a9
addsd xmm1, xmm7
divsd xmm0, xmm1
addsd xmm0, xmm2
lea rax, [rsp + reloc.SHELL32.dll_IsUserAnAdmin]
mov qword [rsp + 0x1e0], rax
movsd qword [rsp + 0x1e8], xmm0
mov byte [rsp + 0x78], 0
xor eax, eax
mov qword [rsp + 0x79], rax
mov qword [rsp + 0x81], rax
mov qword [rsp + 0x89], rax
lea rcx, [rsp + 0x91]
call fcn.140028bf0
nop
cmp qword [rsi + 0x18], 8
jb 0x1400dc600
mov rdx, qword [rsi]
jmp 0x1400dc603
mov rdx, rsi
lea rcx, [rsp + 0xd0]
call fcn.14001e210
nop
xor eax, eax
mov qword [rsp + 0x1b0], rax
mov qword [rsp + 0x1b8], rax
movaps xmm0, xmmword [rsp + 0x1e0]
movdqa xmmword [rsp + 0x1f0], xmm0
lea rax, [rsp + 0x1b0]
mov qword [rsp + 0x28], rax
mov byte [rsp + 0x20], 1
lea r9, [rsp + 0x1f0]
lea r8, [rsp + 0x78]
lea rdx, [rsp + 0xd0]
mov rcx, qword [rsp + 0x290]
call fcn.1400db8b0
mov dword [rsp + 0x40], eax
mov rdx, qword [rsp + 0xd0]
add rdx, 0xffffffffffffffe8
mov ecx, edi
lock xadd dword [rdx + 0x10], ecx
dec ecx
test ecx, ecx
jg 0x1400dc692
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
mov eax, dword [rsp + 0x40]
cmp eax, 0x80004004
jne 0x1400dc75c
lea rsi, [rsp + 0x91]
mov rax, qword [rsp + 0x91]
mov rcx, qword [rax]
mov qword [rax], rax
mov rax, qword [rsp + 0x91]
mov qword [rax + 8], rax
mov qword [rsp + 0x99], 0
nop dword [rax + rax]
cmp rcx, qword [rsi]
je 0x1400dc6e2
mov rbx, qword [rcx]
call fcn.14005e094
mov rcx, rbx
jmp 0x1400dc6d0
mov rcx, qword [rsi]
call fcn.14005e094
nop
mov rbx, qword [rsp + 0xc0]
test rbx, rbx
je 0x1400dc721
mov eax, edi
lock xadd dword [rbx + 8], eax
dec eax
jne 0x1400dc721
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
mov eax, edi
lock xadd dword [rbx + 0xc], eax
dec eax
jne 0x1400dc721
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x10]
nop
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x1400dc755
mov eax, edi
lock xadd dword [rcx + 8], eax
dec eax
jne 0x1400dc755
mov rbx, qword [rsp + 0x50]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
lock dec dword [rbx + 0xc]
jne 0x1400dc755
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rcx]
call qword [rdx + 0x10]
xor al, al
jmp 0x1400dccbd
test eax, eax
jns 0x1400dc7b0
cmp qword [rsi + 0x18], 8
jb 0x1400dc76c
mov rdx, qword [rsi]
jmp 0x1400dc76f
mov rdx, rsi
lea rcx, [rsp + 0x130]
call fcn.14001e210
nop
mov rdx, rax
mov rcx, qword [rsp + 0x2b8]
call fcn.14003df90
nop
mov rdx, qword [rsp + 0x130]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x1400dc7b0
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
test rbx, rbx
je 0x1400dca15
xor eax, eax
mov dword [rsp + 0x40], eax
mov qword [rsp + 0x68], rax
mov ebx, eax
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x70], rax
mov rdx, rsi
lea rcx, [rsp + 0xd8]
call fcn.14003f320
nop
mov rdx, qword [rsp + 0xd8]
test rdx, rdx
je 0x1400dc9b7
movapd xmm2, xmm6
movsd xmm4, qword [rsp + reloc.SHELL32.dll_IsUserAnAdmin]
subsd xmm2, xmm4
mov rax, qword [rsp + 0x168]
pxor xmm1, xmm1
cvtsi2sd xmm1, rax
test rax, rax
jns 0x1400dc81d
addsd xmm1, xmm7
mov eax, dword [rsp + 0x40]
movd xmm3, eax
cvtdq2pd xmm3, xmm3
mulsd xmm3, xmm2
divsd xmm3, xmm1
addsd xmm3, xmm4
inc eax
mov dword [rsp + 0x40], eax
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm2
divsd xmm0, xmm1
addsd xmm0, xmm4
mov r8d, dword [rsp + 0x2a0]
dec r8d
mov byte [rsp + 0x30], 1
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x28], rax
movsd qword [rsp + 0x20], xmm0
mov rcx, qword [rsp + 0x290]
call fcn.1400dc210
test al, al
jne 0x1400dc9a3
mov rbx, qword [rsp + 0xe0]
test rbx, rbx
je 0x1400dc8b9
lock dec dword [rbx + 8]
jne 0x1400dc8b2
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
lock dec dword [rbx + 0xc]
jne 0x1400dc8b2
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x10]
mov rcx, qword [rsp + 0x70]
jmp 0x1400dc8be
mov rcx, qword [rsp + 0x60]
test rcx, rcx
je 0x1400dc8e9
lock dec dword [rcx + 8]
jne 0x1400dc8e9
mov rbx, qword [rsp + 0x70]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
lock dec dword [rbx + 0xc]
jne 0x1400dc8e9
mov rcx, qword [rsp + 0x70]
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
lea rsi, [rsp + 0x91]
mov rax, qword [rsp + 0x91]
mov rcx, qword [rax]
mov qword [rax], rax
mov rax, qword [rsp + 0x91]
mov qword [rax + 8], rax
mov qword [rsp + 0x99], 0
cmp rcx, qword [rsi]
je 0x1400dc929
mov rbx, qword [rcx]
call fcn.14005e094
mov rcx, rbx
jmp 0x1400dc917
mov rcx, qword [rsi]
call fcn.14005e094
nop
mov rbx, qword [rsp + 0xc0]
test rbx, rbx
je 0x1400dc968
mov eax, edi
lock xadd dword [rbx + 8], eax
dec eax
jne 0x1400dc968
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
mov eax, edi
lock xadd dword [rbx + 0xc], eax
dec eax
jne 0x1400dc968
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x10]
nop
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x1400dc99c
mov eax, edi
lock xadd dword [rcx + 8], eax
dec eax
jne 0x1400dc99c
mov rbx, qword [rsp + 0x50]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
lock dec dword [rbx + 0xc]
jne 0x1400dc99c
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rcx]
call qword [rdx + 0x10]
xor al, al
jmp 0x1400dccbd
xor edx, edx
lea rcx, [rsp + 0xd8]
call fcn.140059f70
jmp 0x1400dc7e1
mov rax, qword [rsp + 0xe0]
test rax, rax
je 0x1400dc9ea
mov rbx, rax
lock dec dword [rbx + 8]
jne 0x1400dc9e5
mov rax, qword [rax]
mov rcx, rbx
call qword [rax + 8]
lock dec dword [rbx + 0xc]
jne 0x1400dc9e5
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x10]
mov rbx, qword [rsp + 0x70]
test rbx, rbx
je 0x1400dca15
lock dec dword [rbx + 8]
jne 0x1400dca15
mov rbx, qword [rsp + 0x70]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
lock dec dword [rbx + 0xc]
jne 0x1400dca15
mov rcx, qword [rsp + 0x70]
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rax, qword [rsp + 0x91]
mov rcx, qword [rax]
mov qword [rax], rax
mov rax, qword [rsp + 0x91]
mov qword [rax + 8], rax
mov qword [rsp + 0x99], 0
lea rdx, [rsp + 0x91]
cmp rcx, qword [rdx]
je 0x1400dca55
mov rbx, qword [rcx]
call fcn.14005e094
mov rcx, rbx
jmp 0x1400dca3b
mov rcx, qword [rdx]
call fcn.14005e094
nop
mov rbx, qword [rsp + 0xc0]
test rbx, rbx
je 0x1400dca94
mov eax, edi
lock xadd dword [rbx + 8], eax
dec eax
jne 0x1400dca94
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
mov eax, edi
lock xadd dword [rbx + 0xc], eax
dec eax
jne 0x1400dca94
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x10]
nop
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x1400dcacd
mov eax, edi
lock xadd dword [rcx + 8], eax
dec eax
jne 0x1400dcacd
mov rbx, qword [rsp + 0x50]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
mov eax, edi
lock xadd dword [rbx + 0xc], eax
dec eax
jne 0x1400dcacd
mov rcx, qword [rsp + 0x50]
mov rax, qword [rcx]
call qword [rax + 0x10]
mov al, 1
test al, al
jne 0x1400dccbb
mov rbx, qword [rsp + 0x290]
jmp 0x1400dcaea
movsd xmm6, qword [rsp + 0x2b0]
lea rax, [rsp + reloc.SHELL32.dll_IsUserAnAdmin]
mov qword [rsp + 0x1c0], rax
movsd qword [rsp + 0x1c8], xmm6
mov byte [rsp + 0xe8], 0
xor eax, eax
mov qword [rsp + 0xe9], rax
mov qword [rsp + 0xf1], rax
mov qword [rsp + 0xf9], rax
lea rcx, [rsp + 0x101]
call fcn.140028bf0
nop
cmp qword [rsi + 0x18], 8
jb 0x1400dcb3f
mov rdx, qword [rsi]
jmp 0x1400dcb42
mov rdx, rsi
lea rcx, [rsp + 0xc8]
call fcn.14001e210
nop
xor eax, eax
mov qword [rsp + 0x190], rax
mov qword [rsp + 0x198], rax
movaps xmm0, xmmword [rsp + 0x1c0]
movdqa xmmword [rsp + 0x200], xmm0
lea rax, [rsp + 0x190]
mov qword [rsp + 0x28], rax
mov byte [rsp + 0x20], 1
lea r9, [rsp + 0x200]
lea r8, [rsp + 0xe8]
lea rdx, [rsp + 0xc8]
mov rcx, rbx
call fcn.1400db8b0
mov ebx, eax
mov rdx, qword [rsp + 0xc8]
add rdx, 0xffffffffffffffe8
mov ecx, edi
lock xadd dword [rdx + 0x10], ecx
dec ecx
test ecx, ecx
jg 0x1400dcbc9
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
cmp ebx, 0x80004004
jne 0x1400dcc21
lea rdi, [rsp + 0x101]
mov rax, qword [rsp + 0x101]
mov rcx, qword [rax]
mov qword [rax], rax
mov rax, qword [rsp + 0x101]
mov qword [rax + 8], rax
mov qword [rsp + 0x109], 0
nop
cmp rcx, qword [rdi]
je 0x1400dcc12
mov rbx, qword [rcx]
call fcn.14005e094
mov rcx, rbx
jmp 0x1400dcc00
mov rcx, qword [rdi]
call fcn.14005e094
xor al, al
jmp 0x1400dccbd
test ebx, ebx
jns 0x1400dcc72
cmp qword [rsi + 0x18], 8
jb 0x1400dcc2f
mov rsi, qword [rsi]
mov rdx, rsi
lea rcx, [rsp + 0xb0]
call fcn.14001e210
nop
mov rdx, rax
mov rcx, qword [rsp + 0x2b8]
call fcn.14003df90
nop
mov rdx, qword [rsp + 0xb0]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], edi
dec edi
test edi, edi
jg 0x1400dcc72
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
lea rdi, [rsp + 0x101]
mov rax, qword [rsp + 0x101]
mov rcx, qword [rax]
mov qword [rax], rax
mov rax, qword [rsp + 0x101]
mov qword [rax + 8], rax
mov qword [rsp + 0x109], 0
cmp rcx, qword [rdi]
je 0x1400dccb2
mov rbx, qword [rcx]
call fcn.14005e094
mov rcx, rbx
jmp 0x1400dcca0
mov rcx, qword [rdi]
call fcn.14005e094
nop
mov al, 1
movaps xmm6, xmmword [rsp + 0x260]
movaps xmm7, xmmword [rsp + 0x250]
add rsp, 0x270
pop rdi
pop rsi
pop rbx
ret