ams code obfuscator tool

This english section.
cdd is strong lol

so imma'GOOD boy

so i won
ser = Crypto.BlowfishEncryptString(ser, "cdd is strong", 0);
ser = Crypto.MD5DigestFromString(ser);
if ser == "b26344072f1367aa6b03bc014ceced65"
then
for i = 1,25 do
ser = Crypto.MD5DigestFromString(ser);
end
Dialog.Message("Notice", "good boy", MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
else
for i = 1,25 do
ser = Crypto.MD5DigestFromString(ser);
end
Dialog.Message("Notice", "bad boy", MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);


AND SO ON.......................
Imagen
RENAME & RESET THE PERMISSIONS WITH YOUR CODE

File.SetPermissions(_SourceFolder .. "\\cdd.cdd", SID_EVERYBODY, GET_ACCESS, ALL_PERMISSIONS, SUB_CONTAINERS_AND_OBJECTS_INHERIT);

AND YOU HAVE IT

I CAN BREAK IT FROM 4 DIFFERENT WAYS, AND ALL THEY WORK
thanks for solving that
so
if you agree i will enhance another method next week
i will be so glad if you test it for me

correction :-
good man (not boy !!)
:lol:
Mr Pabloko
waaaaw
you catch the cdd file in memory !!
so
I must do a harder work to prevent capturing in memory !!

see you next week
im ready to leak it anyway

im wondering if you don't prefer to change this challenge to a discussion, so you can bring me up your ideas and i will tell you how i will break it, instead you are working in them and i easily broke them....

if you prefer more privacy for your ideas we can use pm's or email

nice try
Pabloko escribió:im ready to leak it anyway

im wondering if you don't prefer to change this challenge to a discussion, so you can bring me up your ideas and i will tell you how i will break it, instead you are working in them and i easily broke them....

if you prefer more privacy for your ideas we can use pm's or email

nice try
first Mr Pabloko it is not a challenge
second it is a honor to discuss with a greet programmer like you
third
i do not wont to discuss method of cracking in public
and i am some how know about your method to fish cdd in memory at first
then deprotect it by File.SetPermissions at least

so
1- is there any way to read the register esi contents in lua ??
it takes the value FFFFFFFF when a debugger present
2- did a 200 ms protecting timer (Set Permissions) can stop the deprotecting process ??

3- can lua send keystrokes. that can be received by any open app. not certain app .
like this app programmed by me in vb6.
http://www.4shared.com/rar/0mynmjw6/bar ... ator.html?
that was a barcode scanner emulator .
run it then open any text editor or focus at any text box or input
fire the emuletor up with hit "space"
recieve the result at any text editor or any input at any open app
can i do like it in lua ??
1- is there any way to read the register esi contents in lua ??
it takes the value FFFFFFFF when a debugger present
you can look for a debugger attached using the api function is debugger present:
result = DLL.CallFunction("kernel32.dll", "IsDebuggerPresent", "", DLL_RETURN_TYPE_INTEGER, DLL_CALL_CDECL);
But i didnt attached any debugger to app, i just readed the ram dump heap, actually there arent any way to solve this so the code is visible anyway... You may try to do this in any way and it's just not possible.
2- did a 200 ms protecting timer (Set Permissions) can stop the deprotecting process ??
Nope, you will cause a huge data loading and may causes faults at loading, then i can unzip the file using code just after settings the permissions, so it not working, in addition, a little modded os will bypass that permission thing, thats not relly "secure"
3- can lua send keystrokes. that can be received by any open app. not certain app .
like this app programmed by me in vb6.
http://www.4shared.com/rar/0mynmjw6/bar ... lator.html?
that was a barcode scanner emulator .
run it then open any text editor or focus at any text box or input
fire the emuletor up with hit "space"
recieve the result at any text editor or any input at any open app
can i do like it in lua ??
You can try to create the app, get the hwnd and pass data as argument with the hwnd of your text input, then you can use the data and send back

kinda tricky, forgive long strings
thank you Mr Pabloko for answers
but in my third quistion
the app i posted (barcode emulator) send the data to any active program
whatever its name
whatever its hwnd
that what i mean

did i misunderstand your third answer ??
if you want to synthesizes a keystroke there are a few ways to do with winapi, i didn't take a look to your vb program since i saw that arab strings, i got a most deep look into that and i see wath youre doing...

If (((var_pv2) = (-32767))) Then

SendKeys "123 barcode test ok",
End If


I see youre using SendKeys to syntetize them, but i highly recommend you to use

SendInput http://msdn.microsoft.com/en-us/library ... 85%29.aspx
or
keybd_event http://msdn.microsoft.com/en-us/library ... 85%29.aspx

...

AMS has plugins to do that, i think i wrote one in .net time ago, but you may try to create a class library with vb6 with a function that recieves the char in the args and do the sendkeys thing.

Just create an activex dll in vb6 and use this code

Public Sub SendKEY(key As String)
SendKeys key
End Sub


You should be able to register it as activex with ams function registeractivex, and use luacom to interface the object that will have the name ProjectName.ClassName (replace with your strings), then you will be able to call
luacomobject:SendKey("Hi!!!1!->")
if you are more happy using dll.callfuntion you should take these steps to build a dll with vb6, the same process but you need to make changes on your link.exe file to able it to export entrypoints
http://www.elguille.info/vb/avanzado/cr ... licado.htm
as you know the code look like that
Private Sub Timer1_Timer()
KeyResult = GetAsyncKeyState(96)
    If KeyResult = -32767 Then
        SendKeys "whatever" 
    End If
Ens Sub
96 is the vkc (this line is assigning a hot key)
and -32767 is constant mean that the key is pressed
and about Arabic strings
they tell the user to hit "space" to fire the emulator up

by the way
you can use this code to send cheat code to a running game

thank you Mr Pabloko very much
you are so helpfull to me
:lol:
this will be my last try
http://www.gulfup.com/X352f71m0eyo0g8
same file with different code

ok
cdd file is hidden now
first you must locate the cdd file
cdd in privet area (no public cdd show any more)
the program seems to be run without a cdd file (like a man walking without a head)

simple hint :
if the program faces some kind of process monitors or debuggers
the program may refuse running again
until restarting pc

:pc:
Esto se puso interesante :)
keeps visible for me:
if e_Key == 13 then
ser = Input.GetText("Input1");
for i = 1,10 do
ser = Crypto.MD5DigestFromString(ser);
end
if ser == "47f2897d519995e705c064b43d79bec1"
then
Dialog.Message("Notice", "exlant boy", MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
else
Dialog.Message("no way", "very bad boy !!", MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
Input.SetText("Input1", "");
Page.SetFocus("Input1");
end
end
cdd file easy to get in autoplay folder and it doens't detected anithing as debugger because app worked all time long
Pabloko escribió:keeps visible for me:
cdd file easy to get in autoplay folder and it doens't detected anithing as debugger because app worked all time long
:')

Ya que él no pudo pabloko querria hacer un obfuscador?
wooow ... it's  good protector for cdd file

but the question now , where cdd file ?

i'm sure it in somewhere but where

I expect that pabloko can find it ....
Mr Geneus, you could think that using themida 2.xx + security heuristics could solve the problem, but there are a lot of olly modules to work with this like if you never patched that file, and uncompressors are freely avalible in a lot of sites.

You should try to going something deeper with that.

There are 2 ways to continue at this point.

1º- Total encryption, you will have to patch the original framework.
2º- Code obfuscation, that only takes a time to reveal the data.

If i were creating a protection tool, i should take care about parts that i can edit.

I will choose any asimetric key encryption, so i will be able to sign lua content with a public key and store it in the cdd, and work with lua 5.1 sources, edit their dll and change lua_dostring function for decrypt the signed lua sting with the private key, but a lot of functions in engine will be fucked up cuz dostring are doing crazy stuff, so better could be patch the framework exe to redirect that dostring thing to send to lua_dostring2 that could be the edited worker...

This will be a very hard to break security system
i will study and remember every word in your replay

thanks grandmaster Pabloko for your responding and your time.
Please update references
anyone could update and share those tools?