Skip to content

FindMuck/CE_RTTI_Reverse_Lookup

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 

Repository files navigation

RTTI Reverse Lookup - Cheat Engine script

A small Cheat Engine helper for live RTTI-based class lookup.

It scans for MSVC RTTI class names, lets you pick a class from a searchable list, resolves the class’s RTTI / COL / vtable chain, and then looks for candidate instances and possible static refs.

The goal is simple: go from "I know the class name" to "give me useful addresses" with as little friction as possible.

What it does

After you attach CE and run the script, you can choose a narrow or broad RTTI discovery scope, pick a class from the searchable list, and inspect the quick results first. If you want broader coverage, you can then run the full scan.

In practice, the quick pass is meant to give you useful hits early:

  • likely object addresses
  • likely static/image refs
  • fast starting points for ReClass or more manual CE work

Features

  • process-only or broader RTTI discovery
  • searchable custom class picker
  • keyboard-friendly navigation
  • owner-module-aware RTTI resolution
  • x64-aware TypeDescriptor / CompleteObjectLocator handling
  • dedupe for RTTI info, vtables, candidate instances, and refs
  • quick pass over relevant writable image sections
  • optional full scan fallback for broader coverage
  • best-effort cancellation for longer scan phases
  • formatted address output with module + offset where available
  • best-effort x86 support, with x64 as the main target

Typical usage

Attach Cheat Engine to the target, run the script, choose the RTTI discovery scope, and pick a class from the searchable list.

From there:

  1. check the quick results first
  2. inspect candidate instances in ReClass / CE
  3. use static refs as possible stable entry points
  4. optionally run the full scan if you want wider coverage

A quick note on results

The script reports candidate instance addresses and candidate static/image refs.

That means:

  • some hits will be exactly what you want
  • some hits may be subobjects or intermediate pointers
  • some classes, especially with multiple inheritance, can produce addresses that are valid but not the start of the full object

So it is best used as a practical reverse-lookup helper, not as a guarantee that every hit is a perfect object base.

Repository layout

The Lua file is the easier source form to read and edit; the table contains the CE-ready embedded version.

Credits / inspiration

This script mainly grows out of Dark Byte’s Cheat Engine RTTI/forum/GitHub issue code/snippets and the later discussion around it.

It also borrows ideas from other RTTI / vtable-oriented tools and writeups while adapting them into a CE Lua workflow.

In particular, ideas were adapted from:

This project is still its own CE-script workflow rather than a direct port.

References

Limitations

This script targets Microsoft-style C++ RTTI layouts (.?AV..., CompleteObjectLocator / TypeDescriptor-style layouts).

A few practical limits to keep in mind:

  • x64 is the main target
  • x86 is best-effort only
  • raw RTTI class lists can contain engine, library, template, or compiler-generated noise
  • full scans can still be slow on large processes
  • this is an interactive CE helper, not a full replacement for a dedicated injected native RTTI/vtable dumper

About

Cheat Engine RTTI reverse-lookup helper for C++ classes: pick a class, resolve COL/vtables, and find candidate instances/static refs in a live process. x64-first, x86 best-effort.

Topics

Resources

Stars

Watchers

Forks

Languages