Thank you Andy Duplain for the source
And TechWarrior for suggesting new things and keeping me working on it
And MicroBlast[Ter] just because

/*
   Modifications by Ryan Bystrom aka Temporary
   26 February, 1998:
      Finally found the source for this!
      Allowed for dhack to automatically open file (if any) specified on the
         command line.  This also works for associating .DAT extensions
         to dhack.exe in windows.
      Changed a couple messages, version info.

   27 February, 1998:
      Messed with restoring the previous window sizes and positions.
      Changed registry info a little bit.

   30 March, 1998:
      Allow multiple hacks using the same address to be loaded at the same
         time.  Of course, only one may be activated at a time.  This can
         also be useful for multiple level-changing hacks, just load them
         all up and pick which one to use each time.  Also, took out the
         warning when loading more than one hack with the same name, it
         will just skip over it.
   
   03 September, 1998:
      Added more registry settings, also include 'Edit', 'Activate All',
        and 'Deactivate All' in the Shell extensions. Also the program
        associates itself with .dat files automatically.

   01 October, 1998:
      Changed program icon.
      Allow for ** instead of olddata, if you don't want it to check the
         olddata, it will just use what it finds there.
         Example:
            Start v0.00 This is an example
            123456 ** 5e5f55c3
            end
         If you close dhack with a ** hack activated, you will not be able
         to deactivate it unless you restart Diablo (dhack doesn't stay
         resident and won't remember what the olddata should be after it's
         closed).

   03 October, 1998:
      Fixed startup window position. If you closed it maximized, it'll start
         out maximized. If you closed it normal or minimized, it'll start out
         normal.

   04 October, 1998:
      Fixed bug when hacks using ** for olddata, if length was under 3 bytes
         it showed up as error.
*/
