Function at 0x52a082
Capabilities:
Get file system object information

Disassembly:
push 0x5a0
mov eax, 0x55d1ed
call fcn.00530eed
mov esi, ecx
mov eax, dword [ebp + 8]
xor ecx, ecx
mov dword [ebp - 0x57c], eax
mov dword [ebp - 0x58c], ecx
test eax, eax
je 0x52a31f
mov edi, dword [sym.imp.USER32.dll_SendMessageW]
push ecx
push ecx
push 0x110a
push dword [esi + 0x20]
call edi
push 0
push 0
push 0xb
push dword [esi + 0x20]
mov ebx, eax
call edi
push dword [ebp - 0x57c]
mov ecx, dword [0x5b5ac8]
call fcn.00406f66
test eax, eax
je 0x52a29e
push 0xa
lea ecx, [ebp - 0x5ac]
call fcn.00529353
push dword [ebp - 0x57c]
mov ecx, dword [0x5b5ac8]
and dword [ebp - 4], 0
call fcn.00406ec6
push eax
lea ecx, [ebp - 0x5ac]
call fcn.00406000
lea eax, [ebp - 0x580]
push eax
push dword [ebp - 0x57c]
jmp 0x52a13f
push dword [ebp - 0x580]
lea ecx, [ebp - 0x5ac]
call fcn.00406000
lea eax, [ebp - 0x580]
push eax
push dword [ebp - 0x580]
mov ecx, dword [0x5b5ac8]
call fcn.00406fdd
test eax, eax
jg 0x52a121
mov ecx, dword [ebp - 0x5a8]
jmp 0x52a27a
mov eax, dword [ecx + 8]
mov ecx, dword [ecx]
mov dword [ebp - 0x590], ecx
mov dword [ebp - 0x588], eax
test ebx, ebx
je 0x52a268
push ebx
push 4
push 0x110a
push dword [esi + 0x20]
call edi
test eax, eax
jne 0x52a190
push ebx
push 2
push 0x1102
push dword [esi + 0x20]
call edi
push ebx
push 4
push 0x110a
push dword [esi + 0x20]
xor eax, eax
mov dword [ebp - 0x584], eax
call edi
mov ecx, eax
mov eax, dword [ebp - 0x584]
mov dword [ebp - 0x57c], ecx
test ecx, ecx
je 0x52a25c
push ecx
mov ecx, esi
call fcn.004b693e
test eax, eax
je 0x52a233
push 0x208
push 0x2b4
lea ecx, [ebp - 0x578]
push ecx
push 0
push dword [eax + 4]
call dword [sym.imp.SHELL32.dll_SHGetFileInfoW]
test eax, eax
je 0x52a233
push 0x208
push 0x2b4
lea eax, [ebp - 0x2c4]
push eax
push 0
push dword [ebp - 0x588]
call dword [sym.imp.SHELL32.dll_SHGetFileInfoW]
test eax, eax
je 0x52a233
lea eax, [ebp - 0x2b8]
push eax
lea eax, [ebp - 0x56c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x52a233
inc eax
mov dword [ebp - 0x584], eax
mov eax, dword [ebp - 0x57c]
mov ebx, eax
jmp 0x52a239
mov eax, dword [ebp - 0x57c]
push eax
push 1
push 0x110a
push dword [esi + 0x20]
call edi
mov ecx, eax
mov dword [ebp - 0x57c], eax
mov eax, dword [ebp - 0x584]
test eax, eax
je 0x52a1b3
neg eax
sbb eax, eax
and ebx, eax
mov eax, dword [ebp - 0x588]
mov ecx, dword [0x5b5ac8]
push eax
call fcn.00406f43
mov ecx, dword [ebp - 0x590]
test ecx, ecx
jne 0x52a159
lea ecx, [ebp - 0x5ac]
mov dword [ebp - 4], 1
mov dword [ebp - method.CList_class_IControlSiteFactory___class_IControlSiteFactory__.virtual_0], vtable.CList_struct__ITEMIDLIST___struct__ITEMIDLIST__.0
call fcn.0048a345
test ebx, ebx
je 0x52a2fd
push ebx
push 9
push 0x110b
push dword [esi + 0x20]
mov dword [esi + 0x84], 1
call edi
cmp dword [ebp + 0xc], 0
je 0x52a2dd
push ebx
push 4
push 0x110a
push dword [esi + 0x20]
call edi
test eax, eax
jne 0x52a2dd
push ebx
push 2
push 0x1102
push dword [esi + 0x20]
call edi
push ebx
xor ebx, ebx
push ebx
push 0x1114
push dword [esi + 0x20]
call edi
mov dword [esi + 0x84], ebx
mov dword [ebp - 0x58c], 1
jmp 0x52a2ff
xor ebx, ebx
push ebx
push 1
push 0xb
push dword [esi + 0x20]
call edi
push 0x105
push ebx
push ebx
push dword [esi + 0x20]
call dword [sym.imp.USER32.dll_RedrawWindow]
mov eax, dword [ebp - 0x58c]
call fcn.00530e97
ret 8