Results 1 to 1 of 1
  1. #1
    Vitrix Maggot
    Vitrix Maggot is offline
    Member-in-training Vitrix Maggot's Avatar
    Join Date
    2013 Apr
    Location
    Brasil
    Posts
    58
    Thanks Thanks Given 
    0
    Thanks Thanks Received 
    43
    Thanked in
    24 Posts
    Rep Power
    0

    Create Thread (EX)

    Create Thread
    Consiste em chamar um sub processo , no processo alvo importa as funções do Windows Kernel32.dll

    Is to call a sub process, the target process imports the functions of Windows Kernel32.dll

    start:

    proc fnThread
    push 0 ;uType
    push _cpt ;lpCaption
    push _txt ;lpText
    push 0 ;hWnd
    call [MessageBox]
    push 0 ;dwExitCode
    call [ExitThread]
    ret
    endp

    push dword ptr _tid ;lpThreadId
    push 0 ;dwCreationFlags
    push NULL ;lpParameter
    push dword ptr fnThread ;lpStartAddress
    push 0 ;dwStackSize
    push NULL ;lpThreadAttributes
    call [CreateThread]
    push 0
    call [ExitProcess]

    section '.data' code readable

    _cpt db 'lpCaption[FASM]', 0
    _txt db 'lpText[FASM]', 0
    _tid dd ?

    section '.idata' import data readable

    library user, 'USER32.DLL',\
    kernel32, 'KERNEL32.DLL'

    import user,\
    MessageBox, 'MessageBoxA'

    import kernel32,\
    CreateThread, 'CreateThread',\
    ExitThread, 'ExitThread',\
    ExitProcess, 'ExitProcess'
    Exemplo de Create Thread em assembly.

    A mesma função para chamar uma thread em sua Dll hacker em pascal. Só que essa é em linguagem de baixo nivel (Assembly).


    Example of Create Thread in assembly.

    The same function to call a thread in dll hacker in his Paschal. Except that this language is low level (assembly). Consists of calling a sub process, the target process imports the functions of Windows Kernel32.dll


    Complemento

    WriteProcessMemory Trampoline Função da Windows Kernel32.dll

    push lpNumberOfBytesWritten ;out
    push nSize ;in
    push lpBuffer ;in
    push lpBaseAddress ;in
    push hProcess ;in
    CALL @WriteProcessMemoryTrampoline
    @WriteProcessMemoryTrampoline:

    mov eax, WriteProcessMemory ; IAT

    mov eax, [eax+2] ; .idata

    mov eax, [eax] ; kernel32.WriteProcessMemory

    add eax, 5 ; kernel32.WriteProcessMemory+5

    mov edi, edi ; emulate first instruction

    push ebp ; emulate second instruction

    mov ebp, esp ; emulate third instruction

    jmp eax ; JMP to kernel32.WriteProcessMemory+5
    I admire most other programmers not paid any dick!!

    Admiro outros Programadores mais nao pago pau pra nenhum !!


    Skype: Vitor Monteiro

Similar Threads

  1. [Dev] RequiemCSVLdr 3.xx dev. thread
    By ADACH in forum Requiem Online
    Replies: 60
    Last Post: 2015-04-27, 10:54 PM
  2. Any development thread for Neverwinter?
    By infidel_ in forum General Talk
    Replies: 0
    Last Post: 2013-05-24, 06:06 PM
  3. [Info] Guild Wars 2 Memory Thread
    By inesbrasil in forum Guild Wars
    Replies: 1
    Last Post: 2013-03-25, 04:15 AM
  4. Hey All About to Post a new bot thread
    By xafies in forum Introduction / Say 'Hello'
    Replies: 0
    Last Post: 2012-12-05, 11:28 PM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •