title: How to find the main function's entry point of elf executable file without any symbolic information?
body: <p>I developed a small cpp program on platform of Ubuntu-Linux 11.10.
  Now I want to reverse engineer it. I am beginner. <em>I use such tools: GDB 7.0, hte editor, hexeditor</em>.</p>
  
  <p>For the first time I made it pretty easy. With help of symbolic information I founded the address of main function and made everything I needed.
  Then I striped (<code>--strip-all</code>) executable elf-file and I have some problems. 
  I know that <code>main</code> function starts from 0x8960 in this program.
  But I haven't any idea how should I find this point without this knowledge.
  I tried debug my program step by step with gdb but it goes into  <code>__libc_start_main</code>
  then into the <code>ld-linux.so.3</code> (so, it finds and loads the shared libraries needed by a program). I debugged it about 10 minutes. Of course, may be in 20 minutes I can reach the main function's entry point, but, it seems, that more easy way has to exist.</p>
  
  <p>What should I do to find the <code>main</code> function's entry point without any symbolic info?
  Could you advise me some good books/sites/other_sources from reverse engineering of elf-files with help of gdb?
  Any help would be appreciated.</p>