Function at 0x470f3c
Capabilities:
Get file system object information

Disassembly:
push 0x5a0
mov eax, 0x57872d
call fcn.0054d567
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 0x4711d9
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 [0x5ec92c]
call fcn.0043602b
test eax, eax
je 0x471158
push 0xa
lea ecx, [ebp - 0x5ac]
call fcn.004701e0
push dword [ebp - 0x57c]
mov ecx, dword [0x5ec92c]
and dword [ebp - 4], 0
call fcn.00435f8b
push eax
lea ecx, [ebp - 0x5ac]
call fcn.0047031f
lea eax, [ebp - 0x580]
push eax
push dword [ebp - 0x57c]
jmp 0x470ff9
push dword [ebp - 0x580]
lea ecx, [ebp - 0x5ac]
call fcn.0047031f
lea eax, [ebp - 0x580]
push eax
push dword [ebp - 0x580]
mov ecx, dword [0x5ec92c]
call fcn.004360a2
test eax, eax
jg 0x470fdb
mov ecx, dword [ebp - 0x5a8]
jmp 0x471134
mov eax, dword [ecx + 8]
mov ecx, dword [ecx]
mov dword [ebp - 0x590], ecx
mov dword [ebp - 0x588], eax
test ebx, ebx
je 0x471122
push ebx
push 4
push 0x110a
push dword [esi + 0x20]
call edi
test eax, eax
jne 0x47104a
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 0x471116
push ecx
mov ecx, esi
call fcn.0043719e
test eax, eax
je 0x4710ed
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 0x4710ed
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 0x4710ed
lea eax, [ebp - 0x2b8]
push eax
lea eax, [ebp - 0x56c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x4710ed
inc eax
mov dword [ebp - 0x584], eax
mov eax, dword [ebp - 0x57c]
mov ebx, eax
jmp 0x4710f3
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 0x47106d
neg eax
sbb eax, eax
and ebx, eax
mov eax, dword [ebp - 0x588]
mov ecx, dword [0x5ec92c]
push eax
call fcn.00436008
mov ecx, dword [ebp - 0x590]
test ecx, ecx
jne 0x471013
lea ecx, [ebp - 0x5ac]
mov dword [ebp - 4], 1
mov dword [ebp - method.CPrinterSettings.virtual_0], vtable.CList_struct__ITEMIDLIST___struct__ITEMIDLIST__.0
call fcn.00509def
test ebx, ebx
je 0x4711b7
push ebx
push 9
push 0x110b
push dword [esi + 0x20]
mov dword [esi + 0x84], 1
call edi
cmp dword [ebp + 0xc], 0
je 0x471197
push ebx
push 4
push 0x110a
push dword [esi + 0x20]
call edi
test eax, eax
jne 0x471197
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 0x4711b9
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.0054d511
ret 8