Know a good disassembler?
-
Dunno to be entirely honest. I find dial-up + CNET = me.frustrated, so I don't visit there. That price probably sounds about right for IDA. In case you didn't know, it's now developed by Hex-Rays, the maker of the $2000 plugin I mentioned before. If you visit IDA's homepage here: http://www.hex-rays.com/idapro/[^], you can download a free version that's still pretty bloody impressive. What's the target app compiled with? I may well have a better solution for you.
I've been using IDA Pro some time now (at least 4 years) and I'm even more happier with the HexRay decompiler. It is worth every cent of it.
modified on Monday, July 14, 2008 10:24 AM
-
James Brown wrote:
if you find yourself frequently needing to disassemble
In 25+ years of professional software development across a wide variety of markets and a broad range of machines and operating systems, not once have I found a reason for using a disassembler. Unless you're a thief.
Software Zen:
delete this;
Fold With Us![^]There can be some very good reasons for using a disassembler, and not just for thievery. Personally, I've used the copy of IDA Pro I purchased to reverse engineer and understand some legacy Motorola 68k hardware, debug a flaky RS-485 card driver, and decipher what a number of vague error messages meant when returned by various win32 api calls. Also, think about what you would need if you were writing your own debugger or disassembler. I would think having a reference disassembler would be a very good idea. Disassemblers are tools that can certainly be misused, but one really shouldn't assume that will always be the case.
-
I am looking for a free disassembler, preferably not a command line one. I couldn't find one on Cnet, and i was wondering if any of you know of one.
if (your.Life == Lifestyles.Programming) { your = Cool; } else { your = !Cool; }
The Reflector is the best .net disassembler. It shows you the code in C#, VB, C++.net and Delphi.net, and it has utilities (separate exe) to open resource files. You can download it at http://www.aisto.com/roeder/dotnet/[^]
-
James Brown wrote:
if you find yourself frequently needing to disassemble
In 25+ years of professional software development across a wide variety of markets and a broad range of machines and operating systems, not once have I found a reason for using a disassembler. Unless you're a thief.
Software Zen:
delete this;
Fold With Us![^]So what are you accusing me of exactly? Your claims of experience do not impress, there are many valid (legal) reasons for needing to use a disassembler. You simply need to broaden your horizons to find them
-
Disassembler, not decompiler. No, not for .NET. I don't think there is such a thing as a .NET disassembler. A disassembler translates normal programs into Assembly language, a Decompiler will translate it into source code, which is really only possible with .NET programs. I am looking for a disassembler that will disassemble normal programs.
if (your.Life == Lifestyles.Programming) { your = Cool; } else { your = !Cool; }
-
James Brown wrote:
if you find yourself frequently needing to disassemble
In 25+ years of professional software development across a wide variety of markets and a broad range of machines and operating systems, not once have I found a reason for using a disassembler. Unless you're a thief.
Software Zen:
delete this;
Fold With Us![^]The previous post just goes to show that however experienced one is there is always room to be able to learn. :) Part of our business is to rejuvenate legacy code owned by the client, where often they have lost the source and with it crucial parts of the business logic. Our ability to do this is based on our employees, some of whose first experience of computers was over 35 years ago, who are valued for their ability to disassemble and comprehend the original code which has often started life in the 60's.
-
I am looking for a free disassembler, preferably not a command line one. I couldn't find one on Cnet, and i was wondering if any of you know of one.
if (your.Life == Lifestyles.Programming) { your = Cool; } else { your = !Cool; }
What type of program are you trying to disassemble, and what are you trying to accomplish by disassemblng it? IDA Pro is by far the best disassembler overall, but the free demo version is limited to x86 PE (Win32 .exe and .dll) files. If you can explain what you're trying to do, I can probably give you some better suggestions for tools.
-
James Brown wrote:
if you find yourself frequently needing to disassemble
In 25+ years of professional software development across a wide variety of markets and a broad range of machines and operating systems, not once have I found a reason for using a disassembler. Unless you're a thief.
Software Zen:
delete this;
Fold With Us![^]:zzz: As a teenager 15 years ago, I taught myself asm with the aid of TurboDebugger & Sourcer. The internet was simply not available - yet alone heard of by me at the time. There was also precious little in the way of information around on specific tasks involving graphics - what the hell did all of those int 0x10 functions do anyway? What? Ask the guys at school. :scoffs: Easy, dissasemble the video bios and have a look at which IO ports were used to change the video mode to 0x13, or even more interesting, to mode X giving 240x200@256 cols & 4 planes. It wasn't until much later when I finished school and went to uni that I found myself like a kid in a candy store amongst the books in the computing library. Fast forward to today - how on earth do you think that Anti-Virus writers & vulnerability researchers at [insert company here] keep your precious little system choked full of 25 years of 'real' programming code safe? How do you think most SQL injection attacks are discovered and protected against? What about buffer overflow errors? You don't seriously think that people just sit there and try to overflow the buffer, without an insight into it's length :rolleyes: or the point at which data in the buffer begins to be (maliciously) executed. Of course, the AV writers must all be thieves. - Don't make me laugh. :laugh: Do yourself a favour Gary, and go and do some reading.
-
I am looking for a free disassembler, preferably not a command line one. I couldn't find one on Cnet, and i was wondering if any of you know of one.
if (your.Life == Lifestyles.Programming) { your = Cool; } else { your = !Cool; }
-
I am looking for a free disassembler, preferably not a command line one. I couldn't find one on Cnet, and i was wondering if any of you know of one.
if (your.Life == Lifestyles.Programming) { your = Cool; } else { your = !Cool; }
The Borland crowd has an awesome one that I used for a number of years: news://newsgroups.borland.com/borland.public.tasm -jj
-
James Brown wrote:
if you find yourself frequently needing to disassemble
In 25+ years of professional software development across a wide variety of markets and a broad range of machines and operating systems, not once have I found a reason for using a disassembler. Unless you're a thief.
Software Zen:
delete this;
Fold With Us![^]Garry, I would say you are an unimaginative person, and more than likely not a very good engineer. In MY 25+ year career I have used disassemblers/decompilers many times to create imaginative and highly successful solutions to some extremely complex problems. Furthermore, I have yet to steel anything (except market share.) You bonehead. Jake
-
Garry, I would say you are an unimaginative person, and more than likely not a very good engineer. In MY 25+ year career I have used disassemblers/decompilers many times to create imaginative and highly successful solutions to some extremely complex problems. Furthermore, I have yet to steel anything (except market share.) You bonehead. Jake
First of all, it's spelled with one 'r': G-a-r-y.
laughingandliving wrote:
I would say you are an unimaginative person
You're going to base that on a single post in an online forum?
laughingandliving wrote:
more than likely not a very good engineer
Hmm. Then my employer's been making a mistake for the last 18 years, giving me a better-than-average raise.
laughingandliving wrote:
I have yet to steel anything (except market share.)
It's spelled steal, in this usage.
laughingandliving wrote:
You bonehead.
I do have a normal human skull. Given my age (not quite 47) the sutures between the component pieces have joined together into a solid piece (excluding my jaw, obviously).
Software Zen:
delete this;
Fold With Us![^]