Bhop in masm x86

Discussion in 'Sources' started by calb, 12 May 2018.

Advertisement:

  1. calb

    calb Well-Known Member

    Joined:
    30 Dec 2016
    Messages:
    147
    Likes Received:
    258
    Gude,

    ich habe für ein anderes Projekt einen simplen internen Bhop für Csgo geschrieben. Der Code ist wirklich simpel gehalten, wenn ich grünes Licht von den Moderatoren bekomme dann könnt ihr euch auch ansehen warum. :grin:

    Code:
    .386
    
    .model flat, stdcall
    
    OPTION  CaseMap:None
    
    ; Includes
     include C:\masm32\include\windows.inc
    
     include C:\masm32\include\kernel32.inc
    
     include C:\masm32\include\user32.inc
    
    
     includelib C:\masm32\lib\kernel32.lib
    
     includelib C:\masm32\lib\user32.lib
    
    
    ; Section for variables
    .data
    
    offset_dwLocalPlayer dd 00AA7AB4h
    offset_dwFlags       dd 00000100h
    offset_dwForceJump   dd 04F1970Ch
    
    szClientModuleName   db 'client.dll', 0
    
    szErrorCaption       db 'Error', 0
    szErrorClientName    db 'Could not retrieve image base from client.dll', 0
    
    .data?
    
    dwClientDll dd ?
    dwLocalPlayer dd ?
    dwFlags dd ?
    dwForceJump dd ?
    
    .code
    
    main proc hInstDLL:dword, fdwReason:dword, lpReserved:dword
    
        Setup:
    
            push offset szClientModuleName
            call GetModuleHandleA
    
            cmp eax, 0
    
            jz clientModuleError
    
            mov dword ptr [ dwClientDll ], eax
    
            add eax, dword ptr [ offset_dwLocalPlayer ]
    
            mov eax, [ eax ]
    
            cmp eax, 0
    
            jz HoldMyBeer
    
            mov dword ptr [ dwLocalPlayer ], eax
    
            add eax, dword ptr [ offset_dwFlags ]
    
            cmp eax, 0
    
            jz HoldMyBeer
    
            mov dword ptr [ dwFlags ], eax
    
            xor eax, eax
    
            mov eax, dword ptr [ dwClientDll ]
    
            add eax, dword ptr [ offset_dwForceJump ]
    
            cmp eax, 0
    
            jz HoldMyBeer
    
            mov dword ptr [ dwForceJump ], eax
    
            jmp Bhop
    
       
        Bhop:
    
            invoke GetAsyncKeyState, VK_SPACE
    
            cmp eax, 0
    
            jz BeineStillhalten
    
            mov eax, dword ptr [ dwLocalPlayer ]
            add eax, dword ptr [ offset_dwFlags ]
    
            mov eax, [ eax ]
    
            cmp eax, 0
    
            jz BeineStillhalten
    
            and eax, 1
    
            cmp eax, 0
    
            jz BeineStillhalten
    
            mov eax, dword ptr [ dwForceJump ]
    
            mov dword ptr [ eax ], 6
    
            jmp BeineStillhalten
    
       
        HoldMyBeer:
    
            invoke Sleep, 1
    
            jmp Setup
    
       
        BeineStillhalten:
    
            invoke Sleep, 1
    
            jmp Bhop
    
    
        clientModuleError:
    
            push 0
            push offset szErrorCaption
            push offset szErrorClientName
            push 0
            call MessageBoxA
    
            jmp HoldMyBeer
    
    
    main endp
    
    end main
    
    
    Ich möchte mich speziell bei floezzzzzzzzzzzznnn bedanken, da ich indirekt durch ihn den Schubser in Richtung Asm bekommen habe. ^^

    Klar, da wäre ich dabei! :grin:

    Ich wünsche euch einen schönen Samstag.

    Grüße, calb.
     
    rennagro, COWBOYS0HN, babina and 7 others like this.

    Advertisement:

  2. ARIA

    ARIA Well-Known Member

    Joined:
    7 Dec 2014
    Messages:
    383
    Likes Received:
    405
    calb, du bist 1 wahrer ehrenmann, ballerst guten content raus, gibst kein bullshit von dir.
    kann dem mal einer honorable geben ?!
     
    palonE, Gab, imi-tat0r and 5 others like this.

    Advertisement:

  3. kogu1

    kogu1 Honorable

    Joined:
    8 Nov 2011
    Messages:
    5,129
    Likes Received:
    1,419
    freut mich zu sehen das du einfach weitermachs, wie siehts mit deinem microcontroller aus? :tongueclosed:
     
  4. calb

    calb Well-Known Member

    Joined:
    30 Dec 2016
    Messages:
    147
    Likes Received:
    258
    Dankeschön! ^^

    Meinst wahrscheinlich den fpga, worüber wir in der Shoutbox gesprochen hatten. Habe das Projekt umgesetzt, also ne Schaltung für eine Wertannäherung von transzendente Funktionen. Der ganze Kram in vhdl war echt anstrengend, aber war ein klasse Lernprojekt. :grin: Habe es ja nur gemacht, weil ich wissen wollte inwiefern das Ding schneller ist. Also habe ich es auf meinen xilinx spartan 3 übertragen und es konnte unfassbar schnell Wertannäherungen bestimmen, diese hatten im Durchschnitt eine Abweichung von nur 0,00018% gehabt. Habe mit dem Ding sogar den CAS von meinem Mathelehrer schlagen können. :tongueclosed:

    Grüße, calb.
     
    COWBOYS0HN and kogu1 like this.