Skip to content
JL2210 edited this page Aug 14, 2020 · 10 revisions

Let's setup IDA so that we can start looking through the MCPE code.

Setting up IDA

  • TODO: find working IDA or alternative

After you have downloaded this, grab MCPE's library from an apk:

  • Extract the apk using Winrar or 7-zip. If all else fails just open the apk as a zip
  • Navigate to lib/armeabi-v7a, and extract the file libminecraftpe.so from here.

After you install and open IDA, you will see this window: this window

Untick "Display at startup". Now select Go. When you come to the main window, drag and drop libminecraftpe.so into the window. You will get this dialog:

popup

Click the drop down menu that reads "MetaPC (disassemble all opcodes) [metapc]". Select the option "ARM Little-endian [ARM]", then click the "Set" button. Click "OK".

You may get a popup requesting you to switch to proximity mode. I just select No since this mode is not easy to read.

proximity-view-warning

Now wait a few minutes for IDA to parse the executable. The amount of time this takes depends on the speed of your computer. The output at the bottom will notify you on completion:
finished

First thing's first, let's switch to graph mode since it's easier to read. Click anywhere inside the assembly window and press the space bar. You should switch to a view that looks like this:
graph-view

Let's also click the label on the functions window to sort the names of the functions in alphabetical order.
functions

Clone this wiki locally