Сейчас на форуме: yashechka (+5 невидимых)

 eXeL@B —› Крэки, обсуждения —› Перевести с Дельфи на Ассемблер. Help!
Посл.ответ Сообщение

Ранг: 0.0 (гость)
Активность: 0=0
Статус: Участник

Создано: 05 июня 2005 23:32 · Поправил: Модератор
· Личное сообщение · #1

Помогите перевести на асм вот этот код:

Function InjectDll(Process: dword; ModulePath: PChar): boolean;
var
Memory:pointer;
Code: dword;
BytesWritten: dword;
ThreadId: dword;
hThread: dword;
hKernel32: dword;
Inject: packed record
PushCommand:byte;
PushArgumentWORD;
CallCommand:WORD;
CallAddrWORD;
PushExitThread:byte;
ExitThreadArg:dword;
CallExitThread:word;
CallExitThreadAddrWord;
AddrLoadLibrary:pointer;
AddrExitThread:pointer;
LibraryName:array[0..MAX_PATH] of char;
end;
begin
Result := false;
Memory := VirtualAllocEx(Process, nil, sizeof(Inject),
MEM_COMMIT, PAGE_EXECUTE_READWRITE);
if Memory = nil then Exit;

Code := dword(Memory);
//инициализация внедряемого кода:
Inject.PushCommand := $68;
inject.PushArgument := code + $1E;
inject.CallCommand := $15FF;
inject.CallAddr := code + $16;
inject.PushExitThread := $68;
inject.ExitThreadArg := 0;
inject.CallExitThread := $15FF;
inject.CallExitThreadAddr := code + $1A;
hKernel32 := GetModuleHandle('kernel32.dll');
inject.AddrLoadLibrary := GetProcAddress(hKernel32, 'LoadLibraryA');
inject.AddrExitThread := GetProcAddress(hKernel32, 'ExitThread');
lstrcpy(@inject.LibraryName, ModulePath);
//записать машинный код по зарезервированному адресу
WriteProcessMemory(Process, Memory, @inject, sizeof(inject), BytesWritten);
//выполнить машинный код
hThread := CreateRemoteThread(Process, nil, 0, Memory, nil, 0, ThreadId);
if hThread = 0 then Exit;
CloseHandle(hThread);
Result := True;
end;




Ранг: 103.2 (ветеран)
Активность: 0.020
Статус: Участник
Нолик :)

Создано: 05 июня 2005 23:44
· Личное сообщение · #2

pushad
invoke ban, OnikSS
popad
ret



Ранг: 495.3 (мудрец)
Активность: 0.30
Статус: Участник

Создано: 06 июня 2005 00:48
· Личное сообщение · #3

Zer0
Это точно.
Я в Дельфи не бум-бум, но слыхал, что она тоже Асмовый листинг генерит при сборке

-----
Всем привет, я вернулся




Ранг: 40.9 (посетитель)
Активность: 0.020
Статус: Участник
diProtector Software

Создано: 06 июня 2005 08:41
· Личное сообщение · #4

OnikSS

возьми IDA и не парься


 eXeL@B —› Крэки, обсуждения —› Перевести с Дельфи на Ассемблер. Help!
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати