As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I'm into hacking challenges (like rankk.com) and some of the challenges require disassembly and little modifications of PE files.
I'm looking for a disassembler/debugger that is able to dump the strings, walk the assembler code and allow modifications.
My knowledge in this field is very limited so I'm looking for something relatively easy to use and preferably free.
IDA, nothing else comes even close.
IDA Pro
I like OllyDbg. (with a good companion :)
IDA Pro has a nice graph for better understanding of the code flow and the disassembler is amazing. Although i use OllyDbg as JIT debugger and general debugger for MASM.
IDA also has a free version now of their previous version. For light or introductory reversing or getting started it's a great tool.
IDA Pro for common cases, SoftIce for special cases (for example when you need to reverse highly protected application, you can use special SoftIce plugins and so on). I was an experienced cracker in student years :)
Related
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
is there any good equivalent debugger for Mac OS X?
Something that allows patching and saving of the assembly as well (with graphic interface?)
Thanks!
GDB is the gold standard for debugging on *nix. GDB has all of the debugging features you would expect in a modern debugger. For example, reverse debugging is the best feature to have if you are modifying the binary in memory, when you make a mistake just step back and try again. DDD is a popular front end, but seriously you should learn GDB's CLI. It has bit of a learning curve, but once you learn it you'll never go back. Its a lot faster.
Saving a modified binary isn't that great of a feature. Just open the binary with a hex editor like Hex Fiend and modify it directly, not a big deal.
I'm not a OSX person, but you might find IDA useful, however, you will probably need to pay for the linux/osx versions, as there is only a free version for windows.
Have a look at the lldb debugger (http://lldb.llvm.org/) and of course gdb is available.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I have realized I have to study Assembly language to understand programming deeply during trying to implement coroutine.
So I decided to start study Assembly. I want to start this by making small programs with only pure assembly. What's required and where should I start from? Easy Tutorials? Any guidance would be appreciated. Thanks.
PS.
I'm using Mac OS X 10.6 on iMac Core i5 machine.
MIPS is a nice and short instruction set.
Nothing fancy to get in your way.
MIPS Emulators
SPIM was a classic emulator used for years. Some useful info here.
Mars looks promising and runs in java.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 12 years ago.
I've been using MS Visual Studio for a lot of projects, but I notice a lot of people here like to complain about Microsoft and Visual Studio.
So I'm wondering, what does everyone use? Dev-C++? mingw?
What is popular? Also, what is bad about MSVS? What is "better" about the others?
Thanks!
--RKL
Comparing compilers is often an exercise fraught with peril. Here is but a sampling of the variables you would have to normalize for:
compiler flags
compiler-specific preferences for idiomatic code
differences between processors
enabling/disabling of processor extensions
differences in assumptions that can safely be made about code
compiler extensions in use
Qualitatively speaking, MSVC is a serviceable compiler. There's not too much reason to complain about it, other than everyone's usual gripe of "I wish things were faster".
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
As a learning exercise I'm building a basic scientific computation environment based on .NET. I'd like the GUI of the app to be much like matlab, in that I have an interactive window, an objects window and the facility to spawn visualisation windows. Intellisense in my command window would be very nice. It seems visual studio itself could almost be used in this manner, is this a viable option? Creating the visualisations within the VS environment seems like the only hurdle. What could I do here?
Eclipse is also an option I suppose but I'd prefer to stay totally with .NET if possible.
Any other suggestions?
You could take a look at MonoDevelop here to provide some help. It is open-source and one of the nicer IDEs.
You could also build something based on GEdit, as it is very pluggable.
Those are the two tools, plus the CLI that I use for .NET development, but I am entirely on Linux/Unix using the Mono tools.
Hope that helps!
I've just discovered VSlab. Its specific to F#, however its a good demonstration of what I would like to be able to do with my own DSL in terms of visualisation and an interactive editor.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
Are there any disassembler which provide a feature set comparable to IDA Pro?
I'm interested in both free and commercial products. Please use one answer per product and if possible write a short comment about it, like "easy to use", "many features", "only support for PE files", ...
Not to my knowledge. IDA Pro is clearly the best disassembler around. To the point that even the free (old) version of IDA (4.9) doesn't have a real challenger.
For the sakes of providing a comparison, you might want to try PVDasm
IDA Pro is a commercial licensed product and so has the funding to put the advanced features in place like graphing of jumps. There is also free version of IDA, although I'm not sure what functionality has been removed.
A free alternative is OllyDbg. Another is PEBrowse Professional Interative, but I haven't used this one yet.
In all honesty, IDA Pro is worth it, if you are seriously considering a debugger/reverse engineering tool. There isn't anything like it whatsoever on the market.
Hope this helps,
Dominic
If you're using a Mac, you should consider Hopper.
Note: IDA Pro now (as of 6.0+) supports a native solution on OS X