Target: Animagic 1.22 (or lower versions)
Author: matias921
Where:  http://rtlsoft.com/animagic/
Protection: name/pass
Tools: w32dasm, any hex editor (like UltraEdit)

Run animagic32.exe and a nag shows up, ignore it.
Now Help-->Enter name and password
Enter anything for name and pass and hit <enter>.
Is this a MessageBox? "Registration failed: Invalid Password"

Open w32dasm and disassemble animagic32.exe. Click on Find Text button
on toolbar and enter: "Registration failed: Invalid Password"
and you're here:

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00422A4F(C)
|
:00422AC1 8B06                    mov eax, dword ptr [esi]
:00422AC3 6A00                    push 00000000
:00422AC5 6A00                    push 00000000

* Possible StringData Ref from Data Obj ->"Registration failed: Invalid Password"
                                  |
:00422AC7 687F954700              push 0047957F
:00422ACC FF700C                  push [eax+0C] --> poit to text
:00422ACF FF7068                  push [eax+68] --> poit to title
:00422AD2 E887080300              call 0045335E --> call MessageBoxExA

This MassageBox is referenced by a jump at 00422A4F, let's see what's there:

:00422A48 803D0551480000          cmp byte ptr [00485105], 00
:00422A4F 7470                    je 00422AC1

It compares 00485105 with 00
If equal then jump to nag

What's mean 0=not-regged 1=regged
We'll change the 00 to 01. Then the prog jmp to nag if we're regged,
else (if we aren't regged) jump to good.

Open animagic32.exe with your favorite hex editor (UltraEdit in my case)
and Replace All 803D0551480000 (cmp byte ptr [00485105], 00) with
803D0551480001 (cmp byte ptr [00485105], 01)

There you go!
Contact: matias921@come.toeal problem :).