libintrovirt v0.57.4
IntroVirt introspection library
Loading...
Searching...
No Matches
introvirt::windows::crypt32::CryptEncryptMessage Class Referencefinal

Handler for crypt32!CryptEncryptMessage. More...

#include <CryptEncryptMessage.hh>

Inheritance diagram for introvirt::windows::crypt32::CryptEncryptMessage:
Collaboration diagram for introvirt::windows::crypt32::CryptEncryptMessage:

Public Member Functions

guest_ptr< void > pEncryptPara () const
 
void pEncryptPara (const guest_ptr< void > &pEncryptPara)
 
uint32_t cRecipientCert () const
 
void cRecipientCert (uint32_t cRecipientCert)
 
guest_ptr< void *[], guest_ptr_trgpRecipientCert () const
 
void rgpRecipientCert (const guest_ptr< void *[], guest_ptr_t > &rgpRecipientCert)
 
std::vector< std::shared_ptr< CERT_CONTEXT > > & RecipientCert ()
 
guest_ptr< uint8_t[]> pbToBeEncrypted () const
 
void pbToBeEncrypted (const guest_ptr< uint8_t[]> &pbToBeEncrypted)
 
uint32_t cbToBeEncrypted () const
 
void cbToBeEncrypted (uint32_t cbToBeEncrypted)
 
guest_ptr< uint8_t[]> pbEncryptedBlob () const
 
void pbEncryptedBlob (const guest_ptr< uint8_t[]> &pbEncryptedBlob)
 
guest_ptr< uint32_t > pcbEncryptedBlob () const
 
void pcbEncryptedBlob (const guest_ptr< uint32_t > &pcbEncryptedBlob)
 
const std::string & function_name () const override
 Get the function name.
 
const std::string & library_name () const override
 Get the name of the library this call is for.
 
void write (std::ostream &os=std::cout) const override
 Write out a textual representation of the function for display.
 
Json::Value json () const override
 Get the function as Json.
 
bool result () const
 
void result (bool result)
 
 CryptEncryptMessage (Event &event)
 
 ~CryptEncryptMessage () override
 
- Public Member Functions inherited from introvirt::windows::WindowsFunctionCall
guest_ptr< void > return_address () const override
 Get the return address for this function call.
 
void return_address (const guest_ptr< void > &value) override
 Set the return address for this function call.
 
bool is_return_event (Event &event) const override
 Check if the given event is a return event for this function call.
 
void handle_return (Event &event) override
 Handle the return event.
 
bool returned () const override
 Check if the call has returned.
 
bool x64 () const
 Check if the call is from x64 mode.hh>
 
virtual ~WindowsFunctionCall ()
 
- Public Member Functions inherited from introvirt::FunctionCall
bool hook_return () const
 Check if the user is requesting that the return be intercepted.
 
void hook_return (bool val)
 Configure if the return should be intercepted.
 
void data (const std::string &key, const std::shared_ptr< void > &value)
 Store arbitrary data with the FunctionCall.
 
void data (const std::string &key, std::shared_ptr< void > &&value)
 Store arbitrary data with the FunctionCall.
 
std::shared_ptr< void > data (const std::string &key)
 Retrieve arbitrary data stored with the FunctionCall.
 
std::shared_ptr< const void > data (const std::string &key) const
 Retrieve arbitrary data stored with the FunctionCall.
 
virtual ~FunctionCall ()=default
 

Static Public Member Functions

static bool inject (const guest_ptr< void > &pEncryptPara, uint32_t cRecipientCert, const guest_ptr< void *[], guest_ptr_t > &rgpRecipientCert, const guest_ptr< uint8_t[]> &pbToBeEncrypted, uint32_t cbToBeEncrypted, const guest_ptr< uint8_t[]> &pbEncryptedBlob, const guest_ptr< uint32_t > &pcbEncryptedBlob)
 

Static Public Attributes

static constexpr int ArgumentCount = 7
 
static const std::string LibraryName = "crypt32"
 
static const std::string FunctionName = "CryptEncryptMessage"
 

Additional Inherited Members

- Protected Member Functions inherited from introvirt::windows::WindowsFunctionCall
uint64_t raw_return_value () const
 
void raw_return_value (uint64_t value)
 
uint64_t get_argument (unsigned int index) const
 
void set_argument (unsigned int index, uint64_t value)
 
guest_ptr< void > get_address_argument (unsigned int index) const
 
void set_address_argument (unsigned int index, const guest_ptr< void > &address)
 
Vcpuvcpu ()
 
const Vcpuvcpu () const
 
 WindowsFunctionCall (Event &event, unsigned int argument_count, WindowsCallType type=WindowsCallType::AUTO)
 

Detailed Description

Constructor & Destructor Documentation

◆ CryptEncryptMessage()

introvirt::windows::crypt32::CryptEncryptMessage::CryptEncryptMessage ( Event event)

◆ ~CryptEncryptMessage()

introvirt::windows::crypt32::CryptEncryptMessage::~CryptEncryptMessage ( )
override

Member Function Documentation

◆ cbToBeEncrypted() [1/2]

uint32_t introvirt::windows::crypt32::CryptEncryptMessage::cbToBeEncrypted ( ) const

◆ cbToBeEncrypted() [2/2]

void introvirt::windows::crypt32::CryptEncryptMessage::cbToBeEncrypted ( uint32_t  cbToBeEncrypted)

◆ cRecipientCert() [1/2]

uint32_t introvirt::windows::crypt32::CryptEncryptMessage::cRecipientCert ( ) const

◆ cRecipientCert() [2/2]

void introvirt::windows::crypt32::CryptEncryptMessage::cRecipientCert ( uint32_t  cRecipientCert)

◆ function_name()

const std::string & introvirt::windows::crypt32::CryptEncryptMessage::function_name ( ) const
overridevirtual

Get the function name.

Returns
const std::string&

Implements introvirt::FunctionCall.

◆ inject()

static bool introvirt::windows::crypt32::CryptEncryptMessage::inject ( const guest_ptr< void > &  pEncryptPara,
uint32_t  cRecipientCert,
const guest_ptr< void *[], guest_ptr_t > &  rgpRecipientCert,
const guest_ptr< uint8_t[]> &  pbToBeEncrypted,
uint32_t  cbToBeEncrypted,
const guest_ptr< uint8_t[]> &  pbEncryptedBlob,
const guest_ptr< uint32_t > &  pcbEncryptedBlob 
)
static

◆ json()

Json::Value introvirt::windows::crypt32::CryptEncryptMessage::json ( ) const
overridevirtual

Get the function as Json.

Returns
Json::Value

Implements introvirt::FunctionCall.

◆ library_name()

const std::string & introvirt::windows::crypt32::CryptEncryptMessage::library_name ( ) const
overridevirtual

Get the name of the library this call is for.

Returns
const std::string&

Implements introvirt::FunctionCall.

◆ pbEncryptedBlob() [1/2]

guest_ptr< uint8_t[]> introvirt::windows::crypt32::CryptEncryptMessage::pbEncryptedBlob ( ) const

◆ pbEncryptedBlob() [2/2]

void introvirt::windows::crypt32::CryptEncryptMessage::pbEncryptedBlob ( const guest_ptr< uint8_t[]> &  pbEncryptedBlob)

◆ pbToBeEncrypted() [1/2]

guest_ptr< uint8_t[]> introvirt::windows::crypt32::CryptEncryptMessage::pbToBeEncrypted ( ) const

◆ pbToBeEncrypted() [2/2]

void introvirt::windows::crypt32::CryptEncryptMessage::pbToBeEncrypted ( const guest_ptr< uint8_t[]> &  pbToBeEncrypted)

◆ pcbEncryptedBlob() [1/2]

guest_ptr< uint32_t > introvirt::windows::crypt32::CryptEncryptMessage::pcbEncryptedBlob ( ) const

◆ pcbEncryptedBlob() [2/2]

void introvirt::windows::crypt32::CryptEncryptMessage::pcbEncryptedBlob ( const guest_ptr< uint32_t > &  pcbEncryptedBlob)

◆ pEncryptPara() [1/2]

guest_ptr< void > introvirt::windows::crypt32::CryptEncryptMessage::pEncryptPara ( ) const

◆ pEncryptPara() [2/2]

void introvirt::windows::crypt32::CryptEncryptMessage::pEncryptPara ( const guest_ptr< void > &  pEncryptPara)

◆ RecipientCert()

std::vector< std::shared_ptr< CERT_CONTEXT > > & introvirt::windows::crypt32::CryptEncryptMessage::RecipientCert ( )

◆ result() [1/2]

bool introvirt::windows::crypt32::CryptEncryptMessage::result ( ) const

◆ result() [2/2]

void introvirt::windows::crypt32::CryptEncryptMessage::result ( bool  result)

◆ rgpRecipientCert() [1/2]

guest_ptr< void *[], guest_ptr_t > introvirt::windows::crypt32::CryptEncryptMessage::rgpRecipientCert ( ) const

◆ rgpRecipientCert() [2/2]

void introvirt::windows::crypt32::CryptEncryptMessage::rgpRecipientCert ( const guest_ptr< void *[], guest_ptr_t > &  rgpRecipientCert)

◆ write()

void introvirt::windows::crypt32::CryptEncryptMessage::write ( std::ostream &  os = std::cout) const
overridevirtual

Write out a textual representation of the function for display.

Parameters
os

Implements introvirt::FunctionCall.

Member Data Documentation

◆ ArgumentCount

constexpr int introvirt::windows::crypt32::CryptEncryptMessage::ArgumentCount = 7
staticconstexpr

◆ FunctionName

const std::string introvirt::windows::crypt32::CryptEncryptMessage::FunctionName = "CryptEncryptMessage"
inlinestatic

◆ LibraryName

const std::string introvirt::windows::crypt32::CryptEncryptMessage::LibraryName = "crypt32"
inlinestatic

The documentation for this class was generated from the following file: