Function at 0x1400223d4
Capabilities:
Get file attributes
Set file attributes

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0xc8]
sub rsp, 0x1a0
mov rax, qword [0x14004d298]
xor rax, rsp
mov qword [rbp + 0x90], rax
mov rax, qword gs:[0x58]
mov r12, rcx
mov qword [rsp + 0x70], rcx
mov ecx, 8
mov rdx, qword [rax]
lea rax, str.TieringPinnedSession::MigratePinnedDatabaseToDscAttribute
mov qword [rcx + rdx], rax
lea rcx, [rsp + 0x78]
call fcn.140005448
mov rdx, qword [r12 + 0x18]
xor ebx, ebx
mov rcx, qword [r12 + 8]
xorps xmm0, xmm0
xor eax, eax
mov dword [rsp + 0x50], ebx
mov qword [rbp - 0x18], rax
xor r9d, r9d
lea eax, [rbx + 5]
mov dword [rsp + 0x44], ebx
mov r8d, 0x80000000
mov word [rsp + 0x54], ax
movups xmmword [rbp - 0x48], xmm0
mov esi, ebx
mov word [rsp + 0x48], bx
mov r13d, ebx
mov dword [rsp + 0x58], ebx
movups xmmword [rbp - 0x38], xmm0
movups xmmword [rbp - 0x28], xmm0
call qword [sym.imp.ESENT.dll_JetMove]
nop dword [rax + rax]
mov r8d, eax
add eax, 0x643
test eax, 0xfffffffd
je 0x140022c99
xor r9d, r9d
test r8d, r8d
je 0x140022561
cmp r8d, 0xfffffdef
je 0x1400224f6
cmp r8d, 0xfffffbbc
je 0x1400224f6
cmp r8d, 0xfffff8f0
je 0x1400224f6
cmp r8d, 0xfffffc0d
jne 0x1400224d7
mov ebx, 0x8007000e
jmp 0x140022502
test r8d, r8d
mov eax, 0x8e5e0000
mov ecx, 0xe5e0000
cmovs ecx, eax
mov eax, r8d
cdq
xor eax, edx
sub eax, edx
movzx ebx, ax
or ebx, ecx
jmp 0x140022502
mov ecx, 0x70
call fcn.140002f1c
mov ebx, eax
mov dword [rbp - 0x80], ebx
mov rcx, qword [0x14004d128]
lea r14, [0x14004d128]
mov edi, 1
lea r15d, [rdi + 1]
cmp rcx, r14
je 0x140022554
test byte [rcx + 0x1c], dil
je 0x140022554
cmp byte [rcx + 0x19], r15b
jb 0x140022554
mov r9, qword [r12 + 0x28]
lea edx, [rdi + 0x10]
mov rcx, qword [rcx + 0x10]
mov dword [rsp + 0x20], r8d
lea r8, [0x140046cd8]
mov r9, qword [r9 + 0x70]
call fcn.14001ead4
xor r9d, r9d
mov r13d, esi
mov dword [rsp + 0x48], 4
jmp 0x140022b60
mov rax, qword [r12 + 0x28]
lea r8, [rbp - 0x78]
mov edi, 1
mov r9d, 0x100080
mov cl, dil
mov rdx, qword [rax]
add rdx, 0x2a0
call fcn.14000c068
xor r9d, r9d
mov dword [rbp - 0x80], eax
mov ebx, eax
test eax, eax
jns 0x1400225f1
mov rcx, qword [0x14004d128]
lea r14, [0x14004d128]
lea r15d, [rdi + 1]
cmp rcx, r14
je 0x1400225e2
test byte [rcx + 0x1c], dil
je 0x1400225e2
cmp byte [rcx + 0x19], r15b
jb 0x1400225e2
mov rax, qword [r12 + 0x28]
lea edx, [rdi + 0x11]
mov rcx, qword [rcx + 0x10]
lea r8, [0x140046cd8]
mov dword [rsp + 0x20], ebx
mov r9, qword [rax]
add r9, 0x2a0
call fcn.14000c3e8
xor r9d, r9d
mov r13d, esi
mov eax, 5
mov word [rsp + 0x48], ax
jmp 0x140022b65
mov rcx, qword [r12 + 0x28]
xor edx, edx
call fcn.14001b7fc
mov rcx, qword [r12 + 0x28]
mov edx, edi
call fcn.14001b7fc
lea r14, [0x14004d128]
mov r15d, 2
lea r13, [0x140046cd8]
xor r9d, r9d
lea r8, [rsp + 0x40]
lea rdx, [rbp - 0x48]
mov rcx, r12
call fcn.140021710
xor r9d, r9d
mov r8d, eax
test eax, eax
jne 0x140022a55
movups xmm0, xmmword [rbp - 0x48]
mov rcx, qword [rbp - 0x78]
lea rdx, [rbp - 0x70]
add esi, edi
mov dword [rsp + 0x28], 0x2000000
mov dword [rsp + 0x4c], esi
mov r8d, 0x180
movzx esi, byte [rsp + 0x40]
mov qword [rsp + 0x20], r9
and esi, edi
lea r9d, [rax + 7]
mov dword [rbp - 0x70], 0x18
add esi, edi
mov dword [rbp - 0x6c], r15d
movdqu xmmword [rbp - 0x68], xmm0
call qword [sym.imp.api_ms_win_core_file_l2_1_1.dll_OpenFileById]
nop dword [rax + rax]
mov qword [rsp + 0x60], rax
cmp rax, 0xffffffffffffffff
je 0x14002284b
mov r9d, 8
mov dword [rsp + 0x20], 0x43
lea r8, [rsp + 0x68]
mov rcx, rax
lea rdx, [rbp - 0x58]
call qword [sym.imp.ntdll.dll_NtQueryInformationFile]
nop dword [rax + rax]
mov r12d, eax
xor eax, eax
test r12d, r12d
js 0x140022741
cmp dword [rsp + 0x68], esi
je 0x14002271f
mov rcx, qword [0x14004d128]
cmp rcx, r14
je 0x14002271f
test byte [rcx + 0x1c], dil
je 0x14002271f
cmp byte [rcx + 0x19], r15b
jb 0x14002271f
mov rax, qword [rsp + 0x70]
mov edx, 0x14
mov r9, qword [rbp - 0x40]
mov r8, r13
mov rcx, qword [rcx + 0x10]
mov dword [rsp + 0x30], r12d
mov rax, qword [rax + 0x28]
mov rax, qword [rax + 0x70]
mov qword [rsp + 0x28], rax
mov rax, qword [rbp - 0x48]
mov qword [rsp + 0x20], rax
call fcn.1400231bc
mov r12, qword [rsp + 0x60]
mov esi, dword [rsp + 0x44]
mov rcx, r12
call qword [sym.imp.api_ms_win_core_handle_l1_1_0.dll_CloseHandle]
nop dword [rax + rax]
mov r12, qword [rsp + 0x70]
jmp 0x1400228b0
cmp r12d, 0xc000050c
jne 0x1400227e2
mov r12, qword [rsp + 0x60]
lea r8, [rsp + 0x68]
mov rcx, r12
mov dword [rsp + 0x6c], eax
mov r9d, 8
mov dword [rsp + 0x68], esi
lea rdx, [rbp - 0x58]
mov dword [rsp + 0x20], 0x43
call qword [sym.imp.ntdll.dll_NtSetInformationFile]
nop dword [rax + rax]
mov esi, eax
test eax, eax
jns 0x140022724
mov rcx, qword [0x14004d128]
cmp rcx, r14
je 0x1400227d3
test byte [rcx + 0x1c], dil
je 0x1400227d3
cmp byte [rcx + 0x19], r15b
jb 0x1400227d3
mov rax, qword [rsp + 0x70]
mov edx, 0x15
mov r9, qword [rbp - 0x40]
mov r8, r13
mov rcx, qword [rcx + 0x10]
mov dword [rsp + 0x30], esi
mov rax, qword [rax + 0x28]
mov rax, qword [rax + 0x70]
mov qword [rsp + 0x28], rax
mov rax, qword [rbp - 0x48]
mov qword [rsp + 0x20], rax
call fcn.1400231bc
mov word [rsp + 0x48], r15w
mov dword [rsp + 0x44], esi
jmp 0x140022728
mov rcx, qword [0x14004d128]
cmp rcx, r14
je 0x14002282f
test byte [rcx + 0x1c], dil
je 0x14002282f
cmp byte [rcx + 0x19], r15b
jb 0x14002282f
mov rax, qword [rsp + 0x70]
mov edx, 0x16
mov r9, qword [rbp - 0x40]
mov r8, r13
mov rcx, qword [rcx + 0x10]
mov dword [rsp + 0x30], r12d
mov rax, qword [rax + 0x28]
mov rax, qword [rax + 0x70]
mov qword [rsp + 0x28], rax
mov rax, qword [rbp - 0x48]
mov qword [rsp + 0x20], rax
call fcn.1400231bc
mov eax, 3
mov dword [rsp + 0x44], r12d
mov esi, r12d
mov word [rsp + 0x48], ax
mov r12, qword [rsp + 0x60]
jmp 0x140022728
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov edx, eax
mov rcx, qword [0x14004d128]
cmp rcx, r14
je 0x140022899
test byte [rcx + 0x1c], dil
je 0x140022899
cmp byte [rcx + 0x19], r15b
jb 0x140022899
mov rax, qword [r12 + 0x28]
mov r9, qword [rbp - 0x40]
mov rcx, qword [rcx + 0x10]
mov dword [rsp + 0x30], edx
mov rax, qword [rax + 0x70]
mov qword [rsp + 0x28], rax
mov rax, qword [rbp - 0x48]
mov qword [rsp + 0x20], rax
call fcn.14002304c
mov word [rsp + 0x48], di
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov esi, eax
mov dword [rsp + 0x44], eax
xor ecx, ecx
test esi, esi
je 0x140022916
movzx edx, word [rsp + 0x54]
xor eax, eax
cmp ax, dx
jae 0x140022907
mov r10d, dword [rsp + 0x48]
mov r11d, dword [rsp + 0x58]
cmp r11d, edx
je 0x140022907
movzx eax, cx
mov r8d, dword [rbp + rax*8 - 0x38]
cmp r8d, esi
jne 0x1400228e6
cmp word [rbp + rax*8 - 0x34], r10w
je 0x140022907
test r8d, r8d
je 0x1400228f5
add cx, di
cmp cx, dx
jb 0x1400228cc
jmp 0x140022907
add r11d, edi
mov dword [rbp + rax*8 - 0x38], esi
mov dword [rsp + 0x58], r11d
mov word [rbp + rax*8 - 0x34], r10w
xor ecx, ecx
add dword [rsp + 0x50], edi
mov dword [rsp + 0x44], ecx
mov word [rsp + 0x48], cx
mov rdx, qword [r12 + 0x18]
xor r9d, r9d
mov rcx, qword [r12 + 8]
mov r8d, edi
call qword [sym.imp.ESENT.dll_JetMove]
nop dword [rax + rax]
mov esi, eax
cmp eax, 0xfffffc07
je 0x140022916
lea ecx, [rax + 0x643]
test ecx, 0xfffffffd
je 0x1400229c5
xor r8d, r8d
test eax, eax
je 0x140022a09
mov rcx, qword [0x14004d128]
cmp rcx, r14
je 0x140022996
test byte [rcx + 0x1c], dil
je 0x140022996
cmp byte [rcx + 0x19], r15b
jb 0x140022996
mov rax, qword [r12 + 0x28]
lea edx, [r8 + 0x19]
mov r9d, dword [rsp + 0x4c]
mov r8, r13
mov rcx, qword [rcx + 0x10]
mov dword [rsp + 0x28], esi
mov rax, qword [rax + 0x70]
mov qword [rsp + 0x20], rax
call fcn.14001e994
xor r8d, r8d
cmp esi, 0xfffffdef
je 0x140022a2f
cmp esi, 0xfffffbbc
je 0x140022a2f
cmp esi, 0xfffff8f0
je 0x140022a2f
cmp esi, 0xfffffc0d
jne 0x140022a12
mov ebx, 0x8007000e
jmp 0x140022a3b
mov rcx, qword [0x14004d128]
cmp rcx, r14
je 0x140022a01
test byte [rcx + 0x1c], dil
je 0x140022a01
cmp byte [rcx + 0x19], 4
jb 0x140022a01
mov rax, qword [r12 + 0x28]
mov edx, 0x18
mov r9d, dword [rsp + 0x4c]
mov r8, r13
mov rcx, qword [rcx + 0x10]
mov rax, qword [rax + 0x70]
mov qword [rsp + 0x20], rax
call fcn.14000a290
test esi, esi
jne 0x140022af8
mov esi, dword [rsp + 0x4c]
jmp 0x14002261d
test esi, esi
mov eax, 0x8e5e0000
mov ecx, 0xe5e0000
cmovs ecx, eax
mov eax, esi
cdq
xor eax, edx
sub eax, edx
movzx ebx, ax
or ebx, ecx
jmp 0x140022a3b
mov ecx, 0x70
call fcn.140002f1c
mov ebx, eax
mov esi, dword [rsp + 0x4c]
mov dword [rbp - 0x80], ebx
test esi, esi
jle 0x140022afc
mov ebx, r8d
mov dword [rbp - 0x80], ebx
jmp 0x140022afc
cmp r8d, 0xfffffdef
je 0x140022a9f
cmp r8d, 0xfffffbbc
je 0x140022a9f
cmp r8d, 0xfffff8f0
je 0x140022a9f
cmp r8d, 0xfffffc0d
jne 0x140022a80
mov ebx, 0x8007000e
jmp 0x140022aab
test r8d, r8d
mov eax, 0x8e5e0000
mov ecx, 0xe5e0000
cmovs ecx, eax
mov eax, r8d
cdq
xor eax, edx
sub eax, edx
movzx ebx, ax
or ebx, ecx
jmp 0x140022aab
mov ecx, 0x70
call fcn.140002f1c
mov ebx, eax
mov rcx, qword [0x14004d128]
cmp rcx, r14
je 0x140022aed
test byte [rcx + 0x1c], dil
je 0x140022aed
cmp byte [rcx + 0x19], r15b
jb 0x140022aed
mov rax, qword [r12 + 0x28]
mov edx, 0x13
mov rcx, qword [rcx + 0x10]
mov r9d, esi
mov dword [rsp + 0x28], r8d
mov r8, r13
mov rax, qword [rax + 0x70]
mov qword [rsp + 0x20], rax
call fcn.14001e994
xor r9d, r9d
test esi, esi
cmovg ebx, r9d
jmp 0x140022a4d
mov esi, dword [rsp + 0x4c]
mov rcx, qword [rbp - 0x78]
call qword [sym.imp.api_ms_win_core_handle_l1_1_0.dll_CloseHandle]
nop dword [rax + rax]
mov rcx, qword [0x14004d128]
cmp rcx, r14
je 0x140022b53
test byte [rcx + 0x1c], dil
je 0x140022b53
cmp byte [rcx + 0x19], r15b
jb 0x140022b53
mov rax, qword [r12 + 0x28]
mov r9d, esi
sub r9d, dword [rsp + 0x50]
mov edx, 0x1a
mov rcx, qword [rcx + 0x10]
mov r8, r13
mov dword [rsp + 0x30], ebx
mov rax, qword [rax + 0x70]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], esi
call fcn.140022e48
mov r13d, dword [rsp + 0x50]
xor r9d, r9d
test r13d, r13d
jg 0x140022b6f
mov eax, 5
test ebx, ebx
jns 0x140022c8b
jmp 0x140022b74
mov eax, 5
cmp dword [0x14004d098], eax
jbe 0x140022c8b
movabs rdx, 0x200000000000
test qword [0x14004d0a8], rdx
je 0x140022c8b
mov rax, qword [0x14004d0b0]
and rax, rdx
cmp rax, qword [0x14004d0b0]
jne 0x140022c8b
mov rax, qword [r12 + 0x28]
lea rcx, [rbp - 0x38]
mov r10d, dword [rsp + 0x48]
lea rdx, [0x140047bd0]
mov qword [rbp + 0x80], rcx
xor r8d, r8d
mov dword [rsp + 0x58], r13d
lea rcx, [rsp + 0x54]
mov qword [rbp + 0x70], rcx
lea rcx, [rsp + 0x58]
mov qword [rbp + 0x60], rcx
lea rcx, [rsp + 0x50]
mov qword [rbp + 0x50], rcx
lea rcx, [rsp + 0x40]
mov qword [rbp + 0x40], rcx
lea rcx, [rsp + 0x4c]
mov qword [rbp + 0x30], rcx
lea rcx, [rbp + 0x28]
mov dword [rsp + 0x50], esi
mov byte [rsp + 0x40], r10b
mov dword [rsp + 0x4c], ebx
mov rax, qword [rax]
mov qword [rbp + 0x10], rcx
mov qword [rbp + 0x88], 0x28
mov qword [rbp + 0x78], 2
mov qword [rbp + 0x68], 4
mov qword [rbp + 0x58], 4
mov qword [rbp + 0x48], 1
mov qword [rbp + 0x38], 4
mov qword [rbp + 0x18], 2
movzx ecx, word [rax + 0x2b8]
mov rax, qword [rax + 0x2c0]
mov qword [rbp + 0x20], rax
lea rax, [rbp - 0x10]
mov dword [rbp + 0x28], ecx
lea rcx, [0x14004d098]
mov dword [rbp + 0x2c], r9d
xor r9d, r9d
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0xa
call fcn.140001098
lea rcx, [rsp + 0x78]
call fcn.1400059b8
mov eax, ebx
jmp 0x140022ce8
mov rcx, qword [0x14004d128]
lea r14, [0x14004d128]
cmp rcx, r14
je 0x140022cd9
mov edi, 1
test byte [rcx + 0x1c], dil
je 0x140022cd9
cmp byte [rcx + 0x19], 4
jb 0x140022cd9
mov r9, qword [r12 + 0x28]
lea edx, [rdi + 0xf]
mov rcx, qword [rcx + 0x10]
lea r8, [0x140046cd8]
mov r9, qword [r9 + 0x70]
call fcn.14000a3f0
lea rcx, [rsp + 0x78]
mov dword [rbp - 0x80], ebx
call fcn.1400059b8
xor eax, eax
mov rcx, qword [rbp + 0x90]
xor rcx, rsp
call fcn.140001e70
lea r11, [rsp + 0x1a0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret