救救我啊!!!!(200人民币现金请救我) (0分)

  • 主题发起人 主题发起人 storney
  • 开始时间 开始时间
S

storney

Unregistered / Unconfirmed
GUEST, unregistred user!
请告知你的银行帐号,本人立刻汇款200人民币现金)
谁帮我把以下汇编语句改成DELPHI语言实现,这是一个字符加密汇编程序,谢谢!!
:00000000 50 push eax
:00000001 53 push ebx
:00000002 51 push ecx
:00000003 52 push edx
:00000004 55 push ebp
:00000005 56 push esi
:00000006 57 push edi
:00000007 1E push ds
:00000008 06 push es
:00000009 9C pushfd
:0000000A BF00001E0E mov edi, 0E1E0000
:0000000F 1F pop ds
:00000010 BE67001FB9 mov esi, B91F0067
:00000015 06 push es
:00000016 008A211E0E1F add byte ptr [edx+1F0E1E21], cl
:0000001C 88241F mov byte ptr [edi+ebx], ah
:0000001F 47 inc edi
:00000020 46 inc esi
:00000021 E2F4 loop 00000017
:00000023 1E push ds
:00000024 0E push cs
:00000025 1F pop ds
:00000026 BE67008A04 mov esi, 048A0067
:0000002B 247F and al, 7F
:0000002D 2C20 sub al, 20
:0000002F B400 mov ah, 00
:00000031 8BF8 mov edi, eax
:00000033 B906008A24 mov ecx, 248A0006
:00000038 8A0532E08824 mov al, byte ptr [2488E032]
:0000003E 47 inc edi
:0000003F 46 inc esi
:00000040 E2F4 loop 00000036
:00000042 1F pop ds
:00000043 BF00001E0E mov edi, 0E1E0000
:00000048 1F pop ds
:00000049 BE67001FB9 mov esi, B91F0067
:0000004E 06 push es
:0000004F 001E add byte ptr [esi], bl
:00000051 0E push cs
:00000052 1F pop ds
:00000053 8A241F mov ah, byte ptr [edi+ebx]
:00000056 8821 mov byte ptr [ecx], ah
:00000058 47 inc edi
:00000059 46 inc esi
:0000005A E2F4 loop 00000050
:0000005C 9D popfd
:0000005D 07 pop es
:0000005E 1F pop ds
:0000005F 5F pop edi
:00000060 5E pop esi
:00000061 5D pop ebp
:00000062 5A pop edx
:00000063 59 pop ecx
:00000064 5B pop ebx
:00000065 58 pop eax
:00000066 CB retf
:00000067 44 inc esp
:00000068 45 inc ebp
:00000069 4C dec esp
:0000006A 4B dec ebx
:0000006B 54 push esp
:0000006C 47 inc edi
 
在delphi中可以用汇编语言啊,用asm关键字,给你个例子
begin
asm
{$IFDEF Win32}
push esi
push edi
push eax
push ebx
push ecx
push edx
lea edi, Crc16Tab
mov esi, Buffer
mov ax, InitCrc
mov ecx, Length
or ecx, ecx
jz @@done
@@loop:
xor ebx, ebx
mov bl, ah
mov ah, al
lodsb
shl bx, 1
add ebx, edi
xor ax, [ebx]
loop @@loop
@@done:
mov Result, ax
pop edx
pop ecx
pop ebx
pop eax
pop edi
pop esi
{$else
}
lea di, Crc16Tab
push ds
pop es
push ds
lds si, Buffer
mov ax, InitCrc
mov cx, Length
or cx, cx
jz @@done
@@loop:
xor bx, bx
mov bl, ah
mov ah, al
lodsb
shl bx, 1
xor ax, es:[di + bx]
loop @@loop
pop ds
@@done:
mov Result, ax
{$ENDIF}
end;
 
lovejingtao@21cn.com
 
后退
顶部