In the xml for units, there are lines like this:
From tech's battle_machine.xml:
<skill>
<type value="attack"/>
<name value="attack_arrow_skill"/>
<ep-cost value="0"/>
<speed value="52"/>
<anim-speed value="65"/>
[...]
In the game, the "attack speed" displayed when one hovers the cursor over the attack icon is the speed value. One would expect that this is the rate of fire--normally it is, and the units are centishots per second (also, I recommend changing the game text to "attack rate" or something like that, since "attack speed" could also be interpreted as how fast the shots move). For most combat units, speed and anim-speed for attacking are the same, but for some, like the Battle Machine's attack arrow, they differ.
The actual rate of fire is not controlled by speed as one would expect, but by anim-speed. To confirm this, change anim-speed to something very different without changing speed. Or change speed without changing anim-speed. Notice that changing speed doesn't do anything but change the displayed attack speed, but changing anim-speed has an effect on the rate of fire.
I suppose fixing this will likely affect game balance. The Indian Thunderbird, for example, has for its ground attack
<speed value="40"/>
<anim-speed value="70"/>
Fixing this would result in a rate of fire reduction by a factor of 1.75. Of course, I expect that attack speed 40 was the intended speed in the beginning, especially when the stats are compared with Magic's Dragon.
Edit (tomreyn): No [bug] tag, please, this forum is already called "bug reports". Thanks.