ivfc.h 574 B

1234567891011121314151617181920212223242526272829303132
  1. #pragma once
  2. #include <stdint.h>
  3. #include <stdbool.h>
  4. #define IVFC_MAGIC 0x43465649
  5. #define IVFC_LEVEL_MAX 0x6
  6. typedef struct
  7. {
  8. uint64_t offset;
  9. uint64_t size;
  10. uint32_t block_size_power;
  11. uint32_t reserved;
  12. } ivfc_level_t;
  13. typedef struct
  14. {
  15. uint32_t magic;
  16. uint32_t version; // always 2?
  17. uint32_t hash_size;
  18. uint32_t level_count; // always 7 for program ncas?
  19. ivfc_level_t level[IVFC_LEVEL_MAX];
  20. uint8_t salt_seed[0x20]; // empty?
  21. uint8_t hash[0x20];
  22. } ivfc_header_t;
  23. //
  24. bool ivfc_check_if_magic_valid(uint32_t magic);