binaryninja.demangle.demangle_ms

demangle_ms(arch, mangled_name)[source]

demangle_ms demangles a mangled Microsoft Visual Studio C++ name to a Type object.

Parameters:
  • arch (Architecture) – Architecture for the symbol. Required for pointer and integer sizes.
  • mangled_name (str) – a mangled Microsoft Visual Studio C++ name
Returns:

returns tuple of (Type, demangled_name) or (None, mangled_name) on error

Return type:

Tuple

Example:
>>> demangle_ms(Architecture["x86_64"], "?testf@Foobar@@SA?AW4foo@1@W421@@Z")
(<type: public: static enum Foobar::foo __cdecl (enum Foobar::foo)>, ['Foobar', 'testf'])
>>>