Um es kurz zu machen: Die GPL erlaubt ausdrücklich das Reverse Engineering.
Auszug aus "The free software definition" von der FSF/GNU:
[.]
One important way to modify a program is by merging in available free subroutines and modules. If the program's license says that you cannot merge in an existing module, such as if it requires you to be the copyright holder of any code you add, then the license is too restrictive to qualify as free.
[.]
Auf deutsch etwa:
Eine weitere wichtige Art ein Programm zu modifizieren, ist es, existierenden Routinen aus freier Software dazuzunehmen. Verbietet das die Lizenz des Programmes, handelt es sich nicht mehr um freie Software. [Und natürlich ist die GPL eine freie Softwarelizenz.]
Die einzige Bedingung, die die GPL stellt, ist, dass der Code wieder unter die GPL fällt. Reverse engineering fällt noch nicht einmal unter die GPL, außer dass der Sourcecode es einfacher macht.
Das Urheberrecht schützt übrigens nachprogrammierte Software nur sehr unvollständig. Sobald das nachprogrammierte Werk sich deutlich im Umfang oder Optik vom Original unterscheidet, ist der Urheberrechtsschutz als "künstlerisches Werk" nur sehr eingeschränkt gegeben. (Es gab mal den Fall, wo eine Datenbank nachgebaut wurde und dennoch dafür kein Urheberrechtsschutz bestand, obwohl abgekupfert wurde. c't von 2001 oder so) Was immer gilt, ist das Wettbewerbsrecht, das hier schwierig anzuwenden sein dürfte, da OTTD ja frei verfügbar ist und keinen eigentlichen Urheber hat.
Und wenn wir schon juristische Haare spalten, dann würde das Laden des Orignalprogramms und das Verändern dessen im Speicher zum Zweck eines veränderten Programmablaufes den Straftatbestand der Datenveränderung (§303b StGB) erfüllen. Der Patch wäre dann ein Hilfmittel dazu, dessen Vertrieb/Download/Hosting nach der neusten Strafrechtsnovelle strafbar wäre (§202c StGb neu). 
