46 if (!
fn || !
fn->data || !
fn->length)
return NULL;
48 fh->data = (
char *)
fn->data;
49 fh->length =
fn->length;
62 todo =
fh->length -
fh->posn;
65 fh->posn += todo;
return todo;
71 todo =
fh->length -
fh->posn;
74 fh->posn += todo;
return todo;
112 0x4D,0x53,0x43,0x46,0x00,0x00,0x00,0x00,0xFD,0x00,0x00,0x00,0x00,0x00,0x00,
113 0x00,0x2C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x01,0x01,0x00,0x02,0x00,
114 0x00,0x00,0x22,0x06,0x00,0x00,0x5E,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x4D,
115 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x6C,0x22,0xBA,0x59,0x20,0x00,
116 0x68,0x65,0x6C,0x6C,0x6F,0x2E,0x63,0x00,0x4A,0x00,0x00,0x00,0x4D,0x00,0x00,
117 0x00,0x00,0x00,0x6C,0x22,0xE7,0x59,0x20,0x00,0x77,0x65,0x6C,0x63,0x6F,0x6D,
118 0x65,0x2E,0x63,0x00,0xBD,0x5A,0xA6,0x30,0x97,0x00,0x97,0x00,0x23,0x69,0x6E,
119 0x63,0x6C,0x75,0x64,0x65,0x20,0x3C,0x73,0x74,0x64,0x69,0x6F,0x2E,0x68,0x3E,
120 0x0D,0x0A,0x0D,0x0A,0x76,0x6F,0x69,0x64,0x20,0x6D,0x61,0x69,0x6E,0x28,0x76,
121 0x6F,0x69,0x64,0x29,0x0D,0x0A,0x7B,0x0D,0x0A,0x20,0x20,0x20,0x20,0x70,0x72,
122 0x69,0x6E,0x74,0x66,0x28,0x22,0x48,0x65,0x6C,0x6C,0x6F,0x2C,0x20,0x77,0x6F,
123 0x72,0x6C,0x64,0x21,0x5C,0x6E,0x22,0x29,0x3B,0x0D,0x0A,0x7D,0x0D,0x0A,0x23,
124 0x69,0x6E,0x63,0x6C,0x75,0x64,0x65,0x20,0x3C,0x73,0x74,0x64,0x69,0x6F,0x2E,
125 0x68,0x3E,0x0D,0x0A,0x0D,0x0A,0x76,0x6F,0x69,0x64,0x20,0x6D,0x61,0x69,0x6E,
126 0x28,0x76,0x6F,0x69,0x64,0x29,0x0D,0x0A,0x7B,0x0D,0x0A,0x20,0x20,0x20,0x20,
127 0x70,0x72,0x69,0x6E,0x74,0x66,0x28,0x22,0x57,0x65,0x6C,0x63,0x6F,0x6D,0x65,
128 0x21,0x5C,0x6E,0x22,0x29,0x3B,0x0D,0x0A,0x7D,0x0D,0x0A,0x0D,0x0A
161 printf(
"Filename: %s\nContents:\n",
file->filename);
175 fprintf(stderr,
"can't make decompressor\n");
static void * mem_alloc(struct mspack_system *self, size_t bytes)
static void mem_free(void *buffer)
static struct mspack_system mem_system
static int mem_seek(struct mem_file *fh, off_t offset, int mode)
static int mem_read(struct mem_file *fh, void *buffer, int bytes)
static int mem_write(struct mem_file *fh, void *buffer, int bytes)
static void mem_copy(void *src, void *dest, size_t bytes)
static unsigned char embedded_cab[]
static struct mem_file * mem_open(struct mspack_system *self, struct mem_buf *fn, int mode)
static void mem_close(struct mem_file *fh)
static void mem_msg(struct mem_file *file, const char *format,...)
static off_t mem_tell(struct mem_file *fh)
_Use_decl_annotations_ int __cdecl printf(const char *const _Format,...)
RZ_API void Ht_() free(HtName_(Ht) *ht)
memcpy(mem, inblock.get(), min(CONTAINING_RECORD(inblock.get(), MEMBLOCK, data) ->size, size))
void * malloc(size_t size)
static const char struct stat static buf struct stat static buf static idle const char static path static fd const char static len const void static prot const char struct module static image struct kernel_sym static table unsigned char static buf static fsuid unsigned struct dirent unsigned static count const struct iovec static count static pid const void static len static flags const struct sched_param static p static pid static policy struct timespec static tp static suid unsigned fn
z_const unsigned char * next
int(* last_error)(struct mscab_decompressor *self)
struct mscabd_cabinet *(* open)(struct mscab_decompressor *self, const char *filename)
int(* extract)(struct mscab_decompressor *self, struct mscabd_file *file, const char *filename)
void(* close)(struct mscab_decompressor *self, struct mscabd_cabinet *cab)
struct mscabd_file * files