Function at 0x48df6c
Capabilities:
Get file system object information

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffe7c
push ebx
push esi
push edi
xor ebx, ebx
mov dword [ebp - 0x184], ebx
mov dword [ebp - 0x180], ebx
mov dword [ebp - 0x17c], ebx
mov dword [ebp - 0x178], ebx
mov dword [ebp - 0xc], ebx
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0x14], ebx
mov dword [ebp - 4], ecx
mov esi, edx
mov ebx, eax
xor eax, eax
push ebp
push 0x48e20b
push dword fs:[eax]
mov dword fs:[eax], esp
push 0x1100
push 0x160
lea eax, [ebp - 0x174]
push eax
push 0
mov eax, ebx
call fcn.00404a58
push eax
call sub.shell32.dll_SHGetFileInfoA
mov eax, dword [ebp - 4]
lea edx, [ebp - 0x168]
mov ecx, 0x104
call fcn.00404808
mov eax, dword [ebp - 4]
cmp dword [eax], 0
je 0x48dff8
mov eax, dword [ebp - 0x170]
mov dword [esi], eax
jmp 0x48e1e0
mov edx, ebx
mov eax, 0x48e224
call fcn.00404b9c
test eax, eax
jle 0x48e02a
lea ecx, [ebp - 0x178]
mov edx, 0x48e228
mov eax, ebx
call fcn.0048de2c
mov eax, dword [ebp - 0x178]
lea edx, [ebp - 0xc]
call fcn.004094ec
jmp 0x48e034
lea edx, [ebp - 0xc]
mov eax, ebx
call fcn.0048deb8
mov eax, dword [ebp - 0xc]
call fcn.00404858
test eax, eax
je 0x48e1e0
mov dl, 1
mov eax, dword [0x434048]
call fcn.00434148
mov dword [ebp - 8], eax
xor eax, eax
push ebp
push 0x48e1bb
push dword fs:[eax]
mov dword fs:[eax], esp
mov edx, 0x80000000
mov eax, dword [ebp - 8]
call fcn.00434224
xor ecx, ecx
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 8]
call fcn.0043428c
test al, al
je 0x48e08c
mov ecx, dword [ebp - 4]
xor edx, edx
mov eax, dword [ebp - 8]
call fcn.004348d4
push 0x48e250
mov eax, dword [ebp - 4]
push dword [eax]
push 0x48e25c
lea eax, [ebp - 0x17c]
mov edx, 3
call fcn.00404918
mov edx, dword [ebp - 0x17c]
xor ecx, ecx
mov eax, dword [ebp - 8]
call fcn.0043428c
test al, al
je 0x48e0cc
mov ecx, dword [ebp - 4]
xor edx, edx
mov eax, dword [ebp - 8]
call fcn.004348d4
mov eax, dword [ebp - 4]
mov eax, dword [eax]
call fcn.00404858
test eax, eax
jle 0x48e1a5
mov edx, dword [ebp - 4]
mov edx, dword [edx]
mov eax, 0x48e274
call fcn.00404b9c
test eax, eax
jle 0x48e0fb
mov eax, dword [ebp - 4]
mov edx, ebx
call fcn.004045ec
mov edx, dword [ebp - 4]
mov edx, dword [edx]
mov eax, 0x48e280
call fcn.00404b9c
mov ebx, eax
lea eax, [ebp - 0x10]
call fcn.00404598
test ebx, ebx
jle 0x48e144
lea eax, [ebp - 0x10]
push eax
lea edx, [ebx + 1]
mov eax, dword [ebp - 4]
mov eax, dword [eax]
mov ecx, 0x7fffffff
call fcn.00404ab8
mov eax, dword [ebp - 4]
push eax
mov ecx, ebx
dec ecx
mov eax, dword [ebp - 4]
mov eax, dword [eax]
mov edx, 1
call fcn.00404ab8
lea eax, [ebp - 0x14]
call fcn.00404598
mov eax, dword [ebp - 0x10]
call fcn.00404858
mov edi, eax
test edi, edi
jle 0x48e194
mov ebx, 1
mov eax, dword [ebp - 0x10]
mov al, byte [eax + ebx - 1]
sub al, 0x2d
je 0x48e170
add al, 0xfd
sub al, 0xa
jae 0x48e190
lea eax, [ebp - 0x180]
mov edx, dword [ebp - 0x10]
mov dl, byte [edx + ebx - 1]
call fcn.00404780
mov edx, dword [ebp - 0x180]
lea eax, [ebp - 0x14]
call fcn.00404860
inc ebx
dec edi
jne 0x48e15f
xor edx, edx
mov eax, dword [ebp - 0x14]
call fcn.00408e88
cdq
xor eax, edx
sub eax, edx
mov dword [esi], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x48e1c2
mov eax, dword [ebp - 8]
call fcn.004037ec
ret
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x48e212
lea eax, [ebp - 0x184]
mov edx, 4
call fcn.004045bc
lea eax, [ebp - 0x14]
mov edx, 3
call fcn.004045bc
ret