채팅0

    64비트 몸

    조회수 652

    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

      게시글 리스트
      제목작성자작성일조회
      공지10-208480
      967810-2464
      967710-2467
      967610-2398
      967510-2266
      967410-2259
      967310-20250
      967210-17252
      967110-15331
      967010-15588
      966910-15141
      966810-15122
      966710-14222
      966610-13133
      966510-12215
      966410-09274
      966310-09162
      966210-09485
      966110-09508
      966010-08320
      안내 배너 이미지