Function at 0x14000e39c
Capabilities:
Get common file path
Get file system object information

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r12
sub rsp, 0x500
mov ebx, 1
xor edi, edi
mov rbp, rcx
cmp dword [rcx + 0x338], edi
lea r12d, [rbx + 0xf]
mov esi, 0x1003
je 0x14000e494
cmp dword [rcx + 0x340], edi
je 0x14000e450
lea rcx, [rax - 0x2c0]
xor edx, edx
mov r8d, 0x2b0
mov qword [rax - 0x2c8], rdi
call sub.msvcrt.dll_memset
lea rcx, [rsp + 0x32]
xor edx, edx
mov r8d, 0x208
mov word [rsp + 0x30], di
call sub.msvcrt.dll_memset
lea rcx, [rsp + 0x30]
mov edx, 0x104
call qword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
lea r8, [rsp + 0x240]
lea rcx, [rsp + 0x30]
mov r9d, 0x2b8
xor edx, edx
mov dword [rsp + 0x20], 0x4001
call qword [sym.imp.SHELL32.dll_SHGetFileInfoW]
mov qword [rbp + 0x320], rax
mov r9, rax
jmp 0x14000e482
mov r9d, ebx
mov r8d, 0x19
mov edx, r12d
mov ecx, r12d
mov dword [rsp + 0x20], ebx
call qword [sym.imp.COMCTL32.dll_ImageList_Create]
xor edx, edx
mov rcx, rax
mov qword [rbp + 0x320], rax
call qword [sym.imp.COMCTL32.dll_ImageList_SetImageCount]
mov r9, qword [rbp + 0x320]
mov rcx, qword [rbp + 0x310]
mov r8, rbx
mov edx, esi
call qword [sym.imp.USER32.dll_SendMessageW]
cmp dword [rbp + 0x33c], edi
je case.default.0x14000e5f2
mov ecx, 0x20
mov r9d, ebx
mov dword [rsp + 0x20], ebx
lea r8d, [rcx - 7]
mov edx, ecx
call qword [sym.imp.COMCTL32.dll_ImageList_Create]
xor edx, edx
mov rcx, rax
mov qword [rbp + 0x328], rax
call qword [sym.imp.COMCTL32.dll_ImageList_SetImageCount]
mov r9, qword [rbp + 0x328]
mov rcx, qword [rbp + 0x310]
xor r8d, r8d
mov edx, esi
call qword [sym.imp.USER32.dll_SendMessageW]
mov r9d, ebx
mov r8d, 0x19
mov edx, r12d
mov ecx, r12d
mov dword [rsp + 0x20], ebx
call qword [sym.imp.COMCTL32.dll_ImageList_Create]
xor ecx, ecx
mov qword [rbp + 0x318], rax
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov ebx, 0x1000
mov r9d, r12d
xor r8d, r8d
mov edx, 0x85
mov rcx, rax
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], r12d
call qword [sym.imp.USER32.dll_LoadImageW]
xor ecx, ecx
mov rsi, rax
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov r9d, r12d
xor r8d, r8d
mov edx, 0x86
mov rcx, rax
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], r12d
call qword [sym.imp.USER32.dll_LoadImageW]
mov rcx, qword [rbp + 0x318]
xor edx, edx
mov rdi, rax
call qword [sym.imp.COMCTL32.dll_ImageList_SetImageCount]
mov ecx, InitCommonControls
call qword [sym.imp.USER32.dll_GetSysColor]
mov rcx, qword [rbp + 0x318]
mov rdx, rsi
mov r8d, eax
mov ebx, eax
call qword [sym.imp.COMCTL32.dll_ImageList_AddMasked]
mov rcx, qword [rbp + 0x318]
mov r8d, ebx
mov rdx, rdi
call qword [sym.imp.COMCTL32.dll_ImageList_AddMasked]
mov rcx, rsi
call qword [sym.imp.GDI32.dll_DeleteObject]
mov rcx, rdi
call qword [sym.imp.GDI32.dll_DeleteObject]
mov rcx, qword [rbp + 0x310]
mov rbx, qword [rbp + 0x318]
xor r9d, r9d
xor r8d, r8d
mov edx, 0x101f
call qword [sym.imp.USER32.dll_SendMessageW]
mov r9, rbx
xor r8d, r8d
mov rcx, rax
mov edx, 0x1208
lea r11, [rsp + 0x500]
mov rbx, qword [r11 + 0x10]
mov rbp, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rdi, qword [r11 + 0x28]
mov rsp, r11
pop r12
jmp qword [sym.imp.USER32.dll_SendMessageW]
add byte [rax], al
add byte [rax], al
add eax, dword [rax]
add byte [rax], dl
add byte [rax], al
add byte [rsi], cl
add byte [rdi], cl
add byte [0x13f0300d1], dl
adc eax, 0xff001400
adc eax, 0xff001400
invalid
add byte gs:[rax], al
add byte [rax], al
add byte [rdx], al
push rax
add byte [rax], al
add byte [rax], al
sub dword [rax], eax
sldt word [rdx - 0x15fff000]
adc byte [rax], al
invalid
add edi, edi
inc dword [rdx]
add byte [rax], al
add byte [rax], al
add byte [rdx], al
push rax
adc byte [rax], al
invalid
add byte [rax], al
add byte [rax], al
sub byte [rax], al
and al, byte [rax]
jbe 0x14002ed06
or byte [rax], al
in al, dx
add edi, edi
inc dword [rdx]
add byte [rax], al
add byte [rax], al
add byte [rdx], al
push rax
add byte [rax], al
add byte [rax], al
invalid