Вот только MUL #40.,R2 - это, внезапно, не умножение R2 на 40, а умножение 32-ух битного числа (R2 старшая часть и R3 младшая часть) на 40, так что по результату - тупо умножить R3 на 40 с усечением до 16 бит