Classes | |
| struct | BinaryNinja::TransformParameter |
| class | BinaryNinja::Transform |
| Allows users to implement custom transformations. More... | |
| class | BinaryNinja::CoreTransform |
| class BinaryNinja::Transform |
Allows users to implement custom transformations.
New transformations may be added at runtime, so an instance of a transform is created like
Getting a list of registered transforms:
From the interactive python console:
At Runtime:
Public Member Functions | |
| Transform (BNTransformType type, const std::string &name, const std::string &longName, const std::string &group) | |
| BNTransformType | GetType () const |
| std::string | GetName () const |
| std::string | GetLongName () const |
| std::string | GetGroup () const |
| virtual std::vector< TransformParameter > | GetParameters () const |
| virtual bool | Decode (const DataBuffer &input, DataBuffer &output, const std::map< std::string, DataBuffer > ¶ms=std::map< std::string, DataBuffer >()) |
| virtual bool | Encode (const DataBuffer &input, DataBuffer &output, const std::map< std::string, DataBuffer > ¶ms=std::map< std::string, DataBuffer >()) |
Public Member Functions inherited from BinaryNinja::StaticCoreRefCountObject< BNTransform > | |
| StaticCoreRefCountObject () | |
| virtual | ~StaticCoreRefCountObject () |
| BNTransform * | GetObject () const |
| void | AddRef () |
| void | Release () |
| void | AddRefForRegistration () |
| void | AddRefForCallback () |
| void | ReleaseForCallback () |
Static Public Member Functions | |
| static void | Register (Transform *xform) |
| static Ref< Transform > | GetByName (const std::string &name) |
| static std::vector< Ref< Transform > > | GetTransformTypes () |
Static Public Member Functions inherited from BinaryNinja::StaticCoreRefCountObject< BNTransform > | |
| static BNTransform * | GetObject (const StaticCoreRefCountObject *obj) |
Protected Member Functions | |
| Transform (BNTransform *xform) | |
Static Protected Member Functions | |
| static BNTransformParameterInfo * | GetParametersCallback (void *ctxt, size_t *count) |
| static void | FreeParametersCallback (BNTransformParameterInfo *params, size_t count) |
| static bool | DecodeCallback (void *ctxt, BNDataBuffer *input, BNDataBuffer *output, BNTransformParameter *params, size_t paramCount) |
| static bool | EncodeCallback (void *ctxt, BNDataBuffer *input, BNDataBuffer *output, BNTransformParameter *params, size_t paramCount) |
| static std::vector< TransformParameter > | EncryptionKeyParameters (size_t fixedKeyLength=0) |
| static std::vector< TransformParameter > | EncryptionKeyAndIVParameters (size_t fixedKeyLength=0, size_t fixedIVLength=0) |
Protected Attributes | |
| BNTransformType | m_typeForRegister |
| std::string | m_nameForRegister |
| std::string | m_longNameForRegister |
| std::string | m_groupForRegister |
Additional Inherited Members | |
Public Attributes inherited from BinaryNinja::StaticCoreRefCountObject< BNTransform > | |
| std::atomic< int > | m_refs |
| BNTransform * | m_object |
|
protected |
| BinaryNinja::Transform::Transform | ( | BNTransformType | type, |
| const std::string & | name, | ||
| const std::string & | longName, | ||
| const std::string & | group ) |
|
staticprotected |
|
staticprotected |
|
staticprotected |
|
staticprotected |
|
staticprotected |
|
staticprotected |
|
static |
| BNTransformType Transform::GetType | ( | ) | const |
| string Transform::GetName | ( | ) | const |
| string Transform::GetLongName | ( | ) | const |
| string Transform::GetGroup | ( | ) | const |
|
virtual |
Reimplemented in BinaryNinja::CoreTransform.
|
virtual |
Reimplemented in BinaryNinja::CoreTransform.
|
virtual |
Reimplemented in BinaryNinja::CoreTransform.
|
protected |
|
protected |
|
protected |
|
protected |
| class BinaryNinja::CoreTransform |
Public Member Functions | |
| CoreTransform (BNTransform *xform) | |
| virtual std::vector< TransformParameter > | GetParameters () const override |
| virtual bool | Decode (const DataBuffer &input, DataBuffer &output, const std::map< std::string, DataBuffer > ¶ms=std::map< std::string, DataBuffer >()) override |
| virtual bool | Encode (const DataBuffer &input, DataBuffer &output, const std::map< std::string, DataBuffer > ¶ms=std::map< std::string, DataBuffer >()) override |
Public Member Functions inherited from BinaryNinja::Transform | |
| Transform (BNTransformType type, const std::string &name, const std::string &longName, const std::string &group) | |
| BNTransformType | GetType () const |
| std::string | GetName () const |
| std::string | GetLongName () const |
| std::string | GetGroup () const |
Public Member Functions inherited from BinaryNinja::StaticCoreRefCountObject< BNTransform > | |
| StaticCoreRefCountObject () | |
| virtual | ~StaticCoreRefCountObject () |
| BNTransform * | GetObject () const |
| void | AddRef () |
| void | Release () |
| void | AddRefForRegistration () |
| void | AddRefForCallback () |
| void | ReleaseForCallback () |
Additional Inherited Members | |
Static Public Member Functions inherited from BinaryNinja::Transform | |
| static void | Register (Transform *xform) |
| static Ref< Transform > | GetByName (const std::string &name) |
| static std::vector< Ref< Transform > > | GetTransformTypes () |
Static Public Member Functions inherited from BinaryNinja::StaticCoreRefCountObject< BNTransform > | |
| static BNTransform * | GetObject (const StaticCoreRefCountObject *obj) |
Public Attributes inherited from BinaryNinja::StaticCoreRefCountObject< BNTransform > | |
| std::atomic< int > | m_refs |
| BNTransform * | m_object |
Protected Member Functions inherited from BinaryNinja::Transform | |
| Transform (BNTransform *xform) | |
Static Protected Member Functions inherited from BinaryNinja::Transform | |
| static BNTransformParameterInfo * | GetParametersCallback (void *ctxt, size_t *count) |
| static void | FreeParametersCallback (BNTransformParameterInfo *params, size_t count) |
| static bool | DecodeCallback (void *ctxt, BNDataBuffer *input, BNDataBuffer *output, BNTransformParameter *params, size_t paramCount) |
| static bool | EncodeCallback (void *ctxt, BNDataBuffer *input, BNDataBuffer *output, BNTransformParameter *params, size_t paramCount) |
| static std::vector< TransformParameter > | EncryptionKeyParameters (size_t fixedKeyLength=0) |
| static std::vector< TransformParameter > | EncryptionKeyAndIVParameters (size_t fixedKeyLength=0, size_t fixedIVLength=0) |
Protected Attributes inherited from BinaryNinja::Transform | |
| BNTransformType | m_typeForRegister |
| std::string | m_nameForRegister |
| std::string | m_longNameForRegister |
| std::string | m_groupForRegister |
| CoreTransform::CoreTransform | ( | BNTransform * | xform | ) |
|
overridevirtual |
Reimplemented from BinaryNinja::Transform.
|
overridevirtual |
Reimplemented from BinaryNinja::Transform.
|
overridevirtual |
Reimplemented from BinaryNinja::Transform.