예제 #1
0
        /// <summary>
        /// Checks if the address belongs to a UObject class.
        /// </summary>
        /// <remarks>Currently checks only if a virtual table exists.</remarks>
        /// <param name="address">The address of the object.</param>
        /// <returns>True if a UObject class, false otherwise.</returns>
        protected virtual bool IsUObject(IntPtr address)
        {
            var vtablePtr = process.ReadRemoteIntPtr(address);

            if (vtablePtr.MayBeValid())
            {
                var section = process.GetSectionToPointer(vtablePtr);
                if (section != null)
                {
                    return(true);
                }
            }
            return(false);
        }