Function at 0x140041dd0
Capabilities:
Get file system object information

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x44b0]
mov eax, 0x45b0
call fcn.1400f0b10
sub rsp, rax
mov qword [rbp - 0x10], 0xfffffffffffffffe
mov qword [rsp + 0x4600], rbx
mov rax, qword [0x1401412b0]
xor rax, rsp
mov qword [rbp + 0x44a8], rax
mov r12, rdx
mov qword [rbp - 0x68], rdx
mov rdi, rcx
mov esi, 1
add dword [0x140149d3c], 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, [0x14016dc70]
call fcn.1400a721c
mov ecx, 0x1c2
call fcn.140087094
mov rdx, rax
xor r8d, r8d
lea rcx, [0x14016dc70]
call fcn.1400a7144
mov rcx, qword [0x140148cc0]
xor r13d, r13d
test rcx, rcx
je 0x140041e8d
call qword [sym.imp.KERNEL32.dll_FindCloseChangeNotification]
mov qword [0x140148cc0], rbx
mov r15b, r13b
mov byte [rsp + 0x30], r13b
cmp byte [rdi + 0x1082], r13b
je 0x140041eaf
lea rcx, [0x14016dc60]
call fcn.140001f54
jmp 0x140041f65
lea rbx, [rdi + 0x1084]
jmp 0x140041eca
mov rcx, rbx
call fcn.140078548
cmp word [rax], r13w
je 0x140041ed8
mov word [rax], r13w
mov rcx, rbx
call fcn.140068258
test al, al
je 0x140041eb8
jmp 0x140041ee0
mov r15b, sil
mov byte [rsp + 0x30], sil
xor r8d, r8d
lea rdx, str.FullPathsTitle
lea rcx, [0x14010fd88]
call fcn.14009e6d8
test eax, eax
setne al
test al, al
je 0x140041f04
mov rax, rbx
jmp 0x140041f0c
mov rcx, rbx
call fcn.140078548
mov rcx, rbx
cmp word [rax], r13w
cmovne rcx, rax
call fcn.1400dcdb0
mov rcx, rbx
call fcn.14007796c
mov esi, eax
cmp eax, 0xffffffff
je 0x140041f39
call fcn.1400c4990
bt eax, esi
jae 0x1400425f6
test r15b, r15b
jne 0x140041f65
lea rcx, [0x14016dc60]
call fcn.1400025d8
lea rcx, [0x140154618]
call fcn.1400ac770
mov rdx, rbx
lea rcx, [0x140154618]
call fcn.1400acb60
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.14003e290
mov ebx, 0x4401
mov esi, 0x2b8
test r15b, r15b
jne 0x140041faf
mov dword [rsp + 0x20], ebx
mov r9d, esi
lea r8, [rbp + 0x10]
xor edx, edx
lea rcx, [0x14010f974]
call qword [sym.imp.SHELL32.dll_SHGetFileInfoW]
test rax, rax
jne 0x140041fe7
xor r8d, r8d
mov edx, 0x800
lea rcx, [rbp + 0x34a0]
call fcn.1400c4878
test r15b, r15b
je 0x140041fcd
mov rax, r13
jmp 0x140041fe7
mov dword [rsp + 0x20], ebx
mov r9d, esi
lea r8, [rbp + 0x10]
xor edx, edx
lea rcx, [rbp + 0x34a0]
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.1400c49c0
mov bl, al
mov byte [rsp + 0x31], al
xor r8d, r8d
lea rdx, str.ShowSeconds
lea rcx, str.FileList
call fcn.14009e6d8
test eax, eax
setne byte [rsp + 0x34]
mov rcx, rdi
cmp byte [rdi + 0x1082], r13b
je 0x140042047
call fcn.140042634
jmp 0x1400424af
xor r9d, r9d
xor r8d, r8d
mov rdx, rsi
call fcn.140035598
mov r9d, 0x800
lea r8, [rbp + 0x34a0]
lea rdx, [0x14010f558]
mov rcx, rsi
call fcn.140077ff0
lea rcx, [rbp + 0x2420]
call fcn.14006971c
nop
lea rdx, [rbp + 0x34a0]
lea rcx, [rbp + 0x2420]
call fcn.1400698d0
mov qword [rbp + 0x12e0], r13
mov qword [rbp + 0x12e8], r13
mov qword [rbp + 0x12f0], r13
mov byte [rsp + 0x32], 0
mov r8d, 1
lea rdx, str.ExactSizes
lea rcx, str.FileList
call fcn.14009e6d8
test eax, eax
setne byte [rsp + 0x33]
mov edx, 0x1f4
lea rcx, [rbp - 8]
call fcn.1400c3ec0
nop
test r15b, r15b
jne 0x1400423d0
mov r12b, byte [rsp + 0x31]
mov r14b, byte [rsp + 0x32]
mov r15b, byte [rsp + 0x33]
xor r8d, r8d
lea rdx, [rbp + 0x2d0]
lea rcx, [rbp + 0x2420]
call fcn.1400697d4
test al, al
je 0x1400423b6
test r13b, 0x1f
jne 0x14004211f
lea rcx, [rbp - 8]
call fcn.1400c551c
lea rcx, [rbp + 0x2d0]
call fcn.140078548
mov rbx, rax
movzx ecx, word [rax]
cmp cx, word [0x14010f974]
jne 0x140042147
movzx ecx, word [rax + 2]
cmp cx, word [0x14010f976]
je 0x1400420f2
mov dword [rbp - 0x60], 7
mov dword [rbp - 0x5c], r13d
or dword [rbp - 0x3c], 0xffffffff
and dword [rbp - 0x58], 0
movzx ecx, word [rax]
movzx eax, word [0x14010f660]
sub ecx, eax
jne 0x140042184
movzx ecx, word [rbx + 2]
movzx eax, word [0x14010f662]
sub ecx, eax
jne 0x140042184
movzx ecx, word [rbx + 4]
movzx eax, word [0x14010f664]
sub ecx, eax
test ecx, ecx
sete sil
test sil, sil
je 0x1400421a1
test r12b, r12b
jne 0x1400420f2
mov eax, dword [rbp + 0x18]
mov dword [rbp - 0x3c], eax
mov r14b, 1
xor edx, edx
mov r8d, 0x1100
lea rcx, [rbp + 0x1320]
call fcn.1400f1d90
mov r8d, 0x800
mov rdx, rbx
lea rcx, [rbp + 0x1320]
call fcn.14008d254
mov rdx, rbx
mov rcx, rdi
call fcn.14003dab8
mov rax, qword [rbp + 0x12d0]
mov qword [rbp + 0x23a0], rax
and qword [rbp + 0x23a8], 0
mov eax, dword [rbp + 0x12d8]
mov dword [rbp + 0x23c8], eax
mov rax, qword [rbp + 0x12e0]
mov qword [rbp + 0x23b0], rax
mov rax, qword [rbp + 0x12e8]
mov qword [rbp + 0x23b8], rax
mov rax, qword [rbp + 0x12f0]
mov qword [rbp + 0x23c0], rax
inc r13d
mov dword [rbp + 0x240c], r13d
cmp byte [rbp + 0x12dd], 0
je 0x140042249
mov al, byte [rbp + 0x12de]
neg al
sbb ecx, ecx
neg ecx
add ecx, 2
mov dword [rbp + 0x23f8], ecx
lea rdx, [rbp + 0x1320]
lea rcx, [0x140173c50]
call fcn.14003c1dc
mov qword [rbp - 0x38], rax
lea rcx, [rbp + 0x2d0]
mov rax, rbx
sub rax, rcx
sar rax, 1
mov edx, 0x800
sub rdx, rax
mov rcx, rbx
call fcn.1400c5a58
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]
movsxd rbx, eax
mov eax, dword [0x140173cac]
cmp eax, 0xffffffff
je 0x140042316
cmp byte [rbp + 0x12dc], 0
jne 0x1400422ef
mov r8d, 0x32
lea rdx, [rbp + 0x3430]
mov rcx, qword [rbp + 0x23a0]
test r15b, r15b
je 0x1400422d1
call fcn.1400a72a4
jmp 0x1400422dc
mov r9d, 0x5e6
call fcn.1400a7378
mov eax, dword [0x140173cac]
mov dword [rsp + 0x48], eax
lea rax, [rbp + 0x3430]
jmp 0x1400422fa
mov dword [rsp + 0x48], eax
lea rax, [0x14010f128]
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 [0x140173cb4]
cmp eax, 0xffffffff
je 0x140042355
mov dword [rsp + 0x48], eax
lea r9, [rsp + 0x40]
mov r8, rbx
mov edx, 0x1074
mov rcx, qword [rdi + 0x60]
test sil, sil
je 0x140042349
lea rax, [rbp + 0x228]
mov qword [rsp + 0x58], rax
jmp 0x14004234f
or qword [rsp + 0x58], 0xffffffffffffffff
call qword [sym.imp.USER32.dll_SendMessageW]
mov sil, byte [rsp + 0x34]
mov byte [rsp + 0x20], sil
mov r9d, 4
mov r8, rbx
lea rdx, [rbp + 0x1308]
mov rcx, rdi
call fcn.14003e7b4
mov byte [rsp + 0x20], sil
mov r9d, 5
mov r8, rbx
lea rdx, [rbp + 0x12f8]
mov rcx, rdi
call fcn.14003e7b4
mov byte [rsp + 0x20], sil
mov r9d, 6
mov r8, rbx
lea rdx, [rbp + 0x1300]
mov rcx, rdi
call fcn.14003e7b4
jmp 0x1400420f2
test r14b, r14b
mov r14, qword [rbp - 0x70]
mov r15b, byte [rsp + 0x30]
mov r12, qword [rbp - 0x68]
jne 0x14004248f
mov bl, byte [rsp + 0x31]
test bl, bl
jne 0x14004248f
mov dword [rbp - 0x60], 7
mov dword [rbp - 0x5c], r13d
mov eax, dword [rbp + 0x18]
mov dword [rbp - 0x3c], eax
xor r13d, r13d
mov dword [rbp - 0x58], r13d
lea rbx, [0x14010f660]
mov qword [rbp - 0x48], rbx
xor edx, edx
mov r8d, 0x1100
lea rcx, [rbp + 0x1320]
call fcn.1400f1d90
mov r8d, 0x800
mov rdx, rbx
lea rcx, [rbp + 0x1320]
call fcn.14008d254
mov dword [rbp + 0x23c8], 0x10
lea rdx, [rbp + 0x1320]
lea rcx, [0x140173c50]
call fcn.14003c1dc
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 ecx, dword [0x140173cb4]
cmp ecx, 0xffffffff
je 0x140042492
mov dword [rsp + 0x48], ecx
lea rcx, [rbp + 0x228]
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 0x140042492
xor r13d, r13d
lea rcx, [rbp - 8]
call fcn.1400c3f04
nop
lea rcx, [rbp + 0x2420]
call fcn.140069734
lea rsi, [rdi + 0x1084]
lea rcx, [0x140173c50]
call fcn.1400136f8
mov rcx, rdi
call fcn.14004421c
mov ebx, 3
test r12, r12
je 0x14004250f
cmp word [r12], r13w
jne 0x140042500
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 0x1400424f6
test eax, eax
jle 0x1400424f6
lea r14d, [rax - 1]
mov dword [rsp + 0x50], ebx
mov dword [rsp + 0x4c], ebx
jmp 0x140042525
mov rdx, r12
mov rcx, rdi
call fcn.14003f0ec
test al, al
jne 0x14004253c
mov dword [rsp + 0x50], ebx
mov dword [rsp + 0x4c], ebx
cmp r14d, 0xffffffff
je 0x140042522
test r12, r12
jne 0x140042525
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, [0x14016dc70]
call fcn.1400a7144
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.140043e3c
mov rcx, rdi
call fcn.140044074
xor edx, edx
lea rcx, [0x14016dc70]
call fcn.1400a721c
lea rcx, [0x140170340]
call fcn.1400a9afc
test r15b, r15b
jne 0x1400425f6
cmp byte [rdi + 0x1082], r13b
jne 0x1400425f6
xor edx, edx
lea r8d, [rdx + 3]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_FindFirstChangeNotificationW]
mov qword [0x140148cc0], rax
mov eax, dword [0x140149d3c]
test eax, eax
jle 0x140042608
dec eax
mov dword [0x140149d3c], eax
mov rcx, qword [rbp + 0x44a8]
xor rcx, rsp
call fcn.1400f0b80
mov rbx, qword [rsp + 0x4600]
add rsp, 0x45b0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret