Skip to content
This repository has been archived by the owner on Mar 21, 2024. It is now read-only.

Unofficial implementation of asm2vec using pytorch ( with GPU acceleration )

License

Notifications You must be signed in to change notification settings

wandera/asm2vec-pytorch

 
 

Repository files navigation

asm2vec-pytorch

release 1.0.3 mit python

Unofficial implementation of asm2vec using pytorch ( with GPU acceleration )
The details of the model can be found in the original paper: (sp'19) Asm2Vec: Boosting Static Representation Robustness for Binary Clone Search against Code Obfuscation and Compiler Optimization

Requirements

  • python >= 3.10
  • radare2
  • Packages listed in requirements.txt

Install

pip install -r requirements.txt && 
python setup.py install

Benchmark

An implementation already exists here: Lancern/asm2vec
Following is the benchmark of training 1000 functions in 1 epoch.

Implementation Time (s)
Lancern/asm2vec 202.23
oalieno/asm2vec-pytorch (with CPU) 9.11
oalieno/asm2vec-pytorch (with GPU) 0.97

Get Started

TODO - update this with description about to how use etc

Tests

Run test suite

  • Run all tests: python -m unittest discover -v

  • Run a certain module's tests: python -m unittest -v test.test_binary_to_asm

  • Run a certain test class: python -m unittest -v test.test_binary_to_asm.TestBinaryToAsm

  • Run a certain test method:

    python -m unittest -v test.test_binary_to_asm.TestBinaryToAsm.test_sha3

Coverage

  • Create report: coverage run -m unittest discover -v
  • Read report: coverage report -m

About

Unofficial implementation of asm2vec using pytorch ( with GPU acceleration )

Topics

Resources

License

Security policy

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 99.4%
  • Dockerfile 0.6%