static void scale_coefs (

    int32_t *dst,

    const int32_t *src,

    int dynrng,

    int len)

{

    int i, shift, round;

    int16_t mul;

    int temp, temp1, temp2, temp3, temp4, temp5, temp6, temp7;



    mul = (dynrng & 0x1f) + 0x20;

    shift = 4 - ((dynrng << 23) >> 28);

    if (shift > 0 ) {

      round = 1 << (shift-1);

      for (i=0; i<len; i+=8) {



          temp = src[i] * mul;

          temp1 = src[i+1] * mul;

          temp = temp + round;

          temp2 = src[i+2] * mul;



          temp1 = temp1 + round;

          dst[i] = temp >> shift;

          temp3 = src[i+3] * mul;

          temp2 = temp2 + round;



          dst[i+1] = temp1 >> shift;

          temp4 = src[i + 4] * mul;

          temp3 = temp3 + round;

          dst[i+2] = temp2 >> shift;



          temp5 = src[i+5] * mul;

          temp4 = temp4 + round;

          dst[i+3] = temp3 >> shift;

          temp6 = src[i+6] * mul;



          dst[i+4] = temp4 >> shift;

          temp5 = temp5 + round;

          temp7 = src[i+7] * mul;

          temp6 = temp6 + round;



          dst[i+5] = temp5 >> shift;

          temp7 = temp7 + round;

          dst[i+6] = temp6 >> shift;

          dst[i+7] = temp7 >> shift;



      }

    } else {

      shift = -shift;

      for (i=0; i<len; i+=8) {



          temp = src[i] * mul;

          temp1 = src[i+1] * mul;

          temp2 = src[i+2] * mul;



          dst[i] = temp << shift;

          temp3 = src[i+3] * mul;



          dst[i+1] = temp1 << shift;

          temp4 = src[i + 4] * mul;

          dst[i+2] = temp2 << shift;



          temp5 = src[i+5] * mul;

          dst[i+3] = temp3 << shift;

          temp6 = src[i+6] * mul;



          dst[i+4] = temp4 << shift;

          temp7 = src[i+7] * mul;



          dst[i+5] = temp5 << shift;

          dst[i+6] = temp6 << shift;

          dst[i+7] = temp7 << shift;



      }

    }

}

static void scale_coefs (

    int32_t *dst,

    const int32_t *src,

    int dynrng,

    int len)

{

    int i, shift, round;

    int16_t mul;

    int temp, temp1, temp2, temp3, temp4, temp5, temp6, temp7;



    mul = (dynrng & 0x1f) + 0x20;

    shift = 4 - ((dynrng << 23) >> 28);

    if (shift > 0 ) {

      round = 1 << (shift-1);

      for (i=0; i<len; i+=8) {



          temp = src[i] * mul;

          temp1 = src[i+1] * mul;

          temp = temp + round;

          temp2 = src[i+2] * mul;



          temp1 = temp1 + round;

          dst[i] = temp >> shift;

          temp3 = src[i+3] * mul;

          temp2 = temp2 + round;



          dst[i+1] = temp1 >> shift;

          temp4 = src[i + 4] * mul;

          temp3 = temp3 + round;

          dst[i+2] = temp2 >> shift;



          temp5 = src[i+5] * mul;

          temp4 = temp4 + round;

          dst[i+3] = temp3 >> shift;

          temp6 = src[i+6] * mul;



          dst[i+4] = temp4 >> shift;

          temp5 = temp5 + round;

          temp7 = src[i+7] * mul;

          temp6 = temp6 + round;



          dst[i+5] = temp5 >> shift;

          temp7 = temp7 + round;

          dst[i+6] = temp6 >> shift;

          dst[i+7] = temp7 >> shift;



      }

    } else {

      shift = -shift;

      for (i=0; i<len; i+=8) {



          temp = src[i] * mul;

          temp1 = src[i+1] * mul;

          temp2 = src[i+2] * mul;



          dst[i] = temp << shift;

          temp3 = src[i+3] * mul;



          dst[i+1] = temp1 << shift;

          temp4 = src[i + 4] * mul;

          dst[i+2] = temp2 << shift;



          temp5 = src[i+5] * mul;

          dst[i+3] = temp3 << shift;

          temp6 = src[i+6] * mul;



          dst[i+4] = temp4 << shift;

          temp7 = src[i+7] * mul;



          dst[i+5] = temp5 << shift;

          dst[i+6] = temp6 << shift;

          dst[i+7] = temp7 << shift;



      }

    }

}

    shift = 4 - ((dynrng << 23) >> 28);
static void FUNC_0 (

    int32_t *VAR_0,

    const int32_t *VAR_1,

    int VAR_2,

    int VAR_3)

{

    int VAR_4, VAR_5, VAR_6;

    int16_t mul;

    int VAR_7, VAR_8, VAR_9, VAR_10, VAR_11, VAR_12, VAR_13, VAR_14;



    mul = (VAR_2 & 0x1f) + 0x20;

    VAR_5 = 4 - ((VAR_2 << 23) >> 28);

    if (VAR_5 > 0 ) {

      VAR_6 = 1 << (VAR_5-1);

      for (VAR_4=0; VAR_4<VAR_3; VAR_4+=8) {



          VAR_7 = VAR_1[VAR_4] * mul;

          VAR_8 = VAR_1[VAR_4+1] * mul;

          VAR_7 = VAR_7 + VAR_6;

          VAR_9 = VAR_1[VAR_4+2] * mul;



          VAR_8 = VAR_8 + VAR_6;

          VAR_0[VAR_4] = VAR_7 >> VAR_5;

          VAR_10 = VAR_1[VAR_4+3] * mul;

          VAR_9 = VAR_9 + VAR_6;



          VAR_0[VAR_4+1] = VAR_8 >> VAR_5;

          VAR_11 = VAR_1[VAR_4 + 4] * mul;

          VAR_10 = VAR_10 + VAR_6;

          VAR_0[VAR_4+2] = VAR_9 >> VAR_5;



          VAR_12 = VAR_1[VAR_4+5] * mul;

          VAR_11 = VAR_11 + VAR_6;

          VAR_0[VAR_4+3] = VAR_10 >> VAR_5;

          VAR_13 = VAR_1[VAR_4+6] * mul;



          VAR_0[VAR_4+4] = VAR_11 >> VAR_5;

          VAR_12 = VAR_12 + VAR_6;

          VAR_14 = VAR_1[VAR_4+7] * mul;

          VAR_13 = VAR_13 + VAR_6;



          VAR_0[VAR_4+5] = VAR_12 >> VAR_5;

          VAR_14 = VAR_14 + VAR_6;

          VAR_0[VAR_4+6] = VAR_13 >> VAR_5;

          VAR_0[VAR_4+7] = VAR_14 >> VAR_5;



      }

    } else {

      VAR_5 = -VAR_5;

      for (VAR_4=0; VAR_4<VAR_3; VAR_4+=8) {



          VAR_7 = VAR_1[VAR_4] * mul;

          VAR_8 = VAR_1[VAR_4+1] * mul;

          VAR_9 = VAR_1[VAR_4+2] * mul;



          VAR_0[VAR_4] = VAR_7 << VAR_5;

          VAR_10 = VAR_1[VAR_4+3] * mul;



          VAR_0[VAR_4+1] = VAR_8 << VAR_5;

          VAR_11 = VAR_1[VAR_4 + 4] * mul;

          VAR_0[VAR_4+2] = VAR_9 << VAR_5;



          VAR_12 = VAR_1[VAR_4+5] * mul;

          VAR_0[VAR_4+3] = VAR_10 << VAR_5;

          VAR_13 = VAR_1[VAR_4+6] * mul;



          VAR_0[VAR_4+4] = VAR_11 << VAR_5;

          VAR_14 = VAR_1[VAR_4+7] * mul;



          VAR_0[VAR_4+5] = VAR_12 << VAR_5;

          VAR_0[VAR_4+6] = VAR_13 << VAR_5;

          VAR_0[VAR_4+7] = VAR_14 << VAR_5;



      }

    }

}

static void FUNC_0 (
int32_t *VAR_0,
const int32_t *VAR_1,
int VAR_2,
int VAR_3)
{ int VAR_4, VAR_5, VAR_6; int16_t mul; int VAR_7, VAR_8, VAR_9, VAR_10, VAR_11, VAR_12, VAR_13, VAR_14; mul = (VAR_2 & 0x1f) + 0x20; VAR_5 = 4 - ((VAR_2 << 23) >> 28); if (VAR_5 > 0 ) { VAR_6 = 1 << (VAR_5-1); for (VAR_4=0; VAR_4<VAR_3; VAR_4+=8) { VAR_7 = VAR_1[VAR_4] * mul; VAR_8 = VAR_1[VAR_4+1] * mul; VAR_7 = VAR_7 + VAR_6; VAR_9 = VAR_1[VAR_4+2] * mul; VAR_8 = VAR_8 + VAR_6; VAR_0[VAR_4] = VAR_7 >> VAR_5; VAR_10 = VAR_1[VAR_4+3] * mul; VAR_9 = VAR_9 + VAR_6; VAR_0[VAR_4+1] = VAR_8 >> VAR_5; VAR_11 = VAR_1[VAR_4 + 4] * mul; VAR_10 = VAR_10 + VAR_6; VAR_0[VAR_4+2] = VAR_9 >> VAR_5; VAR_12 = VAR_1[VAR_4+5] * mul; VAR_11 = VAR_11 + VAR_6; VAR_0[VAR_4+3] = VAR_10 >> VAR_5; VAR_13 = VAR_1[VAR_4+6] * mul; VAR_0[VAR_4+4] = VAR_11 >> VAR_5; VAR_12 = VAR_12 + VAR_6; VAR_14 = VAR_1[VAR_4+7] * mul; VAR_13 = VAR_13 + VAR_6; VAR_0[VAR_4+5] = VAR_12 >> VAR_5; VAR_14 = VAR_14 + VAR_6; VAR_0[VAR_4+6] = VAR_13 >> VAR_5; VAR_0[VAR_4+7] = VAR_14 >> VAR_5; } } else { VAR_5 = -VAR_5; for (VAR_4=0; VAR_4<VAR_3; VAR_4+=8) { VAR_7 = VAR_1[VAR_4] * mul; VAR_8 = VAR_1[VAR_4+1] * mul; VAR_9 = VAR_1[VAR_4+2] * mul; VAR_0[VAR_4] = VAR_7 << VAR_5; VAR_10 = VAR_1[VAR_4+3] * mul; VAR_0[VAR_4+1] = VAR_8 << VAR_5; VAR_11 = VAR_1[VAR_4 + 4] * mul; VAR_0[VAR_4+2] = VAR_9 << VAR_5; VAR_12 = VAR_1[VAR_4+5] * mul; VAR_0[VAR_4+3] = VAR_10 << VAR_5; VAR_13 = VAR_1[VAR_4+6] * mul; VAR_0[VAR_4+4] = VAR_11 << VAR_5; VAR_14 = VAR_1[VAR_4+7] * mul; VAR_0[VAR_4+5] = VAR_12 << VAR_5; VAR_0[VAR_4+6] = VAR_13 << VAR_5; VAR_0[VAR_4+7] = VAR_14 << VAR_5; } } }