87 lines
1.9 KiB
C
87 lines
1.9 KiB
C
#pragma once
|
|
|
|
#pragma pack(push, 1)
|
|
#pragma warning(push)
|
|
#pragma warning(disable:4307)
|
|
#pragma warning(disable:4308)
|
|
|
|
//¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦´
|
|
// <UTILITIES>
|
|
#define ALIGN32BYTE(size) (((size) + 0x1F) & ~0x1F)
|
|
#define RANGE_RND_064_128(value) ( (((value)&(128-1))) | 64 )
|
|
#define RANGE_RND_000_004(value) ((value)&(4-1))
|
|
|
|
#define GET_ARRAY_SIZE(type, array) ((DWORD)sizeof(array)/sizeof(type))
|
|
#define EXPORTER(p_fn) do { PVOID p = ((PVOID)&p_fn); } while(0)
|
|
|
|
// CPSTRUCT - Crypt Packet STRUCTure
|
|
typedef struct CPSTRUCT* PCPSTRUCT;
|
|
typedef struct MSG_STRUCT* PMSG_STRUCT;
|
|
|
|
struct MSG_BASE_CRYPT
|
|
{
|
|
BYTE SNKEY;
|
|
BYTE CRC;
|
|
};
|
|
|
|
struct MSG_STRUCT
|
|
{
|
|
union uPSTREAM
|
|
{
|
|
struct MSG_BASE
|
|
{
|
|
BYTE CATEGORY;
|
|
BYTE PROTOCOL;
|
|
};
|
|
BYTE pSTREAM[2];
|
|
};
|
|
|
|
inline static PMSG_STRUCT ToMSG( BYTE* pStream )
|
|
{
|
|
return (PMSG_STRUCT)(pStream);
|
|
}
|
|
|
|
inline static BYTE* ToBYTE( PMSG_STRUCT pMsg )
|
|
{
|
|
return (BYTE*)(pMsg);
|
|
}
|
|
};
|
|
|
|
struct CPSTRUCT
|
|
{
|
|
MSG_BASE_CRYPT CRYPT_HDR;
|
|
MSG_STRUCT CPMSG;
|
|
|
|
inline static PCPSTRUCT ToCRYPTHDR( BYTE* pStream )
|
|
{
|
|
return (PCPSTRUCT)(pStream-sizeof(MSG_BASE_CRYPT));
|
|
}
|
|
|
|
inline static BYTE* ToMESSAGE( PCPSTRUCT pStream )
|
|
{
|
|
return (BYTE*)&(pStream->CPMSG);
|
|
}
|
|
};
|
|
|
|
//#if (HEX_KEY_1_GENERATOR_001 == 0)
|
|
//#elif (HEX_KEY_1_GENERATOR_001 == 1)
|
|
//#elif (HEX_KEY_1_GENERATOR_001 == 2)
|
|
//#elif (HEX_KEY_1_GENERATOR_001 == 3)
|
|
//#elif (HEX_KEY_1_GENERATOR_001 == 4)
|
|
//#elif (HEX_KEY_1_GENERATOR_001 == 5)
|
|
//#elif (HEX_KEY_1_GENERATOR_001 == 6)
|
|
//#elif (HEX_KEY_1_GENERATOR_001 == 7)
|
|
//#elif (HEX_KEY_1_GENERATOR_001 == 8)
|
|
//#elif (HEX_KEY_1_GENERATOR_001 == 9)
|
|
//#elif (HEX_KEY_1_GENERATOR_001 == 10)
|
|
//#elif (HEX_KEY_1_GENERATOR_001 == 11)
|
|
//#elif (HEX_KEY_1_GENERATOR_001 == 12)
|
|
//#elif (HEX_KEY_1_GENERATOR_001 == 13)
|
|
//#elif (HEX_KEY_1_GENERATOR_001 == 14)
|
|
//#elif (HEX_KEY_1_GENERATOR_001 == 15)
|
|
//#endif //(HEX_KEY_1_GENERATOR_001 == n)
|
|
|
|
#pragma warning(pop)
|
|
#pragma pack(pop)
|
|
|