Cubesteak Central

The FINAL word on EX4 decompilation…

October 20, 2006 6:44 pm

OK, the FINAL (I hope) word on decompiling EX4 files in the U.S.

If you want to refute this, please feel free (I would welcome the re-education), but don’t bother to unless you provide a URL or quote that explains a specific statute or law.

OK, here goes:

A copyright doesn’t forbid decompiling. That’s why most software companies have a EULA (end user lic. agreement) that specifically cover things like reverse engineering, decompilation, etc as well as exactly HOW you can use the software.

This is a simple issue - if you decompile something, you aren’t breaking the law (unless you signed a EULA, in which case you are technically in breach of license and can be sued). IF you choose to publish it, sell it, or do anything else with it that falls outside of “fair use” laws, then you are in breach of copyright. This isn’t so different than the whole thing that is going on with music… Saying you can’t decompile a .ex4 file is like saying you can’t rip a song from a CD to an MP3. That’s not illegal (yet).

In fact, I personally believe that it would be difficult to enforce a copyright for most EA’s. Why? Several reasons actually.

To quote wikipedia:

“Copyright law covers only the particular form or manner in which ideas or information have been manifested, the “form of material expression”. It is not designed or intended to cover the actual idea, concepts, facts, styles, or techniques which may be embodied in or represented by the copyright work.”

Most styles of trading have been done and are available in one form or another on many forums, so the “system” can’t be copyrighted. MQL4 is a small enough language where just about EVERY way of doing anything with it is also in the public domain at this point, so most likely the “code” itself can’t be copyrighted. That leaves the exact copying of the code in its entirety. WHICH, frankly goes on and is encouraged left and right in most forums and is even done in this group. Everybody puts the “copyright” statement in their code, yet then we post it to groups such as this or to online forums, freely encouraging people to copy it again and breach the copyright we just claimed. How can one breach be distinguished from the “normal” breaches that are encouraged every day? While ignorance of the law is no excuse, there is certainly plenty of precedence to say that the “copyright” statement in an EA isn’t really a “proper” copyright at all. I think what we really mean is more of an Open Source license. Regardless, this just covers source code. We haven’t even talked about a decompile. So, that’s Strike One.

Beyond this, an actual decompile wouldn’t decompile comments, and therefor the resulting code wouldn’t even contain the copyright message people are saying would cover it! Strike two.

To make matters worse, decompiled code looks nothing like the original code, so you can’t even compare the two and say that it is the same program. You would be saying “that’s my method or my setup or my system”. Well, as stated before, you can’t do that. A perfect example of this fact is Linux and Unix. Linux “copies” Unix is almost every fashion, but since it doesn’t actually use any of the CODE from the original Unix license (now owned by SCO) it is completely legal.

So, Strike Three, you are out. :D

Technically the only things that a copyright COULD cover would be published source code with the copyright notice in it (which is tenuous unless you take further steps), and a compiled EX4 file, which is considered a valid “form of material expression”.

Neither of these things cover a decompile. Seems wrong, doesn’t it? Not really, its just that a copyright isn’t really whats needed for a software program - a software license is.

That said - Your best bet to protect your work is two fold. Register the the source code copyright officially and if you publish it, note that it is a registered copyright with the US government. Heed the following advice from Wikipedia:

“While copyright in the United States automatically attaches upon the creation of an original work of authorship, registration with the Copyright Office puts a copyright holder in a better position if litigation arises over the copyright. A copyright holder desiring to register his or her copyright should do the following:

1. Obtain and complete appropriate form.
2. Prepare clear renditon of material being submitted for copyright
3. Send both documents to U.S. Copyright Office in Washington, D.C.”

And secondly, (and more importantly) if you want to distribute or sell your EA, your best protection is an End User License Agreement that specifically outlines the rights of the buyer, which would of course forbid copying, decompiling, reselling, etc.

As a side note on the EULA, I personally would never agree to a EULA on an EA, as the liability just isn’t worth it.

Hopefully that (more) than closes the topic. :)

5 Responses to “The FINAL word on EX4 decompilation…”

KB wrote a comment on May 26, 2007

That’s just a big load of justifications as to why its OK to rip off someone else’s intellectual property. Well written, but still a little falacious.

What’s so different from decompiling a program into some other format (but its still a representation of the program), and converting a audio CD to MP3 which is just another format?

Either one of these is a copyright violation.

You say its not illegal yet, but really it is, its just not being enforced.

KB

cubesteak wrote a comment on May 26, 2007

Hi KB,

Thanks for the comment but I really must disagree and think you need to read what I wrote again.

First off, I said:

“If you want to refute this, please feel free (I would welcome the re-education), but don’t bother to unless you provide a URL or quote that explains a specific statute or law.”

You have provided no supporting evidence of your opinion and therefore are just slogging more hearsay rather than well documented fact. This is further illustrated by the point that you said converting an audio CD to MP3 is illegal, which in fact it is not. Distributing those files to other is illegal. If you disagree with my point, read this:

http://www.supremecourtus.gov/oral_arguments/argument_transcripts/04-480.pdf

and search for this statement, made by the lawyer for MGM:

“The record companies, my clients, have said, for some time now, and it’s been on their website for some time now, that it’s perfectly lawful to take a CD that you’ve purchased, upload it onto your computer, put it onto your iPod.”

Converting an audio CD to another format for your own personal use is still protected under fair use. Of course, the RIAA now wants to change that, but doing so will be tough. Not only are music companies quoted as saying it is legal in cases like the one above at the US Supreme Court, but there is also a long standing precedent and documented history of fair use. Unfortunately, they may yet win the battle, but for now it is legal.

Secondly, you missed the most important part of my argument, which is that decompiled code looks NOTHING like the original code. All of the variable names are different, the line structure is different and even the line COUNT is different. While the final output of the program may be identical that means absolutely nothing. There are many ways for a program to compute the same values and have the same behavior. How many ways can you compute the number 10?  Copyright protects the form of expression - meaning the coding of the EA.  Since the coding of a decompiled EA is nothing like the original EA, it is not the same expression and therefore not protected.

The only time this could be illegal is if the program infringed on a patent, but I have yet to see a patented EA.  For the differences between a patent and copyright, check out:  http://www.lawmart.com/searches/difference.htm.

I’m really trying to be nice, but honestly you are flat out wrong or misinformed. Please resist the temptation of stating opinion as fact. It was my goal with this post to stop the rhetoric around this issue and get to some hard, documented points.

As I said before, I truly welcome someone disputing me - but only if they come with documented facts, not just their point of view.  Opinions are like butt holes - everyone has one and they usually stink.

And, my last rebuttal to your comment is this - there are actually two L’s in fallacious.

Hehe.  Sorry, I just couldn’t help myself.  :)

Mike Pavel wrote a comment on June 23, 2007

Anywhere I can get code/software that will de-compile .ex4 file into .mq4 (Metatrader 4) ?

cubesteak wrote a comment on June 23, 2007

As in an automated decompile? Not that I know of. The process involves decompiling the ex4 file, unsnarling the code and then recoding it all back into MQ4.

It is very tough and I have not been able to do it, though of course it is possible.

nexo wrote a comment on November 14, 2007

Decompiler ex4 to mq4 is avalaible as service. I am support such service a long time already. It is full automated, fast and quality decompile.

Care to comment?