Function at 0x14018ae74
Capabilities:
Get file system object information

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x600]
sub rsp, 0x700
mov rax, qword [0x140231ec8]
xor rax, rsp
mov qword [rbp + 0x5f0], rax
mov r15, r9
movzx esi, r8b
mov rbx, rdx
mov rdi, rcx
mov r12d, 0x4001
mov r14d, 0x2b8
cmp dword [0x140231ba0], 0xffffffff
jne 0x14018af23
mov dword [rsp + 0x20], r12d
mov r9d, r14d
lea r8, [rbp + 0x70]
xor edx, edx
lea rcx, [0x1401dc78c]
call qword [sym.imp.SHELL32.dll_SHGetFileInfoW]
mov eax, dword [rbp + 0x78]
mov dword [0x14025bbcc], eax
lea rcx, [rbp + 0x50]
call fcn.1400e1a88
nop
lea rcx, [rbp + 0x50]
cmp qword [rbp + 0x68], 8
cmovae rcx, qword [rbp + 0x50]
mov dword [rsp + 0x20], r12d
mov r9d, r14d
lea r8, [rbp + 0x70]
xor edx, edx
call qword [sym.imp.SHELL32.dll_SHGetFileInfoW]
mov eax, dword [rbp + 0x78]
mov dword [0x140231ba0], eax
lea rcx, [rbp + 0x50]
call fcn.140006b94
xor r12d, r12d
mov qword [rbp + 0x10], r12
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x20], xmm0
mov r8, qword [rbx + 0x10]
cmp qword [rbx + 0x18], 8
jb 0x14018af40
mov rbx, qword [rbx]
mov rdx, rbx
lea rcx, [rbp + 0x10]
call fcn.1400042c0
nop
lea rdx, [rbp + 0x10]
lea rcx, [rbp + 0x10]
call fcn.1400e3d6c
mov r14, qword [rdi + 0x10]
mov dword [rsp + 0x30], 3
mov qword [rsp + 0x34], 0x40000000
lea rax, [rbp + 0x10]
cmp qword [rbp + 0x28], 8
setae r8b
mov rdx, qword [rbp + 0x10]
cmovae rax, rdx
mov qword [rsp + 0x48], rax
lea rcx, [rbp + 0x10]
mov r9d, 0x2b8
test r14, r14
je 0x14018afae
test r8b, r8b
cmovne rcx, rdx
mov edx, esi
shl edx, 4
mov dword [rsp + 0x20], 0x4011
jmp 0x14018afbf
test r8b, r8b
cmovne rcx, rdx
mov dword [rsp + 0x20], 0x4001
xor edx, edx
lea r8, [rbp + 0x330]
call qword [sym.imp.SHELL32.dll_SHGetFileInfoW]
mov eax, dword [rbp + 0x338]
mov dword [rsp + 0x54], eax
mov qword [rbp + 0x30], r12
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x40], xmm0
movdqa xmm1, xmmword [0x1401dc090]
movdqu xmmword [rbp + 0x40], xmm1
mov word [rbp + 0x30], r12w
mov qword [rbp - 0x10], r12
movdqu xmmword [rbp], xmm0
movdqu xmmword [rbp], xmm1
mov word [rbp - 0x10], r12w
lea rcx, [rbp + 0x30]
test r14, r14
je 0x14018b01d
mov rdx, rdi
call fcn.140004958
jmp 0x14018b0d5
lea rdx, [rbp + 0x10]
call fcn.140004958
lea rcx, [rbp + 0x30]
call fcn.1400e3a58
lea rdx, [rbp + 0x10]
lea rcx, [rbp + 0x50]
call fcn.1400e393c
mov rbx, rax
lea rax, [rbp - 0x10]
cmp rax, rbx
je 0x14018b0b9
mov rdx, qword [rbp + 8]
cmp rdx, 8
jb 0x14018b088
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14018b083
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14018b2d7
call fcn.1401af9bc
movdqa xmm0, xmmword [0x1401dc090]
movdqu xmmword [rbp], xmm0
mov word [rbp - 0x10], r12w
movups xmm0, xmmword [rbx]
movups xmmword [rbp - 0x10], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp], xmm1
mov qword [rbx + 0x10], r12
mov qword [rbx + 0x18], 7
mov word [rbx], r12w
lea rcx, [rbp + 0x50]
call fcn.140006b94
lea rax, [rbp - 0x10]
cmp qword [rbp + 8], 8
cmovae rax, qword [rbp - 0x10]
mov qword [rsp + 0x48], rax
mov edx, 0x66
mov rcx, qword [0x140233a58]
call qword [sym.imp.USER32.dll_GetDlgItem]
mov rdi, rax
lea r9, [rsp + 0x30]
xor r8d, r8d
mov edx, 0x104d
mov rcx, rax
call qword [sym.imp.USER32.dll_SendMessageW]
mov rbx, rax
mov dword [rsp + 0x30], 3
mov dword [rsp + 0x34], ebx
mov esi, 1
mov dword [rsp + 0x38], esi
lea rcx, [rbp + 0x30]
cmp qword [rbp + 0x48], 8
cmovae rcx, qword [rbp + 0x30]
mov qword [rsp + 0x48], rcx
mov ecx, dword [0x14025bbcc]
test r14, r14
cmovne ecx, dword [0x140231ba0]
mov dword [rsp + 0x54], ecx
lea r9, [rsp + 0x30]
xor r8d, r8d
mov edx, 0x104c
mov rcx, rdi
call qword [sym.imp.USER32.dll_SendMessageW]
lea r14d, [rsi + 1]
mov dword [rbp - 0x68], r14d
mov qword [rbp - 0x58], r15
movsxd r8, ebx
lea r9, [rbp - 0x70]
mov edx, 0x1074
mov rcx, rdi
call qword [sym.imp.USER32.dll_SendMessageW]
test ebx, ebx
jne 0x14018b195
mov dword [rbp - 0x60], esi
mov dword [rbp - 0x64], esi
lea r9, [rbp - 0x70]
xor r8d, r8d
mov edx, 0x102b
mov rcx, rdi
call qword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [0x14025afd0]
add eax, esi
mov dword [0x14025afd0], eax
cmp eax, esi
jne 0x14018b1c5
mov ecx, 0x4f5
call fcn.1400f70b0
mov r8, rax
mov edx, r14d
mov rcx, qword [0x140233a58]
call qword [sym.imp.USER32.dll_SetDlgItemTextW]
nop
mov rdx, qword [rbp + 8]
mov ebx, 0x1000
cmp rdx, 8
jb 0x14018b206
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x10]
mov rax, rcx
cmp rdx, rbx
jb 0x14018b201
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14018b2dd
call fcn.1401af9bc
movdqa xmm0, xmmword [0x1401dc090]
movdqu xmmword [rbp], xmm0
mov word [rbp - 0x10], r12w
mov rdx, qword [rbp + 0x48]
cmp rdx, 8
jb 0x14018b254
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x30]
mov rax, rcx
cmp rdx, rbx
jb 0x14018b24f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14018b2e3
call fcn.1401af9bc
movdqa xmm0, xmmword [0x1401dc090]
movdqu xmmword [rbp + 0x40], xmm0
mov word [rbp + 0x30], r12w
mov rdx, qword [rbp + 0x28]
cmp rdx, 8
jb 0x14018b29e
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, rbx
jb 0x14018b299
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14018b2d1
call fcn.1401af9bc
movdqa xmm0, xmmword [0x1401dc090]
movdqu xmmword [rbp + 0x20], xmm0
mov word [rbp + 0x10], r12w
mov rcx, qword [rbp + 0x5f0]
xor rcx, rsp
call fcn.1401afad0
add rsp, 0x700
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.1401b6b94
nop
call fcn.1401b6b94
nop
call fcn.1401b6b94
nop
call fcn.1401b6b94
int3