if ( *((_BYTE *)v5 + 370) == 9 ) Always just jump { if ( !v21 ) { sub_1030A3C0("Player.Fall"); // CTerrorPlayer::OnLadderMount function inline sub_10177560(v5); sub_103120E0(0); v22 = sub_100535D0(v5); if ( (unsigned __int8)sub_1034FF60(v22) ) { if ( sub_100464D0(v5) ) { v23 = sub_100464D0(v5); (*(void (__thiscall **)(int, _DWORD))(*(_DWORD *)v23 + 1060))(v23, 0); } } } } else if ( v21 )to this function { CTerrorPlayer::OnLadderDismount(v5); }