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 이 부분들 어떻게 바뀐지 아시는 형님… 부탁드립니다
| 제목 | 작성자 | 작성일 | 조회 | |
|---|---|---|---|---|
| 2217 | 07-02 | 533 | ||
| 2216 | 랜계구함니다+1 | 07-02 | 478 | |
| 2215 | 07-02 | 612 | ||
| 2214 | 07-02 | 487 | ||
| 2213 | 07-02 | 2027 | ||
| 2212 | 07-02 | 994 | ||
| 2211 | 에임류 소스문의+1 | 07-02 | 520 | |
| 2210 | 64비트 소스+10 | 07-02 | 1481 | |
| 2209 | 07-02 | 744 | ||
| 2208 | 07-02 | 515 | ||
| 2207 | 07-02 | 530 | ||
| 2206 | 07-02 | 2024 | ||
| 2205 | 07-02 | 2412 | ||
| 2204 | 서든 ㅇㄷㄹ+2 | 07-02 | 615 | |
| 2203 | 07-02 | 573 | ||
| 2202 | 에@+1 | 07-02 | 593 | |
| 2201 | 07-02 | 965 | ||
| 2200 | 오@ㅍ+1 | 07-02 | 636 | |
| 2199 | 07-02 | 1780 | ||
| 2198 | 07-02 | 777 |
댓글2
64비트에 맞는 포인터랑 타입 수정 부터 하세요
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;