Decompiler.NET reverse engineers your CLS compliant code

J

Jonathan Pierce

Using what they call obfuscator, will not help you for a long time.
For each new obfuscator there will allways exist a new deobfuscator.
Your source's Symbols are written unchanged in the exe or dll file.
Looking to your Symbols, it's easy to understand your Source Code.

Thanks for the compliments regarding our Decompiler.NET product. The
product includes a built-in obfuscation option that generates
obfuscated source code that you can recompile that still runs like the
original code. You may want to try this feature to see how readable
the obfuscated code is.

Our obfuscator encrypts string literals and replaces them with
references. It also includes unique advanced features not provided by
other available obfuscators like generating public stub methods and
properties to avoid breaking public interfaces, but factoring their
bodies and calls within the same assembly into obfuscated
implementation methods. Our refactoring feature also includes an
option for encapsulates fields with generated properties and tightens
their scoping to private.

You can read an article that compares our Decompiler to other
available .NET decompilers in the August 2004 issue of .NET Developers
Journal. You can view the article here:
http://www.junglecreatures.com/press/DecompilerRoundUp_DNDJ_August_2004.pdf


Jonathan Pierce
President
Jungle Creatures, Inc.
http://www.junglecreatures.com/
 
J

Jonathan Pierce

James said:
That link appears to be dead.

If you are having problems accessing out site, please let me know. We
have been in business since 1999 and we have many customers who rely
on the commercial products that we offer. Please email me directly if
you have any more problems accessing our web site at
(e-mail address removed)

Jonathan Pierce
President
Jungle Creatures, Inc.

http://www.junglecreatures.com/
 
H

Herfried K. Wagner [MVP]

* Vortex Soft said:
VB, C# are CLS compliant

That's wrong. Especially C# code is not CLS compliant in all cases.
VB.NET sticks more to the CLS and tries to produce CLS compliant code,
for example by not supporting unsigned integer datatypes directly.
Using what they call obfuscator, will not help you for a long time.
For each new obfuscator there will allways exist a new deobfuscator.

Your source's Symbols are written unchanged in the exe or dll file.
Looking to your Symbols, it's easy to understand your Source Code.
A honest compiler does not expose any Symbols, unless you Export them.

This depends on the obfuscator you use. Notice that the best decompiler
will not be able to reproduce local variable names and the code
comments. Code without comments is rather worthless.
I like VB, it is an easy yet powerfull language, but it's good for
nothing else but studying or playing.

Bla bla...
 
V

Vortex Soft

If you try the Decompiler.NET, you will get the full source code.
All Class, Function, Variable names are shown as in the original source!
 
V

Vortex Soft

Jonathan said:
Thanks for the compliments regarding our Decompiler.NET product. The
product includes a built-in obfuscation option that generates
obfuscated source code that you can recompile that still runs like the
original code. You may want to try this feature to see how readable
the obfuscated code is.
It's the .NET programmers comunity that should thank you for exposing
it's weakness and allow us to protect owselfs since Microsoft doesn't
 
D

Daniel O'Connell [C# MVP]

Vortex Soft said:
If you try the Decompiler.NET, you will get the full source code.
All Class, Function, Variable names are shown as in the original source!
Try recompiling in Release mode, then decompiling.
Then try obfusticating the release mode dll and then decompiling it again.

Tell us what you see.
 
J

Jay B. Harlow [MVP - Outlook]

Herfried,
comments. Code without comments is rather worthless.
In my experience well written code shouldn't need comments! At least not a
lot of comments.

Well written code should be largely self explanatory based on the class,
method, property, parameter, field, and variable names.

I am not however suggesting that there should be NO comments at all.


I like the example from the "Human-Readable Code" section in Joshua
Kerievsky's "Refactoring to Patterns" from Addison Wesley:

' adopted to VB.NET

Public Shared Sub Main()

Dim firstOfMonth As DateTime = November(1, 2004)
Dim lastOfMonth As DateTime = November(30, 2004)

End Sub

Where the November function is defined as:

Private Shared Function November(ByVal day As Integer, ByVal year As
Integer) As DateTime
Return New DateTime(year, 11, day)
End Function

Just a thought
Jay
 
C

CJ Taylor

Jonathan said:
It's the .NET programmers comunity that should thank you for exposing
it's weakness and allow us to protect owselfs since Microsoft doesn't

you are a f#(*@#($* moron...

Get off your knees, I think you've satisified Jon's ego enough...
 
G

Guest

Mr X.
JH [Mon, 13 Sep 2004 15:30:37 -0500]:
In my experience well written code shouldn't need comments!

Well, see, that's in your experience, which obviously has never
had to deal with SOMEONE ELSE's "well-written code" (haha).
' adopted to VB.NET
Public Shared Sub Main()

Hm, yeah, that doesn't even count. It's all throw-away stuff.
Anyone that thinks "comments" are optional, Is optional. But
it's your mess so what I think doesn't matter.
 
N

Nak

Aaah, fair enough, I thought you were going to shatter my illusions of RSA
for a moment then! HAHAHAHA........ :-( Sorry, just spending quite a
considerably ammount of time making a software licensing application that
uses RSA. Anyways yeah... Long time?

Nick.
 
J

Jonathan Pierce

Cor Ligthert said:
Nick,

And I thought that is something for Nick, "It needs a thief to catch a
thief", with what I do not mean you of course. This is in the text.

New License Keys Issued
The latest version of Decompiler.NET requires that you install an updated
license file. You should have received an updated license file via email.
Please replace your existing license file with this new one after installing
the latest release.

Cor

Cor,

I don't understand what you are trying to say here about our product
license enforement strategy.

We offer a free trial version, and issue digitally signed license
files to our customers that restict the application to the machine
where they installed it. The statement above refers to the changes
that we made regarding our license file format that prevented old
license files from enabling full functionality in newer releases of
our product.

We also offer obfuscation features to assist customers in obfuscating
their code to protect their intellectual property. We use our own
obfuscation implementation along with encryption to produce each
release of our products that we release to customers.

Using our product requires that you agree with our license agreement
which prohibits you using our tools for illegal purposes.

Can you explain what you mean by the "thief" reference?

Feel free to email me directly.

Jonathan Pierce
President
Jungle Creatures, Inc.
http://www.junglecreatures.com/
 
N

Nak

Remember - all depends on the key length chosen. If you're going to choose
a
16-bit key - hell I can crack that too :) (Yes- within my lifetime ;-))
!!
Read here: http://news.com.com/2100-1023-204556.html?legacy=cnet

All I have to say on that matter is f**ksticks
Ofcourse, the standard now is to use 512 bit keys and sooner or later
we'll
be moving to a 1024 bit standard as soon as as someone (or rather group)
cracks a 512-bit RSA key encoded message. Thats a totally different ball
game altogether.

That sucks, I've never even been able to open a passworded zip file using an
app designed for the task of brute force simply because it takes too long.
These groups must be very adamant on destruction that's all I can say!

Nick.
 
N

Nak

F&U*C(KING TW^ATS!!!

Stop your damn blatant advertising and get a life! Noone here is going to
rush off and buy your product because of your little play!

"Thanks for the compliments regarding our Decompiler.NET product."

plebule!

Nick.
 
N

Nak

Hey,
Hm, yeah, that doesn't even count. It's all throw-away stuff.
Anyone that thinks "comments" are optional, Is optional. But
it's your mess so what I think doesn't matter.

Haha, some people like them, some people dont. I have gone through stages
of attempting to put descriptions above each and every method with inputs,
outputs, description and author but just got bored with it. Also I find
code very hard to read at 1024 x 768 in a text editor about 100 x 100 in
size without having to rake through comments in it too.

I think the code that should mainly have comments is code that is used to
teach. But anyway, thats only my opinion.

Nick.
 
N

Nak

Just to add a touch of irony, I should use a different decompiler to
decompile your little aplette and then post the project file on here, naaah,
I would *never* do that! nope nope nope.

By the way, the codes a bit dirty!

Nick.
 
I

Imran Koradia

All I have to say on that matter is f**ksticks

?!?
That sucks, I've never even been able to open a passworded zip file using
an app designed for the task of brute force simply because it takes too
long. These groups must be very adamant on destruction that's all I can
say!

That's true. However, there are techniques (lot of higher math involved)
that'll get you closer faster than brute force. Ofcourse, you really must be
wanting something very badly (or just have an unbelievably high level of
grudge towards 'someone') to go the lengths.

Imran.
 
B

Brian Henry

a jumbled mess is what you see ;)


Daniel O'Connell said:
Try recompiling in Release mode, then decompiling.
Then try obfusticating the release mode dll and then decompiling it again.

Tell us what you see.
 
B

Brian Henry

did you ever study intermediate languages ever? you obviosly have no clue
what you are talknig about. It's not just MS, it is ANY language that is
writen in any type of IL, java included
 
B

Brian Henry

the really funny thing is the fact you are selling classes you stole from
code project and assembled them together to make this
 
J

Jay B. Harlow [MVP - Outlook]

Hm, yeah, that doesn't even count. It's all throw-away stuff.
Anyone that thinks "comments" are optional, Is optional. But
it's your mess so what I think doesn't matter.
You miss understood my statement! I did not intend to imply that comments
are optional. I actually meant that a lot of comments are redundant. If you
label (name) the code for what it does, then I (in addition to Fowler &
Kerievsky below) don't see a real need for the comment. Fowler also suggests
that if you have a block of code with a comment preceding it, that you
should move the block of code to its own method, with the comment as the
name of the method.

Another example is putting a comment on a variable or parameter declaration.
If you simply pick a fuller name for the variable or parameter, do you
really need a comment on it?

For example, I have a routine that needs two date variables:

' with comments
Dim d1 As DateTime ' the start date
Dim d2 As DateTime ' the ending date

' without comments
Dim theStartDate As DateTime
Dim theEndingDate As DateTime

If you simply name the first variable as theStartDate do you really need a
comment suggesting the value is the start date?

Consider seeing d1 & d2 used 5 times in your routine, would the code be as
readable as using theStartDate & theEndingDate?

Would you need comments when you use d1 & d2?

Would you need comments when you use theStartDate & theEndingDate?

In other words "Human-Readable Code" or as Fowler states in Refactoring "Any
fool can write code that a computer can understand. Good programmers write
code that humans can understand".

You may want to read (& apply the ideas in) Martin Fowler's book
"Refactoring" and Joshua Kerievsky's book "Refactoring to Patterns" both
from Addison Wesley to have a better understanding of my statement.

Hope this helps
Jay

Mr X.
JH [Mon, 13 Sep 2004 15:30:37 -0500]:
In my experience well written code shouldn't need comments!

Well, see, that's in your experience, which obviously has never
had to deal with SOMEONE ELSE's "well-written code" (haha).
' adopted to VB.NET
Public Shared Sub Main()

Hm, yeah, that doesn't even count. It's all throw-away stuff.
Anyone that thinks "comments" are optional, Is optional. But
it's your mess so what I think doesn't matter.
--
40th Floor - Software @ http://40th.com/
iPlay : the ultimate audio player for iPAQs
mp3, ogg, mp4, m4a, aac, wav, and then some
w/surround, xfeed, reverb - all on your ppc
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top