4 static char data[33] =
"";
5 char *ptr = &data[
bits];
6 if (
bits > 32)
return "bits>32";
8 while (
bits--) { *ptr-- = (
val & 1) ?
'1' :
'0';
val >>= 1; }
31 for (fol = cab->folders; fol; fol = fol->next) {
32 printf(
" folder@%p\n", fol);
33 printf(
" - comp_type=0x%x\n", fol->comp_type);
36 for (dat = &fol->
data; dat; dat=dat->
next) {
37 printf(
" - datasplit@%p = CAB(%p) OFFSET(%ld) BLOCKS(%d)\n",
38 dat, dat->
cab, dat->
offset, dat->num_blocks);
43 printf(
" @%p \"%s\" %d FOL(%p) OFFSET(%u)\n",
45 ((
struct mscabd_file_p *) fi)->folder,
46 ((
struct mscabd_file_p *) fi)->offset);
int bits(struct state *s, int need)
_Use_decl_annotations_ int __cdecl printf(const char *const _Format,...)
struct mscabd_cabinet base
struct mscabd_cabinet * next
struct mscabd_cabinet * prevcab
struct mscabd_file * files
struct mscabd_cabinet * nextcab
struct mscabd_file * next
struct mscabd_cabinet_p * cab
struct mscabd_folder_data * next
struct mscabd_folder_data data
struct mscabd_file * merge_next
struct mscabd_file * merge_prev
static char * binary(unsigned int val, unsigned int bits)
static void cabinfo(struct mscabd_cabinet_p *cab)