function wallgun_slot_24() /* entry=396 class_id=0x0A1A slot=0x24 */
{
  var
    referent, /* [BP+00h] type=0x69 */
    target, /* [BP+0Ah] type=0x69 */
    var; /* [BP+0Ch] type=0x69 */

  entry:
    set_info(0x021B, *(arg_06));
    class_0A1A_slot_25(Item.getFrame(arg_06), Intrinsic0016(arg_06), arg_06);
    if ((retval != 1) || (Intrinsic002C(arg_06) != 0)) goto block_0365;

  block_035F:
    goto block_0409;

  block_0365:
    if ((var < 90) || (var > 99)) goto block_03B1;

  block_0379:
    class_0A0C_slot_33(1, *(arg_06));
    class_0A0C_slot_33(0x020A, *(arg_06));
    spawn class_0A1A_slot_28(var, target, arg_06);
    goto block_0409;

  block_03B1:
    if (var != 90) goto block_03CD;

  block_03BC:
    spawn class_0A1A_slot_34(arg_06);
    goto block_0409;

  block_03CD:
    if (var != 91) goto block_03E9;

  block_03D8:
    spawn class_0A1A_slot_35(arg_06);
    goto block_0409;

  block_03E9:
    if (var != 92) goto block_0409;

  block_03F4:
    spawn class_0A1A_slot_4A(target, arg_06);
    goto block_0409;

  block_0409:
    return;

}
