Partialy cleaned up code in disassambly.py
Some small fixes and refactoring.
Added binary search to backwards disassembler.
This is very usefull when negative offset is out of bounds. Now
we can find valid memory and start analysis much faster.