Well it's interesting that you've gone with a binary recompilation approach. How do you ensure that, statically, for any given edit, you reposition all the jump targets correctly? How do you deal with the difficulty of disassembly reducing to the halting problem?

On Fri, Oct 23, 2015 at 4:59 PM, Shuai Wang <wangshuai901@gmail.com> wrote:
Hi guys,

I am glad that you are interested in our work!! 

Actually this project starts over 1.5 years ago, and I believe at that time, BAP (version 0.7 I believe?) is still a research prototype..

I choose to implement from the stretch is because I want to have a nice tool for my own research projects, also I can have an opportunity
to learn OCaml... :)

Yes, I definitely would like to unite our efforts!! 

Best,
Shuai




On Fri, Oct 23, 2015 at 1:30 PM, Ivan Gotovchits <ivg@ieee.org> wrote:
Hi Shuai,

Nice work! But I'm curious, why didn't you use [bap][1] as a disassembler? 

Do you know, that we have a low-level interface to disassembling, like [linear_sweep][2] or even
lower [Disasm_expert.Basic][3] interface, that can disassemble on instruction level granularity.

It will be very interesting, if we can unite our efforts.

Best wishes,
Ivan Gotovchits





On Fri, Oct 23, 2015 at 1:05 PM, Shuai Wang <wangshuai901@gmail.com> wrote:
Dear List,

I’m glad to announce the first release of Uroboros:  an infrastructure for reassembleable disassembling and transformation.

You can find the code here: https://github.com/s3team/uroboros 
You can find our research paper which describes the core technique implemented in Uroboros here: 

We will provide a project home page, as well as more detailed documents in the near future.  Issues and pull requests welcomed.

Happy hacking!

Sincerely,
Shuai