Skip to content

Latest commit

 

History

History
2788 lines (1962 loc) · 96.6 KB

File metadata and controls

2788 lines (1962 loc) · 96.6 KB

revengai.FunctionsCoreApi

All URIs are relative to https://api.reveng.ai

Method HTTP request Description
add_function_callee POST /v3/functions/{function_id}/callees Add a callee to a function
add_user_string_to_function POST /v3/functions/{function_id}/user-provided-strings Add a user-provided string to a function.
ai_unstrip POST /v2/analyses/{analysis_id}/functions/ai-unstrip Performs matching and auto-unstrip for an analysis and its functions
analysis_function_matching POST /v2/analyses/{analysis_id}/functions/matches Perform matching for the functions of an analysis
auto_unstrip POST /v2/analyses/{analysis_id}/functions/auto-unstrip Performs matching and auto-unstrip for an analysis and its functions
batch_function_matching POST /v2/functions/matches Perform function matching for an arbitrary batch of functions, binaries or collections
cancel_ai_unstrip DELETE /v2/analyses/{analysis_id}/functions/ai-unstrip/cancel Cancels a running ai-unstrip
cancel_auto_unstrip DELETE /v2/analyses/{analysis_id}/functions/unstrip/cancel Cancels a running auto-unstrip
get_analysis_strings GET /v2/analyses/{analysis_id}/functions/strings Get string information found in the Analysis
get_analysis_strings_status GET /v2/analyses/{analysis_id}/functions/strings/status Get string processing state for the Analysis
get_function_blocks GET /v2/functions/{function_id}/blocks Get disassembly blocks related to the function
get_function_blocks_0 GET /v3/functions/{function_id}/blocks Get function disassembly
get_function_callees_callers GET /v2/functions/{function_id}/callees_callers Get list of functions that call or are called by the specified function
get_function_callees_callers_0 GET /v3/functions/{function_id}/callees-callers Get callees and callers for a function
get_function_callees_callers_bulk GET /v2/functions/callees_callers Get list of functions that call or are called for a list of functions
get_function_capabilities GET /v2/functions/{function_id}/capabilities Retrieve a functions capabilities
get_function_capabilities_0 GET /v3/functions/{function_id}/capabilities Get capabilities for a function
get_function_details GET /v2/functions/{function_id} Get function details
get_function_details_0 GET /v3/functions/{function_id} Get function details
get_function_indirect_call_sites GET /v3/functions/{function_id}/indirect-call-sites Get indirect call sites for a function
get_function_strings GET /v2/functions/{function_id}/strings Get string information found in the function
get_function_strings_0 GET /v3/functions/{function_id}/strings List strings for a function.
get_functions_callees_callers GET /v3/functions/callees-callers Get callees and callers for many functions
get_functions_matches GET /v3/functions/matches Get function-matching results for an explicit set of functions
get_functions_matching_status GET /v3/functions/matches/status Get function-matching status for an explicit set of functions
get_imported_function GET /v3/analyses/{analysis_id}/imported-functions/{imported_function_id} Get an imported function with its callers
list_analysis_functions GET /v3/analyses/{analysis_id}/functions List functions in an analysis
list_imported_functions GET /v3/analyses/{analysis_id}/imported-functions List imported functions in an analysis
start_functions_matching POST /v3/functions/matches Start function matching for an explicit set of functions
v3_canonicalize_function_names POST /v3/functions/canonical-names Canonicalize a batch of function names

add_function_callee

Dict[str, object] add_function_callee(function_id, add_callee_input_body)

Add a callee to a function

Records an outgoing call edge from the given function to a callee.

Error codes:

Example

  • Api Key Authentication (APIKey):
  • Bearer Authentication (bearerAuth):
import revengai
from revengai.models.add_callee_input_body import AddCalleeInputBody
from revengai.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://api.reveng.ai
# See configuration.py for a list of all supported configuration parameters.
configuration = revengai.Configuration(
    host = "https://api.reveng.ai"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure API key authorization: APIKey
configuration.api_key['APIKey'] = os.environ["API_KEY"]

# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['APIKey'] = 'Bearer'

# Configure Bearer authorization: bearerAuth
configuration = revengai.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)

# Enter a context with an instance of the API client
with revengai.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = revengai.FunctionsCoreApi(api_client)
    function_id = 56 # int | Function ID
    add_callee_input_body = revengai.AddCalleeInputBody() # AddCalleeInputBody | 

    try:
        # Add a callee to a function
        api_response = api_instance.add_function_callee(function_id, add_callee_input_body)
        print("The response of FunctionsCoreApi->add_function_callee:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling FunctionsCoreApi->add_function_callee: %s\n" % e)

Parameters

Name Type Description Notes
function_id int Function ID
add_callee_input_body AddCalleeInputBody

Return type

Dict[str, object]

Authorization

APIKey, bearerAuth

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json

HTTP response details

Status code Description Response headers
201 Created -
400 Bad Request -
403 Forbidden -
404 Not Found -
422 Unprocessable Entity -
500 Internal Server Error -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

add_user_string_to_function

Dict[str, object] add_user_string_to_function(function_id, add_user_string_to_function_input_body)

Add a user-provided string to a function.

Attaches a user-provided string to a function at the given virtual address. The string is stored with source USER and complements strings discovered automatically during analysis.

Error codes:

Example

  • Api Key Authentication (APIKey):
  • Bearer Authentication (bearerAuth):
import revengai
from revengai.models.add_user_string_to_function_input_body import AddUserStringToFunctionInputBody
from revengai.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://api.reveng.ai
# See configuration.py for a list of all supported configuration parameters.
configuration = revengai.Configuration(
    host = "https://api.reveng.ai"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure API key authorization: APIKey
configuration.api_key['APIKey'] = os.environ["API_KEY"]

# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['APIKey'] = 'Bearer'

# Configure Bearer authorization: bearerAuth
configuration = revengai.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)

# Enter a context with an instance of the API client
with revengai.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = revengai.FunctionsCoreApi(api_client)
    function_id = 56 # int | Function ID
    add_user_string_to_function_input_body = revengai.AddUserStringToFunctionInputBody() # AddUserStringToFunctionInputBody | 

    try:
        # Add a user-provided string to a function.
        api_response = api_instance.add_user_string_to_function(function_id, add_user_string_to_function_input_body)
        print("The response of FunctionsCoreApi->add_user_string_to_function:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling FunctionsCoreApi->add_user_string_to_function: %s\n" % e)

Parameters

Name Type Description Notes
function_id int Function ID
add_user_string_to_function_input_body AddUserStringToFunctionInputBody

Return type

Dict[str, object]

Authorization

APIKey, bearerAuth

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json

HTTP response details

Status code Description Response headers
201 Created -
403 Forbidden -
404 Not Found -
422 Unprocessable Entity -
500 Internal Server Error -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

ai_unstrip

AutoUnstripResponse ai_unstrip(analysis_id, ai_unstrip_request)

Performs matching and auto-unstrip for an analysis and its functions

Takes in the analysis ID, uses the functions ID's from it and settings to find the nearest function groups for each function that's within the system

Example

  • Api Key Authentication (APIKey):
  • Bearer Authentication (bearerAuth):
import revengai
from revengai.models.ai_unstrip_request import AiUnstripRequest
from revengai.models.auto_unstrip_response import AutoUnstripResponse
from revengai.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://api.reveng.ai
# See configuration.py for a list of all supported configuration parameters.
configuration = revengai.Configuration(
    host = "https://api.reveng.ai"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure API key authorization: APIKey
configuration.api_key['APIKey'] = os.environ["API_KEY"]

# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['APIKey'] = 'Bearer'

# Configure Bearer authorization: bearerAuth
configuration = revengai.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)

# Enter a context with an instance of the API client
with revengai.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = revengai.FunctionsCoreApi(api_client)
    analysis_id = 56 # int | 
    ai_unstrip_request = revengai.AiUnstripRequest() # AiUnstripRequest | 

    try:
        # Performs matching and auto-unstrip for an analysis and its functions
        api_response = api_instance.ai_unstrip(analysis_id, ai_unstrip_request)
        print("The response of FunctionsCoreApi->ai_unstrip:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling FunctionsCoreApi->ai_unstrip: %s\n" % e)

Parameters

Name Type Description Notes
analysis_id int
ai_unstrip_request AiUnstripRequest

Return type

AutoUnstripResponse

Authorization

APIKey, bearerAuth

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 Successful Response -
422 Invalid request parameters -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

analysis_function_matching

FunctionMatchingResponse analysis_function_matching(analysis_id, analysis_function_matching_request)

Perform matching for the functions of an analysis

Takes in an analysis id and settings and matches the nearest functions to the ones associated with it. Results can optionally be filtered by collection, binary, debug type or (other) function ids

Example

  • Api Key Authentication (APIKey):
  • Bearer Authentication (bearerAuth):
import revengai
from revengai.models.analysis_function_matching_request import AnalysisFunctionMatchingRequest
from revengai.models.function_matching_response import FunctionMatchingResponse
from revengai.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://api.reveng.ai
# See configuration.py for a list of all supported configuration parameters.
configuration = revengai.Configuration(
    host = "https://api.reveng.ai"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure API key authorization: APIKey
configuration.api_key['APIKey'] = os.environ["API_KEY"]

# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['APIKey'] = 'Bearer'

# Configure Bearer authorization: bearerAuth
configuration = revengai.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)

# Enter a context with an instance of the API client
with revengai.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = revengai.FunctionsCoreApi(api_client)
    analysis_id = 56 # int | 
    analysis_function_matching_request = revengai.AnalysisFunctionMatchingRequest() # AnalysisFunctionMatchingRequest | 

    try:
        # Perform matching for the functions of an analysis
        api_response = api_instance.analysis_function_matching(analysis_id, analysis_function_matching_request)
        print("The response of FunctionsCoreApi->analysis_function_matching:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling FunctionsCoreApi->analysis_function_matching: %s\n" % e)

Parameters

Name Type Description Notes
analysis_id int
analysis_function_matching_request AnalysisFunctionMatchingRequest

Return type

FunctionMatchingResponse

Authorization

APIKey, bearerAuth

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 Successful Response -
422 Invalid request parameters -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

auto_unstrip

AutoUnstripResponse auto_unstrip(analysis_id, auto_unstrip_request)

Performs matching and auto-unstrip for an analysis and its functions

Takes in the analysis ID, uses the functions ID's from it and settings to find the nearest function for each function that's within the system

Example

  • Api Key Authentication (APIKey):
  • Bearer Authentication (bearerAuth):
import revengai
from revengai.models.auto_unstrip_request import AutoUnstripRequest
from revengai.models.auto_unstrip_response import AutoUnstripResponse
from revengai.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://api.reveng.ai
# See configuration.py for a list of all supported configuration parameters.
configuration = revengai.Configuration(
    host = "https://api.reveng.ai"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure API key authorization: APIKey
configuration.api_key['APIKey'] = os.environ["API_KEY"]

# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['APIKey'] = 'Bearer'

# Configure Bearer authorization: bearerAuth
configuration = revengai.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)

# Enter a context with an instance of the API client
with revengai.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = revengai.FunctionsCoreApi(api_client)
    analysis_id = 56 # int | 
    auto_unstrip_request = revengai.AutoUnstripRequest() # AutoUnstripRequest | 

    try:
        # Performs matching and auto-unstrip for an analysis and its functions
        api_response = api_instance.auto_unstrip(analysis_id, auto_unstrip_request)
        print("The response of FunctionsCoreApi->auto_unstrip:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling FunctionsCoreApi->auto_unstrip: %s\n" % e)

Parameters

Name Type Description Notes
analysis_id int
auto_unstrip_request AutoUnstripRequest

Return type

AutoUnstripResponse

Authorization

APIKey, bearerAuth

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 Successful Response -
422 Invalid request parameters -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

batch_function_matching

FunctionMatchingResponse batch_function_matching(function_matching_request)

Perform function matching for an arbitrary batch of functions, binaries or collections

Takes in an input of functions ID's and settings and finds the nearest functions for each function that's within the system

Example

  • Api Key Authentication (APIKey):
  • Bearer Authentication (bearerAuth):
import revengai
from revengai.models.function_matching_request import FunctionMatchingRequest
from revengai.models.function_matching_response import FunctionMatchingResponse
from revengai.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://api.reveng.ai
# See configuration.py for a list of all supported configuration parameters.
configuration = revengai.Configuration(
    host = "https://api.reveng.ai"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure API key authorization: APIKey
configuration.api_key['APIKey'] = os.environ["API_KEY"]

# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['APIKey'] = 'Bearer'

# Configure Bearer authorization: bearerAuth
configuration = revengai.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)

# Enter a context with an instance of the API client
with revengai.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = revengai.FunctionsCoreApi(api_client)
    function_matching_request = revengai.FunctionMatchingRequest() # FunctionMatchingRequest | 

    try:
        # Perform function matching for an arbitrary batch of functions, binaries or collections
        api_response = api_instance.batch_function_matching(function_matching_request)
        print("The response of FunctionsCoreApi->batch_function_matching:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling FunctionsCoreApi->batch_function_matching: %s\n" % e)

Parameters

Name Type Description Notes
function_matching_request FunctionMatchingRequest

Return type

FunctionMatchingResponse

Authorization

APIKey, bearerAuth

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 Successful Response -
422 Invalid request parameters -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

cancel_ai_unstrip

AutoUnstripResponse cancel_ai_unstrip(analysis_id)

Cancels a running ai-unstrip

Takes in the analysis ID and cancels a running ai-unstrip operation

Example

  • Api Key Authentication (APIKey):
  • Bearer Authentication (bearerAuth):
import revengai
from revengai.models.auto_unstrip_response import AutoUnstripResponse
from revengai.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://api.reveng.ai
# See configuration.py for a list of all supported configuration parameters.
configuration = revengai.Configuration(
    host = "https://api.reveng.ai"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure API key authorization: APIKey
configuration.api_key['APIKey'] = os.environ["API_KEY"]

# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['APIKey'] = 'Bearer'

# Configure Bearer authorization: bearerAuth
configuration = revengai.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)

# Enter a context with an instance of the API client
with revengai.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = revengai.FunctionsCoreApi(api_client)
    analysis_id = 56 # int | 

    try:
        # Cancels a running ai-unstrip
        api_response = api_instance.cancel_ai_unstrip(analysis_id)
        print("The response of FunctionsCoreApi->cancel_ai_unstrip:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling FunctionsCoreApi->cancel_ai_unstrip: %s\n" % e)

Parameters

Name Type Description Notes
analysis_id int

Return type

AutoUnstripResponse

Authorization

APIKey, bearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 Successful Response -
422 Invalid request parameters -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

cancel_auto_unstrip

AutoUnstripResponse cancel_auto_unstrip(analysis_id)

Cancels a running auto-unstrip

Takes in the analysis ID and cancels a running auto-unstrip operation

Example

  • Api Key Authentication (APIKey):
  • Bearer Authentication (bearerAuth):
import revengai
from revengai.models.auto_unstrip_response import AutoUnstripResponse
from revengai.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://api.reveng.ai
# See configuration.py for a list of all supported configuration parameters.
configuration = revengai.Configuration(
    host = "https://api.reveng.ai"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure API key authorization: APIKey
configuration.api_key['APIKey'] = os.environ["API_KEY"]

# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['APIKey'] = 'Bearer'

# Configure Bearer authorization: bearerAuth
configuration = revengai.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)

# Enter a context with an instance of the API client
with revengai.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = revengai.FunctionsCoreApi(api_client)
    analysis_id = 56 # int | 

    try:
        # Cancels a running auto-unstrip
        api_response = api_instance.cancel_auto_unstrip(analysis_id)
        print("The response of FunctionsCoreApi->cancel_auto_unstrip:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling FunctionsCoreApi->cancel_auto_unstrip: %s\n" % e)

Parameters

Name Type Description Notes
analysis_id int

Return type

AutoUnstripResponse

Authorization

APIKey, bearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 Successful Response -
422 Invalid request parameters -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

get_analysis_strings

BaseResponseAnalysisStringsResponse get_analysis_strings(analysis_id, page=page, page_size=page_size, search=search, function_search=function_search, order_by=order_by, sort_order=sort_order)

Get string information found in the Analysis

Get string information found in the analysis

Example

  • Api Key Authentication (APIKey):
  • Bearer Authentication (bearerAuth):
import revengai
from revengai.models.base_response_analysis_strings_response import BaseResponseAnalysisStringsResponse
from revengai.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://api.reveng.ai
# See configuration.py for a list of all supported configuration parameters.
configuration = revengai.Configuration(
    host = "https://api.reveng.ai"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure API key authorization: APIKey
configuration.api_key['APIKey'] = os.environ["API_KEY"]

# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['APIKey'] = 'Bearer'

# Configure Bearer authorization: bearerAuth
configuration = revengai.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)

# Enter a context with an instance of the API client
with revengai.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = revengai.FunctionsCoreApi(api_client)
    analysis_id = 56 # int | 
    page = 1 # int | The page number to retrieve. (optional) (default to 1)
    page_size = 100 # int | Number of items per page. (optional) (default to 100)
    search = 'search_example' # str | Search is applied to string value (optional)
    function_search = 'function_search_example' # str | Search is applied to function names (optional)
    order_by = value # str | Order by field (optional) (default to value)
    sort_order = ASC # str | Sort order for the results (optional) (default to ASC)

    try:
        # Get string information found in the Analysis
        api_response = api_instance.get_analysis_strings(analysis_id, page=page, page_size=page_size, search=search, function_search=function_search, order_by=order_by, sort_order=sort_order)
        print("The response of FunctionsCoreApi->get_analysis_strings:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling FunctionsCoreApi->get_analysis_strings: %s\n" % e)

Parameters

Name Type Description Notes
analysis_id int
page int The page number to retrieve. [optional] [default to 1]
page_size int Number of items per page. [optional] [default to 100]
search str Search is applied to string value [optional]
function_search str Search is applied to function names [optional]
order_by str Order by field [optional] [default to value]
sort_order str Sort order for the results [optional] [default to ASC]

Return type

BaseResponseAnalysisStringsResponse

Authorization

APIKey, bearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 Successful Response -
422 Invalid request parameters -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

get_analysis_strings_status

BaseResponseAnalysisStringsStatusResponse get_analysis_strings_status(analysis_id)

Get string processing state for the Analysis

Get string processing state for the Analysis

Example

  • Api Key Authentication (APIKey):
  • Bearer Authentication (bearerAuth):
import revengai
from revengai.models.base_response_analysis_strings_status_response import BaseResponseAnalysisStringsStatusResponse
from revengai.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://api.reveng.ai
# See configuration.py for a list of all supported configuration parameters.
configuration = revengai.Configuration(
    host = "https://api.reveng.ai"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure API key authorization: APIKey
configuration.api_key['APIKey'] = os.environ["API_KEY"]

# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['APIKey'] = 'Bearer'

# Configure Bearer authorization: bearerAuth
configuration = revengai.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)

# Enter a context with an instance of the API client
with revengai.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = revengai.FunctionsCoreApi(api_client)
    analysis_id = 56 # int | 

    try:
        # Get string processing state for the Analysis
        api_response = api_instance.get_analysis_strings_status(analysis_id)
        print("The response of FunctionsCoreApi->get_analysis_strings_status:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling FunctionsCoreApi->get_analysis_strings_status: %s\n" % e)

Parameters

Name Type Description Notes
analysis_id int

Return type

BaseResponseAnalysisStringsStatusResponse

Authorization

APIKey, bearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 Successful Response -
422 Invalid request parameters -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

get_function_blocks

BaseResponseFunctionBlocksResponse get_function_blocks(function_id)

Get disassembly blocks related to the function

Get disassembly blocks related to the function

Example

  • Api Key Authentication (APIKey):
  • Bearer Authentication (bearerAuth):
import revengai
from revengai.models.base_response_function_blocks_response import BaseResponseFunctionBlocksResponse
from revengai.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://api.reveng.ai
# See configuration.py for a list of all supported configuration parameters.
configuration = revengai.Configuration(
    host = "https://api.reveng.ai"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure API key authorization: APIKey
configuration.api_key['APIKey'] = os.environ["API_KEY"]

# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['APIKey'] = 'Bearer'

# Configure Bearer authorization: bearerAuth
configuration = revengai.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)

# Enter a context with an instance of the API client
with revengai.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = revengai.FunctionsCoreApi(api_client)
    function_id = 56 # int | 

    try:
        # Get disassembly blocks related to the function
        api_response = api_instance.get_function_blocks(function_id)
        print("The response of FunctionsCoreApi->get_function_blocks:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling FunctionsCoreApi->get_function_blocks: %s\n" % e)

Parameters

Name Type Description Notes
function_id int

Return type

BaseResponseFunctionBlocksResponse

Authorization

APIKey, bearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 Successful Response -
422 Invalid request parameters -
404 Not Found -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

get_function_blocks_0

DisassemblyOutputBody get_function_blocks_0(function_id)

Get function disassembly

Returns the function's disassembly metadata (JSON blob containing basic blocks + local variables) along with parameter and return-type info.

Error codes:

Example

  • Api Key Authentication (APIKey):
  • Bearer Authentication (bearerAuth):
import revengai
from revengai.models.disassembly_output_body import DisassemblyOutputBody
from revengai.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://api.reveng.ai
# See configuration.py for a list of all supported configuration parameters.
configuration = revengai.Configuration(
    host = "https://api.reveng.ai"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure API key authorization: APIKey
configuration.api_key['APIKey'] = os.environ["API_KEY"]

# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['APIKey'] = 'Bearer'

# Configure Bearer authorization: bearerAuth
configuration = revengai.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)

# Enter a context with an instance of the API client
with revengai.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = revengai.FunctionsCoreApi(api_client)
    function_id = 56 # int | Function ID

    try:
        # Get function disassembly
        api_response = api_instance.get_function_blocks_0(function_id)
        print("The response of FunctionsCoreApi->get_function_blocks_0:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling FunctionsCoreApi->get_function_blocks_0: %s\n" % e)

Parameters

Name Type Description Notes
function_id int Function ID

Return type

DisassemblyOutputBody

Authorization

APIKey, bearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 OK -
403 Forbidden -
404 Not Found -
422 Unprocessable Entity -
500 Internal Server Error -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

get_function_callees_callers

BaseResponseCalleesCallerFunctionsResponse get_function_callees_callers(function_id)

Get list of functions that call or are called by the specified function

Example

  • Api Key Authentication (APIKey):
  • Bearer Authentication (bearerAuth):
import revengai
from revengai.models.base_response_callees_caller_functions_response import BaseResponseCalleesCallerFunctionsResponse
from revengai.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://api.reveng.ai
# See configuration.py for a list of all supported configuration parameters.
configuration = revengai.Configuration(
    host = "https://api.reveng.ai"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure API key authorization: APIKey
configuration.api_key['APIKey'] = os.environ["API_KEY"]

# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['APIKey'] = 'Bearer'

# Configure Bearer authorization: bearerAuth
configuration = revengai.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)

# Enter a context with an instance of the API client
with revengai.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = revengai.FunctionsCoreApi(api_client)
    function_id = 56 # int | 

    try:
        # Get list of functions that call or are called by the specified function
        api_response = api_instance.get_function_callees_callers(function_id)
        print("The response of FunctionsCoreApi->get_function_callees_callers:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling FunctionsCoreApi->get_function_callees_callers: %s\n" % e)

Parameters

Name Type Description Notes
function_id int

Return type

BaseResponseCalleesCallerFunctionsResponse

Authorization

APIKey, bearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 Successful Response -
422 Invalid request parameters -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

get_function_callees_callers_0

CallEdgesOutputBody get_function_callees_callers_0(function_id)

Get callees and callers for a function

Returns both the outgoing call edges (callees) and incoming call edges (callers) for a single function.

Error codes:

Example

  • Api Key Authentication (APIKey):
  • Bearer Authentication (bearerAuth):
import revengai
from revengai.models.call_edges_output_body import CallEdgesOutputBody
from revengai.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://api.reveng.ai
# See configuration.py for a list of all supported configuration parameters.
configuration = revengai.Configuration(
    host = "https://api.reveng.ai"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure API key authorization: APIKey
configuration.api_key['APIKey'] = os.environ["API_KEY"]

# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['APIKey'] = 'Bearer'

# Configure Bearer authorization: bearerAuth
configuration = revengai.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)

# Enter a context with an instance of the API client
with revengai.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = revengai.FunctionsCoreApi(api_client)
    function_id = 56 # int | Function ID

    try:
        # Get callees and callers for a function
        api_response = api_instance.get_function_callees_callers_0(function_id)
        print("The response of FunctionsCoreApi->get_function_callees_callers_0:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling FunctionsCoreApi->get_function_callees_callers_0: %s\n" % e)

Parameters

Name Type Description Notes
function_id int Function ID

Return type

CallEdgesOutputBody

Authorization

APIKey, bearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 OK -
403 Forbidden -
404 Not Found -
422 Unprocessable Entity -
500 Internal Server Error -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

get_function_callees_callers_bulk

BaseResponseListCalleesCallerFunctionsResponse get_function_callees_callers_bulk(function_ids)

Get list of functions that call or are called for a list of functions

Example

  • Api Key Authentication (APIKey):
  • Bearer Authentication (bearerAuth):
import revengai
from revengai.models.base_response_list_callees_caller_functions_response import BaseResponseListCalleesCallerFunctionsResponse
from revengai.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://api.reveng.ai
# See configuration.py for a list of all supported configuration parameters.
configuration = revengai.Configuration(
    host = "https://api.reveng.ai"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure API key authorization: APIKey
configuration.api_key['APIKey'] = os.environ["API_KEY"]

# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['APIKey'] = 'Bearer'

# Configure Bearer authorization: bearerAuth
configuration = revengai.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)

# Enter a context with an instance of the API client
with revengai.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = revengai.FunctionsCoreApi(api_client)
    function_ids = [56] # List[Optional[int]] | 

    try:
        # Get list of functions that call or are called for a list of functions
        api_response = api_instance.get_function_callees_callers_bulk(function_ids)
        print("The response of FunctionsCoreApi->get_function_callees_callers_bulk:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling FunctionsCoreApi->get_function_callees_callers_bulk: %s\n" % e)

Parameters

Name Type Description Notes
function_ids List[Optional[int]]

Return type

BaseResponseListCalleesCallerFunctionsResponse

Authorization

APIKey, bearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 Successful Response -
422 Invalid request parameters -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

get_function_capabilities

BaseResponseFunctionCapabilityResponse get_function_capabilities(function_id)

Retrieve a functions capabilities

Example

  • Api Key Authentication (APIKey):
  • Bearer Authentication (bearerAuth):
import revengai
from revengai.models.base_response_function_capability_response import BaseResponseFunctionCapabilityResponse
from revengai.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://api.reveng.ai
# See configuration.py for a list of all supported configuration parameters.
configuration = revengai.Configuration(
    host = "https://api.reveng.ai"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure API key authorization: APIKey
configuration.api_key['APIKey'] = os.environ["API_KEY"]

# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['APIKey'] = 'Bearer'

# Configure Bearer authorization: bearerAuth
configuration = revengai.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)

# Enter a context with an instance of the API client
with revengai.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = revengai.FunctionsCoreApi(api_client)
    function_id = 56 # int | 

    try:
        # Retrieve a functions capabilities
        api_response = api_instance.get_function_capabilities(function_id)
        print("The response of FunctionsCoreApi->get_function_capabilities:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling FunctionsCoreApi->get_function_capabilities: %s\n" % e)

Parameters

Name Type Description Notes
function_id int

Return type

BaseResponseFunctionCapabilityResponse

Authorization

APIKey, bearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 Successful Response -
422 Invalid request parameters -
404 Not Found -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

get_function_capabilities_0

CapabilitiesOutputBody get_function_capabilities_0(function_id)

Get capabilities for a function

Returns the capability findings (CAPA-style behaviour matches) associated with the given function.

Error codes:

Example

  • Api Key Authentication (APIKey):
  • Bearer Authentication (bearerAuth):
import revengai
from revengai.models.capabilities_output_body import CapabilitiesOutputBody
from revengai.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://api.reveng.ai
# See configuration.py for a list of all supported configuration parameters.
configuration = revengai.Configuration(
    host = "https://api.reveng.ai"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure API key authorization: APIKey
configuration.api_key['APIKey'] = os.environ["API_KEY"]

# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['APIKey'] = 'Bearer'

# Configure Bearer authorization: bearerAuth
configuration = revengai.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)

# Enter a context with an instance of the API client
with revengai.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = revengai.FunctionsCoreApi(api_client)
    function_id = 56 # int | Function ID

    try:
        # Get capabilities for a function
        api_response = api_instance.get_function_capabilities_0(function_id)
        print("The response of FunctionsCoreApi->get_function_capabilities_0:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling FunctionsCoreApi->get_function_capabilities_0: %s\n" % e)

Parameters

Name Type Description Notes
function_id int Function ID

Return type

CapabilitiesOutputBody

Authorization

APIKey, bearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 OK -
403 Forbidden -
404 Not Found -
422 Unprocessable Entity -
500 Internal Server Error -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

get_function_details

BaseResponseFunctionsDetailResponse get_function_details(function_id)

Get function details

Example

  • Api Key Authentication (APIKey):
  • Bearer Authentication (bearerAuth):
import revengai
from revengai.models.base_response_functions_detail_response import BaseResponseFunctionsDetailResponse
from revengai.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://api.reveng.ai
# See configuration.py for a list of all supported configuration parameters.
configuration = revengai.Configuration(
    host = "https://api.reveng.ai"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure API key authorization: APIKey
configuration.api_key['APIKey'] = os.environ["API_KEY"]

# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['APIKey'] = 'Bearer'

# Configure Bearer authorization: bearerAuth
configuration = revengai.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)

# Enter a context with an instance of the API client
with revengai.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = revengai.FunctionsCoreApi(api_client)
    function_id = 56 # int | 

    try:
        # Get function details
        api_response = api_instance.get_function_details(function_id)
        print("The response of FunctionsCoreApi->get_function_details:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling FunctionsCoreApi->get_function_details: %s\n" % e)

Parameters

Name Type Description Notes
function_id int

Return type

BaseResponseFunctionsDetailResponse

Authorization

APIKey, bearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 Successful Response -
422 Invalid request parameters -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

get_function_details_0

FunctionDetailsOutputBody get_function_details_0(function_id)

Get function details

Returns metadata for a single function — name, virtual address, size, debug status, binary it belongs to.

Error codes:

Example

  • Api Key Authentication (APIKey):
  • Bearer Authentication (bearerAuth):
import revengai
from revengai.models.function_details_output_body import FunctionDetailsOutputBody
from revengai.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://api.reveng.ai
# See configuration.py for a list of all supported configuration parameters.
configuration = revengai.Configuration(
    host = "https://api.reveng.ai"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure API key authorization: APIKey
configuration.api_key['APIKey'] = os.environ["API_KEY"]

# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['APIKey'] = 'Bearer'

# Configure Bearer authorization: bearerAuth
configuration = revengai.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)

# Enter a context with an instance of the API client
with revengai.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = revengai.FunctionsCoreApi(api_client)
    function_id = 56 # int | Function ID

    try:
        # Get function details
        api_response = api_instance.get_function_details_0(function_id)
        print("The response of FunctionsCoreApi->get_function_details_0:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling FunctionsCoreApi->get_function_details_0: %s\n" % e)

Parameters

Name Type Description Notes
function_id int Function ID

Return type

FunctionDetailsOutputBody

Authorization

APIKey, bearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 OK -
403 Forbidden -
404 Not Found -
422 Unprocessable Entity -
500 Internal Server Error -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

get_function_indirect_call_sites

IndirectCallSitesOutputBody get_function_indirect_call_sites(function_id)

Get indirect call sites for a function

Returns the function's indirect call instructions with their resolved call target.

Error codes:

Example

  • Api Key Authentication (APIKey):
  • Bearer Authentication (bearerAuth):
import revengai
from revengai.models.indirect_call_sites_output_body import IndirectCallSitesOutputBody
from revengai.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://api.reveng.ai
# See configuration.py for a list of all supported configuration parameters.
configuration = revengai.Configuration(
    host = "https://api.reveng.ai"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure API key authorization: APIKey
configuration.api_key['APIKey'] = os.environ["API_KEY"]

# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['APIKey'] = 'Bearer'

# Configure Bearer authorization: bearerAuth
configuration = revengai.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)

# Enter a context with an instance of the API client
with revengai.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = revengai.FunctionsCoreApi(api_client)
    function_id = 56 # int | Function ID

    try:
        # Get indirect call sites for a function
        api_response = api_instance.get_function_indirect_call_sites(function_id)
        print("The response of FunctionsCoreApi->get_function_indirect_call_sites:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling FunctionsCoreApi->get_function_indirect_call_sites: %s\n" % e)

Parameters

Name Type Description Notes
function_id int Function ID

Return type

IndirectCallSitesOutputBody

Authorization

APIKey, bearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 OK -
403 Forbidden -
404 Not Found -
422 Unprocessable Entity -
500 Internal Server Error -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

get_function_strings

BaseResponseFunctionStringsResponse get_function_strings(function_id, page=page, page_size=page_size, search=search)

Get string information found in the function

Get string information found in the function

Example

  • Api Key Authentication (APIKey):
  • Bearer Authentication (bearerAuth):
import revengai
from revengai.models.base_response_function_strings_response import BaseResponseFunctionStringsResponse
from revengai.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://api.reveng.ai
# See configuration.py for a list of all supported configuration parameters.
configuration = revengai.Configuration(
    host = "https://api.reveng.ai"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure API key authorization: APIKey
configuration.api_key['APIKey'] = os.environ["API_KEY"]

# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['APIKey'] = 'Bearer'

# Configure Bearer authorization: bearerAuth
configuration = revengai.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)

# Enter a context with an instance of the API client
with revengai.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = revengai.FunctionsCoreApi(api_client)
    function_id = 56 # int | 
    page = 1 # int | The page number to retrieve. (optional) (default to 1)
    page_size = 100 # int | Number of items per page. (optional) (default to 100)
    search = 'search_example' # str | Search is applied to string value (optional)

    try:
        # Get string information found in the function
        api_response = api_instance.get_function_strings(function_id, page=page, page_size=page_size, search=search)
        print("The response of FunctionsCoreApi->get_function_strings:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling FunctionsCoreApi->get_function_strings: %s\n" % e)

Parameters

Name Type Description Notes
function_id int
page int The page number to retrieve. [optional] [default to 1]
page_size int Number of items per page. [optional] [default to 100]
search str Search is applied to string value [optional]

Return type

BaseResponseFunctionStringsResponse

Authorization

APIKey, bearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 Successful Response -
422 Invalid request parameters -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

get_function_strings_0

ListFunctionStringsOutputBody get_function_strings_0(function_id, page=page, page_size=page_size, search=search)

List strings for a function.

Returns the strings discovered in a function. Supports value search and pagination.

Error codes:

Example

  • Api Key Authentication (APIKey):
  • Bearer Authentication (bearerAuth):
import revengai
from revengai.models.list_function_strings_output_body import ListFunctionStringsOutputBody
from revengai.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://api.reveng.ai
# See configuration.py for a list of all supported configuration parameters.
configuration = revengai.Configuration(
    host = "https://api.reveng.ai"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure API key authorization: APIKey
configuration.api_key['APIKey'] = os.environ["API_KEY"]

# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['APIKey'] = 'Bearer'

# Configure Bearer authorization: bearerAuth
configuration = revengai.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)

# Enter a context with an instance of the API client
with revengai.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = revengai.FunctionsCoreApi(api_client)
    function_id = 56 # int | Function ID
    page = 1 # int | Page number (1-indexed). (optional) (default to 1)
    page_size = 100 # int | Number of results per page. (optional) (default to 100)
    search = 'search_example' # str | Filter by string value (case-insensitive substring match). (optional)

    try:
        # List strings for a function.
        api_response = api_instance.get_function_strings_0(function_id, page=page, page_size=page_size, search=search)
        print("The response of FunctionsCoreApi->get_function_strings_0:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling FunctionsCoreApi->get_function_strings_0: %s\n" % e)

Parameters

Name Type Description Notes
function_id int Function ID
page int Page number (1-indexed). [optional] [default to 1]
page_size int Number of results per page. [optional] [default to 100]
search str Filter by string value (case-insensitive substring match). [optional]

Return type

ListFunctionStringsOutputBody

Authorization

APIKey, bearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 OK -
403 Forbidden -
404 Not Found -
422 Unprocessable Entity -
500 Internal Server Error -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

get_functions_callees_callers

CallEdgesOutputBody get_functions_callees_callers(function_ids)

Get callees and callers for many functions

Bulk variant — pass function_ids as a query parameter (comma-separated or repeated). Caller must have access to every supplied function or the whole request is rejected.

Error codes:

Example

  • Api Key Authentication (APIKey):
  • Bearer Authentication (bearerAuth):
import revengai
from revengai.models.call_edges_output_body import CallEdgesOutputBody
from revengai.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://api.reveng.ai
# See configuration.py for a list of all supported configuration parameters.
configuration = revengai.Configuration(
    host = "https://api.reveng.ai"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure API key authorization: APIKey
configuration.api_key['APIKey'] = os.environ["API_KEY"]

# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['APIKey'] = 'Bearer'

# Configure Bearer authorization: bearerAuth
configuration = revengai.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)

# Enter a context with an instance of the API client
with revengai.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = revengai.FunctionsCoreApi(api_client)
    function_ids = [56] # List[int] | Function IDs to fetch edges for.

    try:
        # Get callees and callers for many functions
        api_response = api_instance.get_functions_callees_callers(function_ids)
        print("The response of FunctionsCoreApi->get_functions_callees_callers:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling FunctionsCoreApi->get_functions_callees_callers: %s\n" % e)

Parameters

Name Type Description Notes
function_ids List[int] Function IDs to fetch edges for.

Return type

CallEdgesOutputBody

Authorization

APIKey, bearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 OK -
400 Bad Request -
403 Forbidden -
404 Not Found -
422 Unprocessable Entity -
500 Internal Server Error -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

get_functions_matches

GetMatchesOutputBody get_functions_matches(match_id=match_id, function_ids=function_ids)

Get function-matching results for an explicit set of functions

Returns the matches blob when the matching workflow has completed. While the workflow is in progress this endpoint returns the current status with no matches; use /matches/status to poll progress.

Error codes:

Example

  • Api Key Authentication (APIKey):
  • Bearer Authentication (bearerAuth):
import revengai
from revengai.models.get_matches_output_body import GetMatchesOutputBody
from revengai.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://api.reveng.ai
# See configuration.py for a list of all supported configuration parameters.
configuration = revengai.Configuration(
    host = "https://api.reveng.ai"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure API key authorization: APIKey
configuration.api_key['APIKey'] = os.environ["API_KEY"]

# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['APIKey'] = 'Bearer'

# Configure Bearer authorization: bearerAuth
configuration = revengai.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)

# Enter a context with an instance of the API client
with revengai.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = revengai.FunctionsCoreApi(api_client)
    match_id = 'match_id_example' # str | Opaque token from a start-matching response. When supplied, returns that specific run instead of the latest. (optional)
    function_ids = [56] # List[int] | Source function IDs whose matches to fetch. Required unless match_id is supplied. (optional)

    try:
        # Get function-matching results for an explicit set of functions
        api_response = api_instance.get_functions_matches(match_id=match_id, function_ids=function_ids)
        print("The response of FunctionsCoreApi->get_functions_matches:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling FunctionsCoreApi->get_functions_matches: %s\n" % e)

Parameters

Name Type Description Notes
match_id str Opaque token from a start-matching response. When supplied, returns that specific run instead of the latest. [optional]
function_ids List[int] Source function IDs whose matches to fetch. Required unless match_id is supplied. [optional]

Return type

GetMatchesOutputBody

Authorization

APIKey, bearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 OK -
400 Bad Request -
403 Forbidden -
404 Not Found -
422 Unprocessable Entity -
500 Internal Server Error -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

get_functions_matching_status

GetMatchesStatusOutputBody get_functions_matching_status(match_id=match_id, function_ids=function_ids)

Get function-matching status for an explicit set of functions

Returns the matching workflow's current status for the supplied function IDs. Does not include the matches blob — use GET /matches for that.

Error codes:

Example

  • Api Key Authentication (APIKey):
  • Bearer Authentication (bearerAuth):
import revengai
from revengai.models.get_matches_status_output_body import GetMatchesStatusOutputBody
from revengai.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://api.reveng.ai
# See configuration.py for a list of all supported configuration parameters.
configuration = revengai.Configuration(
    host = "https://api.reveng.ai"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure API key authorization: APIKey
configuration.api_key['APIKey'] = os.environ["API_KEY"]

# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['APIKey'] = 'Bearer'

# Configure Bearer authorization: bearerAuth
configuration = revengai.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)

# Enter a context with an instance of the API client
with revengai.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = revengai.FunctionsCoreApi(api_client)
    match_id = 'match_id_example' # str | Opaque token from a start-matching response. When supplied, returns that specific run instead of the latest. (optional)
    function_ids = [56] # List[int] | Source function IDs whose matches to fetch. Required unless match_id is supplied. (optional)

    try:
        # Get function-matching status for an explicit set of functions
        api_response = api_instance.get_functions_matching_status(match_id=match_id, function_ids=function_ids)
        print("The response of FunctionsCoreApi->get_functions_matching_status:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling FunctionsCoreApi->get_functions_matching_status: %s\n" % e)

Parameters

Name Type Description Notes
match_id str Opaque token from a start-matching response. When supplied, returns that specific run instead of the latest. [optional]
function_ids List[int] Source function IDs whose matches to fetch. Required unless match_id is supplied. [optional]

Return type

GetMatchesStatusOutputBody

Authorization

APIKey, bearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 OK -
400 Bad Request -
403 Forbidden -
404 Not Found -
422 Unprocessable Entity -
500 Internal Server Error -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

get_imported_function

ImportedFunctionDetailOutputBody get_imported_function(analysis_id, imported_function_id)

Get an imported function with its callers

Returns a single imported symbol plus the internal functions that call it, resolved via the import's PLT/stub addresses within the binary. Answers "which functions call free?" for binary navigation.

Error codes:

Example

  • Api Key Authentication (APIKey):
  • Bearer Authentication (bearerAuth):
import revengai
from revengai.models.imported_function_detail_output_body import ImportedFunctionDetailOutputBody
from revengai.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://api.reveng.ai
# See configuration.py for a list of all supported configuration parameters.
configuration = revengai.Configuration(
    host = "https://api.reveng.ai"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure API key authorization: APIKey
configuration.api_key['APIKey'] = os.environ["API_KEY"]

# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['APIKey'] = 'Bearer'

# Configure Bearer authorization: bearerAuth
configuration = revengai.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)

# Enter a context with an instance of the API client
with revengai.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = revengai.FunctionsCoreApi(api_client)
    analysis_id = 56 # int | Analysis ID
    imported_function_id = 56 # int | Imported function ID

    try:
        # Get an imported function with its callers
        api_response = api_instance.get_imported_function(analysis_id, imported_function_id)
        print("The response of FunctionsCoreApi->get_imported_function:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling FunctionsCoreApi->get_imported_function: %s\n" % e)

Parameters

Name Type Description Notes
analysis_id int Analysis ID
imported_function_id int Imported function ID

Return type

ImportedFunctionDetailOutputBody

Authorization

APIKey, bearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 OK -
403 Forbidden -
404 Not Found -
422 Unprocessable Entity -
500 Internal Server Error -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

list_analysis_functions

ListAnalysisFunctionsOutputBody list_analysis_functions(analysis_id, offset=offset, limit=limit)

List functions in an analysis

Returns a paginated list of functions belonging to the analysis. total_count is the full population size, ignoring pagination.

Error codes:

Example

  • Api Key Authentication (APIKey):
  • Bearer Authentication (bearerAuth):
import revengai
from revengai.models.list_analysis_functions_output_body import ListAnalysisFunctionsOutputBody
from revengai.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://api.reveng.ai
# See configuration.py for a list of all supported configuration parameters.
configuration = revengai.Configuration(
    host = "https://api.reveng.ai"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure API key authorization: APIKey
configuration.api_key['APIKey'] = os.environ["API_KEY"]

# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['APIKey'] = 'Bearer'

# Configure Bearer authorization: bearerAuth
configuration = revengai.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)

# Enter a context with an instance of the API client
with revengai.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = revengai.FunctionsCoreApi(api_client)
    analysis_id = 56 # int | Analysis ID
    offset = 56 # int | Pagination offset. Defaults to 0. (optional)
    limit = 56 # int | Page size. Defaults to 100. (optional)

    try:
        # List functions in an analysis
        api_response = api_instance.list_analysis_functions(analysis_id, offset=offset, limit=limit)
        print("The response of FunctionsCoreApi->list_analysis_functions:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling FunctionsCoreApi->list_analysis_functions: %s\n" % e)

Parameters

Name Type Description Notes
analysis_id int Analysis ID
offset int Pagination offset. Defaults to 0. [optional]
limit int Page size. Defaults to 100. [optional]

Return type

ListAnalysisFunctionsOutputBody

Authorization

APIKey, bearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 OK -
403 Forbidden -
404 Not Found -
422 Unprocessable Entity -
500 Internal Server Error -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

list_imported_functions

ListImportedFunctionsOutputBody list_imported_functions(analysis_id, offset=offset, limit=limit)

List imported functions in an analysis

Returns a paginated list of external/imported symbols (e.g. libc's free) linked by the analysis's binary. These are display-only: they carry no embeddings, cannot be renamed, and never participate in match/diff. total_count is the full population size, ignoring pagination.

Error codes:

Example

  • Api Key Authentication (APIKey):
  • Bearer Authentication (bearerAuth):
import revengai
from revengai.models.list_imported_functions_output_body import ListImportedFunctionsOutputBody
from revengai.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://api.reveng.ai
# See configuration.py for a list of all supported configuration parameters.
configuration = revengai.Configuration(
    host = "https://api.reveng.ai"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure API key authorization: APIKey
configuration.api_key['APIKey'] = os.environ["API_KEY"]

# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['APIKey'] = 'Bearer'

# Configure Bearer authorization: bearerAuth
configuration = revengai.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)

# Enter a context with an instance of the API client
with revengai.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = revengai.FunctionsCoreApi(api_client)
    analysis_id = 56 # int | Analysis ID
    offset = 56 # int | Pagination offset. Defaults to 0. (optional)
    limit = 56 # int | Page size. Defaults to 100. (optional)

    try:
        # List imported functions in an analysis
        api_response = api_instance.list_imported_functions(analysis_id, offset=offset, limit=limit)
        print("The response of FunctionsCoreApi->list_imported_functions:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling FunctionsCoreApi->list_imported_functions: %s\n" % e)

Parameters

Name Type Description Notes
analysis_id int Analysis ID
offset int Pagination offset. Defaults to 0. [optional]
limit int Page size. Defaults to 100. [optional]

Return type

ListImportedFunctionsOutputBody

Authorization

APIKey, bearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 OK -
403 Forbidden -
404 Not Found -
422 Unprocessable Entity -
500 Internal Server Error -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

start_functions_matching

StartMatchingOutputBody start_functions_matching(start_matching_for_functions_input_body)

Start function matching for an explicit set of functions

Dispatches the function-matching workflow against the provided function IDs. Returns immediately. Poll the status endpoint for progress; fetch results from the matches endpoint when status=COMPLETED.

Error codes:

Example

  • Api Key Authentication (APIKey):
  • Bearer Authentication (bearerAuth):
import revengai
from revengai.models.start_matching_for_functions_input_body import StartMatchingForFunctionsInputBody
from revengai.models.start_matching_output_body import StartMatchingOutputBody
from revengai.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://api.reveng.ai
# See configuration.py for a list of all supported configuration parameters.
configuration = revengai.Configuration(
    host = "https://api.reveng.ai"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure API key authorization: APIKey
configuration.api_key['APIKey'] = os.environ["API_KEY"]

# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['APIKey'] = 'Bearer'

# Configure Bearer authorization: bearerAuth
configuration = revengai.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)

# Enter a context with an instance of the API client
with revengai.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = revengai.FunctionsCoreApi(api_client)
    start_matching_for_functions_input_body = revengai.StartMatchingForFunctionsInputBody() # StartMatchingForFunctionsInputBody | 

    try:
        # Start function matching for an explicit set of functions
        api_response = api_instance.start_functions_matching(start_matching_for_functions_input_body)
        print("The response of FunctionsCoreApi->start_functions_matching:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling FunctionsCoreApi->start_functions_matching: %s\n" % e)

Parameters

Name Type Description Notes
start_matching_for_functions_input_body StartMatchingForFunctionsInputBody

Return type

StartMatchingOutputBody

Authorization

APIKey, bearerAuth

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json

HTTP response details

Status code Description Response headers
202 Accepted -
400 Bad Request -
403 Forbidden -
404 Not Found -
422 Unprocessable Entity -
500 Internal Server Error -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

v3_canonicalize_function_names

CanonicalizeNamesOutputBody v3_canonicalize_function_names(canonicalize_names_input_body)

Canonicalize a batch of function names

Accepts up to 25 raw function names and returns their canonical forms in the same order. A name with no canonical form is returned unchanged.

Error codes:

Example

  • Api Key Authentication (APIKey):
  • Bearer Authentication (bearerAuth):
import revengai
from revengai.models.canonicalize_names_input_body import CanonicalizeNamesInputBody
from revengai.models.canonicalize_names_output_body import CanonicalizeNamesOutputBody
from revengai.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://api.reveng.ai
# See configuration.py for a list of all supported configuration parameters.
configuration = revengai.Configuration(
    host = "https://api.reveng.ai"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure API key authorization: APIKey
configuration.api_key['APIKey'] = os.environ["API_KEY"]

# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['APIKey'] = 'Bearer'

# Configure Bearer authorization: bearerAuth
configuration = revengai.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)

# Enter a context with an instance of the API client
with revengai.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = revengai.FunctionsCoreApi(api_client)
    canonicalize_names_input_body = revengai.CanonicalizeNamesInputBody() # CanonicalizeNamesInputBody | 

    try:
        # Canonicalize a batch of function names
        api_response = api_instance.v3_canonicalize_function_names(canonicalize_names_input_body)
        print("The response of FunctionsCoreApi->v3_canonicalize_function_names:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling FunctionsCoreApi->v3_canonicalize_function_names: %s\n" % e)

Parameters

Name Type Description Notes
canonicalize_names_input_body CanonicalizeNamesInputBody

Return type

CanonicalizeNamesOutputBody

Authorization

APIKey, bearerAuth

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 OK -
400 Bad Request -
422 Unprocessable Entity -
500 Internal Server Error -
503 Service Unavailable -

[Back to top] [Back to API list] [Back to Model list] [Back to README]