[unicorn-engine] Re: Using unicorn to replace houdini on Android

  • From: Michael Goffioul <michael.goffioul@xxxxxxxxx>
  • To: unicorn-engine@xxxxxxxxxxxxx
  • Date: Tue, 22 Oct 2019 07:19:10 -0400

Although I'm interested in the project, I don't think I have enough
expertise to do it on my own. So it would help to get guidance and
contributions to build the initial skeleton/plumbing.

I've looked at it more closely yesterday. First thing was to compile the
unicorn library for Android (I limited emulation to ARM, as that's the only
thing I'm interested in), compile the ARM samples and run them on the
target platform. This seems to work.

Then I looked at the AndroidNativeEmu project, as it seems to do partly
what I want to achieve. I'm thinking about re-using some concepts from it
and implementing them in C++ (also found the elfio C++ library, which could
simplify loading and processing binaries). The required bridge interface is
defined here:
https://android.googlesource.com/platform/system/core/+/refs/tags/android-10.0.0_r6/libnativebridge/include/nativebridge/native_bridge.h#172

The core parts are:
- loading a shared library (loading deps, relocations...)
- building trampoline stubs for a given function

Let me know if you're interested.

Michael.


On Tue, Oct 22, 2019 at 4:11 AM Nguyen Anh Quynh <aquynh@xxxxxxxxx> wrote:

interesting, but what do you mean by "help kickstarting the project"?

Thanks,
Quynh

http://www.keystone-engine.org
http://www.capstone-engine.org
http://www.unicorn-engine.org



On Tue, Oct 22, 2019 at 4:20 AM Michael Goffioul
<michael.goffioul@xxxxxxxxx> wrote:

Hi,

I'm working with the android-x86 project and I'm wondering whether you
guys think the Unicorn engine could be used to replace the houdini
ARM-to-x86 translation from Intel? Houdini is proprietary and not available
publicly. If you think it's possible, would you be willing to help
kickstarting the project?

Thanks,
Michael.



Other related posts: