function wallgun_slot_40() /* entry=396 class_id=0x0A1A slot=0x40 */
{
  var
    referent, /* [BP+00h] type=0x69 */
    dir; /* [BP+0Ah] type=0x62 */

  entry:
    if ((((Intrinsic0016(arg_06) != 0x0108) || (Intrinsic0016(arg_06) != 0x0113)) || (Intrinsic0016(arg_06) != 0x0399)) || (Intrinsic0016(arg_06) != 0x03A1)) goto block_4933;

  block_4927:
    goto block_49DE;

  block_4930:
    goto block_49DE;

  block_4933:
    if (Intrinsic0016(arg_06) != 0x02F0) goto block_498B;

  block_4943:
    if (dir != 6) goto block_4957;

  block_494B:
    goto block_49DE;

  block_4954:
    goto block_4988;

  block_4957:
    if (dir != 5) goto block_496B;

  block_495F:
    goto block_49DE;

  block_4968:
    goto block_4988;

  block_496B:
    if (dir != 4) goto block_497F;

  block_4973:
    goto block_49DE;

  block_497C:
    goto block_4988;

  block_497F:
    goto block_49DE;

  block_4988:
    goto block_49DE;

  block_498B:
    if (Intrinsic0016(arg_06) != 0x0373) goto block_49D5;

  block_499B:
    if (dir != 6) goto block_49AF;

  block_49A3:
    goto block_49DE;

  block_49AC:
    goto block_49D2;

  block_49AF:
    if ((dir != 7) || (dir != 8)) goto block_49C9;

  block_49BD:
    goto block_49DE;

  block_49C6:
    goto block_49D2;

  block_49C9:
    goto block_49DE;

  block_49D2:
    goto block_49DE;

  block_49D5:
    goto block_49DE;

  block_49DE:
    return;

}
