Function at 0x14004245c
Capabilities:
Get file system object information

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x5b90]
mov eax, 0x5c90
call fcn.1400ec1b0
sub rsp, rax
mov qword [rbp - 0x10], 0xfffffffffffffffe
mov qword [rsp + 0x5ce0], rbx
mov rax, qword [0x14013b1d0]
xor rax, rsp
mov qword [rbp + 0x5b88], rax
mov r15, rdx
mov qword [rbp - 0x70], rdx
mov rdi, rcx
mov r13d, 1
add dword [0x140143d5c], r13d
mov r9d, r13d
or r8, 0xffffffffffffffff
mov edx, 0x100c
mov rcx, qword [rcx + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
mov r12, rax
mov qword [rbp - 0x68], rax
mov edx, r13d
lea rcx, [0x140167bf0]
call fcn.1400a632c
mov ecx, 0x1c4
call fcn.1400868b8
mov rdx, rax
lea rcx, [0x140167bf0]
call fcn.1400a6258
xor r9d, r9d
xor r8d, r8d
lea edx, [r13 + 0xa]
mov rcx, qword [rdi + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
mov rcx, rdi
call fcn.14003f850
mov dword [rsp + 0x20], 0x4011
mov r9d, 0x2b8
lea r8, [rbp + 0x1600]
xor edx, edx
lea rcx, [0x1401103f0]
call qword [sym.imp.SHELL32.dll_SHGetFileInfoW]
mov r9, rax
mov r8d, r13d
mov edx, 0x1003
mov rcx, qword [rdi + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
lea rcx, [0x140167be0]
call fcn.140002408
lea rdx, [rbp + 0x1140]
lea rcx, [0x140165250]
call fcn.140005254
lea edx, [r13 + 3]
xor r14d, r14d
cmp byte [rbp + 0x11c0], r14b
je 0x1400425a7
cmp byte [rbp + 0x1338], r14b
je 0x1400425a7
cmp byte [rbp + 0x1283], r14b
jne 0x1400425a7
mov ecx, dword [rbp + 0x1318]
lea eax, [rcx - 2]
cmp eax, r13d
cmovbe ecx, edx
mov dword [rbp + 0x1318], ecx
jmp 0x1400425ad
mov ecx, dword [rbp + 0x1318]
mov dword [rbp + 0x10], edx
mov edx, 0x73
sub ecx, 1
je 0x1400425d0
sub ecx, 2
je 0x1400425c9
cmp ecx, 1
jne 0x1400425d5
lea edx, [rcx + 0x75]
jmp 0x1400425d5
mov edx, 0x75
jmp 0x1400425d5
mov edx, 0x74
mov ecx, edx
call fcn.1400868b8
mov qword [rbp + 0x20], rax
lea r9, [rbp + 0x10]
mov esi, 5
mov r8d, esi
mov edx, 0x1060
mov rcx, qword [rdi + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
mov ebx, 0x800
mov r8d, ebx
lea rdx, [rbp + 0x4b80]
lea rcx, [0x140165250]
call fcn.140004e60
mov r8d, ebx
lea rdx, [rbp + 0x2b80]
lea rcx, [0x140165250]
call fcn.140005234
xor r9d, r9d
lea r8, [rbp + 0x4b80]
lea rdx, [rbp + 0x2b80]
mov rcx, rdi
call fcn.140036d88
lea rdx, [rbp + 0x2b80]
mov rcx, rdi
call fcn.14003f0f4
lea rax, [rbp + 0x2b80]
or rbx, 0xffffffffffffffff
inc rbx
cmp word [rax + rbx*2], r14w
jne 0x14004265f
test rbx, rbx
je 0x140042671
add rbx, r13
lea rdx, [rbp + 0x2b80]
lea rcx, [0x14014e5f8]
call fcn.1400ab87c
mov r13d, r14d
xor r8d, r8d
lea rdx, str.FlatView
lea rcx, str.FileList
call fcn.14009dbd0
test eax, eax
setne r14b
xor r8d, r8d
lea rdx, str.ShowSeconds
lea rcx, str.FileList
call fcn.14009dbd0
xor ecx, ecx
test eax, eax
setne byte [rsp + 0x30]
mov qword [rbp + 0x10d0], rcx
mov qword [rbp + 0x10d8], rcx
mov qword [rbp + 0x10e0], rcx
mov word [rbp + 0x3b80], cx
mov edx, 0x1f4
lea rcx, [rbp - 8]
call fcn.1400c1fbc
nop
mov r8b, r14b
lea rdx, [rbp + 0x40]
lea rcx, [0x140165250]
call fcn.1400052b0
xor r9d, r9d
test al, al
je 0x140042c02
lea r12, [rbp + 0x40]
lea r12, [r12 + rbx*2]
mov r15b, byte [rsp + 0x30]
test r13b, 0x1f
jne 0x14004272a
lea rcx, [rbp - 8]
call fcn.1400c3664
xor r9d, r9d
mov rbx, r12
mov esi, dword [rbp + 0x10e8]
shr esi, 4
and sil, 1
test r14b, r14b
je 0x14004274e
lea rcx, [rbp + 0x40]
call fcn.140078d7c
mov rbx, rax
xor r9d, r9d
test sil, sil
je 0x140042860
test r14b, r14b
jne 0x140042860
test byte [rbp + 0x1128], 0x20
je 0x1400427d5
mov rcx, rbx
lea r8, [rbp + 0x3b80]
sub r8, rbx
movzx edx, word [rcx]
movzx eax, word [rcx + r8]
sub edx, eax
jne 0x14004278a
add rcx, 2
test eax, eax
jne 0x140042776
test edx, edx
je 0x140042bd8
mov rcx, rbx
lea rdx, [rbp + 0x3b80]
sub rdx, rbx
movzx eax, word [rcx]
mov word [rcx + rdx], ax
lea rcx, [rcx + 2]
test ax, ax
jne 0x14004279f
mov r9b, 1
xor r8d, r8d
lea rdx, [rbp + 0x40]
lea rcx, [0x14016dbf0]
call fcn.14003dba4
xor r9d, r9d
test al, al
jne 0x140042bd8
jmp 0x140042860
mov r9b, 1
lea r8, [rsp + 0x38]
lea rdx, [rbp + 0x40]
lea rcx, [0x14016dbf0]
call fcn.14003dba4
xor r9d, r9d
test al, al
je 0x140042860
cmp qword [rbp + 0x10d0], r9
je 0x140042bd8
mov rdx, qword [rsp + 0x38]
lea rcx, [0x14016dbf0]
call fcn.14003d800
mov rcx, qword [rbp + 0x10d0]
mov qword [rax + 0x28], rcx
mov ecx, dword [rbp + 0x10e8]
mov dword [rax + 0x20], ecx
mov dword [rsp + 0x20], reloc.SHELL32.dll_SHRestricted
lea r9, [rbp + 0x29e0]
mov r8b, r15b
lea rdx, [rbp + 0x10d0]
mov rcx, rdi
call fcn.140045528
mov dword [rsp + 0x48], 4
lea rax, [rbp + 0x29e0]
mov r8, qword [rsp + 0x38]
jmp 0x140042bbf
mov dword [rbp - 0x60], 7
mov dword [rbp - 0x5c], r13d
or dword [rbp - 0x3c], 0xffffffff
mov dword [rbp - 0x58], r9d
mov word [rbp + 0x29c0], r9w
mov edx, dword [rbp + 0x1128]
test dl, 1
je 0x1400428ae
lea rcx, [rbp + 0x29c0]
sub rcx, 2
lea rcx, [rcx + 2]
cmp word [rcx], r9w
jne 0x140042891
mov eax, dword [0x1401103fc]
mov dword [rcx], eax
movzx eax, word [0x140110400]
mov word [rcx + 4], ax
and edx, 6
je 0x14004293e
cmp edx, 2
je 0x140042912
cmp edx, 4
je 0x1400428ec
cmp edx, 6
jne 0x14004293e
lea rcx, [rbp + 0x29c0]
sub rcx, 2
lea rcx, [rcx + 2]
cmp word [rcx], r9w
jne 0x1400428d1
movsd xmm0, qword [0x140110428]
movzx eax, word [0x140110430]
jmp 0x140042936
lea rcx, [rbp + 0x29c0]
sub rcx, 2
lea rcx, [rcx + 2]
cmp word [rcx], r9w
jne 0x1400428f7
movsd xmm0, qword [0x140110418]
movzx eax, word [0x140110420]
jmp 0x140042936
lea rcx, [rbp + 0x29c0]
sub rcx, 2
lea rcx, [rcx + 2]
cmp word [rcx], r9w
jne 0x14004291d
movsd xmm0, qword [0x140110408]
movzx eax, word [0x140110410]
movsd qword [rcx], xmm0
mov word [rcx + 8], ax
inc r13d
mov dword [rbp + 0x112c], r13d
lea rdx, [rbp + 0x40]
lea rcx, [0x14016dbf0]
call fcn.14003d918
mov qword [rbp - 0x38], rax
lea rdx, [rbp + 0x40]
mov rcx, rdi
call fcn.14003f0f4
lea rcx, [rbp + 0x40]
mov rax, rbx
sub rax, rcx
sar rax, 1
mov edx, 0x800
sub rdx, rax
mov rcx, rbx
call fcn.1400c3a1c
mov qword [rbp - 0x48], rbx
xor eax, eax
cmp word [rbp + 0x29c0], ax
je 0x1400429aa
mov r8d, 0x800
lea rdx, [rbp + 0x29c0]
lea rcx, [rbp + 0x40]
call fcn.14008c7b4
lea r9, [rbp - 0x60]
xor r8d, r8d
mov edx, 0x104d
mov rcx, qword [rdi + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
movsxd rbx, eax
xor eax, eax
test sil, sil
jne 0x140042a8e
mov rcx, qword [rbp + 0x10c0]
movabs rax, 0x7fffffff7fffffff
cmp rcx, rax
jne 0x1400429f0
mov dword [rbp + 0x29e0], 0x3f
jmp 0x140042a02
mov r8d, 0x32
lea rdx, [rbp + 0x29e0]
call fcn.1400a63b4
mov dword [rsp + 0x48], 1
lea rax, [rbp + 0x29e0]
mov qword [rsp + 0x58], rax
lea r9, [rsp + 0x40]
mov r8, rbx
mov edx, 0x1074
mov rcx, qword [rdi + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
mov rcx, qword [rbp + 0x10c8]
movabs rax, 0x7fffffff7fffffff
cmp rcx, rax
jne 0x140042a4f
mov dword [rbp + 0x29e0], 0x3f
jmp 0x140042a61
mov r8d, 0x32
lea rdx, [rbp + 0x29e0]
call fcn.1400a63b4
mov dword [rsp + 0x48], 2
lea rax, [rbp + 0x29e0]
mov qword [rsp + 0x58], rax
lea r9, [rsp + 0x40]
mov r8, rbx
mov edx, 0x1074
mov rcx, qword [rdi + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
xor eax, eax
cmp qword [rbp + 0x10d0], rax
je 0x140042aba
mov dword [rsp + 0x20], reloc.SHELL32.dll_SHRestricted
lea r9, [rbp + 0x2ab0]
mov r8b, r15b
lea rdx, [rbp + 0x10d0]
mov rcx, rdi
call fcn.140045528
jmp 0x140042ac1
mov word [rbp + 0x2ab0], ax
mov dword [rsp + 0x48], 4
lea rax, [rbp + 0x2ab0]
mov qword [rsp + 0x58], rax
lea r9, [rsp + 0x40]
mov r8, rbx
mov edx, 0x1074
mov rcx, qword [rdi + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [rbp + 0x10f4]
xor ecx, ecx
test eax, eax
je 0x140042b92
test sil, sil
jne 0x140042b92
cmp dword [rbp + 0x1118], ecx
jne 0x140042b92
cmp eax, 3
jne 0x140042b3a
mov qword [rsp + 0x20], 0x41
lea r9, [rbp + 0x29e0]
xor r8d, r8d
lea edx, [rax + 0x1d]
lea rcx, [rbp + 0x10f8]
call fcn.14008bfc8
jmp 0x140042b67
lea rcx, str._04X
lea r8, str._08X
cmp eax, 1
cmove r8, rcx
mov r9d, dword [rbp + 0x10f8]
mov edx, 0x41
lea rcx, [rbp + 0x29e0]
call fcn.1400026d0
mov dword [rsp + 0x48], 5
lea rax, [rbp + 0x29e0]
mov qword [rsp + 0x58], rax
lea r9, [rsp + 0x40]
mov r8, rbx
mov edx, 0x1074
mov rcx, qword [rdi + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
test r14b, r14b
je 0x140042bd8
mov r8d, 0x800
lea rdx, [rbp + 0x18c0]
lea rcx, [rbp + 0x40]
call fcn.140078150
mov dword [rsp + 0x48], 6
lea rax, [rbp + 0x18c0]
mov r8, rbx
mov qword [rsp + 0x58], rax
lea r9, [rsp + 0x40]
mov edx, 0x1074
mov rcx, qword [rdi + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
mov r8b, r14b
lea rdx, [rbp + 0x40]
lea rcx, [0x140165250]
call fcn.1400052b0
xor r9d, r9d
test al, al
jne 0x140042718
mov r15, qword [rbp - 0x70]
mov r12, qword [rbp - 0x68]
lea esi, [r9 + 5]
mov dword [rsp + 0x20], 0x4411
mov r9d, 0x2b8
lea r8, [rbp + 0x1340]
mov r14d, 0x10
mov edx, r14d
lea rcx, [0x140110458]
call qword [sym.imp.SHELL32.dll_SHGetFileInfoW]
mov rbx, rax
test rax, rax
lea eax, [r14 - 9]
cmovne esi, eax
mov dword [rbp - 0x60], esi
mov dword [rbp - 0x5c], r13d
mov ecx, dword [rbp + 0x1348]
mov dword [rbp - 0x3c], ecx
xor esi, esi
mov dword [rbp - 0x58], esi
lea rax, [0x14010a598]
mov qword [rbp - 0x48], rax
xor edx, edx
mov r8d, 0x1100
lea rcx, [rbp + 0x18c0]
call fcn.1400ed430
mov eax, dword [0x14010a598]
mov dword [rbp + 0x18c0], eax
movzx eax, word [0x14010a59c]
mov word [rbp + 0x18c4], ax
mov dword [rbp + 0x2968], r14d
lea rdx, [rbp + 0x18c0]
lea rcx, [0x14016dbf0]
call fcn.14003d918
mov qword [rbp - 0x38], rax
lea r9, [rbp - 0x60]
xor r8d, r8d
mov edx, 0x104d
mov rcx, qword [rdi + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
test rbx, rbx
lea ebx, [rsi + 3]
je 0x140042ceb
mov dword [rsp + 0x48], ebx
lea rdx, [rbp + 0x1558]
mov qword [rsp + 0x58], rdx
movsxd r8, eax
lea r9, [rsp + 0x40]
mov edx, 0x1074
mov rcx, qword [rdi + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
lea rcx, [0x14016dbf0]
call fcn.1400150dc
mov rcx, rdi
call fcn.1400451dc
test r15, r15
je 0x140042d40
cmp word [r15], si
je 0x140042d40
mov rdx, r15
mov rcx, rdi
call fcn.1400401d0
test al, al
jne 0x140042d5f
xor r9d, r9d
xor r8d, r8d
mov edx, 0x1004
mov rcx, qword [rdi + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
test eax, eax
jle 0x140042d3b
cmp r12d, eax
jl 0x140042d3b
lea r12d, [rax - 1]
movsxd r8, r12d
jmp 0x140042d43
xor r8d, r8d
mov dword [rsp + 0x50], ebx
mov dword [rsp + 0x4c], ebx
lea r9, [rsp + 0x40]
mov edx, 0x102b
mov rcx, qword [rdi + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
xor r9d, r9d
lea edx, [r9 + 0xb]
lea r8d, [r9 + 1]
mov rcx, qword [rdi + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
xor r9d, r9d
xor r8d, r8d
mov edx, 0x102a
mov rcx, qword [rdi + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
xor edx, edx
lea rcx, [0x140167bf0]
call fcn.1400a6258
mov rcx, rdi
call fcn.140044dd0
mov rcx, rdi
call fcn.14004501c
lea rcx, [0x14016a2c0]
call fcn.1400a845c
xor edx, edx
lea rcx, [0x140167bf0]
call fcn.1400a632c
nop
lea rcx, [rbp - 8]
call fcn.1400c1ff8
nop
mov eax, dword [0x140143d5c]
test eax, eax
jle 0x140042dde
dec eax
mov dword [0x140143d5c], eax
mov rcx, qword [rbp + 0x5b88]
xor rcx, rsp
call fcn.1400ec220
mov rbx, qword [rsp + 0x5ce0]
add rsp, 0x5c90
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret