C# incrémentation de symboles ?

Statut
N'est pas ouverte pour d'autres réponses.
D

Doombringer

ex membre
Si je veux, par exemple, faire en sorte d'incrémenter un symbole, comment je pourrais faire en C# ?

par exemple, j'initie une variable de type string
je lui assigne une variable comme "allo" et la, je voudrais que le a soit +4, le l +3, le l +2, et le o +1 ce qui en résulterait en un "eonp". Vous voyez ce que je veux dire ?


et aussi, comment, encore une fois, en c#, je peux ajouter du code assembly directement dans mon code si, par exemple, j'ai une équation en assembly et ca me tente pas de la convertir en c#, comment je peux juste la mettre directement dans mon code... ?

anyways, je vais arreter de me répeter
 

titloup

Elite
Heu ta variable string reste toujours un tableau, donc...

C'est quoi ton truc Assembly? :shock: assembleur?
 

La Poubelle

Pou'r allé Danché
En trés simplifié: c'est une sorte de dll contenant tes classes.
 
1er
OP
D

Doombringer

ex membre
du assembly c du assembleur

mais jvoulais savoir tout ca passque jvoulais faire des keygens (c pas full simple) et j'apprends a programmer le c# en meme temps, alors jme suis dit : faire mes keygens avec c#. Alors certains algorithmes changent les caractères comme en les incrémentant....

alors jme demandait comment faire en c# passque je sais que ca se fait en C et en C++ mais je programmes pas en c/c++
 

La Poubelle

Pou'r allé Danché
Doombringer a dit:
du assembly c du assembleur

mais jvoulais savoir tout ca passque jvoulais faire des keygens (c pas full simple) et j'apprends a programmer le c# en meme temps, alors jme suis dit : faire mes keygens avec c#. Alors certains algorithmes changent les caractères comme en les incrémentant....

alors jme demandait comment faire en c# passque je sais que ca se fait en C et en C++ mais je programmes pas en c/c++
Euh, de l'assembleur c'est pas le language tout rigolo , tout mimi avec lequel il faut utiliser les registres AX; BX, CX, DX.

J'ai du confondre avec les principe sur l'Assembly dans la plateforme .net , sans doute à cause du C# . Mes humbles excuses.
 

AcidBird

Elite
J'ai jamais travaillé en c# mais ca doit pas être trop différent des autres. Pour ce qui est d'incrémenter tes symboles, c'est assez facile. Il suffit, caractére par caractére, de prendre la valeur ordinal du symbole et de l'incrémenter du nombre que tu veux avant de la remettre dans le type voulut. Attention, un a et A n'auront pas la même valeur ordinale. De même Si tu incrémente ord(Z) de 1, tu n'auras pas a mais un autre caractère, à toi de checker pour ce genre de chose.
 
1er
OP
D

Doombringer

ex membre
je vois, mais est-ce que quelqu'un sait comment faire en c# ? passque g meme pas le MSDN.

mais par exemple j'ai cet algo :

Code:
:0040110C 0FBE840D48FFFFFF        movsx eax, byte ptr [ebp+ecx-000000B8]<--- Move the first Char in EAX
:00401114 41                      inc ecx				<--- ECX +1
:00401115 33C1                    xor eax, ecx				<--- XOR ECX with EAX
:00401117 03D8                    add ebx, eax				<--- ADD EAX to EBX
:00401119 3B4DD8                  cmp ecx, dword ptr [ebp-28]		<--- Compare EBP-28 (Length of our Name) with ECX
:0040111C 75EE                    jne 0040110C				<--- If not equal we jump and repeat this loop, else continue
:0040111E 6BC006                  imul eax, 00000006			<--- Multiply 00000006 with EAX
:00401121 C1E307                  shl ebx, 07				<--- Shift EBX to the left with 07
:00401124 03C3                    add eax, ebx				<--- ADD EBX to EAX
:00401126 8945C8                  mov dword ptr [ebp-38], eax		<--- Save EAX in EBP-38
:00401129 FF75C8                  push [ebp-38]				<--- Save the New Value
ensuite, y disent dans mon tutorial l'explication de cet algo :

And here we have the Algo, damn small ;)
So, it does this:

It takes the first Char of our Name and puts it in EAX
Increase ECX with 01
Then XOR ECX with EAX
Then ADD EAX to EBX
Compare ECX with the length of our Name
If not equal we repeat the loop, else continue

Then it Multiplies EAX with 06
Shifts EBX to the left with 07
And then ADDs EBX to EAX
Final Result in EAX ---> use %lX to show the Serial in Readable Format (Ascii))

That's all :)
I don't need to show more because after this piece of Code it will use "lstrcmpyA" to Compare the "Real" Serial with the "Fake" Serial :)
I think you can KeyGen this in YOUR language now :)
y disent a la fin : I think you can Keygen this in YOUR language now :)

mais non, jarrive pas, c pas que je sais pas programmer mais je sais juste pas comment faire CA.

et aussi, chus pas VRAIMENT familier avec le assembleur, je comprends +ou- ce qui ce passe....

si quelqu'un pouvait m'aider svp
 

La Poubelle

Pou'r allé Danché
Tu as le net, donc tu as msdn :

http://msdn.microsoft.com/


:wink:

Il y a un forum france assembleur bien foutu sur le net (je connais plus l'adresse exact, sorry). Mais je n'avais pas eu de mal à le trouver avec google à une époque (c'est lointain .... :mrgreen: )
 
1er
OP
D

Doombringer

ex membre
j'ai cherché pour : "ordinal value" dans le MSDN mais j'ai rien trouvé (edit: j'ai rien trouvé d'intéressant)...

est-ce que je cherche pour la bonne chose ou "j'me fourre le doigt dans l'oeil" ?
 

titloup

Elite
Doombringer a dit:
du assembly c du assembleur

mais jvoulais savoir tout ca passque jvoulais faire des keygens (c pas full simple) et j'apprends a programmer le c# en meme temps, alors jme suis dit : faire mes keygens avec c#. Alors certains algorithmes changent les caractères comme en les incrémentant....

alors jme demandait comment faire en c# passque je sais que ca se fait en C et en C++ mais je programmes pas en c/c++
Connais pas Assembly mais je connais Assembler aka Assembleur :D
 

titloup

Elite
Laisse tomber, faut compreendre l'assembleur et de l'assembleur faut déjà savoir ce qu'on mets dans les registres avant... car tout calcul passe par là et bonjour la compréhension...
 
Statut
N'est pas ouverte pour d'autres réponses.
Haut