MUltimate Assembler (an OllyDbg plugin)

Here is a multiline (dis)assembler, which supports labels and data (C-style string).
A perfect tool for writing code caves and stuff.

rar multiasm.rar (61.68 kB)

Posted in Releases, Software by RaMMicHaeL at September 13th, 2009.
Tags: ,

19 Responses to “MUltimate Assembler (an OllyDbg plugin)”

  1. Ange says:

    i really like that plugin, but sometimes for no reason, it doesn’t want to accept strings – the example like on this page wouldn’t work, it would give me a ‘command mnemonic expected’ in the middle of “hello world” string.

  2. Ange says:

    just ignore previous comment, i didn’t see i don’t have the latest version :)

  3. totalgame says:

    How do i plugin on ollydbg? I’ve put the plugin in plugin folder but it doesn’t appear on olly. Should i set something on ollydbg.ini? -Thnx- nice blog

  4. Joe McKenzie says:

    AWESOME!! This plugin would’ve saved me a lot of time on multiple occasions.

  5. Morten says:

    Very useful. But it crashes almost everytime.

    It writes the opcodes just fine, but then crashes Olly a few seconds later.

    • Morten says:

      Okay, I’ve pinpointed it to Labels.

      If “Write Labels” is enabled in options, it crashes me Ollydbg (1.10 – Tried clean install too).

      If I untick “Write Labels” it works just fine.

      • Morten says:

        PS: I can’t get it to support labels for loop instructions (LOOP, LOOPD, LOOPE).

        @Bla:
        LOOP @Bla ; does not work
        LOOP 00401000; works

      • RaMMicHaeL says:

        I’ve never experienced such crashes. You say it happens with any code/binary even on a clean olly? Can you say on which RVA it crashes?

      • RaMMicHaeL says:

        After a number of experiments, I was able to reproduce the issue. Seems like it’s a bug of Ollydbg and it’s Quickinsertname/Mergequicknames functions. Maybe Ollydbg does not expect these functions to be called from another thread – what MUltimate Assembler does.

        It does not crash on my PC while assembling a sane amount of code, but inserting labels/comments in a loop make it eventually crash.
        Perhaps your PC is faster, and thus it happens regularly for you.

        Disabling “Write Labels” and “Write Comments” will help, but if you find these useful, you could make MUltimate Assembler use Insertname instead of Quickinsertname/Mergequicknames (Insertname accepts the same parameters as Quickinsertname). As an Ollydbg user it should not be difficult for you :) Try it and tell me how it works.

      • RaMMicHaeL says:

        The crash was fixed in v1.3

  6. RaMMicHaeL says:

    Updated to v1.2.1

    Bug fixes:
    - Now correctly assembles loop instructions with labels (reported by Morten).
    - Fixed assembling short jumps with labels on high addresses.

  7. RaMMicHaeL says:

    Updated to v1.2.2, which only creates a single thread on startup and uses it instead of creating a new thread every time the assembler window is opened.
    That makes it work together with the phantOm plugin.

  8. MCKSys Argentina says:

    Great Plugin!!

    Thanks!

  9. MFan says:

    Thanks for the update. Disassembler is awesome! Still waiting for tab renaming feature, though. :)

  10. Apuromafo says:

    nice plugin as say MCKSys Argentina ,, i use from version 1,

    ask: is posible do this same for ollydbg 2 ( now was a update and cann add plugin ^^)

    BR, Apuromafo

  11. tuk says:

    this is my fav olly plugin, not to seem ungrateful but I think it will take some time for the plugin documentation to appear..and its a real pain having to juggle multiple versions of olly ..as v2.0 is the best now even tho a little buggy

    thanks for your work

Leave a Reply