Georgia Tech's Reverse Engineering Group


/* Reverse engineer this code by clicking on a pointer */
/* Revision History: Last changed 2001-4-30 */

/* Author: spencer@cc.gatech.edu */

#include <stdio.h>
#include <stdlib.h>

extern char *Reverse_Engineering_Bibliography[];
extern char *Glossary_of_Reverse_Engineering_Terms[];
extern char *Introductory_Readings_on_Reverse_Engineering[];
extern char *Powerpoint_Tutorial_on_Program_Reading[];

static char **newsgroup;  /* Local access only */
static char **papers;     /* Written by Georgia Tech authors */
static char **tools;      /* Local access only */

main()
{
    enum { ACADEMIC, COMMERCIAL, GOVERNMENT, OTHER, TOOLS } interest;
    char *faculty[] = {
        "Gregory Abowd",
        "Mary Jean Harrold",
        "Sham Navathe",
        "Spencer Rugaber",
        "John Stasko",
        "Linda Wills"
    };    char *students[] = {        "Chris Parnin",        "Lex Spoon",        "Bob Waters",        "David Zook"    };    char *alumi[] = {        "Richard Clayton",        "Jean-Marc Debaud",        "Margaret Francel",        "Dean Jerding",        "Scott McCrickard",        "Melody Moore",        "Terry Shikano",        "Kurt Stirewalt"    };    char *projects[] = {        "DARE",        "GRASPR",
        "Interleaving Patterns",
        "INTERLEAVING",
        "MORALE",
        "TRANSOPEN",
        "User_Interface_Migration"
    };

    printf("!dlroW ,olleH\n");

    while (still_interested)
        switch (interest) {
            case ACADEMIC:
                U_of_Aberdeen();
                U_of_Amsterdam();
                U_of_Bern();
                U_of_British_Columbia();
                Butler_University();
                U_of_California_at_San_Diego();
                U_of_Durham();
                École_Polytechnique_de_Montréal();
                U_of_Edinburgh();
                University_of_Karlsruhe();
                Loyola_University();
                U_of_Oregon();
                Oxford_U();
                University_of_Paris8();
                Pontificia_Universidade_Catolica_do_Rio_de_Janeiro();
                Queens_University();
                U_of_Queensland();
                U_of_Southwestern_Louisiana();
                U_of_Stuttgart();
                Tampere_University();
                Virginia_Commonwealth_University();
                U_of_Wisconsin();
                break;
            case COMMERCIAL:
                Bell_Labs();
Headway Software();
                Imagix();
                Knowledge_Software();
                McCabe_and_Associates();
                Microsoft();
                Phoenix_Software_Technologists();
                Reasoning_Systems();
                Semantic_Designs();
                Siber_Systems();
                Software_Migrations();
                Spectra_Research();
                Telcordia();
                break;
            case GOVERNMENT:
                IRST();
                UNRAVEL_Project_at_NIST();
                break;
            case OTHER:
                Algorithmic_and_Automatic_Debugging();
                Centrum_voor_Wiskunde_en_Informatica();
                Code_Reading_and_Program_Comprehension();
                FAMOOS();
                Fravia();
                Repository_on_Program_Understanding();
                Reverse_Engineering_Design_Patterns();
                Semantics_Based_Program_Analysis_and_Manipulation();
                break;
            default:
                main();    /* Warning: recursive call */
                break;
    }
}

/* Thanks for visiting. A little traveling music to take with you:
   Bach's Crab Canon, a reversible piece of music */