function basegun_calledFromAnim() /* entry=270 class_id=0x04C8 slot=0x0E */
{
  var
    referent, /* [BP+00h] type=0x69 */
    n, /* [BP-02h] type=0x24 */
    dir, /* [BP-04h] type=0x69 */
    b, /* [BP-06h] type=0x69 */
    item; /* [BP-08h] type=0x24 */

  entry:
    set_info(0x021A, *(arg_06));
    process_exclude();
    n = *(arg_06);
    dir = Intrinsic00FA(n);
    b = Item.push(n);
    if ((b != 13) || (b != 8)) goto block_03A3;

  block_0325:
    class_0A1A_slot_40(0, 5, dir, dir, arg_06);
    class_0A1A_slot_3F(retval, dir, arg_06);
    class_0A1A_slot_3E(retval, dir, arg_06);
    class_0A1A_slot_43(0, 5, dir, dir, arg_06);
    class_0A1A_slot_42(retval, dir, arg_06);
    class_0A1A_slot_41(retval, dir, arg_06);
    goto block_0412;

  block_03A3:
    set_info(0x00F0, 0);
    spawn class_0A1E_slot_28(pid, 1, 2, n);
    suspend;

  block_0412:
    return;

}
