VoltMod
C++23 framework for CS2 server plugins
Loading...
Searching...
No Matches
RelativeAddress.hpp File Reference

Checked rel32 decoding for signature bindings. More...

#include <cstddef>
#include <cstdint>

Go to the source code of this file.

Namespaces

namespace  VoltMod
 

Functions

constexpr uintptr_t VoltMod::Rel32Site (uintptr_t matchAddress, int ripOffset) noexcept
 
constexpr uintptr_t VoltMod::Rel32Target (uintptr_t site, int32_t displacement, int ripSize=Rel32Size) noexcept
 
constexpr bool VoltMod::Rel32ReadInBounds (uintptr_t moduleBase, size_t moduleSize, uintptr_t matchAddress, int ripOffset) noexcept
 

Variables

constexpr int VoltMod::Rel32Size = 4
 

Detailed Description

Checked rel32 decoding for signature bindings.

The displacement starts at match + ripOffset and is relative to the end of the instruction. Keeping the arithmetic pure makes malformed offsets testable without reading process memory.

Definition in file RelativeAddress.hpp.