I am currently reverse engineering a small native library from an Android Phone. I have the .so file in x86, ARM and some others but I decided to take the x86 because it's probably the easiest to disassemble.
I have manually disassembled it and slowly see what it's doing but then I ran into a problem. I tried different disassemblers and they sometimes give unconsistent results. There are sometimes very weird instructions that don't make any sense, especially with the LEA command. So I thought I can manually look up how the bytes for that instruction are encoded and get my own correct solution. Sadly I haven't found any description how native bytecode looks and is encoded. There are many large databases for the Opcodes but they just give a description and not how the bytecode for it is encoded. Maybe I have searched the wrong terms but I would be glad if you could link me something more detailed so I can verify the instructions by hand when they seem obscure.
Thanks in advance, SkryptX