Function at 0x459d97
Capabilities:
Get file system object information

Disassembly:
push 0x2a0
mov eax, 0x4a1f34
call fcn.0048d91b
mov esi, ecx
call fcn.0046df20
push eax
lea ecx, [ebp - 0x2a8]
call fcn.0046e14b
xor ebx, ebx
mov dword [ebp - 4], ebx
call fcn.0046df20
push eax
lea ecx, [ebp - 0x2ac]
call fcn.0046e14b
mov byte [ebp - 4], 1
call fcn.0046df20
push eax
lea ecx, [ebp - 0x2a4]
call fcn.0046e14b
mov byte [ebp - 4], 2
push str..lnk
mov edi, esi
mov dword [ebp - 0x13c], ebx
mov dword [ebp - 0x138], ebx
mov dword [ebp - 0x134], ebx
mov dword [ebp - 0x130], ebx
mov dword [ebp - 0x12c], ebx
mov dword [ebp - 0x128], ebx
call fcn.0046038c
test eax, eax
pop ecx
jne 0x45a012
push ebx
push 0x5c
mov ecx, esi
call fcn.00406b61
test eax, eax
jl 0x459e7b
mov ecx, esi
call fcn.0045c10b
test eax, eax
je 0x459e7b
mov eax, dword [esi]
lea ecx, [ebp - 0x13c]
push ecx
push eax
call fcn.0047ef2e
test eax, eax
jne 0x459e53
push ebx
jmp 0x45a014
xor eax, eax
cmp dword [ebp + 8], ebx
setne al
or eax, 0x100
push eax
push 0x160
lea eax, [ebp - 0x29c]
push eax
push ebx
push dword [esi]
call dword [sym.imp.SHELL32.dll_SHGetFileInfoA]
jmp 0x45a008
mov cl, 0x2e
call fcn.00406b92
cmp eax, ebx
jl 0x45a012
push eax
lea eax, [ebp - 0x2a0]
push eax
mov ecx, esi
call fcn.004013ad
push eax
lea ecx, [ebp - 0x2ac]
mov byte [ebp - 4], 3
call fcn.0040189c
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x2a0]
add ecx, 0xfffffff0
call fcn.0040174a
lea eax, [ebp - 0x2a0]
push str.GETRGT
push eax
lea ecx, [ebp - 0x2ac]
call fcn.00404da1
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0x2a8]
mov byte [ebp - 4], 4
call fcn.0040189c
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x2a0]
add ecx, 0xfffffff0
call fcn.0040174a
lea edi, [ebp - 0x2ac]
call fcn.0040fb12
lea ebx, [ebp - 0x2a0]
call fcn.0045a07d
push eax
lea ecx, [ebp - 0x2a4]
mov byte [ebp - 4], 5
call fcn.0040189c
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x2a0]
add ecx, 0xfffffff0
call fcn.0040174a
lea eax, [ebp - 0x2a8]
push eax
lea eax, [ebp - 0x2a4]
push eax
lea eax, [ebp - 0x2a0]
push eax
call fcn.004032bb
mov eax, dword [eax]
add esp, 0xc
xor esi, esi
push esi
push 0x80
push 2
push esi
push esi
push 0x40000000
push eax
call dword [sym.imp.KERNEL32.DLL_CreateFileA]
mov ecx, dword [ebp - 0x2a0]
add ecx, 0xfffffff0
mov edi, eax
call fcn.0040174a
push edi
call dword [sym.imp.KERNEL32.DLL_CloseHandle]
lea eax, [ebp - 0x2a8]
push eax
lea eax, [ebp - 0x2a4]
push eax
lea eax, [ebp - 0x2a0]
push eax
call fcn.004032bb
mov eax, dword [eax]
add esp, 0xc
xor ecx, ecx
cmp dword [ebp + 8], esi
setne cl
or ecx, 0x100
push ecx
push 0x160
lea ecx, [ebp - 0x29c]
push ecx
push esi
push eax
call dword [sym.imp.SHELL32.dll_SHGetFileInfoA]
mov ecx, dword [ebp - 0x2a0]
add ecx, 0xfffffff0
call fcn.0040174a
lea eax, [ebp - 0x2a8]
push eax
lea eax, [ebp - 0x2a4]
push eax
lea eax, [ebp - 0x2a0]
push eax
call fcn.004032bb
add esp, 0xc
mov esi, eax
mov byte [ebp - 4], 6
call fcn.0045c16f
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x2a0]
add ecx, 0xfffffff0
call fcn.0040174a
xor ebx, ebx
mov esi, dword [ebp - 0x29c]
cmp esi, ebx
jne 0x45a02b
push 1
push dword [0x4db604]
call fcn.00471d19
mov eax, dword [eax + 0x78]
mov ecx, dword [eax]
call fcn.00417544
mov esi, eax
mov ecx, dword [ebp - 0x2a4]
add ecx, 0xfffffff0
call fcn.0040174a
mov ecx, dword [ebp - 0x2ac]
add ecx, 0xfffffff0
call fcn.0040174a
mov ecx, dword [ebp - 0x2a8]
add ecx, 0xfffffff0
call fcn.0040174a
mov eax, esi
call fcn.0048d99e
ret