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

  entry:
    if (Intrinsic0016(arg_06) != 0x0108) goto block_3732;

  block_367B:
    if (dir != 12) goto block_368F;

  block_3686:
    goto block_3F79;

  block_368C:
    goto block_372F;

  block_368F:
    if (dir != 11) goto block_36A3;

  block_369A:
    goto block_3F79;

  block_36A0:
    goto block_372F;

  block_36A3:
    if (dir != 10) goto block_36B7;

  block_36AE:
    goto block_3F79;

  block_36B4:
    goto block_372F;

  block_36B7:
    if (dir != 9) goto block_36CB;

  block_36C2:
    goto block_3F79;

  block_36C8:
    goto block_372F;

  block_36CB:
    if (dir != 8) goto block_36DF;

  block_36D6:
    goto block_3F79;

  block_36DC:
    goto block_372F;

  block_36DF:
    if (dir != 7) goto block_36F3;

  block_36EA:
    goto block_3F79;

  block_36F0:
    goto block_372F;

  block_36F3:
    if (dir != 6) goto block_3707;

  block_36FE:
    goto block_3F79;

  block_3704:
    goto block_372F;

  block_3707:
    if (dir != 5) goto block_371B;

  block_3712:
    goto block_3F79;

  block_3718:
    goto block_372F;

  block_371B:
    if (dir != 4) goto block_372F;

  block_3726:
    goto block_3F79;

  block_372C:
    goto block_372F;

  block_372F:
    goto block_3F79;

  block_3732:
    if (Intrinsic0016(arg_06) != 0x0113) goto block_37F9;

  block_3742:
    if (dir != 0) goto block_3756;

  block_374D:
    goto block_3F79;

  block_3753:
    goto block_37F6;

  block_3756:
    if (dir != 1) goto block_376A;

  block_3761:
    goto block_3F79;

  block_3767:
    goto block_37F6;

  block_376A:
    if (dir != 2) goto block_377E;

  block_3775:
    goto block_3F79;

  block_377B:
    goto block_37F6;

  block_377E:
    if (dir != 3) goto block_3792;

  block_3789:
    goto block_3F79;

  block_378F:
    goto block_37F6;

  block_3792:
    if (dir != 4) goto block_37A6;

  block_379D:
    goto block_3F79;

  block_37A3:
    goto block_37F6;

  block_37A6:
    if (dir != 5) goto block_37BA;

  block_37B1:
    goto block_3F79;

  block_37B7:
    goto block_37F6;

  block_37BA:
    if (dir != 6) goto block_37CE;

  block_37C5:
    goto block_3F79;

  block_37CB:
    goto block_37F6;

  block_37CE:
    if (dir != 7) goto block_37E2;

  block_37D9:
    goto block_3F79;

  block_37DF:
    goto block_37F6;

  block_37E2:
    if (dir != 8) goto block_37F6;

  block_37ED:
    goto block_3F79;

  block_37F3:
    goto block_37F6;

  block_37F6:
    goto block_3F79;

  block_37F9:
    if (Intrinsic0016(arg_06) != 0x02F0) goto block_38C0;

  block_3809:
    if (dir != 12) goto block_381D;

  block_3811:
    goto block_3F79;

  block_381A:
    goto block_38BD;

  block_381D:
    if (dir != 11) goto block_3831;

  block_3825:
    goto block_3F79;

  block_382E:
    goto block_38BD;

  block_3831:
    if (dir != 10) goto block_3845;

  block_3839:
    goto block_3F79;

  block_3842:
    goto block_38BD;

  block_3845:
    if (dir != 9) goto block_3859;

  block_384D:
    goto block_3F79;

  block_3856:
    goto block_38BD;

  block_3859:
    if (dir != 8) goto block_386D;

  block_3861:
    goto block_3F79;

  block_386A:
    goto block_38BD;

  block_386D:
    if (dir != 7) goto block_3881;

  block_3875:
    goto block_3F79;

  block_387E:
    goto block_38BD;

  block_3881:
    if (dir != 6) goto block_3895;

  block_3889:
    goto block_3F79;

  block_3892:
    goto block_38BD;

  block_3895:
    if (dir != 5) goto block_38A9;

  block_389D:
    goto block_3F79;

  block_38A6:
    goto block_38BD;

  block_38A9:
    if (dir != 4) goto block_38BD;

  block_38B1:
    goto block_3F79;

  block_38BA:
    goto block_38BD;

  block_38BD:
    goto block_3F79;

  block_38C0:
    if (Intrinsic0016(arg_06) != 0x0373) goto block_399B;

  block_38D0:
    if (dir != 0) goto block_38E4;

  block_38D8:
    goto block_3F79;

  block_38E1:
    goto block_3998;

  block_38E4:
    if (dir != 1) goto block_38F8;

  block_38EC:
    goto block_3F79;

  block_38F5:
    goto block_3998;

  block_38F8:
    if (dir != 2) goto block_390C;

  block_3900:
    goto block_3F79;

  block_3909:
    goto block_3998;

  block_390C:
    if (dir != 3) goto block_3920;

  block_3914:
    goto block_3F79;

  block_391D:
    goto block_3998;

  block_3920:
    if (dir != 4) goto block_3934;

  block_3928:
    goto block_3F79;

  block_3931:
    goto block_3998;

  block_3934:
    if (dir != 5) goto block_3948;

  block_393C:
    goto block_3F79;

  block_3945:
    goto block_3998;

  block_3948:
    if (dir != 6) goto block_395C;

  block_3950:
    goto block_3F79;

  block_3959:
    goto block_3998;

  block_395C:
    if (dir != 7) goto block_3970;

  block_3964:
    goto block_3F79;

  block_396D:
    goto block_3998;

  block_3970:
    if (dir != 8) goto block_3984;

  block_3978:
    goto block_3F79;

  block_3981:
    goto block_3998;

  block_3984:
    if (dir != 9) goto block_3998;

  block_398C:
    goto block_3F79;

  block_3995:
    goto block_3998;

  block_3998:
    goto block_3F79;

  block_399B:
    if (Intrinsic0016(arg_06) != 0x0399) goto block_3A62;

  block_39AB:
    if (dir != 12) goto block_39BF;

  block_39B6:
    goto block_3F79;

  block_39BC:
    goto block_3A5F;

  block_39BF:
    if (dir != 11) goto block_39D3;

  block_39CA:
    goto block_3F79;

  block_39D0:
    goto block_3A5F;

  block_39D3:
    if (dir != 10) goto block_39E7;

  block_39DE:
    goto block_3F79;

  block_39E4:
    goto block_3A5F;

  block_39E7:
    if (dir != 9) goto block_39FB;

  block_39F2:
    goto block_3F79;

  block_39F8:
    goto block_3A5F;

  block_39FB:
    if (dir != 8) goto block_3A0F;

  block_3A06:
    goto block_3F79;

  block_3A0C:
    goto block_3A5F;

  block_3A0F:
    if (dir != 7) goto block_3A23;

  block_3A1A:
    goto block_3F79;

  block_3A20:
    goto block_3A5F;

  block_3A23:
    if (dir != 6) goto block_3A37;

  block_3A2E:
    goto block_3F79;

  block_3A34:
    goto block_3A5F;

  block_3A37:
    if (dir != 5) goto block_3A4B;

  block_3A42:
    goto block_3F79;

  block_3A48:
    goto block_3A5F;

  block_3A4B:
    if (dir != 4) goto block_3A5F;

  block_3A56:
    goto block_3F79;

  block_3A5C:
    goto block_3A5F;

  block_3A5F:
    goto block_3F79;

  block_3A62:
    if (Intrinsic0016(arg_06) != 0x03A1) goto block_3B29;

  block_3A72:
    if (dir != 0) goto block_3A86;

  block_3A7D:
    goto block_3F79;

  block_3A83:
    goto block_3B26;

  block_3A86:
    if (dir != 1) goto block_3A9A;

  block_3A91:
    goto block_3F79;

  block_3A97:
    goto block_3B26;

  block_3A9A:
    if (dir != 2) goto block_3AAE;

  block_3AA5:
    goto block_3F79;

  block_3AAB:
    goto block_3B26;

  block_3AAE:
    if (dir != 3) goto block_3AC2;

  block_3AB9:
    goto block_3F79;

  block_3ABF:
    goto block_3B26;

  block_3AC2:
    if (dir != 4) goto block_3AD6;

  block_3ACD:
    goto block_3F79;

  block_3AD3:
    goto block_3B26;

  block_3AD6:
    if (dir != 5) goto block_3AEA;

  block_3AE1:
    goto block_3F79;

  block_3AE7:
    goto block_3B26;

  block_3AEA:
    if (dir != 6) goto block_3AFE;

  block_3AF5:
    goto block_3F79;

  block_3AFB:
    goto block_3B26;

  block_3AFE:
    if (dir != 7) goto block_3B12;

  block_3B09:
    goto block_3F79;

  block_3B0F:
    goto block_3B26;

  block_3B12:
    if (dir != 8) goto block_3B26;

  block_3B1D:
    goto block_3F79;

  block_3B23:
    goto block_3B26;

  block_3B26:
    goto block_3F79;

  block_3B29:
    if ((Intrinsic0016(arg_06) != 0x01BA) || (Intrinsic0016(arg_06) != 0x025F)) goto block_3BFE;

  block_3B47:
    if (dir != 12) goto block_3B5B;

  block_3B52:
    goto block_3F79;

  block_3B58:
    goto block_3BFB;

  block_3B5B:
    if (dir != 11) goto block_3B6F;

  block_3B66:
    goto block_3F79;

  block_3B6C:
    goto block_3BFB;

  block_3B6F:
    if (dir != 10) goto block_3B83;

  block_3B7A:
    goto block_3F79;

  block_3B80:
    goto block_3BFB;

  block_3B83:
    if (dir != 9) goto block_3B97;

  block_3B8E:
    goto block_3F79;

  block_3B94:
    goto block_3BFB;

  block_3B97:
    if (dir != 8) goto block_3BAB;

  block_3BA2:
    goto block_3F79;

  block_3BA8:
    goto block_3BFB;

  block_3BAB:
    if (dir != 7) goto block_3BBF;

  block_3BB6:
    goto block_3F79;

  block_3BBC:
    goto block_3BFB;

  block_3BBF:
    if (dir != 6) goto block_3BD3;

  block_3BCA:
    goto block_3F79;

  block_3BD0:
    goto block_3BFB;

  block_3BD3:
    if (dir != 5) goto block_3BE7;

  block_3BDE:
    goto block_3F79;

  block_3BE4:
    goto block_3BFB;

  block_3BE7:
    if (dir != 4) goto block_3BFB;

  block_3BF2:
    goto block_3F79;

  block_3BF8:
    goto block_3BFB;

  block_3BFB:
    goto block_3F79;

  block_3BFE:
    if ((Intrinsic0016(arg_06) != 0x01B9) || (Intrinsic0016(arg_06) != 0x0260)) goto block_3CD3;

  block_3C1C:
    if (dir != 8) goto block_3C30;

  block_3C27:
    goto block_3F79;

  block_3C2D:
    goto block_3CD0;

  block_3C30:
    if (dir != 7) goto block_3C44;

  block_3C3B:
    goto block_3F79;

  block_3C41:
    goto block_3CD0;

  block_3C44:
    if (dir != 6) goto block_3C58;

  block_3C4F:
    goto block_3F79;

  block_3C55:
    goto block_3CD0;

  block_3C58:
    if (dir != 5) goto block_3C6C;

  block_3C63:
    goto block_3F79;

  block_3C69:
    goto block_3CD0;

  block_3C6C:
    if (dir != 4) goto block_3C80;

  block_3C77:
    goto block_3F79;

  block_3C7D:
    goto block_3CD0;

  block_3C80:
    if (dir != 3) goto block_3C94;

  block_3C8B:
    goto block_3F79;

  block_3C91:
    goto block_3CD0;

  block_3C94:
    if (dir != 2) goto block_3CA8;

  block_3C9F:
    goto block_3F79;

  block_3CA5:
    goto block_3CD0;

  block_3CA8:
    if (dir != 1) goto block_3CBC;

  block_3CB3:
    goto block_3F79;

  block_3CB9:
    goto block_3CD0;

  block_3CBC:
    if (dir != 0) goto block_3CD0;

  block_3CC7:
    goto block_3F79;

  block_3CCD:
    goto block_3CD0;

  block_3CD0:
    goto block_3F79;

  block_3CD3:
    if (Intrinsic0016(arg_06) != 0x04C8) goto block_3E26;

  block_3CE3:
    if (dir != 0) goto block_3CF7;

  block_3CEE:
    goto block_3F79;

  block_3CF4:
    goto block_3E23;

  block_3CF7:
    if (dir != 1) goto block_3D0B;

  block_3D02:
    goto block_3F79;

  block_3D08:
    goto block_3E23;

  block_3D0B:
    if (dir != 2) goto block_3D1F;

  block_3D16:
    goto block_3F79;

  block_3D1C:
    goto block_3E23;

  block_3D1F:
    if (dir != 3) goto block_3D33;

  block_3D2A:
    goto block_3F79;

  block_3D30:
    goto block_3E23;

  block_3D33:
    if (dir != 4) goto block_3D47;

  block_3D3E:
    goto block_3F79;

  block_3D44:
    goto block_3E23;

  block_3D47:
    if (dir != 5) goto block_3D5B;

  block_3D52:
    goto block_3F79;

  block_3D58:
    goto block_3E23;

  block_3D5B:
    if (dir != 6) goto block_3D6F;

  block_3D66:
    goto block_3F79;

  block_3D6C:
    goto block_3E23;

  block_3D6F:
    if (dir != 7) goto block_3D83;

  block_3D7A:
    goto block_3F79;

  block_3D80:
    goto block_3E23;

  block_3D83:
    if (dir != 8) goto block_3D97;

  block_3D8E:
    goto block_3F79;

  block_3D94:
    goto block_3E23;

  block_3D97:
    if (dir != 9) goto block_3DAB;

  block_3DA2:
    goto block_3F79;

  block_3DA8:
    goto block_3E23;

  block_3DAB:
    if (dir != 10) goto block_3DBF;

  block_3DB6:
    goto block_3F79;

  block_3DBC:
    goto block_3E23;

  block_3DBF:
    if (dir != 11) goto block_3DD3;

  block_3DCA:
    goto block_3F79;

  block_3DD0:
    goto block_3E23;

  block_3DD3:
    if (dir != 12) goto block_3DE7;

  block_3DDE:
    goto block_3F79;

  block_3DE4:
    goto block_3E23;

  block_3DE7:
    if (dir != 13) goto block_3DFB;

  block_3DF2:
    goto block_3F79;

  block_3DF8:
    goto block_3E23;

  block_3DFB:
    if (dir != 14) goto block_3E0F;

  block_3E06:
    goto block_3F79;

  block_3E0C:
    goto block_3E23;

  block_3E0F:
    if (dir != 15) goto block_3E23;

  block_3E1A:
    goto block_3F79;

  block_3E20:
    goto block_3E23;

  block_3E23:
    goto block_3F79;

  block_3E26:
    if (Intrinsic0016(arg_06) != 0x01CD) goto block_3F79;

  block_3E36:
    if (dir != 0) goto block_3E4A;

  block_3E3E:
    goto block_3F79;

  block_3E47:
    goto block_3F76;

  block_3E4A:
    if (dir != 1) goto block_3E5E;

  block_3E52:
    goto block_3F79;

  block_3E5B:
    goto block_3F76;

  block_3E5E:
    if (dir != 2) goto block_3E72;

  block_3E66:
    goto block_3F79;

  block_3E6F:
    goto block_3F76;

  block_3E72:
    if (dir != 3) goto block_3E86;

  block_3E7A:
    goto block_3F79;

  block_3E83:
    goto block_3F76;

  block_3E86:
    if (dir != 4) goto block_3E9A;

  block_3E8E:
    goto block_3F79;

  block_3E97:
    goto block_3F76;

  block_3E9A:
    if (dir != 5) goto block_3EAE;

  block_3EA2:
    goto block_3F79;

  block_3EAB:
    goto block_3F76;

  block_3EAE:
    if (dir != 6) goto block_3EC2;

  block_3EB6:
    goto block_3F79;

  block_3EBF:
    goto block_3F76;

  block_3EC2:
    if (dir != 7) goto block_3ED6;

  block_3ECA:
    goto block_3F79;

  block_3ED3:
    goto block_3F76;

  block_3ED6:
    if (dir != 8) goto block_3EEA;

  block_3EDE:
    goto block_3F79;

  block_3EE7:
    goto block_3F76;

  block_3EEA:
    if (dir != 9) goto block_3EFE;

  block_3EF2:
    goto block_3F79;

  block_3EFB:
    goto block_3F76;

  block_3EFE:
    if (dir != 10) goto block_3F12;

  block_3F06:
    goto block_3F79;

  block_3F0F:
    goto block_3F76;

  block_3F12:
    if (dir != 11) goto block_3F26;

  block_3F1A:
    goto block_3F79;

  block_3F23:
    goto block_3F76;

  block_3F26:
    if (dir != 12) goto block_3F3A;

  block_3F2E:
    goto block_3F79;

  block_3F37:
    goto block_3F76;

  block_3F3A:
    if (dir != 13) goto block_3F4E;

  block_3F42:
    goto block_3F79;

  block_3F4B:
    goto block_3F76;

  block_3F4E:
    if (dir != 14) goto block_3F62;

  block_3F56:
    goto block_3F79;

  block_3F5F:
    goto block_3F76;

  block_3F62:
    if (dir != 15) goto block_3F76;

  block_3F6A:
    goto block_3F79;

  block_3F73:
    goto block_3F76;

  block_3F76:
    goto block_3F79;

  block_3F79:
    return;

}
