Results 1 to 7 of 7

Thread: Reverse Engineer, Debugging & The Like

  1. #1
    Junior Member
    Join Date
    Feb 2003

    Reverse Engineer, Debugging & The Like

    First, I want to point out I am not wanting to know HOW to do it, but wanting to know in what capacity does one learn to reverse engineer, debug, decompile, etc. I know to get YOUR software working correctly, you probably need to that but... as I read the EULA it always says we should never do that so I am sure it can be done (maybe not easily). i am just wanting to know is it more complicated than just to ask what does it actually mean w/out getting into semantics or technicalities and how to do it?
    It\'s better the devil you know, than the devil
    you don\'t.- uhme\'s wifey
    [shadow]Onward Jeeves[/shadow] [blur]Onward Jeeves[/blur]

  2. #2
    () \/V |\| 3 |) |3\/ |\|3G47|\/3
    Join Date
    Sep 2002
    Use these links for good not evil.

    For learning about decompilers, disassemblers, and reverse engineering you may want to look at the following links:

    Decompiler Bulletin Board

    Looking for a C++ decompiler?

    This page contains information about various commercial, shareware and freeware disassemblers, and tools for building disassemblers.
    More Disassemblers
    AiCE-51 - In-circuit-emulator for SIEMENS C500 Microcontrollers includes disassembler by Appliware.
    Application-specific Decompilers - Catalog of decompilers.
    AVATAR - A disassembler/patcher/code-explorer for PA-RISC based HP-UX systems, by Allegro Consultants, Inc.
    the bastard disassembler - *NIX disassembler. Written in C on Linux for x86 ELF files; intended to support multiple CPUs, OSes, and file formats. Scriptable.
    DASM1600 - An Intellivision Disassembler by Frank Palazzolo.
    The dcc Decompiler - It decompiles small .exe files from the (i286, DOS) platform to C programs.
    The Decompilation Page - Decompilers, resources, and history.
    The Decompilation page - This is the Wiki version of the Decompilation page (originally by Frans Faase, then Cristina Cifuentes). Feel free to keep this page up to date; anyone can edit.
    Decompiler.com - Online reverse engineering (decompiling) tools, documentation, discussion, downloads and software.
    DISA - An OS/2 disassembler for OS/2 device drivers, by Abbotsbury Software.
    DSP5600x - A 5600x disassembler by Miloslaw Smyk.
    FARGDIS - Fargo Disassembler for TI-92 DOS versioin, by John Grafton.
    High Level Assembler and Toolkit (HLASM) - System/390 assembler toolkit for MVS & VM & VSE (HLASM) including disassembler, by IBM.
    IDA Pro - The multi-processor, multi-OS, interactive disassembler, by DataRescue.
    MacNosy - Is a Mac application that disassembles the Macintosh ROM or any 68K or PowerPC codes, by Jasik Designs.
    MELPS7700 Disassembler - By H.Kashima.
    Misosys Disassembler - Tim Mann's TRS-80 Page includes Misosys Disassembler, aka PRO-DUCE.
    palmdeMON - A win32-based disassembler and resource viewer for Palm Pilot applications. Links to other Palm tools.
    PICE/WIN - Panasonic MN1500 Emulator Interface for Windows includes Disassembler for MN1500 by TransferTech.
    Re39 - Interactive Disassembler for Rockwell C29/C39 (C40) code by Lewin A.R.W. Edwards.
    Reverse Engineering Compiler - Program that tries to make source coden (C) from binary, multiplatform. There are MIPS disassembler too, by Giampiero Caprino.
    SSEM - The World's First Stored Program Computer - disassembler included.
    SST Global-Decompilers - Decompilers for IBM midrange systems.
    This96 - 80196 disassembler by zartoven.
    TRACE32 - Microprocessor Development Tools include multi processor emulators and disassemblers.
    Transputer disassembler. - By Andy Rabagliati.
    Universal Cross Disassembler - XDASM - DOS based cross-disassembler supports numerous processor types, by Data Sync Engineering.

    Go Finland!
    Deviant Gallery

  3. #3
    Senior Member
    Join Date
    Jan 2002
    Here are a couple of sites that will teach you how to reverse engineer.

    Please do not use this info for software cracking and stuff. This is supposed to be used for learning, and not malicious purposes.

  4. #4
    AntiOnline Senior Member souleman's Avatar
    Join Date
    Oct 2001
    Flint, MI
    or you could learn binary and asm. Then take the binary code and convert it to asm. Then learn how the c compiler compiles everything, and convert from asm to c. It would be a lot more work and probably extreamly boring, but hey, you would learn a LOT in the process.
    \"Ignorance is bliss....
    but only for your enemy\"
    -- souleman

  5. #5
    Junior Member
    Join Date
    Feb 2003
    Many thanks for the prompt replies and help; apologies for the long wait 'ere the thank you.
    I never got the idea to learn when i was younger so now I have to go thriough my arse to get to my elbow ( ia am in my mid 30's) to learn. The first two replies are relevant enough (read there is documentation for me to retrieve) but for asm and binary, which road do i need to embark on?
    Also, i just received a book an C programming as well so i will be learning a lot.
    It\'s better the devil you know, than the devil
    you don\'t.- uhme\'s wifey
    [shadow]Onward Jeeves[/shadow] [blur]Onward Jeeves[/blur]

  6. #6
    Senior Member
    Join Date
    Jan 2003
    I've been doing a fair bit of reverse engineering lately with the goal of building my own embedded devices/Real time OS's.

    Though not strictly only reverse engineering, here's what I'm doing (though by no means am I an expert or even worthy of the title journyman):
    1) I start with open source software that does something akin to what I want it to do.
    2) I read the source code
    3) I scratch my head and swear a lot, because I'm not a developer.
    4) I ask someone who knows more than I do "What the hell do these 200 lines mean???"
    5) I scratch my head and swear some more.
    6) Finally, I get it......then I work on ways to improve it. I ask myself "What do I need, what is bloat?" If it's bloat, it goes. If it's not there and I want it I figure out what needs to be put in there.
    7) I ask someone who knows more than I do "Why is my code so messed up?" They usually fix it for me, which is not my intent.
    8) I then build the hardware. Lucky for me I studied electronics and have a shed full of crap hardware to play with. Caveat: Soldering burns are not fun.
    9) I then end up repeating steps 4-7 several times because my code doesn't work with the Frankensteined hardware I've built.
    10) I cuss a lot for not having the means to burn anything into a ROM chip and compromise by using Flash.
    11) I repeat steps 4-7
    12) I read in a magazine that someone has already come up with my idea, && put in features that I hadn't thought of.
    13) I swear a lot and begin scratching my head thinking of the next idea.

    Hope that helps.

  7. #7
    Junior Member
    Join Date
    Feb 2003
    rofl threadkiller sound like something i would/will do once the journey is embark. Prob being where I am at, I have noone to help me or bail me out. Informative and funny Ilike that... thanx again
    It\'s better the devil you know, than the devil
    you don\'t.- uhme\'s wifey
    [shadow]Onward Jeeves[/shadow] [blur]Onward Jeeves[/blur]

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts