Function at 0x100136b0
Capabilities:
Get file attributes
Get file system object information

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100dffac
mov eax, dword fs:[0]
push eax
sub esp, 0x36c
mov eax, dword [0x10145188]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
add eax, 0x2c
push str.icon
push ecx
xor esi, esi
mov ecx, eax
mov dword [ebp - 4], esi
mov dword [ebp - 0x370], eax
call dword [sym.imp.DuiLib_u.dll_public:_class_DuiLib::CControlUI____thiscall_DuiLib::CPaintManagerUI::FindSubControlByName_class_DuiLib::CControlUI___wchar_t_const__const]
mov ebx, 8
mov dword [ebp - 0x368], eax
mov eax, dword [ebp + 0xc]
cmp dword [ebp + 0x20], ebx
jae 0x10013713
lea eax, [ebp + 0xc]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
test al, 0x10
je 0x10013730
cmp dword [ebp + 0x20], ebx
jb 0x1001396a
mov eax, dword [ebp + 0xc]
push eax
jmp 0x10013961
push 0x100f20b0
lea ecx, [ebp + 0xc]
push ecx
mov edi, 1
call fcn.10015060
cmp eax, esi
jle 0x10013813
mov ecx, dword [ebp + 0xc]
cmp dword [ebp + 0x20], ebx
jae 0x10013756
lea ecx, [ebp + 0xc]
lea eax, [ecx + eax*2 + 2]
xor edx, edx
mov ecx, eax
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x18], 7
mov word [ebp - 0x2c], dx
lea esi, [ecx + 2]
nop
mov dx, word [ecx]
add ecx, 2
test dx, dx
jne 0x10013770
sub ecx, esi
sar ecx, 1
push ecx
lea esi, [ebp - 0x2c]
call fcn.10018190
mov byte [ebp - 4], 1
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x2c]
mov esi, edx
cmp eax, ebx
jae 0x10013988
lea esi, [ebp - 0x2c]
mov ecx, esi
mov edi, dword [ebp - 0x1c]
cmp eax, ebx
lea ecx, [ecx + edi*2]
mov eax, edx
jae 0x100137b0
lea eax, [ebp - 0x2c]
cmp eax, ecx
je 0x100137d2
mov edx, dword [sym.imp.MSVCR100.dll_tolower]
push edx
lea edx, [ebp - 0x374]
push esi
push edx
mov ebx, ecx
call fcn.100174b0
add esp, 0xc
mov ebx, 8
mov eax, dword [ebp - 0x1c]
push 0x100f20b4
mov edi, 3
lea ecx, [ebp - 0x2c]
call fcn.100168f0
test eax, eax
je 0x1001398f
mov eax, dword [ebp - 0x1c]
push 0x100f20bc
lea ecx, [ebp - 0x2c]
call fcn.100168f0
test eax, eax
je 0x1001398f
lea esi, [ebp - 0x2c]
mov byte [ebp - 4], 0
call fcn.10015000
mov eax, dword [ebp + 0xc]
cmp dword [ebp + 0x20], ebx
jae 0x1001381e
lea eax, [ebp + 0xc]
push pe_nt_image_headers32
push 0x2b4
lea ecx, [ebp - 0x364]
push ecx
push 0x80
push eax
call dword [sym.imp.SHELL32.dll_SHGetFileInfoW]
lea ecx, [ebp - 0xb0]
call dword [sym.imp.DuiLib_u.dll_public:_void___thiscall_DuiLib::CDuiString::constructor_void_]
mov byte [ebp - 4], 2
mov edx, dword [ebp - 0x360]
push edx
lea eax, [ebp - 0xb0]
push str.SysFileIcon:_d
push eax
call dword [sym.imp.DuiLib_u.dll_public:_int___cdecl_DuiLib::CDuiString::Format_wchar_t_const__]
mov ebx, dword [sym.imp.DuiLib_u.dll_public:_wchar_t_const____thiscall_DuiLib::CDuiString::operator_wchar_t_const__void_const]
add esp, 0xc
lea ecx, [ebp - 0xb0]
call ebx
mov ecx, dword [ebp - 0x370]
push eax
call dword [sym.imp.DuiLib_u.dll_public:_struct_DuiLib::tagTImageInfo_const____thiscall_DuiLib::CPaintManagerUI::GetImage_wchar_t_const__]
test eax, eax
jne 0x10013925
mov ecx, dword [ebp - 0x364]
push ecx
call fcn.10017d00
add esp, 4
push 0
mov esi, eax
mov eax, dword [esi + 4]
lea edx, [ebp - 0x374]
push edx
push eax
call dword [sym.imp.gdiplus.dll_GdipCreateHBITMAPFromBitmap]
test eax, eax
je 0x100138b5
mov dword [esi + 8], eax
mov edx, dword [esi + 4]
lea ecx, [ebp - 0x378]
push ecx
push edx
mov dword [ebp - 0x378], 0
call dword [sym.imp.gdiplus.dll_GdipGetImageHeight]
test eax, eax
je 0x100138d7
mov dword [esi + 8], eax
mov ecx, dword [esi + 4]
mov edi, dword [ebp - 0x378]
lea eax, [ebp - 0x36c]
push eax
push ecx
mov dword [ebp - 0x36c], 0
call dword [sym.imp.gdiplus.dll_GdipGetImageWidth]
test eax, eax
je 0x100138ff
mov dword [esi + 8], eax
mov edx, dword [ebp - 0x36c]
mov eax, dword [ebp - 0x374]
push 1
push edi
push edx
push eax
lea ecx, [ebp - 0xb0]
call ebx
mov ecx, dword [ebp - 0x370]
push eax
call dword [sym.imp.DuiLib_u.dll_public:_struct_DuiLib::tagTImageInfo_const____thiscall_DuiLib::CPaintManagerUI::AddImage_wchar_t_const___struct_HBITMAP_____int__int__bool_]
lea ecx, [ebp - 0xb0]
call ebx
mov ecx, dword [ebp - 0x368]
push eax
call dword [sym.imp.DuiLib_u.dll_public:_void___thiscall_DuiLib::CControlUI::SetBkImage_wchar_t_const__]
mov ecx, dword [ebp - 0x364]
push ecx
call dword [sym.imp.USER32.dll_DestroyIcon]
lea ecx, [ebp - 0xb0]
mov byte [ebp - 4], 0
call dword [sym.imp.DuiLib_u.dll_public:_void___thiscall_DuiLib::CDuiString::destructor_void_]
cmp dword [ebp + 0x20], 8
jb 0x1001396a
mov edx, dword [ebp + 0xc]
push edx
call dword [sym.imp.mfc100u.dll_delete_1]
add esp, 4
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.100d0962
mov esp, ebp
pop ebp
ret 0x20
mov ecx, edx
jmp 0x100137a1
mov ecx, dword [ebp - 0x368]
push 0x100f20c4
call dword [sym.imp.DuiLib_u.dll_public:_void___thiscall_DuiLib::CControlUI::SetDefaultStyle_wchar_t_const__]
mov esi, dword [sym.imp.mfc100u.dll_delete_1]
cmp dword [ebp - 0x18], ebx
jb 0x100139b4
mov eax, dword [ebp - 0x2c]
push eax
call esi
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x18], 7
mov dword [ebp - 0x1c], 0
mov word [ebp - 0x2c], cx
cmp dword [ebp + 0x20], ebx
jb 0x1001396a
mov edx, dword [ebp + 0xc]
push edx
call esi
jmp 0x10013967