function mcrate_gotHit() /* entry=231 class_id=0x0432 slot=0x06 */
{
  var
    referent, /* [BP+00h] type=0x69 */
    ref, /* [BP+0Ah] type=0x69 */
    vel, /* [BP+0Ch] type=0x69 */
    x, /* [BP-02h] type=0x69 */
    y, /* [BP-04h] type=0x69 */
    z, /* [BP-05h] type=0x62 */
    item; /* [BP-07h] type=0x24 */

  set_info(0x020C, *(arg_06));
  process_exclude();
  FREE.slot_2C(vel, ref);
  if (!retval) {
    spawn ITEM.slot_27(pid, 100, vel, ref, arg_06);
    suspend;
    /* dword_to_word  */
    if (process_result) {
      FREE.slot_20(1);
      if (!retval) {
      }
      return;
    }
    else {
      x = Item.getX(arg_06);
      y = Item.getY(arg_06);
      z = Item.getZ(arg_06);
      set_info(1, 0);
      if (Item.getFrame(arg_06) == 0) {
        spawn ITEM.slot_28(pid, 1, 0, arg_06);
        suspend;
        return;
      }
      else if (Item.getFrame(arg_06) == 1) {
        spawn ITEM.slot_28(pid, 1, 1, arg_06);
        suspend;
        return;
      }
    }
  }
  return;
}
