All Projects → endeav0r → bt

endeav0r / bt

Licence: MIT License
binary toolkit

Programming Languages

c
50402 projects - #5 most used programming language
Makefile
30231 projects

Projects that are alternatives of or similar to bt

tweetsOLAPing
implementing an end-to-end tweets ETL/Analysis pipeline.
Stars: ✭ 24 (+100%)
Mutual labels:  analysis
xbpch
xarray interface for bpch files
Stars: ✭ 17 (+41.67%)
Mutual labels:  analysis
uber data
Uber web interface crawler / scraper - Convert the trips table into a CSV file
Stars: ✭ 40 (+233.33%)
Mutual labels:  analysis
yarrow
[yarrow] JVMCI based optimizing compiler for HotSpot VM
Stars: ✭ 21 (+75%)
Mutual labels:  jit
snorkeling
Extracting biomedical relationships from literature with Snorkel 🏊
Stars: ✭ 56 (+366.67%)
Mutual labels:  analysis
KInspector
KInspector is an application for analyzing health, performance and security of your Kentico solution.
Stars: ✭ 54 (+350%)
Mutual labels:  analysis
hawk
Collection of the tools for the efficient network analysis and modelling.
Stars: ✭ 15 (+25%)
Mutual labels:  analysis
vuex-analysis
vuex 2.0 源码解读
Stars: ✭ 27 (+125%)
Mutual labels:  analysis
ips-bph-framework
BLACKPHENIX is an open source malware analysis automation framework composed of services, scripts, plug-ins, and tools and is based on a Command-and-Control (C&C) architecture
Stars: ✭ 21 (+75%)
Mutual labels:  analysis
page-counter
基于Serverless开发的的极简网页计数器,支持基于Hexo、Jekyll、Octopress、ReactJS、VueJS等框架开发的博客、网站、中后台等任何应用。
Stars: ✭ 29 (+141.67%)
Mutual labels:  analysis
RDPlot
Tool for plotting rd curves from output of video coding test model software
Stars: ✭ 22 (+83.33%)
Mutual labels:  analysis
keen-sdk-net
A .NET SDK for the Keen IO API
Stars: ✭ 35 (+191.67%)
Mutual labels:  analysis
mysql-xplain-xplain
🐭 Explain Explainer for MySQL Queries.
Stars: ✭ 51 (+325%)
Mutual labels:  analysis
keen-analysis.js
A light JavaScript client for Keen
Stars: ✭ 40 (+233.33%)
Mutual labels:  analysis
archaeopteryx-js
Archaeopteryx.js is a software tool for the visualization and analysis of highly annotated phylogenetic trees.
Stars: ✭ 27 (+125%)
Mutual labels:  analysis
dmr c
dmr_C is a C parser and JIT compiler with LLVM, Eclipse OMR and NanoJIT backends
Stars: ✭ 45 (+275%)
Mutual labels:  jit
tailpress
A Tailwind CSS enabled Underscores theme
Stars: ✭ 60 (+400%)
Mutual labels:  jit
progressivis
Progressive Analytics and Visualization
Stars: ✭ 42 (+250%)
Mutual labels:  analysis
fit
Fusion ICA Toolbox (MATLAB)
Stars: ✭ 13 (+8.33%)
Mutual labels:  analysis
RNAseq titration results
Cross-platform normalization enables machine learning model training on microarray and RNA-seq data simultaneously
Stars: ✭ 22 (+83.33%)
Mutual labels:  analysis

Binary Toolkit

Binary Toolkit is my latest formal binary analysis framework. For the moment, I am working on ensuring the IR is clean and functional, and building out the basic components for performing analysis.

ARM

Working on translating ARM. Current instructions as of 03APR2017:

  • ADC
  • ADD

Should I care?

Not yet. If things work out well, I will begin Semantic Versioning. If you see an 0.1 release, that's the time to begin caring.

One IR for everything

BT's IR should be:

  • Usable for multiple tasks, such as jit recompilation across architectures, analysis, translation to SMTLIB2, etc.
  • Easily extensible, so that additional analysis can be easily, "Tacked on," without requiring hacking of the original framework.
  • Implemented in C, and then interacted with through scripting engines. While I have originally used lua for scripting analysis, I am leaning towards duktape and guile for this project.

Some decisions evident now towards this effect are:

  • A clean object-oriented implementation in C, with basic data structures, based off that which I created during (https://github.com/endeav0r/rdis).
  • Arithmetic operations operate over operands of the same bit-width. Truncate, zero-extend, and sign-extend are used extensively.
  • All reads and writes are 8-bytes, and read/writes of a larger site are expanded during translation. (This may change because it's super annoying)
  • No explicit definition of a target architecture is required for JIT. JIT will just run.

What works

What to expect

This is a freetime hacking project of mine. I'm not sure where it will lead, but if results look promising I will pursue documentation.

If I publish translators from real architectures, those translators will be most likely implemented on top of capstone.

Other documents

http://tfpwn.com/binary_translation.pdf

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].