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

Disassembly:
sub esp, 0x4c0
push ebx
push ebp
push esi
push edi
push dword [0x47b9d0]
call fcn.0041e3f1
xor ebp, ebp
mov edi, eax
cmp dword [0x479cd0], ebp
jne 0x413fc6
push ebp
call dword [sym.imp.OLE32.DLL_CoInitialize]
call fcn.00415eef
call fcn.00416c08
push ebp
call fcn.00416886
push 1
mov dword [0x47afd0], eax
call fcn.00416886
push str.My_Documents
push 0x479d88
mov dword [0x479d84], eax
call sub.MSVCRT.dll_wcscpy
push str.Name
push 0x47a198
call sub.MSVCRT.dll_wcscpy
push str.Size
push 0x47a3a0
call sub.MSVCRT.dll_wcscpy
push str.Type
push 0x47a5a8
call sub.MSVCRT.dll_wcscpy
push str.Attributes
push 0x47a7b0
call sub.MSVCRT.dll_wcscpy
push str.Created
push 0x47a9b8
call sub.MSVCRT.dll_wcscpy
push str.Modified
push 0x47abc0
call sub.MSVCRT.dll_wcscpy
push str.Accessed
push 0x47adc8
call sub.MSVCRT.dll_wcscpy
add esp, 0x40
xor eax, eax
mov word [esp + 0x2c8], ax
mov ebx, 0x104
lea eax, [esp + 0x2c8]
push ebx
push eax
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
mov esi, dword [sym.imp.SHELL32.DLL_SHGetFileInfoW]
lea eax, [esp + 0x14]
push 0x4001
push 0x2b4
push eax
push ebp
lea eax, [esp + 0x2d8]
push eax
call esi
test eax, eax
je 0x413d07
mov eax, dword [esp + 0x18]
mov dword [0x479cd4], eax
lea eax, [esp + 0x10]
push eax
push 5
push ebp
call dword [sym.imp.SHELL32.DLL_SHGetSpecialFolderLocation]
test eax, eax
jne 0x413e0f
push 0x479f90
push dword [esp + 0x14]
call dword [sym.imp.SHELL32.DLL_SHGetPathFromIDListW]
mov dword [0x4688a4], eax
test eax, eax
je 0x413e03
push 0x4009
push 0x2b4
lea eax, [esp + 0x1c]
push eax
push ebp
push dword [esp + 0x20]
call esi
test eax, eax
jne 0x413d89
push 0x4001
push 0x2b4
lea eax, [esp + 0x1c]
push eax
push ebp
push str.::450d8fba_ad25_11d0_98a8_0800361b1103
call esi
test eax, eax
jne 0x413d89
push 0x4001
push 0x2b4
lea eax, [esp + 0x1c]
push eax
push ebp
push 0x479f90
call esi
test eax, eax
je 0x413d94
mov eax, dword [esp + 0x18]
mov dword [0x479cd8], eax
jmp 0x413d9a
mov dword [0x4688a4], ebp
push 0x208
push 0x2b4
lea eax, [esp + 0x1c]
push eax
push ebp
push dword [esp + 0x20]
call esi
test eax, eax
jne 0x413dea
push 0x200
push 0x2b4
lea eax, [esp + 0x1c]
push eax
push ebp
push str.::450d8fba_ad25_11d0_98a8_0800361b1103
call esi
test eax, eax
jne 0x413dea
push 0x200
push 0x2b4
lea eax, [esp + 0x1c]
push eax
push ebp
push 0x479f90
call esi
test eax, eax
je 0x413dfd
lea eax, [esp + 0x20]
push eax
push 0x479d88
call sub.MSVCRT.dll_wcscpy
pop ecx
pop ecx
jmp 0x413e03
mov dword [0x4688a4], ebp
push dword [esp + 0x10]
call dword [sym.imp.OLE32.DLL_CoTaskMemFree]
jmp 0x413e15
mov dword [0x4688a4], ebp
push 0x479f90
call sub.MSVCRT.dll_wcslen
pop ecx
cmp word [eax*2 + 0x479f8e], 0x5c
je 0x413e3c
push 0x45d284
push 0x479f90
call sub.MSVCRT.dll_wcscat
pop ecx
pop ecx
push str.shell32.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov dword [0x47afe0], eax
test eax, eax
je 0x413eda
mov esi, dword [sym.imp.USER32.DLL_LoadStringW]
push ebx
push 0x47a198
push 0x2310
push eax
call esi
push ebx
push 0x47a3a0
push 0x2312
push dword [0x47afe0]
call esi
push ebx
push 0x47a5a8
push 0x2313
push dword [0x47afe0]
call esi
push ebx
push 0x47a7b0
push 0x231b
push dword [0x47afe0]
call esi
push ebx
push 0x47a9b8
push 0x2324
push dword [0x47afe0]
call esi
push ebx
push 0x47abc0
push 0x2314
push dword [0x47afe0]
call esi
push ebx
push 0x47adc8
push 0x2325
push dword [0x47afe0]
call esi
mov esi, 0xa4
push esi
push ebp
push 0x479ce0
call sub.MSVCRT.dll_memset
add esp, 0xc
mov dword [0x479ce0], 0x17
mov dword [0x479ce4], esi
mov dword [0x479ce8], 0x413067
mov dword [0x479cec], 0x4137d7
mov dword [0x479cfc], 0x414455
mov dword [0x479cf8], 0x413a6a
mov dword [0x479cf0], 0x413a52
mov dword [0x479d14], 0x41353e
mov dword [0x479d18], 0x4138a4
mov dword [0x479d1c], 0x41439d
mov dword [0x479d20], 0x413900
mov dword [0x479d24], 0x4143e6
mov dword [0x479d08], 0x414261
mov dword [0x479d40], 0x412f0c
mov dword [0x479d44], 0x414214
mov dword [0x479d58], 0x4142d3
mov dword [0x479d5c], 0x41384e
mov dword [0x479d4c], 0x41427b
mov dword [0x479d48], 0x413812
mov dword [0x479d54], 0x414376
mov dword [0x479d50], 0x413882
mov dword [0x479cd0], 1
cmp dword [0x47afd4], ebp
jne 0x414004
mov eax, dword [edi]
mov esi, dword [sym.imp.USER32.DLL_GetParent]
jmp 0x413fe0
push dword [0x47afd4]
call esi
push eax
mov dword [0x47afd4], eax
call esi
test eax, eax
jne 0x413fd8
push 0x413a93
push 0xfffffffffffffffc
push dword [0x47afd4]
call dword [sym.imp.USER32.DLL_SetWindowLongW]
mov dword [0x47afd8], eax
mov ebx, dword [esp + 0x4ec]
mov eax, 0x50000141
test ebx, 0x1000000
je 0x41401b
add eax, 8
test ebx, 0x200000
jne 0x414026
or eax, 4
test bl, 0x20
je 0x414030
or eax, 0x8000
mov ecx, ebp
test ebx, 0x100000
jne 0x41403f
mov ecx, 0x200
push ebp
push dword [0x47928c]
push 0xffffffffffffffff
push dword [edi]
push dword [esp + 0x4f4]
push dword [esp + 0x4f4]
push dword [esp + 0x4f4]
push dword [esp + 0x4f4]
push eax
push ebp
push str.SysListView32
push ecx
call dword [sym.imp.USER32.DLL_CreateWindowExW]
push 0x22f4
push 8
push dword [0x479288]
mov esi, eax
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
mov ebp, eax
test esi, esi
je 0x4141e5
test ebp, ebp
je 0x4141e5
cmp dword [0x4688a0], 0xffffffff
mov edi, dword [sym.imp.USER32.DLL_SendMessageW]
jne 0x4140cc
push 0
push 0
push 0x1023
push esi
call edi
push 0
push 0
push 0x1000
push esi
mov dword [0x4688a0], eax
call edi
mov dword [0x47afdc], eax
push dword [0x479d84]
push 1
push 0x1003
push esi
call edi
push dword [0x47afd0]
push 0
push 0x1003
push esi
call edi
mov eax, 0x10000
test ebx, 0x400000
je 0x4140fa
inc eax
test ebx, 0x800000
je 0x414105
or eax, 0x10
test ebx, 0x2000000
je 0x414110
or eax, 0x20
push eax
push eax
push 0x1036
push esi
call edi
push 0x413556
push 0xfffffffffffffffc
push esi
call dword [sym.imp.USER32.DLL_SetWindowLongW]
push dword [esp + 0x4d4]
mov dword [0x47afe4], eax
push dword [0x47b9ec]
call fcn.0041e5a1
mov edi, eax
mov eax, dword [esp + 0x4d4]
or dword [edi + 0x14], 0xffffffff
or dword [edi + 0x18], 0xffffffff
or dword [edi + 0x1c], 0xffffffff
mov dword [edi + 0x10], ebp
mov dword [ebp], esi
mov dword [ebp + 8], ebx
mov dword [ebp + 4], eax
test bl, 0x40
je 0x414176
and dword [ebp + 0x22f0], 0
mov dword [ebp + 0x22ec], 1
lea eax, [ebp + 0x214]
push 0x45d268
push eax
call sub.MSVCRT.dll_wcscpy
pop ecx
pop ecx
push 0x479ce0
push esi
push edi
push dword [esp + 0x4e0]
call fcn.0041633f
push 0x64
pop ebx
push ebx
push 0x45d288
or ebp, 0xffffffff
mov esi, eax
push ebp
push edi
call fcn.00412f0c
push ebx
push str.PB_Explorer_Column_Size
push ebp
push edi
call fcn.00412f0c
push ebx
push str.PB_Explorer_Column_Type
push ebp
push edi
call fcn.00412f0c
push ebx
push str.PB_Explorer_Column_Modified
push ebp
push edi
call fcn.00412f0c
push dword [esp + 0x4e8]
push edi
call fcn.00414455
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x4c0
ret 0x1c