I can't say that I agree with what RV did, but the question of whether it was legal seems to be have been broached. My understanding is that (somewhat sadly from my philosophical standpoint) it that it depends on exactly how he did the "reverse engineering".
Indeed, parsing such a phrase seems to be the root of a lot of disputes, as it can mean various things. It seems clear that "decompilation" (transformation of the machine code) is illegal in the relevant jurisdiction, and to me "disassembly" (listing of the machine code [which makes a copy of it to do so], possibly with opcode annotations) is close enough to this to fall into the same.
However, RE can also be done by "observation" of a program, and this contrariwise seems to be quite legal. For instance, tracking every instruction executed by a program (e.g. via running it in a virtual machine) and then collating the results appears to be a valid method.
To put this differently, if one treats the code as a literary work, copying it and transforming it, then the law applies, but if one treats the running of the program as a "tool", then its workings can be legally observed. This seems in line with both the letter of the law, and the philosophy behind it.
As I say, in practise this can often be little more than a metaphysical difference, but there can be minor substantive differences in the end result. For instance, suppose there is code that is rarely executed (or even dead code). In the second case, one could possibly miss it (though the observer is also entitled to choose inputs to try to exercise the program to his delight). Another pertinent example could be, say, the determination of the contents of a large array in memory (such as material imbalance info) -- if this is done via legitimate tracking of memory probes during actual program execution it seems valid, but not if one simply dumps the contents of memory. Again a bit metaphysical from my standpoint.
Below I list the relevant Slovakian laws, which are the implementation of various EU directives, most notably 91/250/EEC, which has been superseded by
2009/24/EC.
Slovak Copyright Act 383/1997
Section 26.2: [allowing observation]
(2) The lawful acquirer of a copy of a computer program may, without the authorisation of the author or other holder of rights, observe, study or test the functionality of the program to determine the ideas or principles underlying any part thereof in the course of the downloading, display or transmission, functionality test and storage of the program into computer memory that he/she has been authorised to do.
See also recital 14 and Article 5 in EU document (better worded IMO):
3. The person having a right to use a copy of a computer program shall be entitled, without the authorisation of the rightholder, to observe, study or test the functioning of the program in order to determine the ideas and principles which underlie any element of the program if he does so while performing any of the acts of loading, displaying, running, transmitting or storing the program which he is entitled to do.
Translation is mentioned in 11.3 and 16.2b, and regards Decompilation in section 27 -- the latter is mainly to list exceptions, but does give a sense of what "translation" intends.
The EU directive has Decompilation in Article 6 (see also recital 15:
The unauthorised reproduction, translation, adaptation or transformation of the form of the code in which a copy of a computer program has been made available constitutes an infringement of the exclusive rights of the author), and specifically restricts "translation" in 4.1b (I don't think there is a direct Slovakian counterpart of the latter).