Skip to content

commonuserlol/frida-demangler

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

frida-demangler

As you (probably) know, in C++, symbols are mangled. This project will allow you to demangle back using the GCC ABI.

OS support

  • Linux - OK
  • Android - OK
  • Windows - Fail (no __cxa_demangle symbol, use LLVM demangler instead)
  • iOS/MacOS - Wasn't tested

Usage

Invoke Demangler.demangle with string or array of strings, example:

console.log(Demangler.demangle("_ZNK3MapI10StringName3RefI8GDScriptE10ComparatorIS0_E16DefaultAllocatorE3hasERKS0_"));

console.log(Demangler.demangle(["_ZN9wikipedia7article6formatEv", "_ZN9wikipedia7article8print_toERSo", "_ZN9wikipedia7article8wikilinkC1ERKSs"]));

Second argument of demangle is number (int) and represents how many bytes needed for int32. Defaults to 4.

Acknowledgments

Wikipedia article - example how to demangle symbols with GCC ABI (__cxa_demangle) and mangled symbols examples.