25 lines
356 B
C++
Raw Normal View History

2022-09-08 20:38:45 +00:00
#pragma once
#include <cstdint>
#pragma pack(push, 1)
class Obf32
{
std::uint32_t a;
std::uint32_t b;
std::uint32_t c;
std::uint32_t d;
public:
inline void operator=(std::uint32_t val)
{
a = val & d;
b = val & ~d;
}
inline operator std::uint32_t()
{
return (a & d) | (b & ~d);
}
};
static_assert(sizeof(Obf32) == 0x10);
#pragma pack(pop)