채팅0

    64비트 몸

    조회수 647

    function BodySetValue(Value: Single): Boolean;
    begin
     try
       PBYTE(@Value)^ := PBYTE(@Value)^ xor $3A;
       PBYTE(Pointer(DWORD(@Value) + 3))^ := PBYTE(Pointer(DWORD(@Value) + 3))^ xor $B8;

       WPM4Byte(BodyAlloc[2] + $660, PDWORD(@Value)^);
     except
     end;
    end;

    end.

     

    3A, B8, +3 이 부분들 어떻게 바뀐지 아시는 형님… 부탁드립니다

    댓글2

    회원프로필

    64비트에 맞는 포인터랑 타입 수정 부터 하세요

    2023.07.02 00:33
    회원프로필

    function BodySetValue(Value: Single): Boolean;
    var
      TempValue: UInt32;
    begin
      try
        TempValue := PUInt32(@Value)^;
        TempValue := TempValue xor $3A;
        TempValue := TempValue xor $B8;

        WPM4Byte(BodyAlloc[2] + $660, TempValue);
        Result := True;
      except
        Result := False;
      end;
    end;

    2023.07.02 01:32

      게시글 리스트
      제목작성자작성일조회
      221407-02474
      221307-021961
      221207-02980
      221107-02508
      221007-021435
      220907-02732
      220807-02502
      220707-02517
      220607-021957
      220507-022343
      220407-02602
      220307-02560
      220207-02580
      220107-02940
      220007-02625
      219907-021703
      219807-02759
      219707-01648
      219607-011209
      219507-01563