Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //XOSC v2 full Source
- #pragma once
- #include "stdafx.h"
- #define XOSC_FOOTER_MAGIC 0x5F534750
- typedef enum _XOSC_FLAGS : QWORD {
- XOSC_FLAGS_TASK_SHOULD_EXIT = 0x2000000000000000,
- XOSC_FLAGS_TITLE_TERMINATED = 0x4000000000000000
- } XOSC_FLAGS;
- typedef enum _SV_PROTECTED_FLAGS {
- FLAG_SV_PROTECTED_NONE = 0x0,
- FLAG_SV_PROTECTED_NO_EJECT_REBOOT = 0x1,
- FLAG_SV_PROTECTED_DISC_AUTHENTICATED = 0x2,
- FLAG_SV_PROTECTED_AUTH_EX_CAPABLE = 0x4
- } SV_PROTECTED_FLAGS;
- #pragma pack(1)
- typedef struct _XOSC {
- DWORD dwResult;
- BYTE stuff1[0x4];
- QWORD qwOperations;
- BYTE stuff2[0x40];
- BYTE bCpuKeyHash[0x10];
- BYTE bKvHash[0x10];
- BYTE stuff3[0x268];
- DWORD dwFooterMagic;
- BYTE bKvHash1[0x50];
- BYTE bKvHash2[0x60];
- BYTE bKvHash3[0x70];
- BYTE bKvHash4[0x80];
- DWORD dwUnknown9;
- } XOSC, *pXOSC;
- #pragma pack()
- typedef BYTE * (*pfnXosc)(DWORD dwTaskParam1, BYTE* pbDaeTableName, DWORD cbDaeTableName, XOSC* pBuffer, DWORD cbBuffer);
- DWORD CreateXOSCBuffer(DWORD dwTaskParam1, BYTE* pbDaeTableName, DWORD cbDaeTableName, XOSC* pBuffer, DWORD cbBuffer);
Advertisement
Add Comment
Please, Sign In to add comment