computer architecture, file structure, assembly and c programming language, reverse engineering and exploit development