diff --git a/apps/codecs/libwma/wmadeci.c b/apps/codecs/libwma/wmadeci.c
index bb9b96a..cd01c03 100644
--- a/apps/codecs/libwma/wmadeci.c
+++ b/apps/codecs/libwma/wmadeci.c
@@ -696,14 +696,14 @@
 static void vector_fmul_add_add(fixed32 *dst, const fixed32 *src0, const fixed32 *src1, const fixed32 *src2, int src3, int len, int step){
     int i;
     for(i=0; i<len; i++)
-        dst[i*step] = fixmul32(src0[i], src1[i]) + src2[i] + src3;
+        dst[i*step] = fixmul32b(src0[i], src1[i]) + src2[i] + src3;
 }
 
 static void vector_fmul_reverse(fixed32 *dst, const fixed32 *src0, const fixed32 *src1, int len){
     int i;
     src1 += len-1;
     for(i=0; i<len; i++)
-        dst[i] = fixmul32(src0[i], src1[-i]);
+        dst[i] = fixmul32b(src0[i], src1[-i]);
 }
 
 /**
diff --git a/apps/codecs/libwma/wmafixed.c b/apps/codecs/libwma/wmafixed.c
index 3a902dd..7b08689 100644
--- a/apps/codecs/libwma/wmafixed.c
+++ b/apps/codecs/libwma/wmafixed.c
@@ -275,7 +275,7 @@
 
 */
 
-#if 0
+
 fixed32 fixsin32(fixed32 x)
 {
 
@@ -326,4 +326,4 @@
 {
     return fixsin32(x - (M_PI_F>>1))*-1;
 }
-#endif
+
diff --git a/apps/codecs/libwma/wmafixed.h b/apps/codecs/libwma/wmafixed.h
index 99ddec7..da0637f 100644
--- a/apps/codecs/libwma/wmafixed.h
+++ b/apps/codecs/libwma/wmafixed.h
@@ -61,6 +61,21 @@
        __result;  \
     })
 
+
+ #define fixmul32b(x, y)  \
+    ({ int32_t __hi;  \
+       uint32_t __lo;  \
+       int32_t __result;  \
+       asm ("smull   %0, %1, %3, %4\n\t"  \
+            "movs    %0, %0, lsr %5\n\t"  \
+            "adc    %2, %0, %1, lsl %6"  \
+            : "=&r" (__lo), "=&r" (__hi), "=r" (__result)  \
+            : "%r" (x), "r" (y),  \
+              "M" (31), "M" (32 - 31)  \
+            : "cc");  \
+       __result;  \
+    })
+
 #elif defined(CPU_COLDFIRE)
 static inline int32_t fixmul32(int32_t x, int32_t y)
 {
