AN UNASSEMBLER DESIGN FOR THE INTEL PROCESSORS
Journal Name:
- Gazi Üniversitesi Mühendislik-Mimarlık Fakültesi Dergisi
Keywords (Original Language):
Author Name | University of Author |
---|---|
Abstract (2. Language):
Software reverse engineering is a discipline of generating the system of abstracts and design information by
analyzing the effects, functions, behaviors and documents of the software codes on hardware components.
Assembler, unassembler, virtual simulators and debuggers can be listed as software reverse engineering tools. In
this study, an unassembler application is developed for translating various-length machine codes, which belong
to Intel microprocessor instruction set, into the symbolic form of the machine language. This application is
designed both for 32-bit Intel microprocessor architectures while it can also be used for compilers. It is an open
source software with the capabilities of translating table-based in-line codes and offering a certain hierarchy for
the procedure. In addition, updating the software is also possible for future considerations. With its nature of
working both as an assembler and an unassembler, this software brings a different perspective and depth to the
existing table-based unassembler applications which are only used for certification and description.
Bookmark/Search this post with
Abstract (Original Language):
Yazılım tersine mühendisliği; yazılım kodlarının donanım bileşenleri üzerindeki etkilerini, işlevlerini, davranış
ve belgelerini analiz ederek sistem soyutlarını ve tasarım bilgilerini oluşturan bir tersine mühendislik disiplinidir.
Çevirici (assembler), tersine çevirici (unassembler), sanal simülatörler ve hata ayıklayıcılar (debugger) birer yazılım
tersine mühendislik araçlarıdır. Bu çalışmada, Intel mikroişlemci komut kümesine ait farklı uzunluklardaki
makine kodlarını sembolik dile dönüştüren bir tersine çevirici uygulaması geliştirilmiştir. Bu uygulama, 32-bitlik
Intel işlemci mimarisinde kullanılan, aynı zamanda derleyicilere yönelik, sembolik dilden makine kodlarına
çevrimde, güncellenebilen ve belli bir hiyerarşi sunan açık kaynak kodlu, tablo tabanlı satır-içi kod çevrimi
yapabilen bir yazılımdır. Hem assembler hem de unassembler olarak çalışan bu yazılım, sadece belgelendirme ve
açıklama mahiyetindeki mevcut tablo tabanlı unassembler uygulamalarına farklı bir bakış açısı ve derinlik
getirmiştir.
FULL TEXT (PDF):
- 1