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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4fe522
mov eax, dword fs:[0]
push eax
sub esp, 0x54c
mov eax, dword [0x550070]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x4e4], ecx
mov dword [ebp - 0x224], 0x24
mov dword [ebp - 0x220], 0x25
mov dword [ebp - 0x21c], 0
mov dword [ebp - 0x4ec], 0
lea eax, [ebp - 0x4f0]
push eax
push 0x11
mov ecx, dword [ebp - 0x4e4]
mov edx, dword [ecx + 4]
push edx
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderLocation]
mov dword [ebp - 0x4e8], eax
cmp dword [ebp - 0x4e8], 0
jl 0x46d21b
push 0x2b4
push 0
lea eax, [ebp - 0x4d8]
push eax
call fcn.004d43c0
add esp, 0xc
push 0x4208
push 0x2b4
lea ecx, [ebp - 0x4d8]
push ecx
push 0
mov edx, dword [ebp - 0x4f0]
push edx
call dword [sym.imp.SHELL32.dll_SHGetFileInfoW]
mov dword [ebp - 0x4e8], eax
cmp dword [ebp - 0x4e8], 0
jl 0x46d204
push 0xc
call fcn.004d1f00
add esp, 4
mov dword [ebp - 0x524], eax
mov dword [ebp - 4], 0
mov ecx, dword [ebp - 0x524]
call fcn.004699d0
mov dword [ebp - 0x4f4], eax
jmp 0x46d0b2
mov eax, dword [ebp - 0x4f4]
mov dword [ebp - 0x528], eax
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x528]
mov dword [ebp - 0x4dc], ecx
mov edx, dword [ebp - 0x4dc]
mov byte [edx], 1
mov eax, dword [ebp - 0x4dc]
mov dword [eax + 4], 0x11
mov dword [ebp - 0x520], 0
xor ecx, ecx
mov dword [ebp - 0x51c], ecx
mov dword [ebp - 0x518], ecx
mov dword [ebp - 0x514], ecx
mov dword [ebp - 0x510], ecx
mov dword [ebp - 0x50c], ecx
mov dword [ebp - 0x508], ecx
mov dword [ebp - 0x504], ecx
mov dword [ebp - 0x500], ecx
mov dword [ebp - 0x4fc], ecx
mov edx, dword [ebp - 0x520]
or edx, 0x2f
mov dword [ebp - 0x520], edx
mov eax, dword [ebp - 0x518]
or eax, 0x60
mov dword [ebp - 0x518], eax
mov ecx, dword [ebp - 0x514]
or ecx, 0x60
mov dword [ebp - 0x514], ecx
lea edx, [ebp - 0x4cc]
mov dword [ebp - 0x510], edx
mov eax, dword [ebp - 0x4d4]
mov dword [ebp - 0x508], eax
mov ecx, dword [ebp - 0x4d4]
mov dword [ebp - 0x504], ecx
mov edx, dword [ebp - 0x4dc]
mov dword [ebp - 0x4fc], edx
push 0
push 0
lea eax, [ebp - 0x520]
push eax
mov ecx, dword [ebp + 8]
mov ecx, dword [ecx + 4]
call dword [sym.imp.DuiLib.dll_public:_struct_DuiLib::DTV_ITEM_INFO____thiscall_DuiLib::CTreeViewExUI::InsertItem_struct_DuiLib::DTV_ITEM___struct_DuiLib::DTV_ITEM_INFO___struct_DuiLib::DTV_ITEM_INFO__]
mov dword [ebp - 0x4ec], eax
cmp dword [ebp - 0x4ec], 0
jne 0x46d1ee
mov edx, dword [ebp - 0x4dc]
mov dword [ebp - 0x52c], edx
mov eax, dword [ebp - 0x52c]
mov dword [ebp - 0x4f8], eax
cmp dword [ebp - 0x4f8], 0
je 0x46d1e2
push 1
mov ecx, dword [ebp - 0x4f8]
call fcn.0046bc90
mov dword [ebp - 0x530], eax
jmp 0x46d1ec
mov dword [ebp - 0x530], 0
jmp 0x46d204
mov ecx, dword [ebp - 0x4ec]
push ecx
mov edx, dword [ebp + 8]
push edx
mov ecx, dword [ebp - 0x4e4]
call fcn.0046d300
mov eax, dword [ebp - 0x4f0]
push eax
call dword [sym.imp.ole32.dll_CoTaskMemFree]
mov dword [ebp - 0x4f0], 0
mov dword [ebp - 0x4e0], 0
jmp 0x46d236
mov ecx, dword [ebp - 0x4e0]
add ecx, 1
mov dword [ebp - 0x4e0], ecx
cmp dword [ebp - 0x4e0], 3
jae 0x46d2d6
push 0
mov edx, dword [ebp - 0x4e0]
mov eax, dword [ebp + edx*4 - 0x224]
push eax
lea ecx, [ebp - 0x218]
push ecx
mov edx, dword [ebp - 0x4e4]
mov eax, dword [edx + 4]
push eax
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathW]
test eax, eax
je 0x46d2d1
mov dword [ebp - 0x558], 0
xor ecx, ecx
mov dword [ebp - 0x554], ecx
mov dword [ebp - 0x550], ecx
mov dword [ebp - 0x54c], ecx
mov dword [ebp - 0x548], ecx
mov dword [ebp - 0x544], ecx
mov dword [ebp - 0x540], ecx
mov dword [ebp - 0x53c], ecx
mov dword [ebp - 0x538], ecx
mov dword [ebp - 0x534], ecx
push 0
push 0
lea edx, [ebp - 0x558]
push edx
lea eax, [ebp - 0x218]
push eax
mov ecx, dword [ebp + 8]
push ecx
mov ecx, dword [ebp - 0x4e4]
call fcn.0046d800
jmp 0x46d227
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004d181f
mov esp, ebp
pop ebp
ret 4