Function at 0x4ffff4
Capabilities:
Get file system object information

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffd24
push ebx
push esi
push edi
xor ebx, ebx
mov dword [ebp - 0x2dc], ebx
mov dword [ebp - 0x2d8], ebx
mov dword [ebp - 0x2d4], ebx
mov dword [ebp - 0x2cc], ebx
mov dword [ebp - 0x2d0], ebx
mov dword [ebp - 0x2c4], ebx
mov dword [ebp - 0x2c8], ebx
mov dword [ebp - 8], ebx
mov edi, ecx
mov dword [ebp - 4], edx
mov esi, eax
mov eax, dword [ebp - 4]
call fcn.00405254
lea eax, [ebp - 0x160]
mov edx, dword [0x4088b8]
call fcn.004057ec
xor eax, eax
push ebp
push 0x500296
push dword fs:[eax]
mov dword fs:[eax], esp
xor ebx, ebx
push 0x400
push 0x160
lea eax, [ebp - 0x2c0]
push eax
push 0
mov eax, dword [ebp - 4]
call fcn.00405264
push eax
call sub.shell32.dll_SHGetFileInfoA
test eax, eax
je 0x50024f
lea ecx, [ebp - 0x160]
mov edx, 0x3f
mov eax, dword [ebp - 4]
call fcn.0040a244
test eax, eax
jne 0x50024f
mov ebx, dword [ebp - 0x158]
test bl, 1
je 0x5000bd
lea eax, [ebp - 8]
mov edx, 0x5002b0
call fcn.00404e4c
jmp 0x5000ca
lea eax, [ebp - 8]
mov edx, 0x5002bc
call fcn.00404e4c
test bl, 2
je 0x5000de
lea eax, [ebp - 8]
mov edx, 0x5002c8
call fcn.00405074
jmp 0x5000eb
lea eax, [ebp - 8]
mov edx, 0x5002bc
call fcn.00405074
test bl, 4
je 0x5000ff
lea eax, [ebp - 8]
mov edx, 0x5002d4
call fcn.00405074
jmp 0x50010c
lea eax, [ebp - 8]
mov edx, 0x5002bc
call fcn.00405074
test bl, 0x20
je 0x500120
lea eax, [ebp - 8]
mov edx, 0x5002e0
call fcn.00405074
jmp 0x50012d
lea eax, [ebp - 8]
mov edx, 0x5002bc
call fcn.00405074
mov eax, dword [esi + 0x22c]
call fcn.00486e14
mov eax, dword [esi + 0x22c]
call fcn.00486ca4
mov ebx, eax
mov edx, dword [ebp - 4]
mov eax, ebx
call fcn.00486744
mov eax, dword [ebx + 8]
call fcn.0041fd0c
lea edx, [ebp - 0x2c8]
mov eax, dword [ebp - 0x15c]
call fcn.00409c08
mov eax, dword [ebp - 0x2c8]
lea edx, [ebp - 0x2c4]
call fcn.00409794
mov edx, dword [ebp - 0x2c4]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
lea eax, [ebp - 0x2d0]
lea edx, [ebp - 0x1b0]
mov ecx, 0x50
call fcn.0040501c
mov eax, dword [ebp - 0x2d0]
lea edx, [ebp - 0x2cc]
call fcn.00409794
mov edx, dword [ebp - 0x2cc]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov eax, dword [ebp - 0x160]
call fcn.0040a6f4
add esp, 0xfffffff8
fstp qword [esp]
wait
lea eax, [ebp - 0x2d4]
call fcn.0040cf24
mov edx, dword [ebp - 0x2d4]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov edx, dword [ebp - 8]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
push ebp
lea edx, [ebp - 0x2d8]
mov eax, 0x5002ec
call fcn.004ffe4c
pop ecx
mov edx, dword [ebp - 0x2d8]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
push ebp
lea edx, [ebp - 0x2dc]
mov eax, 0x500300
call fcn.004ffe4c
pop ecx
mov edx, dword [ebp - 0x2dc]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov eax, dword [ebx + 8]
call fcn.0041fdc8
mov eax, dword [esi + 0x22c]
call fcn.00486ff0
mov eax, dword [ebp - 0x15c]
mov dword [edi], eax
mov bl, 1
lea eax, [ebp - 0x160]
call fcn.0040a2b8
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x50029d
lea eax, [ebp - 0x2dc]
mov edx, 7
call fcn.00404dd8
lea eax, [ebp - 0x160]
mov edx, dword [0x4088b8]
call fcn.004058bc
lea eax, [ebp - 8]
mov edx, 2
call fcn.00404dd8
ret