//						EXPORTS.H

#ifndef exportsh
#define exportsh

struct exportdirentry
{ unsigned long characteristics;
  unsigned long timedatestamp;
  unsigned short int majver,minver;
  unsigned long namerva;
  unsigned long base;
  unsigned long numfunctions;
  unsigned long numnames;
  unsigned long funcaddrrva,nameaddrrva,ordsaddrrva;
};

struct exportlist
{ struct exportlist *next;
  unsigned char *name;
  unsigned long addr;
};

struct ordnames
{ unsigned char name[20];
  struct ordnames *next;
};

class exp
{ private:
	 struct exportlist *explist;
    struct ordnames *onames;

  public:
	 exp();
	 ~exp();
	 void summary(void);
	 BOOL isexport(unsigned long address);
	 void printname(unsigned long address);

  private:
	 void addtoexplist(unsigned char *name,unsigned long addr);
    unsigned char *newexpname(unsigned long i);
};

#endif