Function at 0x14001c1e0
Capabilities:
Get file system object information

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x8a0
mov qword [rsp + 0x88], 0xfffffffffffffffe
mov qword [rsp + 0x8f0], rbx
mov rax, qword [0x140197b10]
xor rax, rsp
mov qword [rsp + 0x890], rax
mov rbp, rdx
mov rsi, rcx
lea r8, [rsp + 0x90]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_GetFileAttributesExW]
mov ebx, dword [rsp + 0xac]
shl rbx, 0x20
mov eax, dword [rsp + 0xb0]
or rbx, rax
call fcn.1400da76c
mov r11, rax
xor r15d, r15d
mov ecx, r15d
test rax, rax
setne cl
test ecx, ecx
jne 0x14001c267
mov ecx, 0x80004005
call fcn.140001000
int3
mov rax, qword [rax]
mov rcx, r11
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x58], rax
cmp rbx, 0x100000
jbe 0x14001c2b8
pxor xmm2, xmm2
cvtsi2sd xmm2, rbx
test rbx, rbx
jns 0x14001c298
addsd xmm2, qword [0x140146080]
mulsd xmm2, qword [0x140146078]
movq r8, xmm2
lea rdx, str._0.1lf_MB
lea rcx, [rsp + 0x58]
call fcn.140002990
jmp 0x14001c30b
cmp rbx, 0x400
jbe 0x14001c2f7
pxor xmm2, xmm2
cvtsi2sd xmm2, rbx
test rbx, rbx
jns 0x14001c2d7
addsd xmm2, qword [0x140146080]
mulsd xmm2, qword [0x140146058]
movq r8, xmm2
lea rdx, str._0.1lf_KB
lea rcx, [rsp + 0x58]
call fcn.140002990
jmp 0x14001c30b
mov r8d, ebx
lea rdx, str._u_B
lea rcx, [rsp + 0x58]
call fcn.140002990
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0xa4]
call qword [sym.imp.KERNEL32.dll_FileTimeToLocalFileTime]
test eax, eax
jne 0x14001c332
mov qword [rsp + 0x50], r15
mov ecx, 0x80070057
call fcn.140001000
int3
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x78]
call qword [sym.imp.KERNEL32.dll_FileTimeToSystemTime]
test eax, eax
jne 0x14001c356
mov qword [rsp + 0x50], r15
mov ecx, 0x80070057
call fcn.140001000
int3
mov eax, 0x76c
or edi, 0xffffffff
movzx edx, word [rsp + 0x60]
cmp dx, ax
jae 0x14001c36d
mov rax, r15
jmp 0x14001c3ac
movzx eax, word [rsp + 0x6c]
movzx ecx, word [rsp + 0x6a]
movzx r10d, word [rsp + 0x68]
movzx r9d, word [rsp + 0x66]
movzx r8d, word [rsp + 0x62]
movzx edx, dx
mov dword [rsp + 0x38], edi
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], ecx
mov dword [rsp + 0x20], r10d
lea rcx, [rsp + 0x70]
call fcn.14001bed0
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x50], rax
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x158]
call fcn.14010c7ac
mov r12d, edi
test eax, eax
cmove r12d, dword [rsp + 0x158]
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x108]
call fcn.14010c7ac
mov r13d, edi
test eax, eax
cmove r13d, dword [rsp + 0x10c]
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x180]
call fcn.14010c7ac
mov r14d, edi
test eax, eax
cmove r14d, dword [rsp + 0x188]
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0xb8]
call fcn.14010c7ac
test eax, eax
cmove r15d, dword [rsp + 0xc4]
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0xe0]
call fcn.14010c7ac
test eax, eax
jne 0x14001c44f
mov ebx, dword [rsp + 0xf0]
inc ebx
jmp 0x14001c451
xor ebx, ebx
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x130]
call fcn.14010c7ac
test eax, eax
jne 0x14001c475
mov eax, dword [rsp + 0x144]
add eax, 0x76c
jmp 0x14001c477
xor eax, eax
mov dword [rsp + 0x48], r12d
mov dword [rsp + 0x40], r13d
mov dword [rsp + 0x38], r14d
mov dword [rsp + 0x30], r15d
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], eax
mov r9, qword [0x14019a068]
mov rbx, qword [rsp + 0x58]
mov r8, rbx
lea rdx, str._s_r_n_s:_04d__02d__02d__02d:_02d:_02d
mov rcx, rbp
call fcn.140002990
xor ebp, ebp
mov word [rsp + 0x470], bp
mov qword [rsp + 0x80], rbp
lea r9, [rsp + 0x80]
lea r8, [rsp + 0x470]
mov edx, 0x208
mov rcx, rsi
call fcn.140063ce0
lea edx, [rbp + 0x2e]
lea rcx, [rsp + 0x470]
call fcn.14010bd78
test rax, rax
je 0x14001c521
lea rcx, [rax + 2]
cmp word [rcx], bp
je 0x14001c521
mov edx, 0xffdf
movzx eax, word [rcx]
cmp ax, 0x61
jb 0x14001c518
cmp ax, 0x7a
ja 0x14001c518
and ax, dx
mov word [rcx], ax
add rcx, 2
cmp word [rcx], bp
jne 0x14001c503
mov qword [rsp + 0x1b0], rbp
xor edx, edx
mov r8d, 0x2b0
lea rcx, [rsp + 0x1b8]
call fcn.14010c6c0
mov dword [rsp + 0x1b8], edi
mov dword [rsp + 0x20], 0x4110
mov r9d, 0x2b8
lea r8, [rsp + 0x1b0]
mov edx, 0x80
lea rcx, [rsp + 0x470]
call qword [sym.imp.SHELL32.dll_SHGetFileInfoW]
mov rsi, qword [rsp + 0x1b0]
lea rdx, [rbx - 0x18]
lock xadd dword [rdx + 0x10], edi
dec edi
test edi, edi
jg 0x14001c58f
mov rcx, qword [rdx]
mov r8, qword [rcx]
call qword [rreloc.OLEAUT32.dll_VariantClear + 8]
mov rax, rsi
mov rcx, qword [rsp + 0x890]
xor rcx, rsp
call fcn.14010bcc0
mov rbx, qword [rsp + 0x8f0]
add rsp, 0x8a0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret