Function at 0x140043178
Capabilities:
Get file system object information

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x45b0]
mov eax, 0x46b0
call fcn.1400eea70
sub rsp, rax
mov qword [rbp - 0x10], 0xfffffffffffffffe
mov qword [rsp + 0x4700], rbx
mov rax, qword [0x14013f2b0]
xor rax, rsp
mov qword [rbp + 0x45a8], rax
mov r12, rdx
mov qword [rbp - 0x68], rdx
mov rdi, rcx
mov esi, 1
add dword [0x140145ca0], esi
mov r9d, esi
or rbx, 0xffffffffffffffff
mov r8, rbx
mov edx, 0x100c
mov rcx, qword [rcx + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
mov r14, rax
mov qword [rbp - 0x70], rax
mov edx, esi
lea rcx, [0x14016bce0]
call fcn.1400a80c0
mov ecx, 0x1c2
call fcn.140087e6c
mov rdx, rax
xor r8d, r8d
lea rcx, [0x14016bce0]
call fcn.1400a7fe8
mov rcx, qword [0x140146e10]
xor r13d, r13d
test rcx, rcx
je 0x140043235
call qword [sym.imp.KERNEL32.dll_FindCloseChangeNotification]
mov qword [0x140146e10], rbx
mov r15b, r13b
mov byte [rsp + 0x30], r13b
cmp byte [rdi + 0x1082], r13b
je 0x140043257
lea rcx, [0x14016bcd0]
call fcn.140001f68
jmp 0x14004330d
lea rbx, [rdi + 0x1084]
jmp 0x140043272
mov rcx, rbx
call fcn.1400792dc
cmp word [rax], r13w
je 0x140043280
mov word [rax], r13w
mov rcx, rbx
call fcn.140068f88
test al, al
je 0x140043260
jmp 0x140043288
mov r15b, sil
mov byte [rsp + 0x30], sil
xor r8d, r8d
lea rdx, str.FullPathsTitle
lea rcx, str.Interface
call fcn.14009f550
test eax, eax
setne al
test al, al
je 0x1400432ac
mov rax, rbx
jmp 0x1400432b4
mov rcx, rbx
call fcn.1400792dc
mov rcx, rbx
cmp word [rax], r13w
cmovne rcx, rax
call fcn.1400dacb0
mov rcx, rbx
call fcn.140078710
mov esi, eax
cmp eax, 0xffffffff
je 0x1400432e1
call fcn.1400c5114
bt eax, esi
jae 0x1400439f8
test r15b, r15b
jne 0x14004330d
lea rcx, [0x14016bcd0]
call fcn.140002614
lea rcx, [0x1401526e8]
call fcn.1400ad5e4
mov rdx, rbx
lea rcx, [0x1401526e8]
call fcn.1400ad9d4
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 0xb]
mov rcx, qword [rdi + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
mov rcx, rdi
call fcn.14003fca0
mov ebx, 0x4401
mov esi, 0x2b8
test r15b, r15b
jne 0x140043357
mov dword [rsp + 0x20], ebx
mov r9d, esi
lea r8, [rbp + 0x40]
xor edx, edx
lea rcx, [0x14010d93c]
call qword [sym.imp.SHELL32.dll_SHGetFileInfoW]
test rax, rax
jne 0x14004338f
xor r8d, r8d
mov edx, 0x800
lea rcx, [rbp + 0x35a0]
call fcn.1400c4ff8
test r15b, r15b
je 0x140043375
mov rax, r13
jmp 0x14004338f
mov dword [rsp + 0x20], ebx
mov r9d, esi
lea r8, [rbp + 0x40]
xor edx, edx
lea rcx, [rbp + 0x35a0]
call qword [sym.imp.SHELL32.dll_SHGetFileInfoW]
mov r9, rax
mov edx, 0x1003
mov r8d, 1
mov rcx, qword [rdi + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
lea rsi, [rdi + 0x1084]
mov rcx, rsi
call fcn.1400c5144
mov bl, al
mov byte [rsp + 0x31], al
xor r8d, r8d
lea rdx, str.ShowSeconds
lea rcx, str.FileList
call fcn.14009f550
test eax, eax
setne byte [rsp + 0x33]
mov rcx, rdi
cmp byte [rdi + 0x1082], r13b
je 0x1400433ef
call fcn.140043a34
jmp 0x1400438a9
xor r9d, r9d
xor r8d, r8d
mov rdx, rsi
call fcn.1400370ec
mov r9d, 0x800
lea r8, [rbp + 0x35a0]
lea rdx, [0x14010d538]
mov rcx, rsi
call fcn.140078dc0
lea rcx, [rbp + 0x2450]
call fcn.14006a474
nop
lea rdx, [rbp + 0x35a0]
lea rcx, [rbp + 0x2450]
call fcn.14006a628
mov qword [rbp + 0x1310], r13
mov qword [rbp + 0x1318], r13
mov qword [rbp + 0x1320], r13
xor esi, esi
mov byte [rsp + 0x32], sil
mov edx, 0x1f4
lea rcx, [rbp - 8]
call fcn.1400c4640
nop
test r15b, r15b
jne 0x1400437cc
mov r12b, byte [rsp + 0x31]
mov r14b, sil
mov r15b, byte [rsp + 0x33]
jmp 0x14004347e
xor esi, esi
xor r8d, r8d
lea rdx, [rbp + 0x300]
lea rcx, [rbp + 0x2450]
call fcn.14006a52c
test al, al
je 0x1400437b2
test r13b, 0x1f
jne 0x1400434ab
lea rcx, [rbp - 8]
call fcn.1400c5c6c
lea rcx, [rbp + 0x300]
call fcn.1400792dc
mov rbx, rax
movzx ecx, word [rax]
cmp cx, word [0x14010d93c]
jne 0x1400434d3
movzx ecx, word [rax + 2]
cmp cx, word [0x14010d93e]
je 0x14004347e
mov dword [rbp - 0x60], 7
mov dword [rbp - 0x5c], r13d
or dword [rbp - 0x3c], 0xffffffff
mov dword [rbp - 0x58], esi
movzx ecx, word [rax]
movzx eax, word [0x14010d628]
sub ecx, eax
jne 0x14004350f
movzx ecx, word [rbx + 2]
movzx eax, word [0x14010d62a]
sub ecx, eax
jne 0x14004350f
movzx ecx, word [rbx + 4]
movzx eax, word [0x14010d62c]
sub ecx, eax
test ecx, ecx
sete sil
test sil, sil
je 0x14004352c
test r12b, r12b
jne 0x14004347c
mov eax, dword [rbp + 0x48]
mov dword [rbp - 0x3c], eax
mov r14b, 1
xor edx, edx
mov r8d, 0x1100
lea rcx, [rbp + 0x1350]
call fcn.1400efd00
mov r8d, 0x800
mov rdx, rbx
lea rcx, [rbp + 0x1350]
call fcn.14008df58
mov rdx, rbx
mov rcx, rdi
call fcn.14003f544
mov rax, qword [rbp + 0x1300]
mov qword [rbp + 0x23d0], rax
and qword [rbp + 0x23d8], 0
mov eax, dword [rbp + 0x1308]
mov dword [rbp + 0x23f8], eax
mov rax, qword [rbp + 0x1310]
mov qword [rbp + 0x23e0], rax
inc r13d
mov dword [rbp + 0x243c], r13d
cmp byte [rbp + 0x130d], 0
je 0x1400435b8
mov al, byte [rbp + 0x130e]
neg al
sbb ecx, ecx
neg ecx
add ecx, 2
mov dword [rbp + 0x2428], ecx
lea rdx, [rbp + 0x1350]
lea rcx, [0x140171cc0]
call fcn.14003dd68
mov qword [rbp - 0x38], rax
lea rcx, [rbp + 0x300]
mov rax, rbx
sub rax, rcx
sar rax, 1
mov edx, 0x800
sub rdx, rax
mov rcx, rbx
call fcn.1400c61a8
mov qword [rbp - 0x48], rbx
lea r9, [rbp - 0x60]
xor r8d, r8d
mov edx, 0x104d
mov rcx, qword [rdi + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
mov rbx, rax
cmp byte [rbp + 0x130c], 0
jne 0x140043637
mov r8d, 0x32
lea rdx, [rbp + 0x3530]
mov rcx, qword [rbp + 0x23d0]
call fcn.1400a8148
lea rax, [rbp + 0x3530]
jmp 0x14004363e
lea rax, [0x14010d188]
mov dword [rsp + 0x48], 1
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 dword [rsp + 0x48], 2
lea r9, [rsp + 0x40]
mov r8, rbx
mov edx, 0x1074
mov rcx, qword [rdi + 0x60]
test sil, sil
je 0x14004368e
lea rax, [rbp + 0x258]
mov qword [rsp + 0x58], rax
jmp 0x140043694
or qword [rsp + 0x58], 0xffffffffffffffff
call qword [sym.imp.USER32.dll_SendMessageW]
call fcn.14006c10c
lea rcx, [rbp + 0x1338]
cmp eax, 0x600
jae 0x1400436ba
lea rdx, [rsp + 0x38]
call qword [sym.imp.KERNEL32.dll_FileTimeToLocalFileTime]
jmp 0x1400436e3
lea rdx, [rbp + 0x20]
call qword [sym.imp.KERNEL32.dll_FileTimeToSystemTime]
lea r8, [rbp + 0x30]
lea rdx, [rbp + 0x20]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SystemTimeToTzSpecificLocalTime]
lea rdx, [rsp + 0x38]
lea rcx, [rbp + 0x30]
call qword [sym.imp.KERNEL32.dll_SystemTimeToFileTime]
lea rdx, [rbp + 0x10]
lea rcx, [rsp + 0x38]
call qword [sym.imp.KERNEL32.dll_FileTimeToSystemTime]
mov dword [rsp + 0x28], reloc.SHELL32.dll_SHRestricted
lea rax, [rbp + 0x3460]
mov qword [rsp + 0x20], rax
xor r9d, r9d
lea r8, [rbp + 0x10]
xor edx, edx
mov ecx, 0x400
call qword [sym.imp.KERNEL32.dll_GetDateFormatW]
lea rcx, [rbp + 0x3460]
sub rcx, 2
xor esi, esi
lea rcx, [rcx + 2]
cmp word [rcx], si
jne 0x140043727
mov eax, dword [0x140111c44]
mov dword [rcx], eax
lea rcx, [rbp + 0x3460]
or rax, 0xffffffffffffffff
inc rax
cmp word [rcx + rax*2], si
jne 0x140043743
lea rcx, [rbp + 0x3460]
lea rcx, [rcx + rax*2]
mov al, r15b
neg al
sbb edx, edx
not edx
and edx, 2
mov dword [rsp + 0x28], reloc.SHELL32.dll_SHRestricted
mov qword [rsp + 0x20], rcx
xor r9d, r9d
lea r8, [rbp + 0x10]
mov ecx, 0x400
call qword [sym.imp.KERNEL32.dll_GetTimeFormatW]
mov dword [rsp + 0x48], 3
lea rax, [rbp + 0x3460]
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]
jmp 0x14004347e
test r14b, r14b
mov r14, qword [rbp - 0x70]
mov r15b, byte [rsp + 0x30]
mov r12, qword [rbp - 0x68]
jne 0x140043889
mov bl, byte [rsp + 0x31]
test bl, bl
jne 0x140043889
mov dword [rbp - 0x60], 7
mov dword [rbp - 0x5c], r13d
mov eax, dword [rbp + 0x48]
mov dword [rbp - 0x3c], eax
xor r13d, r13d
mov dword [rbp - 0x58], r13d
lea rax, [0x14010d628]
mov qword [rbp - 0x48], rax
xor edx, edx
mov r8d, 0x1100
lea rcx, [rbp + 0x1350]
call fcn.1400efd00
mov eax, dword [0x14010d628]
mov dword [rbp + 0x1350], eax
movzx eax, word [0x14010d62c]
mov word [rbp + 0x1354], ax
mov dword [rbp + 0x23f8], 0x10
lea rdx, [rbp + 0x1350]
lea rcx, [0x140171cc0]
call fcn.14003dd68
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]
mov dword [rsp + 0x48], 2
lea rcx, [rbp + 0x258]
mov qword [rsp + 0x58], rcx
movsxd r8, eax
lea r9, [rsp + 0x40]
mov edx, 0x1074
mov rcx, qword [rdi + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
jmp 0x14004388c
xor r13d, r13d
lea rcx, [rbp - 8]
call fcn.1400c4684
nop
lea rcx, [rbp + 0x2450]
call fcn.14006a48c
lea rsi, [rdi + 0x1084]
lea rcx, [0x140171cc0]
call fcn.1400152cc
mov rcx, rdi
call fcn.14004556c
test r12, r12
je 0x14004390c
cmp word [r12], r13w
jne 0x1400438fd
xor r9d, r9d
xor r8d, r8d
mov edx, 0x1004
mov rcx, qword [rdi + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
cmp r14d, eax
jl 0x1400438eb
test eax, eax
jle 0x1400438eb
lea r14d, [rax - 1]
mov dword [rsp + 0x50], 3
mov dword [rsp + 0x4c], 3
jmp 0x140043927
mov rdx, r12
mov rcx, rdi
call fcn.140040620
test al, al
jne 0x14004393e
mov eax, 3
mov dword [rsp + 0x50], eax
mov dword [rsp + 0x4c], eax
cmp r14d, 0xffffffff
je 0x140043924
test r12, r12
jne 0x140043927
mov r14d, r13d
lea r9, [rsp + 0x40]
movsxd r8, r14d
mov edx, 0x102b
mov rcx, qword [rdi + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
mov r9d, 1
or r8, 0xffffffffffffffff
mov edx, 0x100c
mov rcx, qword [rdi + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
mov rbx, rax
xor r8d, r8d
xor edx, edx
lea rcx, [0x14016bce0]
call fcn.1400a7fe8
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]
movsxd r8, ebx
xor r9d, r9d
mov edx, 0x1013
mov rcx, qword [rdi + 0x60]
call qword [sym.imp.USER32.dll_SendMessageW]
mov rcx, rdi
call fcn.140045160
mov rcx, rdi
call fcn.1400453ac
xor edx, edx
lea rcx, [0x14016bce0]
call fcn.1400a80c0
lea rcx, [0x14016e3b0]
call fcn.1400aa8e8
test r15b, r15b
jne 0x1400439f8
cmp byte [rdi + 0x1082], r13b
jne 0x1400439f8
xor edx, edx
lea r8d, [rdx + 3]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_FindFirstChangeNotificationW]
mov qword [0x140146e10], rax
mov eax, dword [0x140145ca0]
test eax, eax
jle 0x140043a0a
dec eax
mov dword [0x140145ca0], eax
mov rcx, qword [rbp + 0x45a8]
xor rcx, rsp
call fcn.1400eeae0
mov rbx, qword [rsp + 0x4700]
add rsp, 0x46b0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret