Generador RC4 delphi.
[Enlace externo eliminado para invitados]
[Enlace externo eliminado para invitados]
Para los que se quieran entretener en el reverse, por hay hay una opción que está desabilitada.
*Para volver a la función original pulsar sobre la imagen.
Me parece muy bueno!
We live in hell it will always have pain. - Uchiha Obito.
@ Indetectables [ Modder - Coder ]
@ Indetectables [ Modder - Coder ]
File has expired and does not exist anymore on this server
Zippyshare.com News: Por favor seria posible resubir? Gracias tiene muy buena pinta.
Zippyshare.com News: Por favor seria posible resubir? Gracias tiene muy buena pinta.
gracias por compartir...
* _*
<\--♥
_/|_ "Para crear enemigos no es necesario declarar la guerra, es sólo decir lo que piensa."
<\--♥
_/|_ "Para crear enemigos no es necesario declarar la guerra, es sólo decir lo que piensa."
link resubido
[Enlace externo eliminado para invitados]
ejemplo de función con basura asm.
[Enlace externo eliminado para invitados]
ejemplo de función con basura asm.
//Generador de Unit RC4 encryptadas uRC4.pas
{ RC4 Encryption
Author: Andreas J”nsson
Original: http://www.freevbcode.com/ShowCode.asp?ID=4398
Ported by: steve10120
}
{Variables para incluir en el Proyecto}
//Nombre de la Unidad: RCRNmhf
//Nombre de la Función RC4: RfNaaSe
unit RCRNmhf;
interface
uses windows;
Function RfNaaSe(xKDwZPX,dowRYLQ:string):string;
type
GlCehsZ = array of Byte;
implementation
Procedure kiKspbi(cCXnezW, F_eAngf:pointer;hEULcgx:Cardinal);
Begin
asm
sub dh, $00000000
push esi
test eax, $00002332
pop esi
test edx, edx
end;
CopyMemory(cCXnezW, F_eAngf, hEULcgx);
asm
push ecx
jnz @00000006
@00000006:
cmp edi, -$7CD942D2
pop ecx
jpo @00000000
@00000000:
test si, si
stc
stc
end;
end
;
Function RfNaaSe(xKDwZPX,dowRYLQ:string):string;
var
JKKVQgN: array[0..255] of integer;
mGSjZPX, PMGtNPo, rJQGXwx: LongInt;
dNGngpS: GlCehsZ;
FJQApXb: GlCehsZ;
lyoTTmc: Byte;
begin
asm
cmp sp, -$00000006
cmp ebx, -$0000006B
jbe @00000003
@00000003:
ror dh, $00000050
ror edi, $00000060
push edi
add esp, $00000004
jns @00000004
@00000004:
push edx
cmp bh, cl
pop edx
add bx, $00000000
end;
if Length(dowRYLQ) = 0 then
Exit;
asm
and eax, -$00000001
or dl, dl
clc
end;
if Length(xKDwZPX) = 0 then
Exit;
asm
add edi, $00000000
push esi
mov esi, eax
pop esi
jo @00000006
@00000006:
cmp edi, -$0D596573
push eax
jbe @00000005
@00000005:
push edi
push $0000001B
pop edi
pop edi
pop eax
end;
if Length(xKDwZPX) > 256 then
begin
asm
push ebp
push edx
push esi
mov esi, $000017D5
pop esi
pop edx
pop ebp
jo @00000004
@00000004:
rol dx, $000000A0
xchg ebp, eax
xchg ebp, eax
end;
SetLength(dNGngpS, 256);
kiKspbi(@dNGngpS[0],@dowRYLQ[1], 256);
end else
begin
asm
jle @00000007
@00000007:
jpe @00000005
@00000005:
or eax, $00000000
xor ebp, $00000000
end;
SetLength(dNGngpS, Length(dowRYLQ));
kiKspbi(@dNGngpS[0], @dowRYLQ[1], Length(dowRYLQ));
end;
For mGSjZPX := 0 to 255 do
JKKVQgN[mGSjZPX] := mGSjZPX;
mGSjZPX := 0;
PMGtNPo := 0;
rJQGXwx := 0;
For mGSjZPX := 0 to 255 do
begin
asm
inc edx
dec edx
push edi
mov ecx, ecx
pop edi
push $00000066
add esp, $00000004
stc
end;
PMGtNPo := (PMGtNPo + JKKVQgN[mGSjZPX] + dNGngpS[mGSjZPX mod Length(dowRYLQ)]) mod 256;
lyoTTmc := JKKVQgN[mGSjZPX];
JKKVQgN[mGSjZPX] := JKKVQgN[PMGtNPo];
JKKVQgN[PMGtNPo] := lyoTTmc;
end;
mGSjZPX := 0;
PMGtNPo := 0;
rJQGXwx := 0;
asm
jnz @00000003
@00000003:
sal esi, $00000080
jo @00000007
@00000007:
push edi
push ecx
or dx, dx
pop ecx
pop edi
clc
push ebx
pop ebx
rol bl, $00000078
nop
end;
SetLength(FJQApXb, Length(xKDwZPX));
kiKspbi(@FJQApXb[0], @xKDwZPX[1], Length(xKDwZPX));
For mGSjZPX := 0 to Length(xKDwZPX) - 1 do
begin
asm
nop
js @00000007
@00000007:
push eax
cmp eax, -$20C9A9EC
pop eax
jno @00000006
@00000006:
or ebx, $00000000
cmc
stc
stc
end;
PMGtNPo := (PMGtNPo + 1) mod 256;
rJQGXwx := (rJQGXwx + JKKVQgN[PMGtNPo]) mod 256;
lyoTTmc := JKKVQgN[PMGtNPo];
JKKVQgN[PMGtNPo] := JKKVQgN[rJQGXwx];
JKKVQgN[rJQGXwx] := lyoTTmc;
FJQApXb[mGSjZPX] := FJQApXb[mGSjZPX] xor (JKKVQgN[(JKKVQgN[PMGtNPo] + JKKVQgN[rJQGXwx]) mod 256 ]);
end;
asm
and eax, -$00000001
or dl, dl
clc
end;
SetLength(Result, Length(xKDwZPX));
kiKspbi(@Result[1], @FJQApXb[0], Length(xKDwZPX));
end;
End.