shellcode updates
improve parsing program header and implement ELF.search()