libavcodec/cook.c:632: error: Buffer Overrun L2
  Offset: [min(7, `*category`), max(7, `*category`)] Size: 7 by call to `unpack_SQVH`.

libavcodec/cook.c:618:1: Parameter `*category`
616. 
617. 
618. static void decode_vectors(COOKContext* q, COOKSubpacket* p, int* category,
     ^
619.                            int *quant_index_table, float* mlt_buffer){
620.     /* A zero in this table means that the subband coefficient is

libavcodec/cook.c:632:16: Call
630.         index = category[band];
631.         if(category[band] < 7){
632.             if(unpack_SQVH(q, p, category[band], subband_coef_index, subband_coef_sign)){
                    ^
633.                 index=7;
634.                 for(j=0 ; j<p->total_subbands ; j++) category[band+j]=7;

libavcodec/cook.c:573:1: <Offset trace>
571.  */
572. 
573. static int unpack_SQVH(COOKContext *q, COOKSubpacket *p, int category, int* subband_coef_index,
     ^
574.                        int* subband_coef_sign) {
575.     int i,j;

libavcodec/cook.c:573:1: Parameter `category`
  571.  */
  572. 
  573. static int unpack_SQVH(COOKContext *q, COOKSubpacket *p, int category, int* subband_coef_index,
       ^
  574.                        int* subband_coef_sign) {
  575.     int i,j;

libavcodec/cookdata.h:61:1: <Length trace>
59. };
60. 
61. static const int vd_tab[7] = {
    ^
62.     2, 2, 2, 4, 4, 5, 5,
63. };

libavcodec/cookdata.h:61:1: Array declaration
  59. };
  60. 
  61. static const int vd_tab[7] = {
      ^
  62.     2, 2, 2, 4, 4, 5, 5,
  63. };

libavcodec/cook.c:578:10: Array access: Offset: [min(7, *category), max(7, *category)] Size: 7 by call to `unpack_SQVH` 
  576.     int vlc, vd ,tmp, result;
  577. 
  578.     vd = vd_tab[category];
                ^
  579.     result = 0;
  580.     for(i=0 ; i<vpr_tab[category] ; i++){
