Function at 0x140041acc
Capabilities:
Get file system object information

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x5980]
mov eax, 0x5a80
call fcn.1400f31b0
sub rsp, rax
mov qword [rbp], 0xfffffffffffffffe
mov qword [rsp + 0x5ad0], rbx
mov rax, qword [0x1401542d0]
xor rax, rsp
mov qword [rbp + 0x5978], rax
mov r12, rdx
mov qword [rbp - 0x68], rdx
mov rbx, rcx
mov r14d, 1
add dword [0x14015bc40], r14d
mov r9d, r14d
or r8, 0xffffffffffffffff
mov edx, 0x100c
mov rcx, qword [rcx + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
mov rsi, rax
mov qword [rbp - 0x60], rax
mov edx, r14d
lea rcx, [0x140180fc0]
call fcn.1400a90cc
mov ecx, 0x1c4
call fcn.140088ebc
mov rdx, rax
xor r8d, r8d
lea rcx, [0x140180fc0]
call fcn.1400a8ff4
xor r9d, r9d
xor r8d, r8d
lea edx, [r14 + 0xa]
mov rcx, qword [rbx + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
mov rcx, rbx
call fcn.14003e974
mov dword [rsp + 0x20], 0x4011
mov r9d, 0x2b8
lea r8, [rbp + 0x13e0]
xor edx, edx
lea rcx, [0x1401175d8]
call qword [sym.imp.SHELL32.dll_SHGetFileInfoW]
mov r9, rax
mov r8d, r14d
mov edx, 0x1003
mov rcx, qword [rbx + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
lea rcx, [0x140180fb0]
call fcn.1400023f0
lea r13, [0x14017e620]
xor r15d, r15d
lea edi, [r14 + 3]
cmp dword [0x140187014], 0xffffffff
je 0x140041c86
lea rdx, [rbp + 0x1120]
mov rcx, r13
call fcn.140005518
cmp byte [rbp + 0x11a0], r15b
je 0x140041c2a
cmp byte [rbp + 0x1318], r15b
je 0x140041c2a
cmp byte [rbp + 0x1263], r15b
jne 0x140041c2a
mov ecx, dword [rbp + 0x12f8]
lea eax, [rcx - 2]
cmp eax, r14d
cmovbe ecx, edi
mov dword [rbp + 0x12f8], ecx
jmp 0x140041c30
mov ecx, dword [rbp + 0x12f8]
mov dword [rbp + 0x27a0], edi
mov edx, 0x75
sub ecx, 1
je 0x140041c56
sub ecx, 2
je 0x140041c4f
cmp ecx, 1
jne 0x140041c5b
lea edx, [rcx + 0x77]
jmp 0x140041c5b
mov edx, 0x77
jmp 0x140041c5b
mov edx, 0x76
mov ecx, edx
call fcn.140088ebc
mov qword [rbp + 0x27b0], rax
movsxd r8, dword [0x140187014]
lea r9, [rbp + 0x27a0]
mov edx, 0x1060
mov rcx, qword [rbx + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
mov edi, 0x800
mov r8d, edi
lea rdx, [rbp + 0x4970]
mov rcx, r13
call fcn.140005120
mov r8d, edi
lea rdx, [rbp + 0x2970]
mov rcx, r13
call fcn.1400054f8
xor r9d, r9d
lea r8, [rbp + 0x4970]
lea rdx, [rbp + 0x2970]
mov rcx, rbx
call fcn.140035c8c
lea rdx, [rbp + 0x2970]
mov rcx, rbx
call fcn.14003e19c
lea rax, [rbp + 0x2970]
or rdi, 0xffffffffffffffff
inc rdi
cmp word [rax + rdi*2], r15w
jne 0x140041ce2
test rdi, rdi
je 0x140041cf4
add rdi, r14
lea rdx, [rbp + 0x2970]
lea rcx, [0x140167760]
call fcn.1400aeb98
mov r13d, r15d
xor r8d, r8d
lea rdx, str.FlatView
lea rcx, str.FileList
call fcn.1400a0584
test eax, eax
setne r14b
xor r8d, r8d
lea rdx, str.ShowSeconds
lea rcx, str.FileList
call fcn.1400a0584
test eax, eax
setne r15b
mov r8d, 1
lea rdx, str.ExactSizes
lea rcx, str.FileList
call fcn.1400a0584
xor ecx, ecx
test eax, eax
setne byte [rsp + 0x30]
mov qword [rbp + 0x10b0], rcx
mov qword [rbp + 0x10b8], rcx
mov qword [rbp + 0x10c0], rcx
mov word [rbp + 0x3970], cx
mov edx, 0x1f4
lea rcx, [rbp + 8]
call fcn.1400c6140
nop
mov r8b, r14b
lea rdx, [rbp + 0x20]
lea rcx, [0x14017e620]
call fcn.140005574
xor r9d, r9d
test al, al
je 0x140042463
lea rdi, [rbp + rdi*2 + 0x20]
mov qword [rbp - 0x70], rdi
mov r12b, byte [rsp + 0x30]
test r13b, 0x1f
jne 0x140041dcd
lea rcx, [rbp + 8]
call fcn.1400c779c
xor r9d, r9d
mov esi, dword [rbp + 0x10c8]
shr esi, 4
and sil, 1
test r14b, r14b
je 0x140041dee
lea rcx, [rbp + 0x20]
call fcn.140079c5c
mov rdi, rax
xor r9d, r9d
test sil, sil
je 0x140041fe7
test r14b, r14b
jne 0x140041fe7
test byte [rbp + 0x1108], 0x20
je 0x140041e6d
mov rcx, rdi
lea r8, [rbp + 0x3970]
sub r8, rdi
movzx edx, word [rcx]
movzx eax, word [rcx + r8]
sub edx, eax
jne 0x140041e2a
add rcx, 2
test eax, eax
jne 0x140041e16
test edx, edx
je 0x140042439
mov r8d, 0x800
mov rdx, rdi
lea rcx, [rbp + 0x3970]
call fcn.14008eff0
mov r9b, 1
xor r8d, r8d
lea rdx, [rbp + 0x20]
lea rcx, [0x140186fa0]
call fcn.14003cb64
xor r9d, r9d
test al, al
jne 0x140042439
jmp 0x140041fe7
mov r9b, 1
lea r8, [rsp + 0x38]
lea rdx, [rbp + 0x20]
lea rcx, [0x140186fa0]
call fcn.14003cb64
xor r9d, r9d
test al, al
je 0x140041fe7
mov rdx, qword [rsp + 0x38]
lea rcx, [0x140186fa0]
call fcn.14003c7a8
mov rcx, qword [rbp + 0x10b0]
mov qword [rax + 0x28], rcx
mov rcx, qword [rbp + 0x10b8]
mov qword [rax + 0x30], rcx
mov rcx, qword [rbp + 0x10c0]
mov qword [rax + 0x38], rcx
mov ecx, dword [rbp + 0x10c8]
mov dword [rax + 0x20], ecx
xor edi, edi
or esi, 0xffffffff
cmp qword [rbp + 0x10b0], rdi
je 0x140041f31
cmp dword [0x140187008], esi
je 0x140041f31
mov dword [rsp + 0x20], reloc.SHELL32.dll_SHRestricted
lea r9, [rbp + 0x27d0]
mov r8b, r15b
lea rdx, [rbp + 0x10b0]
mov rcx, rbx
call fcn.140044dd8
mov eax, dword [0x140187008]
mov dword [rsp + 0x48], eax
lea rax, [rbp + 0x27d0]
mov qword [rsp + 0x58], rax
lea r9, [rsp + 0x40]
mov r8, qword [rsp + 0x38]
mov edx, 0x1074
mov rcx, qword [rbx + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
cmp qword [rbp + 0x10b8], rdi
je 0x140041f92
cmp dword [0x14018700c], esi
je 0x140041f92
mov dword [rsp + 0x20], reloc.SHELL32.dll_SHRestricted
lea r9, [rbp + 0x27d0]
mov r8b, r15b
lea rdx, [rbp + 0x10b8]
mov rcx, rbx
call fcn.140044dd8
mov eax, dword [0x14018700c]
mov dword [rsp + 0x48], eax
lea rax, [rbp + 0x27d0]
mov qword [rsp + 0x58], rax
lea r9, [rsp + 0x40]
mov r8, qword [rsp + 0x38]
mov edx, 0x1074
mov rcx, qword [rbx + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
cmp qword [rbp + 0x10c0], rdi
je 0x140042439
cmp dword [0x140187010], esi
je 0x140042439
mov dword [rsp + 0x20], reloc.SHELL32.dll_SHRestricted
lea r9, [rbp + 0x27d0]
mov r8b, r15b
lea rdx, [rbp + 0x10c0]
mov rcx, rbx
call fcn.140044dd8
mov eax, dword [0x140187010]
mov dword [rsp + 0x48], eax
lea rax, [rbp + 0x27d0]
mov r8, qword [rsp + 0x38]
jmp 0x140042420
mov dword [rbp - 0x50], 7
mov dword [rbp - 0x4c], r13d
or dword [rbp - 0x2c], 0xffffffff
mov dword [rbp - 0x48], r9d
mov word [rbp + 0x27a0], r9w
mov eax, dword [rbp + 0x1108]
test al, 1
je 0x14004202b
mov r8d, 0xa
lea rdx, [0x1401175e4]
lea rcx, [rbp + 0x27a0]
call fcn.14008efc8
mov eax, dword [rbp + 0x1108]
and eax, 6
je 0x14004206a
cmp eax, 2
je 0x140042051
cmp eax, 4
je 0x140042048
cmp eax, 6
jne 0x14004206a
lea rdx, [0x140117610]
jmp 0x140042058
lea rdx, [0x140117600]
jmp 0x140042058
lea rdx, [0x1401175f0]
mov r8d, 0xa
lea rcx, [rbp + 0x27a0]
call fcn.14008efc8
inc r13d
mov dword [rbp + 0x110c], r13d
lea rdx, [rbp + 0x20]
lea rcx, [0x140186fa0]
call fcn.14003c8c0
mov qword [rbp - 0x28], rax
lea rdx, [rbp + 0x20]
mov rcx, rbx
call fcn.14003e19c
lea rcx, [rbp + 0x20]
mov rax, rdi
sub rax, rcx
sar rax, 1
mov edx, 0x800
sub rdx, rax
mov rcx, rdi
call fcn.1400c7cd8
mov qword [rbp - 0x38], rdi
xor eax, eax
cmp word [rbp + 0x27a0], ax
je 0x1400420d6
mov r8d, 0x800
lea rdx, [rbp + 0x27a0]
lea rcx, [rbp + 0x20]
call fcn.14008efc8
lea r9, [rbp - 0x50]
xor r8d, r8d
mov edx, 0x104d
mov rcx, qword [rbx + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
movsxd rdi, eax
test sil, sil
jne 0x140042202
cmp dword [0x140186ffc], 0xffffffff
je 0x14004217d
mov rcx, qword [rbp + 0x10a0]
movabs rdx, 0x7fffffff7fffffff
mov r8d, 0x32
cmp rcx, rdx
jne 0x140042132
lea rdx, [0x14011761c]
lea rcx, [rbp + 0x27d0]
call fcn.14008eff0
jmp 0x140042150
lea rdx, [rbp + 0x27d0]
test r12b, r12b
je 0x140042145
call fcn.1400a9154
jmp 0x140042150
mov r9d, 0x5e6
call fcn.1400a9228
mov eax, dword [0x140186ffc]
mov dword [rsp + 0x48], eax
lea rax, [rbp + 0x27d0]
mov qword [rsp + 0x58], rax
lea r9, [rsp + 0x40]
mov r8, rdi
mov edx, 0x1074
mov rcx, qword [rbx + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
cmp dword [0x140187000], 0xffffffff
je 0x140042202
mov rcx, qword [rbp + 0x10a8]
movabs rdx, 0x7fffffff7fffffff
mov r8d, 0x32
cmp rcx, rdx
jne 0x1400421b7
lea rdx, [0x14011761c]
lea rcx, [rbp + 0x27d0]
call fcn.14008eff0
jmp 0x1400421d5
lea rdx, [rbp + 0x27d0]
test r12b, r12b
je 0x1400421ca
call fcn.1400a9154
jmp 0x1400421d5
mov r9d, 0x5e6
call fcn.1400a9228
mov eax, dword [0x140187000]
mov dword [rsp + 0x48], eax
lea rax, [rbp + 0x27d0]
mov qword [rsp + 0x58], rax
lea r9, [rsp + 0x40]
mov r8, rdi
mov edx, 0x1074
mov rcx, qword [rbx + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [0x140187004]
cmp eax, 0xffffffff
je 0x14004222e
mov dword [rsp + 0x48], eax
or qword [rsp + 0x58], 0xffffffffffffffff
lea r9, [rsp + 0x40]
mov r8, rdi
mov edx, 0x1074
mov rcx, qword [rbx + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
cmp dword [0x140187008], 0xffffffff
je 0x140042285
mov dword [rsp + 0x20], reloc.SHELL32.dll_SHRestricted
lea r9, [rbp + 0x28a0]
mov r8b, r15b
lea rdx, [rbp + 0x10b0]
mov rcx, rbx
call fcn.140044dd8
mov eax, dword [0x140187008]
mov dword [rsp + 0x48], eax
lea rax, [rbp + 0x28a0]
mov qword [rsp + 0x58], rax
lea r9, [rsp + 0x40]
mov r8, rdi
mov edx, 0x1074
mov rcx, qword [rbx + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
cmp dword [0x14018700c], 0xffffffff
je 0x1400422dc
mov dword [rsp + 0x20], reloc.SHELL32.dll_SHRestricted
lea r9, [rbp + 0x28a0]
mov r8b, r15b
lea rdx, [rbp + 0x10b8]
mov rcx, rbx
call fcn.140044dd8
mov eax, dword [0x14018700c]
mov dword [rsp + 0x48], eax
lea rax, [rbp + 0x28a0]
mov qword [rsp + 0x58], rax
lea r9, [rsp + 0x40]
mov r8, rdi
mov edx, 0x1074
mov rcx, qword [rbx + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
cmp dword [0x140187010], 0xffffffff
je 0x140042333
mov dword [rsp + 0x20], reloc.SHELL32.dll_SHRestricted
lea r9, [rbp + 0x28a0]
mov r8b, r15b
lea rdx, [rbp + 0x10c0]
mov rcx, rbx
call fcn.140044dd8
mov eax, dword [0x140187010]
mov dword [rsp + 0x48], eax
lea rax, [rbp + 0x28a0]
mov qword [rsp + 0x58], rax
lea r9, [rsp + 0x40]
mov r8, rdi
mov edx, 0x1074
mov rcx, qword [rbx + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
cmp dword [0x140187014], 0xffffffff
je 0x1400423e8
mov eax, dword [rbp + 0x10d4]
xor ecx, ecx
test eax, eax
je 0x1400423e8
test sil, sil
jne 0x1400423e8
cmp dword [rbp + 0x10f8], ecx
jne 0x1400423e8
cmp eax, 3
jne 0x14004238e
mov qword [rsp + 0x20], 0x41
lea r9, [rbp + 0x27d0]
xor r8d, r8d
lea edx, [rax + 0x1d]
lea rcx, [rbp + 0x10d8]
call fcn.14008e638
jmp 0x1400423bb
lea rcx, [0x140117620]
lea r8, str._08X
cmp eax, 1
cmove r8, rcx
mov r9d, dword [rbp + 0x10d8]
mov edx, 0x41
lea rcx, [rbp + 0x27d0]
call fcn.140002694
mov eax, dword [0x140187014]
mov dword [rsp + 0x48], eax
lea rax, [rbp + 0x27d0]
mov qword [rsp + 0x58], rax
lea r9, [rsp + 0x40]
mov r8, rdi
mov edx, 0x1074
mov rcx, qword [rbx + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
test r14b, r14b
je 0x140042439
cmp dword [0x140187018], 0xffffffff
je 0x140042439
mov r8d, 0x800
lea rdx, [rbp + 0x16a0]
lea rcx, [rbp + 0x20]
call fcn.140079010
mov eax, dword [0x140187018]
mov dword [rsp + 0x48], eax
lea rax, [rbp + 0x16a0]
mov r8, rdi
mov qword [rsp + 0x58], rax
lea r9, [rsp + 0x40]
mov edx, 0x1074
mov rcx, qword [rbx + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
mov r8b, r14b
lea rdx, [rbp + 0x20]
lea rcx, [0x14017e620]
call fcn.140005574
xor r9d, r9d
test al, al
mov rdi, qword [rbp - 0x70]
jne 0x140041dbb
mov r12, qword [rbp - 0x68]
mov rsi, qword [rbp - 0x60]
mov dword [rsp + 0x20], 0x4411
mov r9d, 0x2b8
lea r8, [rbp + 0x1120]
mov r15d, 0x10
mov edx, r15d
lea rcx, [0x140117640]
call qword [sym.imp.SHELL32.dll_SHGetFileInfoW]
mov rdi, rax
lea ecx, [r15 - 0xb]
test rax, rax
lea eax, [rcx + 2]
cmovne ecx, eax
mov dword [rbp - 0x50], ecx
mov dword [rbp - 0x4c], r13d
mov ecx, dword [rbp + 0x1128]
mov dword [rbp - 0x2c], ecx
xor r13d, r13d
mov dword [rbp - 0x48], r13d
lea r14, [0x140111660]
mov qword [rbp - 0x38], r14
xor edx, edx
mov r8d, 0x1100
lea rcx, [rbp + 0x16a0]
call fcn.1400f4420
mov r8d, 0x800
mov rdx, r14
lea rcx, [rbp + 0x16a0]
call fcn.14008eff0
mov dword [rbp + 0x2748], r15d
lea rdx, [rbp + 0x16a0]
lea rcx, [0x140186fa0]
call fcn.14003c8c0
mov qword [rbp - 0x28], rax
lea r9, [rbp - 0x50]
xor r8d, r8d
mov edx, 0x104d
mov rcx, qword [rbx + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
mov edx, dword [0x140187004]
cmp edx, 0xffffffff
je 0x140042554
test rdi, rdi
je 0x140042554
mov dword [rsp + 0x48], edx
lea rdx, [rbp + 0x1338]
mov qword [rsp + 0x58], rdx
movsxd r8, eax
lea r9, [rsp + 0x40]
mov edx, 0x1074
mov rcx, qword [rbx + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
lea rcx, [0x140186fa0]
call fcn.1400f436c
mov rcx, rbx
call fcn.140044a8c
test r12, r12
je 0x1400425a8
cmp word [r12], r13w
je 0x1400425a8
mov rdx, r12
mov rcx, rbx
call fcn.14003f894
test al, al
jne 0x1400425cc
xor r9d, r9d
xor r8d, r8d
mov edx, 0x1004
mov rcx, qword [rbx + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
test eax, eax
jle 0x1400425a3
cmp esi, eax
jl 0x1400425a3
lea esi, [rax - 1]
movsxd r8, esi
jmp 0x1400425ab
xor r8d, r8d
mov eax, 3
mov dword [rsp + 0x50], eax
mov dword [rsp + 0x4c], eax
lea r9, [rsp + 0x40]
mov edx, 0x102b
mov rcx, qword [rbx + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
xor r9d, r9d
lea edx, [r9 + 0xb]
lea r8d, [r9 + 1]
mov rcx, qword [rbx + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
xor r9d, r9d
xor r8d, r8d
mov edx, 0x102a
mov rcx, qword [rbx + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
xor r8d, r8d
xor edx, edx
lea rcx, [0x140180fc0]
call fcn.1400a8ff4
mov rcx, rbx
call fcn.1400446e8
mov rcx, rbx
call fcn.1400448f8
lea rcx, [0x140183690]
call fcn.1400ab9b0
xor edx, edx
lea rcx, [0x140180fc0]
call fcn.1400a90cc
nop
lea rcx, [rbp + 8]
call fcn.1400c6184
nop
mov eax, dword [0x14015bc40]
test eax, eax
jle 0x14004264e
dec eax
mov dword [0x14015bc40], eax
mov rcx, qword [rbp + 0x5978]
xor rcx, rsp
call fcn.1400f3220
mov rbx, qword [rsp + 0x5ad0]
add rsp, 0x5a80
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret